function $AdfOverflowSupport$$($overflowId$$, $peer$$193$$, $type$$211$$, $position$$23$$, $orientation$$4$$, $useRovingTabIndex$$) {
  this.Init($overflowId$$, $peer$$193$$, $type$$211$$, $position$$23$$, $orientation$$4$$, $useRovingTabIndex$$);
}
$goog$exportSymbol$$("AdfOverflowSupport", $AdfOverflowSupport$$);
$AdfObject$$.$createSubclass$($AdfOverflowSupport$$);
$AdfOverflowSupport$$.$InitClass$ = function $$AdfOverflowSupport$$$$InitClass$$() {
  this.$_POPUP_ID_START$ = "_afrOfwSrt";
  this.$_POPUP_ID_END$ = "_afrOfwEnd";
  this.$_DEPRESSED_STYLE_CLASS$ = "p_AFDepressed";
};
$goog$exportSymbol$$("AdfOverflowSupport.InitClass", $AdfOverflowSupport$$.$InitClass$);
$AdfOverflowSupport$$.prototype.Init = function $$AdfOverflowSupport$$$$Init$($dlcId$$1_overflowId$$1$$, $peer$$194$$, $type$$212$$, $position$$24$$, $orientation$$5$$, $useRovingTabIndex$$1$$) {
  $AdfOverflowSupport$$.$superclass$.Init.call(this);
  this.$_peer$ = $peer$$194$$;
  this.$_type$ = $type$$212$$ || "end";
  this.$_position$ = $position$$24$$ || "after";
  this.$_orientation$ = $orientation$$5$$ || "horizontal";
  this.$_useRovingTabIndex$ = $useRovingTabIndex$$1$$;
  this.$_element$ = $AdfAgent$$.$AGENT$.getElementById($dlcId$$1_overflowId$$1$$);
  $JSCompiler_StaticMethods__supportsStartOverflow$$(this) && (this.$_startContainer$ = $JSCompiler_StaticMethods__getElement$$($dlcId$$1_overflowId$$1$$, "soc"), (this.$_startIndicator$ = $JSCompiler_StaticMethods__getElement$$($dlcId$$1_overflowId$$1$$, "soi")) && this.$_initStartButtonEventHandling$());
  $JSCompiler_StaticMethods__supportsEndOverflow$$(this) && (this.$_endContainer$ = $JSCompiler_StaticMethods__getElement$$($dlcId$$1_overflowId$$1$$, "eoc"), this.$_endIndicator$ = $JSCompiler_StaticMethods__getElement$$($dlcId$$1_overflowId$$1$$, "eoi"), null != this.$_endIndicator$ && this.$_initEndButtonEventHandling$());
  $JSCompiler_StaticMethods__supportsDroplist$$(this) && ($dlcId$$1_overflowId$$1$$ = $AdfRichUIPeer$$.$CreateSubId$($dlcId$$1_overflowId$$1$$, "dlc"), this.$_droplistContainer$ = $AdfAgent$$.$AGENT$.getElementById($dlcId$$1_overflowId$$1$$));
  this.$_steps$ = [];
  this.$_firstVisibleStep$ = 0;
  this.$_lastVisibleStep$ = -1;
  this.$_handlingResize$ = !1;
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.Init", {Init:$AdfOverflowSupport$$.prototype.Init});
$AdfOverflowSupport$$.$needsOverflow$ = function $$AdfOverflowSupport$$$$needsOverflow$$($element$$384_overflowId$$2$$) {
  $element$$384_overflowId$$2$$ = $AdfAgent$$.$AGENT$.getElementById($element$$384_overflowId$$2$$);
  return Math.max($element$$384_overflowId$$2$$.firstChild.offsetWidth, $element$$384_overflowId$$2$$.scrollWidth) > $element$$384_overflowId$$2$$.offsetWidth || Math.max($element$$384_overflowId$$2$$.firstChild.offsetHeight, $element$$384_overflowId$$2$$.scrollHeight) > $element$$384_overflowId$$2$$.offsetHeight ? !0 : !1;
};
$goog$exportSymbol$$("AdfOverflowSupport.needsOverflow", $AdfOverflowSupport$$.$needsOverflow$);
$AdfOverflowSupport$$.$getOverflowChildComponents$ = function $$AdfOverflowSupport$$$$getOverflowChildComponents$$($baseComponent$$1$$, $children$$80$$) {
  $children$$80$$ || ($children$$80$$ = []);
  var $agent$$781$$ = $AdfAgent$$.$AGENT$, $clientId$$493_parentSocId$$ = $baseComponent$$1$$.$getClientId$(), $endOverflowContainer_parentEocId_startOverflowContainer$$ = $AdfRichUIPeer$$.$createSubId$($clientId$$493_parentSocId$$, "eoc"), $clientId$$493_parentSocId$$ = $AdfRichUIPeer$$.$createSubId$($clientId$$493_parentSocId$$, "soc");
  ($endOverflowContainer_parentEocId_startOverflowContainer$$ = $agent$$781$$.getElementById($endOverflowContainer_parentEocId_startOverflowContainer$$)) && $agent$$781$$.$getDescendantComponentsForNode$($endOverflowContainer_parentEocId_startOverflowContainer$$, $children$$80$$);
  ($endOverflowContainer_parentEocId_startOverflowContainer$$ = $agent$$781$$.getElementById($clientId$$493_parentSocId$$)) && $agent$$781$$.$getDescendantComponentsForNode$($endOverflowContainer_parentEocId_startOverflowContainer$$, $children$$80$$);
  return $children$$80$$;
};
$goog$exportSymbol$$("AdfOverflowSupport.getOverflowChildComponents", $AdfOverflowSupport$$.$getOverflowChildComponents$);
$AdfOverflowSupport$$.prototype.$removeOverflowSupport$ = function $$AdfOverflowSupport$$$$$removeOverflowSupport$$($agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$) {
  $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$ || (this.$_startContainer$ && $AdfPage$$.$PAGE$.$removeComponentsInSubtree$(this.$_startContainer$), this.$_endContainer$ && $AdfPage$$.$PAGE$.$removeComponentsInSubtree$(this.$_endContainer$));
  delete this.$_peer$;
  delete this.$_element$;
  if ($JSCompiler_StaticMethods__supportsStartOverflow$$(this)) {
    delete this.$_startContainer$;
    if (this.$_startIndicator$) {
      $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$ = $AdfAgent$$.$AGENT$;
      var $endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$ = this.$_startIndicator$;
      $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.$removeBubbleEventListener$($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$, "mousedown", this.$_startShowCall$);
      $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.$removeBubbleEventListener$($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$, "keydown", this.$_startShowCall$);
      $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.$removeBubbleEventListener$($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$, "mouseup", this.$_startButtonMouseUpCall$);
      $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.$removeBubbleEventListener$($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$, "mouseout", this.$_startButtonMouseOutCall$);
      delete this.$_startIndicator$;
      delete this.$_startHints$;
    }
    this.$_startContainerParent$ && delete this.$_startContainerParent$;
  }
  $JSCompiler_StaticMethods__supportsEndOverflow$$(this) && ($agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$ = $AdfAgent$$.$AGENT$, $endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$ = this.$_endIndicator$, $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.$removeBubbleEventListener$($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$, 
  "mousedown", this.$_endShowCall$), $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.$removeBubbleEventListener$($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$, "keydown", this.$_endShowCall$), $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.$removeBubbleEventListener$($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$, 
  "mouseup", this.$_endButtonMouseUpCall$), $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.$removeBubbleEventListener$($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$, "mouseout", this.$_endButtonMouseOutCall$), delete this.$_endIndicator$, delete this.$_endContainer$, delete this.$_endHints$, this.$_endContainerParent$ && delete this.$_endContainerParent$);
  $JSCompiler_StaticMethods__supportsDroplist$$(this) && delete this.$_droplistContainer$;
  for ($agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$ = this.$_steps$;0 < $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.length;) {
    for ($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$ = $agent$$inline_5045_agent$$inline_5049_ignoreOverflowComponentCleanup_steps$$inline_5053$$.pop(), $AdfCollections$$.clear($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$.elements), $AdfCollections$$.clear($endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$.$overflowElements$), $endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$ = 
    $endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$.$swapElements$;0 < $endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$.length;) {
      var $positions$$inline_5056$$ = $endIndicator$$inline_5050_startIndicator$$inline_5046_step$$inline_5054_swapElements$$inline_5055$$.pop();
      $AdfCollections$$.clear($positions$$inline_5056$$);
    }
  }
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.removeOverflowSupport", {$removeOverflowSupport$:$AdfOverflowSupport$$.prototype.$removeOverflowSupport$});
$AdfOverflowSupport$$.prototype.$createStep$ = function $$AdfOverflowSupport$$$$$createStep$$() {
  this.$_steps$.push({elements:[], $overflowElements$:[], $swapElements$:[]});
  this.$_lastVisibleStep$++;
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.createStep", {$createStep$:$AdfOverflowSupport$$.prototype.$createStep$});
$AdfOverflowSupport$$.prototype.addElement = function $$AdfOverflowSupport$$$$addElement$($element$$385$$) {
  this.$_steps$[this.$_steps$.length - 1].elements.push($element$$385$$);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.addElement", {addElement:$AdfOverflowSupport$$.prototype.addElement});
$AdfOverflowSupport$$.prototype.$addOverflowElement$ = function $$AdfOverflowSupport$$$$$addOverflowElement$$($element$$386$$) {
  this.$_steps$[this.$_steps$.length - 1].$overflowElements$.push($element$$386$$);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.addOverflowElement", {$addOverflowElement$:$AdfOverflowSupport$$.prototype.$addOverflowElement$});
$AdfOverflowSupport$$.prototype.$createSwapPosition$ = function $$AdfOverflowSupport$$$$$createSwapPosition$$($element$$387$$) {
  var $stepIndex$$1$$ = this.$_steps$.length - 1, $elementPosition$$1_ownerDocument$$17$$ = $element$$387$$.ownerDocument, $overflowPosition$$ = $elementPosition$$1_ownerDocument$$17$$.createElement("a");
  $overflowPosition$$.style.display = "none";
  $elementPosition$$1_ownerDocument$$17$$ = $elementPosition$$1_ownerDocument$$17$$.createElement("a");
  $elementPosition$$1_ownerDocument$$17$$.style.display = "none";
  $element$$387$$.parentNode.insertBefore($elementPosition$$1_ownerDocument$$17$$, $element$$387$$);
  this.$_steps$[$stepIndex$$1$$].$swapElements$.push([$element$$387$$, $elementPosition$$1_ownerDocument$$17$$, $overflowPosition$$]);
  return $overflowPosition$$;
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.createSwapPosition", {$createSwapPosition$:$AdfOverflowSupport$$.prototype.$createSwapPosition$});
$AdfOverflowSupport$$.prototype.$addDropListElements$ = function $$AdfOverflowSupport$$$$$addDropListElements$$($elementArray$$3$$) {
  for (var $droplistContainer$$1$$ = this.$_droplistContainer$, $i$$738$$ = 0;$i$$738$$ < $elementArray$$3$$.length;$i$$738$$++) {
    $droplistContainer$$1$$.appendChild($elementArray$$3$$[$i$$738$$]);
  }
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.addDropListElements", {$addDropListElements$:$AdfOverflowSupport$$.prototype.$addDropListElements$});
$AdfOverflowSupport$$.prototype.$handleResize$ = function $$AdfOverflowSupport$$$$$handleResize$$() {
  this.$_handlingResize$ || (this.$_handlingResize$ = !0, this.$_handleResize$(), this.$_handlingResize$ = !1);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.handleResize", {$handleResize$:$AdfOverflowSupport$$.prototype.$handleResize$});
$AdfOverflowSupport$$.prototype.$_handleResize$ = function $$AdfOverflowSupport$$$$$_handleResize$$() {
  var $availableWidth_availableWidth$$inline_5059$$ = this.$_element$.offsetWidth + 3, $availableHeight$$2_availableHeight$$inline_5060$$ = this.$_element$.offsetHeight + 5;
  if ("both" == this.$_type$ || "droplist" == this.$_type$) {
    $JSCompiler_StaticMethods__hideOverflowButtons$$(this);
    a: {
      for (var $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = this.$_steps$, $i$$inline_6333_totalSteps$$ = 0;$i$$inline_6333_totalSteps$$ < $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$.length;$i$$inline_6333_totalSteps$$++) {
        for (var $step$$inline_6334_visibleSteps$$ = $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$[$i$$inline_6333_totalSteps$$], $j$$inline_6335_k$$inline_6336$$ = 0;$j$$inline_6335_k$$inline_6336$$ < $step$$inline_6334_visibleSteps$$.$overflowElements$.length;$j$$inline_6335_k$$inline_6336$$++) {
          if ($AdfDomUtils$$.$containsCSSClassName$($step$$inline_6334_visibleSteps$$.$overflowElements$[$j$$inline_6335_k$$inline_6336$$].firstChild, "p_AFSelected")) {
            this.$_activeStep$ = $i$$inline_6333_totalSteps$$;
            break a;
          }
        }
        for ($j$$inline_6335_k$$inline_6336$$ = 0;$j$$inline_6335_k$$inline_6336$$ < $step$$inline_6334_visibleSteps$$.elements.length;$j$$inline_6335_k$$inline_6336$$++) {
          if ($AdfDomUtils$$.$containsCSSClassName$($step$$inline_6334_visibleSteps$$.elements[$j$$inline_6335_k$$inline_6336$$], "p_AFSelected")) {
            this.$_activeStep$ = $i$$inline_6333_totalSteps$$;
            break a;
          }
        }
      }
    }
    $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$);
    $JSCompiler_StaticMethods__showSteps$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$, $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$);
    $JSCompiler_StaticMethods__showOverflowButtons$$(this);
    $availableWidth_availableWidth$$inline_5059$$ = this.$_element$.offsetWidth + 3;
    $availableHeight$$2_availableHeight$$inline_5060$$ = this.$_element$.offsetHeight + 5;
    for ($hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$);$JSCompiler_StaticMethods__hideSteps$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$, $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$);) {
      $JSCompiler_StaticMethods__showOverflowButtons$$(this), $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$);
    }
    $JSCompiler_StaticMethods__numberOfVisibleSteps$$(this) == this.$_steps$.length && $JSCompiler_StaticMethods__closeOverflowPopups$$(this);
  } else {
    $i$$inline_6333_totalSteps$$ = this.$_steps$.length;
    $step$$inline_6334_visibleSteps$$ = $JSCompiler_StaticMethods__numberOfVisibleSteps$$(this);
    if ($step$$inline_6334_visibleSteps$$ == $i$$inline_6333_totalSteps$$ && ($JSCompiler_StaticMethods__hideOverflowButtons$$(this), $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$))) {
      return;
    }
    $JSCompiler_StaticMethods__showOverflowButtons$$(this, !0);
    $availableWidth_availableWidth$$inline_5059$$ = this.$_element$.offsetWidth + 3;
    $availableHeight$$2_availableHeight$$inline_5060$$ = this.$_element$.offsetHeight + 5;
    if ("horizontal" == this.$_orientation$ && 50 >= $availableWidth_availableWidth$$inline_5059$$ || "vertical" == this.$_orientation$ && 50 >= $availableHeight$$2_availableHeight$$inline_5060$$) {
      for (;0 < $JSCompiler_StaticMethods__numberOfVisibleSteps$$(this);) {
        switch(this.$_type$) {
          case "end":
            $JSCompiler_StaticMethods__hideEndStep$$(this);
            break;
          case "start":
          ;
          case "both":
          ;
          case "droplist":
            $JSCompiler_StaticMethods__hideStartStep$$(this);
        }
      }
      $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$);
    } else {
      null == $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ && ($hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$)), $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = $JSCompiler_StaticMethods__binarySearchAdjustSteps$$(this, $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$, 
      $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$, $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ ? $step$$inline_6334_visibleSteps$$ : 0, $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ ? $i$$inline_6333_totalSteps$$ : $step$$inline_6334_visibleSteps$$), $availableWidth_availableWidth$$inline_5059$$ = this.$_element$.offsetWidth + 3, $availableHeight$$2_availableHeight$$inline_5060$$ = this.$_element$.offsetHeight + 
      5;
    }
    $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = $JSCompiler_StaticMethods__showSteps$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$, $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$);
    $availableWidth_availableWidth$$inline_5059$$ = this.$_element$.offsetWidth + 3;
    $availableHeight$$2_availableHeight$$inline_5060$$ = this.$_element$.offsetHeight + 5;
    if ($JSCompiler_StaticMethods__numberOfVisibleSteps$$(this) == $i$$inline_6333_totalSteps$$) {
      if ($hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$) {
        $JSCompiler_StaticMethods__hideOverflowButtons$$(this);
        $JSCompiler_StaticMethods__closeOverflowPopups$$(this);
        return;
      }
      $JSCompiler_StaticMethods__hideOverflowButtons$$(this);
      if ($hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$)) {
        $JSCompiler_StaticMethods__closeOverflowPopups$$(this);
        return;
      }
      $JSCompiler_StaticMethods__showOverflowButtons$$(this, !0);
    }
    $JSCompiler_StaticMethods__hideSteps$$(this, $availableWidth_availableWidth$$inline_5059$$, $availableHeight$$2_availableHeight$$inline_5060$$, $hasAvailableSpace_hasAvailableSpace$$inline_5061_steps$$inline_6332$$);
    this.$_useRovingTabIndex$ && $JSCompiler_StaticMethods__resetActiveDescendant$$(this);
  }
};
$AdfOverflowSupport$$.prototype.$removeAllItemsFromOverflow$ = function $$AdfOverflowSupport$$$$$removeAllItemsFromOverflow$$() {
  for ($JSCompiler_StaticMethods__hideOverflowButtons$$(this);$JSCompiler_StaticMethods__numberOfVisibleSteps$$(this) < this.$_steps$.length;) {
    switch(this.$_type$) {
      case "end":
        $JSCompiler_StaticMethods__showEndStep$$(this);
        break;
      case "start":
        $JSCompiler_StaticMethods__showStartStep$$(this);
        break;
      case "both":
      ;
      case "droplist":
        0 != this.$_firstVisibleStep$ ? $JSCompiler_StaticMethods__showStartStep$$(this) : $JSCompiler_StaticMethods__showEndStep$$(this);
    }
  }
  $JSCompiler_StaticMethods__closeOverflowPopups$$(this);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.removeAllItemsFromOverflow", {$removeAllItemsFromOverflow$:$AdfOverflowSupport$$.prototype.$removeAllItemsFromOverflow$});
$AdfOverflowSupport$$.prototype.$focusNextChild$ = function $$AdfOverflowSupport$$$$$focusNextChild$$($nextItem$$11_popupContainer$$5$$) {
  this.$_canMoveFocus$($nextItem$$11_popupContainer$$5$$) && ($nextItem$$11_popupContainer$$5$$ = $AdfFocusUtils$$.$focusNextActiveDescendant$($nextItem$$11_popupContainer$$5$$, this.$_activeDescendant$, !0), $AdfAssert$$.$assertDomElement$($nextItem$$11_popupContainer$$5$$), this.$_activeDescendant$ = $nextItem$$11_popupContainer$$5$$);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.focusNextChild", {$focusNextChild$:$AdfOverflowSupport$$.prototype.$focusNextChild$});
$AdfOverflowSupport$$.prototype.$focusPreviousChild$ = function $$AdfOverflowSupport$$$$$focusPreviousChild$$($popupContainer$$6_prevItem$$3$$) {
  this.$_canMoveFocus$($popupContainer$$6_prevItem$$3$$) && ($popupContainer$$6_prevItem$$3$$ = $AdfFocusUtils$$.$focusPreviousActiveDescendant$($popupContainer$$6_prevItem$$3$$, this.$_activeDescendant$, !0), $AdfAssert$$.$assertDomElement$($popupContainer$$6_prevItem$$3$$), this.$_activeDescendant$ = $popupContainer$$6_prevItem$$3$$);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.focusPreviousChild", {$focusPreviousChild$:$AdfOverflowSupport$$.prototype.$focusPreviousChild$});
$AdfOverflowSupport$$.prototype.$_canMoveFocus$ = function $$AdfOverflowSupport$$$$$_canMoveFocus$$($popupContainer$$7$$) {
  $AdfAssert$$.assert(this.$_useRovingTabIndex$);
  $AdfAssert$$.$assertDomElement$($popupContainer$$7$$);
  $AdfAssert$$.$assertDomElement$(this.$_activeDescendant$);
  $AdfAssert$$.assert("0" == this.$_activeDescendant$.getAttribute("tabindex"), "The overflow popup's active descendant should have tabindex 0");
  this.$_activeDescendant$ || ($AdfLogger$$.$LOGGER$.warning("Overflow has lost its assigned activeDescendant!"), this.$resetActiveDescendant$());
  return null != this.$_activeDescendant$;
};
$AdfOverflowSupport$$.prototype.$updateActiveDescendant$ = function $$AdfOverflowSupport$$$$$updateActiveDescendant$$($newActiveDescendant$$6$$) {
  $AdfAssert$$.$assertDomElement$($newActiveDescendant$$6$$);
  this.$_activeDescendant$ != $newActiveDescendant$$6$$ && (this.$_activeDescendant$ && this.$_activeDescendant$.setAttribute("tabIndex", "-1"), $newActiveDescendant$$6$$.setAttribute("tabIndex", "0"), this.$_activeDescendant$ = $newActiveDescendant$$6$$);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.updateActiveDescendant", {$updateActiveDescendant$:$AdfOverflowSupport$$.prototype.$updateActiveDescendant$});
$AdfOverflowSupport$$.prototype.$isInOverflow$ = function $$AdfOverflowSupport$$$$$isInOverflow$$($domElement$$619$$) {
  if ($JSCompiler_StaticMethods__supportsEndOverflow$$(this) && $AdfDomUtils$$.$isAncestor$(this.$_endContainer$, $domElement$$619$$)) {
    return "end";
  }
  if ($JSCompiler_StaticMethods__supportsStartOverflow$$(this) && $AdfDomUtils$$.$isAncestor$(this.$_startContainer$, $domElement$$619$$)) {
    return "start";
  }
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.isInOverflow", {$isInOverflow$:$AdfOverflowSupport$$.prototype.$isInOverflow$});
$AdfOverflowSupport$$.prototype.$showOverflowPopup$ = function $$AdfOverflowSupport$$$$$showOverflowPopup$$($location$$23$$) {
  var $peer$$195$$ = this.$_peer$, $component$$2357$$ = this.$_peer$.$getComponent$();
  $peer$$195$$.$isPopupVisible$($component$$2357$$, "start" == $location$$23$$ ? $AdfOverflowSupport$$.$_POPUP_ID_START$ : $AdfOverflowSupport$$.$_POPUP_ID_END$) || ("start" == $location$$23$$ ? ($JSCompiler_StaticMethods__initializeStartContainerCallback$$(this), $JSCompiler_StaticMethods__overflowButtonPressed$$(this, $AdfOverflowSupport$$.$_POPUP_ID_START$, this.$_startContainer$, this.$_startHints$)) : ($JSCompiler_StaticMethods__initializeEndContainerCallback$$(this), $JSCompiler_StaticMethods__supportsDroplist$$(this) ? 
  $JSCompiler_StaticMethods__overflowButtonPressed$$(this, $AdfOverflowSupport$$.$_POPUP_ID_END$, this.$_droplistContainer$, this.$_endHints$) : $JSCompiler_StaticMethods__overflowButtonPressed$$(this, $AdfOverflowSupport$$.$_POPUP_ID_END$, this.$_endContainer$, this.$_endHints$)));
};
$AdfObject$$.$exportPrototypeSymbol$("AdfOverflowSupport.prototype.showOverflowPopup", {$showOverflowPopup$:$AdfOverflowSupport$$.prototype.$showOverflowPopup$});
function $JSCompiler_StaticMethods__closeOverflowPopups$$($JSCompiler_StaticMethods__closeOverflowPopups$self_peer$$196$$) {
  $JSCompiler_StaticMethods__closeOverflowPopups$self_peer$$196$$ = $JSCompiler_StaticMethods__closeOverflowPopups$self_peer$$196$$.$_peer$;
  var $component$$2358$$ = $JSCompiler_StaticMethods__closeOverflowPopups$self_peer$$196$$.$getComponent$();
  $JSCompiler_StaticMethods__closeOverflowPopups$self_peer$$196$$.$isPopupVisible$($component$$2358$$, $AdfOverflowSupport$$.$_POPUP_ID_START$) && $JSCompiler_StaticMethods__closeOverflowPopups$self_peer$$196$$.$hidePopup$($component$$2358$$, $AdfOverflowSupport$$.$_POPUP_ID_START$);
  $JSCompiler_StaticMethods__closeOverflowPopups$self_peer$$196$$.$isPopupVisible$($component$$2358$$, $AdfOverflowSupport$$.$_POPUP_ID_END$) && $JSCompiler_StaticMethods__closeOverflowPopups$self_peer$$196$$.$hidePopup$($component$$2358$$, $AdfOverflowSupport$$.$_POPUP_ID_END$);
}
function $JSCompiler_StaticMethods__supportsStartOverflow$$($JSCompiler_StaticMethods__supportsStartOverflow$self$$) {
  return "start" == $JSCompiler_StaticMethods__supportsStartOverflow$self$$.$_type$ || "both" == $JSCompiler_StaticMethods__supportsStartOverflow$self$$.$_type$ || "droplist" == $JSCompiler_StaticMethods__supportsStartOverflow$self$$.$_type$;
}
function $JSCompiler_StaticMethods__supportsEndOverflow$$($JSCompiler_StaticMethods__supportsEndOverflow$self$$) {
  return "end" == $JSCompiler_StaticMethods__supportsEndOverflow$self$$.$_type$ || "both" == $JSCompiler_StaticMethods__supportsEndOverflow$self$$.$_type$ || "droplist" == $JSCompiler_StaticMethods__supportsEndOverflow$self$$.$_type$;
}
function $JSCompiler_StaticMethods__supportsDroplist$$($JSCompiler_StaticMethods__supportsDroplist$self$$) {
  return "droplist" == $JSCompiler_StaticMethods__supportsDroplist$self$$.$_type$;
}
function $JSCompiler_StaticMethods__getElement$$($overflowId$$3$$, $subString$$) {
  var $id$$378$$ = $AdfRichUIPeer$$.$CreateSubId$($overflowId$$3$$, $subString$$);
  return $AdfAgent$$.$AGENT$.getElementById($id$$378$$);
}
$JSCompiler_prototypeAlias$$ = $AdfOverflowSupport$$.prototype;
$JSCompiler_prototypeAlias$$.$_initStartButtonEventHandling$ = function $$JSCompiler_prototypeAlias$$$$_initStartButtonEventHandling$$() {
  var $agent$$782$$ = $AdfAgent$$.$AGENT$, $startIndicator$$4$$ = this.$_startIndicator$, $startHints_startShowCall$$ = $JSCompiler_StaticMethods__createOverflowPopupHints$$();
  $startHints_startShowCall$$.alignElement = $startIndicator$$4$$;
  $startHints_startShowCall$$[AdfRichPopup.$HINT_ALIGN$] = "before" == this.$_position$ ? AdfRichPopup.ALIGN_BEFORE_START : AdfRichPopup.ALIGN_AFTER_START;
  this.$_startHints$ = $startHints_startShowCall$$;
  $startHints_startShowCall$$ = this.$_startShowCall$ = this.$createCallback$(this.$_startOverflowButtonPressed$);
  $agent$$782$$.$addBubbleEventListener$($startIndicator$$4$$, "mousedown", $startHints_startShowCall$$);
  $agent$$782$$.$addBubbleEventListener$($startIndicator$$4$$, "keydown", $startHints_startShowCall$$);
  this.$_startButtonMouseUpCall$ = this.$createCallback$(this.$_startOverflowButtonMouseUp$);
  $agent$$782$$.$addBubbleEventListener$($startIndicator$$4$$, "mouseup", this.$_startButtonMouseUpCall$);
  this.$_startButtonMouseOutCall$ = this.$createCallback$(this.$_startOverflowButtonMouseOut$);
  $agent$$782$$.$addBubbleEventListener$($startIndicator$$4$$, "mouseout", this.$_startButtonMouseOutCall$);
};
$JSCompiler_prototypeAlias$$.$_initEndButtonEventHandling$ = function $$JSCompiler_prototypeAlias$$$$_initEndButtonEventHandling$$() {
  var $agent$$783$$ = $AdfAgent$$.$AGENT$, $endIndicator$$4$$ = this.$_endIndicator$, $endHints_endShowCall$$ = $JSCompiler_StaticMethods__createOverflowPopupHints$$();
  $endHints_endShowCall$$.alignElement = this.$_endIndicator$;
  $endHints_endShowCall$$[AdfRichPopup.$HINT_ALIGN$] = "before" == this.$_position$ ? AdfRichPopup.ALIGN_BEFORE_END : AdfRichPopup.ALIGN_AFTER_END;
  this.$_endHints$ = $endHints_endShowCall$$;
  $endHints_endShowCall$$ = this.$_endShowCall$ = this.$createCallback$(this.$_endOverflowButtonPressed$);
  $agent$$783$$.$addBubbleEventListener$($endIndicator$$4$$, "mousedown", $endHints_endShowCall$$);
  $agent$$783$$.$addBubbleEventListener$($endIndicator$$4$$, "keydown", $endHints_endShowCall$$);
  this.$_endButtonMouseUpCall$ = this.$createCallback$(this.$_endOverflowButtonMouseUp$);
  $agent$$783$$.$addBubbleEventListener$($endIndicator$$4$$, "mouseup", this.$_endButtonMouseUpCall$);
  this.$_endButtonMouseOutCall$ = this.$createCallback$(this.$_endOverflowButtonMouseOut$);
  $agent$$783$$.$addBubbleEventListener$($endIndicator$$4$$, "mouseout", this.$_endButtonMouseOutCall$);
};
function $JSCompiler_StaticMethods__createOverflowPopupHints$$() {
  return {autodismiss:"autodismissAlways", focus:!0, type:"menu", closeOnEscape:!0};
}
$JSCompiler_prototypeAlias$$.$_startOverflowButtonPressed$ = function $$JSCompiler_prototypeAlias$$$$_startOverflowButtonPressed$$($event$$325$$) {
  var $agent$$784$$ = $AdfAgent$$.$AGENT$, $eventType$$55_targetElement$$44$$ = $event$$325$$.type, $keyCode$$122$$ = $event$$325$$.keyCode;
  if ("keydown" != $eventType$$55_targetElement$$44$$ || $keyCode$$122$$ == $AdfKeyStroke$$.$ENTER_KEY$ || $keyCode$$122$$ == $AdfKeyStroke$$.$ARROWDOWN_KEY$ || $keyCode$$122$$ == $AdfKeyStroke$$.$SPACE_KEY$) {
    "mousedown" == $eventType$$55_targetElement$$44$$ && $event$$325$$.button && $event$$325$$.button != $AdfUIInputEvent$$.$LEFT_BUTTON_FLAG$ || ($JSCompiler_StaticMethods__initializeStartContainerCallback$$(this), $JSCompiler_StaticMethods__overflowButtonPressed$$(this, $AdfOverflowSupport$$.$_POPUP_ID_START$, this.$_startContainer$, this.$_startHints$), "mousedown" == $eventType$$55_targetElement$$44$$ && ($eventType$$55_targetElement$$44$$ = $agent$$784$$.$getEventTarget$($event$$325$$), this.$_setDepressedStyle$($eventType$$55_targetElement$$44$$, 
    !0))), $agent$$784$$.$eatEvent$($event$$325$$);
  }
};
function $JSCompiler_StaticMethods__initializeStartContainerCallback$$($JSCompiler_StaticMethods__initializeStartContainerCallback$self$$) {
  null == $JSCompiler_StaticMethods__initializeStartContainerCallback$self$$.$_hideStartContainerCallback$ && ($JSCompiler_StaticMethods__initializeStartContainerCallback$self$$.$_hideStartContainerCallback$ = $JSCompiler_StaticMethods__initializeStartContainerCallback$self$$.$createCallback$($JSCompiler_StaticMethods__initializeStartContainerCallback$self$$.$_hideStartContainer$), $AdfObject$$.$ensureClassInitialization$($AdfDhtmlPopupWindow$$), $JSCompiler_StaticMethods__initializeStartContainerCallback$self$$.$_startHints$.closeHandler = 
  $JSCompiler_StaticMethods__initializeStartContainerCallback$self$$.$_hideStartContainerCallback$, $JSCompiler_StaticMethods__initializeStartContainerCallback$self$$.$_startContainerParent$ = $JSCompiler_StaticMethods__initializeStartContainerCallback$self$$.$_startContainer$.parentNode);
}
$JSCompiler_prototypeAlias$$.$_startOverflowButtonMouseUp$ = function $$JSCompiler_prototypeAlias$$$$_startOverflowButtonMouseUp$$($event$$326_targetElement$$45$$) {
  $event$$326_targetElement$$45$$ = $AdfAgent$$.$AGENT$.$getEventTarget$($event$$326_targetElement$$45$$);
  this.$_setDepressedStyle$($event$$326_targetElement$$45$$, !1);
};
$JSCompiler_prototypeAlias$$.$_startOverflowButtonMouseOut$ = function $$JSCompiler_prototypeAlias$$$$_startOverflowButtonMouseOut$$($event$$327_targetElement$$46$$) {
  $event$$327_targetElement$$46$$ = $AdfAgent$$.$AGENT$.$getEventTarget$($event$$327_targetElement$$46$$);
  this.$_setDepressedStyle$($event$$327_targetElement$$46$$, !1);
};
$JSCompiler_prototypeAlias$$.$_endOverflowButtonPressed$ = function $$JSCompiler_prototypeAlias$$$$_endOverflowButtonPressed$$($event$$328$$) {
  var $agent$$785$$ = $AdfAgent$$.$AGENT$, $eventType$$56_targetElement$$47$$ = $event$$328$$.type, $keyCode$$123$$ = $event$$328$$.keyCode;
  if ("keydown" != $eventType$$56_targetElement$$47$$ || $keyCode$$123$$ == $AdfKeyStroke$$.$ENTER_KEY$ || $keyCode$$123$$ == $AdfKeyStroke$$.$ARROWDOWN_KEY$ || $keyCode$$123$$ == $AdfKeyStroke$$.$SPACE_KEY$) {
    "mousedown" == $eventType$$56_targetElement$$47$$ && $event$$328$$.button && $event$$328$$.button != $AdfUIInputEvent$$.$LEFT_BUTTON_FLAG$ || ($JSCompiler_StaticMethods__initializeEndContainerCallback$$(this), $JSCompiler_StaticMethods__supportsDroplist$$(this) ? $JSCompiler_StaticMethods__overflowButtonPressed$$(this, $AdfOverflowSupport$$.$_POPUP_ID_END$, this.$_droplistContainer$, this.$_endHints$) : $JSCompiler_StaticMethods__overflowButtonPressed$$(this, $AdfOverflowSupport$$.$_POPUP_ID_END$, 
    this.$_endContainer$, this.$_endHints$), "mousedown" == $eventType$$56_targetElement$$47$$ && ($eventType$$56_targetElement$$47$$ = $agent$$785$$.$getEventTarget$($event$$328$$), this.$_setDepressedStyle$($eventType$$56_targetElement$$47$$, !0))), $agent$$785$$.$eatEvent$($event$$328$$);
  }
};
function $JSCompiler_StaticMethods__initializeEndContainerCallback$$($JSCompiler_StaticMethods__initializeEndContainerCallback$self$$) {
  null == $JSCompiler_StaticMethods__initializeEndContainerCallback$self$$.$_hideEndContainerCallback$ && ($JSCompiler_StaticMethods__initializeEndContainerCallback$self$$.$_hideEndContainerCallback$ = $JSCompiler_StaticMethods__initializeEndContainerCallback$self$$.$createCallback$($JSCompiler_StaticMethods__initializeEndContainerCallback$self$$.$_hideEndContainer$), $AdfObject$$.$ensureClassInitialization$($AdfDhtmlPopupWindow$$), $JSCompiler_StaticMethods__initializeEndContainerCallback$self$$.$_endHints$.closeHandler = 
  $JSCompiler_StaticMethods__initializeEndContainerCallback$self$$.$_hideEndContainerCallback$, $JSCompiler_StaticMethods__initializeEndContainerCallback$self$$.$_endContainerParent$ = $JSCompiler_StaticMethods__initializeEndContainerCallback$self$$.$_endContainer$.parentNode);
}
$JSCompiler_prototypeAlias$$.$_endOverflowButtonMouseUp$ = function $$JSCompiler_prototypeAlias$$$$_endOverflowButtonMouseUp$$($event$$329_targetElement$$48$$) {
  $event$$329_targetElement$$48$$ = $AdfAgent$$.$AGENT$.$getEventTarget$($event$$329_targetElement$$48$$);
  this.$_setDepressedStyle$($event$$329_targetElement$$48$$, !1);
};
$JSCompiler_prototypeAlias$$.$_endOverflowButtonMouseOut$ = function $$JSCompiler_prototypeAlias$$$$_endOverflowButtonMouseOut$$($event$$330_targetElement$$49$$) {
  $event$$330_targetElement$$49$$ = $AdfAgent$$.$AGENT$.$getEventTarget$($event$$330_targetElement$$49$$);
  this.$_setDepressedStyle$($event$$330_targetElement$$49$$, !1);
};
$JSCompiler_prototypeAlias$$.$_setDepressedStyle$ = function $$JSCompiler_prototypeAlias$$$$_setDepressedStyle$$($targetElement$$50$$, $depressed$$8$$) {
  var $className$$38$$ = $AdfOverflowSupport$$.$_DEPRESSED_STYLE_CLASS$;
  $depressed$$8$$ ? $AdfDomUtils$$.$addCSSClassName$($targetElement$$50$$, $className$$38$$) : $AdfDomUtils$$.$removeCSSClassName$($targetElement$$50$$, $className$$38$$);
};
function $JSCompiler_StaticMethods__overflowButtonPressed$$($JSCompiler_StaticMethods__overflowButtonPressed$self$$, $popupId$$77$$, $popupContainer$$8$$, $popupHints$$8$$) {
  var $peer$$197$$ = $JSCompiler_StaticMethods__overflowButtonPressed$self$$.$_peer$, $component$$2359$$ = $JSCompiler_StaticMethods__overflowButtonPressed$self$$.$_peer$.$getComponent$();
  $peer$$197$$.$isPopupVisible$($component$$2359$$, $popupId$$77$$) ? $JSCompiler_StaticMethods__overflowButtonPressed$self$$.$_peer$.$hidePopup$($component$$2359$$, $popupId$$77$$) : ($JSCompiler_StaticMethods__overflowButtonPressed$self$$.$_useRovingTabIndex$ && $JSCompiler_StaticMethods__resetActiveDescendant$$($JSCompiler_StaticMethods__overflowButtonPressed$self$$, $popupContainer$$8$$), $JSCompiler_StaticMethods__overflowButtonPressed$self$$.$_peer$.$showPopup$($component$$2359$$, $popupContainer$$8$$, 
  $popupHints$$8$$, $popupId$$77$$));
}
$JSCompiler_prototypeAlias$$.$_hideStartContainer$ = function $$JSCompiler_prototypeAlias$$$$_hideStartContainer$$() {
  this.$_startContainer$ && this.$_startContainerParent$.appendChild(this.$_startContainer$);
};
$JSCompiler_prototypeAlias$$.$_hideEndContainer$ = function $$JSCompiler_prototypeAlias$$$$_hideEndContainer$$() {
  $JSCompiler_StaticMethods__supportsDroplist$$(this) && this.$_droplistContainer$ ? this.$_droplistContainer$.parentNode.appendChild(this.$_droplistContainer$) : this.$_endContainer$ && this.$_endContainerParent$.appendChild(this.$_endContainer$);
};
function $JSCompiler_StaticMethods__binarySearchAdjustSteps$$($JSCompiler_StaticMethods__binarySearchAdjustSteps$self$$, $hasAvailableSpace$$2$$, $JSCompiler_StaticMethods__showOneStep$self$$inline_5067_availableWidth$$2$$, $availableHeight$$4$$, $lowerRange$$1$$, $upperRange$$1$$) {
  var $divider$$1_rangeToDivide$$ = $upperRange$$1$$ - $lowerRange$$1$$;
  if (2 >= $divider$$1_rangeToDivide$$) {
    return $hasAvailableSpace$$2$$;
  }
  for (var $divider$$1_rangeToDivide$$ = Math.ceil($divider$$1_rangeToDivide$$ / 2), $x$$74$$ = 0;$x$$74$$ < $divider$$1_rangeToDivide$$;$x$$74$$++) {
    if ($hasAvailableSpace$$2$$) {
      $JSCompiler_StaticMethods__showOneStep$self$$inline_5067_availableWidth$$2$$ = $JSCompiler_StaticMethods__binarySearchAdjustSteps$self$$, "end" == $JSCompiler_StaticMethods__showOneStep$self$$inline_5067_availableWidth$$2$$.$_type$ ? $JSCompiler_StaticMethods__showEndStep$$($JSCompiler_StaticMethods__showOneStep$self$$inline_5067_availableWidth$$2$$) : "start" == $JSCompiler_StaticMethods__showOneStep$self$$inline_5067_availableWidth$$2$$.$_type$ && $JSCompiler_StaticMethods__showStartStep$$($JSCompiler_StaticMethods__showOneStep$self$$inline_5067_availableWidth$$2$$), 
      $JSCompiler_StaticMethods__showOneStep$self$$inline_5067_availableWidth$$2$$ = $JSCompiler_StaticMethods__binarySearchAdjustSteps$self$$.$_element$.offsetWidth + 3, $availableHeight$$4$$ = $JSCompiler_StaticMethods__binarySearchAdjustSteps$self$$.$_element$.offsetHeight + 5;
    } else {
      var $JSCompiler_StaticMethods__hideOneStep$self$$inline_5069$$ = $JSCompiler_StaticMethods__binarySearchAdjustSteps$self$$;
      "end" == $JSCompiler_StaticMethods__hideOneStep$self$$inline_5069$$.$_type$ ? $JSCompiler_StaticMethods__hideEndStep$$($JSCompiler_StaticMethods__hideOneStep$self$$inline_5069$$) : "start" == $JSCompiler_StaticMethods__hideOneStep$self$$inline_5069$$.$_type$ && $JSCompiler_StaticMethods__hideStartStep$$($JSCompiler_StaticMethods__hideOneStep$self$$inline_5069$$);
    }
  }
  ($hasAvailableSpace$$2$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$($JSCompiler_StaticMethods__binarySearchAdjustSteps$self$$, $JSCompiler_StaticMethods__showOneStep$self$$inline_5067_availableWidth$$2$$, $availableHeight$$4$$)) ? $lowerRange$$1$$ += $divider$$1_rangeToDivide$$ : $upperRange$$1$$ -= $divider$$1_rangeToDivide$$;
  return $JSCompiler_StaticMethods__binarySearchAdjustSteps$$($JSCompiler_StaticMethods__binarySearchAdjustSteps$self$$, $hasAvailableSpace$$2$$, $JSCompiler_StaticMethods__showOneStep$self$$inline_5067_availableWidth$$2$$, $availableHeight$$4$$, $lowerRange$$1$$, $upperRange$$1$$);
}
function $JSCompiler_StaticMethods__showSteps$$($JSCompiler_StaticMethods__showSteps$self$$, $availableWidth$$3_startOffset$$1$$, $availableHeight$$5_lastStep$$, $hasAvailableSpace$$3$$) {
  for (;$JSCompiler_StaticMethods__numberOfVisibleSteps$$($JSCompiler_StaticMethods__showSteps$self$$) < $JSCompiler_StaticMethods__showSteps$self$$.$_steps$.length && ($hasAvailableSpace$$3$$ || ("both" == $JSCompiler_StaticMethods__showSteps$self$$.$_type$ || "droplist" == $JSCompiler_StaticMethods__showSteps$self$$.$_type$) && ($JSCompiler_StaticMethods__showSteps$self$$.$_activeStep$ < $JSCompiler_StaticMethods__showSteps$self$$.$_firstVisibleStep$ || $JSCompiler_StaticMethods__showSteps$self$$.$_activeStep$ > 
  $JSCompiler_StaticMethods__showSteps$self$$.$_lastVisibleStep$));) {
    switch($JSCompiler_StaticMethods__showSteps$self$$.$_type$) {
      case "end":
        $JSCompiler_StaticMethods__showEndStep$$($JSCompiler_StaticMethods__showSteps$self$$);
        break;
      case "start":
        $JSCompiler_StaticMethods__showStartStep$$($JSCompiler_StaticMethods__showSteps$self$$);
        break;
      case "both":
      ;
      case "droplist":
        $availableWidth$$3_startOffset$$1$$ = $JSCompiler_StaticMethods__showSteps$self$$.$_activeStep$ - $JSCompiler_StaticMethods__showSteps$self$$.$_firstVisibleStep$, $availableHeight$$5_lastStep$$ = $JSCompiler_StaticMethods__showSteps$self$$.$_steps$.length - 1, $availableWidth$$3_startOffset$$1$$ < $JSCompiler_StaticMethods__numberOfVisibleSteps$$($JSCompiler_StaticMethods__showSteps$self$$) - $availableWidth$$3_startOffset$$1$$ - 1 && 0 != $JSCompiler_StaticMethods__showSteps$self$$.$_firstVisibleStep$ || 
        $JSCompiler_StaticMethods__showSteps$self$$.$_lastVisibleStep$ == $availableHeight$$5_lastStep$$ ? $JSCompiler_StaticMethods__showStartStep$$($JSCompiler_StaticMethods__showSteps$self$$) : $JSCompiler_StaticMethods__showEndStep$$($JSCompiler_StaticMethods__showSteps$self$$);
    }
    $availableWidth$$3_startOffset$$1$$ = $JSCompiler_StaticMethods__showSteps$self$$.$_element$.offsetWidth + 3;
    $availableHeight$$5_lastStep$$ = $JSCompiler_StaticMethods__showSteps$self$$.$_element$.offsetHeight + 5;
    $hasAvailableSpace$$3$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$($JSCompiler_StaticMethods__showSteps$self$$, $availableWidth$$3_startOffset$$1$$, $availableHeight$$5_lastStep$$);
  }
  return $hasAvailableSpace$$3$$;
}
function $JSCompiler_StaticMethods__hideSteps$$($JSCompiler_StaticMethods__hideSteps$self$$, $availableWidth$$4$$, $availableHeight$$6$$, $hasAvailableSpace$$4_startOffset$$2$$) {
  for (var $wasStepHidden$$ = !1;!$hasAvailableSpace$$4_startOffset$$2$$ && 0 < $JSCompiler_StaticMethods__numberOfVisibleSteps$$($JSCompiler_StaticMethods__hideSteps$self$$);) {
    switch($JSCompiler_StaticMethods__hideSteps$self$$.$_type$) {
      case "end":
        $JSCompiler_StaticMethods__hideEndStep$$($JSCompiler_StaticMethods__hideSteps$self$$);
        break;
      case "start":
        $JSCompiler_StaticMethods__hideStartStep$$($JSCompiler_StaticMethods__hideSteps$self$$);
        break;
      case "both":
      ;
      case "droplist":
        $hasAvailableSpace$$4_startOffset$$2$$ = $JSCompiler_StaticMethods__hideSteps$self$$.$_activeStep$ - $JSCompiler_StaticMethods__hideSteps$self$$.$_firstVisibleStep$, $hasAvailableSpace$$4_startOffset$$2$$ >= $JSCompiler_StaticMethods__numberOfVisibleSteps$$($JSCompiler_StaticMethods__hideSteps$self$$) - $hasAvailableSpace$$4_startOffset$$2$$ - 1 || -1 == $JSCompiler_StaticMethods__hideSteps$self$$.$_firstVisibleStep$ ? $JSCompiler_StaticMethods__hideStartStep$$($JSCompiler_StaticMethods__hideSteps$self$$) : 
        $JSCompiler_StaticMethods__hideEndStep$$($JSCompiler_StaticMethods__hideSteps$self$$);
    }
    $wasStepHidden$$ = !0;
    $hasAvailableSpace$$4_startOffset$$2$$ = $JSCompiler_StaticMethods__hasAvailableSpace$$($JSCompiler_StaticMethods__hideSteps$self$$, $availableWidth$$4$$, $availableHeight$$6$$);
  }
  return $wasStepHidden$$;
}
function $JSCompiler_StaticMethods__hasAvailableSpace$$($JSCompiler_StaticMethods__hasAvailableSpace$self_hasAvailableHeight$$, $availableWidth$$5$$, $availableHeight$$7$$) {
  var $contentWidth$$12$$ = Math.max($JSCompiler_StaticMethods__hasAvailableSpace$self_hasAvailableHeight$$.$_element$.firstChild.offsetWidth, $JSCompiler_StaticMethods__hasAvailableSpace$self_hasAvailableHeight$$.$_element$.scrollWidth), $agent$$786$$ = $AdfAgent$$.$getAgent$();
  $AdfPage$$.$PAGE$.$getLocaleContext$().$isRightToLeft$() && $agent$$786$$.$getPlatform$() == $AdfAgent$$.$IE_PLATFORM$ && 8 > $agent$$786$$.$getVersion$() && ($contentWidth$$12$$ = $JSCompiler_StaticMethods__hasAvailableSpace$self_hasAvailableHeight$$.$_element$.scrollWidth);
  $JSCompiler_StaticMethods__hasAvailableSpace$self_hasAvailableHeight$$ = Math.max($JSCompiler_StaticMethods__hasAvailableSpace$self_hasAvailableHeight$$.$_element$.firstChild.offsetHeight, $JSCompiler_StaticMethods__hasAvailableSpace$self_hasAvailableHeight$$.$_element$.scrollHeight) <= $availableHeight$$7$$;
  return $contentWidth$$12$$ <= $availableWidth$$5$$ && $JSCompiler_StaticMethods__hasAvailableSpace$self_hasAvailableHeight$$;
}
function $JSCompiler_StaticMethods__showStartStep$$($JSCompiler_StaticMethods__showStartStep$self$$) {
  var $step$$inline_5072$$ = $JSCompiler_StaticMethods__showStartStep$self$$.$_steps$[$JSCompiler_StaticMethods__showStartStep$self$$.$_firstVisibleStep$ - 1];
  $JSCompiler_StaticMethods__showElements$$($step$$inline_5072$$.elements);
  $JSCompiler_StaticMethods__hideOverflowElements$$($step$$inline_5072$$.$overflowElements$);
  $JSCompiler_StaticMethods__swapElements$$($step$$inline_5072$$.$swapElements$, !0);
  $JSCompiler_StaticMethods__showStartStep$self$$.$_firstVisibleStep$--;
}
function $JSCompiler_StaticMethods__showEndStep$$($JSCompiler_StaticMethods__showEndStep$self$$) {
  var $step$$inline_5076$$ = $JSCompiler_StaticMethods__showEndStep$self$$.$_steps$[$JSCompiler_StaticMethods__showEndStep$self$$.$_lastVisibleStep$ + 1];
  $JSCompiler_StaticMethods__showElements$$($step$$inline_5076$$.elements);
  $JSCompiler_StaticMethods__hideOverflowElements$$($step$$inline_5076$$.$overflowElements$);
  $JSCompiler_StaticMethods__swapElements$$($step$$inline_5076$$.$swapElements$, !0);
  $JSCompiler_StaticMethods__showEndStep$self$$.$_lastVisibleStep$++;
}
function $JSCompiler_StaticMethods__hideStartStep$$($JSCompiler_StaticMethods__hideStartStep$self$$) {
  var $step$$inline_5080$$ = $JSCompiler_StaticMethods__hideStartStep$self$$.$_steps$[$JSCompiler_StaticMethods__hideStartStep$self$$.$_firstVisibleStep$];
  $JSCompiler_StaticMethods__hideElements$$($step$$inline_5080$$.elements);
  $JSCompiler_StaticMethods__showOverflowElements$$($JSCompiler_StaticMethods__hideStartStep$self$$, $step$$inline_5080$$.$overflowElements$, !0);
  $JSCompiler_StaticMethods__swapElements$$($step$$inline_5080$$.$swapElements$);
  $JSCompiler_StaticMethods__hideStartStep$self$$.$_firstVisibleStep$++;
}
function $JSCompiler_StaticMethods__hideEndStep$$($JSCompiler_StaticMethods__hideEndStep$self$$) {
  var $step$$inline_5084$$ = $JSCompiler_StaticMethods__hideEndStep$self$$.$_steps$[$JSCompiler_StaticMethods__hideEndStep$self$$.$_lastVisibleStep$];
  $JSCompiler_StaticMethods__hideElements$$($step$$inline_5084$$.elements);
  $JSCompiler_StaticMethods__showOverflowElements$$($JSCompiler_StaticMethods__hideEndStep$self$$, $step$$inline_5084$$.$overflowElements$, void 0);
  $JSCompiler_StaticMethods__swapElements$$($step$$inline_5084$$.$swapElements$);
  $JSCompiler_StaticMethods__hideEndStep$self$$.$_lastVisibleStep$--;
}
function $JSCompiler_StaticMethods__hideElements$$($elements$$29$$) {
  for (var $elementsLength$$ = $elements$$29$$.length, $i$$740$$ = 0;$i$$740$$ < $elementsLength$$;$i$$740$$++) {
    var $element$$389$$ = $elements$$29$$[$i$$740$$];
    $element$$389$$.$_display$ = $element$$389$$.style.display;
    $element$$389$$.style.display = "none";
  }
}
function $JSCompiler_StaticMethods__showElements$$($elements$$30$$) {
  for (var $elementsLength$$1$$ = $elements$$30$$.length, $i$$741$$ = 0;$i$$741$$ < $elementsLength$$1$$;$i$$741$$++) {
    var $element$$390$$ = $elements$$30$$[$i$$741$$];
    $element$$390$$.style.display = $element$$390$$.$_display$ || "";
  }
}
function $JSCompiler_StaticMethods__hideOverflowElements$$($elements$$31$$) {
  for (var $elementsLength$$2$$ = $elements$$31$$.length, $i$$742$$ = 0;$i$$742$$ < $elementsLength$$2$$;$i$$742$$++) {
    var $element$$391$$ = $elements$$31$$[$i$$742$$];
    $element$$391$$.parentNode.removeChild($element$$391$$);
  }
}
function $JSCompiler_StaticMethods__showOverflowElements$$($JSCompiler_StaticMethods__showOverflowElements$self$$, $elements$$32$$, $isStart$$4$$) {
  for (var $elementsLength$$3$$ = $elements$$32$$.length, $container$$73$$ = $isStart$$4$$ ? $JSCompiler_StaticMethods__showOverflowElements$self$$.$_startContainer$ : $JSCompiler_StaticMethods__showOverflowElements$self$$.$_endContainer$, $i$$743$$ = 0;$i$$743$$ < $elementsLength$$3$$;$i$$743$$++) {
    var $element$$392$$ = $elements$$32$$[$i$$743$$];
    "before" == $JSCompiler_StaticMethods__showOverflowElements$self$$.$_position$ || $isStart$$4$$ && "vertical" == $JSCompiler_StaticMethods__showOverflowElements$self$$.$_orientation$ ? $container$$73$$.appendChild($element$$392$$) : $container$$73$$.insertBefore($element$$392$$, $container$$73$$.firstChild);
  }
}
function $JSCompiler_StaticMethods__swapElements$$($elements$$33$$, $show$$8$$) {
  for (var $elementsLength$$4$$ = $elements$$33$$.length, $i$$744$$ = 0;$i$$744$$ < $elementsLength$$4$$;$i$$744$$++) {
    var $swapElements$$ = $elements$$33$$[$i$$744$$], $position$$25$$ = $swapElements$$[$show$$8$$ ? 1 : 2];
    $position$$25$$.parentNode.insertBefore($swapElements$$[0], $position$$25$$);
  }
}
function $JSCompiler_StaticMethods__numberOfVisibleSteps$$($JSCompiler_StaticMethods__numberOfVisibleSteps$self$$) {
  var $numberOfSteps$$ = $JSCompiler_StaticMethods__numberOfVisibleSteps$self$$.$_steps$.length;
  return $numberOfSteps$$ - $JSCompiler_StaticMethods__numberOfVisibleSteps$self$$.$_firstVisibleStep$ - ($numberOfSteps$$ - 1 - $JSCompiler_StaticMethods__numberOfVisibleSteps$self$$.$_lastVisibleStep$);
}
function $JSCompiler_StaticMethods__hideOverflowButtons$$($JSCompiler_StaticMethods__hideOverflowButtons$self$$) {
  switch($JSCompiler_StaticMethods__hideOverflowButtons$self$$.$_type$) {
    case "end":
      $AdfDomUtils$$.$removeCSSClassName$($JSCompiler_StaticMethods__hideOverflowButtons$self$$.$_element$, "p_AFEndOverflow");
      break;
    case "start":
      $AdfDomUtils$$.$removeCSSClassName$($JSCompiler_StaticMethods__hideOverflowButtons$self$$.$_element$, "p_AFStartOverflow");
      break;
    case "both":
      $AdfDomUtils$$.$removeCSSClassName$($JSCompiler_StaticMethods__hideOverflowButtons$self$$.$_element$, "p_AFEndOverflow");
      $AdfDomUtils$$.$removeCSSClassName$($JSCompiler_StaticMethods__hideOverflowButtons$self$$.$_element$, "p_AFStartOverflow");
      break;
    case "droplist":
      $AdfDomUtils$$.$removeCSSClassName$($JSCompiler_StaticMethods__hideOverflowButtons$self$$.$_element$, "p_AFOverflowDroplist");
  }
}
function $JSCompiler_StaticMethods__showOverflowButtons$$($JSCompiler_StaticMethods__showOverflowButtons$self$$, $force$$3$$) {
  if ($force$$3$$) {
    switch($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_type$) {
      case "end":
        $AdfDomUtils$$.$addCSSClassName$($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_element$, "p_AFEndOverflow");
        break;
      case "start":
        $AdfDomUtils$$.$addCSSClassName$($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_element$, "p_AFStartOverflow");
        break;
      case "both":
        $AdfDomUtils$$.$addCSSClassName$($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_element$, "p_AFEndOverflow");
        $AdfDomUtils$$.$addCSSClassName$($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_element$, "p_AFStartOverflow");
        break;
      case "droplist":
        $AdfDomUtils$$.$addCSSClassName$($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_element$, "p_AFOverflowDroplist");
    }
  } else {
    0 < $JSCompiler_StaticMethods__showOverflowButtons$self$$.$_firstVisibleStep$ && 0 < $JSCompiler_StaticMethods__showOverflowButtons$self$$.$_startContainer$.childNodes.length && ($JSCompiler_StaticMethods__supportsDroplist$$($JSCompiler_StaticMethods__showOverflowButtons$self$$) ? $AdfDomUtils$$.$addCSSClassName$($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_element$, "p_AFOverflowDroplist") : $AdfDomUtils$$.$addCSSClassName$($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_element$, 
    "p_AFStartOverflow")), $JSCompiler_StaticMethods__showOverflowButtons$self$$.$_lastVisibleStep$ < $JSCompiler_StaticMethods__showOverflowButtons$self$$.$_steps$.length - 1 && 0 < $JSCompiler_StaticMethods__showOverflowButtons$self$$.$_endContainer$.childNodes.length && ($JSCompiler_StaticMethods__supportsDroplist$$($JSCompiler_StaticMethods__showOverflowButtons$self$$) ? $AdfDomUtils$$.$addCSSClassName$($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_element$, "p_AFOverflowDroplist") : 
    $AdfDomUtils$$.$addCSSClassName$($JSCompiler_StaticMethods__showOverflowButtons$self$$.$_element$, "p_AFEndOverflow"));
  }
}
function $JSCompiler_StaticMethods__resetActiveDescendant$$($JSCompiler_StaticMethods__resetActiveDescendant$self$$, $popupContainer$$9$$) {
  if (!$popupContainer$$9$$) {
    switch($JSCompiler_StaticMethods__resetActiveDescendant$self$$.$_type$) {
      case "end":
        $popupContainer$$9$$ = $JSCompiler_StaticMethods__resetActiveDescendant$self$$.$_endContainer$;
        break;
      case "start":
        $popupContainer$$9$$ = $JSCompiler_StaticMethods__resetActiveDescendant$self$$.$_startContainer$;
        break;
      case "droplist":
        $popupContainer$$9$$ = $JSCompiler_StaticMethods__resetActiveDescendant$self$$.$_droplistContainer$;
        break;
      case "both":
        $AdfLogger$$.$LOGGER$.warning("Roving tab index not yet supported for overflow type 'both'!");
        return;
    }
  }
  $JSCompiler_StaticMethods__resetActiveDescendant$self$$.$_activeDescendant$ && $JSCompiler_StaticMethods__resetActiveDescendant$self$$.$_activeDescendant$.setAttribute("tabIndex", "-1");
  $JSCompiler_StaticMethods__resetActiveDescendant$self$$.$_activeDescendant$ = $AdfFocusUtils$$.$setFirstActiveDescendant$($popupContainer$$9$$, {$includeVisibilityHidden$:!0, $includeDisplayNone$:!0});
}
;