function $AdfInputSearchScrollManager$$($clientId$$71$$, $collection$$5$$, $container$$, $dataBody$$, $domFragmentGeneratorFunc$$, $options$$28$$) {
  this.Init($clientId$$71$$, $collection$$5$$, $container$$, $dataBody$$, $domFragmentGeneratorFunc$$, $options$$28$$);
}
$goog$exportSymbol$$("AdfInputSearchScrollManager", $AdfInputSearchScrollManager$$);
$AdfObject$$.$createSubclass$($AdfInputSearchScrollManager$$);
$AdfInputSearchScrollManager$$.$InitClass$ = function $$AdfInputSearchScrollManager$$$$InitClass$$() {
  this.$_SCROLLER_SUB_ID$ = "scroller";
  this.$_SCROLL_TOP_EXPANDO$ = "data-afr-scrollTop";
  this.$_SUGGESTIONS_SCROLLER_STYLE_CLASS$ = "af|inputSearch::suggestions-scroller";
  this.$_SUGGESTIONS_STATUS_MESSAGE_STYLE_CLASS$ = "af|inputSearch::suggestions-status-message";
  this.$_LABEL_FETCHING$ = "af_inputSearch.LABEL_FETCHING";
};
$goog$exportSymbol$$("AdfInputSearchScrollManager.InitClass", $AdfInputSearchScrollManager$$.$InitClass$);
$AdfInputSearchScrollManager$$.prototype.Init = function $$AdfInputSearchScrollManager$$$$Init$($clientId$$72$$, $collection$$6$$, $container$$1$$, $dataBody$$1$$, $domFragmentGeneratorFunc$$1$$, $options$$29$$) {
  $AdfInputSearchScrollManager$$.$superclass$.Init.call(this);
  this.$_clientId$ = $clientId$$72$$;
  this.$_collection$ = $collection$$6$$;
  this.$_container$ = $container$$1$$;
  this.$_dataBody$ = $dataBody$$1$$;
  this.$_domFragmentGeneratorFunc$ = $domFragmentGeneratorFunc$$1$$;
  this.$_options$ = $options$$29$$;
  this.$_headerHeight$ = $options$$29$$.$headerHeight$ ? $options$$29$$.$headerHeight$ : 0;
  this.$_idPrefix$ = $AdfSuggestionsPanel$$.$getSuggestItemIdPrefix$($clientId$$72$$);
  this.$_setupScroller$();
};
$AdfObject$$.$exportPrototypeSymbol$("AdfInputSearchScrollManager.prototype.Init", {Init:$AdfInputSearchScrollManager$$.prototype.Init});
$AdfInputSearchScrollManager$$.prototype.release = function $$AdfInputSearchScrollManager$$$$release$() {
  if (this.$_scroller$) {
    this.$_container$.removeEventListener("scroll", this.$_arrowKeyNavigationHandle$);
    this.$_dataBody$.removeEventListener("wheel", this.$_mouseWheelHandle$);
    this.$_scroller$.removeEventListener("scroll", this.$_scrollHandle$);
    this.$_scrollHandle$ = this.$_mouseWheelHandle$ = this.$_arrowKeyNavigationHandle$ = null;
    var $paddingEnd$$ = $AdfPage$$.$PAGE$.$getLocaleContext$().$isRightToLeft$() ? "padding-left" : "padding-right", $containerStyle$$ = this.$_container$.style;
    $containerStyle$$.removeProperty($paddingEnd$$);
    $containerStyle$$.removeProperty("overflow");
    this.$_swipeMgr$.release();
    this.$_swipeMgr$ = null;
  } else {
    this.$_infiniteScrollHandle$ && (this.$_container$.removeEventListener("scroll", this.$_infiniteScrollHandle$), this.$_infiniteScrollHandle$ = null);
  }
  this.$_container$.scrollTop = 0;
  this.$_container$.removeAttribute($AdfInputSearchScrollManager$$.$_SCROLL_TOP_EXPANDO$);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfInputSearchScrollManager.prototype.release", {release:$AdfInputSearchScrollManager$$.prototype.release});
$AdfInputSearchScrollManager$$.prototype.$updateCollection$ = function $$AdfInputSearchScrollManager$$$$$updateCollection$$($collection$$7_scrollTop$$6$$) {
  this.$_collection$ = $collection$$7_scrollTop$$6$$;
  $collection$$7_scrollTop$$6$$ = this.$_scroller$ ? this.$_scroller$.scrollTop : this.$_container$.scrollTop;
  var $notionalTopDisplayedItemIndex$$ = this.$_getNotionalDataIndexFromScrollTop$($collection$$7_scrollTop$$6$$);
  100 > this.$_getDataIndexFromElem$(this.$_getLastDisplayedItem$()) - $notionalTopDisplayedItemIndex$$ && this.$_addMoreElements$($AdfSuggestionsPanel$$.$__SUGGESTIONS_RENDERING_CHUNK_SIZE$);
  this.$_infiniteScrollHandle$ || (this.$_isDefaultScroller$() && (this.release(), this.$_setupScroller$()), this.$_isDefaultScroller$() || this.$_restoreScrollPos$($notionalTopDisplayedItemIndex$$, $collection$$7_scrollTop$$6$$));
};
$AdfObject$$.$exportPrototypeSymbol$("AdfInputSearchScrollManager.prototype.updateCollection", {$updateCollection$:$AdfInputSearchScrollManager$$.prototype.$updateCollection$});
$AdfInputSearchScrollManager$$.prototype.$isElementHidden$ = function $$AdfInputSearchScrollManager$$$$$isElementHidden$$($element$$147$$) {
  var $container$$2$$ = this.$_container$, $isBelowScrollableRegion$$ = $container$$2$$.scrollTop + $container$$2$$.offsetTop + $container$$2$$.offsetHeight < $element$$147$$.offsetTop + $element$$147$$.offsetHeight;
  return $container$$2$$.scrollTop + $container$$2$$.offsetTop + this.$_headerHeight$ > $element$$147$$.offsetTop || $isBelowScrollableRegion$$;
};
$AdfObject$$.$exportPrototypeSymbol$("AdfInputSearchScrollManager.prototype.isElementHidden", {$isElementHidden$:$AdfInputSearchScrollManager$$.prototype.$isElementHidden$});
$AdfInputSearchScrollManager$$.prototype.scrollIntoView = function $$AdfInputSearchScrollManager$$$$scrollIntoView$($element$$148$$, $alignToTop$$) {
  var $container$$3$$ = this.$_container$;
  $container$$3$$.scrollTop = $alignToTop$$ ? $element$$148$$.offsetTop - $container$$3$$.offsetTop - this.$_headerHeight$ : $element$$148$$.offsetTop + $element$$148$$.offsetHeight - $container$$3$$.offsetTop - $container$$3$$.clientHeight;
};
$AdfObject$$.$exportPrototypeSymbol$("AdfInputSearchScrollManager.prototype.scrollIntoView", {scrollIntoView:$AdfInputSearchScrollManager$$.prototype.scrollIntoView});
$JSCompiler_prototypeAlias$$ = $AdfInputSearchScrollManager$$.prototype;
$JSCompiler_prototypeAlias$$.$_addMoreElements$ = function $$JSCompiler_prototypeAlias$$$$_addMoreElements$$($size$$16$$, $atTop$$) {
  $AdfAssert$$.$assertNumber$($size$$16$$);
  var $newElements_newItemStartIndex$$;
  if ($atTop$$) {
    var $firstElemInDom_lastElemInDom$$ = this.$_getFirstDisplayedItem$(), $firstItemIndex$$ = this.$_getDataIndexFromElem$($firstElemInDom_lastElemInDom$$);
    0 >= $firstItemIndex$$ || ($newElements_newItemStartIndex$$ = $firstItemIndex$$ - $size$$16$$, 0 > $newElements_newItemStartIndex$$ && ($newElements_newItemStartIndex$$ = 0, $size$$16$$ = $firstItemIndex$$), $newElements_newItemStartIndex$$ = this.$_domFragmentGeneratorFunc$(this.$_collection$, this.$_options$, !1, $newElements_newItemStartIndex$$, $size$$16$$), this.$_dataBody$.insertBefore($newElements_newItemStartIndex$$, $firstElemInDom_lastElemInDom$$));
  } else {
    $firstElemInDom_lastElemInDom$$ = this.$_getLastDisplayedItem$(), $newElements_newItemStartIndex$$ = this.$_getDataIndexFromElem$($firstElemInDom_lastElemInDom$$) + 1, $newElements_newItemStartIndex$$ = this.$_domFragmentGeneratorFunc$(this.$_collection$, this.$_options$, !1, $newElements_newItemStartIndex$$, $size$$16$$), this.$_dataBody$.appendChild($newElements_newItemStartIndex$$);
  }
};
$JSCompiler_prototypeAlias$$.$_adjustScrollHeight$ = function $$JSCompiler_prototypeAlias$$$$_adjustScrollHeight$$($notionalTopDisplayedItemIndex$$1$$) {
  var $perItemHeight$$ = this.$_getPerItemHeight$(), $totalHeight$$ = this.$_getScrollerHeightInPx$($perItemHeight$$);
  this.$_scroller$.firstChild.style.height = $totalHeight$$;
  $AdfLogger$$.$LOGGER$.fine("Total height of the scroller adjusted to ", $totalHeight$$);
  this.$_preventScrollerScrollEvent$ = $notionalTopDisplayedItemIndex$$1$$ * $perItemHeight$$;
  this.$_preventScrollerScrollEvent$ = 0 > this.$_preventScrollerScrollEvent$ ? 0 : Math.round(this.$_preventScrollerScrollEvent$);
};
$JSCompiler_prototypeAlias$$.$_adjustScrollPos$ = function $$JSCompiler_prototypeAlias$$$$_adjustScrollPos$$($notionalTopDisplayedItemIndex$$2$$) {
  $AdfLogger$$.$LOGGER$.fine("Adjusting the scroll position to item index ", $notionalTopDisplayedItemIndex$$2$$);
  this.$_adjustScrollHeight$($notionalTopDisplayedItemIndex$$2$$);
  $AdfLogger$$.$LOGGER$.fine("Scroll top adjusted to ", this.$_preventScrollerScrollEvent$);
  this.$_scroller$.scrollTop = this.$_preventScrollerScrollEvent$;
};
$JSCompiler_prototypeAlias$$.$_restoreScrollPos$ = function $$JSCompiler_prototypeAlias$$$$_restoreScrollPos$$($notionalTopDisplayedItemIndex$$3$$, $scrollPos$$) {
  this.$_adjustScrollHeight$($notionalTopDisplayedItemIndex$$3$$);
  this.$_scroller$.scrollTop = $scrollPos$$;
};
$JSCompiler_prototypeAlias$$.$_arrowKeyNavigation$ = function $$JSCompiler_prototypeAlias$$$$_arrowKeyNavigation$$() {
  var $deltaScroll_newScrollTop$$ = this.$_container$.scrollTop, $oldScrollTop$$ = this.$_container$.getAttribute($AdfInputSearchScrollManager$$.$_SCROLL_TOP_EXPANDO$), $oldScrollTop$$ = $oldScrollTop$$ ? $oldScrollTop$$ : 0;
  this.$_container$.setAttribute($AdfInputSearchScrollManager$$.$_SCROLL_TOP_EXPANDO$, $deltaScroll_newScrollTop$$);
  var $topDisplayedElement_topDisplayedElementIndex$$;
  this.$_preventContainerScrollEvent$ && $deltaScroll_newScrollTop$$ == this.$_preventContainerScrollEvent$.$containerScrollTop$ && ($topDisplayedElement_topDisplayedElementIndex$$ = this.$_preventContainerScrollEvent$.$notionalTopDisplayedItemIndex$, this.$_preventContainerScrollEvent$ = null);
  if (null == $topDisplayedElement_topDisplayedElementIndex$$) {
    $topDisplayedElement_topDisplayedElementIndex$$ = this.$_dataBody$.querySelector("." + $AdfRichUIPeer$$.$SELECTED_STYLECLASS$);
    if (!$topDisplayedElement_topDisplayedElementIndex$$) {
      return;
    }
    $topDisplayedElement_topDisplayedElementIndex$$ = this.$_getDataIndexFromElem$($topDisplayedElement_topDisplayedElementIndex$$);
  }
  $AdfAssert$$.assert(null != $topDisplayedElement_topDisplayedElementIndex$$);
  $AdfLogger$$.$LOGGER$.fine("Scrolled into view of element with index ", $topDisplayedElement_topDisplayedElementIndex$$);
  $deltaScroll_newScrollTop$$ -= $oldScrollTop$$;
  100 > (0 < $deltaScroll_newScrollTop$$ ? this.$_getDataIndexFromElem$(this.$_getLastDisplayedItem$()) - $topDisplayedElement_topDisplayedElementIndex$$ : $topDisplayedElement_topDisplayedElementIndex$$ - this.$_getDataIndexFromElem$(this.$_getFirstDisplayedItem$())) && this.$_addMoreElements$($AdfSuggestionsPanel$$.$__SUGGESTIONS_RENDERING_CHUNK_SIZE$, 0 > $deltaScroll_newScrollTop$$);
  this.$_adjustScrollPos$($topDisplayedElement_topDisplayedElementIndex$$);
};
$JSCompiler_prototypeAlias$$.$_delayedCallback$ = function $$JSCompiler_prototypeAlias$$$$_delayedCallback$$($callback$$90$$, $param$$4$$) {
  var $page$$30$$ = $AdfPage$$.$PAGE$;
  this.$_isScrolling$ ? $page$$30$$.$rescheduleTimer$(this.$_isScrolling$, 150) : this.$_isScrolling$ = $page$$30$$.$scheduleTimer$(this, $callback$$90$$, $param$$4$$, 150, {isSynchronized:!0});
};
$JSCompiler_prototypeAlias$$.$_getDataIndexFromElem$ = function $$JSCompiler_prototypeAlias$$$$_getDataIndexFromElem$$($element$$149$$) {
  $AdfAssert$$.$assertDomElement$($element$$149$$);
  return parseInt($element$$149$$.id.substring(this.$_idPrefix$.length));
};
$JSCompiler_prototypeAlias$$.$_isHeaderOrSuggestItem$ = function $$JSCompiler_prototypeAlias$$$$_isHeaderOrSuggestItem$$($elem$$9_id$$233$$) {
  return ($elem$$9_id$$233$$ = $elem$$9_id$$233$$.getAttribute("id")) && 0 === $elem$$9_id$$233$$.indexOf(this.$_idPrefix$);
};
$JSCompiler_prototypeAlias$$.$_getFirstDisplayedItem$ = function $$JSCompiler_prototypeAlias$$$$_getFirstDisplayedItem$$() {
  for (var $firstChild$$3$$ = this.$_dataBody$.firstElementChild;!this.$_isHeaderOrSuggestItem$($firstChild$$3$$);) {
    $firstChild$$3$$ = $firstChild$$3$$.nextElementSibling;
  }
  return $firstChild$$3$$;
};
$JSCompiler_prototypeAlias$$.$_getLastDisplayedItem$ = function $$JSCompiler_prototypeAlias$$$$_getLastDisplayedItem$$() {
  for (var $lastChild$$ = this.$_dataBody$.lastElementChild;!this.$_isHeaderOrSuggestItem$($lastChild$$);) {
    $lastChild$$ = $lastChild$$.previousElementSibling;
  }
  return $lastChild$$;
};
$JSCompiler_prototypeAlias$$.$_getNotionalDataIndexFromScrollTop$ = function $$JSCompiler_prototypeAlias$$$$_getNotionalDataIndexFromScrollTop$$($scrollTop$$7$$) {
  var $dataIndex$$ = Math.round($scrollTop$$7$$ / this.$_getPerItemHeight$());
  if ($dataIndex$$ > this.$_collection$.$inclusiveHeaderLength$ || this.$_scroller$ && $scrollTop$$7$$ + this.$_scroller$.offsetHeight >= this.$_scroller$.scrollHeight) {
    $dataIndex$$ = this.$_collection$.$inclusiveHeaderLength$ - 1;
  }
  return $dataIndex$$;
};
$JSCompiler_prototypeAlias$$.$_getNotionalElemCountFromScrollChange$ = function $$JSCompiler_prototypeAlias$$$$_getNotionalElemCountFromScrollChange$$($deltaScroll$$1$$) {
  return Math.round($deltaScroll$$1$$ / this.$_getPerItemHeight$());
};
$JSCompiler_prototypeAlias$$.$_getElementFromDataIndex$ = function $$JSCompiler_prototypeAlias$$$$_getElementFromDataIndex$$($index$$107$$) {
  0 > $index$$107$$ ? $index$$107$$ = 0 : $index$$107$$ > this.$_collection$.$inclusiveHeaderLength$ && ($index$$107$$ = this.$_collection$.$inclusiveHeaderLength$ - 1);
  return document.getElementById(this.$_idPrefix$ + $index$$107$$);
};
$JSCompiler_prototypeAlias$$.$_getPerItemHeight$ = function $$JSCompiler_prototypeAlias$$$$_getPerItemHeight$$() {
  var $childCount$$1$$ = this.$_dataBody$.children.length, $childCount$$1$$ = 0 === this.$_headerHeight$ ? $childCount$$1$$ : $childCount$$1$$ - 1;
  return (this.$_dataBody$.offsetHeight - this.$_headerHeight$) / $childCount$$1$$;
};
$JSCompiler_prototypeAlias$$.$_getScrollerHeightInPx$ = function $$JSCompiler_prototypeAlias$$$$_getScrollerHeightInPx$$($perItemHeight$$1$$) {
  $perItemHeight$$1$$ = $perItemHeight$$1$$ ? $perItemHeight$$1$$ : this.$_getPerItemHeight$();
  return $perItemHeight$$1$$ * this.$_collection$.$inclusiveHeaderLength$ + this.$_headerHeight$ + "px";
};
$JSCompiler_prototypeAlias$$.$_infiniteScroll$ = function $$JSCompiler_prototypeAlias$$$$_infiniteScroll$$() {
  this.$_delayedCallback$(this.$_infiniteScrollComplete$);
};
$JSCompiler_prototypeAlias$$.$_infiniteScrollComplete$ = function $$JSCompiler_prototypeAlias$$$$_infiniteScrollComplete$$() {
  this.$_isScrolling$ = null;
  var $deltaScroll$$2_oldScrollTop$$1$$ = this.$_container$.getAttribute($AdfInputSearchScrollManager$$.$_SCROLL_TOP_EXPANDO$), $deltaScroll$$2_oldScrollTop$$1$$ = $deltaScroll$$2_oldScrollTop$$1$$ ? $deltaScroll$$2_oldScrollTop$$1$$ : 0, $newScrollTop$$1$$ = this.$_container$.scrollTop;
  this.$_container$.setAttribute($AdfInputSearchScrollManager$$.$_SCROLL_TOP_EXPANDO$, $newScrollTop$$1$$);
  $deltaScroll$$2_oldScrollTop$$1$$ = $newScrollTop$$1$$ - $deltaScroll$$2_oldScrollTop$$1$$;
  0 < $deltaScroll$$2_oldScrollTop$$1$$ && this.$_addMoreElements$(this.$_getNotionalElemCountFromScrollChange$($deltaScroll$$2_oldScrollTop$$1$$));
};
$JSCompiler_prototypeAlias$$.$_longJump$ = function $$JSCompiler_prototypeAlias$$$$_longJump$$() {
  this.$_isScrolling$ = null;
  this.$_scrollMessage$.style.display = "none";
  if (0 != this.$_dataBody$.offsetHeight) {
    var $element$$150_itemsFragment_scrollTop$$8$$ = this.$_scroller$.scrollTop, $newNotionalItemIndex$$ = this.$_getNotionalDataIndexFromScrollTop$($element$$150_itemsFragment_scrollTop$$8$$);
    $AdfLogger$$.$LOGGER$.fine("Long Jump, the item index is ", $newNotionalItemIndex$$, ", derived from the scroll top ", $element$$150_itemsFragment_scrollTop$$8$$);
    var $element$$150_itemsFragment_scrollTop$$8$$ = this.$_domFragmentGeneratorFunc$(this.$_collection$, this.$_options$, !0, $newNotionalItemIndex$$ - $AdfSuggestionsPanel$$.$__SUGGESTIONS_RENDERING_CHUNK_SIZE$ / 2), $newDataBody$$ = this.$_dataBody$.cloneNode(!1);
    $newDataBody$$.appendChild($element$$150_itemsFragment_scrollTop$$8$$);
    this.$_container$.replaceChild($newDataBody$$, this.$_dataBody$);
    this.$_dataBody$.removeEventListener("wheel", this.$_mouseWheelHandle$);
    this.$_dataBody$ = $newDataBody$$;
    this.$_dataBody$.addEventListener("wheel", this.$_mouseWheelHandle$);
    if ($element$$150_itemsFragment_scrollTop$$8$$ = this.$_getElementFromDataIndex$($newNotionalItemIndex$$)) {
      this.$_preventContainerScrollEvent$ = {}, this.$_preventContainerScrollEvent$.$notionalTopDisplayedItemIndex$ = $newNotionalItemIndex$$, this.scrollIntoView($element$$150_itemsFragment_scrollTop$$8$$, !0), this.$_preventContainerScrollEvent$.$containerScrollTop$ = this.$_container$.scrollTop;
    }
  }
};
$JSCompiler_prototypeAlias$$.$_mouseWheel$ = function $$JSCompiler_prototypeAlias$$$$_mouseWheel$$($event$$111$$) {
  $AdfAgent$$.$AGENT$.$eatEvent$($event$$111$$);
  $AdfLogger$$.$LOGGER$.fine("Mouse wheel triggered with deltaY ", $event$$111$$.deltaY);
  this.$_scroller$.scrollTop += $event$$111$$.deltaY;
};
$JSCompiler_prototypeAlias$$.$_panning$ = function $$JSCompiler_prototypeAlias$$$$_panning$$($event$$112$$) {
  this.$_scroller$.scrollTop += -1 * $event$$112$$.deltaY;
};
$JSCompiler_prototypeAlias$$.$_swipe$ = function $$JSCompiler_prototypeAlias$$$$_swipe$$($event$$113$$) {
  function $velocityScroll$$() {
    0 < $count$$14$$-- && $self$$55$$.$_scroller$ && ($self$$55$$.$_scroller$.scrollTop += $chunkedDelta$$, requestAnimationFrame($velocityScroll$$));
  }
  var $count$$14$$ = 20, $chunkedDelta$$ = -1 * $event$$113$$.deltaY * $event$$113$$.$velocity$ / $count$$14$$, $self$$55$$ = this;
  requestAnimationFrame($velocityScroll$$);
};
$JSCompiler_prototypeAlias$$.$_scroll$ = function $$JSCompiler_prototypeAlias$$$$_scroll$$() {
  var $newScrollTop$$2$$ = this.$_scroller$.scrollTop;
  if ($newScrollTop$$2$$ != this.$_preventScrollerScrollEvent$) {
    var $newNotionalItemIndex$$1$$ = this.$_getNotionalDataIndexFromScrollTop$($newScrollTop$$2$$), $topDisplayedElement$$1$$ = this.$_getElementFromDataIndex$($newNotionalItemIndex$$1$$);
    $topDisplayedElement$$1$$ ? ($AdfLogger$$.$LOGGER$.fine("Small scroll, the item index is ", $newNotionalItemIndex$$1$$, ", derived from the scroll top ", $newScrollTop$$2$$, ". The corresponding element is ", $topDisplayedElement$$1$$.id), this.$_preventContainerScrollEvent$ = {}, this.$_preventContainerScrollEvent$.$notionalTopDisplayedItemIndex$ = $newNotionalItemIndex$$1$$, this.scrollIntoView($topDisplayedElement$$1$$, !0), this.$_preventContainerScrollEvent$.$containerScrollTop$ = this.$_container$.scrollTop) : 
    (this.$_scrollMessage$.style.display = "block", this.$_delayedCallback$(this.$_longJump$));
  }
};
$JSCompiler_prototypeAlias$$.$_isDefaultScroller$ = function $$JSCompiler_prototypeAlias$$$$_isDefaultScroller$$() {
  return null == this.$_scroller$;
};
$JSCompiler_prototypeAlias$$.$_setupScroller$ = function $$JSCompiler_prototypeAlias$$$$_setupScroller$$() {
  if ($AdfAgent$$.$AGENT$.$isTouchFirstDevice$()) {
    this.$_infiniteScrollHandle$ = this.$createCallback$(this.$_infiniteScroll$), this.$_container$.addEventListener("scroll", this.$_infiniteScrollHandle$);
  } else {
    if (this.$_container$.clientHeight < this.$_dataBody$.offsetHeight && this.$_collection$.length > $AdfSuggestionsPanel$$.$__SUGGESTIONS_RENDERING_CHUNK_SIZE$) {
      this.$_container$.scrollTop = 0;
      var $callbacks_paddingEnd$$1_page$$31$$ = $AdfPage$$.$PAGE$, $containerStyle$$1_laf$$41_options$$30$$ = $callbacks_paddingEnd$$1_page$$31$$.$getLookAndFeel$();
      this.$_scroller$ = document.createElement("div");
      this.$_scroller$.setAttribute("id", $AdfRichUIPeer$$.$createSubId$(this.$_clientId$, $AdfInputSearchScrollManager$$.$_SCROLLER_SUB_ID$));
      $AdfDomUtils$$.$addCSSClassName$(this.$_scroller$, $containerStyle$$1_laf$$41_options$$30$$.getStyleClass($AdfInputSearchScrollManager$$.$_SUGGESTIONS_SCROLLER_STYLE_CLASS$));
      var $fakeContent$$ = document.createElement("div");
      $AdfDomUtils$$.$addInlineStyle$($fakeContent$$, "visibility: hidden");
      $fakeContent$$.style.height = this.$_getScrollerHeightInPx$();
      this.$_scrollMessage$ = document.createElement("div");
      $AdfDomUtils$$.$addCSSClassName$(this.$_scrollMessage$, $containerStyle$$1_laf$$41_options$$30$$.getStyleClass($AdfInputSearchScrollManager$$.$_SUGGESTIONS_STATUS_MESSAGE_STYLE_CLASS$));
      this.$_scrollMessage$.textContent = $containerStyle$$1_laf$$41_options$$30$$.$getTranslatedString$($AdfInputSearchScrollManager$$.$_LABEL_FETCHING$);
      this.$_scroller$.appendChild($fakeContent$$);
      this.$_container$.appendChild(this.$_scroller$);
      this.$_container$.appendChild(this.$_scrollMessage$);
      $callbacks_paddingEnd$$1_page$$31$$ = $callbacks_paddingEnd$$1_page$$31$$.$getLocaleContext$().$isRightToLeft$() ? "padding-left" : "padding-right";
      $containerStyle$$1_laf$$41_options$$30$$ = this.$_container$.style;
      $containerStyle$$1_laf$$41_options$$30$$.setProperty($callbacks_paddingEnd$$1_page$$31$$, this.$_scroller$.offsetWidth - this.$_scroller$.clientWidth + "px");
      $containerStyle$$1_laf$$41_options$$30$$.setProperty("overflow", "hidden");
      this.$_arrowKeyNavigationHandle$ = this.$createCallback$(this.$_arrowKeyNavigation$);
      this.$_mouseWheelHandle$ = this.$createCallback$(this.$_mouseWheel$);
      this.$_scrollHandle$ = this.$createCallback$(this.$_scroll$);
      this.$_container$.addEventListener("scroll", this.$_arrowKeyNavigationHandle$);
      this.$_dataBody$.addEventListener("wheel", this.$_mouseWheelHandle$);
      this.$_scroller$.addEventListener("scroll", this.$_scrollHandle$);
      $callbacks_paddingEnd$$1_page$$31$$ = {};
      $callbacks_paddingEnd$$1_page$$31$$[$AdfSwipeSupport$$.$PANNING_CALLBACK$] = this.$createCallback$(this.$_panning$);
      $callbacks_paddingEnd$$1_page$$31$$[$AdfSwipeSupport$$.$SWIPE_CALLBACK$] = this.$createCallback$(this.$_swipe$);
      $containerStyle$$1_laf$$41_options$$30$$ = {};
      $containerStyle$$1_laf$$41_options$$30$$[$AdfSwipeSupport$$.MODE] = $AdfSwipeSupport$$.$MODE_VERTICAL$;
      this.$_swipeMgr$ = new $AdfSwipeSupport$$(this.$_container$, $callbacks_paddingEnd$$1_page$$31$$, $containerStyle$$1_laf$$41_options$$30$$);
    }
  }
};
