{
  "version": 3,
  "sources": [
    "Areas/ScoreCCF/js/Vendor/jquery.js",
    "Areas/ScoreCCF/js/jquery.noconflict.js",
    "Areas/ScoreCCF/js/Vendor/jquery.touchSwipe.js",
    "Areas/ScoreCCF/js/Vendor/underscore.js",
    "Areas/ScoreCCF/js/Events/EventManager.js",
    "Areas/ScoreCCF/js/Events/ModulesLoadedEvent.js",
    "Areas/ScoreCCF/js/extensions.js",
    "Areas/ScoreCCF/js/jquery.extensions.js",
    "Areas/ScoreCCF/js/ModuleLoader.js",
    "Areas/ScoreCCF/js/Vendor/jquery.migrate.js",
    "Areas/ScoreCCF/js/polyfills/promise.min.js",
    "Areas/ScoreCCF/js/polyfills/object-assign.min.js",
    "Areas/ScoreCCF/js/XPerience/XPElementBase.js",
    "Areas/ScoreCCF/js/XPerience/XPActionBase.js",
    "Areas/ScoreCCF/js/XPerience/Actions/CompleteGoalAction.js",
    "Areas/ScoreCCF/js/XPerience/Actions/ContactVisitWithTheProfileCard.js",
    "Areas/ScoreCCF/js/Utils/global.js",
    "Areas/ScoreCCF/js/XPerience/Actions/ShowAlertMessage.js",
    "Areas/ScoreCCF/js/XPerience/Actions/TrackClientEventAction.js",
    "Areas/ScoreCCF/js/XPerience/XPConditionBase.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/ClickedCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/GetsFocusCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/LosesFocusCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/OncePerPageViewCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/SlideChangedCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/SlideChangingCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/VideoHasPlayedExactNSecondsCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/VideoHasPlayedNSecondsOrMoreCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/VideoIsFinishedCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/VideoIsPausedCondition.js",
    "Areas/ScoreCCF/js/XPerience/Conditions/VideoStartsToPlayCondition.js",
    "Areas/ScoreCCF/js/XPerience/Contracts/UXModuleLike.js",
    "Areas/ScoreCCF/js/XPerience/Contracts/XPContracts.js",
    "Areas/ScoreCCF/js/XPerience/Elements.js",
    "Areas/ScoreCCF/js/XPerience/Enums/XPEnums.js",
    "Areas/ScoreCCF/js/Xperience/Enums/XPEnums.js",
    "Areas/ScoreCCF/js/XPerience/Utils/XPConditionJunction.js",
    "Areas/ScoreCCF/js/XPerience/XPActionLoader.js",
    "Areas/ScoreCCF/js/XPerience/XPConditionLoader.js",
    "Areas/ScoreCCF/js/XPerience/XPRuleLoader.js",
    "Areas/ScoreCCF/js/Vendor/require.async.js",
    "Areas/ScoreCCF/js/Vendor/require.depend.js",
    "Areas/ScoreCCF/js/Vendor/require.propertyParser.js",
    "Areas/ScoreCCF/js/Vendor/require.font.js",
    "Areas/ScoreCCF/js/Vendor/require.goog.js",
    "Areas/ScoreCCF/js/Vendor/require.image.js",
    "Areas/ScoreCCF/js/Vendor/require.text.js",
    "Areas/ScoreCCF/js/Vendor/require.json.js",
    "Areas/ScoreCCF/js/Vendor/Markdown.Converter.js",
    "Areas/ScoreCCF/js/Vendor/require.mdown.js",
    "Areas/ScoreCCF/js/Vendor/require.noext.js",
    "Areas/ScoreBootstrapUI/js/Vendor/bootstrap.min.js",
    "Areas/ScoreBootstrapUI/js/BootstrapUI.amdfix.js",
    "Areas/ScoreBootstrapUI/js/BootstrapUI.js",
    "Areas/ScoreBootstrapUI/js/Utils/ErrorHandler.js",
    "Areas/ScoreBootstrapUI/js/Vendor/jquery.validate.1.12.0.min.js",
    "Areas/ScoreBootstrapUI/js/Vendor/jquery.validate.unobtrusive.min.js",
    "Areas/ScoreBootstrapUI/js/Vendor/jquery.unobtrusive-ajax.min.js",
    "Areas/ScoreBootstrapUI/js/score.jquery.validate.unobtrusive.js",
    "Areas/ScoreBootstrapUI/js/Vendor/jquery.matchHeight-min.js",
    "Areas/ScoreBootstrapUI/js/Vendor/knockout.min.js",
    "Areas/ScoreBootstrapUI/js/knockout.extended.js",
    "Areas/ScoreBootstrapUI/js/Vendor/jquery.imagesLoaded.min.js",
    "Areas/ScoreBootstrapUI/js/Vendor/typeahead.jquery.js",
    "Areas/ScoreBootstrapUI/js/vendor/picturefill.min.js",
    "Areas/ScoreBootstrapUI/js/vendor/bootstrap-slider.min.js",
    "Areas/ScoreBootstrapUI/js/Vendor/css.escape.js",
    "Areas/EcolabSite/js/Vendor/slick.js",
    "Areas/EcolabSite/js/Vendor/TweenLite.min.js",
    "Areas/EcolabSite/js/Vendor/jquery.countTo.js",
    "Areas/EcolabSite/js/StatBlocks.js",
    "Areas/EcolabSite/js/Site.js",
    "Areas/EcolabSite/js/Vendor/jquery.isVisible.js",
    "Areas/EcolabSite/js/Vendor/jquery.dataTables.min.js",
    "Areas/EcolabSite/js/Vendor/dataTables.responsive.min.js",
    "Areas/EcolabSite/js/Vendor/jquery.ellipsis.min.js",
    "Areas/EcolabSite/js/CoveoJsSearch.min.js",
    "Areas/EcolabSite/js/MobileMegaMenu.js",
    "Areas/EcolabSite/js/Vendor/lazyframe.js",
    "Areas/EcolabSite/js/WebAccessibility/Accessibility.js",
    "Areas/EcolabSite/js/Components/StandaloneSearch.js",
    "Areas/EcolabSite/js/Components/IndustrySection.js",
    "Areas/EcolabSite/js/CoveoHelper.js",
    "Areas/EcolabSite/js/Components/Hive/SliderHive.js",
    "Areas/EcolabSite/js/Components/Hive/EventSliderHive.js",
    "Areas/EcolabSite/js/Components/Hive/CatalogSearchHive.js",
    "Areas/EcolabSite/js/Components/Hive/ListerHive.js",
    "Areas/EcolabSite/js/Components/Hive/EventListerHive.js",
    "Areas/EcolabSite/js/Components/Hive/ArticleListerHive.js",
    "Areas/EcolabSite/js/Components/Carousel.js",
    "Areas/EcolabSite/js/Components/Hive/MainSearchHive.js",
    "Areas/EcolabSite/js/Components/Panels/CookieDisclaimerModal.js",
    "Areas/EcolabSite/js/Components/Panels/CookieDisclaimerAlert.js",
    "Areas/EcolabSite/js/Components/Panels/SurvicateWidget.js",
    "Areas/EcolabSite/js/Components/Panels/AsyncContactUs.js",
    "Areas/ScoreBootstrapUI/js/Components/Accordion.js",
    "Areas/ScoreBootstrapUI/js/Components/AccordionPanel.js",
    "Areas/ScoreBootstrapUI/js/Components/BackToTop.js",
    "Areas/ScoreBootstrapUI/js/Components/BasicMenuItem.js",
    "Areas/ScoreBootstrapUI/js/Components/BrightcoveVideo.js",
    "Areas/ScoreBootstrapUI/js/Components/Button.js",
    "Areas/ScoreBootstrapUI/js/Components/ButtonMenuItem.js",
    "Areas/ScoreBootstrapUI/js/Components/Carousel.js",
    "Areas/ScoreBootstrapUI/js/Components/CarouselPane.js",
    "Areas/ScoreBootstrapUI/js/Utils/window.js",
    "Areas/ScoreBootstrapUI/js/Base/PictureAsBackground.js",
    "Areas/ScoreBootstrapUI/js/Components/CarouselPicturePane.js",
    "Areas/ScoreBootstrapUI/js/Models/Comments/CommentsRequest.js",
    "Areas/ScoreBootstrapUI/js/Models/Comments/PostCommentModel.js",
    "Areas/ScoreBootstrapUI/js/Models/Comments/CommentsClient.js",
    "Areas/ScoreBootstrapUI/js/Models/Comments/CommentsResult.js",
    "Areas/ScoreBootstrapUI/js/Models/Comments/CommentModel.js",
    "Areas/ScoreBootstrapUI/js/Utils/Enums.js",
    "Areas/ScoreBootstrapUI/js/Components/Comments.js",
    "Areas/ScoreBootstrapUI/js/Events/SearchRequestChangeEvent.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/ActiveFacets.js",
    "Areas/ScoreBootstrapUI/js/Utils/UrlHelper.js",
    "Areas/ScoreBootstrapUI/js/Models/SitecoreId.js",
    "Areas/ScoreBootstrapUI/js/Models/Search/IndexableItemBase.js",
    "Areas/ScoreBootstrapUI/js/Events/SearchResponseEvent.js",
    "Areas/ScoreBootstrapUI/js/Models/Search/FacetPanel.js",
    "Areas/ScoreBootstrapUI/js/Models/Search/FacetRangePanel.js",
    "Areas/ScoreBootstrapUI/js/Models/Search/FacetRatingsPanel.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/FacetContainer.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/SearchResultsBase.js",
    "Areas/ScoreBootstrapUI/js/Models/Tile.js",
    "Areas/ScoreBootstrapUI/js/Models/Search/SearchRequest.js",
    "Areas/ScoreBootstrapUI/js/Events/MultiViewSearchResultsEvent.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/MultiViewSearchResults.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/QuickView.js",
    "Areas/ScoreBootstrapUI/js/Models/Search/SimpleSearchClient.js",
    "Areas/ScoreBootstrapUI/js/Models/Search/SuggestionSection.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/SearchBox.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/SearchClient.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/SearchQueryMessage.js",
    "Areas/ScoreBootstrapUI/js/Models/Search/PromoTile.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/SearchResults.js",
    "Areas/ScoreBootstrapUI/js/Components/ContentSearch/SearchResultsView.js",
    "Areas/ScoreBootstrapUI/js/Components/GoogleMap.js",
    "Areas/ScoreBootstrapUI/js/Components/IFrame.js",
    "Areas/ScoreBootstrapUI/js/Components/KalturaVideo.js",
    "Areas/ScoreBootstrapUI/js/Components/MegaMenuButtonMenu.js",
    "Areas/ScoreBootstrapUI/js/Components/MegaMenuItem.js",
    "Areas/ScoreBootstrapUI/js/Components/MenuListImageLink.js",
    "Areas/ScoreBootstrapUI/js/Components/MenuListItem.js",
    "Areas/ScoreBootstrapUI/js/Components/Modal.js",
    "Areas/ScoreBootstrapUI/js/Models/Liking/PageLikingModel.js",
    "Areas/ScoreBootstrapUI/js/Components/PageLike.js",
    "Areas/ScoreBootstrapUI/js/Components/Panel.js",
    "Areas/ScoreBootstrapUI/js/Components/Picture.js",
    "Areas/ScoreBootstrapUI/js/Components/PictureHero.js",
    "Areas/ScoreBootstrapUI/js/Components/PictureHighlight.js",
    "Areas/ScoreBootstrapUI/js/Components/PictureStripe.js",
    "Areas/ScoreBootstrapUI/js/Components/PictureStyleBox.js",
    "Areas/ScoreBootstrapUI/js/Components/SlickSlider.js",
    "Areas/ScoreBootstrapUI/js/Components/SplitButtnMenu.js",
    "Areas/ScoreBootstrapUI/js/Components/StyleBox.js",
    "Areas/ScoreBootstrapUI/js/Components/TabPanel.js",
    "Areas/ScoreBootstrapUI/js/Components/TabSet.js",
    "Areas/ScoreBootstrapUI/js/Components/VimeoVideo.js"
  ],
  "names": [],
  "mappings": "AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACznVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACr7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACl/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC9DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACrHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACriBA;AACA;AACA,ACFA;AACA;AACA,ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AChIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACrHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACzZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACzEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACz0CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AClLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACbA;AACA;AACA;AACA;AACA,ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACnHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACrgDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpCA;AACA;AACA;AACA;AACA;AACA,ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACn9FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AClEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACvKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC7OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC7YA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACr9DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AChMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACnLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACxMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC1IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACxKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACzJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AClLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AChHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC5HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACjJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AChGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACnFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACnFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACzEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACneA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC9EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACjTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACxKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC9LA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC9GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC5FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACjGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACxJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC1TA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACxTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACjHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACnNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACrGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACrGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC/NA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACvEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACvFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACjFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,AChGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ACzFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",
  "file": "EcolabSite.bundle.js",
  "sourcesContent": [
    "/*!\r\n * jQuery JavaScript Library v3.5.1\r\n * https://jquery.com/\r\n *\r\n * Includes Sizzle.js\r\n * https://sizzlejs.com/\r\n *\r\n * Copyright JS Foundation and other contributors\r\n * Released under the MIT license\r\n * https://jquery.org/license\r\n *\r\n * Date: 2020-05-04T22:49Z\r\n */\r\n( function( global, factory ) {\r\n\r\n\t\"use strict\";\r\n\r\n\tif ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\r\n\r\n\t\t// For CommonJS and CommonJS-like environments where a proper `window`\r\n\t\t// is present, execute the factory and get jQuery.\r\n\t\t// For environments that do not have a `window` with a `document`\r\n\t\t// (such as Node.js), expose a factory as module.exports.\r\n\t\t// This accentuates the need for the creation of a real `window`.\r\n\t\t// e.g. var jQuery = require(\"jquery\")(window);\r\n\t\t// See ticket #14549 for more info.\r\n\t\tmodule.exports = global.document ?\r\n\t\t\tfactory( global, true ) :\r\n\t\t\tfunction( w ) {\r\n\t\t\t\tif ( !w.document ) {\r\n\t\t\t\t\tthrow new Error( \"jQuery requires a window with a document\" );\r\n\t\t\t\t}\r\n\t\t\t\treturn factory( w );\r\n\t\t\t};\r\n\t} else {\r\n\t\tfactory( global );\r\n\t}\r\n\r\n// Pass this if window is not defined yet\r\n} )( typeof window !== \"undefined\" ? window : this, function( window, noGlobal ) {\r\n\r\n// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1\r\n// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode\r\n// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common\r\n// enough that all such attempts are guarded in a try block.\r\n\"use strict\";\r\n\r\nvar arr = [];\r\n\r\nvar getProto = Object.getPrototypeOf;\r\n\r\nvar slice = arr.slice;\r\n\r\nvar flat = arr.flat ? function( array ) {\r\n\treturn arr.flat.call( array );\r\n} : function( array ) {\r\n\treturn arr.concat.apply( [], array );\r\n};\r\n\r\n\r\nvar push = arr.push;\r\n\r\nvar indexOf = arr.indexOf;\r\n\r\nvar class2type = {};\r\n\r\nvar toString = class2type.toString;\r\n\r\nvar hasOwn = class2type.hasOwnProperty;\r\n\r\nvar fnToString = hasOwn.toString;\r\n\r\nvar ObjectFunctionString = fnToString.call( Object );\r\n\r\nvar support = {};\r\n\r\nvar isFunction = function isFunction( obj ) {\r\n\r\n      // Support: Chrome <=57, Firefox <=52\r\n      // In some browsers, typeof returns \"function\" for HTML <object> elements\r\n      // (i.e., `typeof document.createElement( \"object\" ) === \"function\"`).\r\n      // We don't want to classify *any* DOM node as a function.\r\n      return typeof obj === \"function\" && typeof obj.nodeType !== \"number\";\r\n  };\r\n\r\n\r\nvar isWindow = function isWindow( obj ) {\r\n\t\treturn obj != null && obj === obj.window;\r\n\t};\r\n\r\n\r\nvar document = window.document;\r\n\r\n\r\n\r\n\tvar preservedScriptAttributes = {\r\n\t\ttype: true,\r\n\t\tsrc: true,\r\n\t\tnonce: true,\r\n\t\tnoModule: true\r\n\t};\r\n\r\n\tfunction DOMEval( code, node, doc ) {\r\n\t\tdoc = doc || document;\r\n\r\n\t\tvar i, val,\r\n\t\t\tscript = doc.createElement( \"script\" );\r\n\r\n\t\tscript.text = code;\r\n\t\tif ( node ) {\r\n\t\t\tfor ( i in preservedScriptAttributes ) {\r\n\r\n\t\t\t\t// Support: Firefox 64+, Edge 18+\r\n\t\t\t\t// Some browsers don't support the \"nonce\" property on scripts.\r\n\t\t\t\t// On the other hand, just using `getAttribute` is not enough as\r\n\t\t\t\t// the `nonce` attribute is reset to an empty string whenever it\r\n\t\t\t\t// becomes browsing-context connected.\r\n\t\t\t\t// See https://github.com/whatwg/html/issues/2369\r\n\t\t\t\t// See https://html.spec.whatwg.org/#nonce-attributes\r\n\t\t\t\t// The `node.getAttribute` check was added for the sake of\r\n\t\t\t\t// `jQuery.globalEval` so that it can fake a nonce-containing node\r\n\t\t\t\t// via an object.\r\n\t\t\t\tval = node[ i ] || node.getAttribute && node.getAttribute( i );\r\n\t\t\t\tif ( val ) {\r\n\t\t\t\t\tscript.setAttribute( i, val );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\tdoc.head.appendChild( script ).parentNode.removeChild( script );\r\n\t}\r\n\r\n\r\nfunction toType( obj ) {\r\n\tif ( obj == null ) {\r\n\t\treturn obj + \"\";\r\n\t}\r\n\r\n\t// Support: Android <=2.3 only (functionish RegExp)\r\n\treturn typeof obj === \"object\" || typeof obj === \"function\" ?\r\n\t\tclass2type[ toString.call( obj ) ] || \"object\" :\r\n\t\ttypeof obj;\r\n}\r\n/* global Symbol */\r\n// Defining this global in .eslintrc.json would create a danger of using the global\r\n// unguarded in another place, it seems safer to define global only for this module\r\n\r\n\r\n\r\nvar\r\n\tversion = \"3.5.1\",\r\n\r\n\t// Define a local copy of jQuery\r\n\tjQuery = function( selector, context ) {\r\n\r\n\t\t// The jQuery object is actually just the init constructor 'enhanced'\r\n\t\t// Need init if jQuery is called (just allow error to be thrown if not included)\r\n\t\treturn new jQuery.fn.init( selector, context );\r\n\t};\r\n\r\njQuery.fn = jQuery.prototype = {\r\n\r\n\t// The current version of jQuery being used\r\n\tjquery: version,\r\n\r\n\tconstructor: jQuery,\r\n\r\n\t// The default length of a jQuery object is 0\r\n\tlength: 0,\r\n\r\n\ttoArray: function() {\r\n\t\treturn slice.call( this );\r\n\t},\r\n\r\n\t// Get the Nth element in the matched element set OR\r\n\t// Get the whole matched element set as a clean array\r\n\tget: function( num ) {\r\n\r\n\t\t// Return all the elements in a clean array\r\n\t\tif ( num == null ) {\r\n\t\t\treturn slice.call( this );\r\n\t\t}\r\n\r\n\t\t// Return just the one element from the set\r\n\t\treturn num < 0 ? this[ num + this.length ] : this[ num ];\r\n\t},\r\n\r\n\t// Take an array of elements and push it onto the stack\r\n\t// (returning the new matched element set)\r\n\tpushStack: function( elems ) {\r\n\r\n\t\t// Build a new jQuery matched element set\r\n\t\tvar ret = jQuery.merge( this.constructor(), elems );\r\n\r\n\t\t// Add the old object onto the stack (as a reference)\r\n\t\tret.prevObject = this;\r\n\r\n\t\t// Return the newly-formed element set\r\n\t\treturn ret;\r\n\t},\r\n\r\n\t// Execute a callback for every element in the matched set.\r\n\teach: function( callback ) {\r\n\t\treturn jQuery.each( this, callback );\r\n\t},\r\n\r\n\tmap: function( callback ) {\r\n\t\treturn this.pushStack( jQuery.map( this, function( elem, i ) {\r\n\t\t\treturn callback.call( elem, i, elem );\r\n\t\t} ) );\r\n\t},\r\n\r\n\tslice: function() {\r\n\t\treturn this.pushStack( slice.apply( this, arguments ) );\r\n\t},\r\n\r\n\tfirst: function() {\r\n\t\treturn this.eq( 0 );\r\n\t},\r\n\r\n\tlast: function() {\r\n\t\treturn this.eq( -1 );\r\n\t},\r\n\r\n\teven: function() {\r\n\t\treturn this.pushStack( jQuery.grep( this, function( _elem, i ) {\r\n\t\t\treturn ( i + 1 ) % 2;\r\n\t\t} ) );\r\n\t},\r\n\r\n\todd: function() {\r\n\t\treturn this.pushStack( jQuery.grep( this, function( _elem, i ) {\r\n\t\t\treturn i % 2;\r\n\t\t} ) );\r\n\t},\r\n\r\n\teq: function( i ) {\r\n\t\tvar len = this.length,\r\n\t\t\tj = +i + ( i < 0 ? len : 0 );\r\n\t\treturn this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );\r\n\t},\r\n\r\n\tend: function() {\r\n\t\treturn this.prevObject || this.constructor();\r\n\t},\r\n\r\n\t// For internal use only.\r\n\t// Behaves like an Array's method, not like a jQuery method.\r\n\tpush: push,\r\n\tsort: arr.sort,\r\n\tsplice: arr.splice\r\n};\r\n\r\njQuery.extend = jQuery.fn.extend = function() {\r\n\tvar options, name, src, copy, copyIsArray, clone,\r\n\t\ttarget = arguments[ 0 ] || {},\r\n\t\ti = 1,\r\n\t\tlength = arguments.length,\r\n\t\tdeep = false;\r\n\r\n\t// Handle a deep copy situation\r\n\tif ( typeof target === \"boolean\" ) {\r\n\t\tdeep = target;\r\n\r\n\t\t// Skip the boolean and the target\r\n\t\ttarget = arguments[ i ] || {};\r\n\t\ti++;\r\n\t}\r\n\r\n\t// Handle case when target is a string or something (possible in deep copy)\r\n\tif ( typeof target !== \"object\" && !isFunction( target ) ) {\r\n\t\ttarget = {};\r\n\t}\r\n\r\n\t// Extend jQuery itself if only one argument is passed\r\n\tif ( i === length ) {\r\n\t\ttarget = this;\r\n\t\ti--;\r\n\t}\r\n\r\n\tfor ( ; i < length; i++ ) {\r\n\r\n\t\t// Only deal with non-null/undefined values\r\n\t\tif ( ( options = arguments[ i ] ) != null ) {\r\n\r\n\t\t\t// Extend the base object\r\n\t\t\tfor ( name in options ) {\r\n\t\t\t\tcopy = options[ name ];\r\n\r\n\t\t\t\t// Prevent Object.prototype pollution\r\n\t\t\t\t// Prevent never-ending loop\r\n\t\t\t\tif ( name === \"__proto__\" || target === copy ) {\r\n\t\t\t\t\tcontinue;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Recurse if we're merging plain objects or arrays\r\n\t\t\t\tif ( deep && copy && ( jQuery.isPlainObject( copy ) ||\r\n\t\t\t\t\t( copyIsArray = Array.isArray( copy ) ) ) ) {\r\n\t\t\t\t\tsrc = target[ name ];\r\n\r\n\t\t\t\t\t// Ensure proper type for the source value\r\n\t\t\t\t\tif ( copyIsArray && !Array.isArray( src ) ) {\r\n\t\t\t\t\t\tclone = [];\r\n\t\t\t\t\t} else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) {\r\n\t\t\t\t\t\tclone = {};\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tclone = src;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcopyIsArray = false;\r\n\r\n\t\t\t\t\t// Never move original objects, clone them\r\n\t\t\t\t\ttarget[ name ] = jQuery.extend( deep, clone, copy );\r\n\r\n\t\t\t\t// Don't bring in undefined values\r\n\t\t\t\t} else if ( copy !== undefined ) {\r\n\t\t\t\t\ttarget[ name ] = copy;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// Return the modified object\r\n\treturn target;\r\n};\r\n\r\njQuery.extend( {\r\n\r\n\t// Unique for each copy of jQuery on the page\r\n\texpando: \"jQuery\" + ( version + Math.random() ).replace( /\\D/g, \"\" ),\r\n\r\n\t// Assume jQuery is ready without the ready module\r\n\tisReady: true,\r\n\r\n\terror: function( msg ) {\r\n\t\tthrow new Error( msg );\r\n\t},\r\n\r\n\tnoop: function() {},\r\n\r\n\tisPlainObject: function( obj ) {\r\n\t\tvar proto, Ctor;\r\n\r\n\t\t// Detect obvious negatives\r\n\t\t// Use toString instead of jQuery.type to catch host objects\r\n\t\tif ( !obj || toString.call( obj ) !== \"[object Object]\" ) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tproto = getProto( obj );\r\n\r\n\t\t// Objects with no prototype (e.g., `Object.create( null )`) are plain\r\n\t\tif ( !proto ) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\t// Objects with prototype are plain iff they were constructed by a global Object function\r\n\t\tCtor = hasOwn.call( proto, \"constructor\" ) && proto.constructor;\r\n\t\treturn typeof Ctor === \"function\" && fnToString.call( Ctor ) === ObjectFunctionString;\r\n\t},\r\n\r\n\tisEmptyObject: function( obj ) {\r\n\t\tvar name;\r\n\r\n\t\tfor ( name in obj ) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n\r\n\t// Evaluates a script in a provided context; falls back to the global one\r\n\t// if not specified.\r\n\tglobalEval: function( code, options, doc ) {\r\n\t\tDOMEval( code, { nonce: options && options.nonce }, doc );\r\n\t},\r\n\r\n\teach: function( obj, callback ) {\r\n\t\tvar length, i = 0;\r\n\r\n\t\tif ( isArrayLike( obj ) ) {\r\n\t\t\tlength = obj.length;\r\n\t\t\tfor ( ; i < length; i++ ) {\r\n\t\t\t\tif ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tfor ( i in obj ) {\r\n\t\t\t\tif ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn obj;\r\n\t},\r\n\r\n\t// results is for internal usage only\r\n\tmakeArray: function( arr, results ) {\r\n\t\tvar ret = results || [];\r\n\r\n\t\tif ( arr != null ) {\r\n\t\t\tif ( isArrayLike( Object( arr ) ) ) {\r\n\t\t\t\tjQuery.merge( ret,\r\n\t\t\t\t\ttypeof arr === \"string\" ?\r\n\t\t\t\t\t[ arr ] : arr\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\tpush.call( ret, arr );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn ret;\r\n\t},\r\n\r\n\tinArray: function( elem, arr, i ) {\r\n\t\treturn arr == null ? -1 : indexOf.call( arr, elem, i );\r\n\t},\r\n\r\n\t// Support: Android <=4.0 only, PhantomJS 1 only\r\n\t// push.apply(_, arraylike) throws on ancient WebKit\r\n\tmerge: function( first, second ) {\r\n\t\tvar len = +second.length,\r\n\t\t\tj = 0,\r\n\t\t\ti = first.length;\r\n\r\n\t\tfor ( ; j < len; j++ ) {\r\n\t\t\tfirst[ i++ ] = second[ j ];\r\n\t\t}\r\n\r\n\t\tfirst.length = i;\r\n\r\n\t\treturn first;\r\n\t},\r\n\r\n\tgrep: function( elems, callback, invert ) {\r\n\t\tvar callbackInverse,\r\n\t\t\tmatches = [],\r\n\t\t\ti = 0,\r\n\t\t\tlength = elems.length,\r\n\t\t\tcallbackExpect = !invert;\r\n\r\n\t\t// Go through the array, only saving the items\r\n\t\t// that pass the validator function\r\n\t\tfor ( ; i < length; i++ ) {\r\n\t\t\tcallbackInverse = !callback( elems[ i ], i );\r\n\t\t\tif ( callbackInverse !== callbackExpect ) {\r\n\t\t\t\tmatches.push( elems[ i ] );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn matches;\r\n\t},\r\n\r\n\t// arg is for internal usage only\r\n\tmap: function( elems, callback, arg ) {\r\n\t\tvar length, value,\r\n\t\t\ti = 0,\r\n\t\t\tret = [];\r\n\r\n\t\t// Go through the array, translating each of the items to their new values\r\n\t\tif ( isArrayLike( elems ) ) {\r\n\t\t\tlength = elems.length;\r\n\t\t\tfor ( ; i < length; i++ ) {\r\n\t\t\t\tvalue = callback( elems[ i ], i, arg );\r\n\r\n\t\t\t\tif ( value != null ) {\r\n\t\t\t\t\tret.push( value );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t// Go through every key on the object,\r\n\t\t} else {\r\n\t\t\tfor ( i in elems ) {\r\n\t\t\t\tvalue = callback( elems[ i ], i, arg );\r\n\r\n\t\t\t\tif ( value != null ) {\r\n\t\t\t\t\tret.push( value );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Flatten any nested arrays\r\n\t\treturn flat( ret );\r\n\t},\r\n\r\n\t// A global GUID counter for objects\r\n\tguid: 1,\r\n\r\n\t// jQuery.support is not used in Core but other projects attach their\r\n\t// properties to it so it needs to exist.\r\n\tsupport: support\r\n} );\r\n\r\nif ( typeof Symbol === \"function\" ) {\r\n\tjQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];\r\n}\r\n\r\n// Populate the class2type map\r\njQuery.each( \"Boolean Number String Function Array Date RegExp Object Error Symbol\".split( \" \" ),\r\nfunction( _i, name ) {\r\n\tclass2type[ \"[object \" + name + \"]\" ] = name.toLowerCase();\r\n} );\r\n\r\nfunction isArrayLike( obj ) {\r\n\r\n\t// Support: real iOS 8.2 only (not reproducible in simulator)\r\n\t// `in` check used to prevent JIT error (gh-2145)\r\n\t// hasOwn isn't used here due to false negatives\r\n\t// regarding Nodelist length in IE\r\n\tvar length = !!obj && \"length\" in obj && obj.length,\r\n\t\ttype = toType( obj );\r\n\r\n\tif ( isFunction( obj ) || isWindow( obj ) ) {\r\n\t\treturn false;\r\n\t}\r\n\r\n\treturn type === \"array\" || length === 0 ||\r\n\t\ttypeof length === \"number\" && length > 0 && ( length - 1 ) in obj;\r\n}\r\nvar Sizzle =\r\n/*!\r\n * Sizzle CSS Selector Engine v2.3.5\r\n * https://sizzlejs.com/\r\n *\r\n * Copyright JS Foundation and other contributors\r\n * Released under the MIT license\r\n * https://js.foundation/\r\n *\r\n * Date: 2020-03-14\r\n */\r\n( function( window ) {\r\nvar i,\r\n\tsupport,\r\n\tExpr,\r\n\tgetText,\r\n\tisXML,\r\n\ttokenize,\r\n\tcompile,\r\n\tselect,\r\n\toutermostContext,\r\n\tsortInput,\r\n\thasDuplicate,\r\n\r\n\t// Local document vars\r\n\tsetDocument,\r\n\tdocument,\r\n\tdocElem,\r\n\tdocumentIsHTML,\r\n\trbuggyQSA,\r\n\trbuggyMatches,\r\n\tmatches,\r\n\tcontains,\r\n\r\n\t// Instance-specific data\r\n\texpando = \"sizzle\" + 1 * new Date(),\r\n\tpreferredDoc = window.document,\r\n\tdirruns = 0,\r\n\tdone = 0,\r\n\tclassCache = createCache(),\r\n\ttokenCache = createCache(),\r\n\tcompilerCache = createCache(),\r\n\tnonnativeSelectorCache = createCache(),\r\n\tsortOrder = function( a, b ) {\r\n\t\tif ( a === b ) {\r\n\t\t\thasDuplicate = true;\r\n\t\t}\r\n\t\treturn 0;\r\n\t},\r\n\r\n\t// Instance methods\r\n\thasOwn = ( {} ).hasOwnProperty,\r\n\tarr = [],\r\n\tpop = arr.pop,\r\n\tpushNative = arr.push,\r\n\tpush = arr.push,\r\n\tslice = arr.slice,\r\n\r\n\t// Use a stripped-down indexOf as it's faster than native\r\n\t// https://jsperf.com/thor-indexof-vs-for/5\r\n\tindexOf = function( list, elem ) {\r\n\t\tvar i = 0,\r\n\t\t\tlen = list.length;\r\n\t\tfor ( ; i < len; i++ ) {\r\n\t\t\tif ( list[ i ] === elem ) {\r\n\t\t\t\treturn i;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn -1;\r\n\t},\r\n\r\n\tbooleans = \"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|\" +\r\n\t\t\"ismap|loop|multiple|open|readonly|required|scoped\",\r\n\r\n\t// Regular expressions\r\n\r\n\t// http://www.w3.org/TR/css3-selectors/#whitespace\r\n\twhitespace = \"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",\r\n\r\n\t// https://www.w3.org/TR/css-syntax-3/#ident-token-diagram\r\n\tidentifier = \"(?:\\\\\\\\[\\\\da-fA-F]{1,6}\" + whitespace +\r\n\t\t\"?|\\\\\\\\[^\\\\r\\\\n\\\\f]|[\\\\w-]|[^\\0-\\\\x7f])+\",\r\n\r\n\t// Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors\r\n\tattributes = \"\\\\[\" + whitespace + \"*(\" + identifier + \")(?:\" + whitespace +\r\n\r\n\t\t// Operator (capture 2)\r\n\t\t\"*([*^$|!~]?=)\" + whitespace +\r\n\r\n\t\t// \"Attribute values must be CSS identifiers [capture 5]\r\n\t\t// or strings [capture 3 or capture 4]\"\r\n\t\t\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\" + identifier + \"))|)\" +\r\n\t\twhitespace + \"*\\\\]\",\r\n\r\n\tpseudos = \":(\" + identifier + \")(?:\\\\((\" +\r\n\r\n\t\t// To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:\r\n\t\t// 1. quoted (capture 3; capture 4 or capture 5)\r\n\t\t\"('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|\" +\r\n\r\n\t\t// 2. simple (capture 6)\r\n\t\t\"((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\" + attributes + \")*)|\" +\r\n\r\n\t\t// 3. anything else (capture 2)\r\n\t\t\".*\" +\r\n\t\t\")\\\\)|)\",\r\n\r\n\t// Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter\r\n\trwhitespace = new RegExp( whitespace + \"+\", \"g\" ),\r\n\trtrim = new RegExp( \"^\" + whitespace + \"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\" +\r\n\t\twhitespace + \"+$\", \"g\" ),\r\n\r\n\trcomma = new RegExp( \"^\" + whitespace + \"*,\" + whitespace + \"*\" ),\r\n\trcombinators = new RegExp( \"^\" + whitespace + \"*([>+~]|\" + whitespace + \")\" + whitespace +\r\n\t\t\"*\" ),\r\n\trdescend = new RegExp( whitespace + \"|>\" ),\r\n\r\n\trpseudo = new RegExp( pseudos ),\r\n\tridentifier = new RegExp( \"^\" + identifier + \"$\" ),\r\n\r\n\tmatchExpr = {\r\n\t\t\"ID\": new RegExp( \"^#(\" + identifier + \")\" ),\r\n\t\t\"CLASS\": new RegExp( \"^\\\\.(\" + identifier + \")\" ),\r\n\t\t\"TAG\": new RegExp( \"^(\" + identifier + \"|[*])\" ),\r\n\t\t\"ATTR\": new RegExp( \"^\" + attributes ),\r\n\t\t\"PSEUDO\": new RegExp( \"^\" + pseudos ),\r\n\t\t\"CHILD\": new RegExp( \"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\" +\r\n\t\t\twhitespace + \"*(even|odd|(([+-]|)(\\\\d*)n|)\" + whitespace + \"*(?:([+-]|)\" +\r\n\t\t\twhitespace + \"*(\\\\d+)|))\" + whitespace + \"*\\\\)|)\", \"i\" ),\r\n\t\t\"bool\": new RegExp( \"^(?:\" + booleans + \")$\", \"i\" ),\r\n\r\n\t\t// For use in libraries implementing .is()\r\n\t\t// We use this for POS matching in `select`\r\n\t\t\"needsContext\": new RegExp( \"^\" + whitespace +\r\n\t\t\t\"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\" + whitespace +\r\n\t\t\t\"*((?:-\\\\d)?\\\\d*)\" + whitespace + \"*\\\\)|)(?=[^-]|$)\", \"i\" )\r\n\t},\r\n\r\n\trhtml = /HTML$/i,\r\n\trinputs = /^(?:input|select|textarea|button)$/i,\r\n\trheader = /^h\\d$/i,\r\n\r\n\trnative = /^[^{]+\\{\\s*\\[native \\w/,\r\n\r\n\t// Easily-parseable/retrievable ID or TAG or CLASS selectors\r\n\trquickExpr = /^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,\r\n\r\n\trsibling = /[+~]/,\r\n\r\n\t// CSS escapes\r\n\t// http://www.w3.org/TR/CSS21/syndata.html#escaped-characters\r\n\trunescape = new RegExp( \"\\\\\\\\[\\\\da-fA-F]{1,6}\" + whitespace + \"?|\\\\\\\\([^\\\\r\\\\n\\\\f])\", \"g\" ),\r\n\tfunescape = function( escape, nonHex ) {\r\n\t\tvar high = \"0x\" + escape.slice( 1 ) - 0x10000;\r\n\r\n\t\treturn nonHex ?\r\n\r\n\t\t\t// Strip the backslash prefix from a non-hex escape sequence\r\n\t\t\tnonHex :\r\n\r\n\t\t\t// Replace a hexadecimal escape sequence with the encoded Unicode code point\r\n\t\t\t// Support: IE <=11+\r\n\t\t\t// For values outside the Basic Multilingual Plane (BMP), manually construct a\r\n\t\t\t// surrogate pair\r\n\t\t\thigh < 0 ?\r\n\t\t\t\tString.fromCharCode( high + 0x10000 ) :\r\n\t\t\t\tString.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );\r\n\t},\r\n\r\n\t// CSS string/identifier serialization\r\n\t// https://drafts.csswg.org/cssom/#common-serializing-idioms\r\n\trcssescape = /([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,\r\n\tfcssescape = function( ch, asCodePoint ) {\r\n\t\tif ( asCodePoint ) {\r\n\r\n\t\t\t// U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER\r\n\t\t\tif ( ch === \"\\0\" ) {\r\n\t\t\t\treturn \"\\uFFFD\";\r\n\t\t\t}\r\n\r\n\t\t\t// Control characters and (dependent upon position) numbers get escaped as code points\r\n\t\t\treturn ch.slice( 0, -1 ) + \"\\\\\" +\r\n\t\t\t\tch.charCodeAt( ch.length - 1 ).toString( 16 ) + \" \";\r\n\t\t}\r\n\r\n\t\t// Other potentially-special ASCII characters get backslash-escaped\r\n\t\treturn \"\\\\\" + ch;\r\n\t},\r\n\r\n\t// Used for iframes\r\n\t// See setDocument()\r\n\t// Removing the function wrapper causes a \"Permission Denied\"\r\n\t// error in IE\r\n\tunloadHandler = function() {\r\n\t\tsetDocument();\r\n\t},\r\n\r\n\tinDisabledFieldset = addCombinator(\r\n\t\tfunction( elem ) {\r\n\t\t\treturn elem.disabled === true && elem.nodeName.toLowerCase() === \"fieldset\";\r\n\t\t},\r\n\t\t{ dir: \"parentNode\", next: \"legend\" }\r\n\t);\r\n\r\n// Optimize for push.apply( _, NodeList )\r\ntry {\r\n\tpush.apply(\r\n\t\t( arr = slice.call( preferredDoc.childNodes ) ),\r\n\t\tpreferredDoc.childNodes\r\n\t);\r\n\r\n\t// Support: Android<4.0\r\n\t// Detect silently failing push.apply\r\n\t// eslint-disable-next-line no-unused-expressions\r\n\tarr[ preferredDoc.childNodes.length ].nodeType;\r\n} catch ( e ) {\r\n\tpush = { apply: arr.length ?\r\n\r\n\t\t// Leverage slice if possible\r\n\t\tfunction( target, els ) {\r\n\t\t\tpushNative.apply( target, slice.call( els ) );\r\n\t\t} :\r\n\r\n\t\t// Support: IE<9\r\n\t\t// Otherwise append directly\r\n\t\tfunction( target, els ) {\r\n\t\t\tvar j = target.length,\r\n\t\t\t\ti = 0;\r\n\r\n\t\t\t// Can't trust NodeList.length\r\n\t\t\twhile ( ( target[ j++ ] = els[ i++ ] ) ) {}\r\n\t\t\ttarget.length = j - 1;\r\n\t\t}\r\n\t};\r\n}\r\n\r\nfunction Sizzle( selector, context, results, seed ) {\r\n\tvar m, i, elem, nid, match, groups, newSelector,\r\n\t\tnewContext = context && context.ownerDocument,\r\n\r\n\t\t// nodeType defaults to 9, since context defaults to document\r\n\t\tnodeType = context ? context.nodeType : 9;\r\n\r\n\tresults = results || [];\r\n\r\n\t// Return early from calls with invalid selector or context\r\n\tif ( typeof selector !== \"string\" || !selector ||\r\n\t\tnodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {\r\n\r\n\t\treturn results;\r\n\t}\r\n\r\n\t// Try to shortcut find operations (as opposed to filters) in HTML documents\r\n\tif ( !seed ) {\r\n\t\tsetDocument( context );\r\n\t\tcontext = context || document;\r\n\r\n\t\tif ( documentIsHTML ) {\r\n\r\n\t\t\t// If the selector is sufficiently simple, try using a \"get*By*\" DOM method\r\n\t\t\t// (excepting DocumentFragment context, where the methods don't exist)\r\n\t\t\tif ( nodeType !== 11 && ( match = rquickExpr.exec( selector ) ) ) {\r\n\r\n\t\t\t\t// ID selector\r\n\t\t\t\tif ( ( m = match[ 1 ] ) ) {\r\n\r\n\t\t\t\t\t// Document context\r\n\t\t\t\t\tif ( nodeType === 9 ) {\r\n\t\t\t\t\t\tif ( ( elem = context.getElementById( m ) ) ) {\r\n\r\n\t\t\t\t\t\t\t// Support: IE, Opera, Webkit\r\n\t\t\t\t\t\t\t// TODO: identify versions\r\n\t\t\t\t\t\t\t// getElementById can match elements by name instead of ID\r\n\t\t\t\t\t\t\tif ( elem.id === m ) {\r\n\t\t\t\t\t\t\t\tresults.push( elem );\r\n\t\t\t\t\t\t\t\treturn results;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\treturn results;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Element context\r\n\t\t\t\t\t} else {\r\n\r\n\t\t\t\t\t\t// Support: IE, Opera, Webkit\r\n\t\t\t\t\t\t// TODO: identify versions\r\n\t\t\t\t\t\t// getElementById can match elements by name instead of ID\r\n\t\t\t\t\t\tif ( newContext && ( elem = newContext.getElementById( m ) ) &&\r\n\t\t\t\t\t\t\tcontains( context, elem ) &&\r\n\t\t\t\t\t\t\telem.id === m ) {\r\n\r\n\t\t\t\t\t\t\tresults.push( elem );\r\n\t\t\t\t\t\t\treturn results;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t// Type selector\r\n\t\t\t\t} else if ( match[ 2 ] ) {\r\n\t\t\t\t\tpush.apply( results, context.getElementsByTagName( selector ) );\r\n\t\t\t\t\treturn results;\r\n\r\n\t\t\t\t// Class selector\r\n\t\t\t\t} else if ( ( m = match[ 3 ] ) && support.getElementsByClassName &&\r\n\t\t\t\t\tcontext.getElementsByClassName ) {\r\n\r\n\t\t\t\t\tpush.apply( results, context.getElementsByClassName( m ) );\r\n\t\t\t\t\treturn results;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Take advantage of querySelectorAll\r\n\t\t\tif ( support.qsa &&\r\n\t\t\t\t!nonnativeSelectorCache[ selector + \" \" ] &&\r\n\t\t\t\t( !rbuggyQSA || !rbuggyQSA.test( selector ) ) &&\r\n\r\n\t\t\t\t// Support: IE 8 only\r\n\t\t\t\t// Exclude object elements\r\n\t\t\t\t( nodeType !== 1 || context.nodeName.toLowerCase() !== \"object\" ) ) {\r\n\r\n\t\t\t\tnewSelector = selector;\r\n\t\t\t\tnewContext = context;\r\n\r\n\t\t\t\t// qSA considers elements outside a scoping root when evaluating child or\r\n\t\t\t\t// descendant combinators, which is not what we want.\r\n\t\t\t\t// In such cases, we work around the behavior by prefixing every selector in the\r\n\t\t\t\t// list with an ID selector referencing the scope context.\r\n\t\t\t\t// The technique has to be used as well when a leading combinator is used\r\n\t\t\t\t// as such selectors are not recognized by querySelectorAll.\r\n\t\t\t\t// Thanks to Andrew Dupont for this technique.\r\n\t\t\t\tif ( nodeType === 1 &&\r\n\t\t\t\t\t( rdescend.test( selector ) || rcombinators.test( selector ) ) ) {\r\n\r\n\t\t\t\t\t// Expand context for sibling selectors\r\n\t\t\t\t\tnewContext = rsibling.test( selector ) && testContext( context.parentNode ) ||\r\n\t\t\t\t\t\tcontext;\r\n\r\n\t\t\t\t\t// We can use :scope instead of the ID hack if the browser\r\n\t\t\t\t\t// supports it & if we're not changing the context.\r\n\t\t\t\t\tif ( newContext !== context || !support.scope ) {\r\n\r\n\t\t\t\t\t\t// Capture the context ID, setting it first if necessary\r\n\t\t\t\t\t\tif ( ( nid = context.getAttribute( \"id\" ) ) ) {\r\n\t\t\t\t\t\t\tnid = nid.replace( rcssescape, fcssescape );\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tcontext.setAttribute( \"id\", ( nid = expando ) );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Prefix every selector in the list\r\n\t\t\t\t\tgroups = tokenize( selector );\r\n\t\t\t\t\ti = groups.length;\r\n\t\t\t\t\twhile ( i-- ) {\r\n\t\t\t\t\t\tgroups[ i ] = ( nid ? \"#\" + nid : \":scope\" ) + \" \" +\r\n\t\t\t\t\t\t\ttoSelector( groups[ i ] );\r\n\t\t\t\t\t}\r\n\t\t\t\t\tnewSelector = groups.join( \",\" );\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tpush.apply( results,\r\n\t\t\t\t\t\tnewContext.querySelectorAll( newSelector )\r\n\t\t\t\t\t);\r\n\t\t\t\t\treturn results;\r\n\t\t\t\t} catch ( qsaError ) {\r\n\t\t\t\t\tnonnativeSelectorCache( selector, true );\r\n\t\t\t\t} finally {\r\n\t\t\t\t\tif ( nid === expando ) {\r\n\t\t\t\t\t\tcontext.removeAttribute( \"id\" );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// All others\r\n\treturn select( selector.replace( rtrim, \"$1\" ), context, results, seed );\r\n}\r\n\r\n/**\r\n * Create key-value caches of limited size\r\n * @returns {function(string, object)} Returns the Object data after storing it on itself with\r\n *\tproperty name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)\r\n *\tdeleting the oldest entry\r\n */\r\nfunction createCache() {\r\n\tvar keys = [];\r\n\r\n\tfunction cache( key, value ) {\r\n\r\n\t\t// Use (key + \" \") to avoid collision with native prototype properties (see Issue #157)\r\n\t\tif ( keys.push( key + \" \" ) > Expr.cacheLength ) {\r\n\r\n\t\t\t// Only keep the most recent entries\r\n\t\t\tdelete cache[ keys.shift() ];\r\n\t\t}\r\n\t\treturn ( cache[ key + \" \" ] = value );\r\n\t}\r\n\treturn cache;\r\n}\r\n\r\n/**\r\n * Mark a function for special use by Sizzle\r\n * @param {Function} fn The function to mark\r\n */\r\nfunction markFunction( fn ) {\r\n\tfn[ expando ] = true;\r\n\treturn fn;\r\n}\r\n\r\n/**\r\n * Support testing using an element\r\n * @param {Function} fn Passed the created element and returns a boolean result\r\n */\r\nfunction assert( fn ) {\r\n\tvar el = document.createElement( \"fieldset\" );\r\n\r\n\ttry {\r\n\t\treturn !!fn( el );\r\n\t} catch ( e ) {\r\n\t\treturn false;\r\n\t} finally {\r\n\r\n\t\t// Remove from its parent by default\r\n\t\tif ( el.parentNode ) {\r\n\t\t\tel.parentNode.removeChild( el );\r\n\t\t}\r\n\r\n\t\t// release memory in IE\r\n\t\tel = null;\r\n\t}\r\n}\r\n\r\n/**\r\n * Adds the same handler for all of the specified attrs\r\n * @param {String} attrs Pipe-separated list of attributes\r\n * @param {Function} handler The method that will be applied\r\n */\r\nfunction addHandle( attrs, handler ) {\r\n\tvar arr = attrs.split( \"|\" ),\r\n\t\ti = arr.length;\r\n\r\n\twhile ( i-- ) {\r\n\t\tExpr.attrHandle[ arr[ i ] ] = handler;\r\n\t}\r\n}\r\n\r\n/**\r\n * Checks document order of two siblings\r\n * @param {Element} a\r\n * @param {Element} b\r\n * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b\r\n */\r\nfunction siblingCheck( a, b ) {\r\n\tvar cur = b && a,\r\n\t\tdiff = cur && a.nodeType === 1 && b.nodeType === 1 &&\r\n\t\t\ta.sourceIndex - b.sourceIndex;\r\n\r\n\t// Use IE sourceIndex if available on both nodes\r\n\tif ( diff ) {\r\n\t\treturn diff;\r\n\t}\r\n\r\n\t// Check if b follows a\r\n\tif ( cur ) {\r\n\t\twhile ( ( cur = cur.nextSibling ) ) {\r\n\t\t\tif ( cur === b ) {\r\n\t\t\t\treturn -1;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\treturn a ? 1 : -1;\r\n}\r\n\r\n/**\r\n * Returns a function to use in pseudos for input types\r\n * @param {String} type\r\n */\r\nfunction createInputPseudo( type ) {\r\n\treturn function( elem ) {\r\n\t\tvar name = elem.nodeName.toLowerCase();\r\n\t\treturn name === \"input\" && elem.type === type;\r\n\t};\r\n}\r\n\r\n/**\r\n * Returns a function to use in pseudos for buttons\r\n * @param {String} type\r\n */\r\nfunction createButtonPseudo( type ) {\r\n\treturn function( elem ) {\r\n\t\tvar name = elem.nodeName.toLowerCase();\r\n\t\treturn ( name === \"input\" || name === \"button\" ) && elem.type === type;\r\n\t};\r\n}\r\n\r\n/**\r\n * Returns a function to use in pseudos for :enabled/:disabled\r\n * @param {Boolean} disabled true for :disabled; false for :enabled\r\n */\r\nfunction createDisabledPseudo( disabled ) {\r\n\r\n\t// Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable\r\n\treturn function( elem ) {\r\n\r\n\t\t// Only certain elements can match :enabled or :disabled\r\n\t\t// https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled\r\n\t\t// https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled\r\n\t\tif ( \"form\" in elem ) {\r\n\r\n\t\t\t// Check for inherited disabledness on relevant non-disabled elements:\r\n\t\t\t// * listed form-associated elements in a disabled fieldset\r\n\t\t\t//   https://html.spec.whatwg.org/multipage/forms.html#category-listed\r\n\t\t\t//   https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled\r\n\t\t\t// * option elements in a disabled optgroup\r\n\t\t\t//   https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled\r\n\t\t\t// All such elements have a \"form\" property.\r\n\t\t\tif ( elem.parentNode && elem.disabled === false ) {\r\n\r\n\t\t\t\t// Option elements defer to a parent optgroup if present\r\n\t\t\t\tif ( \"label\" in elem ) {\r\n\t\t\t\t\tif ( \"label\" in elem.parentNode ) {\r\n\t\t\t\t\t\treturn elem.parentNode.disabled === disabled;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\treturn elem.disabled === disabled;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Support: IE 6 - 11\r\n\t\t\t\t// Use the isDisabled shortcut property to check for disabled fieldset ancestors\r\n\t\t\t\treturn elem.isDisabled === disabled ||\r\n\r\n\t\t\t\t\t// Where there is no isDisabled, check manually\r\n\t\t\t\t\t/* jshint -W018 */\r\n\t\t\t\t\telem.isDisabled !== !disabled &&\r\n\t\t\t\t\tinDisabledFieldset( elem ) === disabled;\r\n\t\t\t}\r\n\r\n\t\t\treturn elem.disabled === disabled;\r\n\r\n\t\t// Try to winnow out elements that can't be disabled before trusting the disabled property.\r\n\t\t// Some victims get caught in our net (label, legend, menu, track), but it shouldn't\r\n\t\t// even exist on them, let alone have a boolean value.\r\n\t\t} else if ( \"label\" in elem ) {\r\n\t\t\treturn elem.disabled === disabled;\r\n\t\t}\r\n\r\n\t\t// Remaining elements are neither :enabled nor :disabled\r\n\t\treturn false;\r\n\t};\r\n}\r\n\r\n/**\r\n * Returns a function to use in pseudos for positionals\r\n * @param {Function} fn\r\n */\r\nfunction createPositionalPseudo( fn ) {\r\n\treturn markFunction( function( argument ) {\r\n\t\targument = +argument;\r\n\t\treturn markFunction( function( seed, matches ) {\r\n\t\t\tvar j,\r\n\t\t\t\tmatchIndexes = fn( [], seed.length, argument ),\r\n\t\t\t\ti = matchIndexes.length;\r\n\r\n\t\t\t// Match elements found at the specified indexes\r\n\t\t\twhile ( i-- ) {\r\n\t\t\t\tif ( seed[ ( j = matchIndexes[ i ] ) ] ) {\r\n\t\t\t\t\tseed[ j ] = !( matches[ j ] = seed[ j ] );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} );\r\n\t} );\r\n}\r\n\r\n/**\r\n * Checks a node for validity as a Sizzle context\r\n * @param {Element|Object=} context\r\n * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value\r\n */\r\nfunction testContext( context ) {\r\n\treturn context && typeof context.getElementsByTagName !== \"undefined\" && context;\r\n}\r\n\r\n// Expose support vars for convenience\r\nsupport = Sizzle.support = {};\r\n\r\n/**\r\n * Detects XML nodes\r\n * @param {Element|Object} elem An element or a document\r\n * @returns {Boolean} True iff elem is a non-HTML XML node\r\n */\r\nisXML = Sizzle.isXML = function( elem ) {\r\n\tvar namespace = elem.namespaceURI,\r\n\t\tdocElem = ( elem.ownerDocument || elem ).documentElement;\r\n\r\n\t// Support: IE <=8\r\n\t// Assume HTML when documentElement doesn't yet exist, such as inside loading iframes\r\n\t// https://bugs.jquery.com/ticket/4833\r\n\treturn !rhtml.test( namespace || docElem && docElem.nodeName || \"HTML\" );\r\n};\r\n\r\n/**\r\n * Sets document-related variables once based on the current document\r\n * @param {Element|Object} [doc] An element or document object to use to set the document\r\n * @returns {Object} Returns the current document\r\n */\r\nsetDocument = Sizzle.setDocument = function( node ) {\r\n\tvar hasCompare, subWindow,\r\n\t\tdoc = node ? node.ownerDocument || node : preferredDoc;\r\n\r\n\t// Return early if doc is invalid or already selected\r\n\t// Support: IE 11+, Edge 17 - 18+\r\n\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t// two documents; shallow comparisons work.\r\n\t// eslint-disable-next-line eqeqeq\r\n\tif ( doc == document || doc.nodeType !== 9 || !doc.documentElement ) {\r\n\t\treturn document;\r\n\t}\r\n\r\n\t// Update global variables\r\n\tdocument = doc;\r\n\tdocElem = document.documentElement;\r\n\tdocumentIsHTML = !isXML( document );\r\n\r\n\t// Support: IE 9 - 11+, Edge 12 - 18+\r\n\t// Accessing iframe documents after unload throws \"permission denied\" errors (jQuery #13936)\r\n\t// Support: IE 11+, Edge 17 - 18+\r\n\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t// two documents; shallow comparisons work.\r\n\t// eslint-disable-next-line eqeqeq\r\n\tif ( preferredDoc != document &&\r\n\t\t( subWindow = document.defaultView ) && subWindow.top !== subWindow ) {\r\n\r\n\t\t// Support: IE 11, Edge\r\n\t\tif ( subWindow.addEventListener ) {\r\n\t\t\tsubWindow.addEventListener( \"unload\", unloadHandler, false );\r\n\r\n\t\t// Support: IE 9 - 10 only\r\n\t\t} else if ( subWindow.attachEvent ) {\r\n\t\t\tsubWindow.attachEvent( \"onunload\", unloadHandler );\r\n\t\t}\r\n\t}\r\n\r\n\t// Support: IE 8 - 11+, Edge 12 - 18+, Chrome <=16 - 25 only, Firefox <=3.6 - 31 only,\r\n\t// Safari 4 - 5 only, Opera <=11.6 - 12.x only\r\n\t// IE/Edge & older browsers don't support the :scope pseudo-class.\r\n\t// Support: Safari 6.0 only\r\n\t// Safari 6.0 supports :scope but it's an alias of :root there.\r\n\tsupport.scope = assert( function( el ) {\r\n\t\tdocElem.appendChild( el ).appendChild( document.createElement( \"div\" ) );\r\n\t\treturn typeof el.querySelectorAll !== \"undefined\" &&\r\n\t\t\t!el.querySelectorAll( \":scope fieldset div\" ).length;\r\n\t} );\r\n\r\n\t/* Attributes\r\n\t---------------------------------------------------------------------- */\r\n\r\n\t// Support: IE<8\r\n\t// Verify that getAttribute really returns attributes and not properties\r\n\t// (excepting IE8 booleans)\r\n\tsupport.attributes = assert( function( el ) {\r\n\t\tel.className = \"i\";\r\n\t\treturn !el.getAttribute( \"className\" );\r\n\t} );\r\n\r\n\t/* getElement(s)By*\r\n\t---------------------------------------------------------------------- */\r\n\r\n\t// Check if getElementsByTagName(\"*\") returns only elements\r\n\tsupport.getElementsByTagName = assert( function( el ) {\r\n\t\tel.appendChild( document.createComment( \"\" ) );\r\n\t\treturn !el.getElementsByTagName( \"*\" ).length;\r\n\t} );\r\n\r\n\t// Support: IE<9\r\n\tsupport.getElementsByClassName = rnative.test( document.getElementsByClassName );\r\n\r\n\t// Support: IE<10\r\n\t// Check if getElementById returns elements by name\r\n\t// The broken getElementById methods don't pick up programmatically-set names,\r\n\t// so use a roundabout getElementsByName test\r\n\tsupport.getById = assert( function( el ) {\r\n\t\tdocElem.appendChild( el ).id = expando;\r\n\t\treturn !document.getElementsByName || !document.getElementsByName( expando ).length;\r\n\t} );\r\n\r\n\t// ID filter and find\r\n\tif ( support.getById ) {\r\n\t\tExpr.filter[ \"ID\" ] = function( id ) {\r\n\t\t\tvar attrId = id.replace( runescape, funescape );\r\n\t\t\treturn function( elem ) {\r\n\t\t\t\treturn elem.getAttribute( \"id\" ) === attrId;\r\n\t\t\t};\r\n\t\t};\r\n\t\tExpr.find[ \"ID\" ] = function( id, context ) {\r\n\t\t\tif ( typeof context.getElementById !== \"undefined\" && documentIsHTML ) {\r\n\t\t\t\tvar elem = context.getElementById( id );\r\n\t\t\t\treturn elem ? [ elem ] : [];\r\n\t\t\t}\r\n\t\t};\r\n\t} else {\r\n\t\tExpr.filter[ \"ID\" ] =  function( id ) {\r\n\t\t\tvar attrId = id.replace( runescape, funescape );\r\n\t\t\treturn function( elem ) {\r\n\t\t\t\tvar node = typeof elem.getAttributeNode !== \"undefined\" &&\r\n\t\t\t\t\telem.getAttributeNode( \"id\" );\r\n\t\t\t\treturn node && node.value === attrId;\r\n\t\t\t};\r\n\t\t};\r\n\r\n\t\t// Support: IE 6 - 7 only\r\n\t\t// getElementById is not reliable as a find shortcut\r\n\t\tExpr.find[ \"ID\" ] = function( id, context ) {\r\n\t\t\tif ( typeof context.getElementById !== \"undefined\" && documentIsHTML ) {\r\n\t\t\t\tvar node, i, elems,\r\n\t\t\t\t\telem = context.getElementById( id );\r\n\r\n\t\t\t\tif ( elem ) {\r\n\r\n\t\t\t\t\t// Verify the id attribute\r\n\t\t\t\t\tnode = elem.getAttributeNode( \"id\" );\r\n\t\t\t\t\tif ( node && node.value === id ) {\r\n\t\t\t\t\t\treturn [ elem ];\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Fall back on getElementsByName\r\n\t\t\t\t\telems = context.getElementsByName( id );\r\n\t\t\t\t\ti = 0;\r\n\t\t\t\t\twhile ( ( elem = elems[ i++ ] ) ) {\r\n\t\t\t\t\t\tnode = elem.getAttributeNode( \"id\" );\r\n\t\t\t\t\t\tif ( node && node.value === id ) {\r\n\t\t\t\t\t\t\treturn [ elem ];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn [];\r\n\t\t\t}\r\n\t\t};\r\n\t}\r\n\r\n\t// Tag\r\n\tExpr.find[ \"TAG\" ] = support.getElementsByTagName ?\r\n\t\tfunction( tag, context ) {\r\n\t\t\tif ( typeof context.getElementsByTagName !== \"undefined\" ) {\r\n\t\t\t\treturn context.getElementsByTagName( tag );\r\n\r\n\t\t\t// DocumentFragment nodes don't have gEBTN\r\n\t\t\t} else if ( support.qsa ) {\r\n\t\t\t\treturn context.querySelectorAll( tag );\r\n\t\t\t}\r\n\t\t} :\r\n\r\n\t\tfunction( tag, context ) {\r\n\t\t\tvar elem,\r\n\t\t\t\ttmp = [],\r\n\t\t\t\ti = 0,\r\n\r\n\t\t\t\t// By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too\r\n\t\t\t\tresults = context.getElementsByTagName( tag );\r\n\r\n\t\t\t// Filter out possible comments\r\n\t\t\tif ( tag === \"*\" ) {\r\n\t\t\t\twhile ( ( elem = results[ i++ ] ) ) {\r\n\t\t\t\t\tif ( elem.nodeType === 1 ) {\r\n\t\t\t\t\t\ttmp.push( elem );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn tmp;\r\n\t\t\t}\r\n\t\t\treturn results;\r\n\t\t};\r\n\r\n\t// Class\r\n\tExpr.find[ \"CLASS\" ] = support.getElementsByClassName && function( className, context ) {\r\n\t\tif ( typeof context.getElementsByClassName !== \"undefined\" && documentIsHTML ) {\r\n\t\t\treturn context.getElementsByClassName( className );\r\n\t\t}\r\n\t};\r\n\r\n\t/* QSA/matchesSelector\r\n\t---------------------------------------------------------------------- */\r\n\r\n\t// QSA and matchesSelector support\r\n\r\n\t// matchesSelector(:active) reports false when true (IE9/Opera 11.5)\r\n\trbuggyMatches = [];\r\n\r\n\t// qSa(:focus) reports false when true (Chrome 21)\r\n\t// We allow this because of a bug in IE8/9 that throws an error\r\n\t// whenever `document.activeElement` is accessed on an iframe\r\n\t// So, we allow :focus to pass through QSA all the time to avoid the IE error\r\n\t// See https://bugs.jquery.com/ticket/13378\r\n\trbuggyQSA = [];\r\n\r\n\tif ( ( support.qsa = rnative.test( document.querySelectorAll ) ) ) {\r\n\r\n\t\t// Build QSA regex\r\n\t\t// Regex strategy adopted from Diego Perini\r\n\t\tassert( function( el ) {\r\n\r\n\t\t\tvar input;\r\n\r\n\t\t\t// Select is set to empty string on purpose\r\n\t\t\t// This is to test IE's treatment of not explicitly\r\n\t\t\t// setting a boolean content attribute,\r\n\t\t\t// since its presence should be enough\r\n\t\t\t// https://bugs.jquery.com/ticket/12359\r\n\t\t\tdocElem.appendChild( el ).innerHTML = \"<a id='\" + expando + \"'></a>\" +\r\n\t\t\t\t\"<select id='\" + expando + \"-\\r\\\\' msallowcapture=''>\" +\r\n\t\t\t\t\"<option selected=''></option></select>\";\r\n\r\n\t\t\t// Support: IE8, Opera 11-12.16\r\n\t\t\t// Nothing should be selected when empty strings follow ^= or $= or *=\r\n\t\t\t// The test attribute must be unknown in Opera but \"safe\" for WinRT\r\n\t\t\t// https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section\r\n\t\t\tif ( el.querySelectorAll( \"[msallowcapture^='']\" ).length ) {\r\n\t\t\t\trbuggyQSA.push( \"[*^$]=\" + whitespace + \"*(?:''|\\\"\\\")\" );\r\n\t\t\t}\r\n\r\n\t\t\t// Support: IE8\r\n\t\t\t// Boolean attributes and \"value\" are not treated correctly\r\n\t\t\tif ( !el.querySelectorAll( \"[selected]\" ).length ) {\r\n\t\t\t\trbuggyQSA.push( \"\\\\[\" + whitespace + \"*(?:value|\" + booleans + \")\" );\r\n\t\t\t}\r\n\r\n\t\t\t// Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+\r\n\t\t\tif ( !el.querySelectorAll( \"[id~=\" + expando + \"-]\" ).length ) {\r\n\t\t\t\trbuggyQSA.push( \"~=\" );\r\n\t\t\t}\r\n\r\n\t\t\t// Support: IE 11+, Edge 15 - 18+\r\n\t\t\t// IE 11/Edge don't find elements on a `[name='']` query in some cases.\r\n\t\t\t// Adding a temporary attribute to the document before the selection works\r\n\t\t\t// around the issue.\r\n\t\t\t// Interestingly, IE 10 & older don't seem to have the issue.\r\n\t\t\tinput = document.createElement( \"input\" );\r\n\t\t\tinput.setAttribute( \"name\", \"\" );\r\n\t\t\tel.appendChild( input );\r\n\t\t\tif ( !el.querySelectorAll( \"[name='']\" ).length ) {\r\n\t\t\t\trbuggyQSA.push( \"\\\\[\" + whitespace + \"*name\" + whitespace + \"*=\" +\r\n\t\t\t\t\twhitespace + \"*(?:''|\\\"\\\")\" );\r\n\t\t\t}\r\n\r\n\t\t\t// Webkit/Opera - :checked should return selected option elements\r\n\t\t\t// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked\r\n\t\t\t// IE8 throws error here and will not see later tests\r\n\t\t\tif ( !el.querySelectorAll( \":checked\" ).length ) {\r\n\t\t\t\trbuggyQSA.push( \":checked\" );\r\n\t\t\t}\r\n\r\n\t\t\t// Support: Safari 8+, iOS 8+\r\n\t\t\t// https://bugs.webkit.org/show_bug.cgi?id=136851\r\n\t\t\t// In-page `selector#id sibling-combinator selector` fails\r\n\t\t\tif ( !el.querySelectorAll( \"a#\" + expando + \"+*\" ).length ) {\r\n\t\t\t\trbuggyQSA.push( \".#.+[+~]\" );\r\n\t\t\t}\r\n\r\n\t\t\t// Support: Firefox <=3.6 - 5 only\r\n\t\t\t// Old Firefox doesn't throw on a badly-escaped identifier.\r\n\t\t\tel.querySelectorAll( \"\\\\\\f\" );\r\n\t\t\trbuggyQSA.push( \"[\\\\r\\\\n\\\\f]\" );\r\n\t\t} );\r\n\r\n\t\tassert( function( el ) {\r\n\t\t\tel.innerHTML = \"<a href='' disabled='disabled'></a>\" +\r\n\t\t\t\t\"<select disabled='disabled'><option/></select>\";\r\n\r\n\t\t\t// Support: Windows 8 Native Apps\r\n\t\t\t// The type and name attributes are restricted during .innerHTML assignment\r\n\t\t\tvar input = document.createElement( \"input\" );\r\n\t\t\tinput.setAttribute( \"type\", \"hidden\" );\r\n\t\t\tel.appendChild( input ).setAttribute( \"name\", \"D\" );\r\n\r\n\t\t\t// Support: IE8\r\n\t\t\t// Enforce case-sensitivity of name attribute\r\n\t\t\tif ( el.querySelectorAll( \"[name=d]\" ).length ) {\r\n\t\t\t\trbuggyQSA.push( \"name\" + whitespace + \"*[*^$|!~]?=\" );\r\n\t\t\t}\r\n\r\n\t\t\t// FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)\r\n\t\t\t// IE8 throws error here and will not see later tests\r\n\t\t\tif ( el.querySelectorAll( \":enabled\" ).length !== 2 ) {\r\n\t\t\t\trbuggyQSA.push( \":enabled\", \":disabled\" );\r\n\t\t\t}\r\n\r\n\t\t\t// Support: IE9-11+\r\n\t\t\t// IE's :disabled selector does not pick up the children of disabled fieldsets\r\n\t\t\tdocElem.appendChild( el ).disabled = true;\r\n\t\t\tif ( el.querySelectorAll( \":disabled\" ).length !== 2 ) {\r\n\t\t\t\trbuggyQSA.push( \":enabled\", \":disabled\" );\r\n\t\t\t}\r\n\r\n\t\t\t// Support: Opera 10 - 11 only\r\n\t\t\t// Opera 10-11 does not throw on post-comma invalid pseudos\r\n\t\t\tel.querySelectorAll( \"*,:x\" );\r\n\t\t\trbuggyQSA.push( \",.*:\" );\r\n\t\t} );\r\n\t}\r\n\r\n\tif ( ( support.matchesSelector = rnative.test( ( matches = docElem.matches ||\r\n\t\tdocElem.webkitMatchesSelector ||\r\n\t\tdocElem.mozMatchesSelector ||\r\n\t\tdocElem.oMatchesSelector ||\r\n\t\tdocElem.msMatchesSelector ) ) ) ) {\r\n\r\n\t\tassert( function( el ) {\r\n\r\n\t\t\t// Check to see if it's possible to do matchesSelector\r\n\t\t\t// on a disconnected node (IE 9)\r\n\t\t\tsupport.disconnectedMatch = matches.call( el, \"*\" );\r\n\r\n\t\t\t// This should fail with an exception\r\n\t\t\t// Gecko does not error, returns false instead\r\n\t\t\tmatches.call( el, \"[s!='']:x\" );\r\n\t\t\trbuggyMatches.push( \"!=\", pseudos );\r\n\t\t} );\r\n\t}\r\n\r\n\trbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join( \"|\" ) );\r\n\trbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join( \"|\" ) );\r\n\r\n\t/* Contains\r\n\t---------------------------------------------------------------------- */\r\n\thasCompare = rnative.test( docElem.compareDocumentPosition );\r\n\r\n\t// Element contains another\r\n\t// Purposefully self-exclusive\r\n\t// As in, an element does not contain itself\r\n\tcontains = hasCompare || rnative.test( docElem.contains ) ?\r\n\t\tfunction( a, b ) {\r\n\t\t\tvar adown = a.nodeType === 9 ? a.documentElement : a,\r\n\t\t\t\tbup = b && b.parentNode;\r\n\t\t\treturn a === bup || !!( bup && bup.nodeType === 1 && (\r\n\t\t\t\tadown.contains ?\r\n\t\t\t\t\tadown.contains( bup ) :\r\n\t\t\t\t\ta.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16\r\n\t\t\t) );\r\n\t\t} :\r\n\t\tfunction( a, b ) {\r\n\t\t\tif ( b ) {\r\n\t\t\t\twhile ( ( b = b.parentNode ) ) {\r\n\t\t\t\t\tif ( b === a ) {\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn false;\r\n\t\t};\r\n\r\n\t/* Sorting\r\n\t---------------------------------------------------------------------- */\r\n\r\n\t// Document order sorting\r\n\tsortOrder = hasCompare ?\r\n\tfunction( a, b ) {\r\n\r\n\t\t// Flag for duplicate removal\r\n\t\tif ( a === b ) {\r\n\t\t\thasDuplicate = true;\r\n\t\t\treturn 0;\r\n\t\t}\r\n\r\n\t\t// Sort on method existence if only one input has compareDocumentPosition\r\n\t\tvar compare = !a.compareDocumentPosition - !b.compareDocumentPosition;\r\n\t\tif ( compare ) {\r\n\t\t\treturn compare;\r\n\t\t}\r\n\r\n\t\t// Calculate position if both inputs belong to the same document\r\n\t\t// Support: IE 11+, Edge 17 - 18+\r\n\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t\t// two documents; shallow comparisons work.\r\n\t\t// eslint-disable-next-line eqeqeq\r\n\t\tcompare = ( a.ownerDocument || a ) == ( b.ownerDocument || b ) ?\r\n\t\t\ta.compareDocumentPosition( b ) :\r\n\r\n\t\t\t// Otherwise we know they are disconnected\r\n\t\t\t1;\r\n\r\n\t\t// Disconnected nodes\r\n\t\tif ( compare & 1 ||\r\n\t\t\t( !support.sortDetached && b.compareDocumentPosition( a ) === compare ) ) {\r\n\r\n\t\t\t// Choose the first element that is related to our preferred document\r\n\t\t\t// Support: IE 11+, Edge 17 - 18+\r\n\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t\t\t// two documents; shallow comparisons work.\r\n\t\t\t// eslint-disable-next-line eqeqeq\r\n\t\t\tif ( a == document || a.ownerDocument == preferredDoc &&\r\n\t\t\t\tcontains( preferredDoc, a ) ) {\r\n\t\t\t\treturn -1;\r\n\t\t\t}\r\n\r\n\t\t\t// Support: IE 11+, Edge 17 - 18+\r\n\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t\t\t// two documents; shallow comparisons work.\r\n\t\t\t// eslint-disable-next-line eqeqeq\r\n\t\t\tif ( b == document || b.ownerDocument == preferredDoc &&\r\n\t\t\t\tcontains( preferredDoc, b ) ) {\r\n\t\t\t\treturn 1;\r\n\t\t\t}\r\n\r\n\t\t\t// Maintain original order\r\n\t\t\treturn sortInput ?\r\n\t\t\t\t( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :\r\n\t\t\t\t0;\r\n\t\t}\r\n\r\n\t\treturn compare & 4 ? -1 : 1;\r\n\t} :\r\n\tfunction( a, b ) {\r\n\r\n\t\t// Exit early if the nodes are identical\r\n\t\tif ( a === b ) {\r\n\t\t\thasDuplicate = true;\r\n\t\t\treturn 0;\r\n\t\t}\r\n\r\n\t\tvar cur,\r\n\t\t\ti = 0,\r\n\t\t\taup = a.parentNode,\r\n\t\t\tbup = b.parentNode,\r\n\t\t\tap = [ a ],\r\n\t\t\tbp = [ b ];\r\n\r\n\t\t// Parentless nodes are either documents or disconnected\r\n\t\tif ( !aup || !bup ) {\r\n\r\n\t\t\t// Support: IE 11+, Edge 17 - 18+\r\n\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t\t\t// two documents; shallow comparisons work.\r\n\t\t\t/* eslint-disable eqeqeq */\r\n\t\t\treturn a == document ? -1 :\r\n\t\t\t\tb == document ? 1 :\r\n\t\t\t\t/* eslint-enable eqeqeq */\r\n\t\t\t\taup ? -1 :\r\n\t\t\t\tbup ? 1 :\r\n\t\t\t\tsortInput ?\r\n\t\t\t\t( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :\r\n\t\t\t\t0;\r\n\r\n\t\t// If the nodes are siblings, we can do a quick check\r\n\t\t} else if ( aup === bup ) {\r\n\t\t\treturn siblingCheck( a, b );\r\n\t\t}\r\n\r\n\t\t// Otherwise we need full lists of their ancestors for comparison\r\n\t\tcur = a;\r\n\t\twhile ( ( cur = cur.parentNode ) ) {\r\n\t\t\tap.unshift( cur );\r\n\t\t}\r\n\t\tcur = b;\r\n\t\twhile ( ( cur = cur.parentNode ) ) {\r\n\t\t\tbp.unshift( cur );\r\n\t\t}\r\n\r\n\t\t// Walk down the tree looking for a discrepancy\r\n\t\twhile ( ap[ i ] === bp[ i ] ) {\r\n\t\t\ti++;\r\n\t\t}\r\n\r\n\t\treturn i ?\r\n\r\n\t\t\t// Do a sibling check if the nodes have a common ancestor\r\n\t\t\tsiblingCheck( ap[ i ], bp[ i ] ) :\r\n\r\n\t\t\t// Otherwise nodes in our document sort first\r\n\t\t\t// Support: IE 11+, Edge 17 - 18+\r\n\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t\t\t// two documents; shallow comparisons work.\r\n\t\t\t/* eslint-disable eqeqeq */\r\n\t\t\tap[ i ] == preferredDoc ? -1 :\r\n\t\t\tbp[ i ] == preferredDoc ? 1 :\r\n\t\t\t/* eslint-enable eqeqeq */\r\n\t\t\t0;\r\n\t};\r\n\r\n\treturn document;\r\n};\r\n\r\nSizzle.matches = function( expr, elements ) {\r\n\treturn Sizzle( expr, null, null, elements );\r\n};\r\n\r\nSizzle.matchesSelector = function( elem, expr ) {\r\n\tsetDocument( elem );\r\n\r\n\tif ( support.matchesSelector && documentIsHTML &&\r\n\t\t!nonnativeSelectorCache[ expr + \" \" ] &&\r\n\t\t( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&\r\n\t\t( !rbuggyQSA     || !rbuggyQSA.test( expr ) ) ) {\r\n\r\n\t\ttry {\r\n\t\t\tvar ret = matches.call( elem, expr );\r\n\r\n\t\t\t// IE 9's matchesSelector returns false on disconnected nodes\r\n\t\t\tif ( ret || support.disconnectedMatch ||\r\n\r\n\t\t\t\t// As well, disconnected nodes are said to be in a document\r\n\t\t\t\t// fragment in IE 9\r\n\t\t\t\telem.document && elem.document.nodeType !== 11 ) {\r\n\t\t\t\treturn ret;\r\n\t\t\t}\r\n\t\t} catch ( e ) {\r\n\t\t\tnonnativeSelectorCache( expr, true );\r\n\t\t}\r\n\t}\r\n\r\n\treturn Sizzle( expr, document, null, [ elem ] ).length > 0;\r\n};\r\n\r\nSizzle.contains = function( context, elem ) {\r\n\r\n\t// Set document vars if needed\r\n\t// Support: IE 11+, Edge 17 - 18+\r\n\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t// two documents; shallow comparisons work.\r\n\t// eslint-disable-next-line eqeqeq\r\n\tif ( ( context.ownerDocument || context ) != document ) {\r\n\t\tsetDocument( context );\r\n\t}\r\n\treturn contains( context, elem );\r\n};\r\n\r\nSizzle.attr = function( elem, name ) {\r\n\r\n\t// Set document vars if needed\r\n\t// Support: IE 11+, Edge 17 - 18+\r\n\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t// two documents; shallow comparisons work.\r\n\t// eslint-disable-next-line eqeqeq\r\n\tif ( ( elem.ownerDocument || elem ) != document ) {\r\n\t\tsetDocument( elem );\r\n\t}\r\n\r\n\tvar fn = Expr.attrHandle[ name.toLowerCase() ],\r\n\r\n\t\t// Don't get fooled by Object.prototype properties (jQuery #13807)\r\n\t\tval = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?\r\n\t\t\tfn( elem, name, !documentIsHTML ) :\r\n\t\t\tundefined;\r\n\r\n\treturn val !== undefined ?\r\n\t\tval :\r\n\t\tsupport.attributes || !documentIsHTML ?\r\n\t\t\telem.getAttribute( name ) :\r\n\t\t\t( val = elem.getAttributeNode( name ) ) && val.specified ?\r\n\t\t\t\tval.value :\r\n\t\t\t\tnull;\r\n};\r\n\r\nSizzle.escape = function( sel ) {\r\n\treturn ( sel + \"\" ).replace( rcssescape, fcssescape );\r\n};\r\n\r\nSizzle.error = function( msg ) {\r\n\tthrow new Error( \"Syntax error, unrecognized expression: \" + msg );\r\n};\r\n\r\n/**\r\n * Document sorting and removing duplicates\r\n * @param {ArrayLike} results\r\n */\r\nSizzle.uniqueSort = function( results ) {\r\n\tvar elem,\r\n\t\tduplicates = [],\r\n\t\tj = 0,\r\n\t\ti = 0;\r\n\r\n\t// Unless we *know* we can detect duplicates, assume their presence\r\n\thasDuplicate = !support.detectDuplicates;\r\n\tsortInput = !support.sortStable && results.slice( 0 );\r\n\tresults.sort( sortOrder );\r\n\r\n\tif ( hasDuplicate ) {\r\n\t\twhile ( ( elem = results[ i++ ] ) ) {\r\n\t\t\tif ( elem === results[ i ] ) {\r\n\t\t\t\tj = duplicates.push( i );\r\n\t\t\t}\r\n\t\t}\r\n\t\twhile ( j-- ) {\r\n\t\t\tresults.splice( duplicates[ j ], 1 );\r\n\t\t}\r\n\t}\r\n\r\n\t// Clear input after sorting to release objects\r\n\t// See https://github.com/jquery/sizzle/pull/225\r\n\tsortInput = null;\r\n\r\n\treturn results;\r\n};\r\n\r\n/**\r\n * Utility function for retrieving the text value of an array of DOM nodes\r\n * @param {Array|Element} elem\r\n */\r\ngetText = Sizzle.getText = function( elem ) {\r\n\tvar node,\r\n\t\tret = \"\",\r\n\t\ti = 0,\r\n\t\tnodeType = elem.nodeType;\r\n\r\n\tif ( !nodeType ) {\r\n\r\n\t\t// If no nodeType, this is expected to be an array\r\n\t\twhile ( ( node = elem[ i++ ] ) ) {\r\n\r\n\t\t\t// Do not traverse comment nodes\r\n\t\t\tret += getText( node );\r\n\t\t}\r\n\t} else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {\r\n\r\n\t\t// Use textContent for elements\r\n\t\t// innerText usage removed for consistency of new lines (jQuery #11153)\r\n\t\tif ( typeof elem.textContent === \"string\" ) {\r\n\t\t\treturn elem.textContent;\r\n\t\t} else {\r\n\r\n\t\t\t// Traverse its children\r\n\t\t\tfor ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {\r\n\t\t\t\tret += getText( elem );\r\n\t\t\t}\r\n\t\t}\r\n\t} else if ( nodeType === 3 || nodeType === 4 ) {\r\n\t\treturn elem.nodeValue;\r\n\t}\r\n\r\n\t// Do not include comment or processing instruction nodes\r\n\r\n\treturn ret;\r\n};\r\n\r\nExpr = Sizzle.selectors = {\r\n\r\n\t// Can be adjusted by the user\r\n\tcacheLength: 50,\r\n\r\n\tcreatePseudo: markFunction,\r\n\r\n\tmatch: matchExpr,\r\n\r\n\tattrHandle: {},\r\n\r\n\tfind: {},\r\n\r\n\trelative: {\r\n\t\t\">\": { dir: \"parentNode\", first: true },\r\n\t\t\" \": { dir: \"parentNode\" },\r\n\t\t\"+\": { dir: \"previousSibling\", first: true },\r\n\t\t\"~\": { dir: \"previousSibling\" }\r\n\t},\r\n\r\n\tpreFilter: {\r\n\t\t\"ATTR\": function( match ) {\r\n\t\t\tmatch[ 1 ] = match[ 1 ].replace( runescape, funescape );\r\n\r\n\t\t\t// Move the given value to match[3] whether quoted or unquoted\r\n\t\t\tmatch[ 3 ] = ( match[ 3 ] || match[ 4 ] ||\r\n\t\t\t\tmatch[ 5 ] || \"\" ).replace( runescape, funescape );\r\n\r\n\t\t\tif ( match[ 2 ] === \"~=\" ) {\r\n\t\t\t\tmatch[ 3 ] = \" \" + match[ 3 ] + \" \";\r\n\t\t\t}\r\n\r\n\t\t\treturn match.slice( 0, 4 );\r\n\t\t},\r\n\r\n\t\t\"CHILD\": function( match ) {\r\n\r\n\t\t\t/* matches from matchExpr[\"CHILD\"]\r\n\t\t\t\t1 type (only|nth|...)\r\n\t\t\t\t2 what (child|of-type)\r\n\t\t\t\t3 argument (even|odd|\\d*|\\d*n([+-]\\d+)?|...)\r\n\t\t\t\t4 xn-component of xn+y argument ([+-]?\\d*n|)\r\n\t\t\t\t5 sign of xn-component\r\n\t\t\t\t6 x of xn-component\r\n\t\t\t\t7 sign of y-component\r\n\t\t\t\t8 y of y-component\r\n\t\t\t*/\r\n\t\t\tmatch[ 1 ] = match[ 1 ].toLowerCase();\r\n\r\n\t\t\tif ( match[ 1 ].slice( 0, 3 ) === \"nth\" ) {\r\n\r\n\t\t\t\t// nth-* requires argument\r\n\t\t\t\tif ( !match[ 3 ] ) {\r\n\t\t\t\t\tSizzle.error( match[ 0 ] );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// numeric x and y parameters for Expr.filter.CHILD\r\n\t\t\t\t// remember that false/true cast respectively to 0/1\r\n\t\t\t\tmatch[ 4 ] = +( match[ 4 ] ?\r\n\t\t\t\t\tmatch[ 5 ] + ( match[ 6 ] || 1 ) :\r\n\t\t\t\t\t2 * ( match[ 3 ] === \"even\" || match[ 3 ] === \"odd\" ) );\r\n\t\t\t\tmatch[ 5 ] = +( ( match[ 7 ] + match[ 8 ] ) || match[ 3 ] === \"odd\" );\r\n\r\n\t\t\t\t// other types prohibit arguments\r\n\t\t\t} else if ( match[ 3 ] ) {\r\n\t\t\t\tSizzle.error( match[ 0 ] );\r\n\t\t\t}\r\n\r\n\t\t\treturn match;\r\n\t\t},\r\n\r\n\t\t\"PSEUDO\": function( match ) {\r\n\t\t\tvar excess,\r\n\t\t\t\tunquoted = !match[ 6 ] && match[ 2 ];\r\n\r\n\t\t\tif ( matchExpr[ \"CHILD\" ].test( match[ 0 ] ) ) {\r\n\t\t\t\treturn null;\r\n\t\t\t}\r\n\r\n\t\t\t// Accept quoted arguments as-is\r\n\t\t\tif ( match[ 3 ] ) {\r\n\t\t\t\tmatch[ 2 ] = match[ 4 ] || match[ 5 ] || \"\";\r\n\r\n\t\t\t// Strip excess characters from unquoted arguments\r\n\t\t\t} else if ( unquoted && rpseudo.test( unquoted ) &&\r\n\r\n\t\t\t\t// Get excess from tokenize (recursively)\r\n\t\t\t\t( excess = tokenize( unquoted, true ) ) &&\r\n\r\n\t\t\t\t// advance to the next closing parenthesis\r\n\t\t\t\t( excess = unquoted.indexOf( \")\", unquoted.length - excess ) - unquoted.length ) ) {\r\n\r\n\t\t\t\t// excess is a negative index\r\n\t\t\t\tmatch[ 0 ] = match[ 0 ].slice( 0, excess );\r\n\t\t\t\tmatch[ 2 ] = unquoted.slice( 0, excess );\r\n\t\t\t}\r\n\r\n\t\t\t// Return only captures needed by the pseudo filter method (type and argument)\r\n\t\t\treturn match.slice( 0, 3 );\r\n\t\t}\r\n\t},\r\n\r\n\tfilter: {\r\n\r\n\t\t\"TAG\": function( nodeNameSelector ) {\r\n\t\t\tvar nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();\r\n\t\t\treturn nodeNameSelector === \"*\" ?\r\n\t\t\t\tfunction() {\r\n\t\t\t\t\treturn true;\r\n\t\t\t\t} :\r\n\t\t\t\tfunction( elem ) {\r\n\t\t\t\t\treturn elem.nodeName && elem.nodeName.toLowerCase() === nodeName;\r\n\t\t\t\t};\r\n\t\t},\r\n\r\n\t\t\"CLASS\": function( className ) {\r\n\t\t\tvar pattern = classCache[ className + \" \" ];\r\n\r\n\t\t\treturn pattern ||\r\n\t\t\t\t( pattern = new RegExp( \"(^|\" + whitespace +\r\n\t\t\t\t\t\")\" + className + \"(\" + whitespace + \"|$)\" ) ) && classCache(\r\n\t\t\t\t\t\tclassName, function( elem ) {\r\n\t\t\t\t\t\t\treturn pattern.test(\r\n\t\t\t\t\t\t\t\ttypeof elem.className === \"string\" && elem.className ||\r\n\t\t\t\t\t\t\t\ttypeof elem.getAttribute !== \"undefined\" &&\r\n\t\t\t\t\t\t\t\t\telem.getAttribute( \"class\" ) ||\r\n\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t} );\r\n\t\t},\r\n\r\n\t\t\"ATTR\": function( name, operator, check ) {\r\n\t\t\treturn function( elem ) {\r\n\t\t\t\tvar result = Sizzle.attr( elem, name );\r\n\r\n\t\t\t\tif ( result == null ) {\r\n\t\t\t\t\treturn operator === \"!=\";\r\n\t\t\t\t}\r\n\t\t\t\tif ( !operator ) {\r\n\t\t\t\t\treturn true;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tresult += \"\";\r\n\r\n\t\t\t\t/* eslint-disable max-len */\r\n\r\n\t\t\t\treturn operator === \"=\" ? result === check :\r\n\t\t\t\t\toperator === \"!=\" ? result !== check :\r\n\t\t\t\t\toperator === \"^=\" ? check && result.indexOf( check ) === 0 :\r\n\t\t\t\t\toperator === \"*=\" ? check && result.indexOf( check ) > -1 :\r\n\t\t\t\t\toperator === \"$=\" ? check && result.slice( -check.length ) === check :\r\n\t\t\t\t\toperator === \"~=\" ? ( \" \" + result.replace( rwhitespace, \" \" ) + \" \" ).indexOf( check ) > -1 :\r\n\t\t\t\t\toperator === \"|=\" ? result === check || result.slice( 0, check.length + 1 ) === check + \"-\" :\r\n\t\t\t\t\tfalse;\r\n\t\t\t\t/* eslint-enable max-len */\r\n\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t\"CHILD\": function( type, what, _argument, first, last ) {\r\n\t\t\tvar simple = type.slice( 0, 3 ) !== \"nth\",\r\n\t\t\t\tforward = type.slice( -4 ) !== \"last\",\r\n\t\t\t\tofType = what === \"of-type\";\r\n\r\n\t\t\treturn first === 1 && last === 0 ?\r\n\r\n\t\t\t\t// Shortcut for :nth-*(n)\r\n\t\t\t\tfunction( elem ) {\r\n\t\t\t\t\treturn !!elem.parentNode;\r\n\t\t\t\t} :\r\n\r\n\t\t\t\tfunction( elem, _context, xml ) {\r\n\t\t\t\t\tvar cache, uniqueCache, outerCache, node, nodeIndex, start,\r\n\t\t\t\t\t\tdir = simple !== forward ? \"nextSibling\" : \"previousSibling\",\r\n\t\t\t\t\t\tparent = elem.parentNode,\r\n\t\t\t\t\t\tname = ofType && elem.nodeName.toLowerCase(),\r\n\t\t\t\t\t\tuseCache = !xml && !ofType,\r\n\t\t\t\t\t\tdiff = false;\r\n\r\n\t\t\t\t\tif ( parent ) {\r\n\r\n\t\t\t\t\t\t// :(first|last|only)-(child|of-type)\r\n\t\t\t\t\t\tif ( simple ) {\r\n\t\t\t\t\t\t\twhile ( dir ) {\r\n\t\t\t\t\t\t\t\tnode = elem;\r\n\t\t\t\t\t\t\t\twhile ( ( node = node[ dir ] ) ) {\r\n\t\t\t\t\t\t\t\t\tif ( ofType ?\r\n\t\t\t\t\t\t\t\t\t\tnode.nodeName.toLowerCase() === name :\r\n\t\t\t\t\t\t\t\t\t\tnode.nodeType === 1 ) {\r\n\r\n\t\t\t\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t// Reverse direction for :only-* (if we haven't yet done so)\r\n\t\t\t\t\t\t\t\tstart = dir = type === \"only\" && !start && \"nextSibling\";\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tstart = [ forward ? parent.firstChild : parent.lastChild ];\r\n\r\n\t\t\t\t\t\t// non-xml :nth-child(...) stores cache data on `parent`\r\n\t\t\t\t\t\tif ( forward && useCache ) {\r\n\r\n\t\t\t\t\t\t\t// Seek `elem` from a previously-cached index\r\n\r\n\t\t\t\t\t\t\t// ...in a gzip-friendly way\r\n\t\t\t\t\t\t\tnode = parent;\r\n\t\t\t\t\t\t\touterCache = node[ expando ] || ( node[ expando ] = {} );\r\n\r\n\t\t\t\t\t\t\t// Support: IE <9 only\r\n\t\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\r\n\t\t\t\t\t\t\tuniqueCache = outerCache[ node.uniqueID ] ||\r\n\t\t\t\t\t\t\t\t( outerCache[ node.uniqueID ] = {} );\r\n\r\n\t\t\t\t\t\t\tcache = uniqueCache[ type ] || [];\r\n\t\t\t\t\t\t\tnodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];\r\n\t\t\t\t\t\t\tdiff = nodeIndex && cache[ 2 ];\r\n\t\t\t\t\t\t\tnode = nodeIndex && parent.childNodes[ nodeIndex ];\r\n\r\n\t\t\t\t\t\t\twhile ( ( node = ++nodeIndex && node && node[ dir ] ||\r\n\r\n\t\t\t\t\t\t\t\t// Fallback to seeking `elem` from the start\r\n\t\t\t\t\t\t\t\t( diff = nodeIndex = 0 ) || start.pop() ) ) {\r\n\r\n\t\t\t\t\t\t\t\t// When found, cache indexes on `parent` and break\r\n\t\t\t\t\t\t\t\tif ( node.nodeType === 1 && ++diff && node === elem ) {\r\n\t\t\t\t\t\t\t\t\tuniqueCache[ type ] = [ dirruns, nodeIndex, diff ];\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t} else {\r\n\r\n\t\t\t\t\t\t\t// Use previously-cached element index if available\r\n\t\t\t\t\t\t\tif ( useCache ) {\r\n\r\n\t\t\t\t\t\t\t\t// ...in a gzip-friendly way\r\n\t\t\t\t\t\t\t\tnode = elem;\r\n\t\t\t\t\t\t\t\touterCache = node[ expando ] || ( node[ expando ] = {} );\r\n\r\n\t\t\t\t\t\t\t\t// Support: IE <9 only\r\n\t\t\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\r\n\t\t\t\t\t\t\t\tuniqueCache = outerCache[ node.uniqueID ] ||\r\n\t\t\t\t\t\t\t\t\t( outerCache[ node.uniqueID ] = {} );\r\n\r\n\t\t\t\t\t\t\t\tcache = uniqueCache[ type ] || [];\r\n\t\t\t\t\t\t\t\tnodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];\r\n\t\t\t\t\t\t\t\tdiff = nodeIndex;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t// xml :nth-child(...)\r\n\t\t\t\t\t\t\t// or :nth-last-child(...) or :nth(-last)?-of-type(...)\r\n\t\t\t\t\t\t\tif ( diff === false ) {\r\n\r\n\t\t\t\t\t\t\t\t// Use the same loop as above to seek `elem` from the start\r\n\t\t\t\t\t\t\t\twhile ( ( node = ++nodeIndex && node && node[ dir ] ||\r\n\t\t\t\t\t\t\t\t\t( diff = nodeIndex = 0 ) || start.pop() ) ) {\r\n\r\n\t\t\t\t\t\t\t\t\tif ( ( ofType ?\r\n\t\t\t\t\t\t\t\t\t\tnode.nodeName.toLowerCase() === name :\r\n\t\t\t\t\t\t\t\t\t\tnode.nodeType === 1 ) &&\r\n\t\t\t\t\t\t\t\t\t\t++diff ) {\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Cache the index of each encountered element\r\n\t\t\t\t\t\t\t\t\t\tif ( useCache ) {\r\n\t\t\t\t\t\t\t\t\t\t\touterCache = node[ expando ] ||\r\n\t\t\t\t\t\t\t\t\t\t\t\t( node[ expando ] = {} );\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t// Support: IE <9 only\r\n\t\t\t\t\t\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\r\n\t\t\t\t\t\t\t\t\t\t\tuniqueCache = outerCache[ node.uniqueID ] ||\r\n\t\t\t\t\t\t\t\t\t\t\t\t( outerCache[ node.uniqueID ] = {} );\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tuniqueCache[ type ] = [ dirruns, diff ];\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t\tif ( node === elem ) {\r\n\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Incorporate the offset, then check against cycle size\r\n\t\t\t\t\t\tdiff -= last;\r\n\t\t\t\t\t\treturn diff === first || ( diff % first === 0 && diff / first >= 0 );\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t},\r\n\r\n\t\t\"PSEUDO\": function( pseudo, argument ) {\r\n\r\n\t\t\t// pseudo-class names are case-insensitive\r\n\t\t\t// http://www.w3.org/TR/selectors/#pseudo-classes\r\n\t\t\t// Prioritize by case sensitivity in case custom pseudos are added with uppercase letters\r\n\t\t\t// Remember that setFilters inherits from pseudos\r\n\t\t\tvar args,\r\n\t\t\t\tfn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||\r\n\t\t\t\t\tSizzle.error( \"unsupported pseudo: \" + pseudo );\r\n\r\n\t\t\t// The user may use createPseudo to indicate that\r\n\t\t\t// arguments are needed to create the filter function\r\n\t\t\t// just as Sizzle does\r\n\t\t\tif ( fn[ expando ] ) {\r\n\t\t\t\treturn fn( argument );\r\n\t\t\t}\r\n\r\n\t\t\t// But maintain support for old signatures\r\n\t\t\tif ( fn.length > 1 ) {\r\n\t\t\t\targs = [ pseudo, pseudo, \"\", argument ];\r\n\t\t\t\treturn Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?\r\n\t\t\t\t\tmarkFunction( function( seed, matches ) {\r\n\t\t\t\t\t\tvar idx,\r\n\t\t\t\t\t\t\tmatched = fn( seed, argument ),\r\n\t\t\t\t\t\t\ti = matched.length;\r\n\t\t\t\t\t\twhile ( i-- ) {\r\n\t\t\t\t\t\t\tidx = indexOf( seed, matched[ i ] );\r\n\t\t\t\t\t\t\tseed[ idx ] = !( matches[ idx ] = matched[ i ] );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} ) :\r\n\t\t\t\t\tfunction( elem ) {\r\n\t\t\t\t\t\treturn fn( elem, 0, args );\r\n\t\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\treturn fn;\r\n\t\t}\r\n\t},\r\n\r\n\tpseudos: {\r\n\r\n\t\t// Potentially complex pseudos\r\n\t\t\"not\": markFunction( function( selector ) {\r\n\r\n\t\t\t// Trim the selector passed to compile\r\n\t\t\t// to avoid treating leading and trailing\r\n\t\t\t// spaces as combinators\r\n\t\t\tvar input = [],\r\n\t\t\t\tresults = [],\r\n\t\t\t\tmatcher = compile( selector.replace( rtrim, \"$1\" ) );\r\n\r\n\t\t\treturn matcher[ expando ] ?\r\n\t\t\t\tmarkFunction( function( seed, matches, _context, xml ) {\r\n\t\t\t\t\tvar elem,\r\n\t\t\t\t\t\tunmatched = matcher( seed, null, xml, [] ),\r\n\t\t\t\t\t\ti = seed.length;\r\n\r\n\t\t\t\t\t// Match elements unmatched by `matcher`\r\n\t\t\t\t\twhile ( i-- ) {\r\n\t\t\t\t\t\tif ( ( elem = unmatched[ i ] ) ) {\r\n\t\t\t\t\t\t\tseed[ i ] = !( matches[ i ] = elem );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} ) :\r\n\t\t\t\tfunction( elem, _context, xml ) {\r\n\t\t\t\t\tinput[ 0 ] = elem;\r\n\t\t\t\t\tmatcher( input, null, xml, results );\r\n\r\n\t\t\t\t\t// Don't keep the element (issue #299)\r\n\t\t\t\t\tinput[ 0 ] = null;\r\n\t\t\t\t\treturn !results.pop();\r\n\t\t\t\t};\r\n\t\t} ),\r\n\r\n\t\t\"has\": markFunction( function( selector ) {\r\n\t\t\treturn function( elem ) {\r\n\t\t\t\treturn Sizzle( selector, elem ).length > 0;\r\n\t\t\t};\r\n\t\t} ),\r\n\r\n\t\t\"contains\": markFunction( function( text ) {\r\n\t\t\ttext = text.replace( runescape, funescape );\r\n\t\t\treturn function( elem ) {\r\n\t\t\t\treturn ( elem.textContent || getText( elem ) ).indexOf( text ) > -1;\r\n\t\t\t};\r\n\t\t} ),\r\n\r\n\t\t// \"Whether an element is represented by a :lang() selector\r\n\t\t// is based solely on the element's language value\r\n\t\t// being equal to the identifier C,\r\n\t\t// or beginning with the identifier C immediately followed by \"-\".\r\n\t\t// The matching of C against the element's language value is performed case-insensitively.\r\n\t\t// The identifier C does not have to be a valid language name.\"\r\n\t\t// http://www.w3.org/TR/selectors/#lang-pseudo\r\n\t\t\"lang\": markFunction( function( lang ) {\r\n\r\n\t\t\t// lang value must be a valid identifier\r\n\t\t\tif ( !ridentifier.test( lang || \"\" ) ) {\r\n\t\t\t\tSizzle.error( \"unsupported lang: \" + lang );\r\n\t\t\t}\r\n\t\t\tlang = lang.replace( runescape, funescape ).toLowerCase();\r\n\t\t\treturn function( elem ) {\r\n\t\t\t\tvar elemLang;\r\n\t\t\t\tdo {\r\n\t\t\t\t\tif ( ( elemLang = documentIsHTML ?\r\n\t\t\t\t\t\telem.lang :\r\n\t\t\t\t\t\telem.getAttribute( \"xml:lang\" ) || elem.getAttribute( \"lang\" ) ) ) {\r\n\r\n\t\t\t\t\t\telemLang = elemLang.toLowerCase();\r\n\t\t\t\t\t\treturn elemLang === lang || elemLang.indexOf( lang + \"-\" ) === 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t} while ( ( elem = elem.parentNode ) && elem.nodeType === 1 );\r\n\t\t\t\treturn false;\r\n\t\t\t};\r\n\t\t} ),\r\n\r\n\t\t// Miscellaneous\r\n\t\t\"target\": function( elem ) {\r\n\t\t\tvar hash = window.location && window.location.hash;\r\n\t\t\treturn hash && hash.slice( 1 ) === elem.id;\r\n\t\t},\r\n\r\n\t\t\"root\": function( elem ) {\r\n\t\t\treturn elem === docElem;\r\n\t\t},\r\n\r\n\t\t\"focus\": function( elem ) {\r\n\t\t\treturn elem === document.activeElement &&\r\n\t\t\t\t( !document.hasFocus || document.hasFocus() ) &&\r\n\t\t\t\t!!( elem.type || elem.href || ~elem.tabIndex );\r\n\t\t},\r\n\r\n\t\t// Boolean properties\r\n\t\t\"enabled\": createDisabledPseudo( false ),\r\n\t\t\"disabled\": createDisabledPseudo( true ),\r\n\r\n\t\t\"checked\": function( elem ) {\r\n\r\n\t\t\t// In CSS3, :checked should return both checked and selected elements\r\n\t\t\t// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked\r\n\t\t\tvar nodeName = elem.nodeName.toLowerCase();\r\n\t\t\treturn ( nodeName === \"input\" && !!elem.checked ) ||\r\n\t\t\t\t( nodeName === \"option\" && !!elem.selected );\r\n\t\t},\r\n\r\n\t\t\"selected\": function( elem ) {\r\n\r\n\t\t\t// Accessing this property makes selected-by-default\r\n\t\t\t// options in Safari work properly\r\n\t\t\tif ( elem.parentNode ) {\r\n\t\t\t\t// eslint-disable-next-line no-unused-expressions\r\n\t\t\t\telem.parentNode.selectedIndex;\r\n\t\t\t}\r\n\r\n\t\t\treturn elem.selected === true;\r\n\t\t},\r\n\r\n\t\t// Contents\r\n\t\t\"empty\": function( elem ) {\r\n\r\n\t\t\t// http://www.w3.org/TR/selectors/#empty-pseudo\r\n\t\t\t// :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),\r\n\t\t\t//   but not by others (comment: 8; processing instruction: 7; etc.)\r\n\t\t\t// nodeType < 6 works because attributes (2) do not appear as children\r\n\t\t\tfor ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {\r\n\t\t\t\tif ( elem.nodeType < 6 ) {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\r\n\t\t\"parent\": function( elem ) {\r\n\t\t\treturn !Expr.pseudos[ \"empty\" ]( elem );\r\n\t\t},\r\n\r\n\t\t// Element/input types\r\n\t\t\"header\": function( elem ) {\r\n\t\t\treturn rheader.test( elem.nodeName );\r\n\t\t},\r\n\r\n\t\t\"input\": function( elem ) {\r\n\t\t\treturn rinputs.test( elem.nodeName );\r\n\t\t},\r\n\r\n\t\t\"button\": function( elem ) {\r\n\t\t\tvar name = elem.nodeName.toLowerCase();\r\n\t\t\treturn name === \"input\" && elem.type === \"button\" || name === \"button\";\r\n\t\t},\r\n\r\n\t\t\"text\": function( elem ) {\r\n\t\t\tvar attr;\r\n\t\t\treturn elem.nodeName.toLowerCase() === \"input\" &&\r\n\t\t\t\telem.type === \"text\" &&\r\n\r\n\t\t\t\t// Support: IE<8\r\n\t\t\t\t// New HTML5 attribute values (e.g., \"search\") appear with elem.type === \"text\"\r\n\t\t\t\t( ( attr = elem.getAttribute( \"type\" ) ) == null ||\r\n\t\t\t\t\tattr.toLowerCase() === \"text\" );\r\n\t\t},\r\n\r\n\t\t// Position-in-collection\r\n\t\t\"first\": createPositionalPseudo( function() {\r\n\t\t\treturn [ 0 ];\r\n\t\t} ),\r\n\r\n\t\t\"last\": createPositionalPseudo( function( _matchIndexes, length ) {\r\n\t\t\treturn [ length - 1 ];\r\n\t\t} ),\r\n\r\n\t\t\"eq\": createPositionalPseudo( function( _matchIndexes, length, argument ) {\r\n\t\t\treturn [ argument < 0 ? argument + length : argument ];\r\n\t\t} ),\r\n\r\n\t\t\"even\": createPositionalPseudo( function( matchIndexes, length ) {\r\n\t\t\tvar i = 0;\r\n\t\t\tfor ( ; i < length; i += 2 ) {\r\n\t\t\t\tmatchIndexes.push( i );\r\n\t\t\t}\r\n\t\t\treturn matchIndexes;\r\n\t\t} ),\r\n\r\n\t\t\"odd\": createPositionalPseudo( function( matchIndexes, length ) {\r\n\t\t\tvar i = 1;\r\n\t\t\tfor ( ; i < length; i += 2 ) {\r\n\t\t\t\tmatchIndexes.push( i );\r\n\t\t\t}\r\n\t\t\treturn matchIndexes;\r\n\t\t} ),\r\n\r\n\t\t\"lt\": createPositionalPseudo( function( matchIndexes, length, argument ) {\r\n\t\t\tvar i = argument < 0 ?\r\n\t\t\t\targument + length :\r\n\t\t\t\targument > length ?\r\n\t\t\t\t\tlength :\r\n\t\t\t\t\targument;\r\n\t\t\tfor ( ; --i >= 0; ) {\r\n\t\t\t\tmatchIndexes.push( i );\r\n\t\t\t}\r\n\t\t\treturn matchIndexes;\r\n\t\t} ),\r\n\r\n\t\t\"gt\": createPositionalPseudo( function( matchIndexes, length, argument ) {\r\n\t\t\tvar i = argument < 0 ? argument + length : argument;\r\n\t\t\tfor ( ; ++i < length; ) {\r\n\t\t\t\tmatchIndexes.push( i );\r\n\t\t\t}\r\n\t\t\treturn matchIndexes;\r\n\t\t} )\r\n\t}\r\n};\r\n\r\nExpr.pseudos[ \"nth\" ] = Expr.pseudos[ \"eq\" ];\r\n\r\n// Add button/input type pseudos\r\nfor ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {\r\n\tExpr.pseudos[ i ] = createInputPseudo( i );\r\n}\r\nfor ( i in { submit: true, reset: true } ) {\r\n\tExpr.pseudos[ i ] = createButtonPseudo( i );\r\n}\r\n\r\n// Easy API for creating new setFilters\r\nfunction setFilters() {}\r\nsetFilters.prototype = Expr.filters = Expr.pseudos;\r\nExpr.setFilters = new setFilters();\r\n\r\ntokenize = Sizzle.tokenize = function( selector, parseOnly ) {\r\n\tvar matched, match, tokens, type,\r\n\t\tsoFar, groups, preFilters,\r\n\t\tcached = tokenCache[ selector + \" \" ];\r\n\r\n\tif ( cached ) {\r\n\t\treturn parseOnly ? 0 : cached.slice( 0 );\r\n\t}\r\n\r\n\tsoFar = selector;\r\n\tgroups = [];\r\n\tpreFilters = Expr.preFilter;\r\n\r\n\twhile ( soFar ) {\r\n\r\n\t\t// Comma and first run\r\n\t\tif ( !matched || ( match = rcomma.exec( soFar ) ) ) {\r\n\t\t\tif ( match ) {\r\n\r\n\t\t\t\t// Don't consume trailing commas as valid\r\n\t\t\t\tsoFar = soFar.slice( match[ 0 ].length ) || soFar;\r\n\t\t\t}\r\n\t\t\tgroups.push( ( tokens = [] ) );\r\n\t\t}\r\n\r\n\t\tmatched = false;\r\n\r\n\t\t// Combinators\r\n\t\tif ( ( match = rcombinators.exec( soFar ) ) ) {\r\n\t\t\tmatched = match.shift();\r\n\t\t\ttokens.push( {\r\n\t\t\t\tvalue: matched,\r\n\r\n\t\t\t\t// Cast descendant combinators to space\r\n\t\t\t\ttype: match[ 0 ].replace( rtrim, \" \" )\r\n\t\t\t} );\r\n\t\t\tsoFar = soFar.slice( matched.length );\r\n\t\t}\r\n\r\n\t\t// Filters\r\n\t\tfor ( type in Expr.filter ) {\r\n\t\t\tif ( ( match = matchExpr[ type ].exec( soFar ) ) && ( !preFilters[ type ] ||\r\n\t\t\t\t( match = preFilters[ type ]( match ) ) ) ) {\r\n\t\t\t\tmatched = match.shift();\r\n\t\t\t\ttokens.push( {\r\n\t\t\t\t\tvalue: matched,\r\n\t\t\t\t\ttype: type,\r\n\t\t\t\t\tmatches: match\r\n\t\t\t\t} );\r\n\t\t\t\tsoFar = soFar.slice( matched.length );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif ( !matched ) {\r\n\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\t// Return the length of the invalid excess\r\n\t// if we're just parsing\r\n\t// Otherwise, throw an error or return tokens\r\n\treturn parseOnly ?\r\n\t\tsoFar.length :\r\n\t\tsoFar ?\r\n\t\t\tSizzle.error( selector ) :\r\n\r\n\t\t\t// Cache the tokens\r\n\t\t\ttokenCache( selector, groups ).slice( 0 );\r\n};\r\n\r\nfunction toSelector( tokens ) {\r\n\tvar i = 0,\r\n\t\tlen = tokens.length,\r\n\t\tselector = \"\";\r\n\tfor ( ; i < len; i++ ) {\r\n\t\tselector += tokens[ i ].value;\r\n\t}\r\n\treturn selector;\r\n}\r\n\r\nfunction addCombinator( matcher, combinator, base ) {\r\n\tvar dir = combinator.dir,\r\n\t\tskip = combinator.next,\r\n\t\tkey = skip || dir,\r\n\t\tcheckNonElements = base && key === \"parentNode\",\r\n\t\tdoneName = done++;\r\n\r\n\treturn combinator.first ?\r\n\r\n\t\t// Check against closest ancestor/preceding element\r\n\t\tfunction( elem, context, xml ) {\r\n\t\t\twhile ( ( elem = elem[ dir ] ) ) {\r\n\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\r\n\t\t\t\t\treturn matcher( elem, context, xml );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn false;\r\n\t\t} :\r\n\r\n\t\t// Check against all ancestor/preceding elements\r\n\t\tfunction( elem, context, xml ) {\r\n\t\t\tvar oldCache, uniqueCache, outerCache,\r\n\t\t\t\tnewCache = [ dirruns, doneName ];\r\n\r\n\t\t\t// We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching\r\n\t\t\tif ( xml ) {\r\n\t\t\t\twhile ( ( elem = elem[ dir ] ) ) {\r\n\t\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\r\n\t\t\t\t\t\tif ( matcher( elem, context, xml ) ) {\r\n\t\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\twhile ( ( elem = elem[ dir ] ) ) {\r\n\t\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\r\n\t\t\t\t\t\touterCache = elem[ expando ] || ( elem[ expando ] = {} );\r\n\r\n\t\t\t\t\t\t// Support: IE <9 only\r\n\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\r\n\t\t\t\t\t\tuniqueCache = outerCache[ elem.uniqueID ] ||\r\n\t\t\t\t\t\t\t( outerCache[ elem.uniqueID ] = {} );\r\n\r\n\t\t\t\t\t\tif ( skip && skip === elem.nodeName.toLowerCase() ) {\r\n\t\t\t\t\t\t\telem = elem[ dir ] || elem;\r\n\t\t\t\t\t\t} else if ( ( oldCache = uniqueCache[ key ] ) &&\r\n\t\t\t\t\t\t\toldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {\r\n\r\n\t\t\t\t\t\t\t// Assign to newCache so results back-propagate to previous elements\r\n\t\t\t\t\t\t\treturn ( newCache[ 2 ] = oldCache[ 2 ] );\r\n\t\t\t\t\t\t} else {\r\n\r\n\t\t\t\t\t\t\t// Reuse newcache so results back-propagate to previous elements\r\n\t\t\t\t\t\t\tuniqueCache[ key ] = newCache;\r\n\r\n\t\t\t\t\t\t\t// A match means we're done; a fail means we have to keep checking\r\n\t\t\t\t\t\t\tif ( ( newCache[ 2 ] = matcher( elem, context, xml ) ) ) {\r\n\t\t\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn false;\r\n\t\t};\r\n}\r\n\r\nfunction elementMatcher( matchers ) {\r\n\treturn matchers.length > 1 ?\r\n\t\tfunction( elem, context, xml ) {\r\n\t\t\tvar i = matchers.length;\r\n\t\t\twhile ( i-- ) {\r\n\t\t\t\tif ( !matchers[ i ]( elem, context, xml ) ) {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t} :\r\n\t\tmatchers[ 0 ];\r\n}\r\n\r\nfunction multipleContexts( selector, contexts, results ) {\r\n\tvar i = 0,\r\n\t\tlen = contexts.length;\r\n\tfor ( ; i < len; i++ ) {\r\n\t\tSizzle( selector, contexts[ i ], results );\r\n\t}\r\n\treturn results;\r\n}\r\n\r\nfunction condense( unmatched, map, filter, context, xml ) {\r\n\tvar elem,\r\n\t\tnewUnmatched = [],\r\n\t\ti = 0,\r\n\t\tlen = unmatched.length,\r\n\t\tmapped = map != null;\r\n\r\n\tfor ( ; i < len; i++ ) {\r\n\t\tif ( ( elem = unmatched[ i ] ) ) {\r\n\t\t\tif ( !filter || filter( elem, context, xml ) ) {\r\n\t\t\t\tnewUnmatched.push( elem );\r\n\t\t\t\tif ( mapped ) {\r\n\t\t\t\t\tmap.push( i );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\treturn newUnmatched;\r\n}\r\n\r\nfunction setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {\r\n\tif ( postFilter && !postFilter[ expando ] ) {\r\n\t\tpostFilter = setMatcher( postFilter );\r\n\t}\r\n\tif ( postFinder && !postFinder[ expando ] ) {\r\n\t\tpostFinder = setMatcher( postFinder, postSelector );\r\n\t}\r\n\treturn markFunction( function( seed, results, context, xml ) {\r\n\t\tvar temp, i, elem,\r\n\t\t\tpreMap = [],\r\n\t\t\tpostMap = [],\r\n\t\t\tpreexisting = results.length,\r\n\r\n\t\t\t// Get initial elements from seed or context\r\n\t\t\telems = seed || multipleContexts(\r\n\t\t\t\tselector || \"*\",\r\n\t\t\t\tcontext.nodeType ? [ context ] : context,\r\n\t\t\t\t[]\r\n\t\t\t),\r\n\r\n\t\t\t// Prefilter to get matcher input, preserving a map for seed-results synchronization\r\n\t\t\tmatcherIn = preFilter && ( seed || !selector ) ?\r\n\t\t\t\tcondense( elems, preMap, preFilter, context, xml ) :\r\n\t\t\t\telems,\r\n\r\n\t\t\tmatcherOut = matcher ?\r\n\r\n\t\t\t\t// If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,\r\n\t\t\t\tpostFinder || ( seed ? preFilter : preexisting || postFilter ) ?\r\n\r\n\t\t\t\t\t// ...intermediate processing is necessary\r\n\t\t\t\t\t[] :\r\n\r\n\t\t\t\t\t// ...otherwise use results directly\r\n\t\t\t\t\tresults :\r\n\t\t\t\tmatcherIn;\r\n\r\n\t\t// Find primary matches\r\n\t\tif ( matcher ) {\r\n\t\t\tmatcher( matcherIn, matcherOut, context, xml );\r\n\t\t}\r\n\r\n\t\t// Apply postFilter\r\n\t\tif ( postFilter ) {\r\n\t\t\ttemp = condense( matcherOut, postMap );\r\n\t\t\tpostFilter( temp, [], context, xml );\r\n\r\n\t\t\t// Un-match failing elements by moving them back to matcherIn\r\n\t\t\ti = temp.length;\r\n\t\t\twhile ( i-- ) {\r\n\t\t\t\tif ( ( elem = temp[ i ] ) ) {\r\n\t\t\t\t\tmatcherOut[ postMap[ i ] ] = !( matcherIn[ postMap[ i ] ] = elem );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif ( seed ) {\r\n\t\t\tif ( postFinder || preFilter ) {\r\n\t\t\t\tif ( postFinder ) {\r\n\r\n\t\t\t\t\t// Get the final matcherOut by condensing this intermediate into postFinder contexts\r\n\t\t\t\t\ttemp = [];\r\n\t\t\t\t\ti = matcherOut.length;\r\n\t\t\t\t\twhile ( i-- ) {\r\n\t\t\t\t\t\tif ( ( elem = matcherOut[ i ] ) ) {\r\n\r\n\t\t\t\t\t\t\t// Restore matcherIn since elem is not yet a final match\r\n\t\t\t\t\t\t\ttemp.push( ( matcherIn[ i ] = elem ) );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tpostFinder( null, ( matcherOut = [] ), temp, xml );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Move matched elements from seed to results to keep them synchronized\r\n\t\t\t\ti = matcherOut.length;\r\n\t\t\t\twhile ( i-- ) {\r\n\t\t\t\t\tif ( ( elem = matcherOut[ i ] ) &&\r\n\t\t\t\t\t\t( temp = postFinder ? indexOf( seed, elem ) : preMap[ i ] ) > -1 ) {\r\n\r\n\t\t\t\t\t\tseed[ temp ] = !( results[ temp ] = elem );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t// Add elements to results, through postFinder if defined\r\n\t\t} else {\r\n\t\t\tmatcherOut = condense(\r\n\t\t\t\tmatcherOut === results ?\r\n\t\t\t\t\tmatcherOut.splice( preexisting, matcherOut.length ) :\r\n\t\t\t\t\tmatcherOut\r\n\t\t\t);\r\n\t\t\tif ( postFinder ) {\r\n\t\t\t\tpostFinder( null, results, matcherOut, xml );\r\n\t\t\t} else {\r\n\t\t\t\tpush.apply( results, matcherOut );\r\n\t\t\t}\r\n\t\t}\r\n\t} );\r\n}\r\n\r\nfunction matcherFromTokens( tokens ) {\r\n\tvar checkContext, matcher, j,\r\n\t\tlen = tokens.length,\r\n\t\tleadingRelative = Expr.relative[ tokens[ 0 ].type ],\r\n\t\timplicitRelative = leadingRelative || Expr.relative[ \" \" ],\r\n\t\ti = leadingRelative ? 1 : 0,\r\n\r\n\t\t// The foundational matcher ensures that elements are reachable from top-level context(s)\r\n\t\tmatchContext = addCombinator( function( elem ) {\r\n\t\t\treturn elem === checkContext;\r\n\t\t}, implicitRelative, true ),\r\n\t\tmatchAnyContext = addCombinator( function( elem ) {\r\n\t\t\treturn indexOf( checkContext, elem ) > -1;\r\n\t\t}, implicitRelative, true ),\r\n\t\tmatchers = [ function( elem, context, xml ) {\r\n\t\t\tvar ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (\r\n\t\t\t\t( checkContext = context ).nodeType ?\r\n\t\t\t\t\tmatchContext( elem, context, xml ) :\r\n\t\t\t\t\tmatchAnyContext( elem, context, xml ) );\r\n\r\n\t\t\t// Avoid hanging onto element (issue #299)\r\n\t\t\tcheckContext = null;\r\n\t\t\treturn ret;\r\n\t\t} ];\r\n\r\n\tfor ( ; i < len; i++ ) {\r\n\t\tif ( ( matcher = Expr.relative[ tokens[ i ].type ] ) ) {\r\n\t\t\tmatchers = [ addCombinator( elementMatcher( matchers ), matcher ) ];\r\n\t\t} else {\r\n\t\t\tmatcher = Expr.filter[ tokens[ i ].type ].apply( null, tokens[ i ].matches );\r\n\r\n\t\t\t// Return special upon seeing a positional matcher\r\n\t\t\tif ( matcher[ expando ] ) {\r\n\r\n\t\t\t\t// Find the next relative operator (if any) for proper handling\r\n\t\t\t\tj = ++i;\r\n\t\t\t\tfor ( ; j < len; j++ ) {\r\n\t\t\t\t\tif ( Expr.relative[ tokens[ j ].type ] ) {\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\treturn setMatcher(\r\n\t\t\t\t\ti > 1 && elementMatcher( matchers ),\r\n\t\t\t\t\ti > 1 && toSelector(\r\n\r\n\t\t\t\t\t// If the preceding token was a descendant combinator, insert an implicit any-element `*`\r\n\t\t\t\t\ttokens\r\n\t\t\t\t\t\t.slice( 0, i - 1 )\r\n\t\t\t\t\t\t.concat( { value: tokens[ i - 2 ].type === \" \" ? \"*\" : \"\" } )\r\n\t\t\t\t\t).replace( rtrim, \"$1\" ),\r\n\t\t\t\t\tmatcher,\r\n\t\t\t\t\ti < j && matcherFromTokens( tokens.slice( i, j ) ),\r\n\t\t\t\t\tj < len && matcherFromTokens( ( tokens = tokens.slice( j ) ) ),\r\n\t\t\t\t\tj < len && toSelector( tokens )\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t\tmatchers.push( matcher );\r\n\t\t}\r\n\t}\r\n\r\n\treturn elementMatcher( matchers );\r\n}\r\n\r\nfunction matcherFromGroupMatchers( elementMatchers, setMatchers ) {\r\n\tvar bySet = setMatchers.length > 0,\r\n\t\tbyElement = elementMatchers.length > 0,\r\n\t\tsuperMatcher = function( seed, context, xml, results, outermost ) {\r\n\t\t\tvar elem, j, matcher,\r\n\t\t\t\tmatchedCount = 0,\r\n\t\t\t\ti = \"0\",\r\n\t\t\t\tunmatched = seed && [],\r\n\t\t\t\tsetMatched = [],\r\n\t\t\t\tcontextBackup = outermostContext,\r\n\r\n\t\t\t\t// We must always have either seed elements or outermost context\r\n\t\t\t\telems = seed || byElement && Expr.find[ \"TAG\" ]( \"*\", outermost ),\r\n\r\n\t\t\t\t// Use integer dirruns iff this is the outermost matcher\r\n\t\t\t\tdirrunsUnique = ( dirruns += contextBackup == null ? 1 : Math.random() || 0.1 ),\r\n\t\t\t\tlen = elems.length;\r\n\r\n\t\t\tif ( outermost ) {\r\n\r\n\t\t\t\t// Support: IE 11+, Edge 17 - 18+\r\n\t\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t\t\t\t// two documents; shallow comparisons work.\r\n\t\t\t\t// eslint-disable-next-line eqeqeq\r\n\t\t\t\toutermostContext = context == document || context || outermost;\r\n\t\t\t}\r\n\r\n\t\t\t// Add elements passing elementMatchers directly to results\r\n\t\t\t// Support: IE<9, Safari\r\n\t\t\t// Tolerate NodeList properties (IE: \"length\"; Safari: <number>) matching elements by id\r\n\t\t\tfor ( ; i !== len && ( elem = elems[ i ] ) != null; i++ ) {\r\n\t\t\t\tif ( byElement && elem ) {\r\n\t\t\t\t\tj = 0;\r\n\r\n\t\t\t\t\t// Support: IE 11+, Edge 17 - 18+\r\n\t\t\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\r\n\t\t\t\t\t// two documents; shallow comparisons work.\r\n\t\t\t\t\t// eslint-disable-next-line eqeqeq\r\n\t\t\t\t\tif ( !context && elem.ownerDocument != document ) {\r\n\t\t\t\t\t\tsetDocument( elem );\r\n\t\t\t\t\t\txml = !documentIsHTML;\r\n\t\t\t\t\t}\r\n\t\t\t\t\twhile ( ( matcher = elementMatchers[ j++ ] ) ) {\r\n\t\t\t\t\t\tif ( matcher( elem, context || document, xml ) ) {\r\n\t\t\t\t\t\t\tresults.push( elem );\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif ( outermost ) {\r\n\t\t\t\t\t\tdirruns = dirrunsUnique;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Track unmatched elements for set filters\r\n\t\t\t\tif ( bySet ) {\r\n\r\n\t\t\t\t\t// They will have gone through all possible matchers\r\n\t\t\t\t\tif ( ( elem = !matcher && elem ) ) {\r\n\t\t\t\t\t\tmatchedCount--;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Lengthen the array for every element, matched or not\r\n\t\t\t\t\tif ( seed ) {\r\n\t\t\t\t\t\tunmatched.push( elem );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// `i` is now the count of elements visited above, and adding it to `matchedCount`\r\n\t\t\t// makes the latter nonnegative.\r\n\t\t\tmatchedCount += i;\r\n\r\n\t\t\t// Apply set filters to unmatched elements\r\n\t\t\t// NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount`\r\n\t\t\t// equals `i`), unless we didn't visit _any_ elements in the above loop because we have\r\n\t\t\t// no element matchers and no seed.\r\n\t\t\t// Incrementing an initially-string \"0\" `i` allows `i` to remain a string only in that\r\n\t\t\t// case, which will result in a \"00\" `matchedCount` that differs from `i` but is also\r\n\t\t\t// numerically zero.\r\n\t\t\tif ( bySet && i !== matchedCount ) {\r\n\t\t\t\tj = 0;\r\n\t\t\t\twhile ( ( matcher = setMatchers[ j++ ] ) ) {\r\n\t\t\t\t\tmatcher( unmatched, setMatched, context, xml );\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ( seed ) {\r\n\r\n\t\t\t\t\t// Reintegrate element matches to eliminate the need for sorting\r\n\t\t\t\t\tif ( matchedCount > 0 ) {\r\n\t\t\t\t\t\twhile ( i-- ) {\r\n\t\t\t\t\t\t\tif ( !( unmatched[ i ] || setMatched[ i ] ) ) {\r\n\t\t\t\t\t\t\t\tsetMatched[ i ] = pop.call( results );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Discard index placeholder values to get only actual matches\r\n\t\t\t\t\tsetMatched = condense( setMatched );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Add matches to results\r\n\t\t\t\tpush.apply( results, setMatched );\r\n\r\n\t\t\t\t// Seedless set matches succeeding multiple successful matchers stipulate sorting\r\n\t\t\t\tif ( outermost && !seed && setMatched.length > 0 &&\r\n\t\t\t\t\t( matchedCount + setMatchers.length ) > 1 ) {\r\n\r\n\t\t\t\t\tSizzle.uniqueSort( results );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Override manipulation of globals by nested matchers\r\n\t\t\tif ( outermost ) {\r\n\t\t\t\tdirruns = dirrunsUnique;\r\n\t\t\t\toutermostContext = contextBackup;\r\n\t\t\t}\r\n\r\n\t\t\treturn unmatched;\r\n\t\t};\r\n\r\n\treturn bySet ?\r\n\t\tmarkFunction( superMatcher ) :\r\n\t\tsuperMatcher;\r\n}\r\n\r\ncompile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {\r\n\tvar i,\r\n\t\tsetMatchers = [],\r\n\t\telementMatchers = [],\r\n\t\tcached = compilerCache[ selector + \" \" ];\r\n\r\n\tif ( !cached ) {\r\n\r\n\t\t// Generate a function of recursive functions that can be used to check each element\r\n\t\tif ( !match ) {\r\n\t\t\tmatch = tokenize( selector );\r\n\t\t}\r\n\t\ti = match.length;\r\n\t\twhile ( i-- ) {\r\n\t\t\tcached = matcherFromTokens( match[ i ] );\r\n\t\t\tif ( cached[ expando ] ) {\r\n\t\t\t\tsetMatchers.push( cached );\r\n\t\t\t} else {\r\n\t\t\t\telementMatchers.push( cached );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Cache the compiled function\r\n\t\tcached = compilerCache(\r\n\t\t\tselector,\r\n\t\t\tmatcherFromGroupMatchers( elementMatchers, setMatchers )\r\n\t\t);\r\n\r\n\t\t// Save selector and tokenization\r\n\t\tcached.selector = selector;\r\n\t}\r\n\treturn cached;\r\n};\r\n\r\n/**\r\n * A low-level selection function that works with Sizzle's compiled\r\n *  selector functions\r\n * @param {String|Function} selector A selector or a pre-compiled\r\n *  selector function built with Sizzle.compile\r\n * @param {Element} context\r\n * @param {Array} [results]\r\n * @param {Array} [seed] A set of elements to match against\r\n */\r\nselect = Sizzle.select = function( selector, context, results, seed ) {\r\n\tvar i, tokens, token, type, find,\r\n\t\tcompiled = typeof selector === \"function\" && selector,\r\n\t\tmatch = !seed && tokenize( ( selector = compiled.selector || selector ) );\r\n\r\n\tresults = results || [];\r\n\r\n\t// Try to minimize operations if there is only one selector in the list and no seed\r\n\t// (the latter of which guarantees us context)\r\n\tif ( match.length === 1 ) {\r\n\r\n\t\t// Reduce context if the leading compound selector is an ID\r\n\t\ttokens = match[ 0 ] = match[ 0 ].slice( 0 );\r\n\t\tif ( tokens.length > 2 && ( token = tokens[ 0 ] ).type === \"ID\" &&\r\n\t\t\tcontext.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[ 1 ].type ] ) {\r\n\r\n\t\t\tcontext = ( Expr.find[ \"ID\" ]( token.matches[ 0 ]\r\n\t\t\t\t.replace( runescape, funescape ), context ) || [] )[ 0 ];\r\n\t\t\tif ( !context ) {\r\n\t\t\t\treturn results;\r\n\r\n\t\t\t// Precompiled matchers will still verify ancestry, so step up a level\r\n\t\t\t} else if ( compiled ) {\r\n\t\t\t\tcontext = context.parentNode;\r\n\t\t\t}\r\n\r\n\t\t\tselector = selector.slice( tokens.shift().value.length );\r\n\t\t}\r\n\r\n\t\t// Fetch a seed set for right-to-left matching\r\n\t\ti = matchExpr[ \"needsContext\" ].test( selector ) ? 0 : tokens.length;\r\n\t\twhile ( i-- ) {\r\n\t\t\ttoken = tokens[ i ];\r\n\r\n\t\t\t// Abort if we hit a combinator\r\n\t\t\tif ( Expr.relative[ ( type = token.type ) ] ) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tif ( ( find = Expr.find[ type ] ) ) {\r\n\r\n\t\t\t\t// Search, expanding context for leading sibling combinators\r\n\t\t\t\tif ( ( seed = find(\r\n\t\t\t\t\ttoken.matches[ 0 ].replace( runescape, funescape ),\r\n\t\t\t\t\trsibling.test( tokens[ 0 ].type ) && testContext( context.parentNode ) ||\r\n\t\t\t\t\t\tcontext\r\n\t\t\t\t) ) ) {\r\n\r\n\t\t\t\t\t// If seed is empty or no tokens remain, we can return early\r\n\t\t\t\t\ttokens.splice( i, 1 );\r\n\t\t\t\t\tselector = seed.length && toSelector( tokens );\r\n\t\t\t\t\tif ( !selector ) {\r\n\t\t\t\t\t\tpush.apply( results, seed );\r\n\t\t\t\t\t\treturn results;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// Compile and execute a filtering function if one is not provided\r\n\t// Provide `match` to avoid retokenization if we modified the selector above\r\n\t( compiled || compile( selector, match ) )(\r\n\t\tseed,\r\n\t\tcontext,\r\n\t\t!documentIsHTML,\r\n\t\tresults,\r\n\t\t!context || rsibling.test( selector ) && testContext( context.parentNode ) || context\r\n\t);\r\n\treturn results;\r\n};\r\n\r\n// One-time assignments\r\n\r\n// Sort stability\r\nsupport.sortStable = expando.split( \"\" ).sort( sortOrder ).join( \"\" ) === expando;\r\n\r\n// Support: Chrome 14-35+\r\n// Always assume duplicates if they aren't passed to the comparison function\r\nsupport.detectDuplicates = !!hasDuplicate;\r\n\r\n// Initialize against the default document\r\nsetDocument();\r\n\r\n// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)\r\n// Detached nodes confoundingly follow *each other*\r\nsupport.sortDetached = assert( function( el ) {\r\n\r\n\t// Should return 1, but returns 4 (following)\r\n\treturn el.compareDocumentPosition( document.createElement( \"fieldset\" ) ) & 1;\r\n} );\r\n\r\n// Support: IE<8\r\n// Prevent attribute/property \"interpolation\"\r\n// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx\r\nif ( !assert( function( el ) {\r\n\tel.innerHTML = \"<a href='#'></a>\";\r\n\treturn el.firstChild.getAttribute( \"href\" ) === \"#\";\r\n} ) ) {\r\n\taddHandle( \"type|href|height|width\", function( elem, name, isXML ) {\r\n\t\tif ( !isXML ) {\r\n\t\t\treturn elem.getAttribute( name, name.toLowerCase() === \"type\" ? 1 : 2 );\r\n\t\t}\r\n\t} );\r\n}\r\n\r\n// Support: IE<9\r\n// Use defaultValue in place of getAttribute(\"value\")\r\nif ( !support.attributes || !assert( function( el ) {\r\n\tel.innerHTML = \"<input/>\";\r\n\tel.firstChild.setAttribute( \"value\", \"\" );\r\n\treturn el.firstChild.getAttribute( \"value\" ) === \"\";\r\n} ) ) {\r\n\taddHandle( \"value\", function( elem, _name, isXML ) {\r\n\t\tif ( !isXML && elem.nodeName.toLowerCase() === \"input\" ) {\r\n\t\t\treturn elem.defaultValue;\r\n\t\t}\r\n\t} );\r\n}\r\n\r\n// Support: IE<9\r\n// Use getAttributeNode to fetch booleans when getAttribute lies\r\nif ( !assert( function( el ) {\r\n\treturn el.getAttribute( \"disabled\" ) == null;\r\n} ) ) {\r\n\taddHandle( booleans, function( elem, name, isXML ) {\r\n\t\tvar val;\r\n\t\tif ( !isXML ) {\r\n\t\t\treturn elem[ name ] === true ? name.toLowerCase() :\r\n\t\t\t\t( val = elem.getAttributeNode( name ) ) && val.specified ?\r\n\t\t\t\t\tval.value :\r\n\t\t\t\t\tnull;\r\n\t\t}\r\n\t} );\r\n}\r\n\r\nreturn Sizzle;\r\n\r\n} )( window );\r\n\r\n\r\n\r\njQuery.find = Sizzle;\r\njQuery.expr = Sizzle.selectors;\r\n\r\n// Deprecated\r\njQuery.expr[ \":\" ] = jQuery.expr.pseudos;\r\njQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort;\r\njQuery.text = Sizzle.getText;\r\njQuery.isXMLDoc = Sizzle.isXML;\r\njQuery.contains = Sizzle.contains;\r\njQuery.escapeSelector = Sizzle.escape;\r\n\r\n\r\n\r\n\r\nvar dir = function( elem, dir, until ) {\r\n\tvar matched = [],\r\n\t\ttruncate = until !== undefined;\r\n\r\n\twhile ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) {\r\n\t\tif ( elem.nodeType === 1 ) {\r\n\t\t\tif ( truncate && jQuery( elem ).is( until ) ) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tmatched.push( elem );\r\n\t\t}\r\n\t}\r\n\treturn matched;\r\n};\r\n\r\n\r\nvar siblings = function( n, elem ) {\r\n\tvar matched = [];\r\n\r\n\tfor ( ; n; n = n.nextSibling ) {\r\n\t\tif ( n.nodeType === 1 && n !== elem ) {\r\n\t\t\tmatched.push( n );\r\n\t\t}\r\n\t}\r\n\r\n\treturn matched;\r\n};\r\n\r\n\r\nvar rneedsContext = jQuery.expr.match.needsContext;\r\n\r\n\r\n\r\nfunction nodeName( elem, name ) {\r\n\r\n  return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();\r\n\r\n};\r\nvar rsingleTag = ( /^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i );\r\n\r\n\r\n\r\n// Implement the identical functionality for filter and not\r\nfunction winnow( elements, qualifier, not ) {\r\n\tif ( isFunction( qualifier ) ) {\r\n\t\treturn jQuery.grep( elements, function( elem, i ) {\r\n\t\t\treturn !!qualifier.call( elem, i, elem ) !== not;\r\n\t\t} );\r\n\t}\r\n\r\n\t// Single element\r\n\tif ( qualifier.nodeType ) {\r\n\t\treturn jQuery.grep( elements, function( elem ) {\r\n\t\t\treturn ( elem === qualifier ) !== not;\r\n\t\t} );\r\n\t}\r\n\r\n\t// Arraylike of elements (jQuery, arguments, Array)\r\n\tif ( typeof qualifier !== \"string\" ) {\r\n\t\treturn jQuery.grep( elements, function( elem ) {\r\n\t\t\treturn ( indexOf.call( qualifier, elem ) > -1 ) !== not;\r\n\t\t} );\r\n\t}\r\n\r\n\t// Filtered directly for both simple and complex selectors\r\n\treturn jQuery.filter( qualifier, elements, not );\r\n}\r\n\r\njQuery.filter = function( expr, elems, not ) {\r\n\tvar elem = elems[ 0 ];\r\n\r\n\tif ( not ) {\r\n\t\texpr = \":not(\" + expr + \")\";\r\n\t}\r\n\r\n\tif ( elems.length === 1 && elem.nodeType === 1 ) {\r\n\t\treturn jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [];\r\n\t}\r\n\r\n\treturn jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {\r\n\t\treturn elem.nodeType === 1;\r\n\t} ) );\r\n};\r\n\r\njQuery.fn.extend( {\r\n\tfind: function( selector ) {\r\n\t\tvar i, ret,\r\n\t\t\tlen = this.length,\r\n\t\t\tself = this;\r\n\r\n\t\tif ( typeof selector !== \"string\" ) {\r\n\t\t\treturn this.pushStack( jQuery( selector ).filter( function() {\r\n\t\t\t\tfor ( i = 0; i < len; i++ ) {\r\n\t\t\t\t\tif ( jQuery.contains( self[ i ], this ) ) {\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} ) );\r\n\t\t}\r\n\r\n\t\tret = this.pushStack( [] );\r\n\r\n\t\tfor ( i = 0; i < len; i++ ) {\r\n\t\t\tjQuery.find( selector, self[ i ], ret );\r\n\t\t}\r\n\r\n\t\treturn len > 1 ? jQuery.uniqueSort( ret ) : ret;\r\n\t},\r\n\tfilter: function( selector ) {\r\n\t\treturn this.pushStack( winnow( this, selector || [], false ) );\r\n\t},\r\n\tnot: function( selector ) {\r\n\t\treturn this.pushStack( winnow( this, selector || [], true ) );\r\n\t},\r\n\tis: function( selector ) {\r\n\t\treturn !!winnow(\r\n\t\t\tthis,\r\n\r\n\t\t\t// If this is a positional/relative selector, check membership in the returned set\r\n\t\t\t// so $(\"p:first\").is(\"p:last\") won't return true for a doc with two \"p\".\r\n\t\t\ttypeof selector === \"string\" && rneedsContext.test( selector ) ?\r\n\t\t\t\tjQuery( selector ) :\r\n\t\t\t\tselector || [],\r\n\t\t\tfalse\r\n\t\t).length;\r\n\t}\r\n} );\r\n\r\n\r\n// Initialize a jQuery object\r\n\r\n\r\n// A central reference to the root jQuery(document)\r\nvar rootjQuery,\r\n\r\n\t// A simple way to check for HTML strings\r\n\t// Prioritize #id over <tag> to avoid XSS via location.hash (#9521)\r\n\t// Strict HTML recognition (#11290: must start with <)\r\n\t// Shortcut simple #id case for speed\r\n\trquickExpr = /^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/,\r\n\r\n\tinit = jQuery.fn.init = function( selector, context, root ) {\r\n\t\tvar match, elem;\r\n\r\n\t\t// HANDLE: $(\"\"), $(null), $(undefined), $(false)\r\n\t\tif ( !selector ) {\r\n\t\t\treturn this;\r\n\t\t}\r\n\r\n\t\t// Method init() accepts an alternate rootjQuery\r\n\t\t// so migrate can support jQuery.sub (gh-2101)\r\n\t\troot = root || rootjQuery;\r\n\r\n\t\t// Handle HTML strings\r\n\t\tif ( typeof selector === \"string\" ) {\r\n\t\t\tif ( selector[ 0 ] === \"<\" &&\r\n\t\t\t\tselector[ selector.length - 1 ] === \">\" &&\r\n\t\t\t\tselector.length >= 3 ) {\r\n\r\n\t\t\t\t// Assume that strings that start and end with <> are HTML and skip the regex check\r\n\t\t\t\tmatch = [ null, selector, null ];\r\n\r\n\t\t\t} else {\r\n\t\t\t\tmatch = rquickExpr.exec( selector );\r\n\t\t\t}\r\n\r\n\t\t\t// Match html or make sure no context is specified for #id\r\n\t\t\tif ( match && ( match[ 1 ] || !context ) ) {\r\n\r\n\t\t\t\t// HANDLE: $(html) -> $(array)\r\n\t\t\t\tif ( match[ 1 ] ) {\r\n\t\t\t\t\tcontext = context instanceof jQuery ? context[ 0 ] : context;\r\n\r\n\t\t\t\t\t// Option to run scripts is true for back-compat\r\n\t\t\t\t\t// Intentionally let the error be thrown if parseHTML is not present\r\n\t\t\t\t\tjQuery.merge( this, jQuery.parseHTML(\r\n\t\t\t\t\t\tmatch[ 1 ],\r\n\t\t\t\t\t\tcontext && context.nodeType ? context.ownerDocument || context : document,\r\n\t\t\t\t\t\ttrue\r\n\t\t\t\t\t) );\r\n\r\n\t\t\t\t\t// HANDLE: $(html, props)\r\n\t\t\t\t\tif ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) {\r\n\t\t\t\t\t\tfor ( match in context ) {\r\n\r\n\t\t\t\t\t\t\t// Properties of context are called as methods if possible\r\n\t\t\t\t\t\t\tif ( isFunction( this[ match ] ) ) {\r\n\t\t\t\t\t\t\t\tthis[ match ]( context[ match ] );\r\n\r\n\t\t\t\t\t\t\t// ...and otherwise set as attributes\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tthis.attr( match, context[ match ] );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn this;\r\n\r\n\t\t\t\t// HANDLE: $(#id)\r\n\t\t\t\t} else {\r\n\t\t\t\t\telem = document.getElementById( match[ 2 ] );\r\n\r\n\t\t\t\t\tif ( elem ) {\r\n\r\n\t\t\t\t\t\t// Inject the element directly into the jQuery object\r\n\t\t\t\t\t\tthis[ 0 ] = elem;\r\n\t\t\t\t\t\tthis.length = 1;\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn this;\r\n\t\t\t\t}\r\n\r\n\t\t\t// HANDLE: $(expr, $(...))\r\n\t\t\t} else if ( !context || context.jquery ) {\r\n\t\t\t\treturn ( context || root ).find( selector );\r\n\r\n\t\t\t// HANDLE: $(expr, context)\r\n\t\t\t// (which is just equivalent to: $(context).find(expr)\r\n\t\t\t} else {\r\n\t\t\t\treturn this.constructor( context ).find( selector );\r\n\t\t\t}\r\n\r\n\t\t// HANDLE: $(DOMElement)\r\n\t\t} else if ( selector.nodeType ) {\r\n\t\t\tthis[ 0 ] = selector;\r\n\t\t\tthis.length = 1;\r\n\t\t\treturn this;\r\n\r\n\t\t// HANDLE: $(function)\r\n\t\t// Shortcut for document ready\r\n\t\t} else if ( isFunction( selector ) ) {\r\n\t\t\treturn root.ready !== undefined ?\r\n\t\t\t\troot.ready( selector ) :\r\n\r\n\t\t\t\t// Execute immediately if ready is not present\r\n\t\t\t\tselector( jQuery );\r\n\t\t}\r\n\r\n\t\treturn jQuery.makeArray( selector, this );\r\n\t};\r\n\r\n// Give the init function the jQuery prototype for later instantiation\r\ninit.prototype = jQuery.fn;\r\n\r\n// Initialize central reference\r\nrootjQuery = jQuery( document );\r\n\r\n\r\nvar rparentsprev = /^(?:parents|prev(?:Until|All))/,\r\n\r\n\t// Methods guaranteed to produce a unique set when starting from a unique set\r\n\tguaranteedUnique = {\r\n\t\tchildren: true,\r\n\t\tcontents: true,\r\n\t\tnext: true,\r\n\t\tprev: true\r\n\t};\r\n\r\njQuery.fn.extend( {\r\n\thas: function( target ) {\r\n\t\tvar targets = jQuery( target, this ),\r\n\t\t\tl = targets.length;\r\n\r\n\t\treturn this.filter( function() {\r\n\t\t\tvar i = 0;\r\n\t\t\tfor ( ; i < l; i++ ) {\r\n\t\t\t\tif ( jQuery.contains( this, targets[ i ] ) ) {\r\n\t\t\t\t\treturn true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} );\r\n\t},\r\n\r\n\tclosest: function( selectors, context ) {\r\n\t\tvar cur,\r\n\t\t\ti = 0,\r\n\t\t\tl = this.length,\r\n\t\t\tmatched = [],\r\n\t\t\ttargets = typeof selectors !== \"string\" && jQuery( selectors );\r\n\r\n\t\t// Positional selectors never match, since there's no _selection_ context\r\n\t\tif ( !rneedsContext.test( selectors ) ) {\r\n\t\t\tfor ( ; i < l; i++ ) {\r\n\t\t\t\tfor ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) {\r\n\r\n\t\t\t\t\t// Always skip document fragments\r\n\t\t\t\t\tif ( cur.nodeType < 11 && ( targets ?\r\n\t\t\t\t\t\ttargets.index( cur ) > -1 :\r\n\r\n\t\t\t\t\t\t// Don't pass non-elements to Sizzle\r\n\t\t\t\t\t\tcur.nodeType === 1 &&\r\n\t\t\t\t\t\t\tjQuery.find.matchesSelector( cur, selectors ) ) ) {\r\n\r\n\t\t\t\t\t\tmatched.push( cur );\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched );\r\n\t},\r\n\r\n\t// Determine the position of an element within the set\r\n\tindex: function( elem ) {\r\n\r\n\t\t// No argument, return index in parent\r\n\t\tif ( !elem ) {\r\n\t\t\treturn ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;\r\n\t\t}\r\n\r\n\t\t// Index in selector\r\n\t\tif ( typeof elem === \"string\" ) {\r\n\t\t\treturn indexOf.call( jQuery( elem ), this[ 0 ] );\r\n\t\t}\r\n\r\n\t\t// Locate the position of the desired element\r\n\t\treturn indexOf.call( this,\r\n\r\n\t\t\t// If it receives a jQuery object, the first element is used\r\n\t\t\telem.jquery ? elem[ 0 ] : elem\r\n\t\t);\r\n\t},\r\n\r\n\tadd: function( selector, context ) {\r\n\t\treturn this.pushStack(\r\n\t\t\tjQuery.uniqueSort(\r\n\t\t\t\tjQuery.merge( this.get(), jQuery( selector, context ) )\r\n\t\t\t)\r\n\t\t);\r\n\t},\r\n\r\n\taddBack: function( selector ) {\r\n\t\treturn this.add( selector == null ?\r\n\t\t\tthis.prevObject : this.prevObject.filter( selector )\r\n\t\t);\r\n\t}\r\n} );\r\n\r\nfunction sibling( cur, dir ) {\r\n\twhile ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {}\r\n\treturn cur;\r\n}\r\n\r\njQuery.each( {\r\n\tparent: function( elem ) {\r\n\t\tvar parent = elem.parentNode;\r\n\t\treturn parent && parent.nodeType !== 11 ? parent : null;\r\n\t},\r\n\tparents: function( elem ) {\r\n\t\treturn dir( elem, \"parentNode\" );\r\n\t},\r\n\tparentsUntil: function( elem, _i, until ) {\r\n\t\treturn dir( elem, \"parentNode\", until );\r\n\t},\r\n\tnext: function( elem ) {\r\n\t\treturn sibling( elem, \"nextSibling\" );\r\n\t},\r\n\tprev: function( elem ) {\r\n\t\treturn sibling( elem, \"previousSibling\" );\r\n\t},\r\n\tnextAll: function( elem ) {\r\n\t\treturn dir( elem, \"nextSibling\" );\r\n\t},\r\n\tprevAll: function( elem ) {\r\n\t\treturn dir( elem, \"previousSibling\" );\r\n\t},\r\n\tnextUntil: function( elem, _i, until ) {\r\n\t\treturn dir( elem, \"nextSibling\", until );\r\n\t},\r\n\tprevUntil: function( elem, _i, until ) {\r\n\t\treturn dir( elem, \"previousSibling\", until );\r\n\t},\r\n\tsiblings: function( elem ) {\r\n\t\treturn siblings( ( elem.parentNode || {} ).firstChild, elem );\r\n\t},\r\n\tchildren: function( elem ) {\r\n\t\treturn siblings( elem.firstChild );\r\n\t},\r\n\tcontents: function( elem ) {\r\n\t\tif ( elem.contentDocument != null &&\r\n\r\n\t\t\t// Support: IE 11+\r\n\t\t\t// <object> elements with no `data` attribute has an object\r\n\t\t\t// `contentDocument` with a `null` prototype.\r\n\t\t\tgetProto( elem.contentDocument ) ) {\r\n\r\n\t\t\treturn elem.contentDocument;\r\n\t\t}\r\n\r\n\t\t// Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only\r\n\t\t// Treat the template element as a regular one in browsers that\r\n\t\t// don't support it.\r\n\t\tif ( nodeName( elem, \"template\" ) ) {\r\n\t\t\telem = elem.content || elem;\r\n\t\t}\r\n\r\n\t\treturn jQuery.merge( [], elem.childNodes );\r\n\t}\r\n}, function( name, fn ) {\r\n\tjQuery.fn[ name ] = function( until, selector ) {\r\n\t\tvar matched = jQuery.map( this, fn, until );\r\n\r\n\t\tif ( name.slice( -5 ) !== \"Until\" ) {\r\n\t\t\tselector = until;\r\n\t\t}\r\n\r\n\t\tif ( selector && typeof selector === \"string\" ) {\r\n\t\t\tmatched = jQuery.filter( selector, matched );\r\n\t\t}\r\n\r\n\t\tif ( this.length > 1 ) {\r\n\r\n\t\t\t// Remove duplicates\r\n\t\t\tif ( !guaranteedUnique[ name ] ) {\r\n\t\t\t\tjQuery.uniqueSort( matched );\r\n\t\t\t}\r\n\r\n\t\t\t// Reverse order for parents* and prev-derivatives\r\n\t\t\tif ( rparentsprev.test( name ) ) {\r\n\t\t\t\tmatched.reverse();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn this.pushStack( matched );\r\n\t};\r\n} );\r\nvar rnothtmlwhite = ( /[^\\x20\\t\\r\\n\\f]+/g );\r\n\r\n\r\n\r\n// Convert String-formatted options into Object-formatted ones\r\nfunction createOptions( options ) {\r\n\tvar object = {};\r\n\tjQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) {\r\n\t\tobject[ flag ] = true;\r\n\t} );\r\n\treturn object;\r\n}\r\n\r\n/*\r\n * Create a callback list using the following parameters:\r\n *\r\n *\toptions: an optional list of space-separated options that will change how\r\n *\t\t\tthe callback list behaves or a more traditional option object\r\n *\r\n * By default a callback list will act like an event callback list and can be\r\n * \"fired\" multiple times.\r\n *\r\n * Possible options:\r\n *\r\n *\tonce:\t\t\twill ensure the callback list can only be fired once (like a Deferred)\r\n *\r\n *\tmemory:\t\t\twill keep track of previous values and will call any callback added\r\n *\t\t\t\t\tafter the list has been fired right away with the latest \"memorized\"\r\n *\t\t\t\t\tvalues (like a Deferred)\r\n *\r\n *\tunique:\t\t\twill ensure a callback can only be added once (no duplicate in the list)\r\n *\r\n *\tstopOnFalse:\tinterrupt callings when a callback returns false\r\n *\r\n */\r\njQuery.Callbacks = function( options ) {\r\n\r\n\t// Convert options from String-formatted to Object-formatted if needed\r\n\t// (we check in cache first)\r\n\toptions = typeof options === \"string\" ?\r\n\t\tcreateOptions( options ) :\r\n\t\tjQuery.extend( {}, options );\r\n\r\n\tvar // Flag to know if list is currently firing\r\n\t\tfiring,\r\n\r\n\t\t// Last fire value for non-forgettable lists\r\n\t\tmemory,\r\n\r\n\t\t// Flag to know if list was already fired\r\n\t\tfired,\r\n\r\n\t\t// Flag to prevent firing\r\n\t\tlocked,\r\n\r\n\t\t// Actual callback list\r\n\t\tlist = [],\r\n\r\n\t\t// Queue of execution data for repeatable lists\r\n\t\tqueue = [],\r\n\r\n\t\t// Index of currently firing callback (modified by add/remove as needed)\r\n\t\tfiringIndex = -1,\r\n\r\n\t\t// Fire callbacks\r\n\t\tfire = function() {\r\n\r\n\t\t\t// Enforce single-firing\r\n\t\t\tlocked = locked || options.once;\r\n\r\n\t\t\t// Execute callbacks for all pending executions,\r\n\t\t\t// respecting firingIndex overrides and runtime changes\r\n\t\t\tfired = firing = true;\r\n\t\t\tfor ( ; queue.length; firingIndex = -1 ) {\r\n\t\t\t\tmemory = queue.shift();\r\n\t\t\t\twhile ( ++firingIndex < list.length ) {\r\n\r\n\t\t\t\t\t// Run callback and check for early termination\r\n\t\t\t\t\tif ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false &&\r\n\t\t\t\t\t\toptions.stopOnFalse ) {\r\n\r\n\t\t\t\t\t\t// Jump to end and forget the data so .add doesn't re-fire\r\n\t\t\t\t\t\tfiringIndex = list.length;\r\n\t\t\t\t\t\tmemory = false;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Forget the data if we're done with it\r\n\t\t\tif ( !options.memory ) {\r\n\t\t\t\tmemory = false;\r\n\t\t\t}\r\n\r\n\t\t\tfiring = false;\r\n\r\n\t\t\t// Clean up if we're done firing for good\r\n\t\t\tif ( locked ) {\r\n\r\n\t\t\t\t// Keep an empty list if we have data for future add calls\r\n\t\t\t\tif ( memory ) {\r\n\t\t\t\t\tlist = [];\r\n\r\n\t\t\t\t// Otherwise, this object is spent\r\n\t\t\t\t} else {\r\n\t\t\t\t\tlist = \"\";\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t// Actual Callbacks object\r\n\t\tself = {\r\n\r\n\t\t\t// Add a callback or a collection of callbacks to the list\r\n\t\t\tadd: function() {\r\n\t\t\t\tif ( list ) {\r\n\r\n\t\t\t\t\t// If we have memory from a past run, we should fire after adding\r\n\t\t\t\t\tif ( memory && !firing ) {\r\n\t\t\t\t\t\tfiringIndex = list.length - 1;\r\n\t\t\t\t\t\tqueue.push( memory );\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t( function add( args ) {\r\n\t\t\t\t\t\tjQuery.each( args, function( _, arg ) {\r\n\t\t\t\t\t\t\tif ( isFunction( arg ) ) {\r\n\t\t\t\t\t\t\t\tif ( !options.unique || !self.has( arg ) ) {\r\n\t\t\t\t\t\t\t\t\tlist.push( arg );\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t} else if ( arg && arg.length && toType( arg ) !== \"string\" ) {\r\n\r\n\t\t\t\t\t\t\t\t// Inspect recursively\r\n\t\t\t\t\t\t\t\tadd( arg );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} );\r\n\t\t\t\t\t} )( arguments );\r\n\r\n\t\t\t\t\tif ( memory && !firing ) {\r\n\t\t\t\t\t\tfire();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\treturn this;\r\n\t\t\t},\r\n\r\n\t\t\t// Remove a callback from the list\r\n\t\t\tremove: function() {\r\n\t\t\t\tjQuery.each( arguments, function( _, arg ) {\r\n\t\t\t\t\tvar index;\r\n\t\t\t\t\twhile ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {\r\n\t\t\t\t\t\tlist.splice( index, 1 );\r\n\r\n\t\t\t\t\t\t// Handle firing indexes\r\n\t\t\t\t\t\tif ( index <= firingIndex ) {\r\n\t\t\t\t\t\t\tfiringIndex--;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} );\r\n\t\t\t\treturn this;\r\n\t\t\t},\r\n\r\n\t\t\t// Check if a given callback is in the list.\r\n\t\t\t// If no argument is given, return whether or not list has callbacks attached.\r\n\t\t\thas: function( fn ) {\r\n\t\t\t\treturn fn ?\r\n\t\t\t\t\tjQuery.inArray( fn, list ) > -1 :\r\n\t\t\t\t\tlist.length > 0;\r\n\t\t\t},\r\n\r\n\t\t\t// Remove all callbacks from the list\r\n\t\t\tempty: function() {\r\n\t\t\t\tif ( list ) {\r\n\t\t\t\t\tlist = [];\r\n\t\t\t\t}\r\n\t\t\t\treturn this;\r\n\t\t\t},\r\n\r\n\t\t\t// Disable .fire and .add\r\n\t\t\t// Abort any current/pending executions\r\n\t\t\t// Clear all callbacks and values\r\n\t\t\tdisable: function() {\r\n\t\t\t\tlocked = queue = [];\r\n\t\t\t\tlist = memory = \"\";\r\n\t\t\t\treturn this;\r\n\t\t\t},\r\n\t\t\tdisabled: function() {\r\n\t\t\t\treturn !list;\r\n\t\t\t},\r\n\r\n\t\t\t// Disable .fire\r\n\t\t\t// Also disable .add unless we have memory (since it would have no effect)\r\n\t\t\t// Abort any pending executions\r\n\t\t\tlock: function() {\r\n\t\t\t\tlocked = queue = [];\r\n\t\t\t\tif ( !memory && !firing ) {\r\n\t\t\t\t\tlist = memory = \"\";\r\n\t\t\t\t}\r\n\t\t\t\treturn this;\r\n\t\t\t},\r\n\t\t\tlocked: function() {\r\n\t\t\t\treturn !!locked;\r\n\t\t\t},\r\n\r\n\t\t\t// Call all callbacks with the given context and arguments\r\n\t\t\tfireWith: function( context, args ) {\r\n\t\t\t\tif ( !locked ) {\r\n\t\t\t\t\targs = args || [];\r\n\t\t\t\t\targs = [ context, args.slice ? args.slice() : args ];\r\n\t\t\t\t\tqueue.push( args );\r\n\t\t\t\t\tif ( !firing ) {\r\n\t\t\t\t\t\tfire();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\treturn this;\r\n\t\t\t},\r\n\r\n\t\t\t// Call all the callbacks with the given arguments\r\n\t\t\tfire: function() {\r\n\t\t\t\tself.fireWith( this, arguments );\r\n\t\t\t\treturn this;\r\n\t\t\t},\r\n\r\n\t\t\t// To know if the callbacks have already been called at least once\r\n\t\t\tfired: function() {\r\n\t\t\t\treturn !!fired;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\treturn self;\r\n};\r\n\r\n\r\nfunction Identity( v ) {\r\n\treturn v;\r\n}\r\nfunction Thrower( ex ) {\r\n\tthrow ex;\r\n}\r\n\r\nfunction adoptValue( value, resolve, reject, noValue ) {\r\n\tvar method;\r\n\r\n\ttry {\r\n\r\n\t\t// Check for promise aspect first to privilege synchronous behavior\r\n\t\tif ( value && isFunction( ( method = value.promise ) ) ) {\r\n\t\t\tmethod.call( value ).done( resolve ).fail( reject );\r\n\r\n\t\t// Other thenables\r\n\t\t} else if ( value && isFunction( ( method = value.then ) ) ) {\r\n\t\t\tmethod.call( value, resolve, reject );\r\n\r\n\t\t// Other non-thenables\r\n\t\t} else {\r\n\r\n\t\t\t// Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer:\r\n\t\t\t// * false: [ value ].slice( 0 ) => resolve( value )\r\n\t\t\t// * true: [ value ].slice( 1 ) => resolve()\r\n\t\t\tresolve.apply( undefined, [ value ].slice( noValue ) );\r\n\t\t}\r\n\r\n\t// For Promises/A+, convert exceptions into rejections\r\n\t// Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in\r\n\t// Deferred#then to conditionally suppress rejection.\r\n\t} catch ( value ) {\r\n\r\n\t\t// Support: Android 4.0 only\r\n\t\t// Strict mode functions invoked without .call/.apply get global-object context\r\n\t\treject.apply( undefined, [ value ] );\r\n\t}\r\n}\r\n\r\njQuery.extend( {\r\n\r\n\tDeferred: function( func ) {\r\n\t\tvar tuples = [\r\n\r\n\t\t\t\t// action, add listener, callbacks,\r\n\t\t\t\t// ... .then handlers, argument index, [final state]\r\n\t\t\t\t[ \"notify\", \"progress\", jQuery.Callbacks( \"memory\" ),\r\n\t\t\t\t\tjQuery.Callbacks( \"memory\" ), 2 ],\r\n\t\t\t\t[ \"resolve\", \"done\", jQuery.Callbacks( \"once memory\" ),\r\n\t\t\t\t\tjQuery.Callbacks( \"once memory\" ), 0, \"resolved\" ],\r\n\t\t\t\t[ \"reject\", \"fail\", jQuery.Callbacks( \"once memory\" ),\r\n\t\t\t\t\tjQuery.Callbacks( \"once memory\" ), 1, \"rejected\" ]\r\n\t\t\t],\r\n\t\t\tstate = \"pending\",\r\n\t\t\tpromise = {\r\n\t\t\t\tstate: function() {\r\n\t\t\t\t\treturn state;\r\n\t\t\t\t},\r\n\t\t\t\talways: function() {\r\n\t\t\t\t\tdeferred.done( arguments ).fail( arguments );\r\n\t\t\t\t\treturn this;\r\n\t\t\t\t},\r\n\t\t\t\t\"catch\": function( fn ) {\r\n\t\t\t\t\treturn promise.then( null, fn );\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// Keep pipe for back-compat\r\n\t\t\t\tpipe: function( /* fnDone, fnFail, fnProgress */ ) {\r\n\t\t\t\t\tvar fns = arguments;\r\n\r\n\t\t\t\t\treturn jQuery.Deferred( function( newDefer ) {\r\n\t\t\t\t\t\tjQuery.each( tuples, function( _i, tuple ) {\r\n\r\n\t\t\t\t\t\t\t// Map tuples (progress, done, fail) to arguments (done, fail, progress)\r\n\t\t\t\t\t\t\tvar fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ];\r\n\r\n\t\t\t\t\t\t\t// deferred.progress(function() { bind to newDefer or newDefer.notify })\r\n\t\t\t\t\t\t\t// deferred.done(function() { bind to newDefer or newDefer.resolve })\r\n\t\t\t\t\t\t\t// deferred.fail(function() { bind to newDefer or newDefer.reject })\r\n\t\t\t\t\t\t\tdeferred[ tuple[ 1 ] ]( function() {\r\n\t\t\t\t\t\t\t\tvar returned = fn && fn.apply( this, arguments );\r\n\t\t\t\t\t\t\t\tif ( returned && isFunction( returned.promise ) ) {\r\n\t\t\t\t\t\t\t\t\treturned.promise()\r\n\t\t\t\t\t\t\t\t\t\t.progress( newDefer.notify )\r\n\t\t\t\t\t\t\t\t\t\t.done( newDefer.resolve )\r\n\t\t\t\t\t\t\t\t\t\t.fail( newDefer.reject );\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tnewDefer[ tuple[ 0 ] + \"With\" ](\r\n\t\t\t\t\t\t\t\t\t\tthis,\r\n\t\t\t\t\t\t\t\t\t\tfn ? [ returned ] : arguments\r\n\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t} );\r\n\t\t\t\t\t\t} );\r\n\t\t\t\t\t\tfns = null;\r\n\t\t\t\t\t} ).promise();\r\n\t\t\t\t},\r\n\t\t\t\tthen: function( onFulfilled, onRejected, onProgress ) {\r\n\t\t\t\t\tvar maxDepth = 0;\r\n\t\t\t\t\tfunction resolve( depth, deferred, handler, special ) {\r\n\t\t\t\t\t\treturn function() {\r\n\t\t\t\t\t\t\tvar that = this,\r\n\t\t\t\t\t\t\t\targs = arguments,\r\n\t\t\t\t\t\t\t\tmightThrow = function() {\r\n\t\t\t\t\t\t\t\t\tvar returned, then;\r\n\r\n\t\t\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.3.3.3\r\n\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-59\r\n\t\t\t\t\t\t\t\t\t// Ignore double-resolution attempts\r\n\t\t\t\t\t\t\t\t\tif ( depth < maxDepth ) {\r\n\t\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\treturned = handler.apply( that, args );\r\n\r\n\t\t\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.1\r\n\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-48\r\n\t\t\t\t\t\t\t\t\tif ( returned === deferred.promise() ) {\r\n\t\t\t\t\t\t\t\t\t\tthrow new TypeError( \"Thenable self-resolution\" );\r\n\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t// Support: Promises/A+ sections 2.3.3.1, 3.5\r\n\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-54\r\n\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-75\r\n\t\t\t\t\t\t\t\t\t// Retrieve `then` only once\r\n\t\t\t\t\t\t\t\t\tthen = returned &&\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.4\r\n\t\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-64\r\n\t\t\t\t\t\t\t\t\t\t// Only check objects and functions for thenability\r\n\t\t\t\t\t\t\t\t\t\t( typeof returned === \"object\" ||\r\n\t\t\t\t\t\t\t\t\t\t\ttypeof returned === \"function\" ) &&\r\n\t\t\t\t\t\t\t\t\t\treturned.then;\r\n\r\n\t\t\t\t\t\t\t\t\t// Handle a returned thenable\r\n\t\t\t\t\t\t\t\t\tif ( isFunction( then ) ) {\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Special processors (notify) just wait for resolution\r\n\t\t\t\t\t\t\t\t\t\tif ( special ) {\r\n\t\t\t\t\t\t\t\t\t\t\tthen.call(\r\n\t\t\t\t\t\t\t\t\t\t\t\treturned,\r\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Identity, special ),\r\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Thrower, special )\r\n\t\t\t\t\t\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Normal processors (resolve) also hook into progress\r\n\t\t\t\t\t\t\t\t\t\t} else {\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t// ...and disregard older resolution values\r\n\t\t\t\t\t\t\t\t\t\t\tmaxDepth++;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tthen.call(\r\n\t\t\t\t\t\t\t\t\t\t\t\treturned,\r\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Identity, special ),\r\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Thrower, special ),\r\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Identity,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tdeferred.notifyWith )\r\n\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t// Handle all other returned values\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Only substitute handlers pass on context\r\n\t\t\t\t\t\t\t\t\t\t// and multiple values (non-spec behavior)\r\n\t\t\t\t\t\t\t\t\t\tif ( handler !== Identity ) {\r\n\t\t\t\t\t\t\t\t\t\t\tthat = undefined;\r\n\t\t\t\t\t\t\t\t\t\t\targs = [ returned ];\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Process the value(s)\r\n\t\t\t\t\t\t\t\t\t\t// Default process is resolve\r\n\t\t\t\t\t\t\t\t\t\t( special || deferred.resolveWith )( that, args );\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t},\r\n\r\n\t\t\t\t\t\t\t\t// Only normal processors (resolve) catch and reject exceptions\r\n\t\t\t\t\t\t\t\tprocess = special ?\r\n\t\t\t\t\t\t\t\t\tmightThrow :\r\n\t\t\t\t\t\t\t\t\tfunction() {\r\n\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\tmightThrow();\r\n\t\t\t\t\t\t\t\t\t\t} catch ( e ) {\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tif ( jQuery.Deferred.exceptionHook ) {\r\n\t\t\t\t\t\t\t\t\t\t\t\tjQuery.Deferred.exceptionHook( e,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tprocess.stackTrace );\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.3.3.4.1\r\n\t\t\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-61\r\n\t\t\t\t\t\t\t\t\t\t\t// Ignore post-resolution exceptions\r\n\t\t\t\t\t\t\t\t\t\t\tif ( depth + 1 >= maxDepth ) {\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t// Only substitute handlers pass on context\r\n\t\t\t\t\t\t\t\t\t\t\t\t// and multiple values (non-spec behavior)\r\n\t\t\t\t\t\t\t\t\t\t\t\tif ( handler !== Thrower ) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthat = undefined;\r\n\t\t\t\t\t\t\t\t\t\t\t\t\targs = [ e ];\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\tdeferred.rejectWith( that, args );\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.3.3.1\r\n\t\t\t\t\t\t\t// https://promisesaplus.com/#point-57\r\n\t\t\t\t\t\t\t// Re-resolve promises immediately to dodge false rejection from\r\n\t\t\t\t\t\t\t// subsequent errors\r\n\t\t\t\t\t\t\tif ( depth ) {\r\n\t\t\t\t\t\t\t\tprocess();\r\n\t\t\t\t\t\t\t} else {\r\n\r\n\t\t\t\t\t\t\t\t// Call an optional hook to record the stack, in case of exception\r\n\t\t\t\t\t\t\t\t// since it's otherwise lost when execution goes async\r\n\t\t\t\t\t\t\t\tif ( jQuery.Deferred.getStackHook ) {\r\n\t\t\t\t\t\t\t\t\tprocess.stackTrace = jQuery.Deferred.getStackHook();\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\twindow.setTimeout( process );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn jQuery.Deferred( function( newDefer ) {\r\n\r\n\t\t\t\t\t\t// progress_handlers.add( ... )\r\n\t\t\t\t\t\ttuples[ 0 ][ 3 ].add(\r\n\t\t\t\t\t\t\tresolve(\r\n\t\t\t\t\t\t\t\t0,\r\n\t\t\t\t\t\t\t\tnewDefer,\r\n\t\t\t\t\t\t\t\tisFunction( onProgress ) ?\r\n\t\t\t\t\t\t\t\t\tonProgress :\r\n\t\t\t\t\t\t\t\t\tIdentity,\r\n\t\t\t\t\t\t\t\tnewDefer.notifyWith\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\t\t// fulfilled_handlers.add( ... )\r\n\t\t\t\t\t\ttuples[ 1 ][ 3 ].add(\r\n\t\t\t\t\t\t\tresolve(\r\n\t\t\t\t\t\t\t\t0,\r\n\t\t\t\t\t\t\t\tnewDefer,\r\n\t\t\t\t\t\t\t\tisFunction( onFulfilled ) ?\r\n\t\t\t\t\t\t\t\t\tonFulfilled :\r\n\t\t\t\t\t\t\t\t\tIdentity\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\t\t// rejected_handlers.add( ... )\r\n\t\t\t\t\t\ttuples[ 2 ][ 3 ].add(\r\n\t\t\t\t\t\t\tresolve(\r\n\t\t\t\t\t\t\t\t0,\r\n\t\t\t\t\t\t\t\tnewDefer,\r\n\t\t\t\t\t\t\t\tisFunction( onRejected ) ?\r\n\t\t\t\t\t\t\t\t\tonRejected :\r\n\t\t\t\t\t\t\t\t\tThrower\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t} ).promise();\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// Get a promise for this deferred\r\n\t\t\t\t// If obj is provided, the promise aspect is added to the object\r\n\t\t\t\tpromise: function( obj ) {\r\n\t\t\t\t\treturn obj != null ? jQuery.extend( obj, promise ) : promise;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tdeferred = {};\r\n\r\n\t\t// Add list-specific methods\r\n\t\tjQuery.each( tuples, function( i, tuple ) {\r\n\t\t\tvar list = tuple[ 2 ],\r\n\t\t\t\tstateString = tuple[ 5 ];\r\n\r\n\t\t\t// promise.progress = list.add\r\n\t\t\t// promise.done = list.add\r\n\t\t\t// promise.fail = list.add\r\n\t\t\tpromise[ tuple[ 1 ] ] = list.add;\r\n\r\n\t\t\t// Handle state\r\n\t\t\tif ( stateString ) {\r\n\t\t\t\tlist.add(\r\n\t\t\t\t\tfunction() {\r\n\r\n\t\t\t\t\t\t// state = \"resolved\" (i.e., fulfilled)\r\n\t\t\t\t\t\t// state = \"rejected\"\r\n\t\t\t\t\t\tstate = stateString;\r\n\t\t\t\t\t},\r\n\r\n\t\t\t\t\t// rejected_callbacks.disable\r\n\t\t\t\t\t// fulfilled_callbacks.disable\r\n\t\t\t\t\ttuples[ 3 - i ][ 2 ].disable,\r\n\r\n\t\t\t\t\t// rejected_handlers.disable\r\n\t\t\t\t\t// fulfilled_handlers.disable\r\n\t\t\t\t\ttuples[ 3 - i ][ 3 ].disable,\r\n\r\n\t\t\t\t\t// progress_callbacks.lock\r\n\t\t\t\t\ttuples[ 0 ][ 2 ].lock,\r\n\r\n\t\t\t\t\t// progress_handlers.lock\r\n\t\t\t\t\ttuples[ 0 ][ 3 ].lock\r\n\t\t\t\t);\r\n\t\t\t}\r\n\r\n\t\t\t// progress_handlers.fire\r\n\t\t\t// fulfilled_handlers.fire\r\n\t\t\t// rejected_handlers.fire\r\n\t\t\tlist.add( tuple[ 3 ].fire );\r\n\r\n\t\t\t// deferred.notify = function() { deferred.notifyWith(...) }\r\n\t\t\t// deferred.resolve = function() { deferred.resolveWith(...) }\r\n\t\t\t// deferred.reject = function() { deferred.rejectWith(...) }\r\n\t\t\tdeferred[ tuple[ 0 ] ] = function() {\r\n\t\t\t\tdeferred[ tuple[ 0 ] + \"With\" ]( this === deferred ? undefined : this, arguments );\r\n\t\t\t\treturn this;\r\n\t\t\t};\r\n\r\n\t\t\t// deferred.notifyWith = list.fireWith\r\n\t\t\t// deferred.resolveWith = list.fireWith\r\n\t\t\t// deferred.rejectWith = list.fireWith\r\n\t\t\tdeferred[ tuple[ 0 ] + \"With\" ] = list.fireWith;\r\n\t\t} );\r\n\r\n\t\t// Make the deferred a promise\r\n\t\tpromise.promise( deferred );\r\n\r\n\t\t// Call given func if any\r\n\t\tif ( func ) {\r\n\t\t\tfunc.call( deferred, deferred );\r\n\t\t}\r\n\r\n\t\t// All done!\r\n\t\treturn deferred;\r\n\t},\r\n\r\n\t// Deferred helper\r\n\twhen: function( singleValue ) {\r\n\t\tvar\r\n\r\n\t\t\t// count of uncompleted subordinates\r\n\t\t\tremaining = arguments.length,\r\n\r\n\t\t\t// count of unprocessed arguments\r\n\t\t\ti = remaining,\r\n\r\n\t\t\t// subordinate fulfillment data\r\n\t\t\tresolveContexts = Array( i ),\r\n\t\t\tresolveValues = slice.call( arguments ),\r\n\r\n\t\t\t// the master Deferred\r\n\t\t\tmaster = jQuery.Deferred(),\r\n\r\n\t\t\t// subordinate callback factory\r\n\t\t\tupdateFunc = function( i ) {\r\n\t\t\t\treturn function( value ) {\r\n\t\t\t\t\tresolveContexts[ i ] = this;\r\n\t\t\t\t\tresolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;\r\n\t\t\t\t\tif ( !( --remaining ) ) {\r\n\t\t\t\t\t\tmaster.resolveWith( resolveContexts, resolveValues );\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t\t};\r\n\r\n\t\t// Single- and empty arguments are adopted like Promise.resolve\r\n\t\tif ( remaining <= 1 ) {\r\n\t\t\tadoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject,\r\n\t\t\t\t!remaining );\r\n\r\n\t\t\t// Use .then() to unwrap secondary thenables (cf. gh-3000)\r\n\t\t\tif ( master.state() === \"pending\" ||\r\n\t\t\t\tisFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) {\r\n\r\n\t\t\t\treturn master.then();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Multiple arguments are aggregated like Promise.all array elements\r\n\t\twhile ( i-- ) {\r\n\t\t\tadoptValue( resolveValues[ i ], updateFunc( i ), master.reject );\r\n\t\t}\r\n\r\n\t\treturn master.promise();\r\n\t}\r\n} );\r\n\r\n\r\n// These usually indicate a programmer mistake during development,\r\n// warn about them ASAP rather than swallowing them by default.\r\nvar rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;\r\n\r\njQuery.Deferred.exceptionHook = function( error, stack ) {\r\n\r\n\t// Support: IE 8 - 9 only\r\n\t// Console exists when dev tools are open, which can happen at any time\r\n\tif ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) {\r\n\t\twindow.console.warn( \"jQuery.Deferred exception: \" + error.message, error.stack, stack );\r\n\t}\r\n};\r\n\r\n\r\n\r\n\r\njQuery.readyException = function( error ) {\r\n\twindow.setTimeout( function() {\r\n\t\tthrow error;\r\n\t} );\r\n};\r\n\r\n\r\n\r\n\r\n// The deferred used on DOM ready\r\nvar readyList = jQuery.Deferred();\r\n\r\njQuery.fn.ready = function( fn ) {\r\n\r\n\treadyList\r\n\t\t.then( fn )\r\n\r\n\t\t// Wrap jQuery.readyException in a function so that the lookup\r\n\t\t// happens at the time of error handling instead of callback\r\n\t\t// registration.\r\n\t\t.catch( function( error ) {\r\n\t\t\tjQuery.readyException( error );\r\n\t\t} );\r\n\r\n\treturn this;\r\n};\r\n\r\njQuery.extend( {\r\n\r\n\t// Is the DOM ready to be used? Set to true once it occurs.\r\n\tisReady: false,\r\n\r\n\t// A counter to track how many items to wait for before\r\n\t// the ready event fires. See #6781\r\n\treadyWait: 1,\r\n\r\n\t// Handle when the DOM is ready\r\n\tready: function( wait ) {\r\n\r\n\t\t// Abort if there are pending holds or we're already ready\r\n\t\tif ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Remember that the DOM is ready\r\n\t\tjQuery.isReady = true;\r\n\r\n\t\t// If a normal DOM Ready event fired, decrement, and wait if need be\r\n\t\tif ( wait !== true && --jQuery.readyWait > 0 ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// If there are functions bound, to execute\r\n\t\treadyList.resolveWith( document, [ jQuery ] );\r\n\t}\r\n} );\r\n\r\njQuery.ready.then = readyList.then;\r\n\r\n// The ready event handler and self cleanup method\r\nfunction completed() {\r\n\tdocument.removeEventListener( \"DOMContentLoaded\", completed );\r\n\twindow.removeEventListener( \"load\", completed );\r\n\tjQuery.ready();\r\n}\r\n\r\n// Catch cases where $(document).ready() is called\r\n// after the browser event has already occurred.\r\n// Support: IE <=9 - 10 only\r\n// Older IE sometimes signals \"interactive\" too soon\r\nif ( document.readyState === \"complete\" ||\r\n\t( document.readyState !== \"loading\" && !document.documentElement.doScroll ) ) {\r\n\r\n\t// Handle it asynchronously to allow scripts the opportunity to delay ready\r\n\twindow.setTimeout( jQuery.ready );\r\n\r\n} else {\r\n\r\n\t// Use the handy event callback\r\n\tdocument.addEventListener( \"DOMContentLoaded\", completed );\r\n\r\n\t// A fallback to window.onload, that will always work\r\n\twindow.addEventListener( \"load\", completed );\r\n}\r\n\r\n\r\n\r\n\r\n// Multifunctional method to get and set values of a collection\r\n// The value/s can optionally be executed if it's a function\r\nvar access = function( elems, fn, key, value, chainable, emptyGet, raw ) {\r\n\tvar i = 0,\r\n\t\tlen = elems.length,\r\n\t\tbulk = key == null;\r\n\r\n\t// Sets many values\r\n\tif ( toType( key ) === \"object\" ) {\r\n\t\tchainable = true;\r\n\t\tfor ( i in key ) {\r\n\t\t\taccess( elems, fn, i, key[ i ], true, emptyGet, raw );\r\n\t\t}\r\n\r\n\t// Sets one value\r\n\t} else if ( value !== undefined ) {\r\n\t\tchainable = true;\r\n\r\n\t\tif ( !isFunction( value ) ) {\r\n\t\t\traw = true;\r\n\t\t}\r\n\r\n\t\tif ( bulk ) {\r\n\r\n\t\t\t// Bulk operations run against the entire set\r\n\t\t\tif ( raw ) {\r\n\t\t\t\tfn.call( elems, value );\r\n\t\t\t\tfn = null;\r\n\r\n\t\t\t// ...except when executing function values\r\n\t\t\t} else {\r\n\t\t\t\tbulk = fn;\r\n\t\t\t\tfn = function( elem, _key, value ) {\r\n\t\t\t\t\treturn bulk.call( jQuery( elem ), value );\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif ( fn ) {\r\n\t\t\tfor ( ; i < len; i++ ) {\r\n\t\t\t\tfn(\r\n\t\t\t\t\telems[ i ], key, raw ?\r\n\t\t\t\t\tvalue :\r\n\t\t\t\t\tvalue.call( elems[ i ], i, fn( elems[ i ], key ) )\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tif ( chainable ) {\r\n\t\treturn elems;\r\n\t}\r\n\r\n\t// Gets\r\n\tif ( bulk ) {\r\n\t\treturn fn.call( elems );\r\n\t}\r\n\r\n\treturn len ? fn( elems[ 0 ], key ) : emptyGet;\r\n};\r\n\r\n\r\n// Matches dashed string for camelizing\r\nvar rmsPrefix = /^-ms-/,\r\n\trdashAlpha = /-([a-z])/g;\r\n\r\n// Used by camelCase as callback to replace()\r\nfunction fcamelCase( _all, letter ) {\r\n\treturn letter.toUpperCase();\r\n}\r\n\r\n// Convert dashed to camelCase; used by the css and data modules\r\n// Support: IE <=9 - 11, Edge 12 - 15\r\n// Microsoft forgot to hump their vendor prefix (#9572)\r\nfunction camelCase( string ) {\r\n\treturn string.replace( rmsPrefix, \"ms-\" ).replace( rdashAlpha, fcamelCase );\r\n}\r\nvar acceptData = function( owner ) {\r\n\r\n\t// Accepts only:\r\n\t//  - Node\r\n\t//    - Node.ELEMENT_NODE\r\n\t//    - Node.DOCUMENT_NODE\r\n\t//  - Object\r\n\t//    - Any\r\n\treturn owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );\r\n};\r\n\r\n\r\n\r\n\r\nfunction Data() {\r\n\tthis.expando = jQuery.expando + Data.uid++;\r\n}\r\n\r\nData.uid = 1;\r\n\r\nData.prototype = {\r\n\r\n\tcache: function( owner ) {\r\n\r\n\t\t// Check if the owner object already has a cache\r\n\t\tvar value = owner[ this.expando ];\r\n\r\n\t\t// If not, create one\r\n\t\tif ( !value ) {\r\n\t\t\tvalue = {};\r\n\r\n\t\t\t// We can accept data for non-element nodes in modern browsers,\r\n\t\t\t// but we should not, see #8335.\r\n\t\t\t// Always return an empty object.\r\n\t\t\tif ( acceptData( owner ) ) {\r\n\r\n\t\t\t\t// If it is a node unlikely to be stringify-ed or looped over\r\n\t\t\t\t// use plain assignment\r\n\t\t\t\tif ( owner.nodeType ) {\r\n\t\t\t\t\towner[ this.expando ] = value;\r\n\r\n\t\t\t\t// Otherwise secure it in a non-enumerable property\r\n\t\t\t\t// configurable must be true to allow the property to be\r\n\t\t\t\t// deleted when data is removed\r\n\t\t\t\t} else {\r\n\t\t\t\t\tObject.defineProperty( owner, this.expando, {\r\n\t\t\t\t\t\tvalue: value,\r\n\t\t\t\t\t\tconfigurable: true\r\n\t\t\t\t\t} );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn value;\r\n\t},\r\n\tset: function( owner, data, value ) {\r\n\t\tvar prop,\r\n\t\t\tcache = this.cache( owner );\r\n\r\n\t\t// Handle: [ owner, key, value ] args\r\n\t\t// Always use camelCase key (gh-2257)\r\n\t\tif ( typeof data === \"string\" ) {\r\n\t\t\tcache[ camelCase( data ) ] = value;\r\n\r\n\t\t// Handle: [ owner, { properties } ] args\r\n\t\t} else {\r\n\r\n\t\t\t// Copy the properties one-by-one to the cache object\r\n\t\t\tfor ( prop in data ) {\r\n\t\t\t\tcache[ camelCase( prop ) ] = data[ prop ];\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn cache;\r\n\t},\r\n\tget: function( owner, key ) {\r\n\t\treturn key === undefined ?\r\n\t\t\tthis.cache( owner ) :\r\n\r\n\t\t\t// Always use camelCase key (gh-2257)\r\n\t\t\towner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ];\r\n\t},\r\n\taccess: function( owner, key, value ) {\r\n\r\n\t\t// In cases where either:\r\n\t\t//\r\n\t\t//   1. No key was specified\r\n\t\t//   2. A string key was specified, but no value provided\r\n\t\t//\r\n\t\t// Take the \"read\" path and allow the get method to determine\r\n\t\t// which value to return, respectively either:\r\n\t\t//\r\n\t\t//   1. The entire cache object\r\n\t\t//   2. The data stored at the key\r\n\t\t//\r\n\t\tif ( key === undefined ||\r\n\t\t\t\t( ( key && typeof key === \"string\" ) && value === undefined ) ) {\r\n\r\n\t\t\treturn this.get( owner, key );\r\n\t\t}\r\n\r\n\t\t// When the key is not a string, or both a key and value\r\n\t\t// are specified, set or extend (existing objects) with either:\r\n\t\t//\r\n\t\t//   1. An object of properties\r\n\t\t//   2. A key and value\r\n\t\t//\r\n\t\tthis.set( owner, key, value );\r\n\r\n\t\t// Since the \"set\" path can have two possible entry points\r\n\t\t// return the expected data based on which path was taken[*]\r\n\t\treturn value !== undefined ? value : key;\r\n\t},\r\n\tremove: function( owner, key ) {\r\n\t\tvar i,\r\n\t\t\tcache = owner[ this.expando ];\r\n\r\n\t\tif ( cache === undefined ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif ( key !== undefined ) {\r\n\r\n\t\t\t// Support array or space separated string of keys\r\n\t\t\tif ( Array.isArray( key ) ) {\r\n\r\n\t\t\t\t// If key is an array of keys...\r\n\t\t\t\t// We always set camelCase keys, so remove that.\r\n\t\t\t\tkey = key.map( camelCase );\r\n\t\t\t} else {\r\n\t\t\t\tkey = camelCase( key );\r\n\r\n\t\t\t\t// If a key with the spaces exists, use it.\r\n\t\t\t\t// Otherwise, create an array by matching non-whitespace\r\n\t\t\t\tkey = key in cache ?\r\n\t\t\t\t\t[ key ] :\r\n\t\t\t\t\t( key.match( rnothtmlwhite ) || [] );\r\n\t\t\t}\r\n\r\n\t\t\ti = key.length;\r\n\r\n\t\t\twhile ( i-- ) {\r\n\t\t\t\tdelete cache[ key[ i ] ];\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Remove the expando if there's no more data\r\n\t\tif ( key === undefined || jQuery.isEmptyObject( cache ) ) {\r\n\r\n\t\t\t// Support: Chrome <=35 - 45\r\n\t\t\t// Webkit & Blink performance suffers when deleting properties\r\n\t\t\t// from DOM nodes, so set to undefined instead\r\n\t\t\t// https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted)\r\n\t\t\tif ( owner.nodeType ) {\r\n\t\t\t\towner[ this.expando ] = undefined;\r\n\t\t\t} else {\r\n\t\t\t\tdelete owner[ this.expando ];\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\thasData: function( owner ) {\r\n\t\tvar cache = owner[ this.expando ];\r\n\t\treturn cache !== undefined && !jQuery.isEmptyObject( cache );\r\n\t}\r\n};\r\nvar dataPriv = new Data();\r\n\r\nvar dataUser = new Data();\r\n\r\n\r\n\r\n//\tImplementation Summary\r\n//\r\n//\t1. Enforce API surface and semantic compatibility with 1.9.x branch\r\n//\t2. Improve the module's maintainability by reducing the storage\r\n//\t\tpaths to a single mechanism.\r\n//\t3. Use the same single mechanism to support \"private\" and \"user\" data.\r\n//\t4. _Never_ expose \"private\" data to user code (TODO: Drop _data, _removeData)\r\n//\t5. Avoid exposing implementation details on user objects (eg. expando properties)\r\n//\t6. Provide a clear path for implementation upgrade to WeakMap in 2014\r\n\r\nvar rbrace = /^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,\r\n\trmultiDash = /[A-Z]/g;\r\n\r\nfunction getData( data ) {\r\n\tif ( data === \"true\" ) {\r\n\t\treturn true;\r\n\t}\r\n\r\n\tif ( data === \"false\" ) {\r\n\t\treturn false;\r\n\t}\r\n\r\n\tif ( data === \"null\" ) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\t// Only convert to a number if it doesn't change the string\r\n\tif ( data === +data + \"\" ) {\r\n\t\treturn +data;\r\n\t}\r\n\r\n\tif ( rbrace.test( data ) ) {\r\n\t\treturn JSON.parse( data );\r\n\t}\r\n\r\n\treturn data;\r\n}\r\n\r\nfunction dataAttr( elem, key, data ) {\r\n\tvar name;\r\n\r\n\t// If nothing was found internally, try to fetch any\r\n\t// data from the HTML5 data-* attribute\r\n\tif ( data === undefined && elem.nodeType === 1 ) {\r\n\t\tname = \"data-\" + key.replace( rmultiDash, \"-$&\" ).toLowerCase();\r\n\t\tdata = elem.getAttribute( name );\r\n\r\n\t\tif ( typeof data === \"string\" ) {\r\n\t\t\ttry {\r\n\t\t\t\tdata = getData( data );\r\n\t\t\t} catch ( e ) {}\r\n\r\n\t\t\t// Make sure we set the data so it isn't changed later\r\n\t\t\tdataUser.set( elem, key, data );\r\n\t\t} else {\r\n\t\t\tdata = undefined;\r\n\t\t}\r\n\t}\r\n\treturn data;\r\n}\r\n\r\njQuery.extend( {\r\n\thasData: function( elem ) {\r\n\t\treturn dataUser.hasData( elem ) || dataPriv.hasData( elem );\r\n\t},\r\n\r\n\tdata: function( elem, name, data ) {\r\n\t\treturn dataUser.access( elem, name, data );\r\n\t},\r\n\r\n\tremoveData: function( elem, name ) {\r\n\t\tdataUser.remove( elem, name );\r\n\t},\r\n\r\n\t// TODO: Now that all calls to _data and _removeData have been replaced\r\n\t// with direct calls to dataPriv methods, these can be deprecated.\r\n\t_data: function( elem, name, data ) {\r\n\t\treturn dataPriv.access( elem, name, data );\r\n\t},\r\n\r\n\t_removeData: function( elem, name ) {\r\n\t\tdataPriv.remove( elem, name );\r\n\t}\r\n} );\r\n\r\njQuery.fn.extend( {\r\n\tdata: function( key, value ) {\r\n\t\tvar i, name, data,\r\n\t\t\telem = this[ 0 ],\r\n\t\t\tattrs = elem && elem.attributes;\r\n\r\n\t\t// Gets all values\r\n\t\tif ( key === undefined ) {\r\n\t\t\tif ( this.length ) {\r\n\t\t\t\tdata = dataUser.get( elem );\r\n\r\n\t\t\t\tif ( elem.nodeType === 1 && !dataPriv.get( elem, \"hasDataAttrs\" ) ) {\r\n\t\t\t\t\ti = attrs.length;\r\n\t\t\t\t\twhile ( i-- ) {\r\n\r\n\t\t\t\t\t\t// Support: IE 11 only\r\n\t\t\t\t\t\t// The attrs elements can be null (#14894)\r\n\t\t\t\t\t\tif ( attrs[ i ] ) {\r\n\t\t\t\t\t\t\tname = attrs[ i ].name;\r\n\t\t\t\t\t\t\tif ( name.indexOf( \"data-\" ) === 0 ) {\r\n\t\t\t\t\t\t\t\tname = camelCase( name.slice( 5 ) );\r\n\t\t\t\t\t\t\t\tdataAttr( elem, name, data[ name ] );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdataPriv.set( elem, \"hasDataAttrs\", true );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn data;\r\n\t\t}\r\n\r\n\t\t// Sets multiple values\r\n\t\tif ( typeof key === \"object\" ) {\r\n\t\t\treturn this.each( function() {\r\n\t\t\t\tdataUser.set( this, key );\r\n\t\t\t} );\r\n\t\t}\r\n\r\n\t\treturn access( this, function( value ) {\r\n\t\t\tvar data;\r\n\r\n\t\t\t// The calling jQuery object (element matches) is not empty\r\n\t\t\t// (and therefore has an element appears at this[ 0 ]) and the\r\n\t\t\t// `value` parameter was not undefined. An empty jQuery object\r\n\t\t\t// will result in `undefined` for elem = this[ 0 ] which will\r\n\t\t\t// throw an exception if an attempt to read a data cache is made.\r\n\t\t\tif ( elem && value === undefined ) {\r\n\r\n\t\t\t\t// Attempt to get data from the cache\r\n\t\t\t\t// The key will always be camelCased in Data\r\n\t\t\t\tdata = dataUser.get( elem, key );\r\n\t\t\t\tif ( data !== undefined ) {\r\n\t\t\t\t\treturn data;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Attempt to \"discover\" the data in\r\n\t\t\t\t// HTML5 custom data-* attrs\r\n\t\t\t\tdata = dataAttr( elem, key );\r\n\t\t\t\tif ( data !== undefined ) {\r\n\t\t\t\t\treturn data;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// We tried really hard, but the data doesn't exist.\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Set the data...\r\n\t\t\tthis.each( function() {\r\n\r\n\t\t\t\t// We always store the camelCased key\r\n\t\t\t\tdataUser.set( this, key, value );\r\n\t\t\t} );\r\n\t\t}, null, value, arguments.length > 1, null, true );\r\n\t},\r\n\r\n\tremoveData: function( key ) {\r\n\t\treturn this.each( function() {\r\n\t\t\tdataUser.remove( this, key );\r\n\t\t} );\r\n\t}\r\n} );\r\n\r\n\r\njQuery.extend( {\r\n\tqueue: function( elem, type, data ) {\r\n\t\tvar queue;\r\n\r\n\t\tif ( elem ) {\r\n\t\t\ttype = ( type || \"fx\" ) + \"queue\";\r\n\t\t\tqueue = dataPriv.get( elem, type );\r\n\r\n\t\t\t// Speed up dequeue by getting out quickly if this is just a lookup\r\n\t\t\tif ( data ) {\r\n\t\t\t\tif ( !queue || Array.isArray( data ) ) {\r\n\t\t\t\t\tqueue = dataPriv.access( elem, type, jQuery.makeArray( data ) );\r\n\t\t\t\t} else {\r\n\t\t\t\t\tqueue.push( data );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn queue || [];\r\n\t\t}\r\n\t},\r\n\r\n\tdequeue: function( elem, type ) {\r\n\t\ttype = type || \"fx\";\r\n\r\n\t\tvar queue = jQuery.queue( elem, type ),\r\n\t\t\tstartLength = queue.length,\r\n\t\t\tfn = queue.shift(),\r\n\t\t\thooks = jQuery._queueHooks( elem, type ),\r\n\t\t\tnext = function() {\r\n\t\t\t\tjQuery.dequeue( elem, type );\r\n\t\t\t};\r\n\r\n\t\t// If the fx queue is dequeued, always remove the progress sentinel\r\n\t\tif ( fn === \"inprogress\" ) {\r\n\t\t\tfn = queue.shift();\r\n\t\t\tstartLength--;\r\n\t\t}\r\n\r\n\t\tif ( fn ) {\r\n\r\n\t\t\t// Add a progress sentinel to prevent the fx queue from being\r\n\t\t\t// automatically dequeued\r\n\t\t\tif ( type === \"fx\" ) {\r\n\t\t\t\tqueue.unshift( \"inprogress\" );\r\n\t\t\t}\r\n\r\n\t\t\t// Clear up the last queue stop function\r\n\t\t\tdelete hooks.stop;\r\n\t\t\tfn.call( elem, next, hooks );\r\n\t\t}\r\n\r\n\t\tif ( !startLength && hooks ) {\r\n\t\t\thooks.empty.fire();\r\n\t\t}\r\n\t},\r\n\r\n\t// Not public - generate a queueHooks object, or return the current one\r\n\t_queueHooks: function( elem, type ) {\r\n\t\tvar key = type + \"queueHooks\";\r\n\t\treturn dataPriv.get( elem, key ) || dataPriv.access( elem, key, {\r\n\t\t\tempty: jQuery.Callbacks( \"once memory\" ).add( function() {\r\n\t\t\t\tdataPriv.remove( elem, [ type + \"queue\", key ] );\r\n\t\t\t} )\r\n\t\t} );\r\n\t}\r\n} );\r\n\r\njQuery.fn.extend( {\r\n\tqueue: function( type, data ) {\r\n\t\tvar setter = 2;\r\n\r\n\t\tif ( typeof type !== \"string\" ) {\r\n\t\t\tdata = type;\r\n\t\t\ttype = \"fx\";\r\n\t\t\tsetter--;\r\n\t\t}\r\n\r\n\t\tif ( arguments.length < setter ) {\r\n\t\t\treturn jQuery.queue( this[ 0 ], type );\r\n\t\t}\r\n\r\n\t\treturn data === undefined ?\r\n\t\t\tthis :\r\n\t\t\tthis.each( function() {\r\n\t\t\t\tvar queue = jQuery.queue( this, type, data );\r\n\r\n\t\t\t\t// Ensure a hooks for this queue\r\n\t\t\t\tjQuery._queueHooks( this, type );\r\n\r\n\t\t\t\tif ( type === \"fx\" && queue[ 0 ] !== \"inprogress\" ) {\r\n\t\t\t\t\tjQuery.dequeue( this, type );\r\n\t\t\t\t}\r\n\t\t\t} );\r\n\t},\r\n\tdequeue: function( type ) {\r\n\t\treturn this.each( function() {\r\n\t\t\tjQuery.dequeue( this, type );\r\n\t\t} );\r\n\t},\r\n\tclearQueue: function( type ) {\r\n\t\treturn this.queue( type || \"fx\", [] );\r\n\t},\r\n\r\n\t// Get a promise resolved when queues of a certain type\r\n\t// are emptied (fx is the type by default)\r\n\tpromise: function( type, obj ) {\r\n\t\tvar tmp,\r\n\t\t\tcount = 1,\r\n\t\t\tdefer = jQuery.Deferred(),\r\n\t\t\telements = this,\r\n\t\t\ti = this.length,\r\n\t\t\tresolve = function() {\r\n\t\t\t\tif ( !( --count ) ) {\r\n\t\t\t\t\tdefer.resolveWith( elements, [ elements ] );\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\tif ( typeof type !== \"string\" ) {\r\n\t\t\tobj = type;\r\n\t\t\ttype = undefined;\r\n\t\t}\r\n\t\ttype = type || \"fx\";\r\n\r\n\t\twhile ( i-- ) {\r\n\t\t\ttmp = dataPriv.get( elements[ i ], type + \"queueHooks\" );\r\n\t\t\tif ( tmp && tmp.empty ) {\r\n\t\t\t\tcount++;\r\n\t\t\t\ttmp.empty.add( resolve );\r\n\t\t\t}\r\n\t\t}\r\n\t\tresolve();\r\n\t\treturn defer.promise( obj );\r\n\t}\r\n} );\r\nvar pnum = ( /[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/ ).source;\r\n\r\nvar rcssNum = new RegExp( \"^(?:([+-])=|)(\" + pnum + \")([a-z%]*)$\", \"i\" );\r\n\r\n\r\nvar cssExpand = [ \"Top\", \"Right\", \"Bottom\", \"Left\" ];\r\n\r\nvar documentElement = document.documentElement;\r\n\r\n\r\n\r\n\tvar isAttached = function( elem ) {\r\n\t\t\treturn jQuery.contains( elem.ownerDocument, elem );\r\n\t\t},\r\n\t\tcomposed = { composed: true };\r\n\r\n\t// Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only\r\n\t// Check attachment across shadow DOM boundaries when possible (gh-3504)\r\n\t// Support: iOS 10.0-10.2 only\r\n\t// Early iOS 10 versions support `attachShadow` but not `getRootNode`,\r\n\t// leading to errors. We need to check for `getRootNode`.\r\n\tif ( documentElement.getRootNode ) {\r\n\t\tisAttached = function( elem ) {\r\n\t\t\treturn jQuery.contains( elem.ownerDocument, elem ) ||\r\n\t\t\t\telem.getRootNode( composed ) === elem.ownerDocument;\r\n\t\t};\r\n\t}\r\nvar isHiddenWithinTree = function( elem, el ) {\r\n\r\n\t\t// isHiddenWithinTree might be called from jQuery#filter function;\r\n\t\t// in that case, element will be second argument\r\n\t\telem = el || elem;\r\n\r\n\t\t// Inline style trumps all\r\n\t\treturn elem.style.display === \"none\" ||\r\n\t\t\telem.style.display === \"\" &&\r\n\r\n\t\t\t// Otherwise, check computed style\r\n\t\t\t// Support: Firefox <=43 - 45\r\n\t\t\t// Disconnected elements can have computed display: none, so first confirm that elem is\r\n\t\t\t// in the document.\r\n\t\t\tisAttached( elem ) &&\r\n\r\n\t\t\tjQuery.css( elem, \"display\" ) === \"none\";\r\n\t};\r\n\r\n\r\n\r\nfunction adjustCSS( elem, prop, valueParts, tween ) {\r\n\tvar adjusted, scale,\r\n\t\tmaxIterations = 20,\r\n\t\tcurrentValue = tween ?\r\n\t\t\tfunction() {\r\n\t\t\t\treturn tween.cur();\r\n\t\t\t} :\r\n\t\t\tfunction() {\r\n\t\t\t\treturn jQuery.css( elem, prop, \"\" );\r\n\t\t\t},\r\n\t\tinitial = currentValue(),\r\n\t\tunit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? \"\" : \"px\" ),\r\n\r\n\t\t// Starting value computation is required for potential unit mismatches\r\n\t\tinitialInUnit = elem.nodeType &&\r\n\t\t\t( jQuery.cssNumber[ prop ] || unit !== \"px\" && +initial ) &&\r\n\t\t\trcssNum.exec( jQuery.css( elem, prop ) );\r\n\r\n\tif ( initialInUnit && initialInUnit[ 3 ] !== unit ) {\r\n\r\n\t\t// Support: Firefox <=54\r\n\t\t// Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144)\r\n\t\tinitial = initial / 2;\r\n\r\n\t\t// Trust units reported by jQuery.css\r\n\t\tunit = unit || initialInUnit[ 3 ];\r\n\r\n\t\t// Iteratively approximate from a nonzero starting point\r\n\t\tinitialInUnit = +initial || 1;\r\n\r\n\t\twhile ( maxIterations-- ) {\r\n\r\n\t\t\t// Evaluate and update our best guess (doubling guesses that zero out).\r\n\t\t\t// Finish if the scale equals or crosses 1 (making the old*new product non-positive).\r\n\t\t\tjQuery.style( elem, prop, initialInUnit + unit );\r\n\t\t\tif ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) {\r\n\t\t\t\tmaxIterations = 0;\r\n\t\t\t}\r\n\t\t\tinitialInUnit = initialInUnit / scale;\r\n\r\n\t\t}\r\n\r\n\t\tinitialInUnit = initialInUnit * 2;\r\n\t\tjQuery.style( elem, prop, initialInUnit + unit );\r\n\r\n\t\t// Make sure we update the tween properties later on\r\n\t\tvalueParts = valueParts || [];\r\n\t}\r\n\r\n\tif ( valueParts ) {\r\n\t\tinitialInUnit = +initialInUnit || +initial || 0;\r\n\r\n\t\t// Apply relative offset (+=/-=) if specified\r\n\t\tadjusted = valueParts[ 1 ] ?\r\n\t\t\tinitialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] :\r\n\t\t\t+valueParts[ 2 ];\r\n\t\tif ( tween ) {\r\n\t\t\ttween.unit = unit;\r\n\t\t\ttween.start = initialInUnit;\r\n\t\t\ttween.end = adjusted;\r\n\t\t}\r\n\t}\r\n\treturn adjusted;\r\n}\r\n\r\n\r\nvar defaultDisplayMap = {};\r\n\r\nfunction getDefaultDisplay( elem ) {\r\n\tvar temp,\r\n\t\tdoc = elem.ownerDocument,\r\n\t\tnodeName = elem.nodeName,\r\n\t\tdisplay = defaultDisplayMap[ nodeName ];\r\n\r\n\tif ( display ) {\r\n\t\treturn display;\r\n\t}\r\n\r\n\ttemp = doc.body.appendChild( doc.createElement( nodeName ) );\r\n\tdisplay = jQuery.css( temp, \"display\" );\r\n\r\n\ttemp.parentNode.removeChild( temp );\r\n\r\n\tif ( display === \"none\" ) {\r\n\t\tdisplay = \"block\";\r\n\t}\r\n\tdefaultDisplayMap[ nodeName ] = display;\r\n\r\n\treturn display;\r\n}\r\n\r\nfunction showHide( elements, show ) {\r\n\tvar display, elem,\r\n\t\tvalues = [],\r\n\t\tindex = 0,\r\n\t\tlength = elements.length;\r\n\r\n\t// Determine new display value for elements that need to change\r\n\tfor ( ; index < length; index++ ) {\r\n\t\telem = elements[ index ];\r\n\t\tif ( !elem.style ) {\r\n\t\t\tcontinue;\r\n\t\t}\r\n\r\n\t\tdisplay = elem.style.display;\r\n\t\tif ( show ) {\r\n\r\n\t\t\t// Since we force visibility upon cascade-hidden elements, an immediate (and slow)\r\n\t\t\t// check is required in this first loop unless we have a nonempty display value (either\r\n\t\t\t// inline or about-to-be-restored)\r\n\t\t\tif ( display === \"none\" ) {\r\n\t\t\t\tvalues[ index ] = dataPriv.get( elem, \"display\" ) || null;\r\n\t\t\t\tif ( !values[ index ] ) {\r\n\t\t\t\t\telem.style.display = \"\";\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif ( elem.style.display === \"\" && isHiddenWithinTree( elem ) ) {\r\n\t\t\t\tvalues[ index ] = getDefaultDisplay( elem );\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tif ( display !== \"none\" ) {\r\n\t\t\t\tvalues[ index ] = \"none\";\r\n\r\n\t\t\t\t// Remember what we're overwriting\r\n\t\t\t\tdataPriv.set( elem, \"display\", display );\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// Set the display of the elements in a second loop to avoid constant reflow\r\n\tfor ( index = 0; index < length; index++ ) {\r\n\t\tif ( values[ index ] != null ) {\r\n\t\t\telements[ index ].style.display = values[ index ];\r\n\t\t}\r\n\t}\r\n\r\n\treturn elements;\r\n}\r\n\r\njQuery.fn.extend( {\r\n\tshow: function() {\r\n\t\treturn showHide( this, true );\r\n\t},\r\n\thide: function() {\r\n\t\treturn showHide( this );\r\n\t},\r\n\ttoggle: function( state ) {\r\n\t\tif ( typeof state === \"boolean\" ) {\r\n\t\t\treturn state ? this.show() : this.hide();\r\n\t\t}\r\n\r\n\t\treturn this.each( function() {\r\n\t\t\tif ( isHiddenWithinTree( this ) ) {\r\n\t\t\t\tjQuery( this ).show();\r\n\t\t\t} else {\r\n\t\t\t\tjQuery( this ).hide();\r\n\t\t\t}\r\n\t\t} );\r\n\t}\r\n} );\r\nvar rcheckableType = ( /^(?:checkbox|radio)$/i );\r\n\r\nvar rtagName = ( /<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)/i );\r\n\r\nvar rscriptType = ( /^$|^module$|\\/(?:java|ecma)script/i );\r\n\r\n\r\n\r\n( function() {\r\n\tvar fragment = document.createDocumentFragment(),\r\n\t\tdiv = fragment.appendChild( document.createElement( \"div\" ) ),\r\n\t\tinput = document.createElement( \"input\" );\r\n\r\n\t// Support: Android 4.0 - 4.3 only\r\n\t// Check state lost if the name is set (#11217)\r\n\t// Support: Windows Web Apps (WWA)\r\n\t// `name` and `type` must use .setAttribute for WWA (#14901)\r\n\tinput.setAttribute( \"type\", \"radio\" );\r\n\tinput.setAttribute( \"checked\", \"checked\" );\r\n\tinput.setAttribute( \"name\", \"t\" );\r\n\r\n\tdiv.appendChild( input );\r\n\r\n\t// Support: Android <=4.1 only\r\n\t// Older WebKit doesn't clone checked state correctly in fragments\r\n\tsupport.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;\r\n\r\n\t// Support: IE <=11 only\r\n\t// Make sure textarea (and checkbox) defaultValue is properly cloned\r\n\tdiv.innerHTML = \"<textarea>x</textarea>\";\r\n\tsupport.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;\r\n\r\n\t// Support: IE <=9 only\r\n\t// IE <=9 replaces <option> tags with their contents when inserted outside of\r\n\t// the select element.\r\n\tdiv.innerHTML = \"<option></option>\";\r\n\tsupport.option = !!div.lastChild;\r\n} )();\r\n\r\n\r\n// We have to close these tags to support XHTML (#13200)\r\nvar wrapMap = {\r\n\r\n\t// XHTML parsers do not magically insert elements in the\r\n\t// same way that tag soup parsers do. So we cannot shorten\r\n\t// this by omitting <tbody> or other required elements.\r\n\tthead: [ 1, \"<table>\", \"</table>\" ],\r\n\tcol: [ 2, \"<table><colgroup>\", \"</colgroup></table>\" ],\r\n\ttr: [ 2, \"<table><tbody>\", \"</tbody></table>\" ],\r\n\ttd: [ 3, \"<table><tbody><tr>\", \"</tr></tbody></table>\" ],\r\n\r\n\t_default: [ 0, \"\", \"\" ]\r\n};\r\n\r\nwrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;\r\nwrapMap.th = wrapMap.td;\r\n\r\n// Support: IE <=9 only\r\nif ( !support.option ) {\r\n\twrapMap.optgroup = wrapMap.option = [ 1, \"<select multiple='multiple'>\", \"</select>\" ];\r\n}\r\n\r\n\r\nfunction getAll( context, tag ) {\r\n\r\n\t// Support: IE <=9 - 11 only\r\n\t// Use typeof to avoid zero-argument method invocation on host objects (#15151)\r\n\tvar ret;\r\n\r\n\tif ( typeof context.getElementsByTagName !== \"undefined\" ) {\r\n\t\tret = context.getElementsByTagName( tag || \"*\" );\r\n\r\n\t} else if ( typeof context.querySelectorAll !== \"undefined\" ) {\r\n\t\tret = context.querySelectorAll( tag || \"*\" );\r\n\r\n\t} else {\r\n\t\tret = [];\r\n\t}\r\n\r\n\tif ( tag === undefined || tag && nodeName( context, tag ) ) {\r\n\t\treturn jQuery.merge( [ context ], ret );\r\n\t}\r\n\r\n\treturn ret;\r\n}\r\n\r\n\r\n// Mark scripts as having already been evaluated\r\nfunction setGlobalEval( elems, refElements ) {\r\n\tvar i = 0,\r\n\t\tl = elems.length;\r\n\r\n\tfor ( ; i < l; i++ ) {\r\n\t\tdataPriv.set(\r\n\t\t\telems[ i ],\r\n\t\t\t\"globalEval\",\r\n\t\t\t!refElements || dataPriv.get( refElements[ i ], \"globalEval\" )\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\r\nvar rhtml = /<|&#?\\w+;/;\r\n\r\nfunction buildFragment( elems, context, scripts, selection, ignored ) {\r\n\tvar elem, tmp, tag, wrap, attached, j,\r\n\t\tfragment = context.createDocumentFragment(),\r\n\t\tnodes = [],\r\n\t\ti = 0,\r\n\t\tl = elems.length;\r\n\r\n\tfor ( ; i < l; i++ ) {\r\n\t\telem = elems[ i ];\r\n\r\n\t\tif ( elem || elem === 0 ) {\r\n\r\n\t\t\t// Add nodes directly\r\n\t\t\tif ( toType( elem ) === \"object\" ) {\r\n\r\n\t\t\t\t// Support: Android <=4.0 only, PhantomJS 1 only\r\n\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\r\n\t\t\t\tjQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );\r\n\r\n\t\t\t// Convert non-html into a text node\r\n\t\t\t} else if ( !rhtml.test( elem ) ) {\r\n\t\t\t\tnodes.push( context.createTextNode( elem ) );\r\n\r\n\t\t\t// Convert html into DOM nodes\r\n\t\t\t} else {\r\n\t\t\t\ttmp = tmp || fragment.appendChild( context.createElement( \"div\" ) );\r\n\r\n\t\t\t\t// Deserialize a standard representation\r\n\t\t\t\ttag = ( rtagName.exec( elem ) || [ \"\", \"\" ] )[ 1 ].toLowerCase();\r\n\t\t\t\twrap = wrapMap[ tag ] || wrapMap._default;\r\n\t\t\t\ttmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ];\r\n\r\n\t\t\t\t// Descend through wrappers to the right content\r\n\t\t\t\tj = wrap[ 0 ];\r\n\t\t\t\twhile ( j-- ) {\r\n\t\t\t\t\ttmp = tmp.lastChild;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Support: Android <=4.0 only, PhantomJS 1 only\r\n\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\r\n\t\t\t\tjQuery.merge( nodes, tmp.childNodes );\r\n\r\n\t\t\t\t// Remember the top-level container\r\n\t\t\t\ttmp = fragment.firstChild;\r\n\r\n\t\t\t\t// Ensure the created nodes are orphaned (#12392)\r\n\t\t\t\ttmp.textContent = \"\";\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// Remove wrapper from fragment\r\n\tfragment.textContent = \"\";\r\n\r\n\ti = 0;\r\n\twhile ( ( elem = nodes[ i++ ] ) ) {\r\n\r\n\t\t// Skip elements already in the context collection (trac-4087)\r\n\t\tif ( selection && jQuery.inArray( elem, selection ) > -1 ) {\r\n\t\t\tif ( ignored ) {\r\n\t\t\t\tignored.push( elem );\r\n\t\t\t}\r\n\t\t\tcontinue;\r\n\t\t}\r\n\r\n\t\tattached = isAttached( elem );\r\n\r\n\t\t// Append to fragment\r\n\t\ttmp = getAll( fragment.appendChild( elem ), \"script\" );\r\n\r\n\t\t// Preserve script evaluation history\r\n\t\tif ( attached ) {\r\n\t\t\tsetGlobalEval( tmp );\r\n\t\t}\r\n\r\n\t\t// Capture executables\r\n\t\tif ( scripts ) {\r\n\t\t\tj = 0;\r\n\t\t\twhile ( ( elem = tmp[ j++ ] ) ) {\r\n\t\t\t\tif ( rscriptType.test( elem.type || \"\" ) ) {\r\n\t\t\t\t\tscripts.push( elem );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\treturn fragment;\r\n}\r\n\r\n\r\nvar\r\n\trkeyEvent = /^key/,\r\n\trmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,\r\n\trtypenamespace = /^([^.]*)(?:\\.(.+)|)/;\r\n\r\nfunction returnTrue() {\r\n\treturn true;\r\n}\r\n\r\nfunction returnFalse() {\r\n\treturn false;\r\n}\r\n\r\n// Support: IE <=9 - 11+\r\n// focus() and blur() are asynchronous, except when they are no-op.\r\n// So expect focus to be synchronous when the element is already active,\r\n// and blur to be synchronous when the element is not already active.\r\n// (focus and blur are always synchronous in other supported browsers,\r\n// this just defines when we can count on it).\r\nfunction expectSync( elem, type ) {\r\n\treturn ( elem === safeActiveElement() ) === ( type === \"focus\" );\r\n}\r\n\r\n// Support: IE <=9 only\r\n// Accessing document.activeElement can throw unexpectedly\r\n// https://bugs.jquery.com/ticket/13393\r\nfunction safeActiveElement() {\r\n\ttry {\r\n\t\treturn document.activeElement;\r\n\t} catch ( err ) { }\r\n}\r\n\r\nfunction on( elem, types, selector, data, fn, one ) {\r\n\tvar origFn, type;\r\n\r\n\t// Types can be a map of types/handlers\r\n\tif ( typeof types === \"object\" ) {\r\n\r\n\t\t// ( types-Object, selector, data )\r\n\t\tif ( typeof selector !== \"string\" ) {\r\n\r\n\t\t\t// ( types-Object, data )\r\n\t\t\tdata = data || selector;\r\n\t\t\tselector = undefined;\r\n\t\t}\r\n\t\tfor ( type in types ) {\r\n\t\t\ton( elem, type, selector, data, types[ type ], one );\r\n\t\t}\r\n\t\treturn elem;\r\n\t}\r\n\r\n\tif ( data == null && fn == null ) {\r\n\r\n\t\t// ( types, fn )\r\n\t\tfn = selector;\r\n\t\tdata = selector = undefined;\r\n\t} else if ( fn == null ) {\r\n\t\tif ( typeof selector === \"string\" ) {\r\n\r\n\t\t\t// ( types, selector, fn )\r\n\t\t\tfn = data;\r\n\t\t\tdata = undefined;\r\n\t\t} else {\r\n\r\n\t\t\t// ( types, data, fn )\r\n\t\t\tfn = data;\r\n\t\t\tdata = selector;\r\n\t\t\tselector = undefined;\r\n\t\t}\r\n\t}\r\n\tif ( fn === false ) {\r\n\t\tfn = returnFalse;\r\n\t} else if ( !fn ) {\r\n\t\treturn elem;\r\n\t}\r\n\r\n\tif ( one === 1 ) {\r\n\t\torigFn = fn;\r\n\t\tfn = function( event ) {\r\n\r\n\t\t\t// Can use an empty set, since event contains the info\r\n\t\t\tjQuery().off( event );\r\n\t\t\treturn origFn.apply( this, arguments );\r\n\t\t};\r\n\r\n\t\t// Use same guid so caller can remove using origFn\r\n\t\tfn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );\r\n\t}\r\n\treturn elem.each( function() {\r\n\t\tjQuery.event.add( this, types, fn, data, selector );\r\n\t} );\r\n}\r\n\r\n/*\r\n * Helper functions for managing events -- not part of the public interface.\r\n * Props to Dean Edwards' addEvent library for many of the ideas.\r\n */\r\njQuery.event = {\r\n\r\n\tglobal: {},\r\n\r\n\tadd: function( elem, types, handler, data, selector ) {\r\n\r\n\t\tvar handleObjIn, eventHandle, tmp,\r\n\t\t\tevents, t, handleObj,\r\n\t\t\tspecial, handlers, type, namespaces, origType,\r\n\t\t\telemData = dataPriv.get( elem );\r\n\r\n\t\t// Only attach events to objects that accept data\r\n\t\tif ( !acceptData( elem ) ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Caller can pass in an object of custom data in lieu of the handler\r\n\t\tif ( handler.handler ) {\r\n\t\t\thandleObjIn = handler;\r\n\t\t\thandler = handleObjIn.handler;\r\n\t\t\tselector = handleObjIn.selector;\r\n\t\t}\r\n\r\n\t\t// Ensure that invalid selectors throw exceptions at attach time\r\n\t\t// Evaluate against documentElement in case elem is a non-element node (e.g., document)\r\n\t\tif ( selector ) {\r\n\t\t\tjQuery.find.matchesSelector( documentElement, selector );\r\n\t\t}\r\n\r\n\t\t// Make sure that the handler has a unique ID, used to find/remove it later\r\n\t\tif ( !handler.guid ) {\r\n\t\t\thandler.guid = jQuery.guid++;\r\n\t\t}\r\n\r\n\t\t// Init the element's event structure and main handler, if this is the first\r\n\t\tif ( !( events = elemData.events ) ) {\r\n\t\t\tevents = elemData.events = Object.create( null );\r\n\t\t}\r\n\t\tif ( !( eventHandle = elemData.handle ) ) {\r\n\t\t\teventHandle = elemData.handle = function( e ) {\r\n\r\n\t\t\t\t// Discard the second event of a jQuery.event.trigger() and\r\n\t\t\t\t// when an event is called after a page has unloaded\r\n\t\t\t\treturn typeof jQuery !== \"undefined\" && jQuery.event.triggered !== e.type ?\r\n\t\t\t\t\tjQuery.event.dispatch.apply( elem, arguments ) : undefined;\r\n\t\t\t};\r\n\t\t}\r\n\r\n\t\t// Handle multiple events separated by a space\r\n\t\ttypes = ( types || \"\" ).match( rnothtmlwhite ) || [ \"\" ];\r\n\t\tt = types.length;\r\n\t\twhile ( t-- ) {\r\n\t\t\ttmp = rtypenamespace.exec( types[ t ] ) || [];\r\n\t\t\ttype = origType = tmp[ 1 ];\r\n\t\t\tnamespaces = ( tmp[ 2 ] || \"\" ).split( \".\" ).sort();\r\n\r\n\t\t\t// There *must* be a type, no attaching namespace-only handlers\r\n\t\t\tif ( !type ) {\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\r\n\t\t\t// If event changes its type, use the special event handlers for the changed type\r\n\t\t\tspecial = jQuery.event.special[ type ] || {};\r\n\r\n\t\t\t// If selector defined, determine special event api type, otherwise given type\r\n\t\t\ttype = ( selector ? special.delegateType : special.bindType ) || type;\r\n\r\n\t\t\t// Update special based on newly reset type\r\n\t\t\tspecial = jQuery.event.special[ type ] || {};\r\n\r\n\t\t\t// handleObj is passed to all event handlers\r\n\t\t\thandleObj = jQuery.extend( {\r\n\t\t\t\ttype: type,\r\n\t\t\t\torigType: origType,\r\n\t\t\t\tdata: data,\r\n\t\t\t\thandler: handler,\r\n\t\t\t\tguid: handler.guid,\r\n\t\t\t\tselector: selector,\r\n\t\t\t\tneedsContext: selector && jQuery.expr.match.needsContext.test( selector ),\r\n\t\t\t\tnamespace: namespaces.join( \".\" )\r\n\t\t\t}, handleObjIn );\r\n\r\n\t\t\t// Init the event handler queue if we're the first\r\n\t\t\tif ( !( handlers = events[ type ] ) ) {\r\n\t\t\t\thandlers = events[ type ] = [];\r\n\t\t\t\thandlers.delegateCount = 0;\r\n\r\n\t\t\t\t// Only use addEventListener if the special events handler returns false\r\n\t\t\t\tif ( !special.setup ||\r\n\t\t\t\t\tspecial.setup.call( elem, data, namespaces, eventHandle ) === false ) {\r\n\r\n\t\t\t\t\tif ( elem.addEventListener ) {\r\n\t\t\t\t\t\telem.addEventListener( type, eventHandle );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif ( special.add ) {\r\n\t\t\t\tspecial.add.call( elem, handleObj );\r\n\r\n\t\t\t\tif ( !handleObj.handler.guid ) {\r\n\t\t\t\t\thandleObj.handler.guid = handler.guid;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Add to the element's handler list, delegates in front\r\n\t\t\tif ( selector ) {\r\n\t\t\t\thandlers.splice( handlers.delegateCount++, 0, handleObj );\r\n\t\t\t} else {\r\n\t\t\t\thandlers.push( handleObj );\r\n\t\t\t}\r\n\r\n\t\t\t// Keep track of which events have ever been used, for event optimization\r\n\t\t\tjQuery.event.global[ type ] = true;\r\n\t\t}\r\n\r\n\t},\r\n\r\n\t// Detach an event or set of events from an element\r\n\tremove: function( elem, types, handler, selector, mappedTypes ) {\r\n\r\n\t\tvar j, origCount, tmp,\r\n\t\t\tevents, t, handleObj,\r\n\t\t\tspecial, handlers, type, namespaces, origType,\r\n\t\t\telemData = dataPriv.hasData( elem ) && dataPriv.get( elem );\r\n\r\n\t\tif ( !elemData || !( events = elemData.events ) ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Once for each type.namespace in types; type may be omitted\r\n\t\ttypes = ( types || \"\" ).match( rnothtmlwhite ) || [ \"\" ];\r\n\t\tt = types.length;\r\n\t\twhile ( t-- ) {\r\n\t\t\ttmp = rtypenamespace.exec( types[ t ] ) || [];\r\n\t\t\ttype = origType = tmp[ 1 ];\r\n\t\t\tnamespaces = ( tmp[ 2 ] || \"\" ).split( \".\" ).sort();\r\n\r\n\t\t\t// Unbind all events (on this namespace, if provided) for the element\r\n\t\t\tif ( !type ) {\r\n\t\t\t\tfor ( type in events ) {\r\n\t\t\t\t\tjQuery.event.remove( elem, type + types[ t ], handler, selector, true );\r\n\t\t\t\t}\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\r\n\t\t\tspecial = jQuery.event.special[ type ] || {};\r\n\t\t\ttype = ( selector ? special.delegateType : special.bindType ) || type;\r\n\t\t\thandlers = events[ type ] || [];\r\n\t\t\ttmp = tmp[ 2 ] &&\r\n\t\t\t\tnew RegExp( \"(^|\\\\.)\" + namespaces.join( \"\\\\.(?:.*\\\\.|)\" ) + \"(\\\\.|$)\" );\r\n\r\n\t\t\t// Remove matching events\r\n\t\t\torigCount = j = handlers.length;\r\n\t\t\twhile ( j-- ) {\r\n\t\t\t\thandleObj = handlers[ j ];\r\n\r\n\t\t\t\tif ( ( mappedTypes || origType === handleObj.origType ) &&\r\n\t\t\t\t\t( !handler || handler.guid === handleObj.guid ) &&\r\n\t\t\t\t\t( !tmp || tmp.test( handleObj.namespace ) ) &&\r\n\t\t\t\t\t( !selector || selector === handleObj.selector ||\r\n\t\t\t\t\t\tselector === \"**\" && handleObj.selector ) ) {\r\n\t\t\t\t\thandlers.splice( j, 1 );\r\n\r\n\t\t\t\t\tif ( handleObj.selector ) {\r\n\t\t\t\t\t\thandlers.delegateCount--;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif ( special.remove ) {\r\n\t\t\t\t\t\tspecial.remove.call( elem, handleObj );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Remove generic event handler if we removed something and no more handlers exist\r\n\t\t\t// (avoids potential for endless recursion during removal of special event handlers)\r\n\t\t\tif ( origCount && !handlers.length ) {\r\n\t\t\t\tif ( !special.teardown ||\r\n\t\t\t\t\tspecial.teardown.call( elem, namespaces, elemData.handle ) === false ) {\r\n\r\n\t\t\t\t\tjQuery.removeEvent( elem, type, elemData.handle );\r\n\t\t\t\t}\r\n\r\n\t\t\t\tdelete events[ type ];\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Remove data and the expando if it's no longer used\r\n\t\tif ( jQuery.isEmptyObject( events ) ) {\r\n\t\t\tdataPriv.remove( elem, \"handle events\" );\r\n\t\t}\r\n\t},\r\n\r\n\tdispatch: function( nativeEvent ) {\r\n\r\n\t\tvar i, j, ret, matched, handleObj, handlerQueue,\r\n\t\t\targs = new Array( arguments.length ),\r\n\r\n\t\t\t// Make a writable jQuery.Event from the native event object\r\n\t\t\tevent = jQuery.event.fix( nativeEvent ),\r\n\r\n\t\t\thandlers = (\r\n\t\t\t\t\tdataPriv.get( this, \"events\" ) || Object.create( null )\r\n\t\t\t\t)[ event.type ] || [],\r\n\t\t\tspecial = jQuery.event.special[ event.type ] || {};\r\n\r\n\t\t// Use the fix-ed jQuery.Event rather than the (read-only) native event\r\n\t\targs[ 0 ] = event;\r\n\r\n\t\tfor ( i = 1; i < arguments.length; i++ ) {\r\n\t\t\targs[ i ] = arguments[ i ];\r\n\t\t}\r\n\r\n\t\tevent.delegateTarget = this;\r\n\r\n\t\t// Call the preDispatch hook for the mapped type, and let it bail if desired\r\n\t\tif ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Determine handlers\r\n\t\thandlerQueue = jQuery.event.handlers.call( this, event, handlers );\r\n\r\n\t\t// Run delegates first; they may want to stop propagation beneath us\r\n\t\ti = 0;\r\n\t\twhile ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) {\r\n\t\t\tevent.currentTarget = matched.elem;\r\n\r\n\t\t\tj = 0;\r\n\t\t\twhile ( ( handleObj = matched.handlers[ j++ ] ) &&\r\n\t\t\t\t!event.isImmediatePropagationStopped() ) {\r\n\r\n\t\t\t\t// If the event is namespaced, then each handler is only invoked if it is\r\n\t\t\t\t// specially universal or its namespaces are a superset of the event's.\r\n\t\t\t\tif ( !event.rnamespace || handleObj.namespace === false ||\r\n\t\t\t\t\tevent.rnamespace.test( handleObj.namespace ) ) {\r\n\r\n\t\t\t\t\tevent.handleObj = handleObj;\r\n\t\t\t\t\tevent.data = handleObj.data;\r\n\r\n\t\t\t\t\tret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle ||\r\n\t\t\t\t\t\thandleObj.handler ).apply( matched.elem, args );\r\n\r\n\t\t\t\t\tif ( ret !== undefined ) {\r\n\t\t\t\t\t\tif ( ( event.result = ret ) === false ) {\r\n\t\t\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\t\t\tevent.stopPropagation();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Call the postDispatch hook for the mapped type\r\n\t\tif ( special.postDispatch ) {\r\n\t\t\tspecial.postDispatch.call( this, event );\r\n\t\t}\r\n\r\n\t\treturn event.result;\r\n\t},\r\n\r\n\thandlers: function( event, handlers ) {\r\n\t\tvar i, handleObj, sel, matchedHandlers, matchedSelectors,\r\n\t\t\thandlerQueue = [],\r\n\t\t\tdelegateCount = handlers.delegateCount,\r\n\t\t\tcur = event.target;\r\n\r\n\t\t// Find delegate handlers\r\n\t\tif ( delegateCount &&\r\n\r\n\t\t\t// Support: IE <=9\r\n\t\t\t// Black-hole SVG <use> instance trees (trac-13180)\r\n\t\t\tcur.nodeType &&\r\n\r\n\t\t\t// Support: Firefox <=42\r\n\t\t\t// Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861)\r\n\t\t\t// https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click\r\n\t\t\t// Support: IE 11 only\r\n\t\t\t// ...but not arrow key \"clicks\" of radio inputs, which can have `button` -1 (gh-2343)\r\n\t\t\t!( event.type === \"click\" && event.button >= 1 ) ) {\r\n\r\n\t\t\tfor ( ; cur !== this; cur = cur.parentNode || this ) {\r\n\r\n\t\t\t\t// Don't check non-elements (#13208)\r\n\t\t\t\t// Don't process clicks on disabled elements (#6911, #8165, #11382, #11764)\r\n\t\t\t\tif ( cur.nodeType === 1 && !( event.type === \"click\" && cur.disabled === true ) ) {\r\n\t\t\t\t\tmatchedHandlers = [];\r\n\t\t\t\t\tmatchedSelectors = {};\r\n\t\t\t\t\tfor ( i = 0; i < delegateCount; i++ ) {\r\n\t\t\t\t\t\thandleObj = handlers[ i ];\r\n\r\n\t\t\t\t\t\t// Don't conflict with Object.prototype properties (#13203)\r\n\t\t\t\t\t\tsel = handleObj.selector + \" \";\r\n\r\n\t\t\t\t\t\tif ( matchedSelectors[ sel ] === undefined ) {\r\n\t\t\t\t\t\t\tmatchedSelectors[ sel ] = handleObj.needsContext ?\r\n\t\t\t\t\t\t\t\tjQuery( sel, this ).index( cur ) > -1 :\r\n\t\t\t\t\t\t\t\tjQuery.find( sel, this, null, [ cur ] ).length;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif ( matchedSelectors[ sel ] ) {\r\n\t\t\t\t\t\t\tmatchedHandlers.push( handleObj );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif ( matchedHandlers.length ) {\r\n\t\t\t\t\t\thandlerQueue.push( { elem: cur, handlers: matchedHandlers } );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Add the remaining (directly-bound) handlers\r\n\t\tcur = this;\r\n\t\tif ( delegateCount < handlers.length ) {\r\n\t\t\thandlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } );\r\n\t\t}\r\n\r\n\t\treturn handlerQueue;\r\n\t},\r\n\r\n\taddProp: function( name, hook ) {\r\n\t\tObject.defineProperty( jQuery.Event.prototype, name, {\r\n\t\t\tenumerable: true,\r\n\t\t\tconfigurable: true,\r\n\r\n\t\t\tget: isFunction( hook ) ?\r\n\t\t\t\tfunction() {\r\n\t\t\t\t\tif ( this.originalEvent ) {\r\n\t\t\t\t\t\t\treturn hook( this.originalEvent );\r\n\t\t\t\t\t}\r\n\t\t\t\t} :\r\n\t\t\t\tfunction() {\r\n\t\t\t\t\tif ( this.originalEvent ) {\r\n\t\t\t\t\t\t\treturn this.originalEvent[ name ];\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n\t\t\tset: function( value ) {\r\n\t\t\t\tObject.defineProperty( this, name, {\r\n\t\t\t\t\tenumerable: true,\r\n\t\t\t\t\tconfigurable: true,\r\n\t\t\t\t\twritable: true,\r\n\t\t\t\t\tvalue: value\r\n\t\t\t\t} );\r\n\t\t\t}\r\n\t\t} );\r\n\t},\r\n\r\n\tfix: function( originalEvent ) {\r\n\t\treturn originalEvent[ jQuery.expando ] ?\r\n\t\t\toriginalEvent :\r\n\t\t\tnew jQuery.Event( originalEvent );\r\n\t},\r\n\r\n\tspecial: {\r\n\t\tload: {\r\n\r\n\t\t\t// Prevent triggered image.load events from bubbling to window.load\r\n\t\t\tnoBubble: true\r\n\t\t},\r\n\t\tclick: {\r\n\r\n\t\t\t// Utilize native event to ensure correct state for checkable inputs\r\n\t\t\tsetup: function( data ) {\r\n\r\n\t\t\t\t// For mutual compressibility with _default, replace `this` access with a local var.\r\n\t\t\t\t// `|| data` is dead code meant only to preserve the variable through minification.\r\n\t\t\t\tvar el = this || data;\r\n\r\n\t\t\t\t// Claim the first handler\r\n\t\t\t\tif ( rcheckableType.test( el.type ) &&\r\n\t\t\t\t\tel.click && nodeName( el, \"input\" ) ) {\r\n\r\n\t\t\t\t\t// dataPriv.set( el, \"click\", ... )\r\n\t\t\t\t\tleverageNative( el, \"click\", returnTrue );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Return false to allow normal processing in the caller\r\n\t\t\t\treturn false;\r\n\t\t\t},\r\n\t\t\ttrigger: function( data ) {\r\n\r\n\t\t\t\t// For mutual compressibility with _default, replace `this` access with a local var.\r\n\t\t\t\t// `|| data` is dead code meant only to preserve the variable through minification.\r\n\t\t\t\tvar el = this || data;\r\n\r\n\t\t\t\t// Force setup before triggering a click\r\n\t\t\t\tif ( rcheckableType.test( el.type ) &&\r\n\t\t\t\t\tel.click && nodeName( el, \"input\" ) ) {\r\n\r\n\t\t\t\t\tleverageNative( el, \"click\" );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Return non-false to allow normal event-path propagation\r\n\t\t\t\treturn true;\r\n\t\t\t},\r\n\r\n\t\t\t// For cross-browser consistency, suppress native .click() on links\r\n\t\t\t// Also prevent it if we're currently inside a leveraged native-event stack\r\n\t\t\t_default: function( event ) {\r\n\t\t\t\tvar target = event.target;\r\n\t\t\t\treturn rcheckableType.test( target.type ) &&\r\n\t\t\t\t\ttarget.click && nodeName( target, \"input\" ) &&\r\n\t\t\t\t\tdataPriv.get( target, \"click\" ) ||\r\n\t\t\t\t\tnodeName( target, \"a\" );\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tbeforeunload: {\r\n\t\t\tpostDispatch: function( event ) {\r\n\r\n\t\t\t\t// Support: Firefox 20+\r\n\t\t\t\t// Firefox doesn't alert if the returnValue field is not set.\r\n\t\t\t\tif ( event.result !== undefined && event.originalEvent ) {\r\n\t\t\t\t\tevent.originalEvent.returnValue = event.result;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n\r\n// Ensure the presence of an event listener that handles manually-triggered\r\n// synthetic events by interrupting progress until reinvoked in response to\r\n// *native* events that it fires directly, ensuring that state changes have\r\n// already occurred before other listeners are invoked.\r\nfunction leverageNative( el, type, expectSync ) {\r\n\r\n\t// Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add\r\n\tif ( !expectSync ) {\r\n\t\tif ( dataPriv.get( el, type ) === undefined ) {\r\n\t\t\tjQuery.event.add( el, type, returnTrue );\r\n\t\t}\r\n\t\treturn;\r\n\t}\r\n\r\n\t// Register the controller as a special universal handler for all event namespaces\r\n\tdataPriv.set( el, type, false );\r\n\tjQuery.event.add( el, type, {\r\n\t\tnamespace: false,\r\n\t\thandler: function( event ) {\r\n\t\t\tvar notAsync, result,\r\n\t\t\t\tsaved = dataPriv.get( this, type );\r\n\r\n\t\t\tif ( ( event.isTrigger & 1 ) && this[ type ] ) {\r\n\r\n\t\t\t\t// Interrupt processing of the outer synthetic .trigger()ed event\r\n\t\t\t\t// Saved data should be false in such cases, but might be a leftover capture object\r\n\t\t\t\t// from an async native handler (gh-4350)\r\n\t\t\t\tif ( !saved.length ) {\r\n\r\n\t\t\t\t\t// Store arguments for use when handling the inner native event\r\n\t\t\t\t\t// There will always be at least one argument (an event object), so this array\r\n\t\t\t\t\t// will not be confused with a leftover capture object.\r\n\t\t\t\t\tsaved = slice.call( arguments );\r\n\t\t\t\t\tdataPriv.set( this, type, saved );\r\n\r\n\t\t\t\t\t// Trigger the native event and capture its result\r\n\t\t\t\t\t// Support: IE <=9 - 11+\r\n\t\t\t\t\t// focus() and blur() are asynchronous\r\n\t\t\t\t\tnotAsync = expectSync( this, type );\r\n\t\t\t\t\tthis[ type ]();\r\n\t\t\t\t\tresult = dataPriv.get( this, type );\r\n\t\t\t\t\tif ( saved !== result || notAsync ) {\r\n\t\t\t\t\t\tdataPriv.set( this, type, false );\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tresult = {};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif ( saved !== result ) {\r\n\r\n\t\t\t\t\t\t// Cancel the outer synthetic event\r\n\t\t\t\t\t\tevent.stopImmediatePropagation();\r\n\t\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\t\treturn result.value;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t// If this is an inner synthetic event for an event with a bubbling surrogate\r\n\t\t\t\t// (focus or blur), assume that the surrogate already propagated from triggering the\r\n\t\t\t\t// native event and prevent that from happening again here.\r\n\t\t\t\t// This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the\r\n\t\t\t\t// bubbling surrogate propagates *after* the non-bubbling base), but that seems\r\n\t\t\t\t// less bad than duplication.\r\n\t\t\t\t} else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) {\r\n\t\t\t\t\tevent.stopPropagation();\r\n\t\t\t\t}\r\n\r\n\t\t\t// If this is a native event triggered above, everything is now in order\r\n\t\t\t// Fire an inner synthetic event with the original arguments\r\n\t\t\t} else if ( saved.length ) {\r\n\r\n\t\t\t\t// ...and capture the result\r\n\t\t\t\tdataPriv.set( this, type, {\r\n\t\t\t\t\tvalue: jQuery.event.trigger(\r\n\r\n\t\t\t\t\t\t// Support: IE <=9 - 11+\r\n\t\t\t\t\t\t// Extend with the prototype to reset the above stopImmediatePropagation()\r\n\t\t\t\t\t\tjQuery.extend( saved[ 0 ], jQuery.Event.prototype ),\r\n\t\t\t\t\t\tsaved.slice( 1 ),\r\n\t\t\t\t\t\tthis\r\n\t\t\t\t\t)\r\n\t\t\t\t} );\r\n\r\n\t\t\t\t// Abort handling of the native event\r\n\t\t\t\tevent.stopImmediatePropagation();\r\n\t\t\t}\r\n\t\t}\r\n\t} );\r\n}\r\n\r\njQuery.removeEvent = function( elem, type, handle ) {\r\n\r\n\t// This \"if\" is needed for plain objects\r\n\tif ( elem.removeEventListener ) {\r\n\t\telem.removeEventListener( type, handle );\r\n\t}\r\n};\r\n\r\njQuery.Event = function( src, props ) {\r\n\r\n\t// Allow instantiation without the 'new' keyword\r\n\tif ( !( this instanceof jQuery.Event ) ) {\r\n\t\treturn new jQuery.Event( src, props );\r\n\t}\r\n\r\n\t// Event object\r\n\tif ( src && src.type ) {\r\n\t\tthis.originalEvent = src;\r\n\t\tthis.type = src.type;\r\n\r\n\t\t// Events bubbling up the document may have been marked as prevented\r\n\t\t// by a handler lower down the tree; reflect the correct value.\r\n\t\tthis.isDefaultPrevented = src.defaultPrevented ||\r\n\t\t\t\tsrc.defaultPrevented === undefined &&\r\n\r\n\t\t\t\t// Support: Android <=2.3 only\r\n\t\t\t\tsrc.returnValue === false ?\r\n\t\t\treturnTrue :\r\n\t\t\treturnFalse;\r\n\r\n\t\t// Create target properties\r\n\t\t// Support: Safari <=6 - 7 only\r\n\t\t// Target should not be a text node (#504, #13143)\r\n\t\tthis.target = ( src.target && src.target.nodeType === 3 ) ?\r\n\t\t\tsrc.target.parentNode :\r\n\t\t\tsrc.target;\r\n\r\n\t\tthis.currentTarget = src.currentTarget;\r\n\t\tthis.relatedTarget = src.relatedTarget;\r\n\r\n\t// Event type\r\n\t} else {\r\n\t\tthis.type = src;\r\n\t}\r\n\r\n\t// Put explicitly provided properties onto the event object\r\n\tif ( props ) {\r\n\t\tjQuery.extend( this, props );\r\n\t}\r\n\r\n\t// Create a timestamp if incoming event doesn't have one\r\n\tthis.timeStamp = src && src.timeStamp || Date.now();\r\n\r\n\t// Mark it as fixed\r\n\tthis[ jQuery.expando ] = true;\r\n};\r\n\r\n// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding\r\n// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html\r\njQuery.Event.prototype = {\r\n\tconstructor: jQuery.Event,\r\n\tisDefaultPrevented: returnFalse,\r\n\tisPropagationStopped: returnFalse,\r\n\tisImmediatePropagationStopped: returnFalse,\r\n\tisSimulated: false,\r\n\r\n\tpreventDefault: function() {\r\n\t\tvar e = this.originalEvent;\r\n\r\n\t\tthis.isDefaultPrevented = returnTrue;\r\n\r\n\t\tif ( e && !this.isSimulated ) {\r\n\t\t\te.preventDefault();\r\n\t\t}\r\n\t},\r\n\tstopPropagation: function() {\r\n\t\tvar e = this.originalEvent;\r\n\r\n\t\tthis.isPropagationStopped = returnTrue;\r\n\r\n\t\tif ( e && !this.isSimulated ) {\r\n\t\t\te.stopPropagation();\r\n\t\t}\r\n\t},\r\n\tstopImmediatePropagation: function() {\r\n\t\tvar e = this.originalEvent;\r\n\r\n\t\tthis.isImmediatePropagationStopped = returnTrue;\r\n\r\n\t\tif ( e && !this.isSimulated ) {\r\n\t\t\te.stopImmediatePropagation();\r\n\t\t}\r\n\r\n\t\tthis.stopPropagation();\r\n\t}\r\n};\r\n\r\n// Includes all common event props including KeyEvent and MouseEvent specific props\r\njQuery.each( {\r\n\taltKey: true,\r\n\tbubbles: true,\r\n\tcancelable: true,\r\n\tchangedTouches: true,\r\n\tctrlKey: true,\r\n\tdetail: true,\r\n\teventPhase: true,\r\n\tmetaKey: true,\r\n\tpageX: true,\r\n\tpageY: true,\r\n\tshiftKey: true,\r\n\tview: true,\r\n\t\"char\": true,\r\n\tcode: true,\r\n\tcharCode: true,\r\n\tkey: true,\r\n\tkeyCode: true,\r\n\tbutton: true,\r\n\tbuttons: true,\r\n\tclientX: true,\r\n\tclientY: true,\r\n\toffsetX: true,\r\n\toffsetY: true,\r\n\tpointerId: true,\r\n\tpointerType: true,\r\n\tscreenX: true,\r\n\tscreenY: true,\r\n\ttargetTouches: true,\r\n\ttoElement: true,\r\n\ttouches: true,\r\n\r\n\twhich: function( event ) {\r\n\t\tvar button = event.button;\r\n\r\n\t\t// Add which for key events\r\n\t\tif ( event.which == null && rkeyEvent.test( event.type ) ) {\r\n\t\t\treturn event.charCode != null ? event.charCode : event.keyCode;\r\n\t\t}\r\n\r\n\t\t// Add which for click: 1 === left; 2 === middle; 3 === right\r\n\t\tif ( !event.which && button !== undefined && rmouseEvent.test( event.type ) ) {\r\n\t\t\tif ( button & 1 ) {\r\n\t\t\t\treturn 1;\r\n\t\t\t}\r\n\r\n\t\t\tif ( button & 2 ) {\r\n\t\t\t\treturn 3;\r\n\t\t\t}\r\n\r\n\t\t\tif ( button & 4 ) {\r\n\t\t\t\treturn 2;\r\n\t\t\t}\r\n\r\n\t\t\treturn 0;\r\n\t\t}\r\n\r\n\t\treturn event.which;\r\n\t}\r\n}, jQuery.event.addProp );\r\n\r\njQuery.each( { focus: \"focusin\", blur: \"focusout\" }, function( type, delegateType ) {\r\n\tjQuery.event.special[ type ] = {\r\n\r\n\t\t// Utilize native event if possible so blur/focus sequence is correct\r\n\t\tsetup: function() {\r\n\r\n\t\t\t// Claim the first handler\r\n\t\t\t// dataPriv.set( this, \"focus\", ... )\r\n\t\t\t// dataPriv.set( this, \"blur\", ... )\r\n\t\t\tleverageNative( this, type, expectSync );\r\n\r\n\t\t\t// Return false to allow normal processing in the caller\r\n\t\t\treturn false;\r\n\t\t},\r\n\t\ttrigger: function() {\r\n\r\n\t\t\t// Force setup before trigger\r\n\t\t\tleverageNative( this, type );\r\n\r\n\t\t\t// Return non-false to allow normal event-path propagation\r\n\t\t\treturn true;\r\n\t\t},\r\n\r\n\t\tdelegateType: delegateType\r\n\t};\r\n} );\r\n\r\n// Create mouseenter/leave events using mouseover/out and event-time checks\r\n// so that event delegation works in jQuery.\r\n// Do the same for pointerenter/pointerleave and pointerover/pointerout\r\n//\r\n// Support: Safari 7 only\r\n// Safari sends mouseenter too often; see:\r\n// https://bugs.chromium.org/p/chromium/issues/detail?id=470258\r\n// for the description of the bug (it existed in older Chrome versions as well).\r\njQuery.each( {\r\n\tmouseenter: \"mouseover\",\r\n\tmouseleave: \"mouseout\",\r\n\tpointerenter: \"pointerover\",\r\n\tpointerleave: \"pointerout\"\r\n}, function( orig, fix ) {\r\n\tjQuery.event.special[ orig ] = {\r\n\t\tdelegateType: fix,\r\n\t\tbindType: fix,\r\n\r\n\t\thandle: function( event ) {\r\n\t\t\tvar ret,\r\n\t\t\t\ttarget = this,\r\n\t\t\t\trelated = event.relatedTarget,\r\n\t\t\t\thandleObj = event.handleObj;\r\n\r\n\t\t\t// For mouseenter/leave call the handler if related is outside the target.\r\n\t\t\t// NB: No relatedTarget if the mouse left/entered the browser window\r\n\t\t\tif ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) {\r\n\t\t\t\tevent.type = handleObj.origType;\r\n\t\t\t\tret = handleObj.handler.apply( this, arguments );\r\n\t\t\t\tevent.type = fix;\r\n\t\t\t}\r\n\t\t\treturn ret;\r\n\t\t}\r\n\t};\r\n} );\r\n\r\njQuery.fn.extend( {\r\n\r\n\ton: function( types, selector, data, fn ) {\r\n\t\treturn on( this, types, selector, data, fn );\r\n\t},\r\n\tone: function( types, selector, data, fn ) {\r\n\t\treturn on( this, types, selector, data, fn, 1 );\r\n\t},\r\n\toff: function( types, selector, fn ) {\r\n\t\tvar handleObj, type;\r\n\t\tif ( types && types.preventDefault && types.handleObj ) {\r\n\r\n\t\t\t// ( event )  dispatched jQuery.Event\r\n\t\t\thandleObj = types.handleObj;\r\n\t\t\tjQuery( types.delegateTarget ).off(\r\n\t\t\t\thandleObj.namespace ?\r\n\t\t\t\t\thandleObj.origType + \".\" + handleObj.namespace :\r\n\t\t\t\t\thandleObj.origType,\r\n\t\t\t\thandleObj.selector,\r\n\t\t\t\thandleObj.handler\r\n\t\t\t);\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\tif ( typeof types === \"object\" ) {\r\n\r\n\t\t\t// ( types-object [, selector] )\r\n\t\t\tfor ( type in types ) {\r\n\t\t\t\tthis.off( type, selector, types[ type ] );\r\n\t\t\t}\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\tif ( selector === false || typeof selector === \"function\" ) {\r\n\r\n\t\t\t// ( types [, fn] )\r\n\t\t\tfn = selector;\r\n\t\t\tselector = undefined;\r\n\t\t}\r\n\t\tif ( fn === false ) {\r\n\t\t\tfn = returnFalse;\r\n\t\t}\r\n\t\treturn this.each( function() {\r\n\t\t\tjQuery.event.remove( this, types, fn, selector );\r\n\t\t} );\r\n\t}\r\n} );\r\n\r\n\r\nvar\r\n\r\n\t// Support: IE <=10 - 11, Edge 12 - 13 only\r\n\t// In IE/Edge using regex groups here causes severe slowdowns.\r\n\t// See https://connect.microsoft.com/IE/feedback/details/1736512/\r\n\trnoInnerhtml = /<script|<style|<link/i,\r\n\r\n\t// checked=\"checked\" or checked\r\n\trchecked = /checked\\s*(?:[^=]|=\\s*.checked.)/i,\r\n\trcleanScript = /^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g;\r\n\r\n// Prefer a tbody over its parent table for containing new rows\r\nfunction manipulationTarget( elem, content ) {\r\n\tif ( nodeName( elem, \"table\" ) &&\r\n\t\tnodeName( content.nodeType !== 11 ? content : content.firstChild, \"tr\" ) ) {\r\n\r\n\t\treturn jQuery( elem ).children( \"tbody\" )[ 0 ] || elem;\r\n\t}\r\n\r\n\treturn elem;\r\n}\r\n\r\n// Replace/restore the type attribute of script elements for safe DOM manipulation\r\nfunction disableScript( elem ) {\r\n\telem.type = ( elem.getAttribute( \"type\" ) !== null ) + \"/\" + elem.type;\r\n\treturn elem;\r\n}\r\nfunction restoreScript( elem ) {\r\n\tif ( ( elem.type || \"\" ).slice( 0, 5 ) === \"true/\" ) {\r\n\t\telem.type = elem.type.slice( 5 );\r\n\t} else {\r\n\t\telem.removeAttribute( \"type\" );\r\n\t}\r\n\r\n\treturn elem;\r\n}\r\n\r\nfunction cloneCopyEvent( src, dest ) {\r\n\tvar i, l, type, pdataOld, udataOld, udataCur, events;\r\n\r\n\tif ( dest.nodeType !== 1 ) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t// 1. Copy private data: events, handlers, etc.\r\n\tif ( dataPriv.hasData( src ) ) {\r\n\t\tpdataOld = dataPriv.get( src );\r\n\t\tevents = pdataOld.events;\r\n\r\n\t\tif ( events ) {\r\n\t\t\tdataPriv.remove( dest, \"handle events\" );\r\n\r\n\t\t\tfor ( type in events ) {\r\n\t\t\t\tfor ( i = 0, l = events[ type ].length; i < l; i++ ) {\r\n\t\t\t\t\tjQuery.event.add( dest, type, events[ type ][ i ] );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// 2. Copy user data\r\n\tif ( dataUser.hasData( src ) ) {\r\n\t\tudataOld = dataUser.access( src );\r\n\t\tudataCur = jQuery.extend( {}, udataOld );\r\n\r\n\t\tdataUser.set( dest, udataCur );\r\n\t}\r\n}\r\n\r\n// Fix IE bugs, see support tests\r\nfunction fixInput( src, dest ) {\r\n\tvar nodeName = dest.nodeName.toLowerCase();\r\n\r\n\t// Fails to persist the checked state of a cloned checkbox or radio button.\r\n\tif ( nodeName === \"input\" && rcheckableType.test( src.type ) ) {\r\n\t\tdest.checked = src.checked;\r\n\r\n\t// Fails to return the selected option to the default selected state when cloning options\r\n\t} else if ( nodeName === \"input\" || nodeName === \"textarea\" ) {\r\n\t\tdest.defaultValue = src.defaultValue;\r\n\t}\r\n}\r\n\r\nfunction domManip( collection, args, callback, ignored ) {\r\n\r\n\t// Flatten any nested arrays\r\n\targs = flat( args );\r\n\r\n\tvar fragment, first, scripts, hasScripts, node, doc,\r\n\t\ti = 0,\r\n\t\tl = collection.length,\r\n\t\tiNoClone = l - 1,\r\n\t\tvalue = args[ 0 ],\r\n\t\tvalueIsFunction = isFunction( value );\r\n\r\n\t// We can't cloneNode fragments that contain checked, in WebKit\r\n\tif ( valueIsFunction ||\r\n\t\t\t( l > 1 && typeof value === \"string\" &&\r\n\t\t\t\t!support.checkClone && rchecked.test( value ) ) ) {\r\n\t\treturn collection.each( function( index ) {\r\n\t\t\tvar self = collection.eq( index );\r\n\t\t\tif ( valueIsFunction ) {\r\n\t\t\t\targs[ 0 ] = value.call( this, index, self.html() );\r\n\t\t\t}\r\n\t\t\tdomManip( self, args, callback, ignored );\r\n\t\t} );\r\n\t}\r\n\r\n\tif ( l ) {\r\n\t\tfragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored );\r\n\t\tfirst = fragment.firstChild;\r\n\r\n\t\tif ( fragment.childNodes.length === 1 ) {\r\n\t\t\tfragment = first;\r\n\t\t}\r\n\r\n\t\t// Require either new content or an interest in ignored elements to invoke the callback\r\n\t\tif ( first || ignored ) {\r\n\t\t\tscripts = jQuery.map( getAll( fragment, \"script\" ), disableScript );\r\n\t\t\thasScripts = scripts.length;\r\n\r\n\t\t\t// Use the original fragment for the last item\r\n\t\t\t// instead of the first because it can end up\r\n\t\t\t// being emptied incorrectly in certain situations (#8070).\r\n\t\t\tfor ( ; i < l; i++ ) {\r\n\t\t\t\tnode = fragment;\r\n\r\n\t\t\t\tif ( i !== iNoClone ) {\r\n\t\t\t\t\tnode = jQuery.clone( node, true, true );\r\n\r\n\t\t\t\t\t// Keep references to cloned scripts for later restoration\r\n\t\t\t\t\tif ( hasScripts ) {\r\n\r\n\t\t\t\t\t\t// Support: Android <=4.0 only, PhantomJS 1 only\r\n\t\t\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\r\n\t\t\t\t\t\tjQuery.merge( scripts, getAll( node, \"script\" ) );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tcallback.call( collection[ i ], node, i );\r\n\t\t\t}\r\n\r\n\t\t\tif ( hasScripts ) {\r\n\t\t\t\tdoc = scripts[ scripts.length - 1 ].ownerDocument;\r\n\r\n\t\t\t\t// Reenable scripts\r\n\t\t\t\tjQuery.map( scripts, restoreScript );\r\n\r\n\t\t\t\t// Evaluate executable scripts on first document insertion\r\n\t\t\t\tfor ( i = 0; i < hasScripts; i++ ) {\r\n\t\t\t\t\tnode = scripts[ i ];\r\n\t\t\t\t\tif ( rscriptType.test( node.type || \"\" ) &&\r\n\t\t\t\t\t\t!dataPriv.access( node, \"globalEval\" ) &&\r\n\t\t\t\t\t\tjQuery.contains( doc, node ) ) {\r\n\r\n\t\t\t\t\t\tif ( node.src && ( node.type || \"\" ).toLowerCase()  !== \"module\" ) {\r\n\r\n\t\t\t\t\t\t\t// Optional AJAX dependency, but won't run scripts if not present\r\n\t\t\t\t\t\t\tif ( jQuery._evalUrl && !node.noModule ) {\r\n\t\t\t\t\t\t\t\tjQuery._evalUrl( node.src, {\r\n\t\t\t\t\t\t\t\t\tnonce: node.nonce || node.getAttribute( \"nonce\" )\r\n\t\t\t\t\t\t\t\t}, doc );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tDOMEval( node.textContent.replace( rcleanScript, \"\" ), node, doc );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\treturn collection;\r\n}\r\n\r\nfunction remove( elem, selector, keepData ) {\r\n\tvar node,\r\n\t\tnodes = selector ? jQuery.filter( selector, elem ) : elem,\r\n\t\ti = 0;\r\n\r\n\tfor ( ; ( node = nodes[ i ] ) != null; i++ ) {\r\n\t\tif ( !keepData && node.nodeType === 1 ) {\r\n\t\t\tjQuery.cleanData( getAll( node ) );\r\n\t\t}\r\n\r\n\t\tif ( node.parentNode ) {\r\n\t\t\tif ( keepData && isAttached( node ) ) {\r\n\t\t\t\tsetGlobalEval( getAll( node, \"script\" ) );\r\n\t\t\t}\r\n\t\t\tnode.parentNode.removeChild( node );\r\n\t\t}\r\n\t}\r\n\r\n\treturn elem;\r\n}\r\n\r\njQuery.extend( {\r\n\thtmlPrefilter: function( html ) {\r\n\t\treturn html;\r\n\t},\r\n\r\n\tclone: function( elem, dataAndEvents, deepDataAndEvents ) {\r\n\t\tvar i, l, srcElements, destElements,\r\n\t\t\tclone = elem.cloneNode( true ),\r\n\t\t\tinPage = isAttached( elem );\r\n\r\n\t\t// Fix IE cloning issues\r\n\t\tif ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) &&\r\n\t\t\t\t!jQuery.isXMLDoc( elem ) ) {\r\n\r\n\t\t\t// We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2\r\n\t\t\tdestElements = getAll( clone );\r\n\t\t\tsrcElements = getAll( elem );\r\n\r\n\t\t\tfor ( i = 0, l = srcElements.length; i < l; i++ ) {\r\n\t\t\t\tfixInput( srcElements[ i ], destElements[ i ] );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Copy the events from the original to the clone\r\n\t\tif ( dataAndEvents ) {\r\n\t\t\tif ( deepDataAndEvents ) {\r\n\t\t\t\tsrcElements = srcElements || getAll( elem );\r\n\t\t\t\tdestElements = destElements || getAll( clone );\r\n\r\n\t\t\t\tfor ( i = 0, l = srcElements.length; i < l; i++ ) {\r\n\t\t\t\t\tcloneCopyEvent( srcElements[ i ], destElements[ i ] );\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tcloneCopyEvent( elem, clone );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Preserve script evaluation history\r\n\t\tdestElements = getAll( clone, \"script\" );\r\n\t\tif ( destElements.length > 0 ) {\r\n\t\t\tsetGlobalEval( destElements, !inPage && getAll( elem, \"script\" ) );\r\n\t\t}\r\n\r\n\t\t// Return the cloned set\r\n\t\treturn clone;\r\n\t},\r\n\r\n\tcleanData: function( elems ) {\r\n\t\tvar data, elem, type,\r\n\t\t\tspecial = jQuery.event.special,\r\n\t\t\ti = 0;\r\n\r\n\t\tfor ( ; ( elem = elems[ i ] ) !== undefined; i++ ) {\r\n\t\t\tif ( acceptData( elem ) ) {\r\n\t\t\t\tif ( ( data = elem[ dataPriv.expando ] ) ) {\r\n\t\t\t\t\tif ( data.events ) {\r\n\t\t\t\t\t\tfor ( type in data.events ) {\r\n\t\t\t\t\t\t\tif ( special[ type ] ) {\r\n\t\t\t\t\t\t\t\tjQuery.event.remove( elem, type );\r\n\r\n\t\t\t\t\t\t\t// This is a shortcut to avoid jQuery.event.remove's overhead\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tjQuery.removeEvent( elem, type, data.handle );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Support: Chrome <=35 - 45+\r\n\t\t\t\t\t// Assign undefined instead of using delete, see Data#remove\r\n\t\t\t\t\telem[ dataPriv.expando ] = undefined;\r\n\t\t\t\t}\r\n\t\t\t\tif ( elem[ dataUser.expando ] ) {\r\n\r\n\t\t\t\t\t// Support: Chrome <=35 - 45+\r\n\t\t\t\t\t// Assign undefined instead of using delete, see Data#remove\r\n\t\t\t\t\telem[ dataUser.expando ] = undefined;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n} );\r\n\r\njQuery.fn.extend( {\r\n\tdetach: function( selector ) {\r\n\t\treturn remove( this, selector, true );\r\n\t},\r\n\r\n\tremove: function( selector ) {\r\n\t\treturn remove( this, selector );\r\n\t},\r\n\r\n\ttext: function( value ) {\r\n\t\treturn access( this, function( value ) {\r\n\t\t\treturn value === undefined ?\r\n\t\t\t\tjQuery.text( this ) :\r\n\t\t\t\tthis.empty().each( function() {\r\n\t\t\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\r\n\t\t\t\t\t\tthis.textContent = value;\r\n\t\t\t\t\t}\r\n\t\t\t\t} );\r\n\t\t}, null, value, arguments.length );\r\n\t},\r\n\r\n\tappend: function() {\r\n\t\treturn domManip( this, arguments, function( elem ) {\r\n\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\r\n\t\t\t\tvar target = manipulationTarget( this, elem );\r\n\t\t\t\ttarget.appendChild( elem );\r\n\t\t\t}\r\n\t\t} );\r\n\t},\r\n\r\n\tprepend: function() {\r\n\t\treturn domManip( this, arguments, function( elem ) {\r\n\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\r\n\t\t\t\tvar target = manipulationTarget( this, elem );\r\n\t\t\t\ttarget.insertBefore( elem, target.firstChild );\r\n\t\t\t}\r\n\t\t} );\r\n\t},\r\n\r\n\tbefore: function() {\r\n\t\treturn domManip( this, arguments, function( elem ) {\r\n\t\t\tif ( this.parentNode ) {\r\n\t\t\t\tthis.parentNode.insertBefore( elem, this );\r\n\t\t\t}\r\n\t\t} );\r\n\t},\r\n\r\n\tafter: function() {\r\n\t\treturn domManip( this, arguments, function( elem ) {\r\n\t\t\tif ( this.parentNode ) {\r\n\t\t\t\tthis.parentNode.insertBefore( elem, this.nextSibling );\r\n\t\t\t}\r\n\t\t} );\r\n\t},\r\n\r\n\tempty: function() {\r\n\t\tvar elem,\r\n\t\t\ti = 0;\r\n\r\n\t\tfor ( ; ( elem = this[ i ] ) != null; i++ ) {\r\n\t\t\tif ( elem.nodeType === 1 ) {\r\n\r\n\t\t\t\t// Prevent memory leaks\r\n\t\t\t\tjQuery.cleanData( getAll( elem, false ) );\r\n\r\n\t\t\t\t// Remove any remaining nodes\r\n\t\t\t\telem.textContent = \"\";\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn this;\r\n\t},\r\n\r\n\tclone: function( dataAndEvents, deepDataAndEvents ) {\r\n\t\tdataAndEvents = dataAndEvents == null ? false : dataAndEvents;\r\n\t\tdeepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;\r\n\r\n\t\treturn this.map( function() {\r\n\t\t\treturn jQuery.clone( this, dataAndEvents, deepDataAndEvents );\r\n\t\t} );\r\n\t},\r\n\r\n\thtml: function( value ) {\r\n\t\treturn access( this, function( value ) {\r\n\t\t\tvar elem = this[ 0 ] || {},\r\n\t\t\t\ti = 0,\r\n\t\t\t\tl = this.length;\r\n\r\n\t\t\tif ( value === undefined && elem.nodeType === 1 ) {\r\n\t\t\t\treturn elem.innerHTML;\r\n\t\t\t}\r\n\r\n\t\t\t// See if we can take a shortcut and just use innerHTML\r\n\t\t\tif ( typeof value === \"string\" && !rnoInnerhtml.test( value ) &&\r\n\t\t\t\t!wrapMap[ ( rtagName.exec( value ) || [ \"\", \"\" ] )[ 1 ].toLowerCase() ] ) {\r\n\r\n\t\t\t\tvalue = jQuery.htmlPrefilter( value );\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tfor ( ; i < l; i++ ) {\r\n\t\t\t\t\t\telem = this[ i ] || {};\r\n\r\n\t\t\t\t\t\t// Remove element nodes and prevent memory leaks\r\n\t\t\t\t\t\tif ( elem.nodeType === 1 ) {\r\n\t\t\t\t\t\t\tjQuery.cleanData( getAll( elem, false ) );\r\n\t\t\t\t\t\t\telem.innerHTML = value;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\telem = 0;\r\n\r\n\t\t\t\t// If using innerHTML throws an exception, use the fallback method\r\n\t\t\t\t} catch ( e ) {}\r\n\t\t\t}\r\n\r\n\t\t\tif ( elem ) {\r\n\t\t\t\tthis.empty().append( value );\r\n\t\t\t}\r\n\t\t}, null, value, arguments.length );\r\n\t},\r\n\r\n\treplaceWith: function() {\r\n\t\tvar ignored = [];\r\n\r\n\t\t// Make the changes, replacing each non-ignored context element with the new content\r\n\t\treturn domManip( this, arguments, function( elem ) {\r\n\t\t\tvar parent = this.parentNode;\r\n\r\n\t\t\tif ( jQuery.inArray( this, ignored ) < 0 ) {\r\n\t\t\t\tjQuery.cleanData( getAll( this ) );\r\n\t\t\t\tif ( parent ) {\r\n\t\t\t\t\tparent.replaceChild( elem, this );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t// Force callback invocation\r\n\t\t}, ignored );\r\n\t}\r\n} );\r\n\r\njQuery.each( {\r\n\tappendTo: \"append\",\r\n\tprependTo: \"prepend\",\r\n\tinsertBefore: \"before\",\r\n\tinsertAfter: \"after\",\r\n\treplaceAll: \"replaceWith\"\r\n}, function( name, original ) {\r\n\tjQuery.fn[ name ] = function( selector ) {\r\n\t\tvar elems,\r\n\t\t\tret = [],\r\n\t\t\tinsert = jQuery( selector ),\r\n\t\t\tlast = insert.length - 1,\r\n\t\t\ti = 0;\r\n\r\n\t\tfor ( ; i <= last; i++ ) {\r\n\t\t\telems = i === last ? this : this.clone( true );\r\n\t\t\tjQuery( insert[ i ] )[ original ]( elems );\r\n\r\n\t\t\t// Support: Android <=4.0 only, PhantomJS 1 only\r\n\t\t\t// .get() because push.apply(_, arraylike) throws on ancient WebKit\r\n\t\t\tpush.apply( ret, elems.get() );\r\n\t\t}\r\n\r\n\t\treturn this.pushStack( ret );\r\n\t};\r\n} );\r\nvar rnumnonpx = new RegExp( \"^(\" + pnum + \")(?!px)[a-z%]+$\", \"i\" );\r\n\r\nvar getStyles = function( elem ) {\r\n\r\n\t\t// Support: IE <=11 only, Firefox <=30 (#15098, #14150)\r\n\t\t// IE throws on elements created in popups\r\n\t\t// FF meanwhile throws on frame elements through \"defaultView.getComputedStyle\"\r\n\t\tvar view = elem.ownerDocument.defaultView;\r\n\r\n\t\tif ( !view || !view.opener ) {\r\n\t\t\tview = window;\r\n\t\t}\r\n\r\n\t\treturn view.getComputedStyle( elem );\r\n\t};\r\n\r\nvar swap = function( elem, options, callback ) {\r\n\tvar ret, name,\r\n\t\told = {};\r\n\r\n\t// Remember the old values, and insert the new ones\r\n\tfor ( name in options ) {\r\n\t\told[ name ] = elem.style[ name ];\r\n\t\telem.style[ name ] = options[ name ];\r\n\t}\r\n\r\n\tret = callback.call( elem );\r\n\r\n\t// Revert the old values\r\n\tfor ( name in options ) {\r\n\t\telem.style[ name ] = old[ name ];\r\n\t}\r\n\r\n\treturn ret;\r\n};\r\n\r\n\r\nvar rboxStyle = new RegExp( cssExpand.join( \"|\" ), \"i\" );\r\n\r\n\r\n\r\n( function() {\r\n\r\n\t// Executing both pixelPosition & boxSizingReliable tests require only one layout\r\n\t// so they're executed at the same time to save the second computation.\r\n\tfunction computeStyleTests() {\r\n\r\n\t\t// This is a singleton, we need to execute it only once\r\n\t\tif ( !div ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tcontainer.style.cssText = \"position:absolute;left:-11111px;width:60px;\" +\r\n\t\t\t\"margin-top:1px;padding:0;border:0\";\r\n\t\tdiv.style.cssText =\r\n\t\t\t\"position:relative;display:block;box-sizing:border-box;overflow:scroll;\" +\r\n\t\t\t\"margin:auto;border:1px;padding:1px;\" +\r\n\t\t\t\"width:60%;top:1%\";\r\n\t\tdocumentElement.appendChild( container ).appendChild( div );\r\n\r\n\t\tvar divStyle = window.getComputedStyle( div );\r\n\t\tpixelPositionVal = divStyle.top !== \"1%\";\r\n\r\n\t\t// Support: Android 4.0 - 4.3 only, Firefox <=3 - 44\r\n\t\treliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12;\r\n\r\n\t\t// Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3\r\n\t\t// Some styles come back with percentage values, even though they shouldn't\r\n\t\tdiv.style.right = \"60%\";\r\n\t\tpixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36;\r\n\r\n\t\t// Support: IE 9 - 11 only\r\n\t\t// Detect misreporting of content dimensions for box-sizing:border-box elements\r\n\t\tboxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36;\r\n\r\n\t\t// Support: IE 9 only\r\n\t\t// Detect overflow:scroll screwiness (gh-3699)\r\n\t\t// Support: Chrome <=64\r\n\t\t// Don't get tricked when zoom affects offsetWidth (gh-4029)\r\n\t\tdiv.style.position = \"absolute\";\r\n\t\tscrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12;\r\n\r\n\t\tdocumentElement.removeChild( container );\r\n\r\n\t\t// Nullify the div so it wouldn't be stored in the memory and\r\n\t\t// it will also be a sign that checks already performed\r\n\t\tdiv = null;\r\n\t}\r\n\r\n\tfunction roundPixelMeasures( measure ) {\r\n\t\treturn Math.round( parseFloat( measure ) );\r\n\t}\r\n\r\n\tvar pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal,\r\n\t\treliableTrDimensionsVal, reliableMarginLeftVal,\r\n\t\tcontainer = document.createElement( \"div\" ),\r\n\t\tdiv = document.createElement( \"div\" );\r\n\r\n\t// Finish early in limited (non-browser) environments\r\n\tif ( !div.style ) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t// Support: IE <=9 - 11 only\r\n\t// Style of cloned element affects source element cloned (#8908)\r\n\tdiv.style.backgroundClip = \"content-box\";\r\n\tdiv.cloneNode( true ).style.backgroundClip = \"\";\r\n\tsupport.clearCloneStyle = div.style.backgroundClip === \"content-box\";\r\n\r\n\tjQuery.extend( support, {\r\n\t\tboxSizingReliable: function() {\r\n\t\t\tcomputeStyleTests();\r\n\t\t\treturn boxSizingReliableVal;\r\n\t\t},\r\n\t\tpixelBoxStyles: function() {\r\n\t\t\tcomputeStyleTests();\r\n\t\t\treturn pixelBoxStylesVal;\r\n\t\t},\r\n\t\tpixelPosition: function() {\r\n\t\t\tcomputeStyleTests();\r\n\t\t\treturn pixelPositionVal;\r\n\t\t},\r\n\t\treliableMarginLeft: function() {\r\n\t\t\tcomputeStyleTests();\r\n\t\t\treturn reliableMarginLeftVal;\r\n\t\t},\r\n\t\tscrollboxSize: function() {\r\n\t\t\tcomputeStyleTests();\r\n\t\t\treturn scrollboxSizeVal;\r\n\t\t},\r\n\r\n\t\t// Support: IE 9 - 11+, Edge 15 - 18+\r\n\t\t// IE/Edge misreport `getComputedStyle` of table rows with width/height\r\n\t\t// set in CSS while `offset*` properties report correct values.\r\n\t\t// Behavior in IE 9 is more subtle than in newer versions & it passes\r\n\t\t// some versions of this test; make sure not to make it pass there!\r\n\t\treliableTrDimensions: function() {\r\n\t\t\tvar table, tr, trChild, trStyle;\r\n\t\t\tif ( reliableTrDimensionsVal == null ) {\r\n\t\t\t\ttable = document.createElement( \"table\" );\r\n\t\t\t\ttr = document.createElement( \"tr\" );\r\n\t\t\t\ttrChild = document.createElement( \"div\" );\r\n\r\n\t\t\t\ttable.style.cssText = \"position:absolute;left:-11111px\";\r\n\t\t\t\ttr.style.height = \"1px\";\r\n\t\t\t\ttrChild.style.height = \"9px\";\r\n\r\n\t\t\t\tdocumentElement\r\n\t\t\t\t\t.appendChild( table )\r\n\t\t\t\t\t.appendChild( tr )\r\n\t\t\t\t\t.appendChild( trChild );\r\n\r\n\t\t\t\ttrStyle = window.getComputedStyle( tr );\r\n\t\t\t\treliableTrDimensionsVal = parseInt( trStyle.height ) > 3;\r\n\r\n\t\t\t\tdocumentElement.removeChild( table );\r\n\t\t\t}\r\n\t\t\treturn reliableTrDimensionsVal;\r\n\t\t}\r\n\t} );\r\n} )();\r\n\r\n\r\nfunction curCSS( elem, name, computed ) {\r\n\tvar width, minWidth, maxWidth, ret,\r\n\r\n\t\t// Support: Firefox 51+\r\n\t\t// Retrieving style before computed somehow\r\n\t\t// fixes an issue with getting wrong values\r\n\t\t// on detached elements\r\n\t\tstyle = elem.style;\r\n\r\n\tcomputed = computed || getStyles( elem );\r\n\r\n\t// getPropertyValue is needed for:\r\n\t//   .css('filter') (IE 9 only, #12537)\r\n\t//   .css('--customProperty) (#3144)\r\n\tif ( computed ) {\r\n\t\tret = computed.getPropertyValue( name ) || computed[ name ];\r\n\r\n\t\tif ( ret === \"\" && !isAttached( elem ) ) {\r\n\t\t\tret = jQuery.style( elem, name );\r\n\t\t}\r\n\r\n\t\t// A tribute to the \"awesome hack by Dean Edwards\"\r\n\t\t// Android Browser returns percentage for some values,\r\n\t\t// but width seems to be reliably pixels.\r\n\t\t// This is against the CSSOM draft spec:\r\n\t\t// https://drafts.csswg.org/cssom/#resolved-values\r\n\t\tif ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) {\r\n\r\n\t\t\t// Remember the original values\r\n\t\t\twidth = style.width;\r\n\t\t\tminWidth = style.minWidth;\r\n\t\t\tmaxWidth = style.maxWidth;\r\n\r\n\t\t\t// Put in the new values to get a computed value out\r\n\t\t\tstyle.minWidth = style.maxWidth = style.width = ret;\r\n\t\t\tret = computed.width;\r\n\r\n\t\t\t// Revert the changed values\r\n\t\t\tstyle.width = width;\r\n\t\t\tstyle.minWidth = minWidth;\r\n\t\t\tstyle.maxWidth = maxWidth;\r\n\t\t}\r\n\t}\r\n\r\n\treturn ret !== undefined ?\r\n\r\n\t\t// Support: IE <=9 - 11 only\r\n\t\t// IE returns zIndex value as an integer.\r\n\t\tret + \"\" :\r\n\t\tret;\r\n}\r\n\r\n\r\nfunction addGetHookIf( conditionFn, hookFn ) {\r\n\r\n\t// Define the hook, we'll check on the first run if it's really needed.\r\n\treturn {\r\n\t\tget: function() {\r\n\t\t\tif ( conditionFn() ) {\r\n\r\n\t\t\t\t// Hook not needed (or it's not possible to use it due\r\n\t\t\t\t// to missing dependency), remove it.\r\n\t\t\t\tdelete this.get;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Hook needed; redefine it so that the support test is not executed again.\r\n\t\t\treturn ( this.get = hookFn ).apply( this, arguments );\r\n\t\t}\r\n\t};\r\n}\r\n\r\n\r\nvar cssPrefixes = [ \"Webkit\", \"Moz\", \"ms\" ],\r\n\temptyStyle = document.createElement( \"div\" ).style,\r\n\tvendorProps = {};\r\n\r\n// Return a vendor-prefixed property or undefined\r\nfunction vendorPropName( name ) {\r\n\r\n\t// Check for vendor prefixed names\r\n\tvar capName = name[ 0 ].toUpperCase() + name.slice( 1 ),\r\n\t\ti = cssPrefixes.length;\r\n\r\n\twhile ( i-- ) {\r\n\t\tname = cssPrefixes[ i ] + capName;\r\n\t\tif ( name in emptyStyle ) {\r\n\t\t\treturn name;\r\n\t\t}\r\n\t}\r\n}\r\n\r\n// Return a potentially-mapped jQuery.cssProps or vendor prefixed property\r\nfunction finalPropName( name ) {\r\n\tvar final = jQuery.cssProps[ name ] || vendorProps[ name ];\r\n\r\n\tif ( final ) {\r\n\t\treturn final;\r\n\t}\r\n\tif ( name in emptyStyle ) {\r\n\t\treturn name;\r\n\t}\r\n\treturn vendorProps[ name ] = vendorPropName( name ) || name;\r\n}\r\n\r\n\r\nvar\r\n\r\n\t// Swappable if display is none or starts with table\r\n\t// except \"table\", \"table-cell\", or \"table-caption\"\r\n\t// See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display\r\n\trdisplayswap = /^(none|table(?!-c[ea]).+)/,\r\n\trcustomProp = /^--/,\r\n\tcssShow = { position: \"absolute\", visibility: \"hidden\", display: \"block\" },\r\n\tcssNormalTransform = {\r\n\t\tletterSpacing: \"0\",\r\n\t\tfontWeight: \"400\"\r\n\t};\r\n\r\nfunction setPositiveNumber( _elem, value, subtract ) {\r\n\r\n\t// Any relative (+/-) values have already been\r\n\t// normalized at this point\r\n\tvar matches = rcssNum.exec( value );\r\n\treturn matches ?\r\n\r\n\t\t// Guard against undefined \"subtract\", e.g., when used as in cssHooks\r\n\t\tMath.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || \"px\" ) :\r\n\t\tvalue;\r\n}\r\n\r\nfunction boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) {\r\n\tvar i = dimension === \"width\" ? 1 : 0,\r\n\t\textra = 0,\r\n\t\tdelta = 0;\r\n\r\n\t// Adjustment may not be necessary\r\n\tif ( box === ( isBorderBox ? \"border\" : \"content\" ) ) {\r\n\t\treturn 0;\r\n\t}\r\n\r\n\tfor ( ; i < 4; i += 2 ) {\r\n\r\n\t\t// Both box models exclude margin\r\n\t\tif ( box === \"margin\" ) {\r\n\t\t\tdelta += jQuery.css( elem, box + cssExpand[ i ], true, styles );\r\n\t\t}\r\n\r\n\t\t// If we get here with a content-box, we're seeking \"padding\" or \"border\" or \"margin\"\r\n\t\tif ( !isBorderBox ) {\r\n\r\n\t\t\t// Add padding\r\n\t\t\tdelta += jQuery.css( elem, \"padding\" + cssExpand[ i ], true, styles );\r\n\r\n\t\t\t// For \"border\" or \"margin\", add border\r\n\t\t\tif ( box !== \"padding\" ) {\r\n\t\t\t\tdelta += jQuery.css( elem, \"border\" + cssExpand[ i ] + \"Width\", true, styles );\r\n\r\n\t\t\t// But still keep track of it otherwise\r\n\t\t\t} else {\r\n\t\t\t\textra += jQuery.css( elem, \"border\" + cssExpand[ i ] + \"Width\", true, styles );\r\n\t\t\t}\r\n\r\n\t\t// If we get here with a border-box (content + padding + border), we're seeking \"content\" or\r\n\t\t// \"padding\" or \"margin\"\r\n\t\t} else {\r\n\r\n\t\t\t// For \"content\", subtract padding\r\n\t\t\tif ( box === \"content\" ) {\r\n\t\t\t\tdelta -= jQuery.css( elem, \"padding\" + cssExpand[ i ], true, styles );\r\n\t\t\t}\r\n\r\n\t\t\t// For \"content\" or \"padding\", subtract border\r\n\t\t\tif ( box !== \"margin\" ) {\r\n\t\t\t\tdelta -= jQuery.css( elem, \"border\" + cssExpand[ i ] + \"Width\", true, styles );\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// Account for positive content-box scroll gutter when requested by providing computedVal\r\n\tif ( !isBorderBox && computedVal >= 0 ) {\r\n\r\n\t\t// offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border\r\n\t\t// Assuming integer scroll gutter, subtract the rest and round down\r\n\t\tdelta += Math.max( 0, Math.ceil(\r\n\t\t\telem[ \"offset\" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] -\r\n\t\t\tcomputedVal -\r\n\t\t\tdelta -\r\n\t\t\textra -\r\n\t\t\t0.5\r\n\r\n\t\t// If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter\r\n\t\t// Use an explicit zero to avoid NaN (gh-3964)\r\n\t\t) ) || 0;\r\n\t}\r\n\r\n\treturn delta;\r\n}\r\n\r\nfunction getWidthOrHeight( elem, dimension, extra ) {\r\n\r\n\t// Start with computed style\r\n\tvar styles = getStyles( elem ),\r\n\r\n\t\t// To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322).\r\n\t\t// Fake content-box until we know it's needed to know the true value.\r\n\t\tboxSizingNeeded = !support.boxSizingReliable() || extra,\r\n\t\tisBorderBox = boxSizingNeeded &&\r\n\t\t\tjQuery.css( elem, \"boxSizing\", false, styles ) === \"border-box\",\r\n\t\tvalueIsBorderBox = isBorderBox,\r\n\r\n\t\tval = curCSS( elem, dimension, styles ),\r\n\t\toffsetProp = \"offset\" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 );\r\n\r\n\t// Support: Firefox <=54\r\n\t// Return a confounding non-pixel value or feign ignorance, as appropriate.\r\n\tif ( rnumnonpx.test( val ) ) {\r\n\t\tif ( !extra ) {\r\n\t\t\treturn val;\r\n\t\t}\r\n\t\tval = \"auto\";\r\n\t}\r\n\r\n\r\n\t// Support: IE 9 - 11 only\r\n\t// Use offsetWidth/offsetHeight for when box sizing is unreliable.\r\n\t// In those cases, the computed value can be trusted to be border-box.\r\n\tif ( ( !support.boxSizingReliable() && isBorderBox ||\r\n\r\n\t\t// Support: IE 10 - 11+, Edge 15 - 18+\r\n\t\t// IE/Edge misreport `getComputedStyle` of table rows with width/height\r\n\t\t// set in CSS while `offset*` properties report correct values.\r\n\t\t// Interestingly, in some cases IE 9 doesn't suffer from this issue.\r\n\t\t!support.reliableTrDimensions() && nodeName( elem, \"tr\" ) ||\r\n\r\n\t\t// Fall back to offsetWidth/offsetHeight when value is \"auto\"\r\n\t\t// This happens for inline elements with no explicit setting (gh-3571)\r\n\t\tval === \"auto\" ||\r\n\r\n\t\t// Support: Android <=4.1 - 4.3 only\r\n\t\t// Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602)\r\n\t\t!parseFloat( val ) && jQuery.css( elem, \"display\", false, styles ) === \"inline\" ) &&\r\n\r\n\t\t// Make sure the element is visible & connected\r\n\t\telem.getClientRects().length ) {\r\n\r\n\t\tisBorderBox = jQuery.css( elem, \"boxSizing\", false, styles ) === \"border-box\";\r\n\r\n\t\t// Where available, offsetWidth/offsetHeight approximate border box dimensions.\r\n\t\t// Where not available (e.g., SVG), assume unreliable box-sizing and interpret the\r\n\t\t// retrieved value as a content box dimension.\r\n\t\tvalueIsBorderBox = offsetProp in elem;\r\n\t\tif ( valueIsBorderBox ) {\r\n\t\t\tval = elem[ offsetProp ];\r\n\t\t}\r\n\t}\r\n\r\n\t// Normalize \"\" and auto\r\n\tval = parseFloat( val ) || 0;\r\n\r\n\t// Adjust for the element's box model\r\n\treturn ( val +\r\n\t\tboxModelAdjustment(\r\n\t\t\telem,\r\n\t\t\tdimension,\r\n\t\t\textra || ( isBorderBox ? \"border\" : \"content\" ),\r\n\t\t\tvalueIsBorderBox,\r\n\t\t\tstyles,\r\n\r\n\t\t\t// Provide the current computed size to request scroll gutter calculation (gh-3589)\r\n\t\t\tval\r\n\t\t)\r\n\t) + \"px\";\r\n}\r\n\r\njQuery.extend( {\r\n\r\n\t// Add in style property hooks for overriding the default\r\n\t// behavior of getting and setting a style property\r\n\tcssHooks: {\r\n\t\topacity: {\r\n\t\t\tget: function( elem, computed ) {\r\n\t\t\t\tif ( computed ) {\r\n\r\n\t\t\t\t\t// We should always get a number back from opacity\r\n\t\t\t\t\tvar ret = curCSS( elem, \"opacity\" );\r\n\t\t\t\t\treturn ret === \"\" ? \"1\" : ret;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\t// Don't automatically add \"px\" to these possibly-unitless properties\r\n\tcssNumber: {\r\n\t\t\"animationIterationCount\": true,\r\n\t\t\"columnCount\": true,\r\n\t\t\"fillOpacity\": true,\r\n\t\t\"flexGrow\": true,\r\n\t\t\"flexShrink\": true,\r\n\t\t\"fontWeight\": true,\r\n\t\t\"gridArea\": true,\r\n\t\t\"gridColumn\": true,\r\n\t\t\"gridColumnEnd\": true,\r\n\t\t\"gridColumnStart\": true,\r\n\t\t\"gridRow\": true,\r\n\t\t\"gridRowEnd\": true,\r\n\t\t\"gridRowStart\": true,\r\n\t\t\"lineHeight\": true,\r\n\t\t\"opacity\": true,\r\n\t\t\"order\": true,\r\n\t\t\"orphans\": true,\r\n\t\t\"widows\": true,\r\n\t\t\"zIndex\": true,\r\n\t\t\"zoom\": true\r\n\t},\r\n\r\n\t// Add in properties whose names you wish to fix before\r\n\t// setting or getting the value\r\n\tcssProps: {},\r\n\r\n\t// Get and set the style property on a DOM Node\r\n\tstyle: function( elem, name, value, extra ) {\r\n\r\n\t\t// Don't set styles on text and comment nodes\r\n\t\tif ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Make sure that we're working with the right name\r\n\t\tvar ret, type, hooks,\r\n\t\t\torigName = camelCase( name ),\r\n\t\t\tisCustomProp = rcustomProp.test( name ),\r\n\t\t\tstyle = elem.style;\r\n\r\n\t\t// Make sure that we're working with the right name. We don't\r\n\t\t// want to query the value if it is a CSS custom property\r\n\t\t// since they are user-defined.\r\n\t\tif ( !isCustomProp ) {\r\n\t\t\tname = finalPropName( origName );\r\n\t\t}\r\n\r\n\t\t// Gets hook for the prefixed version, then unprefixed version\r\n\t\thooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];\r\n\r\n\t\t// Check if we're setting a value\r\n\t\tif ( value !== undefined ) {\r\n\t\t\ttype = typeof value;\r\n\r\n\t\t\t// Convert \"+=\" or \"-=\" to relative numbers (#7345)\r\n\t\t\tif ( type === \"string\" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) {\r\n\t\t\t\tvalue = adjustCSS( elem, name, ret );\r\n\r\n\t\t\t\t// Fixes bug #9237\r\n\t\t\t\ttype = \"number\";\r\n\t\t\t}\r\n\r\n\t\t\t// Make sure that null and NaN values aren't set (#7116)\r\n\t\t\tif ( value == null || value !== value ) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// If a number was passed in, add the unit (except for certain CSS properties)\r\n\t\t\t// The isCustomProp check can be removed in jQuery 4.0 when we only auto-append\r\n\t\t\t// \"px\" to a few hardcoded values.\r\n\t\t\tif ( type === \"number\" && !isCustomProp ) {\r\n\t\t\t\tvalue += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? \"\" : \"px\" );\r\n\t\t\t}\r\n\r\n\t\t\t// background-* props affect original clone's values\r\n\t\t\tif ( !support.clearCloneStyle && value === \"\" && name.indexOf( \"background\" ) === 0 ) {\r\n\t\t\t\tstyle[ name ] = \"inherit\";\r\n\t\t\t}\r\n\r\n\t\t\t// If a hook was provided, use that value, otherwise just set the specified value\r\n\t\t\tif ( !hooks || !( \"set\" in hooks ) ||\r\n\t\t\t\t( value = hooks.set( elem, value, extra ) ) !== undefined ) {\r\n\r\n\t\t\t\tif ( isCustomProp ) {\r\n\t\t\t\t\tstyle.setProperty( name, value );\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstyle[ name ] = value;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t} else {\r\n\r\n\t\t\t// If a hook was provided get the non-computed value from there\r\n\t\t\tif ( hooks && \"get\" in hooks &&\r\n\t\t\t\t( ret = hooks.get( elem, false, extra ) ) !== undefined ) {\r\n\r\n\t\t\t\treturn ret;\r\n\t\t\t}\r\n\r\n\t\t\t// Otherwise just get the value from the style object\r\n\t\t\treturn style[ name ];\r\n\t\t}\r\n\t},\r\n\r\n\tcss: function( elem, name, extra, styles ) {\r\n\t\tvar val, num, hooks,\r\n\t\t\torigName = camelCase( name ),\r\n\t\t\tisCustomProp = rcustomProp.test( name );\r\n\r\n\t\t// Make sure that we're working with the right name. We don't\r\n\t\t// want to modify the value if it is a CSS custom property\r\n\t\t// since they are user-defined.\r\n\t\tif ( !isCustomProp ) {\r\n\t\t\tname = finalPropName( origName );\r\n\t\t}\r\n\r\n\t\t// Try prefixed name followed by the unprefixed name\r\n\t\thooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];\r\n\r\n\t\t// If a hook was provided get the computed value from there\r\n\t\tif ( hooks && \"get\" in hooks ) {\r\n\t\t\tval = hooks.get( elem, true, extra );\r\n\t\t}\r\n\r\n\t\t// Otherwise, if a way to get the computed value exists, use that\r\n\t\tif ( val === undefined ) {\r\n\t\t\tval = curCSS( elem, name, styles );\r\n\t\t}\r\n\r\n\t\t// Convert \"normal\" to computed value\r\n\t\tif ( val === \"normal\" && name in cssNormalTransform ) {\r\n\t\t\tval = cssNormalTransform[ name ];\r\n\t\t}\r\n\r\n\t\t// Make numeric if forced or a qualifier was provided and val looks numeric\r\n\t\tif ( extra === \"\" || extra ) {\r\n\t\t\tnum = parseFloat( val );\r\n\t\t\treturn extra === true || isFinite( num ) ? num || 0 : val;\r\n\t\t}\r\n\r\n\t\treturn val;\r\n\t}\r\n} );\r\n\r\njQuery.each( [ \"height\", \"width\" ], function( _i, dimension ) {\r\n\tjQuery.cssHooks[ dimension ] = {\r\n\t\tget: function( elem, computed, extra ) {\r\n\t\t\tif ( computed ) {\r\n\r\n\t\t\t\t// Certain elements can have dimension info if we invisibly show them\r\n\t\t\t\t// but it must have a current display style that would benefit\r\n\t\t\t\treturn rdisplayswap.test( jQuery.css( elem, \"display\" ) ) &&\r\n\r\n\t\t\t\t\t// Support: Safari 8+\r\n\t\t\t\t\t// Table columns in Safari have non-zero offsetWidth & zero\r\n\t\t\t\t\t// getBoundingClientRect().width unless display is changed.\r\n\t\t\t\t\t// Support: IE <=11 only\r\n\t\t\t\t\t// Running getBoundingClientRect on a disconnected node\r\n\t\t\t\t\t// in IE throws an error.\r\n\t\t\t\t\t( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ?\r\n\t\t\t\t\t\tswap( elem, cssShow, function() {\r\n\t\t\t\t\t\t\treturn getWidthOrHeight( elem, dimension, extra );\r\n\t\t\t\t\t\t} ) :\r\n\t\t\t\t\t\tgetWidthOrHeight( elem, dimension, extra );\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tset: function( elem, value, extra ) {\r\n\t\t\tvar matches,\r\n\t\t\t\tstyles = getStyles( elem ),\r\n\r\n\t\t\t\t// Only read styles.position if the test has a chance to fail\r\n\t\t\t\t// to avoid forcing a reflow.\r\n\t\t\t\tscrollboxSizeBuggy = !support.scrollboxSize() &&\r\n\t\t\t\t\tstyles.position === \"absolute\",\r\n\r\n\t\t\t\t// To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991)\r\n\t\t\t\tboxSizingNeeded = scrollboxSizeBuggy || extra,\r\n\t\t\t\tisBorderBox = boxSizingNeeded &&\r\n\t\t\t\t\tjQuery.css( elem, \"boxSizing\", false, styles ) === \"border-box\",\r\n\t\t\t\tsubtract = extra ?\r\n\t\t\t\t\tboxModelAdjustment(\r\n\t\t\t\t\t\telem,\r\n\t\t\t\t\t\tdimension,\r\n\t\t\t\t\t\textra,\r\n\t\t\t\t\t\tisBorderBox,\r\n\t\t\t\t\t\tstyles\r\n\t\t\t\t\t) :\r\n\t\t\t\t\t0;\r\n\r\n\t\t\t// Account for unreliable border-box dimensions by comparing offset* to computed and\r\n\t\t\t// faking a content-box to get border and padding (gh-3699)\r\n\t\t\tif ( isBorderBox && scrollboxSizeBuggy ) {\r\n\t\t\t\tsubtract -= Math.ceil(\r\n\t\t\t\t\telem[ \"offset\" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] -\r\n\t\t\t\t\tparseFloat( styles[ dimension ] ) -\r\n\t\t\t\t\tboxModelAdjustment( elem, dimension, \"border\", false, styles ) -\r\n\t\t\t\t\t0.5\r\n\t\t\t\t);\r\n\t\t\t}\r\n\r\n\t\t\t// Convert to pixels if value adjustment is needed\r\n\t\t\tif ( subtract && ( matches = rcssNum.exec( value ) ) &&\r\n\t\t\t\t( matches[ 3 ] || \"px\" ) !== \"px\" ) {\r\n\r\n\t\t\t\telem.style[ dimension ] = value;\r\n\t\t\t\tvalue = jQuery.css( elem, dimension );\r\n\t\t\t}\r\n\r\n\t\t\treturn setPositiveNumber( elem, value, subtract );\r\n\t\t}\r\n\t};\r\n} );\r\n\r\njQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft,\r\n\tfunction( elem, computed ) {\r\n\t\tif ( computed ) {\r\n\t\t\treturn ( parseFloat( curCSS( elem, \"marginLeft\" ) ) ||\r\n\t\t\t\telem.getBoundingClientRect().left -\r\n\t\t\t\t\tswap( elem, { marginLeft: 0 }, function() {\r\n\t\t\t\t\t\treturn elem.getBoundingClientRect().left;\r\n\t\t\t\t\t} )\r\n\t\t\t\t) + \"px\";\r\n\t\t}\r\n\t}\r\n);\r\n\r\n// These hooks are used by animate to expand properties\r\njQuery.each( {\r\n\tmargin: \"\",\r\n\tpadding: \"\",\r\n\tborder: \"Width\"\r\n}, function( prefix, suffix ) {\r\n\tjQuery.cssHooks[ prefix + suffix ] = {\r\n\t\texpand: function( value ) {\r\n\t\t\tvar i = 0,\r\n\t\t\t\texpanded = {},\r\n\r\n\t\t\t\t// Assumes a single number if not a string\r\n\t\t\t\tparts = typeof value === \"string\" ? value.split( \" \" ) : [ value ];\r\n\r\n\t\t\tfor ( ; i < 4; i++ ) {\r\n\t\t\t\texpanded[ prefix + cssExpand[ i ] + suffix ] =\r\n\t\t\t\t\tparts[ i ] || parts[ i - 2 ] || parts[ 0 ];\r\n\t\t\t}\r\n\r\n\t\t\treturn expanded;\r\n\t\t}\r\n\t};\r\n\r\n\tif ( prefix !== \"margin\" ) {\r\n\t\tjQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;\r\n\t}\r\n} );\r\n\r\njQuery.fn.extend( {\r\n\tcss: function( name, value ) {\r\n\t\treturn access( this, function( elem, name, value ) {\r\n\t\t\tvar styles, len,\r\n\t\t\t\tmap = {},\r\n\t\t\t\ti = 0;\r\n\r\n\t\t\tif ( Array.isArray( name ) ) {\r\n\t\t\t\tstyles = getStyles( elem );\r\n\t\t\t\tlen = name.length;\r\n\r\n\t\t\t\tfor ( ; i < len; i++ ) {\r\n\t\t\t\t\tmap[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles );\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn map;\r\n\t\t\t}\r\n\r\n\t\t\treturn value !== undefined ?\r\n\t\t\t\tjQuery.style( elem, name, value ) :\r\n\t\t\t\tjQuery.css( elem, name );\r\n\t\t}, name, value, arguments.length > 1 );\r\n\t}\r\n} );\r\n\r\n\r\nfunction Tween( elem, options, prop, end, easing ) {\r\n\treturn new Tween.prototype.init( elem, options, prop, end, easing );\r\n}\r\njQuery.Tween = Tween;\r\n\r\nTween.prototype = {\r\n\tconstructor: Tween,\r\n\tinit: function( elem, options, prop, end, easing, unit ) {\r\n\t\tthis.elem = elem;\r\n\t\tthis.prop = prop;\r\n\t\tthis.easing = easing || jQuery.easing._default;\r\n\t\tthis.options = options;\r\n\t\tthis.start = this.now = this.cur();\r\n\t\tthis.end = end;\r\n\t\tthis.unit = unit || ( jQuery.cssNumber[ prop ] ? \"\" : \"px\" );\r\n\t},\r\n\tcur: function() {\r\n\t\tvar hooks = Tween.propHooks[ this.prop ];\r\n\r\n\t\treturn hooks && hooks.get ?\r\n\t\t\thooks.get( this ) :\r\n\t\t\tTween.propHooks._default.get( this );\r\n\t},\r\n\trun: function( percent ) {\r\n\t\tvar eased,\r\n\t\t\thooks = Tween.propHooks[ this.prop ];\r\n\r\n\t\tif ( this.options.duration ) {\r\n\t\t\tthis.pos = eased = jQuery.easing[ this.easing ](\r\n\t\t\t\tpercent, this.options.duration * percent, 0, 1, this.options.duration\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\tthis.pos = eased = percent;\r\n\t\t}\r\n\t\tthis.now = ( this.end - this.start ) * eased + this.start;\r\n\r\n\t\tif ( this.options.step ) {\r\n\t\t\tthis.options.step.call( this.elem, this.now, this );\r\n\t\t}\r\n\r\n\t\tif ( hooks && hooks.set ) {\r\n\t\t\thooks.set( this );\r\n\t\t} else {\r\n\t\t\tTween.propHooks._default.set( this );\r\n\t\t}\r\n\t\treturn this;\r\n\t}\r\n};\r\n\r\nTween.prototype.init.prototype = Tween.prototype;\r\n\r\nTween.propHooks = {\r\n\t_default: {\r\n\t\tget: function( tween ) {\r\n\t\t\tvar result;\r\n\r\n\t\t\t// Use a property on the element directly when it is not a DOM element,\r\n\t\t\t// or when there is no matching style property that exists.\r\n\t\t\tif ( tween.elem.nodeType !== 1 ||\r\n\t\t\t\ttween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) {\r\n\t\t\t\treturn tween.elem[ tween.prop ];\r\n\t\t\t}\r\n\r\n\t\t\t// Passing an empty string as a 3rd parameter to .css will automatically\r\n\t\t\t// attempt a parseFloat and fallback to a string if the parse fails.\r\n\t\t\t// Simple values such as \"10px\" are parsed to Float;\r\n\t\t\t// complex values such as \"rotate(1rad)\" are returned as-is.\r\n\t\t\tresult = jQuery.css( tween.elem, tween.prop, \"\" );\r\n\r\n\t\t\t// Empty strings, null, undefined and \"auto\" are converted to 0.\r\n\t\t\treturn !result || result === \"auto\" ? 0 : result;\r\n\t\t},\r\n\t\tset: function( tween ) {\r\n\r\n\t\t\t// Use step hook for back compat.\r\n\t\t\t// Use cssHook if its there.\r\n\t\t\t// Use .style if available and use plain properties where available.\r\n\t\t\tif ( jQuery.fx.step[ tween.prop ] ) {\r\n\t\t\t\tjQuery.fx.step[ tween.prop ]( tween );\r\n\t\t\t} else if ( tween.elem.nodeType === 1 && (\r\n\t\t\t\t\tjQuery.cssHooks[ tween.prop ] ||\r\n\t\t\t\t\ttween.elem.style[ finalPropName( tween.prop ) ] != null ) ) {\r\n\t\t\t\tjQuery.style( tween.elem, tween.prop, tween.now + tween.unit );\r\n\t\t\t} else {\r\n\t\t\t\ttween.elem[ tween.prop ] = tween.now;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n\r\n// Support: IE <=9 only\r\n// Panic based approach to setting things on disconnected nodes\r\nTween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {\r\n\tset: function( tween ) {\r\n\t\tif ( tween.elem.nodeType && tween.elem.parentNode ) {\r\n\t\t\ttween.elem[ tween.prop ] = tween.now;\r\n\t\t}\r\n\t}\r\n};\r\n\r\njQuery.easing = {\r\n\tlinear: function( p ) {\r\n\t\treturn p;\r\n\t},\r\n\tswing: function( p ) {\r\n\t\treturn 0.5 - Math.cos( p * Math.PI ) / 2;\r\n\t},\r\n\t_default: \"swing\"\r\n};\r\n\r\njQuery.fx = Tween.prototype.init;\r\n\r\n// Back compat <1.8 extension point\r\njQuery.fx.step = {};\r\n\r\n\r\n\r\n\r\nvar\r\n\tfxNow, inProgress,\r\n\trfxtypes = /^(?:toggle|show|hide)$/,\r\n\trrun = /queueHooks$/;\r\n\r\nfunction schedule() {\r\n\tif ( inProgress ) {\r\n\t\tif ( document.hidden === false && window.requestAnimationFrame ) {\r\n\t\t\twindow.requestAnimationFrame( schedule );\r\n\t\t} else {\r\n\t\t\twindow.setTimeout( schedule, jQuery.fx.interval );\r\n\t\t}\r\n\r\n\t\tjQuery.fx.tick();\r\n\t}\r\n}\r\n\r\n// Animations created synchronously will run synchronously\r\nfunction createFxNow() {\r\n\twindow.setTimeout( function() {\r\n\t\tfxNow = undefined;\r\n\t} );\r\n\treturn ( fxNow = Date.now() );\r\n}\r\n\r\n// Generate parameters to create a standard animation\r\nfunction genFx( type, includeWidth ) {\r\n\tvar which,\r\n\t\ti = 0,\r\n\t\tattrs = { height: type };\r\n\r\n\t// If we include width, step value is 1 to do all cssExpand values,\r\n\t// otherwise step value is 2 to skip over Left and Right\r\n\tincludeWidth = includeWidth ? 1 : 0;\r\n\tfor ( ; i < 4; i += 2 - includeWidth ) {\r\n\t\twhich = cssExpand[ i ];\r\n\t\tattrs[ \"margin\" + which ] = attrs[ \"padding\" + which ] = type;\r\n\t}\r\n\r\n\tif ( includeWidth ) {\r\n\t\tattrs.opacity = attrs.width = type;\r\n\t}\r\n\r\n\treturn attrs;\r\n}\r\n\r\nfunction createTween( value, prop, animation ) {\r\n\tvar tween,\r\n\t\tcollection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ \"*\" ] ),\r\n\t\tindex = 0,\r\n\t\tlength = collection.length;\r\n\tfor ( ; index < length; index++ ) {\r\n\t\tif ( ( tween = collection[ index ].call( animation, prop, value ) ) ) {\r\n\r\n\t\t\t// We're done with this property\r\n\t\t\treturn tween;\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction defaultPrefilter( elem, props, opts ) {\r\n\tvar prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display,\r\n\t\tisBox = \"width\" in props || \"height\" in props,\r\n\t\tanim = this,\r\n\t\torig = {},\r\n\t\tstyle = elem.style,\r\n\t\thidden = elem.nodeType && isHiddenWithinTree( elem ),\r\n\t\tdataShow = dataPriv.get( elem, \"fxshow\" );\r\n\r\n\t// Queue-skipping animations hijack the fx hooks\r\n\tif ( !opts.queue ) {\r\n\t\thooks = jQuery._queueHooks( elem, \"fx\" );\r\n\t\tif ( hooks.unqueued == null ) {\r\n\t\t\thooks.unqueued = 0;\r\n\t\t\toldfire = hooks.empty.fire;\r\n\t\t\thooks.empty.fire = function() {\r\n\t\t\t\tif ( !hooks.unqueued ) {\r\n\t\t\t\t\toldfire();\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t}\r\n\t\thooks.unqueued++;\r\n\r\n\t\tanim.always( function() {\r\n\r\n\t\t\t// Ensure the complete handler is called before this completes\r\n\t\t\tanim.always( function() {\r\n\t\t\t\thooks.unqueued--;\r\n\t\t\t\tif ( !jQuery.queue( elem, \"fx\" ).length ) {\r\n\t\t\t\t\thooks.empty.fire();\r\n\t\t\t\t}\r\n\t\t\t} );\r\n\t\t} );\r\n\t}\r\n\r\n\t// Detect show/hide animations\r\n\tfor ( prop in props ) {\r\n\t\tvalue = props[ prop ];\r\n\t\tif ( rfxtypes.test( value ) ) {\r\n\t\t\tdelete props[ prop ];\r\n\t\t\ttoggle = toggle || value === \"toggle\";\r\n\t\t\tif ( value === ( hidden ? \"hide\" : \"show\" ) ) {\r\n\r\n\t\t\t\t// Pretend to be hidden if this is a \"show\" and\r\n\t\t\t\t// there is still data from a stopped show/hide\r\n\t\t\t\tif ( value === \"show\" && dataShow && dataShow[ prop ] !== undefined ) {\r\n\t\t\t\t\thidden = true;\r\n\r\n\t\t\t\t// Ignore all other no-op show/hide data\r\n\t\t\t\t} else {\r\n\t\t\t\t\tcontinue;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\torig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );\r\n\t\t}\r\n\t}\r\n\r\n\t// Bail out if this is a no-op like .hide().hide()\r\n\tpropTween = !jQuery.isEmptyObject( props );\r\n\tif ( !propTween && jQuery.isEmptyObject( orig ) ) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t// Restrict \"overflow\" and \"display\" styles during box animations\r\n\tif ( isBox && elem.nodeType === 1 ) {\r\n\r\n\t\t// Support: IE <=9 - 11, Edge 12 - 15\r\n\t\t// Record all 3 overflow attributes because IE does not infer the shorthand\r\n\t\t// from identically-valued overflowX and overflowY and Edge just mirrors\r\n\t\t// the overflowX value there.\r\n\t\topts.overflow = [ style.overflow, style.overflowX, style.overflowY ];\r\n\r\n\t\t// Identify a display type, preferring old show/hide data over the CSS cascade\r\n\t\trestoreDisplay = dataShow && dataShow.display;\r\n\t\tif ( restoreDisplay == null ) {\r\n\t\t\trestoreDisplay = dataPriv.get( elem, \"display\" );\r\n\t\t}\r\n\t\tdisplay = jQuery.css( elem, \"display\" );\r\n\t\tif ( display === \"none\" ) {\r\n\t\t\tif ( restoreDisplay ) {\r\n\t\t\t\tdisplay = restoreDisplay;\r\n\t\t\t} else {\r\n\r\n\t\t\t\t// Get nonempty value(s) by temporarily forcing visibility\r\n\t\t\t\tshowHide( [ elem ], true );\r\n\t\t\t\trestoreDisplay = elem.style.display || restoreDisplay;\r\n\t\t\t\tdisplay = jQuery.css( elem, \"display\" );\r\n\t\t\t\tshowHide( [ elem ] );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Animate inline elements as inline-block\r\n\t\tif ( display === \"inline\" || display === \"inline-block\" && restoreDisplay != null ) {\r\n\t\t\tif ( jQuery.css( elem, \"float\" ) === \"none\" ) {\r\n\r\n\t\t\t\t// Restore the original display value at the end of pure show/hide animations\r\n\t\t\t\tif ( !propTween ) {\r\n\t\t\t\t\tanim.done( function() {\r\n\t\t\t\t\t\tstyle.display = restoreDisplay;\r\n\t\t\t\t\t} );\r\n\t\t\t\t\tif ( restoreDisplay == null ) {\r\n\t\t\t\t\t\tdisplay = style.display;\r\n\t\t\t\t\t\trestoreDisplay = display === \"none\" ? \"\" : display;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tstyle.display = \"inline-block\";\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tif ( opts.overflow ) {\r\n\t\tstyle.overflow = \"hidden\";\r\n\t\tanim.always( function() {\r\n\t\t\tstyle.overflow = opts.overflow[ 0 ];\r\n\t\t\tstyle.overflowX = opts.overflow[ 1 ];\r\n\t\t\tstyle.overflowY = opts.overflow[ 2 ];\r\n\t\t} );\r\n\t}\r\n\r\n\t// Implement show/hide animations\r\n\tpropTween = false;\r\n\tfor ( prop in orig ) {\r\n\r\n\t\t// General show/hide setup for this element animation\r\n\t\tif ( !propTween ) {\r\n\t\t\tif ( dataShow ) {\r\n\t\t\t\tif ( \"hidden\" in dataShow ) {\r\n\t\t\t\t\thidden = dataShow.hidden;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tdataShow = dataPriv.access( elem, \"fxshow\", { display: restoreDisplay } );\r\n\t\t\t}\r\n\r\n\t\t\t// Store hidden/visible for toggle so `.stop().toggle()` \"reverses\"\r\n\t\t\tif ( toggle ) {\r\n\t\t\t\tdataShow.hidden = !hidden;\r\n\t\t\t}\r\n\r\n\t\t\t// Show elements before animating them\r\n\t\t\tif ( hidden ) {\r\n\t\t\t\tshowHide( [ elem ], true );\r\n\t\t\t}\r\n\r\n\t\t\t/* eslint-disable no-loop-func */\r\n\r\n\t\t\tanim.done( function() {\r\n\r\n\t\t\t/* eslint-enable no-loop-func */\r\n\r\n\t\t\t\t// The final step of a \"hide\" animation is actually hiding the element\r\n\t\t\t\tif ( !hidden ) {\r\n\t\t\t\t\tshowHide( [ elem ] );\r\n\t\t\t\t}\r\n\t\t\t\tdataPriv.remove( elem, \"fxshow\" );\r\n\t\t\t\tfor ( prop in orig ) {\r\n\t\t\t\t\tjQuery.style( elem, prop, orig[ prop ] );\r\n\t\t\t\t}\r\n\t\t\t} );\r\n\t\t}\r\n\r\n\t\t// Per-property setup\r\n\t\tpropTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim );\r\n\t\tif ( !( prop in dataShow ) ) {\r\n\t\t\tdataShow[ prop ] = propTween.start;\r\n\t\t\tif ( hidden ) {\r\n\t\t\t\tpropTween.end = propTween.start;\r\n\t\t\t\tpropTween.start = 0;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction propFilter( props, specialEasing ) {\r\n\tvar index, name, easing, value, hooks;\r\n\r\n\t// camelCase, specialEasing and expand cssHook pass\r\n\tfor ( index in props ) {\r\n\t\tname = camelCase( index );\r\n\t\teasing = specialEasing[ name ];\r\n\t\tvalue = props[ index ];\r\n\t\tif ( Array.isArray( value ) ) {\r\n\t\t\teasing = value[ 1 ];\r\n\t\t\tvalue = props[ index ] = value[ 0 ];\r\n\t\t}\r\n\r\n\t\tif ( index !== name ) {\r\n\t\t\tprops[ name ] = value;\r\n\t\t\tdelete props[ index ];\r\n\t\t}\r\n\r\n\t\thooks = jQuery.cssHooks[ name ];\r\n\t\tif ( hooks && \"expand\" in hooks ) {\r\n\t\t\tvalue = hooks.expand( value );\r\n\t\t\tdelete props[ name ];\r\n\r\n\t\t\t// Not quite $.extend, this won't overwrite existing keys.\r\n\t\t\t// Reusing 'index' because we have the correct \"name\"\r\n\t\t\tfor ( index in value ) {\r\n\t\t\t\tif ( !( index in props ) ) {\r\n\t\t\t\t\tprops[ index ] = value[ index ];\r\n\t\t\t\t\tspecialEasing[ index ] = easing;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tspecialEasing[ name ] = easing;\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction Animation( elem, properties, options ) {\r\n\tvar result,\r\n\t\tstopped,\r\n\t\tindex = 0,\r\n\t\tlength = Animation.prefilters.length,\r\n\t\tdeferred = jQuery.Deferred().always( function() {\r\n\r\n\t\t\t// Don't match elem in the :animated selector\r\n\t\t\tdelete tick.elem;\r\n\t\t} ),\r\n\t\ttick = function() {\r\n\t\t\tif ( stopped ) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\tvar currentTime = fxNow || createFxNow(),\r\n\t\t\t\tremaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),\r\n\r\n\t\t\t\t// Support: Android 2.3 only\r\n\t\t\t\t// Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497)\r\n\t\t\t\ttemp = remaining / animation.duration || 0,\r\n\t\t\t\tpercent = 1 - temp,\r\n\t\t\t\tindex = 0,\r\n\t\t\t\tlength = animation.tweens.length;\r\n\r\n\t\t\tfor ( ; index < length; index++ ) {\r\n\t\t\t\tanimation.tweens[ index ].run( percent );\r\n\t\t\t}\r\n\r\n\t\t\tdeferred.notifyWith( elem, [ animation, percent, remaining ] );\r\n\r\n\t\t\t// If there's more to do, yield\r\n\t\t\tif ( percent < 1 && length ) {\r\n\t\t\t\treturn remaining;\r\n\t\t\t}\r\n\r\n\t\t\t// If this was an empty animation, synthesize a final progress notification\r\n\t\t\tif ( !length ) {\r\n\t\t\t\tdeferred.notifyWith( elem, [ animation, 1, 0 ] );\r\n\t\t\t}\r\n\r\n\t\t\t// Resolve the animation and report its conclusion\r\n\t\t\tdeferred.resolveWith( elem, [ animation ] );\r\n\t\t\treturn false;\r\n\t\t},\r\n\t\tanimation = deferred.promise( {\r\n\t\t\telem: elem,\r\n\t\t\tprops: jQuery.extend( {}, properties ),\r\n\t\t\topts: jQuery.extend( true, {\r\n\t\t\t\tspecialEasing: {},\r\n\t\t\t\teasing: jQuery.easing._default\r\n\t\t\t}, options ),\r\n\t\t\toriginalProperties: properties,\r\n\t\t\toriginalOptions: options,\r\n\t\t\tstartTime: fxNow || createFxNow(),\r\n\t\t\tduration: options.duration,\r\n\t\t\ttweens: [],\r\n\t\t\tcreateTween: function( prop, end ) {\r\n\t\t\t\tvar tween = jQuery.Tween( elem, animation.opts, prop, end,\r\n\t\t\t\t\t\tanimation.opts.specialEasing[ prop ] || animation.opts.easing );\r\n\t\t\t\tanimation.tweens.push( tween );\r\n\t\t\t\treturn tween;\r\n\t\t\t},\r\n\t\t\tstop: function( gotoEnd ) {\r\n\t\t\t\tvar index = 0,\r\n\r\n\t\t\t\t\t// If we are going to the end, we want to run all the tweens\r\n\t\t\t\t\t// otherwise we skip this part\r\n\t\t\t\t\tlength = gotoEnd ? animation.tweens.length : 0;\r\n\t\t\t\tif ( stopped ) {\r\n\t\t\t\t\treturn this;\r\n\t\t\t\t}\r\n\t\t\t\tstopped = true;\r\n\t\t\t\tfor ( ; index < length; index++ ) {\r\n\t\t\t\t\tanimation.tweens[ index ].run( 1 );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Resolve when we played the last frame; otherwise, reject\r\n\t\t\t\tif ( gotoEnd ) {\r\n\t\t\t\t\tdeferred.notifyWith( elem, [ animation, 1, 0 ] );\r\n\t\t\t\t\tdeferred.resolveWith( elem, [ animation, gotoEnd ] );\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdeferred.rejectWith( elem, [ animation, gotoEnd ] );\r\n\t\t\t\t}\r\n\t\t\t\treturn this;\r\n\t\t\t}\r\n\t\t} ),\r\n\t\tprops = animation.props;\r\n\r\n\tpropFilter( props, animation.opts.specialEasing );\r\n\r\n\tfor ( ; index < length; index++ ) {\r\n\t\tresult = Animation.prefilters[ index ].call( animation, elem, props, animation.opts );\r\n\t\tif ( result ) {\r\n\t\t\tif ( isFunction( result.stop ) ) {\r\n\t\t\t\tjQuery._queueHooks( animation.elem, animation.opts.queue ).stop =\r\n\t\t\t\t\tresult.stop.bind( result );\r\n\t\t\t}\r\n\t\t\treturn result;\r\n\t\t}\r\n\t}\r\n\r\n\tjQuery.map( props, createTween, animation );\r\n\r\n\tif ( isFunction( animation.opts.start ) ) {\r\n\t\tanimation.opts.start.call( elem, animation );\r\n\t}\r\n\r\n\t// Attach callbacks from options\r\n\tanimation\r\n\t\t.progress( animation.opts.progress )\r\n\t\t.done( animation.opts.done, animation.opts.complete )\r\n\t\t.fail( animation.opts.fail )\r\n\t\t.always( animation.opts.always );\r\n\r\n\tjQuery.fx.timer(\r\n\t\tjQuery.extend( tick, {\r\n\t\t\telem: elem,\r\n\t\t\tanim: animation,\r\n\t\t\tqueue: animation.opts.queue\r\n\t\t} )\r\n\t);\r\n\r\n\treturn animation;\r\n}\r\n\r\njQuery.Animation = jQuery.extend( Animation, {\r\n\r\n\ttweeners: {\r\n\t\t\"*\": [ function( prop, value ) {\r\n\t\t\tvar tween = this.createTween( prop, value );\r\n\t\t\tadjustCSS( tween.elem, prop, rcssNum.exec( value ), tween );\r\n\t\t\treturn tween;\r\n\t\t} ]\r\n\t},\r\n\r\n\ttweener: function( props, callback ) {\r\n\t\tif ( isFunction( props ) ) {\r\n\t\t\tcallback = props;\r\n\t\t\tprops = [ \"*\" ];\r\n\t\t} else {\r\n\t\t\tprops = props.match( rnothtmlwhite );\r\n\t\t}\r\n\r\n\t\tvar prop,\r\n\t\t\tindex = 0,\r\n\t\t\tlength = props.length;\r\n\r\n\t\tfor ( ; index < length; index++ ) {\r\n\t\t\tprop = props[ index ];\r\n\t\t\tAnimation.tweeners[ prop ] = Animation.tweeners[ prop ] || [];\r\n\t\t\tAnimation.tweeners[ prop ].unshift( callback );\r\n\t\t}\r\n\t},\r\n\r\n\tprefilters: [ defaultPrefilter ],\r\n\r\n\tprefilter: function( callback, prepend ) {\r\n\t\tif ( prepend ) {\r\n\t\t\tAnimation.prefilters.unshift( callback );\r\n\t\t} else {\r\n\t\t\tAnimation.prefilters.push( callback );\r\n\t\t}\r\n\t}\r\n} );\r\n\r\njQuery.speed = function( speed, easing, fn ) {\r\n\tvar opt = speed && typeof speed === \"object\" ? jQuery.extend( {}, speed ) : {\r\n\t\tcomplete: fn || !fn && easing ||\r\n\t\t\tisFunction( speed ) && speed,\r\n\t\tduration: speed,\r\n\t\teasing: fn && easing || easing && !isFunction( easing ) && easing\r\n\t};\r\n\r\n\t// Go to the end state if fx are off\r\n\tif ( jQuery.fx.off ) {\r\n\t\topt.duration = 0;\r\n\r\n\t} else {\r\n\t\tif ( typeof opt.duration !== \"number\" ) {\r\n\t\t\tif ( opt.duration in jQuery.fx.speeds ) {\r\n\t\t\t\topt.duration = jQuery.fx.speeds[ opt.duration ];\r\n\r\n\t\t\t} else {\r\n\t\t\t\topt.duration = jQuery.fx.speeds._default;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// Normalize opt.queue - true/undefined/null -> \"fx\"\r\n\tif ( opt.queue == null || opt.queue === true ) {\r\n\t\topt.queue = \"fx\";\r\n\t}\r\n\r\n\t// Queueing\r\n\topt.old = opt.complete;\r\n\r\n\topt.complete = function() {\r\n\t\tif ( isFunction( opt.old ) ) {\r\n\t\t\topt.old.call( this );\r\n\t\t}\r\n\r\n\t\tif ( opt.queue ) {\r\n\t\t\tjQuery.dequeue( this, opt.queue );\r\n\t\t}\r\n\t};\r\n\r\n\treturn opt;\r\n};\r\n\r\njQuery.fn.extend( {\r\n\tfadeTo: function( speed, to, easing, callback ) {\r\n\r\n\t\t// Show any hidden elements after setting opacity to 0\r\n\t\treturn this.filter( isHiddenWithinTree ).css( \"opacity\", 0 ).show()\r\n\r\n\t\t\t// Animate to the value specified\r\n\t\t\t.end().animate( { opacity: to }, speed, easing, callback );\r\n\t},\r\n\tanimate: function( prop, speed, easing, callback ) {\r\n\t\tvar empty = jQuery.isEmptyObject( prop ),\r\n\t\t\toptall = jQuery.speed( speed, easing, callback ),\r\n\t\t\tdoAnimation = function() {\r\n\r\n\t\t\t\t// Operate on a copy of prop so per-property easing won't be lost\r\n\t\t\t\tvar anim = Animation( this, jQuery.extend( {}, prop ), optall );\r\n\r\n\t\t\t\t// Empty animations, or finishing resolves immediately\r\n\t\t\t\tif ( empty || dataPriv.get( this, \"finish\" ) ) {\r\n\t\t\t\t\tanim.stop( true );\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t\tdoAnimation.finish = doAnimation;\r\n\r\n\t\treturn empty || optall.queue === false ?\r\n\t\t\tthis.each( doAnimation ) :\r\n\t\t\tthis.queue( optall.queue, doAnimation );\r\n\t},\r\n\tstop: function( type, clearQueue, gotoEnd ) {\r\n\t\tvar stopQueue = function( hooks ) {\r\n\t\t\tvar stop = hooks.stop;\r\n\t\t\tdelete hooks.stop;\r\n\t\t\tstop( gotoEnd );\r\n\t\t};\r\n\r\n\t\tif ( typeof type !== \"string\" ) {\r\n\t\t\tgotoEnd = clearQueue;\r\n\t\t\tclearQueue = type;\r\n\t\t\ttype = undefined;\r\n\t\t}\r\n\t\tif ( clearQueue ) {\r\n\t\t\tthis.queue( type || \"fx\", [] );\r\n\t\t}\r\n\r\n\t\treturn this.each( function() {\r\n\t\t\tvar dequeue = true,\r\n\t\t\t\tindex = type != null && type + \"queueHooks\",\r\n\t\t\t\ttimers = jQuery.timers,\r\n\t\t\t\tdata = dataPriv.get( this );\r\n\r\n\t\t\tif ( index ) {\r\n\t\t\t\tif ( data[ index ] && data[ index ].stop ) {\r\n\t\t\t\t\tstopQueue( data[ index ] );\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tfor ( index in data ) {\r\n\t\t\t\t\tif ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {\r\n\t\t\t\t\t\tstopQueue( data[ index ] );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tfor ( index = timers.length; index--; ) {\r\n\t\t\t\tif ( timers[ index ].elem === this &&\r\n\t\t\t\t\t( type == null || timers[ index ].queue === type ) ) {\r\n\r\n\t\t\t\t\ttimers[ index ].anim.stop( gotoEnd );\r\n\t\t\t\t\tdequeue = false;\r\n\t\t\t\t\ttimers.splice( index, 1 );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Start the next in the queue if the last step wasn't forced.\r\n\t\t\t// Timers currently will call their complete callbacks, which\r\n\t\t\t// will dequeue but only if they were gotoEnd.\r\n\t\t\tif ( dequeue || !gotoEnd ) {\r\n\t\t\t\tjQuery.dequeue( this, type );\r\n\t\t\t}\r\n\t\t} );\r\n\t},\r\n\tfinish: function( type ) {\r\n\t\tif ( type !== false ) {\r\n\t\t\ttype = type || \"fx\";\r\n\t\t}\r\n\t\treturn this.each( function() {\r\n\t\t\tvar index,\r\n\t\t\t\tdata = dataPriv.get( this ),\r\n\t\t\t\tqueue = data[ type + \"queue\" ],\r\n\t\t\t\thooks = data[ type + \"queueHooks\" ],\r\n\t\t\t\ttimers = jQuery.timers,\r\n\t\t\t\tlength = queue ? queue.length : 0;\r\n\r\n\t\t\t// Enable finishing flag on private data\r\n\t\t\tdata.finish = true;\r\n\r\n\t\t\t// Empty the queue first\r\n\t\t\tjQuery.queue( this, type, [] );\r\n\r\n\t\t\tif ( hooks && hooks.stop ) {\r\n\t\t\t\thooks.stop.call( this, true );\r\n\t\t\t}\r\n\r\n\t\t\t// Look for any active animations, and finish them\r\n\t\t\tfor ( index = timers.length; index--; ) {\r\n\t\t\t\tif ( timers[ index ].elem === this && timers[ index ].queue === type ) {\r\n\t\t\t\t\ttimers[ index ].anim.stop( true );\r\n\t\t\t\t\ttimers.splice( index, 1 );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Look for any animations in the old queue and finish them\r\n\t\t\tfor ( index = 0; index < length; index++ ) {\r\n\t\t\t\tif ( queue[ index ] && queue[ index ].finish ) {\r\n\t\t\t\t\tqueue[ index ].finish.call( this );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Turn off finishing flag\r\n\t\t\tdelete data.finish;\r\n\t\t} );\r\n\t}\r\n} );\r\n\r\njQuery.each( [ \"toggle\", \"show\", \"hide\" ], function( _i, name ) {\r\n\tvar cssFn = jQuery.fn[ name ];\r\n\tjQuery.fn[ name ] = function( speed, easing, callback ) {\r\n\t\treturn speed == null || typeof speed === \"boolean\" ?\r\n\t\t\tcssFn.apply( this, arguments ) :\r\n\t\t\tthis.animate( genFx( name, true ), speed, easing, callback );\r\n\t};\r\n} );\r\n\r\n// Generate shortcuts for custom animations\r\njQuery.each( {\r\n\tslideDown: genFx( \"show\" ),\r\n\tslideUp: genFx( \"hide\" ),\r\n\tslideToggle: genFx( \"toggle\" ),\r\n\tfadeIn: { opacity: \"show\" },\r\n\tfadeOut: { opacity: \"hide\" },\r\n\tfadeToggle: { opacity: \"toggle\" }\r\n}, function( name, props ) {\r\n\tjQuery.fn[ name ] = function( speed, easing, callback ) {\r\n\t\treturn this.animate( props, speed, easing, callback );\r\n\t};\r\n} );\r\n\r\njQuery.timers = [];\r\njQuery.fx.tick = function() {\r\n\tvar timer,\r\n\t\ti = 0,\r\n\t\ttimers = jQuery.timers;\r\n\r\n\tfxNow = Date.now();\r\n\r\n\tfor ( ; i < timers.length; i++ ) {\r\n\t\ttimer = timers[ i ];\r\n\r\n\t\t// Run the timer and safely remove it when done (allowing for external removal)\r\n\t\tif ( !timer() && timers[ i ] === timer ) {\r\n\t\t\ttimers.splice( i--, 1 );\r\n\t\t}\r\n\t}\r\n\r\n\tif ( !timers.length ) {\r\n\t\tjQuery.fx.stop();\r\n\t}\r\n\tfxNow = undefined;\r\n};\r\n\r\njQuery.fx.timer = function( timer ) {\r\n\tjQuery.timers.push( timer );\r\n\tjQuery.fx.start();\r\n};\r\n\r\njQuery.fx.interval = 13;\r\njQuery.fx.start = function() {\r\n\tif ( inProgress ) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tinProgress = true;\r\n\tschedule();\r\n};\r\n\r\njQuery.fx.stop = function() {\r\n\tinProgress = null;\r\n};\r\n\r\njQuery.fx.speeds = {\r\n\tslow: 600,\r\n\tfast: 200,\r\n\r\n\t// Default speed\r\n\t_default: 400\r\n};\r\n\r\n\r\n// Based off of the plugin by Clint Helfers, with permission.\r\n// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/\r\njQuery.fn.delay = function( time, type ) {\r\n\ttime = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;\r\n\ttype = type || \"fx\";\r\n\r\n\treturn this.queue( type, function( next, hooks ) {\r\n\t\tvar timeout = window.setTimeout( next, time );\r\n\t\thooks.stop = function() {\r\n\t\t\twindow.clearTimeout( timeout );\r\n\t\t};\r\n\t} );\r\n};\r\n\r\n\r\n( function() {\r\n\tvar input = document.createElement( \"input\" ),\r\n\t\tselect = document.createElement( \"select\" ),\r\n\t\topt = select.appendChild( document.createElement( \"option\" ) );\r\n\r\n\tinput.type = \"checkbox\";\r\n\r\n\t// Support: Android <=4.3 only\r\n\t// Default value for a checkbox should be \"on\"\r\n\tsupport.checkOn = input.value !== \"\";\r\n\r\n\t// Support: IE <=11 only\r\n\t// Must access selectedIndex to make default options select\r\n\tsupport.optSelected = opt.selected;\r\n\r\n\t// Support: IE <=11 only\r\n\t// An input loses its value after becoming a radio\r\n\tinput = document.createElement( \"input\" );\r\n\tinput.value = \"t\";\r\n\tinput.type = \"radio\";\r\n\tsupport.radioValue = input.value === \"t\";\r\n} )();\r\n\r\n\r\nvar boolHook,\r\n\tattrHandle = jQuery.expr.attrHandle;\r\n\r\njQuery.fn.extend( {\r\n\tattr: function( name, value ) {\r\n\t\treturn access( this, jQuery.attr, name, value, arguments.length > 1 );\r\n\t},\r\n\r\n\tremoveAttr: function( name ) {\r\n\t\treturn this.each( function() {\r\n\t\t\tjQuery.removeAttr( this, name );\r\n\t\t} );\r\n\t}\r\n} );\r\n\r\njQuery.extend( {\r\n\tattr: function( elem, name, value ) {\r\n\t\tvar ret, hooks,\r\n\t\t\tnType = elem.nodeType;\r\n\r\n\t\t// Don't get/set attributes on text, comment and attribute nodes\r\n\t\tif ( nType === 3 || nType === 8 || nType === 2 ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Fallback to prop when attributes are not supported\r\n\t\tif ( typeof elem.getAttribute === \"undefined\" ) {\r\n\t\t\treturn jQuery.prop( elem, name, value );\r\n\t\t}\r\n\r\n\t\t// Attribute hooks are determined by the lowercase version\r\n\t\t// Grab necessary hook if one is defined\r\n\t\tif ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {\r\n\t\t\thooks = jQuery.attrHooks[ name.toLowerCase() ] ||\r\n\t\t\t\t( jQuery.expr.match.bool.test( name ) ? boolHook : undefined );\r\n\t\t}\r\n\r\n\t\tif ( value !== undefined ) {\r\n\t\t\tif ( value === null ) {\r\n\t\t\t\tjQuery.removeAttr( elem, name );\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif ( hooks && \"set\" in hooks &&\r\n\t\t\t\t( ret = hooks.set( elem, value, name ) ) !== undefined ) {\r\n\t\t\t\treturn ret;\r\n\t\t\t}\r\n\r\n\t\t\telem.setAttribute( name, value + \"\" );\r\n\t\t\treturn value;\r\n\t\t}\r\n\r\n\t\tif ( hooks && \"get\" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {\r\n\t\t\treturn ret;\r\n\t\t}\r\n\r\n\t\tret = jQuery.find.attr( elem, name );\r\n\r\n\t\t// Non-existent attributes return null, we normalize to undefined\r\n\t\treturn ret == null ? undefined : ret;\r\n\t},\r\n\r\n\tattrHooks: {\r\n\t\ttype: {\r\n\t\t\tset: function( elem, value ) {\r\n\t\t\t\tif ( !support.radioValue && value === \"radio\" &&\r\n\t\t\t\t\tnodeName( elem, \"input\" ) ) {\r\n\t\t\t\t\tvar val = elem.value;\r\n\t\t\t\t\telem.setAttribute( \"type\", value );\r\n\t\t\t\t\tif ( val ) {\r\n\t\t\t\t\t\telem.value = val;\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn value;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\tremoveAttr: function( elem, value ) {\r\n\t\tvar name,\r\n\t\t\ti = 0,\r\n\r\n\t\t\t// Attribute names can contain non-HTML whitespace characters\r\n\t\t\t// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\r\n\t\t\tattrNames = value && value.match( rnothtmlwhite );\r\n\r\n\t\tif ( attrNames && elem.nodeType === 1 ) {\r\n\t\t\twhile ( ( name = attrNames[ i++ ] ) ) {\r\n\t\t\t\telem.removeAttribute( name );\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n} );\r\n\r\n// Hooks for boolean attributes\r\nboolHook = {\r\n\tset: function( elem, value, name ) {\r\n\t\tif ( value === false ) {\r\n\r\n\t\t\t// Remove boolean attributes when set to false\r\n\t\t\tjQuery.removeAttr( elem, name );\r\n\t\t} else {\r\n\t\t\telem.setAttribute( name, name );\r\n\t\t}\r\n\t\treturn name;\r\n\t}\r\n};\r\n\r\njQuery.each( jQuery.expr.match.bool.source.match( /\\w+/g ), function( _i, name ) {\r\n\tvar getter = attrHandle[ name ] || jQuery.find.attr;\r\n\r\n\tattrHandle[ name ] = function( elem, name, isXML ) {\r\n\t\tvar ret, handle,\r\n\t\t\tlowercaseName = name.toLowerCase();\r\n\r\n\t\tif ( !isXML ) {\r\n\r\n\t\t\t// Avoid an infinite loop by temporarily removing this function from the getter\r\n\t\t\thandle = attrHandle[ lowercaseName ];\r\n\t\t\tattrHandle[ lowercaseName ] = ret;\r\n\t\t\tret = getter( elem, name, isXML ) != null ?\r\n\t\t\t\tlowercaseName :\r\n\t\t\t\tnull;\r\n\t\t\tattrHandle[ lowercaseName ] = handle;\r\n\t\t}\r\n\t\treturn ret;\r\n\t};\r\n} );\r\n\r\n\r\n\r\n\r\nvar rfocusable = /^(?:input|select|textarea|button)$/i,\r\n\trclickable = /^(?:a|area)$/i;\r\n\r\njQuery.fn.extend( {\r\n\tprop: function( name, value ) {\r\n\t\treturn access( this, jQuery.prop, name, value, arguments.length > 1 );\r\n\t},\r\n\r\n\tremoveProp: function( name ) {\r\n\t\treturn this.each( function() {\r\n\t\t\tdelete this[ jQuery.propFix[ name ] || name ];\r\n\t\t} );\r\n\t}\r\n} );\r\n\r\njQuery.extend( {\r\n\tprop: function( elem, name, value ) {\r\n\t\tvar ret, hooks,\r\n\t\t\tnType = elem.nodeType;\r\n\r\n\t\t// Don't get/set properties on text, comment and attribute nodes\r\n\t\tif ( nType === 3 || nType === 8 || nType === 2 ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {\r\n\r\n\t\t\t// Fix name and attach hooks\r\n\t\t\tname = jQuery.propFix[ name ] || name;\r\n\t\t\thooks = jQuery.propHooks[ name ];\r\n\t\t}\r\n\r\n\t\tif ( value !== undefined ) {\r\n\t\t\tif ( hooks && \"set\" in hooks &&\r\n\t\t\t\t( ret = hooks.set( elem, value, name ) ) !== undefined ) {\r\n\t\t\t\treturn ret;\r\n\t\t\t}\r\n\r\n\t\t\treturn ( elem[ name ] = value );\r\n\t\t}\r\n\r\n\t\tif ( hooks && \"get\" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {\r\n\t\t\treturn ret;\r\n\t\t}\r\n\r\n\t\treturn elem[ name ];\r\n\t},\r\n\r\n\tpropHooks: {\r\n\t\ttabIndex: {\r\n\t\t\tget: function( elem ) {\r\n\r\n\t\t\t\t// Support: IE <=9 - 11 only\r\n\t\t\t\t// elem.tabIndex doesn't always return the\r\n\t\t\t\t// correct value when it hasn't been explicitly set\r\n\t\t\t\t// https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/\r\n\t\t\t\t// Use proper attribute retrieval(#12072)\r\n\t\t\t\tvar tabindex = jQuery.find.attr( elem, \"tabindex\" );\r\n\r\n\t\t\t\tif ( tabindex ) {\r\n\t\t\t\t\treturn parseInt( tabindex, 10 );\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (\r\n\t\t\t\t\trfocusable.test( elem.nodeName ) ||\r\n\t\t\t\t\trclickable.test( elem.nodeName ) &&\r\n\t\t\t\t\telem.href\r\n\t\t\t\t) {\r\n\t\t\t\t\treturn 0;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn -1;\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\tpropFix: {\r\n\t\t\"for\": \"htmlFor\",\r\n\t\t\"class\": \"className\"\r\n\t}\r\n} );\r\n\r\n// Support: IE <=11 only\r\n// Accessing the selectedIndex property\r\n// forces the browser to respect setting selected\r\n// on the option\r\n// The getter ensures a default option is selected\r\n// when in an optgroup\r\n// eslint rule \"no-unused-expressions\" is disabled for this code\r\n// since it considers such accessions noop\r\nif ( !support.optSelected ) {\r\n\tjQuery.propHooks.selected = {\r\n\t\tget: function( elem ) {\r\n\r\n\t\t\t/* eslint no-unused-expressions: \"off\" */\r\n\r\n\t\t\tvar parent = elem.parentNode;\r\n\t\t\tif ( parent && parent.parentNode ) {\r\n\t\t\t\tparent.parentNode.selectedIndex;\r\n\t\t\t}\r\n\t\t\treturn null;\r\n\t\t},\r\n\t\tset: function( elem ) {\r\n\r\n\t\t\t/* eslint no-unused-expressions: \"off\" */\r\n\r\n\t\t\tvar parent = elem.parentNode;\r\n\t\t\tif ( parent ) {\r\n\t\t\t\tparent.selectedIndex;\r\n\r\n\t\t\t\tif ( parent.parentNode ) {\r\n\t\t\t\t\tparent.parentNode.selectedIndex;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n}\r\n\r\njQuery.each( [\r\n\t\"tabIndex\",\r\n\t\"readOnly\",\r\n\t\"maxLength\",\r\n\t\"cellSpacing\",\r\n\t\"cellPadding\",\r\n\t\"rowSpan\",\r\n\t\"colSpan\",\r\n\t\"useMap\",\r\n\t\"frameBorder\",\r\n\t\"contentEditable\"\r\n], function() {\r\n\tjQuery.propFix[ this.toLowerCase() ] = this;\r\n} );\r\n\r\n\r\n\r\n\r\n\t// Strip and collapse whitespace according to HTML spec\r\n\t// https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace\r\n\tfunction stripAndCollapse( value ) {\r\n\t\tvar tokens = value.match( rnothtmlwhite ) || [];\r\n\t\treturn tokens.join( \" \" );\r\n\t}\r\n\r\n\r\nfunction getClass( elem ) {\r\n\treturn elem.getAttribute && elem.getAttribute( \"class\" ) || \"\";\r\n}\r\n\r\nfunction classesToArray( value ) {\r\n\tif ( Array.isArray( value ) ) {\r\n\t\treturn value;\r\n\t}\r\n\tif ( typeof value === \"string\" ) {\r\n\t\treturn value.match( rnothtmlwhite ) || [];\r\n\t}\r\n\treturn [];\r\n}\r\n\r\njQuery.fn.extend( {\r\n\taddClass: function( value ) {\r\n\t\tvar classes, elem, cur, curValue, clazz, j, finalValue,\r\n\t\t\ti = 0;\r\n\r\n\t\tif ( isFunction( value ) ) {\r\n\t\t\treturn this.each( function( j ) {\r\n\t\t\t\tjQuery( this ).addClass( value.call( this, j, getClass( this ) ) );\r\n\t\t\t} );\r\n\t\t}\r\n\r\n\t\tclasses = classesToArray( value );\r\n\r\n\t\tif ( classes.length ) {\r\n\t\t\twhile ( ( elem = this[ i++ ] ) ) {\r\n\t\t\t\tcurValue = getClass( elem );\r\n\t\t\t\tcur = elem.nodeType === 1 && ( \" \" + stripAndCollapse( curValue ) + \" \" );\r\n\r\n\t\t\t\tif ( cur ) {\r\n\t\t\t\t\tj = 0;\r\n\t\t\t\t\twhile ( ( clazz = classes[ j++ ] ) ) {\r\n\t\t\t\t\t\tif ( cur.indexOf( \" \" + clazz + \" \" ) < 0 ) {\r\n\t\t\t\t\t\t\tcur += clazz + \" \";\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Only assign if different to avoid unneeded rendering.\r\n\t\t\t\t\tfinalValue = stripAndCollapse( cur );\r\n\t\t\t\t\tif ( curValue !== finalValue ) {\r\n\t\t\t\t\t\telem.setAttribute( \"class\", finalValue );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn this;\r\n\t},\r\n\r\n\tremoveClass: function( value ) {\r\n\t\tvar classes, elem, cur, curValue, clazz, j, finalValue,\r\n\t\t\ti = 0;\r\n\r\n\t\tif ( isFunction( value ) ) {\r\n\t\t\treturn this.each( function( j ) {\r\n\t\t\t\tjQuery( this ).removeClass( value.call( this, j, getClass( this ) ) );\r\n\t\t\t} );\r\n\t\t}\r\n\r\n\t\tif ( !arguments.length ) {\r\n\t\t\treturn this.attr( \"class\", \"\" );\r\n\t\t}\r\n\r\n\t\tclasses = classesToArray( value );\r\n\r\n\t\tif ( classes.length ) {\r\n\t\t\twhile ( ( elem = this[ i++ ] ) ) {\r\n\t\t\t\tcurValue = getClass( elem );\r\n\r\n\t\t\t\t// This expression is here for better compressibility (see addClass)\r\n\t\t\t\tcur = elem.nodeType === 1 && ( \" \" + stripAndCollapse( curValue ) + \" \" );\r\n\r\n\t\t\t\tif ( cur ) {\r\n\t\t\t\t\tj = 0;\r\n\t\t\t\t\twhile ( ( clazz = classes[ j++ ] ) ) {\r\n\r\n\t\t\t\t\t\t// Remove *all* instances\r\n\t\t\t\t\t\twhile ( cur.indexOf( \" \" + clazz + \" \" ) > -1 ) {\r\n\t\t\t\t\t\t\tcur = cur.replace( \" \" + clazz + \" \", \" \" );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Only assign if different to avoid unneeded rendering.\r\n\t\t\t\t\tfinalValue = stripAndCollapse( cur );\r\n\t\t\t\t\tif ( curValue !== finalValue ) {\r\n\t\t\t\t\t\telem.setAttribute( \"class\", finalValue );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn this;\r\n\t},\r\n\r\n\ttoggleClass: function( value, stateVal ) {\r\n\t\tvar type = typeof value,\r\n\t\t\tisValidValue = type === \"string\" || Array.isArray( value );\r\n\r\n\t\tif ( typeof stateVal === \"boolean\" && isValidValue ) {\r\n\t\t\treturn stateVal ? this.addClass( value ) : this.removeClass( value );\r\n\t\t}\r\n\r\n\t\tif ( isFunction( value ) ) {\r\n\t\t\treturn this.each( function( i ) {\r\n\t\t\t\tjQuery( this ).toggleClass(\r\n\t\t\t\t\tvalue.call( this, i, getClass( this ), stateVal ),\r\n\t\t\t\t\tstateVal\r\n\t\t\t\t);\r\n\t\t\t} );\r\n\t\t}\r\n\r\n\t\treturn this.each( function() {\r\n\t\t\tvar className, i, self, classNames;\r\n\r\n\t\t\tif ( isValidValue ) {\r\n\r\n\t\t\t\t// Toggle individual class names\r\n\t\t\t\ti = 0;\r\n\t\t\t\tself = jQuery( this );\r\n\t\t\t\tclassNames = classesToArray( value );\r\n\r\n\t\t\t\twhile ( ( className = classNames[ i++ ] ) ) {\r\n\r\n\t\t\t\t\t// Check each className given, space separated list\r\n\t\t\t\t\tif ( self.hasClass( className ) ) {\r\n\t\t\t\t\t\tself.removeClass( className );\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tself.addClass( className );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t// Toggle whole class name\r\n\t\t\t} else if ( value === undefined || type === \"boolean\" ) {\r\n\t\t\t\tclassName = getClass( this );\r\n\t\t\t\tif ( className ) {\r\n\r\n\t\t\t\t\t// Store className if set\r\n\t\t\t\t\tdataPriv.set( this, \"__className__\", className );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// If the element has a class name or if we're passed `false`,\r\n\t\t\t\t// then remove the whole classname (if there was one, the above saved it).\r\n\t\t\t\t// Otherwise bring back whatever was previously saved (if anything),\r\n\t\t\t\t// falling back to the empty string if nothing was stored.\r\n\t\t\t\tif ( this.setAttribute ) {\r\n\t\t\t\t\tthis.setAttribute( \"class\",\r\n\t\t\t\t\t\tclassName || value === false ?\r\n\t\t\t\t\t\t\"\" :\r\n\t\t\t\t\t\tdataPriv.get( this, \"__className__\" ) || \"\"\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} );\r\n\t},\r\n\r\n\thasClass: function( selector ) {\r\n\t\tvar className, elem,\r\n\t\t\ti = 0;\r\n\r\n\t\tclassName = \" \" + selector + \" \";\r\n\t\twhile ( ( elem = this[ i++ ] ) ) {\r\n\t\t\tif ( elem.nodeType === 1 &&\r\n\t\t\t\t( \" \" + stripAndCollapse( getClass( elem ) ) + \" \" ).indexOf( className ) > -1 ) {\r\n\t\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn false;\r\n\t}\r\n} );\r\n\r\n\r\n\r\n\r\nvar rreturn = /\\r/g;\r\n\r\njQuery.fn.extend( {\r\n\tval: function( value ) {\r\n\t\tvar hooks, ret, valueIsFunction,\r\n\t\t\telem = this[ 0 ];\r\n\r\n\t\tif ( !arguments.length ) {\r\n\t\t\tif ( elem ) {\r\n\t\t\t\thooks = jQuery.valHooks[ elem.type ] ||\r\n\t\t\t\t\tjQuery.valHooks[ elem.nodeName.toLowerCase() ];\r\n\r\n\t\t\t\tif ( hooks &&\r\n\t\t\t\t\t\"get\" in hooks &&\r\n\t\t\t\t\t( ret = hooks.get( elem, \"value\" ) ) !== undefined\r\n\t\t\t\t) {\r\n\t\t\t\t\treturn ret;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tret = elem.value;\r\n\r\n\t\t\t\t// Handle most common string cases\r\n\t\t\t\tif ( typeof ret === \"string\" ) {\r\n\t\t\t\t\treturn ret.replace( rreturn, \"\" );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Handle cases where value is null/undef or number\r\n\t\t\t\treturn ret == null ? \"\" : ret;\r\n\t\t\t}\r\n\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvalueIsFunction = isFunction( value );\r\n\r\n\t\treturn this.each( function( i ) {\r\n\t\t\tvar val;\r\n\r\n\t\t\tif ( this.nodeType !== 1 ) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif ( valueIsFunction ) {\r\n\t\t\t\tval = value.call( this, i, jQuery( this ).val() );\r\n\t\t\t} else {\r\n\t\t\t\tval = value;\r\n\t\t\t}\r\n\r\n\t\t\t// Treat null/undefined as \"\"; convert numbers to string\r\n\t\t\tif ( val == null ) {\r\n\t\t\t\tval = \"\";\r\n\r\n\t\t\t} else if ( typeof val === \"number\" ) {\r\n\t\t\t\tval += \"\";\r\n\r\n\t\t\t} else if ( Array.isArray( val ) ) {\r\n\t\t\t\tval = jQuery.map( val, function( value ) {\r\n\t\t\t\t\treturn value == null ? \"\" : value + \"\";\r\n\t\t\t\t} );\r\n\t\t\t}\r\n\r\n\t\t\thooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];\r\n\r\n\t\t\t// If set returns undefined, fall back to normal setting\r\n\t\t\tif ( !hooks || !( \"set\" in hooks ) || hooks.set( this, val, \"value\" ) === undefined ) {\r\n\t\t\t\tthis.value = val;\r\n\t\t\t}\r\n\t\t} );\r\n\t}\r\n} );\r\n\r\njQuery.extend( {\r\n\tvalHooks: {\r\n\t\toption: {\r\n\t\t\tget: function( elem ) {\r\n\r\n\t\t\t\tvar val = jQuery.find.attr( elem, \"value\" );\r\n\t\t\t\treturn val != null ?\r\n\t\t\t\t\tval :\r\n\r\n\t\t\t\t\t// Support: IE <=10 - 11 only\r\n\t\t\t\t\t// option.text throws exceptions (#14686, #14858)\r\n\t\t\t\t\t// Strip and collapse whitespace\r\n\t\t\t\t\t// https://html.spec.whatwg.org/#strip-and-collapse-whitespace\r\n\t\t\t\t\tstripAndCollapse( jQuery.text( elem ) );\r\n\t\t\t}\r\n\t\t},\r\n\t\tselect: {\r\n\t\t\tget: function( elem ) {\r\n\t\t\t\tvar value, option, i,\r\n\t\t\t\t\toptions = elem.options,\r\n\t\t\t\t\tindex = elem.selectedIndex,\r\n\t\t\t\t\tone = elem.type === \"select-one\",\r\n\t\t\t\t\tvalues = one ? null : [],\r\n\t\t\t\t\tmax = one ? index + 1 : options.length;\r\n\r\n\t\t\t\tif ( index < 0 ) {\r\n\t\t\t\t\ti = max;\r\n\r\n\t\t\t\t} else {\r\n\t\t\t\t\ti = one ? index : 0;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Loop through all the selected options\r\n\t\t\t\tfor ( ; i < max; i++ ) {\r\n\t\t\t\t\toption = options[ i ];\r\n\r\n\t\t\t\t\t// Support: IE <=9 only\r\n\t\t\t\t\t// IE8-9 doesn't update selected after form reset (#2551)\r\n\t\t\t\t\tif ( ( option.selected || i === index ) &&\r\n\r\n\t\t\t\t\t\t\t// Don't return options that are disabled or in a disabled optgroup\r\n\t\t\t\t\t\t\t!option.disabled &&\r\n\t\t\t\t\t\t\t( !option.parentNode.disabled ||\r\n\t\t\t\t\t\t\t\t!nodeName( option.parentNode, \"optgroup\" ) ) ) {\r\n\r\n\t\t\t\t\t\t// Get the specific value for the option\r\n\t\t\t\t\t\tvalue = jQuery( option ).val();\r\n\r\n\t\t\t\t\t\t// We don't need an array for one selects\r\n\t\t\t\t\t\tif ( one ) {\r\n\t\t\t\t\t\t\treturn value;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Multi-Selects return an array\r\n\t\t\t\t\t\tvalues.push( value );\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn values;\r\n\t\t\t},\r\n\r\n\t\t\tset: function( elem, value ) {\r\n\t\t\t\tvar optionSet, option,\r\n\t\t\t\t\toptions = elem.options,\r\n\t\t\t\t\tvalues = jQuery.makeArray( value ),\r\n\t\t\t\t\ti = options.length;\r\n\r\n\t\t\t\twhile ( i-- ) {\r\n\t\t\t\t\toption = options[ i ];\r\n\r\n\t\t\t\t\t/* eslint-disable no-cond-assign */\r\n\r\n\t\t\t\t\tif ( option.selected =\r\n\t\t\t\t\t\tjQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1\r\n\t\t\t\t\t) {\r\n\t\t\t\t\t\toptionSet = true;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t/* eslint-enable no-cond-assign */\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Force browsers to behave consistently when non-matching value is set\r\n\t\t\t\tif ( !optionSet ) {\r\n\t\t\t\t\telem.selectedIndex = -1;\r\n\t\t\t\t}\r\n\t\t\t\treturn values;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n} );\r\n\r\n// Radios and checkboxes getter/setter\r\njQuery.each( [ \"radio\", \"checkbox\" ], function() {\r\n\tjQuery.valHooks[ this ] = {\r\n\t\tset: function( elem, value ) {\r\n\t\t\tif ( Array.isArray( value ) ) {\r\n\t\t\t\treturn ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 );\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\tif ( !support.checkOn ) {\r\n\t\tjQuery.valHooks[ this ].get = function( elem ) {\r\n\t\t\treturn elem.getAttribute( \"value\" ) === null ? \"on\" : elem.value;\r\n\t\t};\r\n\t}\r\n} );\r\n\r\n\r\n\r\n\r\n// Return jQuery for attributes-only inclusion\r\n\r\n\r\nsupport.focusin = \"onfocusin\" in window;\r\n\r\n\r\nvar rfocusMorph = /^(?:focusinfocus|focusoutblur)$/,\r\n\tstopPropagationCallback = function( e ) {\r\n\t\te.stopPropagation();\r\n\t};\r\n\r\njQuery.extend( jQuery.event, {\r\n\r\n\ttrigger: function( event, data, elem, onlyHandlers ) {\r\n\r\n\t\tvar i, cur, tmp, bubbleType, ontype, handle, special, lastElement,\r\n\t\t\teventPath = [ elem || document ],\r\n\t\t\ttype = hasOwn.call( event, \"type\" ) ? event.type : event,\r\n\t\t\tnamespaces = hasOwn.call( event, \"namespace\" ) ? event.namespace.split( \".\" ) : [];\r\n\r\n\t\tcur = lastElement = tmp = elem = elem || document;\r\n\r\n\t\t// Don't do events on text and comment nodes\r\n\t\tif ( elem.nodeType === 3 || elem.nodeType === 8 ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// focus/blur morphs to focusin/out; ensure we're not firing them right now\r\n\t\tif ( rfocusMorph.test( type + jQuery.event.triggered ) ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif ( type.indexOf( \".\" ) > -1 ) {\r\n\r\n\t\t\t// Namespaced trigger; create a regexp to match event type in handle()\r\n\t\t\tnamespaces = type.split( \".\" );\r\n\t\t\ttype = namespaces.shift();\r\n\t\t\tnamespaces.sort();\r\n\t\t}\r\n\t\tontype = type.indexOf( \":\" ) < 0 && \"on\" + type;\r\n\r\n\t\t// Caller can pass in a jQuery.Event object, Object, or just an event type string\r\n\t\tevent = event[ jQuery.expando ] ?\r\n\t\t\tevent :\r\n\t\t\tnew jQuery.Event( type, typeof event === \"object\" && event );\r\n\r\n\t\t// Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true)\r\n\t\tevent.isTrigger = onlyHandlers ? 2 : 3;\r\n\t\tevent.namespace = namespaces.join( \".\" );\r\n\t\tevent.rnamespace = event.namespace ?\r\n\t\t\tnew RegExp( \"(^|\\\\.)\" + namespaces.join( \"\\\\.(?:.*\\\\.|)\" ) + \"(\\\\.|$)\" ) :\r\n\t\t\tnull;\r\n\r\n\t\t// Clean up the event in case it is being reused\r\n\t\tevent.result = undefined;\r\n\t\tif ( !event.target ) {\r\n\t\t\tevent.target = elem;\r\n\t\t}\r\n\r\n\t\t// Clone any incoming data and prepend the event, creating the handler arg list\r\n\t\tdata = data == null ?\r\n\t\t\t[ event ] :\r\n\t\t\tjQuery.makeArray( data, [ event ] );\r\n\r\n\t\t// Allow special events to draw outside the lines\r\n\t\tspecial = jQuery.event.special[ type ] || {};\r\n\t\tif ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Determine event propagation path in advance, per W3C events spec (#9951)\r\n\t\t// Bubble up to document, then to window; watch for a global ownerDocument var (#9724)\r\n\t\tif ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) {\r\n\r\n\t\t\tbubbleType = special.delegateType || type;\r\n\t\t\tif ( !rfocusMorph.test( bubbleType + type ) ) {\r\n\t\t\t\tcur = cur.parentNode;\r\n\t\t\t}\r\n\t\t\tfor ( ; cur; cur = cur.parentNode ) {\r\n\t\t\t\teventPath.push( cur );\r\n\t\t\t\ttmp = cur;\r\n\t\t\t}\r\n\r\n\t\t\t// Only add window if we got to document (e.g., not plain obj or detached DOM)\r\n\t\t\tif ( tmp === ( elem.ownerDocument || document ) ) {\r\n\t\t\t\teventPath.push( tmp.defaultView || tmp.parentWindow || window );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Fire handlers on the event path\r\n\t\ti = 0;\r\n\t\twhile ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) {\r\n\t\t\tlastElement = cur;\r\n\t\t\tevent.type = i > 1 ?\r\n\t\t\t\tbubbleType :\r\n\t\t\t\tspecial.bindType || type;\r\n\r\n\t\t\t// jQuery handler\r\n\t\t\thandle = (\r\n\t\t\t\t\tdataPriv.get( cur, \"events\" ) || Object.create( null )\r\n\t\t\t\t)[ event.type ] &&\r\n\t\t\t\tdataPriv.get( cur, \"handle\" );\r\n\t\t\tif ( handle ) {\r\n\t\t\t\thandle.apply( cur, data );\r\n\t\t\t}\r\n\r\n\t\t\t// Native handler\r\n\t\t\thandle = ontype && cur[ ontype ];\r\n\t\t\tif ( handle && handle.apply && acceptData( cur ) ) {\r\n\t\t\t\tevent.result = handle.apply( cur, data );\r\n\t\t\t\tif ( event.result === false ) {\r\n\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\tevent.type = type;\r\n\r\n\t\t// If nobody prevented the default action, do it now\r\n\t\tif ( !onlyHandlers && !event.isDefaultPrevented() ) {\r\n\r\n\t\t\tif ( ( !special._default ||\r\n\t\t\t\tspecial._default.apply( eventPath.pop(), data ) === false ) &&\r\n\t\t\t\tacceptData( elem ) ) {\r\n\r\n\t\t\t\t// Call a native DOM method on the target with the same name as the event.\r\n\t\t\t\t// Don't do default actions on window, that's where global variables be (#6170)\r\n\t\t\t\tif ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) {\r\n\r\n\t\t\t\t\t// Don't re-trigger an onFOO event when we call its FOO() method\r\n\t\t\t\t\ttmp = elem[ ontype ];\r\n\r\n\t\t\t\t\tif ( tmp ) {\r\n\t\t\t\t\t\telem[ ontype ] = null;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Prevent re-triggering of the same event, since we already bubbled it above\r\n\t\t\t\t\tjQuery.event.triggered = type;\r\n\r\n\t\t\t\t\tif ( event.isPropagationStopped() ) {\r\n\t\t\t\t\t\tlastElement.addEventListener( type, stopPropagationCallback );\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\telem[ type ]();\r\n\r\n\t\t\t\t\tif ( event.isPropagationStopped() ) {\r\n\t\t\t\t\t\tlastElement.removeEventListener( type, stopPropagationCallback );\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tjQuery.event.triggered = undefined;\r\n\r\n\t\t\t\t\tif ( tmp ) {\r\n\t\t\t\t\t\telem[ ontype ] = tmp;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn event.result;\r\n\t},\r\n\r\n\t// Piggyback on a donor event to simulate a different one\r\n\t// Used only for `focus(in | out)` events\r\n\tsimulate: function( type, elem, event ) {\r\n\t\tvar e = jQuery.extend(\r\n\t\t\tnew jQuery.Event(),\r\n\t\t\tevent,\r\n\t\t\t{\r\n\t\t\t\ttype: type,\r\n\t\t\t\tisSimulated: true\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tjQuery.event.trigger( e, null, elem );\r\n\t}\r\n\r\n} );\r\n\r\njQuery.fn.extend( {\r\n\r\n\ttrigger: function( type, data ) {\r\n\t\treturn this.each( function() {\r\n\t\t\tjQuery.event.trigger( type, data, this );\r\n\t\t} );\r\n\t},\r\n\ttriggerHandler: function( type, data ) {\r\n\t\tvar elem = this[ 0 ];\r\n\t\tif ( elem ) {\r\n\t\t\treturn jQuery.event.trigger( type, data, elem, true );\r\n\t\t}\r\n\t}\r\n} );\r\n\r\n\r\n// Support: Firefox <=44\r\n// Firefox doesn't have focus(in | out) events\r\n// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787\r\n//\r\n// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1\r\n// focus(in | out) events fire after focus & blur events,\r\n// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order\r\n// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857\r\nif ( !support.focusin ) {\r\n\tjQuery.each( { focus: \"focusin\", blur: \"focusout\" }, function( orig, fix ) {\r\n\r\n\t\t// Attach a single capturing handler on the document while someone wants focusin/focusout\r\n\t\tvar handler = function( event ) {\r\n\t\t\tjQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) );\r\n\t\t};\r\n\r\n\t\tjQuery.event.special[ fix ] = {\r\n\t\t\tsetup: function() {\r\n\r\n\t\t\t\t// Handle: regular nodes (via `this.ownerDocument`), window\r\n\t\t\t\t// (via `this.document`) & document (via `this`).\r\n\t\t\t\tvar doc = this.ownerDocument || this.document || this,\r\n\t\t\t\t\tattaches = dataPriv.access( doc, fix );\r\n\r\n\t\t\t\tif ( !attaches ) {\r\n\t\t\t\t\tdoc.addEventListener( orig, handler, true );\r\n\t\t\t\t}\r\n\t\t\t\tdataPriv.access( doc, fix, ( attaches || 0 ) + 1 );\r\n\t\t\t},\r\n\t\t\tteardown: function() {\r\n\t\t\t\tvar doc = this.ownerDocument || this.document || this,\r\n\t\t\t\t\tattaches = dataPriv.access( doc, fix ) - 1;\r\n\r\n\t\t\t\tif ( !attaches ) {\r\n\t\t\t\t\tdoc.removeEventListener( orig, handler, true );\r\n\t\t\t\t\tdataPriv.remove( doc, fix );\r\n\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdataPriv.access( doc, fix, attaches );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t} );\r\n}\r\nvar location = window.location;\r\n\r\nvar nonce = { guid: Date.now() };\r\n\r\nvar rquery = ( /\\?/ );\r\n\r\n\r\n\r\n// Cross-browser xml parsing\r\njQuery.parseXML = function( data ) {\r\n\tvar xml;\r\n\tif ( !data || typeof data !== \"string\" ) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\t// Support: IE 9 - 11 only\r\n\t// IE throws on parseFromString with invalid input.\r\n\ttry {\r\n\t\txml = ( new window.DOMParser() ).parseFromString( data, \"text/xml\" );\r\n\t} catch ( e ) {\r\n\t\txml = undefined;\r\n\t}\r\n\r\n\tif ( !xml || xml.getElementsByTagName( \"parsererror\" ).length ) {\r\n\t\tjQuery.error( \"Invalid XML: \" + data );\r\n\t}\r\n\treturn xml;\r\n};\r\n\r\n\r\nvar\r\n\trbracket = /\\[\\]$/,\r\n\trCRLF = /\\r?\\n/g,\r\n\trsubmitterTypes = /^(?:submit|button|image|reset|file)$/i,\r\n\trsubmittable = /^(?:input|select|textarea|keygen)/i;\r\n\r\nfunction buildParams( prefix, obj, traditional, add ) {\r\n\tvar name;\r\n\r\n\tif ( Array.isArray( obj ) ) {\r\n\r\n\t\t// Serialize array item.\r\n\t\tjQuery.each( obj, function( i, v ) {\r\n\t\t\tif ( traditional || rbracket.test( prefix ) ) {\r\n\r\n\t\t\t\t// Treat each array item as a scalar.\r\n\t\t\t\tadd( prefix, v );\r\n\r\n\t\t\t} else {\r\n\r\n\t\t\t\t// Item is non-scalar (array or object), encode its numeric index.\r\n\t\t\t\tbuildParams(\r\n\t\t\t\t\tprefix + \"[\" + ( typeof v === \"object\" && v != null ? i : \"\" ) + \"]\",\r\n\t\t\t\t\tv,\r\n\t\t\t\t\ttraditional,\r\n\t\t\t\t\tadd\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t} );\r\n\r\n\t} else if ( !traditional && toType( obj ) === \"object\" ) {\r\n\r\n\t\t// Serialize object item.\r\n\t\tfor ( name in obj ) {\r\n\t\t\tbuildParams( prefix + \"[\" + name + \"]\", obj[ name ], traditional, add );\r\n\t\t}\r\n\r\n\t} else {\r\n\r\n\t\t// Serialize scalar item.\r\n\t\tadd( prefix, obj );\r\n\t}\r\n}\r\n\r\n// Serialize an array of form elements or a set of\r\n// key/values into a query string\r\njQuery.param = function( a, traditional ) {\r\n\tvar prefix,\r\n\t\ts = [],\r\n\t\tadd = function( key, valueOrFunction ) {\r\n\r\n\t\t\t// If value is a function, invoke it and use its return value\r\n\t\t\tvar value = isFunction( valueOrFunction ) ?\r\n\t\t\t\tvalueOrFunction() :\r\n\t\t\t\tvalueOrFunction;\r\n\r\n\t\t\ts[ s.length ] = encodeURIComponent( key ) + \"=\" +\r\n\t\t\t\tencodeURIComponent( value == null ? \"\" : value );\r\n\t\t};\r\n\r\n\tif ( a == null ) {\r\n\t\treturn \"\";\r\n\t}\r\n\r\n\t// If an array was passed in, assume that it is an array of form elements.\r\n\tif ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {\r\n\r\n\t\t// Serialize the form elements\r\n\t\tjQuery.each( a, function() {\r\n\t\t\tadd( this.name, this.value );\r\n\t\t} );\r\n\r\n\t} else {\r\n\r\n\t\t// If traditional, encode the \"old\" way (the way 1.3.2 or older\r\n\t\t// did it), otherwise encode params recursively.\r\n\t\tfor ( prefix in a ) {\r\n\t\t\tbuildParams( prefix, a[ prefix ], traditional, add );\r\n\t\t}\r\n\t}\r\n\r\n\t// Return the resulting serialization\r\n\treturn s.join( \"&\" );\r\n};\r\n\r\njQuery.fn.extend( {\r\n\tserialize: function() {\r\n\t\treturn jQuery.param( this.serializeArray() );\r\n\t},\r\n\tserializeArray: function() {\r\n\t\treturn this.map( function() {\r\n\r\n\t\t\t// Can add propHook for \"elements\" to filter or add form elements\r\n\t\t\tvar elements = jQuery.prop( this, \"elements\" );\r\n\t\t\treturn elements ? jQuery.makeArray( elements ) : this;\r\n\t\t} )\r\n\t\t.filter( function() {\r\n\t\t\tvar type = this.type;\r\n\r\n\t\t\t// Use .is( \":disabled\" ) so that fieldset[disabled] works\r\n\t\t\treturn this.name && !jQuery( this ).is( \":disabled\" ) &&\r\n\t\t\t\trsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&\r\n\t\t\t\t( this.checked || !rcheckableType.test( type ) );\r\n\t\t} )\r\n\t\t.map( function( _i, elem ) {\r\n\t\t\tvar val = jQuery( this ).val();\r\n\r\n\t\t\tif ( val == null ) {\r\n\t\t\t\treturn null;\r\n\t\t\t}\r\n\r\n\t\t\tif ( Array.isArray( val ) ) {\r\n\t\t\t\treturn jQuery.map( val, function( val ) {\r\n\t\t\t\t\treturn { name: elem.name, value: val.replace( rCRLF, \"\\r\\n\" ) };\r\n\t\t\t\t} );\r\n\t\t\t}\r\n\r\n\t\t\treturn { name: elem.name, value: val.replace( rCRLF, \"\\r\\n\" ) };\r\n\t\t} ).get();\r\n\t}\r\n} );\r\n\r\n\r\nvar\r\n\tr20 = /%20/g,\r\n\trhash = /#.*$/,\r\n\trantiCache = /([?&])_=[^&]*/,\r\n\trheaders = /^(.*?):[ \\t]*([^\\r\\n]*)$/mg,\r\n\r\n\t// #7653, #8125, #8152: local protocol detection\r\n\trlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,\r\n\trnoContent = /^(?:GET|HEAD)$/,\r\n\trprotocol = /^\\/\\//,\r\n\r\n\t/* Prefilters\r\n\t * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)\r\n\t * 2) These are called:\r\n\t *    - BEFORE asking for a transport\r\n\t *    - AFTER param serialization (s.data is a string if s.processData is true)\r\n\t * 3) key is the dataType\r\n\t * 4) the catchall symbol \"*\" can be used\r\n\t * 5) execution will start with transport dataType and THEN continue down to \"*\" if needed\r\n\t */\r\n\tprefilters = {},\r\n\r\n\t/* Transports bindings\r\n\t * 1) key is the dataType\r\n\t * 2) the catchall symbol \"*\" can be used\r\n\t * 3) selection will start with transport dataType and THEN go to \"*\" if needed\r\n\t */\r\n\ttransports = {},\r\n\r\n\t// Avoid comment-prolog char sequence (#10098); must appease lint and evade compression\r\n\tallTypes = \"*/\".concat( \"*\" ),\r\n\r\n\t// Anchor tag for parsing the document origin\r\n\toriginAnchor = document.createElement( \"a\" );\r\n\toriginAnchor.href = location.href;\r\n\r\n// Base \"constructor\" for jQuery.ajaxPrefilter and jQuery.ajaxTransport\r\nfunction addToPrefiltersOrTransports( structure ) {\r\n\r\n\t// dataTypeExpression is optional and defaults to \"*\"\r\n\treturn function( dataTypeExpression, func ) {\r\n\r\n\t\tif ( typeof dataTypeExpression !== \"string\" ) {\r\n\t\t\tfunc = dataTypeExpression;\r\n\t\t\tdataTypeExpression = \"*\";\r\n\t\t}\r\n\r\n\t\tvar dataType,\r\n\t\t\ti = 0,\r\n\t\t\tdataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || [];\r\n\r\n\t\tif ( isFunction( func ) ) {\r\n\r\n\t\t\t// For each dataType in the dataTypeExpression\r\n\t\t\twhile ( ( dataType = dataTypes[ i++ ] ) ) {\r\n\r\n\t\t\t\t// Prepend if requested\r\n\t\t\t\tif ( dataType[ 0 ] === \"+\" ) {\r\n\t\t\t\t\tdataType = dataType.slice( 1 ) || \"*\";\r\n\t\t\t\t\t( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func );\r\n\r\n\t\t\t\t// Otherwise append\r\n\t\t\t\t} else {\r\n\t\t\t\t\t( structure[ dataType ] = structure[ dataType ] || [] ).push( func );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n}\r\n\r\n// Base inspection function for prefilters and transports\r\nfunction inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {\r\n\r\n\tvar inspected = {},\r\n\t\tseekingTransport = ( structure === transports );\r\n\r\n\tfunction inspect( dataType ) {\r\n\t\tvar selected;\r\n\t\tinspected[ dataType ] = true;\r\n\t\tjQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {\r\n\t\t\tvar dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );\r\n\t\t\tif ( typeof dataTypeOrTransport === \"string\" &&\r\n\t\t\t\t!seekingTransport && !inspected[ dataTypeOrTransport ] ) {\r\n\r\n\t\t\t\toptions.dataTypes.unshift( dataTypeOrTransport );\r\n\t\t\t\tinspect( dataTypeOrTransport );\r\n\t\t\t\treturn false;\r\n\t\t\t} else if ( seekingTransport ) {\r\n\t\t\t\treturn !( selected = dataTypeOrTransport );\r\n\t\t\t}\r\n\t\t} );\r\n\t\treturn selected;\r\n\t}\r\n\r\n\treturn inspect( options.dataTypes[ 0 ] ) || !inspected[ \"*\" ] && inspect( \"*\" );\r\n}\r\n\r\n// A special extend for ajax options\r\n// that takes \"flat\" options (not to be deep extended)\r\n// Fixes #9887\r\nfunction ajaxExtend( target, src ) {\r\n\tvar key, deep,\r\n\t\tflatOptions = jQuery.ajaxSettings.flatOptions || {};\r\n\r\n\tfor ( key in src ) {\r\n\t\tif ( src[ key ] !== undefined ) {\r\n\t\t\t( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ];\r\n\t\t}\r\n\t}\r\n\tif ( deep ) {\r\n\t\tjQuery.extend( true, target, deep );\r\n\t}\r\n\r\n\treturn target;\r\n}\r\n\r\n/* Handles responses to an ajax request:\r\n * - finds the right dataType (mediates between content-type and expected dataType)\r\n * - returns the corresponding response\r\n */\r\nfunction ajaxHandleResponses( s, jqXHR, responses ) {\r\n\r\n\tvar ct, type, finalDataType, firstDataType,\r\n\t\tcontents = s.contents,\r\n\t\tdataTypes = s.dataTypes;\r\n\r\n\t// Remove auto dataType and get content-type in the process\r\n\twhile ( dataTypes[ 0 ] === \"*\" ) {\r\n\t\tdataTypes.shift();\r\n\t\tif ( ct === undefined ) {\r\n\t\t\tct = s.mimeType || jqXHR.getResponseHeader( \"Content-Type\" );\r\n\t\t}\r\n\t}\r\n\r\n\t// Check if we're dealing with a known content-type\r\n\tif ( ct ) {\r\n\t\tfor ( type in contents ) {\r\n\t\t\tif ( contents[ type ] && contents[ type ].test( ct ) ) {\r\n\t\t\t\tdataTypes.unshift( type );\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// Check to see if we have a response for the expected dataType\r\n\tif ( dataTypes[ 0 ] in responses ) {\r\n\t\tfinalDataType = dataTypes[ 0 ];\r\n\t} else {\r\n\r\n\t\t// Try convertible dataTypes\r\n\t\tfor ( type in responses ) {\r\n\t\t\tif ( !dataTypes[ 0 ] || s.converters[ type + \" \" + dataTypes[ 0 ] ] ) {\r\n\t\t\t\tfinalDataType = type;\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tif ( !firstDataType ) {\r\n\t\t\t\tfirstDataType = type;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Or just use first one\r\n\t\tfinalDataType = finalDataType || firstDataType;\r\n\t}\r\n\r\n\t// If we found a dataType\r\n\t// We add the dataType to the list if needed\r\n\t// and return the corresponding response\r\n\tif ( finalDataType ) {\r\n\t\tif ( finalDataType !== dataTypes[ 0 ] ) {\r\n\t\t\tdataTypes.unshift( finalDataType );\r\n\t\t}\r\n\t\treturn responses[ finalDataType ];\r\n\t}\r\n}\r\n\r\n/* Chain conversions given the request and the original response\r\n * Also sets the responseXXX fields on the jqXHR instance\r\n */\r\nfunction ajaxConvert( s, response, jqXHR, isSuccess ) {\r\n\tvar conv2, current, conv, tmp, prev,\r\n\t\tconverters = {},\r\n\r\n\t\t// Work with a copy of dataTypes in case we need to modify it for conversion\r\n\t\tdataTypes = s.dataTypes.slice();\r\n\r\n\t// Create converters map with lowercased keys\r\n\tif ( dataTypes[ 1 ] ) {\r\n\t\tfor ( conv in s.converters ) {\r\n\t\t\tconverters[ conv.toLowerCase() ] = s.converters[ conv ];\r\n\t\t}\r\n\t}\r\n\r\n\tcurrent = dataTypes.shift();\r\n\r\n\t// Convert to each sequential dataType\r\n\twhile ( current ) {\r\n\r\n\t\tif ( s.responseFields[ current ] ) {\r\n\t\t\tjqXHR[ s.responseFields[ current ] ] = response;\r\n\t\t}\r\n\r\n\t\t// Apply the dataFilter if provided\r\n\t\tif ( !prev && isSuccess && s.dataFilter ) {\r\n\t\t\tresponse = s.dataFilter( response, s.dataType );\r\n\t\t}\r\n\r\n\t\tprev = current;\r\n\t\tcurrent = dataTypes.shift();\r\n\r\n\t\tif ( current ) {\r\n\r\n\t\t\t// There's only work to do if current dataType is non-auto\r\n\t\t\tif ( current === \"*\" ) {\r\n\r\n\t\t\t\tcurrent = prev;\r\n\r\n\t\t\t// Convert response if prev dataType is non-auto and differs from current\r\n\t\t\t} else if ( prev !== \"*\" && prev !== current ) {\r\n\r\n\t\t\t\t// Seek a direct converter\r\n\t\t\t\tconv = converters[ prev + \" \" + current ] || converters[ \"* \" + current ];\r\n\r\n\t\t\t\t// If none found, seek a pair\r\n\t\t\t\tif ( !conv ) {\r\n\t\t\t\t\tfor ( conv2 in converters ) {\r\n\r\n\t\t\t\t\t\t// If conv2 outputs current\r\n\t\t\t\t\t\ttmp = conv2.split( \" \" );\r\n\t\t\t\t\t\tif ( tmp[ 1 ] === current ) {\r\n\r\n\t\t\t\t\t\t\t// If prev can be converted to accepted input\r\n\t\t\t\t\t\t\tconv = converters[ prev + \" \" + tmp[ 0 ] ] ||\r\n\t\t\t\t\t\t\t\tconverters[ \"* \" + tmp[ 0 ] ];\r\n\t\t\t\t\t\t\tif ( conv ) {\r\n\r\n\t\t\t\t\t\t\t\t// Condense equivalence converters\r\n\t\t\t\t\t\t\t\tif ( conv === true ) {\r\n\t\t\t\t\t\t\t\t\tconv = converters[ conv2 ];\r\n\r\n\t\t\t\t\t\t\t\t// Otherwise, insert the intermediate dataType\r\n\t\t\t\t\t\t\t\t} else if ( converters[ conv2 ] !== true ) {\r\n\t\t\t\t\t\t\t\t\tcurrent = tmp[ 0 ];\r\n\t\t\t\t\t\t\t\t\tdataTypes.unshift( tmp[ 1 ] );\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Apply converter (if not an equivalence)\r\n\t\t\t\tif ( conv !== true ) {\r\n\r\n\t\t\t\t\t// Unless errors are allowed to bubble, catch and return them\r\n\t\t\t\t\tif ( conv && s.throws ) {\r\n\t\t\t\t\t\tresponse = conv( response );\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\tresponse = conv( response );\r\n\t\t\t\t\t\t} catch ( e ) {\r\n\t\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t\tstate: \"parsererror\",\r\n\t\t\t\t\t\t\t\terror: conv ? e : \"No conversion from \" + prev + \" to \" + current\r\n\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\treturn { state: \"success\", data: response };\r\n}\r\n\r\njQuery.extend( {\r\n\r\n\t// Counter for holding the number of active queries\r\n\tactive: 0,\r\n\r\n\t// Last-Modified header cache for next request\r\n\tlastModified: {},\r\n\tetag: {},\r\n\r\n\tajaxSettings: {\r\n\t\turl: location.href,\r\n\t\ttype: \"GET\",\r\n\t\tisLocal: rlocalProtocol.test( location.protocol ),\r\n\t\tglobal: true,\r\n\t\tprocessData: true,\r\n\t\tasync: true,\r\n\t\tcontentType: \"application/x-www-form-urlencoded; charset=UTF-8\",\r\n\r\n\t\t/*\r\n\t\ttimeout: 0,\r\n\t\tdata: null,\r\n\t\tdataType: null,\r\n\t\tusername: null,\r\n\t\tpassword: null,\r\n\t\tcache: null,\r\n\t\tthrows: false,\r\n\t\ttraditional: false,\r\n\t\theaders: {},\r\n\t\t*/\r\n\r\n\t\taccepts: {\r\n\t\t\t\"*\": allTypes,\r\n\t\t\ttext: \"text/plain\",\r\n\t\t\thtml: \"text/html\",\r\n\t\t\txml: \"application/xml, text/xml\",\r\n\t\t\tjson: \"application/json, text/javascript\"\r\n\t\t},\r\n\r\n\t\tcontents: {\r\n\t\t\txml: /\\bxml\\b/,\r\n\t\t\thtml: /\\bhtml/,\r\n\t\t\tjson: /\\bjson\\b/\r\n\t\t},\r\n\r\n\t\tresponseFields: {\r\n\t\t\txml: \"responseXML\",\r\n\t\t\ttext: \"responseText\",\r\n\t\t\tjson: \"responseJSON\"\r\n\t\t},\r\n\r\n\t\t// Data converters\r\n\t\t// Keys separate source (or catchall \"*\") and destination types with a single space\r\n\t\tconverters: {\r\n\r\n\t\t\t// Convert anything to text\r\n\t\t\t\"* text\": String,\r\n\r\n\t\t\t// Text to html (true = no transformation)\r\n\t\t\t\"text html\": true,\r\n\r\n\t\t\t// Evaluate text as a json expression\r\n\t\t\t\"text json\": JSON.parse,\r\n\r\n\t\t\t// Parse text as xml\r\n\t\t\t\"text xml\": jQuery.parseXML\r\n\t\t},\r\n\r\n\t\t// For options that shouldn't be deep extended:\r\n\t\t// you can add your own custom options here if\r\n\t\t// and when you create one that shouldn't be\r\n\t\t// deep extended (see ajaxExtend)\r\n\t\tflatOptions: {\r\n\t\t\turl: true,\r\n\t\t\tcontext: true\r\n\t\t}\r\n\t},\r\n\r\n\t// Creates a full fledged settings object into target\r\n\t// with both ajaxSettings and settings fields.\r\n\t// If target is omitted, writes into ajaxSettings.\r\n\tajaxSetup: function( target, settings ) {\r\n\t\treturn settings ?\r\n\r\n\t\t\t// Building a settings object\r\n\t\t\tajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :\r\n\r\n\t\t\t// Extending ajaxSettings\r\n\t\t\tajaxExtend( jQuery.ajaxSettings, target );\r\n\t},\r\n\r\n\tajaxPrefilter: addToPrefiltersOrTransports( prefilters ),\r\n\tajaxTransport: addToPrefiltersOrTransports( transports ),\r\n\r\n\t// Main method\r\n\tajax: function( url, options ) {\r\n\r\n\t\t// If url is an object, simulate pre-1.5 signature\r\n\t\tif ( typeof url === \"object\" ) {\r\n\t\t\toptions = url;\r\n\t\t\turl = undefined;\r\n\t\t}\r\n\r\n\t\t// Force options to be an object\r\n\t\toptions = options || {};\r\n\r\n\t\tvar transport,\r\n\r\n\t\t\t// URL without anti-cache param\r\n\t\t\tcacheURL,\r\n\r\n\t\t\t// Response headers\r\n\t\t\tresponseHeadersString,\r\n\t\t\tresponseHeaders,\r\n\r\n\t\t\t// timeout handle\r\n\t\t\ttimeoutTimer,\r\n\r\n\t\t\t// Url cleanup var\r\n\t\t\turlAnchor,\r\n\r\n\t\t\t// Request state (becomes false upon send and true upon completion)\r\n\t\t\tcompleted,\r\n\r\n\t\t\t// To know if global events are to be dispatched\r\n\t\t\tfireGlobals,\r\n\r\n\t\t\t// Loop variable\r\n\t\t\ti,\r\n\r\n\t\t\t// uncached part of the url\r\n\t\t\tuncached,\r\n\r\n\t\t\t// Create the final options object\r\n\t\t\ts = jQuery.ajaxSetup( {}, options ),\r\n\r\n\t\t\t// Callbacks context\r\n\t\t\tcallbackContext = s.context || s,\r\n\r\n\t\t\t// Context for global events is callbackContext if it is a DOM node or jQuery collection\r\n\t\t\tglobalEventContext = s.context &&\r\n\t\t\t\t( callbackContext.nodeType || callbackContext.jquery ) ?\r\n\t\t\t\t\tjQuery( callbackContext ) :\r\n\t\t\t\t\tjQuery.event,\r\n\r\n\t\t\t// Deferreds\r\n\t\t\tdeferred = jQuery.Deferred(),\r\n\t\t\tcompleteDeferred = jQuery.Callbacks( \"once memory\" ),\r\n\r\n\t\t\t// Status-dependent callbacks\r\n\t\t\tstatusCode = s.statusCode || {},\r\n\r\n\t\t\t// Headers (they are sent all at once)\r\n\t\t\trequestHeaders = {},\r\n\t\t\trequestHeadersNames = {},\r\n\r\n\t\t\t// Default abort message\r\n\t\t\tstrAbort = \"canceled\",\r\n\r\n\t\t\t// Fake xhr\r\n\t\t\tjqXHR = {\r\n\t\t\t\treadyState: 0,\r\n\r\n\t\t\t\t// Builds headers hashtable if needed\r\n\t\t\t\tgetResponseHeader: function( key ) {\r\n\t\t\t\t\tvar match;\r\n\t\t\t\t\tif ( completed ) {\r\n\t\t\t\t\t\tif ( !responseHeaders ) {\r\n\t\t\t\t\t\t\tresponseHeaders = {};\r\n\t\t\t\t\t\t\twhile ( ( match = rheaders.exec( responseHeadersString ) ) ) {\r\n\t\t\t\t\t\t\t\tresponseHeaders[ match[ 1 ].toLowerCase() + \" \" ] =\r\n\t\t\t\t\t\t\t\t\t( responseHeaders[ match[ 1 ].toLowerCase() + \" \" ] || [] )\r\n\t\t\t\t\t\t\t\t\t\t.concat( match[ 2 ] );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tmatch = responseHeaders[ key.toLowerCase() + \" \" ];\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn match == null ? null : match.join( \", \" );\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// Raw string\r\n\t\t\t\tgetAllResponseHeaders: function() {\r\n\t\t\t\t\treturn completed ? responseHeadersString : null;\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// Caches the header\r\n\t\t\t\tsetRequestHeader: function( name, value ) {\r\n\t\t\t\t\tif ( completed == null ) {\r\n\t\t\t\t\t\tname = requestHeadersNames[ name.toLowerCase() ] =\r\n\t\t\t\t\t\t\trequestHeadersNames[ name.toLowerCase() ] || name;\r\n\t\t\t\t\t\trequestHeaders[ name ] = value;\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn this;\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// Overrides response content-type header\r\n\t\t\t\toverrideMimeType: function( type ) {\r\n\t\t\t\t\tif ( completed == null ) {\r\n\t\t\t\t\t\ts.mimeType = type;\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn this;\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// Status-dependent callbacks\r\n\t\t\t\tstatusCode: function( map ) {\r\n\t\t\t\t\tvar code;\r\n\t\t\t\t\tif ( map ) {\r\n\t\t\t\t\t\tif ( completed ) {\r\n\r\n\t\t\t\t\t\t\t// Execute the appropriate callbacks\r\n\t\t\t\t\t\t\tjqXHR.always( map[ jqXHR.status ] );\r\n\t\t\t\t\t\t} else {\r\n\r\n\t\t\t\t\t\t\t// Lazy-add the new callbacks in a way that preserves old ones\r\n\t\t\t\t\t\t\tfor ( code in map ) {\r\n\t\t\t\t\t\t\t\tstatusCode[ code ] = [ statusCode[ code ], map[ code ] ];\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn this;\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// Cancel the request\r\n\t\t\t\tabort: function( statusText ) {\r\n\t\t\t\t\tvar finalText = statusText || strAbort;\r\n\t\t\t\t\tif ( transport ) {\r\n\t\t\t\t\t\ttransport.abort( finalText );\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdone( 0, finalText );\r\n\t\t\t\t\treturn this;\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t// Attach deferreds\r\n\t\tdeferred.promise( jqXHR );\r\n\r\n\t\t// Add protocol if not provided (prefilters might expect it)\r\n\t\t// Handle falsy url in the settings object (#10093: consistency with old signature)\r\n\t\t// We also use the url parameter if available\r\n\t\ts.url = ( ( url || s.url || location.href ) + \"\" )\r\n\t\t\t.replace( rprotocol, location.protocol + \"//\" );\r\n\r\n\t\t// Alias method option to type as per ticket #12004\r\n\t\ts.type = options.method || options.type || s.method || s.type;\r\n\r\n\t\t// Extract dataTypes list\r\n\t\ts.dataTypes = ( s.dataType || \"*\" ).toLowerCase().match( rnothtmlwhite ) || [ \"\" ];\r\n\r\n\t\t// A cross-domain request is in order when the origin doesn't match the current origin.\r\n\t\tif ( s.crossDomain == null ) {\r\n\t\t\turlAnchor = document.createElement( \"a\" );\r\n\r\n\t\t\t// Support: IE <=8 - 11, Edge 12 - 15\r\n\t\t\t// IE throws exception on accessing the href property if url is malformed,\r\n\t\t\t// e.g. http://example.com:80x/\r\n\t\t\ttry {\r\n\t\t\t\turlAnchor.href = s.url;\r\n\r\n\t\t\t\t// Support: IE <=8 - 11 only\r\n\t\t\t\t// Anchor's host property isn't correctly set when s.url is relative\r\n\t\t\t\turlAnchor.href = urlAnchor.href;\r\n\t\t\t\ts.crossDomain = originAnchor.protocol + \"//\" + originAnchor.host !==\r\n\t\t\t\t\turlAnchor.protocol + \"//\" + urlAnchor.host;\r\n\t\t\t} catch ( e ) {\r\n\r\n\t\t\t\t// If there is an error parsing the URL, assume it is crossDomain,\r\n\t\t\t\t// it can be rejected by the transport if it is invalid\r\n\t\t\t\ts.crossDomain = true;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Convert data if not already a string\r\n\t\tif ( s.data && s.processData && typeof s.data !== \"string\" ) {\r\n\t\t\ts.data = jQuery.param( s.data, s.traditional );\r\n\t\t}\r\n\r\n\t\t// Apply prefilters\r\n\t\tinspectPrefiltersOrTransports( prefilters, s, options, jqXHR );\r\n\r\n\t\t// If request was aborted inside a prefilter, stop there\r\n\t\tif ( completed ) {\r\n\t\t\treturn jqXHR;\r\n\t\t}\r\n\r\n\t\t// We can fire global events as of now if asked to\r\n\t\t// Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118)\r\n\t\tfireGlobals = jQuery.event && s.global;\r\n\r\n\t\t// Watch for a new set of requests\r\n\t\tif ( fireGlobals && jQuery.active++ === 0 ) {\r\n\t\t\tjQuery.event.trigger( \"ajaxStart\" );\r\n\t\t}\r\n\r\n\t\t// Uppercase the type\r\n\t\ts.type = s.type.toUpperCase();\r\n\r\n\t\t// Determine if request has content\r\n\t\ts.hasContent = !rnoContent.test( s.type );\r\n\r\n\t\t// Save the URL in case we're toying with the If-Modified-Since\r\n\t\t// and/or If-None-Match header later on\r\n\t\t// Remove hash to simplify url manipulation\r\n\t\tcacheURL = s.url.replace( rhash, \"\" );\r\n\r\n\t\t// More options handling for requests with no content\r\n\t\tif ( !s.hasContent ) {\r\n\r\n\t\t\t// Remember the hash so we can put it back\r\n\t\t\tuncached = s.url.slice( cacheURL.length );\r\n\r\n\t\t\t// If data is available and should be processed, append data to url\r\n\t\t\tif ( s.data && ( s.processData || typeof s.data === \"string\" ) ) {\r\n\t\t\t\tcacheURL += ( rquery.test( cacheURL ) ? \"&\" : \"?\" ) + s.data;\r\n\r\n\t\t\t\t// #9682: remove data so that it's not used in an eventual retry\r\n\t\t\t\tdelete s.data;\r\n\t\t\t}\r\n\r\n\t\t\t// Add or update anti-cache param if needed\r\n\t\t\tif ( s.cache === false ) {\r\n\t\t\t\tcacheURL = cacheURL.replace( rantiCache, \"$1\" );\r\n\t\t\t\tuncached = ( rquery.test( cacheURL ) ? \"&\" : \"?\" ) + \"_=\" + ( nonce.guid++ ) +\r\n\t\t\t\t\tuncached;\r\n\t\t\t}\r\n\r\n\t\t\t// Put hash and anti-cache on the URL that will be requested (gh-1732)\r\n\t\t\ts.url = cacheURL + uncached;\r\n\r\n\t\t// Change '%20' to '+' if this is encoded form body content (gh-2658)\r\n\t\t} else if ( s.data && s.processData &&\r\n\t\t\t( s.contentType || \"\" ).indexOf( \"application/x-www-form-urlencoded\" ) === 0 ) {\r\n\t\t\ts.data = s.data.replace( r20, \"+\" );\r\n\t\t}\r\n\r\n\t\t// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.\r\n\t\tif ( s.ifModified ) {\r\n\t\t\tif ( jQuery.lastModified[ cacheURL ] ) {\r\n\t\t\t\tjqXHR.setRequestHeader( \"If-Modified-Since\", jQuery.lastModified[ cacheURL ] );\r\n\t\t\t}\r\n\t\t\tif ( jQuery.etag[ cacheURL ] ) {\r\n\t\t\t\tjqXHR.setRequestHeader( \"If-None-Match\", jQuery.etag[ cacheURL ] );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Set the correct header, if data is being sent\r\n\t\tif ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {\r\n\t\t\tjqXHR.setRequestHeader( \"Content-Type\", s.contentType );\r\n\t\t}\r\n\r\n\t\t// Set the Accepts header for the server, depending on the dataType\r\n\t\tjqXHR.setRequestHeader(\r\n\t\t\t\"Accept\",\r\n\t\t\ts.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ?\r\n\t\t\t\ts.accepts[ s.dataTypes[ 0 ] ] +\r\n\t\t\t\t\t( s.dataTypes[ 0 ] !== \"*\" ? \", \" + allTypes + \"; q=0.01\" : \"\" ) :\r\n\t\t\t\ts.accepts[ \"*\" ]\r\n\t\t);\r\n\r\n\t\t// Check for headers option\r\n\t\tfor ( i in s.headers ) {\r\n\t\t\tjqXHR.setRequestHeader( i, s.headers[ i ] );\r\n\t\t}\r\n\r\n\t\t// Allow custom headers/mimetypes and early abort\r\n\t\tif ( s.beforeSend &&\r\n\t\t\t( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) {\r\n\r\n\t\t\t// Abort if not done already and return\r\n\t\t\treturn jqXHR.abort();\r\n\t\t}\r\n\r\n\t\t// Aborting is no longer a cancellation\r\n\t\tstrAbort = \"abort\";\r\n\r\n\t\t// Install callbacks on deferreds\r\n\t\tcompleteDeferred.add( s.complete );\r\n\t\tjqXHR.done( s.success );\r\n\t\tjqXHR.fail( s.error );\r\n\r\n\t\t// Get transport\r\n\t\ttransport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );\r\n\r\n\t\t// If no transport, we auto-abort\r\n\t\tif ( !transport ) {\r\n\t\t\tdone( -1, \"No Transport\" );\r\n\t\t} else {\r\n\t\t\tjqXHR.readyState = 1;\r\n\r\n\t\t\t// Send global event\r\n\t\t\tif ( fireGlobals ) {\r\n\t\t\t\tglobalEventContext.trigger( \"ajaxSend\", [ jqXHR, s ] );\r\n\t\t\t}\r\n\r\n\t\t\t// If request was aborted inside ajaxSend, stop there\r\n\t\t\tif ( completed ) {\r\n\t\t\t\treturn jqXHR;\r\n\t\t\t}\r\n\r\n\t\t\t// Timeout\r\n\t\t\tif ( s.async && s.timeout > 0 ) {\r\n\t\t\t\ttimeoutTimer = window.setTimeout( function() {\r\n\t\t\t\t\tjqXHR.abort( \"timeout\" );\r\n\t\t\t\t}, s.timeout );\r\n\t\t\t}\r\n\r\n\t\t\ttry {\r\n\t\t\t\tcompleted = false;\r\n\t\t\t\ttransport.send( requestHeaders, done );\r\n\t\t\t} catch ( e ) {\r\n\r\n\t\t\t\t// Rethrow post-completion exceptions\r\n\t\t\t\tif ( completed ) {\r\n\t\t\t\t\tthrow e;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Propagate others as results\r\n\t\t\t\tdone( -1, e );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Callback for when everything is done\r\n\t\tfunction done( status, nativeStatusText, responses, headers ) {\r\n\t\t\tvar isSuccess, success, error, response, modified,\r\n\t\t\t\tstatusText = nativeStatusText;\r\n\r\n\t\t\t// Ignore repeat invocations\r\n\t\t\tif ( completed ) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tcompleted = true;\r\n\r\n\t\t\t// Clear timeout if it exists\r\n\t\t\tif ( timeoutTimer ) {\r\n\t\t\t\twindow.clearTimeout( timeoutTimer );\r\n\t\t\t}\r\n\r\n\t\t\t// Dereference transport for early garbage collection\r\n\t\t\t// (no matter how long the jqXHR object will be used)\r\n\t\t\ttransport = undefined;\r\n\r\n\t\t\t// Cache response headers\r\n\t\t\tresponseHeadersString = headers || \"\";\r\n\r\n\t\t\t// Set readyState\r\n\t\t\tjqXHR.readyState = status > 0 ? 4 : 0;\r\n\r\n\t\t\t// Determine if successful\r\n\t\t\tisSuccess = status >= 200 && status < 300 || status === 304;\r\n\r\n\t\t\t// Get response data\r\n\t\t\tif ( responses ) {\r\n\t\t\t\tresponse = ajaxHandleResponses( s, jqXHR, responses );\r\n\t\t\t}\r\n\r\n\t\t\t// Use a noop converter for missing script\r\n\t\t\tif ( !isSuccess && jQuery.inArray( \"script\", s.dataTypes ) > -1 ) {\r\n\t\t\t\ts.converters[ \"text script\" ] = function() {};\r\n\t\t\t}\r\n\r\n\t\t\t// Convert no matter what (that way responseXXX fields are always set)\r\n\t\t\tresponse = ajaxConvert( s, response, jqXHR, isSuccess );\r\n\r\n\t\t\t// If successful, handle type chaining\r\n\t\t\tif ( isSuccess ) {\r\n\r\n\t\t\t\t// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.\r\n\t\t\t\tif ( s.ifModified ) {\r\n\t\t\t\t\tmodified = jqXHR.getResponseHeader( \"Last-Modified\" );\r\n\t\t\t\t\tif ( modified ) {\r\n\t\t\t\t\t\tjQuery.lastModified[ cacheURL ] = modified;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tmodified = jqXHR.getResponseHeader( \"etag\" );\r\n\t\t\t\t\tif ( modified ) {\r\n\t\t\t\t\t\tjQuery.etag[ cacheURL ] = modified;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// if no content\r\n\t\t\t\tif ( status === 204 || s.type === \"HEAD\" ) {\r\n\t\t\t\t\tstatusText = \"nocontent\";\r\n\r\n\t\t\t\t// if not modified\r\n\t\t\t\t} else if ( status === 304 ) {\r\n\t\t\t\t\tstatusText = \"notmodified\";\r\n\r\n\t\t\t\t// If we have data, let's convert it\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstatusText = response.state;\r\n\t\t\t\t\tsuccess = response.data;\r\n\t\t\t\t\terror = response.error;\r\n\t\t\t\t\tisSuccess = !error;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\r\n\t\t\t\t// Extract error from statusText and normalize for non-aborts\r\n\t\t\t\terror = statusText;\r\n\t\t\t\tif ( status || !statusText ) {\r\n\t\t\t\t\tstatusText = \"error\";\r\n\t\t\t\t\tif ( status < 0 ) {\r\n\t\t\t\t\t\tstatus = 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Set data for the fake xhr object\r\n\t\t\tjqXHR.status = status;\r\n\t\t\tjqXHR.statusText = ( nativeStatusText || statusText ) + \"\";\r\n\r\n\t\t\t// Success/Error\r\n\t\t\tif ( isSuccess ) {\r\n\t\t\t\tdeferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );\r\n\t\t\t} else {\r\n\t\t\t\tdeferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );\r\n\t\t\t}\r\n\r\n\t\t\t// Status-dependent callbacks\r\n\t\t\tjqXHR.statusCode( statusCode );\r\n\t\t\tstatusCode = undefined;\r\n\r\n\t\t\tif ( fireGlobals ) {\r\n\t\t\t\tglobalEventContext.trigger( isSuccess ? \"ajaxSuccess\" : \"ajaxError\",\r\n\t\t\t\t\t[ jqXHR, s, isSuccess ? success : error ] );\r\n\t\t\t}\r\n\r\n\t\t\t// Complete\r\n\t\t\tcompleteDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );\r\n\r\n\t\t\tif ( fireGlobals ) {\r\n\t\t\t\tglobalEventContext.trigger( \"ajaxComplete\", [ jqXHR, s ] );\r\n\r\n\t\t\t\t// Handle the global AJAX counter\r\n\t\t\t\tif ( !( --jQuery.active ) ) {\r\n\t\t\t\t\tjQuery.event.trigger( \"ajaxStop\" );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn jqXHR;\r\n\t},\r\n\r\n\tgetJSON: function( url, data, callback ) {\r\n\t\treturn jQuery.get( url, data, callback, \"json\" );\r\n\t},\r\n\r\n\tgetScript: function( url, callback ) {\r\n\t\treturn jQuery.get( url, undefined, callback, \"script\" );\r\n\t}\r\n} );\r\n\r\njQuery.each( [ \"get\", \"post\" ], function( _i, method ) {\r\n\tjQuery[ method ] = function( url, data, callback, type ) {\r\n\r\n\t\t// Shift arguments if data argument was omitted\r\n\t\tif ( isFunction( data ) ) {\r\n\t\t\ttype = type || callback;\r\n\t\t\tcallback = data;\r\n\t\t\tdata = undefined;\r\n\t\t}\r\n\r\n\t\t// The url can be an options object (which then must have .url)\r\n\t\treturn jQuery.ajax( jQuery.extend( {\r\n\t\t\turl: url,\r\n\t\t\ttype: method,\r\n\t\t\tdataType: type,\r\n\t\t\tdata: data,\r\n\t\t\tsuccess: callback\r\n\t\t}, jQuery.isPlainObject( url ) && url ) );\r\n\t};\r\n} );\r\n\r\njQuery.ajaxPrefilter( function( s ) {\r\n\tvar i;\r\n\tfor ( i in s.headers ) {\r\n\t\tif ( i.toLowerCase() === \"content-type\" ) {\r\n\t\t\ts.contentType = s.headers[ i ] || \"\";\r\n\t\t}\r\n\t}\r\n} );\r\n\r\n\r\njQuery._evalUrl = function( url, options, doc ) {\r\n\treturn jQuery.ajax( {\r\n\t\turl: url,\r\n\r\n\t\t// Make this explicit, since user can override this through ajaxSetup (#11264)\r\n\t\ttype: \"GET\",\r\n\t\tdataType: \"script\",\r\n\t\tcache: true,\r\n\t\tasync: false,\r\n\t\tglobal: false,\r\n\r\n\t\t// Only evaluate the response if it is successful (gh-4126)\r\n\t\t// dataFilter is not invoked for failure responses, so using it instead\r\n\t\t// of the default converter is kludgy but it works.\r\n\t\tconverters: {\r\n\t\t\t\"text script\": function() {}\r\n\t\t},\r\n\t\tdataFilter: function( response ) {\r\n\t\t\tjQuery.globalEval( response, options, doc );\r\n\t\t}\r\n\t} );\r\n};\r\n\r\n\r\njQuery.fn.extend( {\r\n\twrapAll: function( html ) {\r\n\t\tvar wrap;\r\n\r\n\t\tif ( this[ 0 ] ) {\r\n\t\t\tif ( isFunction( html ) ) {\r\n\t\t\t\thtml = html.call( this[ 0 ] );\r\n\t\t\t}\r\n\r\n\t\t\t// The elements to wrap the target around\r\n\t\t\twrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true );\r\n\r\n\t\t\tif ( this[ 0 ].parentNode ) {\r\n\t\t\t\twrap.insertBefore( this[ 0 ] );\r\n\t\t\t}\r\n\r\n\t\t\twrap.map( function() {\r\n\t\t\t\tvar elem = this;\r\n\r\n\t\t\t\twhile ( elem.firstElementChild ) {\r\n\t\t\t\t\telem = elem.firstElementChild;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn elem;\r\n\t\t\t} ).append( this );\r\n\t\t}\r\n\r\n\t\treturn this;\r\n\t},\r\n\r\n\twrapInner: function( html ) {\r\n\t\tif ( isFunction( html ) ) {\r\n\t\t\treturn this.each( function( i ) {\r\n\t\t\t\tjQuery( this ).wrapInner( html.call( this, i ) );\r\n\t\t\t} );\r\n\t\t}\r\n\r\n\t\treturn this.each( function() {\r\n\t\t\tvar self = jQuery( this ),\r\n\t\t\t\tcontents = self.contents();\r\n\r\n\t\t\tif ( contents.length ) {\r\n\t\t\t\tcontents.wrapAll( html );\r\n\r\n\t\t\t} else {\r\n\t\t\t\tself.append( html );\r\n\t\t\t}\r\n\t\t} );\r\n\t},\r\n\r\n\twrap: function( html ) {\r\n\t\tvar htmlIsFunction = isFunction( html );\r\n\r\n\t\treturn this.each( function( i ) {\r\n\t\t\tjQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html );\r\n\t\t} );\r\n\t},\r\n\r\n\tunwrap: function( selector ) {\r\n\t\tthis.parent( selector ).not( \"body\" ).each( function() {\r\n\t\t\tjQuery( this ).replaceWith( this.childNodes );\r\n\t\t} );\r\n\t\treturn this;\r\n\t}\r\n} );\r\n\r\n\r\njQuery.expr.pseudos.hidden = function( elem ) {\r\n\treturn !jQuery.expr.pseudos.visible( elem );\r\n};\r\njQuery.expr.pseudos.visible = function( elem ) {\r\n\treturn !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length );\r\n};\r\n\r\n\r\n\r\n\r\njQuery.ajaxSettings.xhr = function() {\r\n\ttry {\r\n\t\treturn new window.XMLHttpRequest();\r\n\t} catch ( e ) {}\r\n};\r\n\r\nvar xhrSuccessStatus = {\r\n\r\n\t\t// File protocol always yields status code 0, assume 200\r\n\t\t0: 200,\r\n\r\n\t\t// Support: IE <=9 only\r\n\t\t// #1450: sometimes IE returns 1223 when it should be 204\r\n\t\t1223: 204\r\n\t},\r\n\txhrSupported = jQuery.ajaxSettings.xhr();\r\n\r\nsupport.cors = !!xhrSupported && ( \"withCredentials\" in xhrSupported );\r\nsupport.ajax = xhrSupported = !!xhrSupported;\r\n\r\njQuery.ajaxTransport( function( options ) {\r\n\tvar callback, errorCallback;\r\n\r\n\t// Cross domain only allowed if supported through XMLHttpRequest\r\n\tif ( support.cors || xhrSupported && !options.crossDomain ) {\r\n\t\treturn {\r\n\t\t\tsend: function( headers, complete ) {\r\n\t\t\t\tvar i,\r\n\t\t\t\t\txhr = options.xhr();\r\n\r\n\t\t\t\txhr.open(\r\n\t\t\t\t\toptions.type,\r\n\t\t\t\t\toptions.url,\r\n\t\t\t\t\toptions.async,\r\n\t\t\t\t\toptions.username,\r\n\t\t\t\t\toptions.password\r\n\t\t\t\t);\r\n\r\n\t\t\t\t// Apply custom fields if provided\r\n\t\t\t\tif ( options.xhrFields ) {\r\n\t\t\t\t\tfor ( i in options.xhrFields ) {\r\n\t\t\t\t\t\txhr[ i ] = options.xhrFields[ i ];\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Override mime type if needed\r\n\t\t\t\tif ( options.mimeType && xhr.overrideMimeType ) {\r\n\t\t\t\t\txhr.overrideMimeType( options.mimeType );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// X-Requested-With header\r\n\t\t\t\t// For cross-domain requests, seeing as conditions for a preflight are\r\n\t\t\t\t// akin to a jigsaw puzzle, we simply never set it to be sure.\r\n\t\t\t\t// (it can always be set on a per-request basis or even using ajaxSetup)\r\n\t\t\t\t// For same-domain requests, won't change header if already provided.\r\n\t\t\t\tif ( !options.crossDomain && !headers[ \"X-Requested-With\" ] ) {\r\n\t\t\t\t\theaders[ \"X-Requested-With\" ] = \"XMLHttpRequest\";\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Set headers\r\n\t\t\t\tfor ( i in headers ) {\r\n\t\t\t\t\txhr.setRequestHeader( i, headers[ i ] );\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Callback\r\n\t\t\t\tcallback = function( type ) {\r\n\t\t\t\t\treturn function() {\r\n\t\t\t\t\t\tif ( callback ) {\r\n\t\t\t\t\t\t\tcallback = errorCallback = xhr.onload =\r\n\t\t\t\t\t\t\t\txhr.onerror = xhr.onabort = xhr.ontimeout =\r\n\t\t\t\t\t\t\t\t\txhr.onreadystatechange = null;\r\n\r\n\t\t\t\t\t\t\tif ( type === \"abort\" ) {\r\n\t\t\t\t\t\t\t\txhr.abort();\r\n\t\t\t\t\t\t\t} else if ( type === \"error\" ) {\r\n\r\n\t\t\t\t\t\t\t\t// Support: IE <=9 only\r\n\t\t\t\t\t\t\t\t// On a manual native abort, IE9 throws\r\n\t\t\t\t\t\t\t\t// errors on any property access that is not readyState\r\n\t\t\t\t\t\t\t\tif ( typeof xhr.status !== \"number\" ) {\r\n\t\t\t\t\t\t\t\t\tcomplete( 0, \"error\" );\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tcomplete(\r\n\r\n\t\t\t\t\t\t\t\t\t\t// File: protocol always yields status 0; see #8605, #14207\r\n\t\t\t\t\t\t\t\t\t\txhr.status,\r\n\t\t\t\t\t\t\t\t\t\txhr.statusText\r\n\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tcomplete(\r\n\t\t\t\t\t\t\t\t\txhrSuccessStatus[ xhr.status ] || xhr.status,\r\n\t\t\t\t\t\t\t\t\txhr.statusText,\r\n\r\n\t\t\t\t\t\t\t\t\t// Support: IE <=9 only\r\n\t\t\t\t\t\t\t\t\t// IE9 has no XHR2 but throws on binary (trac-11426)\r\n\t\t\t\t\t\t\t\t\t// For XHR2 non-text, let the caller handle it (gh-2498)\r\n\t\t\t\t\t\t\t\t\t( xhr.responseType || \"text\" ) !== \"text\"  ||\r\n\t\t\t\t\t\t\t\t\ttypeof xhr.responseText !== \"string\" ?\r\n\t\t\t\t\t\t\t\t\t\t{ binary: xhr.response } :\r\n\t\t\t\t\t\t\t\t\t\t{ text: xhr.responseText },\r\n\t\t\t\t\t\t\t\t\txhr.getAllResponseHeaders()\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t};\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// Listen to events\r\n\t\t\t\txhr.onload = callback();\r\n\t\t\t\terrorCallback = xhr.onerror = xhr.ontimeout = callback( \"error\" );\r\n\r\n\t\t\t\t// Support: IE 9 only\r\n\t\t\t\t// Use onreadystatechange to replace onabort\r\n\t\t\t\t// to handle uncaught aborts\r\n\t\t\t\tif ( xhr.onabort !== undefined ) {\r\n\t\t\t\t\txhr.onabort = errorCallback;\r\n\t\t\t\t} else {\r\n\t\t\t\t\txhr.onreadystatechange = function() {\r\n\r\n\t\t\t\t\t\t// Check readyState before timeout as it changes\r\n\t\t\t\t\t\tif ( xhr.readyState === 4 ) {\r\n\r\n\t\t\t\t\t\t\t// Allow onerror to be called first,\r\n\t\t\t\t\t\t\t// but that will not handle a native abort\r\n\t\t\t\t\t\t\t// Also, save errorCallback to a variable\r\n\t\t\t\t\t\t\t// as xhr.onerror cannot be accessed\r\n\t\t\t\t\t\t\twindow.setTimeout( function() {\r\n\t\t\t\t\t\t\t\tif ( callback ) {\r\n\t\t\t\t\t\t\t\t\terrorCallback();\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t} );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Create the abort callback\r\n\t\t\t\tcallback = callback( \"abort\" );\r\n\r\n\t\t\t\ttry {\r\n\r\n\t\t\t\t\t// Do send the request (this may raise an exception)\r\n\t\t\t\t\txhr.send( options.hasContent && options.data || null );\r\n\t\t\t\t} catch ( e ) {\r\n\r\n\t\t\t\t\t// #14683: Only rethrow if this hasn't been notified as an error yet\r\n\t\t\t\t\tif ( callback ) {\r\n\t\t\t\t\t\tthrow e;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\tabort: function() {\r\n\t\t\t\tif ( callback ) {\r\n\t\t\t\t\tcallback();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t}\r\n} );\r\n\r\n\r\n\r\n\r\n// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432)\r\njQuery.ajaxPrefilter( function( s ) {\r\n\tif ( s.crossDomain ) {\r\n\t\ts.contents.script = false;\r\n\t}\r\n} );\r\n\r\n// Install script dataType\r\njQuery.ajaxSetup( {\r\n\taccepts: {\r\n\t\tscript: \"text/javascript, application/javascript, \" +\r\n\t\t\t\"application/ecmascript, application/x-ecmascript\"\r\n\t},\r\n\tcontents: {\r\n\t\tscript: /\\b(?:java|ecma)script\\b/\r\n\t},\r\n\tconverters: {\r\n\t\t\"text script\": function( text ) {\r\n\t\t\tjQuery.globalEval( text );\r\n\t\t\treturn text;\r\n\t\t}\r\n\t}\r\n} );\r\n\r\n// Handle cache's special case and crossDomain\r\njQuery.ajaxPrefilter( \"script\", function( s ) {\r\n\tif ( s.cache === undefined ) {\r\n\t\ts.cache = false;\r\n\t}\r\n\tif ( s.crossDomain ) {\r\n\t\ts.type = \"GET\";\r\n\t}\r\n} );\r\n\r\n// Bind script tag hack transport\r\njQuery.ajaxTransport( \"script\", function( s ) {\r\n\r\n\t// This transport only deals with cross domain or forced-by-attrs requests\r\n\tif ( s.crossDomain || s.scriptAttrs ) {\r\n\t\tvar script, callback;\r\n\t\treturn {\r\n\t\t\tsend: function( _, complete ) {\r\n\t\t\t\tscript = jQuery( \"<script>\" )\r\n\t\t\t\t\t.attr( s.scriptAttrs || {} )\r\n\t\t\t\t\t.prop( { charset: s.scriptCharset, src: s.url } )\r\n\t\t\t\t\t.on( \"load error\", callback = function( evt ) {\r\n\t\t\t\t\t\tscript.remove();\r\n\t\t\t\t\t\tcallback = null;\r\n\t\t\t\t\t\tif ( evt ) {\r\n\t\t\t\t\t\t\tcomplete( evt.type === \"error\" ? 404 : 200, evt.type );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} );\r\n\r\n\t\t\t\t// Use native DOM manipulation to avoid our domManip AJAX trickery\r\n\t\t\t\tdocument.head.appendChild( script[ 0 ] );\r\n\t\t\t},\r\n\t\t\tabort: function() {\r\n\t\t\t\tif ( callback ) {\r\n\t\t\t\t\tcallback();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t}\r\n} );\r\n\r\n\r\n\r\n\r\nvar oldCallbacks = [],\r\n\trjsonp = /(=)\\?(?=&|$)|\\?\\?/;\r\n\r\n// Default jsonp settings\r\njQuery.ajaxSetup( {\r\n\tjsonp: \"callback\",\r\n\tjsonpCallback: function() {\r\n\t\tvar callback = oldCallbacks.pop() || ( jQuery.expando + \"_\" + ( nonce.guid++ ) );\r\n\t\tthis[ callback ] = true;\r\n\t\treturn callback;\r\n\t}\r\n} );\r\n\r\n// Detect, normalize options and install callbacks for jsonp requests\r\njQuery.ajaxPrefilter( \"json jsonp\", function( s, originalSettings, jqXHR ) {\r\n\r\n\tvar callbackName, overwritten, responseContainer,\r\n\t\tjsonProp = s.jsonp !== false && ( rjsonp.test( s.url ) ?\r\n\t\t\t\"url\" :\r\n\t\t\ttypeof s.data === \"string\" &&\r\n\t\t\t\t( s.contentType || \"\" )\r\n\t\t\t\t\t.indexOf( \"application/x-www-form-urlencoded\" ) === 0 &&\r\n\t\t\t\trjsonp.test( s.data ) && \"data\"\r\n\t\t);\r\n\r\n\t// Handle iff the expected data type is \"jsonp\" or we have a parameter to set\r\n\tif ( jsonProp || s.dataTypes[ 0 ] === \"jsonp\" ) {\r\n\r\n\t\t// Get callback name, remembering preexisting value associated with it\r\n\t\tcallbackName = s.jsonpCallback = isFunction( s.jsonpCallback ) ?\r\n\t\t\ts.jsonpCallback() :\r\n\t\t\ts.jsonpCallback;\r\n\r\n\t\t// Insert callback into url or form data\r\n\t\tif ( jsonProp ) {\r\n\t\t\ts[ jsonProp ] = s[ jsonProp ].replace( rjsonp, \"$1\" + callbackName );\r\n\t\t} else if ( s.jsonp !== false ) {\r\n\t\t\ts.url += ( rquery.test( s.url ) ? \"&\" : \"?\" ) + s.jsonp + \"=\" + callbackName;\r\n\t\t}\r\n\r\n\t\t// Use data converter to retrieve json after script execution\r\n\t\ts.converters[ \"script json\" ] = function() {\r\n\t\t\tif ( !responseContainer ) {\r\n\t\t\t\tjQuery.error( callbackName + \" was not called\" );\r\n\t\t\t}\r\n\t\t\treturn responseContainer[ 0 ];\r\n\t\t};\r\n\r\n\t\t// Force json dataType\r\n\t\ts.dataTypes[ 0 ] = \"json\";\r\n\r\n\t\t// Install callback\r\n\t\toverwritten = window[ callbackName ];\r\n\t\twindow[ callbackName ] = function() {\r\n\t\t\tresponseContainer = arguments;\r\n\t\t};\r\n\r\n\t\t// Clean-up function (fires after converters)\r\n\t\tjqXHR.always( function() {\r\n\r\n\t\t\t// If previous value didn't exist - remove it\r\n\t\t\tif ( overwritten === undefined ) {\r\n\t\t\t\tjQuery( window ).removeProp( callbackName );\r\n\r\n\t\t\t// Otherwise restore preexisting value\r\n\t\t\t} else {\r\n\t\t\t\twindow[ callbackName ] = overwritten;\r\n\t\t\t}\r\n\r\n\t\t\t// Save back as free\r\n\t\t\tif ( s[ callbackName ] ) {\r\n\r\n\t\t\t\t// Make sure that re-using the options doesn't screw things around\r\n\t\t\t\ts.jsonpCallback = originalSettings.jsonpCallback;\r\n\r\n\t\t\t\t// Save the callback name for future use\r\n\t\t\t\toldCallbacks.push( callbackName );\r\n\t\t\t}\r\n\r\n\t\t\t// Call if it was a function and we have a response\r\n\t\t\tif ( responseContainer && isFunction( overwritten ) ) {\r\n\t\t\t\toverwritten( responseContainer[ 0 ] );\r\n\t\t\t}\r\n\r\n\t\t\tresponseContainer = overwritten = undefined;\r\n\t\t} );\r\n\r\n\t\t// Delegate to script\r\n\t\treturn \"script\";\r\n\t}\r\n} );\r\n\r\n\r\n\r\n\r\n// Support: Safari 8 only\r\n// In Safari 8 documents created via document.implementation.createHTMLDocument\r\n// collapse sibling forms: the second one becomes a child of the first one.\r\n// Because of that, this security measure has to be disabled in Safari 8.\r\n// https://bugs.webkit.org/show_bug.cgi?id=137337\r\nsupport.createHTMLDocument = ( function() {\r\n\tvar body = document.implementation.createHTMLDocument( \"\" ).body;\r\n\tbody.innerHTML = \"<form></form><form></form>\";\r\n\treturn body.childNodes.length === 2;\r\n} )();\r\n\r\n\r\n// Argument \"data\" should be string of html\r\n// context (optional): If specified, the fragment will be created in this context,\r\n// defaults to document\r\n// keepScripts (optional): If true, will include scripts passed in the html string\r\njQuery.parseHTML = function( data, context, keepScripts ) {\r\n\tif ( typeof data !== \"string\" ) {\r\n\t\treturn [];\r\n\t}\r\n\tif ( typeof context === \"boolean\" ) {\r\n\t\tkeepScripts = context;\r\n\t\tcontext = false;\r\n\t}\r\n\r\n\tvar base, parsed, scripts;\r\n\r\n\tif ( !context ) {\r\n\r\n\t\t// Stop scripts or inline event handlers from being executed immediately\r\n\t\t// by using document.implementation\r\n\t\tif ( support.createHTMLDocument ) {\r\n\t\t\tcontext = document.implementation.createHTMLDocument( \"\" );\r\n\r\n\t\t\t// Set the base href for the created document\r\n\t\t\t// so any parsed elements with URLs\r\n\t\t\t// are based on the document's URL (gh-2965)\r\n\t\t\tbase = context.createElement( \"base\" );\r\n\t\t\tbase.href = document.location.href;\r\n\t\t\tcontext.head.appendChild( base );\r\n\t\t} else {\r\n\t\t\tcontext = document;\r\n\t\t}\r\n\t}\r\n\r\n\tparsed = rsingleTag.exec( data );\r\n\tscripts = !keepScripts && [];\r\n\r\n\t// Single tag\r\n\tif ( parsed ) {\r\n\t\treturn [ context.createElement( parsed[ 1 ] ) ];\r\n\t}\r\n\r\n\tparsed = buildFragment( [ data ], context, scripts );\r\n\r\n\tif ( scripts && scripts.length ) {\r\n\t\tjQuery( scripts ).remove();\r\n\t}\r\n\r\n\treturn jQuery.merge( [], parsed.childNodes );\r\n};\r\n\r\n\r\n/**\r\n * Load a url into a page\r\n */\r\njQuery.fn.load = function( url, params, callback ) {\r\n\tvar selector, type, response,\r\n\t\tself = this,\r\n\t\toff = url.indexOf( \" \" );\r\n\r\n\tif ( off > -1 ) {\r\n\t\tselector = stripAndCollapse( url.slice( off ) );\r\n\t\turl = url.slice( 0, off );\r\n\t}\r\n\r\n\t// If it's a function\r\n\tif ( isFunction( params ) ) {\r\n\r\n\t\t// We assume that it's the callback\r\n\t\tcallback = params;\r\n\t\tparams = undefined;\r\n\r\n\t// Otherwise, build a param string\r\n\t} else if ( params && typeof params === \"object\" ) {\r\n\t\ttype = \"POST\";\r\n\t}\r\n\r\n\t// If we have elements to modify, make the request\r\n\tif ( self.length > 0 ) {\r\n\t\tjQuery.ajax( {\r\n\t\t\turl: url,\r\n\r\n\t\t\t// If \"type\" variable is undefined, then \"GET\" method will be used.\r\n\t\t\t// Make value of this field explicit since\r\n\t\t\t// user can override it through ajaxSetup method\r\n\t\t\ttype: type || \"GET\",\r\n\t\t\tdataType: \"html\",\r\n\t\t\tdata: params\r\n\t\t} ).done( function( responseText ) {\r\n\r\n\t\t\t// Save response for use in complete callback\r\n\t\t\tresponse = arguments;\r\n\r\n\t\t\tself.html( selector ?\r\n\r\n\t\t\t\t// If a selector was specified, locate the right elements in a dummy div\r\n\t\t\t\t// Exclude scripts to avoid IE 'Permission Denied' errors\r\n\t\t\t\tjQuery( \"<div>\" ).append( jQuery.parseHTML( responseText ) ).find( selector ) :\r\n\r\n\t\t\t\t// Otherwise use the full result\r\n\t\t\t\tresponseText );\r\n\r\n\t\t// If the request succeeds, this function gets \"data\", \"status\", \"jqXHR\"\r\n\t\t// but they are ignored because response was set above.\r\n\t\t// If it fails, this function gets \"jqXHR\", \"status\", \"error\"\r\n\t\t} ).always( callback && function( jqXHR, status ) {\r\n\t\t\tself.each( function() {\r\n\t\t\t\tcallback.apply( this, response || [ jqXHR.responseText, status, jqXHR ] );\r\n\t\t\t} );\r\n\t\t} );\r\n\t}\r\n\r\n\treturn this;\r\n};\r\n\r\n\r\n\r\n\r\njQuery.expr.pseudos.animated = function( elem ) {\r\n\treturn jQuery.grep( jQuery.timers, function( fn ) {\r\n\t\treturn elem === fn.elem;\r\n\t} ).length;\r\n};\r\n\r\n\r\n\r\n\r\njQuery.offset = {\r\n\tsetOffset: function( elem, options, i ) {\r\n\t\tvar curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,\r\n\t\t\tposition = jQuery.css( elem, \"position\" ),\r\n\t\t\tcurElem = jQuery( elem ),\r\n\t\t\tprops = {};\r\n\r\n\t\t// Set position first, in-case top/left are set even on static elem\r\n\t\tif ( position === \"static\" ) {\r\n\t\t\telem.style.position = \"relative\";\r\n\t\t}\r\n\r\n\t\tcurOffset = curElem.offset();\r\n\t\tcurCSSTop = jQuery.css( elem, \"top\" );\r\n\t\tcurCSSLeft = jQuery.css( elem, \"left\" );\r\n\t\tcalculatePosition = ( position === \"absolute\" || position === \"fixed\" ) &&\r\n\t\t\t( curCSSTop + curCSSLeft ).indexOf( \"auto\" ) > -1;\r\n\r\n\t\t// Need to be able to calculate position if either\r\n\t\t// top or left is auto and position is either absolute or fixed\r\n\t\tif ( calculatePosition ) {\r\n\t\t\tcurPosition = curElem.position();\r\n\t\t\tcurTop = curPosition.top;\r\n\t\t\tcurLeft = curPosition.left;\r\n\r\n\t\t} else {\r\n\t\t\tcurTop = parseFloat( curCSSTop ) || 0;\r\n\t\t\tcurLeft = parseFloat( curCSSLeft ) || 0;\r\n\t\t}\r\n\r\n\t\tif ( isFunction( options ) ) {\r\n\r\n\t\t\t// Use jQuery.extend here to allow modification of coordinates argument (gh-1848)\r\n\t\t\toptions = options.call( elem, i, jQuery.extend( {}, curOffset ) );\r\n\t\t}\r\n\r\n\t\tif ( options.top != null ) {\r\n\t\t\tprops.top = ( options.top - curOffset.top ) + curTop;\r\n\t\t}\r\n\t\tif ( options.left != null ) {\r\n\t\t\tprops.left = ( options.left - curOffset.left ) + curLeft;\r\n\t\t}\r\n\r\n\t\tif ( \"using\" in options ) {\r\n\t\t\toptions.using.call( elem, props );\r\n\r\n\t\t} else {\r\n\t\t\tif ( typeof props.top === \"number\" ) {\r\n\t\t\t\tprops.top += \"px\";\r\n\t\t\t}\r\n\t\t\tif ( typeof props.left === \"number\" ) {\r\n\t\t\t\tprops.left += \"px\";\r\n\t\t\t}\r\n\t\t\tcurElem.css( props );\r\n\t\t}\r\n\t}\r\n};\r\n\r\njQuery.fn.extend( {\r\n\r\n\t// offset() relates an element's border box to the document origin\r\n\toffset: function( options ) {\r\n\r\n\t\t// Preserve chaining for setter\r\n\t\tif ( arguments.length ) {\r\n\t\t\treturn options === undefined ?\r\n\t\t\t\tthis :\r\n\t\t\t\tthis.each( function( i ) {\r\n\t\t\t\t\tjQuery.offset.setOffset( this, options, i );\r\n\t\t\t\t} );\r\n\t\t}\r\n\r\n\t\tvar rect, win,\r\n\t\t\telem = this[ 0 ];\r\n\r\n\t\tif ( !elem ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Return zeros for disconnected and hidden (display: none) elements (gh-2310)\r\n\t\t// Support: IE <=11 only\r\n\t\t// Running getBoundingClientRect on a\r\n\t\t// disconnected node in IE throws an error\r\n\t\tif ( !elem.getClientRects().length ) {\r\n\t\t\treturn { top: 0, left: 0 };\r\n\t\t}\r\n\r\n\t\t// Get document-relative position by adding viewport scroll to viewport-relative gBCR\r\n\t\trect = elem.getBoundingClientRect();\r\n\t\twin = elem.ownerDocument.defaultView;\r\n\t\treturn {\r\n\t\t\ttop: rect.top + win.pageYOffset,\r\n\t\t\tleft: rect.left + win.pageXOffset\r\n\t\t};\r\n\t},\r\n\r\n\t// position() relates an element's margin box to its offset parent's padding box\r\n\t// This corresponds to the behavior of CSS absolute positioning\r\n\tposition: function() {\r\n\t\tif ( !this[ 0 ] ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar offsetParent, offset, doc,\r\n\t\t\telem = this[ 0 ],\r\n\t\t\tparentOffset = { top: 0, left: 0 };\r\n\r\n\t\t// position:fixed elements are offset from the viewport, which itself always has zero offset\r\n\t\tif ( jQuery.css( elem, \"position\" ) === \"fixed\" ) {\r\n\r\n\t\t\t// Assume position:fixed implies availability of getBoundingClientRect\r\n\t\t\toffset = elem.getBoundingClientRect();\r\n\r\n\t\t} else {\r\n\t\t\toffset = this.offset();\r\n\r\n\t\t\t// Account for the *real* offset parent, which can be the document or its root element\r\n\t\t\t// when a statically positioned element is identified\r\n\t\t\tdoc = elem.ownerDocument;\r\n\t\t\toffsetParent = elem.offsetParent || doc.documentElement;\r\n\t\t\twhile ( offsetParent &&\r\n\t\t\t\t( offsetParent === doc.body || offsetParent === doc.documentElement ) &&\r\n\t\t\t\tjQuery.css( offsetParent, \"position\" ) === \"static\" ) {\r\n\r\n\t\t\t\toffsetParent = offsetParent.parentNode;\r\n\t\t\t}\r\n\t\t\tif ( offsetParent && offsetParent !== elem && offsetParent.nodeType === 1 ) {\r\n\r\n\t\t\t\t// Incorporate borders into its offset, since they are outside its content origin\r\n\t\t\t\tparentOffset = jQuery( offsetParent ).offset();\r\n\t\t\t\tparentOffset.top += jQuery.css( offsetParent, \"borderTopWidth\", true );\r\n\t\t\t\tparentOffset.left += jQuery.css( offsetParent, \"borderLeftWidth\", true );\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Subtract parent offsets and element margins\r\n\t\treturn {\r\n\t\t\ttop: offset.top - parentOffset.top - jQuery.css( elem, \"marginTop\", true ),\r\n\t\t\tleft: offset.left - parentOffset.left - jQuery.css( elem, \"marginLeft\", true )\r\n\t\t};\r\n\t},\r\n\r\n\t// This method will return documentElement in the following cases:\r\n\t// 1) For the element inside the iframe without offsetParent, this method will return\r\n\t//    documentElement of the parent window\r\n\t// 2) For the hidden or detached element\r\n\t// 3) For body or html element, i.e. in case of the html node - it will return itself\r\n\t//\r\n\t// but those exceptions were never presented as a real life use-cases\r\n\t// and might be considered as more preferable results.\r\n\t//\r\n\t// This logic, however, is not guaranteed and can change at any point in the future\r\n\toffsetParent: function() {\r\n\t\treturn this.map( function() {\r\n\t\t\tvar offsetParent = this.offsetParent;\r\n\r\n\t\t\twhile ( offsetParent && jQuery.css( offsetParent, \"position\" ) === \"static\" ) {\r\n\t\t\t\toffsetParent = offsetParent.offsetParent;\r\n\t\t\t}\r\n\r\n\t\t\treturn offsetParent || documentElement;\r\n\t\t} );\r\n\t}\r\n} );\r\n\r\n// Create scrollLeft and scrollTop methods\r\njQuery.each( { scrollLeft: \"pageXOffset\", scrollTop: \"pageYOffset\" }, function( method, prop ) {\r\n\tvar top = \"pageYOffset\" === prop;\r\n\r\n\tjQuery.fn[ method ] = function( val ) {\r\n\t\treturn access( this, function( elem, method, val ) {\r\n\r\n\t\t\t// Coalesce documents and windows\r\n\t\t\tvar win;\r\n\t\t\tif ( isWindow( elem ) ) {\r\n\t\t\t\twin = elem;\r\n\t\t\t} else if ( elem.nodeType === 9 ) {\r\n\t\t\t\twin = elem.defaultView;\r\n\t\t\t}\r\n\r\n\t\t\tif ( val === undefined ) {\r\n\t\t\t\treturn win ? win[ prop ] : elem[ method ];\r\n\t\t\t}\r\n\r\n\t\t\tif ( win ) {\r\n\t\t\t\twin.scrollTo(\r\n\t\t\t\t\t!top ? val : win.pageXOffset,\r\n\t\t\t\t\ttop ? val : win.pageYOffset\r\n\t\t\t\t);\r\n\r\n\t\t\t} else {\r\n\t\t\t\telem[ method ] = val;\r\n\t\t\t}\r\n\t\t}, method, val, arguments.length );\r\n\t};\r\n} );\r\n\r\n// Support: Safari <=7 - 9.1, Chrome <=37 - 49\r\n// Add the top/left cssHooks using jQuery.fn.position\r\n// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084\r\n// Blink bug: https://bugs.chromium.org/p/chromium/issues/detail?id=589347\r\n// getComputedStyle returns percent when specified for top/left/bottom/right;\r\n// rather than make the css module depend on the offset module, just check for it here\r\njQuery.each( [ \"top\", \"left\" ], function( _i, prop ) {\r\n\tjQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition,\r\n\t\tfunction( elem, computed ) {\r\n\t\t\tif ( computed ) {\r\n\t\t\t\tcomputed = curCSS( elem, prop );\r\n\r\n\t\t\t\t// If curCSS returns percentage, fallback to offset\r\n\t\t\t\treturn rnumnonpx.test( computed ) ?\r\n\t\t\t\t\tjQuery( elem ).position()[ prop ] + \"px\" :\r\n\t\t\t\t\tcomputed;\r\n\t\t\t}\r\n\t\t}\r\n\t);\r\n} );\r\n\r\n\r\n// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods\r\njQuery.each( { Height: \"height\", Width: \"width\" }, function( name, type ) {\r\n\tjQuery.each( { padding: \"inner\" + name, content: type, \"\": \"outer\" + name },\r\n\t\tfunction( defaultExtra, funcName ) {\r\n\r\n\t\t// Margin is only for outerHeight, outerWidth\r\n\t\tjQuery.fn[ funcName ] = function( margin, value ) {\r\n\t\t\tvar chainable = arguments.length && ( defaultExtra || typeof margin !== \"boolean\" ),\r\n\t\t\t\textra = defaultExtra || ( margin === true || value === true ? \"margin\" : \"border\" );\r\n\r\n\t\t\treturn access( this, function( elem, type, value ) {\r\n\t\t\t\tvar doc;\r\n\r\n\t\t\t\tif ( isWindow( elem ) ) {\r\n\r\n\t\t\t\t\t// $( window ).outerWidth/Height return w/h including scrollbars (gh-1729)\r\n\t\t\t\t\treturn funcName.indexOf( \"outer\" ) === 0 ?\r\n\t\t\t\t\t\telem[ \"inner\" + name ] :\r\n\t\t\t\t\t\telem.document.documentElement[ \"client\" + name ];\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Get document width or height\r\n\t\t\t\tif ( elem.nodeType === 9 ) {\r\n\t\t\t\t\tdoc = elem.documentElement;\r\n\r\n\t\t\t\t\t// Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height],\r\n\t\t\t\t\t// whichever is greatest\r\n\t\t\t\t\treturn Math.max(\r\n\t\t\t\t\t\telem.body[ \"scroll\" + name ], doc[ \"scroll\" + name ],\r\n\t\t\t\t\t\telem.body[ \"offset\" + name ], doc[ \"offset\" + name ],\r\n\t\t\t\t\t\tdoc[ \"client\" + name ]\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn value === undefined ?\r\n\r\n\t\t\t\t\t// Get width or height on the element, requesting but not forcing parseFloat\r\n\t\t\t\t\tjQuery.css( elem, type, extra ) :\r\n\r\n\t\t\t\t\t// Set width or height on the element\r\n\t\t\t\t\tjQuery.style( elem, type, value, extra );\r\n\t\t\t}, type, chainable ? margin : undefined, chainable );\r\n\t\t};\r\n\t} );\r\n} );\r\n\r\n\r\njQuery.each( [\r\n\t\"ajaxStart\",\r\n\t\"ajaxStop\",\r\n\t\"ajaxComplete\",\r\n\t\"ajaxError\",\r\n\t\"ajaxSuccess\",\r\n\t\"ajaxSend\"\r\n], function( _i, type ) {\r\n\tjQuery.fn[ type ] = function( fn ) {\r\n\t\treturn this.on( type, fn );\r\n\t};\r\n} );\r\n\r\n\r\n\r\n\r\njQuery.fn.extend( {\r\n\r\n\tbind: function( types, data, fn ) {\r\n\t\treturn this.on( types, null, data, fn );\r\n\t},\r\n\tunbind: function( types, fn ) {\r\n\t\treturn this.off( types, null, fn );\r\n\t},\r\n\r\n\tdelegate: function( selector, types, data, fn ) {\r\n\t\treturn this.on( types, selector, data, fn );\r\n\t},\r\n\tundelegate: function( selector, types, fn ) {\r\n\r\n\t\t// ( namespace ) or ( selector, types [, fn] )\r\n\t\treturn arguments.length === 1 ?\r\n\t\t\tthis.off( selector, \"**\" ) :\r\n\t\t\tthis.off( types, selector || \"**\", fn );\r\n\t},\r\n\r\n\thover: function( fnOver, fnOut ) {\r\n\t\treturn this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );\r\n\t}\r\n} );\r\n\r\njQuery.each( ( \"blur focus focusin focusout resize scroll click dblclick \" +\r\n\t\"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave \" +\r\n\t\"change select submit keydown keypress keyup contextmenu\" ).split( \" \" ),\r\n\tfunction( _i, name ) {\r\n\r\n\t\t// Handle event binding\r\n\t\tjQuery.fn[ name ] = function( data, fn ) {\r\n\t\t\treturn arguments.length > 0 ?\r\n\t\t\t\tthis.on( name, null, data, fn ) :\r\n\t\t\t\tthis.trigger( name );\r\n\t\t};\r\n\t} );\r\n\r\n\r\n\r\n\r\n// Support: Android <=4.0 only\r\n// Make sure we trim BOM and NBSP\r\nvar rtrim = /^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g;\r\n\r\n// Bind a function to a context, optionally partially applying any\r\n// arguments.\r\n// jQuery.proxy is deprecated to promote standards (specifically Function#bind)\r\n// However, it is not slated for removal any time soon\r\njQuery.proxy = function( fn, context ) {\r\n\tvar tmp, args, proxy;\r\n\r\n\tif ( typeof context === \"string\" ) {\r\n\t\ttmp = fn[ context ];\r\n\t\tcontext = fn;\r\n\t\tfn = tmp;\r\n\t}\r\n\r\n\t// Quick check to determine if target is callable, in the spec\r\n\t// this throws a TypeError, but we will just return undefined.\r\n\tif ( !isFunction( fn ) ) {\r\n\t\treturn undefined;\r\n\t}\r\n\r\n\t// Simulated bind\r\n\targs = slice.call( arguments, 2 );\r\n\tproxy = function() {\r\n\t\treturn fn.apply( context || this, args.concat( slice.call( arguments ) ) );\r\n\t};\r\n\r\n\t// Set the guid of unique handler to the same of original handler, so it can be removed\r\n\tproxy.guid = fn.guid = fn.guid || jQuery.guid++;\r\n\r\n\treturn proxy;\r\n};\r\n\r\njQuery.holdReady = function( hold ) {\r\n\tif ( hold ) {\r\n\t\tjQuery.readyWait++;\r\n\t} else {\r\n\t\tjQuery.ready( true );\r\n\t}\r\n};\r\njQuery.isArray = Array.isArray;\r\njQuery.parseJSON = JSON.parse;\r\njQuery.nodeName = nodeName;\r\njQuery.isFunction = isFunction;\r\njQuery.isWindow = isWindow;\r\njQuery.camelCase = camelCase;\r\njQuery.type = toType;\r\n\r\njQuery.now = Date.now;\r\n\r\njQuery.isNumeric = function( obj ) {\r\n\r\n\t// As of jQuery 3.0, isNumeric is limited to\r\n\t// strings and numbers (primitives or objects)\r\n\t// that can be coerced to finite numbers (gh-2662)\r\n\tvar type = jQuery.type( obj );\r\n\treturn ( type === \"number\" || type === \"string\" ) &&\r\n\r\n\t\t// parseFloat NaNs numeric-cast false positives (\"\")\r\n\t\t// ...but misinterprets leading-number strings, particularly hex literals (\"0x...\")\r\n\t\t// subtraction forces infinities to NaN\r\n\t\t!isNaN( obj - parseFloat( obj ) );\r\n};\r\n\r\njQuery.trim = function( text ) {\r\n\treturn text == null ?\r\n\t\t\"\" :\r\n\t\t( text + \"\" ).replace( rtrim, \"\" );\r\n};\r\n\r\n\r\n\r\n// Register as a named AMD module, since jQuery can be concatenated with other\r\n// files that may use define, but not via a proper concatenation script that\r\n// understands anonymous AMD modules. A named AMD is safest and most robust\r\n// way to register. Lowercase jquery is used because AMD module names are\r\n// derived from file names, and jQuery is normally delivered in a lowercase\r\n// file name. Do this after creating the global so that if an AMD module wants\r\n// to call noConflict to hide this version of jQuery, it will work.\r\n\r\n// Note that for maximum portability, libraries that are not jQuery should\r\n// declare themselves as anonymous modules, and avoid setting a global if an\r\n// AMD loader is present. jQuery is a special case. For more information, see\r\n// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon\r\n\r\nif ( typeof define === \"function\" && define.amd ) {\r\n\tdefine( \"jquery\", [], function() {\r\n\t\treturn jQuery;\r\n\t} );\r\n}\r\n\r\n\r\n\r\n\r\nvar\r\n\r\n\t// Map over jQuery in case of overwrite\r\n\t_jQuery = window.jQuery,\r\n\r\n\t// Map over the $ in case of overwrite\r\n\t_$ = window.$;\r\n\r\njQuery.noConflict = function( deep ) {\r\n\tif ( window.$ === jQuery ) {\r\n\t\twindow.$ = _$;\r\n\t}\r\n\r\n\tif ( deep && window.jQuery === jQuery ) {\r\n\t\twindow.jQuery = _jQuery;\r\n\t}\r\n\r\n\treturn jQuery;\r\n};\r\n\r\n// Expose jQuery and $ identifiers, even in AMD\r\n// (#7102#comment:10, https://github.com/jquery/jquery/pull/557)\r\n// and CommonJS for browser emulators (#13566)\r\nif ( typeof noGlobal === \"undefined\" ) {\r\n\twindow.jQuery = window.$ = jQuery;\r\n}\r\n\r\n\r\n\r\n\r\nreturn jQuery;\r\n} );\r\n\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('jqueryNoConflict',[\"jquery\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\")) :\r\n    console && console.error('jquery.noconflict does not support non-amd script loading.');\r\n}(this/* window */, function($) {\r\n    \"use strict\";\r\n    return $.noConflict();\r\n}));\r\n\n",
    "/*!\r\n * @fileOverview TouchSwipe - jQuery Plugin\r\n * @version 1.6.18\r\n *\r\n * @author Matt Bryson http://www.github.com/mattbryson\r\n * @see https://github.com/mattbryson/TouchSwipe-Jquery-Plugin\r\n * @see http://labs.rampinteractive.co.uk/touchSwipe/\r\n * @see http://plugins.jquery.com/project/touchSwipe\r\n * @license\r\n * Copyright (c) 2010-2015 Matt Bryson\r\n * Dual licensed under the MIT or GPL Version 2 licenses.\r\n *\r\n */\r\n(function(factory) {\r\n  if (typeof define === 'function' && define.amd && define.amd.jQuery) {\r\n    // AMD. Register as anonymous module.\r\n    define('jqueryTouchSwipe',['jquery'], factory);\r\n  } else if (typeof module !== 'undefined' && module.exports) {\r\n    // CommonJS Module\r\n    factory(require(\"jquery\"));\r\n  } else {\r\n    // Browser globals.\r\n    factory(jQuery);\r\n  }\r\n}(function($) {\r\n  \"use strict\";\r\n\r\n  //Constants\r\n  var VERSION = \"1.6.18\",\r\n    LEFT = \"left\",\r\n    RIGHT = \"right\",\r\n    UP = \"up\",\r\n    DOWN = \"down\",\r\n    IN = \"in\",\r\n    OUT = \"out\",\r\n\r\n    NONE = \"none\",\r\n    AUTO = \"auto\",\r\n\r\n    SWIPE = \"swipe\",\r\n    PINCH = \"pinch\",\r\n    TAP = \"tap\",\r\n    DOUBLE_TAP = \"doubletap\",\r\n    LONG_TAP = \"longtap\",\r\n    HOLD = \"hold\",\r\n\r\n    HORIZONTAL = \"horizontal\",\r\n    VERTICAL = \"vertical\",\r\n\r\n    ALL_FINGERS = \"all\",\r\n\r\n    DOUBLE_TAP_THRESHOLD = 10,\r\n\r\n    PHASE_START = \"start\",\r\n    PHASE_MOVE = \"move\",\r\n    PHASE_END = \"end\",\r\n    PHASE_CANCEL = \"cancel\",\r\n\r\n    SUPPORTS_TOUCH = 'ontouchstart' in window,\r\n\r\n    SUPPORTS_POINTER_IE10 = window.navigator.msPointerEnabled && !window.navigator.pointerEnabled && !SUPPORTS_TOUCH,\r\n\r\n    SUPPORTS_POINTER = (window.navigator.pointerEnabled || window.navigator.msPointerEnabled) && !SUPPORTS_TOUCH,\r\n\r\n    PLUGIN_NS = 'TouchSwipe';\r\n\r\n\r\n\r\n  /**\r\n  * The default configuration, and available options to configure touch swipe with.\r\n  * You can set the default values by updating any of the properties prior to instantiation.\r\n  * @name $.fn.swipe.defaults\r\n  * @namespace\r\n  * @property {int} [fingers=1] The number of fingers to detect in a swipe. Any swipes that do not meet this requirement will NOT trigger swipe handlers.\r\n  * @property {int} [threshold=75] The number of pixels that the user must move their finger by before it is considered a swipe.\r\n  * @property {int} [cancelThreshold=null] The number of pixels that the user must move their finger back from the original swipe direction to cancel the gesture.\r\n  * @property {int} [pinchThreshold=20] The number of pixels that the user must pinch their finger by before it is considered a pinch.\r\n  * @property {int} [maxTimeThreshold=null] Time, in milliseconds, between touchStart and touchEnd must NOT exceed in order to be considered a swipe.\r\n  * @property {int} [fingerReleaseThreshold=250] Time in milliseconds between releasing multiple fingers.  If 2 fingers are down, and are released one after the other, if they are within this threshold, it counts as a simultaneous release.\r\n  * @property {int} [longTapThreshold=500] Time in milliseconds between tap and release for a long tap\r\n  * @property {int} [doubleTapThreshold=200] Time in milliseconds between 2 taps to count as a double tap\r\n  * @property {function} [swipe=null] A handler to catch all swipes. See {@link $.fn.swipe#event:swipe}\r\n  * @property {function} [swipeLeft=null] A handler that is triggered for \"left\" swipes. See {@link $.fn.swipe#event:swipeLeft}\r\n  * @property {function} [swipeRight=null] A handler that is triggered for \"right\" swipes. See {@link $.fn.swipe#event:swipeRight}\r\n  * @property {function} [swipeUp=null] A handler that is triggered for \"up\" swipes. See {@link $.fn.swipe#event:swipeUp}\r\n  * @property {function} [swipeDown=null] A handler that is triggered for \"down\" swipes. See {@link $.fn.swipe#event:swipeDown}\r\n  * @property {function} [swipeStatus=null] A handler triggered for every phase of the swipe. See {@link $.fn.swipe#event:swipeStatus}\r\n  * @property {function} [pinchIn=null] A handler triggered for pinch in events. See {@link $.fn.swipe#event:pinchIn}\r\n  * @property {function} [pinchOut=null] A handler triggered for pinch out events. See {@link $.fn.swipe#event:pinchOut}\r\n  * @property {function} [pinchStatus=null] A handler triggered for every phase of a pinch. See {@link $.fn.swipe#event:pinchStatus}\r\n  * @property {function} [tap=null] A handler triggered when a user just taps on the item, rather than swipes it. If they do not move, tap is triggered, if they do move, it is not.\r\n  * @property {function} [doubleTap=null] A handler triggered when a user double taps on the item. The delay between taps can be set with the doubleTapThreshold property. See {@link $.fn.swipe.defaults#doubleTapThreshold}\r\n  * @property {function} [longTap=null] A handler triggered when a user long taps on the item. The delay between start and end can be set with the longTapThreshold property. See {@link $.fn.swipe.defaults#longTapThreshold}\r\n  * @property (function) [hold=null] A handler triggered when a user reaches longTapThreshold on the item. See {@link $.fn.swipe.defaults#longTapThreshold}\r\n  * @property {boolean} [triggerOnTouchEnd=true] If true, the swipe events are triggered when the touch end event is received (user releases finger).  If false, it will be triggered on reaching the threshold, and then cancel the touch event automatically.\r\n  * @property {boolean} [triggerOnTouchLeave=false] If true, then when the user leaves the swipe object, the swipe will end and trigger appropriate handlers.\r\n  * @property {string|undefined} [allowPageScroll='auto'] How the browser handles page scrolls when the user is swiping on a touchSwipe object. See {@link $.fn.swipe.pageScroll}.  <br/><br/>\r\n  \t\t\t\t\t\t\t\t\t<code>\"auto\"</code> : all undefined swipes will cause the page to scroll in that direction. <br/>\r\n  \t\t\t\t\t\t\t\t\t<code>\"none\"</code> : the page will not scroll when user swipes. <br/>\r\n  \t\t\t\t\t\t\t\t\t<code>\"horizontal\"</code> : will force page to scroll on horizontal swipes. <br/>\r\n  \t\t\t\t\t\t\t\t\t<code>\"vertical\"</code> : will force page to scroll on vertical swipes. <br/>\r\n  * @property {boolean} [fallbackToMouseEvents=true] If true mouse events are used when run on a non touch device, false will stop swipes being triggered by mouse events on non touch devices.\r\n  * @property {string} [excludedElements=\".noSwipe\"] A jquery selector that specifies child elements that do NOT trigger swipes. By default this excludes elements with the class .noSwipe .\r\n  * @property {boolean} [preventDefaultEvents=true] by default default events are cancelled, so the page doesn't move.  You can disable this so both native events fire as well as your handlers.\r\n\r\n  */\r\n  var defaults = {\r\n    fingers: 1,\r\n    threshold: 75,\r\n    cancelThreshold: null,\r\n    pinchThreshold: 20,\r\n    maxTimeThreshold: null,\r\n    fingerReleaseThreshold: 250,\r\n    longTapThreshold: 500,\r\n    doubleTapThreshold: 200,\r\n    swipe: null,\r\n    swipeLeft: null,\r\n    swipeRight: null,\r\n    swipeUp: null,\r\n    swipeDown: null,\r\n    swipeStatus: null,\r\n    pinchIn: null,\r\n    pinchOut: null,\r\n    pinchStatus: null,\r\n    click: null, //Deprecated since 1.6.2\r\n    tap: null,\r\n    doubleTap: null,\r\n    longTap: null,\r\n    hold: null,\r\n    triggerOnTouchEnd: true,\r\n    triggerOnTouchLeave: false,\r\n    allowPageScroll: \"auto\",\r\n    fallbackToMouseEvents: true,\r\n    excludedElements: \".noSwipe\",\r\n    preventDefaultEvents: true\r\n  };\r\n\r\n\r\n\r\n  /**\r\n   * Applies TouchSwipe behaviour to one or more jQuery objects.\r\n   * The TouchSwipe plugin can be instantiated via this method, or methods within\r\n   * TouchSwipe can be executed via this method as per jQuery plugin architecture.\r\n   * An existing plugin can have its options changed simply by re calling .swipe(options)\r\n   * @see TouchSwipe\r\n   * @class\r\n   * @param {Mixed} method If the current DOMNode is a TouchSwipe object, and <code>method</code> is a TouchSwipe method, then\r\n   * the <code>method</code> is executed, and any following arguments are passed to the TouchSwipe method.\r\n   * If <code>method</code> is an object, then the TouchSwipe class is instantiated on the current DOMNode, passing the\r\n   * configuration properties defined in the object. See TouchSwipe\r\n   *\r\n   */\r\n  $.fn.swipe = function(method) {\r\n    var $this = $(this),\r\n      plugin = $this.data(PLUGIN_NS);\r\n\r\n    //Check if we are already instantiated and trying to execute a method\r\n    if (plugin && typeof method === 'string') {\r\n      if (plugin[method]) {\r\n        return plugin[method].apply(plugin, Array.prototype.slice.call(arguments, 1));\r\n      } else {\r\n        $.error('Method ' + method + ' does not exist on jQuery.swipe');\r\n      }\r\n    }\r\n\r\n    //Else update existing plugin with new options hash\r\n    else if (plugin && typeof method === 'object') {\r\n      plugin['option'].apply(plugin, arguments);\r\n    }\r\n\r\n    //Else not instantiated and trying to pass init object (or nothing)\r\n    else if (!plugin && (typeof method === 'object' || !method)) {\r\n      return init.apply(this, arguments);\r\n    }\r\n\r\n    return $this;\r\n  };\r\n\r\n  /**\r\n   * The version of the plugin\r\n   * @readonly\r\n   */\r\n  $.fn.swipe.version = VERSION;\r\n\r\n\r\n\r\n  //Expose our defaults so a user could override the plugin defaults\r\n  $.fn.swipe.defaults = defaults;\r\n\r\n  /**\r\n   * The phases that a touch event goes through.  The <code>phase</code> is passed to the event handlers.\r\n   * These properties are read only, attempting to change them will not alter the values passed to the event handlers.\r\n   * @namespace\r\n   * @readonly\r\n   * @property {string} PHASE_START Constant indicating the start phase of the touch event. Value is <code>\"start\"</code>.\r\n   * @property {string} PHASE_MOVE Constant indicating the move phase of the touch event. Value is <code>\"move\"</code>.\r\n   * @property {string} PHASE_END Constant indicating the end phase of the touch event. Value is <code>\"end\"</code>.\r\n   * @property {string} PHASE_CANCEL Constant indicating the cancel phase of the touch event. Value is <code>\"cancel\"</code>.\r\n   */\r\n  $.fn.swipe.phases = {\r\n    PHASE_START: PHASE_START,\r\n    PHASE_MOVE: PHASE_MOVE,\r\n    PHASE_END: PHASE_END,\r\n    PHASE_CANCEL: PHASE_CANCEL\r\n  };\r\n\r\n  /**\r\n   * The direction constants that are passed to the event handlers.\r\n   * These properties are read only, attempting to change them will not alter the values passed to the event handlers.\r\n   * @namespace\r\n   * @readonly\r\n   * @property {string} LEFT Constant indicating the left direction. Value is <code>\"left\"</code>.\r\n   * @property {string} RIGHT Constant indicating the right direction. Value is <code>\"right\"</code>.\r\n   * @property {string} UP Constant indicating the up direction. Value is <code>\"up\"</code>.\r\n   * @property {string} DOWN Constant indicating the down direction. Value is <code>\"cancel\"</code>.\r\n   * @property {string} IN Constant indicating the in direction. Value is <code>\"in\"</code>.\r\n   * @property {string} OUT Constant indicating the out direction. Value is <code>\"out\"</code>.\r\n   */\r\n  $.fn.swipe.directions = {\r\n    LEFT: LEFT,\r\n    RIGHT: RIGHT,\r\n    UP: UP,\r\n    DOWN: DOWN,\r\n    IN: IN,\r\n    OUT: OUT\r\n  };\r\n\r\n  /**\r\n   * The page scroll constants that can be used to set the value of <code>allowPageScroll</code> option\r\n   * These properties are read only\r\n   * @namespace\r\n   * @readonly\r\n   * @see $.fn.swipe.defaults#allowPageScroll\r\n   * @property {string} NONE Constant indicating no page scrolling is allowed. Value is <code>\"none\"</code>.\r\n   * @property {string} HORIZONTAL Constant indicating horizontal page scrolling is allowed. Value is <code>\"horizontal\"</code>.\r\n   * @property {string} VERTICAL Constant indicating vertical page scrolling is allowed. Value is <code>\"vertical\"</code>.\r\n   * @property {string} AUTO Constant indicating either horizontal or vertical will be allowed, depending on the swipe handlers registered. Value is <code>\"auto\"</code>.\r\n   */\r\n  $.fn.swipe.pageScroll = {\r\n    NONE: NONE,\r\n    HORIZONTAL: HORIZONTAL,\r\n    VERTICAL: VERTICAL,\r\n    AUTO: AUTO\r\n  };\r\n\r\n  /**\r\n   * Constants representing the number of fingers used in a swipe.  These are used to set both the value of <code>fingers</code> in the\r\n   * options object, as well as the value of the <code>fingers</code> event property.\r\n   * These properties are read only, attempting to change them will not alter the values passed to the event handlers.\r\n   * @namespace\r\n   * @readonly\r\n   * @see $.fn.swipe.defaults#fingers\r\n   * @property {string} ONE Constant indicating 1 finger is to be detected / was detected. Value is <code>1</code>.\r\n   * @property {string} TWO Constant indicating 2 fingers are to be detected / were detected. Value is <code>2</code>.\r\n   * @property {string} THREE Constant indicating 3 finger are to be detected / were detected. Value is <code>3</code>.\r\n   * @property {string} FOUR Constant indicating 4 finger are to be detected / were detected. Not all devices support this. Value is <code>4</code>.\r\n   * @property {string} FIVE Constant indicating 5 finger are to be detected / were detected. Not all devices support this. Value is <code>5</code>.\r\n   * @property {string} ALL Constant indicating any combination of finger are to be detected.  Value is <code>\"all\"</code>.\r\n   */\r\n  $.fn.swipe.fingers = {\r\n    ONE: 1,\r\n    TWO: 2,\r\n    THREE: 3,\r\n    FOUR: 4,\r\n    FIVE: 5,\r\n    ALL: ALL_FINGERS\r\n  };\r\n\r\n  /**\r\n   * Initialise the plugin for each DOM element matched\r\n   * This creates a new instance of the main TouchSwipe class for each DOM element, and then\r\n   * saves a reference to that instance in the elements data property.\r\n   * @internal\r\n   */\r\n  function init(options) {\r\n    //Prep and extend the options\r\n    if (options && (options.allowPageScroll === undefined && (options.swipe !== undefined || options.swipeStatus !== undefined))) {\r\n      options.allowPageScroll = NONE;\r\n    }\r\n\r\n    //Check for deprecated options\r\n    //Ensure that any old click handlers are assigned to the new tap, unless we have a tap\r\n    if (options.click !== undefined && options.tap === undefined) {\r\n      options.tap = options.click;\r\n    }\r\n\r\n    if (!options) {\r\n      options = {};\r\n    }\r\n\r\n    //pass empty object so we dont modify the defaults\r\n    options = $.extend({}, $.fn.swipe.defaults, options);\r\n\r\n    //For each element instantiate the plugin\r\n    return this.each(function() {\r\n      var $this = $(this);\r\n\r\n      //Check we havent already initialised the plugin\r\n      var plugin = $this.data(PLUGIN_NS);\r\n\r\n      if (!plugin) {\r\n        plugin = new TouchSwipe(this, options);\r\n        $this.data(PLUGIN_NS, plugin);\r\n      }\r\n    });\r\n  }\r\n\r\n  /**\r\n   * Main TouchSwipe Plugin Class.\r\n   * Do not use this to construct your TouchSwipe object, use the jQuery plugin method $.fn.swipe(); {@link $.fn.swipe}\r\n   * @private\r\n   * @name TouchSwipe\r\n   * @param {DOMNode} element The HTML DOM object to apply to plugin to\r\n   * @param {Object} options The options to configure the plugin with.  @link {$.fn.swipe.defaults}\r\n   * @see $.fh.swipe.defaults\r\n   * @see $.fh.swipe\r\n   * @class\r\n   */\r\n  function TouchSwipe(element, options) {\r\n\r\n    //take a local/instacne level copy of the options - should make it this.options really...\r\n    var options = $.extend({}, options);\r\n\r\n    var useTouchEvents = (SUPPORTS_TOUCH || SUPPORTS_POINTER || !options.fallbackToMouseEvents),\r\n      START_EV = useTouchEvents ? (SUPPORTS_POINTER ? (SUPPORTS_POINTER_IE10 ? 'MSPointerDown' : 'pointerdown') : 'touchstart') : 'mousedown',\r\n      MOVE_EV = useTouchEvents ? (SUPPORTS_POINTER ? (SUPPORTS_POINTER_IE10 ? 'MSPointerMove' : 'pointermove') : 'touchmove') : 'mousemove',\r\n      END_EV = useTouchEvents ? (SUPPORTS_POINTER ? (SUPPORTS_POINTER_IE10 ? 'MSPointerUp' : 'pointerup') : 'touchend') : 'mouseup',\r\n      LEAVE_EV = useTouchEvents ? (SUPPORTS_POINTER ? 'mouseleave' : null) : 'mouseleave', //we manually detect leave on touch devices, so null event here\r\n      CANCEL_EV = (SUPPORTS_POINTER ? (SUPPORTS_POINTER_IE10 ? 'MSPointerCancel' : 'pointercancel') : 'touchcancel');\r\n\r\n\r\n\r\n    //touch properties\r\n    var distance = 0,\r\n      direction = null,\r\n      currentDirection = null,\r\n      duration = 0,\r\n      startTouchesDistance = 0,\r\n      endTouchesDistance = 0,\r\n      pinchZoom = 1,\r\n      pinchDistance = 0,\r\n      pinchDirection = 0,\r\n      maximumsMap = null;\r\n\r\n\r\n\r\n    //jQuery wrapped element for this instance\r\n    var $element = $(element);\r\n\r\n    //Current phase of th touch cycle\r\n    var phase = \"start\";\r\n\r\n    // the current number of fingers being used.\r\n    var fingerCount = 0;\r\n\r\n    //track mouse points / delta\r\n    var fingerData = {};\r\n\r\n    //track times\r\n    var startTime = 0,\r\n      endTime = 0,\r\n      previousTouchEndTime = 0,\r\n      fingerCountAtRelease = 0,\r\n      doubleTapStartTime = 0;\r\n\r\n    //Timeouts\r\n    var singleTapTimeout = null,\r\n      holdTimeout = null;\r\n\r\n    // Add gestures to all swipable areas if supported\r\n    try {\r\n      $element.bind(START_EV, touchStart);\r\n      $element.bind(CANCEL_EV, touchCancel);\r\n    } catch (e) {\r\n      $.error('events not supported ' + START_EV + ',' + CANCEL_EV + ' on jQuery.swipe');\r\n    }\r\n\r\n    //\r\n    //Public methods\r\n    //\r\n\r\n    /**\r\n     * re-enables the swipe plugin with the previous configuration\r\n     * @function\r\n     * @name $.fn.swipe#enable\r\n     * @return {DOMNode} The Dom element that was registered with TouchSwipe\r\n     * @example $(\"#element\").swipe(\"enable\");\r\n     */\r\n    this.enable = function() {\r\n      //Incase we are already enabled, clean up...\r\n      this.disable();\r\n      $element.bind(START_EV, touchStart);\r\n      $element.bind(CANCEL_EV, touchCancel);\r\n      return $element;\r\n    };\r\n\r\n    /**\r\n     * disables the swipe plugin\r\n     * @function\r\n     * @name $.fn.swipe#disable\r\n     * @return {DOMNode} The Dom element that is now registered with TouchSwipe\r\n     * @example $(\"#element\").swipe(\"disable\");\r\n     */\r\n    this.disable = function() {\r\n      removeListeners();\r\n      return $element;\r\n    };\r\n\r\n    /**\r\n     * Destroy the swipe plugin completely. To use any swipe methods, you must re initialise the plugin.\r\n     * @function\r\n     * @name $.fn.swipe#destroy\r\n     * @example $(\"#element\").swipe(\"destroy\");\r\n     */\r\n    this.destroy = function() {\r\n      removeListeners();\r\n      $element.data(PLUGIN_NS, null);\r\n      $element = null;\r\n    };\r\n\r\n\r\n    /**\r\n     * Allows run time updating of the swipe configuration options.\r\n     * @function\r\n     * @name $.fn.swipe#option\r\n     * @param {String} property The option property to get or set, or a has of multiple options to set\r\n     * @param {Object} [value] The value to set the property to\r\n     * @return {Object} If only a property name is passed, then that property value is returned. If nothing is passed the current options hash is returned.\r\n     * @example $(\"#element\").swipe(\"option\", \"threshold\"); // return the threshold\r\n     * @example $(\"#element\").swipe(\"option\", \"threshold\", 100); // set the threshold after init\r\n     * @example $(\"#element\").swipe(\"option\", {threshold:100, fingers:3} ); // set multiple properties after init\r\n     * @example $(\"#element\").swipe({threshold:100, fingers:3} ); // set multiple properties after init - the \"option\" method is optional!\r\n     * @example $(\"#element\").swipe(\"option\"); // Return the current options hash\r\n     * @see $.fn.swipe.defaults\r\n     *\r\n     */\r\n    this.option = function(property, value) {\r\n\r\n      if (typeof property === 'object') {\r\n        options = $.extend(options, property);\r\n      } else if (options[property] !== undefined) {\r\n        if (value === undefined) {\r\n          return options[property];\r\n        } else {\r\n          options[property] = value;\r\n        }\r\n      } else if (!property) {\r\n        return options;\r\n      } else {\r\n        $.error('Option ' + property + ' does not exist on jQuery.swipe.options');\r\n      }\r\n\r\n      return null;\r\n    }\r\n\r\n\r\n\r\n    //\r\n    // Private methods\r\n    //\r\n\r\n    //\r\n    // EVENTS\r\n    //\r\n    /**\r\n     * Event handler for a touch start event.\r\n     * Stops the default click event from triggering and stores where we touched\r\n     * @inner\r\n     * @param {object} jqEvent The normalised jQuery event object.\r\n     */\r\n    function touchStart(jqEvent) {\r\n\r\n      //If we already in a touch event (a finger already in use) then ignore subsequent ones..\r\n      if (getTouchInProgress()) {\r\n        return;\r\n      }\r\n\r\n      //Check if this element matches any in the excluded elements selectors,  or its parent is excluded, if so, DON'T swipe\r\n      if ($(jqEvent.target).closest(options.excludedElements, $element).length > 0) {\r\n        return;\r\n      }\r\n\r\n      //As we use Jquery bind for events, we need to target the original event object\r\n      //If these events are being programmatically triggered, we don't have an original event object, so use the Jq one.\r\n      var event = jqEvent.originalEvent ? jqEvent.originalEvent : jqEvent;\r\n\r\n\r\n      //If we have a pointer event, whoes type is 'mouse' and we have said NO mouse events, then dont do anything.\r\n      if(event.pointerType && event.pointerType==\"mouse\" && options.fallbackToMouseEvents==false) {\r\n        return;\r\n      };\r\n\r\n      var ret,\r\n        touches = event.touches,\r\n        evt = touches ? touches[0] : event;\r\n\r\n      phase = PHASE_START;\r\n\r\n      //If we support touches, get the finger count\r\n      if (touches) {\r\n        // get the total number of fingers touching the screen\r\n        fingerCount = touches.length;\r\n      }\r\n      //Else this is the desktop, so stop the browser from dragging content\r\n      else if (options.preventDefaultEvents !== false) {\r\n        jqEvent.preventDefault(); //call this on jq event so we are cross browser\r\n      }\r\n\r\n      //clear vars..\r\n      distance = 0;\r\n      direction = null;\r\n      currentDirection=null;\r\n      pinchDirection = null;\r\n      duration = 0;\r\n      startTouchesDistance = 0;\r\n      endTouchesDistance = 0;\r\n      pinchZoom = 1;\r\n      pinchDistance = 0;\r\n      maximumsMap = createMaximumsData();\r\n      cancelMultiFingerRelease();\r\n\r\n      //Create the default finger data\r\n      createFingerData(0, evt);\r\n\r\n      // check the number of fingers is what we are looking for, or we are capturing pinches\r\n      if (!touches || (fingerCount === options.fingers || options.fingers === ALL_FINGERS) || hasPinches()) {\r\n        // get the coordinates of the touch\r\n        startTime = getTimeStamp();\r\n\r\n        if (fingerCount == 2) {\r\n          //Keep track of the initial pinch distance, so we can calculate the diff later\r\n          //Store second finger data as start\r\n          createFingerData(1, touches[1]);\r\n          startTouchesDistance = endTouchesDistance = calculateTouchesDistance(fingerData[0].start, fingerData[1].start);\r\n        }\r\n\r\n        if (options.swipeStatus || options.pinchStatus) {\r\n          ret = triggerHandler(event, phase);\r\n        }\r\n      } else {\r\n        //A touch with more or less than the fingers we are looking for, so cancel\r\n        ret = false;\r\n      }\r\n\r\n      //If we have a return value from the users handler, then return and cancel\r\n      if (ret === false) {\r\n        phase = PHASE_CANCEL;\r\n        triggerHandler(event, phase);\r\n        return ret;\r\n      } else {\r\n        if (options.hold) {\r\n          holdTimeout = setTimeout($.proxy(function() {\r\n            //Trigger the event\r\n            $element.trigger('hold', [event.target]);\r\n            //Fire the callback\r\n            if (options.hold) {\r\n              ret = options.hold.call($element, event, event.target);\r\n            }\r\n          }, this), options.longTapThreshold);\r\n        }\r\n\r\n        setTouchInProgress(true);\r\n      }\r\n\r\n      return null;\r\n    };\r\n\r\n\r\n\r\n    /**\r\n     * Event handler for a touch move event.\r\n     * If we change fingers during move, then cancel the event\r\n     * @inner\r\n     * @param {object} jqEvent The normalised jQuery event object.\r\n     */\r\n    function touchMove(jqEvent) {\r\n\r\n      //As we use Jquery bind for events, we need to target the original event object\r\n      //If these events are being programmatically triggered, we don't have an original event object, so use the Jq one.\r\n      var event = jqEvent.originalEvent ? jqEvent.originalEvent : jqEvent;\r\n\r\n      //If we are ending, cancelling, or within the threshold of 2 fingers being released, don't track anything..\r\n      if (phase === PHASE_END || phase === PHASE_CANCEL || inMultiFingerRelease())\r\n        return;\r\n\r\n      var ret,\r\n        touches = event.touches,\r\n        evt = touches ? touches[0] : event;\r\n\r\n\r\n      //Update the  finger data\r\n      var currentFinger = updateFingerData(evt);\r\n      endTime = getTimeStamp();\r\n\r\n      if (touches) {\r\n        fingerCount = touches.length;\r\n      }\r\n\r\n      if (options.hold) {\r\n        clearTimeout(holdTimeout);\r\n      }\r\n\r\n      phase = PHASE_MOVE;\r\n\r\n      //If we have 2 fingers get Touches distance as well\r\n      if (fingerCount == 2) {\r\n\r\n        //Keep track of the initial pinch distance, so we can calculate the diff later\r\n        //We do this here as well as the start event, in case they start with 1 finger, and the press 2 fingers\r\n        if (startTouchesDistance == 0) {\r\n          //Create second finger if this is the first time...\r\n          createFingerData(1, touches[1]);\r\n\r\n          startTouchesDistance = endTouchesDistance = calculateTouchesDistance(fingerData[0].start, fingerData[1].start);\r\n        } else {\r\n          //Else just update the second finger\r\n          updateFingerData(touches[1]);\r\n\r\n          endTouchesDistance = calculateTouchesDistance(fingerData[0].end, fingerData[1].end);\r\n          pinchDirection = calculatePinchDirection(fingerData[0].end, fingerData[1].end);\r\n        }\r\n\r\n        pinchZoom = calculatePinchZoom(startTouchesDistance, endTouchesDistance);\r\n        pinchDistance = Math.abs(startTouchesDistance - endTouchesDistance);\r\n      }\r\n\r\n      if ((fingerCount === options.fingers || options.fingers === ALL_FINGERS) || !touches || hasPinches()) {\r\n\r\n        //The overall direction of the swipe. From start to now.\r\n        direction = calculateDirection(currentFinger.start, currentFinger.end);\r\n\r\n        //The immediate direction of the swipe, direction between the last movement and this one.\r\n        currentDirection = calculateDirection(currentFinger.last, currentFinger.end);\r\n\r\n        //Check if we need to prevent default event (page scroll / pinch zoom) or not\r\n        validateDefaultEvent(jqEvent, currentDirection);\r\n\r\n        //Distance and duration are all off the main finger\r\n        distance = calculateDistance(currentFinger.start, currentFinger.end);\r\n        duration = calculateDuration();\r\n\r\n        //Cache the maximum distance we made in this direction\r\n        setMaxDistance(direction, distance);\r\n\r\n        //Trigger status handler\r\n        ret = triggerHandler(event, phase);\r\n\r\n\r\n        //If we trigger end events when threshold are met, or trigger events when touch leaves element\r\n        if (!options.triggerOnTouchEnd || options.triggerOnTouchLeave) {\r\n\r\n          var inBounds = true;\r\n\r\n          //If checking if we leave the element, run the bounds check (we can use touchleave as its not supported on webkit)\r\n          if (options.triggerOnTouchLeave) {\r\n            var bounds = getbounds(this);\r\n            inBounds = isInBounds(currentFinger.end, bounds);\r\n          }\r\n\r\n          //Trigger end handles as we swipe if thresholds met or if we have left the element if the user has asked to check these..\r\n          if (!options.triggerOnTouchEnd && inBounds) {\r\n            phase = getNextPhase(PHASE_MOVE);\r\n          }\r\n          //We end if out of bounds here, so set current phase to END, and check if its modified\r\n          else if (options.triggerOnTouchLeave && !inBounds) {\r\n            phase = getNextPhase(PHASE_END);\r\n          }\r\n\r\n          if (phase == PHASE_CANCEL || phase == PHASE_END) {\r\n            triggerHandler(event, phase);\r\n          }\r\n        }\r\n      } else {\r\n        phase = PHASE_CANCEL;\r\n        triggerHandler(event, phase);\r\n      }\r\n\r\n      if (ret === false) {\r\n        phase = PHASE_CANCEL;\r\n        triggerHandler(event, phase);\r\n      }\r\n    }\r\n\r\n\r\n\r\n\r\n    /**\r\n     * Event handler for a touch end event.\r\n     * Calculate the direction and trigger events\r\n     * @inner\r\n     * @param {object} jqEvent The normalised jQuery event object.\r\n     */\r\n    function touchEnd(jqEvent) {\r\n      //As we use Jquery bind for events, we need to target the original event object\r\n      //If these events are being programmatically triggered, we don't have an original event object, so use the Jq one.\r\n      var event = jqEvent.originalEvent ? jqEvent.originalEvent : jqEvent,\r\n        touches = event.touches;\r\n\r\n      //If we are still in a touch with the device wait a fraction and see if the other finger comes up\r\n      //if it does within the threshold, then we treat it as a multi release, not a single release and end the touch / swipe\r\n      if (touches) {\r\n        if (touches.length && !inMultiFingerRelease()) {\r\n          startMultiFingerRelease(event);\r\n          return true;\r\n        } else if (touches.length && inMultiFingerRelease()) {\r\n          return true;\r\n        }\r\n      }\r\n\r\n      //If a previous finger has been released, check how long ago, if within the threshold, then assume it was a multifinger release.\r\n      //This is used to allow 2 fingers to release fractionally after each other, whilst maintaining the event as containing 2 fingers, not 1\r\n      if (inMultiFingerRelease()) {\r\n        fingerCount = fingerCountAtRelease;\r\n      }\r\n\r\n      //Set end of swipe\r\n      endTime = getTimeStamp();\r\n\r\n      //Get duration incase move was never fired\r\n      duration = calculateDuration();\r\n\r\n      //If we trigger handlers at end of swipe OR, we trigger during, but they didnt trigger and we are still in the move phase\r\n      if (didSwipeBackToCancel() || !validateSwipeDistance()) {\r\n        phase = PHASE_CANCEL;\r\n        triggerHandler(event, phase);\r\n      } else if (options.triggerOnTouchEnd || (options.triggerOnTouchEnd === false && phase === PHASE_MOVE)) {\r\n        //call this on jq event so we are cross browser\r\n        if (options.preventDefaultEvents !== false && jqEvent.cancelable !== false) {\r\n          jqEvent.preventDefault();\r\n        }\r\n        phase = PHASE_END;\r\n        triggerHandler(event, phase);\r\n      }\r\n      //Special cases - A tap should always fire on touch end regardless,\r\n      //So here we manually trigger the tap end handler by itself\r\n      //We dont run trigger handler as it will re-trigger events that may have fired already\r\n      else if (!options.triggerOnTouchEnd && hasTap()) {\r\n        //Trigger the pinch events...\r\n        phase = PHASE_END;\r\n        triggerHandlerForGesture(event, phase, TAP);\r\n      } else if (phase === PHASE_MOVE) {\r\n        phase = PHASE_CANCEL;\r\n        triggerHandler(event, phase);\r\n      }\r\n\r\n      setTouchInProgress(false);\r\n\r\n      return null;\r\n    }\r\n\r\n\r\n\r\n    /**\r\n     * Event handler for a touch cancel event.\r\n     * Clears current vars\r\n     * @inner\r\n     */\r\n    function touchCancel() {\r\n      // reset the variables back to default values\r\n      fingerCount = 0;\r\n      endTime = 0;\r\n      startTime = 0;\r\n      startTouchesDistance = 0;\r\n      endTouchesDistance = 0;\r\n      pinchZoom = 1;\r\n\r\n      //If we were in progress of tracking a possible multi touch end, then re set it.\r\n      cancelMultiFingerRelease();\r\n\r\n      setTouchInProgress(false);\r\n    }\r\n\r\n\r\n    /**\r\n     * Event handler for a touch leave event.\r\n     * This is only triggered on desktops, in touch we work this out manually\r\n     * as the touchleave event is not supported in webkit\r\n     * @inner\r\n     */\r\n    function touchLeave(jqEvent) {\r\n      //If these events are being programmatically triggered, we don't have an original event object, so use the Jq one.\r\n      var event = jqEvent.originalEvent ? jqEvent.originalEvent : jqEvent;\r\n\r\n      //If we have the trigger on leave property set....\r\n      if (options.triggerOnTouchLeave) {\r\n        phase = getNextPhase(PHASE_END);\r\n        triggerHandler(event, phase);\r\n      }\r\n    }\r\n\r\n    /**\r\n     * Removes all listeners that were associated with the plugin\r\n     * @inner\r\n     */\r\n    function removeListeners() {\r\n      $element.unbind(START_EV, touchStart);\r\n      $element.unbind(CANCEL_EV, touchCancel);\r\n      $element.unbind(MOVE_EV, touchMove);\r\n      $element.unbind(END_EV, touchEnd);\r\n\r\n      //we only have leave events on desktop, we manually calculate leave on touch as its not supported in webkit\r\n      if (LEAVE_EV) {\r\n        $element.unbind(LEAVE_EV, touchLeave);\r\n      }\r\n\r\n      setTouchInProgress(false);\r\n    }\r\n\r\n\r\n    /**\r\n     * Checks if the time and distance thresholds have been met, and if so then the appropriate handlers are fired.\r\n     */\r\n    function getNextPhase(currentPhase) {\r\n\r\n      var nextPhase = currentPhase;\r\n\r\n      // Ensure we have valid swipe (under time and over distance  and check if we are out of bound...)\r\n      var validTime = validateSwipeTime();\r\n      var validDistance = validateSwipeDistance();\r\n      var didCancel = didSwipeBackToCancel();\r\n\r\n      //If we have exceeded our time, then cancel\r\n      if (!validTime || didCancel) {\r\n        nextPhase = PHASE_CANCEL;\r\n      }\r\n      //Else if we are moving, and have reached distance then end\r\n      else if (validDistance && currentPhase == PHASE_MOVE && (!options.triggerOnTouchEnd || options.triggerOnTouchLeave)) {\r\n        nextPhase = PHASE_END;\r\n      }\r\n      //Else if we have ended by leaving and didn't reach distance, then cancel\r\n      else if (!validDistance && currentPhase == PHASE_END && options.triggerOnTouchLeave) {\r\n        nextPhase = PHASE_CANCEL;\r\n      }\r\n\r\n      return nextPhase;\r\n    }\r\n\r\n\r\n    /**\r\n     * Trigger the relevant event handler\r\n     * The handlers are passed the original event, the element that was swiped, and in the case of the catch all handler, the direction that was swiped, \"left\", \"right\", \"up\", or \"down\"\r\n     * @param {object} event the original event object\r\n     * @param {string} phase the phase of the swipe (start, end cancel etc) {@link $.fn.swipe.phases}\r\n     * @inner\r\n     */\r\n    function triggerHandler(event, phase) {\r\n\r\n\r\n\r\n      var ret,\r\n        touches = event.touches;\r\n\r\n      // SWIPE GESTURES\r\n      if (didSwipe() || hasSwipes()) {\r\n          ret = triggerHandlerForGesture(event, phase, SWIPE);\r\n      }\r\n\r\n      // PINCH GESTURES (if the above didn't cancel)\r\n      if ((didPinch() || hasPinches()) && ret !== false) {\r\n          ret = triggerHandlerForGesture(event, phase, PINCH);\r\n      }\r\n\r\n      // CLICK / TAP (if the above didn't cancel)\r\n      if (didDoubleTap() && ret !== false) {\r\n        //Trigger the tap events...\r\n        ret = triggerHandlerForGesture(event, phase, DOUBLE_TAP);\r\n      }\r\n\r\n      // CLICK / TAP (if the above didn't cancel)\r\n      else if (didLongTap() && ret !== false) {\r\n        //Trigger the tap events...\r\n        ret = triggerHandlerForGesture(event, phase, LONG_TAP);\r\n      }\r\n\r\n      // CLICK / TAP (if the above didn't cancel)\r\n      else if (didTap() && ret !== false) {\r\n        //Trigger the tap event..\r\n        ret = triggerHandlerForGesture(event, phase, TAP);\r\n      }\r\n\r\n\r\n\r\n      // If we are cancelling the gesture, then manually trigger the reset handler\r\n      if (phase === PHASE_CANCEL) {\r\n\r\n        touchCancel(event);\r\n      }\r\n\r\n\r\n\r\n\r\n      // If we are ending the gesture, then manually trigger the reset handler IF all fingers are off\r\n      if (phase === PHASE_END) {\r\n        //If we support touch, then check that all fingers are off before we cancel\r\n        if (touches) {\r\n          if (!touches.length) {\r\n            touchCancel(event);\r\n          }\r\n        } else {\r\n          touchCancel(event);\r\n        }\r\n      }\r\n\r\n      return ret;\r\n    }\r\n\r\n\r\n\r\n    /**\r\n     * Trigger the relevant event handler\r\n     * The handlers are passed the original event, the element that was swiped, and in the case of the catch all handler, the direction that was swiped, \"left\", \"right\", \"up\", or \"down\"\r\n     * @param {object} event the original event object\r\n     * @param {string} phase the phase of the swipe (start, end cancel etc) {@link $.fn.swipe.phases}\r\n     * @param {string} gesture the gesture to trigger a handler for : PINCH or SWIPE {@link $.fn.swipe.gestures}\r\n     * @return Boolean False, to indicate that the event should stop propagation, or void.\r\n     * @inner\r\n     */\r\n    function triggerHandlerForGesture(event, phase, gesture) {\r\n\r\n      var ret;\r\n\r\n      //SWIPES....\r\n      if (gesture == SWIPE) {\r\n        //Trigger status every time..\r\n        $element.trigger('swipeStatus', [phase, direction || null, distance || 0, duration || 0, fingerCount, fingerData, currentDirection]);\r\n\r\n        if (options.swipeStatus) {\r\n          ret = options.swipeStatus.call($element, event, phase, direction || null, distance || 0, duration || 0, fingerCount, fingerData, currentDirection);\r\n          //If the status cancels, then dont run the subsequent event handlers..\r\n          if (ret === false) return false;\r\n        }\r\n\r\n        if (phase == PHASE_END && validateSwipe()) {\r\n\r\n          //Cancel any taps that were in progress...\r\n          clearTimeout(singleTapTimeout);\r\n          clearTimeout(holdTimeout);\r\n\r\n          $element.trigger('swipe', [direction, distance, duration, fingerCount, fingerData, currentDirection]);\r\n\r\n          if (options.swipe) {\r\n            ret = options.swipe.call($element, event, direction, distance, duration, fingerCount, fingerData, currentDirection);\r\n            //If the status cancels, then dont run the subsequent event handlers..\r\n            if (ret === false) return false;\r\n          }\r\n\r\n          //trigger direction specific event handlers\r\n          switch (direction) {\r\n            case LEFT:\r\n              $element.trigger('swipeLeft', [direction, distance, duration, fingerCount, fingerData, currentDirection]);\r\n\r\n              if (options.swipeLeft) {\r\n                ret = options.swipeLeft.call($element, event, direction, distance, duration, fingerCount, fingerData, currentDirection);\r\n              }\r\n              break;\r\n\r\n            case RIGHT:\r\n              $element.trigger('swipeRight', [direction, distance, duration, fingerCount, fingerData, currentDirection]);\r\n\r\n              if (options.swipeRight) {\r\n                ret = options.swipeRight.call($element, event, direction, distance, duration, fingerCount, fingerData, currentDirection);\r\n              }\r\n              break;\r\n\r\n            case UP:\r\n              $element.trigger('swipeUp', [direction, distance, duration, fingerCount, fingerData, currentDirection]);\r\n\r\n              if (options.swipeUp) {\r\n                ret = options.swipeUp.call($element, event, direction, distance, duration, fingerCount, fingerData, currentDirection);\r\n              }\r\n              break;\r\n\r\n            case DOWN:\r\n              $element.trigger('swipeDown', [direction, distance, duration, fingerCount, fingerData, currentDirection]);\r\n\r\n              if (options.swipeDown) {\r\n                ret = options.swipeDown.call($element, event, direction, distance, duration, fingerCount, fingerData, currentDirection);\r\n              }\r\n              break;\r\n          }\r\n        }\r\n      }\r\n\r\n\r\n      //PINCHES....\r\n      if (gesture == PINCH) {\r\n        $element.trigger('pinchStatus', [phase, pinchDirection || null, pinchDistance || 0, duration || 0, fingerCount, pinchZoom, fingerData]);\r\n\r\n        if (options.pinchStatus) {\r\n          ret = options.pinchStatus.call($element, event, phase, pinchDirection || null, pinchDistance || 0, duration || 0, fingerCount, pinchZoom, fingerData);\r\n          //If the status cancels, then dont run the subsequent event handlers..\r\n          if (ret === false) return false;\r\n        }\r\n\r\n        if (phase == PHASE_END && validatePinch()) {\r\n\r\n          switch (pinchDirection) {\r\n            case IN:\r\n              $element.trigger('pinchIn', [pinchDirection || null, pinchDistance || 0, duration || 0, fingerCount, pinchZoom, fingerData]);\r\n\r\n              if (options.pinchIn) {\r\n                ret = options.pinchIn.call($element, event, pinchDirection || null, pinchDistance || 0, duration || 0, fingerCount, pinchZoom, fingerData);\r\n              }\r\n              break;\r\n\r\n            case OUT:\r\n              $element.trigger('pinchOut', [pinchDirection || null, pinchDistance || 0, duration || 0, fingerCount, pinchZoom, fingerData]);\r\n\r\n              if (options.pinchOut) {\r\n                ret = options.pinchOut.call($element, event, pinchDirection || null, pinchDistance || 0, duration || 0, fingerCount, pinchZoom, fingerData);\r\n              }\r\n              break;\r\n          }\r\n        }\r\n      }\r\n\r\n      if (gesture == TAP) {\r\n        if (phase === PHASE_CANCEL || phase === PHASE_END) {\r\n\r\n          clearTimeout(singleTapTimeout);\r\n          clearTimeout(holdTimeout);\r\n\r\n          //If we are also looking for doubelTaps, wait incase this is one...\r\n          if (hasDoubleTap() && !inDoubleTap()) {\r\n            doubleTapStartTime = getTimeStamp();\r\n\r\n            //Now wait for the double tap timeout, and trigger this single tap\r\n            //if its not cancelled by a double tap\r\n            singleTapTimeout = setTimeout($.proxy(function() {\r\n              doubleTapStartTime = null;\r\n              $element.trigger('tap', [event.target]);\r\n\r\n              if (options.tap) {\r\n                ret = options.tap.call($element, event, event.target);\r\n              }\r\n            }, this), options.doubleTapThreshold);\r\n\r\n          } else {\r\n            doubleTapStartTime = null;\r\n            $element.trigger('tap', [event.target]);\r\n            if (options.tap) {\r\n              ret = options.tap.call($element, event, event.target);\r\n            }\r\n          }\r\n        }\r\n      } else if (gesture == DOUBLE_TAP) {\r\n        if (phase === PHASE_CANCEL || phase === PHASE_END) {\r\n          clearTimeout(singleTapTimeout);\r\n          clearTimeout(holdTimeout);\r\n          doubleTapStartTime = null;\r\n          $element.trigger('doubletap', [event.target]);\r\n\r\n          if (options.doubleTap) {\r\n            ret = options.doubleTap.call($element, event, event.target);\r\n          }\r\n        }\r\n      } else if (gesture == LONG_TAP) {\r\n        if (phase === PHASE_CANCEL || phase === PHASE_END) {\r\n          clearTimeout(singleTapTimeout);\r\n          doubleTapStartTime = null;\r\n\r\n          $element.trigger('longtap', [event.target]);\r\n          if (options.longTap) {\r\n            ret = options.longTap.call($element, event, event.target);\r\n          }\r\n        }\r\n      }\r\n\r\n      return ret;\r\n    }\r\n\r\n\r\n    //\r\n    // GESTURE VALIDATION\r\n    //\r\n\r\n    /**\r\n     * Checks the user has swipe far enough\r\n     * @return Boolean if <code>threshold</code> has been set, return true if the threshold was met, else false.\r\n     * If no threshold was set, then we return true.\r\n     * @inner\r\n     */\r\n    function validateSwipeDistance() {\r\n      var valid = true;\r\n      //If we made it past the min swipe distance..\r\n      if (options.threshold !== null) {\r\n        valid = distance >= options.threshold;\r\n      }\r\n\r\n      return valid;\r\n    }\r\n\r\n    /**\r\n     * Checks the user has swiped back to cancel.\r\n     * @return Boolean if <code>cancelThreshold</code> has been set, return true if the cancelThreshold was met, else false.\r\n     * If no cancelThreshold was set, then we return true.\r\n     * @inner\r\n     */\r\n    function didSwipeBackToCancel() {\r\n      var cancelled = false;\r\n      if (options.cancelThreshold !== null && direction !== null) {\r\n        cancelled = (getMaxDistance(direction) - distance) >= options.cancelThreshold;\r\n      }\r\n\r\n      return cancelled;\r\n    }\r\n\r\n    /**\r\n     * Checks the user has pinched far enough\r\n     * @return Boolean if <code>pinchThreshold</code> has been set, return true if the threshold was met, else false.\r\n     * If no threshold was set, then we return true.\r\n     * @inner\r\n     */\r\n    function validatePinchDistance() {\r\n      if (options.pinchThreshold !== null) {\r\n        return pinchDistance >= options.pinchThreshold;\r\n      }\r\n      return true;\r\n    }\r\n\r\n    /**\r\n     * Checks that the time taken to swipe meets the minimum / maximum requirements\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function validateSwipeTime() {\r\n      var result;\r\n      //If no time set, then return true\r\n      if (options.maxTimeThreshold) {\r\n        if (duration >= options.maxTimeThreshold) {\r\n          result = false;\r\n        } else {\r\n          result = true;\r\n        }\r\n      } else {\r\n        result = true;\r\n      }\r\n\r\n      return result;\r\n    }\r\n\r\n\r\n    /**\r\n     * Checks direction of the swipe and the value allowPageScroll to see if we should allow or prevent the default behaviour from occurring.\r\n     * This will essentially allow page scrolling or not when the user is swiping on a touchSwipe object.\r\n     * @param {object} jqEvent The normalised jQuery representation of the event object.\r\n     * @param {string} direction The direction of the event. See {@link $.fn.swipe.directions}\r\n     * @see $.fn.swipe.directions\r\n     * @inner\r\n     */\r\n    function validateDefaultEvent(jqEvent, direction) {\r\n\r\n      //If the option is set, allways allow the event to bubble up (let user handle weirdness)\r\n      if (options.preventDefaultEvents === false) {\r\n        return;\r\n      }\r\n\r\n      if (options.allowPageScroll === NONE) {\r\n        jqEvent.preventDefault();\r\n      } else {\r\n        var auto = options.allowPageScroll === AUTO;\r\n\r\n        switch (direction) {\r\n          case LEFT:\r\n            if ((options.swipeLeft && auto) || (!auto && options.allowPageScroll != HORIZONTAL)) {\r\n              jqEvent.preventDefault();\r\n            }\r\n            break;\r\n\r\n          case RIGHT:\r\n            if ((options.swipeRight && auto) || (!auto && options.allowPageScroll != HORIZONTAL)) {\r\n              jqEvent.preventDefault();\r\n            }\r\n            break;\r\n\r\n          case UP:\r\n            if ((options.swipeUp && auto) || (!auto && options.allowPageScroll != VERTICAL)) {\r\n              jqEvent.preventDefault();\r\n            }\r\n            break;\r\n\r\n          case DOWN:\r\n            if ((options.swipeDown && auto) || (!auto && options.allowPageScroll != VERTICAL)) {\r\n              jqEvent.preventDefault();\r\n            }\r\n            break;\r\n\r\n          case NONE:\r\n\r\n            break;\r\n        }\r\n      }\r\n    }\r\n\r\n\r\n    // PINCHES\r\n    /**\r\n     * Returns true of the current pinch meets the thresholds\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function validatePinch() {\r\n      var hasCorrectFingerCount = validateFingers();\r\n      var hasEndPoint = validateEndPoint();\r\n      var hasCorrectDistance = validatePinchDistance();\r\n      return hasCorrectFingerCount && hasEndPoint && hasCorrectDistance;\r\n\r\n    }\r\n\r\n    /**\r\n     * Returns true if any Pinch events have been registered\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function hasPinches() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(options.pinchStatus || options.pinchIn || options.pinchOut);\r\n    }\r\n\r\n    /**\r\n     * Returns true if we are detecting pinches, and have one\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function didPinch() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(validatePinch() && hasPinches());\r\n    }\r\n\r\n\r\n\r\n\r\n    // SWIPES\r\n    /**\r\n     * Returns true if the current swipe meets the thresholds\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function validateSwipe() {\r\n      //Check validity of swipe\r\n      var hasValidTime = validateSwipeTime();\r\n      var hasValidDistance = validateSwipeDistance();\r\n      var hasCorrectFingerCount = validateFingers();\r\n      var hasEndPoint = validateEndPoint();\r\n      var didCancel = didSwipeBackToCancel();\r\n\r\n      // if the user swiped more than the minimum length, perform the appropriate action\r\n      // hasValidDistance is null when no distance is set\r\n      var valid = !didCancel && hasEndPoint && hasCorrectFingerCount && hasValidDistance && hasValidTime;\r\n\r\n      return valid;\r\n    }\r\n\r\n    /**\r\n     * Returns true if any Swipe events have been registered\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function hasSwipes() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(options.swipe || options.swipeStatus || options.swipeLeft || options.swipeRight || options.swipeUp || options.swipeDown);\r\n    }\r\n\r\n\r\n    /**\r\n     * Returns true if we are detecting swipes and have one\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function didSwipe() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(validateSwipe() && hasSwipes());\r\n    }\r\n\r\n    /**\r\n     * Returns true if we have matched the number of fingers we are looking for\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function validateFingers() {\r\n      //The number of fingers we want were matched, or on desktop we ignore\r\n      return ((fingerCount === options.fingers || options.fingers === ALL_FINGERS) || !SUPPORTS_TOUCH);\r\n    }\r\n\r\n    /**\r\n     * Returns true if we have an end point for the swipe\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function validateEndPoint() {\r\n      //We have an end value for the finger\r\n      return fingerData[0].end.x !== 0;\r\n    }\r\n\r\n    // TAP / CLICK\r\n    /**\r\n     * Returns true if a click / tap events have been registered\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function hasTap() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(options.tap);\r\n    }\r\n\r\n    /**\r\n     * Returns true if a double tap events have been registered\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function hasDoubleTap() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(options.doubleTap);\r\n    }\r\n\r\n    /**\r\n     * Returns true if any long tap events have been registered\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function hasLongTap() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(options.longTap);\r\n    }\r\n\r\n    /**\r\n     * Returns true if we could be in the process of a double tap (one tap has occurred, we are listening for double taps, and the threshold hasn't past.\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function validateDoubleTap() {\r\n      if (doubleTapStartTime == null) {\r\n        return false;\r\n      }\r\n      var now = getTimeStamp();\r\n      return (hasDoubleTap() && ((now - doubleTapStartTime) <= options.doubleTapThreshold));\r\n    }\r\n\r\n    /**\r\n     * Returns true if we could be in the process of a double tap (one tap has occurred, we are listening for double taps, and the threshold hasn't past.\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function inDoubleTap() {\r\n      return validateDoubleTap();\r\n    }\r\n\r\n\r\n    /**\r\n     * Returns true if we have a valid tap\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function validateTap() {\r\n      return ((fingerCount === 1 || !SUPPORTS_TOUCH) && (isNaN(distance) || distance < options.threshold));\r\n    }\r\n\r\n    /**\r\n     * Returns true if we have a valid long tap\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function validateLongTap() {\r\n      //slight threshold on moving finger\r\n      return ((duration > options.longTapThreshold) && (distance < DOUBLE_TAP_THRESHOLD));\r\n    }\r\n\r\n    /**\r\n     * Returns true if we are detecting taps and have one\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function didTap() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(validateTap() && hasTap());\r\n    }\r\n\r\n\r\n    /**\r\n     * Returns true if we are detecting double taps and have one\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function didDoubleTap() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(validateDoubleTap() && hasDoubleTap());\r\n    }\r\n\r\n    /**\r\n     * Returns true if we are detecting long taps and have one\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function didLongTap() {\r\n      //Enure we dont return 0 or null for false values\r\n      return !!(validateLongTap() && hasLongTap());\r\n    }\r\n\r\n\r\n\r\n\r\n    // MULTI FINGER TOUCH\r\n    /**\r\n     * Starts tracking the time between 2 finger releases, and keeps track of how many fingers we initially had up\r\n     * @inner\r\n     */\r\n    function startMultiFingerRelease(event) {\r\n      previousTouchEndTime = getTimeStamp();\r\n      fingerCountAtRelease = event.touches.length + 1;\r\n    }\r\n\r\n    /**\r\n     * Cancels the tracking of time between 2 finger releases, and resets counters\r\n     * @inner\r\n     */\r\n    function cancelMultiFingerRelease() {\r\n      previousTouchEndTime = 0;\r\n      fingerCountAtRelease = 0;\r\n    }\r\n\r\n    /**\r\n     * Checks if we are in the threshold between 2 fingers being released\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function inMultiFingerRelease() {\r\n\r\n      var withinThreshold = false;\r\n\r\n      if (previousTouchEndTime) {\r\n        var diff = getTimeStamp() - previousTouchEndTime\r\n        if (diff <= options.fingerReleaseThreshold) {\r\n          withinThreshold = true;\r\n        }\r\n      }\r\n\r\n      return withinThreshold;\r\n    }\r\n\r\n\r\n    /**\r\n     * gets a data flag to indicate that a touch is in progress\r\n     * @return Boolean\r\n     * @inner\r\n     */\r\n    function getTouchInProgress() {\r\n      //strict equality to ensure only true and false are returned\r\n      return !!($element.data(PLUGIN_NS + '_intouch') === true);\r\n    }\r\n\r\n    /**\r\n     * Sets a data flag to indicate that a touch is in progress\r\n     * @param {boolean} val The value to set the property to\r\n     * @inner\r\n     */\r\n    function setTouchInProgress(val) {\r\n\r\n      //If destroy is called in an event handler, we have no el, and we have already cleaned up, so return.\r\n      if(!$element) { return; }\r\n\r\n      //Add or remove event listeners depending on touch status\r\n      if (val === true) {\r\n        $element.bind(MOVE_EV, touchMove);\r\n        $element.bind(END_EV, touchEnd);\r\n\r\n        //we only have leave events on desktop, we manually calcuate leave on touch as its not supported in webkit\r\n        if (LEAVE_EV) {\r\n          $element.bind(LEAVE_EV, touchLeave);\r\n        }\r\n      } else {\r\n\r\n        $element.unbind(MOVE_EV, touchMove, false);\r\n        $element.unbind(END_EV, touchEnd, false);\r\n\r\n        //we only have leave events on desktop, we manually calcuate leave on touch as its not supported in webkit\r\n        if (LEAVE_EV) {\r\n          $element.unbind(LEAVE_EV, touchLeave, false);\r\n        }\r\n      }\r\n\r\n\r\n      //strict equality to ensure only true and false can update the value\r\n      $element.data(PLUGIN_NS + '_intouch', val === true);\r\n    }\r\n\r\n\r\n    /**\r\n     * Creates the finger data for the touch/finger in the event object.\r\n     * @param {int} id The id to store the finger data under (usually the order the fingers were pressed)\r\n     * @param {object} evt The event object containing finger data\r\n     * @return finger data object\r\n     * @inner\r\n     */\r\n    function createFingerData(id, evt) {\r\n      var f = {\r\n        start: {\r\n          x: 0,\r\n          y: 0\r\n        },\r\n        last: {\r\n          x: 0,\r\n          y: 0\r\n        },\r\n        end: {\r\n          x: 0,\r\n          y: 0\r\n        }\r\n      };\r\n      f.start.x = f.last.x = f.end.x = evt.pageX || evt.clientX;\r\n      f.start.y = f.last.y = f.end.y = evt.pageY || evt.clientY;\r\n      fingerData[id] = f;\r\n      return f;\r\n    }\r\n\r\n    /**\r\n     * Updates the finger data for a particular event object\r\n     * @param {object} evt The event object containing the touch/finger data to upadte\r\n     * @return a finger data object.\r\n     * @inner\r\n     */\r\n    function updateFingerData(evt) {\r\n      var id = evt.identifier !== undefined ? evt.identifier : 0;\r\n      var f = getFingerData(id);\r\n\r\n      if (f === null) {\r\n        f = createFingerData(id, evt);\r\n      }\r\n\r\n      f.last.x = f.end.x;\r\n      f.last.y = f.end.y;\r\n\r\n      f.end.x = evt.pageX || evt.clientX;\r\n      f.end.y = evt.pageY || evt.clientY;\r\n\r\n      return f;\r\n    }\r\n\r\n    /**\r\n     * Returns a finger data object by its event ID.\r\n     * Each touch event has an identifier property, which is used\r\n     * to track repeat touches\r\n     * @param {int} id The unique id of the finger in the sequence of touch events.\r\n     * @return a finger data object.\r\n     * @inner\r\n     */\r\n    function getFingerData(id) {\r\n      return fingerData[id] || null;\r\n    }\r\n\r\n\r\n    /**\r\n     * Sets the maximum distance swiped in the given direction.\r\n     * If the new value is lower than the current value, the max value is not changed.\r\n     * @param {string}  direction The direction of the swipe\r\n     * @param {int}  distance The distance of the swipe\r\n     * @inner\r\n     */\r\n    function setMaxDistance(direction, distance) {\r\n      if(direction==NONE) return;\r\n      distance = Math.max(distance, getMaxDistance(direction));\r\n      maximumsMap[direction].distance = distance;\r\n    }\r\n\r\n    /**\r\n     * gets the maximum distance swiped in the given direction.\r\n     * @param {string}  direction The direction of the swipe\r\n     * @return int  The distance of the swipe\r\n     * @inner\r\n     */\r\n    function getMaxDistance(direction) {\r\n      if (maximumsMap[direction]) return maximumsMap[direction].distance;\r\n      return undefined;\r\n    }\r\n\r\n    /**\r\n     * Creats a map of directions to maximum swiped values.\r\n     * @return Object A dictionary of maximum values, indexed by direction.\r\n     * @inner\r\n     */\r\n    function createMaximumsData() {\r\n      var maxData = {};\r\n      maxData[LEFT] = createMaximumVO(LEFT);\r\n      maxData[RIGHT] = createMaximumVO(RIGHT);\r\n      maxData[UP] = createMaximumVO(UP);\r\n      maxData[DOWN] = createMaximumVO(DOWN);\r\n\r\n      return maxData;\r\n    }\r\n\r\n    /**\r\n     * Creates a map maximum swiped values for a given swipe direction\r\n     * @param {string} The direction that these values will be associated with\r\n     * @return Object Maximum values\r\n     * @inner\r\n     */\r\n    function createMaximumVO(dir) {\r\n      return {\r\n        direction: dir,\r\n        distance: 0\r\n      }\r\n    }\r\n\r\n\r\n    //\r\n    // MATHS / UTILS\r\n    //\r\n\r\n    /**\r\n     * Calculate the duration of the swipe\r\n     * @return int\r\n     * @inner\r\n     */\r\n    function calculateDuration() {\r\n      return endTime - startTime;\r\n    }\r\n\r\n    /**\r\n     * Calculate the distance between 2 touches (pinch)\r\n     * @param {point} startPoint A point object containing x and y co-ordinates\r\n     * @param {point} endPoint A point object containing x and y co-ordinates\r\n     * @return int;\r\n     * @inner\r\n     */\r\n    function calculateTouchesDistance(startPoint, endPoint) {\r\n      var diffX = Math.abs(startPoint.x - endPoint.x);\r\n      var diffY = Math.abs(startPoint.y - endPoint.y);\r\n\r\n      return Math.round(Math.sqrt(diffX * diffX + diffY * diffY));\r\n    }\r\n\r\n    /**\r\n     * Calculate the zoom factor between the start and end distances\r\n     * @param {int} startDistance Distance (between 2 fingers) the user started pinching at\r\n     * @param {int} endDistance Distance (between 2 fingers) the user ended pinching at\r\n     * @return float The zoom value from 0 to 1.\r\n     * @inner\r\n     */\r\n    function calculatePinchZoom(startDistance, endDistance) {\r\n      var percent = (endDistance / startDistance) * 1;\r\n      return percent.toFixed(2);\r\n    }\r\n\r\n\r\n    /**\r\n     * Returns the pinch direction, either IN or OUT for the given points\r\n     * @return string Either {@link $.fn.swipe.directions.IN} or {@link $.fn.swipe.directions.OUT}\r\n     * @see $.fn.swipe.directions\r\n     * @inner\r\n     */\r\n    function calculatePinchDirection() {\r\n      if (pinchZoom < 1) {\r\n        return OUT;\r\n      } else {\r\n        return IN;\r\n      }\r\n    }\r\n\r\n\r\n    /**\r\n     * Calculate the length / distance of the swipe\r\n     * @param {point} startPoint A point object containing x and y co-ordinates\r\n     * @param {point} endPoint A point object containing x and y co-ordinates\r\n     * @return int\r\n     * @inner\r\n     */\r\n    function calculateDistance(startPoint, endPoint) {\r\n      return Math.round(Math.sqrt(Math.pow(endPoint.x - startPoint.x, 2) + Math.pow(endPoint.y - startPoint.y, 2)));\r\n    }\r\n\r\n    /**\r\n     * Calculate the angle of the swipe\r\n     * @param {point} startPoint A point object containing x and y co-ordinates\r\n     * @param {point} endPoint A point object containing x and y co-ordinates\r\n     * @return int\r\n     * @inner\r\n     */\r\n    function calculateAngle(startPoint, endPoint) {\r\n      var x = startPoint.x - endPoint.x;\r\n      var y = endPoint.y - startPoint.y;\r\n      var r = Math.atan2(y, x); //radians\r\n      var angle = Math.round(r * 180 / Math.PI); //degrees\r\n\r\n      //ensure value is positive\r\n      if (angle < 0) {\r\n        angle = 360 - Math.abs(angle);\r\n      }\r\n\r\n      return angle;\r\n    }\r\n\r\n    /**\r\n     * Calculate the direction of the swipe\r\n     * This will also call calculateAngle to get the latest angle of swipe\r\n     * @param {point} startPoint A point object containing x and y co-ordinates\r\n     * @param {point} endPoint A point object containing x and y co-ordinates\r\n     * @return string Either {@link $.fn.swipe.directions.LEFT} / {@link $.fn.swipe.directions.RIGHT} / {@link $.fn.swipe.directions.DOWN} / {@link $.fn.swipe.directions.UP}\r\n     * @see $.fn.swipe.directions\r\n     * @inner\r\n     */\r\n    function calculateDirection(startPoint, endPoint) {\r\n\r\n      if( comparePoints(startPoint, endPoint) ) {\r\n        return NONE;\r\n      }\r\n\r\n      var angle = calculateAngle(startPoint, endPoint);\r\n\r\n      if ((angle <= 45) && (angle >= 0)) {\r\n        return LEFT;\r\n      } else if ((angle <= 360) && (angle >= 315)) {\r\n        return LEFT;\r\n      } else if ((angle >= 135) && (angle <= 225)) {\r\n        return RIGHT;\r\n      } else if ((angle > 45) && (angle < 135)) {\r\n        return DOWN;\r\n      } else {\r\n        return UP;\r\n      }\r\n    }\r\n\r\n\r\n    /**\r\n     * Returns a MS time stamp of the current time\r\n     * @return int\r\n     * @inner\r\n     */\r\n    function getTimeStamp() {\r\n      var now = new Date();\r\n      return now.getTime();\r\n    }\r\n\r\n\r\n\r\n    /**\r\n     * Returns a bounds object with left, right, top and bottom properties for the element specified.\r\n     * @param {DomNode} The DOM node to get the bounds for.\r\n     */\r\n    function getbounds(el) {\r\n      el = $(el);\r\n      var offset = el.offset();\r\n\r\n      var bounds = {\r\n        left: offset.left,\r\n        right: offset.left + el.outerWidth(),\r\n        top: offset.top,\r\n        bottom: offset.top + el.outerHeight()\r\n      }\r\n\r\n      return bounds;\r\n    }\r\n\r\n\r\n    /**\r\n     * Checks if the point object is in the bounds object.\r\n     * @param {object} point A point object.\r\n     * @param {int} point.x The x value of the point.\r\n     * @param {int} point.y The x value of the point.\r\n     * @param {object} bounds The bounds object to test\r\n     * @param {int} bounds.left The leftmost value\r\n     * @param {int} bounds.right The righttmost value\r\n     * @param {int} bounds.top The topmost value\r\n     * @param {int} bounds.bottom The bottommost value\r\n     */\r\n    function isInBounds(point, bounds) {\r\n      return (point.x > bounds.left && point.x < bounds.right && point.y > bounds.top && point.y < bounds.bottom);\r\n    };\r\n\r\n    /**\r\n     * Checks if the two points are equal\r\n     * @param {object} point A point object.\r\n     * @param {object} point B point object.\r\n     * @return true of the points match\r\n     */\r\n    function comparePoints(pointA, pointB) {\r\n      return (pointA.x == pointB.x && pointA.y == pointB.y);\r\n    }\r\n\r\n\r\n  }\r\n\r\n\r\n\r\n\r\n  /**\r\n   * A catch all handler that is triggered for all swipe directions.\r\n   * @name $.fn.swipe#swipe\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {int} direction The direction the user swiped in. See {@link $.fn.swipe.directions}\r\n   * @param {int} distance The distance the user swiped\r\n   * @param {int} duration The duration of the swipe in milliseconds\r\n   * @param {int} fingerCount The number of fingers used. See {@link $.fn.swipe.fingers}\r\n   * @param {object} fingerData The coordinates of fingers in event\r\n   * @param {string} currentDirection The current direction the user is swiping.\r\n   */\r\n\r\n\r\n\r\n\r\n  /**\r\n   * A handler that is triggered for \"left\" swipes.\r\n   * @name $.fn.swipe#swipeLeft\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {int} direction The direction the user swiped in. See {@link $.fn.swipe.directions}\r\n   * @param {int} distance The distance the user swiped\r\n   * @param {int} duration The duration of the swipe in milliseconds\r\n   * @param {int} fingerCount The number of fingers used. See {@link $.fn.swipe.fingers}\r\n   * @param {object} fingerData The coordinates of fingers in event\r\n   * @param {string} currentDirection The current direction the user is swiping.\r\n   */\r\n\r\n  /**\r\n   * A handler that is triggered for \"right\" swipes.\r\n   * @name $.fn.swipe#swipeRight\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {int} direction The direction the user swiped in. See {@link $.fn.swipe.directions}\r\n   * @param {int} distance The distance the user swiped\r\n   * @param {int} duration The duration of the swipe in milliseconds\r\n   * @param {int} fingerCount The number of fingers used. See {@link $.fn.swipe.fingers}\r\n   * @param {object} fingerData The coordinates of fingers in event\r\n   * @param {string} currentDirection The current direction the user is swiping.\r\n   */\r\n\r\n  /**\r\n   * A handler that is triggered for \"up\" swipes.\r\n   * @name $.fn.swipe#swipeUp\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {int} direction The direction the user swiped in. See {@link $.fn.swipe.directions}\r\n   * @param {int} distance The distance the user swiped\r\n   * @param {int} duration The duration of the swipe in milliseconds\r\n   * @param {int} fingerCount The number of fingers used. See {@link $.fn.swipe.fingers}\r\n   * @param {object} fingerData The coordinates of fingers in event\r\n   * @param {string} currentDirection The current direction the user is swiping.\r\n   */\r\n\r\n  /**\r\n   * A handler that is triggered for \"down\" swipes.\r\n   * @name $.fn.swipe#swipeDown\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {int} direction The direction the user swiped in. See {@link $.fn.swipe.directions}\r\n   * @param {int} distance The distance the user swiped\r\n   * @param {int} duration The duration of the swipe in milliseconds\r\n   * @param {int} fingerCount The number of fingers used. See {@link $.fn.swipe.fingers}\r\n   * @param {object} fingerData The coordinates of fingers in event\r\n   * @param {string} currentDirection The current direction the user is swiping.\r\n   */\r\n\r\n  /**\r\n   * A handler triggered for every phase of the swipe. This handler is constantly fired for the duration of the pinch.\r\n   * This is triggered regardless of swipe thresholds.\r\n   * @name $.fn.swipe#swipeStatus\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {string} phase The phase of the swipe event. See {@link $.fn.swipe.phases}\r\n   * @param {string} direction The direction the user swiped in. This is null if the user has yet to move. See {@link $.fn.swipe.directions}\r\n   * @param {int} distance The distance the user swiped. This is 0 if the user has yet to move.\r\n   * @param {int} duration The duration of the swipe in milliseconds\r\n   * @param {int} fingerCount The number of fingers used. See {@link $.fn.swipe.fingers}\r\n   * @param {object} fingerData The coordinates of fingers in event\r\n   * @param {string} currentDirection The current direction the user is swiping.\r\n   */\r\n\r\n  /**\r\n   * A handler triggered for pinch in events.\r\n   * @name $.fn.swipe#pinchIn\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {int} direction The direction the user pinched in. See {@link $.fn.swipe.directions}\r\n   * @param {int} distance The distance the user pinched\r\n   * @param {int} duration The duration of the swipe in milliseconds\r\n   * @param {int} fingerCount The number of fingers used. See {@link $.fn.swipe.fingers}\r\n   * @param {int} zoom The zoom/scale level the user pinched too, 0-1.\r\n   * @param {object} fingerData The coordinates of fingers in event\r\n   */\r\n\r\n  /**\r\n   * A handler triggered for pinch out events.\r\n   * @name $.fn.swipe#pinchOut\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {int} direction The direction the user pinched in. See {@link $.fn.swipe.directions}\r\n   * @param {int} distance The distance the user pinched\r\n   * @param {int} duration The duration of the swipe in milliseconds\r\n   * @param {int} fingerCount The number of fingers used. See {@link $.fn.swipe.fingers}\r\n   * @param {int} zoom The zoom/scale level the user pinched too, 0-1.\r\n   * @param {object} fingerData The coordinates of fingers in event\r\n   */\r\n\r\n  /**\r\n   * A handler triggered for all pinch events. This handler is constantly fired for the duration of the pinch. This is triggered regardless of thresholds.\r\n   * @name $.fn.swipe#pinchStatus\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {int} direction The direction the user pinched in. See {@link $.fn.swipe.directions}\r\n   * @param {int} distance The distance the user pinched\r\n   * @param {int} duration The duration of the swipe in milliseconds\r\n   * @param {int} fingerCount The number of fingers used. See {@link $.fn.swipe.fingers}\r\n   * @param {int} zoom The zoom/scale level the user pinched too, 0-1.\r\n   * @param {object} fingerData The coordinates of fingers in event\r\n   */\r\n\r\n  /**\r\n   * A click handler triggered when a user simply clicks, rather than swipes on an element.\r\n   * This is deprecated since version 1.6.2, any assignment to click will be assigned to the tap handler.\r\n   * You cannot use <code>on</code> to bind to this event as the default jQ <code>click</code> event will be triggered.\r\n   * Use the <code>tap</code> event instead.\r\n   * @name $.fn.swipe#click\r\n   * @event\r\n   * @deprecated since version 1.6.2, please use {@link $.fn.swipe#tap} instead\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {DomObject} target The element clicked on.\r\n   */\r\n\r\n  /**\r\n   * A click / tap handler triggered when a user simply clicks or taps, rather than swipes on an element.\r\n   * @name $.fn.swipe#tap\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {DomObject} target The element clicked on.\r\n   */\r\n\r\n  /**\r\n   * A double tap handler triggered when a user double clicks or taps on an element.\r\n   * You can set the time delay for a double tap with the {@link $.fn.swipe.defaults#doubleTapThreshold} property.\r\n   * Note: If you set both <code>doubleTap</code> and <code>tap</code> handlers, the <code>tap</code> event will be delayed by the <code>doubleTapThreshold</code>\r\n   * as the script needs to check if its a double tap.\r\n   * @name $.fn.swipe#doubleTap\r\n   * @see  $.fn.swipe.defaults#doubleTapThreshold\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {DomObject} target The element clicked on.\r\n   */\r\n\r\n  /**\r\n   * A long tap handler triggered once a tap has been release if the tap was longer than the longTapThreshold.\r\n   * You can set the time delay for a long tap with the {@link $.fn.swipe.defaults#longTapThreshold} property.\r\n   * @name $.fn.swipe#longTap\r\n   * @see  $.fn.swipe.defaults#longTapThreshold\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {DomObject} target The element clicked on.\r\n   */\r\n\r\n  /**\r\n   * A hold tap handler triggered as soon as the longTapThreshold is reached\r\n   * You can set the time delay for a long tap with the {@link $.fn.swipe.defaults#longTapThreshold} property.\r\n   * @name $.fn.swipe#hold\r\n   * @see  $.fn.swipe.defaults#longTapThreshold\r\n   * @event\r\n   * @default null\r\n   * @param {EventObject} event The original event object\r\n   * @param {DomObject} target The element clicked on.\r\n   */\r\n\r\n}));\r\n\n",
    "(function (global, factory) {\r\n    typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\r\n        typeof define === 'function' && define.amd ? define('underscore', factory) :\r\n            (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (function () {\r\n                var current = global._;\r\n                var exports = global._ = factory();\r\n                exports.noConflict = function () { global._ = current; return exports; };\r\n            }()));\r\n}(this, (function () {\r\n    //     Underscore.js 1.13.0-2\r\n    //     https://underscorejs.org\r\n    //     (c) 2009-2020 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\r\n    //     Underscore may be freely distributed under the MIT license.\r\n\r\n    // Current version.\r\n    var VERSION = '1.13.0-2';\r\n\r\n    // Establish the root object, `window` (`self`) in the browser, `global`\r\n    // on the server, or `this` in some virtual machines. We use `self`\r\n    // instead of `window` for `WebWorker` support.\r\n    var root = typeof self == 'object' && self.self === self && self ||\r\n        typeof global == 'object' && global.global === global && global ||\r\n        Function('return this')() ||\r\n        {};\r\n\r\n    // Save bytes in the minified (but not gzipped) version:\r\n    var ArrayProto = Array.prototype, ObjProto = Object.prototype;\r\n    var SymbolProto = typeof Symbol !== 'undefined' ? Symbol.prototype : null;\r\n\r\n    // Create quick reference variables for speed access to core prototypes.\r\n    var push = ArrayProto.push,\r\n        slice = ArrayProto.slice,\r\n        toString = ObjProto.toString,\r\n        hasOwnProperty = ObjProto.hasOwnProperty;\r\n\r\n    // Modern feature detection.\r\n    var supportsArrayBuffer = typeof ArrayBuffer !== 'undefined',\r\n        supportsDataView = typeof DataView !== 'undefined';\r\n\r\n    // All **ECMAScript 5+** native function implementations that we hope to use\r\n    // are declared here.\r\n    var nativeIsArray = Array.isArray,\r\n        nativeKeys = Object.keys,\r\n        nativeCreate = Object.create,\r\n        nativeIsView = supportsArrayBuffer && ArrayBuffer.isView;\r\n\r\n    // Create references to these builtin functions because we override them.\r\n    var _isNaN = isNaN,\r\n        _isFinite = isFinite;\r\n\r\n    // Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed.\r\n    var hasEnumBug = !{ toString: null }.propertyIsEnumerable('toString');\r\n    var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString',\r\n        'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString'];\r\n\r\n    // The largest integer that can be represented exactly.\r\n    var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1;\r\n\r\n    // Some functions take a variable number of arguments, or a few expected\r\n    // arguments at the beginning and then a variable number of values to operate\r\n    // on. This helper accumulates all remaining arguments past the function�s\r\n    // argument length (or an explicit `startIndex`), into an array that becomes\r\n    // the last argument. Similar to ES6�s \"rest parameter\".\r\n    function restArguments(func, startIndex) {\r\n        startIndex = startIndex == null ? func.length - 1 : +startIndex;\r\n        return function () {\r\n            var length = Math.max(arguments.length - startIndex, 0),\r\n                rest = Array(length),\r\n                index = 0;\r\n            for (; index < length; index++) {\r\n                rest[index] = arguments[index + startIndex];\r\n            }\r\n            switch (startIndex) {\r\n                case 0: return func.call(this, rest);\r\n                case 1: return func.call(this, arguments[0], rest);\r\n                case 2: return func.call(this, arguments[0], arguments[1], rest);\r\n            }\r\n            var args = Array(startIndex + 1);\r\n            for (index = 0; index < startIndex; index++) {\r\n                args[index] = arguments[index];\r\n            }\r\n            args[startIndex] = rest;\r\n            return func.apply(this, args);\r\n        };\r\n    }\r\n\r\n    // Is a given variable an object?\r\n    function isObject(obj) {\r\n        var type = typeof obj;\r\n        return type === 'function' || type === 'object' && !!obj;\r\n    }\r\n\r\n    // Is a given value equal to null?\r\n    function isNull(obj) {\r\n        return obj === null;\r\n    }\r\n\r\n    // Is a given variable undefined?\r\n    function isUndefined(obj) {\r\n        return obj === void 0;\r\n    }\r\n\r\n    // Is a given value a boolean?\r\n    function isBoolean(obj) {\r\n        return obj === true || obj === false || toString.call(obj) === '[object Boolean]';\r\n    }\r\n\r\n    // Is a given value a DOM element?\r\n    function isElement(obj) {\r\n        return !!(obj && obj.nodeType === 1);\r\n    }\r\n\r\n    // Internal function for creating a `toString`-based type tester.\r\n    function tagTester(name) {\r\n        var tag = '[object ' + name + ']';\r\n        return function (obj) {\r\n            return toString.call(obj) === tag;\r\n        };\r\n    }\r\n\r\n    var isString = tagTester('String');\r\n\r\n    var isNumber = tagTester('Number');\r\n\r\n    var isDate = tagTester('Date');\r\n\r\n    var isRegExp = tagTester('RegExp');\r\n\r\n    var isError = tagTester('Error');\r\n\r\n    var isSymbol = tagTester('Symbol');\r\n\r\n    var isArrayBuffer = tagTester('ArrayBuffer');\r\n\r\n    var isFunction = tagTester('Function');\r\n\r\n    // Optimize `isFunction` if appropriate. Work around some `typeof` bugs in old\r\n    // v8, IE 11 (#1621), Safari 8 (#1929), and PhantomJS (#2236).\r\n    var nodelist = root.document && root.document.childNodes;\r\n    if (typeof /./ != 'function' && typeof Int8Array != 'object' && typeof nodelist != 'function') {\r\n        isFunction = function (obj) {\r\n            return typeof obj == 'function' || false;\r\n        };\r\n    }\r\n\r\n    var isFunction$1 = isFunction;\r\n\r\n    var hasObjectTag = tagTester('Object');\r\n\r\n    // In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`.\r\n    // In IE 11, the most common among them, this problem also applies to\r\n    // `Map`, `WeakMap` and `Set`.\r\n    var hasStringTagBug = (\r\n        supportsDataView && hasObjectTag(new DataView(new ArrayBuffer(8)))\r\n    ),\r\n        isIE11 = (typeof Map !== 'undefined' && hasObjectTag(new Map));\r\n\r\n    var isDataView = tagTester('DataView');\r\n\r\n    // In IE 10 - Edge 13, we need a different heuristic\r\n    // to determine whether an object is a `DataView`.\r\n    function ie10IsDataView(obj) {\r\n        return obj != null && isFunction$1(obj.getInt8) && isArrayBuffer(obj.buffer);\r\n    }\r\n\r\n    var isDataView$1 = (hasStringTagBug ? ie10IsDataView : isDataView);\r\n\r\n    // Is a given value an array?\r\n    // Delegates to ECMA5's native `Array.isArray`.\r\n    var isArray = nativeIsArray || tagTester('Array');\r\n\r\n    // Internal function to check whether `key` is an own property name of `obj`.\r\n    function has$1(obj, key) {\r\n        return obj != null && hasOwnProperty.call(obj, key);\r\n    }\r\n\r\n    var isArguments = tagTester('Arguments');\r\n\r\n    // Define a fallback version of the method in browsers (ahem, IE < 9), where\r\n    // there isn't any inspectable \"Arguments\" type.\r\n    (function () {\r\n        if (!isArguments(arguments)) {\r\n            isArguments = function (obj) {\r\n                return has$1(obj, 'callee');\r\n            };\r\n        }\r\n    }());\r\n\r\n    var isArguments$1 = isArguments;\r\n\r\n    // Is a given object a finite number?\r\n    function isFinite$1(obj) {\r\n        return !isSymbol(obj) && _isFinite(obj) && !isNaN(parseFloat(obj));\r\n    }\r\n\r\n    // Is the given value `NaN`?\r\n    function isNaN$1(obj) {\r\n        return isNumber(obj) && _isNaN(obj);\r\n    }\r\n\r\n    // Predicate-generating function. Often useful outside of Underscore.\r\n    function constant(value) {\r\n        return function () {\r\n            return value;\r\n        };\r\n    }\r\n\r\n    // Common internal logic for `isArrayLike` and `isBufferLike`.\r\n    function createSizePropertyCheck(getSizeProperty) {\r\n        return function (collection) {\r\n            var sizeProperty = getSizeProperty(collection);\r\n            return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= MAX_ARRAY_INDEX;\r\n        }\r\n    }\r\n\r\n    // Internal helper to generate a function to obtain property `key` from `obj`.\r\n    function shallowProperty(key) {\r\n        return function (obj) {\r\n            return obj == null ? void 0 : obj[key];\r\n        };\r\n    }\r\n\r\n    // Internal helper to obtain the `byteLength` property of an object.\r\n    var getByteLength = shallowProperty('byteLength');\r\n\r\n    // Internal helper to determine whether we should spend extensive checks against\r\n    // `ArrayBuffer` et al.\r\n    var isBufferLike = createSizePropertyCheck(getByteLength);\r\n\r\n    // Is a given value a typed array?\r\n    var typedArrayPattern = /\\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\\]/;\r\n    function isTypedArray(obj) {\r\n        // `ArrayBuffer.isView` is the most future-proof, so use it when available.\r\n        // Otherwise, fall back on the above regular expression.\r\n        return nativeIsView ? (nativeIsView(obj) && !isDataView$1(obj)) :\r\n            isBufferLike(obj) && typedArrayPattern.test(toString.call(obj));\r\n    }\r\n\r\n    var isTypedArray$1 = supportsArrayBuffer ? isTypedArray : constant(false);\r\n\r\n    // Internal helper to obtain the `length` property of an object.\r\n    var getLength = shallowProperty('length');\r\n\r\n    // Internal helper to create a simple lookup structure.\r\n    // `collectNonEnumProps` used to depend on `_.contains`, but this led to\r\n    // circular imports. `emulatedSet` is a one-off solution that only works for\r\n    // arrays of strings.\r\n    function emulatedSet(keys) {\r\n        var hash = {};\r\n        for (var l = keys.length, i = 0; i < l; ++i) hash[keys[i]] = true;\r\n        return {\r\n            contains: function (key) { return hash[key]; },\r\n            push: function (key) {\r\n                hash[key] = true;\r\n                return keys.push(key);\r\n            }\r\n        };\r\n    }\r\n\r\n    // Internal helper. Checks `keys` for the presence of keys in IE < 9 that won't\r\n    // be iterated by `for key in ...` and thus missed. Extends `keys` in place if\r\n    // needed.\r\n    function collectNonEnumProps(obj, keys) {\r\n        keys = emulatedSet(keys);\r\n        var nonEnumIdx = nonEnumerableProps.length;\r\n        var constructor = obj.constructor;\r\n        var proto = isFunction$1(constructor) && constructor.prototype || ObjProto;\r\n\r\n        // Constructor is a special case.\r\n        var prop = 'constructor';\r\n        if (has$1(obj, prop) && !keys.contains(prop)) keys.push(prop);\r\n\r\n        while (nonEnumIdx--) {\r\n            prop = nonEnumerableProps[nonEnumIdx];\r\n            if (prop in obj && obj[prop] !== proto[prop] && !keys.contains(prop)) {\r\n                keys.push(prop);\r\n            }\r\n        }\r\n    }\r\n\r\n    // Retrieve the names of an object's own properties.\r\n    // Delegates to **ECMAScript 5**'s native `Object.keys`.\r\n    function keys(obj) {\r\n        if (!isObject(obj)) return [];\r\n        if (nativeKeys) return nativeKeys(obj);\r\n        var keys = [];\r\n        for (var key in obj) if (has$1(obj, key)) keys.push(key);\r\n        // Ahem, IE < 9.\r\n        if (hasEnumBug) collectNonEnumProps(obj, keys);\r\n        return keys;\r\n    }\r\n\r\n    // Is a given array, string, or object empty?\r\n    // An \"empty\" object has no enumerable own-properties.\r\n    function isEmpty(obj) {\r\n        if (obj == null) return true;\r\n        // Skip the more expensive `toString`-based type checks if `obj` has no\r\n        // `.length`.\r\n        var length = getLength(obj);\r\n        if (typeof length == 'number' && (\r\n            isArray(obj) || isString(obj) || isArguments$1(obj)\r\n        )) return length === 0;\r\n        return getLength(keys(obj)) === 0;\r\n    }\r\n\r\n    // Returns whether an object has a given set of `key:value` pairs.\r\n    function isMatch(object, attrs) {\r\n        var _keys = keys(attrs), length = _keys.length;\r\n        if (object == null) return !length;\r\n        var obj = Object(object);\r\n        for (var i = 0; i < length; i++) {\r\n            var key = _keys[i];\r\n            if (attrs[key] !== obj[key] || !(key in obj)) return false;\r\n        }\r\n        return true;\r\n    }\r\n\r\n    // If Underscore is called as a function, it returns a wrapped object that can\r\n    // be used OO-style. This wrapper holds altered versions of all functions added\r\n    // through `_.mixin`. Wrapped objects may be chained.\r\n    function _$1(obj) {\r\n        if (obj instanceof _$1) return obj;\r\n        if (!(this instanceof _$1)) return new _$1(obj);\r\n        this._wrapped = obj;\r\n    }\r\n\r\n    _$1.VERSION = VERSION;\r\n\r\n    // Extracts the result from a wrapped and chained object.\r\n    _$1.prototype.value = function () {\r\n        return this._wrapped;\r\n    };\r\n\r\n    // Provide unwrapping proxies for some methods used in engine operations\r\n    // such as arithmetic and JSON stringification.\r\n    _$1.prototype.valueOf = _$1.prototype.toJSON = _$1.prototype.value;\r\n\r\n    _$1.prototype.toString = function () {\r\n        return String(this._wrapped);\r\n    };\r\n\r\n    // Internal function to wrap or shallow-copy an ArrayBuffer,\r\n    // typed array or DataView to a new view, reusing the buffer.\r\n    function toBufferView(bufferSource) {\r\n        return new Uint8Array(\r\n            bufferSource.buffer || bufferSource,\r\n            bufferSource.byteOffset || 0,\r\n            getByteLength(bufferSource)\r\n        );\r\n    }\r\n\r\n    // We use this string twice, so give it a name for minification.\r\n    var tagDataView = '[object DataView]';\r\n\r\n    // Internal recursive comparison function for `_.isEqual`.\r\n    function eq(a, b, aStack, bStack) {\r\n        // Identical objects are equal. `0 === -0`, but they aren't identical.\r\n        // See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal).\r\n        if (a === b) return a !== 0 || 1 / a === 1 / b;\r\n        // `null` or `undefined` only equal to itself (strict comparison).\r\n        if (a == null || b == null) return false;\r\n        // `NaN`s are equivalent, but non-reflexive.\r\n        if (a !== a) return b !== b;\r\n        // Exhaust primitive checks\r\n        var type = typeof a;\r\n        if (type !== 'function' && type !== 'object' && typeof b != 'object') return false;\r\n        return deepEq(a, b, aStack, bStack);\r\n    }\r\n\r\n    // Internal recursive comparison function for `_.isEqual`.\r\n    function deepEq(a, b, aStack, bStack) {\r\n        // Unwrap any wrapped objects.\r\n        if (a instanceof _$1) a = a._wrapped;\r\n        if (b instanceof _$1) b = b._wrapped;\r\n        // Compare `[[Class]]` names.\r\n        var className = toString.call(a);\r\n        if (className !== toString.call(b)) return false;\r\n        // Work around a bug in IE 10 - Edge 13.\r\n        if (hasStringTagBug && className == '[object Object]' && isDataView$1(a)) {\r\n            if (!isDataView$1(b)) return false;\r\n            className = tagDataView;\r\n        }\r\n        switch (className) {\r\n            // These types are compared by value.\r\n            case '[object RegExp]':\r\n            // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')\r\n            case '[object String]':\r\n                // Primitives and their corresponding object wrappers are equivalent; thus, `\"5\"` is\r\n                // equivalent to `new String(\"5\")`.\r\n                return '' + a === '' + b;\r\n            case '[object Number]':\r\n                // `NaN`s are equivalent, but non-reflexive.\r\n                // Object(NaN) is equivalent to NaN.\r\n                if (+a !== +a) return +b !== +b;\r\n                // An `egal` comparison is performed for other numeric values.\r\n                return +a === 0 ? 1 / +a === 1 / b : +a === +b;\r\n            case '[object Date]':\r\n            case '[object Boolean]':\r\n                // Coerce dates and booleans to numeric primitive values. Dates are compared by their\r\n                // millisecond representations. Note that invalid dates with millisecond representations\r\n                // of `NaN` are not equivalent.\r\n                return +a === +b;\r\n            case '[object Symbol]':\r\n                return SymbolProto.valueOf.call(a) === SymbolProto.valueOf.call(b);\r\n            case '[object ArrayBuffer]':\r\n            case tagDataView:\r\n                // Coerce to typed array so we can fall through.\r\n                return deepEq(toBufferView(a), toBufferView(b), aStack, bStack);\r\n        }\r\n\r\n        var areArrays = className === '[object Array]';\r\n        if (!areArrays && isTypedArray$1(a)) {\r\n            var byteLength = getByteLength(a);\r\n            if (byteLength !== getByteLength(b)) return false;\r\n            if (a.buffer === b.buffer && a.byteOffset === b.byteOffset) return true;\r\n            areArrays = true;\r\n        }\r\n        if (!areArrays) {\r\n            if (typeof a != 'object' || typeof b != 'object') return false;\r\n\r\n            // Objects with different constructors are not equivalent, but `Object`s or `Array`s\r\n            // from different frames are.\r\n            var aCtor = a.constructor, bCtor = b.constructor;\r\n            if (aCtor !== bCtor && !(isFunction$1(aCtor) && aCtor instanceof aCtor &&\r\n                isFunction$1(bCtor) && bCtor instanceof bCtor)\r\n                && ('constructor' in a && 'constructor' in b)) {\r\n                return false;\r\n            }\r\n        }\r\n        // Assume equality for cyclic structures. The algorithm for detecting cyclic\r\n        // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.\r\n\r\n        // Initializing stack of traversed objects.\r\n        // It's done here since we only need them for objects and arrays comparison.\r\n        aStack = aStack || [];\r\n        bStack = bStack || [];\r\n        var length = aStack.length;\r\n        while (length--) {\r\n            // Linear search. Performance is inversely proportional to the number of\r\n            // unique nested structures.\r\n            if (aStack[length] === a) return bStack[length] === b;\r\n        }\r\n\r\n        // Add the first object to the stack of traversed objects.\r\n        aStack.push(a);\r\n        bStack.push(b);\r\n\r\n        // Recursively compare objects and arrays.\r\n        if (areArrays) {\r\n            // Compare array lengths to determine if a deep comparison is necessary.\r\n            length = a.length;\r\n            if (length !== b.length) return false;\r\n            // Deep compare the contents, ignoring non-numeric properties.\r\n            while (length--) {\r\n                if (!eq(a[length], b[length], aStack, bStack)) return false;\r\n            }\r\n        } else {\r\n            // Deep compare objects.\r\n            var _keys = keys(a), key;\r\n            length = _keys.length;\r\n            // Ensure that both objects contain the same number of properties before comparing deep equality.\r\n            if (keys(b).length !== length) return false;\r\n            while (length--) {\r\n                // Deep compare each member\r\n                key = _keys[length];\r\n                if (!(has$1(b, key) && eq(a[key], b[key], aStack, bStack))) return false;\r\n            }\r\n        }\r\n        // Remove the first object from the stack of traversed objects.\r\n        aStack.pop();\r\n        bStack.pop();\r\n        return true;\r\n    }\r\n\r\n    // Perform a deep comparison to check if two objects are equal.\r\n    function isEqual(a, b) {\r\n        return eq(a, b);\r\n    }\r\n\r\n    // Retrieve all the enumerable property names of an object.\r\n    function allKeys(obj) {\r\n        if (!isObject(obj)) return [];\r\n        var keys = [];\r\n        for (var key in obj) keys.push(key);\r\n        // Ahem, IE < 9.\r\n        if (hasEnumBug) collectNonEnumProps(obj, keys);\r\n        return keys;\r\n    }\r\n\r\n    // Since the regular `Object.prototype.toString` type tests don't work for\r\n    // some types in IE 11, we use a fingerprinting heuristic instead, based\r\n    // on the methods. It's not great, but it's the best we got.\r\n    // The fingerprint method lists are defined below.\r\n    function ie11fingerprint(methods) {\r\n        var length = getLength(methods);\r\n        return function (obj) {\r\n            if (obj == null) return false;\r\n            // `Map`, `WeakMap` and `Set` have no enumerable keys.\r\n            var keys = allKeys(obj);\r\n            if (getLength(keys)) return false;\r\n            for (var i = 0; i < length; i++) {\r\n                if (!isFunction$1(obj[methods[i]])) return false;\r\n            }\r\n            // If we are testing against `WeakMap`, we need to ensure that\r\n            // `obj` doesn't have a `forEach` method in order to distinguish\r\n            // it from a regular `Map`.\r\n            return methods !== weakMapMethods || !isFunction$1(obj[forEachName]);\r\n        };\r\n    }\r\n\r\n    // In the interest of compact minification, we write\r\n    // each string in the fingerprints only once.\r\n    var forEachName = 'forEach',\r\n        hasName = 'has',\r\n        commonInit = ['clear', 'delete'],\r\n        mapTail = ['get', hasName, 'set'];\r\n\r\n    // `Map`, `WeakMap` and `Set` each have slightly different\r\n    // combinations of the above sublists.\r\n    var mapMethods = commonInit.concat(forEachName, mapTail),\r\n        weakMapMethods = commonInit.concat(mapTail),\r\n        setMethods = ['add'].concat(commonInit, forEachName, hasName);\r\n\r\n    var isMap = isIE11 ? ie11fingerprint(mapMethods) : tagTester('Map');\r\n\r\n    var isWeakMap = isIE11 ? ie11fingerprint(weakMapMethods) : tagTester('WeakMap');\r\n\r\n    var isSet = isIE11 ? ie11fingerprint(setMethods) : tagTester('Set');\r\n\r\n    var isWeakSet = tagTester('WeakSet');\r\n\r\n    // Retrieve the values of an object's properties.\r\n    function values(obj) {\r\n        var _keys = keys(obj);\r\n        var length = _keys.length;\r\n        var values = Array(length);\r\n        for (var i = 0; i < length; i++) {\r\n            values[i] = obj[_keys[i]];\r\n        }\r\n        return values;\r\n    }\r\n\r\n    // Convert an object into a list of `[key, value]` pairs.\r\n    // The opposite of `_.object` with one argument.\r\n    function pairs(obj) {\r\n        var _keys = keys(obj);\r\n        var length = _keys.length;\r\n        var pairs = Array(length);\r\n        for (var i = 0; i < length; i++) {\r\n            pairs[i] = [_keys[i], obj[_keys[i]]];\r\n        }\r\n        return pairs;\r\n    }\r\n\r\n    // Invert the keys and values of an object. The values must be serializable.\r\n    function invert(obj) {\r\n        var result = {};\r\n        var _keys = keys(obj);\r\n        for (var i = 0, length = _keys.length; i < length; i++) {\r\n            result[obj[_keys[i]]] = _keys[i];\r\n        }\r\n        return result;\r\n    }\r\n\r\n    // Return a sorted list of the function names available on the object.\r\n    function functions(obj) {\r\n        var names = [];\r\n        for (var key in obj) {\r\n            if (isFunction$1(obj[key])) names.push(key);\r\n        }\r\n        return names.sort();\r\n    }\r\n\r\n    // An internal function for creating assigner functions.\r\n    function createAssigner(keysFunc, defaults) {\r\n        return function (obj) {\r\n            var length = arguments.length;\r\n            if (defaults) obj = Object(obj);\r\n            if (length < 2 || obj == null) return obj;\r\n            for (var index = 1; index < length; index++) {\r\n                var source = arguments[index],\r\n                    keys = keysFunc(source),\r\n                    l = keys.length;\r\n                for (var i = 0; i < l; i++) {\r\n                    var key = keys[i];\r\n                    if (!defaults || obj[key] === void 0) obj[key] = source[key];\r\n                }\r\n            }\r\n            return obj;\r\n        };\r\n    }\r\n\r\n    // Extend a given object with all the properties in passed-in object(s).\r\n    var extend = createAssigner(allKeys);\r\n\r\n    // Assigns a given object with all the own properties in the passed-in\r\n    // object(s).\r\n    // (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)\r\n    var extendOwn = createAssigner(keys);\r\n\r\n    // Fill in a given object with default properties.\r\n    var defaults = createAssigner(allKeys, true);\r\n\r\n    // Create a naked function reference for surrogate-prototype-swapping.\r\n    function ctor() {\r\n        return function () { };\r\n    }\r\n\r\n    // An internal function for creating a new object that inherits from another.\r\n    function baseCreate(prototype) {\r\n        if (!isObject(prototype)) return {};\r\n        if (nativeCreate) return nativeCreate(prototype);\r\n        var Ctor = ctor();\r\n        Ctor.prototype = prototype;\r\n        var result = new Ctor;\r\n        Ctor.prototype = null;\r\n        return result;\r\n    }\r\n\r\n    // Creates an object that inherits from the given prototype object.\r\n    // If additional properties are provided then they will be added to the\r\n    // created object.\r\n    function create(prototype, props) {\r\n        var result = baseCreate(prototype);\r\n        if (props) extendOwn(result, props);\r\n        return result;\r\n    }\r\n\r\n    // Create a (shallow-cloned) duplicate of an object.\r\n    function clone(obj) {\r\n        if (!isObject(obj)) return obj;\r\n        return isArray(obj) ? obj.slice() : extend({}, obj);\r\n    }\r\n\r\n    // Invokes `interceptor` with the `obj` and then returns `obj`.\r\n    // The primary purpose of this method is to \"tap into\" a method chain, in\r\n    // order to perform operations on intermediate results within the chain.\r\n    function tap(obj, interceptor) {\r\n        interceptor(obj);\r\n        return obj;\r\n    }\r\n\r\n    // Normalize a (deep) property `path` to array.\r\n    // Like `_.iteratee`, this function can be customized.\r\n    function toPath$1(path) {\r\n        return isArray(path) ? path : [path];\r\n    }\r\n    _$1.toPath = toPath$1;\r\n\r\n    // Internal wrapper for `_.toPath` to enable minification.\r\n    // Similar to `cb` for `_.iteratee`.\r\n    function toPath(path) {\r\n        return _$1.toPath(path);\r\n    }\r\n\r\n    // Internal function to obtain a nested property in `obj` along `path`.\r\n    function deepGet(obj, path) {\r\n        var length = path.length;\r\n        for (var i = 0; i < length; i++) {\r\n            if (obj == null) return void 0;\r\n            obj = obj[path[i]];\r\n        }\r\n        return length ? obj : void 0;\r\n    }\r\n\r\n    // Get the value of the (deep) property on `path` from `object`.\r\n    // If any property in `path` does not exist or if the value is\r\n    // `undefined`, return `defaultValue` instead.\r\n    // The `path` is normalized through `_.toPath`.\r\n    function get(object, path, defaultValue) {\r\n        var value = deepGet(object, toPath(path));\r\n        return isUndefined(value) ? defaultValue : value;\r\n    }\r\n\r\n    // Shortcut function for checking if an object has a given property directly on\r\n    // itself (in other words, not on a prototype). Unlike the internal `has`\r\n    // function, this public version can also traverse nested properties.\r\n    function has(obj, path) {\r\n        path = toPath(path);\r\n        var length = path.length;\r\n        for (var i = 0; i < length; i++) {\r\n            var key = path[i];\r\n            if (!has$1(obj, key)) return false;\r\n            obj = obj[key];\r\n        }\r\n        return !!length;\r\n    }\r\n\r\n    // Keep the identity function around for default iteratees.\r\n    function identity(value) {\r\n        return value;\r\n    }\r\n\r\n    // Returns a predicate for checking whether an object has a given set of\r\n    // `key:value` pairs.\r\n    function matcher(attrs) {\r\n        attrs = extendOwn({}, attrs);\r\n        return function (obj) {\r\n            return isMatch(obj, attrs);\r\n        };\r\n    }\r\n\r\n    // Creates a function that, when passed an object, will traverse that object�s\r\n    // properties down the given `path`, specified as an array of keys or indices.\r\n    function property(path) {\r\n        path = toPath(path);\r\n        return function (obj) {\r\n            return deepGet(obj, path);\r\n        };\r\n    }\r\n\r\n    // Internal function that returns an efficient (for current engines) version\r\n    // of the passed-in callback, to be repeatedly applied in other Underscore\r\n    // functions.\r\n    function optimizeCb(func, context, argCount) {\r\n        if (context === void 0) return func;\r\n        switch (argCount == null ? 3 : argCount) {\r\n            case 1: return function (value) {\r\n                return func.call(context, value);\r\n            };\r\n            // The 2-argument case is omitted because we�re not using it.\r\n            case 3: return function (value, index, collection) {\r\n                return func.call(context, value, index, collection);\r\n            };\r\n            case 4: return function (accumulator, value, index, collection) {\r\n                return func.call(context, accumulator, value, index, collection);\r\n            };\r\n        }\r\n        return function () {\r\n            return func.apply(context, arguments);\r\n        };\r\n    }\r\n\r\n    // An internal function to generate callbacks that can be applied to each\r\n    // element in a collection, returning the desired result � either `_.identity`,\r\n    // an arbitrary callback, a property matcher, or a property accessor.\r\n    function baseIteratee(value, context, argCount) {\r\n        if (value == null) return identity;\r\n        if (isFunction$1(value)) return optimizeCb(value, context, argCount);\r\n        if (isObject(value) && !isArray(value)) return matcher(value);\r\n        return property(value);\r\n    }\r\n\r\n    // External wrapper for our callback generator. Users may customize\r\n    // `_.iteratee` if they want additional predicate/iteratee shorthand styles.\r\n    // This abstraction hides the internal-only `argCount` argument.\r\n    function iteratee(value, context) {\r\n        return baseIteratee(value, context, Infinity);\r\n    }\r\n    _$1.iteratee = iteratee;\r\n\r\n    // The function we call internally to generate a callback. It invokes\r\n    // `_.iteratee` if overridden, otherwise `baseIteratee`.\r\n    function cb(value, context, argCount) {\r\n        if (_$1.iteratee !== iteratee) return _$1.iteratee(value, context);\r\n        return baseIteratee(value, context, argCount);\r\n    }\r\n\r\n    // Returns the results of applying the `iteratee` to each element of `obj`.\r\n    // In contrast to `_.map` it returns an object.\r\n    function mapObject(obj, iteratee, context) {\r\n        iteratee = cb(iteratee, context);\r\n        var _keys = keys(obj),\r\n            length = _keys.length,\r\n            results = {};\r\n        for (var index = 0; index < length; index++) {\r\n            var currentKey = _keys[index];\r\n            results[currentKey] = iteratee(obj[currentKey], currentKey, obj);\r\n        }\r\n        return results;\r\n    }\r\n\r\n    // Predicate-generating function. Often useful outside of Underscore.\r\n    function noop() { }\r\n\r\n    // Generates a function for a given object that returns a given property.\r\n    function propertyOf(obj) {\r\n        if (obj == null) return noop;\r\n        return function (path) {\r\n            return get(obj, path);\r\n        };\r\n    }\r\n\r\n    // Run a function **n** times.\r\n    function times(n, iteratee, context) {\r\n        var accum = Array(Math.max(0, n));\r\n        iteratee = optimizeCb(iteratee, context, 1);\r\n        for (var i = 0; i < n; i++) accum[i] = iteratee(i);\r\n        return accum;\r\n    }\r\n\r\n    // Return a random integer between `min` and `max` (inclusive).\r\n    function random(min, max) {\r\n        if (max == null) {\r\n            max = min;\r\n            min = 0;\r\n        }\r\n        return min + Math.floor(Math.random() * (max - min + 1));\r\n    }\r\n\r\n    // A (possibly faster) way to get the current timestamp as an integer.\r\n    var now = Date.now || function () {\r\n        return new Date().getTime();\r\n    };\r\n\r\n    // Internal helper to generate functions for escaping and unescaping strings\r\n    // to/from HTML interpolation.\r\n    function createEscaper(map) {\r\n        var escaper = function (match) {\r\n            return map[match];\r\n        };\r\n        // Regexes for identifying a key that needs to be escaped.\r\n        var source = '(?:' + keys(map).join('|') + ')';\r\n        var testRegexp = RegExp(source);\r\n        var replaceRegexp = RegExp(source, 'g');\r\n        return function (string) {\r\n            string = string == null ? '' : '' + string;\r\n            return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;\r\n        };\r\n    }\r\n\r\n    // Internal list of HTML entities for escaping.\r\n    var escapeMap = {\r\n        '&': '&amp;',\r\n        '<': '&lt;',\r\n        '>': '&gt;',\r\n        '\"': '&quot;',\r\n        \"'\": '&#x27;',\r\n        '`': '&#x60;'\r\n    };\r\n\r\n    // Function for escaping strings to HTML interpolation.\r\n    var _escape = createEscaper(escapeMap);\r\n\r\n    // Internal list of HTML entities for unescaping.\r\n    var unescapeMap = invert(escapeMap);\r\n\r\n    // Function for unescaping strings from HTML interpolation.\r\n    var _unescape = createEscaper(unescapeMap);\r\n\r\n    // By default, Underscore uses ERB-style template delimiters. Change the\r\n    // following template settings to use alternative delimiters.\r\n    var templateSettings = _$1.templateSettings = {\r\n        evaluate: /<%([\\s\\S]+?)%>/g,\r\n        interpolate: /<%=([\\s\\S]+?)%>/g,\r\n        escape: /<%-([\\s\\S]+?)%>/g\r\n    };\r\n\r\n    // When customizing `_.templateSettings`, if you don't want to define an\r\n    // interpolation, evaluation or escaping regex, we need one that is\r\n    // guaranteed not to match.\r\n    var noMatch = /(.)^/;\r\n\r\n    // Certain characters need to be escaped so that they can be put into a\r\n    // string literal.\r\n    var escapes = {\r\n        \"'\": \"'\",\r\n        '\\\\': '\\\\',\r\n        '\\r': 'r',\r\n        '\\n': 'n',\r\n        '\\u2028': 'u2028',\r\n        '\\u2029': 'u2029'\r\n    };\r\n\r\n    var escapeRegExp = /\\\\|'|\\r|\\n|\\u2028|\\u2029/g;\r\n\r\n    function escapeChar(match) {\r\n        return '\\\\' + escapes[match];\r\n    }\r\n\r\n    var bareIdentifier = /^\\s*(\\w|\\$)+\\s*$/;\r\n\r\n    // JavaScript micro-templating, similar to John Resig's implementation.\r\n    // Underscore templating handles arbitrary delimiters, preserves whitespace,\r\n    // and correctly escapes quotes within interpolated code.\r\n    // NB: `oldSettings` only exists for backwards compatibility.\r\n    function template(text, settings, oldSettings) {\r\n        if (!settings && oldSettings) settings = oldSettings;\r\n        settings = defaults({}, settings, _$1.templateSettings);\r\n\r\n        // Combine delimiters into one regular expression via alternation.\r\n        var matcher = RegExp([\r\n            (settings.escape || noMatch).source,\r\n            (settings.interpolate || noMatch).source,\r\n            (settings.evaluate || noMatch).source\r\n        ].join('|') + '|$', 'g');\r\n\r\n        // Compile the template source, escaping string literals appropriately.\r\n        var index = 0;\r\n        var source = \"__p+='\";\r\n        text.replace(matcher, function (match, escape, interpolate, evaluate, offset) {\r\n            source += text.slice(index, offset).replace(escapeRegExp, escapeChar);\r\n            index = offset + match.length;\r\n\r\n            if (escape) {\r\n                source += \"'+\\n((__t=(\" + escape + \"))==null?'':_.escape(__t))+\\n'\";\r\n            } else if (interpolate) {\r\n                source += \"'+\\n((__t=(\" + interpolate + \"))==null?'':__t)+\\n'\";\r\n            } else if (evaluate) {\r\n                source += \"';\\n\" + evaluate + \"\\n__p+='\";\r\n            }\r\n\r\n            // Adobe VMs need the match returned to produce the correct offset.\r\n            return match;\r\n        });\r\n        source += \"';\\n\";\r\n\r\n        var argument = settings.variable;\r\n        if (argument) {\r\n            if (!bareIdentifier.test(argument)) throw new Error(argument);\r\n        } else {\r\n            // If a variable is not specified, place data values in local scope.\r\n            source = 'with(obj||{}){\\n' + source + '}\\n';\r\n            argument = 'obj';\r\n        }\r\n\r\n        source = \"var __t,__p='',__j=Array.prototype.join,\" +\r\n            \"print=function(){__p+=__j.call(arguments,'');};\\n\" +\r\n            source + 'return __p;\\n';\r\n\r\n        var render;\r\n        try {\r\n            render = new Function(argument, '_', source);\r\n        } catch (e) {\r\n            e.source = source;\r\n            throw e;\r\n        }\r\n\r\n        var template = function (data) {\r\n            return render.call(this, data, _$1);\r\n        };\r\n\r\n        // Provide the compiled source as a convenience for precompilation.\r\n        template.source = 'function(' + argument + '){\\n' + source + '}';\r\n\r\n        return template;\r\n    }\r\n\r\n    // Traverses the children of `obj` along `path`. If a child is a function, it\r\n    // is invoked with its parent as context. Returns the value of the final\r\n    // child, or `fallback` if any child is undefined.\r\n    function result(obj, path, fallback) {\r\n        path = toPath(path);\r\n        var length = path.length;\r\n        if (!length) {\r\n            return isFunction$1(fallback) ? fallback.call(obj) : fallback;\r\n        }\r\n        for (var i = 0; i < length; i++) {\r\n            var prop = obj == null ? void 0 : obj[path[i]];\r\n            if (prop === void 0) {\r\n                prop = fallback;\r\n                i = length; // Ensure we don't continue iterating.\r\n            }\r\n            obj = isFunction$1(prop) ? prop.call(obj) : prop;\r\n        }\r\n        return obj;\r\n    }\r\n\r\n    // Generate a unique integer id (unique within the entire client session).\r\n    // Useful for temporary DOM ids.\r\n    var idCounter = 0;\r\n    function uniqueId(prefix) {\r\n        var id = ++idCounter + '';\r\n        return prefix ? prefix + id : id;\r\n    }\r\n\r\n    // Start chaining a wrapped Underscore object.\r\n    function chain(obj) {\r\n        var instance = _$1(obj);\r\n        instance._chain = true;\r\n        return instance;\r\n    }\r\n\r\n    // Internal function to execute `sourceFunc` bound to `context` with optional\r\n    // `args`. Determines whether to execute a function as a constructor or as a\r\n    // normal function.\r\n    function executeBound(sourceFunc, boundFunc, context, callingContext, args) {\r\n        if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args);\r\n        var self = baseCreate(sourceFunc.prototype);\r\n        var result = sourceFunc.apply(self, args);\r\n        if (isObject(result)) return result;\r\n        return self;\r\n    }\r\n\r\n    // Partially apply a function by creating a version that has had some of its\r\n    // arguments pre-filled, without changing its dynamic `this` context. `_` acts\r\n    // as a placeholder by default, allowing any combination of arguments to be\r\n    // pre-filled. Set `_.partial.placeholder` for a custom placeholder argument.\r\n    var partial = restArguments(function (func, boundArgs) {\r\n        var placeholder = partial.placeholder;\r\n        var bound = function () {\r\n            var position = 0, length = boundArgs.length;\r\n            var args = Array(length);\r\n            for (var i = 0; i < length; i++) {\r\n                args[i] = boundArgs[i] === placeholder ? arguments[position++] : boundArgs[i];\r\n            }\r\n            while (position < arguments.length) args.push(arguments[position++]);\r\n            return executeBound(func, bound, this, this, args);\r\n        };\r\n        return bound;\r\n    });\r\n\r\n    partial.placeholder = _$1;\r\n\r\n    // Create a function bound to a given object (assigning `this`, and arguments,\r\n    // optionally).\r\n    var bind = restArguments(function (func, context, args) {\r\n        if (!isFunction$1(func)) throw new TypeError('Bind must be called on a function');\r\n        var bound = restArguments(function (callArgs) {\r\n            return executeBound(func, bound, context, this, args.concat(callArgs));\r\n        });\r\n        return bound;\r\n    });\r\n\r\n    // Internal helper for collection methods to determine whether a collection\r\n    // should be iterated as an array or as an object.\r\n    // Related: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength\r\n    // Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094\r\n    var isArrayLike = createSizePropertyCheck(getLength);\r\n\r\n    // Internal implementation of a recursive `flatten` function.\r\n    function flatten$1(input, depth, strict, output) {\r\n        output = output || [];\r\n        if (!depth && depth !== 0) {\r\n            depth = Infinity;\r\n        } else if (depth <= 0) {\r\n            return output.concat(input);\r\n        }\r\n        var idx = output.length;\r\n        for (var i = 0, length = getLength(input); i < length; i++) {\r\n            var value = input[i];\r\n            if (isArrayLike(value) && (isArray(value) || isArguments$1(value))) {\r\n                // Flatten current level of array or arguments object.\r\n                if (depth > 1) {\r\n                    flatten$1(value, depth - 1, strict, output);\r\n                    idx = output.length;\r\n                } else {\r\n                    var j = 0, len = value.length;\r\n                    while (j < len) output[idx++] = value[j++];\r\n                }\r\n            } else if (!strict) {\r\n                output[idx++] = value;\r\n            }\r\n        }\r\n        return output;\r\n    }\r\n\r\n    // Bind a number of an object's methods to that object. Remaining arguments\r\n    // are the method names to be bound. Useful for ensuring that all callbacks\r\n    // defined on an object belong to it.\r\n    var bindAll = restArguments(function (obj, keys) {\r\n        keys = flatten$1(keys, false, false);\r\n        var index = keys.length;\r\n        if (index < 1) throw new Error('bindAll must be passed function names');\r\n        while (index--) {\r\n            var key = keys[index];\r\n            obj[key] = bind(obj[key], obj);\r\n        }\r\n        return obj;\r\n    });\r\n\r\n    // Memoize an expensive function by storing its results.\r\n    function memoize(func, hasher) {\r\n        var memoize = function (key) {\r\n            var cache = memoize.cache;\r\n            var address = '' + (hasher ? hasher.apply(this, arguments) : key);\r\n            if (!has$1(cache, address)) cache[address] = func.apply(this, arguments);\r\n            return cache[address];\r\n        };\r\n        memoize.cache = {};\r\n        return memoize;\r\n    }\r\n\r\n    // Delays a function for the given number of milliseconds, and then calls\r\n    // it with the arguments supplied.\r\n    var delay = restArguments(function (func, wait, args) {\r\n        return setTimeout(function () {\r\n            return func.apply(null, args);\r\n        }, wait);\r\n    });\r\n\r\n    // Defers a function, scheduling it to run after the current call stack has\r\n    // cleared.\r\n    var defer = partial(delay, _$1, 1);\r\n\r\n    // Returns a function, that, when invoked, will only be triggered at most once\r\n    // during a given window of time. Normally, the throttled function will run\r\n    // as much as it can, without ever going more than once per `wait` duration;\r\n    // but if you'd like to disable the execution on the leading edge, pass\r\n    // `{leading: false}`. To disable execution on the trailing edge, ditto.\r\n    function throttle(func, wait, options) {\r\n        var timeout, context, args, result;\r\n        var previous = 0;\r\n        if (!options) options = {};\r\n\r\n        var later = function () {\r\n            previous = options.leading === false ? 0 : now();\r\n            timeout = null;\r\n            result = func.apply(context, args);\r\n            if (!timeout) context = args = null;\r\n        };\r\n\r\n        var throttled = function () {\r\n            var _now = now();\r\n            if (!previous && options.leading === false) previous = _now;\r\n            var remaining = wait - (_now - previous);\r\n            context = this;\r\n            args = arguments;\r\n            if (remaining <= 0 || remaining > wait) {\r\n                if (timeout) {\r\n                    clearTimeout(timeout);\r\n                    timeout = null;\r\n                }\r\n                previous = _now;\r\n                result = func.apply(context, args);\r\n                if (!timeout) context = args = null;\r\n            } else if (!timeout && options.trailing !== false) {\r\n                timeout = setTimeout(later, remaining);\r\n            }\r\n            return result;\r\n        };\r\n\r\n        throttled.cancel = function () {\r\n            clearTimeout(timeout);\r\n            previous = 0;\r\n            timeout = context = args = null;\r\n        };\r\n\r\n        return throttled;\r\n    }\r\n\r\n    // When a sequence of calls of the returned function ends, the argument\r\n    // function is triggered. The end of a sequence is defined by the `wait`\r\n    // parameter. If `immediate` is passed, the argument function will be\r\n    // triggered at the beginning of the sequence instead of at the end.\r\n    function debounce(func, wait, immediate) {\r\n        var timeout, previous, args, result, context;\r\n\r\n        var later = function () {\r\n            var passed = now() - previous;\r\n            if (wait > passed) {\r\n                timeout = setTimeout(later, wait - passed);\r\n            } else {\r\n                timeout = null;\r\n                if (!immediate) result = func.apply(context, args);\r\n                // This check is needed because `func` can recursively invoke `debounced`.\r\n                if (!timeout) args = context = null;\r\n            }\r\n        };\r\n\r\n        var debounced = restArguments(function (_args) {\r\n            context = this;\r\n            args = _args;\r\n            previous = now();\r\n            if (!timeout) {\r\n                timeout = setTimeout(later, wait);\r\n                if (immediate) result = func.apply(context, args);\r\n            }\r\n            return result;\r\n        });\r\n\r\n        debounced.cancel = function () {\r\n            clearTimeout(timeout);\r\n            timeout = args = context = null;\r\n        };\r\n\r\n        return debounced;\r\n    }\r\n\r\n    // Returns the first function passed as an argument to the second,\r\n    // allowing you to adjust arguments, run code before and after, and\r\n    // conditionally execute the original function.\r\n    function wrap(func, wrapper) {\r\n        return partial(wrapper, func);\r\n    }\r\n\r\n    // Returns a negated version of the passed-in predicate.\r\n    function negate(predicate) {\r\n        return function () {\r\n            return !predicate.apply(this, arguments);\r\n        };\r\n    }\r\n\r\n    // Returns a function that is the composition of a list of functions, each\r\n    // consuming the return value of the function that follows.\r\n    function compose() {\r\n        var args = arguments;\r\n        var start = args.length - 1;\r\n        return function () {\r\n            var i = start;\r\n            var result = args[start].apply(this, arguments);\r\n            while (i--) result = args[i].call(this, result);\r\n            return result;\r\n        };\r\n    }\r\n\r\n    // Returns a function that will only be executed on and after the Nth call.\r\n    function after(times, func) {\r\n        return function () {\r\n            if (--times < 1) {\r\n                return func.apply(this, arguments);\r\n            }\r\n        };\r\n    }\r\n\r\n    // Returns a function that will only be executed up to (but not including) the\r\n    // Nth call.\r\n    function before(times, func) {\r\n        var memo;\r\n        return function () {\r\n            if (--times > 0) {\r\n                memo = func.apply(this, arguments);\r\n            }\r\n            if (times <= 1) func = null;\r\n            return memo;\r\n        };\r\n    }\r\n\r\n    // Returns a function that will be executed at most one time, no matter how\r\n    // often you call it. Useful for lazy initialization.\r\n    var once = partial(before, 2);\r\n\r\n    // Returns the first key on an object that passes a truth test.\r\n    function findKey(obj, predicate, context) {\r\n        predicate = cb(predicate, context);\r\n        var _keys = keys(obj), key;\r\n        for (var i = 0, length = _keys.length; i < length; i++) {\r\n            key = _keys[i];\r\n            if (predicate(obj[key], key, obj)) return key;\r\n        }\r\n    }\r\n\r\n    // Internal function to generate `_.findIndex` and `_.findLastIndex`.\r\n    function createPredicateIndexFinder(dir) {\r\n        return function (array, predicate, context) {\r\n            predicate = cb(predicate, context);\r\n            var length = getLength(array);\r\n            var index = dir > 0 ? 0 : length - 1;\r\n            for (; index >= 0 && index < length; index += dir) {\r\n                if (predicate(array[index], index, array)) return index;\r\n            }\r\n            return -1;\r\n        };\r\n    }\r\n\r\n    // Returns the first index on an array-like that passes a truth test.\r\n    var findIndex = createPredicateIndexFinder(1);\r\n\r\n    // Returns the last index on an array-like that passes a truth test.\r\n    var findLastIndex = createPredicateIndexFinder(-1);\r\n\r\n    // Use a comparator function to figure out the smallest index at which\r\n    // an object should be inserted so as to maintain order. Uses binary search.\r\n    function sortedIndex(array, obj, iteratee, context) {\r\n        iteratee = cb(iteratee, context, 1);\r\n        var value = iteratee(obj);\r\n        var low = 0, high = getLength(array);\r\n        while (low < high) {\r\n            var mid = Math.floor((low + high) / 2);\r\n            if (iteratee(array[mid]) < value) low = mid + 1; else high = mid;\r\n        }\r\n        return low;\r\n    }\r\n\r\n    // Internal function to generate the `_.indexOf` and `_.lastIndexOf` functions.\r\n    function createIndexFinder(dir, predicateFind, sortedIndex) {\r\n        return function (array, item, idx) {\r\n            var i = 0, length = getLength(array);\r\n            if (typeof idx == 'number') {\r\n                if (dir > 0) {\r\n                    i = idx >= 0 ? idx : Math.max(idx + length, i);\r\n                } else {\r\n                    length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1;\r\n                }\r\n            } else if (sortedIndex && idx && length) {\r\n                idx = sortedIndex(array, item);\r\n                return array[idx] === item ? idx : -1;\r\n            }\r\n            if (item !== item) {\r\n                idx = predicateFind(slice.call(array, i, length), isNaN$1);\r\n                return idx >= 0 ? idx + i : -1;\r\n            }\r\n            for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) {\r\n                if (array[idx] === item) return idx;\r\n            }\r\n            return -1;\r\n        };\r\n    }\r\n\r\n    // Return the position of the first occurrence of an item in an array,\r\n    // or -1 if the item is not included in the array.\r\n    // If the array is large and already in sort order, pass `true`\r\n    // for **isSorted** to use binary search.\r\n    var indexOf = createIndexFinder(1, findIndex, sortedIndex);\r\n\r\n    // Return the position of the last occurrence of an item in an array,\r\n    // or -1 if the item is not included in the array.\r\n    var lastIndexOf = createIndexFinder(-1, findLastIndex);\r\n\r\n    // Return the first value which passes a truth test.\r\n    function find(obj, predicate, context) {\r\n        var keyFinder = isArrayLike(obj) ? findIndex : findKey;\r\n        var key = keyFinder(obj, predicate, context);\r\n        if (key !== void 0 && key !== -1) return obj[key];\r\n    }\r\n\r\n    // Convenience version of a common use case of `_.find`: getting the first\r\n    // object containing specific `key:value` pairs.\r\n    function findWhere(obj, attrs) {\r\n        return find(obj, matcher(attrs));\r\n    }\r\n\r\n    // The cornerstone for collection functions, an `each`\r\n    // implementation, aka `forEach`.\r\n    // Handles raw objects in addition to array-likes. Treats all\r\n    // sparse array-likes as if they were dense.\r\n    function each(obj, iteratee, context) {\r\n        iteratee = optimizeCb(iteratee, context);\r\n        var i, length;\r\n        if (isArrayLike(obj)) {\r\n            for (i = 0, length = obj.length; i < length; i++) {\r\n                iteratee(obj[i], i, obj);\r\n            }\r\n        } else {\r\n            var _keys = keys(obj);\r\n            for (i = 0, length = _keys.length; i < length; i++) {\r\n                iteratee(obj[_keys[i]], _keys[i], obj);\r\n            }\r\n        }\r\n        return obj;\r\n    }\r\n\r\n    // Return the results of applying the iteratee to each element.\r\n    function map(obj, iteratee, context) {\r\n        iteratee = cb(iteratee, context);\r\n        var _keys = !isArrayLike(obj) && keys(obj),\r\n            length = (_keys || obj).length,\r\n            results = Array(length);\r\n        for (var index = 0; index < length; index++) {\r\n            var currentKey = _keys ? _keys[index] : index;\r\n            results[index] = iteratee(obj[currentKey], currentKey, obj);\r\n        }\r\n        return results;\r\n    }\r\n\r\n    // Internal helper to create a reducing function, iterating left or right.\r\n    function createReduce(dir) {\r\n        // Wrap code that reassigns argument variables in a separate function than\r\n        // the one that accesses `arguments.length` to avoid a perf hit. (#1991)\r\n        var reducer = function (obj, iteratee, memo, initial) {\r\n            var _keys = !isArrayLike(obj) && keys(obj),\r\n                length = (_keys || obj).length,\r\n                index = dir > 0 ? 0 : length - 1;\r\n            if (!initial) {\r\n                memo = obj[_keys ? _keys[index] : index];\r\n                index += dir;\r\n            }\r\n            for (; index >= 0 && index < length; index += dir) {\r\n                var currentKey = _keys ? _keys[index] : index;\r\n                memo = iteratee(memo, obj[currentKey], currentKey, obj);\r\n            }\r\n            return memo;\r\n        };\r\n\r\n        return function (obj, iteratee, memo, context) {\r\n            var initial = arguments.length >= 3;\r\n            return reducer(obj, optimizeCb(iteratee, context, 4), memo, initial);\r\n        };\r\n    }\r\n\r\n    // **Reduce** builds up a single result from a list of values, aka `inject`,\r\n    // or `foldl`.\r\n    var reduce = createReduce(1);\r\n\r\n    // The right-associative version of reduce, also known as `foldr`.\r\n    var reduceRight = createReduce(-1);\r\n\r\n    // Return all the elements that pass a truth test.\r\n    function filter(obj, predicate, context) {\r\n        var results = [];\r\n        predicate = cb(predicate, context);\r\n        each(obj, function (value, index, list) {\r\n            if (predicate(value, index, list)) results.push(value);\r\n        });\r\n        return results;\r\n    }\r\n\r\n    // Return all the elements for which a truth test fails.\r\n    function reject(obj, predicate, context) {\r\n        return filter(obj, negate(cb(predicate)), context);\r\n    }\r\n\r\n    // Determine whether all of the elements pass a truth test.\r\n    function every(obj, predicate, context) {\r\n        predicate = cb(predicate, context);\r\n        var _keys = !isArrayLike(obj) && keys(obj),\r\n            length = (_keys || obj).length;\r\n        for (var index = 0; index < length; index++) {\r\n            var currentKey = _keys ? _keys[index] : index;\r\n            if (!predicate(obj[currentKey], currentKey, obj)) return false;\r\n        }\r\n        return true;\r\n    }\r\n\r\n    // Determine if at least one element in the object passes a truth test.\r\n    function some(obj, predicate, context) {\r\n        predicate = cb(predicate, context);\r\n        var _keys = !isArrayLike(obj) && keys(obj),\r\n            length = (_keys || obj).length;\r\n        for (var index = 0; index < length; index++) {\r\n            var currentKey = _keys ? _keys[index] : index;\r\n            if (predicate(obj[currentKey], currentKey, obj)) return true;\r\n        }\r\n        return false;\r\n    }\r\n\r\n    // Determine if the array or object contains a given item (using `===`).\r\n    function contains(obj, item, fromIndex, guard) {\r\n        if (!isArrayLike(obj)) obj = values(obj);\r\n        if (typeof fromIndex != 'number' || guard) fromIndex = 0;\r\n        return indexOf(obj, item, fromIndex) >= 0;\r\n    }\r\n\r\n    // Invoke a method (with arguments) on every item in a collection.\r\n    var invoke = restArguments(function (obj, path, args) {\r\n        var contextPath, func;\r\n        if (isFunction$1(path)) {\r\n            func = path;\r\n        } else {\r\n            path = toPath(path);\r\n            contextPath = path.slice(0, -1);\r\n            path = path[path.length - 1];\r\n        }\r\n        return map(obj, function (context) {\r\n            var method = func;\r\n            if (!method) {\r\n                if (contextPath && contextPath.length) {\r\n                    context = deepGet(context, contextPath);\r\n                }\r\n                if (context == null) return void 0;\r\n                method = context[path];\r\n            }\r\n            return method == null ? method : method.apply(context, args);\r\n        });\r\n    });\r\n\r\n    // Convenience version of a common use case of `_.map`: fetching a property.\r\n    function pluck(obj, key) {\r\n        return map(obj, property(key));\r\n    }\r\n\r\n    // Convenience version of a common use case of `_.filter`: selecting only\r\n    // objects containing specific `key:value` pairs.\r\n    function where(obj, attrs) {\r\n        return filter(obj, matcher(attrs));\r\n    }\r\n\r\n    // Return the maximum element (or element-based computation).\r\n    function max(obj, iteratee, context) {\r\n        var result = -Infinity, lastComputed = -Infinity,\r\n            value, computed;\r\n        if (iteratee == null || typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null) {\r\n            obj = isArrayLike(obj) ? obj : values(obj);\r\n            for (var i = 0, length = obj.length; i < length; i++) {\r\n                value = obj[i];\r\n                if (value != null && value > result) {\r\n                    result = value;\r\n                }\r\n            }\r\n        } else {\r\n            iteratee = cb(iteratee, context);\r\n            each(obj, function (v, index, list) {\r\n                computed = iteratee(v, index, list);\r\n                if (computed > lastComputed || computed === -Infinity && result === -Infinity) {\r\n                    result = v;\r\n                    lastComputed = computed;\r\n                }\r\n            });\r\n        }\r\n        return result;\r\n    }\r\n\r\n    // Return the minimum element (or element-based computation).\r\n    function min(obj, iteratee, context) {\r\n        var result = Infinity, lastComputed = Infinity,\r\n            value, computed;\r\n        if (iteratee == null || typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null) {\r\n            obj = isArrayLike(obj) ? obj : values(obj);\r\n            for (var i = 0, length = obj.length; i < length; i++) {\r\n                value = obj[i];\r\n                if (value != null && value < result) {\r\n                    result = value;\r\n                }\r\n            }\r\n        } else {\r\n            iteratee = cb(iteratee, context);\r\n            each(obj, function (v, index, list) {\r\n                computed = iteratee(v, index, list);\r\n                if (computed < lastComputed || computed === Infinity && result === Infinity) {\r\n                    result = v;\r\n                    lastComputed = computed;\r\n                }\r\n            });\r\n        }\r\n        return result;\r\n    }\r\n\r\n    // Sample **n** random values from a collection using the modern version of the\r\n    // [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher�Yates_shuffle).\r\n    // If **n** is not specified, returns a single random element.\r\n    // The internal `guard` argument allows it to work with `_.map`.\r\n    function sample(obj, n, guard) {\r\n        if (n == null || guard) {\r\n            if (!isArrayLike(obj)) obj = values(obj);\r\n            return obj[random(obj.length - 1)];\r\n        }\r\n        var sample = isArrayLike(obj) ? clone(obj) : values(obj);\r\n        var length = getLength(sample);\r\n        n = Math.max(Math.min(n, length), 0);\r\n        var last = length - 1;\r\n        for (var index = 0; index < n; index++) {\r\n            var rand = random(index, last);\r\n            var temp = sample[index];\r\n            sample[index] = sample[rand];\r\n            sample[rand] = temp;\r\n        }\r\n        return sample.slice(0, n);\r\n    }\r\n\r\n    // Shuffle a collection.\r\n    function shuffle(obj) {\r\n        return sample(obj, Infinity);\r\n    }\r\n\r\n    // Sort the object's values by a criterion produced by an iteratee.\r\n    function sortBy(obj, iteratee, context) {\r\n        var index = 0;\r\n        iteratee = cb(iteratee, context);\r\n        return pluck(map(obj, function (value, key, list) {\r\n            return {\r\n                value: value,\r\n                index: index++,\r\n                criteria: iteratee(value, key, list)\r\n            };\r\n        }).sort(function (left, right) {\r\n            var a = left.criteria;\r\n            var b = right.criteria;\r\n            if (a !== b) {\r\n                if (a > b || a === void 0) return 1;\r\n                if (a < b || b === void 0) return -1;\r\n            }\r\n            return left.index - right.index;\r\n        }), 'value');\r\n    }\r\n\r\n    // An internal function used for aggregate \"group by\" operations.\r\n    function group(behavior, partition) {\r\n        return function (obj, iteratee, context) {\r\n            var result = partition ? [[], []] : {};\r\n            iteratee = cb(iteratee, context);\r\n            each(obj, function (value, index) {\r\n                var key = iteratee(value, index, obj);\r\n                behavior(result, value, key);\r\n            });\r\n            return result;\r\n        };\r\n    }\r\n\r\n    // Groups the object's values by a criterion. Pass either a string attribute\r\n    // to group by, or a function that returns the criterion.\r\n    var groupBy = group(function (result, value, key) {\r\n        if (has$1(result, key)) result[key].push(value); else result[key] = [value];\r\n    });\r\n\r\n    // Indexes the object's values by a criterion, similar to `_.groupBy`, but for\r\n    // when you know that your index values will be unique.\r\n    var indexBy = group(function (result, value, key) {\r\n        result[key] = value;\r\n    });\r\n\r\n    // Counts instances of an object that group by a certain criterion. Pass\r\n    // either a string attribute to count by, or a function that returns the\r\n    // criterion.\r\n    var countBy = group(function (result, value, key) {\r\n        if (has$1(result, key)) result[key]++; else result[key] = 1;\r\n    });\r\n\r\n    // Split a collection into two arrays: one whose elements all pass the given\r\n    // truth test, and one whose elements all do not pass the truth test.\r\n    var partition = group(function (result, value, pass) {\r\n        result[pass ? 0 : 1].push(value);\r\n    }, true);\r\n\r\n    // Safely create a real, live array from anything iterable.\r\n    var reStrSymbol = /[^\\ud800-\\udfff]|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\ud800-\\udfff]/g;\r\n    function toArray(obj) {\r\n        if (!obj) return [];\r\n        if (isArray(obj)) return slice.call(obj);\r\n        if (isString(obj)) {\r\n            // Keep surrogate pair characters together.\r\n            return obj.match(reStrSymbol);\r\n        }\r\n        if (isArrayLike(obj)) return map(obj, identity);\r\n        return values(obj);\r\n    }\r\n\r\n    // Return the number of elements in a collection.\r\n    function size(obj) {\r\n        if (obj == null) return 0;\r\n        return isArrayLike(obj) ? obj.length : keys(obj).length;\r\n    }\r\n\r\n    // Internal `_.pick` helper function to determine whether `key` is an enumerable\r\n    // property name of `obj`.\r\n    function keyInObj(value, key, obj) {\r\n        return key in obj;\r\n    }\r\n\r\n    // Return a copy of the object only containing the allowed properties.\r\n    var pick = restArguments(function (obj, keys) {\r\n        var result = {}, iteratee = keys[0];\r\n        if (obj == null) return result;\r\n        if (isFunction$1(iteratee)) {\r\n            if (keys.length > 1) iteratee = optimizeCb(iteratee, keys[1]);\r\n            keys = allKeys(obj);\r\n        } else {\r\n            iteratee = keyInObj;\r\n            keys = flatten$1(keys, false, false);\r\n            obj = Object(obj);\r\n        }\r\n        for (var i = 0, length = keys.length; i < length; i++) {\r\n            var key = keys[i];\r\n            var value = obj[key];\r\n            if (iteratee(value, key, obj)) result[key] = value;\r\n        }\r\n        return result;\r\n    });\r\n\r\n    // Return a copy of the object without the disallowed properties.\r\n    var omit = restArguments(function (obj, keys) {\r\n        var iteratee = keys[0], context;\r\n        if (isFunction$1(iteratee)) {\r\n            iteratee = negate(iteratee);\r\n            if (keys.length > 1) context = keys[1];\r\n        } else {\r\n            keys = map(flatten$1(keys, false, false), String);\r\n            iteratee = function (value, key) {\r\n                return !contains(keys, key);\r\n            };\r\n        }\r\n        return pick(obj, iteratee, context);\r\n    });\r\n\r\n    // Returns everything but the last entry of the array. Especially useful on\r\n    // the arguments object. Passing **n** will return all the values in\r\n    // the array, excluding the last N.\r\n    function initial(array, n, guard) {\r\n        return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n)));\r\n    }\r\n\r\n    // Get the first element of an array. Passing **n** will return the first N\r\n    // values in the array. The **guard** check allows it to work with `_.map`.\r\n    function first(array, n, guard) {\r\n        if (array == null || array.length < 1) return n == null || guard ? void 0 : [];\r\n        if (n == null || guard) return array[0];\r\n        return initial(array, array.length - n);\r\n    }\r\n\r\n    // Returns everything but the first entry of the `array`. Especially useful on\r\n    // the `arguments` object. Passing an **n** will return the rest N values in the\r\n    // `array`.\r\n    function rest(array, n, guard) {\r\n        return slice.call(array, n == null || guard ? 1 : n);\r\n    }\r\n\r\n    // Get the last element of an array. Passing **n** will return the last N\r\n    // values in the array.\r\n    function last(array, n, guard) {\r\n        if (array == null || array.length < 1) return n == null || guard ? void 0 : [];\r\n        if (n == null || guard) return array[array.length - 1];\r\n        return rest(array, Math.max(0, array.length - n));\r\n    }\r\n\r\n    // Trim out all falsy values from an array.\r\n    function compact(array) {\r\n        return filter(array, Boolean);\r\n    }\r\n\r\n    // Flatten out an array, either recursively (by default), or up to `depth`.\r\n    // Passing `true` or `false` as `depth` means `1` or `Infinity`, respectively.\r\n    function flatten(array, depth) {\r\n        return flatten$1(array, depth, false);\r\n    }\r\n\r\n    // Take the difference between one array and a number of other arrays.\r\n    // Only the elements present in just the first array will remain.\r\n    var difference = restArguments(function (array, rest) {\r\n        rest = flatten$1(rest, true, true);\r\n        return filter(array, function (value) {\r\n            return !contains(rest, value);\r\n        });\r\n    });\r\n\r\n    // Return a version of the array that does not contain the specified value(s).\r\n    var without = restArguments(function (array, otherArrays) {\r\n        return difference(array, otherArrays);\r\n    });\r\n\r\n    // Produce a duplicate-free version of the array. If the array has already\r\n    // been sorted, you have the option of using a faster algorithm.\r\n    // The faster algorithm will not work with an iteratee if the iteratee\r\n    // is not a one-to-one function, so providing an iteratee will disable\r\n    // the faster algorithm.\r\n    function uniq(array, isSorted, iteratee, context) {\r\n        if (!isBoolean(isSorted)) {\r\n            context = iteratee;\r\n            iteratee = isSorted;\r\n            isSorted = false;\r\n        }\r\n        if (iteratee != null) iteratee = cb(iteratee, context);\r\n        var result = [];\r\n        var seen = [];\r\n        for (var i = 0, length = getLength(array); i < length; i++) {\r\n            var value = array[i],\r\n                computed = iteratee ? iteratee(value, i, array) : value;\r\n            if (isSorted && !iteratee) {\r\n                if (!i || seen !== computed) result.push(value);\r\n                seen = computed;\r\n            } else if (iteratee) {\r\n                if (!contains(seen, computed)) {\r\n                    seen.push(computed);\r\n                    result.push(value);\r\n                }\r\n            } else if (!contains(result, value)) {\r\n                result.push(value);\r\n            }\r\n        }\r\n        return result;\r\n    }\r\n\r\n    // Produce an array that contains the union: each distinct element from all of\r\n    // the passed-in arrays.\r\n    var union = restArguments(function (arrays) {\r\n        return uniq(flatten$1(arrays, true, true));\r\n    });\r\n\r\n    // Produce an array that contains every item shared between all the\r\n    // passed-in arrays.\r\n    function intersection(array) {\r\n        var result = [];\r\n        var argsLength = arguments.length;\r\n        for (var i = 0, length = getLength(array); i < length; i++) {\r\n            var item = array[i];\r\n            if (contains(result, item)) continue;\r\n            var j;\r\n            for (j = 1; j < argsLength; j++) {\r\n                if (!contains(arguments[j], item)) break;\r\n            }\r\n            if (j === argsLength) result.push(item);\r\n        }\r\n        return result;\r\n    }\r\n\r\n    // Complement of zip. Unzip accepts an array of arrays and groups\r\n    // each array's elements on shared indices.\r\n    function unzip(array) {\r\n        var length = array && max(array, getLength).length || 0;\r\n        var result = Array(length);\r\n\r\n        for (var index = 0; index < length; index++) {\r\n            result[index] = pluck(array, index);\r\n        }\r\n        return result;\r\n    }\r\n\r\n    // Zip together multiple lists into a single array -- elements that share\r\n    // an index go together.\r\n    var zip = restArguments(unzip);\r\n\r\n    // Converts lists into objects. Pass either a single array of `[key, value]`\r\n    // pairs, or two parallel arrays of the same length -- one of keys, and one of\r\n    // the corresponding values. Passing by pairs is the reverse of `_.pairs`.\r\n    function object(list, values) {\r\n        var result = {};\r\n        for (var i = 0, length = getLength(list); i < length; i++) {\r\n            if (values) {\r\n                result[list[i]] = values[i];\r\n            } else {\r\n                result[list[i][0]] = list[i][1];\r\n            }\r\n        }\r\n        return result;\r\n    }\r\n\r\n    // Generate an integer Array containing an arithmetic progression. A port of\r\n    // the native Python `range()` function. See\r\n    // [the Python documentation](https://docs.python.org/library/functions.html#range).\r\n    function range(start, stop, step) {\r\n        if (stop == null) {\r\n            stop = start || 0;\r\n            start = 0;\r\n        }\r\n        if (!step) {\r\n            step = stop < start ? -1 : 1;\r\n        }\r\n\r\n        var length = Math.max(Math.ceil((stop - start) / step), 0);\r\n        var range = Array(length);\r\n\r\n        for (var idx = 0; idx < length; idx++, start += step) {\r\n            range[idx] = start;\r\n        }\r\n\r\n        return range;\r\n    }\r\n\r\n    // Chunk a single array into multiple arrays, each containing `count` or fewer\r\n    // items.\r\n    function chunk(array, count) {\r\n        if (count == null || count < 1) return [];\r\n        var result = [];\r\n        var i = 0, length = array.length;\r\n        while (i < length) {\r\n            result.push(slice.call(array, i, i += count));\r\n        }\r\n        return result;\r\n    }\r\n\r\n    // Helper function to continue chaining intermediate results.\r\n    function chainResult(instance, obj) {\r\n        return instance._chain ? _$1(obj).chain() : obj;\r\n    }\r\n\r\n    // Add your own custom functions to the Underscore object.\r\n    function mixin(obj) {\r\n        each(functions(obj), function (name) {\r\n            var func = _$1[name] = obj[name];\r\n            _$1.prototype[name] = function () {\r\n                var args = [this._wrapped];\r\n                push.apply(args, arguments);\r\n                return chainResult(this, func.apply(_$1, args));\r\n            };\r\n        });\r\n        return _$1;\r\n    }\r\n\r\n    // Add all mutator `Array` functions to the wrapper.\r\n    each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function (name) {\r\n        var method = ArrayProto[name];\r\n        _$1.prototype[name] = function () {\r\n            var obj = this._wrapped;\r\n            if (obj != null) {\r\n                method.apply(obj, arguments);\r\n                if ((name === 'shift' || name === 'splice') && obj.length === 0) {\r\n                    delete obj[0];\r\n                }\r\n            }\r\n            return chainResult(this, obj);\r\n        };\r\n    });\r\n\r\n    // Add all accessor `Array` functions to the wrapper.\r\n    each(['concat', 'join', 'slice'], function (name) {\r\n        var method = ArrayProto[name];\r\n        _$1.prototype[name] = function () {\r\n            var obj = this._wrapped;\r\n            if (obj != null) obj = method.apply(obj, arguments);\r\n            return chainResult(this, obj);\r\n        };\r\n    });\r\n\r\n    // Named Exports\r\n\r\n    var allExports = {\r\n        __proto__: null,\r\n        VERSION: VERSION,\r\n        restArguments: restArguments,\r\n        isObject: isObject,\r\n        isNull: isNull,\r\n        isUndefined: isUndefined,\r\n        isBoolean: isBoolean,\r\n        isElement: isElement,\r\n        isString: isString,\r\n        isNumber: isNumber,\r\n        isDate: isDate,\r\n        isRegExp: isRegExp,\r\n        isError: isError,\r\n        isSymbol: isSymbol,\r\n        isArrayBuffer: isArrayBuffer,\r\n        isDataView: isDataView$1,\r\n        isArray: isArray,\r\n        isFunction: isFunction$1,\r\n        isArguments: isArguments$1,\r\n        isFinite: isFinite$1,\r\n        isNaN: isNaN$1,\r\n        isTypedArray: isTypedArray$1,\r\n        isEmpty: isEmpty,\r\n        isMatch: isMatch,\r\n        isEqual: isEqual,\r\n        isMap: isMap,\r\n        isWeakMap: isWeakMap,\r\n        isSet: isSet,\r\n        isWeakSet: isWeakSet,\r\n        keys: keys,\r\n        allKeys: allKeys,\r\n        values: values,\r\n        pairs: pairs,\r\n        invert: invert,\r\n        functions: functions,\r\n        methods: functions,\r\n        extend: extend,\r\n        extendOwn: extendOwn,\r\n        assign: extendOwn,\r\n        defaults: defaults,\r\n        create: create,\r\n        clone: clone,\r\n        tap: tap,\r\n        get: get,\r\n        has: has,\r\n        mapObject: mapObject,\r\n        identity: identity,\r\n        constant: constant,\r\n        noop: noop,\r\n        toPath: toPath$1,\r\n        property: property,\r\n        propertyOf: propertyOf,\r\n        matcher: matcher,\r\n        matches: matcher,\r\n        times: times,\r\n        random: random,\r\n        now: now,\r\n        escape: _escape,\r\n        unescape: _unescape,\r\n        templateSettings: templateSettings,\r\n        template: template,\r\n        result: result,\r\n        uniqueId: uniqueId,\r\n        chain: chain,\r\n        iteratee: iteratee,\r\n        partial: partial,\r\n        bind: bind,\r\n        bindAll: bindAll,\r\n        memoize: memoize,\r\n        delay: delay,\r\n        defer: defer,\r\n        throttle: throttle,\r\n        debounce: debounce,\r\n        wrap: wrap,\r\n        negate: negate,\r\n        compose: compose,\r\n        after: after,\r\n        before: before,\r\n        once: once,\r\n        findKey: findKey,\r\n        findIndex: findIndex,\r\n        findLastIndex: findLastIndex,\r\n        sortedIndex: sortedIndex,\r\n        indexOf: indexOf,\r\n        lastIndexOf: lastIndexOf,\r\n        find: find,\r\n        detect: find,\r\n        findWhere: findWhere,\r\n        each: each,\r\n        forEach: each,\r\n        map: map,\r\n        collect: map,\r\n        reduce: reduce,\r\n        foldl: reduce,\r\n        inject: reduce,\r\n        reduceRight: reduceRight,\r\n        foldr: reduceRight,\r\n        filter: filter,\r\n        select: filter,\r\n        reject: reject,\r\n        every: every,\r\n        all: every,\r\n        some: some,\r\n        any: some,\r\n        contains: contains,\r\n        includes: contains,\r\n        include: contains,\r\n        invoke: invoke,\r\n        pluck: pluck,\r\n        where: where,\r\n        max: max,\r\n        min: min,\r\n        shuffle: shuffle,\r\n        sample: sample,\r\n        sortBy: sortBy,\r\n        groupBy: groupBy,\r\n        indexBy: indexBy,\r\n        countBy: countBy,\r\n        partition: partition,\r\n        toArray: toArray,\r\n        size: size,\r\n        pick: pick,\r\n        omit: omit,\r\n        first: first,\r\n        head: first,\r\n        take: first,\r\n        initial: initial,\r\n        last: last,\r\n        rest: rest,\r\n        tail: rest,\r\n        drop: rest,\r\n        compact: compact,\r\n        flatten: flatten,\r\n        without: without,\r\n        uniq: uniq,\r\n        unique: uniq,\r\n        union: union,\r\n        intersection: intersection,\r\n        difference: difference,\r\n        unzip: unzip,\r\n        transpose: unzip,\r\n        zip: zip,\r\n        object: object,\r\n        range: range,\r\n        chunk: chunk,\r\n        mixin: mixin,\r\n        'default': _$1\r\n    };\r\n\r\n    // Default Export\r\n\r\n    // Add all of the Underscore functions to the wrapper object.\r\n    var _ = mixin(allExports);\r\n    // Legacy Node.js API.\r\n    _._ = _;\r\n\r\n    return _;\r\n\r\n})));\r\n//# sourceMappingURL=underscore-umd.js.map;\n",
    "/**\r\n * @license BrainJocks CCF EventManager\r\n * https://brainjocks.atlassian.net/wiki/display/SDD/eventManager\r\n * Copyright 2017\r\n */\r\n\r\n;(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('eventManager',[\"jquery\", \"underscore\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"underscore\")) :\r\n    console && console.error('EventManager does not support non-amd script loading.');\r\n}(this/* window */, function($, _) {\r\n    \"use strict\";\r\n\r\n    function logRegistration(event, func) {\r\n        console.log(\"REGISTER event \" + String(event) + \" to callback function \" + (func.name || \"[Anonymous]\"));\r\n    }\r\n\r\n    function logUnsubscription(event, func) {\r\n        console.log(\"UNSUBSCRIBE function \" + String(event) + \" from event \" + (func.name || \"[Anonymous]\"));\r\n    }\r\n\r\n    function logHandledTrigger(subscriber, event) {\r\n        console.log(\"TRIGGER function \" + (subscriber.callback.name || \"[Anonymous]\") + \" for event \" + String(subscriber.event));\r\n        console.log(JSON.stringify(event, null, 4));\r\n    }\r\n\r\n    function logMissedTrigger(event) {\r\n        console.log(\"SKIP event with 0 subscriptions: \" + String(event));\r\n    }\r\n\r\n    function Registration(event, callback, thisp) {\r\n        Object.defineProperties(this, {\r\n            id:       { value: (new Date()).valueOf() },\r\n            event:    { value: event                          },\r\n            callback: { value: callback                       },\r\n            thisp:    { value: thisp                          }\r\n        });\r\n    }\r\n\r\n    function EventManager() {\r\n        var subscribers = [], loadingDeferred = $.Deferred(), verbose = true;\r\n\r\n        Object.defineProperties(this, {\r\n            verbose: {\r\n                get: function () {\r\n                    return verbose;\r\n                },\r\n                set: function (value) {\r\n                    verbose = Boolean(value);\r\n                }\r\n            }\r\n        });\r\n\r\n        this.pauseTriggers = function () {\r\n            loadingDeferred.resolve();\r\n            loadingDeferred = $.Deferred();\r\n            return this;\r\n        };\r\n\r\n        this.registrationComplete = function () {\r\n            loadingDeferred.resolve();\r\n            return this;\r\n        };\r\n\r\n        function executeCallbacks(isAsync, args) {\r\n            var event = args.splice(0, 1)[0], counter = 0;\r\n\r\n            subscribers.forEach(function (subscriber) {\r\n                var operation;\r\n                if (event === subscriber.event) {\r\n                    counter++;\r\n                    logHandledTrigger(subscriber, event);\r\n                    if (args.length <= 1) {\r\n                        if (subscriber.thisp === undefined) {\r\n                            operation = function () {\r\n                                subscriber.callback(args[0]);\r\n                            };\r\n                        } else {\r\n                            operation = function () {\r\n                                subscriber.callback.call(subscriber.thisp, args[0]);\r\n                            };\r\n                        }\r\n                    } else {\r\n                        operation = function () {\r\n                            subscriber.callback.apply(subscriber.thisp || null, args);\r\n                        };\r\n                    }\r\n\r\n                    if (isAsync) {\r\n                        window.setTimeout(operation, 0);\r\n                    } else {\r\n                        operation();\r\n                    }\r\n                }\r\n            });\r\n\r\n            if (verbose && counter === 0) {\r\n                logMissedTrigger(event);\r\n            }\r\n        }\r\n\r\n        this.trigger = function trigger(event) {\r\n            if (!event) {\r\n                console.error(\"Argument 'event' is required for method EventManager.trigger\");\r\n                return;\r\n            }\r\n\r\n            // Hold off triggering events until the page is fully loaded and all listeners have been registered\r\n            loadingDeferred.promise().done(executeCallbacks.bind(null, false, $.makeArray(arguments)));\r\n        };\r\n\r\n        this.triggerAsync = function triggerAsync(event) {\r\n            if (!event) {\r\n                console.error(\"Argument 'event' is required for method EventManager.trigger\");\r\n                return;\r\n            }\r\n\r\n            // Hold off triggering events until the page is fully loaded and all listeners have been registered\r\n            loadingDeferred.promise().done(executeCallbacks.bind(null, true, $.makeArray(arguments)));\r\n        };\r\n\r\n        this.subscribe = function subscribe(event, callback, thisp) {\r\n            var registration;\r\n\r\n            if (!event || typeof callback !== \"function\") {\r\n                console.log(\r\n                    \"Skipping event registration. EventManager can only accept \" +\r\n                        \"registrations that specify an event and a callback function.\"\r\n                );\r\n\r\n                return null;\r\n            }\r\n\r\n            if (this.verbose) {\r\n                logRegistration(event, callback);\r\n            }\r\n\r\n            registration = new Registration(event, callback, thisp);\r\n            subscribers.push(registration);\r\n            return registration.id;\r\n        };\r\n\r\n        this.unsubscribe = function unsubscribe(registrationId) {\r\n            var i = _.findIndex(subscribers, function (i) {\r\n                return i.id === registrationId;\r\n            });\r\n\r\n            if (i === -1) return;\r\n            if (this.verbose) {\r\n                logUnsubscription(subscribers[i].event, subscribers[i].callback);\r\n            }\r\n\r\n            subscribers.splice(i, 1);\r\n        };\r\n    }\r\n\r\n    return new EventManager(); // Singleton\r\n}));\r\n\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_ccf/Events/ModulesLoadedEvent',[\"jquery\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\")) :\r\n    console && console.error('EventManager does not support non-amd script loading.');\r\n}(this/* window */, function ($) {\r\n\r\n    function ModulesLoadedEvent(hasErrors, successfulModules, failedModules, scope) {\r\n        if (typeof hasErrors !== \"boolean\" || !$.isArray(successfulModules) || !$.isArray(failedModules))\r\n            throw new Error(\"Cannot initialize ModulesLoadedEvent - invalid arguments\");\r\n\r\n        Object.defineProperties(this, {\r\n            scope:             { value: scope              },\r\n            hasErrors:         { value: hasErrors          },\r\n            failedModules:     { value: failedModules      },\r\n            successfulModules: { value: successfulModules  }\r\n        });\r\n    };\r\n\r\n    ModulesLoadedEvent.name = \"ModulesLoadedEvent\";\r\n    return ModulesLoadedEvent;\r\n}));\n",
    "/**\r\n * @license BrainJocks CCF Extensions\r\n * https://brainjocks.atlassian.net/wiki/spaces/SDD/pages/116261662\r\n * Copyright 2017\r\n */\r\n\r\n;(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_ccf/extensions',[], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory() :\r\n    console && console.error('Extensions does not support non-amd script loading.');\r\n}(this/* window */, function() {\r\n    \"use strict\";\r\n\r\n    function allOfType(arr, type) {\r\n        var assertFunc;\r\n        if (typeof(type) === \"string\") {\r\n            assertFunc = function (value) {\r\n                return typeof(value) === type;\r\n            };\r\n        }\r\n        else if (typeof(type) === \"function\") {\r\n            assertFunc = function (value) {\r\n                return value instanceof type;\r\n            };\r\n        }\r\n        else {\r\n            throw new TypeError(\"type must be of type function or string\");\r\n        }\r\n\r\n        return arr.length === 0 || arr.every(assertFunc);\r\n    }\r\n\r\n    function pluck(str, propertyName) {\r\n        var props = String(propertyName).split(\".\");\r\n        return str.map(function (x) {\r\n            var i;\r\n\r\n            for (i = 0; i < props.length; i = i + 1) {\r\n                x = x[props[i]];\r\n                if (x === undefined) {\r\n                    break;\r\n                }\r\n            }\r\n\r\n            return x;\r\n        });\r\n    }\r\n\r\n    function supplant(str, obj) {\r\n        return str.replace(/\\{([^{}]*)\\}/g, function (a, b) {\r\n            var r = obj[b];\r\n            return typeof r === 'string' || typeof r === 'number' ? r : a;\r\n        });\r\n    }\r\n\r\n    return Object.freeze({\r\n        supplant:  supplant,\r\n        pluck:     pluck,\r\n        allOfType: allOfType\r\n    });\r\n}));\r\n\n",
    "// Please keep functions in alphabetical order\r\n;(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_ccf/jquery.extensions',[\"jquery\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\")) :\r\n    console && console.error('jquery.extensions does not support non-amd script loading.');\r\n}(this/* window */, function($) {\r\n    \"use strict\";\r\n\r\n    function _copyAttr(to, from, attr) {\r\n        attr = String(attr);\r\n        to.attr(attr, from.attr(attr));\r\n    }\r\n\r\n    $.fn.copyAttrFrom = $.fn.copyAttrFrom || function copyAttrFrom(element, attr) {\r\n        var $el = $(element);\r\n\r\n        if ($.isArray(attr)) {\r\n            attr.forEach(_copyAttr.bind(null, this, $el));\r\n        } else {\r\n            _copyAttr(this, $el, attr);\r\n        }\r\n\r\n        return this;\r\n    };\r\n\r\n    $.fn.descendantOrSelf = $.fn.descendantOrSelf || function descendantOrSelf(sel) {\r\n        return this.filter(sel).add(this.find(sel));\r\n    };\r\n}));\r\n\n",
    "/**\r\n * @license BrainJocks CCF ModuleLoader\r\n * https://brainjocks.atlassian.net/wiki/display/SDD/moduleLoader\r\n * Copyright 2017\r\n */\r\n;(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_ccf/ModuleLoader',[\"jquery\", \"underscore\", \"eventManager\", \"score_ccf/Events/ModulesLoadedEvent\", \"score_ccf/extensions\", \"score_ccf/jquery.extensions\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"underscore\"), require(\"eventManager\"), require(\"score_ccf/Events/ModulesLoadedEvent\"), require(\"score_ccf/extensions\"), require(\"score_ccf/jquery.extensions\")) :\r\n    console && console.error('ModuleLoader does not support non-amd script loading.');\r\n}(this/* window */, function($, _, eventManager, ModulesLoadedEvent, ext) {\r\n    \"use strict\";\r\n\r\n    var ModuleState = { pending: \"pending\", failed: \"failed\", loaded: \"loaded\" },\r\n        moduleNameAttr = \"data-ux-module\",\r\n        moduleStateAttr = \"data-ux-state\",\r\n        moduleArgsAttr = \"data-ux-args\",\r\n        findModulesSel = ext.supplant(\"[{a}][{b}='{state}']\", { a:  moduleNameAttr, b: moduleStateAttr });\r\n\r\n    function ModuleLoader() { }\r\n\r\n    ModuleLoader.prototype.loadPendingModules = function loadPendingModules(scope) {\r\n        var def = $.Deferred(),\r\n            loadScope = scope,\r\n            moduleEls = findModuleElsByState(scope, ModuleState.pending),\r\n            moduleNames = _.invoke(moduleEls, \"getAttribute\", moduleNameAttr), // Extract module names from module elements\r\n            success = [], failure = [], result; // We will use these to track our progress\r\n\r\n        eventManager.pauseTriggers(); // Event manager should hold off on triggering events while new registrations are going on\r\n\r\n        require(moduleNames, function () {\r\n            // Here, 'arguments' are the modules loaded by requirejs\r\n            var modules = $.makeArray(arguments), args, i, module, initFunc;\r\n\r\n            //add XPRuleLoader for all modules\r\n            require([\"score_ccf/XPerience/XPRuleLoader\"],\r\n                function(xpRuleLoaderModule) {\r\n                    var ruleLoader = xpRuleLoaderModule.hasOwnProperty('XPRuleLoader') && xpRuleLoaderModule.XPRuleLoader instanceof Function\r\n                        ? new xpRuleLoaderModule.XPRuleLoader() /* named load */\r\n                        : xpRuleLoaderModule.__esModule === !0 && xpRuleLoaderModule.hasOwnProperty(\"default\") && xpRuleLoaderModule.default instanceof Function ? new xpRuleLoaderModule.default() /* default module load */\r\n                        : xpRuleLoaderModule instanceof Function ? new xpRuleLoaderModule() /* old fashioned modules */\r\n                        : console.log('Cannot load XPRuleLoader module to load XPerience Rules');\r\n\r\n                    for (i = 0; i < modules.length; i = i + 1) { // Loop over loaded modules and execute the ones that returned functions\r\n\r\n                        // If no ux args were provided then use empty object;\r\n                        args = JSON.parse(moduleEls[i].getAttribute(moduleArgsAttr) || \"{}\");\r\n\r\n                        if (typeof modules[i] === \"function\") {\r\n                            // Check for an explicit 'init' function\r\n                            initFunc = typeof modules[i][\"init\"] === \"function\" ? modules[i][\"init\"] : modules[i];\r\n\r\n                            try {\r\n                                // Error inside a CCF module should not stop other js from executing\r\n                                // Add scope property to module args and to module itself. This is used to contain the module's\r\n                                // js to its wrapper element - we don't want modules changing things outside of their scope.\r\n                                module = initFunc($.extend({ scope: moduleEls[i] }, args));\r\n\r\n                                if (module) {\r\n                                    Object.defineProperty(module, \"ccf_scope\", { value: moduleEls[i] });\r\n                                    $(moduleEls[i]).data(\"ccf_module\", module).data(moduleArgsAttr, args);\r\n\r\n                                    //apply rules\r\n                                    if (ruleLoader && moduleEls[i].getAttribute('data-xpr-state') === 'pending' && moduleEls[i].getAttribute('data-xpr-rule') != null) {\r\n                                        ruleLoader.applyRules(module, moduleEls[i].getAttribute('data-xpr-rule'));\r\n                                    }\r\n                                }\r\n                            } catch (err) {\r\n                                err = moduleNames[i] + \": \" + err;\r\n                                $(moduleEls[i]).attr(moduleStateAttr, ModuleState.failed);\r\n                                failure.push(err);\r\n                                console.error(err);\r\n                                continue;\r\n                            }\r\n                        }\r\n\r\n                        // Update state and clean up ux arguments from DOM so it's less cluttered\r\n                        $(moduleEls[i]).attr(moduleStateAttr, ModuleState.loaded).removeAttr(moduleArgsAttr);\r\n                        success.push(moduleNames[i]);\r\n                    }\r\n\r\n                    result = new ModulesLoadedEvent(failure.length > 0, success, failure, loadScope);\r\n                    // Event manager can now resume triggering events\r\n                    eventManager.registrationComplete().trigger(ModulesLoadedEvent.name, result);\r\n                    def.resolve(result);\r\n                });\r\n        });\r\n\r\n        return def.promise();\r\n    };\r\n\r\n    function findModuleElsByState(scope, state) {\r\n        return $(scope || \"body\").descendantOrSelf(ext.supplant(findModulesSel, { state: state })).toArray();\r\n    }\r\n\r\n    function findModulesByState(scope, state) {\r\n        return findModuleElsByState(scope, state).reduce(function (result, currentEl) {\r\n            var module = $(currentEl).data(\"ccf_module\");\r\n            if (module) result.push(module);\r\n            return result;\r\n        }, []);\r\n    }\r\n\r\n    ModuleLoader.prototype.findLoadedModules = function findLoadedModules(scope) {\r\n        return findModulesByState(scope, ModuleState.loaded);\r\n    };\r\n\r\n    ModuleLoader.prototype.findFailedModules = function findFailedModules(scope) {\r\n        return findModulesByState(scope, ModuleState.failed);\r\n    };\r\n\r\n    ModuleLoader.prototype.findPendingModules = function findPendingModules(scope) {\r\n        return findModulesByState(scope, ModuleState.pending);\r\n    };\r\n\r\n    return new ModuleLoader(); // singleton\r\n}));\r\n\n",
    "(function(root) {\ndefine(\"jqueryMigrate\", [\"jquery\"], function() {\n  return (function() {\n/*!\r\n * jQuery Migrate - v3.0.0 - 2016-06-09\r\n * Copyright jQuery Foundation and other contributors\r\n */\r\n(function( jQuery, window ) {\r\n\"use strict\";\r\n\r\n\r\njQuery.migrateVersion = \"3.0.0\";\r\n\r\n\r\n( function() {\r\n\r\n\t// Support: IE9 only\r\n\t// IE9 only creates console object when dev tools are first opened\r\n\t// Also, avoid Function#bind here to simplify PhantomJS usage\r\n\tvar log = window.console && window.console.log &&\r\n\t\t\tfunction() { window.console.log.apply( window.console, arguments ); },\r\n\t\trbadVersions = /^[12]\\./;\r\n\r\n\tif ( !log ) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t// Need jQuery 3.0.0+ and no older Migrate loaded\r\n\tif ( !jQuery || rbadVersions.test( jQuery.fn.jquery ) ) {\r\n\t\tlog( \"JQMIGRATE: jQuery 3.0.0+ REQUIRED\" );\r\n\t}\r\n\tif ( jQuery.migrateWarnings ) {\r\n\t\tlog( \"JQMIGRATE: Migrate plugin loaded multiple times\" );\r\n\t}\r\n\r\n\t// Show a message on the console so devs know we're active\r\n\tlog( \"JQMIGRATE: Migrate is installed\" +\r\n\t\t( jQuery.migrateMute ? \"\" : \" with logging active\" ) +\r\n\t\t\", version \" + jQuery.migrateVersion );\r\n\r\n} )();\r\n\r\nvar warnedAbout = {};\r\n\r\n// List of warnings already given; public read only\r\njQuery.migrateWarnings = [];\r\n\r\n// Set to false to disable traces that appear with warnings\r\nif ( jQuery.migrateTrace === undefined ) {\r\n\tjQuery.migrateTrace = true;\r\n}\r\n\r\n// Forget any warnings we've already given; public\r\njQuery.migrateReset = function() {\r\n\twarnedAbout = {};\r\n\tjQuery.migrateWarnings.length = 0;\r\n};\r\n\r\nfunction migrateWarn( msg ) {\r\n\tvar console = window.console;\r\n\tif ( !warnedAbout[ msg ] ) {\r\n\t\twarnedAbout[ msg ] = true;\r\n\t\tjQuery.migrateWarnings.push( msg );\r\n\t\tif ( console && console.warn && !jQuery.migrateMute ) {\r\n\t\t\tconsole.warn( \"JQMIGRATE: \" + msg );\r\n\t\t\tif ( jQuery.migrateTrace && console.trace ) {\r\n\t\t\t\tconsole.trace();\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction migrateWarnProp( obj, prop, value, msg ) {\r\n\tObject.defineProperty( obj, prop, {\r\n\t\tconfigurable: true,\r\n\t\tenumerable: true,\r\n\t\tget: function() {\r\n\t\t\tmigrateWarn( msg );\r\n\t\t\treturn value;\r\n\t\t}\r\n\t} );\r\n}\r\n\r\nif ( document.compatMode === \"BackCompat\" ) {\r\n\r\n\t// JQuery has never supported or tested Quirks Mode\r\n\tmigrateWarn( \"jQuery is not compatible with Quirks Mode\" );\r\n}\r\n\r\n\r\nvar oldInit = jQuery.fn.init,\r\n\toldIsNumeric = jQuery.isNumeric,\r\n\toldFind = jQuery.find,\r\n\trattrHashTest = /\\[(\\s*[-\\w]+\\s*)([~|^$*]?=)\\s*([-\\w#]*?#[-\\w#]*)\\s*\\]/,\r\n\trattrHashGlob = /\\[(\\s*[-\\w]+\\s*)([~|^$*]?=)\\s*([-\\w#]*?#[-\\w#]*)\\s*\\]/g;\r\n\r\njQuery.fn.init = function( arg1 ) {\r\n\tvar args = Array.prototype.slice.call( arguments );\r\n\r\n\tif ( typeof arg1 === \"string\" && arg1 === \"#\" ) {\r\n\r\n\t\t// JQuery( \"#\" ) is a bogus ID selector, but it returned an empty set before jQuery 3.0\r\n\t\tmigrateWarn( \"jQuery( '#' ) is not a valid selector\" );\r\n\t\targs[ 0 ] = [];\r\n\t}\r\n\r\n\treturn oldInit.apply( this, args );\r\n};\r\njQuery.fn.init.prototype = jQuery.fn;\r\n\r\njQuery.find = function( selector ) {\r\n\tvar args = Array.prototype.slice.call( arguments );\r\n\r\n\t// Support: PhantomJS 1.x\r\n\t// String#match fails to match when used with a //g RegExp, only on some strings\r\n\tif ( typeof selector === \"string\" && rattrHashTest.test( selector ) ) {\r\n\r\n\t\t// The nonstandard and undocumented unquoted-hash was removed in jQuery 1.12.0\r\n\t\t// First see if qS thinks it's a valid selector, if so avoid a false positive\r\n\t\ttry {\r\n\t\t\tdocument.querySelector( selector );\r\n\t\t} catch ( err1 ) {\r\n\r\n\t\t\t// Didn't *look* valid to qSA, warn and try quoting what we think is the value\r\n\t\t\tselector = selector.replace( rattrHashGlob, function( _, attr, op, value ) {\r\n\t\t\t\treturn \"[\" + attr + op + \"\\\"\" + value + \"\\\"]\";\r\n\t\t\t} );\r\n\r\n\t\t\t// If the regexp *may* have created an invalid selector, don't update it\r\n\t\t\t// Note that there may be false alarms if selector uses jQuery extensions\r\n\t\t\ttry {\r\n\t\t\t\tdocument.querySelector( selector );\r\n\t\t\t\tmigrateWarn( \"Attribute selector with '#' must be quoted: \" + args[ 0 ] );\r\n\t\t\t\targs[ 0 ] = selector;\r\n\t\t\t} catch ( err2 ) {\r\n\t\t\t\tmigrateWarn( \"Attribute selector with '#' was not fixed: \" + args[ 0 ] );\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\treturn oldFind.apply( this, args );\r\n};\r\n\r\n// Copy properties attached to original jQuery.find method (e.g. .attr, .isXML)\r\nvar findProp;\r\nfor ( findProp in oldFind ) {\r\n\tif ( Object.prototype.hasOwnProperty.call( oldFind, findProp ) ) {\r\n\t\tjQuery.find[ findProp ] = oldFind[ findProp ];\r\n\t}\r\n}\r\n\r\n// The number of elements contained in the matched element set\r\njQuery.fn.size = function() {\r\n\tmigrateWarn( \"jQuery.fn.size() is deprecated; use the .length property\" );\r\n\treturn this.length;\r\n};\r\n\r\njQuery.parseJSON = function() {\r\n\tmigrateWarn( \"jQuery.parseJSON is deprecated; use JSON.parse\" );\r\n\treturn JSON.parse.apply( null, arguments );\r\n};\r\n\r\njQuery.isNumeric = function( val ) {\r\n\r\n\t// The jQuery 2.2.3 implementation of isNumeric\r\n\tfunction isNumeric2( obj ) {\r\n\t\tvar realStringObj = obj && obj.toString();\r\n\t\treturn !jQuery.isArray( obj ) && ( realStringObj - parseFloat( realStringObj ) + 1 ) >= 0;\r\n\t}\r\n\r\n\tvar newValue = oldIsNumeric( val ),\r\n\t\toldValue = isNumeric2( val );\r\n\r\n\tif ( newValue !== oldValue ) {\r\n\t\tmigrateWarn( \"jQuery.isNumeric() should not be called on constructed objects\" );\r\n\t}\r\n\r\n\treturn oldValue;\r\n};\r\n\r\nmigrateWarnProp( jQuery, \"unique\", jQuery.uniqueSort,\r\n\t\"jQuery.unique is deprecated, use jQuery.uniqueSort\" );\r\n\r\n// Now jQuery.expr.pseudos is the standard incantation\r\nmigrateWarnProp( jQuery.expr, \"filters\", jQuery.expr.pseudos,\r\n\t\"jQuery.expr.filters is now jQuery.expr.pseudos\" );\r\nmigrateWarnProp( jQuery.expr, \":\", jQuery.expr.pseudos,\r\n\t\"jQuery.expr[\\\":\\\"] is now jQuery.expr.pseudos\" );\r\n\r\n\r\nvar oldAjax = jQuery.ajax;\r\n\r\njQuery.ajax = function( ) {\r\n\tvar jQXHR = oldAjax.apply( this, arguments );\r\n\r\n\t// Be sure we got a jQXHR (e.g., not sync)\r\n\tif ( jQXHR.promise ) {\r\n\t\tmigrateWarnProp( jQXHR, \"success\", jQXHR.done,\r\n\t\t\t\"jQXHR.success is deprecated and removed\" );\r\n\t\tmigrateWarnProp( jQXHR, \"error\", jQXHR.fail,\r\n\t\t\t\"jQXHR.error is deprecated and removed\" );\r\n\t\tmigrateWarnProp( jQXHR, \"complete\", jQXHR.always,\r\n\t\t\t\"jQXHR.complete is deprecated and removed\" );\r\n\t}\r\n\r\n\treturn jQXHR;\r\n};\r\n\r\n\r\nvar oldRemoveAttr = jQuery.fn.removeAttr,\r\n\toldToggleClass = jQuery.fn.toggleClass,\r\n\trmatchNonSpace = /\\S+/g;\r\n\r\njQuery.fn.removeAttr = function( name ) {\r\n\tvar self = this;\r\n\r\n\tjQuery.each( name.match( rmatchNonSpace ), function( i, attr ) {\r\n\t\tif ( jQuery.expr.match.bool.test( attr ) ) {\r\n\t\t\tmigrateWarn( \"jQuery.fn.removeAttr no longer sets boolean properties: \" + attr );\r\n\t\t\tself.prop( attr, false );\r\n\t\t}\r\n\t} );\r\n\r\n\treturn oldRemoveAttr.apply( this, arguments );\r\n};\r\n\r\njQuery.fn.toggleClass = function( state ) {\r\n\r\n\t// Only deprecating no-args or single boolean arg\r\n\tif ( state !== undefined && typeof state !== \"boolean\" ) {\r\n\t\treturn oldToggleClass.apply( this, arguments );\r\n\t}\r\n\r\n\tmigrateWarn( \"jQuery.fn.toggleClass( boolean ) is deprecated\" );\r\n\r\n\t// Toggle entire class name of each element\r\n\treturn this.each( function() {\r\n\t\tvar className = this.getAttribute && this.getAttribute( \"class\" ) || \"\";\r\n\r\n\t\tif ( className ) {\r\n\t\t\tjQuery.data( this, \"__className__\", className );\r\n\t\t}\r\n\r\n\t\t// If the element has a class name or if we're passed `false`,\r\n\t\t// then remove the whole classname (if there was one, the above saved it).\r\n\t\t// Otherwise bring back whatever was previously saved (if anything),\r\n\t\t// falling back to the empty string if nothing was stored.\r\n\t\tif ( this.setAttribute ) {\r\n\t\t\tthis.setAttribute( \"class\",\r\n\t\t\t\tclassName || state === false ?\r\n\t\t\t\t\"\" :\r\n\t\t\t\tjQuery.data( this, \"__className__\" ) || \"\"\r\n\t\t\t);\r\n\t\t}\r\n\t} );\r\n};\r\n\r\n\r\nvar internalSwapCall = false;\r\n\r\n// If this version of jQuery has .swap(), don't false-alarm on internal uses\r\nif ( jQuery.swap ) {\r\n\tjQuery.each( [ \"height\", \"width\", \"reliableMarginRight\" ], function( _, name ) {\r\n\t\tvar oldHook = jQuery.cssHooks[ name ] && jQuery.cssHooks[ name ].get;\r\n\r\n\t\tif ( oldHook ) {\r\n\t\t\tjQuery.cssHooks[ name ].get = function() {\r\n\t\t\t\tvar ret;\r\n\r\n\t\t\t\tinternalSwapCall = true;\r\n\t\t\t\tret = oldHook.apply( this, arguments );\r\n\t\t\t\tinternalSwapCall = false;\r\n\t\t\t\treturn ret;\r\n\t\t\t};\r\n\t\t}\r\n\t} );\r\n}\r\n\r\njQuery.swap = function( elem, options, callback, args ) {\r\n\tvar ret, name,\r\n\t\told = {};\r\n\r\n\tif ( !internalSwapCall ) {\r\n\t\tmigrateWarn( \"jQuery.swap() is undocumented and deprecated\" );\r\n\t}\r\n\r\n\t// Remember the old values, and insert the new ones\r\n\tfor ( name in options ) {\r\n\t\told[ name ] = elem.style[ name ];\r\n\t\telem.style[ name ] = options[ name ];\r\n\t}\r\n\r\n\tret = callback.apply( elem, args || [] );\r\n\r\n\t// Revert the old values\r\n\tfor ( name in options ) {\r\n\t\telem.style[ name ] = old[ name ];\r\n\t}\r\n\r\n\treturn ret;\r\n};\r\n\r\nvar oldData = jQuery.data;\r\n\r\njQuery.data = function( elem, name, value ) {\r\n\tvar curData;\r\n\r\n\t// If the name is transformed, look for the un-transformed name in the data object\r\n\tif ( name && name !== jQuery.camelCase( name ) ) {\r\n\t\tcurData = jQuery.hasData( elem ) && oldData.call( this, elem );\r\n\t\tif ( curData && name in curData ) {\r\n\t\t\tmigrateWarn( \"jQuery.data() always sets/gets camelCased names: \" + name );\r\n\t\t\tif ( arguments.length > 2 ) {\r\n\t\t\t\tcurData[ name ] = value;\r\n\t\t\t}\r\n\t\t\treturn curData[ name ];\r\n\t\t}\r\n\t}\r\n\r\n\treturn oldData.apply( this, arguments );\r\n};\r\n\r\nvar oldTweenRun = jQuery.Tween.prototype.run;\r\n\r\njQuery.Tween.prototype.run = function( percent ) {\r\n\tif ( jQuery.easing[ this.easing ].length > 1 ) {\r\n\t\tmigrateWarn(\r\n\t\t\t\"easing function \" +\r\n\t\t\t\"\\\"jQuery.easing.\" + this.easing.toString() +\r\n\t\t\t\"\\\" should use only first argument\"\r\n\t\t);\r\n\r\n\t\tjQuery.easing[ this.easing ] = jQuery.easing[ this.easing ].bind(\r\n\t\t\tjQuery.easing,\r\n\t\t\tpercent, this.options.duration * percent, 0, 1, this.options.duration\r\n\t\t);\r\n\t}\r\n\r\n\toldTweenRun.apply( this, arguments );\r\n};\r\n\r\nvar oldLoad = jQuery.fn.load,\r\n\toriginalFix = jQuery.event.fix;\r\n\r\njQuery.event.props = [];\r\njQuery.event.fixHooks = {};\r\n\r\njQuery.event.fix = function( originalEvent ) {\r\n\tvar event,\r\n\t\ttype = originalEvent.type,\r\n\t\tfixHook = this.fixHooks[ type ],\r\n\t\tprops = jQuery.event.props;\r\n\r\n\tif ( props.length ) {\r\n\t\tmigrateWarn( \"jQuery.event.props are deprecated and removed: \" + props.join() );\r\n\t\twhile ( props.length ) {\r\n\t\t\tjQuery.event.addProp( props.pop() );\r\n\t\t}\r\n\t}\r\n\r\n\tif ( fixHook && !fixHook._migrated_ ) {\r\n\t\tfixHook._migrated_ = true;\r\n\t\tmigrateWarn( \"jQuery.event.fixHooks are deprecated and removed: \" + type );\r\n\t\tif ( ( props = fixHook.props ) && props.length ) {\r\n\t\t\twhile ( props.length ) {\r\n\t\t\t   jQuery.event.addProp( props.pop() );\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tevent = originalFix.call( this, originalEvent );\r\n\r\n\treturn fixHook && fixHook.filter ? fixHook.filter( event, originalEvent ) : event;\r\n};\r\n\r\njQuery.each( [ \"load\", \"unload\", \"error\" ], function( _, name ) {\r\n\r\n\tjQuery.fn[ name ] = function() {\r\n\t\tvar args = Array.prototype.slice.call( arguments, 0 );\r\n\r\n\t\t// If this is an ajax load() the first arg should be the string URL;\r\n\t\t// technically this could also be the \"Anything\" arg of the event .load()\r\n\t\t// which just goes to show why this dumb signature has been deprecated!\r\n\t\t// jQuery custom builds that exclude the Ajax module justifiably die here.\r\n\t\tif ( name === \"load\" && typeof args[ 0 ] === \"string\" ) {\r\n\t\t\treturn oldLoad.apply( this, args );\r\n\t\t}\r\n\r\n\t\tmigrateWarn( \"jQuery.fn.\" + name + \"() is deprecated\" );\r\n\r\n\t\targs.splice( 0, 0, name );\r\n\t\tif ( arguments.length ) {\r\n\t\t\treturn this.on.apply( this, args );\r\n\t\t}\r\n\r\n\t\t// Use .triggerHandler here because:\r\n\t\t// - load and unload events don't need to bubble, only applied to window or image\r\n\t\t// - error event should not bubble to window, although it does pre-1.7\r\n\t\t// See http://bugs.jquery.com/ticket/11820\r\n\t\tthis.triggerHandler.apply( this, args );\r\n\t\treturn this;\r\n\t};\r\n\r\n} );\r\n\r\n// Trigger \"ready\" event only once, on document ready\r\njQuery( function() {\r\n\tjQuery( document ).triggerHandler( \"ready\" );\r\n} );\r\n\r\njQuery.event.special.ready = {\r\n\tsetup: function() {\r\n\t\tif ( this === document ) {\r\n\t\t\tmigrateWarn( \"'ready' event is deprecated\" );\r\n\t\t}\r\n\t}\r\n};\r\n\r\njQuery.fn.extend( {\r\n\r\n\tbind: function( types, data, fn ) {\r\n\t\tmigrateWarn( \"jQuery.fn.bind() is deprecated\" );\r\n\t\treturn this.on( types, null, data, fn );\r\n\t},\r\n\tunbind: function( types, fn ) {\r\n\t\tmigrateWarn( \"jQuery.fn.unbind() is deprecated\" );\r\n\t\treturn this.off( types, null, fn );\r\n\t},\r\n\tdelegate: function( selector, types, data, fn ) {\r\n\t\tmigrateWarn( \"jQuery.fn.delegate() is deprecated\" );\r\n\t\treturn this.on( types, selector, data, fn );\r\n\t},\r\n\tundelegate: function( selector, types, fn ) {\r\n\t\tmigrateWarn( \"jQuery.fn.undelegate() is deprecated\" );\r\n\t\treturn arguments.length === 1 ?\r\n\t\t\tthis.off( selector, \"**\" ) :\r\n\t\t\tthis.off( types, selector || \"**\", fn );\r\n\t}\r\n} );\r\n\r\n\r\nvar oldOffset = jQuery.fn.offset;\r\n\r\njQuery.fn.offset = function() {\r\n\tvar docElem,\r\n\t\telem = this[ 0 ],\r\n\t\torigin = { top: 0, left: 0 };\r\n\r\n\tif ( !elem || !elem.nodeType ) {\r\n\t\tmigrateWarn( \"jQuery.fn.offset() requires a valid DOM element\" );\r\n\t\treturn origin;\r\n\t}\r\n\r\n\tdocElem = ( elem.ownerDocument || document ).documentElement;\r\n\tif ( !jQuery.contains( docElem, elem ) ) {\r\n\t\tmigrateWarn( \"jQuery.fn.offset() requires an element connected to a document\" );\r\n\t\treturn origin;\r\n\t}\r\n\r\n\treturn oldOffset.apply( this, arguments );\r\n};\r\n\r\n\r\nvar oldParam = jQuery.param;\r\n\r\njQuery.param = function( data, traditional ) {\r\n\tvar ajaxTraditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional;\r\n\r\n\tif ( traditional === undefined && ajaxTraditional ) {\r\n\r\n\t\tmigrateWarn( \"jQuery.param() no longer uses jQuery.ajaxSettings.traditional\" );\r\n\t\ttraditional = ajaxTraditional;\r\n\t}\r\n\r\n\treturn oldParam.call( this, data, traditional );\r\n};\r\n\r\nvar oldSelf = jQuery.fn.andSelf || jQuery.fn.addBack;\r\n\r\njQuery.fn.andSelf = function() {\r\n\tmigrateWarn( \"jQuery.fn.andSelf() replaced by jQuery.fn.addBack()\" );\r\n\treturn oldSelf.apply( this, arguments );\r\n};\r\n\r\n\r\nvar oldDeferred = jQuery.Deferred,\r\n\ttuples = [\r\n\r\n\t\t// Action, add listener, callbacks, .then handlers, final state\r\n\t\t[ \"resolve\", \"done\", jQuery.Callbacks( \"once memory\" ),\r\n\t\t\tjQuery.Callbacks( \"once memory\" ), \"resolved\" ],\r\n\t\t[ \"reject\", \"fail\", jQuery.Callbacks( \"once memory\" ),\r\n\t\t\tjQuery.Callbacks( \"once memory\" ), \"rejected\" ],\r\n\t\t[ \"notify\", \"progress\", jQuery.Callbacks( \"memory\" ),\r\n\t\t\tjQuery.Callbacks( \"memory\" ) ]\r\n\t];\r\n\r\njQuery.Deferred = function( func ) {\r\n\tvar deferred = oldDeferred(),\r\n\t\tpromise = deferred.promise();\r\n\r\n\tdeferred.pipe = promise.pipe = function( /* fnDone, fnFail, fnProgress */ ) {\r\n\t\tvar fns = arguments;\r\n\r\n\t\tmigrateWarn( \"deferred.pipe() is deprecated\" );\r\n\r\n\t\treturn jQuery.Deferred( function( newDefer ) {\r\n\t\t\tjQuery.each( tuples, function( i, tuple ) {\r\n\t\t\t\tvar fn = jQuery.isFunction( fns[ i ] ) && fns[ i ];\r\n\r\n\t\t\t\t// Deferred.done(function() { bind to newDefer or newDefer.resolve })\r\n\t\t\t\t// deferred.fail(function() { bind to newDefer or newDefer.reject })\r\n\t\t\t\t// deferred.progress(function() { bind to newDefer or newDefer.notify })\r\n\t\t\t\tdeferred[ tuple[ 1 ] ]( function() {\r\n\t\t\t\t\tvar returned = fn && fn.apply( this, arguments );\r\n\t\t\t\t\tif ( returned && jQuery.isFunction( returned.promise ) ) {\r\n\t\t\t\t\t\treturned.promise()\r\n\t\t\t\t\t\t\t.done( newDefer.resolve )\r\n\t\t\t\t\t\t\t.fail( newDefer.reject )\r\n\t\t\t\t\t\t\t.progress( newDefer.notify );\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tnewDefer[ tuple[ 0 ] + \"With\" ](\r\n\t\t\t\t\t\t\tthis === promise ? newDefer.promise() : this,\r\n\t\t\t\t\t\t\tfn ? [ returned ] : arguments\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t} );\r\n\t\t\t} );\r\n\t\t\tfns = null;\r\n\t\t} ).promise();\r\n\r\n\t};\r\n\r\n\tif ( func ) {\r\n\t\tfunc.call( deferred, deferred );\r\n\t}\r\n\r\n\treturn deferred;\r\n};\r\n\r\n\r\n\r\n})( jQuery, window );\r\n\n\n  }).apply(root, arguments);\n});\n}(this));\n\n",
    "!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?n():\"function\"==typeof define&&define.amd?define('promise-polyfill',n):n()}(0,function(){\"use strict\";function e(){}function n(e){if(!(this instanceof n))throw new TypeError(\"Promises must be constructed via new\");if(\"function\"!=typeof e)throw new TypeError(\"not a function\");this._state=0,this._handled=!1,this._value=undefined,this._deferreds=[],f(e,this)}function t(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,n._immediateFn(function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var i;try{i=n(e._value)}catch(f){return void r(t.promise,f)}o(t.promise,i)}else(1===e._state?o:r)(t.promise,e._value)})):e._deferreds.push(t)}function o(e,t){try{if(t===e)throw new TypeError(\"A promise cannot be resolved with itself.\");if(t&&(\"object\"==typeof t||\"function\"==typeof t)){var o=t.then;if(t instanceof n)return e._state=3,e._value=t,void i(e);if(\"function\"==typeof o)return void f(function(e,n){return function(){e.apply(n,arguments)}}(o,t),e)}e._state=1,e._value=t,i(e)}catch(u){r(e,u)}}function r(e,n){e._state=2,e._value=n,i(e)}function i(e){2===e._state&&0===e._deferreds.length&&n._immediateFn(function(){e._handled||n._unhandledRejectionFn(e._value)});for(var o=0,r=e._deferreds.length;r>o;o++)t(e,e._deferreds[o]);e._deferreds=null}function f(e,n){var t=!1;try{e(function(e){t||(t=!0,o(n,e))},function(e){t||(t=!0,r(n,e))})}catch(i){if(t)return;t=!0,r(n,i)}}var u=function(e){var n=this.constructor;return this.then(function(t){return n.resolve(e()).then(function(){return t})},function(t){return n.resolve(e()).then(function(){return n.reject(t)})})},c=setTimeout;n.prototype[\"catch\"]=function(e){return this.then(null,e)},n.prototype.then=function(n,o){var r=new this.constructor(e);return t(this,new function(e,n,t){this.onFulfilled=\"function\"==typeof e?e:null,this.onRejected=\"function\"==typeof n?n:null,this.promise=t}(n,o,r)),r},n.prototype[\"finally\"]=u,n.all=function(e){return new n(function(n,t){function o(e,f){try{if(f&&(\"object\"==typeof f||\"function\"==typeof f)){var u=f.then;if(\"function\"==typeof u)return void u.call(f,function(n){o(e,n)},t)}r[e]=f,0==--i&&n(r)}catch(c){t(c)}}if(!e||\"undefined\"==typeof e.length)throw new TypeError(\"Promise.all accepts an array\");var r=Array.prototype.slice.call(e);if(0===r.length)return n([]);for(var i=r.length,f=0;r.length>f;f++)o(f,r[f])})},n.resolve=function(e){return e&&\"object\"==typeof e&&e.constructor===n?e:new n(function(n){n(e)})},n.reject=function(e){return new n(function(n,t){t(e)})},n.race=function(e){return new n(function(n,t){for(var o=0,r=e.length;r>o;o++)e[o].then(n,t)})},n._immediateFn=\"function\"==typeof setImmediate&&function(e){setImmediate(e)}||function(e){c(e,0)},n._unhandledRejectionFn=function(e){void 0!==console&&console&&console.warn(\"Possible Unhandled Promise Rejection:\",e)};var l=function(){if(\"undefined\"!=typeof self)return self;if(\"undefined\"!=typeof window)return window;if(\"undefined\"!=typeof global)return global;throw Error(\"unable to locate global object\")}();l.Promise?l.Promise.prototype[\"finally\"]||(l.Promise.prototype[\"finally\"]=u):l.Promise=n});\r\n\n",
    "!function(e){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=e();else if(\"function\"==typeof define&&define.amd)define('object-assign',[],e);else{var n;n=\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this,n.ObjectAssign=e()}}(function(){return function e(n,r,t){function o(f,u){if(!r[f]){if(!n[f]){var l=\"function\"==typeof require&&require;if(!u&&l)return l(f,!0);if(i)return i(f,!0);var c=new Error(\"Cannot find module '\"+f+\"'\");throw c.code=\"MODULE_NOT_FOUND\",c}var a=r[f]={exports:{}};n[f][0].call(a.exports,function(e){var r=n[f][1][e];return o(r?r:e)},a,a.exports,e,n,r,t)}return r[f].exports}for(var i=\"function\"==typeof require&&require,f=0;f<t.length;f++)o(t[f]);return o}({1:[function(e,n,r){\"use strict\";function t(e,n){if(void 0===e||null===e)throw new TypeError(\"Cannot convert first argument to object\");for(var r=Object(e),t=1;t<arguments.length;t++){var o=arguments[t];if(void 0!==o&&null!==o)for(var i=Object.keys(Object(o)),f=0,u=i.length;f<u;f++){var l=i[f],c=Object.getOwnPropertyDescriptor(o,l);void 0!==c&&c.enumerable&&(r[l]=o[l])}}return r}function o(){Object.assign||Object.defineProperty(Object,\"assign\",{enumerable:!1,configurable:!0,writable:!0,value:t})}n.exports={assign:t,polyfill:o}},{}]},{},[1])(1)});\r\n\n",
    "(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/XPElementBase',[\"require\", \"exports\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    /**\r\n     * Base XP Rule Element, knows how to maps attributes from xml to an element instance\r\n     */\r\n    var XPElementBase = /** @class */ (function () {\r\n        function XPElementBase(attributes) {\r\n            if (!attributes) {\r\n                throw new Error(\"Cannot initialize XperienceElement without attribute\");\r\n            }\r\n            this.applyAttributes(attributes);\r\n        }\r\n        /**\r\n         * Loop through passed object properties and creates/assigns values to the current instance\r\n         * @param {XPAttributes} attributes A dynamic object with properties\r\n         */\r\n        XPElementBase.prototype.applyAttributes = function (attributes) {\r\n            for (var key in attributes) {\r\n                if (attributes.hasOwnProperty(key)) {\r\n                    // Defined properties on XElement will be populated with a value, the rest will be added as new properties.\r\n                    if (key in this) {\r\n                        this[key] = attributes[key];\r\n                    }\r\n                    else {\r\n                        Object.defineProperty(this, key, { value: attributes[key], enumerable: !1, writable: !0, configurable: !0 });\r\n                    }\r\n                }\r\n            }\r\n        };\r\n        return XPElementBase;\r\n    }());\r\n    exports.XPElementBase = XPElementBase;\r\n});\r\n//# sourceMappingURL=XPElementBase.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/XPActionBase',[\"require\", \"exports\", \"score_ccf/XPerience/XPElementBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var XPElementBase_1 = require(\"score_ccf/XPerience/XPElementBase\");\r\n    /**\r\n     * Encapsulated basic logic for an Action\r\n     */\r\n    var XPActionBase = /** @class */ (function (_super) {\r\n        __extends(XPActionBase, _super);\r\n        function XPActionBase(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        /**\r\n         * Execute the action logic\r\n         * @param {UXModuleLike} component An instance of a UXModule component to scope the current action\r\n         */\r\n        XPActionBase.prototype.execute = function (component) {\r\n            throw new Error(\"Execute action is not implemented\");\r\n        };\r\n        return XPActionBase;\r\n    }(XPElementBase_1.XPElementBase));\r\n    exports.XPActionBase = XPActionBase;\r\n});\r\n//# sourceMappingURL=XPActionBase.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Actions/CompleteGoalAction',[\"require\", \"exports\", \"jquery\", \"./../XPActionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPActionBase_1 = require(\"./../XPActionBase\");\r\n    var CompleteGoalAction = /** @class */ (function (_super) {\r\n        __extends(CompleteGoalAction, _super);\r\n        function CompleteGoalAction(attributes) {\r\n            var _this = _super.call(this, attributes) || this;\r\n            _this.apiEndpoint = \"/scoreui/triggergoal/{goalid}\";\r\n            return _this;\r\n        }\r\n        CompleteGoalAction.prototype.execute = function (component) {\r\n            var url = this.apiEndpoint.replace(\"{goalid}\", this.goalid);\r\n            var that = this;\r\n            $.post(url, { goalId: this.goalid }, function (response) {\r\n                if (response.error) {\r\n                    throw new Error(response.error);\r\n                }\r\n                if (response.success) {\r\n                    console && console.log(\"Goal triggered: \" + that.goalid);\r\n                }\r\n            }, \"json\");\r\n        };\r\n        return CompleteGoalAction;\r\n    }(XPActionBase_1.XPActionBase));\r\n    exports.default = CompleteGoalAction;\r\n});\r\n//# sourceMappingURL=CompleteGoalAction.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Actions/ContactVisitWithTheProfileCard',[\"require\", \"exports\", \"jquery\", \"./../XPActionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPActionBase_1 = require(\"./../XPActionBase\");\r\n    var ContactVisitWithTheProfileCard = /** @class */ (function (_super) {\r\n        __extends(ContactVisitWithTheProfileCard, _super);\r\n        function ContactVisitWithTheProfileCard(attributes) {\r\n            var _this = _super.call(this, attributes) || this;\r\n            _this.apiEndpoint = \"/scoreui/concatvisitwith/{cardId}\";\r\n            return _this;\r\n        }\r\n        ContactVisitWithTheProfileCard.prototype.execute = function (component) {\r\n            var _this = this;\r\n            var url = this.apiEndpoint.replace(\"{cardId}\", this.ProfileCardId);\r\n            $.post(url, function (response) {\r\n                if (response.error) {\r\n                    throw new Error(response.error);\r\n                }\r\n                if (response.success) {\r\n                    console && console.log(\"Profile card associated: \" + _this.ProfileCardId);\r\n                }\r\n            }, \"json\");\r\n        };\r\n        return ContactVisitWithTheProfileCard;\r\n    }(XPActionBase_1.XPActionBase));\r\n    exports.default = ContactVisitWithTheProfileCard;\r\n});\r\n//# sourceMappingURL=ContactVisitWithTheProfileCard.js.map;\n",
    "(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/Utils/global',[\"require\", \"exports\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var globalNs = (function () {\r\n        // the only reliable means to get the global object is\r\n        // `Function('return this')()`\r\n        // However, this causes CSP violations in Chrome apps.\r\n        if (self !== void 0) {\r\n            return self;\r\n        }\r\n        if (window !== void 0) {\r\n            return window;\r\n        }\r\n        throw new Error('Unable to get  global object');\r\n    })();\r\n    exports.default = globalNs;\r\n});\r\n//# sourceMappingURL=global.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Actions/ShowAlertMessage',[\"require\", \"exports\", \"./../XPActionBase\", \"score_ccf/Utils/global\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var XPActionBase_1 = require(\"./../XPActionBase\");\r\n    var global_1 = require(\"score_ccf/Utils/global\");\r\n    var ShowAlertMessage = /** @class */ (function (_super) {\r\n        __extends(ShowAlertMessage, _super);\r\n        function ShowAlertMessage(attribites) {\r\n            return _super.call(this, attribites) || this;\r\n        }\r\n        ShowAlertMessage.prototype.execute = function (component) {\r\n            global_1.default.alert(this.message);\r\n        };\r\n        return ShowAlertMessage;\r\n    }(XPActionBase_1.XPActionBase));\r\n    exports.default = ShowAlertMessage;\r\n});\r\n//# sourceMappingURL=ShowAlertMessage.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Actions/TrackClientEventAction',[\"require\", \"exports\", \"score_ccf/XPerience/XPActionBase\", \"score_ccf/Utils/global\", \"object-assign\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var XPActionBase_1 = require(\"score_ccf/XPerience/XPActionBase\");\r\n    var global_1 = require(\"score_ccf/Utils/global\");\r\n    var objectAssign = require(\"object-assign\");\r\n    var TrackClientEventAction = /** @class */ (function (_super) {\r\n        __extends(TrackClientEventAction, _super);\r\n        function TrackClientEventAction(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        TrackClientEventAction.prototype.execute = function (component) {\r\n            if (global_1.default['gtag'] && global_1.default['gtag'] instanceof Function) {\r\n                var fieldsObj = {};\r\n                if (this.eventCategory != null) {\r\n                    fieldsObj['event_category'] = this.eventCategory;\r\n                }\r\n                if (this.eventLabel != null) {\r\n                    fieldsObj['event_label'] = this.eventLabel;\r\n                }\r\n                if (this.eventValue != null) {\r\n                    fieldsObj['value'] = this.eventValue;\r\n                }\r\n                if (this.dimensions != null) {\r\n                    objectAssign.polyfill();\r\n                    fieldsObj = Object.assign(fieldsObj, this.dimensions);\r\n                }\r\n                global_1.default['gtag'].apply(null, ['event', this.eventAction, fieldsObj]);\r\n            }\r\n            else {\r\n                console && console.error instanceof Function && console.error(\"Cannot send GA event, because GA is not defined. Please include GA script to a page\");\r\n            }\r\n        };\r\n        return TrackClientEventAction;\r\n    }(XPActionBase_1.XPActionBase));\r\n    exports.default = TrackClientEventAction;\r\n});\r\n//# sourceMappingURL=TrackClientEventAction.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/XPConditionBase',[\"require\", \"exports\", \"score_ccf/XPerience/XPElementBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var XPElementBase_1 = require(\"score_ccf/XPerience/XPElementBase\");\r\n    /**\r\n     * Encapsulated basic logic for a Condition\r\n     */\r\n    var XPConditionBase = /** @class */ (function (_super) {\r\n        __extends(XPConditionBase, _super);\r\n        function XPConditionBase(attributes) {\r\n            var _this = _super.call(this, attributes) || this;\r\n            _this.defer = _this._initDeferredCondition();\r\n            return _this;\r\n        }\r\n        /**\r\n         * Setup current condition to a scope of component\r\n         * @param {UXModuleLike} component An instance of a UXModule component to scope the current condition\r\n         */\r\n        XPConditionBase.prototype.setup = function (component) {\r\n            throw new Error('Setup method is not implemented');\r\n        };\r\n        /**\r\n         * Resolve current condition with true state\r\n         */\r\n        XPConditionBase.prototype.true = function () {\r\n            return !0;\r\n        };\r\n        /**\r\n         * Resolve current condition with false state\r\n         */\r\n        XPConditionBase.prototype.false = function () {\r\n            return !1;\r\n        };\r\n        /**\r\n         * Produce a new defer condition computation object\r\n         */\r\n        XPConditionBase.prototype.reset = function () {\r\n            this.defer = this._initDeferredCondition();\r\n        };\r\n        /**\r\n         * Decorate current condition resolve defer object when calling true/false methods\r\n         */\r\n        XPConditionBase.prototype._initDeferredCondition = function () {\r\n            var _this = this;\r\n            return new Promise(function (resolve, reject) {\r\n                var origTrue = _this.true.bind(_this);\r\n                _this.true = function () {\r\n                    var value = origTrue();\r\n                    resolve(value);\r\n                    return value;\r\n                };\r\n                var origFalse = _this.false.bind(_this);\r\n                _this.false = function () {\r\n                    var value = origFalse();\r\n                    resolve(value);\r\n                    return value;\r\n                };\r\n            });\r\n        };\r\n        return XPConditionBase;\r\n    }(XPElementBase_1.XPElementBase));\r\n    exports.XPConditionBase = XPConditionBase;\r\n});\r\n//# sourceMappingURL=XPConditionBase.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/ClickedCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var ComponentClickedCondition = /** @class */ (function (_super) {\r\n        __extends(ComponentClickedCondition, _super);\r\n        function ComponentClickedCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        ComponentClickedCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component || !component.scope) {\r\n                throw new Error(\"Cannot setup a condition without 'component' with property 'scope'\");\r\n            }\r\n            $(component.scope).on('click', function (ev) {\r\n                _this.true();\r\n            });\r\n        };\r\n        return ComponentClickedCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = ComponentClickedCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=ClickedCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/GetsFocusCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var ComponentGetsFocusCondition = /** @class */ (function (_super) {\r\n        __extends(ComponentGetsFocusCondition, _super);\r\n        function ComponentGetsFocusCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        ComponentGetsFocusCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component) {\r\n                throw new Error('Cannot setup a condition without \\'component\\' instance');\r\n            }\r\n            $(component).on('focus', function () {\r\n                _this.true();\r\n            });\r\n        };\r\n        return ComponentGetsFocusCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = ComponentGetsFocusCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=GetsFocusCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/LosesFocusCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var ComponentLosesFocusCondition = /** @class */ (function (_super) {\r\n        __extends(ComponentLosesFocusCondition, _super);\r\n        function ComponentLosesFocusCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        ComponentLosesFocusCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component) {\r\n                throw new Error('Cannot setup a condition without \\'component\\' instance');\r\n            }\r\n            $(component).on('blur', function () {\r\n                _this.true();\r\n            });\r\n        };\r\n        return ComponentLosesFocusCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = ComponentLosesFocusCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=LosesFocusCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/OncePerPageViewCondition',[\"require\", \"exports\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var ComponentClickedCondition = /** @class */ (function (_super) {\r\n        __extends(ComponentClickedCondition, _super);\r\n        function ComponentClickedCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        ComponentClickedCondition.prototype.setup = function (component) {\r\n            this.true();\r\n        };\r\n        ComponentClickedCondition.prototype.reset = function () {\r\n            // call base logic\r\n            _super.prototype.reset.call(this);\r\n            // reject condition\r\n            this.false();\r\n        };\r\n        return ComponentClickedCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = ComponentClickedCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=OncePerPageViewCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/SlideChangedCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var ComponentSlideChangedCondition = /** @class */ (function (_super) {\r\n        __extends(ComponentSlideChangedCondition, _super);\r\n        function ComponentSlideChangedCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        ComponentSlideChangedCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component) {\r\n                throw new Error('Cannot setup a condition without \\'component\\' instance');\r\n            }\r\n            $(component).on('afterChange.slider', function () {\r\n                _this.true();\r\n            });\r\n        };\r\n        return ComponentSlideChangedCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = ComponentSlideChangedCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=SlideChangedCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/SlideChangingCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var ComponentSlideChangingCondition = /** @class */ (function (_super) {\r\n        __extends(ComponentSlideChangingCondition, _super);\r\n        function ComponentSlideChangingCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        ComponentSlideChangingCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component) {\r\n                throw new Error('Cannot setup a condition without \\'component\\' instance');\r\n            }\r\n            $(component).on('beforeChange.slider', function () {\r\n                _this.true();\r\n            });\r\n        };\r\n        return ComponentSlideChangingCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = ComponentSlideChangingCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=SlideChangingCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/VideoHasPlayedExactNSecondsCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var VideoHasPlayedExactNSecondsCondition = /** @class */ (function (_super) {\r\n        __extends(VideoHasPlayedExactNSecondsCondition, _super);\r\n        function VideoHasPlayedExactNSecondsCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        VideoHasPlayedExactNSecondsCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component) {\r\n                throw new Error('Cannot setup a condition without \\'component\\' instance');\r\n            }\r\n            // parse to number\r\n            this.seconds = this.seconds | 0;\r\n            $(component).on('update.timeline', function (e, currentTime) {\r\n                if (isFinite(_this.seconds) && currentTime === _this.seconds) {\r\n                    _this.true();\r\n                }\r\n            });\r\n        };\r\n        return VideoHasPlayedExactNSecondsCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = VideoHasPlayedExactNSecondsCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=VideoHasPlayedExactNSecondsCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/VideoHasPlayedNSecondsOrMoreCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var VideoHasPlayedNSecondsCondition = /** @class */ (function (_super) {\r\n        __extends(VideoHasPlayedNSecondsCondition, _super);\r\n        function VideoHasPlayedNSecondsCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        VideoHasPlayedNSecondsCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component) {\r\n                throw new Error('Cannot setup a condition without \\'component\\' instance');\r\n            }\r\n            this.seconds = this.seconds;\r\n            $(component).on('update.timeline', function (e, currentTime) {\r\n                if (isFinite(_this.seconds) && currentTime >= _this.seconds) {\r\n                    _this.true();\r\n                }\r\n            });\r\n        };\r\n        return VideoHasPlayedNSecondsCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = VideoHasPlayedNSecondsCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=VideoHasPlayedNSecondsOrMoreCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/VideoIsFinishedCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var VideoIsFinishedCondition = /** @class */ (function (_super) {\r\n        __extends(VideoIsFinishedCondition, _super);\r\n        function VideoIsFinishedCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        VideoIsFinishedCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component) {\r\n                throw new Error('Cannot setup a condition without \\'component\\' instance');\r\n            }\r\n            $(component).on('end.video', function () {\r\n                _this.true();\r\n            });\r\n        };\r\n        return VideoIsFinishedCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = VideoIsFinishedCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=VideoIsFinishedCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/VideoIsPausedCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var VideoIsFinishedCondition = /** @class */ (function (_super) {\r\n        __extends(VideoIsFinishedCondition, _super);\r\n        function VideoIsFinishedCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        VideoIsFinishedCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component) {\r\n                throw new Error('Cannot setup a condition without \\'component\\' instance');\r\n            }\r\n            $(component).on('pause.video', function () {\r\n                _this.true();\r\n            });\r\n        };\r\n        return VideoIsFinishedCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = VideoIsFinishedCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=VideoIsPausedCondition.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Conditions/VideoStartsToPlayCondition',[\"require\", \"exports\", \"jquery\", \"score_ccf/XPerience/XPConditionBase\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var $ = require(\"jquery\");\r\n    var XPConditionBase_1 = require(\"score_ccf/XPerience/XPConditionBase\");\r\n    var VideoIsFinishedCondition = /** @class */ (function (_super) {\r\n        __extends(VideoIsFinishedCondition, _super);\r\n        function VideoIsFinishedCondition(attributes) {\r\n            return _super.call(this, attributes) || this;\r\n        }\r\n        VideoIsFinishedCondition.prototype.setup = function (component) {\r\n            var _this = this;\r\n            if (!component) {\r\n                throw new Error('Cannot setup a condition without \\'component\\' instance');\r\n            }\r\n            $(component).on('start.video', function () {\r\n                _this.true();\r\n            });\r\n        };\r\n        return VideoIsFinishedCondition;\r\n    }(XPConditionBase_1.XPConditionBase));\r\n    exports.default = VideoIsFinishedCondition;\r\n    ;\r\n});\r\n//# sourceMappingURL=VideoStartsToPlayCondition.js.map;\n",
    "(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Contracts/UXModuleLike',[\"require\", \"exports\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n});\r\n//# sourceMappingURL=UXModuleLike.js.map;\n",
    "(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Contracts/XPContracts',[\"require\", \"exports\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n});\r\n//# sourceMappingURL=XPContracts.js.map;\n",
    "(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Elements',[\"require\", \"exports\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    exports.ElementPairs = {\r\n        conditions: {\r\n            '{8DB82A68-5F50-43B3-A487-D5B9300DEE80}': 'score_ccf/XPerience/Conditions/OncePerPageViewCondition',\r\n            '{982886A0-22D5-4371-8E63-D5F0FA292954}': 'score_ccf/XPerience/Conditions/ClickedCondition',\r\n            '{83C03CA9-68D5-4100-8537-004917B1DEF3}': 'score_ccf/XPerience/Conditions/SlideChangedCondition',\r\n            '{6EDA1FF1-B3CB-411A-ADAC-6029D1763BCB}': 'score_ccf/XPerience/Conditions/SlideChangingCondition',\r\n            '{D153496F-BF42-4A47-A9D5-780693D0C2E7}': 'score_ccf/XPerience/Conditions/GetsFocusCondition',\r\n            '{3FF617C7-4ED5-43FC-A766-4F2414107414}': 'score_ccf/XPerience/Conditions/LosesFocusCondition',\r\n            '{39EDBFA3-3BC8-4E7D-BC32-4BF2712353AC}': 'score_ccf/XPerience/Conditions/VideoHasPlayedExactNSecondsCondition',\r\n            '{67E995CD-155D-42CF-9DC8-B7655F9785A5}': 'score_ccf/XPerience/Conditions/VideoHasPlayedNSecondsOrMoreCondition',\r\n            '{B44C5804-E2F8-4BFA-9060-31108659D475}': 'score_ccf/XPerience/Conditions/VideoIsFinishedCondition',\r\n            '{7B2C46CA-0B9E-453F-A269-FA2E0079659D}': 'score_ccf/XPerience/Conditions/VideoIsPausedCondition',\r\n            '{8D46ACE2-32D4-449C-81EF-7C88808F0A14}': 'score_ccf/XPerience/Conditions/VideoStartsToPlayCondition',\r\n        },\r\n        actions: {\r\n            '{70F1F9DC-3930-41EC-9FBB-40B673B15586}': 'score_ccf/XPerience/Actions/CompleteGoalAction',\r\n            '{7DED5636-8783-431B-A965-31E1A47405E1}': 'score_ccf/XPerience/Actions/TrackClientEventAction',\r\n            '{C87955F1-3E04-45A3-A235-4BACD1594B42}': 'score_ccf/XPerience/Actions/TrackClientEventAction',\r\n            '{4D91B017-F733-4E0E-B387-AB0013A71395}': 'score_ccf/XPerience/Actions/TrackClientEventAction',\r\n            '{8C501C45-D61B-4D10-A9E1-0DEDACCD149F}': 'score_ccf/XPerience/Actions/ShowAlertMessage',\r\n            '{8C23D183-5F62-4336-A6AD-2876A0D45511}': 'score_ccf/XPerience/Actions/ContactVisitWithTheProfileCard'\r\n        }\r\n    };\r\n});\r\n//# sourceMappingURL=Elements.js.map;\n",
    "(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Enums/XPEnums',[\"require\", \"exports\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var XPModuleState;\r\n    (function (XPModuleState) {\r\n        XPModuleState[\"Pending\"] = \"pending\";\r\n        XPModuleState[\"InProcess\"] = \"inprocess\";\r\n        XPModuleState[\"Loaded\"] = \"loaded\";\r\n        XPModuleState[\"Failed\"] = \"failed\";\r\n    })(XPModuleState = exports.XPModuleState || (exports.XPModuleState = {}));\r\n    ;\r\n    var XPJunction;\r\n    (function (XPJunction) {\r\n        XPJunction[\"AND\"] = \"and\";\r\n        XPJunction[\"OR\"] = \"or\";\r\n    })(XPJunction = exports.XPJunction || (exports.XPJunction = {}));\r\n    ;\r\n});\r\n//# sourceMappingURL=XPEnums.js.map;\n",
    "(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/Xperience/Enums/XPEnums',[\"require\", \"exports\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var XPModuleState;\r\n    (function (XPModuleState) {\r\n        XPModuleState[\"Pending\"] = \"pending\";\r\n        XPModuleState[\"InProcess\"] = \"inprocess\";\r\n        XPModuleState[\"Loaded\"] = \"loaded\";\r\n        XPModuleState[\"Failed\"] = \"failed\";\r\n    })(XPModuleState = exports.XPModuleState || (exports.XPModuleState = {}));\r\n    ;\r\n    var XPJunction;\r\n    (function (XPJunction) {\r\n        XPJunction[\"AND\"] = \"and\";\r\n        XPJunction[\"OR\"] = \"or\";\r\n    })(XPJunction = exports.XPJunction || (exports.XPJunction = {}));\r\n    ;\r\n});\r\n//# sourceMappingURL=XPEnums.js.map;\n",
    "var __extends = (this && this.__extends) || (function () {\r\n    var extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n    return function (d, b) {\r\n        extendStatics(d, b);\r\n        function __() { this.constructor = d; }\r\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n    };\r\n})();\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/Utils/XPConditionJunction',[\"require\", \"exports\", \"score_ccf/Xperience/Enums/XPEnums\", \"promise-polyfill\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var XPEnums_1 = require(\"score_ccf/Xperience/Enums/XPEnums\");\r\n    require(\"promise-polyfill\"); // polyfill\r\n    /**\r\n     * Encapsulates junction logic of two and more conditions\r\n     */\r\n    var XPConditionJunction = /** @class */ (function () {\r\n        function XPConditionJunction(operand, conditions) {\r\n            this.operand = operand;\r\n            this._innerConditions = conditions;\r\n            this._operand = operand;\r\n            this.defer = this._initDeferredCondition();\r\n        }\r\n        XPConditionJunction.prototype._initDeferredCondition = function () {\r\n            var _this = this;\r\n            return new Promise(function (resolve, reject) {\r\n                Promise.all(_this._innerConditions).then(function (conditions) {\r\n                    // nested conditions\r\n                    var innerPromises = [];\r\n                    for (var x = 0; x < conditions.length; x++) {\r\n                        var cond = conditions[x];\r\n                        // collect nested condition defer objects, to build current juction behaviour \r\n                        innerPromises = innerPromises.concat(cond.defer);\r\n                    }\r\n                    if (_this._operand === XPEnums_1.XPJunction.AND) {\r\n                        // wait until all nested conditions will be executed and join them when AND operation\r\n                        Promise.all(innerPromises).then(function (results) {\r\n                            // because modern hipsters cannot understand bitwise operation it is written in that style\r\n                            resolve(results.every(function (v) { return v === !0; }));\r\n                        });\r\n                    }\r\n                    if (_this._operand === XPEnums_1.XPJunction.OR) {\r\n                        var count_1 = innerPromises.length;\r\n                        for (var x = 0; x < innerPromises.length; x++) {\r\n                            innerPromises[x].then(function (value) {\r\n                                // if at least one condition was resolved with true - current Promise will be resolved with true,\r\n                                // if none of conditions was resolved with true, current Promise will be resolved with false\r\n                                if (!--count_1 || value === !0) {\r\n                                    resolve(!!value || !!count_1);\r\n                                }\r\n                            }, function (reason) {\r\n                                reject(reason);\r\n                            });\r\n                        }\r\n                        ;\r\n                    }\r\n                }, function (reason) {\r\n                    reject(reason);\r\n                });\r\n            });\r\n        };\r\n        /**\r\n         * Setup conditions to a scope of the component\r\n         * @param component An instance of a UXModule component to scope conditions of the current junction\r\n         */\r\n        XPConditionJunction.prototype.setup = function (component) {\r\n            for (var index = 0; index < this._innerConditions.length; index++) {\r\n                var conditionModuleLoader = this._innerConditions[index];\r\n                // setup condition as soon as it is loaded\r\n                conditionModuleLoader.then(function (condModule) {\r\n                    condModule.setup(component);\r\n                });\r\n            }\r\n        };\r\n        XPConditionJunction.prototype.false = function () {\r\n            throw new Error('You cannot resolve Junction condition, only inner conditions can resolve the Junction condition.');\r\n        };\r\n        XPConditionJunction.prototype.true = function () {\r\n            throw new Error('You cannot resolve Junction condition, only inner conditions can resolve the Junction condition.');\r\n        };\r\n        /**\r\n         * Proxy reset call to all nested conditions and product a new defer object for current junction\r\n         */\r\n        XPConditionJunction.prototype.reset = function () {\r\n            Promise.all(this._innerConditions).then(function (conditions) {\r\n                for (var x = 0; x < conditions.length; x++) {\r\n                    conditions[x].reset();\r\n                }\r\n            });\r\n            this.defer = this._initDeferredCondition();\r\n        };\r\n        return XPConditionJunction;\r\n    }());\r\n    exports.XPConditionJunction = XPConditionJunction;\r\n    /**\r\n     * Encapsulates AND Junction logic of two and more conditions\r\n     */\r\n    var XPConditionAnd = /** @class */ (function (_super) {\r\n        __extends(XPConditionAnd, _super);\r\n        function XPConditionAnd(conditions) {\r\n            return _super.call(this, XPEnums_1.XPJunction.AND, conditions) || this;\r\n        }\r\n        return XPConditionAnd;\r\n    }(XPConditionJunction));\r\n    exports.XPConditionAnd = XPConditionAnd;\r\n    /**\r\n     * Encapsulates OR Junction logic of two and more conditions\r\n     */\r\n    var XPConditionOr = /** @class */ (function (_super) {\r\n        __extends(XPConditionOr, _super);\r\n        function XPConditionOr(conditions) {\r\n            return _super.call(this, XPEnums_1.XPJunction.AND, conditions) || this;\r\n        }\r\n        return XPConditionOr;\r\n    }(XPConditionJunction));\r\n    exports.XPConditionOr = XPConditionOr;\r\n});\r\n//# sourceMappingURL=XPConditionJunction.js.map;\n",
    "(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/XPActionLoader',[\"require\", \"exports\", \"score_ccf/XPerience/Elements\", \"promise-polyfill\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    var __syncRequire = typeof module === \"object\" && typeof module.exports === \"object\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var Elements_1 = require(\"score_ccf/XPerience/Elements\");\r\n    require(\"promise-polyfill\");\r\n    /**\r\n     * Load XP Action modules from xml desription\r\n     */\r\n    var XPActionLoader = /** @class */ (function () {\r\n        function XPActionLoader() {\r\n        }\r\n        /**\r\n         * Load module and create an instance of it\r\n         * @param {string} modulePath path to a module which should be dynamicly loaded\r\n         * @param {XPAttributes} attributes Initial data which will be passed to a loaded module constructor\r\n         */\r\n        XPActionLoader.prototype.getModule = function (modulePath, attributes) {\r\n            // all actions should be inherited from XPActionBase\r\n            return (__syncRequire ? Promise.resolve().then(function () { return require(modulePath); }) : new Promise(function (resolve_1, reject_1) { require([modulePath], resolve_1, reject_1); })).then(function (actModule) {\r\n                // create an instance of a named export\r\n                if (actModule.hasOwnProperty(Elements_1.ElementPairs.actions[attributes[\"id\"]])) {\r\n                    return new actModule[Elements_1.ElementPairs.actions[attributes[\"id\"]]](attributes);\r\n                }\r\n                // create an instance from default export\r\n                if ('__esModule' in actModule === !0 && actModule.hasOwnProperty(\"default\")) {\r\n                    return new actModule.default(attributes);\r\n                }\r\n                // outdated version of module\r\n                if (actModule instanceof Function) {\r\n                    return new actModule(attributes);\r\n                }\r\n                throw new Error(\"Cannot detect a constructor of the '\" + modulePath + \"' module.'\");\r\n            }, function (reason) {\r\n                throw new Error(\"Cannot load module '\" + modulePath + \"'. Reason: \" + reason);\r\n            });\r\n        };\r\n        /**\r\n         * Load a list of Action Modules based on xml nodes\r\n         * @param actionNodes A List of xml nodes which describe an action\r\n         */\r\n        XPActionLoader.prototype.loadActions = function (actionNodes) {\r\n            var actions = [];\r\n            for (var index = 0; index < actionNodes.length; index++) {\r\n                var actNode = actionNodes[index];\r\n                var actAttr = {};\r\n                var nodeAttrs = actNode.attributes;\r\n                // create a dynamic object with attributes defined on an XML element\r\n                for (var index_1 = 0; index_1 < nodeAttrs.length; index_1++) {\r\n                    var attr = nodeAttrs[index_1];\r\n                    actAttr[attr.name] = attr.value;\r\n                }\r\n                // check required 'id' attribute, without it we cannot load an action\r\n                if (!('id' in actAttr) || typeof actAttr.id !== \"string\") {\r\n                    throw new Error(\"Cannot load action without ID. Action XML: \" + actNode.outerHTML);\r\n                }\r\n                // resolve module name based on its id\r\n                var moduleName = Elements_1.ElementPairs.actions[actAttr.id];\r\n                if (!moduleName || moduleName.length <= 0) {\r\n                    throw new Error(\"Cannot load detect Action Module Name by ID. Please specity it in 'score_ccf/XPerience/Elements' module. Action XML: \" + actNode.outerHTML);\r\n                }\r\n                var modulePath = ~moduleName.indexOf('/') ? moduleName : \"score_ccf/XPerience/Actions/\" + moduleName;\r\n                var actionLoader = this.getModule(modulePath, actAttr);\r\n                actions = actions.concat(actionLoader);\r\n            }\r\n            return actions;\r\n        };\r\n        return XPActionLoader;\r\n    }());\r\n    exports.XPActionLoader = XPActionLoader;\r\n});\r\n//# sourceMappingURL=XPActionLoader.js.map;\n",
    "(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/XPConditionLoader',[\"require\", \"exports\", \"score_ccf/XPerience/Elements\", \"score_ccf/XPerience/Utils/XPConditionJunction\", \"promise-polyfill\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    var __syncRequire = typeof module === \"object\" && typeof module.exports === \"object\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var Elements_1 = require(\"score_ccf/XPerience/Elements\");\r\n    var XPConditionJunction_1 = require(\"score_ccf/XPerience/Utils/XPConditionJunction\");\r\n    require(\"promise-polyfill\");\r\n    var XPConditionLoader = /** @class */ (function () {\r\n        function XPConditionLoader() {\r\n        }\r\n        /**\r\n         * Load condition module and create an instance of it\r\n         * @param {string} modulePath path to a module which should be dynamicly loaded\r\n         * @param {XPAttributes} attributes Initial data which will be passed to a loaded module constructor\r\n         */\r\n        XPConditionLoader.prototype.getModule = function (modulePath, attributes) {\r\n            return (__syncRequire ? Promise.resolve().then(function () { return require(modulePath); }) : new Promise(function (resolve_1, reject_1) { require([modulePath], resolve_1, reject_1); })).then(function (condModule) {\r\n                // create an instance of a named export\r\n                if (condModule.hasOwnProperty(Elements_1.ElementPairs.conditions[attributes[\"id\"]])) {\r\n                    return new condModule[Elements_1.ElementPairs.actions[attributes[\"id\"]]](attributes);\r\n                }\r\n                // create an instance from default export\r\n                if ('__esModule' in condModule && condModule.__esModule === !0 && condModule.hasOwnProperty(\"default\")) {\r\n                    return new condModule.default(attributes);\r\n                }\r\n                // outdated version of module\r\n                if (condModule instanceof Function) {\r\n                    return new condModule(attributes);\r\n                }\r\n                throw new Error(\"Cannot detect a constructor of the '\" + modulePath + \"' module.'\");\r\n            }, function (reason) {\r\n                throw new Error(\"Cannot load module '\" + modulePath + \"'. Reason: \" + reason);\r\n            });\r\n        };\r\n        /**\r\n         * Load a list of Action Modules based on xml nodes\r\n         * @param actionNodes A List of xml nodes which describe an action\r\n         */\r\n        XPConditionLoader.prototype.loadConditions = function (component, condEls) {\r\n            var conditions = [];\r\n            for (var x = 0; x < condEls.length; x++) {\r\n                var condNode = condEls[x];\r\n                switch (condNode.nodeName) {\r\n                    case '#text':\r\n                        /* do nothing */\r\n                        break;\r\n                    case 'or':\r\n                        /* Junction is a proxy object which calculates passed internal conditions defer object and resolves itself accordingly */\r\n                        conditions = conditions.concat(this.doOrOperation(this.loadConditions(component, condNode.childNodes)));\r\n                        break;\r\n                    case 'and':\r\n                        /* Junction is a proxy object which calculates passed internal conditions defer object and resolves itself accordingly */\r\n                        conditions = conditions.concat(this.doAndOperation(this.loadConditions(component, condNode.childNodes)));\r\n                        break;\r\n                    case 'condition':\r\n                        var condAttr = {};\r\n                        var nodeAttrs = condNode.attributes;\r\n                        // create a dynamic object with attributes defined on an XML element\r\n                        for (var index = 0; index < nodeAttrs.length; index++) {\r\n                            var attr = nodeAttrs[index];\r\n                            condAttr[attr.name] = attr.value;\r\n                        }\r\n                        // check required 'id' attribute, without it we cannot load a condition\r\n                        if (!('id' in condAttr) || typeof condAttr.id !== \"string\") {\r\n                            throw new Error(\"Cannot load condition without ID. Condition XML: \" + condAttr.outerHTML);\r\n                        }\r\n                        // resolve module name based on its id\r\n                        var moduleName = Elements_1.ElementPairs.conditions[condAttr.id];\r\n                        if (!moduleName || moduleName.length <= 0) {\r\n                            throw new Error(\"Cannot load detect Condition Module Name by ID. Please specity it in 'score_ccf/XPerience/Elements' module. Condition XML: \" + condNode.outerHTML);\r\n                        }\r\n                        var modulePath = ~moduleName.indexOf('/') ? moduleName : \"score_ccf/XPerience/Conditions/\" + moduleName;\r\n                        conditions = conditions.concat(this.getModule(modulePath, condAttr));\r\n                        break;\r\n                    default:\r\n                        throw new Error(\"Unsupportable condition element: \" + condNode.outerHTML);\r\n                }\r\n            }\r\n            return conditions;\r\n        };\r\n        /**\r\n         * Create a proxy object which handles junction of conditions\r\n         * @param conditions A list of conditions which are going to be joined with \"Or\" junction\r\n         */\r\n        XPConditionLoader.prototype.doOrOperation = function (conditions) {\r\n            return Promise.resolve(new XPConditionJunction_1.XPConditionOr(conditions));\r\n        };\r\n        /**\r\n         * Create a proxy object which handles junction of conditions\r\n         * @param conditions A list of conditions which are going to be joined with \"And\" junction\r\n         */\r\n        XPConditionLoader.prototype.doAndOperation = function (conditions) {\r\n            return Promise.resolve(new XPConditionJunction_1.XPConditionAnd(conditions));\r\n        };\r\n        return XPConditionLoader;\r\n    }());\r\n    exports.XPConditionLoader = XPConditionLoader;\r\n});\r\n//# sourceMappingURL=XPConditionLoader.js.map;\n",
    "/**\r\n * @license BrainJocks XperienceRuleLoader\r\n * https://brainjocks.atlassian.net/wiki/spaces/SDD/pages/217972958\r\n * Copyright 2017\r\n */\r\n(function (factory) {\r\n    if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n        var v = factory(require, exports);\r\n        if (v !== undefined) module.exports = v;\r\n    }\r\n    else if (typeof define === \"function\" && define.amd) {\r\n        define('score_ccf/XPerience/XPRuleLoader',[\"require\", \"exports\", \"score_ccf/XPerience/XPActionLoader\", \"score_ccf/XPerience/XPConditionLoader\", \"score_ccf/XPerience/Enums/XPEnums\", \"promise-polyfill\"], factory);\r\n    }\r\n})(function (require, exports) {\r\n    \"use strict\";\r\n    Object.defineProperty(exports, \"__esModule\", { value: true });\r\n    var XPActionLoader_1 = require(\"score_ccf/XPerience/XPActionLoader\");\r\n    var XPConditionLoader_1 = require(\"score_ccf/XPerience/XPConditionLoader\");\r\n    var XPEnums_1 = require(\"score_ccf/XPerience/Enums/XPEnums\");\r\n    require(\"promise-polyfill\"); // polyfill\r\n    /**\r\n     * Responsible to parse XP Rules and load required conditions and actions.\r\n     */\r\n    var XPRuleLoader = /** @class */ (function () {\r\n        function XPRuleLoader(actionLoader, conditionLoader) {\r\n            if (actionLoader === void 0) { actionLoader = new XPActionLoader_1.XPActionLoader(); }\r\n            if (conditionLoader === void 0) { conditionLoader = new XPConditionLoader_1.XPConditionLoader(); }\r\n            this._actionLoader = actionLoader;\r\n            this._conditionLoader = conditionLoader;\r\n        }\r\n        /**\r\n         * Apply XP Rule xml to a component\r\n         * @param {UXModuleLike} component An instance of a UXModule component to scope the rules\r\n         * @param {string} xml xml structure which defines XP Rule.\r\n         */\r\n        XPRuleLoader.prototype.applyRules = function (component, xml) {\r\n            // TODO: expose hook for custom actions/conditions\r\n            if (!component.scope || !(component.scope instanceof HTMLElement)) {\r\n                throw new Error('Components which does not have \\'scope\\' property are not supported. Please extend your component with scope property.');\r\n            }\r\n            // don't do anything if xml rule is not a string or empty\r\n            if (!xml || typeof xml !== \"string\" || xml.length <= 0) {\r\n                return;\r\n            }\r\n            // insure component has a marker that indicates XP Rules in loading\r\n            component.scope.setAttribute('data-xpr-state', XPEnums_1.XPModuleState.InProcess);\r\n            var rulesDoc = new DOMParser().parseFromString(xml, 'text/xml');\r\n            if (rulesDoc.querySelector('action, condition') == null) {\r\n                // no condition or action was found, just skip the whole logic and return\r\n                component.scope.setAttribute('data-xpr-state', XPEnums_1.XPModuleState.Loaded);\r\n                return;\r\n            }\r\n            var rulesPromises = [];\r\n            var rules = rulesDoc.querySelectorAll('rule');\r\n            for (var index = 0; index < rules.length; index++) {\r\n                var ruleEl = rules[index];\r\n                // get promises with action module instances\r\n                var actions = this._actionLoader.loadActions(ruleEl.querySelectorAll('action'));\r\n                // get promises with condition module instances\r\n                var conditions = this._conditionLoader.loadConditions(component, ruleEl.querySelector('conditions').childNodes);\r\n                // set an array with promises \r\n                rulesPromises = rulesPromises.concat(this.runRule(conditions, actions, component));\r\n            }\r\n            // when all xp rule condition were loaded (modules loaded) mark current component as xp rule loaded.\r\n            Promise.all(rulesPromises).then(function () {\r\n                component.scope.setAttribute('data-xpr-state', XPEnums_1.XPModuleState.Loaded);\r\n            }, function (reason) {\r\n                // mark component as XP Rules failed.\r\n                component.scope.setAttribute('data-xpr-state', XPEnums_1.XPModuleState.Failed);\r\n                throw new Error(reason);\r\n            });\r\n        };\r\n        /**\r\n         * Run one particular rule. Wait until conditions will be computed and run actions after that.\r\n         * @param {Promise<XPCondition>[]} conditions An Arrya of conditions which will be attached to a component\r\n         * @param {Promise<XPAction>[]} actions An Array of actions which can be executed in scope of a component\r\n         * @param {UXModuleLike} component An instance of a UXModule component to scope the rule\r\n         */\r\n        XPRuleLoader.prototype.runRule = function (conditions, actions, component) {\r\n            var _this = this;\r\n            if (conditions.length === 0 && actions.length === 0) {\r\n                // handle case when XP Rule was removed from a component\r\n                return Promise.resolve();\r\n            }\r\n            return Promise.all(conditions).then(function (condModules) {\r\n                var condsDefs = [];\r\n                for (var x = 0; x < condModules.length; x++) {\r\n                    var condModule = condModules[x];\r\n                    // setup a condition\r\n                    condModule.setup(component);\r\n                    // get a condition defer object which indicates is condition computed or not\r\n                    condsDefs = condsDefs.concat(condModule.defer);\r\n                }\r\n                // wait until the conditions computed.\r\n                Promise.all(condsDefs).then(function (values) {\r\n                    if (values.every(function (v) { return v === !0; })) {\r\n                        Promise.all(actions).then(function (actionModules) {\r\n                            // execute actions\r\n                            actionModules.forEach(function (actionModule) { actionModule.execute(component); });\r\n                            // reset conditions to run them more than once per page view\r\n                            condModules.forEach(function (condModule) { condModule.reset(); });\r\n                            _this.runRule(conditions, actions, component);\r\n                        });\r\n                    }\r\n                    else {\r\n                        // reset conditions to run them more than once per page view\r\n                        condModules.forEach(function (condModule) { condModule.reset(); });\r\n                        _this.runRule(conditions, actions, component);\r\n                    }\r\n                });\r\n            });\r\n        };\r\n        return XPRuleLoader;\r\n    }());\r\n    exports.XPRuleLoader = XPRuleLoader;\r\n});\r\n//# sourceMappingURL=XPRuleLoader.js.map;\n",
    "/** @license\r\n * RequireJS plugin for async dependency load like JSONP and Google Maps\r\n * Author: Miller Medeiros\r\n * Version: 0.1.2 (2014/02/24)\r\n * Released under the MIT license\r\n */\r\ndefine('async',[],function(){\r\n\r\n    var DEFAULT_PARAM_NAME = 'callback',\r\n        _uid = 0;\r\n\r\n    function injectScript(src){\r\n        var s, t;\r\n        s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = src;\r\n        t = document.getElementsByTagName('script')[0]; t.parentNode.insertBefore(s,t);\r\n    }\r\n\r\n    function formatUrl(name, id){\r\n        var paramRegex = /!(.+)/,\r\n            url = name.replace(paramRegex, ''),\r\n            param = (paramRegex.test(name))? name.replace(/.+!/, '') : DEFAULT_PARAM_NAME;\r\n        url += (url.indexOf('?') < 0)? '?' : '&';\r\n        return url + param +'='+ id;\r\n    }\r\n\r\n    function uid() {\r\n        _uid += 1;\r\n        return '__async_req_'+ _uid +'__';\r\n    }\r\n\r\n    return{\r\n        load : function(name, req, onLoad, config){\r\n            if(config.isBuild){\r\n                onLoad(null); //avoid errors on the optimizer\r\n            }else{\r\n                var id = uid();\r\n                //create a global variable that stores onLoad so callback\r\n                //function can define new module after async load\r\n                window[id] = onLoad;\r\n                injectScript(formatUrl(req.toUrl(name), id));\r\n            }\r\n        }\r\n    };\r\n});\r\n\n",
    "/** @license\r\n * Plugin to load JS files that have dependencies but aren't wrapped into\r\n * `define` calls.\r\n * Author: Miller Medeiros\r\n * Version: 0.1.0 (2011/12/13)\r\n * Released under the MIT license\r\n */\r\ndefine('depend',[],function () {\r\n\r\n    var rParts = /^(.*)\\[([^\\]]*)\\]$/;\r\n\r\n    return {\r\n\r\n        //example: depend!bar[jquery,lib/foo]\r\n        load : function(name, req, onLoad, config){\r\n            var parts = rParts.exec(name);\r\n\r\n            req(parts[2].split(','), function(){\r\n                req([parts[1]], function(mod){\r\n                    onLoad(mod);\r\n                });\r\n            });\r\n        }\r\n\r\n    };\r\n\r\n});\r\n\n",
    "/**\r\n * Basic parser for URL properties\r\n * @author Miller Medeiros\r\n * @version 0.1.0 (2011/12/06)\r\n * MIT license\r\n */\r\ndefine('propertyParser',[],function(){\r\n\r\n    var rProps = /([\\w-]+)\\s*:\\s*(?:(\\[[^\\]]+\\])|([^,]+)),?/g, //match \"foo:bar\" and \"lorem:[ipsum,dolor]\" capturing name as $1 and val as $2 or $3\r\n        rArr = /^\\[([^\\]]+)\\]$/; //match \"[foo,bar]\" capturing \"foo,bar\"\r\n\r\n    function parseProperties(str){\r\n        var match, obj = {};\r\n        while (match = rProps.exec(str)) {\r\n            obj[ match[1] ] = typecastVal(match[2] || match[3]);\r\n        }\r\n        return obj;\r\n    }\r\n\r\n    function typecastVal(val){\r\n        if (rArr.test(val)){\r\n            val = val.replace(rArr, '$1').split(',');\r\n        } else if (val === 'null'){\r\n            val = null;\r\n        } else if (val === 'false'){\r\n            val = false;\r\n        } else if (val === 'true'){\r\n            val = true;\r\n        } else if (val === '' || val === \"''\" || val === '\"\"'){\r\n            val = '';\r\n        } else if (! isNaN(val)) {\r\n            //isNaN('') == false\r\n            val = +val;\r\n        }\r\n        return val;\r\n    }\r\n\r\n    //API\r\n    return {\r\n        parseProperties : parseProperties,\r\n        typecastVal : typecastVal\r\n    };\r\n});\r\n\n",
    "/** @license\r\n * RequireJS plugin for loading web fonts using the WebFont Loader\r\n * Author: Miller Medeiros\r\n * Version: 0.2.0 (2011/12/06)\r\n * Released under the MIT license\r\n */\r\ndefine('font',['propertyParser'], function (propertyParser) {\r\n\r\n    var rParts = /^([^,]+),([^\\|]+)\\|?/;\r\n\r\n    function parseName(name) {\r\n        var data = {},\r\n            vendors = name.split('|'),\r\n            n = vendors.length,\r\n            match;\r\n\r\n        while (n--) {\r\n            match = rParts.exec(vendors[n]);\r\n            data[ match[1] ] = propertyParser.parseProperties(match[2]);\r\n        }\r\n        return data;\r\n    }\r\n\r\n    // API\r\n    return {\r\n\r\n        //example: font!google,families:[Tangerine,Cantarell,Yanone Kaffeesatz:700]\r\n        load : function(name, req, onLoad, config){\r\n            if (config.isBuild) {\r\n                onLoad(null); //avoid errors on the optimizer\r\n            } else {\r\n                var data = parseName(name);\r\n                data.active = onLoad;\r\n                data.inactive = function(){\r\n                    onLoad(false);\r\n                };\r\n                req([(document.location.protocol === 'https:'? 'https' : 'http') +'://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js'], function(){\r\n                    WebFont.load(data);\r\n                });\r\n            }\r\n        }\r\n\r\n    };\r\n\r\n});\r\n\n",
    "/** @license\r\n * RequireJS plugin for loading Google Ajax API modules thru `google.load`\r\n * Author: Miller Medeiros\r\n * Version: 0.2.0 (2011/12/06)\r\n * Released under the MIT license\r\n */\r\ndefine('goog',['async', 'propertyParser'], function (async, propertyParser) {\r\n\r\n    var rParts = /^([^,]+)(?:,([^,]+))?(?:,(.+))?/;\r\n\r\n    function parseName(name){\r\n        var match = rParts.exec(name),\r\n            data = {\r\n                moduleName : match[1],\r\n                version : match[2] || '1'\r\n            };\r\n        data.settings = propertyParser.parseProperties(match[3]);\r\n        return data;\r\n    }\r\n\r\n    return {\r\n        load : function(name, req, onLoad, config){\r\n            if (config.isBuild) {\r\n                onLoad(null); //avoid errors on the optimizer\r\n            } else {\r\n                var data = parseName(name),\r\n                    settings = data.settings;\r\n\r\n                settings.callback = onLoad;\r\n\r\n                req(['async!'+ (document.location.protocol === 'https:'? 'https' : 'http') +'://www.google.com/jsapi'], function(){\r\n                    google.load(data.moduleName, data.version, settings);\r\n                });\r\n            }\r\n        }\r\n    };\r\n\r\n});\r\n\n",
    "/** @license\r\n * RequireJS Image Plugin\r\n * Author: Miller Medeiros\r\n * Version: 0.2.2 (2013/02/08)\r\n * Released under the MIT license\r\n */\r\ndefine('image',[],function(){\r\n\r\n    var CACHE_BUST_QUERY_PARAM = 'bust',\r\n        CACHE_BUST_FLAG = '!bust',\r\n        RELATIVE_FLAG = '!rel';\r\n\r\n    function noop(){}\r\n\r\n    function cacheBust(url){\r\n        url = url.replace(CACHE_BUST_FLAG, '');\r\n        url += (url.indexOf('?') < 0)? '?' : '&';\r\n        return url + CACHE_BUST_QUERY_PARAM +'='+ Math.round(2147483647 * Math.random());\r\n    }\r\n\r\n    return {\r\n        load : function(name, req, onLoad, config){\r\n            var img;\r\n            if(config.isBuild){\r\n                onLoad(null); //avoid errors on the optimizer since it can't inline image files\r\n            }else{\r\n                img = new Image();\r\n                img.onerror = function (err) {\r\n                    onLoad.error(err);\r\n                };\r\n                img.onload = function(evt){\r\n                    onLoad(img);\r\n                    try {\r\n                        delete img.onload; //release memory - suggested by John Hann\r\n                    } catch(err) {\r\n                        img.onload = noop; // IE7 :(\r\n                    }\r\n                };\r\n                if (name.indexOf(RELATIVE_FLAG) !== -1) {\r\n                    //load image relative to module path / baseUrl\r\n                    img.src = req.toUrl( name.replace(RELATIVE_FLAG, '') );\r\n                } else {\r\n                    img.src = name;\r\n                }\r\n            }\r\n        },\r\n        normalize : function (name, normalize) {\r\n            //used normalize to avoid caching references to a \"cache busted\" request\r\n            return (name.indexOf(CACHE_BUST_FLAG) === -1)? name : cacheBust(name);\r\n        }\r\n    };\r\n\r\n});\r\n\n",
    "/**\r\n * @license text 2.0.15 Copyright jQuery Foundation and other contributors.\r\n * Released under MIT license, http://github.com/requirejs/text/LICENSE\r\n */\r\n/*jslint regexp: true */\r\n/*global require, XMLHttpRequest, ActiveXObject,\r\n  define, window, process, Packages,\r\n  java, location, Components, FileUtils */\r\n\r\ndefine('text',['module'], function (module) {\r\n    'use strict';\r\n\r\n    var text, fs, Cc, Ci, xpcIsWindows,\r\n        progIds = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.4.0'],\r\n        xmlRegExp = /^\\s*<\\?xml(\\s)+version=[\\'\\\"](\\d)*.(\\d)*[\\'\\\"](\\s)*\\?>/im,\r\n        bodyRegExp = /<body[^>]*>\\s*([\\s\\S]+)\\s*<\\/body>/im,\r\n        hasLocation = typeof location !== 'undefined' && location.href,\r\n        defaultProtocol = hasLocation && location.protocol && location.protocol.replace(/\\:/, ''),\r\n        defaultHostName = hasLocation && location.hostname,\r\n        defaultPort = hasLocation && (location.port || undefined),\r\n        buildMap = {},\r\n        masterConfig = (module.config && module.config()) || {};\r\n\r\n    function useDefault(value, defaultValue) {\r\n        return value === undefined || value === '' ? defaultValue : value;\r\n    }\r\n\r\n    //Allow for default ports for http and https.\r\n    function isSamePort(protocol1, port1, protocol2, port2) {\r\n        if (port1 === port2) {\r\n            return true;\r\n        } else if (protocol1 === protocol2) {\r\n            if (protocol1 === 'http') {\r\n                return useDefault(port1, '80') === useDefault(port2, '80');\r\n            } else if (protocol1 === 'https') {\r\n                return useDefault(port1, '443') === useDefault(port2, '443');\r\n            }\r\n        }\r\n        return false;\r\n    }\r\n\r\n    text = {\r\n        version: '2.0.15',\r\n\r\n        strip: function (content) {\r\n            //Strips <?xml ...?> declarations so that external SVG and XML\r\n            //documents can be added to a document without worry. Also, if the string\r\n            //is an HTML document, only the part inside the body tag is returned.\r\n            if (content) {\r\n                content = content.replace(xmlRegExp, \"\");\r\n                var matches = content.match(bodyRegExp);\r\n                if (matches) {\r\n                    content = matches[1];\r\n                }\r\n            } else {\r\n                content = \"\";\r\n            }\r\n            return content;\r\n        },\r\n\r\n        jsEscape: function (content) {\r\n            return content.replace(/(['\\\\])/g, '\\\\$1')\r\n                .replace(/[\\f]/g, \"\\\\f\")\r\n                .replace(/[\\b]/g, \"\\\\b\")\r\n                .replace(/[\\n]/g, \"\\\\n\")\r\n                .replace(/[\\t]/g, \"\\\\t\")\r\n                .replace(/[\\r]/g, \"\\\\r\")\r\n                .replace(/[\\u2028]/g, \"\\\\u2028\")\r\n                .replace(/[\\u2029]/g, \"\\\\u2029\");\r\n        },\r\n\r\n        createXhr: masterConfig.createXhr || function () {\r\n            //Would love to dump the ActiveX crap in here. Need IE 6 to die first.\r\n            var xhr, i, progId;\r\n            if (typeof XMLHttpRequest !== \"undefined\") {\r\n                return new XMLHttpRequest();\r\n            } else if (typeof ActiveXObject !== \"undefined\") {\r\n                for (i = 0; i < 3; i += 1) {\r\n                    progId = progIds[i];\r\n                    try {\r\n                        xhr = new ActiveXObject(progId);\r\n                    } catch (e) {}\r\n\r\n                    if (xhr) {\r\n                        progIds = [progId];  // so faster next time\r\n                        break;\r\n                    }\r\n                }\r\n            }\r\n\r\n            return xhr;\r\n        },\r\n\r\n        /**\r\n         * Parses a resource name into its component parts. Resource names\r\n         * look like: module/name.ext!strip, where the !strip part is\r\n         * optional.\r\n         * @param {String} name the resource name\r\n         * @returns {Object} with properties \"moduleName\", \"ext\" and \"strip\"\r\n         * where strip is a boolean.\r\n         */\r\n        parseName: function (name) {\r\n            var modName, ext, temp,\r\n                strip = false,\r\n                index = name.lastIndexOf(\".\"),\r\n                isRelative = name.indexOf('./') === 0 ||\r\n                             name.indexOf('../') === 0;\r\n\r\n            if (index !== -1 && (!isRelative || index > 1)) {\r\n                modName = name.substring(0, index);\r\n                ext = name.substring(index + 1);\r\n            } else {\r\n                modName = name;\r\n            }\r\n\r\n            temp = ext || modName;\r\n            index = temp.indexOf(\"!\");\r\n            if (index !== -1) {\r\n                //Pull off the strip arg.\r\n                strip = temp.substring(index + 1) === \"strip\";\r\n                temp = temp.substring(0, index);\r\n                if (ext) {\r\n                    ext = temp;\r\n                } else {\r\n                    modName = temp;\r\n                }\r\n            }\r\n\r\n            return {\r\n                moduleName: modName,\r\n                ext: ext,\r\n                strip: strip\r\n            };\r\n        },\r\n\r\n        xdRegExp: /^((\\w+)\\:)?\\/\\/([^\\/\\\\]+)/,\r\n\r\n        /**\r\n         * Is an URL on another domain. Only works for browser use, returns\r\n         * false in non-browser environments. Only used to know if an\r\n         * optimized .js version of a text resource should be loaded\r\n         * instead.\r\n         * @param {String} url\r\n         * @returns Boolean\r\n         */\r\n        useXhr: function (url, protocol, hostname, port) {\r\n            var uProtocol, uHostName, uPort,\r\n                match = text.xdRegExp.exec(url);\r\n            if (!match) {\r\n                return true;\r\n            }\r\n            uProtocol = match[2];\r\n            uHostName = match[3];\r\n\r\n            uHostName = uHostName.split(':');\r\n            uPort = uHostName[1];\r\n            uHostName = uHostName[0];\r\n\r\n            return (!uProtocol || uProtocol === protocol) &&\r\n                   (!uHostName || uHostName.toLowerCase() === hostname.toLowerCase()) &&\r\n                   ((!uPort && !uHostName) || isSamePort(uProtocol, uPort, protocol, port));\r\n        },\r\n\r\n        finishLoad: function (name, strip, content, onLoad) {\r\n            content = strip ? text.strip(content) : content;\r\n            if (masterConfig.isBuild) {\r\n                buildMap[name] = content;\r\n            }\r\n            onLoad(content);\r\n        },\r\n\r\n        load: function (name, req, onLoad, config) {\r\n            //Name has format: some.module.filext!strip\r\n            //The strip part is optional.\r\n            //if strip is present, then that means only get the string contents\r\n            //inside a body tag in an HTML string. For XML/SVG content it means\r\n            //removing the <?xml ...?> declarations so the content can be inserted\r\n            //into the current doc without problems.\r\n\r\n            // Do not bother with the work if a build and text will\r\n            // not be inlined.\r\n            if (config && config.isBuild && !config.inlineText) {\r\n                onLoad();\r\n                return;\r\n            }\r\n\r\n            masterConfig.isBuild = config && config.isBuild;\r\n\r\n            var parsed = text.parseName(name),\r\n                nonStripName = parsed.moduleName +\r\n                    (parsed.ext ? '.' + parsed.ext : ''),\r\n                url = req.toUrl(nonStripName),\r\n                useXhr = (masterConfig.useXhr) ||\r\n                         text.useXhr;\r\n\r\n            // Do not load if it is an empty: url\r\n            if (url.indexOf('empty:') === 0) {\r\n                onLoad();\r\n                return;\r\n            }\r\n\r\n            //Load the text. Use XHR if possible and in a browser.\r\n            if (!hasLocation || useXhr(url, defaultProtocol, defaultHostName, defaultPort)) {\r\n                text.get(url, function (content) {\r\n                    text.finishLoad(name, parsed.strip, content, onLoad);\r\n                }, function (err) {\r\n                    if (onLoad.error) {\r\n                        onLoad.error(err);\r\n                    }\r\n                });\r\n            } else {\r\n                //Need to fetch the resource across domains. Assume\r\n                //the resource has been optimized into a JS module. Fetch\r\n                //by the module name + extension, but do not include the\r\n                //!strip part to avoid file system issues.\r\n                req([nonStripName], function (content) {\r\n                    text.finishLoad(parsed.moduleName + '.' + parsed.ext,\r\n                                    parsed.strip, content, onLoad);\r\n                });\r\n            }\r\n        },\r\n\r\n        write: function (pluginName, moduleName, write, config) {\r\n            if (buildMap.hasOwnProperty(moduleName)) {\r\n                var content = text.jsEscape(buildMap[moduleName]);\r\n                write.asModule(pluginName + \"!\" + moduleName,\r\n                               \"define(function () { return '\" +\r\n                                   content +\r\n                               \"';});\\n\");\r\n            }\r\n        },\r\n\r\n        writeFile: function (pluginName, moduleName, req, write, config) {\r\n            var parsed = text.parseName(moduleName),\r\n                extPart = parsed.ext ? '.' + parsed.ext : '',\r\n                nonStripName = parsed.moduleName + extPart,\r\n                //Use a '.js' file name so that it indicates it is a\r\n                //script that can be loaded across domains.\r\n                fileName = req.toUrl(parsed.moduleName + extPart) + '.js';\r\n\r\n            //Leverage own load() method to load plugin value, but only\r\n            //write out values that do not have the strip argument,\r\n            //to avoid any potential issues with ! in file names.\r\n            text.load(nonStripName, req, function (value) {\r\n                //Use own write() method to construct full module value.\r\n                //But need to create shell that translates writeFile's\r\n                //write() to the right interface.\r\n                var textWrite = function (contents) {\r\n                    return write(fileName, contents);\r\n                };\r\n                textWrite.asModule = function (moduleName, contents) {\r\n                    return write.asModule(moduleName, fileName, contents);\r\n                };\r\n\r\n                text.write(pluginName, nonStripName, textWrite, config);\r\n            }, config);\r\n        }\r\n    };\r\n\r\n    if (masterConfig.env === 'node' || (!masterConfig.env &&\r\n            typeof process !== \"undefined\" &&\r\n            process.versions &&\r\n            !!process.versions.node &&\r\n            !process.versions['node-webkit'] &&\r\n            !process.versions['atom-shell'])) {\r\n        //Using special require.nodeRequire, something added by r.js.\r\n        fs = require.nodeRequire('fs');\r\n\r\n        text.get = function (url, callback, errback) {\r\n            try {\r\n                var file = fs.readFileSync(url, 'utf8');\r\n                //Remove BOM (Byte Mark Order) from utf8 files if it is there.\r\n                if (file[0] === '\\uFEFF') {\r\n                    file = file.substring(1);\r\n                }\r\n                callback(file);\r\n            } catch (e) {\r\n                if (errback) {\r\n                    errback(e);\r\n                }\r\n            }\r\n        };\r\n    } else if (masterConfig.env === 'xhr' || (!masterConfig.env &&\r\n            text.createXhr())) {\r\n        text.get = function (url, callback, errback, headers) {\r\n            var xhr = text.createXhr(), header;\r\n            xhr.open('GET', url, true);\r\n\r\n            //Allow plugins direct access to xhr headers\r\n            if (headers) {\r\n                for (header in headers) {\r\n                    if (headers.hasOwnProperty(header)) {\r\n                        xhr.setRequestHeader(header.toLowerCase(), headers[header]);\r\n                    }\r\n                }\r\n            }\r\n\r\n            //Allow overrides specified in config\r\n            if (masterConfig.onXhr) {\r\n                masterConfig.onXhr(xhr, url);\r\n            }\r\n\r\n            xhr.onreadystatechange = function (evt) {\r\n                var status, err;\r\n                //Do not explicitly handle errors, those should be\r\n                //visible via console output in the browser.\r\n                if (xhr.readyState === 4) {\r\n                    status = xhr.status || 0;\r\n                    if (status > 399 && status < 600) {\r\n                        //An http 4xx or 5xx error. Signal an error.\r\n                        err = new Error(url + ' HTTP status: ' + status);\r\n                        err.xhr = xhr;\r\n                        if (errback) {\r\n                            errback(err);\r\n                        }\r\n                    } else {\r\n                        callback(xhr.responseText);\r\n                    }\r\n\r\n                    if (masterConfig.onXhrComplete) {\r\n                        masterConfig.onXhrComplete(xhr, url);\r\n                    }\r\n                }\r\n            };\r\n            xhr.send(null);\r\n        };\r\n    } else if (masterConfig.env === 'rhino' || (!masterConfig.env &&\r\n            typeof Packages !== 'undefined' && typeof java !== 'undefined')) {\r\n        //Why Java, why is this so awkward?\r\n        text.get = function (url, callback) {\r\n            var stringBuffer, line,\r\n                encoding = \"utf-8\",\r\n                file = new java.io.File(url),\r\n                lineSeparator = java.lang.System.getProperty(\"line.separator\"),\r\n                input = new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(file), encoding)),\r\n                content = '';\r\n            try {\r\n                stringBuffer = new java.lang.StringBuffer();\r\n                line = input.readLine();\r\n\r\n                // Byte Order Mark (BOM) - The Unicode Standard, version 3.0, page 324\r\n                // http://www.unicode.org/faq/utf_bom.html\r\n\r\n                // Note that when we use utf-8, the BOM should appear as \"EF BB BF\", but it doesn't due to this bug in the JDK:\r\n                // http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4508058\r\n                if (line && line.length() && line.charAt(0) === 0xfeff) {\r\n                    // Eat the BOM, since we've already found the encoding on this file,\r\n                    // and we plan to concatenating this buffer with others; the BOM should\r\n                    // only appear at the top of a file.\r\n                    line = line.substring(1);\r\n                }\r\n\r\n                if (line !== null) {\r\n                    stringBuffer.append(line);\r\n                }\r\n\r\n                while ((line = input.readLine()) !== null) {\r\n                    stringBuffer.append(lineSeparator);\r\n                    stringBuffer.append(line);\r\n                }\r\n                //Make sure we return a JavaScript string and not a Java string.\r\n                content = String(stringBuffer.toString()); //String\r\n            } finally {\r\n                input.close();\r\n            }\r\n            callback(content);\r\n        };\r\n    } else if (masterConfig.env === 'xpconnect' || (!masterConfig.env &&\r\n            typeof Components !== 'undefined' && Components.classes &&\r\n            Components.interfaces)) {\r\n        //Avert your gaze!\r\n        Cc = Components.classes;\r\n        Ci = Components.interfaces;\r\n        Components.utils['import']('resource://gre/modules/FileUtils.jsm');\r\n        xpcIsWindows = ('@mozilla.org/windows-registry-key;1' in Cc);\r\n\r\n        text.get = function (url, callback) {\r\n            var inStream, convertStream, fileObj,\r\n                readData = {};\r\n\r\n            if (xpcIsWindows) {\r\n                url = url.replace(/\\//g, '\\\\');\r\n            }\r\n\r\n            fileObj = new FileUtils.File(url);\r\n\r\n            //XPCOM, you so crazy\r\n            try {\r\n                inStream = Cc['@mozilla.org/network/file-input-stream;1']\r\n                           .createInstance(Ci.nsIFileInputStream);\r\n                inStream.init(fileObj, 1, 0, false);\r\n\r\n                convertStream = Cc['@mozilla.org/intl/converter-input-stream;1']\r\n                                .createInstance(Ci.nsIConverterInputStream);\r\n                convertStream.init(inStream, \"utf-8\", inStream.available(),\r\n                Ci.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER);\r\n\r\n                convertStream.readString(inStream.available(), readData);\r\n                convertStream.close();\r\n                inStream.close();\r\n                callback(readData.value);\r\n            } catch (e) {\r\n                throw new Error((fileObj && fileObj.path || '') + ': ' + e);\r\n            }\r\n        };\r\n    }\r\n    return text;\r\n});\r\n\n",
    "/** @license\r\n * RequireJS plugin for loading JSON files\r\n * - depends on Text plugin and it was HEAVILY \"inspired\" by it as well.\r\n * Author: Miller Medeiros\r\n * Version: 0.4.0 (2014/04/10)\r\n * Released under the MIT license\r\n */\r\ndefine('json',['text'], function(text){\r\n\r\n    var CACHE_BUST_QUERY_PARAM = 'bust',\r\n        CACHE_BUST_FLAG = '!bust',\r\n        jsonParse = (typeof JSON !== 'undefined' && typeof JSON.parse === 'function')? JSON.parse : function(val){\r\n            return eval('('+ val +')'); //quick and dirty\r\n        },\r\n        buildMap = {};\r\n\r\n    function cacheBust(url){\r\n        url = url.replace(CACHE_BUST_FLAG, '');\r\n        url += (url.indexOf('?') < 0)? '?' : '&';\r\n        return url + CACHE_BUST_QUERY_PARAM +'='+ Math.round(2147483647 * Math.random());\r\n    }\r\n\r\n    //API\r\n    return {\r\n\r\n        load : function(name, req, onLoad, config) {\r\n            if (( config.isBuild && (config.inlineJSON === false || name.indexOf(CACHE_BUST_QUERY_PARAM +'=') !== -1)) || (req.toUrl(name).indexOf('empty:') === 0)) {\r\n                //avoid inlining cache busted JSON or if inlineJSON:false\r\n                //and don't inline files marked as empty!\r\n                onLoad(null);\r\n            } else {\r\n                text.get(req.toUrl(name), function(data){\r\n                    var parsed;\r\n                    if (config.isBuild) {\r\n                        buildMap[name] = data;\r\n                        onLoad(data);\r\n                    } else {\r\n                        try {\r\n                            parsed = jsonParse(data);\r\n                        } catch (e) {\r\n                            onLoad.error(e);\r\n                        }\r\n                        onLoad(parsed);\r\n                    }\r\n                },\r\n                    onLoad.error, {\r\n                        accept: 'application/json'\r\n                    }\r\n                );\r\n            }\r\n        },\r\n\r\n        normalize : function (name, normalize) {\r\n            // used normalize to avoid caching references to a \"cache busted\" request\r\n            if (name.indexOf(CACHE_BUST_FLAG) !== -1) {\r\n                name = cacheBust(name);\r\n            }\r\n            // resolve any relative paths\r\n            return normalize(name);\r\n        },\r\n\r\n        //write method based on RequireJS official text plugin by James Burke\r\n        //https://github.com/jrburke/requirejs/blob/master/text.js\r\n        write : function(pluginName, moduleName, write){\r\n            if(moduleName in buildMap){\r\n                var content = buildMap[moduleName];\r\n                write('define(\"'+ pluginName +'!'+ moduleName +'\", function(){ return '+ content +';});\\n');\r\n            }\r\n        }\r\n\r\n    };\r\n});\r\n\n",
    "//>>excludeStart('excludeMdown', pragmas.excludeMdown)\r\n//\r\n// edited original source code to convert API and wrap into\r\n// an AMD module, changes are before/after the wrapped code.\r\n//\r\n// you can replace the markdown converter as long as it\r\n// implements the `makeHtml()` method\r\n//\r\ndefine('markdownConverter',['require', 'exports'], function(require, exports){\r\n// ======= START WRAP\r\n\r\n\r\nvar Markdown;\r\n\r\nif (typeof exports === \"object\" && typeof require === \"function\") // we're in a CommonJS (e.g. Node.js) module\r\n    Markdown = exports;\r\nelse\r\n    Markdown = {};\r\n\r\n// The following text is included for historical reasons, but should\r\n// be taken with a pinch of salt; it's not all true anymore.\r\n\r\n//\r\n// Wherever possible, Showdown is a straight, line-by-line port\r\n// of the Perl version of Markdown.\r\n//\r\n// This is not a normal parser design; it's basically just a\r\n// series of string substitutions.  It's hard to read and\r\n// maintain this way,  but keeping Showdown close to the original\r\n// design makes it easier to port new features.\r\n//\r\n// More importantly, Showdown behaves like markdown.pl in most\r\n// edge cases.  So web applications can do client-side preview\r\n// in Javascript, and then build identical HTML on the server.\r\n//\r\n// This port needs the new RegExp functionality of ECMA 262,\r\n// 3rd Edition (i.e. Javascript 1.5).  Most modern web browsers\r\n// should do fine.  Even with the new regular expression features,\r\n// We do a lot of work to emulate Perl's regex functionality.\r\n// The tricky changes in this file mostly have the \"attacklab:\"\r\n// label.  Major or self-explanatory changes don't.\r\n//\r\n// Smart diff tools like Araxis Merge will be able to match up\r\n// this file with markdown.pl in a useful way.  A little tweaking\r\n// helps: in a copy of markdown.pl, replace \"#\" with \"//\" and\r\n// replace \"$text\" with \"text\".  Be sure to ignore whitespace\r\n// and line endings.\r\n//\r\n\r\n\r\n//\r\n// Usage:\r\n//\r\n//   var text = \"Markdown *rocks*.\";\r\n//\r\n//   var converter = new Markdown.Converter();\r\n//   var html = converter.makeHtml(text);\r\n//\r\n//   alert(html);\r\n//\r\n// Note: move the sample code to the bottom of this\r\n// file before uncommenting it.\r\n//\r\n\r\n(function () {\r\n\r\n    function identity(x) { return x; }\r\n    function returnFalse(x) { return false; }\r\n\r\n    function HookCollection() { }\r\n\r\n    HookCollection.prototype = {\r\n\r\n        chain: function (hookname, func) {\r\n            var original = this[hookname];\r\n            if (!original)\r\n                throw new Error(\"unknown hook \" + hookname);\r\n\r\n            if (original === identity)\r\n                this[hookname] = func;\r\n            else\r\n                this[hookname] = function (x) { return func(original(x)); }\r\n        },\r\n        set: function (hookname, func) {\r\n            if (!this[hookname])\r\n                throw new Error(\"unknown hook \" + hookname);\r\n            this[hookname] = func;\r\n        },\r\n        addNoop: function (hookname) {\r\n            this[hookname] = identity;\r\n        },\r\n        addFalse: function (hookname) {\r\n            this[hookname] = returnFalse;\r\n        }\r\n    };\r\n\r\n    Markdown.HookCollection = HookCollection;\r\n\r\n    // g_urls and g_titles allow arbitrary user-entered strings as keys. This\r\n    // caused an exception (and hence stopped the rendering) when the user entered\r\n    // e.g. [push] or [__proto__]. Adding a prefix to the actual key prevents this\r\n    // (since no builtin property starts with \"s_\"). See\r\n    // http://meta.stackoverflow.com/questions/64655/strange-wmd-bug\r\n    // (granted, switching from Array() to Object() alone would have left only __proto__\r\n    // to be a problem)\r\n    function SaveHash() { }\r\n    SaveHash.prototype = {\r\n        set: function (key, value) {\r\n            this[\"s_\" + key] = value;\r\n        },\r\n        get: function (key) {\r\n            return this[\"s_\" + key];\r\n        }\r\n    };\r\n\r\n    Markdown.Converter = function () {\r\n        var pluginHooks = this.hooks = new HookCollection();\r\n        pluginHooks.addNoop(\"plainLinkText\");  // given a URL that was encountered by itself (without markup), should return the link text that's to be given to this link\r\n        pluginHooks.addNoop(\"preConversion\");  // called with the orignal text as given to makeHtml. The result of this plugin hook is the actual markdown source that will be cooked\r\n        pluginHooks.addNoop(\"postConversion\"); // called with the final cooked HTML code. The result of this plugin hook is the actual output of makeHtml\r\n\r\n        //\r\n        // Private state of the converter instance:\r\n        //\r\n\r\n        // Global hashes, used by various utility routines\r\n        var g_urls;\r\n        var g_titles;\r\n        var g_html_blocks;\r\n\r\n        // Used to track when we're inside an ordered or unordered list\r\n        // (see _ProcessListItems() for details):\r\n        var g_list_level;\r\n\r\n        this.makeHtml = function (text) {\r\n\r\n            //\r\n            // Main function. The order in which other subs are called here is\r\n            // essential. Link and image substitutions need to happen before\r\n            // _EscapeSpecialCharsWithinTagAttributes(), so that any *'s or _'s in the <a>\r\n            // and <img> tags get encoded.\r\n            //\r\n\r\n            // This will only happen if makeHtml on the same converter instance is called from a plugin hook.\r\n            // Don't do that.\r\n            if (g_urls)\r\n                throw new Error(\"Recursive call to converter.makeHtml\");\r\n\r\n            // Create the private state objects.\r\n            g_urls = new SaveHash();\r\n            g_titles = new SaveHash();\r\n            g_html_blocks = [];\r\n            g_list_level = 0;\r\n\r\n            text = pluginHooks.preConversion(text);\r\n\r\n            // attacklab: Replace ~ with ~T\r\n            // This lets us use tilde as an escape char to avoid md5 hashes\r\n            // The choice of character is arbitray; anything that isn't\r\n            // magic in Markdown will work.\r\n            text = text.replace(/~/g, \"~T\");\r\n\r\n            // attacklab: Replace $ with ~D\r\n            // RegExp interprets $ as a special character\r\n            // when it's in a replacement string\r\n            text = text.replace(/\\$/g, \"~D\");\r\n\r\n            // Standardize line endings\r\n            text = text.replace(/\\r\\n/g, \"\\n\"); // DOS to Unix\r\n            text = text.replace(/\\r/g, \"\\n\"); // Mac to Unix\r\n\r\n            // Make sure text begins and ends with a couple of newlines:\r\n            text = \"\\n\\n\" + text + \"\\n\\n\";\r\n\r\n            // Convert all tabs to spaces.\r\n            text = _Detab(text);\r\n\r\n            // Strip any lines consisting only of spaces and tabs.\r\n            // This makes subsequent regexen easier to write, because we can\r\n            // match consecutive blank lines with /\\n+/ instead of something\r\n            // contorted like /[ \\t]*\\n+/ .\r\n            text = text.replace(/^[ \\t]+$/mg, \"\");\r\n\r\n            // Turn block-level HTML blocks into hash entries\r\n            text = _HashHTMLBlocks(text);\r\n\r\n            // Strip link definitions, store in hashes.\r\n            text = _StripLinkDefinitions(text);\r\n\r\n            text = _RunBlockGamut(text);\r\n\r\n            text = _UnescapeSpecialChars(text);\r\n\r\n            // attacklab: Restore dollar signs\r\n            text = text.replace(/~D/g, \"$$\");\r\n\r\n            // attacklab: Restore tildes\r\n            text = text.replace(/~T/g, \"~\");\r\n\r\n            text = pluginHooks.postConversion(text);\r\n\r\n            g_html_blocks = g_titles = g_urls = null;\r\n\r\n            return text;\r\n        };\r\n\r\n        function _StripLinkDefinitions(text) {\r\n            //\r\n            // Strips link definitions from text, stores the URLs and titles in\r\n            // hash references.\r\n            //\r\n\r\n            // Link defs are in the form: ^[id]: url \"optional title\"\r\n\r\n            /*\r\n            text = text.replace(/\r\n                ^[ ]{0,3}\\[(.+)\\]:  // id = $1  attacklab: g_tab_width - 1\r\n                [ \\t]*\r\n                \\n?                 // maybe *one* newline\r\n                [ \\t]*\r\n                <?(\\S+?)>?          // url = $2\r\n                (?=\\s|$)            // lookahead for whitespace instead of the lookbehind removed below\r\n                [ \\t]*\r\n                \\n?                 // maybe one newline\r\n                [ \\t]*\r\n                (                   // (potential) title = $3\r\n                    (\\n*)           // any lines skipped = $4 attacklab: lookbehind removed\r\n                    [ \\t]+\r\n                    [\"(]\r\n                    (.+?)           // title = $5\r\n                    [\")]\r\n                    [ \\t]*\r\n                )?                  // title is optional\r\n                (?:\\n+|$)\r\n            /gm, function(){...});\r\n            */\r\n\r\n            text = text.replace(/^[ ]{0,3}\\[(.+)\\]:[ \\t]*\\n?[ \\t]*<?(\\S+?)>?(?=\\s|$)[ \\t]*\\n?[ \\t]*((\\n*)[\"(](.+?)[\")][ \\t]*)?(?:\\n+)/gm,\r\n                function (wholeMatch, m1, m2, m3, m4, m5) {\r\n                    m1 = m1.toLowerCase();\r\n                    g_urls.set(m1, _EncodeAmpsAndAngles(m2));  // Link IDs are case-insensitive\r\n                    if (m4) {\r\n                        // Oops, found blank lines, so it's not a title.\r\n                        // Put back the parenthetical statement we stole.\r\n                        return m3;\r\n                    } else if (m5) {\r\n                        g_titles.set(m1, m5.replace(/\"/g, \"&quot;\"));\r\n                    }\r\n\r\n                    // Completely remove the definition from the text\r\n                    return \"\";\r\n                }\r\n            );\r\n\r\n            return text;\r\n        }\r\n\r\n        function _HashHTMLBlocks(text) {\r\n\r\n            // Hashify HTML blocks:\r\n            // We only want to do this for block-level HTML tags, such as headers,\r\n            // lists, and tables. That's because we still want to wrap <p>s around\r\n            // \"paragraphs\" that are wrapped in non-block-level tags, such as anchors,\r\n            // phrase emphasis, and spans. The list of tags we're looking for is\r\n            // hard-coded:\r\n            var block_tags_a = \"p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del\"\r\n            var block_tags_b = \"p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math\"\r\n\r\n            // First, look for nested blocks, e.g.:\r\n            //   <div>\r\n            //     <div>\r\n            //     tags for inner block must be indented.\r\n            //     </div>\r\n            //   </div>\r\n            //\r\n            // The outermost tags must start at the left margin for this to match, and\r\n            // the inner nested divs must be indented.\r\n            // We need to do this before the next, more liberal match, because the next\r\n            // match will start at the first `<div>` and stop at the first `</div>`.\r\n\r\n            // attacklab: This regex can be expensive when it fails.\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (                       // save in $1\r\n                    ^                   // start of line  (with /m)\r\n                    <($block_tags_a)    // start tag = $2\r\n                    \\b                  // word break\r\n                                        // attacklab: hack around khtml/pcre bug...\r\n                    [^\\r]*?\\n           // any number of lines, minimally matching\r\n                    </\\2>               // the matching end tag\r\n                    [ \\t]*              // trailing spaces/tabs\r\n                    (?=\\n+)             // followed by a newline\r\n                )                       // attacklab: there are sentinel newlines at end of document\r\n            /gm,function(){...}};\r\n            */\r\n            text = text.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del)\\b[^\\r]*?\\n<\\/\\2>[ \\t]*(?=\\n+))/gm, hashElement);\r\n\r\n            //\r\n            // Now match more liberally, simply from `\\n<tag>` to `</tag>\\n`\r\n            //\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (                       // save in $1\r\n                    ^                   // start of line  (with /m)\r\n                    <($block_tags_b)    // start tag = $2\r\n                    \\b                  // word break\r\n                                        // attacklab: hack around khtml/pcre bug...\r\n                    [^\\r]*?             // any number of lines, minimally matching\r\n                    .*</\\2>             // the matching end tag\r\n                    [ \\t]*              // trailing spaces/tabs\r\n                    (?=\\n+)             // followed by a newline\r\n                )                       // attacklab: there are sentinel newlines at end of document\r\n            /gm,function(){...}};\r\n            */\r\n            text = text.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math)\\b[^\\r]*?.*<\\/\\2>[ \\t]*(?=\\n+)\\n)/gm, hashElement);\r\n\r\n            // Special case just for <hr />. It was easier to make a special case than\r\n            // to make the other regex more complicated.\r\n\r\n            /*\r\n            text = text.replace(/\r\n                \\n                  // Starting after a blank line\r\n                [ ]{0,3}\r\n                (                   // save in $1\r\n                    (<(hr)          // start tag = $2\r\n                        \\b          // word break\r\n                        ([^<>])*?\r\n                    \\/?>)           // the matching end tag\r\n                    [ \\t]*\r\n                    (?=\\n{2,})      // followed by a blank line\r\n                )\r\n            /g,hashElement);\r\n            */\r\n            text = text.replace(/\\n[ ]{0,3}((<(hr)\\b([^<>])*?\\/?>)[ \\t]*(?=\\n{2,}))/g, hashElement);\r\n\r\n            // Special case for standalone HTML comments:\r\n\r\n            /*\r\n            text = text.replace(/\r\n                \\n\\n                                            // Starting after a blank line\r\n                [ ]{0,3}                                        // attacklab: g_tab_width - 1\r\n                (                                               // save in $1\r\n                    <!\r\n                    (--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)   // see http://www.w3.org/TR/html-markup/syntax.html#comments and http://meta.stackoverflow.com/q/95256\r\n                    >\r\n                    [ \\t]*\r\n                    (?=\\n{2,})                                  // followed by a blank line\r\n                )\r\n            /g,hashElement);\r\n            */\r\n            text = text.replace(/\\n\\n[ ]{0,3}(<!(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>[ \\t]*(?=\\n{2,}))/g, hashElement);\r\n\r\n            // PHP and ASP-style processor instructions (<?...?> and <%...%>)\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (?:\r\n                    \\n\\n            // Starting after a blank line\r\n                )\r\n                (                   // save in $1\r\n                    [ ]{0,3}        // attacklab: g_tab_width - 1\r\n                    (?:\r\n                        <([?%])     // $2\r\n                        [^\\r]*?\r\n                        \\2>\r\n                    )\r\n                    [ \\t]*\r\n                    (?=\\n{2,})      // followed by a blank line\r\n                )\r\n            /g,hashElement);\r\n            */\r\n            text = text.replace(/(?:\\n\\n)([ ]{0,3}(?:<([?%])[^\\r]*?\\2>)[ \\t]*(?=\\n{2,}))/g, hashElement);\r\n\r\n            return text;\r\n        }\r\n\r\n        function hashElement(wholeMatch, m1) {\r\n            var blockText = m1;\r\n\r\n            // Undo double lines\r\n            blockText = blockText.replace(/^\\n+/, \"\");\r\n\r\n            // strip trailing blank lines\r\n            blockText = blockText.replace(/\\n+$/g, \"\");\r\n\r\n            // Replace the element text with a marker (\"~KxK\" where x is its key)\r\n            blockText = \"\\n\\n~K\" + (g_html_blocks.push(blockText) - 1) + \"K\\n\\n\";\r\n\r\n            return blockText;\r\n        }\r\n\r\n        function _RunBlockGamut(text, doNotUnhash) {\r\n            //\r\n            // These are all the transformations that form block-level\r\n            // tags like paragraphs, headers, and list items.\r\n            //\r\n            text = _DoHeaders(text);\r\n\r\n            // Do Horizontal Rules:\r\n            var replacement = \"<hr />\\n\";\r\n            text = text.replace(/^[ ]{0,2}([ ]?\\*[ ]?){3,}[ \\t]*$/gm, replacement);\r\n            text = text.replace(/^[ ]{0,2}([ ]?-[ ]?){3,}[ \\t]*$/gm, replacement);\r\n            text = text.replace(/^[ ]{0,2}([ ]?_[ ]?){3,}[ \\t]*$/gm, replacement);\r\n\r\n            text = _DoLists(text);\r\n            text = _DoCodeBlocks(text);\r\n            text = _DoBlockQuotes(text);\r\n\r\n            // We already ran _HashHTMLBlocks() before, in Markdown(), but that\r\n            // was to escape raw HTML in the original Markdown source. This time,\r\n            // we're escaping the markup we've just created, so that we don't wrap\r\n            // <p> tags around block-level tags.\r\n            text = _HashHTMLBlocks(text);\r\n            text = _FormParagraphs(text, doNotUnhash);\r\n\r\n            return text;\r\n        }\r\n\r\n        function _RunSpanGamut(text) {\r\n            //\r\n            // These are all the transformations that occur *within* block-level\r\n            // tags like paragraphs, headers, and list items.\r\n            //\r\n\r\n            text = _DoCodeSpans(text);\r\n            text = _EscapeSpecialCharsWithinTagAttributes(text);\r\n            text = _EncodeBackslashEscapes(text);\r\n\r\n            // Process anchor and image tags. Images must come first,\r\n            // because ![foo][f] looks like an anchor.\r\n            text = _DoImages(text);\r\n            text = _DoAnchors(text);\r\n\r\n            // Make links out of things like `<http://example.com/>`\r\n            // Must come after _DoAnchors(), because you can use < and >\r\n            // delimiters in inline links like [this](<url>).\r\n            text = _DoAutoLinks(text);\r\n\r\n            text = text.replace(/~P/g, \"://\"); // put in place to prevent autolinking; reset now\r\n\r\n            text = _EncodeAmpsAndAngles(text);\r\n            text = _DoItalicsAndBold(text);\r\n\r\n            // Do hard breaks:\r\n            text = text.replace(/  +\\n/g, \" <br>\\n\");\r\n\r\n            return text;\r\n        }\r\n\r\n        function _EscapeSpecialCharsWithinTagAttributes(text) {\r\n            //\r\n            // Within tags -- meaning between < and > -- encode [\\ ` * _] so they\r\n            // don't conflict with their use in Markdown for code, italics and strong.\r\n            //\r\n\r\n            // Build a regex to find HTML tags and comments.  See Friedl's\r\n            // \"Mastering Regular Expressions\", 2nd Ed., pp. 200-201.\r\n\r\n            // SE: changed the comment part of the regex\r\n\r\n            var regex = /(<[a-z\\/!$](\"[^\"]*\"|'[^']*'|[^'\">])*>|<!(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>)/gi;\r\n\r\n            text = text.replace(regex, function (wholeMatch) {\r\n                var tag = wholeMatch.replace(/(.)<\\/?code>(?=.)/g, \"$1`\");\r\n                tag = escapeCharacters(tag, wholeMatch.charAt(1) == \"!\" ? \"\\\\`*_/\" : \"\\\\`*_\"); // also escape slashes in comments to prevent autolinking there -- http://meta.stackoverflow.com/questions/95987\r\n                return tag;\r\n            });\r\n\r\n            return text;\r\n        }\r\n\r\n        function _DoAnchors(text) {\r\n            //\r\n            // Turn Markdown link shortcuts into XHTML <a> tags.\r\n            //\r\n            //\r\n            // First, handle reference-style links: [link text] [id]\r\n            //\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (                           // wrap whole match in $1\r\n                    \\[\r\n                    (\r\n                        (?:\r\n                            \\[[^\\]]*\\]      // allow brackets nested one level\r\n                            |\r\n                            [^\\[]           // or anything else\r\n                        )*\r\n                    )\r\n                    \\]\r\n\r\n                    [ ]?                    // one optional space\r\n                    (?:\\n[ ]*)?             // one optional newline followed by spaces\r\n\r\n                    \\[\r\n                    (.*?)                   // id = $3\r\n                    \\]\r\n                )\r\n                ()()()()                    // pad remaining backreferences\r\n            /g, writeAnchorTag);\r\n            */\r\n            text = text.replace(/(\\[((?:\\[[^\\]]*\\]|[^\\[\\]])*)\\][ ]?(?:\\n[ ]*)?\\[(.*?)\\])()()()()/g, writeAnchorTag);\r\n\r\n            //\r\n            // Next, inline-style links: [link text](url \"optional title\")\r\n            //\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (                           // wrap whole match in $1\r\n                    \\[\r\n                    (\r\n                        (?:\r\n                            \\[[^\\]]*\\]      // allow brackets nested one level\r\n                            |\r\n                            [^\\[\\]]         // or anything else\r\n                        )*\r\n                    )\r\n                    \\]\r\n                    \\(                      // literal paren\r\n                    [ \\t]*\r\n                    ()                      // no id, so leave $3 empty\r\n                    <?(                     // href = $4\r\n                        (?:\r\n                            \\([^)]*\\)       // allow one level of (correctly nested) parens (think MSDN)\r\n                            |\r\n                            [^()]\r\n                        )*?\r\n                    )>?\r\n                    [ \\t]*\r\n                    (                       // $5\r\n                        (['\"])              // quote char = $6\r\n                        (.*?)               // Title = $7\r\n                        \\6                  // matching quote\r\n                        [ \\t]*              // ignore any spaces/tabs between closing quote and )\r\n                    )?                      // title is optional\r\n                    \\)\r\n                )\r\n            /g, writeAnchorTag);\r\n            */\r\n\r\n            text = text.replace(/(\\[((?:\\[[^\\]]*\\]|[^\\[\\]])*)\\]\\([ \\t]*()<?((?:\\([^)]*\\)|[^()])*?)>?[ \\t]*((['\"])(.*?)\\6[ \\t]*)?\\))/g, writeAnchorTag);\r\n\r\n            //\r\n            // Last, handle reference-style shortcuts: [link text]\r\n            // These must come last in case you've also got [link test][1]\r\n            // or [link test](/foo)\r\n            //\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (                   // wrap whole match in $1\r\n                    \\[\r\n                    ([^\\[\\]]+)      // link text = $2; can't contain '[' or ']'\r\n                    \\]\r\n                )\r\n                ()()()()()          // pad rest of backreferences\r\n            /g, writeAnchorTag);\r\n            */\r\n            text = text.replace(/(\\[([^\\[\\]]+)\\])()()()()()/g, writeAnchorTag);\r\n\r\n            return text;\r\n        }\r\n\r\n        function writeAnchorTag(wholeMatch, m1, m2, m3, m4, m5, m6, m7) {\r\n            if (m7 == undefined) m7 = \"\";\r\n            var whole_match = m1;\r\n            var link_text = m2.replace(/:\\/\\//g, \"~P\"); // to prevent auto-linking withing the link. will be converted back after the auto-linker runs\r\n            var link_id = m3.toLowerCase();\r\n            var url = m4;\r\n            var title = m7;\r\n\r\n            if (url == \"\") {\r\n                if (link_id == \"\") {\r\n                    // lower-case and turn embedded newlines into spaces\r\n                    link_id = link_text.toLowerCase().replace(/ ?\\n/g, \" \");\r\n                }\r\n                url = \"#\" + link_id;\r\n\r\n                if (g_urls.get(link_id) != undefined) {\r\n                    url = g_urls.get(link_id);\r\n                    if (g_titles.get(link_id) != undefined) {\r\n                        title = g_titles.get(link_id);\r\n                    }\r\n                }\r\n                else {\r\n                    if (whole_match.search(/\\(\\s*\\)$/m) > -1) {\r\n                        // Special case for explicit empty url\r\n                        url = \"\";\r\n                    } else {\r\n                        return whole_match;\r\n                    }\r\n                }\r\n            }\r\n            url = encodeProblemUrlChars(url);\r\n            url = escapeCharacters(url, \"*_\");\r\n            var result = \"<a href=\\\"\" + url + \"\\\"\";\r\n\r\n            if (title != \"\") {\r\n                title = attributeEncode(title);\r\n                title = escapeCharacters(title, \"*_\");\r\n                result += \" title=\\\"\" + title + \"\\\"\";\r\n            }\r\n\r\n            result += \">\" + link_text + \"</a>\";\r\n\r\n            return result;\r\n        }\r\n\r\n        function _DoImages(text) {\r\n            //\r\n            // Turn Markdown image shortcuts into <img> tags.\r\n            //\r\n\r\n            //\r\n            // First, handle reference-style labeled images: ![alt text][id]\r\n            //\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (                   // wrap whole match in $1\r\n                    !\\[\r\n                    (.*?)           // alt text = $2\r\n                    \\]\r\n\r\n                    [ ]?            // one optional space\r\n                    (?:\\n[ ]*)?     // one optional newline followed by spaces\r\n\r\n                    \\[\r\n                    (.*?)           // id = $3\r\n                    \\]\r\n                )\r\n                ()()()()            // pad rest of backreferences\r\n            /g, writeImageTag);\r\n            */\r\n            text = text.replace(/(!\\[(.*?)\\][ ]?(?:\\n[ ]*)?\\[(.*?)\\])()()()()/g, writeImageTag);\r\n\r\n            //\r\n            // Next, handle inline images:  ![alt text](url \"optional title\")\r\n            // Don't forget: encode * and _\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (                   // wrap whole match in $1\r\n                    !\\[\r\n                    (.*?)           // alt text = $2\r\n                    \\]\r\n                    \\s?             // One optional whitespace character\r\n                    \\(              // literal paren\r\n                    [ \\t]*\r\n                    ()              // no id, so leave $3 empty\r\n                    <?(\\S+?)>?      // src url = $4\r\n                    [ \\t]*\r\n                    (               // $5\r\n                        (['\"])      // quote char = $6\r\n                        (.*?)       // title = $7\r\n                        \\6          // matching quote\r\n                        [ \\t]*\r\n                    )?              // title is optional\r\n                    \\)\r\n                )\r\n            /g, writeImageTag);\r\n            */\r\n            text = text.replace(/(!\\[(.*?)\\]\\s?\\([ \\t]*()<?(\\S+?)>?[ \\t]*((['\"])(.*?)\\6[ \\t]*)?\\))/g, writeImageTag);\r\n\r\n            return text;\r\n        }\r\n\r\n        function attributeEncode(text) {\r\n            // unconditionally replace angle brackets here -- what ends up in an attribute (e.g. alt or title)\r\n            // never makes sense to have verbatim HTML in it (and the sanitizer would totally break it)\r\n            return text.replace(/>/g, \"&gt;\").replace(/</g, \"&lt;\").replace(/\"/g, \"&quot;\");\r\n        }\r\n\r\n        function writeImageTag(wholeMatch, m1, m2, m3, m4, m5, m6, m7) {\r\n            var whole_match = m1;\r\n            var alt_text = m2;\r\n            var link_id = m3.toLowerCase();\r\n            var url = m4;\r\n            var title = m7;\r\n\r\n            if (!title) title = \"\";\r\n\r\n            if (url == \"\") {\r\n                if (link_id == \"\") {\r\n                    // lower-case and turn embedded newlines into spaces\r\n                    link_id = alt_text.toLowerCase().replace(/ ?\\n/g, \" \");\r\n                }\r\n                url = \"#\" + link_id;\r\n\r\n                if (g_urls.get(link_id) != undefined) {\r\n                    url = g_urls.get(link_id);\r\n                    if (g_titles.get(link_id) != undefined) {\r\n                        title = g_titles.get(link_id);\r\n                    }\r\n                }\r\n                else {\r\n                    return whole_match;\r\n                }\r\n            }\r\n\r\n            alt_text = escapeCharacters(attributeEncode(alt_text), \"*_[]()\");\r\n            url = escapeCharacters(url, \"*_\");\r\n            var result = \"<img src=\\\"\" + url + \"\\\" alt=\\\"\" + alt_text + \"\\\"\";\r\n\r\n            // attacklab: Markdown.pl adds empty title attributes to images.\r\n            // Replicate this bug.\r\n\r\n            //if (title != \"\") {\r\n            title = attributeEncode(title);\r\n            title = escapeCharacters(title, \"*_\");\r\n            result += \" title=\\\"\" + title + \"\\\"\";\r\n            //}\r\n\r\n            result += \" />\";\r\n\r\n            return result;\r\n        }\r\n\r\n        function _DoHeaders(text) {\r\n\r\n            // Setext-style headers:\r\n            //  Header 1\r\n            //  ========\r\n            //\r\n            //  Header 2\r\n            //  --------\r\n            //\r\n            text = text.replace(/^(.+)[ \\t]*\\n=+[ \\t]*\\n+/gm,\r\n                function (wholeMatch, m1) { return \"<h1>\" + _RunSpanGamut(m1) + \"</h1>\\n\\n\"; }\r\n            );\r\n\r\n            text = text.replace(/^(.+)[ \\t]*\\n-+[ \\t]*\\n+/gm,\r\n                function (matchFound, m1) { return \"<h2>\" + _RunSpanGamut(m1) + \"</h2>\\n\\n\"; }\r\n            );\r\n\r\n            // atx-style headers:\r\n            //  # Header 1\r\n            //  ## Header 2\r\n            //  ## Header 2 with closing hashes ##\r\n            //  ...\r\n            //  ###### Header 6\r\n            //\r\n\r\n            /*\r\n            text = text.replace(/\r\n                ^(\\#{1,6})      // $1 = string of #'s\r\n                [ \\t]*\r\n                (.+?)           // $2 = Header text\r\n                [ \\t]*\r\n                \\#*             // optional closing #'s (not counted)\r\n                \\n+\r\n            /gm, function() {...});\r\n            */\r\n\r\n            text = text.replace(/^(\\#{1,6})[ \\t]*(.+?)[ \\t]*\\#*\\n+/gm,\r\n                function (wholeMatch, m1, m2) {\r\n                    var h_level = m1.length;\r\n                    return \"<h\" + h_level + \">\" + _RunSpanGamut(m2) + \"</h\" + h_level + \">\\n\\n\";\r\n                }\r\n            );\r\n\r\n            return text;\r\n        }\r\n\r\n        function _DoLists(text) {\r\n            //\r\n            // Form HTML ordered (numbered) and unordered (bulleted) lists.\r\n            //\r\n\r\n            // attacklab: add sentinel to hack around khtml/safari bug:\r\n            // http://bugs.webkit.org/show_bug.cgi?id=11231\r\n            text += \"~0\";\r\n\r\n            // Re-usable pattern to match any entirel ul or ol list:\r\n\r\n            /*\r\n            var whole_list = /\r\n                (                                   // $1 = whole list\r\n                    (                               // $2\r\n                        [ ]{0,3}                    // attacklab: g_tab_width - 1\r\n                        ([*+-]|\\d+[.])              // $3 = first list item marker\r\n                        [ \\t]+\r\n                    )\r\n                    [^\\r]+?\r\n                    (                               // $4\r\n                        ~0                          // sentinel for workaround; should be $\r\n                        |\r\n                        \\n{2,}\r\n                        (?=\\S)\r\n                        (?!                         // Negative lookahead for another list item marker\r\n                            [ \\t]*\r\n                            (?:[*+-]|\\d+[.])[ \\t]+\r\n                        )\r\n                    )\r\n                )\r\n            /g\r\n            */\r\n            var whole_list = /^(([ ]{0,3}([*+-]|\\d+[.])[ \\t]+)[^\\r]+?(~0|\\n{2,}(?=\\S)(?![ \\t]*(?:[*+-]|\\d+[.])[ \\t]+)))/gm;\r\n\r\n            if (g_list_level) {\r\n                text = text.replace(whole_list, function (wholeMatch, m1, m2) {\r\n                    var list = m1;\r\n                    var list_type = (m2.search(/[*+-]/g) > -1) ? \"ul\" : \"ol\";\r\n\r\n                    var result = _ProcessListItems(list, list_type);\r\n\r\n                    // Trim any trailing whitespace, to put the closing `</$list_type>`\r\n                    // up on the preceding line, to get it past the current stupid\r\n                    // HTML block parser. This is a hack to work around the terrible\r\n                    // hack that is the HTML block parser.\r\n                    result = result.replace(/\\s+$/, \"\");\r\n                    result = \"<\" + list_type + \">\" + result + \"</\" + list_type + \">\\n\";\r\n                    return result;\r\n                });\r\n            } else {\r\n                whole_list = /(\\n\\n|^\\n?)(([ ]{0,3}([*+-]|\\d+[.])[ \\t]+)[^\\r]+?(~0|\\n{2,}(?=\\S)(?![ \\t]*(?:[*+-]|\\d+[.])[ \\t]+)))/g;\r\n                text = text.replace(whole_list, function (wholeMatch, m1, m2, m3) {\r\n                    var runup = m1;\r\n                    var list = m2;\r\n\r\n                    var list_type = (m3.search(/[*+-]/g) > -1) ? \"ul\" : \"ol\";\r\n                    var result = _ProcessListItems(list, list_type);\r\n                    result = runup + \"<\" + list_type + \">\\n\" + result + \"</\" + list_type + \">\\n\";\r\n                    return result;\r\n                });\r\n            }\r\n\r\n            // attacklab: strip sentinel\r\n            text = text.replace(/~0/, \"\");\r\n\r\n            return text;\r\n        }\r\n\r\n        var _listItemMarkers = { ol: \"\\\\d+[.]\", ul: \"[*+-]\" };\r\n\r\n        function _ProcessListItems(list_str, list_type) {\r\n            //\r\n            //  Process the contents of a single ordered or unordered list, splitting it\r\n            //  into individual list items.\r\n            //\r\n            //  list_type is either \"ul\" or \"ol\".\r\n\r\n            // The $g_list_level global keeps track of when we're inside a list.\r\n            // Each time we enter a list, we increment it; when we leave a list,\r\n            // we decrement. If it's zero, we're not in a list anymore.\r\n            //\r\n            // We do this because when we're not inside a list, we want to treat\r\n            // something like this:\r\n            //\r\n            //    I recommend upgrading to version\r\n            //    8. Oops, now this line is treated\r\n            //    as a sub-list.\r\n            //\r\n            // As a single paragraph, despite the fact that the second line starts\r\n            // with a digit-period-space sequence.\r\n            //\r\n            // Whereas when we're inside a list (or sub-list), that line will be\r\n            // treated as the start of a sub-list. What a kludge, huh? This is\r\n            // an aspect of Markdown's syntax that's hard to parse perfectly\r\n            // without resorting to mind-reading. Perhaps the solution is to\r\n            // change the syntax rules such that sub-lists must start with a\r\n            // starting cardinal number; e.g. \"1.\" or \"a.\".\r\n\r\n            g_list_level++;\r\n\r\n            // trim trailing blank lines:\r\n            list_str = list_str.replace(/\\n{2,}$/, \"\\n\");\r\n\r\n            // attacklab: add sentinel to emulate \\z\r\n            list_str += \"~0\";\r\n\r\n            // In the original attacklab showdown, list_type was not given to this function, and anything\r\n            // that matched /[*+-]|\\d+[.]/ would just create the next <li>, causing this mismatch:\r\n            //\r\n            //  Markdown          rendered by WMD        rendered by MarkdownSharp\r\n            //  ------------------------------------------------------------------\r\n            //  1. first          1. first               1. first\r\n            //  2. second         2. second              2. second\r\n            //  - third           3. third                   * third\r\n            //\r\n            // We changed this to behave identical to MarkdownSharp. This is the constructed RegEx,\r\n            // with {MARKER} being one of \\d+[.] or [*+-], depending on list_type:\r\n\r\n            /*\r\n            list_str = list_str.replace(/\r\n                (^[ \\t]*)                       // leading whitespace = $1\r\n                ({MARKER}) [ \\t]+               // list marker = $2\r\n                ([^\\r]+?                        // list item text   = $3\r\n                    (\\n+)\r\n                )\r\n                (?=\r\n                    (~0 | \\2 ({MARKER}) [ \\t]+)\r\n                )\r\n            /gm, function(){...});\r\n            */\r\n\r\n            var marker = _listItemMarkers[list_type];\r\n            var re = new RegExp(\"(^[ \\\\t]*)(\" + marker + \")[ \\\\t]+([^\\\\r]+?(\\\\n+))(?=(~0|\\\\1(\" + marker + \")[ \\\\t]+))\", \"gm\");\r\n            var last_item_had_a_double_newline = false;\r\n            list_str = list_str.replace(re,\r\n                function (wholeMatch, m1, m2, m3) {\r\n                    var item = m3;\r\n                    var leading_space = m1;\r\n                    var ends_with_double_newline = /\\n\\n$/.test(item);\r\n                    var contains_double_newline = ends_with_double_newline || item.search(/\\n{2,}/) > -1;\r\n\r\n                    if (contains_double_newline || last_item_had_a_double_newline) {\r\n                        item = _RunBlockGamut(_Outdent(item), /* doNotUnhash = */true);\r\n                    }\r\n                    else {\r\n                        // Recursion for sub-lists:\r\n                        item = _DoLists(_Outdent(item));\r\n                        item = item.replace(/\\n$/, \"\"); // chomp(item)\r\n                        item = _RunSpanGamut(item);\r\n                    }\r\n                    last_item_had_a_double_newline = ends_with_double_newline;\r\n                    return \"<li>\" + item + \"</li>\\n\";\r\n                }\r\n            );\r\n\r\n            // attacklab: strip sentinel\r\n            list_str = list_str.replace(/~0/g, \"\");\r\n\r\n            g_list_level--;\r\n            return list_str;\r\n        }\r\n\r\n        function _DoCodeBlocks(text) {\r\n            //\r\n            //  Process Markdown `<pre><code>` blocks.\r\n            //\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (?:\\n\\n|^)\r\n                (                               // $1 = the code block -- one or more lines, starting with a space/tab\r\n                    (?:\r\n                        (?:[ ]{4}|\\t)           // Lines must start with a tab or a tab-width of spaces - attacklab: g_tab_width\r\n                        .*\\n+\r\n                    )+\r\n                )\r\n                (\\n*[ ]{0,3}[^ \\t\\n]|(?=~0))    // attacklab: g_tab_width\r\n            /g ,function(){...});\r\n            */\r\n\r\n            // attacklab: sentinel workarounds for lack of \\A and \\Z, safari\\khtml bug\r\n            text += \"~0\";\r\n\r\n            text = text.replace(/(?:\\n\\n|^)((?:(?:[ ]{4}|\\t).*\\n+)+)(\\n*[ ]{0,3}[^ \\t\\n]|(?=~0))/g,\r\n                function (wholeMatch, m1, m2) {\r\n                    var codeblock = m1;\r\n                    var nextChar = m2;\r\n\r\n                    codeblock = _EncodeCode(_Outdent(codeblock));\r\n                    codeblock = _Detab(codeblock);\r\n                    codeblock = codeblock.replace(/^\\n+/g, \"\"); // trim leading newlines\r\n                    codeblock = codeblock.replace(/\\n+$/g, \"\"); // trim trailing whitespace\r\n\r\n                    codeblock = \"<pre><code>\" + codeblock + \"\\n</code></pre>\";\r\n\r\n                    return \"\\n\\n\" + codeblock + \"\\n\\n\" + nextChar;\r\n                }\r\n            );\r\n\r\n            // attacklab: strip sentinel\r\n            text = text.replace(/~0/, \"\");\r\n\r\n            return text;\r\n        }\r\n\r\n        function hashBlock(text) {\r\n            text = text.replace(/(^\\n+|\\n+$)/g, \"\");\r\n            return \"\\n\\n~K\" + (g_html_blocks.push(text) - 1) + \"K\\n\\n\";\r\n        }\r\n\r\n        function _DoCodeSpans(text) {\r\n            //\r\n            // * Backtick quotes are used for <code></code> spans.\r\n            //\r\n            // * You can use multiple backticks as the delimiters if you want to\r\n            //   include literal backticks in the code span. So, this input:\r\n            //\r\n            //      Just type ``foo `bar` baz`` at the prompt.\r\n            //\r\n            //   Will translate to:\r\n            //\r\n            //      <p>Just type <code>foo `bar` baz</code> at the prompt.</p>\r\n            //\r\n            //   There's no arbitrary limit to the number of backticks you\r\n            //   can use as delimters. If you need three consecutive backticks\r\n            //   in your code, use four for delimiters, etc.\r\n            //\r\n            // * You can use spaces to get literal backticks at the edges:\r\n            //\r\n            //      ... type `` `bar` `` ...\r\n            //\r\n            //   Turns to:\r\n            //\r\n            //      ... type <code>`bar`</code> ...\r\n            //\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (^|[^\\\\])       // Character before opening ` can't be a backslash\r\n                (`+)            // $2 = Opening run of `\r\n                (               // $3 = The code block\r\n                    [^\\r]*?\r\n                    [^`]        // attacklab: work around lack of lookbehind\r\n                )\r\n                \\2              // Matching closer\r\n                (?!`)\r\n            /gm, function(){...});\r\n            */\r\n\r\n            text = text.replace(/(^|[^\\\\])(`+)([^\\r]*?[^`])\\2(?!`)/gm,\r\n                function (wholeMatch, m1, m2, m3, m4) {\r\n                    var c = m3;\r\n                    c = c.replace(/^([ \\t]*)/g, \"\"); // leading whitespace\r\n                    c = c.replace(/[ \\t]*$/g, \"\"); // trailing whitespace\r\n                    c = _EncodeCode(c);\r\n                    c = c.replace(/:\\/\\//g, \"~P\"); // to prevent auto-linking. Not necessary in code *blocks*, but in code spans. Will be converted back after the auto-linker runs.\r\n                    return m1 + \"<code>\" + c + \"</code>\";\r\n                }\r\n            );\r\n\r\n            return text;\r\n        }\r\n\r\n        function _EncodeCode(text) {\r\n            //\r\n            // Encode/escape certain characters inside Markdown code runs.\r\n            // The point is that in code, these characters are literals,\r\n            // and lose their special Markdown meanings.\r\n            //\r\n            // Encode all ampersands; HTML entities are not\r\n            // entities within a Markdown code span.\r\n            text = text.replace(/&/g, \"&amp;\");\r\n\r\n            // Do the angle bracket song and dance:\r\n            text = text.replace(/</g, \"&lt;\");\r\n            text = text.replace(/>/g, \"&gt;\");\r\n\r\n            // Now, escape characters that are magic in Markdown:\r\n            text = escapeCharacters(text, \"\\*_{}[]\\\\\", false);\r\n\r\n            // jj the line above breaks this:\r\n            //---\r\n\r\n            //* Item\r\n\r\n            //   1. Subitem\r\n\r\n            //            special char: *\r\n            //---\r\n\r\n            return text;\r\n        }\r\n\r\n        function _DoItalicsAndBold(text) {\r\n\r\n            // <strong> must go first:\r\n            text = text.replace(/([\\W_]|^)(\\*\\*|__)(?=\\S)([^\\r]*?\\S[\\*_]*)\\2([\\W_]|$)/g,\r\n            \"$1<strong>$3</strong>$4\");\r\n\r\n            text = text.replace(/([\\W_]|^)(\\*|_)(?=\\S)([^\\r\\*_]*?\\S)\\2([\\W_]|$)/g,\r\n            \"$1<em>$3</em>$4\");\r\n\r\n            return text;\r\n        }\r\n\r\n        function _DoBlockQuotes(text) {\r\n\r\n            /*\r\n            text = text.replace(/\r\n                (                           // Wrap whole match in $1\r\n                    (\r\n                        ^[ \\t]*>[ \\t]?      // '>' at the start of a line\r\n                        .+\\n                // rest of the first line\r\n                        (.+\\n)*             // subsequent consecutive lines\r\n                        \\n*                 // blanks\r\n                    )+\r\n                )\r\n            /gm, function(){...});\r\n            */\r\n\r\n            text = text.replace(/((^[ \\t]*>[ \\t]?.+\\n(.+\\n)*\\n*)+)/gm,\r\n                function (wholeMatch, m1) {\r\n                    var bq = m1;\r\n\r\n                    // attacklab: hack around Konqueror 3.5.4 bug:\r\n                    // \"----------bug\".replace(/^-/g,\"\") == \"bug\"\r\n\r\n                    bq = bq.replace(/^[ \\t]*>[ \\t]?/gm, \"~0\"); // trim one level of quoting\r\n\r\n                    // attacklab: clean up hack\r\n                    bq = bq.replace(/~0/g, \"\");\r\n\r\n                    bq = bq.replace(/^[ \\t]+$/gm, \"\");     // trim whitespace-only lines\r\n                    bq = _RunBlockGamut(bq);             // recurse\r\n\r\n                    bq = bq.replace(/(^|\\n)/g, \"$1  \");\r\n                    // These leading spaces screw with <pre> content, so we need to fix that:\r\n                    bq = bq.replace(\r\n                            /(\\s*<pre>[^\\r]+?<\\/pre>)/gm,\r\n                        function (wholeMatch, m1) {\r\n                            var pre = m1;\r\n                            // attacklab: hack around Konqueror 3.5.4 bug:\r\n                            pre = pre.replace(/^  /mg, \"~0\");\r\n                            pre = pre.replace(/~0/g, \"\");\r\n                            return pre;\r\n                        });\r\n\r\n                    return hashBlock(\"<blockquote>\\n\" + bq + \"\\n</blockquote>\");\r\n                }\r\n            );\r\n            return text;\r\n        }\r\n\r\n        function _FormParagraphs(text, doNotUnhash) {\r\n            //\r\n            //  Params:\r\n            //    $text - string to process with html <p> tags\r\n            //\r\n\r\n            // Strip leading and trailing lines:\r\n            text = text.replace(/^\\n+/g, \"\");\r\n            text = text.replace(/\\n+$/g, \"\");\r\n\r\n            var grafs = text.split(/\\n{2,}/g);\r\n            var grafsOut = [];\r\n\r\n            var markerRe = /~K(\\d+)K/;\r\n\r\n            //\r\n            // Wrap <p> tags.\r\n            //\r\n            var end = grafs.length;\r\n            for (var i = 0; i < end; i++) {\r\n                var str = grafs[i];\r\n\r\n                // if this is an HTML marker, copy it\r\n                if (markerRe.test(str)) {\r\n                    grafsOut.push(str);\r\n                }\r\n                else if (/\\S/.test(str)) {\r\n                    str = _RunSpanGamut(str);\r\n                    str = str.replace(/^([ \\t]*)/g, \"<p>\");\r\n                    str += \"</p>\"\r\n                    grafsOut.push(str);\r\n                }\r\n\r\n            }\r\n            //\r\n            // Unhashify HTML blocks\r\n            //\r\n            if (!doNotUnhash) {\r\n                end = grafsOut.length;\r\n                for (var i = 0; i < end; i++) {\r\n                    var foundAny = true;\r\n                    while (foundAny) { // we may need several runs, since the data may be nested\r\n                        foundAny = false;\r\n                        grafsOut[i] = grafsOut[i].replace(/~K(\\d+)K/g, function (wholeMatch, id) {\r\n                            foundAny = true;\r\n                            return g_html_blocks[id];\r\n                        });\r\n                    }\r\n                }\r\n            }\r\n            return grafsOut.join(\"\\n\\n\");\r\n        }\r\n\r\n        function _EncodeAmpsAndAngles(text) {\r\n            // Smart processing for ampersands and angle brackets that need to be encoded.\r\n\r\n            // Ampersand-encoding based entirely on Nat Irons's Amputator MT plugin:\r\n            //   http://bumppo.net/projects/amputator/\r\n            text = text.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\\w+);)/g, \"&amp;\");\r\n\r\n            // Encode naked <'s\r\n            text = text.replace(/<(?![a-z\\/?\\$!])/gi, \"&lt;\");\r\n\r\n            return text;\r\n        }\r\n\r\n        function _EncodeBackslashEscapes(text) {\r\n            //\r\n            //   Parameter:  String.\r\n            //   Returns:    The string, with after processing the following backslash\r\n            //               escape sequences.\r\n            //\r\n\r\n            // attacklab: The polite way to do this is with the new\r\n            // escapeCharacters() function:\r\n            //\r\n            //     text = escapeCharacters(text,\"\\\\\",true);\r\n            //     text = escapeCharacters(text,\"`*_{}[]()>#+-.!\",true);\r\n            //\r\n            // ...but we're sidestepping its use of the (slow) RegExp constructor\r\n            // as an optimization for Firefox.  This function gets called a LOT.\r\n\r\n            text = text.replace(/\\\\(\\\\)/g, escapeCharacters_callback);\r\n            text = text.replace(/\\\\([`*_{}\\[\\]()>#+-.!])/g, escapeCharacters_callback);\r\n            return text;\r\n        }\r\n\r\n        function _DoAutoLinks(text) {\r\n\r\n            // note that at this point, all other URL in the text are already hyperlinked as <a href=\"\"></a>\r\n            // *except* for the <http://www.foo.com> case\r\n\r\n            // automatically add < and > around unadorned raw hyperlinks\r\n            // must be preceded by space/BOF and followed by non-word/EOF character\r\n            text = text.replace(/(^|\\s)(https?|ftp)(:\\/\\/[-A-Z0-9+&@#\\/%?=~_|\\[\\]\\(\\)!:,\\.;]*[-A-Z0-9+&@#\\/%=~_|\\[\\]])($|\\W)/gi, \"$1<$2$3>$4\");\r\n\r\n            //  autolink anything like <http://example.com>\r\n\r\n            var replacer = function (wholematch, m1) { return \"<a href=\\\"\" + m1 + \"\\\">\" + pluginHooks.plainLinkText(m1) + \"</a>\"; }\r\n            text = text.replace(/<((https?|ftp):[^'\">\\s]+)>/gi, replacer);\r\n\r\n            // Email addresses: <address@domain.foo>\r\n            /*\r\n            text = text.replace(/\r\n                <\r\n                (?:mailto:)?\r\n                (\r\n                    [-.\\w]+\r\n                    \\@\r\n                    [-a-z0-9]+(\\.[-a-z0-9]+)*\\.[a-z]+\r\n                )\r\n                >\r\n            /gi, _DoAutoLinks_callback());\r\n            */\r\n\r\n            /* disabling email autolinking, since we don't do that on the server, either\r\n            text = text.replace(/<(?:mailto:)?([-.\\w]+\\@[-a-z0-9]+(\\.[-a-z0-9]+)*\\.[a-z]+)>/gi,\r\n                function(wholeMatch,m1) {\r\n                    return _EncodeEmailAddress( _UnescapeSpecialChars(m1) );\r\n                }\r\n            );\r\n            */\r\n            return text;\r\n        }\r\n\r\n        function _UnescapeSpecialChars(text) {\r\n            //\r\n            // Swap back in all the special characters we've hidden.\r\n            //\r\n            text = text.replace(/~E(\\d+)E/g,\r\n                function (wholeMatch, m1) {\r\n                    var charCodeToReplace = parseInt(m1);\r\n                    return String.fromCharCode(charCodeToReplace);\r\n                }\r\n            );\r\n            return text;\r\n        }\r\n\r\n        function _Outdent(text) {\r\n            //\r\n            // Remove one level of line-leading tabs or spaces\r\n            //\r\n\r\n            // attacklab: hack around Konqueror 3.5.4 bug:\r\n            // \"----------bug\".replace(/^-/g,\"\") == \"bug\"\r\n\r\n            text = text.replace(/^(\\t|[ ]{1,4})/gm, \"~0\"); // attacklab: g_tab_width\r\n\r\n            // attacklab: clean up hack\r\n            text = text.replace(/~0/g, \"\")\r\n\r\n            return text;\r\n        }\r\n\r\n        function _Detab(text) {\r\n            if (!/\\t/.test(text))\r\n                return text;\r\n\r\n            var spaces = [\"    \", \"   \", \"  \", \" \"],\r\n            skew = 0,\r\n            v;\r\n\r\n            return text.replace(/[\\n\\t]/g, function (match, offset) {\r\n                if (match === \"\\n\") {\r\n                    skew = offset + 1;\r\n                    return match;\r\n                }\r\n                v = (offset - skew) % 4;\r\n                skew = offset + 1;\r\n                return spaces[v];\r\n            });\r\n        }\r\n\r\n        //\r\n        //  attacklab: Utility functions\r\n        //\r\n\r\n        var _problemUrlChars = /(?:[\"'*()[\\]:]|~D)/g;\r\n\r\n        // hex-encodes some unusual \"problem\" chars in URLs to avoid URL detection problems\r\n        function encodeProblemUrlChars(url) {\r\n            if (!url)\r\n                return \"\";\r\n\r\n            var len = url.length;\r\n\r\n            return url.replace(_problemUrlChars, function (match, offset) {\r\n                if (match == \"~D\") // escape for dollar\r\n                    return \"%24\";\r\n                if (match == \":\") {\r\n                    if (offset == len - 1 || /[0-9\\/]/.test(url.charAt(offset + 1)))\r\n                        return \":\"\r\n                }\r\n                return \"%\" + match.charCodeAt(0).toString(16);\r\n            });\r\n        }\r\n\r\n\r\n        function escapeCharacters(text, charsToEscape, afterBackslash) {\r\n            // First we have to escape the escape characters so that\r\n            // we can build a character class out of them\r\n            var regexString = \"([\" + charsToEscape.replace(/([\\[\\]\\\\])/g, \"\\\\$1\") + \"])\";\r\n\r\n            if (afterBackslash) {\r\n                regexString = \"\\\\\\\\\" + regexString;\r\n            }\r\n\r\n            var regex = new RegExp(regexString, \"g\");\r\n            text = text.replace(regex, escapeCharacters_callback);\r\n\r\n            return text;\r\n        }\r\n\r\n\r\n        function escapeCharacters_callback(wholeMatch, m1) {\r\n            var charCodeToEscape = m1.charCodeAt(0);\r\n            return \"~E\" + charCodeToEscape + \"E\";\r\n        }\r\n\r\n    }; // end of the Markdown.Converter constructor\r\n\r\n})();\r\n\r\n\r\n// ======= END WRAP\r\n\r\n    // no reason for multiple instances,\r\n    // just call `makeHtml`\r\n    return new Markdown.Converter();\r\n});\r\n//>>excludeEnd('excludeMdown');\n",
    "/** @license\r\n * RequireJS plugin for loading Markdown files and converting them into HTML.\r\n * Author: Miller Medeiros\r\n * Version: 0.1.1 (2012/02/17)\r\n * Released under the MIT license\r\n */\r\n\r\n// NOTE :: if you don't need to load markdown files in production outside of\r\n// the build, precompile them into modules and set\r\n// `pragmasOnSave.excludeMdown=true`\r\n\r\ndefine(\r\n    'mdown',[\r\n//>>excludeStart('excludeMdown', pragmas.excludeMdown)\r\n        'text',\r\n        'markdownConverter'\r\n//>>excludeEnd('excludeMdown')\r\n    ],\r\n    function (\r\n//>>excludeStart('excludeMdown', pragmas.excludeMdown)\r\n        text, markdownConverter\r\n//>>excludeEnd('excludeMdown')\r\n    ) {\r\n\r\n//>>excludeStart('excludeMdown', pragmas.excludeMdown)\r\n        var buildMap = {};\r\n//>>excludeEnd('excludeMdown')\r\n\r\n        //API\r\n        return {\r\n\r\n            load : function(name, req, onLoad, config) {\r\n//>>excludeStart('excludeMdown', pragmas.excludeMdown)\r\n                text.get(req.toUrl(name), function(data){\r\n                    data = markdownConverter.makeHtml(data);\r\n                    if (config.isBuild) {\r\n                        buildMap[name] = data;\r\n                        onLoad(data);\r\n                    } else {\r\n                        onLoad(data);\r\n                    }\r\n                });\r\n            },\r\n\r\n            //write method based on RequireJS official text plugin by James Burke\r\n            //https://github.com/jrburke/requirejs/blob/master/text.js\r\n            write : function(pluginName, moduleName, write){\r\n                if(moduleName in buildMap){\r\n                    var content = text.jsEscape(buildMap[moduleName]);\r\n                    write.asModule(pluginName + \"!\" + moduleName,\r\n                                   \"define(function () { return '\" +\r\n                                       content +\r\n                                   \"';});\\n\");\r\n                }\r\n//>>excludeEnd('excludeMdown')\r\n            }\r\n\r\n        };\r\n});\r\n\n",
    "/** @license\r\n * RequireJS plugin for loading files without adding the JS extension, useful for\r\n * JSONP services and any other kind of resource that already contain a file\r\n * extension or that shouldn't have one (like dynamic scripts).\r\n * Author: Miller Medeiros\r\n * Version: 0.3.1 (2011/12/07)\r\n * Released under the MIT license\r\n */\r\ndefine('noext',[],function(){\r\n\r\n    var QUERY_PARAM = 'noext';\r\n\r\n    //API\r\n    return {\r\n        load : function(name, req, onLoad, config){\r\n            req([req.toUrl(name)], function(mod){\r\n                onLoad(mod);\r\n            });\r\n        },\r\n        normalize : function(name, norm){\r\n            //append query string to avoid adding .js extension\r\n            //needs to be on normalize otherwise it won't work after build\r\n            name += (name.indexOf('?') < 0)? '?' : '&';\r\n            return name + QUERY_PARAM +'=1';\r\n        }\r\n\r\n    };\r\n});\r\n\n",
    "(function(root) {\ndefine(\"bootstrap\", [\"jquery\"], function() {\n  return (function() {\n/*!\r\n * Bootstrap v3.3.7 (http://getbootstrap.com)\r\n * Copyright 2011-2016 Twitter, Inc.\r\n * Licensed under the MIT license\r\n */\r\nif(\"undefined\"==typeof jQuery)throw new Error(\"Bootstrap's JavaScript requires jQuery\");+function($){\"use strict\";var t=$.fn.jquery.split(\" \")[0].split(\".\");if(t[0]<2&&t[1]<9||1==t[0]&&9==t[1]&&t[2]<1||t[0]>3)throw new Error(\"Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4\")}(jQuery),+function($){\"use strict\";function t(){var t=document.createElement(\"bootstrap\"),e={WebkitTransition:\"webkitTransitionEnd\",MozTransition:\"transitionend\",OTransition:\"oTransitionEnd otransitionend\",transition:\"transitionend\"};for(var i in e)if(void 0!==t.style[i])return{end:e[i]};return!1}$.fn.emulateTransitionEnd=function(t){var e=!1,i=this;$(this).one(\"bsTransitionEnd\",function(){e=!0});var o=function(){e||$(i).trigger($.support.transition.end)};return setTimeout(o,t),this},$(function(){$.support.transition=t(),$.support.transition&&($.event.special.bsTransitionEnd={bindType:$.support.transition.end,delegateType:$.support.transition.end,handle:function(t){if($(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}})})}(jQuery),+function($){\"use strict\";function t(t){return this.each(function(){var e=$(this),o=e.data(\"bs.alert\");o||e.data(\"bs.alert\",o=new i(this)),\"string\"==typeof t&&o[t].call(e)})}var e='[data-dismiss=\"alert\"]',i=function(t){$(t).on(\"click\",e,this.close)};i.VERSION=\"3.3.7\",i.TRANSITION_DURATION=150,i.prototype.close=function(t){function e(){s.detach().trigger(\"closed.bs.alert\").remove()}var o=$(this),n=o.attr(\"data-target\");n||(n=o.attr(\"href\"),n=n&&n.replace(/.*(?=#[^\\s]*$)/,\"\"));var s=$(\"#\"===n?[]:n);t&&t.preventDefault(),s.length||(s=o.closest(\".alert\")),s.trigger(t=$.Event(\"close.bs.alert\")),t.isDefaultPrevented()||(s.removeClass(\"in\"),$.support.transition&&s.hasClass(\"fade\")?s.one(\"bsTransitionEnd\",e).emulateTransitionEnd(i.TRANSITION_DURATION):e())};var o=$.fn.alert;$.fn.alert=t,$.fn.alert.Constructor=i,$.fn.alert.noConflict=function(){return $.fn.alert=o,this},$(document).on(\"click.bs.alert.data-api\",e,i.prototype.close)}(jQuery),+function($){\"use strict\";function t(t){return this.each(function(){var i=$(this),o=i.data(\"bs.button\"),n=\"object\"==typeof t&&t;o||i.data(\"bs.button\",o=new e(this,n)),\"toggle\"==t?o.toggle():t&&o.setState(t)})}var e=function(t,i){this.$element=$(t),this.options=$.extend({},e.DEFAULTS,i),this.isLoading=!1};e.VERSION=\"3.3.7\",e.DEFAULTS={loadingText:\"loading...\"},e.prototype.setState=function(t){var e=\"disabled\",i=this.$element,o=i.is(\"input\")?\"val\":\"html\",n=i.data();t+=\"Text\",null==n.resetText&&i.data(\"resetText\",i[o]()),setTimeout($.proxy(function(){i[o](null==n[t]?this.options[t]:n[t]),\"loadingText\"==t?(this.isLoading=!0,i.addClass(e).attr(e,e).prop(e,!0)):this.isLoading&&(this.isLoading=!1,i.removeClass(e).removeAttr(e).prop(e,!1))},this),0)},e.prototype.toggle=function(){var t=!0,e=this.$element.closest('[data-toggle=\"buttons\"]');if(e.length){var i=this.$element.find(\"input\");\"radio\"==i.prop(\"type\")?(i.prop(\"checked\")&&(t=!1),e.find(\".active\").removeClass(\"active\"),this.$element.addClass(\"active\")):\"checkbox\"==i.prop(\"type\")&&(i.prop(\"checked\")!==this.$element.hasClass(\"active\")&&(t=!1),this.$element.toggleClass(\"active\")),i.prop(\"checked\",this.$element.hasClass(\"active\")),t&&i.trigger(\"change\")}else this.$element.attr(\"aria-pressed\",!this.$element.hasClass(\"active\")),this.$element.toggleClass(\"active\")};var i=$.fn.button;$.fn.button=t,$.fn.button.Constructor=e,$.fn.button.noConflict=function(){return $.fn.button=i,this},$(document).on(\"click.bs.button.data-api\",'[data-toggle^=\"button\"]',function(e){var i=$(e.target).closest(\".btn\");t.call(i,\"toggle\"),$(e.target).is('input[type=\"radio\"], input[type=\"checkbox\"]')||(e.preventDefault(),i.is(\"input,button\")?i.trigger(\"focus\"):i.find(\"input:visible,button:visible\").first().trigger(\"focus\"))}).on(\"focus.bs.button.data-api blur.bs.button.data-api\",'[data-toggle^=\"button\"]',function(t){$(t.target).closest(\".btn\").toggleClass(\"focus\",/^focus(in)?$/.test(t.type))})}(jQuery),+function($){\"use strict\";function t(t){return this.each(function(){var i=$(this),o=i.data(\"bs.carousel\"),n=$.extend({},e.DEFAULTS,i.data(),\"object\"==typeof t&&t),s=\"string\"==typeof t?t:n.slide;o||i.data(\"bs.carousel\",o=new e(this,n)),\"number\"==typeof t?o.to(t):s?o[s]():n.interval&&o.pause().cycle()})}var e=function(t,e){this.$element=$(t),this.$indicators=this.$element.find(\".carousel-indicators\"),this.options=e,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on(\"keydown.bs.carousel\",$.proxy(this.keydown,this)),\"hover\"==this.options.pause&&!(\"ontouchstart\"in document.documentElement)&&this.$element.on(\"mouseenter.bs.carousel\",$.proxy(this.pause,this)).on(\"mouseleave.bs.carousel\",$.proxy(this.cycle,this))};e.VERSION=\"3.3.7\",e.TRANSITION_DURATION=600,e.DEFAULTS={interval:5e3,pause:\"hover\",wrap:!0,keyboard:!0},e.prototype.keydown=function(t){if(!/input|textarea/i.test(t.target.tagName)){switch(t.which){case 37:this.prev();break;case 39:this.next();break;default:return}t.preventDefault()}},e.prototype.cycle=function(t){return t||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval($.proxy(this.next,this),this.options.interval)),this},e.prototype.getItemIndex=function(t){return this.$items=t.parent().children(\".item\"),this.$items.index(t||this.$active)},e.prototype.getItemForDirection=function(t,e){var i=this.getItemIndex(e),o=\"prev\"==t&&0===i||\"next\"==t&&i==this.$items.length-1;if(o&&!this.options.wrap)return e;var n=\"prev\"==t?-1:1,s=(i+n)%this.$items.length;return this.$items.eq(s)},e.prototype.to=function(t){var e=this,i=this.getItemIndex(this.$active=this.$element.find(\".item.active\"));if(!(t>this.$items.length-1||t<0))return this.sliding?this.$element.one(\"slid.bs.carousel\",function(){e.to(t)}):i==t?this.pause().cycle():this.slide(t>i?\"next\":\"prev\",this.$items.eq(t))},e.prototype.pause=function(t){return t||(this.paused=!0),this.$element.find(\".next, .prev\").length&&$.support.transition&&(this.$element.trigger($.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},e.prototype.next=function(){if(!this.sliding)return this.slide(\"next\")},e.prototype.prev=function(){if(!this.sliding)return this.slide(\"prev\")},e.prototype.slide=function(t,i){var o=this.$element.find(\".item.active\"),n=i||this.getItemForDirection(t,o),s=this.interval,a=\"next\"==t?\"left\":\"right\",r=this;if(n.hasClass(\"active\"))return this.sliding=!1;var l=n[0],h=$.Event(\"slide.bs.carousel\",{relatedTarget:l,direction:a});if(this.$element.trigger(h),!h.isDefaultPrevented()){if(this.sliding=!0,s&&this.pause(),this.$indicators.length){this.$indicators.find(\".active\").removeClass(\"active\");var d=$(this.$indicators.children()[this.getItemIndex(n)]);d&&d.addClass(\"active\")}var p=$.Event(\"slid.bs.carousel\",{relatedTarget:l,direction:a});return $.support.transition&&this.$element.hasClass(\"slide\")?(n.addClass(t),n[0].offsetWidth,o.addClass(a),n.addClass(a),o.one(\"bsTransitionEnd\",function(){n.removeClass([t,a].join(\" \")).addClass(\"active\"),o.removeClass([\"active\",a].join(\" \")),r.sliding=!1,setTimeout(function(){r.$element.trigger(p)},0)}).emulateTransitionEnd(e.TRANSITION_DURATION)):(o.removeClass(\"active\"),n.addClass(\"active\"),this.sliding=!1,this.$element.trigger(p)),s&&this.cycle(),this}};var i=$.fn.carousel;$.fn.carousel=t,$.fn.carousel.Constructor=e,$.fn.carousel.noConflict=function(){return $.fn.carousel=i,this};var o=function(e){var i,o=$(this),n=$(o.attr(\"data-target\")||(i=o.attr(\"href\"))&&i.replace(/.*(?=#[^\\s]+$)/,\"\"));if(n.hasClass(\"carousel\")){var s=$.extend({},n.data(),o.data()),a=o.attr(\"data-slide-to\");a&&(s.interval=!1),t.call(n,s),a&&n.data(\"bs.carousel\").to(a),e.preventDefault()}};$(document).on(\"click.bs.carousel.data-api\",\"[data-slide]\",o).on(\"click.bs.carousel.data-api\",\"[data-slide-to]\",o),$(window).on(\"load\",function(){$('[data-ride=\"carousel\"]').each(function(){var e=$(this);t.call(e,e.data())})})}(jQuery),+function($){\"use strict\";function t(t){var e,i=t.attr(\"data-target\")||(e=t.attr(\"href\"))&&e.replace(/.*(?=#[^\\s]+$)/,\"\");return $(i)}function e(t){return this.each(function(){var e=$(this),o=e.data(\"bs.collapse\"),n=$.extend({},i.DEFAULTS,e.data(),\"object\"==typeof t&&t);!o&&n.toggle&&/show|hide/.test(t)&&(n.toggle=!1),o||e.data(\"bs.collapse\",o=new i(this,n)),\"string\"==typeof t&&o[t]()})}var i=function(t,e){this.$element=$(t),this.options=$.extend({},i.DEFAULTS,e),this.$trigger=$('[data-toggle=\"collapse\"][href=\"#'+t.id+'\"],[data-toggle=\"collapse\"][data-target=\"#'+t.id+'\"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};i.VERSION=\"3.3.7\",i.TRANSITION_DURATION=350,i.DEFAULTS={toggle:!0},i.prototype.dimension=function(){var t=this.$element.hasClass(\"width\");return t?\"width\":\"height\"},i.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass(\"in\")){var t,o=this.$parent&&this.$parent.children(\".panel\").children(\".in, .collapsing\");if(!(o&&o.length&&(t=o.data(\"bs.collapse\"),t&&t.transitioning))){var n=$.Event(\"show.bs.collapse\");if(this.$element.trigger(n),!n.isDefaultPrevented()){o&&o.length&&(e.call(o,\"hide\"),t||o.data(\"bs.collapse\",null));var s=this.dimension();this.$element.removeClass(\"collapse\").addClass(\"collapsing\")[s](0).attr(\"aria-expanded\",!0),this.$trigger.removeClass(\"collapsed\").attr(\"aria-expanded\",!0),this.transitioning=1;var a=function(){this.$element.removeClass(\"collapsing\").addClass(\"collapse in\")[s](\"\"),this.transitioning=0,this.$element.trigger(\"shown.bs.collapse\")};if(!$.support.transition)return a.call(this);var r=$.camelCase([\"scroll\",s].join(\"-\"));this.$element.one(\"bsTransitionEnd\",$.proxy(a,this)).emulateTransitionEnd(i.TRANSITION_DURATION)[s](this.$element[0][r])}}}},i.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass(\"in\")){var t=$.Event(\"hide.bs.collapse\");if(this.$element.trigger(t),!t.isDefaultPrevented()){var e=this.dimension();this.$element[e](this.$element[e]())[0].offsetHeight,this.$element.addClass(\"collapsing\").removeClass(\"collapse in\").attr(\"aria-expanded\",!1),this.$trigger.addClass(\"collapsed\").attr(\"aria-expanded\",!1),this.transitioning=1;var o=function(){this.transitioning=0,this.$element.removeClass(\"collapsing\").addClass(\"collapse\").trigger(\"hidden.bs.collapse\")};return $.support.transition?void this.$element[e](0).one(\"bsTransitionEnd\",$.proxy(o,this)).emulateTransitionEnd(i.TRANSITION_DURATION):o.call(this)}}},i.prototype.toggle=function(){this[this.$element.hasClass(\"in\")?\"hide\":\"show\"]()},i.prototype.getParent=function(){return $(this.options.parent).find('[data-toggle=\"collapse\"][data-parent=\"'+this.options.parent+'\"]').each($.proxy(function(e,i){var o=$(i);this.addAriaAndCollapsedClass(t(o),o)},this)).end()},i.prototype.addAriaAndCollapsedClass=function(t,e){var i=t.hasClass(\"in\");t.attr(\"aria-expanded\",i),e.toggleClass(\"collapsed\",!i).attr(\"aria-expanded\",i)};var o=$.fn.collapse;$.fn.collapse=e,$.fn.collapse.Constructor=i,$.fn.collapse.noConflict=function(){return $.fn.collapse=o,this},$(document).on(\"click.bs.collapse.data-api\",'[data-toggle=\"collapse\"]',function(i){var o=$(this);o.attr(\"data-target\")||i.preventDefault();var n=t(o),s=n.data(\"bs.collapse\"),a=s?\"toggle\":o.data();e.call(n,a)})}(jQuery),+function($){\"use strict\";function t(t){var e=t.attr(\"data-target\");e||(e=t.attr(\"href\"),e=e&&/#[A-Za-z]/.test(e)&&e.replace(/.*(?=#[^\\s]*$)/,\"\"));var i=e&&$(e);return i&&i.length?i:t.parent()}function e(e){e&&3===e.which||($(o).remove(),$(n).each(function(){var i=$(this),o=t(i),n={relatedTarget:this};o.hasClass(\"open\")&&(e&&\"click\"==e.type&&/input|textarea/i.test(e.target.tagName)&&$.contains(o[0],e.target)||(o.trigger(e=$.Event(\"hide.bs.dropdown\",n)),e.isDefaultPrevented()||(i.attr(\"aria-expanded\",\"false\"),o.removeClass(\"open\").trigger($.Event(\"hidden.bs.dropdown\",n)))))}))}function i(t){return this.each(function(){var e=$(this),i=e.data(\"bs.dropdown\");i||e.data(\"bs.dropdown\",i=new s(this)),\"string\"==typeof t&&i[t].call(e)})}var o=\".dropdown-backdrop\",n='[data-toggle=\"dropdown\"]',s=function(t){$(t).on(\"click.bs.dropdown\",this.toggle)};s.VERSION=\"3.3.7\",s.prototype.toggle=function(i){var o=$(this);if(!o.is(\".disabled, :disabled\")){var n=t(o),s=n.hasClass(\"open\");if(e(),!s){\"ontouchstart\"in document.documentElement&&!n.closest(\".navbar-nav\").length&&$(document.createElement(\"div\")).addClass(\"dropdown-backdrop\").insertAfter($(this)).on(\"click\",e);var a={relatedTarget:this};if(n.trigger(i=$.Event(\"show.bs.dropdown\",a)),i.isDefaultPrevented())return;o.trigger(\"focus\").attr(\"aria-expanded\",\"true\"),n.toggleClass(\"open\").trigger($.Event(\"shown.bs.dropdown\",a))}return!1}},s.prototype.keydown=function(e){if(/(38|40|27|32)/.test(e.which)&&!/input|textarea/i.test(e.target.tagName)){var i=$(this);if(e.preventDefault(),e.stopPropagation(),!i.is(\".disabled, :disabled\")){var o=t(i),s=o.hasClass(\"open\");if(!s&&27!=e.which||s&&27==e.which)return 27==e.which&&o.find(n).trigger(\"focus\"),i.trigger(\"click\");var a=\" li:not(.disabled):visible a\",r=o.find(\".dropdown-menu\"+a);if(r.length){var l=r.index(e.target);38==e.which&&l>0&&l--,40==e.which&&l<r.length-1&&l++,~l||(l=0),r.eq(l).trigger(\"focus\")}}}};var a=$.fn.dropdown;$.fn.dropdown=i,$.fn.dropdown.Constructor=s,$.fn.dropdown.noConflict=function(){return $.fn.dropdown=a,this},$(document).on(\"click.bs.dropdown.data-api\",e).on(\"click.bs.dropdown.data-api\",\".dropdown form\",function(t){t.stopPropagation()}).on(\"click.bs.dropdown.data-api\",n,s.prototype.toggle).on(\"keydown.bs.dropdown.data-api\",n,s.prototype.keydown).on(\"keydown.bs.dropdown.data-api\",\".dropdown-menu\",s.prototype.keydown)}(jQuery),+function($){\"use strict\";function t(t,i){return this.each(function(){var o=$(this),n=o.data(\"bs.modal\"),s=$.extend({},e.DEFAULTS,o.data(),\"object\"==typeof t&&t);n||o.data(\"bs.modal\",n=new e(this,s)),\"string\"==typeof t?n[t](i):s.show&&n.show(i)})}var e=function(t,e){this.options=e,this.$body=$(document.body),this.$element=$(t),this.$dialog=this.$element.find(\".modal-dialog\"),this.$backdrop=null,this.isShown=null,this.originalBodyPad=null,this.scrollbarWidth=0,this.ignoreBackdropClick=!1,this.options.remote&&this.$element.find(\".modal-content\").load(this.options.remote,$.proxy(function(){this.$element.trigger(\"loaded.bs.modal\")},this))};e.VERSION=\"3.3.7\",e.TRANSITION_DURATION=300,e.BACKDROP_TRANSITION_DURATION=150,e.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},e.prototype.toggle=function(t){return this.isShown?this.hide():this.show(t)},e.prototype.show=function(t){var i=this,o=$.Event(\"show.bs.modal\",{relatedTarget:t});this.$element.trigger(o),this.isShown||o.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass(\"modal-open\"),this.escape(),this.resize(),this.$element.on(\"click.dismiss.bs.modal\",'[data-dismiss=\"modal\"]',$.proxy(this.hide,this)),this.$dialog.on(\"mousedown.dismiss.bs.modal\",function(){i.$element.one(\"mouseup.dismiss.bs.modal\",function(t){$(t.target).is(i.$element)&&(i.ignoreBackdropClick=!0)})}),this.backdrop(function(){var o=$.support.transition&&i.$element.hasClass(\"fade\");i.$element.parent().length||i.$element.appendTo(i.$body),i.$element.show().scrollTop(0),i.adjustDialog(),o&&i.$element[0].offsetWidth,i.$element.addClass(\"in\"),i.enforceFocus();var n=$.Event(\"shown.bs.modal\",{relatedTarget:t});o?i.$dialog.one(\"bsTransitionEnd\",function(){i.$element.trigger(\"focus\").trigger(n)}).emulateTransitionEnd(e.TRANSITION_DURATION):i.$element.trigger(\"focus\").trigger(n)}))},e.prototype.hide=function(t){t&&t.preventDefault(),t=$.Event(\"hide.bs.modal\"),this.$element.trigger(t),this.isShown&&!t.isDefaultPrevented()&&(this.isShown=!1,this.escape(),this.resize(),$(document).off(\"focusin.bs.modal\"),this.$element.removeClass(\"in\").off(\"click.dismiss.bs.modal\").off(\"mouseup.dismiss.bs.modal\"),this.$dialog.off(\"mousedown.dismiss.bs.modal\"),$.support.transition&&this.$element.hasClass(\"fade\")?this.$element.one(\"bsTransitionEnd\",$.proxy(this.hideModal,this)).emulateTransitionEnd(e.TRANSITION_DURATION):this.hideModal())},e.prototype.enforceFocus=function(){$(document).off(\"focusin.bs.modal\").on(\"focusin.bs.modal\",$.proxy(function(t){document===t.target||this.$element[0]===t.target||this.$element.has(t.target).length||this.$element.trigger(\"focus\")},this))},e.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on(\"keydown.dismiss.bs.modal\",$.proxy(function(t){27==t.which&&this.hide()},this)):this.isShown||this.$element.off(\"keydown.dismiss.bs.modal\")},e.prototype.resize=function(){this.isShown?$(window).on(\"resize.bs.modal\",$.proxy(this.handleUpdate,this)):$(window).off(\"resize.bs.modal\")},e.prototype.hideModal=function(){var t=this;this.$element.hide(),this.backdrop(function(){t.$body.removeClass(\"modal-open\"),t.resetAdjustments(),t.resetScrollbar(),t.$element.trigger(\"hidden.bs.modal\")})},e.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},e.prototype.backdrop=function(t){var i=this,o=this.$element.hasClass(\"fade\")?\"fade\":\"\";if(this.isShown&&this.options.backdrop){var n=$.support.transition&&o;if(this.$backdrop=$(document.createElement(\"div\")).addClass(\"modal-backdrop \"+o).appendTo(this.$body),this.$element.on(\"click.dismiss.bs.modal\",$.proxy(function(t){return this.ignoreBackdropClick?void(this.ignoreBackdropClick=!1):void(t.target===t.currentTarget&&(\"static\"==this.options.backdrop?this.$element[0].focus():this.hide()))},this)),n&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass(\"in\"),!t)return;n?this.$backdrop.one(\"bsTransitionEnd\",t).emulateTransitionEnd(e.BACKDROP_TRANSITION_DURATION):t()}else if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass(\"in\");var s=function(){i.removeBackdrop(),t&&t()};$.support.transition&&this.$element.hasClass(\"fade\")?this.$backdrop.one(\"bsTransitionEnd\",s).emulateTransitionEnd(e.BACKDROP_TRANSITION_DURATION):s()}else t&&t()},e.prototype.handleUpdate=function(){this.adjustDialog()},e.prototype.adjustDialog=function(){var t=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&t?this.scrollbarWidth:\"\",paddingRight:this.bodyIsOverflowing&&!t?this.scrollbarWidth:\"\"})},e.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:\"\",paddingRight:\"\"})},e.prototype.checkScrollbar=function(){var t=window.innerWidth;if(!t){var e=document.documentElement.getBoundingClientRect();t=e.right-Math.abs(e.left)}this.bodyIsOverflowing=document.body.clientWidth<t,this.scrollbarWidth=this.measureScrollbar()},e.prototype.setScrollbar=function(){var t=parseInt(this.$body.css(\"padding-right\")||0,10);this.originalBodyPad=document.body.style.paddingRight||\"\",this.bodyIsOverflowing&&this.$body.css(\"padding-right\",t+this.scrollbarWidth)},e.prototype.resetScrollbar=function(){this.$body.css(\"padding-right\",this.originalBodyPad)},e.prototype.measureScrollbar=function(){var t=document.createElement(\"div\");t.className=\"modal-scrollbar-measure\",this.$body.append(t);var e=t.offsetWidth-t.clientWidth;return this.$body[0].removeChild(t),e};var i=$.fn.modal;$.fn.modal=t,$.fn.modal.Constructor=e,$.fn.modal.noConflict=function(){return $.fn.modal=i,this},$(document).on(\"click.bs.modal.data-api\",'[data-toggle=\"modal\"]',function(e){var i=$(this),o=i.attr(\"href\"),n=$(i.attr(\"data-target\")||o&&o.replace(/.*(?=#[^\\s]+$)/,\"\")),s=n.data(\"bs.modal\")?\"toggle\":$.extend({remote:!/#/.test(o)&&o},n.data(),i.data());i.is(\"a\")&&e.preventDefault(),n.one(\"show.bs.modal\",function(t){t.isDefaultPrevented()||n.one(\"hidden.bs.modal\",function(){i.is(\":visible\")&&i.trigger(\"focus\")})}),t.call(n,s,this)})}(jQuery),+function($){\"use strict\";function t(t){return this.each(function(){var i=$(this),o=i.data(\"bs.tooltip\"),n=\"object\"==typeof t&&t;!o&&/destroy|hide/.test(t)||(o||i.data(\"bs.tooltip\",o=new e(this,n)),\"string\"==typeof t&&o[t]())})}var e=function(t,e){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init(\"tooltip\",t,e)};e.VERSION=\"3.3.7\",e.TRANSITION_DURATION=150,e.DEFAULTS={animation:!0,placement:\"top\",selector:!1,template:'<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',trigger:\"hover focus\",title:\"\",delay:0,html:!1,container:!1,viewport:{selector:\"body\",padding:0}},e.prototype.init=function(t,e,i){if(this.enabled=!0,this.type=t,this.$element=$(e),this.options=this.getOptions(i),this.$viewport=this.options.viewport&&$($.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error(\"`selector` option must be specified when initializing \"+this.type+\" on the window.document object!\");for(var o=this.options.trigger.split(\" \"),n=o.length;n--;){var s=o[n];if(\"click\"==s)this.$element.on(\"click.\"+this.type,this.options.selector,$.proxy(this.toggle,this));else if(\"manual\"!=s){var a=\"hover\"==s?\"mouseenter\":\"focusin\",r=\"hover\"==s?\"mouseleave\":\"focusout\";this.$element.on(a+\".\"+this.type,this.options.selector,$.proxy(this.enter,this)),this.$element.on(r+\".\"+this.type,this.options.selector,$.proxy(this.leave,this))}}this.options.selector?this._options=$.extend({},this.options,{trigger:\"manual\",selector:\"\"}):this.fixTitle()},e.prototype.getDefaults=function(){return e.DEFAULTS},e.prototype.getOptions=function(t){return t=$.extend({},this.getDefaults(),this.$element.data(),t),t.delay&&\"number\"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),t},e.prototype.getDelegateOptions=function(){var t={},e=this.getDefaults();return this._options&&$.each(this._options,function(i,o){e[i]!=o&&(t[i]=o)}),t},e.prototype.enter=function(t){var e=t instanceof this.constructor?t:$(t.currentTarget).data(\"bs.\"+this.type);return e||(e=new this.constructor(t.currentTarget,this.getDelegateOptions()),$(t.currentTarget).data(\"bs.\"+this.type,e)),t instanceof $.Event&&(e.inState[\"focusin\"==t.type?\"focus\":\"hover\"]=!0),e.tip().hasClass(\"in\")||\"in\"==e.hoverState?void(e.hoverState=\"in\"):(clearTimeout(e.timeout),e.hoverState=\"in\",e.options.delay&&e.options.delay.show?void(e.timeout=setTimeout(function(){\"in\"==e.hoverState&&e.show()},e.options.delay.show)):e.show())},e.prototype.isInStateTrue=function(){for(var t in this.inState)if(this.inState[t])return!0;return!1},e.prototype.leave=function(t){var e=t instanceof this.constructor?t:$(t.currentTarget).data(\"bs.\"+this.type);if(e||(e=new this.constructor(t.currentTarget,this.getDelegateOptions()),$(t.currentTarget).data(\"bs.\"+this.type,e)),t instanceof $.Event&&(e.inState[\"focusout\"==t.type?\"focus\":\"hover\"]=!1),!e.isInStateTrue())return clearTimeout(e.timeout),e.hoverState=\"out\",e.options.delay&&e.options.delay.hide?void(e.timeout=setTimeout(function(){\"out\"==e.hoverState&&e.hide()},e.options.delay.hide)):e.hide()},e.prototype.show=function(){var t=$.Event(\"show.bs.\"+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(t);var i=$.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(t.isDefaultPrevented()||!i)return;var o=this,n=this.tip(),s=this.getUID(this.type);this.setContent(),n.attr(\"id\",s),this.$element.attr(\"aria-describedby\",s),this.options.animation&&n.addClass(\"fade\");var a=\"function\"==typeof this.options.placement?this.options.placement.call(this,n[0],this.$element[0]):this.options.placement,r=/\\s?auto?\\s?/i,l=r.test(a);l&&(a=a.replace(r,\"\")||\"top\"),n.detach().css({top:0,left:0,display:\"block\"}).addClass(a).data(\"bs.\"+this.type,this),this.options.container?n.appendTo(this.options.container):n.insertAfter(this.$element),this.$element.trigger(\"inserted.bs.\"+this.type);var h=this.getPosition(),d=n[0].offsetWidth,p=n[0].offsetHeight;if(l){var c=a,f=this.getPosition(this.$viewport);a=\"bottom\"==a&&h.bottom+p>f.bottom?\"top\":\"top\"==a&&h.top-p<f.top?\"bottom\":\"right\"==a&&h.right+d>f.width?\"left\":\"left\"==a&&h.left-d<f.left?\"right\":a,n.removeClass(c).addClass(a)}var u=this.getCalculatedOffset(a,h,d,p);this.applyPlacement(u,a);var g=function(){var t=o.hoverState;o.$element.trigger(\"shown.bs.\"+o.type),o.hoverState=null,\"out\"==t&&o.leave(o)};$.support.transition&&this.$tip.hasClass(\"fade\")?n.one(\"bsTransitionEnd\",g).emulateTransitionEnd(e.TRANSITION_DURATION):g()}},e.prototype.applyPlacement=function(t,e){var i=this.tip(),o=i[0].offsetWidth,n=i[0].offsetHeight,s=parseInt(i.css(\"margin-top\"),10),a=parseInt(i.css(\"margin-left\"),10);isNaN(s)&&(s=0),isNaN(a)&&(a=0),t.top+=s,t.left+=a,$.offset.setOffset(i[0],$.extend({using:function(t){i.css({top:Math.round(t.top),left:Math.round(t.left)})}},t),0),i.addClass(\"in\");var r=i[0].offsetWidth,l=i[0].offsetHeight;\"top\"==e&&l!=n&&(t.top=t.top+n-l);var h=this.getViewportAdjustedDelta(e,t,r,l);h.left?t.left+=h.left:t.top+=h.top;var d=/top|bottom/.test(e),p=d?2*h.left-o+r:2*h.top-n+l,c=d?\"offsetWidth\":\"offsetHeight\";i.offset(t),this.replaceArrow(p,i[0][c],d)},e.prototype.replaceArrow=function(t,e,i){this.arrow().css(i?\"left\":\"top\",50*(1-t/e)+\"%\").css(i?\"top\":\"left\",\"\")},e.prototype.setContent=function(){var t=this.tip(),e=this.getTitle();t.find(\".tooltip-inner\")[this.options.html?\"html\":\"text\"](e),t.removeClass(\"fade in top bottom left right\")},e.prototype.hide=function(t){function i(){\"in\"!=o.hoverState&&n.detach(),o.$element&&o.$element.removeAttr(\"aria-describedby\").trigger(\"hidden.bs.\"+o.type),t&&t()}var o=this,n=$(this.$tip),s=$.Event(\"hide.bs.\"+this.type);if(this.$element.trigger(s),!s.isDefaultPrevented())return n.removeClass(\"in\"),$.support.transition&&n.hasClass(\"fade\")?n.one(\"bsTransitionEnd\",i).emulateTransitionEnd(e.TRANSITION_DURATION):i(),this.hoverState=null,this},e.prototype.fixTitle=function(){var t=this.$element;(t.attr(\"title\")||\"string\"!=typeof t.attr(\"data-original-title\"))&&t.attr(\"data-original-title\",t.attr(\"title\")||\"\").attr(\"title\",\"\")},e.prototype.hasContent=function(){return this.getTitle()},e.prototype.getPosition=function(t){t=t||this.$element;var e=t[0],i=\"BODY\"==e.tagName,o=e.getBoundingClientRect();null==o.width&&(o=$.extend({},o,{width:o.right-o.left,height:o.bottom-o.top}));var n=window.SVGElement&&e instanceof window.SVGElement,s=i?{top:0,left:0}:n?null:t.offset(),a={scroll:i?document.documentElement.scrollTop||document.body.scrollTop:t.scrollTop()},r=i?{width:$(window).width(),height:$(window).height()}:null;return $.extend({},o,a,r,s)},e.prototype.getCalculatedOffset=function(t,e,i,o){return\"bottom\"==t?{top:e.top+e.height,left:e.left+e.width/2-i/2}:\"top\"==t?{top:e.top-o,left:e.left+e.width/2-i/2}:\"left\"==t?{top:e.top+e.height/2-o/2,left:e.left-i}:{top:e.top+e.height/2-o/2,left:e.left+e.width}},e.prototype.getViewportAdjustedDelta=function(t,e,i,o){var n={top:0,left:0};if(!this.$viewport)return n;var s=this.options.viewport&&this.options.viewport.padding||0,a=this.getPosition(this.$viewport);if(/right|left/.test(t)){var r=e.top-s-a.scroll,l=e.top+s-a.scroll+o;r<a.top?n.top=a.top-r:l>a.top+a.height&&(n.top=a.top+a.height-l)}else{var h=e.left-s,d=e.left+s+i;h<a.left?n.left=a.left-h:d>a.right&&(n.left=a.left+a.width-d)}return n},e.prototype.getTitle=function(){var t,e=this.$element,i=this.options;return t=e.attr(\"data-original-title\")||(\"function\"==typeof i.title?i.title.call(e[0]):i.title)},e.prototype.getUID=function(t){do t+=~~(1e6*Math.random());while(document.getElementById(t));return t},e.prototype.tip=function(){if(!this.$tip&&(this.$tip=$(this.options.template),1!=this.$tip.length))throw new Error(this.type+\" `template` option must consist of exactly 1 top-level element!\");return this.$tip},e.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(\".tooltip-arrow\")},e.prototype.enable=function(){this.enabled=!0},e.prototype.disable=function(){this.enabled=!1},e.prototype.toggleEnabled=function(){this.enabled=!this.enabled},e.prototype.toggle=function(t){var e=this;t&&(e=$(t.currentTarget).data(\"bs.\"+this.type),e||(e=new this.constructor(t.currentTarget,this.getDelegateOptions()),$(t.currentTarget).data(\"bs.\"+this.type,e))),t?(e.inState.click=!e.inState.click,e.isInStateTrue()?e.enter(e):e.leave(e)):e.tip().hasClass(\"in\")?e.leave(e):e.enter(e)},e.prototype.destroy=function(){var t=this;clearTimeout(this.timeout),this.hide(function(){t.$element.off(\".\"+t.type).removeData(\"bs.\"+t.type),t.$tip&&t.$tip.detach(),t.$tip=null,t.$arrow=null,t.$viewport=null,t.$element=null})};var i=$.fn.tooltip;$.fn.tooltip=t,$.fn.tooltip.Constructor=e,$.fn.tooltip.noConflict=function(){return $.fn.tooltip=i,this}}(jQuery),+function($){\"use strict\";function t(t){return this.each(function(){var i=$(this),o=i.data(\"bs.popover\"),n=\"object\"==typeof t&&t;!o&&/destroy|hide/.test(t)||(o||i.data(\"bs.popover\",o=new e(this,n)),\"string\"==typeof t&&o[t]())})}var e=function(t,e){this.init(\"popover\",t,e)};if(!$.fn.tooltip)throw new Error(\"Popover requires tooltip.js\");e.VERSION=\"3.3.7\",e.DEFAULTS=$.extend({},$.fn.tooltip.Constructor.DEFAULTS,{placement:\"right\",trigger:\"click\",content:\"\",template:'<div class=\"popover\" role=\"tooltip\"><div class=\"arrow\"></div><h3 class=\"popover-title\"></h3><div class=\"popover-content\"></div></div>'}),e.prototype=$.extend({},$.fn.tooltip.Constructor.prototype),e.prototype.constructor=e,e.prototype.getDefaults=function(){return e.DEFAULTS},e.prototype.setContent=function(){var t=this.tip(),e=this.getTitle(),i=this.getContent();t.find(\".popover-title\")[this.options.html?\"html\":\"text\"](e),t.find(\".popover-content\").children().detach().end()[this.options.html?\"string\"==typeof i?\"html\":\"append\":\"text\"](i),t.removeClass(\"fade top bottom left right in\"),t.find(\".popover-title\").html()||t.find(\".popover-title\").hide()},e.prototype.hasContent=function(){return this.getTitle()||this.getContent()},e.prototype.getContent=function(){var t=this.$element,e=this.options;return t.attr(\"data-content\")||(\"function\"==typeof e.content?e.content.call(t[0]):e.content)},e.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(\".arrow\")};var i=$.fn.popover;$.fn.popover=t,$.fn.popover.Constructor=e,$.fn.popover.noConflict=function(){return $.fn.popover=i,this}}(jQuery),+function($){\"use strict\";function t(e,i){this.$body=$(document.body),this.$scrollElement=$($(e).is(document.body)?window:e),this.options=$.extend({},t.DEFAULTS,i),this.selector=(this.options.target||\"\")+\" .nav li > a\",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on(\"scroll.bs.scrollspy\",$.proxy(this.process,this)),this.refresh(),this.process()}function e(e){return this.each(function(){var i=$(this),o=i.data(\"bs.scrollspy\"),n=\"object\"==typeof e&&e;o||i.data(\"bs.scrollspy\",o=new t(this,n)),\"string\"==typeof e&&o[e]()})}t.VERSION=\"3.3.7\",t.DEFAULTS={offset:10},t.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},t.prototype.refresh=function(){var t=this,e=\"offset\",i=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),$.isWindow(this.$scrollElement[0])||(e=\"position\",i=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var t=$(this),o=t.data(\"target\")||t.attr(\"href\"),n=/^#./.test(o)&&$(o);return n&&n.length&&n.is(\":visible\")&&[[n[e]().top+i,o]]||null}).sort(function(t,e){return t[0]-e[0]}).each(function(){t.offsets.push(this[0]),t.targets.push(this[1])})},t.prototype.process=function(){var t=this.$scrollElement.scrollTop()+this.options.offset,e=this.getScrollHeight(),i=this.options.offset+e-this.$scrollElement.height(),o=this.offsets,n=this.targets,s=this.activeTarget,a;if(this.scrollHeight!=e&&this.refresh(),t>=i)return s!=(a=n[n.length-1])&&this.activate(a);if(s&&t<o[0])return this.activeTarget=null,this.clear();for(a=o.length;a--;)s!=n[a]&&t>=o[a]&&(void 0===o[a+1]||t<o[a+1])&&this.activate(n[a])},t.prototype.activate=function(t){\r\nthis.activeTarget=t,this.clear();var e=this.selector+'[data-target=\"'+t+'\"],'+this.selector+'[href=\"'+t+'\"]',i=$(e).parents(\"li\").addClass(\"active\");i.parent(\".dropdown-menu\").length&&(i=i.closest(\"li.dropdown\").addClass(\"active\")),i.trigger(\"activate.bs.scrollspy\")},t.prototype.clear=function(){$(this.selector).parentsUntil(this.options.target,\".active\").removeClass(\"active\")};var i=$.fn.scrollspy;$.fn.scrollspy=e,$.fn.scrollspy.Constructor=t,$.fn.scrollspy.noConflict=function(){return $.fn.scrollspy=i,this},$(window).on(\"load.bs.scrollspy.data-api\",function(){$('[data-spy=\"scroll\"]').each(function(){var t=$(this);e.call(t,t.data())})})}(jQuery),+function($){\"use strict\";function t(t){return this.each(function(){var i=$(this),o=i.data(\"bs.tab\");o||i.data(\"bs.tab\",o=new e(this)),\"string\"==typeof t&&o[t]()})}var e=function(t){this.element=$(t)};e.VERSION=\"3.3.7\",e.TRANSITION_DURATION=150,e.prototype.show=function(){var t=this.element,e=t.closest(\"ul:not(.dropdown-menu)\"),i=t.data(\"target\");if(i||(i=t.attr(\"href\"),i=i&&i.replace(/.*(?=#[^\\s]*$)/,\"\")),!t.parent(\"li\").hasClass(\"active\")){var o=e.find(\".active:last a\"),n=$.Event(\"hide.bs.tab\",{relatedTarget:t[0]}),s=$.Event(\"show.bs.tab\",{relatedTarget:o[0]});if(o.trigger(n),t.trigger(s),!s.isDefaultPrevented()&&!n.isDefaultPrevented()){var a=$(i);this.activate(t.closest(\"li\"),e),this.activate(a,a.parent(),function(){o.trigger({type:\"hidden.bs.tab\",relatedTarget:t[0]}),t.trigger({type:\"shown.bs.tab\",relatedTarget:o[0]})})}}},e.prototype.activate=function(t,i,o){function n(){s.removeClass(\"active\").find(\"> .dropdown-menu > .active\").removeClass(\"active\").end().find('[data-toggle=\"tab\"]').attr(\"aria-expanded\",!1),t.addClass(\"active\").find('[data-toggle=\"tab\"]').attr(\"aria-expanded\",!0),a?(t[0].offsetWidth,t.addClass(\"in\")):t.removeClass(\"fade\"),t.parent(\".dropdown-menu\").length&&t.closest(\"li.dropdown\").addClass(\"active\").end().find('[data-toggle=\"tab\"]').attr(\"aria-expanded\",!0),o&&o()}var s=i.find(\"> .active\"),a=o&&$.support.transition&&(s.length&&s.hasClass(\"fade\")||!!i.find(\"> .fade\").length);s.length&&a?s.one(\"bsTransitionEnd\",n).emulateTransitionEnd(e.TRANSITION_DURATION):n(),s.removeClass(\"in\")};var i=$.fn.tab;$.fn.tab=t,$.fn.tab.Constructor=e,$.fn.tab.noConflict=function(){return $.fn.tab=i,this};var o=function(e){e.preventDefault(),t.call($(this),\"show\")};$(document).on(\"click.bs.tab.data-api\",'[data-toggle=\"tab\"]',o).on(\"click.bs.tab.data-api\",'[data-toggle=\"pill\"]',o)}(jQuery),+function($){\"use strict\";function t(t){return this.each(function(){var i=$(this),o=i.data(\"bs.affix\"),n=\"object\"==typeof t&&t;o||i.data(\"bs.affix\",o=new e(this,n)),\"string\"==typeof t&&o[t]()})}var e=function(t,i){this.options=$.extend({},e.DEFAULTS,i),this.$target=$(this.options.target).on(\"scroll.bs.affix.data-api\",$.proxy(this.checkPosition,this)).on(\"click.bs.affix.data-api\",$.proxy(this.checkPositionWithEventLoop,this)),this.$element=$(t),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};e.VERSION=\"3.3.7\",e.RESET=\"affix affix-top affix-bottom\",e.DEFAULTS={offset:0,target:window},e.prototype.getState=function(t,e,i,o){var n=this.$target.scrollTop(),s=this.$element.offset(),a=this.$target.height();if(null!=i&&\"top\"==this.affixed)return n<i&&\"top\";if(\"bottom\"==this.affixed)return null!=i?!(n+this.unpin<=s.top)&&\"bottom\":!(n+a<=t-o)&&\"bottom\";var r=null==this.affixed,l=r?n:s.top,h=r?a:e;return null!=i&&n<=i?\"top\":null!=o&&l+h>=t-o&&\"bottom\"},e.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(e.RESET).addClass(\"affix\");var t=this.$target.scrollTop(),i=this.$element.offset();return this.pinnedOffset=i.top-t},e.prototype.checkPositionWithEventLoop=function(){setTimeout($.proxy(this.checkPosition,this),1)},e.prototype.checkPosition=function(){if(this.$element.is(\":visible\")){var t=this.$element.height(),i=this.options.offset,o=i.top,n=i.bottom,s=Math.max($(document).height(),$(document.body).height());\"object\"!=typeof i&&(n=o=i),\"function\"==typeof o&&(o=i.top(this.$element)),\"function\"==typeof n&&(n=i.bottom(this.$element));var a=this.getState(s,t,o,n);if(this.affixed!=a){null!=this.unpin&&this.$element.css(\"top\",\"\");var r=\"affix\"+(a?\"-\"+a:\"\"),l=$.Event(r+\".bs.affix\");if(this.$element.trigger(l),l.isDefaultPrevented())return;this.affixed=a,this.unpin=\"bottom\"==a?this.getPinnedOffset():null,this.$element.removeClass(e.RESET).addClass(r).trigger(r.replace(\"affix\",\"affixed\")+\".bs.affix\")}\"bottom\"==a&&this.$element.offset({top:s-t-n})}};var i=$.fn.affix;$.fn.affix=t,$.fn.affix.Constructor=e,$.fn.affix.noConflict=function(){return $.fn.affix=i,this},$(window).on(\"load\",function(){$('[data-spy=\"affix\"]').each(function(){var e=$(this),i=e.data();i.offset=i.offset||{},null!=i.offsetBottom&&(i.offset.bottom=i.offsetBottom),null!=i.offsetTop&&(i.offset.top=i.offsetTop),t.call(e,i)})})}(jQuery);\n\n  }).apply(root, arguments);\n});\n}(this));\n\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('bootstrapAmdFix',[\"jquery\", \"bootstrap\"], factory) : \r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"bootstrap\")) :\r\n    console && console.error('ScoreBootstrapUiAmdFix does not support non-amd script loading.');\r\n}(this/* window */, function ($) {\r\n\r\n    function ScoreBootstrapUiAmdFix() {\r\n\r\n    }\r\n\r\n    ScoreBootstrapUiAmdFix.prototype.fix = function () {\r\n        // if we use AMD, most likly we already miss $(window).on('load', foo) event which bootstrap uses to fire up init methods for it's own components. So we should run them manually. \r\n        if (document.readyState !== \"complete\") {\r\n            if (window.define === void 0 || typeof (window.define) !== \"function\") {\r\n                console && console.info && console.info(\"Score Bootstrap UI AMD fix was loaded not in AMD solution. In all probability you can remove this reference because it is not needed.\");\r\n            }\r\n            // don't do anything, looks like bootstrap was loaded before window.load event - it means that Bootstrap will do everything correct and manage to init js-components by itself.\r\n            return;\r\n        }\r\n\r\n        // check version (assume we are working with bootstrap 3 version only\r\n        if (!($.fn[\"alert\"]\r\n            && $.fn[\"alert\"].Constructor\r\n            && +/[\\d]+/.exec($.fn[\"alert\"].Constructor.VERSION) === 3)) {\r\n            return;\r\n        }\r\n\r\n        // affix\r\n        $('[data-spy=\"affix\"]').each(function() {\r\n            var $this = $(this);\r\n            var data = $this.data();\r\n\r\n            data.offset = data.offset || {};\r\n\r\n            if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom;\r\n            if (data.offsetTop != null) data.offset.top = data.offsetTop;\r\n\r\n            $this.affix(data);\r\n        });\r\n\r\n        // carousel\r\n        $('[data-ride=\"carousel\"]').each(function() {\r\n            var $this = $(this);\r\n            var data = $this.data();\r\n\r\n            $this.carousel(data);\r\n        });\r\n\r\n        // scrollspy\r\n        $('[data-spy=\"scroll\"]').each(function() {\r\n            var $this = $(this);\r\n            var data = $this.data();\r\n\r\n            $this.scrollspy(data);\r\n        });\r\n    }\r\n\r\n    return new ScoreBootstrapUiAmdFix();\r\n\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('scorebootstrap',[\"jquery\", \"bootstrap\", \"bootstrapAmdFix\", \"jqueryTouchSwipe\"], factory) : \r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"bootstrap\"), require(\"bootstrapAmdFix\"), require(\"jqueryTouchSwipe\")) :\r\n    console && console.error('BootstrapUI does not support non-amd script loading.');\r\n}(this/* window */, function ($, bt, btAmdFix) {\r\n    window.BrainJocks = window.BrainJocks || {};\r\n\r\n    if (BrainJocks.EE && BrainJocks.EE.Metadata && BrainJocks.EE.Metadata.sitecore &&\r\n        BrainJocks.EE.Metadata.sitecore().version === \"8.0\") {\r\n        // Fix incompatibilities between Bootstrap and the version of prototype.js that\r\n        // sitecore includes in version 8.0. This is needed for modal and tabs components.\r\n        function handler(event) {\r\n            event.target.hide = undefined;\r\n            setTimeout(function () { delete event.target.hide; }, 0);\r\n            event.target.show = undefined;\r\n            setTimeout(function () { delete event.target.show; }, 0);\r\n        }\r\n\r\n        $(window).on(\"show.bs.modal hide.bs.modal show.bs.tab hide.bs.tab show.bs.dropdown hide.bs.dropdown\", handler);\r\n    }\r\n\r\n    BrainJocks.BootstrapUI = {\r\n        Settings: {\r\n            causeRepaintsOn: function () {\r\n                return $(\"h1, h2, h3, h4, h5, h6, p, li\");\r\n            }\r\n        },\r\n\r\n        Fonts: {\r\n            scale: function () {\r\n                $(window).resize(function () {\r\n                    BrainJocks.BootstrapUI.Settings.causeRepaintsOn().css(\"z-index\", 1);\r\n                });\r\n            },\r\n\r\n        },\r\n\r\n        Carousel: {\r\n            init: function() {\r\n                $('.score-carousel .item:first-of-type').addClass(\"active\");\r\n\r\n                $('.score-carousel').swipe({\r\n                    swipeLeft: function () {\r\n                        $(this).carousel('next');\r\n                    },\r\n                    swipeRight: function () {\r\n                        $(this).carousel('prev');\r\n                    }\r\n                });\r\n            }                \r\n        },\r\n\r\n        TabSet: {\r\n            init: function() {\r\n                $('.score-tab').each(function () {\r\n                    var tabComponent = $(this);\r\n\r\n                    var tabsNav = tabComponent.find('.nav').first();\r\n                    var tabsContent = tabComponent.find('.tab-content').first();\r\n\r\n                    tabsContent.children('.tab-pane').each(function () {\r\n                        var tabPane = $(this);\r\n\r\n                        var tabId = tabPane.prop('id');\r\n                        var tabTitle = tabPane.data('title');\r\n                        var anchorable = /^(true|1|yes)$/i.test(tabPane.data('anchorable') || \"\");\r\n\r\n                        var li = '<li role=\"tab\"><a href=\"#' + tabId + '\" data-toggle=\"tab\" data-anchorable=\"' + anchorable + '\">' + tabTitle + '</a></li>';\r\n\r\n                        tabsNav.append(li);\r\n                    });\r\n                });\r\n            },\r\n\r\n            activate: function () {\r\n                $('.score-tab').each(function() {\r\n                    var tabToActivate = $(this).find('.nav li a')[0]; // first\r\n\r\n                    if (BrainJocks.BootstrapUI.Utils.isDeepLinked()) {\r\n                        var anchor = BrainJocks.BootstrapUI.Utils.getAnchor();\r\n\r\n                        tabToActivate = $(this).find(\"a[href='#tab-\" + anchor + \"']\")[0] || tabToActivate;\r\n                    }\r\n\r\n                    $(tabToActivate).tab('show');\r\n                });\r\n            }\r\n        },\r\n\r\n        Accordion: {\r\n            init: function() {\r\n                $('.score-accordion a[data-toggle=\"collapse\"]').each(function () {\r\n                    var accordion = $(this).closest(\".score-accordion\")[0];\r\n                    $(this).attr('data-parent', '#' + accordion.id);\r\n                });\r\n            },\r\n\r\n            activate: function() {\r\n                $('.score-accordion').each(function () {\r\n                    var shouldBeCollapsed = $(this).hasClass(\"collapsed\");\r\n\r\n                    var $firstPanel = $(\".panel\", this).first();\r\n                    if (BrainJocks.BootstrapUI.Utils.isDeepLinked()) {\r\n                        var anchor = BrainJocks.BootstrapUI.Utils.getAnchor();\r\n\r\n                        $firstPanel = $(this).find(\".panel:has(a[href='#collapse-\" + anchor + \"'])\")[0] || $firstPanel;\r\n                        shouldBeCollapsed = false;\r\n                    }\r\n\r\n                    if (!shouldBeCollapsed) {\r\n                        $('.panel-collapse', $firstPanel).addClass(\"in\");\r\n                        $('a[data-toggle=\"collapse\"]', $firstPanel).removeClass(\"collapsed\").attr(\"aria-expanded\", true);\r\n                    }\r\n                });\r\n            }\r\n        },\r\n\r\n        MegaMenu: {\r\n            init: function() {\r\n                $(\".score-megamenu\").find(\".btn\").addClass(\"navbar-btn\");    \r\n            }\r\n        },\r\n\r\n        Utils: {\r\n            isDeepLinked: function() {\r\n                return document.location.toString().match(\"#\");\r\n            },\r\n\r\n            getAnchor: function() {\r\n                if (!this.isDeepLinked()) {\r\n                    return \"\";\r\n                }\r\n\r\n                return document.location.toString().split('#')[1];\r\n            }\r\n        },\r\n\r\n        Breadcrumb: {\r\n            init: function () {\r\n                $('.score-breadcrumb > .score-breadcrumb-item:first-child .score-folding')\r\n                    .on('click.score',\r\n                        function(e) {\r\n                            e.preventDefault();\r\n                            var $this = $(this);\r\n                            $this.closest('.score-breadcrumb').toggleClass('alt-visible');\r\n\r\n                            var cssDuration = $this.closest('.score-breadcrumb')\r\n                                .find(' > .score-breadcrumb-item:first-child .score-breadcrumb-alternate')\r\n                                .css('transition-duration') || \"0s\";\r\n                            var stepDuration = (parseFloat(cssDuration) * (/ms/.test(cssDuration) ? 1 : 1000)).toFixed(0);\r\n                            var stepCounts = stepDuration / 100;\r\n                            var stepNumber = 0;\r\n                            var timer = setInterval(function () {\r\n                                /* hack to force sitecore to recalculate active component borders. */\r\n                                $this.closest('.score-breadcrumb').trigger('click');\r\n                                stepNumber++;\r\n                                if (stepNumber > stepCounts) clearInterval(timer);\r\n                            }, 100);\r\n                        });\r\n            }\r\n        },\r\n\r\n        init: function () {\r\n            btAmdFix !== void 0 && typeof btAmdFix.fix === \"function\" && btAmdFix.fix();\r\n\r\n            BrainJocks.BootstrapUI.Fonts.scale();\r\n            BrainJocks.BootstrapUI.Carousel.init();\r\n            BrainJocks.BootstrapUI.TabSet.init();\r\n            BrainJocks.BootstrapUI.TabSet.activate();\r\n            BrainJocks.BootstrapUI.Accordion.init();\r\n            BrainJocks.BootstrapUI.Accordion.activate();\r\n            BrainJocks.BootstrapUI.MegaMenu.init();\r\n            BrainJocks.BootstrapUI.Breadcrumb.init();\r\n        }\r\n    };\r\n\r\n    return BrainJocks.BootstrapUI;\r\n}));\n",
    "define('errorHandler',[\"jquery\"], function($) {\r\n    \"use strict\";\r\n\r\n    var logErrorUrl = \"/scorebootstrapui/logerror\";\r\n\r\n    function ErrorHandler() {\r\n        this.logError = function logError(err) {\r\n            if (!err) {\r\n                return;\r\n            }\r\n\r\n            err = String(err);\r\n            $.post(logErrorUrl, { message: err }).fail(function () {\r\n                console.error(\"Failed to log error on server: \" + err);\r\n            });\r\n        };\r\n    }\r\n\r\n    return new ErrorHandler(); //singleton\r\n});\n",
    "(function(root) {\ndefine(\"jqueryValidate\", [\"jquery\"], function() {\n  return (function() {\n/*! jQuery Validation Plugin - v1.12.0 - 4/1/2014\r\n * http://jqueryvalidation.org/\r\n * Copyright (c) 2014 J??rn Zaefferer; Licensed MIT */\r\n!function(a){a.extend(a.fn,{validate:function(b){if(!this.length)return void(b&&b.debug&&window.console&&console.warn(\"Nothing selected, can't validate, returning nothing.\"));var c=a.data(this[0],\"validator\");return c?c:(this.attr(\"novalidate\",\"novalidate\"),c=new a.validator(b,this[0]),a.data(this[0],\"validator\",c),c.settings.onsubmit&&(this.validateDelegate(\":submit\",\"click\",function(b){c.settings.submitHandler&&(c.submitButton=b.target),a(b.target).hasClass(\"cancel\")&&(c.cancelSubmit=!0),void 0!==a(b.target).attr(\"formnovalidate\")&&(c.cancelSubmit=!0)}),this.submit(function(b){function d(){var d;return c.settings.submitHandler?(c.submitButton&&(d=a(\"<input type='hidden'/>\").attr(\"name\",c.submitButton.name).val(a(c.submitButton).val()).appendTo(c.currentForm)),c.settings.submitHandler.call(c,c.currentForm,b),c.submitButton&&d.remove(),!1):!0}return c.settings.debug&&b.preventDefault(),c.cancelSubmit?(c.cancelSubmit=!1,d()):c.form()?c.pendingRequest?(c.formSubmitted=!0,!1):d():(c.focusInvalid(),!1)})),c)},valid:function(){var b,c;return a(this[0]).is(\"form\")?b=this.validate().form():(b=!0,c=a(this[0].form).validate(),this.each(function(){b=c.element(this)&&b})),b},removeAttrs:function(b){var c={},d=this;return a.each(b.split(/\\s/),function(a,b){c[b]=d.attr(b),d.removeAttr(b)}),c},rules:function(b,c){var d,e,f,g,h,i,j=this[0];if(b)switch(d=a.data(j.form,\"validator\").settings,e=d.rules,f=a.validator.staticRules(j),b){case\"add\":a.extend(f,a.validator.normalizeRule(c)),delete f.messages,e[j.name]=f,c.messages&&(d.messages[j.name]=a.extend(d.messages[j.name],c.messages));break;case\"remove\":return c?(i={},a.each(c.split(/\\s/),function(b,c){i[c]=f[c],delete f[c],\"required\"===c&&a(j).removeAttr(\"aria-required\")}),i):(delete e[j.name],f)}return g=a.validator.normalizeRules(a.extend({},a.validator.classRules(j),a.validator.attributeRules(j),a.validator.dataRules(j),a.validator.staticRules(j)),j),g.required&&(h=g.required,delete g.required,g=a.extend({required:h},g),a(j).attr(\"aria-required\",\"true\")),g.remote&&(h=g.remote,delete g.remote,g=a.extend(g,{remote:h})),g}}),a.extend(a.expr[\":\"],{blank:function(b){return!a.trim(\"\"+a(b).val())},filled:function(b){return!!a.trim(\"\"+a(b).val())},unchecked:function(b){return!a(b).prop(\"checked\")}}),a.validator=function(b,c){this.settings=a.extend(!0,{},a.validator.defaults,b),this.currentForm=c,this.init()},a.validator.format=function(b,c){return 1===arguments.length?function(){var c=a.makeArray(arguments);return c.unshift(b),a.validator.format.apply(this,c)}:(arguments.length>2&&c.constructor!==Array&&(c=a.makeArray(arguments).slice(1)),c.constructor!==Array&&(c=[c]),a.each(c,function(a,c){b=b.replace(new RegExp(\"\\\\{\"+a+\"\\\\}\",\"g\"),function(){return c})}),b)},a.extend(a.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:\"error\",validClass:\"valid\",errorElement:\"label\",focusInvalid:!0,errorContainer:a([]),errorLabelContainer:a([]),onsubmit:!0,ignore:\":hidden\",ignoreTitle:!1,onfocusin:function(a){this.lastActive=a,this.settings.focusCleanup&&!this.blockFocusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,a,this.settings.errorClass,this.settings.validClass),this.addWrapper(this.errorsFor(a)).hide())},onfocusout:function(a){this.checkable(a)||!(a.name in this.submitted)&&this.optional(a)||this.element(a)},onkeyup:function(a,b){(9!==b.which||\"\"!==this.elementValue(a))&&(a.name in this.submitted||a===this.lastElement)&&this.element(a)},onclick:function(a){a.name in this.submitted?this.element(a):a.parentNode.name in this.submitted&&this.element(a.parentNode)},highlight:function(b,c,d){\"radio\"===b.type?this.findByName(b.name).addClass(c).removeClass(d):a(b).addClass(c).removeClass(d)},unhighlight:function(b,c,d){\"radio\"===b.type?this.findByName(b.name).removeClass(c).addClass(d):a(b).removeClass(c).addClass(d)}},setDefaults:function(b){a.extend(a.validator.defaults,b)},messages:{required:\"This field is required.\",remote:\"Please fix this field.\",email:\"Please enter a valid email address.\",url:\"Please enter a valid URL.\",date:\"Please enter a valid date.\",dateISO:\"Please enter a valid date (ISO).\",number:\"Please enter a valid number.\",digits:\"Please enter only digits.\",creditcard:\"Please enter a valid credit card number.\",equalTo:\"Please enter the same value again.\",maxlength:a.validator.format(\"Please enter no more than {0} characters.\"),minlength:a.validator.format(\"Please enter at least {0} characters.\"),rangelength:a.validator.format(\"Please enter a value between {0} and {1} characters long.\"),range:a.validator.format(\"Please enter a value between {0} and {1}.\"),max:a.validator.format(\"Please enter a value less than or equal to {0}.\"),min:a.validator.format(\"Please enter a value greater than or equal to {0}.\")},autoCreateRanges:!1,prototype:{init:function(){function b(b){var c=a.data(this[0].form,\"validator\"),d=\"on\"+b.type.replace(/^validate/,\"\"),e=c.settings;e[d]&&!this.is(e.ignore)&&e[d].call(c,this[0],b)}this.labelContainer=a(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||a(this.currentForm),this.containers=a(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var c,d=this.groups={};a.each(this.settings.groups,function(b,c){\"string\"==typeof c&&(c=c.split(/\\s/)),a.each(c,function(a,c){d[c]=b})}),c=this.settings.rules,a.each(c,function(b,d){c[b]=a.validator.normalizeRule(d)}),a(this.currentForm).validateDelegate(\":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'] \",\"focusin focusout keyup\",b).validateDelegate(\"[type='radio'], [type='checkbox'], select, option\",\"click\",b),this.settings.invalidHandler&&a(this.currentForm).bind(\"invalid-form.validate\",this.settings.invalidHandler),a(this.currentForm).find(\"[required], [data-rule-required], .required\").attr(\"aria-required\",\"true\")},form:function(){return this.checkForm(),a.extend(this.submitted,this.errorMap),this.invalid=a.extend({},this.errorMap),this.valid()||a(this.currentForm).triggerHandler(\"invalid-form\",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var a=0,b=this.currentElements=this.elements();b[a];a++)this.check(b[a]);return this.valid()},element:function(b){var c=this.clean(b),d=this.validationTargetFor(c),e=!0;return this.lastElement=d,void 0===d?delete this.invalid[c.name]:(this.prepareElement(d),this.currentElements=a(d),e=this.check(d)!==!1,e?delete this.invalid[d.name]:this.invalid[d.name]=!0),a(b).attr(\"aria-invalid\",!e),this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),e},showErrors:function(b){if(b){a.extend(this.errorMap,b),this.errorList=[];for(var c in b)this.errorList.push({message:b[c],element:this.findByName(c)[0]});this.successList=a.grep(this.successList,function(a){return!(a.name in b)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){a.fn.resetForm&&a(this.currentForm).resetForm(),this.submitted={},this.lastElement=null,this.prepareForm(),this.hideErrors(),this.elements().removeClass(this.settings.errorClass).removeData(\"previousValue\").removeAttr(\"aria-invalid\")},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(a){var b,c=0;for(b in a)c++;return c},hideErrors:function(){this.addWrapper(this.toHide).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{a(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(\":visible\").focus().trigger(\"focusin\")}catch(b){}},findLastActive:function(){var b=this.lastActive;return b&&1===a.grep(this.errorList,function(a){return a.element.name===b.name}).length&&b},elements:function(){var b=this,c={};return a(this.currentForm).find(\"input, select, textarea\").not(\":submit, :reset, :image, [disabled]\").not(this.settings.ignore).filter(function(){return!this.name&&b.settings.debug&&window.console&&console.error(\"%o has no name assigned\",this),this.name in c||!b.objectLength(a(this).rules())?!1:(c[this.name]=!0,!0)})},clean:function(b){return a(b)[0]},errors:function(){var b=this.settings.errorClass.split(\" \").join(\".\");return a(this.settings.errorElement+\".\"+b,this.errorContext)},reset:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=a([]),this.toHide=a([]),this.currentElements=a([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(a){this.reset(),this.toHide=this.errorsFor(a)},elementValue:function(b){var c,d=a(b),e=d.attr(\"type\");return\"radio\"===e||\"checkbox\"===e?a(\"input[name='\"+d.attr(\"name\")+\"']:checked\").val():(c=d.val(),\"string\"==typeof c?c.replace(/\\r/g,\"\"):c)},check:function(b){b=this.validationTargetFor(this.clean(b));var c,d,e,f=a(b).rules(),g=a.map(f,function(a,b){return b}).length,h=!1,i=this.elementValue(b);for(d in f){e={method:d,parameters:f[d]};try{if(c=a.validator.methods[d].call(this,i,b,e.parameters),\"dependency-mismatch\"===c&&1===g){h=!0;continue}if(h=!1,\"pending\"===c)return void(this.toHide=this.toHide.not(this.errorsFor(b)));if(!c)return this.formatAndAdd(b,e),!1}catch(j){throw this.settings.debug&&window.console&&console.log(\"Exception occurred when checking element \"+b.id+\", check the '\"+e.method+\"' method.\",j),j}}if(!h)return this.objectLength(f)&&this.successList.push(b),!0},customDataMessage:function(b,c){return a(b).data(\"msg\"+c[0].toUpperCase()+c.substring(1).toLowerCase())||a(b).data(\"msg\")},customMessage:function(a,b){var c=this.settings.messages[a];return c&&(c.constructor===String?c:c[b])},findDefined:function(){for(var a=0;a<arguments.length;a++)if(void 0!==arguments[a])return arguments[a];return void 0},defaultMessage:function(b,c){return this.findDefined(this.customMessage(b.name,c),this.customDataMessage(b,c),!this.settings.ignoreTitle&&b.title||void 0,a.validator.messages[c],\"<strong>Warning: No message defined for \"+b.name+\"</strong>\")},formatAndAdd:function(b,c){var d=this.defaultMessage(b,c.method),e=/\\$?\\{(\\d+)\\}/g;\"function\"==typeof d?d=d.call(this,c.parameters,b):e.test(d)&&(d=a.validator.format(d.replace(e,\"{$1}\"),c.parameters)),this.errorList.push({message:d,element:b,method:c.method}),this.errorMap[b.name]=d,this.submitted[b.name]=d},addWrapper:function(a){return this.settings.wrapper&&(a=a.add(a.parent(this.settings.wrapper))),a},defaultShowErrors:function(){var a,b,c;for(a=0;this.errorList[a];a++)c=this.errorList[a],this.settings.highlight&&this.settings.highlight.call(this,c.element,this.settings.errorClass,this.settings.validClass),this.showLabel(c.element,c.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(a=0;this.successList[a];a++)this.showLabel(this.successList[a]);if(this.settings.unhighlight)for(a=0,b=this.validElements();b[a];a++)this.settings.unhighlight.call(this,b[a],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return a(this.errorList).map(function(){return this.element})},showLabel:function(b,c){var d=this.errorsFor(b);d.length?(d.removeClass(this.settings.validClass).addClass(this.settings.errorClass),d.html(c)):(d=a(\"<\"+this.settings.errorElement+\">\").attr(\"for\",this.idOrName(b)).addClass(this.settings.errorClass).html(c||\"\"),this.settings.wrapper&&(d=d.hide().show().wrap(\"<\"+this.settings.wrapper+\"/>\").parent()),this.labelContainer.append(d).length||(this.settings.errorPlacement?this.settings.errorPlacement(d,a(b)):d.insertAfter(b))),!c&&this.settings.success&&(d.text(\"\"),\"string\"==typeof this.settings.success?d.addClass(this.settings.success):this.settings.success(d,b)),this.toShow=this.toShow.add(d)},errorsFor:function(b){var c=this.idOrName(b);return this.errors().filter(function(){return a(this).attr(\"for\")===c})},idOrName:function(a){return this.groups[a.name]||(this.checkable(a)?a.name:a.id||a.name)},validationTargetFor:function(a){return this.checkable(a)&&(a=this.findByName(a.name).not(this.settings.ignore)[0]),a},checkable:function(a){return/radio|checkbox/i.test(a.type)},findByName:function(b){return a(this.currentForm).find(\"[name='\"+b+\"']\")},getLength:function(b,c){switch(c.nodeName.toLowerCase()){case\"select\":return a(\"option:selected\",c).length;case\"input\":if(this.checkable(c))return this.findByName(c.name).filter(\":checked\").length}return b.length},depend:function(a,b){return this.dependTypes[typeof a]?this.dependTypes[typeof a](a,b):!0},dependTypes:{\"boolean\":function(a){return a},string:function(b,c){return!!a(b,c.form).length},\"function\":function(a,b){return a(b)}},optional:function(b){var c=this.elementValue(b);return!a.validator.methods.required.call(this,c,b)&&\"dependency-mismatch\"},startRequest:function(a){this.pending[a.name]||(this.pendingRequest++,this.pending[a.name]=!0)},stopRequest:function(b,c){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[b.name],c&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(a(this.currentForm).submit(),this.formSubmitted=!1):!c&&0===this.pendingRequest&&this.formSubmitted&&(a(this.currentForm).triggerHandler(\"invalid-form\",[this]),this.formSubmitted=!1)},previousValue:function(b){return a.data(b,\"previousValue\")||a.data(b,\"previousValue\",{old:null,valid:!0,message:this.defaultMessage(b,\"remote\")})}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(b,c){b.constructor===String?this.classRuleSettings[b]=c:a.extend(this.classRuleSettings,b)},classRules:function(b){var c={},d=a(b).attr(\"class\");return d&&a.each(d.split(\" \"),function(){this in a.validator.classRuleSettings&&a.extend(c,a.validator.classRuleSettings[this])}),c},attributeRules:function(b){var c,d,e={},f=a(b),g=b.getAttribute(\"type\");for(c in a.validator.methods)\"required\"===c?(d=b.getAttribute(c),\"\"===d&&(d=!0),d=!!d):d=f.attr(c),/min|max/.test(c)&&(null===g||/number|range|text/.test(g))&&(d=Number(d)),d||0===d?e[c]=d:g===c&&\"range\"!==g&&(e[c]=!0);return e.maxlength&&/-1|2147483647|524288/.test(e.maxlength)&&delete e.maxlength,e},dataRules:function(b){var c,d,e={},f=a(b);for(c in a.validator.methods)d=f.data(\"rule\"+c[0].toUpperCase()+c.substring(1).toLowerCase()),void 0!==d&&(e[c]=d);return e},staticRules:function(b){var c={},d=a.data(b.form,\"validator\");return d.settings.rules&&(c=a.validator.normalizeRule(d.settings.rules[b.name])||{}),c},normalizeRules:function(b,c){return a.each(b,function(d,e){if(e===!1)return void delete b[d];if(e.param||e.depends){var f=!0;switch(typeof e.depends){case\"string\":f=!!a(e.depends,c.form).length;break;case\"function\":f=e.depends.call(c,c)}f?b[d]=void 0!==e.param?e.param:!0:delete b[d]}}),a.each(b,function(d,e){b[d]=a.isFunction(e)?e(c):e}),a.each([\"minlength\",\"maxlength\"],function(){b[this]&&(b[this]=Number(b[this]))}),a.each([\"rangelength\",\"range\"],function(){var c;b[this]&&(a.isArray(b[this])?b[this]=[Number(b[this][0]),Number(b[this][1])]:\"string\"==typeof b[this]&&(c=b[this].split(/[\\s,]+/),b[this]=[Number(c[0]),Number(c[1])]))}),a.validator.autoCreateRanges&&(b.min&&b.max&&(b.range=[b.min,b.max],delete b.min,delete b.max),b.minlength&&b.maxlength&&(b.rangelength=[b.minlength,b.maxlength],delete b.minlength,delete b.maxlength)),b},normalizeRule:function(b){if(\"string\"==typeof b){var c={};a.each(b.split(/\\s/),function(){c[this]=!0}),b=c}return b},addMethod:function(b,c,d){a.validator.methods[b]=c,a.validator.messages[b]=void 0!==d?d:a.validator.messages[b],c.length<3&&a.validator.addClassRules(b,a.validator.normalizeRule(b))},methods:{required:function(b,c,d){if(!this.depend(d,c))return\"dependency-mismatch\";if(\"select\"===c.nodeName.toLowerCase()){var e=a(c).val();return e&&e.length>0}return this.checkable(c)?this.getLength(b,c)>0:a.trim(b).length>0},email:function(a,b){return this.optional(b)||/^[a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(a)},url:function(a,b){return this.optional(b)||/^(https?|s?ftp):\\/\\/(((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:)*@)?(((\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5]))|((([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.)+(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.?)(:\\d*)?)(\\/((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:|@)+(\\/(([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:|@)*)*)?)?(\\?((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:|@)|[\\uE000-\\uF8FF]|\\/|\\?)*)?(#((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:|@)|\\/|\\?)*)?$/i.test(a)},date:function(a,b){return this.optional(b)||!/Invalid|NaN/.test(new Date(a).toString())},dateISO:function(a,b){return this.optional(b)||/^\\d{4}[\\/\\-]\\d{1,2}[\\/\\-]\\d{1,2}$/.test(a)},number:function(a,b){return this.optional(b)||/^-?(?:\\d+|\\d{1,3}(?:,\\d{3})+)?(?:\\.\\d+)?$/.test(a)},digits:function(a,b){return this.optional(b)||/^\\d+$/.test(a)},creditcard:function(a,b){if(this.optional(b))return\"dependency-mismatch\";if(/[^0-9 \\-]+/.test(a))return!1;var c,d,e=0,f=0,g=!1;if(a=a.replace(/\\D/g,\"\"),a.length<13||a.length>19)return!1;for(c=a.length-1;c>=0;c--)d=a.charAt(c),f=parseInt(d,10),g&&(f*=2)>9&&(f-=9),e+=f,g=!g;return e%10===0},minlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e>=d},maxlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||d>=e},rangelength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e>=d[0]&&e<=d[1]},min:function(a,b,c){return this.optional(b)||a>=c},max:function(a,b,c){return this.optional(b)||c>=a},range:function(a,b,c){return this.optional(b)||a>=c[0]&&a<=c[1]},equalTo:function(b,c,d){var e=a(d);return this.settings.onfocusout&&e.unbind(\".validate-equalTo\").bind(\"blur.validate-equalTo\",function(){a(c).valid()}),b===e.val()},remote:function(b,c,d){if(this.optional(c))return\"dependency-mismatch\";var e,f,g=this.previousValue(c);return this.settings.messages[c.name]||(this.settings.messages[c.name]={}),g.originalMessage=this.settings.messages[c.name].remote,this.settings.messages[c.name].remote=g.message,d=\"string\"==typeof d&&{url:d}||d,g.old===b?g.valid:(g.old=b,e=this,this.startRequest(c),f={},f[c.name]=b,a.ajax(a.extend(!0,{url:d,mode:\"abort\",port:\"validate\"+c.name,dataType:\"json\",data:f,context:e.currentForm,success:function(d){var f,h,i,j=d===!0||\"true\"===d;e.settings.messages[c.name].remote=g.originalMessage,j?(i=e.formSubmitted,e.prepareElement(c),e.formSubmitted=i,e.successList.push(c),delete e.invalid[c.name],e.showErrors()):(f={},h=d||e.defaultMessage(c,\"remote\"),f[c.name]=g.message=a.isFunction(h)?h(b):h,e.invalid[c.name]=!0,e.showErrors(f)),g.valid=j,e.stopRequest(c,j)}},d)),\"pending\")}}}),a.format=function(){throw\"$.format has been deprecated. Please use $.validator.format instead.\"}}(jQuery),function(a){var b,c={};a.ajaxPrefilter?a.ajaxPrefilter(function(a,b,d){var e=a.port;\"abort\"===a.mode&&(c[e]&&c[e].abort(),c[e]=d)}):(b=a.ajax,a.ajax=function(d){var e=(\"mode\"in d?d:a.ajaxSettings).mode,f=(\"port\"in d?d:a.ajaxSettings).port;return\"abort\"===e?(c[f]&&c[f].abort(),c[f]=b.apply(this,arguments),c[f]):b.apply(this,arguments)})}(jQuery),function(a){a.extend(a.fn,{validateDelegate:function(b,c,d){return this.bind(c,function(c){var e=a(c.target);return e.is(b)?d.apply(e,arguments):void 0})}})}(jQuery);\r\n\n\n  }).apply(root, arguments);\n});\n}(this));\n\n",
    "// Unobtrusive validation support library for jQuery and jQuery Validate\r\n// Copyright (C) Microsoft Corporation. All rights reserved.\r\n// @version v3.2.10\r\n!function(a){\"function\"==typeof define&&define.amd?define(\"jqueryValidateUnobtrusive\",[\"jquery\", \"jqueryValidate\"],a):\"object\"==typeof module&&module.exports?module.exports=a(require(\"jquery-validation\")):jQuery.validator.unobtrusive=a(jQuery)}(function(a){function e(a,e,n){a.rules[e]=n,a.message&&(a.messages[e]=a.message)}function n(a){return a.replace(/^\\s+|\\s+$/g,\"\").split(/\\s*,\\s*/g)}function t(a){return a.replace(/([!\"#$%&'()*+,.\\/:;<=>?@\\[\\\\\\]^`{|}~])/g,\"\\\\$1\")}function r(a){return a.substr(0,a.lastIndexOf(\".\")+1)}function i(a,e){return 0===a.indexOf(\"*.\")&&(a=a.replace(\"*.\",e)),a}function o(e,n){var r=a(this).find(\"[data-valmsg-for='\"+t(n[0].name)+\"']\"),i=r.attr(\"data-valmsg-replace\"),o=i?a.parseJSON(i)!==!1:null;r.removeClass(\"field-validation-valid\").addClass(\"field-validation-error\"),e.data(\"unobtrusiveContainer\",r),o?(r.empty(),e.removeClass(\"input-validation-error\").appendTo(r)):e.hide()}function d(e,n){var t=a(this).find(\"[data-valmsg-summary=true]\"),r=t.find(\"ul\");r&&r.length&&n.errorList.length&&(r.empty(),t.addClass(\"validation-summary-errors\").removeClass(\"validation-summary-valid\"),a.each(n.errorList,function(){a(\"<li />\").html(this.message).appendTo(r)}))}function s(e){var n=e.data(\"unobtrusiveContainer\");if(n){var t=n.attr(\"data-valmsg-replace\"),r=t?a.parseJSON(t):null;n.addClass(\"field-validation-valid\").removeClass(\"field-validation-error\"),e.removeData(\"unobtrusiveContainer\"),r&&n.empty()}}function l(e){var n=a(this),t=\"__jquery_unobtrusive_validation_form_reset\";if(!n.data(t)){n.data(t,!0);try{n.data(\"validator\").resetForm()}finally{n.removeData(t)}n.find(\".validation-summary-errors\").addClass(\"validation-summary-valid\").removeClass(\"validation-summary-errors\"),n.find(\".field-validation-error\").addClass(\"field-validation-valid\").removeClass(\"field-validation-error\").removeData(\"unobtrusiveContainer\").find(\">*\").removeData(\"unobtrusiveContainer\")}}function u(e){var n=a(e),t=n.data(v),r=a.proxy(l,e),i=f.unobtrusive.options||{},u=function(n,t){var r=i[n];r&&a.isFunction(r)&&r.apply(e,t)};return t||(t={options:{errorClass:i.errorClass||\"input-validation-error\",errorElement:i.errorElement||\"span\",errorPlacement:function(){o.apply(e,arguments),u(\"errorPlacement\",arguments)},invalidHandler:function(){d.apply(e,arguments),u(\"invalidHandler\",arguments)},messages:{},rules:{},success:function(){s.apply(e,arguments),u(\"success\",arguments)}},attachValidation:function(){n.off(\"reset.\"+v,r).on(\"reset.\"+v,r).validate(this.options)},validate:function(){return n.validate(),n.valid()}},n.data(v,t)),t}var m,f=a.validator,v=\"unobtrusiveValidation\";return f.unobtrusive={adapters:[],parseElement:function(e,n){var t,r,i,o=a(e),d=o.parents(\"form\")[0];d&&(t=u(d),t.options.rules[e.name]=r={},t.options.messages[e.name]=i={},a.each(this.adapters,function(){var n=\"data-val-\"+this.name,t=o.attr(n),s={};void 0!==t&&(n+=\"-\",a.each(this.params,function(){s[this]=o.attr(n+this)}),this.adapt({element:e,form:d,message:t,params:s,rules:r,messages:i}))}),a.extend(r,{__dummy__:!0}),n||t.attachValidation())},parse:function(e){var n=a(e),t=n.parents().addBack().filter(\"form\").add(n.find(\"form\")).has(\"[data-val=true]\");n.find(\"[data-val=true]\").each(function(){f.unobtrusive.parseElement(this,!0)}),t.each(function(){var a=u(this);a&&a.attachValidation()})}},m=f.unobtrusive.adapters,m.add=function(a,e,n){return n||(n=e,e=[]),this.push({name:a,params:e,adapt:n}),this},m.addBool=function(a,n){return this.add(a,function(t){e(t,n||a,!0)})},m.addMinMax=function(a,n,t,r,i,o){return this.add(a,[i||\"min\",o||\"max\"],function(a){var i=a.params.min,o=a.params.max;i&&o?e(a,r,[i,o]):i?e(a,n,i):o&&e(a,t,o)})},m.addSingleVal=function(a,n,t){return this.add(a,[n||\"val\"],function(r){e(r,t||a,r.params[n])})},f.addMethod(\"__dummy__\",function(a,e,n){return!0}),f.addMethod(\"regex\",function(a,e,n){var t;return!!this.optional(e)||(t=new RegExp(n).exec(a),t&&0===t.index&&t[0].length===a.length)}),f.addMethod(\"nonalphamin\",function(a,e,n){var t;return n&&(t=a.match(/\\W/g),t=t&&t.length>=n),t}),f.methods.extension?(m.addSingleVal(\"accept\",\"mimtype\"),m.addSingleVal(\"extension\",\"extension\")):m.addSingleVal(\"extension\",\"extension\",\"accept\"),m.addSingleVal(\"regex\",\"pattern\"),m.addBool(\"creditcard\").addBool(\"date\").addBool(\"digits\").addBool(\"email\").addBool(\"number\").addBool(\"url\"),m.addMinMax(\"length\",\"minlength\",\"maxlength\",\"rangelength\").addMinMax(\"range\",\"min\",\"max\",\"range\"),m.addMinMax(\"minlength\",\"minlength\").addMinMax(\"maxlength\",\"minlength\",\"maxlength\"),m.add(\"equalto\",[\"other\"],function(n){var o=r(n.element.name),d=n.params.other,s=i(d,o),l=a(n.form).find(\":input\").filter(\"[name='\"+t(s)+\"']\")[0];e(n,\"equalTo\",l)}),m.add(\"required\",function(a){\"INPUT\"===a.element.tagName.toUpperCase()&&\"CHECKBOX\"===a.element.type.toUpperCase()||e(a,\"required\",!0)}),m.add(\"remote\",[\"url\",\"type\",\"additionalfields\"],function(o){var d={url:o.params.url,type:o.params.type||\"GET\",data:{}},s=r(o.element.name);a.each(n(o.params.additionalfields||o.element.name),function(e,n){var r=i(n,s);d.data[r]=function(){var e=a(o.form).find(\":input\").filter(\"[name='\"+t(r)+\"']\");return e.is(\":checkbox\")?e.filter(\":checked\").val()||e.filter(\":hidden\").val()||\"\":e.is(\":radio\")?e.filter(\":checked\").val()||\"\":e.val()}}),e(o,\"remote\",d)}),m.add(\"password\",[\"min\",\"nonalphamin\",\"regex\"],function(a){a.params.min&&e(a,\"minlength\",a.params.min),a.params.nonalphamin&&e(a,\"nonalphamin\",a.params.nonalphamin),a.params.regex&&e(a,\"regex\",a.params.regex)}),m.add(\"fileextensions\",[\"extensions\"],function(a){e(a,\"extension\",a.params.extensions)}),a(function(){f.unobtrusive.parse(document)}),f.unobtrusive});\n",
    "(function(root) {\ndefine(\"jqueryUnobtrusiveAjax\", [\"jquery\",\"jqueryValidate\",\"jqueryValidateUnobtrusive\"], function() {\n  return (function() {\n/*\r\n** Unobtrusive Ajax support library for jQuery\r\n** Copyright (C) Microsoft Corporation. All rights reserved.\r\n*/\r\n(function(a){var b=\"unobtrusiveAjaxClick\",g=\"unobtrusiveValidation\";function c(d,b){var a=window,c=(d||\"\").split(\".\");while(a&&c.length)a=a[c.shift()];if(typeof a===\"function\")return a;b.push(d);return Function.constructor.apply(null,b)}function d(a){return a===\"GET\"||a===\"POST\"}function f(b,a){!d(a)&&b.setRequestHeader(\"X-HTTP-Method-Override\",a)}function h(c,b,e){var d;if(e.indexOf(\"application/x-javascript\")!==-1)return;d=(c.getAttribute(\"data-ajax-mode\")||\"\").toUpperCase();a(c.getAttribute(\"data-ajax-update\")).each(function(f,c){var e;switch(d){case\"BEFORE\":e=c.firstChild;a(\"<div />\").html(b).contents().each(function(){c.insertBefore(this,e)});break;case\"AFTER\":a(\"<div />\").html(b).contents().each(function(){c.appendChild(this)});break;default:a(c).html(b)}})}function e(b,e){var j,k,g,i;j=b.getAttribute(\"data-ajax-confirm\");if(j&&!window.confirm(j))return;k=a(b.getAttribute(\"data-ajax-loading\"));i=b.getAttribute(\"data-ajax-loading-duration\")||0;a.extend(e,{type:b.getAttribute(\"data-ajax-method\")||undefined,url:b.getAttribute(\"data-ajax-url\")||undefined,beforeSend:function(d){var a;f(d,g);a=c(b.getAttribute(\"data-ajax-begin\"),[\"xhr\"]).apply(this,arguments);a!==false&&k.show(i);return a},complete:function(){k.hide(i);c(b.getAttribute(\"data-ajax-complete\"),[\"xhr\",\"status\"]).apply(this,arguments)},success:function(a,e,d){h(b,a,d.getResponseHeader(\"Content-Type\")||\"text/html\");c(b.getAttribute(\"data-ajax-success\"),[\"data\",\"status\",\"xhr\"]).apply(this,arguments)},error:c(b.getAttribute(\"data-ajax-failure\"),[\"xhr\",\"status\",\"error\"])});e.data.push({name:\"X-Requested-With\",value:\"XMLHttpRequest\"});g=e.type.toUpperCase();if(!d(g)){e.type=\"POST\";e.data.push({name:\"X-HTTP-Method-Override\",value:g})}a.ajax(e)}function i(c){var b=a(c).data(g);return!b||!b.validate||b.validate()}a(document).on(\"click\",\"a[data-ajax=true]\",function(a){a.preventDefault();e(this,{url:this.href,type:\"GET\",data:[]})});a(document).on(\"click\",\"form[data-ajax=true] input[type=image]\",function(c){var g=c.target.name,d=a(c.target),f=d.parents(\"form\")[0],e=d.offset();a(f).data(b,[{name:g+\".x\",value:Math.round(c.pageX-e.left)},{name:g+\".y\",value:Math.round(c.pageY-e.top)}]);setTimeout(function(){a(f).removeData(b)},0)});a(document).on(\"click\",\"form[data-ajax=true] :submit\",function(c){var e=c.target.name,d=a(c.target).parents(\"form\")[0];a(d).data(b,e?[{name:e,value:c.target.value}]:[]);setTimeout(function(){a(d).removeData(b)},0)});a(document).on(\"submit\",\"form[data-ajax=true]\",function(d){var c=a(this).data(b)||[];d.preventDefault();if(!i(this))return;e(this,{url:this.action,type:this.method||\"GET\",data:c.concat(a(this).serializeArray())})})})(jQuery);\r\n\n\n  }).apply(root, arguments);\n});\n}(this));\n\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('scoreunobtrusive',[\"jquery\"], factory) : \r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\")) : \r\n    console && console.error('Score.jquery.validate.unobtrusive does not support non-amd script loading.');\r\n}(this/* window */, function ($) {\r\n    var findByName = function(currentForm, name) {\r\n        return currentForm.find(\"[name='\" + name + \"']\");\r\n    };\r\n\r\n    var findCurrentForm = function(element) {\r\n        return $(element).closest('form');\r\n    };\r\n\r\n    var isAnyValueNotEmpty = function(element, params) {\r\n        var $myForm = findCurrentForm(element);\r\n\r\n        var properties = params.properties.split(',');\r\n        var values = $.map(properties, function(property, index) {\r\n            var val = findByName($myForm, property).val();\r\n            return val !== '' ? val : null;\r\n        });\r\n\r\n        return values.length > 0;\r\n    };\r\n\r\n    $.validator.addMethod(\"enforcetrue\", function(value, element, param) {\r\n        return element.checked;\r\n    });\r\n\r\n    $.validator.unobtrusive.adapters.addBool(\"enforcetrue\");\r\n\r\n    $.validator.unobtrusive.adapters.add(\r\n        'atleastonerequired', ['properties'], function(options) {\r\n            options.rules['atleastonerequired'] = options.params;\r\n            options.messages['atleastonerequired'] = options.message;\r\n        }\r\n    );\r\n\r\n    $.validator.addMethod('atleastonerequired', function(value, element, params) {\r\n        return isAnyValueNotEmpty(element, params);\r\n    }, '');\r\n\r\n\r\n    $.validator.unobtrusive.adapters.add(\r\n        'requiredor', ['properties'], function(options) {\r\n            options.rules['requiredor'] = options.params;\r\n            options.messages['requiredor'] = options.message;\r\n        }\r\n    );\r\n\r\n    $.validator.addMethod('requiredor', function(value, element, params) {\r\n        if (value !== '' && value) {\r\n            return true;\r\n        }\r\n\r\n        return isAnyValueNotEmpty(element, params);\r\n    }, '');\r\n\r\n}));\n",
    "/**\r\n* jquery-match-height 0.7.2 by @liabru\r\n* http://brm.io/jquery-match-height/\r\n* License: MIT\r\n*/\r\n/* Includes modifications for SCORE, to disable animation effects while arranging list elements into a row (animation effects lead to wrong height calculation) */\r\n!function(t){\"use strict\";\"function\"==typeof define&&define.amd?define('matchHeight',[\"jquery\"],t):\"undefined\"!=typeof module&&module.exports?module.exports=t(require(\"jquery\")):t(jQuery)}(function(t){var e=-1,n=-1,o=function(t){return parseFloat(t)||0},i=function(e){var n=null,i=[];return t(e).each(function(){var e=t(this),a=e.offset().top-o(e.css(\"margin-top\")),r=i.length>0?i[i.length-1]:null;null===r?i.push(e):Math.floor(Math.abs(n-a))<=1?i[i.length-1]=r.add(e):i.push(e),n=a}),i},a=function(e){var n={byRow:!0,property:\"height\",target:null,remove:!1};return\"object\"==typeof e?t.extend(n,e):(\"boolean\"==typeof e?n.byRow=e:\"remove\"===e&&(n.remove=!0),n)},r=t.fn.matchHeight=function(e){var n=a(e);if(n.remove){var o=this;return this.css(n.property,\"\"),t.each(r._groups,function(t,e){e.elements=e.elements.not(o)}),this}return this.length<=1&&!n.target?this:(r._groups.push({elements:this,options:n}),r._apply(this,n),this)};r.version=\"0.7.2\",r._groups=[],r._throttle=80,r._maintainScroll=!1,r._beforeUpdate=null,r._afterUpdate=null,r._rows=i,r._parse=o,r._parseOptions=a,r._apply=function(e,n){var s=a(n),h=t(e),l=[h],c=t(window).scrollTop(),p=t(\"html\").outerHeight(!0),u=h.parents().filter(\":hidden\");return u.each(function(){var e=t(this);e.data(\"style-cache\",e.attr(\"style\"))}),u.css(\"display\",\"block\"),s.byRow&&!s.target&&(h.each(function(){var e=t(this),n=e.css(\"display\");\"inline-block\"!==n&&\"flex\"!==n&&\"inline-flex\"!==n&&(n=\"block\"),e.data(\"style-cache\",e.attr(\"style\")),e.css({display:n,\"padding-top\":\"0\",\"padding-bottom\":\"0\",\"margin-top\":\"0\",\"margin-bottom\":\"0\",\"border-top-width\":\"0\",\"border-bottom-width\":\"0\",height:\"100px\",overflow:\"hidden\",\"-webkit-transition\":\"none\",\"-moz-transition\":\"none\",\"-o-transition\":\"none\",transition:\"none\"})}),l=i(h),h.each(function(){var e=t(this);e.attr(\"style\",e.data(\"style-cache\")||\"\")})),t.each(l,function(e,n){var i=t(n),a=0;if(s.target)a=s.target.outerHeight(!1);else{if(s.byRow&&i.length<=1)return void i.css(s.property,\"\");i.each(function(){var e=t(this),n=e.attr(\"style\"),o=e.css(\"display\");\"inline-block\"!==o&&\"flex\"!==o&&\"inline-flex\"!==o&&(o=\"block\");var i={display:o,\"-webkit-transition\":\"none\",\"-moz-transition\":\"none\",\"-o-transition\":\"none\",transition:\"none\"};i[s.property]=\"\",e.css(i),e.outerHeight(!1)>a&&(a=e.outerHeight(!1)),e.attr(\"style\",n||\"\")})}i.each(function(){var e=t(this),n=0;s.target&&e.is(s.target)||(\"border-box\"!==e.css(\"box-sizing\")&&(n+=o(e.css(\"border-top-width\"))+o(e.css(\"border-bottom-width\")),n+=o(e.css(\"padding-top\"))+o(e.css(\"padding-bottom\"))),e.css(s.property,a-n+\"px\"))})}),u.each(function(){var e=t(this);e.attr(\"style\",e.data(\"style-cache\")||null)}),r._maintainScroll&&t(window).scrollTop(c/p*t(\"html\").outerHeight(!0)),this},r._applyDataApi=function(){var e={};t(\"[data-match-height], [data-mh]\").each(function(){var n=t(this),o=n.attr(\"data-mh\")||n.attr(\"data-match-height\");e[o]=o in e?e[o].add(n):n}),t.each(e,function(){this.matchHeight(!0)})};var s=function(e){r._beforeUpdate&&r._beforeUpdate(e,r._groups),t.each(r._groups,function(){r._apply(this.elements,this.options)}),r._afterUpdate&&r._afterUpdate(e,r._groups)};r._update=function(o,i){if(i&&\"resize\"===i.type){var a=t(window).width();if(a===e)return;e=a}o?-1===n&&(n=setTimeout(function(){s(i),n=-1},r._throttle)):s(i)},t(r._applyDataApi);var h=t.fn.on?\"on\":\"bind\";t(window)[h](\"load\",function(t){r._update(!1,t)}),t(window)[h](\"resize orientationchange\",function(t){r._update(!0,t)})});\n",
    "/*!\r\n * Knockout JavaScript library v3.3.0\r\n * (c) Steven Sanderson - http://knockoutjs.com/\r\n * License: MIT (http://www.opensource.org/licenses/mit-license.php)\r\n */\r\n\r\n(function() {(function(p){var y=this||(0,eval)(\"this\"),w=y.document,M=y.navigator,u=y.jQuery,E=y.JSON;(function(p){\"function\"===typeof define&&define.amd?define('knockout',[\"exports\",\"require\"],p):\"function\"===typeof require&&\"object\"===typeof exports&&\"object\"===typeof module?p(module.exports||exports):p(y.ko={})})(function(N,O){function J(a,d){return null===a||typeof a in Q?a===d:!1}function R(a,d){var c;return function(){c||(c=setTimeout(function(){c=p;a()},d))}}function S(a,d){var c;return function(){clearTimeout(c);\r\nc=setTimeout(a,d)}}function K(b,d,c,e){a.d[b]={init:function(b,k,h,l,g){var m,x;a.w(function(){var q=a.a.c(k()),n=!c!==!q,r=!x;if(r||d||n!==m)r&&a.Z.oa()&&(x=a.a.la(a.e.childNodes(b),!0)),n?(r||a.e.T(b,a.a.la(x)),a.Ja(e?e(g,q):g,b)):a.e.ma(b),m=n},null,{q:b});return{controlsDescendantBindings:!0}}};a.h.ka[b]=!1;a.e.R[b]=!0}var a=\"undefined\"!==typeof N?N:{};a.b=function(b,d){for(var c=b.split(\".\"),e=a,f=0;f<c.length-1;f++)e=e[c[f]];e[c[c.length-1]]=d};a.D=function(a,d,c){a[d]=c};a.version=\"3.3.0\";\r\na.b(\"version\",a.version);a.a=function(){function b(a,b){for(var c in a)a.hasOwnProperty(c)&&b(c,a[c])}function d(a,b){if(b)for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a}function c(a,b){a.__proto__=b;return a}function e(b,c,g,d){var e=b[c].match(m)||[];a.a.o(g.match(m),function(b){a.a.ga(e,b,d)});b[c]=e.join(\" \")}var f={__proto__:[]}instanceof Array,k={},h={};k[M&&/Firefox\\/2/i.test(M.userAgent)?\"KeyboardEvent\":\"UIEvents\"]=[\"keyup\",\"keydown\",\"keypress\"];k.MouseEvents=\"click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave\".split(\" \");\r\nb(k,function(a,b){if(b.length)for(var c=0,g=b.length;c<g;c++)h[b[c]]=a});var l={propertychange:!0},g=w&&function(){for(var a=3,b=w.createElement(\"div\"),c=b.getElementsByTagName(\"i\");b.innerHTML=\"\\x3c!--[if gt IE \"+ ++a+\"]><i></i><![endif]--\\x3e\",c[0];);return 4<a?a:p}(),m=/\\S+/g;return{Bb:[\"authenticity_token\",/^__RequestVerificationToken(_.*)?$/],o:function(a,b){for(var c=0,g=a.length;c<g;c++)b(a[c],c)},m:function(a,b){if(\"function\"==typeof Array.prototype.indexOf)return Array.prototype.indexOf.call(a,\r\nb);for(var c=0,g=a.length;c<g;c++)if(a[c]===b)return c;return-1},vb:function(a,b,c){for(var g=0,d=a.length;g<d;g++)if(b.call(c,a[g],g))return a[g];return null},ya:function(b,c){var g=a.a.m(b,c);0<g?b.splice(g,1):0===g&&b.shift()},wb:function(b){b=b||[];for(var c=[],g=0,d=b.length;g<d;g++)0>a.a.m(c,b[g])&&c.push(b[g]);return c},Ka:function(a,b){a=a||[];for(var c=[],g=0,d=a.length;g<d;g++)c.push(b(a[g],g));return c},xa:function(a,b){a=a||[];for(var c=[],g=0,d=a.length;g<d;g++)b(a[g],g)&&c.push(a[g]);\r\nreturn c},ia:function(a,b){if(b instanceof Array)a.push.apply(a,b);else for(var c=0,g=b.length;c<g;c++)a.push(b[c]);return a},ga:function(b,c,g){var d=a.a.m(a.a.cb(b),c);0>d?g&&b.push(c):g||b.splice(d,1)},za:f,extend:d,Fa:c,Ga:f?c:d,A:b,pa:function(a,b){if(!a)return a;var c={},g;for(g in a)a.hasOwnProperty(g)&&(c[g]=b(a[g],g,a));return c},Ra:function(b){for(;b.firstChild;)a.removeNode(b.firstChild)},Jb:function(b){b=a.a.O(b);for(var c=(b[0]&&b[0].ownerDocument||w).createElement(\"div\"),g=0,d=b.length;g<\r\nd;g++)c.appendChild(a.S(b[g]));return c},la:function(b,c){for(var g=0,d=b.length,e=[];g<d;g++){var m=b[g].cloneNode(!0);e.push(c?a.S(m):m)}return e},T:function(b,c){a.a.Ra(b);if(c)for(var g=0,d=c.length;g<d;g++)b.appendChild(c[g])},Qb:function(b,c){var g=b.nodeType?[b]:b;if(0<g.length){for(var d=g[0],e=d.parentNode,m=0,f=c.length;m<f;m++)e.insertBefore(c[m],d);m=0;for(f=g.length;m<f;m++)a.removeNode(g[m])}},na:function(a,b){if(a.length){for(b=8===b.nodeType&&b.parentNode||b;a.length&&a[0].parentNode!==\r\nb;)a.splice(0,1);if(1<a.length){var c=a[0],g=a[a.length-1];for(a.length=0;c!==g;)if(a.push(c),c=c.nextSibling,!c)return;a.push(g)}}return a},Sb:function(a,b){7>g?a.setAttribute(\"selected\",b):a.selected=b},ib:function(a){return null===a||a===p?\"\":a.trim?a.trim():a.toString().replace(/^[\\s\\xa0]+|[\\s\\xa0]+$/g,\"\")},Dc:function(a,b){a=a||\"\";return b.length>a.length?!1:a.substring(0,b.length)===b},jc:function(a,b){if(a===b)return!0;if(11===a.nodeType)return!1;if(b.contains)return b.contains(3===a.nodeType?\r\na.parentNode:a);if(b.compareDocumentPosition)return 16==(b.compareDocumentPosition(a)&16);for(;a&&a!=b;)a=a.parentNode;return!!a},Qa:function(b){return a.a.jc(b,b.ownerDocument.documentElement)},tb:function(b){return!!a.a.vb(b,a.a.Qa)},v:function(a){return a&&a.tagName&&a.tagName.toLowerCase()},n:function(b,c,d){var m=g&&l[c];if(!m&&u)u(b).bind(c,d);else if(m||\"function\"!=typeof b.addEventListener)if(\"undefined\"!=typeof b.attachEvent){var e=function(a){d.call(b,a)},f=\"on\"+c;b.attachEvent(f,e);a.a.C.fa(b,\r\nfunction(){b.detachEvent(f,e)})}else throw Error(\"Browser doesn't support addEventListener or attachEvent\");else b.addEventListener(c,d,!1)},qa:function(b,c){if(!b||!b.nodeType)throw Error(\"element must be a DOM node when calling trigger\");var g;\"input\"===a.a.v(b)&&b.type&&\"click\"==c.toLowerCase()?(g=b.type,g=\"checkbox\"==g||\"radio\"==g):g=!1;if(u&&!g)u(b).trigger(c);else if(\"function\"==typeof w.createEvent)if(\"function\"==typeof b.dispatchEvent)g=w.createEvent(h[c]||\"HTMLEvents\"),g.initEvent(c,\r\n!0,!0,y,0,0,0,0,0,!1,!1,!1,!1,0,b),b.dispatchEvent(g);else throw Error(\"The supplied element doesn't support dispatchEvent\");else if(g&&b.click)b.click();else if(\"undefined\"!=typeof b.fireEvent)b.fireEvent(\"on\"+c);else throw Error(\"Browser doesn't support triggering events\");},c:function(b){return a.F(b)?b():b},cb:function(b){return a.F(b)?b.B():b},Ia:function(b,c,g){var d;c&&(\"object\"===typeof b.classList?(d=b.classList[g?\"add\":\"remove\"],a.a.o(c.match(m),function(a){d.call(b.classList,a)})):\"string\"===\r\ntypeof b.className.baseVal?e(b.className,\"baseVal\",c,g):e(b,\"className\",c,g))},Ha:function(b,c){var g=a.a.c(c);if(null===g||g===p)g=\"\";var d=a.e.firstChild(b);!d||3!=d.nodeType||a.e.nextSibling(d)?a.e.T(b,[b.ownerDocument.createTextNode(g)]):d.data=g;a.a.mc(b)},Rb:function(a,b){a.name=b;if(7>=g)try{a.mergeAttributes(w.createElement(\"<input name='\"+a.name+\"'/>\"),!1)}catch(c){}},mc:function(a){9<=g&&(a=1==a.nodeType?a:a.parentNode,a.style&&(a.style.zoom=a.style.zoom))},kc:function(a){if(g){var b=a.style.width;\r\na.style.width=0;a.style.width=b}},Bc:function(b,c){b=a.a.c(b);c=a.a.c(c);for(var g=[],d=b;d<=c;d++)g.push(d);return g},O:function(a){for(var b=[],c=0,g=a.length;c<g;c++)b.push(a[c]);return b},Hc:6===g,Ic:7===g,M:g,Db:function(b,c){for(var g=a.a.O(b.getElementsByTagName(\"input\")).concat(a.a.O(b.getElementsByTagName(\"textarea\"))),d=\"string\"==typeof c?function(a){return a.name===c}:function(a){return c.test(a.name)},m=[],e=g.length-1;0<=e;e--)d(g[e])&&m.push(g[e]);return m},yc:function(b){return\"string\"==\r\ntypeof b&&(b=a.a.ib(b))?E&&E.parse?E.parse(b):(new Function(\"return \"+b))():null},jb:function(b,c,g){if(!E||!E.stringify)throw Error(\"Cannot find JSON.stringify(). Some browsers (e.g., IE < 8) don't support it natively, but you can overcome this by adding a script reference to json2.js, downloadable from http://www.json.org/json2.js\");return E.stringify(a.a.c(b),c,g)},zc:function(c,g,d){d=d||{};var m=d.params||{},e=d.includeFields||this.Bb,f=c;if(\"object\"==typeof c&&\"form\"===a.a.v(c))for(var f=c.action,\r\nl=e.length-1;0<=l;l--)for(var k=a.a.Db(c,e[l]),h=k.length-1;0<=h;h--)m[k[h].name]=k[h].value;g=a.a.c(g);var s=w.createElement(\"form\");s.style.display=\"none\";s.action=f;s.method=\"post\";for(var p in g)c=w.createElement(\"input\"),c.type=\"hidden\",c.name=p,c.value=a.a.jb(a.a.c(g[p])),s.appendChild(c);b(m,function(a,b){var c=w.createElement(\"input\");c.type=\"hidden\";c.name=a;c.value=b;s.appendChild(c)});w.body.appendChild(s);d.submitter?d.submitter(s):s.submit();setTimeout(function(){s.parentNode.removeChild(s)},\r\n0)}}}();a.b(\"utils\",a.a);a.b(\"utils.arrayForEach\",a.a.o);a.b(\"utils.arrayFirst\",a.a.vb);a.b(\"utils.arrayFilter\",a.a.xa);a.b(\"utils.arrayGetDistinctValues\",a.a.wb);a.b(\"utils.arrayIndexOf\",a.a.m);a.b(\"utils.arrayMap\",a.a.Ka);a.b(\"utils.arrayPushAll\",a.a.ia);a.b(\"utils.arrayRemoveItem\",a.a.ya);a.b(\"utils.extend\",a.a.extend);a.b(\"utils.fieldsIncludedWithJsonPost\",a.a.Bb);a.b(\"utils.getFormFields\",a.a.Db);a.b(\"utils.peekObservable\",a.a.cb);a.b(\"utils.postJson\",a.a.zc);a.b(\"utils.parseJson\",a.a.yc);a.b(\"utils.registerEventHandler\",\r\na.a.n);a.b(\"utils.stringifyJson\",a.a.jb);a.b(\"utils.range\",a.a.Bc);a.b(\"utils.toggleDomNodeCssClass\",a.a.Ia);a.b(\"utils.trigger\",a.a.qa);a.b(\"utils.unwrapObservable\",a.a.c);a.b(\"utils.objectForEach\",a.a.A);a.b(\"utils.addOrRemoveItem\",a.a.ga);a.b(\"utils.setTextContent\",a.a.Ha);a.b(\"unwrap\",a.a.c);Function.prototype.bind||(Function.prototype.bind=function(a){var d=this;if(1===arguments.length)return function(){return d.apply(a,arguments)};var c=Array.prototype.slice.call(arguments,1);return function(){var e=\r\nc.slice(0);e.push.apply(e,arguments);return d.apply(a,e)}});a.a.f=new function(){function a(b,k){var h=b[c];if(!h||\"null\"===h||!e[h]){if(!k)return p;h=b[c]=\"ko\"+d++;e[h]={}}return e[h]}var d=0,c=\"__ko__\"+(new Date).getTime(),e={};return{get:function(c,d){var e=a(c,!1);return e===p?p:e[d]},set:function(c,d,e){if(e!==p||a(c,!1)!==p)a(c,!0)[d]=e},clear:function(a){var b=a[c];return b?(delete e[b],a[c]=null,!0):!1},I:function(){return d++ +c}}};a.b(\"utils.domData\",a.a.f);a.b(\"utils.domData.clear\",a.a.f.clear);\r\na.a.C=new function(){function b(b,d){var e=a.a.f.get(b,c);e===p&&d&&(e=[],a.a.f.set(b,c,e));return e}function d(c){var e=b(c,!1);if(e)for(var e=e.slice(0),l=0;l<e.length;l++)e[l](c);a.a.f.clear(c);a.a.C.cleanExternalData(c);if(f[c.nodeType])for(e=c.firstChild;c=e;)e=c.nextSibling,8===c.nodeType&&d(c)}var c=a.a.f.I(),e={1:!0,8:!0,9:!0},f={1:!0,9:!0};return{fa:function(a,c){if(\"function\"!=typeof c)throw Error(\"Callback must be a function\");b(a,!0).push(c)},Pb:function(d,e){var f=b(d,!1);f&&(a.a.ya(f,\r\ne),0==f.length&&a.a.f.set(d,c,p))},S:function(b){if(e[b.nodeType]&&(d(b),f[b.nodeType])){var c=[];a.a.ia(c,b.getElementsByTagName(\"*\"));for(var l=0,g=c.length;l<g;l++)d(c[l])}return b},removeNode:function(b){a.S(b);b.parentNode&&b.parentNode.removeChild(b)},cleanExternalData:function(a){u&&\"function\"==typeof u.cleanData&&u.cleanData([a])}}};a.S=a.a.C.S;a.removeNode=a.a.C.removeNode;a.b(\"cleanNode\",a.S);a.b(\"removeNode\",a.removeNode);a.b(\"utils.domNodeDisposal\",a.a.C);a.b(\"utils.domNodeDisposal.addDisposeCallback\",\r\na.a.C.fa);a.b(\"utils.domNodeDisposal.removeDisposeCallback\",a.a.C.Pb);(function(){a.a.ca=function(b,d){var c;if(u)if(u.parseHTML)c=u.parseHTML(b,d)||[];else{if((c=u.clean([b],d))&&c[0]){for(var e=c[0];e.parentNode&&11!==e.parentNode.nodeType;)e=e.parentNode;e.parentNode&&e.parentNode.removeChild(e)}}else{(e=d)||(e=w);c=e.parentWindow||e.defaultView||y;var f=a.a.ib(b).toLowerCase(),e=e.createElement(\"div\"),f=f.match(/^<(thead|tbody|tfoot)/)&&[1,\"<table>\",\"</table>\"]||!f.indexOf(\"<tr\")&&[2,\"<table><tbody>\",\r\n\"</tbody></table>\"]||(!f.indexOf(\"<td\")||!f.indexOf(\"<th\"))&&[3,\"<table><tbody><tr>\",\"</tr></tbody></table>\"]||[0,\"\",\"\"],k=\"ignored<div>\"+f[1]+b+f[2]+\"</div>\";for(\"function\"==typeof c.innerShiv?e.appendChild(c.innerShiv(k)):e.innerHTML=k;f[0]--;)e=e.lastChild;c=a.a.O(e.lastChild.childNodes)}return c};a.a.gb=function(b,d){a.a.Ra(b);d=a.a.c(d);if(null!==d&&d!==p)if(\"string\"!=typeof d&&(d=d.toString()),u)u(b).html(d);else for(var c=a.a.ca(d,b.ownerDocument),e=0;e<c.length;e++)b.appendChild(c[e])}})();\r\na.b(\"utils.parseHtmlFragment\",a.a.ca);a.b(\"utils.setHtml\",a.a.gb);a.H=function(){function b(c,d){if(c)if(8==c.nodeType){var f=a.H.Lb(c.nodeValue);null!=f&&d.push({ic:c,wc:f})}else if(1==c.nodeType)for(var f=0,k=c.childNodes,h=k.length;f<h;f++)b(k[f],d)}var d={};return{$a:function(a){if(\"function\"!=typeof a)throw Error(\"You can only pass a function to ko.memoization.memoize()\");var b=(4294967296*(1+Math.random())|0).toString(16).substring(1)+(4294967296*(1+Math.random())|0).toString(16).substring(1);\r\nd[b]=a;return\"\\x3c!--[ko_memo:\"+b+\"]--\\x3e\"},Wb:function(a,b){var f=d[a];if(f===p)throw Error(\"Couldn't find any memo with ID \"+a+\". Perhaps it's already been unmemoized.\");try{return f.apply(null,b||[]),!0}finally{delete d[a]}},Xb:function(c,d){var f=[];b(c,f);for(var k=0,h=f.length;k<h;k++){var l=f[k].ic,g=[l];d&&a.a.ia(g,d);a.H.Wb(f[k].wc,g);l.nodeValue=\"\";l.parentNode&&l.parentNode.removeChild(l)}},Lb:function(a){return(a=a.match(/^\\[ko_memo\\:(.*?)\\]$/))?a[1]:null}}}();a.b(\"memoization\",a.H);\r\na.b(\"memoization.memoize\",a.H.$a);a.b(\"memoization.unmemoize\",a.H.Wb);a.b(\"memoization.parseMemoText\",a.H.Lb);a.b(\"memoization.unmemoizeDomNodeAndDescendants\",a.H.Xb);a.Sa={throttle:function(b,d){b.throttleEvaluation=d;var c=null;return a.j({read:b,write:function(a){clearTimeout(c);c=setTimeout(function(){b(a)},d)}})},rateLimit:function(a,d){var c,e,f;\"number\"==typeof d?c=d:(c=d.timeout,e=d.method);f=\"notifyWhenChangesStop\"==e?S:R;a.Za(function(a){return f(a,c)})},notify:function(a,d){a.equalityComparer=\r\n\"always\"==d?null:J}};var Q={undefined:1,\"boolean\":1,number:1,string:1};a.b(\"extenders\",a.Sa);a.Ub=function(b,d,c){this.da=b;this.La=d;this.hc=c;this.Gb=!1;a.D(this,\"dispose\",this.p)};a.Ub.prototype.p=function(){this.Gb=!0;this.hc()};a.Q=function(){a.a.Ga(this,a.Q.fn);this.G={};this.rb=1};var z={U:function(b,d,c){var e=this;c=c||\"change\";var f=new a.Ub(e,d?b.bind(d):b,function(){a.a.ya(e.G[c],f);e.ua&&e.ua(c)});e.ja&&e.ja(c);e.G[c]||(e.G[c]=[]);e.G[c].push(f);return f},notifySubscribers:function(b,\r\nd){d=d||\"change\";\"change\"===d&&this.Yb();if(this.Ba(d))try{a.k.xb();for(var c=this.G[d].slice(0),e=0,f;f=c[e];++e)f.Gb||f.La(b)}finally{a.k.end()}},Aa:function(){return this.rb},pc:function(a){return this.Aa()!==a},Yb:function(){++this.rb},Za:function(b){var d=this,c=a.F(d),e,f,k;d.ta||(d.ta=d.notifySubscribers,d.notifySubscribers=function(a,b){b&&\"change\"!==b?\"beforeChange\"===b?d.pb(a):d.ta(a,b):d.qb(a)});var h=b(function(){c&&k===d&&(k=d());e=!1;d.Wa(f,k)&&d.ta(f=k)});d.qb=function(a){e=!0;k=a;\r\nh()};d.pb=function(a){e||(f=a,d.ta(a,\"beforeChange\"))}},Ba:function(a){return this.G[a]&&this.G[a].length},nc:function(b){if(b)return this.G[b]&&this.G[b].length||0;var d=0;a.a.A(this.G,function(a,b){d+=b.length});return d},Wa:function(a,d){return!this.equalityComparer||!this.equalityComparer(a,d)},extend:function(b){var d=this;b&&a.a.A(b,function(b,e){var f=a.Sa[b];\"function\"==typeof f&&(d=f(d,e)||d)});return d}};a.D(z,\"subscribe\",z.U);a.D(z,\"extend\",z.extend);a.D(z,\"getSubscriptionsCount\",z.nc);\r\na.a.za&&a.a.Fa(z,Function.prototype);a.Q.fn=z;a.Hb=function(a){return null!=a&&\"function\"==typeof a.U&&\"function\"==typeof a.notifySubscribers};a.b(\"subscribable\",a.Q);a.b(\"isSubscribable\",a.Hb);a.Z=a.k=function(){function b(a){c.push(e);e=a}function d(){e=c.pop()}var c=[],e,f=0;return{xb:b,end:d,Ob:function(b){if(e){if(!a.Hb(b))throw Error(\"Only subscribable things can act as dependencies\");e.La(b,b.ac||(b.ac=++f))}},u:function(a,c,e){try{return b(),a.apply(c,e||[])}finally{d()}},oa:function(){if(e)return e.w.oa()},\r\nCa:function(){if(e)return e.Ca}}}();a.b(\"computedContext\",a.Z);a.b(\"computedContext.getDependenciesCount\",a.Z.oa);a.b(\"computedContext.isInitial\",a.Z.Ca);a.b(\"computedContext.isSleeping\",a.Z.Jc);a.b(\"ignoreDependencies\",a.Gc=a.k.u);a.r=function(b){function d(){if(0<arguments.length)return d.Wa(c,arguments[0])&&(d.X(),c=arguments[0],d.W()),this;a.k.Ob(d);return c}var c=b;a.Q.call(d);a.a.Ga(d,a.r.fn);d.B=function(){return c};d.W=function(){d.notifySubscribers(c)};d.X=function(){d.notifySubscribers(c,\r\n\"beforeChange\")};a.D(d,\"peek\",d.B);a.D(d,\"valueHasMutated\",d.W);a.D(d,\"valueWillMutate\",d.X);return d};a.r.fn={equalityComparer:J};var H=a.r.Ac=\"__ko_proto__\";a.r.fn[H]=a.r;a.a.za&&a.a.Fa(a.r.fn,a.Q.fn);a.Ta=function(b,d){return null===b||b===p||b[H]===p?!1:b[H]===d?!0:a.Ta(b[H],d)};a.F=function(b){return a.Ta(b,a.r)};a.Da=function(b){return\"function\"==typeof b&&b[H]===a.r||\"function\"==typeof b&&b[H]===a.j&&b.qc?!0:!1};a.b(\"observable\",a.r);a.b(\"isObservable\",a.F);a.b(\"isWriteableObservable\",a.Da);\r\na.b(\"isWritableObservable\",a.Da);a.ba=function(b){b=b||[];if(\"object\"!=typeof b||!(\"length\"in b))throw Error(\"The argument passed when initializing an observable array must be an array, or null, or undefined.\");b=a.r(b);a.a.Ga(b,a.ba.fn);return b.extend({trackArrayChanges:!0})};a.ba.fn={remove:function(b){for(var d=this.B(),c=[],e=\"function\"!=typeof b||a.F(b)?function(a){return a===b}:b,f=0;f<d.length;f++){var k=d[f];e(k)&&(0===c.length&&this.X(),c.push(k),d.splice(f,1),f--)}c.length&&this.W();return c},\r\nremoveAll:function(b){if(b===p){var d=this.B(),c=d.slice(0);this.X();d.splice(0,d.length);this.W();return c}return b?this.remove(function(c){return 0<=a.a.m(b,c)}):[]},destroy:function(b){var d=this.B(),c=\"function\"!=typeof b||a.F(b)?function(a){return a===b}:b;this.X();for(var e=d.length-1;0<=e;e--)c(d[e])&&(d[e]._destroy=!0);this.W()},destroyAll:function(b){return b===p?this.destroy(function(){return!0}):b?this.destroy(function(d){return 0<=a.a.m(b,d)}):[]},indexOf:function(b){var d=this();return a.a.m(d,\r\nb)},replace:function(a,d){var c=this.indexOf(a);0<=c&&(this.X(),this.B()[c]=d,this.W())}};a.a.o(\"pop push reverse shift sort splice unshift\".split(\" \"),function(b){a.ba.fn[b]=function(){var a=this.B();this.X();this.yb(a,b,arguments);a=a[b].apply(a,arguments);this.W();return a}});a.a.o([\"slice\"],function(b){a.ba.fn[b]=function(){var a=this();return a[b].apply(a,arguments)}});a.a.za&&a.a.Fa(a.ba.fn,a.r.fn);a.b(\"observableArray\",a.ba);a.Sa.trackArrayChanges=function(b){function d(){if(!c){c=!0;var g=\r\nb.notifySubscribers;b.notifySubscribers=function(a,b){b&&\"change\"!==b||++k;return g.apply(this,arguments)};var d=[].concat(b.B()||[]);e=null;f=b.U(function(c){c=[].concat(c||[]);if(b.Ba(\"arrayChange\")){var g;if(!e||1<k)e=a.a.Ma(d,c,{sparse:!0});g=e}d=c;e=null;k=0;g&&g.length&&b.notifySubscribers(g,\"arrayChange\")})}}if(!b.yb){var c=!1,e=null,f,k=0,h=b.ja,l=b.ua;b.ja=function(a){h&&h.call(b,a);\"arrayChange\"===a&&d()};b.ua=function(a){l&&l.call(b,a);\"arrayChange\"!==a||b.Ba(\"arrayChange\")||(f.p(),c=!1)};\r\nb.yb=function(b,d,f){function l(a,b,c){return h[h.length]={status:a,value:b,index:c}}if(c&&!k){var h=[],r=b.length,v=f.length,t=0;switch(d){case \"push\":t=r;case \"unshift\":for(d=0;d<v;d++)l(\"added\",f[d],t+d);break;case \"pop\":t=r-1;case \"shift\":r&&l(\"deleted\",b[t],t);break;case \"splice\":d=Math.min(Math.max(0,0>f[0]?r+f[0]:f[0]),r);for(var r=1===v?r:Math.min(d+(f[1]||0),r),v=d+v-2,t=Math.max(r,v),G=[],A=[],p=2;d<t;++d,++p)d<r&&A.push(l(\"deleted\",b[d],d)),d<v&&G.push(l(\"added\",f[p],d));a.a.Cb(A,G);break;\r\ndefault:return}e=h}}}};a.w=a.j=function(b,d,c){function e(a,b,c){if(I&&b===g)throw Error(\"A 'pure' computed must not be called recursively\");B[a]=c;c.sa=F++;c.ea=b.Aa()}function f(){var a,b;for(a in B)if(B.hasOwnProperty(a)&&(b=B[a],b.da.pc(b.ea)))return!0}function k(){!s&&B&&a.a.A(B,function(a,b){b.p&&b.p()});B=null;F=0;G=!0;s=r=!1}function h(){var a=g.throttleEvaluation;a&&0<=a?(clearTimeout(z),z=setTimeout(function(){l(!0)},a)):g.nb?g.nb():l(!0)}function l(b){if(!v&&!G){if(y&&y()){if(!t){w();return}}else t=\r\n!1;v=!0;try{var c=B,m=F,f=I?p:!F;a.k.xb({La:function(a,b){G||(m&&c[b]?(e(b,a,c[b]),delete c[b],--m):B[b]||e(b,a,s?{da:a}:a.U(h)))},w:g,Ca:f});B={};F=0;try{var l=d?A.call(d):A()}finally{a.k.end(),m&&!s&&a.a.A(c,function(a,b){b.p&&b.p()}),r=!1}g.Wa(n,l)&&(s||q(n,\"beforeChange\"),n=l,s?g.Yb():b&&q(n));f&&q(n,\"awake\")}finally{v=!1}F||w()}}function g(){if(0<arguments.length){if(\"function\"===typeof C)C.apply(d,arguments);else throw Error(\"Cannot write a value to a ko.computed unless you specify a 'write' option. If you wish to read the current value, don't pass any parameters.\");\r\nreturn this}a.k.Ob(g);(r||s&&f())&&l();return n}function m(){(r&&!F||s&&f())&&l();return n}function x(){return r||0<F}function q(a,b){g.notifySubscribers(a,b)}var n,r=!0,v=!1,t=!1,G=!1,A=b,I=!1,s=!1;A&&\"object\"==typeof A?(c=A,A=c.read):(c=c||{},A||(A=c.read));if(\"function\"!=typeof A)throw Error(\"Pass a function that returns the value of the ko.computed\");var C=c.write,D=c.disposeWhenNodeIsRemoved||c.q||null,u=c.disposeWhen||c.Pa,y=u,w=k,B={},F=0,z=null;d||(d=c.owner);a.Q.call(g);a.a.Ga(g,a.j.fn);\r\ng.B=m;g.oa=function(){return F};g.qc=\"function\"===typeof C;g.p=function(){w()};g.$=x;var T=g.Za;g.Za=function(a){T.call(g,a);g.nb=function(){g.pb(n);r=!0;g.qb(g)}};c.pure?(s=I=!0,g.ja=function(b){if(!G&&s&&\"change\"==b){s=!1;if(r||f())B=null,F=0,r=!0,l();else{var c=[];a.a.A(B,function(a,b){c[b.sa]=a});a.a.o(c,function(a,b){var c=B[a],g=c.da.U(h);g.sa=b;g.ea=c.ea;B[a]=g})}G||q(n,\"awake\")}},g.ua=function(b){G||\"change\"!=b||g.Ba(\"change\")||(a.a.A(B,function(a,b){b.p&&(B[a]={da:b.da,sa:b.sa,ea:b.ea},b.p())}),\r\ns=!0,q(p,\"asleep\"))},g.bc=g.Aa,g.Aa=function(){s&&(r||f())&&l();return g.bc()}):c.deferEvaluation&&(g.ja=function(a){\"change\"!=a&&\"beforeChange\"!=a||m()});a.D(g,\"peek\",g.B);a.D(g,\"dispose\",g.p);a.D(g,\"isActive\",g.$);a.D(g,\"getDependenciesCount\",g.oa);D&&(t=!0,D.nodeType&&(y=function(){return!a.a.Qa(D)||u&&u()}));s||c.deferEvaluation||l();D&&x()&&D.nodeType&&(w=function(){a.a.C.Pb(D,w);k()},a.a.C.fa(D,w));return g};a.sc=function(b){return a.Ta(b,a.j)};z=a.r.Ac;a.j[z]=a.r;a.j.fn={equalityComparer:J};\r\na.j.fn[z]=a.j;a.a.za&&a.a.Fa(a.j.fn,a.Q.fn);a.b(\"dependentObservable\",a.j);a.b(\"computed\",a.j);a.b(\"isComputed\",a.sc);a.Nb=function(b,d){if(\"function\"===typeof b)return a.w(b,d,{pure:!0});b=a.a.extend({},b);b.pure=!0;return a.w(b,d)};a.b(\"pureComputed\",a.Nb);(function(){function b(a,f,k){k=k||new c;a=f(a);if(\"object\"!=typeof a||null===a||a===p||a instanceof Date||a instanceof String||a instanceof Number||a instanceof Boolean)return a;var h=a instanceof Array?[]:{};k.save(a,h);d(a,function(c){var g=\r\nf(a[c]);switch(typeof g){case \"boolean\":case \"number\":case \"string\":case \"function\":h[c]=g;break;case \"object\":case \"undefined\":var d=k.get(g);h[c]=d!==p?d:b(g,f,k)}});return h}function d(a,b){if(a instanceof Array){for(var c=0;c<a.length;c++)b(c);\"function\"==typeof a.toJSON&&b(\"toJSON\")}else for(c in a)b(c)}function c(){this.keys=[];this.mb=[]}a.Vb=function(c){if(0==arguments.length)throw Error(\"When calling ko.toJS, pass the object you want to convert.\");return b(c,function(b){for(var c=0;a.F(b)&&\r\n10>c;c++)b=b();return b})};a.toJSON=function(b,c,d){b=a.Vb(b);return a.a.jb(b,c,d)};c.prototype={save:function(b,c){var d=a.a.m(this.keys,b);0<=d?this.mb[d]=c:(this.keys.push(b),this.mb.push(c))},get:function(b){b=a.a.m(this.keys,b);return 0<=b?this.mb[b]:p}}})();a.b(\"toJS\",a.Vb);a.b(\"toJSON\",a.toJSON);(function(){a.i={s:function(b){switch(a.a.v(b)){case \"option\":return!0===b.__ko__hasDomDataOptionValue__?a.a.f.get(b,a.d.options.ab):7>=a.a.M?b.getAttributeNode(\"value\")&&b.getAttributeNode(\"value\").specified?\r\nb.value:b.text:b.value;case \"select\":return 0<=b.selectedIndex?a.i.s(b.options[b.selectedIndex]):p;default:return b.value}},Y:function(b,d,c){switch(a.a.v(b)){case \"option\":switch(typeof d){case \"string\":a.a.f.set(b,a.d.options.ab,p);\"__ko__hasDomDataOptionValue__\"in b&&delete b.__ko__hasDomDataOptionValue__;b.value=d;break;default:a.a.f.set(b,a.d.options.ab,d),b.__ko__hasDomDataOptionValue__=!0,b.value=\"number\"===typeof d?d:\"\"}break;case \"select\":if(\"\"===d||null===d)d=p;for(var e=-1,f=0,k=b.options.length,\r\nh;f<k;++f)if(h=a.i.s(b.options[f]),h==d||\"\"==h&&d===p){e=f;break}if(c||0<=e||d===p&&1<b.size)b.selectedIndex=e;break;default:if(null===d||d===p)d=\"\";b.value=d}}}})();a.b(\"selectExtensions\",a.i);a.b(\"selectExtensions.readValue\",a.i.s);a.b(\"selectExtensions.writeValue\",a.i.Y);a.h=function(){function b(b){b=a.a.ib(b);123===b.charCodeAt(0)&&(b=b.slice(1,-1));var c=[],d=b.match(e),x,h=[],n=0;if(d){d.push(\",\");for(var r=0,v;v=d[r];++r){var t=v.charCodeAt(0);if(44===t){if(0>=n){c.push(x&&h.length?{key:x,\r\nvalue:h.join(\"\")}:{unknown:x||h.join(\"\")});x=n=0;h=[];continue}}else if(58===t){if(!n&&!x&&1===h.length){x=h.pop();continue}}else 47===t&&r&&1<v.length?(t=d[r-1].match(f))&&!k[t[0]]&&(b=b.substr(b.indexOf(v)+1),d=b.match(e),d.push(\",\"),r=-1,v=\"/\"):40===t||123===t||91===t?++n:41===t||125===t||93===t?--n:x||h.length||34!==t&&39!==t||(v=v.slice(1,-1));h.push(v)}}return c}var d=[\"true\",\"false\",\"null\",\"undefined\"],c=/^(?:[$_a-z][$\\w]*|(.+)(\\.\\s*[$_a-z][$\\w]*|\\[.+\\]))$/i,e=RegExp(\"\\\"(?:[^\\\"\\\\\\\\]|\\\\\\\\.)*\\\"|'(?:[^'\\\\\\\\]|\\\\\\\\.)*'|/(?:[^/\\\\\\\\]|\\\\\\\\.)*/w*|[^\\\\s:,/][^,\\\"'{}()/:[\\\\]]*[^\\\\s,\\\"'{}()/:[\\\\]]|[^\\\\s]\",\r\n\"g\"),f=/[\\])\"'A-Za-z0-9_$]+$/,k={\"in\":1,\"return\":1,\"typeof\":1},h={};return{ka:[],V:h,bb:b,Ea:function(e,g){function m(b,g){var e;if(!r){var l=a.getBindingHandler(b);if(l&&l.preprocess&&!(g=l.preprocess(g,b,m)))return;if(l=h[b])e=g,0<=a.a.m(d,e)?e=!1:(l=e.match(c),e=null===l?!1:l[1]?\"Object(\"+l[1]+\")\"+l[2]:e),l=e;l&&k.push(\"'\"+b+\"':function(_z){\"+e+\"=_z}\")}n&&(g=\"function(){return \"+g+\" }\");f.push(\"'\"+b+\"':\"+g)}g=g||{};var f=[],k=[],n=g.valueAccessors,r=g.bindingParams,v=\"string\"===typeof e?b(e):e;\r\na.a.o(v,function(a){m(a.key||a.unknown,a.value)});k.length&&m(\"_ko_property_writers\",\"{\"+k.join(\",\")+\" }\");return f.join(\",\")},vc:function(a,b){for(var c=0;c<a.length;c++)if(a[c].key==b)return!0;return!1},ra:function(b,c,d,e,f){if(b&&a.F(b))!a.Da(b)||f&&b.B()===e||b(e);else if((b=c.get(\"_ko_property_writers\"))&&b[d])b[d](e)}}}();a.b(\"expressionRewriting\",a.h);a.b(\"expressionRewriting.bindingRewriteValidators\",a.h.ka);a.b(\"expressionRewriting.parseObjectLiteral\",a.h.bb);a.b(\"expressionRewriting.preProcessBindings\",\r\na.h.Ea);a.b(\"expressionRewriting._twoWayBindings\",a.h.V);a.b(\"jsonExpressionRewriting\",a.h);a.b(\"jsonExpressionRewriting.insertPropertyAccessorsIntoJson\",a.h.Ea);(function(){function b(a){return 8==a.nodeType&&k.test(f?a.text:a.nodeValue)}function d(a){return 8==a.nodeType&&h.test(f?a.text:a.nodeValue)}function c(a,c){for(var e=a,f=1,l=[];e=e.nextSibling;){if(d(e)&&(f--,0===f))return l;l.push(e);b(e)&&f++}if(!c)throw Error(\"Cannot find closing comment tag to match: \"+a.nodeValue);return null}function e(a,\r\nb){var d=c(a,b);return d?0<d.length?d[d.length-1].nextSibling:a.nextSibling:null}var f=w&&\"\\x3c!--test--\\x3e\"===w.createComment(\"test\").text,k=f?/^\\x3c!--\\s*ko(?:\\s+([\\s\\S]+))?\\s*--\\x3e$/:/^\\s*ko(?:\\s+([\\s\\S]+))?\\s*$/,h=f?/^\\x3c!--\\s*\\/ko\\s*--\\x3e$/:/^\\s*\\/ko\\s*$/,l={ul:!0,ol:!0};a.e={R:{},childNodes:function(a){return b(a)?c(a):a.childNodes},ma:function(c){if(b(c)){c=a.e.childNodes(c);for(var d=0,e=c.length;d<e;d++)a.removeNode(c[d])}else a.a.Ra(c)},T:function(c,d){if(b(c)){a.e.ma(c);for(var e=c.nextSibling,\r\nf=0,l=d.length;f<l;f++)e.parentNode.insertBefore(d[f],e)}else a.a.T(c,d)},Mb:function(a,c){b(a)?a.parentNode.insertBefore(c,a.nextSibling):a.firstChild?a.insertBefore(c,a.firstChild):a.appendChild(c)},Fb:function(c,d,e){e?b(c)?c.parentNode.insertBefore(d,e.nextSibling):e.nextSibling?c.insertBefore(d,e.nextSibling):c.appendChild(d):a.e.Mb(c,d)},firstChild:function(a){return b(a)?!a.nextSibling||d(a.nextSibling)?null:a.nextSibling:a.firstChild},nextSibling:function(a){b(a)&&(a=e(a));return a.nextSibling&&\r\nd(a.nextSibling)?null:a.nextSibling},oc:b,Fc:function(a){return(a=(f?a.text:a.nodeValue).match(k))?a[1]:null},Kb:function(c){if(l[a.a.v(c)]){var m=c.firstChild;if(m){do if(1===m.nodeType){var f;f=m.firstChild;var h=null;if(f){do if(h)h.push(f);else if(b(f)){var k=e(f,!0);k?f=k:h=[f]}else d(f)&&(h=[f]);while(f=f.nextSibling)}if(f=h)for(h=m.nextSibling,k=0;k<f.length;k++)h?c.insertBefore(f[k],h):c.appendChild(f[k])}while(m=m.nextSibling)}}}}})();a.b(\"virtualElements\",a.e);a.b(\"virtualElements.allowedBindings\",\r\na.e.R);a.b(\"virtualElements.emptyNode\",a.e.ma);a.b(\"virtualElements.insertAfter\",a.e.Fb);a.b(\"virtualElements.prepend\",a.e.Mb);a.b(\"virtualElements.setDomNodeChildren\",a.e.T);(function(){a.L=function(){this.ec={}};a.a.extend(a.L.prototype,{nodeHasBindings:function(b){switch(b.nodeType){case 1:return null!=b.getAttribute(\"data-bind\")||a.g.getComponentNameForNode(b);case 8:return a.e.oc(b);default:return!1}},getBindings:function(b,d){var c=this.getBindingsString(b,d),c=c?this.parseBindingsString(c,\r\nd,b):null;return a.g.sb(c,b,d,!1)},getBindingAccessors:function(b,d){var c=this.getBindingsString(b,d),c=c?this.parseBindingsString(c,d,b,{valueAccessors:!0}):null;return a.g.sb(c,b,d,!0)},getBindingsString:function(b){switch(b.nodeType){case 1:return b.getAttribute(\"data-bind\");case 8:return a.e.Fc(b);default:return null}},parseBindingsString:function(b,d,c,e){try{var f=this.ec,k=b+(e&&e.valueAccessors||\"\"),h;if(!(h=f[k])){var l,g=\"with($context){with($data||{}){return{\"+a.h.Ea(b,e)+\"}}}\";l=new Function(\"$context\",\r\n\"$element\",g);h=f[k]=l}return h(d,c)}catch(m){throw m.message=\"Unable to parse bindings.\\nBindings value: \"+b+\"\\nMessage: \"+m.message,m;}}});a.L.instance=new a.L})();a.b(\"bindingProvider\",a.L);(function(){function b(a){return function(){return a}}function d(a){return a()}function c(b){return a.a.pa(a.k.u(b),function(a,c){return function(){return b()[c]}})}function e(d,g,e){return\"function\"===typeof d?c(d.bind(null,g,e)):a.a.pa(d,b)}function f(a,b){return c(this.getBindings.bind(this,a,b))}function k(b,\r\nc,d){var g,e=a.e.firstChild(c),f=a.L.instance,m=f.preprocessNode;if(m){for(;g=e;)e=a.e.nextSibling(g),m.call(f,g);e=a.e.firstChild(c)}for(;g=e;)e=a.e.nextSibling(g),h(b,g,d)}function h(b,c,d){var e=!0,f=1===c.nodeType;f&&a.e.Kb(c);if(f&&d||a.L.instance.nodeHasBindings(c))e=g(c,null,b,d).shouldBindDescendants;e&&!x[a.a.v(c)]&&k(b,c,!f)}function l(b){var c=[],d={},g=[];a.a.A(b,function I(e){if(!d[e]){var f=a.getBindingHandler(e);f&&(f.after&&(g.push(e),a.a.o(f.after,function(c){if(b[c]){if(-1!==a.a.m(g,\r\nc))throw Error(\"Cannot combine the following bindings, because they have a cyclic dependency: \"+g.join(\", \"));I(c)}}),g.length--),c.push({key:e,Eb:f}));d[e]=!0}});return c}function g(b,c,g,e){var m=a.a.f.get(b,q);if(!c){if(m)throw Error(\"You cannot apply bindings multiple times to the same element.\");a.a.f.set(b,q,!0)}!m&&e&&a.Tb(b,g);var h;if(c&&\"function\"!==typeof c)h=c;else{var k=a.L.instance,x=k.getBindingAccessors||f,n=a.j(function(){(h=c?c(g,b):x.call(k,b,g))&&g.K&&g.K();return h},null,{q:b});\r\nh&&n.$()||(n=null)}var u;if(h){var w=n?function(a){return function(){return d(n()[a])}}:function(a){return h[a]},y=function(){return a.a.pa(n?n():h,d)};y.get=function(a){return h[a]&&d(w(a))};y.has=function(a){return a in h};e=l(h);a.a.o(e,function(c){var d=c.Eb.init,e=c.Eb.update,f=c.key;if(8===b.nodeType&&!a.e.R[f])throw Error(\"The binding '\"+f+\"' cannot be used with virtual elements\");try{\"function\"==typeof d&&a.k.u(function(){var a=d(b,w(f),y,g.$data,g);if(a&&a.controlsDescendantBindings){if(u!==\r\np)throw Error(\"Multiple bindings (\"+u+\" and \"+f+\") are trying to control descendant bindings of the same element. You cannot use these bindings together on the same element.\");u=f}}),\"function\"==typeof e&&a.j(function(){e(b,w(f),y,g.$data,g)},null,{q:b})}catch(m){throw m.message='Unable to process binding \"'+f+\": \"+h[f]+'\"\\nMessage: '+m.message,m;}})}return{shouldBindDescendants:u===p}}function m(b){return b&&b instanceof a.N?b:new a.N(b)}a.d={};var x={script:!0,textarea:!0};a.getBindingHandler=function(b){return a.d[b]};\r\na.N=function(b,c,d,g){var e=this,f=\"function\"==typeof b&&!a.F(b),m,l=a.j(function(){var m=f?b():b,h=a.a.c(m);c?(c.K&&c.K(),a.a.extend(e,c),l&&(e.K=l)):(e.$parents=[],e.$root=h,e.ko=a);e.$rawData=m;e.$data=h;d&&(e[d]=h);g&&g(e,c,h);return e.$data},null,{Pa:function(){return m&&!a.a.tb(m)},q:!0});l.$()&&(e.K=l,l.equalityComparer=null,m=[],l.Zb=function(b){m.push(b);a.a.C.fa(b,function(b){a.a.ya(m,b);m.length||(l.p(),e.K=l=p)})})};a.N.prototype.createChildContext=function(b,c,d){return new a.N(b,this,\r\nc,function(a,b){a.$parentContext=b;a.$parent=b.$data;a.$parents=(b.$parents||[]).slice(0);a.$parents.unshift(a.$parent);d&&d(a)})};a.N.prototype.extend=function(b){return new a.N(this.K||this.$data,this,null,function(c,d){c.$rawData=d.$rawData;a.a.extend(c,\"function\"==typeof b?b():b)})};var q=a.a.f.I(),n=a.a.f.I();a.Tb=function(b,c){if(2==arguments.length)a.a.f.set(b,n,c),c.K&&c.K.Zb(b);else return a.a.f.get(b,n)};a.va=function(b,c,d){1===b.nodeType&&a.e.Kb(b);return g(b,c,m(d),!0)};a.cc=function(b,\r\nc,d){d=m(d);return a.va(b,e(c,d,b),d)};a.Ja=function(a,b){1!==b.nodeType&&8!==b.nodeType||k(m(a),b,!0)};a.ub=function(a,b){!u&&y.jQuery&&(u=y.jQuery);if(b&&1!==b.nodeType&&8!==b.nodeType)throw Error(\"ko.applyBindings: first parameter should be your view model; second parameter should be a DOM node\");b=b||y.document.body;h(m(a),b,!0)};a.Oa=function(b){switch(b.nodeType){case 1:case 8:var c=a.Tb(b);if(c)return c;if(b.parentNode)return a.Oa(b.parentNode)}return p};a.gc=function(b){return(b=a.Oa(b))?\r\nb.$data:p};a.b(\"bindingHandlers\",a.d);a.b(\"applyBindings\",a.ub);a.b(\"applyBindingsToDescendants\",a.Ja);a.b(\"applyBindingAccessorsToNode\",a.va);a.b(\"applyBindingsToNode\",a.cc);a.b(\"contextFor\",a.Oa);a.b(\"dataFor\",a.gc)})();(function(b){function d(d,e){var g=f.hasOwnProperty(d)?f[d]:b,m;g?g.U(e):(g=f[d]=new a.Q,g.U(e),c(d,function(a,b){var c=!(!b||!b.synchronous);k[d]={definition:a,tc:c};delete f[d];m||c?g.notifySubscribers(a):setTimeout(function(){g.notifySubscribers(a)},0)}),m=!0)}function c(a,b){e(\"getConfig\",\r\n[a],function(c){c?e(\"loadComponent\",[a,c],function(a){b(a,c)}):b(null,null)})}function e(c,d,g,f){f||(f=a.g.loaders.slice(0));var k=f.shift();if(k){var q=k[c];if(q){var n=!1;if(q.apply(k,d.concat(function(a){n?g(null):null!==a?g(a):e(c,d,g,f)}))!==b&&(n=!0,!k.suppressLoaderExceptions))throw Error(\"Component loaders must supply values by invoking the callback, not by returning values synchronously.\");}else e(c,d,g,f)}else g(null)}var f={},k={};a.g={get:function(c,e){var g=k.hasOwnProperty(c)?k[c]:\r\nb;g?g.tc?a.k.u(function(){e(g.definition)}):setTimeout(function(){e(g.definition)},0):d(c,e)},zb:function(a){delete k[a]},ob:e};a.g.loaders=[];a.b(\"components\",a.g);a.b(\"components.get\",a.g.get);a.b(\"components.clearCachedDefinition\",a.g.zb)})();(function(){function b(b,c,d,e){function k(){0===--v&&e(h)}var h={},v=2,t=d.template;d=d.viewModel;t?f(c,t,function(c){a.g.ob(\"loadTemplate\",[b,c],function(a){h.template=a;k()})}):k();d?f(c,d,function(c){a.g.ob(\"loadViewModel\",[b,c],function(a){h[l]=a;k()})}):\r\nk()}function d(a,b,c){if(\"function\"===typeof b)c(function(a){return new b(a)});else if(\"function\"===typeof b[l])c(b[l]);else if(\"instance\"in b){var e=b.instance;c(function(){return e})}else\"viewModel\"in b?d(a,b.viewModel,c):a(\"Unknown viewModel value: \"+b)}function c(b){switch(a.a.v(b)){case \"script\":return a.a.ca(b.text);case \"textarea\":return a.a.ca(b.value);case \"template\":if(e(b.content))return a.a.la(b.content.childNodes)}return a.a.la(b.childNodes)}function e(a){return y.DocumentFragment?a instanceof\r\nDocumentFragment:a&&11===a.nodeType}function f(a,b,c){\"string\"===typeof b.require?O||y.require?(O||y.require)([b.require],c):a(\"Uses require, but no AMD loader is present\"):c(b)}function k(a){return function(b){throw Error(\"Component '\"+a+\"': \"+b);}}var h={};a.g.register=function(b,c){if(!c)throw Error(\"Invalid configuration for \"+b);if(a.g.Xa(b))throw Error(\"Component \"+b+\" is already registered\");h[b]=c};a.g.Xa=function(a){return a in h};a.g.Ec=function(b){delete h[b];a.g.zb(b)};a.g.Ab={getConfig:function(a,\r\nb){b(h.hasOwnProperty(a)?h[a]:null)},loadComponent:function(a,c,d){var e=k(a);f(e,c,function(c){b(a,e,c,d)})},loadTemplate:function(b,d,f){b=k(b);if(\"string\"===typeof d)f(a.a.ca(d));else if(d instanceof Array)f(d);else if(e(d))f(a.a.O(d.childNodes));else if(d.element)if(d=d.element,y.HTMLElement?d instanceof HTMLElement:d&&d.tagName&&1===d.nodeType)f(c(d));else if(\"string\"===typeof d){var l=w.getElementById(d);l?f(c(l)):b(\"Cannot find element with ID \"+d)}else b(\"Unknown element type: \"+d);else b(\"Unknown template value: \"+\r\nd)},loadViewModel:function(a,b,c){d(k(a),b,c)}};var l=\"createViewModel\";a.b(\"components.register\",a.g.register);a.b(\"components.isRegistered\",a.g.Xa);a.b(\"components.unregister\",a.g.Ec);a.b(\"components.defaultLoader\",a.g.Ab);a.g.loaders.push(a.g.Ab);a.g.$b=h})();(function(){function b(b,e){var f=b.getAttribute(\"params\");if(f){var f=d.parseBindingsString(f,e,b,{valueAccessors:!0,bindingParams:!0}),f=a.a.pa(f,function(d){return a.w(d,null,{q:b})}),k=a.a.pa(f,function(d){var e=d.B();return d.$()?a.w({read:function(){return a.a.c(d())},\r\nwrite:a.Da(e)&&function(a){d()(a)},q:b}):e});k.hasOwnProperty(\"$raw\")||(k.$raw=f);return k}return{$raw:{}}}a.g.getComponentNameForNode=function(b){b=a.a.v(b);return a.g.Xa(b)&&b};a.g.sb=function(c,d,f,k){if(1===d.nodeType){var h=a.g.getComponentNameForNode(d);if(h){c=c||{};if(c.component)throw Error('Cannot use the \"component\" binding on a custom element matching a component');var l={name:h,params:b(d,f)};c.component=k?function(){return l}:l}}return c};var d=new a.L;9>a.a.M&&(a.g.register=function(a){return function(b){w.createElement(b);\r\nreturn a.apply(this,arguments)}}(a.g.register),w.createDocumentFragment=function(b){return function(){var d=b(),f=a.g.$b,k;for(k in f)f.hasOwnProperty(k)&&d.createElement(k);return d}}(w.createDocumentFragment))})();(function(b){function d(b,c,d){c=c.template;if(!c)throw Error(\"Component '\"+b+\"' has no template\");b=a.a.la(c);a.e.T(d,b)}function c(a,b,c,d){var e=a.createViewModel;return e?e.call(a,d,{element:b,templateNodes:c}):d}var e=0;a.d.component={init:function(f,k,h,l,g){function m(){var a=x&&\r\nx.dispose;\"function\"===typeof a&&a.call(x);q=null}var x,q,n=a.a.O(a.e.childNodes(f));a.a.C.fa(f,m);a.w(function(){var l=a.a.c(k()),h,t;\"string\"===typeof l?h=l:(h=a.a.c(l.name),t=a.a.c(l.params));if(!h)throw Error(\"No component name specified\");var p=q=++e;a.g.get(h,function(e){if(q===p){m();if(!e)throw Error(\"Unknown component '\"+h+\"'\");d(h,e,f);var l=c(e,f,n,t);e=g.createChildContext(l,b,function(a){a.$component=l;a.$componentTemplateNodes=n});x=l;a.Ja(e,f)}})},null,{q:f});return{controlsDescendantBindings:!0}}};\r\na.e.R.component=!0})();var P={\"class\":\"className\",\"for\":\"htmlFor\"};a.d.attr={update:function(b,d){var c=a.a.c(d())||{};a.a.A(c,function(c,d){d=a.a.c(d);var k=!1===d||null===d||d===p;k&&b.removeAttribute(c);8>=a.a.M&&c in P?(c=P[c],k?b.removeAttribute(c):b[c]=d):k||b.setAttribute(c,d.toString());\"name\"===c&&a.a.Rb(b,k?\"\":d.toString())})}};(function(){a.d.checked={after:[\"value\",\"attr\"],init:function(b,d,c){function e(){var e=b.checked,f=x?k():e;if(!a.Z.Ca()&&(!l||e)){var h=a.k.u(d);g?m!==f?(e&&(a.a.ga(h,\r\nf,!0),a.a.ga(h,m,!1)),m=f):a.a.ga(h,f,e):a.h.ra(h,c,\"checked\",f,!0)}}function f(){var c=a.a.c(d());b.checked=g?0<=a.a.m(c,k()):h?c:k()===c}var k=a.Nb(function(){return c.has(\"checkedValue\")?a.a.c(c.get(\"checkedValue\")):c.has(\"value\")?a.a.c(c.get(\"value\")):b.value}),h=\"checkbox\"==b.type,l=\"radio\"==b.type;if(h||l){var g=h&&a.a.c(d())instanceof Array,m=g?k():p,x=l||g;l&&!b.name&&a.d.uniqueName.init(b,function(){return!0});a.w(e,null,{q:b});a.a.n(b,\"click\",e);a.w(f,null,{q:b})}}};a.h.V.checked=!0;a.d.checkedValue=\r\n{update:function(b,d){b.value=a.a.c(d())}}})();a.d.css={update:function(b,d){var c=a.a.c(d());null!==c&&\"object\"==typeof c?a.a.A(c,function(c,d){d=a.a.c(d);a.a.Ia(b,c,d)}):(c=String(c||\"\"),a.a.Ia(b,b.__ko__cssValue,!1),b.__ko__cssValue=c,a.a.Ia(b,c,!0))}};a.d.enable={update:function(b,d){var c=a.a.c(d());c&&b.disabled?b.removeAttribute(\"disabled\"):c||b.disabled||(b.disabled=!0)}};a.d.disable={update:function(b,d){a.d.enable.update(b,function(){return!a.a.c(d())})}};a.d.event={init:function(b,d,c,\r\ne,f){var k=d()||{};a.a.A(k,function(h){\"string\"==typeof h&&a.a.n(b,h,function(b){var g,m=d()[h];if(m){try{var k=a.a.O(arguments);e=f.$data;k.unshift(e);g=m.apply(e,k)}finally{!0!==g&&(b.preventDefault?b.preventDefault():b.returnValue=!1)}!1===c.get(h+\"Bubble\")&&(b.cancelBubble=!0,b.stopPropagation&&b.stopPropagation())}})})}};a.d.foreach={Ib:function(b){return function(){var d=b(),c=a.a.cb(d);if(!c||\"number\"==typeof c.length)return{foreach:d,templateEngine:a.P.Va};a.a.c(d);return{foreach:c.data,as:c.as,\r\nincludeDestroyed:c.includeDestroyed,afterAdd:c.afterAdd,beforeRemove:c.beforeRemove,afterRender:c.afterRender,beforeMove:c.beforeMove,afterMove:c.afterMove,templateEngine:a.P.Va}}},init:function(b,d){return a.d.template.init(b,a.d.foreach.Ib(d))},update:function(b,d,c,e,f){return a.d.template.update(b,a.d.foreach.Ib(d),c,e,f)}};a.h.ka.foreach=!1;a.e.R.foreach=!0;a.d.hasfocus={init:function(b,d,c){function e(e){b.__ko_hasfocusUpdating=!0;var f=b.ownerDocument;if(\"activeElement\"in f){var g;try{g=f.activeElement}catch(m){g=\r\nf.body}e=g===b}f=d();a.h.ra(f,c,\"hasfocus\",e,!0);b.__ko_hasfocusLastValue=e;b.__ko_hasfocusUpdating=!1}var f=e.bind(null,!0),k=e.bind(null,!1);a.a.n(b,\"focus\",f);a.a.n(b,\"focusin\",f);a.a.n(b,\"blur\",k);a.a.n(b,\"focusout\",k)},update:function(b,d){var c=!!a.a.c(d());b.__ko_hasfocusUpdating||b.__ko_hasfocusLastValue===c||(c?b.focus():b.blur(),a.k.u(a.a.qa,null,[b,c?\"focusin\":\"focusout\"]))}};a.h.V.hasfocus=!0;a.d.hasFocus=a.d.hasfocus;a.h.V.hasFocus=!0;a.d.html={init:function(){return{controlsDescendantBindings:!0}},\r\nupdate:function(b,d){a.a.gb(b,d())}};K(\"if\");K(\"ifnot\",!1,!0);K(\"with\",!0,!1,function(a,d){return a.createChildContext(d)});var L={};a.d.options={init:function(b){if(\"select\"!==a.a.v(b))throw Error(\"options binding applies only to SELECT elements\");for(;0<b.length;)b.remove(0);return{controlsDescendantBindings:!0}},update:function(b,d,c){function e(){return a.a.xa(b.options,function(a){return a.selected})}function f(a,b,c){var d=typeof b;return\"function\"==d?b(a):\"string\"==d?a[b]:c}function k(d,e){if(r&&\r\nm)a.i.Y(b,a.a.c(c.get(\"value\")),!0);else if(n.length){var g=0<=a.a.m(n,a.i.s(e[0]));a.a.Sb(e[0],g);r&&!g&&a.k.u(a.a.qa,null,[b,\"change\"])}}var h=b.multiple,l=0!=b.length&&h?b.scrollTop:null,g=a.a.c(d()),m=c.get(\"valueAllowUnset\")&&c.has(\"value\"),x=c.get(\"optionsIncludeDestroyed\");d={};var q,n=[];m||(h?n=a.a.Ka(e(),a.i.s):0<=b.selectedIndex&&n.push(a.i.s(b.options[b.selectedIndex])));g&&(\"undefined\"==typeof g.length&&(g=[g]),q=a.a.xa(g,function(b){return x||b===p||null===b||!a.a.c(b._destroy)}),c.has(\"optionsCaption\")&&\r\n(g=a.a.c(c.get(\"optionsCaption\")),null!==g&&g!==p&&q.unshift(L)));var r=!1;d.beforeRemove=function(a){b.removeChild(a)};g=k;c.has(\"optionsAfterRender\")&&\"function\"==typeof c.get(\"optionsAfterRender\")&&(g=function(b,d){k(0,d);a.k.u(c.get(\"optionsAfterRender\"),null,[d[0],b!==L?b:p])});a.a.fb(b,q,function(d,e,g){g.length&&(n=!m&&g[0].selected?[a.i.s(g[0])]:[],r=!0);e=b.ownerDocument.createElement(\"option\");d===L?(a.a.Ha(e,c.get(\"optionsCaption\")),a.i.Y(e,p)):(g=f(d,c.get(\"optionsValue\"),d),a.i.Y(e,a.a.c(g)),\r\nd=f(d,c.get(\"optionsText\"),g),a.a.Ha(e,d));return[e]},d,g);a.k.u(function(){m?a.i.Y(b,a.a.c(c.get(\"value\")),!0):(h?n.length&&e().length<n.length:n.length&&0<=b.selectedIndex?a.i.s(b.options[b.selectedIndex])!==n[0]:n.length||0<=b.selectedIndex)&&a.a.qa(b,\"change\")});a.a.kc(b);l&&20<Math.abs(l-b.scrollTop)&&(b.scrollTop=l)}};a.d.options.ab=a.a.f.I();a.d.selectedOptions={after:[\"options\",\"foreach\"],init:function(b,d,c){a.a.n(b,\"change\",function(){var e=d(),f=[];a.a.o(b.getElementsByTagName(\"option\"),\r\nfunction(b){b.selected&&f.push(a.i.s(b))});a.h.ra(e,c,\"selectedOptions\",f)})},update:function(b,d){if(\"select\"!=a.a.v(b))throw Error(\"values binding applies only to SELECT elements\");var c=a.a.c(d());c&&\"number\"==typeof c.length&&a.a.o(b.getElementsByTagName(\"option\"),function(b){var d=0<=a.a.m(c,a.i.s(b));a.a.Sb(b,d)})}};a.h.V.selectedOptions=!0;a.d.style={update:function(b,d){var c=a.a.c(d()||{});a.a.A(c,function(c,d){d=a.a.c(d);if(null===d||d===p||!1===d)d=\"\";b.style[c]=d})}};a.d.submit={init:function(b,\r\nd,c,e,f){if(\"function\"!=typeof d())throw Error(\"The value for a submit binding must be a function\");a.a.n(b,\"submit\",function(a){var c,e=d();try{c=e.call(f.$data,b)}finally{!0!==c&&(a.preventDefault?a.preventDefault():a.returnValue=!1)}})}};a.d.text={init:function(){return{controlsDescendantBindings:!0}},update:function(b,d){a.a.Ha(b,d())}};a.e.R.text=!0;(function(){if(y&&y.navigator)var b=function(a){if(a)return parseFloat(a[1])},d=y.opera&&y.opera.version&&parseInt(y.opera.version()),c=y.navigator.userAgent,\r\ne=b(c.match(/^(?:(?!chrome).)*version\\/([^ ]*) safari/i)),f=b(c.match(/Firefox\\/([^ ]*)/));if(10>a.a.M)var k=a.a.f.I(),h=a.a.f.I(),l=function(b){var c=this.activeElement;(c=c&&a.a.f.get(c,h))&&c(b)},g=function(b,c){var d=b.ownerDocument;a.a.f.get(d,k)||(a.a.f.set(d,k,!0),a.a.n(d,\"selectionchange\",l));a.a.f.set(b,h,c)};a.d.textInput={init:function(b,c,l){function h(c,d){a.a.n(b,c,d)}function k(){var d=a.a.c(c());if(null===d||d===p)d=\"\";w!==p&&d===w?setTimeout(k,4):b.value!==d&&(u=d,b.value=d)}function v(){A||\r\n(w=b.value,A=setTimeout(t,4))}function t(){clearTimeout(A);w=A=p;var d=b.value;u!==d&&(u=d,a.h.ra(c(),l,\"textInput\",d))}var u=b.value,A,w;10>a.a.M?(h(\"propertychange\",function(a){\"value\"===a.propertyName&&t()}),8==a.a.M&&(h(\"keyup\",t),h(\"keydown\",t)),8<=a.a.M&&(g(b,t),h(\"dragend\",v))):(h(\"input\",t),5>e&&\"textarea\"===a.a.v(b)?(h(\"keydown\",v),h(\"paste\",v),h(\"cut\",v)):11>d?h(\"keydown\",v):4>f&&(h(\"DOMAutoComplete\",t),h(\"dragdrop\",t),h(\"drop\",t)));h(\"change\",t);a.w(k,null,{q:b})}};a.h.V.textInput=!0;a.d.textinput=\r\n{preprocess:function(a,b,c){c(\"textInput\",a)}}})();a.d.uniqueName={init:function(b,d){if(d()){var c=\"ko_unique_\"+ ++a.d.uniqueName.fc;a.a.Rb(b,c)}}};a.d.uniqueName.fc=0;a.d.value={after:[\"options\",\"foreach\"],init:function(b,d,c){if(\"input\"!=b.tagName.toLowerCase()||\"checkbox\"!=b.type&&\"radio\"!=b.type){var e=[\"change\"],f=c.get(\"valueUpdate\"),k=!1,h=null;f&&(\"string\"==typeof f&&(f=[f]),a.a.ia(e,f),e=a.a.wb(e));var l=function(){h=null;k=!1;var e=d(),g=a.i.s(b);a.h.ra(e,c,\"value\",g)};!a.a.M||\"input\"!=\r\nb.tagName.toLowerCase()||\"text\"!=b.type||\"off\"==b.autocomplete||b.form&&\"off\"==b.form.autocomplete||-1!=a.a.m(e,\"propertychange\")||(a.a.n(b,\"propertychange\",function(){k=!0}),a.a.n(b,\"focus\",function(){k=!1}),a.a.n(b,\"blur\",function(){k&&l()}));a.a.o(e,function(c){var d=l;a.a.Dc(c,\"after\")&&(d=function(){h=a.i.s(b);setTimeout(l,0)},c=c.substring(5));a.a.n(b,c,d)});var g=function(){var e=a.a.c(d()),f=a.i.s(b);if(null!==h&&e===h)setTimeout(g,0);else if(e!==f)if(\"select\"===a.a.v(b)){var l=c.get(\"valueAllowUnset\"),\r\nf=function(){a.i.Y(b,e,l)};f();l||e===a.i.s(b)?setTimeout(f,0):a.k.u(a.a.qa,null,[b,\"change\"])}else a.i.Y(b,e)};a.w(g,null,{q:b})}else a.va(b,{checkedValue:d})},update:function(){}};a.h.V.value=!0;a.d.visible={update:function(b,d){var c=a.a.c(d()),e=\"none\"!=b.style.display;c&&!e?b.style.display=\"\":!c&&e&&(b.style.display=\"none\")}};(function(b){a.d[b]={init:function(d,c,e,f,k){return a.d.event.init.call(this,d,function(){var a={};a[b]=c();return a},e,f,k)}}})(\"click\");a.J=function(){};a.J.prototype.renderTemplateSource=\r\nfunction(){throw Error(\"Override renderTemplateSource\");};a.J.prototype.createJavaScriptEvaluatorBlock=function(){throw Error(\"Override createJavaScriptEvaluatorBlock\");};a.J.prototype.makeTemplateSource=function(b,d){if(\"string\"==typeof b){d=d||w;var c=d.getElementById(b);if(!c)throw Error(\"Cannot find template with ID \"+b);return new a.t.l(c)}if(1==b.nodeType||8==b.nodeType)return new a.t.ha(b);throw Error(\"Unknown template type: \"+b);};a.J.prototype.renderTemplate=function(a,d,c,e){a=this.makeTemplateSource(a,\r\ne);return this.renderTemplateSource(a,d,c,e)};a.J.prototype.isTemplateRewritten=function(a,d){return!1===this.allowTemplateRewriting?!0:this.makeTemplateSource(a,d).data(\"isRewritten\")};a.J.prototype.rewriteTemplate=function(a,d,c){a=this.makeTemplateSource(a,c);d=d(a.text());a.text(d);a.data(\"isRewritten\",!0)};a.b(\"templateEngine\",a.J);a.kb=function(){function b(b,c,d,h){b=a.h.bb(b);for(var l=a.h.ka,g=0;g<b.length;g++){var m=b[g].key;if(l.hasOwnProperty(m)){var x=l[m];if(\"function\"===typeof x){if(m=\r\nx(b[g].value))throw Error(m);}else if(!x)throw Error(\"This template engine does not support the '\"+m+\"' binding within its templates\");}}d=\"ko.__tr_ambtns(function($context,$element){return(function(){return{ \"+a.h.Ea(b,{valueAccessors:!0})+\" } })()},'\"+d.toLowerCase()+\"')\";return h.createJavaScriptEvaluatorBlock(d)+c}var d=/(<([a-z]+\\d*)(?:\\s+(?!data-bind\\s*=\\s*)[a-z0-9\\-]+(?:=(?:\\\"[^\\\"]*\\\"|\\'[^\\']*\\'|[^>]*))?)*\\s+)data-bind\\s*=\\s*([\"'])([\\s\\S]*?)\\3/gi,c=/\\x3c!--\\s*ko\\b\\s*([\\s\\S]*?)\\s*--\\x3e/g;return{lc:function(b,\r\nc,d){c.isTemplateRewritten(b,d)||c.rewriteTemplate(b,function(b){return a.kb.xc(b,c)},d)},xc:function(a,f){return a.replace(d,function(a,c,d,e,m){return b(m,c,d,f)}).replace(c,function(a,c){return b(c,\"\\x3c!-- ko --\\x3e\",\"#comment\",f)})},dc:function(b,c){return a.H.$a(function(d,h){var l=d.nextSibling;l&&l.nodeName.toLowerCase()===c&&a.va(l,b,h)})}}}();a.b(\"__tr_ambtns\",a.kb.dc);(function(){a.t={};a.t.l=function(a){this.l=a};a.t.l.prototype.text=function(){var b=a.a.v(this.l),b=\"script\"===b?\"text\":\r\n\"textarea\"===b?\"value\":\"innerHTML\";if(0==arguments.length)return this.l[b];var d=arguments[0];\"innerHTML\"===b?a.a.gb(this.l,d):this.l[b]=d};var b=a.a.f.I()+\"_\";a.t.l.prototype.data=function(c){if(1===arguments.length)return a.a.f.get(this.l,b+c);a.a.f.set(this.l,b+c,arguments[1])};var d=a.a.f.I();a.t.ha=function(a){this.l=a};a.t.ha.prototype=new a.t.l;a.t.ha.prototype.text=function(){if(0==arguments.length){var b=a.a.f.get(this.l,d)||{};b.lb===p&&b.Na&&(b.lb=b.Na.innerHTML);return b.lb}a.a.f.set(this.l,\r\nd,{lb:arguments[0]})};a.t.l.prototype.nodes=function(){if(0==arguments.length)return(a.a.f.get(this.l,d)||{}).Na;a.a.f.set(this.l,d,{Na:arguments[0]})};a.b(\"templateSources\",a.t);a.b(\"templateSources.domElement\",a.t.l);a.b(\"templateSources.anonymousTemplate\",a.t.ha)})();(function(){function b(b,c,d){var e;for(c=a.e.nextSibling(c);b&&(e=b)!==c;)b=a.e.nextSibling(e),d(e,b)}function d(c,d){if(c.length){var e=c[0],f=c[c.length-1],h=e.parentNode,k=a.L.instance,r=k.preprocessNode;if(r){b(e,f,function(a,\r\nb){var c=a.previousSibling,d=r.call(k,a);d&&(a===e&&(e=d[0]||b),a===f&&(f=d[d.length-1]||c))});c.length=0;if(!e)return;e===f?c.push(e):(c.push(e,f),a.a.na(c,h))}b(e,f,function(b){1!==b.nodeType&&8!==b.nodeType||a.ub(d,b)});b(e,f,function(b){1!==b.nodeType&&8!==b.nodeType||a.H.Xb(b,[d])});a.a.na(c,h)}}function c(a){return a.nodeType?a:0<a.length?a[0]:null}function e(b,e,f,h,q){q=q||{};var n=(b&&c(b)||f||{}).ownerDocument,r=q.templateEngine||k;a.kb.lc(f,r,n);f=r.renderTemplate(f,h,q,n);if(\"number\"!=\r\ntypeof f.length||0<f.length&&\"number\"!=typeof f[0].nodeType)throw Error(\"Template engine must return an array of DOM nodes\");n=!1;switch(e){case \"replaceChildren\":a.e.T(b,f);n=!0;break;case \"replaceNode\":a.a.Qb(b,f);n=!0;break;case \"ignoreTargetNode\":break;default:throw Error(\"Unknown renderMode: \"+e);}n&&(d(f,h),q.afterRender&&a.k.u(q.afterRender,null,[f,h.$data]));return f}function f(b,c,d){return a.F(b)?b():\"function\"===typeof b?b(c,d):b}var k;a.hb=function(b){if(b!=p&&!(b instanceof a.J))throw Error(\"templateEngine must inherit from ko.templateEngine\");\r\nk=b};a.eb=function(b,d,h,x,q){h=h||{};if((h.templateEngine||k)==p)throw Error(\"Set a template engine before calling renderTemplate\");q=q||\"replaceChildren\";if(x){var n=c(x);return a.j(function(){var k=d&&d instanceof a.N?d:new a.N(a.a.c(d)),p=f(b,k.$data,k),k=e(x,q,p,k,h);\"replaceNode\"==q&&(x=k,n=c(x))},null,{Pa:function(){return!n||!a.a.Qa(n)},q:n&&\"replaceNode\"==q?n.parentNode:n})}return a.H.$a(function(c){a.eb(b,d,h,c,\"replaceNode\")})};a.Cc=function(b,c,h,k,q){function n(a,b){d(b,v);h.afterRender&&\r\nh.afterRender(b,a);v=null}function r(a,c){v=q.createChildContext(a,h.as,function(a){a.$index=c});var d=f(b,a,v);return e(null,\"ignoreTargetNode\",d,v,h)}var v;return a.j(function(){var b=a.a.c(c)||[];\"undefined\"==typeof b.length&&(b=[b]);b=a.a.xa(b,function(b){return h.includeDestroyed||b===p||null===b||!a.a.c(b._destroy)});a.k.u(a.a.fb,null,[k,b,r,h,n])},null,{q:k})};var h=a.a.f.I();a.d.template={init:function(b,c){var d=a.a.c(c());if(\"string\"==typeof d||d.name)a.e.ma(b);else{if(\"nodes\"in d){if(d=\r\nd.nodes||[],a.F(d))throw Error('The \"nodes\" option must be a plain, non-observable array.');}else d=a.e.childNodes(b);d=a.a.Jb(d);(new a.t.ha(b)).nodes(d)}return{controlsDescendantBindings:!0}},update:function(b,c,d,e,f){var k=c(),r;c=a.a.c(k);d=!0;e=null;\"string\"==typeof c?c={}:(k=c.name,\"if\"in c&&(d=a.a.c(c[\"if\"])),d&&\"ifnot\"in c&&(d=!a.a.c(c.ifnot)),r=a.a.c(c.data));\"foreach\"in c?e=a.Cc(k||b,d&&c.foreach||[],c,b,f):d?(f=\"data\"in c?f.createChildContext(r,c.as):f,e=a.eb(k||b,f,c,b)):a.e.ma(b);f=\r\ne;(r=a.a.f.get(b,h))&&\"function\"==typeof r.p&&r.p();a.a.f.set(b,h,f&&f.$()?f:p)}};a.h.ka.template=function(b){b=a.h.bb(b);return 1==b.length&&b[0].unknown||a.h.vc(b,\"name\")?null:\"This template engine does not support anonymous templates nested within its templates\"};a.e.R.template=!0})();a.b(\"setTemplateEngine\",a.hb);a.b(\"renderTemplate\",a.eb);a.a.Cb=function(a,d,c){if(a.length&&d.length){var e,f,k,h,l;for(e=f=0;(!c||e<c)&&(h=a[f]);++f){for(k=0;l=d[k];++k)if(h.value===l.value){h.moved=l.index;l.moved=\r\nh.index;d.splice(k,1);e=k=0;break}e+=k}}};a.a.Ma=function(){function b(b,c,e,f,k){var h=Math.min,l=Math.max,g=[],m,p=b.length,q,n=c.length,r=n-p||1,v=p+n+1,t,u,w;for(m=0;m<=p;m++)for(u=t,g.push(t=[]),w=h(n,m+r),q=l(0,m-1);q<=w;q++)t[q]=q?m?b[m-1]===c[q-1]?u[q-1]:h(u[q]||v,t[q-1]||v)+1:q+1:m+1;h=[];l=[];r=[];m=p;for(q=n;m||q;)n=g[m][q]-1,q&&n===g[m][q-1]?l.push(h[h.length]={status:e,value:c[--q],index:q}):m&&n===g[m-1][q]?r.push(h[h.length]={status:f,value:b[--m],index:m}):(--q,--m,k.sparse||h.push({status:\"retained\",\r\nvalue:c[q]}));a.a.Cb(l,r,10*p);return h.reverse()}return function(a,c,e){e=\"boolean\"===typeof e?{dontLimitMoves:e}:e||{};a=a||[];c=c||[];return a.length<=c.length?b(a,c,\"added\",\"deleted\",e):b(c,a,\"deleted\",\"added\",e)}}();a.b(\"utils.compareArrays\",a.a.Ma);(function(){function b(b,d,f,k,h){var l=[],g=a.j(function(){var g=d(f,h,a.a.na(l,b))||[];0<l.length&&(a.a.Qb(l,g),k&&a.k.u(k,null,[f,g,h]));l.length=0;a.a.ia(l,g)},null,{q:b,Pa:function(){return!a.a.tb(l)}});return{aa:l,j:g.$()?g:p}}var d=a.a.f.I();\r\na.a.fb=function(c,e,f,k,h){function l(b,d){s=u[d];t!==d&&(z[b]=s);s.Ua(t++);a.a.na(s.aa,c);r.push(s);y.push(s)}function g(b,c){if(b)for(var d=0,e=c.length;d<e;d++)c[d]&&a.a.o(c[d].aa,function(a){b(a,d,c[d].wa)})}e=e||[];k=k||{};var m=a.a.f.get(c,d)===p,u=a.a.f.get(c,d)||[],q=a.a.Ka(u,function(a){return a.wa}),n=a.a.Ma(q,e,k.dontLimitMoves),r=[],v=0,t=0,w=[],y=[];e=[];for(var z=[],q=[],s,C=0,D,E;D=n[C];C++)switch(E=D.moved,D.status){case \"deleted\":E===p&&(s=u[v],s.j&&s.j.p(),w.push.apply(w,a.a.na(s.aa,\r\nc)),k.beforeRemove&&(e[C]=s,y.push(s)));v++;break;case \"retained\":l(C,v++);break;case \"added\":E!==p?l(C,E):(s={wa:D.value,Ua:a.r(t++)},r.push(s),y.push(s),m||(q[C]=s))}g(k.beforeMove,z);a.a.o(w,k.beforeRemove?a.S:a.removeNode);for(var C=0,m=a.e.firstChild(c),H;s=y[C];C++){s.aa||a.a.extend(s,b(c,f,s.wa,h,s.Ua));for(v=0;n=s.aa[v];m=n.nextSibling,H=n,v++)n!==m&&a.e.Fb(c,n,H);!s.rc&&h&&(h(s.wa,s.aa,s.Ua),s.rc=!0)}g(k.beforeRemove,e);g(k.afterMove,z);g(k.afterAdd,q);a.a.f.set(c,d,r)}})();a.b(\"utils.setDomNodeChildrenFromArrayMapping\",\r\na.a.fb);a.P=function(){this.allowTemplateRewriting=!1};a.P.prototype=new a.J;a.P.prototype.renderTemplateSource=function(b,d,c,e){if(d=(9>a.a.M?0:b.nodes)?b.nodes():null)return a.a.O(d.cloneNode(!0).childNodes);b=b.text();return a.a.ca(b,e)};a.P.Va=new a.P;a.hb(a.P.Va);a.b(\"nativeTemplateEngine\",a.P);(function(){a.Ya=function(){var a=this.uc=function(){if(!u||!u.tmpl)return 0;try{if(0<=u.tmpl.tag.tmpl.open.toString().indexOf(\"__\"))return 2}catch(a){}return 1}();this.renderTemplateSource=function(b,\r\ne,f,k){k=k||w;f=f||{};if(2>a)throw Error(\"Your version of jQuery.tmpl is too old. Please upgrade to jQuery.tmpl 1.0.0pre or later.\");var h=b.data(\"precompiled\");h||(h=b.text()||\"\",h=u.template(null,\"{{ko_with $item.koBindingContext}}\"+h+\"{{/ko_with}}\"),b.data(\"precompiled\",h));b=[e.$data];e=u.extend({koBindingContext:e},f.templateOptions);e=u.tmpl(h,b,e);e.appendTo(k.createElement(\"div\"));u.fragments={};return e};this.createJavaScriptEvaluatorBlock=function(a){return\"{{ko_code ((function() { return \"+\r\na+\" })()) }}\"};this.addTemplate=function(a,b){w.write(\"<script type='text/html' id='\"+a+\"'>\"+b+\"\\x3c/script>\")};0<a&&(u.tmpl.tag.ko_code={open:\"__.push($1 || '');\"},u.tmpl.tag.ko_with={open:\"with($1) {\",close:\"} \"})};a.Ya.prototype=new a.J;var b=new a.Ya;0<b.uc&&a.hb(b);a.b(\"jqueryTmplTemplateEngine\",a.Ya)})()})})();})();\n",
    "define('ko_extended',[\"knockout\"], function (ko) {\r\n    \"use strict\";\r\n\r\n    ko.bindingHandlers.domElement = {\r\n        init: function (element, valueAccessor) {\r\n            var observable = valueAccessor();\r\n            if (ko.isObservable(observable)) {\r\n                observable(element);\r\n            }\r\n        }\r\n    };\r\n\r\n    ko.bindingHandlers.toggleClick = {\r\n        init: function (element, valueAccessor) {\r\n            var observable = valueAccessor();\r\n            ko.utils.registerEventHandler(element, \"click\", function () {\r\n                observable(!observable());\r\n            });\r\n        }\r\n    };\r\n\r\n    ko.bindingHandlers.stopBinding = {\r\n        init: function () {\r\n            return { controlsDescendantBindings: true };\r\n        }\r\n    };\r\n\r\n    ko.virtualElements.allowedBindings.stopBinding = true;\r\n\r\n    return ko;\r\n});\n",
    "/*!\r\n * imagesLoaded PACKAGED v3.1.8\r\n * JavaScript is all like \"You images are done yet or what?\"\r\n * MIT License\r\n * http://imagesloaded.desandro.com/\r\n */\r\n\r\n(function(){function e(){}function t(e,t){for(var n=e.length;n--;)if(e[n].listener===t)return n;return-1}function n(e){return function(){return this[e].apply(this,arguments)}}var i=e.prototype,r=this,o=r.EventEmitter;i.getListeners=function(e){var t,n,i=this._getEvents();if(\"object\"==typeof e){t={};for(n in i)i.hasOwnProperty(n)&&e.test(n)&&(t[n]=i[n])}else t=i[e]||(i[e]=[]);return t},i.flattenListeners=function(e){var t,n=[];for(t=0;e.length>t;t+=1)n.push(e[t].listener);return n},i.getListenersAsObject=function(e){var t,n=this.getListeners(e);return n instanceof Array&&(t={},t[e]=n),t||n},i.addListener=function(e,n){var i,r=this.getListenersAsObject(e),o=\"object\"==typeof n;for(i in r)r.hasOwnProperty(i)&&-1===t(r[i],n)&&r[i].push(o?n:{listener:n,once:!1});return this},i.on=n(\"addListener\"),i.addOnceListener=function(e,t){return this.addListener(e,{listener:t,once:!0})},i.once=n(\"addOnceListener\"),i.defineEvent=function(e){return this.getListeners(e),this},i.defineEvents=function(e){for(var t=0;e.length>t;t+=1)this.defineEvent(e[t]);return this},i.removeListener=function(e,n){var i,r,o=this.getListenersAsObject(e);for(r in o)o.hasOwnProperty(r)&&(i=t(o[r],n),-1!==i&&o[r].splice(i,1));return this},i.off=n(\"removeListener\"),i.addListeners=function(e,t){return this.manipulateListeners(!1,e,t)},i.removeListeners=function(e,t){return this.manipulateListeners(!0,e,t)},i.manipulateListeners=function(e,t,n){var i,r,o=e?this.removeListener:this.addListener,s=e?this.removeListeners:this.addListeners;if(\"object\"!=typeof t||t instanceof RegExp)for(i=n.length;i--;)o.call(this,t,n[i]);else for(i in t)t.hasOwnProperty(i)&&(r=t[i])&&(\"function\"==typeof r?o.call(this,i,r):s.call(this,i,r));return this},i.removeEvent=function(e){var t,n=typeof e,i=this._getEvents();if(\"string\"===n)delete i[e];else if(\"object\"===n)for(t in i)i.hasOwnProperty(t)&&e.test(t)&&delete i[t];else delete this._events;return this},i.removeAllListeners=n(\"removeEvent\"),i.emitEvent=function(e,t){var n,i,r,o,s=this.getListenersAsObject(e);for(r in s)if(s.hasOwnProperty(r))for(i=s[r].length;i--;)n=s[r][i],n.once===!0&&this.removeListener(e,n.listener),o=n.listener.apply(this,t||[]),o===this._getOnceReturnValue()&&this.removeListener(e,n.listener);return this},i.trigger=n(\"emitEvent\"),i.emit=function(e){var t=Array.prototype.slice.call(arguments,1);return this.emitEvent(e,t)},i.setOnceReturnValue=function(e){return this._onceReturnValue=e,this},i._getOnceReturnValue=function(){return this.hasOwnProperty(\"_onceReturnValue\")?this._onceReturnValue:!0},i._getEvents=function(){return this._events||(this._events={})},e.noConflict=function(){return r.EventEmitter=o,e},\"function\"==typeof define&&define.amd?define(\"eventEmitter/EventEmitter\",[],function(){return e}):\"object\"==typeof module&&module.exports?module.exports=e:this.EventEmitter=e}).call(this),function(e){function t(t){var n=e.event;return n.target=n.target||n.srcElement||t,n}var n=document.documentElement,i=function(){};n.addEventListener?i=function(e,t,n){e.addEventListener(t,n,!1)}:n.attachEvent&&(i=function(e,n,i){e[n+i]=i.handleEvent?function(){var n=t(e);i.handleEvent.call(i,n)}:function(){var n=t(e);i.call(e,n)},e.attachEvent(\"on\"+n,e[n+i])});var r=function(){};n.removeEventListener?r=function(e,t,n){e.removeEventListener(t,n,!1)}:n.detachEvent&&(r=function(e,t,n){e.detachEvent(\"on\"+t,e[t+n]);try{delete e[t+n]}catch(i){e[t+n]=void 0}});var o={bind:i,unbind:r};\"function\"==typeof define&&define.amd?define(\"eventie/eventie\",o):e.eventie=o}(this),function(e,t){\"function\"==typeof define&&define.amd?define('imagesLoaded',[\"eventEmitter/EventEmitter\",\"eventie/eventie\"],function(n,i){return t(e,n,i)}):\"object\"==typeof exports?module.exports=t(e,require(\"wolfy87-eventemitter\"),require(\"eventie\")):e.imagesLoaded=t(e,e.EventEmitter,e.eventie)}(window,function(e,t,n){function i(e,t){for(var n in t)e[n]=t[n];return e}function r(e){return\"[object Array]\"===d.call(e)}function o(e){var t=[];if(r(e))t=e;else if(\"number\"==typeof e.length)for(var n=0,i=e.length;i>n;n++)t.push(e[n]);else t.push(e);return t}function s(e,t,n){if(!(this instanceof s))return new s(e,t);\"string\"==typeof e&&(e=document.querySelectorAll(e)),this.elements=o(e),this.options=i({},this.options),\"function\"==typeof t?n=t:i(this.options,t),n&&this.on(\"always\",n),this.getImages(),a&&(this.jqDeferred=new a.Deferred);var r=this;setTimeout(function(){r.check()})}function f(e){this.img=e}function c(e){this.src=e,v[e]=this}var a=e.jQuery,u=e.console,h=u!==void 0,d=Object.prototype.toString;s.prototype=new t,s.prototype.options={},s.prototype.getImages=function(){this.images=[];for(var e=0,t=this.elements.length;t>e;e++){var n=this.elements[e];\"IMG\"===n.nodeName&&this.addImage(n);var i=n.nodeType;if(i&&(1===i||9===i||11===i))for(var r=n.querySelectorAll(\"img\"),o=0,s=r.length;s>o;o++){var f=r[o];this.addImage(f)}}},s.prototype.addImage=function(e){var t=new f(e);this.images.push(t)},s.prototype.check=function(){function e(e,r){return t.options.debug&&h&&u.log(\"confirm\",e,r),t.progress(e),n++,n===i&&t.complete(),!0}var t=this,n=0,i=this.images.length;if(this.hasAnyBroken=!1,!i)return this.complete(),void 0;for(var r=0;i>r;r++){var o=this.images[r];o.on(\"confirm\",e),o.check()}},s.prototype.progress=function(e){this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded;var t=this;setTimeout(function(){t.emit(\"progress\",t,e),t.jqDeferred&&t.jqDeferred.notify&&t.jqDeferred.notify(t,e)})},s.prototype.complete=function(){var e=this.hasAnyBroken?\"fail\":\"done\";this.isComplete=!0;var t=this;setTimeout(function(){if(t.emit(e,t),t.emit(\"always\",t),t.jqDeferred){var n=t.hasAnyBroken?\"reject\":\"resolve\";t.jqDeferred[n](t)}})},a&&(a.fn.imagesLoaded=function(e,t){var n=new s(this,e,t);return n.jqDeferred.promise(a(this))}),f.prototype=new t,f.prototype.check=function(){var e=v[this.img.src]||new c(this.img.src);if(e.isConfirmed)return this.confirm(e.isLoaded,\"cached was confirmed\"),void 0;if(this.img.complete&&void 0!==this.img.naturalWidth)return this.confirm(0!==this.img.naturalWidth,\"naturalWidth\"),void 0;var t=this;e.on(\"confirm\",function(e,n){return t.confirm(e.isLoaded,n),!0}),e.check()},f.prototype.confirm=function(e,t){this.isLoaded=e,this.emit(\"confirm\",this,t)};var v={};return c.prototype=new t,c.prototype.check=function(){if(!this.isChecked){var e=new Image;n.bind(e,\"load\",this),n.bind(e,\"error\",this),e.src=this.src,this.isChecked=!0}},c.prototype.handleEvent=function(e){var t=\"on\"+e.type;this[t]&&this[t](e)},c.prototype.onload=function(e){this.confirm(!0,\"onload\"),this.unbindProxyEvents(e)},c.prototype.onerror=function(e){this.confirm(!1,\"onerror\"),this.unbindProxyEvents(e)},c.prototype.confirm=function(e,t){this.isConfirmed=!0,this.isLoaded=e,this.emit(\"confirm\",this,t)},c.prototype.unbindProxyEvents=function(e){n.unbind(e.target,\"load\",this),n.unbind(e.target,\"error\",this)},s});\n",
    "/*!\r\n * typeahead.js 0.11.1\r\n * https://github.com/twitter/typeahead.js\r\n * Copyright 2013-2015 Twitter, Inc. and other contributors; Licensed MIT\r\n */\r\n\r\n(function(root, factory) {\r\n    if (typeof define === \"function\" && define.amd) {\r\n        define(\"typeahead\", [ \"jquery\" ], function(a0) { // brainjocks edited\r\n            return factory(a0);\r\n        });\r\n    } else if (typeof exports === \"object\") {\r\n        module.exports = factory(require(\"jquery\"));\r\n    } else {\r\n        factory(jQuery);\r\n    }\r\n})(this, function($) {\r\n    var _ = function() {\r\n        \"use strict\";\r\n        return {\r\n            isMsie: function() {\r\n                return /(msie|trident)/i.test(navigator.userAgent) ? navigator.userAgent.match(/(msie |rv:)(\\d+(.\\d+)?)/i)[2] : false;\r\n            },\r\n            isBlankString: function(str) {\r\n                return !str || /^\\s*$/.test(str);\r\n            },\r\n            escapeRegExChars: function(str) {\r\n                return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, \"\\\\$&\");\r\n            },\r\n            isString: function(obj) {\r\n                return typeof obj === \"string\";\r\n            },\r\n            isNumber: function(obj) {\r\n                return typeof obj === \"number\";\r\n            },\r\n            isArray: $.isArray,\r\n            isFunction: $.isFunction,\r\n            isObject: $.isPlainObject,\r\n            isUndefined: function(obj) {\r\n                return typeof obj === \"undefined\";\r\n            },\r\n            isElement: function(obj) {\r\n                return !!(obj && obj.nodeType === 1);\r\n            },\r\n            isJQuery: function(obj) {\r\n                return obj instanceof $;\r\n            },\r\n            toStr: function toStr(s) {\r\n                return _.isUndefined(s) || s === null ? \"\" : s + \"\";\r\n            },\r\n            bind: $.proxy,\r\n            each: function(collection, cb) {\r\n                $.each(collection, reverseArgs);\r\n                function reverseArgs(index, value) {\r\n                    return cb(value, index);\r\n                }\r\n            },\r\n            map: $.map,\r\n            filter: $.grep,\r\n            every: function(obj, test) {\r\n                var result = true;\r\n                if (!obj) {\r\n                    return result;\r\n                }\r\n                $.each(obj, function(key, val) {\r\n                    if (!(result = test.call(null, val, key, obj))) {\r\n                        return false;\r\n                    }\r\n                });\r\n                return !!result;\r\n            },\r\n            some: function(obj, test) {\r\n                var result = false;\r\n                if (!obj) {\r\n                    return result;\r\n                }\r\n                $.each(obj, function(key, val) {\r\n                    if (result = test.call(null, val, key, obj)) {\r\n                        return false;\r\n                    }\r\n                });\r\n                return !!result;\r\n            },\r\n            mixin: $.extend,\r\n            identity: function(x) {\r\n                return x;\r\n            },\r\n            clone: function(obj) {\r\n                return $.extend(true, {}, obj);\r\n            },\r\n            getIdGenerator: function() {\r\n                var counter = 0;\r\n                return function() {\r\n                    return counter++;\r\n                };\r\n            },\r\n            templatify: function templatify(obj) {\r\n                return $.isFunction(obj) ? obj : template;\r\n                function template() {\r\n                    return String(obj);\r\n                }\r\n            },\r\n            defer: function(fn) {\r\n                setTimeout(fn, 0);\r\n            },\r\n            debounce: function(func, wait, immediate) {\r\n                var timeout, result;\r\n                return function() {\r\n                    var context = this, args = arguments, later, callNow;\r\n                    later = function() {\r\n                        timeout = null;\r\n                        if (!immediate) {\r\n                            result = func.apply(context, args);\r\n                        }\r\n                    };\r\n                    callNow = immediate && !timeout;\r\n                    clearTimeout(timeout);\r\n                    timeout = setTimeout(later, wait);\r\n                    if (callNow) {\r\n                        result = func.apply(context, args);\r\n                    }\r\n                    return result;\r\n                };\r\n            },\r\n            throttle: function(func, wait) {\r\n                var context, args, timeout, result, previous, later;\r\n                previous = 0;\r\n                later = function() {\r\n                    previous = new Date();\r\n                    timeout = null;\r\n                    result = func.apply(context, args);\r\n                };\r\n                return function() {\r\n                    var now = new Date(), remaining = wait - (now - previous);\r\n                    context = this;\r\n                    args = arguments;\r\n                    if (remaining <= 0) {\r\n                        clearTimeout(timeout);\r\n                        timeout = null;\r\n                        previous = now;\r\n                        result = func.apply(context, args);\r\n                    } else if (!timeout) {\r\n                        timeout = setTimeout(later, remaining);\r\n                    }\r\n                    return result;\r\n                };\r\n            },\r\n            stringify: function(val) {\r\n                return _.isString(val) ? val : JSON.stringify(val);\r\n            },\r\n            noop: function() {}\r\n        };\r\n    }();\r\n    var WWW = function() {\r\n        \"use strict\";\r\n        var defaultClassNames = {\r\n            wrapper: \"twitter-typeahead\",\r\n            input: \"tt-input\",\r\n            hint: \"tt-hint\",\r\n            menu: \"tt-menu\",\r\n            dataset: \"tt-dataset\",\r\n            suggestion: \"tt-suggestion\",\r\n            selectable: \"tt-selectable\",\r\n            empty: \"tt-empty\",\r\n            open: \"tt-open\",\r\n            cursor: \"tt-cursor\",\r\n            highlight: \"tt-highlight\"\r\n        };\r\n        return build;\r\n        function build(o) {\r\n            var www, classes;\r\n            classes = _.mixin({}, defaultClassNames, o);\r\n            www = {\r\n                css: buildCss(),\r\n                classes: classes,\r\n                html: buildHtml(classes),\r\n                selectors: buildSelectors(classes)\r\n            };\r\n            return {\r\n                css: www.css,\r\n                html: www.html,\r\n                classes: www.classes,\r\n                selectors: www.selectors,\r\n                mixin: function(o) {\r\n                    _.mixin(o, www);\r\n                }\r\n            };\r\n        }\r\n        function buildHtml(c) {\r\n            return {\r\n                wrapper: '<span class=\"' + c.wrapper + '\"></span>',\r\n                menu: '<div class=\"' + c.menu + '\"></div>'\r\n            };\r\n        }\r\n        function buildSelectors(classes) {\r\n            var selectors = {};\r\n            _.each(classes, function(v, k) {\r\n                selectors[k] = \".\" + v;\r\n            });\r\n            return selectors;\r\n        }\r\n        function buildCss() {\r\n            var css = {\r\n                wrapper: {\r\n                    position: \"relative\",\r\n                    display: \"inline-block\"\r\n                },\r\n                hint: {\r\n                    position: \"absolute\",\r\n                    top: \"0\",\r\n                    left: \"0\",\r\n                    borderColor: \"transparent\",\r\n                    boxShadow: \"none\",\r\n                    opacity: \"1\"\r\n                },\r\n                input: {\r\n                    position: \"relative\",\r\n                    verticalAlign: \"top\",\r\n                    backgroundColor: \"transparent\"\r\n                },\r\n                inputWithNoHint: {\r\n                    position: \"relative\",\r\n                    verticalAlign: \"top\"\r\n                },\r\n                menu: {\r\n                    position: \"absolute\",\r\n                    top: \"100%\",\r\n                    left: \"0\",\r\n                    zIndex: \"100\",\r\n                    display: \"none\"\r\n                },\r\n                ltr: {\r\n                    left: \"0\",\r\n                    right: \"auto\"\r\n                },\r\n                rtl: {\r\n                    left: \"auto\",\r\n                    right: \" 0\"\r\n                }\r\n            };\r\n            if (_.isMsie()) {\r\n                _.mixin(css.input, {\r\n                    backgroundImage: \"url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)\"\r\n                });\r\n            }\r\n            return css;\r\n        }\r\n    }();\r\n    var EventBus = function() {\r\n        \"use strict\";\r\n        var namespace, deprecationMap;\r\n        namespace = \"typeahead:\";\r\n        deprecationMap = {\r\n            render: \"rendered\",\r\n            cursorchange: \"cursorchanged\",\r\n            select: \"selected\",\r\n            autocomplete: \"autocompleted\"\r\n        };\r\n        function EventBus(o) {\r\n            if (!o || !o.el) {\r\n                $.error(\"EventBus initialized without el\");\r\n            }\r\n            this.$el = $(o.el);\r\n        }\r\n        _.mixin(EventBus.prototype, {\r\n            _trigger: function(type, args) {\r\n                var $e;\r\n                $e = $.Event(namespace + type);\r\n                (args = args || []).unshift($e);\r\n                this.$el.trigger.apply(this.$el, args);\r\n                return $e;\r\n            },\r\n            before: function(type) {\r\n                var args, $e;\r\n                args = [].slice.call(arguments, 1);\r\n                $e = this._trigger(\"before\" + type, args);\r\n                return $e.isDefaultPrevented();\r\n            },\r\n            trigger: function(type) {\r\n                var deprecatedType;\r\n                this._trigger(type, [].slice.call(arguments, 1));\r\n                if (deprecatedType = deprecationMap[type]) {\r\n                    this._trigger(deprecatedType, [].slice.call(arguments, 1));\r\n                }\r\n            }\r\n        });\r\n        return EventBus;\r\n    }();\r\n    var EventEmitter = function() {\r\n        \"use strict\";\r\n        var splitter = /\\s+/, nextTick = getNextTick();\r\n        return {\r\n            onSync: onSync,\r\n            onAsync: onAsync,\r\n            off: off,\r\n            trigger: trigger\r\n        };\r\n        function on(method, types, cb, context) {\r\n            var type;\r\n            if (!cb) {\r\n                return this;\r\n            }\r\n            types = types.split(splitter);\r\n            cb = context ? bindContext(cb, context) : cb;\r\n            this._callbacks = this._callbacks || {};\r\n            while (type = types.shift()) {\r\n                this._callbacks[type] = this._callbacks[type] || {\r\n                    sync: [],\r\n                    async: []\r\n                };\r\n                this._callbacks[type][method].push(cb);\r\n            }\r\n            return this;\r\n        }\r\n        function onAsync(types, cb, context) {\r\n            return on.call(this, \"async\", types, cb, context);\r\n        }\r\n        function onSync(types, cb, context) {\r\n            return on.call(this, \"sync\", types, cb, context);\r\n        }\r\n        function off(types) {\r\n            var type;\r\n            if (!this._callbacks) {\r\n                return this;\r\n            }\r\n            types = types.split(splitter);\r\n            while (type = types.shift()) {\r\n                delete this._callbacks[type];\r\n            }\r\n            return this;\r\n        }\r\n        function trigger(types) {\r\n            var type, callbacks, args, syncFlush, asyncFlush;\r\n            if (!this._callbacks) {\r\n                return this;\r\n            }\r\n            types = types.split(splitter);\r\n            args = [].slice.call(arguments, 1);\r\n            while ((type = types.shift()) && (callbacks = this._callbacks[type])) {\r\n                syncFlush = getFlush(callbacks.sync, this, [ type ].concat(args));\r\n                asyncFlush = getFlush(callbacks.async, this, [ type ].concat(args));\r\n                syncFlush() && nextTick(asyncFlush);\r\n            }\r\n            return this;\r\n        }\r\n        function getFlush(callbacks, context, args) {\r\n            return flush;\r\n            function flush() {\r\n                var cancelled;\r\n                for (var i = 0, len = callbacks.length; !cancelled && i < len; i += 1) {\r\n                    cancelled = callbacks[i].apply(context, args) === false;\r\n                }\r\n                return !cancelled;\r\n            }\r\n        }\r\n        function getNextTick() {\r\n            var nextTickFn;\r\n            if (window.setImmediate) {\r\n                nextTickFn = function nextTickSetImmediate(fn) {\r\n                    setImmediate(function() {\r\n                        fn();\r\n                    });\r\n                };\r\n            } else {\r\n                nextTickFn = function nextTickSetTimeout(fn) {\r\n                    setTimeout(function() {\r\n                        fn();\r\n                    }, 0);\r\n                };\r\n            }\r\n            return nextTickFn;\r\n        }\r\n        function bindContext(fn, context) {\r\n            return fn.bind ? fn.bind(context) : function() {\r\n                fn.apply(context, [].slice.call(arguments, 0));\r\n            };\r\n        }\r\n    }();\r\n    var highlight = function(doc) {\r\n        \"use strict\";\r\n        var defaults = {\r\n            node: null,\r\n            pattern: null,\r\n            tagName: \"strong\",\r\n            className: null,\r\n            wordsOnly: false,\r\n            caseSensitive: false\r\n        };\r\n        return function hightlight(o) {\r\n            var regex;\r\n            o = _.mixin({}, defaults, o);\r\n            if (!o.node || !o.pattern) {\r\n                return;\r\n            }\r\n            o.pattern = _.isArray(o.pattern) ? o.pattern : [ o.pattern ];\r\n            regex = getRegex(o.pattern, o.caseSensitive, o.wordsOnly);\r\n            traverse(o.node, hightlightTextNode);\r\n            function hightlightTextNode(textNode) {\r\n                var match, patternNode, wrapperNode;\r\n                if (match = regex.exec(textNode.data)) {\r\n                    wrapperNode = doc.createElement(o.tagName);\r\n                    o.className && (wrapperNode.className = o.className);\r\n                    patternNode = textNode.splitText(match.index);\r\n                    patternNode.splitText(match[0].length);\r\n                    wrapperNode.appendChild(patternNode.cloneNode(true));\r\n                    textNode.parentNode.replaceChild(wrapperNode, patternNode);\r\n                }\r\n                return !!match;\r\n            }\r\n            function traverse(el, hightlightTextNode) {\r\n                var childNode, TEXT_NODE_TYPE = 3;\r\n                for (var i = 0; i < el.childNodes.length; i++) {\r\n                    childNode = el.childNodes[i];\r\n                    if (childNode.nodeType === TEXT_NODE_TYPE) {\r\n                        i += hightlightTextNode(childNode) ? 1 : 0;\r\n                    } else {\r\n                        traverse(childNode, hightlightTextNode);\r\n                    }\r\n                }\r\n            }\r\n        };\r\n        function getRegex(patterns, caseSensitive, wordsOnly) {\r\n            var escapedPatterns = [], regexStr;\r\n            for (var i = 0, len = patterns.length; i < len; i++) {\r\n                escapedPatterns.push(_.escapeRegExChars(patterns[i]));\r\n            }\r\n            regexStr = wordsOnly ? \"\\\\b(\" + escapedPatterns.join(\"|\") + \")\\\\b\" : \"(\" + escapedPatterns.join(\"|\") + \")\";\r\n            return caseSensitive ? new RegExp(regexStr) : new RegExp(regexStr, \"i\");\r\n        }\r\n    }(window.document);\r\n    var Input = function() {\r\n        \"use strict\";\r\n        var specialKeyCodeMap;\r\n        specialKeyCodeMap = {\r\n            9: \"tab\",\r\n            27: \"esc\",\r\n            37: \"left\",\r\n            39: \"right\",\r\n            13: \"enter\",\r\n            38: \"up\",\r\n            40: \"down\"\r\n        };\r\n        function Input(o, www) {\r\n            o = o || {};\r\n            if (!o.input) {\r\n                $.error(\"input is missing\");\r\n            }\r\n            www.mixin(this);\r\n            this.$hint = $(o.hint);\r\n            this.$input = $(o.input);\r\n            this.query = this.$input.val();\r\n            this.queryWhenFocused = this.hasFocus() ? this.query : null;\r\n            this.$overflowHelper = buildOverflowHelper(this.$input);\r\n            this._checkLanguageDirection();\r\n            if (this.$hint.length === 0) {\r\n                this.setHint = this.getHint = this.clearHint = this.clearHintIfInvalid = _.noop;\r\n            }\r\n        }\r\n        Input.normalizeQuery = function(str) {\r\n            return _.toStr(str).replace(/^\\s*/g, \"\").replace(/\\s{2,}/g, \" \");\r\n        };\r\n        _.mixin(Input.prototype, EventEmitter, {\r\n            _onBlur: function onBlur() {\r\n                this.resetInputValue();\r\n                this.trigger(\"blurred\");\r\n            },\r\n            _onFocus: function onFocus() {\r\n                this.queryWhenFocused = this.query;\r\n                this.trigger(\"focused\");\r\n            },\r\n            _onKeydown: function onKeydown($e) {\r\n                var keyName = specialKeyCodeMap[$e.which || $e.keyCode];\r\n                this._managePreventDefault(keyName, $e);\r\n                if (keyName && this._shouldTrigger(keyName, $e)) {\r\n                    this.trigger(keyName + \"Keyed\", $e);\r\n                }\r\n            },\r\n            _onInput: function onInput() {\r\n                this._setQuery(this.getInputValue());\r\n                this.clearHintIfInvalid();\r\n                this._checkLanguageDirection();\r\n            },\r\n            _managePreventDefault: function managePreventDefault(keyName, $e) {\r\n                var preventDefault;\r\n                switch (keyName) {\r\n                  case \"up\":\r\n                  case \"down\":\r\n                    preventDefault = !withModifier($e);\r\n                    break;\r\n\r\n                  default:\r\n                    preventDefault = false;\r\n                }\r\n                preventDefault && $e.preventDefault();\r\n            },\r\n            _shouldTrigger: function shouldTrigger(keyName, $e) {\r\n                var trigger;\r\n                switch (keyName) {\r\n                  case \"tab\":\r\n                    trigger = !withModifier($e);\r\n                    break;\r\n\r\n                  default:\r\n                    trigger = true;\r\n                }\r\n                return trigger;\r\n            },\r\n            _checkLanguageDirection: function checkLanguageDirection() {\r\n                var dir = (this.$input.css(\"direction\") || \"ltr\").toLowerCase();\r\n                if (this.dir !== dir) {\r\n                    this.dir = dir;\r\n                    this.$hint.attr(\"dir\", dir);\r\n                    this.trigger(\"langDirChanged\", dir);\r\n                }\r\n            },\r\n            _setQuery: function setQuery(val, silent) {\r\n                var areEquivalent, hasDifferentWhitespace;\r\n                areEquivalent = areQueriesEquivalent(val, this.query);\r\n                hasDifferentWhitespace = areEquivalent ? this.query.length !== val.length : false;\r\n                this.query = val;\r\n                if (!silent && !areEquivalent) {\r\n                    this.trigger(\"queryChanged\", this.query);\r\n                } else if (!silent && hasDifferentWhitespace) {\r\n                    this.trigger(\"whitespaceChanged\", this.query);\r\n                }\r\n            },\r\n            bind: function() {\r\n                var that = this, onBlur, onFocus, onKeydown, onInput;\r\n                onBlur = _.bind(this._onBlur, this);\r\n                onFocus = _.bind(this._onFocus, this);\r\n                onKeydown = _.bind(this._onKeydown, this);\r\n                onInput = _.bind(this._onInput, this);\r\n                this.$input.on(\"blur.tt\", onBlur).on(\"focus.tt\", onFocus).on(\"keydown.tt\", onKeydown);\r\n                if (!_.isMsie() || _.isMsie() > 9) {\r\n                    this.$input.on(\"input.tt\", onInput);\r\n                } else {\r\n                    this.$input.on(\"keydown.tt keypress.tt cut.tt paste.tt\", function($e) {\r\n                        if (specialKeyCodeMap[$e.which || $e.keyCode]) {\r\n                            return;\r\n                        }\r\n                        _.defer(_.bind(that._onInput, that, $e));\r\n                    });\r\n                }\r\n                return this;\r\n            },\r\n            focus: function focus() {\r\n                this.$input.focus();\r\n            },\r\n            blur: function blur() {\r\n                this.$input.blur();\r\n            },\r\n            getLangDir: function getLangDir() {\r\n                return this.dir;\r\n            },\r\n            getQuery: function getQuery() {\r\n                return this.query || \"\";\r\n            },\r\n            setQuery: function setQuery(val, silent) {\r\n                this.setInputValue(val);\r\n                this._setQuery(val, silent);\r\n            },\r\n            hasQueryChangedSinceLastFocus: function hasQueryChangedSinceLastFocus() {\r\n                return this.query !== this.queryWhenFocused;\r\n            },\r\n            getInputValue: function getInputValue() {\r\n                return this.$input.val();\r\n            },\r\n            setInputValue: function setInputValue(value) {\r\n                this.$input.val(value);\r\n                this.clearHintIfInvalid();\r\n                this._checkLanguageDirection();\r\n            },\r\n            resetInputValue: function resetInputValue() {\r\n                this.setInputValue(this.query);\r\n            },\r\n            getHint: function getHint() {\r\n                return this.$hint.val();\r\n            },\r\n            setHint: function setHint(value) {\r\n                this.$hint.val(value);\r\n            },\r\n            clearHint: function clearHint() {\r\n                this.setHint(\"\");\r\n            },\r\n            clearHintIfInvalid: function clearHintIfInvalid() {\r\n                var val, hint, valIsPrefixOfHint, isValid;\r\n                val = this.getInputValue();\r\n                hint = this.getHint();\r\n                valIsPrefixOfHint = val !== hint && hint.indexOf(val) === 0;\r\n                isValid = val !== \"\" && valIsPrefixOfHint && !this.hasOverflow();\r\n                !isValid && this.clearHint();\r\n            },\r\n            hasFocus: function hasFocus() {\r\n                return this.$input.is(\":focus\");\r\n            },\r\n            hasOverflow: function hasOverflow() {\r\n                var constraint = this.$input.width() - 2;\r\n                this.$overflowHelper.text(this.getInputValue());\r\n                return this.$overflowHelper.width() >= constraint;\r\n            },\r\n            isCursorAtEnd: function() {\r\n                var valueLength, selectionStart, range;\r\n                valueLength = this.$input.val().length;\r\n                selectionStart = this.$input[0].selectionStart;\r\n                if (_.isNumber(selectionStart)) {\r\n                    return selectionStart === valueLength;\r\n                } else if (document.selection) {\r\n                    range = document.selection.createRange();\r\n                    range.moveStart(\"character\", -valueLength);\r\n                    return valueLength === range.text.length;\r\n                }\r\n                return true;\r\n            },\r\n            destroy: function destroy() {\r\n                this.$hint.off(\".tt\");\r\n                this.$input.off(\".tt\");\r\n                this.$overflowHelper.remove();\r\n                this.$hint = this.$input = this.$overflowHelper = $(\"<div>\");\r\n            }\r\n        });\r\n        return Input;\r\n        function buildOverflowHelper($input) {\r\n            return $('<pre aria-hidden=\"true\"></pre>').css({\r\n                position: \"absolute\",\r\n                visibility: \"hidden\",\r\n                whiteSpace: \"pre\",\r\n                fontFamily: $input.css(\"font-family\"),\r\n                fontSize: $input.css(\"font-size\"),\r\n                fontStyle: $input.css(\"font-style\"),\r\n                fontVariant: $input.css(\"font-variant\"),\r\n                fontWeight: $input.css(\"font-weight\"),\r\n                wordSpacing: $input.css(\"word-spacing\"),\r\n                letterSpacing: $input.css(\"letter-spacing\"),\r\n                textIndent: $input.css(\"text-indent\"),\r\n                textRendering: $input.css(\"text-rendering\"),\r\n                textTransform: $input.css(\"text-transform\")\r\n            }).insertAfter($input);\r\n        }\r\n        function areQueriesEquivalent(a, b) {\r\n            return Input.normalizeQuery(a) === Input.normalizeQuery(b);\r\n        }\r\n        function withModifier($e) {\r\n            return $e.altKey || $e.ctrlKey || $e.metaKey || $e.shiftKey;\r\n        }\r\n    }();\r\n    var Dataset = function() {\r\n        \"use strict\";\r\n        var keys, nameGenerator;\r\n        keys = {\r\n            val: \"tt-selectable-display\",\r\n            obj: \"tt-selectable-object\"\r\n        };\r\n        nameGenerator = _.getIdGenerator();\r\n        function Dataset(o, www) {\r\n            o = o || {};\r\n            o.templates = o.templates || {};\r\n            o.templates.notFound = o.templates.notFound || o.templates.empty;\r\n            if (!o.source) {\r\n                $.error(\"missing source\");\r\n            }\r\n            if (!o.node) {\r\n                $.error(\"missing node\");\r\n            }\r\n            if (o.name && !isValidName(o.name)) {\r\n                $.error(\"invalid dataset name: \" + o.name);\r\n            }\r\n            www.mixin(this);\r\n            this.highlight = !!o.highlight;\r\n            this.name = o.name || nameGenerator();\r\n            this.limit = o.limit || 5;\r\n            this.displayFn = getDisplayFn(o.display || o.displayKey);\r\n            this.templates = getTemplates(o.templates, this.displayFn);\r\n            this.source = o.source.__ttAdapter ? o.source.__ttAdapter() : o.source;\r\n            this.async = _.isUndefined(o.async) ? this.source.length > 2 : !!o.async;\r\n            this._resetLastSuggestion();\r\n            this.$el = $(o.node).addClass(this.classes.dataset).addClass(this.classes.dataset + \"-\" + this.name);\r\n        }\r\n        Dataset.extractData = function extractData(el) {\r\n            var $el = $(el);\r\n            if ($el.data(keys.obj)) {\r\n                return {\r\n                    val: $el.data(keys.val) || \"\",\r\n                    obj: $el.data(keys.obj) || null\r\n                };\r\n            }\r\n            return null;\r\n        };\r\n        _.mixin(Dataset.prototype, EventEmitter, {\r\n            _overwrite: function overwrite(query, suggestions) {\r\n                suggestions = suggestions || [];\r\n                if (suggestions.length) {\r\n                    this._renderSuggestions(query, suggestions);\r\n                } else if (this.async && this.templates.pending) {\r\n                    this._renderPending(query);\r\n                } else if (!this.async && this.templates.notFound) {\r\n                    this._renderNotFound(query);\r\n                } else {\r\n                    this._empty();\r\n                }\r\n                this.trigger(\"rendered\", this.name, suggestions, false);\r\n            },\r\n            _append: function append(query, suggestions) {\r\n                suggestions = suggestions || [];\r\n                if (suggestions.length && this.$lastSuggestion.length) {\r\n                    this._appendSuggestions(query, suggestions);\r\n                } else if (suggestions.length) {\r\n                    this._renderSuggestions(query, suggestions);\r\n                } else if (!this.$lastSuggestion.length && this.templates.notFound) {\r\n                    this._renderNotFound(query);\r\n                }\r\n                this.trigger(\"rendered\", this.name, suggestions, true);\r\n            },\r\n            _renderSuggestions: function renderSuggestions(query, suggestions) {\r\n                var $fragment;\r\n                $fragment = this._getSuggestionsFragment(query, suggestions);\r\n                this.$lastSuggestion = $fragment.children().last();\r\n                this.$el.html($fragment).prepend(this._getHeader(query, suggestions)).append(this._getFooter(query, suggestions));\r\n            },\r\n            _appendSuggestions: function appendSuggestions(query, suggestions) {\r\n                var $fragment, $lastSuggestion;\r\n                $fragment = this._getSuggestionsFragment(query, suggestions);\r\n                $lastSuggestion = $fragment.children().last();\r\n                this.$lastSuggestion.after($fragment);\r\n                this.$lastSuggestion = $lastSuggestion;\r\n            },\r\n            _renderPending: function renderPending(query) {\r\n                var template = this.templates.pending;\r\n                this._resetLastSuggestion();\r\n                template && this.$el.html(template({\r\n                    query: query,\r\n                    dataset: this.name\r\n                }));\r\n            },\r\n            _renderNotFound: function renderNotFound(query) {\r\n                var template = this.templates.notFound;\r\n                this._resetLastSuggestion();\r\n                template && this.$el.html(template({\r\n                    query: query,\r\n                    dataset: this.name\r\n                }));\r\n            },\r\n            _empty: function empty() {\r\n                this.$el.empty();\r\n                this._resetLastSuggestion();\r\n            },\r\n            _getSuggestionsFragment: function getSuggestionsFragment(query, suggestions) {\r\n                var that = this, fragment;\r\n                fragment = document.createDocumentFragment();\r\n                _.each(suggestions, function getSuggestionNode(suggestion) {\r\n                    var $el, context;\r\n                    context = that._injectQuery(query, suggestion);\r\n                    $el = $(that.templates.suggestion(context)).data(keys.obj, suggestion).data(keys.val, that.displayFn(suggestion)).addClass(that.classes.suggestion + \" \" + that.classes.selectable);\r\n                    fragment.appendChild($el[0]);\r\n                });\r\n                this.highlight && highlight({\r\n                    className: this.classes.highlight,\r\n                    node: fragment,\r\n                    pattern: query\r\n                });\r\n                return $(fragment);\r\n            },\r\n            _getFooter: function getFooter(query, suggestions) {\r\n                return this.templates.footer ? this.templates.footer({\r\n                    query: query,\r\n                    suggestions: suggestions,\r\n                    dataset: this.name\r\n                }) : null;\r\n            },\r\n            _getHeader: function getHeader(query, suggestions) {\r\n                return this.templates.header ? this.templates.header({\r\n                    query: query,\r\n                    suggestions: suggestions,\r\n                    dataset: this.name\r\n                }) : null;\r\n            },\r\n            _resetLastSuggestion: function resetLastSuggestion() {\r\n                this.$lastSuggestion = $();\r\n            },\r\n            _injectQuery: function injectQuery(query, obj) {\r\n                return _.isObject(obj) ? _.mixin({\r\n                    _query: query\r\n                }, obj) : obj;\r\n            },\r\n            update: function update(query) {\r\n                var that = this, canceled = false, syncCalled = false, rendered = 0;\r\n                this.cancel();\r\n                this.cancel = function cancel() {\r\n                    canceled = true;\r\n                    that.cancel = $.noop;\r\n                    that.async && that.trigger(\"asyncCanceled\", query);\r\n                };\r\n                this.source(query, sync, async);\r\n                !syncCalled && sync([]);\r\n                function sync(suggestions) {\r\n                    if (syncCalled) {\r\n                        return;\r\n                    }\r\n                    syncCalled = true;\r\n                    suggestions = (suggestions || []).slice(0, that.limit);\r\n                    rendered = suggestions.length;\r\n                    that._overwrite(query, suggestions);\r\n                    if (rendered < that.limit && that.async) {\r\n                        that.trigger(\"asyncRequested\", query);\r\n                    }\r\n                }\r\n                function async(suggestions) {\r\n                    suggestions = suggestions || [];\r\n                    if (!canceled && rendered < that.limit) {\r\n                        that.cancel = $.noop;\r\n\r\n                        // start Brainjocks edited\r\n                        that._append(query, suggestions.slice(0, that.limit - rendered));\r\n                        rendered += suggestions.length;\r\n                        that.async && that.trigger(\"asyncReceived\", that, query);\r\n                        // end Brainjocks edited\r\n                    }\r\n                }\r\n            },\r\n            cancel: $.noop,\r\n            clear: function clear() {\r\n                this._empty();\r\n                this.cancel();\r\n                this.trigger(\"cleared\");\r\n            },\r\n            isEmpty: function isEmpty() {\r\n                return this.$el.is(\":empty\");\r\n            },\r\n            destroy: function destroy() {\r\n                this.$el = $(\"<div>\");\r\n            }\r\n        });\r\n        return Dataset;\r\n        function getDisplayFn(display) {\r\n            display = display || _.stringify;\r\n            return _.isFunction(display) ? display : displayFn;\r\n            function displayFn(obj) {\r\n                return obj[display];\r\n            }\r\n        }\r\n        function getTemplates(templates, displayFn) {\r\n            return {\r\n                notFound: templates.notFound && _.templatify(templates.notFound),\r\n                pending: templates.pending && _.templatify(templates.pending),\r\n                header: templates.header && _.templatify(templates.header),\r\n                footer: templates.footer && _.templatify(templates.footer),\r\n                suggestion: templates.suggestion || suggestionTemplate\r\n            };\r\n            function suggestionTemplate(context) {\r\n                return $(\"<div>\").text(displayFn(context));\r\n            }\r\n        }\r\n        function isValidName(str) {\r\n            return /^[_a-zA-Z0-9-]+$/.test(str);\r\n        }\r\n    }();\r\n    var Menu = function() {\r\n        \"use strict\";\r\n        function Menu(o, www) {\r\n            var that = this;\r\n            o = o || {};\r\n            if (!o.node) {\r\n                $.error(\"node is required\");\r\n            }\r\n            www.mixin(this);\r\n            this.$node = $(o.node);\r\n            this.query = null;\r\n            this.datasets = _.map(o.datasets, initializeDataset);\r\n            function initializeDataset(oDataset) {\r\n                var node = that.$node.find(oDataset.node).first();\r\n                oDataset.node = node.length ? node : $(\"<div>\").appendTo(that.$node);\r\n                return new Dataset(oDataset, www);\r\n            }\r\n        }\r\n        _.mixin(Menu.prototype, EventEmitter, {\r\n            _onSelectableClick: function onSelectableClick($e) {\r\n                this.trigger(\"selectableClicked\", $($e.currentTarget));\r\n            },\r\n            _onRendered: function onRendered(type, dataset, suggestions, async) {\r\n                this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty());\r\n                this.trigger(\"datasetRendered\", dataset, suggestions, async);\r\n            },\r\n            _onCleared: function onCleared() {\r\n                this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty());\r\n                this.trigger(\"datasetCleared\");\r\n            },\r\n            _propagate: function propagate() {\r\n                this.trigger.apply(this, arguments);\r\n            },\r\n            _allDatasetsEmpty: function allDatasetsEmpty() {\r\n                return _.every(this.datasets, isDatasetEmpty);\r\n                function isDatasetEmpty(dataset) {\r\n                    return dataset.isEmpty();\r\n                }\r\n            },\r\n            _getSelectables: function getSelectables() {\r\n                return this.$node.find(this.selectors.selectable);\r\n            },\r\n            _removeCursor: function _removeCursor() {\r\n                var $selectable = this.getActiveSelectable();\r\n                $selectable && $selectable.removeClass(this.classes.cursor);\r\n            },\r\n            _ensureVisible: function ensureVisible($el) {\r\n                var elTop, elBottom, nodeScrollTop, nodeHeight;\r\n                elTop = $el.position().top;\r\n                elBottom = elTop + $el.outerHeight(true);\r\n                nodeScrollTop = this.$node.scrollTop();\r\n                nodeHeight = this.$node.height() + parseInt(this.$node.css(\"paddingTop\"), 10) + parseInt(this.$node.css(\"paddingBottom\"), 10);\r\n                if (elTop < 0) {\r\n                    this.$node.scrollTop(nodeScrollTop + elTop);\r\n                } else if (nodeHeight < elBottom) {\r\n                    this.$node.scrollTop(nodeScrollTop + (elBottom - nodeHeight));\r\n                }\r\n            },\r\n            bind: function() {\r\n                var that = this, onSelectableClick;\r\n                onSelectableClick = _.bind(this._onSelectableClick, this);\r\n                this.$node.on(\"click.tt\", this.selectors.selectable, onSelectableClick);\r\n                _.each(this.datasets, function(dataset) {\r\n                    dataset.onSync(\"asyncRequested\", that._propagate, that).onSync(\"asyncCanceled\", that._propagate, that).onSync(\"asyncReceived\", that._propagate, that).onSync(\"rendered\", that._onRendered, that).onSync(\"cleared\", that._onCleared, that);\r\n                });\r\n                return this;\r\n            },\r\n            isOpen: function isOpen() {\r\n                return this.$node.hasClass(this.classes.open);\r\n            },\r\n            open: function open() {\r\n                this.$node.addClass(this.classes.open);\r\n            },\r\n            close: function close() {\r\n                this.$node.removeClass(this.classes.open);\r\n                this._removeCursor();\r\n            },\r\n            setLanguageDirection: function setLanguageDirection(dir) {\r\n                this.$node.attr(\"dir\", dir);\r\n            },\r\n            selectableRelativeToCursor: function selectableRelativeToCursor(delta) {\r\n                var $selectables, $oldCursor, oldIndex, newIndex;\r\n                $oldCursor = this.getActiveSelectable();\r\n                $selectables = this._getSelectables();\r\n                oldIndex = $oldCursor ? $selectables.index($oldCursor) : -1;\r\n                newIndex = oldIndex + delta;\r\n                newIndex = (newIndex + 1) % ($selectables.length + 1) - 1;\r\n                newIndex = newIndex < -1 ? $selectables.length - 1 : newIndex;\r\n                return newIndex === -1 ? null : $selectables.eq(newIndex);\r\n            },\r\n            setCursor: function setCursor($selectable) {\r\n                this._removeCursor();\r\n                if ($selectable = $selectable && $selectable.first()) {\r\n                    $selectable.addClass(this.classes.cursor);\r\n                    this._ensureVisible($selectable);\r\n                }\r\n            },\r\n            getSelectableData: function getSelectableData($el) {\r\n                return $el && $el.length ? Dataset.extractData($el) : null;\r\n            },\r\n            getActiveSelectable: function getActiveSelectable() {\r\n                var $selectable = this._getSelectables().filter(this.selectors.cursor).first();\r\n                return $selectable.length ? $selectable : null;\r\n            },\r\n            getTopSelectable: function getTopSelectable() {\r\n                var $selectable = this._getSelectables().first();\r\n                return $selectable.length ? $selectable : null;\r\n            },\r\n            update: function update(query) {\r\n                var isValidUpdate = query !== this.query;\r\n                if (isValidUpdate) {\r\n                    this.query = query;\r\n                    _.each(this.datasets, updateDataset);\r\n                }\r\n                return isValidUpdate;\r\n                function updateDataset(dataset) {\r\n                    dataset.update(query);\r\n                }\r\n            },\r\n            empty: function empty() {\r\n                _.each(this.datasets, clearDataset);\r\n                this.query = null;\r\n                this.$node.addClass(this.classes.empty);\r\n                function clearDataset(dataset) {\r\n                    dataset.clear();\r\n                }\r\n            },\r\n            destroy: function destroy() {\r\n                this.$node.off(\".tt\");\r\n                this.$node = $(\"<div>\");\r\n                _.each(this.datasets, destroyDataset);\r\n                function destroyDataset(dataset) {\r\n                    dataset.destroy();\r\n                }\r\n            }\r\n        });\r\n        return Menu;\r\n    }();\r\n    var DefaultMenu = function() {\r\n        \"use strict\";\r\n        var s = Menu.prototype;\r\n        function DefaultMenu() {\r\n            Menu.apply(this, [].slice.call(arguments, 0));\r\n        }\r\n        _.mixin(DefaultMenu.prototype, Menu.prototype, {\r\n            open: function open() {\r\n                !this._allDatasetsEmpty() && this._show();\r\n                return s.open.apply(this, [].slice.call(arguments, 0));\r\n            },\r\n            close: function close() {\r\n                this._hide();\r\n                return s.close.apply(this, [].slice.call(arguments, 0));\r\n            },\r\n            _onRendered: function onRendered() {\r\n                if (this._allDatasetsEmpty()) {\r\n                    this._hide();\r\n                } else {\r\n                    this.isOpen() && this._show();\r\n                }\r\n                return s._onRendered.apply(this, [].slice.call(arguments, 0));\r\n            },\r\n            _onCleared: function onCleared() {\r\n                if (this._allDatasetsEmpty()) {\r\n                    this._hide();\r\n                } else {\r\n                    this.isOpen() && this._show();\r\n                }\r\n                return s._onCleared.apply(this, [].slice.call(arguments, 0));\r\n            },\r\n            setLanguageDirection: function setLanguageDirection(dir) {\r\n                this.$node.css(dir === \"ltr\" ? this.css.ltr : this.css.rtl);\r\n                return s.setLanguageDirection.apply(this, [].slice.call(arguments, 0));\r\n            },\r\n            _hide: function hide() {\r\n                this.$node.hide();\r\n            },\r\n            _show: function show() {\r\n                this.$node.css(\"display\", \"block\");\r\n            }\r\n        });\r\n        return DefaultMenu;\r\n    }();\r\n    var Typeahead = function() {\r\n        \"use strict\";\r\n        function Typeahead(o, www) {\r\n            var onFocused, onBlurred, onEnterKeyed, onTabKeyed, onEscKeyed, onUpKeyed, onDownKeyed, onLeftKeyed, onRightKeyed, onQueryChanged, onWhitespaceChanged;\r\n            o = o || {};\r\n            if (!o.input) {\r\n                $.error(\"missing input\");\r\n            }\r\n            if (!o.menu) {\r\n                $.error(\"missing menu\");\r\n            }\r\n            if (!o.eventBus) {\r\n                $.error(\"missing event bus\");\r\n            }\r\n            www.mixin(this);\r\n            this.eventBus = o.eventBus;\r\n            this.minLength = _.isNumber(o.minLength) ? o.minLength : 1;\r\n            this.input = o.input;\r\n            this.menu = o.menu;\r\n            this.enabled = true;\r\n            this.active = false;\r\n            this.input.hasFocus() && this.activate();\r\n            this.dir = this.input.getLangDir();\r\n            this._hacks();\r\n            this.menu.bind().onSync(\"selectableClicked\", this._onSelectableClicked, this).onSync(\"asyncRequested\", this._onAsyncRequested, this).onSync(\"asyncCanceled\", this._onAsyncCanceled, this).onSync(\"asyncReceived\", this._onAsyncReceived, this).onSync(\"datasetRendered\", this._onDatasetRendered, this).onSync(\"datasetCleared\", this._onDatasetCleared, this);\r\n            onFocused = c(this, \"activate\", \"open\", \"_onFocused\");\r\n            onBlurred = c(this, \"deactivate\", \"_onBlurred\");\r\n            onEnterKeyed = c(this, \"isActive\", \"isOpen\", \"_onEnterKeyed\");\r\n            onTabKeyed = c(this, \"isActive\", \"isOpen\", \"_onTabKeyed\");\r\n            onEscKeyed = c(this, \"isActive\", \"_onEscKeyed\");\r\n            onUpKeyed = c(this, \"isActive\", \"open\", \"_onUpKeyed\");\r\n            onDownKeyed = c(this, \"isActive\", \"open\", \"_onDownKeyed\");\r\n            onLeftKeyed = c(this, \"isActive\", \"isOpen\", \"_onLeftKeyed\");\r\n            onRightKeyed = c(this, \"isActive\", \"isOpen\", \"_onRightKeyed\");\r\n            onQueryChanged = c(this, \"_openIfActive\", \"_onQueryChanged\");\r\n            onWhitespaceChanged = c(this, \"_openIfActive\", \"_onWhitespaceChanged\");\r\n            this.input.bind().onSync(\"focused\", onFocused, this).onSync(\"blurred\", onBlurred, this).onSync(\"enterKeyed\", onEnterKeyed, this).onSync(\"tabKeyed\", onTabKeyed, this).onSync(\"escKeyed\", onEscKeyed, this).onSync(\"upKeyed\", onUpKeyed, this).onSync(\"downKeyed\", onDownKeyed, this).onSync(\"leftKeyed\", onLeftKeyed, this).onSync(\"rightKeyed\", onRightKeyed, this).onSync(\"queryChanged\", onQueryChanged, this).onSync(\"whitespaceChanged\", onWhitespaceChanged, this).onSync(\"langDirChanged\", this._onLangDirChanged, this);\r\n        }\r\n        _.mixin(Typeahead.prototype, {\r\n            _hacks: function hacks() {\r\n                var $input, $menu;\r\n                $input = this.input.$input || $(\"<div>\");\r\n                $menu = this.menu.$node || $(\"<div>\");\r\n                $input.on(\"blur.tt\", function($e) {\r\n                    var active, isActive, hasActive;\r\n                    active = document.activeElement;\r\n                    isActive = $menu.is(active);\r\n                    hasActive = $menu.has(active).length > 0;\r\n                    if (_.isMsie() && (isActive || hasActive)) {\r\n                        $e.preventDefault();\r\n                        $e.stopImmediatePropagation();\r\n                        _.defer(function() {\r\n                            $input.focus();\r\n                        });\r\n                    }\r\n                });\r\n                $menu.on(\"mousedown.tt\", function($e) {\r\n                    $e.preventDefault();\r\n                });\r\n            },\r\n            _onSelectableClicked: function onSelectableClicked(type, $el) {\r\n                this.select($el);\r\n            },\r\n            _onDatasetCleared: function onDatasetCleared() {\r\n                this._updateHint();\r\n            },\r\n            _onDatasetRendered: function onDatasetRendered(type, dataset, suggestions, async) {\r\n                this._updateHint();\r\n                this.eventBus.trigger(\"render\", suggestions, async, dataset);\r\n            },\r\n            _onAsyncRequested: function onAsyncRequested(type, dataset, query) {\r\n                this.eventBus.trigger(\"asyncrequest\", query, dataset);\r\n            },\r\n            _onAsyncCanceled: function onAsyncCanceled(type, dataset, query) {\r\n                this.eventBus.trigger(\"asynccancel\", query, dataset);\r\n            },\r\n            _onAsyncReceived: function onAsyncReceived(type, dataset, query) {\r\n                this.eventBus.trigger(\"asyncreceive\", query, dataset);\r\n            },\r\n            _onFocused: function onFocused() {\r\n                this._minLengthMet() && this.menu.update(this.input.getQuery());\r\n            },\r\n            _onBlurred: function onBlurred() {\r\n                if (this.input.hasQueryChangedSinceLastFocus()) {\r\n                    this.eventBus.trigger(\"change\", this.input.getQuery());\r\n                }\r\n            },\r\n            _onEnterKeyed: function onEnterKeyed(type, $e) {\r\n                var $selectable;\r\n                if ($selectable = this.menu.getActiveSelectable()) {\r\n                    this.select($selectable) && $e.preventDefault();\r\n                }\r\n            },\r\n            _onTabKeyed: function onTabKeyed(type, $e) {\r\n                var $selectable;\r\n                if ($selectable = this.menu.getActiveSelectable()) {\r\n                    this.select($selectable) && $e.preventDefault();\r\n                } else if ($selectable = this.menu.getTopSelectable()) {\r\n                    this.autocomplete($selectable) && $e.preventDefault();\r\n                }\r\n            },\r\n            _onEscKeyed: function onEscKeyed() {\r\n                this.close();\r\n            },\r\n            _onUpKeyed: function onUpKeyed() {\r\n                this.moveCursor(-1);\r\n            },\r\n            _onDownKeyed: function onDownKeyed() {\r\n                this.moveCursor(+1);\r\n            },\r\n            _onLeftKeyed: function onLeftKeyed() {\r\n                if (this.dir === \"rtl\" && this.input.isCursorAtEnd()) {\r\n                    this.autocomplete(this.menu.getTopSelectable());\r\n                }\r\n            },\r\n            _onRightKeyed: function onRightKeyed() {\r\n                if (this.dir === \"ltr\" && this.input.isCursorAtEnd()) {\r\n                    this.autocomplete(this.menu.getTopSelectable());\r\n                }\r\n            },\r\n            _onQueryChanged: function onQueryChanged(e, query) {\r\n                this._minLengthMet(query) ? this.menu.update(query) : this.menu.empty();\r\n            },\r\n            _onWhitespaceChanged: function onWhitespaceChanged() {\r\n                this._updateHint();\r\n            },\r\n            _onLangDirChanged: function onLangDirChanged(e, dir) {\r\n                if (this.dir !== dir) {\r\n                    this.dir = dir;\r\n                    this.menu.setLanguageDirection(dir);\r\n                }\r\n            },\r\n            _openIfActive: function openIfActive() {\r\n                this.isActive() && this.open();\r\n            },\r\n            _minLengthMet: function minLengthMet(query) {\r\n                query = _.isString(query) ? query : this.input.getQuery() || \"\";\r\n                return query.length >= this.minLength;\r\n            },\r\n            _updateHint: function updateHint() {\r\n                var $selectable, data, val, query, escapedQuery, frontMatchRegEx, match;\r\n                $selectable = this.menu.getTopSelectable();\r\n                data = this.menu.getSelectableData($selectable);\r\n                val = this.input.getInputValue();\r\n                if (data && !_.isBlankString(val) && !this.input.hasOverflow()) {\r\n                    query = Input.normalizeQuery(val);\r\n                    escapedQuery = _.escapeRegExChars(query);\r\n                    frontMatchRegEx = new RegExp(\"^(?:\" + escapedQuery + \")(.+$)\", \"i\");\r\n                    match = frontMatchRegEx.exec(data.val);\r\n                    match && this.input.setHint(val + match[1]);\r\n                } else {\r\n                    this.input.clearHint();\r\n                }\r\n            },\r\n            isEnabled: function isEnabled() {\r\n                return this.enabled;\r\n            },\r\n            enable: function enable() {\r\n                this.enabled = true;\r\n            },\r\n            disable: function disable() {\r\n                this.enabled = false;\r\n            },\r\n            isActive: function isActive() {\r\n                return this.active;\r\n            },\r\n            activate: function activate() {\r\n                if (this.isActive()) {\r\n                    return true;\r\n                } else if (!this.isEnabled() || this.eventBus.before(\"active\")) {\r\n                    return false;\r\n                } else {\r\n                    this.active = true;\r\n                    this.eventBus.trigger(\"active\");\r\n                    return true;\r\n                }\r\n            },\r\n            deactivate: function deactivate() {\r\n                if (!this.isActive()) {\r\n                    return true;\r\n                } else if (this.eventBus.before(\"idle\")) {\r\n                    return false;\r\n                } else {\r\n                    this.active = false;\r\n                    this.close();\r\n                    this.eventBus.trigger(\"idle\");\r\n                    return true;\r\n                }\r\n            },\r\n            isOpen: function isOpen() {\r\n                return this.menu.isOpen();\r\n            },\r\n            open: function open() {\r\n                if (!this.isOpen() && !this.eventBus.before(\"open\")) {\r\n                    this.menu.open();\r\n                    this._updateHint();\r\n                    this.eventBus.trigger(\"open\");\r\n                }\r\n                return this.isOpen();\r\n            },\r\n            close: function close() {\r\n                if (this.isOpen() && !this.eventBus.before(\"close\")) {\r\n                    this.menu.close();\r\n                    this.input.clearHint();\r\n                    this.input.resetInputValue();\r\n                    this.eventBus.trigger(\"close\");\r\n                }\r\n                return !this.isOpen();\r\n            },\r\n            setVal: function setVal(val) {\r\n                this.input.setQuery(_.toStr(val));\r\n            },\r\n            getVal: function getVal() {\r\n                return this.input.getQuery();\r\n            },\r\n            select: function select($selectable) {\r\n                var data = this.menu.getSelectableData($selectable);\r\n                if (data && !this.eventBus.before(\"select\", data.obj)) {\r\n                    this.input.setQuery(data.val, true);\r\n                    this.eventBus.trigger(\"select\", data.obj);\r\n                    this.close();\r\n                    return true;\r\n                }\r\n                return false;\r\n            },\r\n            autocomplete: function autocomplete($selectable) {\r\n                var query, data, isValid;\r\n                query = this.input.getQuery();\r\n                data = this.menu.getSelectableData($selectable);\r\n                isValid = data && query !== data.val;\r\n                if (isValid && !this.eventBus.before(\"autocomplete\", data.obj)) {\r\n                    this.input.setQuery(data.val);\r\n                    this.eventBus.trigger(\"autocomplete\", data.obj);\r\n                    return true;\r\n                }\r\n                return false;\r\n            },\r\n            moveCursor: function moveCursor(delta) {\r\n                var query, $candidate, data, payload, cancelMove;\r\n                query = this.input.getQuery();\r\n                $candidate = this.menu.selectableRelativeToCursor(delta);\r\n                data = this.menu.getSelectableData($candidate);\r\n                payload = data ? data.obj : null;\r\n                cancelMove = this._minLengthMet() && this.menu.update(query);\r\n                if (!cancelMove && !this.eventBus.before(\"cursorchange\", payload)) {\r\n                    this.menu.setCursor($candidate);\r\n                    if (data) {\r\n                        this.input.setInputValue(data.val);\r\n                    } else {\r\n                        this.input.resetInputValue();\r\n                        this._updateHint();\r\n                    }\r\n                    this.eventBus.trigger(\"cursorchange\", payload);\r\n                    return true;\r\n                }\r\n                return false;\r\n            },\r\n            destroy: function destroy() {\r\n                this.input.destroy();\r\n                this.menu.destroy();\r\n            }\r\n        });\r\n        return Typeahead;\r\n        function c(ctx) {\r\n            var methods = [].slice.call(arguments, 1);\r\n            return function() {\r\n                var args = [].slice.call(arguments);\r\n                _.each(methods, function(method) {\r\n                    return ctx[method].apply(ctx, args);\r\n                });\r\n            };\r\n        }\r\n    }();\r\n    (function() {\r\n        \"use strict\";\r\n        var old, keys, methods;\r\n        old = $.fn.typeahead;\r\n        keys = {\r\n            www: \"tt-www\",\r\n            attrs: \"tt-attrs\",\r\n            typeahead: \"tt-typeahead\"\r\n        };\r\n        methods = {\r\n            initialize: function initialize(o, datasets) {\r\n                var www;\r\n                datasets = _.isArray(datasets) ? datasets : [].slice.call(arguments, 1);\r\n                o = o || {};\r\n                www = WWW(o.classNames);\r\n                return this.each(attach);\r\n                function attach() {\r\n                    var $input, $wrapper, $hint, $menu, defaultHint, defaultMenu, eventBus, input, menu, typeahead, MenuConstructor;\r\n                    _.each(datasets, function(d) {\r\n                        d.highlight = !!o.highlight;\r\n                    });\r\n                    $input = $(this);\r\n                    $wrapper = $(www.html.wrapper);\r\n                    $hint = $elOrNull(o.hint);\r\n                    $menu = $elOrNull(o.menu);\r\n                    defaultHint = o.hint !== false && !$hint;\r\n                    defaultMenu = o.menu !== false && !$menu;\r\n                    defaultHint && ($hint = buildHintFromInput($input, www));\r\n                    defaultMenu && ($menu = $(www.html.menu).css(www.css.menu));\r\n                    $hint && $hint.val(\"\");\r\n                    $input = prepInput($input, www);\r\n                    if (defaultHint || defaultMenu) {\r\n                        $wrapper.css(www.css.wrapper);\r\n                        $input.css(defaultHint ? www.css.input : www.css.inputWithNoHint);\r\n                        $input.wrap($wrapper).parent().prepend(defaultHint ? $hint : null).append(defaultMenu ? $menu : null);\r\n                    }\r\n                    MenuConstructor = defaultMenu ? DefaultMenu : Menu;\r\n                    eventBus = new EventBus({\r\n                        el: $input\r\n                    });\r\n                    input = new Input({\r\n                        hint: $hint,\r\n                        input: $input\r\n                    }, www);\r\n                    menu = new MenuConstructor({\r\n                        node: $menu,\r\n                        datasets: datasets\r\n                    }, www);\r\n                    typeahead = new Typeahead({\r\n                        input: input,\r\n                        menu: menu,\r\n                        eventBus: eventBus,\r\n                        minLength: o.minLength\r\n                    }, www);\r\n                    $input.data(keys.www, www);\r\n                    $input.data(keys.typeahead, typeahead);\r\n                }\r\n            },\r\n            isEnabled: function isEnabled() {\r\n                var enabled;\r\n                ttEach(this.first(), function(t) {\r\n                    enabled = t.isEnabled();\r\n                });\r\n                return enabled;\r\n            },\r\n            enable: function enable() {\r\n                ttEach(this, function(t) {\r\n                    t.enable();\r\n                });\r\n                return this;\r\n            },\r\n            disable: function disable() {\r\n                ttEach(this, function(t) {\r\n                    t.disable();\r\n                });\r\n                return this;\r\n            },\r\n            isActive: function isActive() {\r\n                var active;\r\n                ttEach(this.first(), function(t) {\r\n                    active = t.isActive();\r\n                });\r\n                return active;\r\n            },\r\n            activate: function activate() {\r\n                ttEach(this, function(t) {\r\n                    t.activate();\r\n                });\r\n                return this;\r\n            },\r\n            deactivate: function deactivate() {\r\n                ttEach(this, function(t) {\r\n                    t.deactivate();\r\n                });\r\n                return this;\r\n            },\r\n            isOpen: function isOpen() {\r\n                var open;\r\n                ttEach(this.first(), function(t) {\r\n                    open = t.isOpen();\r\n                });\r\n                return open;\r\n            },\r\n            open: function open() {\r\n                ttEach(this, function(t) {\r\n                    t.open();\r\n                });\r\n                return this;\r\n            },\r\n            close: function close() {\r\n                ttEach(this, function(t) {\r\n                    t.close();\r\n                });\r\n                return this;\r\n            },\r\n            select: function select(el) {\r\n                var success = false, $el = $(el);\r\n                ttEach(this.first(), function(t) {\r\n                    success = t.select($el);\r\n                });\r\n                return success;\r\n            },\r\n            autocomplete: function autocomplete(el) {\r\n                var success = false, $el = $(el);\r\n                ttEach(this.first(), function(t) {\r\n                    success = t.autocomplete($el);\r\n                });\r\n                return success;\r\n            },\r\n            moveCursor: function moveCursoe(delta) {\r\n                var success = false;\r\n                ttEach(this.first(), function(t) {\r\n                    success = t.moveCursor(delta);\r\n                });\r\n                return success;\r\n            },\r\n            val: function val(newVal) {\r\n                var query;\r\n                if (!arguments.length) {\r\n                    ttEach(this.first(), function(t) {\r\n                        query = t.getVal();\r\n                    });\r\n                    return query;\r\n                } else {\r\n                    ttEach(this, function(t) {\r\n                        t.setVal(newVal);\r\n                    });\r\n                    return this;\r\n                }\r\n            },\r\n            destroy: function destroy() {\r\n                ttEach(this, function(typeahead, $input) {\r\n                    revert($input);\r\n                    typeahead.destroy();\r\n                });\r\n                return this;\r\n            }\r\n        };\r\n        $.fn.typeahead = function(method) {\r\n            if (methods[method]) {\r\n                return methods[method].apply(this, [].slice.call(arguments, 1));\r\n            } else {\r\n                return methods.initialize.apply(this, arguments);\r\n            }\r\n        };\r\n        $.fn.typeahead.noConflict = function noConflict() {\r\n            $.fn.typeahead = old;\r\n            return this;\r\n        };\r\n        function ttEach($els, fn) {\r\n            $els.each(function() {\r\n                var $input = $(this), typeahead;\r\n                (typeahead = $input.data(keys.typeahead)) && fn(typeahead, $input);\r\n            });\r\n        }\r\n        function buildHintFromInput($input, www) {\r\n            return $input.clone().addClass(www.classes.hint).removeData().css(www.css.hint).css(getBackgroundStyles($input)).prop(\"readonly\", true).removeAttr(\"id name placeholder required\").attr({\r\n                autocomplete: \"off\",\r\n                spellcheck: \"false\",\r\n                tabindex: -1\r\n            });\r\n        }\r\n        function prepInput($input, www) {\r\n            $input.data(keys.attrs, {\r\n                dir: $input.attr(\"dir\"),\r\n                autocomplete: $input.attr(\"autocomplete\"),\r\n                spellcheck: $input.attr(\"spellcheck\"),\r\n                style: $input.attr(\"style\")\r\n            });\r\n            $input.addClass(www.classes.input).attr({\r\n                autocomplete: \"off\",\r\n                spellcheck: false\r\n            });\r\n            try {\r\n                !$input.attr(\"dir\") && $input.attr(\"dir\", \"auto\");\r\n            } catch (e) {}\r\n            return $input;\r\n        }\r\n        function getBackgroundStyles($el) {\r\n            return {\r\n                backgroundAttachment: $el.css(\"background-attachment\"),\r\n                backgroundClip: $el.css(\"background-clip\"),\r\n                backgroundColor: $el.css(\"background-color\"),\r\n                backgroundImage: $el.css(\"background-image\"),\r\n                backgroundOrigin: $el.css(\"background-origin\"),\r\n                backgroundPosition: $el.css(\"background-position\"),\r\n                backgroundRepeat: $el.css(\"background-repeat\"),\r\n                backgroundSize: $el.css(\"background-size\")\r\n            };\r\n        }\r\n        function revert($input) {\r\n            var www, $wrapper;\r\n            www = $input.data(keys.www);\r\n            $wrapper = $input.parent().filter(www.selectors.wrapper);\r\n            _.each($input.data(keys.attrs), function(val, key) {\r\n                _.isUndefined(val) ? $input.removeAttr(key) : $input.attr(key, val);\r\n            });\r\n            $input.removeData(keys.typeahead).removeData(keys.www).removeData(keys.attr).removeClass(www.classes.input);\r\n            if ($wrapper.length) {\r\n                $input.detach().insertAfter($wrapper);\r\n                $wrapper.remove();\r\n            }\r\n        }\r\n        function $elOrNull(obj) {\r\n            var isValid, $el;\r\n            isValid = _.isJQuery(obj) || _.isElement(obj);\r\n            $el = isValid ? $(obj).first() : [];\r\n            return $el.length ? $el : null;\r\n        }\r\n    })();\r\n});\n",
    "/*\r\n picturefill - v3.0.2 - 2016-02-12\r\n https://scottjehl.github.io/picturefill/\r\n Copyright (c) 2016 https://github.com/scottjehl/picturefill/blob/master/Authors.txt; Licensed MIT\r\n Gecko-Picture - v1.0\r\n https://github.com/scottjehl/picturefill/tree/3.0/src/plugins/gecko-picture\r\n Firefox's early picture implementation (prior to FF41) is static and does\r\n not react to viewport changes. This tiny module fixes this.\r\n Picturefill - v3.0.2\r\n http://scottjehl.github.io/picturefill\r\n Copyright (c) 2015 https://github.com/scottjehl/picturefill/blob/master/Authors.txt;\r\n  License: MIT\r\n*/\r\n(function(g){var f=navigator.userAgent;g.HTMLPictureElement&&/ecko/.test(f)&&f.match(/rv\\:(\\d+)/)&&45>RegExp.$1&&addEventListener(\"resize\",function(){var f,w=document.createElement(\"source\"),K=function(p){var f=p.parentNode;if(\"PICTURE\"===f.nodeName.toUpperCase()){var g=w.cloneNode();f.insertBefore(g,f.firstElementChild);setTimeout(function(){f.removeChild(g)})}else if(!p._pfLastSize||p.offsetWidth>p._pfLastSize){p._pfLastSize=p.offsetWidth;var b=p.sizes;p.sizes+=\",100vw\";setTimeout(function(){p.sizes=\r\nb})}},L=function(){var f,g=document.querySelectorAll(\"picture > img, img[srcset][sizes]\");for(f=0;f<g.length;f++)K(g[f])},y=function(){clearTimeout(f);f=setTimeout(L,99)},A=g.matchMedia&&matchMedia(\"(orientation: landscape)\"),E=function(){y();A&&A.addListener&&A.addListener(y)};w.srcset=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\";/^[c|i]|d$/.test(document.readyState||\"\")?E():document.addEventListener(\"DOMContentLoaded\",E);return y}())})(window);\r\n(function(g,f,J){function w(a){return\" \"===a||\"\\t\"===a||\"\\n\"===a||\"\\f\"===a||\"\\r\"===a}function K(a,b){var d=new g.Image;d.onerror=function(){t[a]=!1;q()};d.onload=function(){t[a]=1===d.width;q()};d.src=b;return\"pending\"}function L(a,b){return a.res-b.res}function y(a,c){var d;if(a&&c){var e=b.parseSet(c);a=b.makeUrl(a);for(d=0;d<e.length;d++)if(a===b.makeUrl(e[d].url)){var m=e[d];break}}return m}function A(a,b){function d(b){if(b=b.exec(a.substring(g)))return b=b[0],g+=b.length,b}function e(){var a=\r\n!1,e,d,c,m,h={};for(m=0;m<f.length;m++){var k=f[m];var l=k[k.length-1];k=k.substring(0,k.length-1);var g=parseInt(k,10);var M=parseFloat(k);if(U.test(k)&&\"w\"===l){if(e||d)a=!0;0===g?a=!0:e=g}else if(aa.test(k)&&\"x\"===l){if(e||d||c)a=!0;0>M?a=!0:d=M}else if(U.test(k)&&\"h\"===l){if(c||d)a=!0;0===g?a=!0:c=g}else a=!0}a||(h.url=B,e&&(h.w=e),d&&(h.d=d),c&&(h.h=c),c||d||e||(h.d=1),1===h.d&&(b.has1x=!0),h.set=b,r.push(h))}for(var c=a.length,B,f,h,k,l,g=0,r=[];;){d(ba);if(g>=c)return r;B=d(ca);f=[];if(\",\"===\r\nB.slice(-1))B=B.replace(da,\"\"),e();else for(d(ea),h=\"\",k=\"in descriptor\";;){l=a.charAt(g);if(\"in descriptor\"===k)if(w(l))h&&(f.push(h),h=\"\",k=\"after descriptor\");else if(\",\"===l){g+=1;h&&f.push(h);e();break}else if(\"(\"===l)h+=l,k=\"in parens\";else if(\"\"===l){h&&f.push(h);e();break}else h+=l;else if(\"in parens\"===k)if(\")\"===l)h+=l,k=\"in descriptor\";else if(\"\"===l){f.push(h);e();break}else h+=l;else if(\"after descriptor\"===k&&!w(l))if(\"\"===l){e();break}else k=\"in descriptor\",--g;g+=1}}}function E(a){function c(a){return d.test(a)&&\r\n0<=parseFloat(a)||e.test(a)||\"0\"===a||\"-0\"===a||\"+0\"===a?!0:!1}var d=/^(?:[+-]?[0-9]+|[0-9]*\\.[0-9]+)(?:[eE][+-]?[0-9]+)?(?:ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmin|vmax|vw)$/i,e=/^calc\\((?:[0-9a-z \\.\\+\\-\\*\\/\\(\\)]+)\\)$/i;var m=function(a){function b(){c&&(m.push(c),c=\"\")}function d(){m[0]&&(h.push(m),m=[])}for(var e,c=\"\",m=[],h=[],g=0,f=0,k=!1;;){e=a.charAt(f);if(\"\"===e)return b(),d(),h;if(k)\"*\"===e&&\"/\"===a[f+1]?(k=!1,f+=2,b()):f+=1;else{if(w(e))if(a.charAt(f-1)&&w(a.charAt(f-1))||!c){f+=1;continue}else if(0===\r\ng){b();f+=1;continue}else e=\" \";else if(\"(\"===e)g+=1;else if(\")\"===e)--g;else if(\",\"===e){b();d();f+=1;continue}else if(\"/\"===e&&\"*\"===a.charAt(f+1)){k=!0;f+=2;continue}c+=e;f+=1}}}(a);var f=m.length;for(a=0;a<f;a++){var g=m[a];var h=g[g.length-1];if(c(h)){g.pop();if(0===g.length)return h;g=g.join(\" \");if(b.matchesMedia(g))return h}}return\"100vw\"}f.createElement(\"picture\");var p,T,D,b={},N=!1,F=function(){},v=f.createElement(\"img\"),O=v.getAttribute,V=v.setAttribute,W=v.removeAttribute,u=f.documentElement,\r\nt={},G={algorithm:\"\"},x=navigator.userAgent,fa=/rident/.test(x)||/ecko/.test(x)&&x.match(/rv\\:(\\d+)/)&&35<RegExp.$1,P=\"currentSrc\",ha=/\\s+\\+?\\d+(e\\d+)?w/,ia=/(\\([^)]+\\))?\\s*(.+)/;x=g.picturefillCFG;var H=!0,z={},I={},C=g.devicePixelRatio,n={px:1,\"in\":96},X=f.createElement(\"a\"),Q=!1,ea=/^[ \\t\\n\\r\\u000c]+/,ba=/^[, \\t\\n\\r\\u000c]+/,ca=/^[^ \\t\\n\\r\\u000c]+/,da=/[,]+$/,U=/^\\d+$/,aa=/^-?(?:[0-9]+|[0-9]*\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/,Y=function(a,b,d,e){a.addEventListener?a.addEventListener(b,d,e||!1):a.attachEvent&&\r\na.attachEvent(\"on\"+b,d)},R=function(a){var b={};return function(d){d in b||(b[d]=a(d));return b[d]}},Z=function(){var a=/^([\\d\\.]+)(em|vw|px)$/,b=function(){for(var a=arguments,b=0,d=a[0];++b in a;)d=d.replace(a[b],a[++b]);return d},d=R(function(a){return\"return \"+b((a||\"\").toLowerCase(),/\\band\\b/g,\"&&\",/,/g,\"||\",/min-([a-z-\\s]+):/g,\"e.$1>=\",/max-([a-z-\\s]+):/g,\"e.$1<=\",/calc([^)]+)/g,\"($1)\",/(\\d+[\\.]*[\\d]*)([a-z]+)/g,\"($1 * e.$2)\",/^(?!(e.[a-z]|[0-9\\.&=|><\\+\\-\\*\\(\\)\\/])).*/ig,\"\")+\";\"});return function(b,\r\nc){var e;if(!(b in z))if(z[b]=!1,c&&(e=b.match(a)))z[b]=e[1]*n[e[2]];else try{z[b]=(new Function(\"e\",d(b)))(n)}catch(M){}return z[b]}}(),S=function(a,c){a.w?(a.cWidth=b.calcListLength(c||\"100vw\"),a.res=a.w/a.cWidth):a.res=a.d;return a},q=function(a){if(N){var c,d,e=a||{};e.elements&&1===e.elements.nodeType&&(\"IMG\"===e.elements.nodeName.toUpperCase()?e.elements=[e.elements]:(e.context=e.elements,e.elements=null));a=e.elements||b.qsa(e.context||f,e.reevaluate||e.reselect?b.sel:b.selShort);if(d=a.length){b.setupRun(e);\r\nQ=!0;for(c=0;c<d;c++)b.fillImg(a[c],e);b.teardownRun(e)}}};P in v||(P=\"src\");t[\"image/jpeg\"]=!0;t[\"image/gif\"]=!0;t[\"image/png\"]=!0;t[\"image/svg+xml\"]=f.implementation.hasFeature(\"http://www.w3.org/TR/SVG11/feature#Image\",\"1.1\");b.ns=(\"pf\"+(new Date).getTime()).substr(0,9);b.supSrcset=\"srcset\"in v;b.supSizes=\"sizes\"in v;b.supPicture=!!g.HTMLPictureElement;b.supSrcset&&b.supPicture&&!b.supSizes&&function(a){v.srcset=\"data:,a\";a.src=\"data:,a\";b.supSrcset=v.complete===a.complete;b.supPicture=b.supSrcset&&\r\nb.supPicture}(f.createElement(\"img\"));b.supSrcset&&!b.supSizes?function(){var a=f.createElement(\"img\"),c=function(){2===a.width&&(b.supSizes=!0);T=b.supSrcset&&!b.supSizes;N=!0;setTimeout(q)};a.onload=c;a.onerror=c;a.setAttribute(\"sizes\",\"9px\");a.srcset=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== 1w,data:image/gif;base64,R0lGODlhAgABAPAAAP///wAAACH5BAAAAAAALAAAAAACAAEAAAICBAoAOw== 9w\";a.src=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\"}():\r\nN=!0;b.selShort=\"picture>img,img[srcset]\";b.sel=b.selShort;b.cfg=G;b.DPR=C||1;b.u=n;b.types=t;b.setSize=F;b.makeUrl=R(function(a){X.href=a;return X.href});b.qsa=function(a,b){return\"querySelector\"in a?a.querySelectorAll(b):[]};b.matchesMedia=function(){g.matchMedia&&(matchMedia(\"(min-width: 0.1em)\")||{}).matches?b.matchesMedia=function(a){return!a||matchMedia(a).matches}:b.matchesMedia=b.mMQ;return b.matchesMedia.apply(this,arguments)};b.mMQ=function(a){return a?Z(a):!0};b.calcLength=function(a){a=\r\nZ(a,!0)||!1;0>a&&(a=!1);return a};b.supportsType=function(a){return a?t[a]:!0};b.parseSize=R(function(a){a=(a||\"\").match(ia);return{media:a&&a[1],length:a&&a[2]}});b.parseSet=function(a){a.cands||(a.cands=A(a.srcset,a));return a.cands};b.getEmValue=function(){var a;if(!p&&(a=f.body)){var b=f.createElement(\"div\"),d=u.style.cssText,e=a.style.cssText;b.style.cssText=\"position:absolute;left:0;visibility:hidden;display:block;padding:0;border:none;font-size:1em;width:1em;overflow:hidden;clip:rect(0px, 0px, 0px, 0px)\";\r\nu.style.cssText=\"font-size:100%!important;\";a.style.cssText=\"font-size:100%!important;\";a.appendChild(b);p=b.offsetWidth;a.removeChild(b);p=parseFloat(p,10);u.style.cssText=d;a.style.cssText=e}return p||16};b.calcListLength=function(a){if(!(a in I)||G.uT){var c=b.calcLength(E(a));I[a]=c?c:n.width}return I[a]};b.setRes=function(a){if(a){var c=b.parseSet(a);for(var d=0,e=c.length;d<e;d++)S(c[d],a.sizes)}return c};b.setRes.res=S;b.applySetCandidate=function(a,c){if(a.length){var d,e,m=c[b.ns];var f=\r\nb.DPR;var g=m.curSrc||c[P];if(!(d=m.curCan)){d=g;var h=a[0].set;!h&&d&&(h=(h=c[b.ns].sets)&&h[h.length-1]);if(h=y(d,h))d=b.makeUrl(d),c[b.ns].curSrc=d,c[b.ns].curCan=h,h.res||S(h,h.set.sizes);d=h}if(d&&d.set===a[0].set){var k=fa&&!c.complete&&d.res-.1>f;k||(d.cached=!0,d.res>=f&&(e=d))}if(!e){a.sort(L);var l=a.length;e=a[l-1];for(h=0;h<l;h++)if(d=a[h],d.res>=f){e=h-1;if(k=a[e]&&(k||g!==b.makeUrl(d.url)))h=a[e].res,l=d.res,\"saveData\"===G.algorithm?2.7<h?k=f+1:(k=Math.pow(h-.6,1.5),l=(l-f)*k,a[e].cached&&\r\n(l+=.1*k),k=h+l):k=1<f?Math.sqrt(h*l):h,k=k>f;e=k?a[e]:d;break}}e&&(f=b.makeUrl(e.url),m.curSrc=f,m.curCan=e,f!==g&&b.setSrc(c,e),b.setSize(c))}};b.setSrc=function(a,b){a.src=b.url;if(\"image/svg+xml\"===b.set.type){var d=a.style.width;a.style.width=a.offsetWidth+1+\"px\";a.offsetWidth+1&&(a.style.width=d)}};b.getSet=function(a){var c,d=!1,e=a[b.ns].sets;for(a=0;a<e.length&&!d;a++){var f=e[a];if(f.srcset&&b.matchesMedia(f.media)&&(c=b.supportsType(f.type))){\"pending\"===c&&(f=c);d=f;break}}return d};b.parseSets=\r\nfunction(a,f,d){var e=f&&\"PICTURE\"===f.nodeName.toUpperCase(),c=a[b.ns];if(c.src===J||d.src)c.src=O.call(a,\"src\"),c.src?V.call(a,\"data-pfsrc\",c.src):W.call(a,\"data-pfsrc\");if(c.srcset===J||d.srcset||!b.supSrcset||a.srcset){var g=O.call(a,\"srcset\");c.srcset=g;var p=!0}c.sets=[];if(e){c.pic=!0;d=c.sets;var h,k,l=f.getElementsByTagName(\"source\");f=0;for(h=l.length;f<h;f++){var n=l[f];n[b.ns]=!0;(k=n.getAttribute(\"srcset\"))&&d.push({srcset:k,media:n.getAttribute(\"media\"),type:n.getAttribute(\"type\"),sizes:n.getAttribute(\"sizes\")})}}if(c.srcset){var r=\r\n{srcset:c.srcset,sizes:O.call(a,\"sizes\")};c.sets.push(r);var q=(T||c.src)&&ha.test(c.srcset||\"\");q||!c.src||y(c.src,r)||r.has1x||(r.srcset+=\", \"+c.src,r.cands.push({url:c.src,d:1,set:r}))}else c.src&&c.sets.push({srcset:c.src,sizes:null});c.curCan=null;c.curSrc=J;c.supported=!(e||r&&!b.supSrcset||q&&!b.supSizes);p&&b.supSrcset&&!c.supported&&(g?(V.call(a,\"data-pfsrcset\",g),a.srcset=\"\"):W.call(a,\"data-pfsrcset\"));c.supported&&!c.srcset&&(!c.src&&a.src||a.src!==b.makeUrl(c.src))&&(null===c.src?a.removeAttribute(\"src\"):\r\na.src=c.src);c.parsed=!0};b.fillImg=function(a,c){var d=c.reselect||c.reevaluate;a[b.ns]||(a[b.ns]={});var e=a[b.ns];if(d||e.evaled!==D)e.parsed&&!c.reevaluate||b.parseSets(a,a.parentNode,c),e.supported?e.evaled=D:(d=b.getSet(a),e=!1,\"pending\"!==d&&(e=D,d&&(d=b.setRes(d),b.applySetCandidate(d,a))),a[b.ns].evaled=e)};b.setupRun=function(){if(!Q||H||C!==g.devicePixelRatio)H=!1,C=g.devicePixelRatio,z={},I={},b.DPR=C||1,n.width=Math.max(g.innerWidth||0,u.clientWidth),n.height=Math.max(g.innerHeight||\r\n0,u.clientHeight),n.vw=n.width/100,n.vh=n.height/100,D=[n.height,n.width,C].join(\"-\"),n.em=b.getEmValue(),n.rem=n.em};b.supPicture?(q=F,b.fillImg=F):function(){var a,c=g.attachEvent?/d$|^c/:/d$|^c|^i/,d=function(){var g=f.readyState||\"\";e=setTimeout(d,\"loading\"===g?200:999);f.body&&(b.fillImgs(),(a=a||c.test(g))&&clearTimeout(e))},e=setTimeout(d,f.body?9:99),m=u.clientHeight;Y(g,\"resize\",function(a,b){var c,d,e=function(){var f=new Date-d;f<b?c=setTimeout(e,b-f):(c=null,a())};return function(){d=\r\nnew Date;c||(c=setTimeout(e,b))}}(function(){H=Math.max(g.innerWidth||0,u.clientWidth)!==n.width||u.clientHeight!==m;m=u.clientHeight;H&&b.fillImgs()},99));Y(f,\"readystatechange\",d)}();b.picturefill=q;b.fillImgs=q;b.teardownRun=F;q._=b;for(g.picturefillCFG={pf:b,push:function(a){var c=a.shift();\"function\"===typeof b[c]?b[c].apply(b,a):(G[c]=a[0],Q&&b.fillImgs({reselect:!0}))}};x&&x.length;)g.picturefillCFG.push(x.shift());g.picturefill=q;\"object\"===typeof module&&\"object\"===typeof module.exports?\r\nmodule.exports=q:\"function\"===typeof define&&define.amd&&define(\"picturefill\",[],function(){return q});b.supPicture||(t[\"image/webp\"]=K(\"image/webp\",\"data:image/webp;base64,UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAABBxAR/Q9ERP8DAABWUDggGAAAADABAJ0BKgEAAQADADQlpAADcAD++/1QAA==\"))})(window,document);\n",
    "/*! =======================================================\r\n                      VERSION  9.8.1              \r\n========================================================= */\r\n\"use strict\";var _typeof=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&\"function\"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?\"symbol\":typeof a},windowIsDefined=\"object\"===(\"undefined\"==typeof window?\"undefined\":_typeof(window));!function(a){if(\"function\"==typeof define&&define.amd)define('bootstrapslider',[\"jquery\"],a);else if(\"object\"===(\"undefined\"==typeof module?\"undefined\":_typeof(module))&&module.exports){var b;try{b=require(\"jquery\")}catch(c){b=null}module.exports=a(b)}else window&&(window.Slider=a(window.jQuery))}(function(a){var b=\"slider\",c=\"bootstrapSlider\";windowIsDefined&&!window.console&&(window.console={}),windowIsDefined&&!window.console.log&&(window.console.log=function(){}),windowIsDefined&&!window.console.warn&&(window.console.warn=function(){});var d;return function(a){function b(){}function c(a){function c(b){b.prototype.option||(b.prototype.option=function(b){a.isPlainObject(b)&&(this.options=a.extend(!0,this.options,b))})}function e(b,c){a.fn[b]=function(e){if(\"string\"==typeof e){for(var g=d.call(arguments,1),h=0,i=this.length;i>h;h++){var j=this[h],k=a.data(j,b);if(k)if(a.isFunction(k[e])&&\"_\"!==e.charAt(0)){var l=k[e].apply(k,g);if(void 0!==l&&l!==k)return l}else f(\"no such method '\"+e+\"' for \"+b+\" instance\");else f(\"cannot call methods on \"+b+\" prior to initialization; attempted to call '\"+e+\"'\")}return this}var m=this.map(function(){var d=a.data(this,b);return d?(d.option(e),d._init()):(d=new c(this,e),a.data(this,b,d)),a(this)});return!m||m.length>1?m:m[0]}}if(a){var f=\"undefined\"==typeof console?b:function(a){console.error(a)};return a.bridget=function(a,b){c(b),e(a,b)},a.bridget}}var d=Array.prototype.slice;c(a)}(a),function(a){function e(b,c){function d(a,b){var c=\"data-slider-\"+b.replace(/_/g,\"-\"),d=a.getAttribute(c);try{return JSON.parse(d)}catch(e){return d}}this._state={value:null,enabled:null,offset:null,size:null,percentage:null,inDrag:!1,over:!1},this.ticksCallbackMap={},this.handleCallbackMap={},\"string\"==typeof b?this.element=document.querySelector(b):b instanceof HTMLElement&&(this.element=b),c=c?c:{};for(var e=Object.keys(this.defaultOptions),f=0;f<e.length;f++){var h=e[f],i=c[h];i=\"undefined\"!=typeof i?i:d(this.element,h),i=null!==i?i:this.defaultOptions[h],this.options||(this.options={}),this.options[h]=i}\"auto\"===this.options.rtl&&(this.options.rtl=\"rtl\"===window.getComputedStyle(this.element).direction),\"vertical\"!==this.options.orientation||\"top\"!==this.options.tooltip_position&&\"bottom\"!==this.options.tooltip_position?\"horizontal\"!==this.options.orientation||\"left\"!==this.options.tooltip_position&&\"right\"!==this.options.tooltip_position||(this.options.tooltip_position=\"top\"):this.options.rtl?this.options.tooltip_position=\"left\":this.options.tooltip_position=\"right\";var j,k,l,m,n,o=this.element.style.width,p=!1,q=this.element.parentNode;if(this.sliderElem)p=!0;else{this.sliderElem=document.createElement(\"div\"),this.sliderElem.className=\"slider\";var r=document.createElement(\"div\");r.className=\"slider-track\",k=document.createElement(\"div\"),k.className=\"slider-track-low\",j=document.createElement(\"div\"),j.className=\"slider-selection\",l=document.createElement(\"div\"),l.className=\"slider-track-high\",m=document.createElement(\"div\"),m.className=\"slider-handle min-slider-handle\",m.setAttribute(\"role\",\"slider\"),m.setAttribute(\"aria-valuemin\",this.options.min),m.setAttribute(\"aria-valuemax\",this.options.max),n=document.createElement(\"div\"),n.className=\"slider-handle max-slider-handle\",n.setAttribute(\"role\",\"slider\"),n.setAttribute(\"aria-valuemin\",this.options.min),n.setAttribute(\"aria-valuemax\",this.options.max),r.appendChild(k),r.appendChild(j),r.appendChild(l),this.rangeHighlightElements=[];var s=this.options.rangeHighlights;if(Array.isArray(s)&&s.length>0)for(var t=0;t<s.length;t++){var u=document.createElement(\"div\"),v=s[t][\"class\"]||\"\";u.className=\"slider-rangeHighlight slider-selection \"+v,this.rangeHighlightElements.push(u),r.appendChild(u)}var w=Array.isArray(this.options.labelledby);if(w&&this.options.labelledby[0]&&m.setAttribute(\"aria-labelledby\",this.options.labelledby[0]),w&&this.options.labelledby[1]&&n.setAttribute(\"aria-labelledby\",this.options.labelledby[1]),!w&&this.options.labelledby&&(m.setAttribute(\"aria-labelledby\",this.options.labelledby),n.setAttribute(\"aria-labelledby\",this.options.labelledby)),this.ticks=[],Array.isArray(this.options.ticks)&&this.options.ticks.length>0){for(this.ticksContainer=document.createElement(\"div\"),this.ticksContainer.className=\"slider-tick-container\",f=0;f<this.options.ticks.length;f++){var x=document.createElement(\"div\");if(x.className=\"slider-tick\",this.options.ticks_tooltip){var y=this._addTickListener(),z=y.addMouseEnter(this,x,f),A=y.addMouseLeave(this,x);this.ticksCallbackMap[f]={mouseEnter:z,mouseLeave:A}}this.ticks.push(x),this.ticksContainer.appendChild(x)}j.className+=\" tick-slider-selection\"}if(this.tickLabels=[],Array.isArray(this.options.ticks_labels)&&this.options.ticks_labels.length>0)for(this.tickLabelContainer=document.createElement(\"div\"),this.tickLabelContainer.className=\"slider-tick-label-container\",f=0;f<this.options.ticks_labels.length;f++){var B=document.createElement(\"div\"),C=0===this.options.ticks_positions.length,D=this.options.reversed&&C?this.options.ticks_labels.length-(f+1):f;B.className=\"slider-tick-label\",B.innerHTML=this.options.ticks_labels[D],this.tickLabels.push(B),this.tickLabelContainer.appendChild(B)}var E=function(a){var b=document.createElement(\"div\");b.className=\"tooltip-arrow\";var c=document.createElement(\"div\");c.className=\"tooltip-inner\",a.appendChild(b),a.appendChild(c)},F=document.createElement(\"div\");F.className=\"tooltip tooltip-main\",F.setAttribute(\"role\",\"presentation\"),E(F);var G=document.createElement(\"div\");G.className=\"tooltip tooltip-min\",G.setAttribute(\"role\",\"presentation\"),E(G);var H=document.createElement(\"div\");H.className=\"tooltip tooltip-max\",H.setAttribute(\"role\",\"presentation\"),E(H),this.sliderElem.appendChild(r),this.sliderElem.appendChild(F),this.sliderElem.appendChild(G),this.sliderElem.appendChild(H),this.tickLabelContainer&&this.sliderElem.appendChild(this.tickLabelContainer),this.ticksContainer&&this.sliderElem.appendChild(this.ticksContainer),this.sliderElem.appendChild(m),this.sliderElem.appendChild(n),q.insertBefore(this.sliderElem,this.element),this.element.style.display=\"none\"}if(a&&(this.$element=a(this.element),this.$sliderElem=a(this.sliderElem)),this.eventToCallbackMap={},this.sliderElem.id=this.options.id,this.touchCapable=\"ontouchstart\"in window||window.DocumentTouch&&document instanceof window.DocumentTouch,this.touchX=0,this.touchY=0,this.tooltip=this.sliderElem.querySelector(\".tooltip-main\"),this.tooltipInner=this.tooltip.querySelector(\".tooltip-inner\"),this.tooltip_min=this.sliderElem.querySelector(\".tooltip-min\"),this.tooltipInner_min=this.tooltip_min.querySelector(\".tooltip-inner\"),this.tooltip_max=this.sliderElem.querySelector(\".tooltip-max\"),this.tooltipInner_max=this.tooltip_max.querySelector(\".tooltip-inner\"),g[this.options.scale]&&(this.options.scale=g[this.options.scale]),p===!0&&(this._removeClass(this.sliderElem,\"slider-horizontal\"),this._removeClass(this.sliderElem,\"slider-vertical\"),this._removeClass(this.sliderElem,\"slider-rtl\"),this._removeClass(this.tooltip,\"hide\"),this._removeClass(this.tooltip_min,\"hide\"),this._removeClass(this.tooltip_max,\"hide\"),[\"left\",\"right\",\"top\",\"width\",\"height\"].forEach(function(a){this._removeProperty(this.trackLow,a),this._removeProperty(this.trackSelection,a),this._removeProperty(this.trackHigh,a)},this),[this.handle1,this.handle2].forEach(function(a){this._removeProperty(a,\"left\"),this._removeProperty(a,\"right\"),this._removeProperty(a,\"top\")},this),[this.tooltip,this.tooltip_min,this.tooltip_max].forEach(function(a){this._removeProperty(a,\"left\"),this._removeProperty(a,\"right\"),this._removeProperty(a,\"top\"),this._removeProperty(a,\"margin-left\"),this._removeProperty(a,\"margin-right\"),this._removeProperty(a,\"margin-top\"),this._removeClass(a,\"right\"),this._removeClass(a,\"left\"),this._removeClass(a,\"top\")},this)),\"vertical\"===this.options.orientation?(this._addClass(this.sliderElem,\"slider-vertical\"),this.stylePos=\"top\",this.mousePos=\"pageY\",this.sizePos=\"offsetHeight\"):(this._addClass(this.sliderElem,\"slider-horizontal\"),this.sliderElem.style.width=o,this.options.orientation=\"horizontal\",this.options.rtl?this.stylePos=\"right\":this.stylePos=\"left\",this.mousePos=\"pageX\",this.sizePos=\"offsetWidth\"),this.options.rtl&&this._addClass(this.sliderElem,\"slider-rtl\"),this._setTooltipPosition(),Array.isArray(this.options.ticks)&&this.options.ticks.length>0&&(this.options.max=Math.max.apply(Math,this.options.ticks),this.options.min=Math.min.apply(Math,this.options.ticks)),Array.isArray(this.options.value)?(this.options.range=!0,this._state.value=this.options.value):this.options.range?this._state.value=[this.options.value,this.options.max]:this._state.value=this.options.value,this.trackLow=k||this.trackLow,this.trackSelection=j||this.trackSelection,this.trackHigh=l||this.trackHigh,\"none\"===this.options.selection?(this._addClass(this.trackLow,\"hide\"),this._addClass(this.trackSelection,\"hide\"),this._addClass(this.trackHigh,\"hide\")):(\"after\"===this.options.selection||\"before\"===this.options.selection)&&(this._removeClass(this.trackLow,\"hide\"),this._removeClass(this.trackSelection,\"hide\"),this._removeClass(this.trackHigh,\"hide\")),this.handle1=m||this.handle1,this.handle2=n||this.handle2,p===!0)for(this._removeClass(this.handle1,\"round triangle\"),this._removeClass(this.handle2,\"round triangle hide\"),f=0;f<this.ticks.length;f++)this._removeClass(this.ticks[f],\"round triangle hide\");var I=[\"round\",\"triangle\",\"custom\"],J=-1!==I.indexOf(this.options.handle);if(J)for(this._addClass(this.handle1,this.options.handle),this._addClass(this.handle2,this.options.handle),f=0;f<this.ticks.length;f++)this._addClass(this.ticks[f],this.options.handle);if(this._state.offset=this._offset(this.sliderElem),this._state.size=this.sliderElem[this.sizePos],this.setValue(this._state.value),this.handle1Keydown=this._keydown.bind(this,0),this.handle1.addEventListener(\"keydown\",this.handle1Keydown,!1),this.handle2Keydown=this._keydown.bind(this,1),this.handle2.addEventListener(\"keydown\",this.handle2Keydown,!1),this.mousedown=this._mousedown.bind(this),this.touchstart=this._touchstart.bind(this),this.touchmove=this._touchmove.bind(this),this.touchCapable){var K=!1;try{var L=Object.defineProperty({},\"passive\",{get:function(){K=!0}});window.addEventListener(\"test\",null,L)}catch(M){}var N=K?{passive:!0}:!1;this.sliderElem.addEventListener(\"touchstart\",this.touchstart,N),this.sliderElem.addEventListener(\"touchmove\",this.touchmove,N)}if(this.sliderElem.addEventListener(\"mousedown\",this.mousedown,!1),this.resize=this._resize.bind(this),window.addEventListener(\"resize\",this.resize,!1),\"hide\"===this.options.tooltip)this._addClass(this.tooltip,\"hide\"),this._addClass(this.tooltip_min,\"hide\"),this._addClass(this.tooltip_max,\"hide\");else if(\"always\"===this.options.tooltip)this._showTooltip(),this._alwaysShowTooltip=!0;else{if(this.showTooltip=this._showTooltip.bind(this),this.hideTooltip=this._hideTooltip.bind(this),this.options.ticks_tooltip){var O=this._addTickListener(),P=O.addMouseEnter(this,this.handle1),Q=O.addMouseLeave(this,this.handle1);this.handleCallbackMap.handle1={mouseEnter:P,mouseLeave:Q},P=O.addMouseEnter(this,this.handle2),Q=O.addMouseLeave(this,this.handle2),this.handleCallbackMap.handle2={mouseEnter:P,mouseLeave:Q}}else this.sliderElem.addEventListener(\"mouseenter\",this.showTooltip,!1),this.sliderElem.addEventListener(\"mouseleave\",this.hideTooltip,!1);this.handle1.addEventListener(\"focus\",this.showTooltip,!1),this.handle1.addEventListener(\"blur\",this.hideTooltip,!1),this.handle2.addEventListener(\"focus\",this.showTooltip,!1),this.handle2.addEventListener(\"blur\",this.hideTooltip,!1)}this.options.enabled?this.enable():this.disable()}var f={formatInvalidInputErrorMsg:function(a){return\"Invalid input value '\"+a+\"' passed in\"},callingContextNotSliderInstance:\"Calling context element does not have instance of Slider bound to it. Check your code to make sure the JQuery object returned from the call to the slider() initializer is calling the method\"},g={linear:{toValue:function(a){var b=a/100*(this.options.max-this.options.min),c=!0;if(this.options.ticks_positions.length>0){for(var d,e,f,g=0,h=1;h<this.options.ticks_positions.length;h++)if(a<=this.options.ticks_positions[h]){d=this.options.ticks[h-1],f=this.options.ticks_positions[h-1],e=this.options.ticks[h],g=this.options.ticks_positions[h];break}var i=(a-f)/(g-f);b=d+i*(e-d),c=!1}var j=c?this.options.min:0,k=j+Math.round(b/this.options.step)*this.options.step;return k<this.options.min?this.options.min:k>this.options.max?this.options.max:k},toPercentage:function(a){if(this.options.max===this.options.min)return 0;if(this.options.ticks_positions.length>0){for(var b,c,d,e=0,f=0;f<this.options.ticks.length;f++)if(a<=this.options.ticks[f]){b=f>0?this.options.ticks[f-1]:0,d=f>0?this.options.ticks_positions[f-1]:0,c=this.options.ticks[f],e=this.options.ticks_positions[f];break}if(f>0){var g=(a-b)/(c-b);return d+g*(e-d)}}return 100*(a-this.options.min)/(this.options.max-this.options.min)}},logarithmic:{toValue:function(a){var b=0===this.options.min?0:Math.log(this.options.min),c=Math.log(this.options.max),d=Math.exp(b+(c-b)*a/100);return Math.round(d)===this.options.max?this.options.max:(d=this.options.min+Math.round((d-this.options.min)/this.options.step)*this.options.step,d<this.options.min?this.options.min:d>this.options.max?this.options.max:d)},toPercentage:function(a){if(this.options.max===this.options.min)return 0;var b=Math.log(this.options.max),c=0===this.options.min?0:Math.log(this.options.min),d=0===a?0:Math.log(a);return 100*(d-c)/(b-c)}}};if(d=function(a,b){return e.call(this,a,b),this},d.prototype={_init:function(){},constructor:d,defaultOptions:{id:\"\",min:0,max:10,step:1,precision:0,orientation:\"horizontal\",value:5,range:!1,selection:\"before\",tooltip:\"show\",tooltip_split:!1,handle:\"round\",reversed:!1,rtl:\"auto\",enabled:!0,formatter:function(a){return Array.isArray(a)?a[0]+\" : \"+a[1]:a},natural_arrow_keys:!1,ticks:[],ticks_positions:[],ticks_labels:[],ticks_snap_bounds:0,ticks_tooltip:!1,scale:\"linear\",focus:!1,tooltip_position:null,labelledby:null,rangeHighlights:[]},getElement:function(){return this.sliderElem},getValue:function(){return this.options.range?this._state.value:this._state.value[0]},setValue:function(a,b,c){a||(a=0);var d=this.getValue();this._state.value=this._validateInputValue(a);var e=this._applyPrecision.bind(this);this.options.range?(this._state.value[0]=e(this._state.value[0]),this._state.value[1]=e(this._state.value[1]),this._state.value[0]=Math.max(this.options.min,Math.min(this.options.max,this._state.value[0])),this._state.value[1]=Math.max(this.options.min,Math.min(this.options.max,this._state.value[1]))):(this._state.value=e(this._state.value),this._state.value=[Math.max(this.options.min,Math.min(this.options.max,this._state.value))],this._addClass(this.handle2,\"hide\"),\"after\"===this.options.selection?this._state.value[1]=this.options.max:this._state.value[1]=this.options.min),this.options.max>this.options.min?this._state.percentage=[this._toPercentage(this._state.value[0]),this._toPercentage(this._state.value[1]),100*this.options.step/(this.options.max-this.options.min)]:this._state.percentage=[0,0,100],this._layout();var f=this.options.range?this._state.value:this._state.value[0];return this._setDataVal(f),b===!0&&this._trigger(\"slide\",f),d!==f&&c===!0&&this._trigger(\"change\",{oldValue:d,newValue:f}),this},destroy:function(){this._removeSliderEventHandlers(),this.sliderElem.parentNode.removeChild(this.sliderElem),this.element.style.display=\"\",this._cleanUpEventCallbacksMap(),this.element.removeAttribute(\"data\"),a&&(this._unbindJQueryEventHandlers(),this.$element.removeData(\"slider\"))},disable:function(){return this._state.enabled=!1,this.handle1.removeAttribute(\"tabindex\"),this.handle2.removeAttribute(\"tabindex\"),this._addClass(this.sliderElem,\"slider-disabled\"),this._trigger(\"slideDisabled\"),this},enable:function(){return this._state.enabled=!0,this.handle1.setAttribute(\"tabindex\",0),this.handle2.setAttribute(\"tabindex\",0),this._removeClass(this.sliderElem,\"slider-disabled\"),this._trigger(\"slideEnabled\"),this},toggle:function(){return this._state.enabled?this.disable():this.enable(),this},isEnabled:function(){return this._state.enabled},on:function(a,b){return this._bindNonQueryEventHandler(a,b),this},off:function(b,c){a?(this.$element.off(b,c),this.$sliderElem.off(b,c)):this._unbindNonQueryEventHandler(b,c)},getAttribute:function(a){return a?this.options[a]:this.options},setAttribute:function(a,b){return this.options[a]=b,this},refresh:function(){return this._removeSliderEventHandlers(),e.call(this,this.element,this.options),a&&a.data(this.element,\"slider\",this),this},relayout:function(){return this._resize(),this._layout(),this},_removeSliderEventHandlers:function(){if(this.handle1.removeEventListener(\"keydown\",this.handle1Keydown,!1),this.handle2.removeEventListener(\"keydown\",this.handle2Keydown,!1),this.options.ticks_tooltip){for(var a=this.ticksContainer.getElementsByClassName(\"slider-tick\"),b=0;b<a.length;b++)a[b].removeEventListener(\"mouseenter\",this.ticksCallbackMap[b].mouseEnter,!1),a[b].removeEventListener(\"mouseleave\",this.ticksCallbackMap[b].mouseLeave,!1);this.handle1.removeEventListener(\"mouseenter\",this.handleCallbackMap.handle1.mouseEnter,!1),this.handle2.removeEventListener(\"mouseenter\",this.handleCallbackMap.handle2.mouseEnter,!1),this.handle1.removeEventListener(\"mouseleave\",this.handleCallbackMap.handle1.mouseLeave,!1),this.handle2.removeEventListener(\"mouseleave\",this.handleCallbackMap.handle2.mouseLeave,!1)}this.handleCallbackMap=null,this.ticksCallbackMap=null,this.showTooltip&&(this.handle1.removeEventListener(\"focus\",this.showTooltip,!1),this.handle2.removeEventListener(\"focus\",this.showTooltip,!1)),this.hideTooltip&&(this.handle1.removeEventListener(\"blur\",this.hideTooltip,!1),this.handle2.removeEventListener(\"blur\",this.hideTooltip,!1)),this.showTooltip&&this.sliderElem.removeEventListener(\"mouseenter\",this.showTooltip,!1),this.hideTooltip&&this.sliderElem.removeEventListener(\"mouseleave\",this.hideTooltip,!1),this.sliderElem.removeEventListener(\"touchstart\",this.touchstart,!1),this.sliderElem.removeEventListener(\"touchmove\",this.touchmove,!1),this.sliderElem.removeEventListener(\"mousedown\",this.mousedown,!1),window.removeEventListener(\"resize\",this.resize,!1)},_bindNonQueryEventHandler:function(a,b){void 0===this.eventToCallbackMap[a]&&(this.eventToCallbackMap[a]=[]),this.eventToCallbackMap[a].push(b)},_unbindNonQueryEventHandler:function(a,b){var c=this.eventToCallbackMap[a];if(void 0!==c)for(var d=0;d<c.length;d++)if(c[d]===b){c.splice(d,1);break}},_cleanUpEventCallbacksMap:function(){for(var a=Object.keys(this.eventToCallbackMap),b=0;b<a.length;b++){var c=a[b];delete this.eventToCallbackMap[c]}},_showTooltip:function(){this.options.tooltip_split===!1?(this._addClass(this.tooltip,\"in\"),this.tooltip_min.style.display=\"none\",this.tooltip_max.style.display=\"none\"):(this._addClass(this.tooltip_min,\"in\"),this._addClass(this.tooltip_max,\"in\"),this.tooltip.style.display=\"none\"),this._state.over=!0},_hideTooltip:function(){this._state.inDrag===!1&&this.alwaysShowTooltip!==!0&&(this._removeClass(this.tooltip,\"in\"),this._removeClass(this.tooltip_min,\"in\"),this._removeClass(this.tooltip_max,\"in\")),this._state.over=!1},_setToolTipOnMouseOver:function(a){function b(a,b){return b?[100-a.percentage[0],this.options.range?100-a.percentage[1]:a.percentage[1]]:[a.percentage[0],a.percentage[1]]}var c=this.options.formatter(a?a.value[0]:this._state.value[0]),d=a?b(a,this.options.reversed):b(this._state,this.options.reversed);this._setText(this.tooltipInner,c),this.tooltip.style[this.stylePos]=d[0]+\"%\",\"vertical\"===this.options.orientation?this._css(this.tooltip,\"margin-\"+this.stylePos,-this.tooltip.offsetHeight/2+\"px\"):this._css(this.tooltip,\"margin-\"+this.stylePos,-this.tooltip.offsetWidth/2+\"px\")},_addTickListener:function(){return{addMouseEnter:function(a,b,c){var d=function(){var b=a._state,d=c>=0?c:this.attributes[\"aria-valuenow\"].value,e=parseInt(d,10);b.value[0]=e,b.percentage[0]=a.options.ticks_positions[e],a._setToolTipOnMouseOver(b),a._showTooltip()};return b.addEventListener(\"mouseenter\",d,!1),d},addMouseLeave:function(a,b){var c=function(){a._hideTooltip()};return b.addEventListener(\"mouseleave\",c,!1),c}}},_layout:function(){var a;if(a=this.options.reversed?[100-this._state.percentage[0],this.options.range?100-this._state.percentage[1]:this._state.percentage[1]]:[this._state.percentage[0],this._state.percentage[1]],this.handle1.style[this.stylePos]=a[0]+\"%\",this.handle1.setAttribute(\"aria-valuenow\",this._state.value[0]),isNaN(this.options.formatter(this._state.value[0]))&&this.handle1.setAttribute(\"aria-valuetext\",this.options.formatter(this._state.value[0])),this.handle2.style[this.stylePos]=a[1]+\"%\",this.handle2.setAttribute(\"aria-valuenow\",this._state.value[1]),isNaN(this.options.formatter(this._state.value[1]))&&this.handle2.setAttribute(\"aria-valuetext\",this.options.formatter(this._state.value[1])),this.rangeHighlightElements.length>0&&Array.isArray(this.options.rangeHighlights)&&this.options.rangeHighlights.length>0)for(var b=0;b<this.options.rangeHighlights.length;b++){var c=this._toPercentage(this.options.rangeHighlights[b].start),d=this._toPercentage(this.options.rangeHighlights[b].end);if(this.options.reversed){var e=100-d;d=100-c,c=e}var f=this._createHighlightRange(c,d);f?\"vertical\"===this.options.orientation?(this.rangeHighlightElements[b].style.top=f.start+\"%\",this.rangeHighlightElements[b].style.height=f.size+\"%\"):(this.options.rtl?this.rangeHighlightElements[b].style.right=f.start+\"%\":this.rangeHighlightElements[b].style.left=f.start+\"%\",this.rangeHighlightElements[b].style.width=f.size+\"%\"):this.rangeHighlightElements[b].style.display=\"none\"}if(Array.isArray(this.options.ticks)&&this.options.ticks.length>0){var g,h=\"vertical\"===this.options.orientation?\"height\":\"width\";g=\"vertical\"===this.options.orientation?\"marginTop\":this.options.rtl?\"marginRight\":\"marginLeft\";var i=this._state.size/(this.options.ticks.length-1);if(this.tickLabelContainer){var j=0;if(0===this.options.ticks_positions.length)\"vertical\"!==this.options.orientation&&(this.tickLabelContainer.style[g]=-i/2+\"px\"),j=this.tickLabelContainer.offsetHeight;else for(k=0;k<this.tickLabelContainer.childNodes.length;k++)this.tickLabelContainer.childNodes[k].offsetHeight>j&&(j=this.tickLabelContainer.childNodes[k].offsetHeight);\"horizontal\"===this.options.orientation&&(this.sliderElem.style.marginBottom=j+\"px\")}for(var k=0;k<this.options.ticks.length;k++){var l=this.options.ticks_positions[k]||this._toPercentage(this.options.ticks[k]);this.options.reversed&&(l=100-l),this.ticks[k].style[this.stylePos]=l+\"%\",this._removeClass(this.ticks[k],\"in-selection\"),this.options.range?l>=a[0]&&l<=a[1]&&this._addClass(this.ticks[k],\"in-selection\"):\"after\"===this.options.selection&&l>=a[0]?this._addClass(this.ticks[k],\"in-selection\"):\"before\"===this.options.selection&&l<=a[0]&&this._addClass(this.ticks[k],\"in-selection\"),this.tickLabels[k]&&(this.tickLabels[k].style[h]=i+\"px\",\"vertical\"!==this.options.orientation&&void 0!==this.options.ticks_positions[k]?(this.tickLabels[k].style.position=\"absolute\",this.tickLabels[k].style[this.stylePos]=l+\"%\",this.tickLabels[k].style[g]=-i/2+\"px\"):\"vertical\"===this.options.orientation&&(this.options.rtl?this.tickLabels[k].style.marginRight=this.sliderElem.offsetWidth+\"px\":this.tickLabels[k].style.marginLeft=this.sliderElem.offsetWidth+\"px\",this.tickLabelContainer.style[g]=this.sliderElem.offsetWidth/2*-1+\"px\"))}}var m;if(this.options.range){m=this.options.formatter(this._state.value),this._setText(this.tooltipInner,m),this.tooltip.style[this.stylePos]=(a[1]+a[0])/2+\"%\",\"vertical\"===this.options.orientation?this._css(this.tooltip,\"margin-\"+this.stylePos,-this.tooltip.offsetHeight/2+\"px\"):this._css(this.tooltip,\"margin-\"+this.stylePos,-this.tooltip.offsetWidth/2+\"px\");var n=this.options.formatter(this._state.value[0]);this._setText(this.tooltipInner_min,n);var o=this.options.formatter(this._state.value[1]);this._setText(this.tooltipInner_max,o),this.tooltip_min.style[this.stylePos]=a[0]+\"%\",\"vertical\"===this.options.orientation?this._css(this.tooltip_min,\"margin-\"+this.stylePos,-this.tooltip_min.offsetHeight/2+\"px\"):this._css(this.tooltip_min,\"margin-\"+this.stylePos,-this.tooltip_min.offsetWidth/2+\"px\"),this.tooltip_max.style[this.stylePos]=a[1]+\"%\",\"vertical\"===this.options.orientation?this._css(this.tooltip_max,\"margin-\"+this.stylePos,-this.tooltip_max.offsetHeight/2+\"px\"):this._css(this.tooltip_max,\"margin-\"+this.stylePos,-this.tooltip_max.offsetWidth/2+\"px\")}else m=this.options.formatter(this._state.value[0]),this._setText(this.tooltipInner,m),this.tooltip.style[this.stylePos]=a[0]+\"%\",\"vertical\"===this.options.orientation?this._css(this.tooltip,\"margin-\"+this.stylePos,-this.tooltip.offsetHeight/2+\"px\"):this._css(this.tooltip,\"margin-\"+this.stylePos,-this.tooltip.offsetWidth/2+\"px\");if(\"vertical\"===this.options.orientation)this.trackLow.style.top=\"0\",this.trackLow.style.height=Math.min(a[0],a[1])+\"%\",this.trackSelection.style.top=Math.min(a[0],a[1])+\"%\",this.trackSelection.style.height=Math.abs(a[0]-a[1])+\"%\",this.trackHigh.style.bottom=\"0\",this.trackHigh.style.height=100-Math.min(a[0],a[1])-Math.abs(a[0]-a[1])+\"%\";else{\"right\"===this.stylePos?this.trackLow.style.right=\"0\":this.trackLow.style.left=\"0\",this.trackLow.style.width=Math.min(a[0],a[1])+\"%\",\"right\"===this.stylePos?this.trackSelection.style.right=Math.min(a[0],a[1])+\"%\":this.trackSelection.style.left=Math.min(a[0],a[1])+\"%\",this.trackSelection.style.width=Math.abs(a[0]-a[1])+\"%\",\"right\"===this.stylePos?this.trackHigh.style.left=\"0\":this.trackHigh.style.right=\"0\",this.trackHigh.style.width=100-Math.min(a[0],a[1])-Math.abs(a[0]-a[1])+\"%\";var p=this.tooltip_min.getBoundingClientRect(),q=this.tooltip_max.getBoundingClientRect();\"bottom\"===this.options.tooltip_position?p.right>q.left?(this._removeClass(this.tooltip_max,\"bottom\"),this._addClass(this.tooltip_max,\"top\"),this.tooltip_max.style.top=\"\",this.tooltip_max.style.bottom=\"22px\"):(this._removeClass(this.tooltip_max,\"top\"),this._addClass(this.tooltip_max,\"bottom\"),this.tooltip_max.style.top=this.tooltip_min.style.top,this.tooltip_max.style.bottom=\"\"):p.right>q.left?(this._removeClass(this.tooltip_max,\"top\"),this._addClass(this.tooltip_max,\"bottom\"),this.tooltip_max.style.top=\"18px\"):(this._removeClass(this.tooltip_max,\"bottom\"),this._addClass(this.tooltip_max,\"top\"),this.tooltip_max.style.top=this.tooltip_min.style.top)}},_createHighlightRange:function(a,b){return this._isHighlightRange(a,b)?a>b?{start:b,size:a-b}:{start:a,size:b-a}:null},_isHighlightRange:function(a,b){return a>=0&&100>=a&&b>=0&&100>=b?!0:!1},_resize:function(a){this._state.offset=this._offset(this.sliderElem),this._state.size=this.sliderElem[this.sizePos],this._layout()},_removeProperty:function(a,b){a.style.removeProperty?a.style.removeProperty(b):a.style.removeAttribute(b)},_mousedown:function(a){if(!this._state.enabled)return!1;this._state.offset=this._offset(this.sliderElem),this._state.size=this.sliderElem[this.sizePos];var b=this._getPercentage(a);if(this.options.range){var c=Math.abs(this._state.percentage[0]-b),d=Math.abs(this._state.percentage[1]-b);this._state.dragged=d>c?0:1,this._adjustPercentageForRangeSliders(b)}else this._state.dragged=0;this._state.percentage[this._state.dragged]=b,this._layout(),this.touchCapable&&(document.removeEventListener(\"touchmove\",this.mousemove,!1),document.removeEventListener(\"touchend\",this.mouseup,!1)),this.mousemove&&document.removeEventListener(\"mousemove\",this.mousemove,!1),this.mouseup&&document.removeEventListener(\"mouseup\",this.mouseup,!1),this.mousemove=this._mousemove.bind(this),this.mouseup=this._mouseup.bind(this),this.touchCapable&&(document.addEventListener(\"touchmove\",this.mousemove,!1),document.addEventListener(\"touchend\",this.mouseup,!1)),document.addEventListener(\"mousemove\",this.mousemove,!1),document.addEventListener(\"mouseup\",this.mouseup,!1),this._state.inDrag=!0;var e=this._calculateValue();return this._trigger(\"slideStart\",e),this._setDataVal(e),this.setValue(e,!1,!0),a.returnValue=!1,this.options.focus&&this._triggerFocusOnHandle(this._state.dragged),!0},_touchstart:function(a){if(void 0===a.changedTouches)return void this._mousedown(a);var b=a.changedTouches[0];this.touchX=b.pageX,this.touchY=b.pageY},_triggerFocusOnHandle:function(a){0===a&&this.handle1.focus(),1===a&&this.handle2.focus()},_keydown:function(a,b){if(!this._state.enabled)return!1;var c;switch(b.keyCode){case 37:case 40:c=-1;break;case 39:case 38:c=1}if(c){if(this.options.natural_arrow_keys){var d=\"vertical\"===this.options.orientation&&!this.options.reversed,e=\"horizontal\"===this.options.orientation&&this.options.reversed;(d||e)&&(c=-c)}var f=this._state.value[a]+c*this.options.step,g=f/this.options.max*100;if(this._state.keyCtrl=a,this.options.range){this._adjustPercentageForRangeSliders(g);var h=this._state.keyCtrl?this._state.value[0]:f,i=this._state.keyCtrl?f:this._state.value[1];f=[h,i]}return this._trigger(\"slideStart\",f),this._setDataVal(f),this.setValue(f,!0,!0),this._setDataVal(f),this._trigger(\"slideStop\",f),this._layout(),this._pauseEvent(b),delete this._state.keyCtrl,!1}},_pauseEvent:function(a){a.stopPropagation&&a.stopPropagation(),a.preventDefault&&a.preventDefault(),a.cancelBubble=!0,a.returnValue=!1},_mousemove:function(a){if(!this._state.enabled)return!1;var b=this._getPercentage(a);this._adjustPercentageForRangeSliders(b),this._state.percentage[this._state.dragged]=b,this._layout();var c=this._calculateValue(!0);return this.setValue(c,!0,!0),!1},_touchmove:function(a){if(void 0!==a.changedTouches){var b=a.changedTouches[0],c=b.pageX-this.touchX,d=b.pageY-this.touchY;this._state.inDrag||(\"vertical\"===this.options.orientation&&5>=c&&c>=-5&&(d>=15||-15>=d)?this._mousedown(a):5>=d&&d>=-5&&(c>=15||-15>=c)&&this._mousedown(a))}},_adjustPercentageForRangeSliders:function(a){if(this.options.range){var b=this._getNumDigitsAfterDecimalPlace(a);b=b?b-1:0;var c=this._applyToFixedAndParseFloat(a,b);0===this._state.dragged&&this._applyToFixedAndParseFloat(this._state.percentage[1],b)<c?(this._state.percentage[0]=this._state.percentage[1],this._state.dragged=1):1===this._state.dragged&&this._applyToFixedAndParseFloat(this._state.percentage[0],b)>c?(this._state.percentage[1]=this._state.percentage[0],this._state.dragged=0):0===this._state.keyCtrl&&this._state.value[1]/this.options.max*100<a?(this._state.percentage[0]=this._state.percentage[1],this._state.keyCtrl=1,this.handle2.focus()):1===this._state.keyCtrl&&this._state.value[0]/this.options.max*100>a&&(this._state.percentage[1]=this._state.percentage[0],this._state.keyCtrl=0,this.handle1.focus())}},_mouseup:function(){if(!this._state.enabled)return!1;this.touchCapable&&(document.removeEventListener(\"touchmove\",this.mousemove,!1),document.removeEventListener(\"touchend\",this.mouseup,!1)),document.removeEventListener(\"mousemove\",this.mousemove,!1),document.removeEventListener(\"mouseup\",this.mouseup,!1),this._state.inDrag=!1,this._state.over===!1&&this._hideTooltip();var a=this._calculateValue(!0);return this._layout(),this._setDataVal(a),this._trigger(\"slideStop\",a),!1},_calculateValue:function(a){var b;if(this.options.range?(b=[this.options.min,this.options.max],0!==this._state.percentage[0]&&(b[0]=this._toValue(this._state.percentage[0]),b[0]=this._applyPrecision(b[0])),100!==this._state.percentage[1]&&(b[1]=this._toValue(this._state.percentage[1]),b[1]=this._applyPrecision(b[1]))):(b=this._toValue(this._state.percentage[0]),b=parseFloat(b),b=this._applyPrecision(b)),a){for(var c=[b,1/0],d=0;d<this.options.ticks.length;d++){\r\nvar e=Math.abs(this.options.ticks[d]-b);e<=c[1]&&(c=[this.options.ticks[d],e])}if(c[1]<=this.options.ticks_snap_bounds)return c[0]}return b},_applyPrecision:function(a){var b=this.options.precision||this._getNumDigitsAfterDecimalPlace(this.options.step);return this._applyToFixedAndParseFloat(a,b)},_getNumDigitsAfterDecimalPlace:function(a){var b=(\"\"+a).match(/(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/);return b?Math.max(0,(b[1]?b[1].length:0)-(b[2]?+b[2]:0)):0},_applyToFixedAndParseFloat:function(a,b){var c=a.toFixed(b);return parseFloat(c)},_getPercentage:function(a){!this.touchCapable||\"touchstart\"!==a.type&&\"touchmove\"!==a.type||(a=a.touches[0]);var b=a[this.mousePos],c=this._state.offset[this.stylePos],d=b-c;\"right\"===this.stylePos&&(d=-d);var e=d/this._state.size*100;return e=Math.round(e/this._state.percentage[2])*this._state.percentage[2],this.options.reversed&&(e=100-e),Math.max(0,Math.min(100,e))},_validateInputValue:function(a){if(isNaN(+a)){if(Array.isArray(a))return this._validateArray(a),a;throw new Error(f.formatInvalidInputErrorMsg(a))}return+a},_validateArray:function(a){for(var b=0;b<a.length;b++){var c=a[b];if(\"number\"!=typeof c)throw new Error(f.formatInvalidInputErrorMsg(c))}},_setDataVal:function(a){this.element.setAttribute(\"data-value\",a),this.element.setAttribute(\"value\",a),this.element.value=a},_trigger:function(b,c){c=c||0===c?c:void 0;var d=this.eventToCallbackMap[b];if(d&&d.length)for(var e=0;e<d.length;e++){var f=d[e];f(c)}a&&this._triggerJQueryEvent(b,c)},_triggerJQueryEvent:function(a,b){var c={type:a,value:b};this.$element.trigger(c),this.$sliderElem.trigger(c)},_unbindJQueryEventHandlers:function(){this.$element.off(),this.$sliderElem.off()},_setText:function(a,b){\"undefined\"!=typeof a.textContent?a.textContent=b:\"undefined\"!=typeof a.innerText&&(a.innerText=b)},_removeClass:function(a,b){for(var c=b.split(\" \"),d=a.className,e=0;e<c.length;e++){var f=c[e],g=new RegExp(\"(?:\\\\s|^)\"+f+\"(?:\\\\s|$)\");d=d.replace(g,\" \")}a.className=d.trim()},_addClass:function(a,b){for(var c=b.split(\" \"),d=a.className,e=0;e<c.length;e++){var f=c[e],g=new RegExp(\"(?:\\\\s|^)\"+f+\"(?:\\\\s|$)\"),h=g.test(d);h||(d+=\" \"+f)}a.className=d.trim()},_offsetLeft:function(a){return a.getBoundingClientRect().left},_offsetRight:function(a){return a.getBoundingClientRect().right},_offsetTop:function(a){for(var b=a.offsetTop;(a=a.offsetParent)&&!isNaN(a.offsetTop);)b+=a.offsetTop,\"BODY\"!==a.tagName&&(b-=a.scrollTop);return b},_offset:function(a){return{left:this._offsetLeft(a),right:this._offsetRight(a),top:this._offsetTop(a)}},_css:function(b,c,d){if(a)a.style(b,c,d);else{var e=c.replace(/^-ms-/,\"ms-\").replace(/-([\\da-z])/gi,function(a,b){return b.toUpperCase()});b.style[e]=d}},_toValue:function(a){return this.options.scale.toValue.apply(this,[a])},_toPercentage:function(a){return this.options.scale.toPercentage.apply(this,[a])},_setTooltipPosition:function(){var a=[this.tooltip,this.tooltip_min,this.tooltip_max];if(\"vertical\"===this.options.orientation){var b;b=this.options.tooltip_position?this.options.tooltip_position:this.options.rtl?\"left\":\"right\";var c=\"left\"===b?\"right\":\"left\";a.forEach(function(a){this._addClass(a,b),a.style[c]=\"100%\"}.bind(this))}else\"bottom\"===this.options.tooltip_position?a.forEach(function(a){this._addClass(a,\"bottom\"),a.style.top=\"22px\"}.bind(this)):a.forEach(function(a){this._addClass(a,\"top\"),a.style.top=-this.tooltip.outerHeight-14+\"px\"}.bind(this))}},a&&a.fn){var h=void 0;a.fn.slider?(windowIsDefined&&window.console.warn(\"bootstrap-slider.js - WARNING: $.fn.slider namespace is already bound. Use the $.fn.bootstrapSlider namespace instead.\"),h=c):(a.bridget(b,d),h=b),a.bridget(c,d),a(function(){a(\"input[data-provide=slider]\")[h]()})}}(a),d});\n",
    "/*! https://mths.be/cssescape v1.5.1 by @mathias | MIT license */\r\n;(function(root, factory) {\r\n\t// https://github.com/umdjs/umd/blob/master/returnExports.js\r\n\tif (typeof exports == 'object') {\r\n\t\t// For Node.js.\r\n\t\tmodule.exports = factory(root);\r\n\t} else if (typeof define == 'function' && define.amd) {\r\n\t\t// For AMD. Register as an anonymous module.\r\n\t\tdefine('cssEscape',[], factory.bind(root, root));\r\n\t} else {\r\n\t\t// For browser globals (not exposing the function separately).\r\n\t\tfactory(root);\r\n\t}\r\n}(typeof global != 'undefined' ? global : this, function(root) {\r\n\r\n\tif (root.CSS && root.CSS.escape) {\r\n\t\treturn root.CSS.escape;\r\n\t}\r\n\r\n\t// https://drafts.csswg.org/cssom/#serialize-an-identifier\r\n\tvar cssEscape = function(value) {\r\n\t\tif (arguments.length == 0) {\r\n\t\t\tthrow new TypeError('`CSS.escape` requires an argument.');\r\n\t\t}\r\n\t\tvar string = String(value);\r\n\t\tvar length = string.length;\r\n\t\tvar index = -1;\r\n\t\tvar codeUnit;\r\n\t\tvar result = '';\r\n\t\tvar firstCodeUnit = string.charCodeAt(0);\r\n\t\twhile (++index < length) {\r\n\t\t\tcodeUnit = string.charCodeAt(index);\r\n\t\t\t// Note: there’s no need to special-case astral symbols, surrogate\r\n\t\t\t// pairs, or lone surrogates.\r\n\r\n\t\t\t// If the character is NULL (U+0000), then the REPLACEMENT CHARACTER\r\n\t\t\t// (U+FFFD).\r\n\t\t\tif (codeUnit == 0x0000) {\r\n\t\t\t\tresult += '\\uFFFD';\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\r\n\t\t\tif (\r\n\t\t\t\t// If the character is in the range [\\1-\\1F] (U+0001 to U+001F) or is\r\n\t\t\t\t// U+007F, […]\r\n\t\t\t\t(codeUnit >= 0x0001 && codeUnit <= 0x001F) || codeUnit == 0x007F ||\r\n\t\t\t\t// If the character is the first character and is in the range [0-9]\r\n\t\t\t\t// (U+0030 to U+0039), […]\r\n\t\t\t\t(index == 0 && codeUnit >= 0x0030 && codeUnit <= 0x0039) ||\r\n\t\t\t\t// If the character is the second character and is in the range [0-9]\r\n\t\t\t\t// (U+0030 to U+0039) and the first character is a `-` (U+002D), […]\r\n\t\t\t\t(\r\n\t\t\t\t\tindex == 1 &&\r\n\t\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 &&\r\n\t\t\t\t\tfirstCodeUnit == 0x002D\r\n\t\t\t\t)\r\n\t\t\t) {\r\n\t\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\r\n\t\t\t\tresult += '\\\\' + codeUnit.toString(16) + ' ';\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\r\n\t\t\tif (\r\n\t\t\t\t// If the character is the first character and is a `-` (U+002D), and\r\n\t\t\t\t// there is no second character, […]\r\n\t\t\t\tindex == 0 &&\r\n\t\t\t\tlength == 1 &&\r\n\t\t\t\tcodeUnit == 0x002D\r\n\t\t\t) {\r\n\t\t\t\tresult += '\\\\' + string.charAt(index);\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\r\n\t\t\t// If the character is not handled by one of the above rules and is\r\n\t\t\t// greater than or equal to U+0080, is `-` (U+002D) or `_` (U+005F), or\r\n\t\t\t// is in one of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to\r\n\t\t\t// U+005A), or [a-z] (U+0061 to U+007A), […]\r\n\t\t\tif (\r\n\t\t\t\tcodeUnit >= 0x0080 ||\r\n\t\t\t\tcodeUnit == 0x002D ||\r\n\t\t\t\tcodeUnit == 0x005F ||\r\n\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 ||\r\n\t\t\t\tcodeUnit >= 0x0041 && codeUnit <= 0x005A ||\r\n\t\t\t\tcodeUnit >= 0x0061 && codeUnit <= 0x007A\r\n\t\t\t) {\r\n\t\t\t\t// the character itself\r\n\t\t\t\tresult += string.charAt(index);\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\r\n\t\t\t// Otherwise, the escaped character.\r\n\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character\r\n\t\t\tresult += '\\\\' + string.charAt(index);\r\n\r\n\t\t}\r\n\t\treturn result;\r\n\t};\r\n\r\n\tif (!root.CSS) {\r\n\t\troot.CSS = {};\r\n\t}\r\n\r\n\troot.CSS.escape = cssEscape;\r\n\treturn cssEscape;\r\n\r\n}));\r\n\n",
    "/*\r\n     _ _      _       _\r\n ___| (_) ___| | __  (_)___\r\n/ __| | |/ __| |/ /  | / __|\r\n\\__ \\ | | (__|   < _ | \\__ \\\r\n|___/_|_|\\___|_|\\_(_)/ |___/\r\n                   |__/\r\n\r\n Version: 1.8.1\r\n  Author: Ken Wheeler\r\n Website: http://kenwheeler.github.io\r\n    Docs: http://kenwheeler.github.io/slick\r\n    Repo: http://github.com/kenwheeler/slick\r\n  Issues: http://github.com/kenwheeler/slick/issues\r\n\r\n */\r\n/* global window, document, define, jQuery, setInterval, clearInterval */\r\n; (function (factory) {\r\n    'use strict';\r\n    if (typeof define === 'function' && define.amd) {\r\n        define('slick',['jquery'], factory);\r\n    } else if (typeof exports !== 'undefined') {\r\n        module.exports = factory(require('jquery'));\r\n    } else {\r\n        factory(jQuery);\r\n    }\r\n\r\n}(function ($) {\r\n    'use strict';\r\n    var Slick = window.Slick || {};\r\n\r\n    Slick = (function () {\r\n\r\n        var instanceUid = 0;\r\n\r\n        function Slick(element, settings) {\r\n\r\n            var _ = this, dataSettings;\r\n\r\n            _.defaults = {\r\n                accessibility: true,\r\n                adaptiveHeight: false,\r\n                appendArrows: $(element),\r\n                appendDots: $(element),\r\n                arrows: true,\r\n                asNavFor: null,\r\n                prevArrow: '<button class=\"slick-prev\" aria-label=\"Previous\" type=\"button\">Previous</button>',\r\n                nextArrow: '<button class=\"slick-next\" aria-label=\"Next\" type=\"button\">Next</button>',\r\n                autoplay: false,\r\n                autoplaySpeed: 3000,\r\n                centerMode: false,\r\n                centerPadding: '50px',\r\n                cssEase: 'ease',\r\n                customPaging: function (slider, i) {\r\n                    return $('<button type=\"button\" />').text(i + 1);\r\n                },\r\n                dots: false,\r\n                dotsClass: 'slick-dots',\r\n                draggable: true,\r\n                easing: 'linear',\r\n                edgeFriction: 0.35,\r\n                fade: false,\r\n                focusOnSelect: false,\r\n                focusOnChange: false,\r\n                infinite: true,\r\n                initialSlide: 0,\r\n                lazyLoad: 'ondemand',\r\n                mobileFirst: false,\r\n                pauseOnHover: true,\r\n                pauseOnFocus: true,\r\n                pauseOnDotsHover: false,\r\n                respondTo: 'window',\r\n                responsive: null,\r\n                rows: 1,\r\n                rtl: false,\r\n                slide: '',\r\n                slidesPerRow: 1,\r\n                slidesToShow: 1,\r\n                slidesToScroll: 1,\r\n                speed: 500,\r\n                swipe: true,\r\n                swipeToSlide: false,\r\n                touchMove: true,\r\n                touchThreshold: 5,\r\n                useCSS: true,\r\n                useTransform: true,\r\n                variableWidth: false,\r\n                vertical: false,\r\n                verticalSwiping: false,\r\n                waitForAnimate: true,\r\n                zIndex: 1000\r\n            };\r\n\r\n            _.initials = {\r\n                animating: false,\r\n                dragging: false,\r\n                autoPlayTimer: null,\r\n                currentDirection: 0,\r\n                currentLeft: null,\r\n                currentSlide: 0,\r\n                direction: 1,\r\n                $dots: null,\r\n                listWidth: null,\r\n                listHeight: null,\r\n                loadIndex: 0,\r\n                $nextArrow: null,\r\n                $prevArrow: null,\r\n                scrolling: false,\r\n                slideCount: null,\r\n                slideWidth: null,\r\n                $slideTrack: null,\r\n                $slides: null,\r\n                sliding: false,\r\n                slideOffset: 0,\r\n                swipeLeft: null,\r\n                swiping: false,\r\n                $list: null,\r\n                touchObject: {},\r\n                transformsEnabled: false,\r\n                unslicked: false\r\n            };\r\n\r\n            $.extend(_, _.initials);\r\n\r\n            _.activeBreakpoint = null;\r\n            _.animType = null;\r\n            _.animProp = null;\r\n            _.breakpoints = [];\r\n            _.breakpointSettings = [];\r\n            _.cssTransitions = false;\r\n            _.focussed = false;\r\n            _.interrupted = false;\r\n            _.hidden = 'hidden';\r\n            _.paused = true;\r\n            _.positionProp = null;\r\n            _.respondTo = null;\r\n            _.rowCount = 1;\r\n            _.shouldClick = true;\r\n            _.$slider = $(element);\r\n            _.$slidesCache = null;\r\n            _.transformType = null;\r\n            _.transitionType = null;\r\n            _.visibilityChange = 'visibilitychange';\r\n            _.windowWidth = 0;\r\n            _.windowTimer = null;\r\n\r\n            dataSettings = $(element).data('slick') || {};\r\n\r\n            _.options = $.extend({}, _.defaults, settings, dataSettings);\r\n\r\n            _.currentSlide = _.options.initialSlide;\r\n\r\n            _.originalSettings = _.options;\r\n\r\n            if (typeof document.mozHidden !== 'undefined') {\r\n                _.hidden = 'mozHidden';\r\n                _.visibilityChange = 'mozvisibilitychange';\r\n            } else if (typeof document.webkitHidden !== 'undefined') {\r\n                _.hidden = 'webkitHidden';\r\n                _.visibilityChange = 'webkitvisibilitychange';\r\n            }\r\n\r\n            _.autoPlay = $.proxy(_.autoPlay, _);\r\n            _.autoPlayClear = $.proxy(_.autoPlayClear, _);\r\n            _.autoPlayIterator = $.proxy(_.autoPlayIterator, _);\r\n            _.changeSlide = $.proxy(_.changeSlide, _);\r\n            _.clickHandler = $.proxy(_.clickHandler, _);\r\n            _.selectHandler = $.proxy(_.selectHandler, _);\r\n            _.setPosition = $.proxy(_.setPosition, _);\r\n            _.swipeHandler = $.proxy(_.swipeHandler, _);\r\n            _.dragHandler = $.proxy(_.dragHandler, _);\r\n            _.keyHandler = $.proxy(_.keyHandler, _);\r\n\r\n            _.instanceUid = instanceUid++;\r\n\r\n            // A simple way to check for HTML strings\r\n            // Strict HTML recognition (must start with <)\r\n            // Extracted from jQuery v1.11 source\r\n            _.htmlExpr = /^(?:\\s*(<[\\w\\W]+>)[^>]*)$/;\r\n\r\n\r\n            _.registerBreakpoints();\r\n            _.init(true);\r\n\r\n        }\r\n\r\n        return Slick;\r\n\r\n    }());\r\n\r\n    Slick.prototype.activateADA = function () {\r\n        var _ = this;\r\n\r\n        _.$slideTrack.find('.slick-active').attr({\r\n            'aria-hidden': 'false'\r\n        }).find('a, input, button, select').attr({\r\n            'tabindex': '0'\r\n        });\r\n\r\n        if (_.$slideTrack.closest('.ecolab-slider.slider-hive') !== null) {\r\n            _.$slideTrack.find('.slick-active').each(function () {\r\n                $(this).find('.CoveoResultLink').attr('tabindex', '0');\r\n            });\r\n        }\r\n\r\n\r\n    };\r\n\r\n    Slick.prototype.addSlide = Slick.prototype.slickAdd = function (markup, index, addBefore) {\r\n\r\n        var _ = this;\r\n\r\n        if (typeof (index) === 'boolean') {\r\n            addBefore = index;\r\n            index = null;\r\n        } else if (index < 0 || (index >= _.slideCount)) {\r\n            return false;\r\n        }\r\n\r\n        _.unload();\r\n\r\n        if (typeof (index) === 'number') {\r\n            if (index === 0 && _.$slides.length === 0) {\r\n                $(markup).appendTo(_.$slideTrack);\r\n            } else if (addBefore) {\r\n                $(markup).insertBefore(_.$slides.eq(index));\r\n            } else {\r\n                $(markup).insertAfter(_.$slides.eq(index));\r\n            }\r\n        } else {\r\n            if (addBefore === true) {\r\n                $(markup).prependTo(_.$slideTrack);\r\n            } else {\r\n                $(markup).appendTo(_.$slideTrack);\r\n            }\r\n        }\r\n\r\n        _.$slides = _.$slideTrack.children(this.options.slide);\r\n\r\n        _.$slideTrack.children(this.options.slide).detach();\r\n\r\n        _.$slideTrack.append(_.$slides);\r\n\r\n        _.$slides.each(function (index, element) {\r\n            $(element).attr('data-slick-index', index);\r\n        });\r\n\r\n        _.$slidesCache = _.$slides;\r\n\r\n        _.reinit();\r\n\r\n    };\r\n\r\n    Slick.prototype.animateHeight = function () {\r\n        var _ = this;\r\n        if (_.options.slidesToShow === 1 && _.options.adaptiveHeight === true && _.options.vertical === false) {\r\n            var targetHeight = _.$slides.eq(_.currentSlide).outerHeight(true);\r\n            _.$list.animate({\r\n                height: targetHeight\r\n            }, _.options.speed);\r\n        }\r\n    };\r\n\r\n    Slick.prototype.animateSlide = function (targetLeft, callback) {\r\n\r\n        var animProps = {},\r\n            _ = this;\r\n\r\n        _.animateHeight();\r\n\r\n        if (_.options.rtl === true && _.options.vertical === false) {\r\n            targetLeft = -targetLeft;\r\n        }\r\n        if (_.transformsEnabled === false) {\r\n            if (_.options.vertical === false) {\r\n                _.$slideTrack.animate({\r\n                    left: targetLeft\r\n                }, _.options.speed, _.options.easing, callback);\r\n            } else {\r\n                _.$slideTrack.animate({\r\n                    top: targetLeft\r\n                }, _.options.speed, _.options.easing, callback);\r\n            }\r\n\r\n        } else {\r\n\r\n            if (_.cssTransitions === false) {\r\n                if (_.options.rtl === true) {\r\n                    _.currentLeft = -(_.currentLeft);\r\n                }\r\n                $({\r\n                    animStart: _.currentLeft\r\n                }).animate({\r\n                    animStart: targetLeft\r\n                }, {\r\n                    duration: _.options.speed,\r\n                    easing: _.options.easing,\r\n                    step: function (now) {\r\n                        now = Math.ceil(now);\r\n                        if (_.options.vertical === false) {\r\n                            animProps[_.animType] = 'translate(' +\r\n                                now + 'px, 0px)';\r\n                            _.$slideTrack.css(animProps);\r\n                        } else {\r\n                            animProps[_.animType] = 'translate(0px,' +\r\n                                now + 'px)';\r\n                            _.$slideTrack.css(animProps);\r\n                        }\r\n                    },\r\n                    complete: function () {\r\n                        if (callback) {\r\n                            callback.call();\r\n                        }\r\n                    }\r\n                });\r\n\r\n            } else {\r\n\r\n                _.applyTransition();\r\n                targetLeft = Math.ceil(targetLeft);\r\n\r\n                if (_.options.vertical === false) {\r\n                    animProps[_.animType] = 'translate3d(' + targetLeft + 'px, 0px, 0px)';\r\n                } else {\r\n                    animProps[_.animType] = 'translate3d(0px,' + targetLeft + 'px, 0px)';\r\n                }\r\n                _.$slideTrack.css(animProps);\r\n\r\n                if (callback) {\r\n                    setTimeout(function () {\r\n\r\n                        _.disableTransition();\r\n\r\n                        callback.call();\r\n                    }, _.options.speed);\r\n                }\r\n\r\n            }\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.getNavTarget = function () {\r\n\r\n        var _ = this,\r\n            asNavFor = _.options.asNavFor;\r\n\r\n        if (asNavFor && asNavFor !== null) {\r\n            asNavFor = $(asNavFor).not(_.$slider);\r\n        }\r\n\r\n        return asNavFor;\r\n\r\n    };\r\n\r\n    Slick.prototype.asNavFor = function (index) {\r\n\r\n        var _ = this,\r\n            asNavFor = _.getNavTarget();\r\n\r\n        if (asNavFor !== null && typeof asNavFor === 'object') {\r\n            asNavFor.each(function () {\r\n                var target = $(this).slick('getSlick');\r\n                if (!target.unslicked) {\r\n                    target.slideHandler(index, true);\r\n                }\r\n            });\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.applyTransition = function (slide) {\r\n\r\n        var _ = this,\r\n            transition = {};\r\n\r\n        if (_.options.fade === false) {\r\n            transition[_.transitionType] = _.transformType + ' ' + _.options.speed + 'ms ' + _.options.cssEase;\r\n        } else {\r\n            transition[_.transitionType] = 'opacity ' + _.options.speed + 'ms ' + _.options.cssEase;\r\n        }\r\n\r\n        if (_.options.fade === false) {\r\n            _.$slideTrack.css(transition);\r\n        } else {\r\n            _.$slides.eq(slide).css(transition);\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.autoPlay = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.autoPlayClear();\r\n\r\n        if (_.slideCount > _.options.slidesToShow) {\r\n            _.autoPlayTimer = setInterval(_.autoPlayIterator, _.options.autoplaySpeed);\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.autoPlayClear = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.autoPlayTimer) {\r\n            clearInterval(_.autoPlayTimer);\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.autoPlayIterator = function () {\r\n\r\n        var _ = this,\r\n            slideTo = _.currentSlide + _.options.slidesToScroll;\r\n\r\n        if (!_.paused && !_.interrupted && !_.focussed) {\r\n\r\n            if (_.options.infinite === false) {\r\n\r\n                if (_.direction === 1 && (_.currentSlide + 1) === (_.slideCount - 1)) {\r\n                    _.direction = 0;\r\n                }\r\n\r\n                else if (_.direction === 0) {\r\n\r\n                    slideTo = _.currentSlide - _.options.slidesToScroll;\r\n\r\n                    if (_.currentSlide - 1 === 0) {\r\n                        _.direction = 1;\r\n                    }\r\n\r\n                }\r\n\r\n            }\r\n\r\n            _.slideHandler(slideTo);\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.buildArrows = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.arrows === true) {\r\n\r\n            _.$prevArrow = $(_.options.prevArrow).addClass('slick-arrow');\r\n            _.$nextArrow = $(_.options.nextArrow).addClass('slick-arrow');\r\n\r\n            if (_.slideCount > _.options.slidesToShow) {\r\n\r\n                _.$prevArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');\r\n                _.$nextArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');\r\n\r\n                if (_.htmlExpr.test(_.options.prevArrow)) {\r\n                    _.$prevArrow.prependTo(_.options.appendArrows);\r\n                }\r\n\r\n                if (_.htmlExpr.test(_.options.nextArrow)) {\r\n                    _.$nextArrow.appendTo(_.options.appendArrows);\r\n                }\r\n\r\n                if (_.options.infinite !== true) {\r\n                    _.$prevArrow\r\n                        .addClass('slick-disabled')\r\n                        .attr('aria-disabled', 'true');\r\n                }\r\n\r\n            } else {\r\n\r\n                _.$prevArrow.add(_.$nextArrow)\r\n\r\n                    .addClass('slick-hidden')\r\n                    .attr({\r\n                        'aria-disabled': 'true',\r\n                        'tabindex': '-1'\r\n                    });\r\n\r\n            }\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.buildDots = function () {\r\n\r\n        var _ = this,\r\n            i, dot;\r\n\r\n        if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n            _.$slider.addClass('slick-dotted');\r\n\r\n            dot = $('<ul />').addClass(_.options.dotsClass);\r\n\r\n            for (i = 0; i <= _.getDotCount(); i += 1) {\r\n                dot.append($('<li />').append(_.options.customPaging.call(this, _, i)));\r\n            }\r\n\r\n            _.$dots = dot.appendTo(_.options.appendDots);\r\n\r\n            _.$dots.find('li').first().addClass('slick-active');\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.buildOut = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.$slides =\r\n            _.$slider\r\n                .children(_.options.slide + ':not(.slick-cloned)')\r\n                .addClass('slick-slide');\r\n\r\n        _.slideCount = _.$slides.length;\r\n\r\n        _.$slides.each(function (index, element) {\r\n            $(element)\r\n                .attr('data-slick-index', index)\r\n                .data('originalStyling', $(element).attr('style') || '');\r\n        });\r\n\r\n        _.$slider.addClass('slick-slider');\r\n\r\n        _.$slideTrack = (_.slideCount === 0) ?\r\n            $('<div class=\"slick-track\"/>').appendTo(_.$slider) :\r\n            _.$slides.wrapAll('<div class=\"slick-track\"/>').parent();\r\n\r\n        _.$list = _.$slideTrack.wrap(\r\n            '<div class=\"slick-list\"/>').parent();\r\n        _.$slideTrack.css('opacity', 0);\r\n\r\n        if (_.options.centerMode === true || _.options.swipeToSlide === true) {\r\n            _.options.slidesToScroll = 1;\r\n        }\r\n\r\n        $('img[data-lazy]', _.$slider).not('[src]').addClass('slick-loading');\r\n\r\n        _.setupInfinite();\r\n\r\n        _.buildArrows();\r\n\r\n        _.buildDots();\r\n\r\n        _.updateDots();\r\n\r\n\r\n        _.setSlideClasses(typeof _.currentSlide === 'number' ? _.currentSlide : 0);\r\n\r\n        if (_.options.draggable === true) {\r\n            _.$list.addClass('draggable');\r\n        }\r\n\r\n        if (_.options.arrows == true && _.slideCount > _.options.slidesToShow) {\r\n\r\n            _.$slideTrack.find('.slick-slide').each(function (index, element) {\r\n                $(element).attr('role', 'group').attr('aria-label', 'Slide ' + (index + 1) + \" of \" + _.$slideTrack.find('.slick-slide').length)\r\n            });\r\n\r\n            _.$slideTrack.closest('.ecolab-slider').attr(\"aria-label\", \"carousel\").attr(\"role\", \"region\");\r\n        }\r\n        else {\r\n            //_.$slideTrack.closest('.ecolab-slider').removeAttr(\"aria-label\").removeAttr(\"role\");\r\n            _.$slideTrack.closest('.ecolab-slider').find('p:first-child').addClass('eco-remove-aft-pageload');\r\n\r\n        }\r\n\r\n\r\n    };\r\n\r\n    Slick.prototype.buildRows = function () {\r\n\r\n        var _ = this, a, b, c, newSlides, numOfSlides, originalSlides, slidesPerSection;\r\n\r\n        newSlides = document.createDocumentFragment();\r\n        originalSlides = _.$slider.children();\r\n\r\n        if (_.options.rows > 0) {\r\n\r\n            slidesPerSection = _.options.slidesPerRow * _.options.rows;\r\n            numOfSlides = Math.ceil(\r\n                originalSlides.length / slidesPerSection\r\n            );\r\n\r\n            for (a = 0; a < numOfSlides; a++) {\r\n                var slide = document.createElement('div');\r\n                for (b = 0; b < _.options.rows; b++) {\r\n                    var row = document.createElement('div');\r\n                    for (c = 0; c < _.options.slidesPerRow; c++) {\r\n                        var target = (a * slidesPerSection + ((b * _.options.slidesPerRow) + c));\r\n                        if (originalSlides.get(target)) {\r\n                            row.appendChild(originalSlides.get(target));\r\n                        }\r\n                    }\r\n                    slide.appendChild(row);\r\n                }\r\n                newSlides.appendChild(slide);\r\n            }\r\n\r\n            _.$slider.empty().append(newSlides);\r\n            _.$slider.children().children().children()\r\n                .css({\r\n                    'width': (100 / _.options.slidesPerRow) + '%',\r\n                    'display': 'inline-block'\r\n                });\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.checkResponsive = function (initial, forceUpdate) {\r\n\r\n        var _ = this,\r\n            breakpoint, targetBreakpoint, respondToWidth, triggerBreakpoint = false;\r\n        var sliderWidth = _.$slider.width();\r\n        var windowWidth = window.innerWidth || $(window).width();\r\n\r\n        if (_.respondTo === 'window') {\r\n            respondToWidth = windowWidth;\r\n        } else if (_.respondTo === 'slider') {\r\n            respondToWidth = sliderWidth;\r\n        } else if (_.respondTo === 'min') {\r\n            respondToWidth = Math.min(windowWidth, sliderWidth);\r\n        }\r\n\r\n        if (_.options.responsive &&\r\n            _.options.responsive.length &&\r\n            _.options.responsive !== null) {\r\n\r\n            targetBreakpoint = null;\r\n\r\n            for (breakpoint in _.breakpoints) {\r\n                if (_.breakpoints.hasOwnProperty(breakpoint)) {\r\n                    if (_.originalSettings.mobileFirst === false) {\r\n                        if (respondToWidth < _.breakpoints[breakpoint]) {\r\n                            targetBreakpoint = _.breakpoints[breakpoint];\r\n                        }\r\n                    } else {\r\n                        if (respondToWidth > _.breakpoints[breakpoint]) {\r\n                            targetBreakpoint = _.breakpoints[breakpoint];\r\n                        }\r\n                    }\r\n                }\r\n            }\r\n\r\n            if (targetBreakpoint !== null) {\r\n                if (_.activeBreakpoint !== null) {\r\n                    if (targetBreakpoint !== _.activeBreakpoint || forceUpdate) {\r\n                        _.activeBreakpoint =\r\n                            targetBreakpoint;\r\n                        if (_.breakpointSettings[targetBreakpoint] === 'unslick') {\r\n                            _.unslick(targetBreakpoint);\r\n                        } else {\r\n                            _.options = $.extend({}, _.originalSettings,\r\n                                _.breakpointSettings[\r\n                                targetBreakpoint]);\r\n                            if (initial === true) {\r\n                                _.currentSlide = _.options.initialSlide;\r\n                            }\r\n                            _.refresh(initial);\r\n                        }\r\n                        triggerBreakpoint = targetBreakpoint;\r\n                    }\r\n                } else {\r\n                    _.activeBreakpoint = targetBreakpoint;\r\n                    if (_.breakpointSettings[targetBreakpoint] === 'unslick') {\r\n                        _.unslick(targetBreakpoint);\r\n                    } else {\r\n                        _.options = $.extend({}, _.originalSettings,\r\n                            _.breakpointSettings[\r\n                            targetBreakpoint]);\r\n                        if (initial === true) {\r\n                            _.currentSlide = _.options.initialSlide;\r\n                        }\r\n                        _.refresh(initial);\r\n                    }\r\n                    triggerBreakpoint = targetBreakpoint;\r\n                }\r\n            } else {\r\n                if (_.activeBreakpoint !== null) {\r\n                    _.activeBreakpoint = null;\r\n                    _.options = _.originalSettings;\r\n                    if (initial === true) {\r\n                        _.currentSlide = _.options.initialSlide;\r\n                    }\r\n                    _.refresh(initial);\r\n                    triggerBreakpoint = targetBreakpoint;\r\n                }\r\n            }\r\n\r\n            // only trigger breakpoints during an actual break. not on initialize.\r\n            if (!initial && triggerBreakpoint !== false) {\r\n                _.$slider.trigger('breakpoint', [_, triggerBreakpoint]);\r\n            }\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.changeSlide = function (event, dontAnimate) {\r\n\r\n        var _ = this,\r\n            $target = $(event.currentTarget),\r\n            indexOffset, slideOffset, unevenOffset;\r\n\r\n        // If target is a link, prevent default action.\r\n        if ($target.is('a')) {\r\n            event.preventDefault();\r\n        }\r\n\r\n        // If target is not the <li> element (ie: a child), find the <li>.\r\n        if (!$target.is('li')) {\r\n            $target = $target.closest('li');\r\n        }\r\n\r\n        unevenOffset = (_.slideCount % _.options.slidesToScroll !== 0);\r\n        indexOffset = unevenOffset ? 0 : (_.slideCount - _.currentSlide) % _.options.slidesToScroll;\r\n\r\n        switch (event.data.message) {\r\n\r\n            case 'previous':\r\n                slideOffset = indexOffset === 0 ? _.options.slidesToScroll : _.options.slidesToShow - indexOffset;\r\n                if (_.slideCount > _.options.slidesToShow) {\r\n                    _.slideHandler(_.currentSlide - slideOffset, false, dontAnimate);\r\n                }\r\n                break;\r\n\r\n            case 'next':\r\n                slideOffset = indexOffset === 0 ? _.options.slidesToScroll : indexOffset;\r\n                if (_.slideCount > _.options.slidesToShow) {\r\n                    _.slideHandler(_.currentSlide + slideOffset, false, dontAnimate);\r\n                }\r\n                break;\r\n\r\n            case 'index':\r\n                var index = event.data.index === 0 ? 0 :\r\n                    event.data.index || $target.index() * _.options.slidesToScroll;\r\n\r\n                _.slideHandler(_.checkNavigable(index), false, dontAnimate);\r\n                $target.children().trigger('focus');\r\n                break;\r\n\r\n            default:\r\n                return;\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.checkNavigable = function (index) {\r\n\r\n        var _ = this,\r\n            navigables, prevNavigable;\r\n\r\n        navigables = _.getNavigableIndexes();\r\n        prevNavigable = 0;\r\n        if (index > navigables[navigables.length - 1]) {\r\n            index = navigables[navigables.length - 1];\r\n        } else {\r\n            for (var n in navigables) {\r\n                if (index < navigables[n]) {\r\n                    index = prevNavigable;\r\n                    break;\r\n                }\r\n                prevNavigable = navigables[n];\r\n            }\r\n        }\r\n\r\n        return index;\r\n    };\r\n\r\n    Slick.prototype.cleanUpEvents = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.dots && _.$dots !== null) {\r\n\r\n            $('li', _.$dots)\r\n                .off('click.slick', _.changeSlide)\r\n                .off('mouseenter.slick', $.proxy(_.interrupt, _, true))\r\n                .off('mouseleave.slick', $.proxy(_.interrupt, _, false));\r\n\r\n            if (_.options.accessibility === true) {\r\n                _.$dots.off('keydown.slick', _.keyHandler);\r\n            }\r\n        }\r\n\r\n        _.$slider.off('focus.slick blur.slick');\r\n\r\n        if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\r\n            _.$prevArrow && _.$prevArrow.off('click.slick', _.changeSlide);\r\n            _.$nextArrow && _.$nextArrow.off('click.slick', _.changeSlide);\r\n\r\n            if (_.options.accessibility === true) {\r\n                _.$prevArrow && _.$prevArrow.off('keydown.slick', _.keyHandler);\r\n                _.$nextArrow && _.$nextArrow.off('keydown.slick', _.keyHandler);\r\n            }\r\n        }\r\n\r\n        _.$list.off('touchstart.slick mousedown.slick', _.swipeHandler);\r\n        _.$list.off('touchmove.slick mousemove.slick', _.swipeHandler);\r\n        _.$list.off('touchend.slick mouseup.slick', _.swipeHandler);\r\n        _.$list.off('touchcancel.slick mouseleave.slick', _.swipeHandler);\r\n\r\n        _.$list.off('click.slick', _.clickHandler);\r\n\r\n        $(document).off(_.visibilityChange, _.visibility);\r\n\r\n        _.cleanUpSlideEvents();\r\n\r\n        if (_.options.accessibility === true) {\r\n            _.$list.off('keydown.slick', _.keyHandler);\r\n        }\r\n\r\n        if (_.options.focusOnSelect === true) {\r\n            $(_.$slideTrack).children().off('click.slick', _.selectHandler);\r\n        }\r\n\r\n        $(window).off('orientationchange.slick.slick-' + _.instanceUid, _.orientationChange);\r\n\r\n        $(window).off('resize.slick.slick-' + _.instanceUid, _.resize);\r\n\r\n        $('[draggable!=true]', _.$slideTrack).off('dragstart', _.preventDefault);\r\n\r\n        $(window).off('load.slick.slick-' + _.instanceUid, _.setPosition);\r\n\r\n    };\r\n\r\n    Slick.prototype.cleanUpSlideEvents = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.$list.off('mouseenter.slick', $.proxy(_.interrupt, _, true));\r\n        _.$list.off('mouseleave.slick', $.proxy(_.interrupt, _, false));\r\n\r\n    };\r\n\r\n    Slick.prototype.cleanUpRows = function () {\r\n\r\n        var _ = this, originalSlides;\r\n\r\n        if (_.options.rows > 0) {\r\n            originalSlides = _.$slides.children().children();\r\n            originalSlides.removeAttr('style');\r\n            _.$slider.empty().append(originalSlides);\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.clickHandler = function (event) {\r\n\r\n        var _ = this;\r\n\r\n        if (_.shouldClick === false) {\r\n            event.stopImmediatePropagation();\r\n            event.stopPropagation();\r\n            event.preventDefault();\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.destroy = function (refresh) {\r\n\r\n        var _ = this;\r\n\r\n        _.autoPlayClear();\r\n\r\n        _.touchObject = {};\r\n\r\n        _.cleanUpEvents();\r\n\r\n        $('.slick-cloned', _.$slider).detach();\r\n\r\n        if (_.$dots) {\r\n            _.$dots.remove();\r\n        }\r\n\r\n        if (_.$prevArrow && _.$prevArrow.length) {\r\n\r\n            _.$prevArrow\r\n                .removeClass('slick-disabled slick-arrow slick-hidden')\r\n                .removeAttr('aria-hidden aria-disabled tabindex')\r\n                .css('display', '');\r\n\r\n            if (_.htmlExpr.test(_.options.prevArrow)) {\r\n                _.$prevArrow.remove();\r\n            }\r\n        }\r\n\r\n        if (_.$nextArrow && _.$nextArrow.length) {\r\n\r\n            _.$nextArrow\r\n                .removeClass('slick-disabled slick-arrow slick-hidden')\r\n                .removeAttr('aria-hidden aria-disabled tabindex')\r\n                .css('display', '');\r\n\r\n            if (_.htmlExpr.test(_.options.nextArrow)) {\r\n                _.$nextArrow.remove();\r\n            }\r\n        }\r\n\r\n\r\n        if (_.$slides) {\r\n\r\n            _.$slides\r\n                .removeClass('slick-slide slick-active slick-center slick-visible slick-current')\r\n                .removeAttr('aria-hidden')\r\n                .removeAttr('data-slick-index')\r\n                .each(function () {\r\n                    $(this).attr('style', $(this).data('originalStyling'));\r\n                });\r\n\r\n            _.$slideTrack.children(this.options.slide).detach();\r\n\r\n            _.$slideTrack.detach();\r\n\r\n            _.$list.detach();\r\n\r\n            _.$slider.append(_.$slides);\r\n        }\r\n\r\n        _.cleanUpRows();\r\n\r\n        _.$slider.removeClass('slick-slider');\r\n        _.$slider.removeClass('slick-initialized');\r\n        _.$slider.removeClass('slick-dotted');\r\n\r\n        _.unslicked = true;\r\n\r\n        if (!refresh) {\r\n            _.$slider.trigger('destroy', [_]);\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.disableTransition = function (slide) {\r\n\r\n        var _ = this,\r\n            transition = {};\r\n\r\n        transition[_.transitionType] = '';\r\n\r\n        if (_.options.fade === false) {\r\n            _.$slideTrack.css(transition);\r\n        } else {\r\n            _.$slides.eq(slide).css(transition);\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.fadeSlide = function (slideIndex, callback) {\r\n\r\n        var _ = this;\r\n\r\n        if (_.cssTransitions === false) {\r\n\r\n            _.$slides.eq(slideIndex).css({\r\n                zIndex: _.options.zIndex\r\n            });\r\n\r\n            _.$slides.eq(slideIndex).animate({\r\n                opacity: 1\r\n            }, _.options.speed, _.options.easing, callback);\r\n\r\n        } else {\r\n\r\n            _.applyTransition(slideIndex);\r\n\r\n            _.$slides.eq(slideIndex).css({\r\n                opacity: 1,\r\n                zIndex: _.options.zIndex\r\n            });\r\n\r\n            if (callback) {\r\n                setTimeout(function () {\r\n\r\n                    _.disableTransition(slideIndex);\r\n\r\n                    callback.call();\r\n                }, _.options.speed);\r\n            }\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.fadeSlideOut = function (slideIndex) {\r\n\r\n        var _ = this;\r\n\r\n        if (_.cssTransitions === false) {\r\n\r\n            _.$slides.eq(slideIndex).animate({\r\n                opacity: 0,\r\n                zIndex: _.options.zIndex - 2\r\n            }, _.options.speed, _.options.easing);\r\n\r\n        } else {\r\n\r\n            _.applyTransition(slideIndex);\r\n\r\n            _.$slides.eq(slideIndex).css({\r\n                opacity: 0,\r\n                zIndex: _.options.zIndex - 2\r\n            });\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.filterSlides = Slick.prototype.slickFilter = function (filter) {\r\n\r\n        var _ = this;\r\n\r\n        if (filter !== null) {\r\n\r\n            _.$slidesCache = _.$slides;\r\n\r\n            _.unload();\r\n\r\n            _.$slideTrack.children(this.options.slide).detach();\r\n\r\n            _.$slidesCache.filter(filter).appendTo(_.$slideTrack);\r\n\r\n            _.reinit();\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.focusHandler = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.$slider\r\n            .off('focus.slick blur.slick')\r\n            .on('focus.slick blur.slick', '*', function (event) {\r\n\r\n                event.stopImmediatePropagation();\r\n                var $sf = $(this);\r\n\r\n                setTimeout(function () {\r\n\r\n                    if (_.options.pauseOnFocus) {\r\n                        _.focussed = $sf.is(':focus');\r\n                        _.autoPlay();\r\n                    }\r\n\r\n                }, 0);\r\n\r\n            });\r\n    };\r\n\r\n    Slick.prototype.getCurrent = Slick.prototype.slickCurrentSlide = function () {\r\n\r\n        var _ = this;\r\n        return _.currentSlide;\r\n\r\n    };\r\n\r\n    Slick.prototype.getDotCount = function () {\r\n\r\n        var _ = this;\r\n\r\n        var breakPoint = 0;\r\n        var counter = 0;\r\n        var pagerQty = 0;\r\n\r\n        if (_.options.infinite === true) {\r\n            if (_.slideCount <= _.options.slidesToShow) {\r\n                ++pagerQty;\r\n            } else {\r\n                while (breakPoint < _.slideCount) {\r\n                    ++pagerQty;\r\n                    breakPoint = counter + _.options.slidesToScroll;\r\n                    counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;\r\n                }\r\n            }\r\n        } else if (_.options.centerMode === true) {\r\n            pagerQty = _.slideCount;\r\n        } else if (!_.options.asNavFor) {\r\n            pagerQty = 1 + Math.ceil((_.slideCount - _.options.slidesToShow) / _.options.slidesToScroll);\r\n        } else {\r\n            while (breakPoint < _.slideCount) {\r\n                ++pagerQty;\r\n                breakPoint = counter + _.options.slidesToScroll;\r\n                counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;\r\n            }\r\n        }\r\n\r\n        return pagerQty - 1;\r\n\r\n    };\r\n\r\n    Slick.prototype.getLeft = function (slideIndex) {\r\n\r\n        var _ = this,\r\n            targetLeft,\r\n            verticalHeight,\r\n            verticalOffset = 0,\r\n            targetSlide,\r\n            coef;\r\n\r\n        _.slideOffset = 0;\r\n        verticalHeight = _.$slides.first().outerHeight(true);\r\n\r\n        if (_.options.infinite === true) {\r\n            if (_.slideCount > _.options.slidesToShow) {\r\n                _.slideOffset = (_.slideWidth * _.options.slidesToShow) * -1;\r\n                coef = -1\r\n\r\n                if (_.options.vertical === true && _.options.centerMode === true) {\r\n                    if (_.options.slidesToShow === 2) {\r\n                        coef = -1.5;\r\n                    } else if (_.options.slidesToShow === 1) {\r\n                        coef = -2\r\n                    }\r\n                }\r\n                verticalOffset = (verticalHeight * _.options.slidesToShow) * coef;\r\n            }\r\n            if (_.slideCount % _.options.slidesToScroll !== 0) {\r\n                if (slideIndex + _.options.slidesToScroll > _.slideCount && _.slideCount > _.options.slidesToShow) {\r\n                    if (slideIndex > _.slideCount) {\r\n                        _.slideOffset = ((_.options.slidesToShow - (slideIndex - _.slideCount)) * _.slideWidth) * -1;\r\n                        verticalOffset = ((_.options.slidesToShow - (slideIndex - _.slideCount)) * verticalHeight) * -1;\r\n                    } else {\r\n                        _.slideOffset = ((_.slideCount % _.options.slidesToScroll) * _.slideWidth) * -1;\r\n                        verticalOffset = ((_.slideCount % _.options.slidesToScroll) * verticalHeight) * -1;\r\n                    }\r\n                }\r\n            }\r\n        } else {\r\n            if (slideIndex + _.options.slidesToShow > _.slideCount) {\r\n                _.slideOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * _.slideWidth;\r\n                verticalOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * verticalHeight;\r\n            }\r\n        }\r\n\r\n        if (_.slideCount <= _.options.slidesToShow) {\r\n            _.slideOffset = 0;\r\n            verticalOffset = 0;\r\n        }\r\n\r\n        if (_.options.centerMode === true && _.slideCount <= _.options.slidesToShow) {\r\n            _.slideOffset = ((_.slideWidth * Math.floor(_.options.slidesToShow)) / 2) - ((_.slideWidth * _.slideCount) / 2);\r\n        } else if (_.options.centerMode === true && _.options.infinite === true) {\r\n            _.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2) - _.slideWidth;\r\n        } else if (_.options.centerMode === true) {\r\n            _.slideOffset = 0;\r\n            _.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2);\r\n        }\r\n\r\n        if (_.options.vertical === false) {\r\n            targetLeft = ((slideIndex * _.slideWidth) * -1) + _.slideOffset;\r\n        } else {\r\n            targetLeft = ((slideIndex * verticalHeight) * -1) + verticalOffset;\r\n        }\r\n\r\n        if (_.options.variableWidth === true) {\r\n\r\n            if (_.slideCount <= _.options.slidesToShow || _.options.infinite === false) {\r\n                targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex);\r\n            } else {\r\n                targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow);\r\n            }\r\n\r\n            if (_.options.rtl === true) {\r\n                if (targetSlide[0]) {\r\n                    targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;\r\n                } else {\r\n                    targetLeft = 0;\r\n                }\r\n            } else {\r\n                targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0;\r\n            }\r\n\r\n            if (_.options.centerMode === true) {\r\n                if (_.slideCount <= _.options.slidesToShow || _.options.infinite === false) {\r\n                    targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex);\r\n                } else {\r\n                    targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow + 1);\r\n                }\r\n\r\n                if (_.options.rtl === true) {\r\n                    if (targetSlide[0]) {\r\n                        targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;\r\n                    } else {\r\n                        targetLeft = 0;\r\n                    }\r\n                } else {\r\n                    targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0;\r\n                }\r\n\r\n                targetLeft += (_.$list.width() - targetSlide.outerWidth()) / 2;\r\n            }\r\n        }\r\n\r\n        return targetLeft;\r\n\r\n    };\r\n\r\n    Slick.prototype.getOption = Slick.prototype.slickGetOption = function (option) {\r\n\r\n        var _ = this;\r\n\r\n        return _.options[option];\r\n\r\n    };\r\n\r\n    Slick.prototype.getNavigableIndexes = function () {\r\n\r\n        var _ = this,\r\n            breakPoint = 0,\r\n            counter = 0,\r\n            indexes = [],\r\n            max;\r\n\r\n        if (_.options.infinite === false) {\r\n            max = _.slideCount;\r\n        } else {\r\n            breakPoint = _.options.slidesToScroll * -1;\r\n            counter = _.options.slidesToScroll * -1;\r\n            max = _.slideCount * 2;\r\n        }\r\n\r\n        while (breakPoint < max) {\r\n            indexes.push(breakPoint);\r\n            breakPoint = counter + _.options.slidesToScroll;\r\n            counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;\r\n        }\r\n\r\n        return indexes;\r\n\r\n    };\r\n\r\n    Slick.prototype.getSlick = function () {\r\n\r\n        return this;\r\n\r\n    };\r\n\r\n    Slick.prototype.getSlideCount = function () {\r\n\r\n        var _ = this,\r\n            slidesTraversed, swipedSlide, centerOffset;\r\n\r\n        centerOffset = _.options.centerMode === true ? _.slideWidth * Math.floor(_.options.slidesToShow / 2) : 0;\r\n\r\n        if (_.options.swipeToSlide === true) {\r\n            _.$slideTrack.find('.slick-slide').each(function (index, slide) {\r\n                if (slide.offsetLeft - centerOffset + ($(slide).outerWidth() / 2) > (_.swipeLeft * -1)) {\r\n                    swipedSlide = slide;\r\n                    return false;\r\n                }\r\n            });\r\n\r\n            slidesTraversed = Math.abs($(swipedSlide).attr('data-slick-index') - _.currentSlide) || 1;\r\n\r\n            return slidesTraversed;\r\n\r\n        } else {\r\n            return _.options.slidesToScroll;\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.goTo = Slick.prototype.slickGoTo = function (slide, dontAnimate) {\r\n\r\n        var _ = this;\r\n\r\n        _.changeSlide({\r\n            data: {\r\n                message: 'index',\r\n                index: parseInt(slide)\r\n            }\r\n        }, dontAnimate);\r\n\r\n    };\r\n\r\n    Slick.prototype.init = function (creation) {\r\n\r\n        var _ = this;\r\n\r\n        if (!$(_.$slider).hasClass('slick-initialized')) {\r\n\r\n            $(_.$slider).addClass('slick-initialized');\r\n\r\n            _.buildRows();\r\n            _.buildOut();\r\n            _.setProps();\r\n            _.startLoad();\r\n            _.loadSlider();\r\n            _.initializeEvents();\r\n            _.updateArrows();\r\n            _.updateDots();\r\n            _.checkResponsive(true);\r\n            _.focusHandler();\r\n\r\n        }\r\n\r\n        if (creation) {\r\n            _.$slider.trigger('init', [_]);\r\n        }\r\n\r\n        if (_.options.accessibility === true) {\r\n            _.initADA();\r\n        }\r\n\r\n        if (_.options.autoplay) {\r\n\r\n            _.paused = false;\r\n            _.autoPlay();\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.initADA = function () {\r\n        var _ = this,\r\n            numDotGroups = Math.ceil(_.slideCount / _.options.slidesToShow),\r\n            tabControlIndexes = _.getNavigableIndexes().filter(function (val) {\r\n                return (val >= 0) && (val < _.slideCount);\r\n            });\r\n\r\n        _.$slides.add(_.$slideTrack.find('.slick-cloned')).attr({\r\n            'aria-hidden': 'true',\r\n            'tabindex': '-1'\r\n        }).find('a, input, button, select').attr({\r\n            'tabindex': '-1'\r\n        });\r\n\r\n        if (_.$dots !== null) {\r\n            _.$slides.not(_.$slideTrack.find('.slick-cloned')).each(function (i) {\r\n                var slideControlIndex = tabControlIndexes.indexOf(i);\r\n\r\n                $(this).attr({\r\n                    //'role': 'tabpanel',\r\n                    'id': 'slick-slide' + _.instanceUid + i\r\n                });\r\n\r\n                if (slideControlIndex !== -1) {\r\n                    var ariaButtonControl = 'slick-slide-control' + _.instanceUid + slideControlIndex\r\n                    if ($('#' + ariaButtonControl).length) {\r\n                        $(this).attr({\r\n                            //'aria-describedby': ariaButtonControl\r\n                        });\r\n                    }\r\n                }\r\n            });\r\n\r\n            _.$dots.find('li').each(function (i) {\r\n                var mappedSlideIndex = tabControlIndexes[i];\r\n\r\n                $(this).find('button').first().attr({\r\n                    'id': 'slick-slide-control' + _.instanceUid + i,\r\n                    //'aria-controls': 'slick-slide' + _.instanceUid + mappedSlideIndex,\r\n                    'aria-label': 'Go to slide' + ' ' + (i + 1),\r\n                    'aria-selected': null\r\n                });\r\n\r\n            }).eq(_.currentSlide).find('button').attr({\r\n                'aria-selected': 'true',\r\n                'tabindex': '0'\r\n            }).end();\r\n        }\r\n\r\n        for (var i = _.currentSlide, max = i + _.options.slidesToShow; i < max; i++) {\r\n            if (_.options.focusOnChange) {\r\n                _.$slides.eq(i).attr({ 'tabindex': '0' });\r\n            } else {\r\n                _.$slides.eq(i).removeAttr('tabindex');\r\n            }\r\n        }\r\n\r\n        _.activateADA();\r\n\r\n    };\r\n\r\n    Slick.prototype.initArrowEvents = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\r\n            _.$prevArrow\r\n                .off('click.slick')\r\n                .on('click.slick', {\r\n                    message: 'previous'\r\n                }, _.changeSlide);\r\n            _.$nextArrow\r\n                .off('click.slick')\r\n                .on('click.slick', {\r\n                    message: 'next'\r\n                }, _.changeSlide);\r\n\r\n            if (_.options.accessibility === true) {\r\n                _.$prevArrow.on('keydown.slick', _.keyHandler);\r\n                _.$nextArrow.on('keydown.slick', _.keyHandler);\r\n            }\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.initDotEvents = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\r\n            $('li', _.$dots).on('click.slick', {\r\n                message: 'index'\r\n            }, _.changeSlide);\r\n\r\n            if (_.options.accessibility === true) {\r\n                _.$dots.on('keydown.slick', _.keyHandler);\r\n            }\r\n        }\r\n\r\n        if (_.options.dots === true && _.options.pauseOnDotsHover === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n            $('li', _.$dots)\r\n                .on('mouseenter.slick', $.proxy(_.interrupt, _, true))\r\n                .on('mouseleave.slick', $.proxy(_.interrupt, _, false));\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.initSlideEvents = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.pauseOnHover) {\r\n\r\n            _.$list.on('mouseenter.slick', $.proxy(_.interrupt, _, true));\r\n            _.$list.on('mouseleave.slick', $.proxy(_.interrupt, _, false));\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.initializeEvents = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.initArrowEvents();\r\n\r\n        _.initDotEvents();\r\n        _.initSlideEvents();\r\n\r\n        _.$list.on('touchstart.slick mousedown.slick', {\r\n            action: 'start'\r\n        }, _.swipeHandler);\r\n        _.$list.on('touchmove.slick mousemove.slick', {\r\n            action: 'move'\r\n        }, _.swipeHandler);\r\n        _.$list.on('touchend.slick mouseup.slick', {\r\n            action: 'end'\r\n        }, _.swipeHandler);\r\n        _.$list.on('touchcancel.slick mouseleave.slick', {\r\n            action: 'end'\r\n        }, _.swipeHandler);\r\n\r\n        _.$list.on('click.slick', _.clickHandler);\r\n\r\n        $(document).on(_.visibilityChange, $.proxy(_.visibility, _));\r\n\r\n        if (_.options.accessibility === true) {\r\n            _.$list.on('keydown.slick', _.keyHandler);\r\n        }\r\n\r\n        if (_.options.focusOnSelect === true) {\r\n            $(_.$slideTrack).children().on('click.slick', _.selectHandler);\r\n        }\r\n\r\n        $(window).on('orientationchange.slick.slick-' + _.instanceUid, $.proxy(_.orientationChange, _));\r\n\r\n        $(window).on('resize.slick.slick-' + _.instanceUid, $.proxy(_.resize, _));\r\n\r\n        $('[draggable!=true]', _.$slideTrack).on('dragstart', _.preventDefault);\r\n\r\n        $(window).on('load.slick.slick-' + _.instanceUid, _.setPosition);\r\n        $(_.setPosition);\r\n\r\n    };\r\n\r\n    Slick.prototype.initUI = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n            _.$prevArrow.show();\r\n            _.$nextArrow.show();\r\n\r\n        }\r\n\r\n        if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n            _.$dots.show();\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.keyHandler = function (event) {\r\n\r\n        var _ = this;\r\n        //Dont slide if the cursor is inside the form fields and arrow keys are pressed\r\n        if (!event.target.tagName.match('TEXTAREA|INPUT|SELECT')) {\r\n            if (event.keyCode === 37 && _.options.accessibility === true) {\r\n                _.changeSlide({\r\n                    data: {\r\n                        message: _.options.rtl === true ? 'next' : 'previous'\r\n                    }\r\n                });\r\n            } else if (event.keyCode === 39 && _.options.accessibility === true) {\r\n                _.changeSlide({\r\n                    data: {\r\n                        message: _.options.rtl === true ? 'previous' : 'next'\r\n                    }\r\n                });\r\n            }\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.lazyLoad = function () {\r\n\r\n        var _ = this,\r\n            loadRange, cloneRange, rangeStart, rangeEnd;\r\n\r\n        function loadImages(imagesScope) {\r\n\r\n            $('img[data-lazy]', imagesScope).each(function () {\r\n\r\n                var image = $(this),\r\n                    imageSource = $(this).attr('data-lazy'),\r\n                    imageSrcSet = $(this).attr('data-srcset'),\r\n                    imageSizes = $(this).attr('data-sizes') || _.$slider.attr('data-sizes'),\r\n                    imageToLoad = document.createElement('img');\r\n\r\n                imageToLoad.onload = function () {\r\n\r\n                    image\r\n                        .animate({ opacity: 0 }, 100, function () {\r\n\r\n                            if (imageSrcSet) {\r\n                                image\r\n                                    .attr('srcset', imageSrcSet);\r\n\r\n                                if (imageSizes) {\r\n                                    image\r\n                                        .attr('sizes', imageSizes);\r\n                                }\r\n                            }\r\n\r\n                            image\r\n                                .attr('src', imageSource)\r\n                                .animate({ opacity: 1 }, 200, function () {\r\n                                    image\r\n                                        .removeAttr('data-lazy data-srcset data-sizes')\r\n                                        .removeClass('slick-loading');\r\n                                });\r\n                            _.$slider.trigger('lazyLoaded', [_, image, imageSource]);\r\n                        });\r\n\r\n                };\r\n\r\n                imageToLoad.onerror = function () {\r\n\r\n                    image\r\n                        .removeAttr('data-lazy')\r\n                        .removeClass('slick-loading')\r\n                        .addClass('slick-lazyload-error');\r\n\r\n                    _.$slider.trigger('lazyLoadError', [_, image, imageSource]);\r\n\r\n                };\r\n\r\n                imageToLoad.src = imageSource;\r\n\r\n            });\r\n\r\n        }\r\n\r\n        if (_.options.centerMode === true) {\r\n            if (_.options.infinite === true) {\r\n                rangeStart = _.currentSlide + (_.options.slidesToShow / 2 + 1);\r\n                rangeEnd = rangeStart + _.options.slidesToShow + 2;\r\n            } else {\r\n                rangeStart = Math.max(0, _.currentSlide - (_.options.slidesToShow / 2 + 1));\r\n                rangeEnd = 2 + (_.options.slidesToShow / 2 + 1) + _.currentSlide;\r\n            }\r\n        } else {\r\n            rangeStart = _.options.infinite ? _.options.slidesToShow + _.currentSlide : _.currentSlide;\r\n            rangeEnd = Math.ceil(rangeStart + _.options.slidesToShow);\r\n            if (_.options.fade === true) {\r\n                if (rangeStart > 0) rangeStart--;\r\n                if (rangeEnd <= _.slideCount) rangeEnd++;\r\n            }\r\n        }\r\n\r\n        loadRange = _.$slider.find('.slick-slide').slice(rangeStart, rangeEnd);\r\n\r\n        if (_.options.lazyLoad === 'anticipated') {\r\n            var prevSlide = rangeStart - 1,\r\n                nextSlide = rangeEnd,\r\n                $slides = _.$slider.find('.slick-slide');\r\n\r\n            for (var i = 0; i < _.options.slidesToScroll; i++) {\r\n                if (prevSlide < 0) prevSlide = _.slideCount - 1;\r\n                loadRange = loadRange.add($slides.eq(prevSlide));\r\n                loadRange = loadRange.add($slides.eq(nextSlide));\r\n                prevSlide--;\r\n                nextSlide++;\r\n            }\r\n        }\r\n\r\n        loadImages(loadRange);\r\n\r\n        if (_.slideCount <= _.options.slidesToShow) {\r\n            cloneRange = _.$slider.find('.slick-slide');\r\n            loadImages(cloneRange);\r\n        } else\r\n            if (_.currentSlide >= _.slideCount - _.options.slidesToShow) {\r\n                cloneRange = _.$slider.find('.slick-cloned').slice(0, _.options.slidesToShow);\r\n                loadImages(cloneRange);\r\n            } else if (_.currentSlide === 0) {\r\n                cloneRange = _.$slider.find('.slick-cloned').slice(_.options.slidesToShow * -1);\r\n                loadImages(cloneRange);\r\n            }\r\n\r\n    };\r\n\r\n    Slick.prototype.loadSlider = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.setPosition();\r\n\r\n        _.$slideTrack.css({\r\n            opacity: 1\r\n        });\r\n\r\n        _.$slider.removeClass('slick-loading');\r\n\r\n        _.initUI();\r\n\r\n        if (_.options.lazyLoad === 'progressive') {\r\n            _.progressiveLazyLoad();\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.next = Slick.prototype.slickNext = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.changeSlide({\r\n            data: {\r\n                message: 'next'\r\n            }\r\n        });\r\n\r\n    };\r\n\r\n    Slick.prototype.orientationChange = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.checkResponsive();\r\n        _.setPosition();\r\n\r\n    };\r\n\r\n    Slick.prototype.pause = Slick.prototype.slickPause = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.autoPlayClear();\r\n        _.paused = true;\r\n\r\n    };\r\n\r\n    Slick.prototype.play = Slick.prototype.slickPlay = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.autoPlay();\r\n        _.options.autoplay = true;\r\n        _.paused = false;\r\n        _.focussed = false;\r\n        _.interrupted = false;\r\n\r\n    };\r\n\r\n    Slick.prototype.postSlide = function (index) {\r\n\r\n        var _ = this;\r\n\r\n        if (!_.unslicked) {\r\n\r\n            _.$slider.trigger('afterChange', [_, index]);\r\n\r\n            _.animating = false;\r\n\r\n            if (_.slideCount > _.options.slidesToShow) {\r\n                _.setPosition();\r\n            }\r\n\r\n            _.swipeLeft = null;\r\n\r\n            if (_.options.autoplay) {\r\n                _.autoPlay();\r\n            }\r\n\r\n            if (_.options.accessibility === true) {\r\n                _.initADA();\r\n\r\n                if (_.options.focusOnChange) {\r\n                    var $currentSlide = $(_.$slides.get(_.currentSlide));\r\n                    $currentSlide.attr('tabindex', 0).focus();\r\n                }\r\n            }\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.prev = Slick.prototype.slickPrev = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.changeSlide({\r\n            data: {\r\n                message: 'previous'\r\n            }\r\n        });\r\n\r\n    };\r\n\r\n    Slick.prototype.preventDefault = function (event) {\r\n\r\n        event.preventDefault();\r\n\r\n    };\r\n\r\n    Slick.prototype.progressiveLazyLoad = function (tryCount) {\r\n\r\n        tryCount = tryCount || 1;\r\n\r\n        var _ = this,\r\n            $imgsToLoad = $('img[data-lazy]', _.$slider),\r\n            image,\r\n            imageSource,\r\n            imageSrcSet,\r\n            imageSizes,\r\n            imageToLoad;\r\n\r\n        if ($imgsToLoad.length) {\r\n\r\n            image = $imgsToLoad.first();\r\n            imageSource = image.attr('data-lazy');\r\n            imageSrcSet = image.attr('data-srcset');\r\n            imageSizes = image.attr('data-sizes') || _.$slider.attr('data-sizes');\r\n            imageToLoad = document.createElement('img');\r\n\r\n            imageToLoad.onload = function () {\r\n\r\n                if (imageSrcSet) {\r\n                    image\r\n                        .attr('srcset', imageSrcSet);\r\n\r\n                    if (imageSizes) {\r\n                        image\r\n                            .attr('sizes', imageSizes);\r\n                    }\r\n                }\r\n\r\n                image\r\n                    .attr('src', imageSource)\r\n                    .removeAttr('data-lazy data-srcset data-sizes')\r\n                    .removeClass('slick-loading');\r\n\r\n                if (_.options.adaptiveHeight === true) {\r\n                    _.setPosition();\r\n                }\r\n\r\n                _.$slider.trigger('lazyLoaded', [_, image, imageSource]);\r\n                _.progressiveLazyLoad();\r\n\r\n            };\r\n\r\n            imageToLoad.onerror = function () {\r\n\r\n                if (tryCount < 3) {\r\n\r\n                    /**\r\n                     * try to load the image 3 times,\r\n                     * leave a slight delay so we don't get\r\n                     * servers blocking the request.\r\n                     */\r\n                    setTimeout(function () {\r\n                        _.progressiveLazyLoad(tryCount + 1);\r\n                    }, 500);\r\n\r\n                } else {\r\n\r\n                    image\r\n                        .removeAttr('data-lazy')\r\n                        .removeClass('slick-loading')\r\n                        .addClass('slick-lazyload-error');\r\n\r\n                    _.$slider.trigger('lazyLoadError', [_, image, imageSource]);\r\n\r\n                    _.progressiveLazyLoad();\r\n\r\n                }\r\n\r\n            };\r\n\r\n            imageToLoad.src = imageSource;\r\n\r\n        } else {\r\n\r\n            _.$slider.trigger('allImagesLoaded', [_]);\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.refresh = function (initializing) {\r\n\r\n        var _ = this, currentSlide, lastVisibleIndex;\r\n\r\n        lastVisibleIndex = _.slideCount - _.options.slidesToShow;\r\n\r\n        // in non-infinite sliders, we don't want to go past the\r\n        // last visible index.\r\n        if (!_.options.infinite && (_.currentSlide > lastVisibleIndex)) {\r\n            _.currentSlide = lastVisibleIndex;\r\n        }\r\n\r\n        // if less slides than to show, go to start.\r\n        if (_.slideCount <= _.options.slidesToShow) {\r\n            _.currentSlide = 0;\r\n\r\n        }\r\n\r\n        currentSlide = _.currentSlide;\r\n\r\n        _.destroy(true);\r\n\r\n        $.extend(_, _.initials, { currentSlide: currentSlide });\r\n\r\n        _.init();\r\n\r\n        if (!initializing) {\r\n\r\n            _.changeSlide({\r\n                data: {\r\n                    message: 'index',\r\n                    index: currentSlide\r\n                }\r\n            }, false);\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.registerBreakpoints = function () {\r\n\r\n        var _ = this, breakpoint, currentBreakpoint, l,\r\n            responsiveSettings = _.options.responsive || null;\r\n\r\n        if ($.type(responsiveSettings) === 'array' && responsiveSettings.length) {\r\n\r\n            _.respondTo = _.options.respondTo || 'window';\r\n\r\n            for (breakpoint in responsiveSettings) {\r\n\r\n                l = _.breakpoints.length - 1;\r\n\r\n                if (responsiveSettings.hasOwnProperty(breakpoint)) {\r\n                    currentBreakpoint = responsiveSettings[breakpoint].breakpoint;\r\n\r\n                    // loop through the breakpoints and cut out any existing\r\n                    // ones with the same breakpoint number, we don't want dupes.\r\n                    while (l >= 0) {\r\n                        if (_.breakpoints[l] && _.breakpoints[l] === currentBreakpoint) {\r\n                            _.breakpoints.splice(l, 1);\r\n                        }\r\n                        l--;\r\n                    }\r\n\r\n                    _.breakpoints.push(currentBreakpoint);\r\n                    _.breakpointSettings[currentBreakpoint] = responsiveSettings[breakpoint].settings;\r\n\r\n                }\r\n\r\n            }\r\n\r\n            _.breakpoints.sort(function (a, b) {\r\n                return (_.options.mobileFirst) ? a - b : b - a;\r\n            });\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.reinit = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.$slides =\r\n            _.$slideTrack\r\n                .children(_.options.slide)\r\n                .addClass('slick-slide');\r\n\r\n        _.slideCount = _.$slides.length;\r\n\r\n        if (_.currentSlide >= _.slideCount && _.currentSlide !== 0) {\r\n            _.currentSlide = _.currentSlide - _.options.slidesToScroll;\r\n        }\r\n\r\n        if (_.slideCount <= _.options.slidesToShow) {\r\n            _.currentSlide = 0;\r\n        }\r\n\r\n        _.registerBreakpoints();\r\n\r\n        _.setProps();\r\n        _.setupInfinite();\r\n        _.buildArrows();\r\n        _.updateArrows();\r\n        _.initArrowEvents();\r\n        _.buildDots();\r\n        _.updateDots();\r\n        _.initDotEvents();\r\n        _.cleanUpSlideEvents();\r\n        _.initSlideEvents();\r\n\r\n        _.checkResponsive(false, true);\r\n\r\n        if (_.options.focusOnSelect === true) {\r\n            $(_.$slideTrack).children().on('click.slick', _.selectHandler);\r\n        }\r\n\r\n        _.setSlideClasses(typeof _.currentSlide === 'number' ? _.currentSlide : 0);\r\n\r\n        _.setPosition();\r\n        _.focusHandler();\r\n\r\n        _.paused = !_.options.autoplay;\r\n        _.autoPlay();\r\n\r\n        _.$slider.trigger('reInit', [_]);\r\n\r\n    };\r\n\r\n    Slick.prototype.resize = function () {\r\n\r\n        var _ = this;\r\n\r\n        if ($(window).width() !== _.windowWidth) {\r\n            clearTimeout(_.windowDelay);\r\n            _.windowDelay = window.setTimeout(function () {\r\n                _.windowWidth = $(window).width();\r\n                _.checkResponsive();\r\n                if (!_.unslicked) { _.setPosition(); }\r\n            }, 50);\r\n        }\r\n    };\r\n\r\n    Slick.prototype.removeSlide = Slick.prototype.slickRemove = function (index, removeBefore, removeAll) {\r\n\r\n        var _ = this;\r\n\r\n        if (typeof (index) === 'boolean') {\r\n            removeBefore = index;\r\n            index = removeBefore === true ? 0 : _.slideCount - 1;\r\n        } else {\r\n            index = removeBefore === true ? --index : index;\r\n        }\r\n\r\n        if (_.slideCount < 1 || index < 0 || index > _.slideCount - 1) {\r\n            return false;\r\n        }\r\n\r\n        _.unload();\r\n\r\n        if (removeAll === true) {\r\n            _.$slideTrack.children().remove();\r\n        } else {\r\n            _.$slideTrack.children(this.options.slide).eq(index).remove();\r\n        }\r\n\r\n        _.$slides = _.$slideTrack.children(this.options.slide);\r\n\r\n        _.$slideTrack.children(this.options.slide).detach();\r\n\r\n        _.$slideTrack.append(_.$slides);\r\n\r\n        _.$slidesCache = _.$slides;\r\n\r\n        _.reinit();\r\n\r\n    };\r\n\r\n    Slick.prototype.setCSS = function (position) {\r\n\r\n        var _ = this,\r\n            positionProps = {},\r\n            x, y;\r\n\r\n        if (_.options.rtl === true) {\r\n            position = -position;\r\n        }\r\n        x = _.positionProp == 'left' ? Math.ceil(position) + 'px' : '0px';\r\n        y = _.positionProp == 'top' ? Math.ceil(position) + 'px' : '0px';\r\n\r\n        positionProps[_.positionProp] = position;\r\n\r\n        if (_.transformsEnabled === false) {\r\n            _.$slideTrack.css(positionProps);\r\n        } else {\r\n            positionProps = {};\r\n            if (_.cssTransitions === false) {\r\n                positionProps[_.animType] = 'translate(' + x + ', ' + y + ')';\r\n                _.$slideTrack.css(positionProps);\r\n            } else {\r\n                positionProps[_.animType] = 'translate3d(' + x + ', ' + y + ', 0px)';\r\n                _.$slideTrack.css(positionProps);\r\n            }\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.setDimensions = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.vertical === false) {\r\n            if (_.options.centerMode === true) {\r\n                _.$list.css({\r\n                    padding: ('0px ' + _.options.centerPadding)\r\n                });\r\n            }\r\n        } else {\r\n            _.$list.height(_.$slides.first().outerHeight(true) * _.options.slidesToShow);\r\n            if (_.options.centerMode === true) {\r\n                _.$list.css({\r\n                    padding: (_.options.centerPadding + ' 0px')\r\n                });\r\n            }\r\n        }\r\n\r\n        _.listWidth = _.$list.width();\r\n        _.listHeight = _.$list.height();\r\n\r\n\r\n        if (_.options.vertical === false && _.options.variableWidth === false) {\r\n            _.slideWidth = Math.ceil(_.listWidth / _.options.slidesToShow);\r\n            _.$slideTrack.width(Math.ceil((_.slideWidth * _.$slideTrack.children('.slick-slide').length)));\r\n\r\n        } else if (_.options.variableWidth === true) {\r\n            _.$slideTrack.width(5000 * _.slideCount);\r\n        } else {\r\n            _.slideWidth = Math.ceil(_.listWidth);\r\n            _.$slideTrack.height(Math.ceil((_.$slides.first().outerHeight(true) * _.$slideTrack.children('.slick-slide').length)));\r\n        }\r\n\r\n        var offset = _.$slides.first().outerWidth(true) - _.$slides.first().width();\r\n        if (_.options.variableWidth === false) _.$slideTrack.children('.slick-slide').width(_.slideWidth - offset);\r\n\r\n    };\r\n\r\n    Slick.prototype.setFade = function () {\r\n\r\n        var _ = this,\r\n            targetLeft;\r\n\r\n        _.$slides.each(function (index, element) {\r\n            targetLeft = (_.slideWidth * index) * -1;\r\n            if (_.options.rtl === true) {\r\n                $(element).css({\r\n                    position: 'relative',\r\n                    right: targetLeft,\r\n                    top: 0,\r\n                    zIndex: _.options.zIndex - 2,\r\n                    opacity: 0\r\n                });\r\n            } else {\r\n                $(element).css({\r\n                    position: 'relative',\r\n                    left: targetLeft,\r\n                    top: 0,\r\n                    zIndex: _.options.zIndex - 2,\r\n                    opacity: 0\r\n                });\r\n            }\r\n        });\r\n\r\n        _.$slides.eq(_.currentSlide).css({\r\n            zIndex: _.options.zIndex - 1,\r\n            opacity: 1\r\n        });\r\n\r\n    };\r\n\r\n    Slick.prototype.setHeight = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.slidesToShow === 1 && _.options.adaptiveHeight === true && _.options.vertical === false) {\r\n            var targetHeight = _.$slides.eq(_.currentSlide).outerHeight(true);\r\n            _.$list.css('height', targetHeight);\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.setOption =\r\n        Slick.prototype.slickSetOption = function () {\r\n\r\n            /**\r\n             * accepts arguments in format of:\r\n             *\r\n             *  - for changing a single option's value:\r\n             *     .slick(\"setOption\", option, value, refresh )\r\n             *\r\n             *  - for changing a set of responsive options:\r\n             *     .slick(\"setOption\", 'responsive', [{}, ...], refresh )\r\n             *\r\n             *  - for updating multiple values at once (not responsive)\r\n             *     .slick(\"setOption\", { 'option': value, ... }, refresh )\r\n             */\r\n\r\n            var _ = this, l, item, option, value, refresh = false, type;\r\n\r\n            if ($.type(arguments[0]) === 'object') {\r\n\r\n                option = arguments[0];\r\n                refresh = arguments[1];\r\n                type = 'multiple';\r\n\r\n            } else if ($.type(arguments[0]) === 'string') {\r\n\r\n                option = arguments[0];\r\n                value = arguments[1];\r\n                refresh = arguments[2];\r\n\r\n                if (arguments[0] === 'responsive' && $.type(arguments[1]) === 'array') {\r\n\r\n                    type = 'responsive';\r\n\r\n                } else if (typeof arguments[1] !== 'undefined') {\r\n\r\n                    type = 'single';\r\n\r\n                }\r\n\r\n            }\r\n\r\n            if (type === 'single') {\r\n\r\n                _.options[option] = value;\r\n\r\n\r\n            } else if (type === 'multiple') {\r\n\r\n                $.each(option, function (opt, val) {\r\n\r\n                    _.options[opt] = val;\r\n\r\n                });\r\n\r\n\r\n            } else if (type === 'responsive') {\r\n\r\n                for (item in value) {\r\n\r\n                    if ($.type(_.options.responsive) !== 'array') {\r\n\r\n                        _.options.responsive = [value[item]];\r\n\r\n                    } else {\r\n\r\n                        l = _.options.responsive.length - 1;\r\n\r\n                        // loop through the responsive object and splice out duplicates.\r\n                        while (l >= 0) {\r\n\r\n                            if (_.options.responsive[l].breakpoint === value[item].breakpoint) {\r\n\r\n                                _.options.responsive.splice(l, 1);\r\n\r\n                            }\r\n\r\n                            l--;\r\n\r\n                        }\r\n\r\n                        _.options.responsive.push(value[item]);\r\n\r\n                    }\r\n\r\n                }\r\n\r\n            }\r\n\r\n            if (refresh) {\r\n\r\n                _.unload();\r\n                _.reinit();\r\n\r\n            }\r\n\r\n        };\r\n\r\n    Slick.prototype.setPosition = function () {\r\n\r\n        var _ = this;\r\n\r\n        _.setDimensions();\r\n\r\n        _.setHeight();\r\n\r\n        if (_.options.fade === false) {\r\n            _.setCSS(_.getLeft(_.currentSlide));\r\n        } else {\r\n            _.setFade();\r\n        }\r\n\r\n        _.$slider.trigger('setPosition', [_]);\r\n\r\n    };\r\n\r\n    Slick.prototype.setProps = function () {\r\n\r\n        var _ = this,\r\n            bodyStyle = document.body.style;\r\n\r\n        _.positionProp = _.options.vertical === true ? 'top' : 'left';\r\n\r\n        if (_.positionProp === 'top') {\r\n            _.$slider.addClass('slick-vertical');\r\n        } else {\r\n            _.$slider.removeClass('slick-vertical');\r\n        }\r\n\r\n        if (bodyStyle.WebkitTransition !== undefined ||\r\n            bodyStyle.MozTransition !== undefined ||\r\n            bodyStyle.msTransition !== undefined) {\r\n            if (_.options.useCSS === true) {\r\n                _.cssTransitions = true;\r\n            }\r\n        }\r\n\r\n        if (_.options.fade) {\r\n            if (typeof _.options.zIndex === 'number') {\r\n                if (_.options.zIndex < 3) {\r\n                    _.options.zIndex = 3;\r\n                }\r\n            } else {\r\n                _.options.zIndex = _.defaults.zIndex;\r\n            }\r\n        }\r\n\r\n        if (bodyStyle.OTransform !== undefined) {\r\n            _.animType = 'OTransform';\r\n            _.transformType = '-o-transform';\r\n            _.transitionType = 'OTransition';\r\n            if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = false;\r\n        }\r\n        if (bodyStyle.MozTransform !== undefined) {\r\n            _.animType = 'MozTransform';\r\n            _.transformType = '-moz-transform';\r\n            _.transitionType = 'MozTransition';\r\n            if (bodyStyle.perspectiveProperty === undefined && bodyStyle.MozPerspective === undefined) _.animType = false;\r\n        }\r\n        if (bodyStyle.webkitTransform !== undefined) {\r\n            _.animType = 'webkitTransform';\r\n            _.transformType = '-webkit-transform';\r\n            _.transitionType = 'webkitTransition';\r\n            if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = false;\r\n        }\r\n        if (bodyStyle.msTransform !== undefined) {\r\n            _.animType = 'msTransform';\r\n            _.transformType = '-ms-transform';\r\n            _.transitionType = 'msTransition';\r\n            if (bodyStyle.msTransform === undefined) _.animType = false;\r\n        }\r\n        if (bodyStyle.transform !== undefined && _.animType !== false) {\r\n            _.animType = 'transform';\r\n            _.transformType = 'transform';\r\n            _.transitionType = 'transition';\r\n        }\r\n        _.transformsEnabled = _.options.useTransform && (_.animType !== null && _.animType !== false);\r\n    };\r\n\r\n\r\n    Slick.prototype.setSlideClasses = function (index) {\r\n\r\n        var _ = this,\r\n            centerOffset, allSlides, indexOffset, remainder;\r\n\r\n        allSlides = _.$slider\r\n            .find('.slick-slide')\r\n            .removeClass('slick-active slick-center slick-current')\r\n            .attr('aria-hidden', 'true');\r\n\r\n        _.$slides\r\n            .eq(index)\r\n            .addClass('slick-current');\r\n\r\n        if (_.options.centerMode === true) {\r\n\r\n            var evenCoef = _.options.slidesToShow % 2 === 0 ? 1 : 0;\r\n\r\n            centerOffset = Math.floor(_.options.slidesToShow / 2);\r\n\r\n            if (_.options.infinite === true) {\r\n\r\n                if (index >= centerOffset && index <= (_.slideCount - 1) - centerOffset) {\r\n                    _.$slides\r\n                        .slice(index - centerOffset + evenCoef, index + centerOffset + 1)\r\n                        .addClass('slick-active')\r\n                        .attr('aria-hidden', 'false');\r\n\r\n                } else {\r\n\r\n                    indexOffset = _.options.slidesToShow + index;\r\n                    allSlides\r\n                        .slice(indexOffset - centerOffset + 1 + evenCoef, indexOffset + centerOffset + 2)\r\n                        .addClass('slick-active')\r\n                        .attr('aria-hidden', 'false');\r\n\r\n                }\r\n\r\n                if (index === 0) {\r\n\r\n                    allSlides\r\n                        .eq(allSlides.length - 1 - _.options.slidesToShow)\r\n                        .addClass('slick-center');\r\n\r\n                } else if (index === _.slideCount - 1) {\r\n\r\n                    allSlides\r\n                        .eq(_.options.slidesToShow)\r\n                        .addClass('slick-center');\r\n\r\n                }\r\n\r\n            }\r\n\r\n            _.$slides\r\n                .eq(index)\r\n                .addClass('slick-center');\r\n\r\n        } else {\r\n\r\n            if (index >= 0 && index <= (_.slideCount - _.options.slidesToShow)) {\r\n\r\n                _.$slides\r\n                    .slice(index, index + _.options.slidesToShow)\r\n                    .addClass('slick-active')\r\n                    .attr('aria-hidden', 'false');\r\n\r\n            } else if (allSlides.length <= _.options.slidesToShow) {\r\n\r\n                allSlides\r\n                    .addClass('slick-active')\r\n                    .attr('aria-hidden', 'false');\r\n\r\n            } else {\r\n\r\n                remainder = _.slideCount % _.options.slidesToShow;\r\n                indexOffset = _.options.infinite === true ? _.options.slidesToShow + index : index;\r\n\r\n                if (_.options.slidesToShow == _.options.slidesToScroll && (_.slideCount - index) < _.options.slidesToShow) {\r\n\r\n                    allSlides\r\n                        .slice(indexOffset - (_.options.slidesToShow - remainder), indexOffset + remainder)\r\n                        .addClass('slick-active')\r\n                        .attr('aria-hidden', 'false');\r\n\r\n                } else {\r\n\r\n                    allSlides\r\n                        .slice(indexOffset, indexOffset + _.options.slidesToShow)\r\n                        .addClass('slick-active')\r\n                        .attr('aria-hidden', 'false');\r\n\r\n                }\r\n\r\n            }\r\n\r\n        }\r\n\r\n        if (_.options.lazyLoad === 'ondemand' || _.options.lazyLoad === 'anticipated') {\r\n            _.lazyLoad();\r\n        }\r\n    };\r\n\r\n    Slick.prototype.setupInfinite = function () {\r\n\r\n        var _ = this,\r\n            i, slideIndex, infiniteCount;\r\n\r\n        if (_.options.fade === true) {\r\n            _.options.centerMode = false;\r\n        }\r\n\r\n        if (_.options.infinite === true && _.options.fade === false) {\r\n\r\n            slideIndex = null;\r\n\r\n            if (_.slideCount > _.options.slidesToShow) {\r\n\r\n                if (_.options.centerMode === true) {\r\n                    infiniteCount = _.options.slidesToShow + 1;\r\n                } else {\r\n                    infiniteCount = _.options.slidesToShow;\r\n                }\r\n\r\n                for (i = _.slideCount; i > (_.slideCount -\r\n                    infiniteCount); i -= 1) {\r\n                    slideIndex = i - 1;\r\n                    $(_.$slides[slideIndex]).clone(true).attr('id', '')\r\n                        .attr('data-slick-index', slideIndex - _.slideCount)\r\n                        .prependTo(_.$slideTrack).addClass('slick-cloned');\r\n                }\r\n                for (i = 0; i < infiniteCount + _.slideCount; i += 1) {\r\n                    slideIndex = i;\r\n                    $(_.$slides[slideIndex]).clone(true).attr('id', '')\r\n                        .attr('data-slick-index', slideIndex + _.slideCount)\r\n                        .appendTo(_.$slideTrack).addClass('slick-cloned');\r\n                }\r\n                _.$slideTrack.find('.slick-cloned').find('[id]').each(function () {\r\n                    $(this).attr('id', '');\r\n                });\r\n\r\n            }\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.interrupt = function (toggle) {\r\n\r\n        var _ = this;\r\n\r\n        if (!toggle) {\r\n            _.autoPlay();\r\n        }\r\n        _.interrupted = toggle;\r\n\r\n    };\r\n\r\n    Slick.prototype.selectHandler = function (event) {\r\n\r\n        var _ = this;\r\n\r\n        var targetElement =\r\n            $(event.target).is('.slick-slide') ?\r\n                $(event.target) :\r\n                $(event.target).parents('.slick-slide');\r\n\r\n        var index = parseInt(targetElement.attr('data-slick-index'));\r\n\r\n        if (!index) index = 0;\r\n\r\n        if (_.slideCount <= _.options.slidesToShow) {\r\n\r\n            _.slideHandler(index, false, true);\r\n            return;\r\n\r\n        }\r\n\r\n        _.slideHandler(index);\r\n\r\n    };\r\n\r\n    Slick.prototype.slideHandler = function (index, sync, dontAnimate) {\r\n\r\n        var targetSlide, animSlide, oldSlide, slideLeft, targetLeft = null,\r\n            _ = this, navTarget;\r\n\r\n        sync = sync || false;\r\n\r\n        if (_.animating === true && _.options.waitForAnimate === true) {\r\n            return;\r\n        }\r\n\r\n        if (_.options.fade === true && _.currentSlide === index) {\r\n            return;\r\n        }\r\n\r\n        if (sync === false) {\r\n            _.asNavFor(index);\r\n        }\r\n\r\n        targetSlide = index;\r\n        targetLeft = _.getLeft(targetSlide);\r\n        slideLeft = _.getLeft(_.currentSlide);\r\n\r\n        _.currentLeft = _.swipeLeft === null ? slideLeft : _.swipeLeft;\r\n\r\n        if (_.options.infinite === false && _.options.centerMode === false && (index < 0 || index > _.getDotCount() * _.options.slidesToScroll)) {\r\n            if (_.options.fade === false) {\r\n                targetSlide = _.currentSlide;\r\n                if (dontAnimate !== true && _.slideCount > _.options.slidesToShow) {\r\n                    _.animateSlide(slideLeft, function () {\r\n                        _.postSlide(targetSlide);\r\n                    });\r\n                } else {\r\n                    _.postSlide(targetSlide);\r\n                }\r\n            }\r\n            return;\r\n        } else if (_.options.infinite === false && _.options.centerMode === true && (index < 0 || index > (_.slideCount - _.options.slidesToScroll))) {\r\n            if (_.options.fade === false) {\r\n                targetSlide = _.currentSlide;\r\n                if (dontAnimate !== true && _.slideCount > _.options.slidesToShow) {\r\n                    _.animateSlide(slideLeft, function () {\r\n                        _.postSlide(targetSlide);\r\n                    });\r\n                } else {\r\n                    _.postSlide(targetSlide);\r\n                }\r\n            }\r\n            return;\r\n        }\r\n\r\n        if (_.options.autoplay) {\r\n            clearInterval(_.autoPlayTimer);\r\n        }\r\n\r\n        if (targetSlide < 0) {\r\n            if (_.slideCount % _.options.slidesToScroll !== 0) {\r\n                animSlide = _.slideCount - (_.slideCount % _.options.slidesToScroll);\r\n            } else {\r\n                animSlide = _.slideCount + targetSlide;\r\n            }\r\n        } else if (targetSlide >= _.slideCount) {\r\n            if (_.slideCount % _.options.slidesToScroll !== 0) {\r\n                animSlide = 0;\r\n            } else {\r\n                animSlide = targetSlide - _.slideCount;\r\n            }\r\n        } else {\r\n            animSlide = targetSlide;\r\n        }\r\n\r\n        _.animating = true;\r\n\r\n        _.$slider.trigger('beforeChange', [_, _.currentSlide, animSlide]);\r\n\r\n        oldSlide = _.currentSlide;\r\n        _.currentSlide = animSlide;\r\n\r\n        _.setSlideClasses(_.currentSlide);\r\n\r\n        if (_.options.asNavFor) {\r\n\r\n            navTarget = _.getNavTarget();\r\n            navTarget = navTarget.slick('getSlick');\r\n\r\n            if (navTarget.slideCount <= navTarget.options.slidesToShow) {\r\n                navTarget.setSlideClasses(_.currentSlide);\r\n            }\r\n\r\n        }\r\n\r\n        _.updateDots();\r\n        _.updateArrows();\r\n\r\n        if (_.options.fade === true) {\r\n            if (dontAnimate !== true) {\r\n\r\n                _.fadeSlideOut(oldSlide);\r\n\r\n                _.fadeSlide(animSlide, function () {\r\n                    _.postSlide(animSlide);\r\n                });\r\n\r\n            } else {\r\n                _.postSlide(animSlide);\r\n            }\r\n            _.animateHeight();\r\n            return;\r\n        }\r\n\r\n        if (dontAnimate !== true && _.slideCount > _.options.slidesToShow) {\r\n            _.animateSlide(targetLeft, function () {\r\n                _.postSlide(animSlide);\r\n            });\r\n        } else {\r\n            _.postSlide(animSlide);\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.startLoad = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n            _.$prevArrow.hide();\r\n            _.$nextArrow.hide();\r\n\r\n        }\r\n\r\n        if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n            _.$dots.hide();\r\n\r\n        }\r\n\r\n        _.$slider.addClass('slick-loading');\r\n\r\n    };\r\n\r\n    Slick.prototype.swipeDirection = function () {\r\n\r\n        var xDist, yDist, r, swipeAngle, _ = this;\r\n\r\n        xDist = _.touchObject.startX - _.touchObject.curX;\r\n        yDist = _.touchObject.startY - _.touchObject.curY;\r\n        r = Math.atan2(yDist, xDist);\r\n\r\n        swipeAngle = Math.round(r * 180 / Math.PI);\r\n        if (swipeAngle < 0) {\r\n            swipeAngle = 360 - Math.abs(swipeAngle);\r\n        }\r\n\r\n        if ((swipeAngle <= 45) && (swipeAngle >= 0)) {\r\n            return (_.options.rtl === false ? 'left' : 'right');\r\n        }\r\n        if ((swipeAngle <= 360) && (swipeAngle >= 315)) {\r\n            return (_.options.rtl === false ? 'left' : 'right');\r\n        }\r\n        if ((swipeAngle >= 135) && (swipeAngle <= 225)) {\r\n            return (_.options.rtl === false ? 'right' : 'left');\r\n        }\r\n        if (_.options.verticalSwiping === true) {\r\n            if ((swipeAngle >= 35) && (swipeAngle <= 135)) {\r\n                return 'down';\r\n            } else {\r\n                return 'up';\r\n            }\r\n        }\r\n\r\n        return 'vertical';\r\n\r\n    };\r\n\r\n    Slick.prototype.swipeEnd = function (event) {\r\n\r\n        var _ = this,\r\n            slideCount,\r\n            direction;\r\n\r\n        _.dragging = false;\r\n        _.swiping = false;\r\n\r\n        if (_.scrolling) {\r\n            _.scrolling = false;\r\n            return false;\r\n        }\r\n\r\n        _.interrupted = false;\r\n        _.shouldClick = (_.touchObject.swipeLength > 10) ? false : true;\r\n\r\n        if (_.touchObject.curX === undefined) {\r\n            return false;\r\n        }\r\n\r\n        if (_.touchObject.edgeHit === true) {\r\n            _.$slider.trigger('edge', [_, _.swipeDirection()]);\r\n        }\r\n\r\n        if (_.touchObject.swipeLength >= _.touchObject.minSwipe) {\r\n\r\n            direction = _.swipeDirection();\r\n\r\n            switch (direction) {\r\n\r\n                case 'left':\r\n                case 'down':\r\n\r\n                    slideCount =\r\n                        _.options.swipeToSlide ?\r\n                            _.checkNavigable(_.currentSlide + _.getSlideCount()) :\r\n                            _.currentSlide + _.getSlideCount();\r\n\r\n                    _.currentDirection = 0;\r\n\r\n                    break;\r\n\r\n                case 'right':\r\n                case 'up':\r\n\r\n                    slideCount =\r\n                        _.options.swipeToSlide ?\r\n                            _.checkNavigable(_.currentSlide - _.getSlideCount()) :\r\n                            _.currentSlide - _.getSlideCount();\r\n\r\n                    _.currentDirection = 1;\r\n\r\n                    break;\r\n\r\n                default:\r\n\r\n\r\n            }\r\n\r\n            if (direction != 'vertical') {\r\n\r\n                _.slideHandler(slideCount);\r\n                _.touchObject = {};\r\n                _.$slider.trigger('swipe', [_, direction]);\r\n\r\n            }\r\n\r\n        } else {\r\n\r\n            if (_.touchObject.startX !== _.touchObject.curX) {\r\n\r\n                _.slideHandler(_.currentSlide);\r\n                _.touchObject = {};\r\n\r\n            }\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.swipeHandler = function (event) {\r\n\r\n        var _ = this;\r\n\r\n        if ((_.options.swipe === false) || ('ontouchend' in document && _.options.swipe === false)) {\r\n            return;\r\n        } else if (_.options.draggable === false && event.type.indexOf('mouse') !== -1) {\r\n            return;\r\n        }\r\n\r\n        _.touchObject.fingerCount = event.originalEvent && event.originalEvent.touches !== undefined ?\r\n            event.originalEvent.touches.length : 1;\r\n\r\n        _.touchObject.minSwipe = _.listWidth / _.options\r\n            .touchThreshold;\r\n\r\n        if (_.options.verticalSwiping === true) {\r\n            _.touchObject.minSwipe = _.listHeight / _.options\r\n                .touchThreshold;\r\n        }\r\n\r\n        switch (event.data.action) {\r\n\r\n            case 'start':\r\n                _.swipeStart(event);\r\n                break;\r\n\r\n            case 'move':\r\n                _.swipeMove(event);\r\n                break;\r\n\r\n            case 'end':\r\n                _.swipeEnd(event);\r\n                break;\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.swipeMove = function (event) {\r\n\r\n        var _ = this,\r\n            edgeWasHit = false,\r\n            curLeft, swipeDirection, swipeLength, positionOffset, touches, verticalSwipeLength;\r\n\r\n        touches = event.originalEvent !== undefined ? event.originalEvent.touches : null;\r\n\r\n        if (!_.dragging || _.scrolling || touches && touches.length !== 1) {\r\n            return false;\r\n        }\r\n\r\n        curLeft = _.getLeft(_.currentSlide);\r\n\r\n        _.touchObject.curX = touches !== undefined ? touches[0].pageX : event.clientX;\r\n        _.touchObject.curY = touches !== undefined ? touches[0].pageY : event.clientY;\r\n\r\n        _.touchObject.swipeLength = Math.round(Math.sqrt(\r\n            Math.pow(_.touchObject.curX - _.touchObject.startX, 2)));\r\n\r\n        verticalSwipeLength = Math.round(Math.sqrt(\r\n            Math.pow(_.touchObject.curY - _.touchObject.startY, 2)));\r\n\r\n        if (!_.options.verticalSwiping && !_.swiping && verticalSwipeLength > 4) {\r\n            _.scrolling = true;\r\n            return false;\r\n        }\r\n\r\n        if (_.options.verticalSwiping === true) {\r\n            _.touchObject.swipeLength = verticalSwipeLength;\r\n        }\r\n\r\n        swipeDirection = _.swipeDirection();\r\n\r\n        if (event.originalEvent !== undefined && _.touchObject.swipeLength > 4) {\r\n            _.swiping = true;\r\n            event.preventDefault();\r\n        }\r\n\r\n        positionOffset = (_.options.rtl === false ? 1 : -1) * (_.touchObject.curX > _.touchObject.startX ? 1 : -1);\r\n        if (_.options.verticalSwiping === true) {\r\n            positionOffset = _.touchObject.curY > _.touchObject.startY ? 1 : -1;\r\n        }\r\n\r\n\r\n        swipeLength = _.touchObject.swipeLength;\r\n\r\n        _.touchObject.edgeHit = false;\r\n\r\n        if (_.options.infinite === false) {\r\n            if ((_.currentSlide === 0 && swipeDirection === 'right') || (_.currentSlide >= _.getDotCount() && swipeDirection === 'left')) {\r\n                swipeLength = _.touchObject.swipeLength * _.options.edgeFriction;\r\n                _.touchObject.edgeHit = true;\r\n            }\r\n        }\r\n\r\n        if (_.options.vertical === false) {\r\n            _.swipeLeft = curLeft + swipeLength * positionOffset;\r\n        } else {\r\n            _.swipeLeft = curLeft + (swipeLength * (_.$list.height() / _.listWidth)) * positionOffset;\r\n        }\r\n        if (_.options.verticalSwiping === true) {\r\n            _.swipeLeft = curLeft + swipeLength * positionOffset;\r\n        }\r\n\r\n        if (_.options.fade === true || _.options.touchMove === false) {\r\n            return false;\r\n        }\r\n\r\n        if (_.animating === true) {\r\n            _.swipeLeft = null;\r\n            return false;\r\n        }\r\n\r\n        _.setCSS(_.swipeLeft);\r\n\r\n    };\r\n\r\n    Slick.prototype.swipeStart = function (event) {\r\n\r\n        var _ = this,\r\n            touches;\r\n\r\n        _.interrupted = true;\r\n\r\n        if (_.touchObject.fingerCount !== 1 || _.slideCount <= _.options.slidesToShow) {\r\n            _.touchObject = {};\r\n            return false;\r\n        }\r\n\r\n        if (event.originalEvent !== undefined && event.originalEvent.touches !== undefined) {\r\n            touches = event.originalEvent.touches[0];\r\n        }\r\n\r\n        _.touchObject.startX = _.touchObject.curX = touches !== undefined ? touches.pageX : event.clientX;\r\n        _.touchObject.startY = _.touchObject.curY = touches !== undefined ? touches.pageY : event.clientY;\r\n\r\n        _.dragging = true;\r\n\r\n    };\r\n\r\n    Slick.prototype.unfilterSlides = Slick.prototype.slickUnfilter = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.$slidesCache !== null) {\r\n\r\n            _.unload();\r\n\r\n            _.$slideTrack.children(this.options.slide).detach();\r\n\r\n            _.$slidesCache.appendTo(_.$slideTrack);\r\n\r\n            _.reinit();\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.unload = function () {\r\n\r\n        var _ = this;\r\n\r\n        $('.slick-cloned', _.$slider).remove();\r\n\r\n        if (_.$dots) {\r\n            _.$dots.remove();\r\n        }\r\n\r\n        if (_.$prevArrow && _.htmlExpr.test(_.options.prevArrow)) {\r\n            _.$prevArrow.remove();\r\n        }\r\n\r\n        if (_.$nextArrow && _.htmlExpr.test(_.options.nextArrow)) {\r\n            _.$nextArrow.remove();\r\n        }\r\n\r\n        _.$slides\r\n            .removeClass('slick-slide slick-active slick-visible slick-current')\r\n            .attr('aria-hidden', 'true')\r\n            .css('width', '');\r\n\r\n    };\r\n\r\n    Slick.prototype.unslick = function (fromBreakpoint) {\r\n\r\n        var _ = this;\r\n        _.$slider.trigger('unslick', [_, fromBreakpoint]);\r\n        _.destroy();\r\n\r\n    };\r\n\r\n    Slick.prototype.updateArrows = function () {\r\n\r\n        var _ = this,\r\n            centerOffset;\r\n\r\n        centerOffset = Math.floor(_.options.slidesToShow / 2);\r\n\r\n        if (_.options.arrows === true &&\r\n            _.slideCount > _.options.slidesToShow &&\r\n            !_.options.infinite) {\r\n\r\n            _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n            _.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n\r\n            if (_.currentSlide === 0) {\r\n\r\n                _.$prevArrow.addClass('slick-disabled').attr('aria-disabled', 'true');\r\n                _.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n\r\n            } else if (_.currentSlide >= _.slideCount - _.options.slidesToShow && _.options.centerMode === false) {\r\n\r\n                _.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');\r\n                _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n\r\n            } else if (_.currentSlide >= _.slideCount - 1 && _.options.centerMode === true) {\r\n\r\n                _.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');\r\n                _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n\r\n            }\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.updateDots = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.$dots !== null) {\r\n\r\n            _.$dots\r\n                .find('li')\r\n                .removeClass('slick-active')\r\n                .end();\r\n\r\n            _.$dots\r\n                .find('li')\r\n                .eq(Math.floor(_.currentSlide / _.options.slidesToScroll))\r\n                .addClass('slick-active');\r\n\r\n        }\r\n\r\n    };\r\n\r\n    Slick.prototype.visibility = function () {\r\n\r\n        var _ = this;\r\n\r\n        if (_.options.autoplay) {\r\n\r\n            if (document[_.hidden]) {\r\n\r\n                _.interrupted = true;\r\n\r\n            } else {\r\n\r\n                _.interrupted = false;\r\n\r\n            }\r\n\r\n        }\r\n\r\n    };\r\n\r\n    $.fn.slick = function () {\r\n        var _ = this,\r\n            opt = arguments[0],\r\n            args = Array.prototype.slice.call(arguments, 1),\r\n            l = _.length,\r\n            i,\r\n            ret;\r\n        for (i = 0; i < l; i++) {\r\n            if (typeof opt == 'object' || typeof opt == 'undefined')\r\n                _[i].slick = new Slick(_[i], opt);\r\n            else\r\n                ret = _[i].slick[opt].apply(_[i].slick, args);\r\n            if (typeof ret != 'undefined') return ret;\r\n        }\r\n        return _;\r\n    };\r\n\r\n}));\r\n\n",
    "(function(root) {\ndefine(\"tweenLite\", [], function() {\n  return (function() {\n/*!\r\n * VERSION: 1.19.0\r\n * DATE: 2016-07-16\r\n * UPDATES AND DOCS AT: http://greensock.com\r\n *\r\n * @license Copyright (c) 2008-2016, GreenSock. All rights reserved.\r\n * This work is subject to the terms at http://greensock.com/standard-license or for\r\n * Club GreenSock members, the software agreement that was issued with your membership.\r\n * \r\n * @author: Jack Doyle, jack@greensock.com\r\n */\r\n!function (a, b) { \"use strict\"; var c = {}, d = a.GreenSockGlobals = a.GreenSockGlobals || a; if (!d.TweenLite) { var e, f, g, h, i, j = function (a) { var b, c = a.split(\".\"), e = d; for (b = 0; b < c.length; b++) e[c[b]] = e = e[c[b]] || {}; return e }, k = j(\"com.greensock\"), l = 1e-10, m = function (a) { var b, c = [], d = a.length; for (b = 0; b !== d; c.push(a[b++])); return c }, n = function () { }, o = function () { var a = Object.prototype.toString, b = a.call([]); return function (c) { return null != c && (c instanceof Array || \"object\" == typeof c && !!c.push && a.call(c) === b) } }(), p = {}, q = function (e, f, g, h) { this.sc = p[e] ? p[e].sc : [], p[e] = this, this.gsClass = null, this.func = g; var i = []; this.check = function (k) { for (var l, m, n, o, r, s = f.length, t = s; --s > -1;) (l = p[f[s]] || new q(f[s], [])).gsClass ? (i[s] = l.gsClass, t--) : k && l.sc.push(this); if (0 === t && g) { if (m = (\"com.greensock.\" + e).split(\".\"), n = m.pop(), o = j(m.join(\".\"))[n] = this.gsClass = g.apply(g, i), h) if (d[n] = c[n] = o, r = \"undefined\" != typeof module && module.exports, !r && \"function\" == typeof define && define.amd) define((a.GreenSockAMDPath ? a.GreenSockAMDPath + \"/\" : \"\") + e.split(\".\").pop(), [], function () { return o }); else if (r) if (e === b) { module.exports = c[b] = o; for (s in c) o[s] = c[s] } else c[b] && (c[b][n] = o); for (s = 0; s < this.sc.length; s++) this.sc[s].check() } }, this.check(!0) }, r = a._gsDefine = function (a, b, c, d) { return new q(a, b, c, d) }, s = k._class = function (a, b, c) { return b = b || function () { }, r(a, [], function () { return b }, c), b }; r.globals = d; var t = [0, 0, 1, 1], u = s(\"easing.Ease\", function (a, b, c, d) { this._func = a, this._type = c || 0, this._power = d || 0, this._params = b ? t.concat(b) : t }, !0), v = u.map = {}, w = u.register = function (a, b, c, d) { for (var e, f, g, h, i = b.split(\",\"), j = i.length, l = (c || \"easeIn,easeOut,easeInOut\").split(\",\") ; --j > -1;) for (f = i[j], e = d ? s(\"easing.\" + f, null, !0) : k.easing[f] || {}, g = l.length; --g > -1;) h = l[g], v[f + \".\" + h] = v[h + f] = e[h] = a.getRatio ? a : a[h] || new a }; for (g = u.prototype, g._calcEnd = !1, g.getRatio = function (a) { if (this._func) return this._params[0] = a, this._func.apply(null, this._params); var b = this._type, c = this._power, d = 1 === b ? 1 - a : 2 === b ? a : .5 > a ? 2 * a : 2 * (1 - a); return 1 === c ? d *= d : 2 === c ? d *= d * d : 3 === c ? d *= d * d * d : 4 === c && (d *= d * d * d * d), 1 === b ? 1 - d : 2 === b ? d : .5 > a ? d / 2 : 1 - d / 2 }, e = [\"Linear\", \"Quad\", \"Cubic\", \"Quart\", \"Quint,Strong\"], f = e.length; --f > -1;) g = e[f] + \",Power\" + f, w(new u(null, null, 1, f), g, \"easeOut\", !0), w(new u(null, null, 2, f), g, \"easeIn\" + (0 === f ? \",easeNone\" : \"\")), w(new u(null, null, 3, f), g, \"easeInOut\"); v.linear = k.easing.Linear.easeIn, v.swing = k.easing.Quad.easeInOut; var x = s(\"events.EventDispatcher\", function (a) { this._listeners = {}, this._eventTarget = a || this }); g = x.prototype, g.addEventListener = function (a, b, c, d, e) { e = e || 0; var f, g, j = this._listeners[a], k = 0; for (this !== h || i || h.wake(), null == j && (this._listeners[a] = j = []), g = j.length; --g > -1;) f = j[g], f.c === b && f.s === c ? j.splice(g, 1) : 0 === k && f.pr < e && (k = g + 1); j.splice(k, 0, { c: b, s: c, up: d, pr: e }) }, g.removeEventListener = function (a, b) { var c, d = this._listeners[a]; if (d) for (c = d.length; --c > -1;) if (d[c].c === b) return void d.splice(c, 1) }, g.dispatchEvent = function (a) { var b, c, d, e = this._listeners[a]; if (e) for (b = e.length, b > 1 && (e = e.slice(0)), c = this._eventTarget; --b > -1;) d = e[b], d && (d.up ? d.c.call(d.s || c, { type: a, target: c }) : d.c.call(d.s || c)) }; var y = a.requestAnimationFrame, z = a.cancelAnimationFrame, A = Date.now || function () { return (new Date).getTime() }, B = A(); for (e = [\"ms\", \"moz\", \"webkit\", \"o\"], f = e.length; --f > -1 && !y;) y = a[e[f] + \"RequestAnimationFrame\"], z = a[e[f] + \"CancelAnimationFrame\"] || a[e[f] + \"CancelRequestAnimationFrame\"]; s(\"Ticker\", function (a, b) { var c, d, e, f, g, j = this, k = A(), m = b !== !1 && y ? \"auto\" : !1, o = 500, p = 33, q = \"tick\", r = function (a) { var b, h, i = A() - B; i > o && (k += i - p), B += i, j.time = (B - k) / 1e3, b = j.time - g, (!c || b > 0 || a === !0) && (j.frame++, g += b + (b >= f ? .004 : f - b), h = !0), a !== !0 && (e = d(r)), h && j.dispatchEvent(q) }; x.call(j), j.time = j.frame = 0, j.tick = function () { r(!0) }, j.lagSmoothing = function (a, b) { o = a || 1 / l, p = Math.min(b, o, 0) }, j.sleep = function () { null != e && (m && z ? z(e) : clearTimeout(e), d = n, e = null, j === h && (i = !1)) }, j.wake = function (a) { null !== e ? j.sleep() : a ? k += -B + (B = A()) : j.frame > 10 && (B = A() - o + 5), d = 0 === c ? n : m && y ? y : function (a) { return setTimeout(a, 1e3 * (g - j.time) + 1 | 0) }, j === h && (i = !0), r(2) }, j.fps = function (a) { return arguments.length ? (c = a, f = 1 / (c || 60), g = this.time + f, void j.wake()) : c }, j.useRAF = function (a) { return arguments.length ? (j.sleep(), m = a, void j.fps(c)) : m }, j.fps(a), setTimeout(function () { \"auto\" === m && j.frame < 5 && \"hidden\" !== document.visibilityState && j.useRAF(!1) }, 1500) }), g = k.Ticker.prototype = new k.events.EventDispatcher, g.constructor = k.Ticker; var C = s(\"core.Animation\", function (a, b) { if (this.vars = b = b || {}, this._duration = this._totalDuration = a || 0, this._delay = Number(b.delay) || 0, this._timeScale = 1, this._active = b.immediateRender === !0, this.data = b.data, this._reversed = b.reversed === !0, V) { i || h.wake(); var c = this.vars.useFrames ? U : V; c.add(this, c._time), this.vars.paused && this.paused(!0) } }); h = C.ticker = new k.Ticker, g = C.prototype, g._dirty = g._gc = g._initted = g._paused = !1, g._totalTime = g._time = 0, g._rawPrevTime = -1, g._next = g._last = g._onUpdate = g._timeline = g.timeline = null, g._paused = !1; var D = function () { i && A() - B > 2e3 && h.wake(), setTimeout(D, 2e3) }; D(), g.play = function (a, b) { return null != a && this.seek(a, b), this.reversed(!1).paused(!1) }, g.pause = function (a, b) { return null != a && this.seek(a, b), this.paused(!0) }, g.resume = function (a, b) { return null != a && this.seek(a, b), this.paused(!1) }, g.seek = function (a, b) { return this.totalTime(Number(a), b !== !1) }, g.restart = function (a, b) { return this.reversed(!1).paused(!1).totalTime(a ? -this._delay : 0, b !== !1, !0) }, g.reverse = function (a, b) { return null != a && this.seek(a || this.totalDuration(), b), this.reversed(!0).paused(!1) }, g.render = function (a, b, c) { }, g.invalidate = function () { return this._time = this._totalTime = 0, this._initted = this._gc = !1, this._rawPrevTime = -1, (this._gc || !this.timeline) && this._enabled(!0), this }, g.isActive = function () { var a, b = this._timeline, c = this._startTime; return !b || !this._gc && !this._paused && b.isActive() && (a = b.rawTime()) >= c && a < c + this.totalDuration() / this._timeScale }, g._enabled = function (a, b) { return i || h.wake(), this._gc = !a, this._active = this.isActive(), b !== !0 && (a && !this.timeline ? this._timeline.add(this, this._startTime - this._delay) : !a && this.timeline && this._timeline._remove(this, !0)), !1 }, g._kill = function (a, b) { return this._enabled(!1, !1) }, g.kill = function (a, b) { return this._kill(a, b), this }, g._uncache = function (a) { for (var b = a ? this : this.timeline; b;) b._dirty = !0, b = b.timeline; return this }, g._swapSelfInParams = function (a) { for (var b = a.length, c = a.concat() ; --b > -1;) \"{self}\" === a[b] && (c[b] = this); return c }, g._callback = function (a) { var b = this.vars, c = b[a], d = b[a + \"Params\"], e = b[a + \"Scope\"] || b.callbackScope || this, f = d ? d.length : 0; switch (f) { case 0: c.call(e); break; case 1: c.call(e, d[0]); break; case 2: c.call(e, d[0], d[1]); break; default: c.apply(e, d) } }, g.eventCallback = function (a, b, c, d) { if (\"on\" === (a || \"\").substr(0, 2)) { var e = this.vars; if (1 === arguments.length) return e[a]; null == b ? delete e[a] : (e[a] = b, e[a + \"Params\"] = o(c) && -1 !== c.join(\"\").indexOf(\"{self}\") ? this._swapSelfInParams(c) : c, e[a + \"Scope\"] = d), \"onUpdate\" === a && (this._onUpdate = b) } return this }, g.delay = function (a) { return arguments.length ? (this._timeline.smoothChildTiming && this.startTime(this._startTime + a - this._delay), this._delay = a, this) : this._delay }, g.duration = function (a) { return arguments.length ? (this._duration = this._totalDuration = a, this._uncache(!0), this._timeline.smoothChildTiming && this._time > 0 && this._time < this._duration && 0 !== a && this.totalTime(this._totalTime * (a / this._duration), !0), this) : (this._dirty = !1, this._duration) }, g.totalDuration = function (a) { return this._dirty = !1, arguments.length ? this.duration(a) : this._totalDuration }, g.time = function (a, b) { return arguments.length ? (this._dirty && this.totalDuration(), this.totalTime(a > this._duration ? this._duration : a, b)) : this._time }, g.totalTime = function (a, b, c) { if (i || h.wake(), !arguments.length) return this._totalTime; if (this._timeline) { if (0 > a && !c && (a += this.totalDuration()), this._timeline.smoothChildTiming) { this._dirty && this.totalDuration(); var d = this._totalDuration, e = this._timeline; if (a > d && !c && (a = d), this._startTime = (this._paused ? this._pauseTime : e._time) - (this._reversed ? d - a : a) / this._timeScale, e._dirty || this._uncache(!1), e._timeline) for (; e._timeline;) e._timeline._time !== (e._startTime + e._totalTime) / e._timeScale && e.totalTime(e._totalTime, !0), e = e._timeline } this._gc && this._enabled(!0, !1), (this._totalTime !== a || 0 === this._duration) && (I.length && X(), this.render(a, b, !1), I.length && X()) } return this }, g.progress = g.totalProgress = function (a, b) { var c = this.duration(); return arguments.length ? this.totalTime(c * a, b) : c ? this._time / c : this.ratio }, g.startTime = function (a) { return arguments.length ? (a !== this._startTime && (this._startTime = a, this.timeline && this.timeline._sortChildren && this.timeline.add(this, a - this._delay)), this) : this._startTime }, g.endTime = function (a) { return this._startTime + (0 != a ? this.totalDuration() : this.duration()) / this._timeScale }, g.timeScale = function (a) { if (!arguments.length) return this._timeScale; if (a = a || l, this._timeline && this._timeline.smoothChildTiming) { var b = this._pauseTime, c = b || 0 === b ? b : this._timeline.totalTime(); this._startTime = c - (c - this._startTime) * this._timeScale / a } return this._timeScale = a, this._uncache(!1) }, g.reversed = function (a) { return arguments.length ? (a != this._reversed && (this._reversed = a, this.totalTime(this._timeline && !this._timeline.smoothChildTiming ? this.totalDuration() - this._totalTime : this._totalTime, !0)), this) : this._reversed }, g.paused = function (a) { if (!arguments.length) return this._paused; var b, c, d = this._timeline; return a != this._paused && d && (i || a || h.wake(), b = d.rawTime(), c = b - this._pauseTime, !a && d.smoothChildTiming && (this._startTime += c, this._uncache(!1)), this._pauseTime = a ? b : null, this._paused = a, this._active = this.isActive(), !a && 0 !== c && this._initted && this.duration() && (b = d.smoothChildTiming ? this._totalTime : (b - this._startTime) / this._timeScale, this.render(b, b === this._totalTime, !0))), this._gc && !a && this._enabled(!0, !1), this }; var E = s(\"core.SimpleTimeline\", function (a) { C.call(this, 0, a), this.autoRemoveChildren = this.smoothChildTiming = !0 }); g = E.prototype = new C, g.constructor = E, g.kill()._gc = !1, g._first = g._last = g._recent = null, g._sortChildren = !1, g.add = g.insert = function (a, b, c, d) { var e, f; if (a._startTime = Number(b || 0) + a._delay, a._paused && this !== a._timeline && (a._pauseTime = a._startTime + (this.rawTime() - a._startTime) / a._timeScale), a.timeline && a.timeline._remove(a, !0), a.timeline = a._timeline = this, a._gc && a._enabled(!0, !0), e = this._last, this._sortChildren) for (f = a._startTime; e && e._startTime > f;) e = e._prev; return e ? (a._next = e._next, e._next = a) : (a._next = this._first, this._first = a), a._next ? a._next._prev = a : this._last = a, a._prev = e, this._recent = a, this._timeline && this._uncache(!0), this }, g._remove = function (a, b) { return a.timeline === this && (b || a._enabled(!1, !0), a._prev ? a._prev._next = a._next : this._first === a && (this._first = a._next), a._next ? a._next._prev = a._prev : this._last === a && (this._last = a._prev), a._next = a._prev = a.timeline = null, a === this._recent && (this._recent = this._last), this._timeline && this._uncache(!0)), this }, g.render = function (a, b, c) { var d, e = this._first; for (this._totalTime = this._time = this._rawPrevTime = a; e;) d = e._next, (e._active || a >= e._startTime && !e._paused) && (e._reversed ? e.render((e._dirty ? e.totalDuration() : e._totalDuration) - (a - e._startTime) * e._timeScale, b, c) : e.render((a - e._startTime) * e._timeScale, b, c)), e = d }, g.rawTime = function () { return i || h.wake(), this._totalTime }; var F = s(\"TweenLite\", function (b, c, d) { if (C.call(this, c, d), this.render = F.prototype.render, null == b) throw \"Cannot tween a null target.\"; this.target = b = \"string\" != typeof b ? b : F.selector(b) || b; var e, f, g, h = b.jquery || b.length && b !== a && b[0] && (b[0] === a || b[0].nodeType && b[0].style && !b.nodeType), i = this.vars.overwrite; if (this._overwrite = i = null == i ? T[F.defaultOverwrite] : \"number\" == typeof i ? i >> 0 : T[i], (h || b instanceof Array || b.push && o(b)) && \"number\" != typeof b[0]) for (this._targets = g = m(b), this._propLookup = [], this._siblings = [], e = 0; e < g.length; e++) f = g[e], f ? \"string\" != typeof f ? f.length && f !== a && f[0] && (f[0] === a || f[0].nodeType && f[0].style && !f.nodeType) ? (g.splice(e--, 1), this._targets = g = g.concat(m(f))) : (this._siblings[e] = Y(f, this, !1), 1 === i && this._siblings[e].length > 1 && $(f, this, null, 1, this._siblings[e])) : (f = g[e--] = F.selector(f), \"string\" == typeof f && g.splice(e + 1, 1)) : g.splice(e--, 1); else this._propLookup = {}, this._siblings = Y(b, this, !1), 1 === i && this._siblings.length > 1 && $(b, this, null, 1, this._siblings); (this.vars.immediateRender || 0 === c && 0 === this._delay && this.vars.immediateRender !== !1) && (this._time = -l, this.render(Math.min(0, -this._delay))) }, !0), G = function (b) { return b && b.length && b !== a && b[0] && (b[0] === a || b[0].nodeType && b[0].style && !b.nodeType) }, H = function (a, b) { var c, d = {}; for (c in a) S[c] || c in b && \"transform\" !== c && \"x\" !== c && \"y\" !== c && \"width\" !== c && \"height\" !== c && \"className\" !== c && \"border\" !== c || !(!P[c] || P[c] && P[c]._autoCSS) || (d[c] = a[c], delete a[c]); a.css = d }; g = F.prototype = new C, g.constructor = F, g.kill()._gc = !1, g.ratio = 0, g._firstPT = g._targets = g._overwrittenProps = g._startAt = null, g._notifyPluginsOfEnabled = g._lazy = !1, F.version = \"1.19.0\", F.defaultEase = g._ease = new u(null, null, 1, 1), F.defaultOverwrite = \"auto\", F.ticker = h, F.autoSleep = 120, F.lagSmoothing = function (a, b) { h.lagSmoothing(a, b) }, F.selector = a.$ || a.jQuery || function (b) { var c = a.$ || a.jQuery; return c ? (F.selector = c, c(b)) : \"undefined\" == typeof document ? b : document.querySelectorAll ? document.querySelectorAll(b) : document.getElementById(\"#\" === b.charAt(0) ? b.substr(1) : b) }; var I = [], J = {}, K = /(?:(-|-=|\\+=)?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?)[0-9]/gi, L = function (a) { for (var b, c = this._firstPT, d = 1e-6; c;) b = c.blob ? a ? this.join(\"\") : this.start : c.c * a + c.s, c.m ? b = c.m(b, this._target || c.t) : d > b && b > -d && (b = 0), c.f ? c.fp ? c.t[c.p](c.fp, b) : c.t[c.p](b) : c.t[c.p] = b, c = c._next }, M = function (a, b, c, d) { var e, f, g, h, i, j, k, l = [a, b], m = 0, n = \"\", o = 0; for (l.start = a, c && (c(l), a = l[0], b = l[1]), l.length = 0, e = a.match(K) || [], f = b.match(K) || [], d && (d._next = null, d.blob = 1, l._firstPT = l._applyPT = d), i = f.length, h = 0; i > h; h++) k = f[h], j = b.substr(m, b.indexOf(k, m) - m), n += j || !h ? j : \",\", m += j.length, o ? o = (o + 1) % 5 : \"rgba(\" === j.substr(-5) && (o = 1), k === e[h] || e.length <= h ? n += k : (n && (l.push(n), n = \"\"), g = parseFloat(e[h]), l.push(g), l._firstPT = { _next: l._firstPT, t: l, p: l.length - 1, s: g, c: (\"=\" === k.charAt(1) ? parseInt(k.charAt(0) + \"1\", 10) * parseFloat(k.substr(2)) : parseFloat(k) - g) || 0, f: 0, m: o && 4 > o ? Math.round : 0 }), m += k.length; return n += b.substr(m), n && l.push(n), l.setRatio = L, l }, N = function (a, b, c, d, e, f, g, h, i) { \"function\" == typeof d && (d = d(i || 0, a)); var j, k, l = \"get\" === c ? a[b] : c, m = typeof a[b], n = \"string\" == typeof d && \"=\" === d.charAt(1), o = { t: a, p: b, s: l, f: \"function\" === m, pg: 0, n: e || b, m: f ? \"function\" == typeof f ? f : Math.round : 0, pr: 0, c: n ? parseInt(d.charAt(0) + \"1\", 10) * parseFloat(d.substr(2)) : parseFloat(d) - l || 0 }; return \"number\" !== m && (\"function\" === m && \"get\" === c && (k = b.indexOf(\"set\") || \"function\" != typeof a[\"get\" + b.substr(3)] ? b : \"get\" + b.substr(3), o.s = l = g ? a[k](g) : a[k]()), \"string\" == typeof l && (g || isNaN(l)) ? (o.fp = g, j = M(l, d, h || F.defaultStringFilter, o), o = { t: j, p: \"setRatio\", s: 0, c: 1, f: 2, pg: 0, n: e || b, pr: 0, m: 0 }) : n || (o.s = parseFloat(l), o.c = parseFloat(d) - o.s || 0)), o.c ? ((o._next = this._firstPT) && (o._next._prev = o), this._firstPT = o, o) : void 0 }, O = F._internals = { isArray: o, isSelector: G, lazyTweens: I, blobDif: M }, P = F._plugins = {}, Q = O.tweenLookup = {}, R = 0, S = O.reservedProps = { ease: 1, delay: 1, overwrite: 1, onComplete: 1, onCompleteParams: 1, onCompleteScope: 1, useFrames: 1, runBackwards: 1, startAt: 1, onUpdate: 1, onUpdateParams: 1, onUpdateScope: 1, onStart: 1, onStartParams: 1, onStartScope: 1, onReverseComplete: 1, onReverseCompleteParams: 1, onReverseCompleteScope: 1, onRepeat: 1, onRepeatParams: 1, onRepeatScope: 1, easeParams: 1, yoyo: 1, immediateRender: 1, repeat: 1, repeatDelay: 1, data: 1, paused: 1, reversed: 1, autoCSS: 1, lazy: 1, onOverwrite: 1, callbackScope: 1, stringFilter: 1, id: 1 }, T = { none: 0, all: 1, auto: 2, concurrent: 3, allOnStart: 4, preexisting: 5, \"true\": 1, \"false\": 0 }, U = C._rootFramesTimeline = new E, V = C._rootTimeline = new E, W = 30, X = O.lazyRender = function () { var a, b = I.length; for (J = {}; --b > -1;) a = I[b], a && a._lazy !== !1 && (a.render(a._lazy[0], a._lazy[1], !0), a._lazy = !1); I.length = 0 }; V._startTime = h.time, U._startTime = h.frame, V._active = U._active = !0, setTimeout(X, 1), C._updateRoot = F.render = function () { var a, b, c; if (I.length && X(), V.render((h.time - V._startTime) * V._timeScale, !1, !1), U.render((h.frame - U._startTime) * U._timeScale, !1, !1), I.length && X(), h.frame >= W) { W = h.frame + (parseInt(F.autoSleep, 10) || 120); for (c in Q) { for (b = Q[c].tweens, a = b.length; --a > -1;) b[a]._gc && b.splice(a, 1); 0 === b.length && delete Q[c] } if (c = V._first, (!c || c._paused) && F.autoSleep && !U._first && 1 === h._listeners.tick.length) { for (; c && c._paused;) c = c._next; c || h.sleep() } } }, h.addEventListener(\"tick\", C._updateRoot); var Y = function (a, b, c) { var d, e, f = a._gsTweenID; if (Q[f || (a._gsTweenID = f = \"t\" + R++)] || (Q[f] = { target: a, tweens: [] }), b && (d = Q[f].tweens, d[e = d.length] = b, c)) for (; --e > -1;) d[e] === b && d.splice(e, 1); return Q[f].tweens }, Z = function (a, b, c, d) { var e, f, g = a.vars.onOverwrite; return g && (e = g(a, b, c, d)), g = F.onOverwrite, g && (f = g(a, b, c, d)), e !== !1 && f !== !1 }, $ = function (a, b, c, d, e) { var f, g, h, i; if (1 === d || d >= 4) { for (i = e.length, f = 0; i > f; f++) if ((h = e[f]) !== b) h._gc || h._kill(null, a, b) && (g = !0); else if (5 === d) break; return g } var j, k = b._startTime + l, m = [], n = 0, o = 0 === b._duration; for (f = e.length; --f > -1;) (h = e[f]) === b || h._gc || h._paused || (h._timeline !== b._timeline ? (j = j || _(b, 0, o), 0 === _(h, j, o) && (m[n++] = h)) : h._startTime <= k && h._startTime + h.totalDuration() / h._timeScale > k && ((o || !h._initted) && k - h._startTime <= 2e-10 || (m[n++] = h))); for (f = n; --f > -1;) if (h = m[f], 2 === d && h._kill(c, a, b) && (g = !0), 2 !== d || !h._firstPT && h._initted) { if (2 !== d && !Z(h, b)) continue; h._enabled(!1, !1) && (g = !0) } return g }, _ = function (a, b, c) { for (var d = a._timeline, e = d._timeScale, f = a._startTime; d._timeline;) { if (f += d._startTime, e *= d._timeScale, d._paused) return -100; d = d._timeline } return f /= e, f > b ? f - b : c && f === b || !a._initted && 2 * l > f - b ? l : (f += a.totalDuration() / a._timeScale / e) > b + l ? 0 : f - b - l }; g._init = function () { var a, b, c, d, e, f, g = this.vars, h = this._overwrittenProps, i = this._duration, j = !!g.immediateRender, k = g.ease; if (g.startAt) { this._startAt && (this._startAt.render(-1, !0), this._startAt.kill()), e = {}; for (d in g.startAt) e[d] = g.startAt[d]; if (e.overwrite = !1, e.immediateRender = !0, e.lazy = j && g.lazy !== !1, e.startAt = e.delay = null, this._startAt = F.to(this.target, 0, e), j) if (this._time > 0) this._startAt = null; else if (0 !== i) return } else if (g.runBackwards && 0 !== i) if (this._startAt) this._startAt.render(-1, !0), this._startAt.kill(), this._startAt = null; else { 0 !== this._time && (j = !1), c = {}; for (d in g) S[d] && \"autoCSS\" !== d || (c[d] = g[d]); if (c.overwrite = 0, c.data = \"isFromStart\", c.lazy = j && g.lazy !== !1, c.immediateRender = j, this._startAt = F.to(this.target, 0, c), j) { if (0 === this._time) return } else this._startAt._init(), this._startAt._enabled(!1), this.vars.immediateRender && (this._startAt = null) } if (this._ease = k = k ? k instanceof u ? k : \"function\" == typeof k ? new u(k, g.easeParams) : v[k] || F.defaultEase : F.defaultEase, g.easeParams instanceof Array && k.config && (this._ease = k.config.apply(k, g.easeParams)), this._easeType = this._ease._type, this._easePower = this._ease._power, this._firstPT = null, this._targets) for (f = this._targets.length, a = 0; f > a; a++) this._initProps(this._targets[a], this._propLookup[a] = {}, this._siblings[a], h ? h[a] : null, a) && (b = !0); else b = this._initProps(this.target, this._propLookup, this._siblings, h, 0); if (b && F._onPluginEvent(\"_onInitAllProps\", this), h && (this._firstPT || \"function\" != typeof this.target && this._enabled(!1, !1)), g.runBackwards) for (c = this._firstPT; c;) c.s += c.c, c.c = -c.c, c = c._next; this._onUpdate = g.onUpdate, this._initted = !0 }, g._initProps = function (b, c, d, e, f) { var g, h, i, j, k, l; if (null == b) return !1; J[b._gsTweenID] && X(), this.vars.css || b.style && b !== a && b.nodeType && P.css && this.vars.autoCSS !== !1 && H(this.vars, b); for (g in this.vars) if (l = this.vars[g], S[g]) l && (l instanceof Array || l.push && o(l)) && -1 !== l.join(\"\").indexOf(\"{self}\") && (this.vars[g] = l = this._swapSelfInParams(l, this)); else if (P[g] && (j = new P[g])._onInitTween(b, this.vars[g], this, f)) { for (this._firstPT = k = { _next: this._firstPT, t: j, p: \"setRatio\", s: 0, c: 1, f: 1, n: g, pg: 1, pr: j._priority, m: 0 }, h = j._overwriteProps.length; --h > -1;) c[j._overwriteProps[h]] = this._firstPT; (j._priority || j._onInitAllProps) && (i = !0), (j._onDisable || j._onEnable) && (this._notifyPluginsOfEnabled = !0), k._next && (k._next._prev = k) } else c[g] = N.call(this, b, g, \"get\", l, g, 0, null, this.vars.stringFilter, f); return e && this._kill(e, b) ? this._initProps(b, c, d, e, f) : this._overwrite > 1 && this._firstPT && d.length > 1 && $(b, this, c, this._overwrite, d) ? (this._kill(c, b), this._initProps(b, c, d, e, f)) : (this._firstPT && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration) && (J[b._gsTweenID] = !0), i) }, g.render = function (a, b, c) { var d, e, f, g, h = this._time, i = this._duration, j = this._rawPrevTime; if (a >= i - 1e-7) this._totalTime = this._time = i, this.ratio = this._ease._calcEnd ? this._ease.getRatio(1) : 1, this._reversed || (d = !0, e = \"onComplete\", c = c || this._timeline.autoRemoveChildren), 0 === i && (this._initted || !this.vars.lazy || c) && (this._startTime === this._timeline._duration && (a = 0), (0 > j || 0 >= a && a >= -1e-7 || j === l && \"isPause\" !== this.data) && j !== a && (c = !0, j > l && (e = \"onReverseComplete\")), this._rawPrevTime = g = !b || a || j === a ? a : l); else if (1e-7 > a) this._totalTime = this._time = 0, this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0, (0 !== h || 0 === i && j > 0) && (e = \"onReverseComplete\", d = this._reversed), 0 > a && (this._active = !1, 0 === i && (this._initted || !this.vars.lazy || c) && (j >= 0 && (j !== l || \"isPause\" !== this.data) && (c = !0), this._rawPrevTime = g = !b || a || j === a ? a : l)), this._initted || (c = !0); else if (this._totalTime = this._time = a, this._easeType) { var k = a / i, m = this._easeType, n = this._easePower; (1 === m || 3 === m && k >= .5) && (k = 1 - k), 3 === m && (k *= 2), 1 === n ? k *= k : 2 === n ? k *= k * k : 3 === n ? k *= k * k * k : 4 === n && (k *= k * k * k * k), 1 === m ? this.ratio = 1 - k : 2 === m ? this.ratio = k : .5 > a / i ? this.ratio = k / 2 : this.ratio = 1 - k / 2 } else this.ratio = this._ease.getRatio(a / i); if (this._time !== h || c) { if (!this._initted) { if (this._init(), !this._initted || this._gc) return; if (!c && this._firstPT && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration)) return this._time = this._totalTime = h, this._rawPrevTime = j, I.push(this), void (this._lazy = [a, b]); this._time && !d ? this.ratio = this._ease.getRatio(this._time / i) : d && this._ease._calcEnd && (this.ratio = this._ease.getRatio(0 === this._time ? 0 : 1)) } for (this._lazy !== !1 && (this._lazy = !1), this._active || !this._paused && this._time !== h && a >= 0 && (this._active = !0), 0 === h && (this._startAt && (a >= 0 ? this._startAt.render(a, b, c) : e || (e = \"_dummyGS\")), this.vars.onStart && (0 !== this._time || 0 === i) && (b || this._callback(\"onStart\"))), f = this._firstPT; f;) f.f ? f.t[f.p](f.c * this.ratio + f.s) : f.t[f.p] = f.c * this.ratio + f.s, f = f._next; this._onUpdate && (0 > a && this._startAt && a !== -1e-4 && this._startAt.render(a, b, c), b || (this._time !== h || d || c) && this._callback(\"onUpdate\")), e && (!this._gc || c) && (0 > a && this._startAt && !this._onUpdate && a !== -1e-4 && this._startAt.render(a, b, c), d && (this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[e] && this._callback(e), 0 === i && this._rawPrevTime === l && g !== l && (this._rawPrevTime = 0)) } }, g._kill = function (a, b, c) { if (\"all\" === a && (a = null), null == a && (null == b || b === this.target)) return this._lazy = !1, this._enabled(!1, !1); b = \"string\" != typeof b ? b || this._targets || this.target : F.selector(b) || b; var d, e, f, g, h, i, j, k, l, m = c && this._time && c._startTime === this._startTime && this._timeline === c._timeline; if ((o(b) || G(b)) && \"number\" != typeof b[0]) for (d = b.length; --d > -1;) this._kill(a, b[d], c) && (i = !0); else { if (this._targets) { for (d = this._targets.length; --d > -1;) if (b === this._targets[d]) { h = this._propLookup[d] || {}, this._overwrittenProps = this._overwrittenProps || [], e = this._overwrittenProps[d] = a ? this._overwrittenProps[d] || {} : \"all\"; break } } else { if (b !== this.target) return !1; h = this._propLookup, e = this._overwrittenProps = a ? this._overwrittenProps || {} : \"all\" } if (h) { if (j = a || h, k = a !== e && \"all\" !== e && a !== h && (\"object\" != typeof a || !a._tempKill), c && (F.onOverwrite || this.vars.onOverwrite)) { for (f in j) h[f] && (l || (l = []), l.push(f)); if ((l || !a) && !Z(this, c, b, l)) return !1 } for (f in j) (g = h[f]) && (m && (g.f ? g.t[g.p](g.s) : g.t[g.p] = g.s, i = !0), g.pg && g.t._kill(j) && (i = !0), g.pg && 0 !== g.t._overwriteProps.length || (g._prev ? g._prev._next = g._next : g === this._firstPT && (this._firstPT = g._next), g._next && (g._next._prev = g._prev), g._next = g._prev = null), delete h[f]), k && (e[f] = 1); !this._firstPT && this._initted && this._enabled(!1, !1) } } return i }, g.invalidate = function () { return this._notifyPluginsOfEnabled && F._onPluginEvent(\"_onDisable\", this), this._firstPT = this._overwrittenProps = this._startAt = this._onUpdate = null, this._notifyPluginsOfEnabled = this._active = this._lazy = !1, this._propLookup = this._targets ? {} : [], C.prototype.invalidate.call(this), this.vars.immediateRender && (this._time = -l, this.render(Math.min(0, -this._delay))), this }, g._enabled = function (a, b) { if (i || h.wake(), a && this._gc) { var c, d = this._targets; if (d) for (c = d.length; --c > -1;) this._siblings[c] = Y(d[c], this, !0); else this._siblings = Y(this.target, this, !0) } return C.prototype._enabled.call(this, a, b), this._notifyPluginsOfEnabled && this._firstPT ? F._onPluginEvent(a ? \"_onEnable\" : \"_onDisable\", this) : !1 }, F.to = function (a, b, c) { return new F(a, b, c) }, F.from = function (a, b, c) { return c.runBackwards = !0, c.immediateRender = 0 != c.immediateRender, new F(a, b, c) }, F.fromTo = function (a, b, c, d) { return d.startAt = c, d.immediateRender = 0 != d.immediateRender && 0 != c.immediateRender, new F(a, b, d) }, F.delayedCall = function (a, b, c, d, e) { return new F(b, 0, { delay: a, onComplete: b, onCompleteParams: c, callbackScope: d, onReverseComplete: b, onReverseCompleteParams: c, immediateRender: !1, lazy: !1, useFrames: e, overwrite: 0 }) }, F.set = function (a, b) { return new F(a, 0, b) }, F.getTweensOf = function (a, b) { if (null == a) return []; a = \"string\" != typeof a ? a : F.selector(a) || a; var c, d, e, f; if ((o(a) || G(a)) && \"number\" != typeof a[0]) { for (c = a.length, d = []; --c > -1;) d = d.concat(F.getTweensOf(a[c], b)); for (c = d.length; --c > -1;) for (f = d[c], e = c; --e > -1;) f === d[e] && d.splice(c, 1) } else for (d = Y(a).concat(), c = d.length; --c > -1;) (d[c]._gc || b && !d[c].isActive()) && d.splice(c, 1); return d }, F.killTweensOf = F.killDelayedCallsTo = function (a, b, c) { \"object\" == typeof b && (c = b, b = !1); for (var d = F.getTweensOf(a, b), e = d.length; --e > -1;) d[e]._kill(c, a) }; var aa = s(\"plugins.TweenPlugin\", function (a, b) { this._overwriteProps = (a || \"\").split(\",\"), this._propName = this._overwriteProps[0], this._priority = b || 0, this._super = aa.prototype }, !0); if (g = aa.prototype, aa.version = \"1.19.0\", aa.API = 2, g._firstPT = null, g._addTween = N, g.setRatio = L, g._kill = function (a) { var b, c = this._overwriteProps, d = this._firstPT; if (null != a[this._propName]) this._overwriteProps = []; else for (b = c.length; --b > -1;) null != a[c[b]] && c.splice(b, 1); for (; d;) null != a[d.n] && (d._next && (d._next._prev = d._prev), d._prev ? (d._prev._next = d._next, d._prev = null) : this._firstPT === d && (this._firstPT = d._next)), d = d._next; return !1 }, g._mod = g._roundProps = function (a) { for (var b, c = this._firstPT; c;) b = a[this._propName] || null != c.n && a[c.n.split(this._propName + \"_\").join(\"\")], b && \"function\" == typeof b && (2 === c.f ? c.t._applyPT.m = b : c.m = b), c = c._next }, F._onPluginEvent = function (a, b) { var c, d, e, f, g, h = b._firstPT; if (\"_onInitAllProps\" === a) { for (; h;) { for (g = h._next, d = e; d && d.pr > h.pr;) d = d._next; (h._prev = d ? d._prev : f) ? h._prev._next = h : e = h, (h._next = d) ? d._prev = h : f = h, h = g } h = b._firstPT = e } for (; h;) h.pg && \"function\" == typeof h.t[a] && h.t[a]() && (c = !0), h = h._next; return c }, aa.activate = function (a) { for (var b = a.length; --b > -1;) a[b].API === aa.API && (P[(new a[b])._propName] = a[b]); return !0 }, r.plugin = function (a) { if (!(a && a.propName && a.init && a.API)) throw \"illegal plugin definition.\"; var b, c = a.propName, d = a.priority || 0, e = a.overwriteProps, f = { init: \"_onInitTween\", set: \"setRatio\", kill: \"_kill\", round: \"_mod\", mod: \"_mod\", initAll: \"_onInitAllProps\" }, g = s(\"plugins.\" + c.charAt(0).toUpperCase() + c.substr(1) + \"Plugin\", function () { aa.call(this, c, d), this._overwriteProps = e || [] }, a.global === !0), h = g.prototype = new aa(c); h.constructor = g, g.API = a.API; for (b in f) \"function\" == typeof a[b] && (h[f[b]] = a[b]); return g.version = a.version, aa.activate([g]), g }, e = a._gsQueue) { for (f = 0; f < e.length; f++) e[f](); for (g in p) p[g].func || a.console.log(\"GSAP encountered missing dependency: \" + g) } i = !1 } }(\"undefined\" != typeof module && module.exports && \"undefined\" != typeof global ? global : this || window, \"TweenLite\");\nreturn root.TweenLite = TweenLite;\n  }).apply(root, arguments);\n});\n}(this));\n\n",
    "//https://github.com/mhuggins/jquery-countTo\r\n\r\n(function (factory) {\r\n    if (typeof define === 'function' && define.amd) {\r\n        // AMD\r\n        define('jqueryCountTo',['jquery'], factory);\r\n    } else if (typeof exports === 'object') {\r\n        // CommonJS\r\n        factory(require('jquery'));\r\n    } else {\r\n        // Browser globals\r\n        factory(jQuery);\r\n    }\r\n}(function ($) {\r\n    var CountTo = function (element, options) {\r\n        this.$element = $(element);\r\n        this.options = $.extend({}, CountTo.DEFAULTS, this.dataOptions(), options);\r\n        this.init();\r\n    };\r\n\r\n    CountTo.DEFAULTS = {\r\n        from: 0,               // the number the element should start at\r\n        to: 0,                 // the number the element should end at\r\n        speed: 1000,           // how long it should take to count between the target numbers\r\n        refreshInterval: 100,  // how often the element should be updated\r\n        decimals: 0,           // the number of decimal places to show\r\n        formatter: formatter,  // handler for formatting the value before rendering\r\n        onUpdate: null,        // callback method for every time the element is updated\r\n        onComplete: null       // callback method for when the element finishes updating\r\n    };\r\n\r\n    CountTo.prototype.init = function () {\r\n        this.value = this.options.from;\r\n        this.loops = Math.ceil(this.options.speed / this.options.refreshInterval);\r\n        this.loopCount = 0;\r\n        this.increment = (this.options.to - this.options.from) / this.loops;\r\n    };\r\n\r\n    CountTo.prototype.dataOptions = function () {\r\n        var options = {\r\n            from: this.$element.data('from'),\r\n            to: this.$element.data('to'),\r\n            speed: this.$element.data('speed'),\r\n            refreshInterval: this.$element.data('refresh-interval'),\r\n            decimals: this.$element.data('decimals')\r\n        };\r\n\r\n        var keys = Object.keys(options);\r\n\r\n        for (var i in keys) {\r\n            var key = keys[i];\r\n\r\n            if (typeof (options[key]) === 'undefined') {\r\n                delete options[key];\r\n            }\r\n        }\r\n\r\n        return options;\r\n    };\r\n\r\n    CountTo.prototype.update = function () {\r\n        this.value += this.increment;\r\n        this.loopCount++;\r\n\r\n        this.render();\r\n\r\n        if (typeof (this.options.onUpdate) == 'function') {\r\n            this.options.onUpdate.call(this.$element, this.value);\r\n        }\r\n\r\n        if (this.loopCount >= this.loops) {\r\n            clearInterval(this.interval);\r\n            this.value = this.options.to;\r\n\r\n            if (typeof (this.options.onComplete) == 'function') {\r\n                this.options.onComplete.call(this.$element, this.value);\r\n            }\r\n        }\r\n    };\r\n\r\n    CountTo.prototype.render = function () {\r\n        var formattedValue = this.options.formatter.call(this.$element, this.value, this.options);\r\n        this.$element.text(formattedValue);\r\n    };\r\n\r\n    CountTo.prototype.restart = function () {\r\n        this.stop();\r\n        this.init();\r\n        this.start();\r\n    };\r\n\r\n    CountTo.prototype.start = function () {\r\n        this.stop();\r\n        this.render();\r\n        this.interval = setInterval(this.update.bind(this), this.options.refreshInterval);\r\n    };\r\n\r\n    CountTo.prototype.stop = function () {\r\n        if (this.interval) {\r\n            clearInterval(this.interval);\r\n        }\r\n    };\r\n\r\n    CountTo.prototype.toggle = function () {\r\n        if (this.interval) {\r\n            this.stop();\r\n        } else {\r\n            this.start();\r\n        }\r\n    };\r\n\r\n    function formatter(value, options) {\r\n        return value.toFixed(options.decimals);\r\n    }\r\n\r\n    $.fn.countTo = function (option) {\r\n        return this.each(function () {\r\n            var $this = $(this);\r\n            var data = $this.data('countTo');\r\n            var init = !data || typeof (option) === 'object';\r\n            var options = typeof (option) === 'object' ? option : {};\r\n            var method = typeof (option) === 'string' ? option : 'start';\r\n\r\n            if (init) {\r\n                if (data) data.stop();\r\n                $this.data('countTo', data = new CountTo(this, options));\r\n            }\r\n\r\n            data[method].call(data);\r\n        });\r\n    };\r\n}));\n",
    "define('StatBlocks',[\"jquery\", \"Site\", \"tweenLite\", \"jqueryCountTo\", \"jqueryIsVisible\"], function ($, Site, TweenLite) {\r\n\r\n    var StatBlocks = {\r\n        visible: false,\r\n        _init: function () {\r\n            //if (ExperienceEditor.isInMode(\"edit\")) return;\r\n\r\n            if ($('.ecolab-numbers__stat-block h2 > span').length != 0) return;\r\n\r\n            StatBlocks.$blocks = $('.ecolab-numbers__stat-block');\r\n            StatBlocks.$blocks.on(\"mouseenter\", StatBlocks._enter).on(\"mouseleave\", StatBlocks._leave);\r\n            StatBlocks.$blocks.each(function () {\r\n                $(this).data(\"visible\", false);\r\n            });\r\n        },\r\n        _flyIn: function () {\r\n            if (!StatBlocks.visible) {\r\n                StatBlocks.$blocks.each(function (i, el) {\r\n                    this.$tween.resume();\r\n                    this.$tween = null;\r\n                });\r\n                StatBlocks.visible = true;\r\n            }\r\n        },\r\n        _countUp: function () {\r\n            if (!StatBlocks.visible) {\r\n                StatBlocks.$blocks.each(function () {\r\n                    StatBlocks.visible = true;\r\n                    if (!$(this).data(\"visible\")) {\r\n                        if ($(this).isVisible()) {\r\n                            var h2 = $(this).find(\"h2\"), toValue = (h2) ? parseInt(h2.text()) : 0;\r\n\r\n                            $(this).find(\"h2\").countTo({\r\n                                from: 0,\r\n                                to: toValue,\r\n                                speed: 1000,\r\n                                refreshInterval: 50\r\n                            });\r\n                            $(this).data(\"visible\", true);\r\n                        } else {\r\n                            StatBlocks.visible = false;\r\n                        }\r\n                    }\r\n                });\r\n            }\r\n        },\r\n        _enter: function (e) {\r\n            //console.log('MEAP!');\r\n            //console.log(this);\r\n            TweenLite.to(this, .2, {\r\n                scaleX: 1.05,\r\n                scaleY: 1.05\r\n            });\r\n        },\r\n        _leave: function (e) {\r\n            //console.log('MEAP! MEAP!');\r\n            //console.log(this);\r\n            TweenLite.to(this, .2, {\r\n                scaleX: 1,\r\n                scaleY: 1\r\n            });\r\n        }\r\n    };\r\n\r\n    return StatBlocks;\r\n});\n",
    "define('Site',[\"jquery\", \"StatBlocks\"], function ($, StatBlocks) {\r\n    var Site = {\r\n        // Vars\r\n        minWidth: 500,\r\n        maxWidth: Infinity,\r\n        scrollTop: 0,\r\n        windowHeight: 0,\r\n        windowWidth: 0,\r\n        _init: function () {\r\n            Site.$window = $(window);\r\n            Site.$doc = $(document);\r\n            Site.$body = $(\"body\");\r\n            //Site.$navPrimary = $(\"#header-navigation--primary\");\r\n            //Site.$navSecondary = $(\"#header-navigation--secondary\");\r\n            Site.$window.on(\"scroll\", Site._onScroll)//.resize($.throttle(250, Site._onResize));\r\n            //$(\".scroll-to\").not(\".no-scroll\").click(Site._scrollTo);\r\n            /*\r\n            $(\".roller-single\").roller({\r\n                single: true,\r\n                pagination: false,\r\n                useMargin: IE8 || IE9 || false\r\n            });\r\n            $(\".roller-paged\").roller({\r\n                paged: true,\r\n                pagination: false,\r\n                useMargin: IE8 || IE9 || false\r\n            });\r\n            $(\".roller-hero\").roller({\r\n                autoWidth: true,\r\n                pagination: true,\r\n                useMargin: IE8 || IE9 || false\r\n            });\r\n            ; $(\".sized-no-min\").sizer({\r\n                minWidth: 0\r\n            });\r\n            $(\".sized\").sizer({\r\n                minWidth: Site.minWidth\r\n            });\r\n            $(\".tabbed\").tabber({\r\n                maxWidth: 0\r\n            });\r\n            $(\".tabber-tabs\").naver({\r\n                labels: {\r\n                    closed: \"Choose an Industry\",\r\n                    open: \"Close\"\r\n                },\r\n                maxWidth: \"500px\"\r\n            });\r\n            $(\".tabber-handle\").click(function () {\r\n                if ($(\".tabber-tabs\").hasClass(\"enabled\")) {\r\n                    $(\".tabber-tabs\").naver(\"close\");\r\n                }\r\n            });\r\n            $(\".selecter-input\").selecter();\r\n            Hero._init();\r\n            Careers._init();\r\n            Glossary._init();\r\n            FAQ._init();\r\n            Infographics._init();\r\n            */\r\n            StatBlocks._init();\r\n            /*\r\n            People._init();\r\n            FeaturedTerms._init();\r\n            Site._onResize();\r\n            */\r\n        }/*,\r\n        _loadFonts: function (fonts, callback) {\r\n            var loadedFonts = 0, fontList = [], interval;\r\n            for (var i = 0, l = fonts.length; i < l; ++i) {\r\n                (function (font) {\r\n                    var node = document.createElement('span');\r\n                    node.id = \"fontNode_\" + i;\r\n                    // Characters that vary significantly among different fonts\r\n                    node.innerHTML = 'giItT1WQy@!-/#';\r\n                    // Visible - so we can measure it - but not on the screen\r\n                    node.style.position = 'absolute';\r\n                    node.style.left = '-10000px';\r\n                    node.style.top = '-10000px';\r\n                    // Large font size makes even subtle changes obvious\r\n                    node.style.fontSize = '300px';\r\n                    // Reset any font properties\r\n                    node.style.fontFamily = 'sans-serif';\r\n                    node.style.fontVariant = 'normal';\r\n                    node.style.fontStyle = 'normal';\r\n                    node.style.fontWeight = 'normal';\r\n                    node.style.letterSpacing = '0';\r\n                    document.body.appendChild(node);\r\n                    // Remember width with no applied web font\r\n                    node.originalWidth = node.offsetWidth;\r\n                    node.style.fontFamily = font;\r\n                    fontList.push(node);\r\n                })(fonts[i]);\r\n            }\r\n            function checkFont() {\r\n                for (var i = 0, l = fontList.length; i < l; ++i) {\r\n                    (function (node) {\r\n                        node = document.getElementById(node.id);\r\n                        // Compare current width with original width\r\n                        if (node && node.offsetWidth != node.originalWidth) {\r\n                            ++loadedFonts;\r\n                            node.parentNode.removeChild(node);\r\n                            node = null;\r\n                        }\r\n                        // If all fonts have been loaded\r\n                        if (loadedFonts >= fonts.length) {\r\n                            if (interval) {\r\n                                clearInterval(interval);\r\n                            }\r\n                            if (loadedFonts == fonts.length) {\r\n                                callback();\r\n                                return true;\r\n                            }\r\n                        }\r\n                    })(fontList[i]);\r\n                }\r\n            }\r\n            ; if (!checkFont()) {\r\n                interval = setInterval(checkFont, 50);\r\n            }\r\n        },\r\n        _onRespond: function () { },\r\n        _onResize: function () {\r\n            Site.windowWidth = Site.$window.outerWidth();\r\n            Site.windowHeight = Site.$window.outerHeight();\r\n            $(\".sized, .sized-no-min\").sizer(\"resize\");\r\n            $(\".roller\").roller(\"resize\");\r\n            Hero._resize();\r\n            People._resize();\r\n            FeaturedTerms._resize();\r\n        }*/,\r\n        _onScroll: function () {\r\n            //if (ExperienceEditor.isInMode(\"edit\")) return;\r\n\r\n            if ($('.ecolab-numbers__stat-block h2 > span').length != 0) return;\r\n\r\n            if ($(\".infographic-objects\").length > 0) {\r\n                if ($(\".infographic-objects\").isVisible()) {\r\n                    Infographics._flyIn();\r\n                }\r\n            }\r\n            if ($(\".ecolab-numbers__stat-block\").length > 0) {\r\n                StatBlocks._countUp();\r\n            }\r\n        }/*,\r\n        _scrollTo: function (e) {\r\n            var $target = $(e.currentTarget)\r\n              , href = $target.attr(\"href\");\r\n            if (href != \"#\") {\r\n                e.preventDefault();\r\n                e.stopPropagation();\r\n                Site._scrollToElement(href);\r\n            }\r\n        },\r\n        _scrollToElement: function (href, dur) {\r\n            var $el = $(href);\r\n            if (!$el.length) {\r\n                $el = $(\"[name=\" + href.substring(1) + \"]\");\r\n            }\r\n            if ($el.length) {\r\n                var pos = $el.offset()\r\n                  , offset = 0;\r\n                if (href == \"#top\") {\r\n                    pos.top = 0;\r\n                }\r\n                Site._scrollToPos(pos.top - offset, dur);\r\n            }\r\n        },\r\n        _scrollToPos: function (pos, dur) {\r\n            if (dur !== 0) {\r\n                dur = 400;\r\n            }\r\n            pos = pos - Site.$navPrimary.height() - Site.$navSecondary.height() - 10;\r\n            $(\"html, body\").stop().animate({\r\n                scrollTop: pos\r\n            }, dur, function () { });\r\n        }\r\n        */\r\n    };\r\n\r\n    return Site;\r\n});\n",
    "(function (factory) {\r\n    if (typeof define === 'function' && define.amd) {\r\n        // AMD\r\n        define('jqueryIsVisible',['jquery', 'Site'], factory);\r\n    } else if (typeof exports === 'object') {\r\n        // CommonJS\r\n        factory(require('jquery'));\r\n    } else {\r\n        // Browser globals\r\n        factory(jQuery);\r\n    }\r\n}(function ($, Site) {\r\n    $.fn.isVisible = function () {\r\n        var $target = $(this);\r\n        var $offset = $target.offset().top;\r\n        var $scrolled = require('Site').$doc.scrollTop();\r\n        var $height = require('Site').$window.height();\r\n        if (($scrolled + $height) >= ($offset + ($target.height() * .75))) {\r\n            return true;\r\n        }\r\n        return false;\r\n    };\r\n}));\n",
    "/*!\r\n DataTables 1.10.12\r\n ©2008-2015 SpryMedia Ltd - datatables.net/license\r\n*/\r\n(function(h){\"function\"===typeof define&&define.amd?define('jqueryDataTables',[\"jquery\"],function(D){return h(D,window,document)}):\"object\"===typeof exports?module.exports=function(D,I){D||(D=window);I||(I=\"undefined\"!==typeof window?require(\"jquery\"):require(\"jquery\")(D));return h(I,D,D.document)}:h(jQuery,window,document)})(function(h,D,I,k){function X(a){var b,c,d={};h.each(a,function(e){if((b=e.match(/^([^A-Z]+?)([A-Z])/))&&-1!==\"a aa ai ao as b fn i m o s \".indexOf(b[1]+\" \"))c=e.replace(b[0],b[2].toLowerCase()),\r\nd[c]=e,\"o\"===b[1]&&X(a[e])});a._hungarianMap=d}function K(a,b,c){a._hungarianMap||X(a);var d;h.each(b,function(e){d=a._hungarianMap[e];if(d!==k&&(c||b[d]===k))\"o\"===d.charAt(0)?(b[d]||(b[d]={}),h.extend(!0,b[d],b[e]),K(a[d],b[d],c)):b[d]=b[e]})}function Da(a){var b=m.defaults.oLanguage,c=a.sZeroRecords;!a.sEmptyTable&&(c&&\"No data available in table\"===b.sEmptyTable)&&E(a,a,\"sZeroRecords\",\"sEmptyTable\");!a.sLoadingRecords&&(c&&\"Loading...\"===b.sLoadingRecords)&&E(a,a,\"sZeroRecords\",\"sLoadingRecords\");\r\na.sInfoThousands&&(a.sThousands=a.sInfoThousands);(a=a.sDecimal)&&db(a)}function eb(a){A(a,\"ordering\",\"bSort\");A(a,\"orderMulti\",\"bSortMulti\");A(a,\"orderClasses\",\"bSortClasses\");A(a,\"orderCellsTop\",\"bSortCellsTop\");A(a,\"order\",\"aaSorting\");A(a,\"orderFixed\",\"aaSortingFixed\");A(a,\"paging\",\"bPaginate\");A(a,\"pagingType\",\"sPaginationType\");A(a,\"pageLength\",\"iDisplayLength\");A(a,\"searching\",\"bFilter\");\"boolean\"===typeof a.sScrollX&&(a.sScrollX=a.sScrollX?\"100%\":\"\");\"boolean\"===typeof a.scrollX&&(a.scrollX=\r\na.scrollX?\"100%\":\"\");if(a=a.aoSearchCols)for(var b=0,c=a.length;b<c;b++)a[b]&&K(m.models.oSearch,a[b])}function fb(a){A(a,\"orderable\",\"bSortable\");A(a,\"orderData\",\"aDataSort\");A(a,\"orderSequence\",\"asSorting\");A(a,\"orderDataType\",\"sortDataType\");var b=a.aDataSort;b&&!h.isArray(b)&&(a.aDataSort=[b])}function gb(a){if(!m.__browser){var b={};m.__browser=b;var c=h(\"<div/>\").css({position:\"fixed\",top:0,left:0,height:1,width:1,overflow:\"hidden\"}).append(h(\"<div/>\").css({position:\"absolute\",top:1,left:1,\r\nwidth:100,overflow:\"scroll\"}).append(h(\"<div/>\").css({width:\"100%\",height:10}))).appendTo(\"body\"),d=c.children(),e=d.children();b.barWidth=d[0].offsetWidth-d[0].clientWidth;b.bScrollOversize=100===e[0].offsetWidth&&100!==d[0].clientWidth;b.bScrollbarLeft=1!==Math.round(e.offset().left);b.bBounding=c[0].getBoundingClientRect().width?!0:!1;c.remove()}h.extend(a.oBrowser,m.__browser);a.oScroll.iBarWidth=m.__browser.barWidth}function hb(a,b,c,d,e,f){var g,j=!1;c!==k&&(g=c,j=!0);for(;d!==e;)a.hasOwnProperty(d)&&\r\n(g=j?b(g,a[d],d,a):a[d],j=!0,d+=f);return g}function Ea(a,b){var c=m.defaults.column,d=a.aoColumns.length,c=h.extend({},m.models.oColumn,c,{nTh:b?b:I.createElement(\"th\"),sTitle:c.sTitle?c.sTitle:b?b.innerHTML:\"\",aDataSort:c.aDataSort?c.aDataSort:[d],mData:c.mData?c.mData:d,idx:d});a.aoColumns.push(c);c=a.aoPreSearchCols;c[d]=h.extend({},m.models.oSearch,c[d]);ja(a,d,h(b).data())}function ja(a,b,c){var b=a.aoColumns[b],d=a.oClasses,e=h(b.nTh);if(!b.sWidthOrig){b.sWidthOrig=e.attr(\"width\")||null;var f=\r\n(e.attr(\"style\")||\"\").match(/width:\\s*(\\d+[pxem%]+)/);f&&(b.sWidthOrig=f[1])}c!==k&&null!==c&&(fb(c),K(m.defaults.column,c),c.mDataProp!==k&&!c.mData&&(c.mData=c.mDataProp),c.sType&&(b._sManualType=c.sType),c.className&&!c.sClass&&(c.sClass=c.className),h.extend(b,c),E(b,c,\"sWidth\",\"sWidthOrig\"),c.iDataSort!==k&&(b.aDataSort=[c.iDataSort]),E(b,c,\"aDataSort\"));var g=b.mData,j=Q(g),i=b.mRender?Q(b.mRender):null,c=function(a){return\"string\"===typeof a&&-1!==a.indexOf(\"@\")};b._bAttrSrc=h.isPlainObject(g)&&\r\n(c(g.sort)||c(g.type)||c(g.filter));b._setter=null;b.fnGetData=function(a,b,c){var d=j(a,b,k,c);return i&&b?i(d,b,a,c):d};b.fnSetData=function(a,b,c){return R(g)(a,b,c)};\"number\"!==typeof g&&(a._rowReadObject=!0);a.oFeatures.bSort||(b.bSortable=!1,e.addClass(d.sSortableNone));a=-1!==h.inArray(\"asc\",b.asSorting);c=-1!==h.inArray(\"desc\",b.asSorting);!b.bSortable||!a&&!c?(b.sSortingClass=d.sSortableNone,b.sSortingClassJUI=\"\"):a&&!c?(b.sSortingClass=d.sSortableAsc,b.sSortingClassJUI=d.sSortJUIAscAllowed):\r\n!a&&c?(b.sSortingClass=d.sSortableDesc,b.sSortingClassJUI=d.sSortJUIDescAllowed):(b.sSortingClass=d.sSortable,b.sSortingClassJUI=d.sSortJUI)}function Y(a){if(!1!==a.oFeatures.bAutoWidth){var b=a.aoColumns;Fa(a);for(var c=0,d=b.length;c<d;c++)b[c].nTh.style.width=b[c].sWidth}b=a.oScroll;(\"\"!==b.sY||\"\"!==b.sX)&&ka(a);u(a,null,\"column-sizing\",[a])}function Z(a,b){var c=la(a,\"bVisible\");return\"number\"===typeof c[b]?c[b]:null}function $(a,b){var c=la(a,\"bVisible\"),c=h.inArray(b,c);return-1!==c?c:null}\r\nfunction aa(a){var b=0;h.each(a.aoColumns,function(a,d){d.bVisible&&\"none\"!==h(d.nTh).css(\"display\")&&b++});return b}function la(a,b){var c=[];h.map(a.aoColumns,function(a,e){a[b]&&c.push(e)});return c}function Ga(a){var b=a.aoColumns,c=a.aoData,d=m.ext.type.detect,e,f,g,j,i,h,l,q,t;e=0;for(f=b.length;e<f;e++)if(l=b[e],t=[],!l.sType&&l._sManualType)l.sType=l._sManualType;else if(!l.sType){g=0;for(j=d.length;g<j;g++){i=0;for(h=c.length;i<h;i++){t[i]===k&&(t[i]=B(a,i,e,\"type\"));q=d[g](t[i],a);if(!q&&\r\ng!==d.length-1)break;if(\"html\"===q)break}if(q){l.sType=q;break}}l.sType||(l.sType=\"string\")}}function ib(a,b,c,d){var e,f,g,j,i,n,l=a.aoColumns;if(b)for(e=b.length-1;0<=e;e--){n=b[e];var q=n.targets!==k?n.targets:n.aTargets;h.isArray(q)||(q=[q]);f=0;for(g=q.length;f<g;f++)if(\"number\"===typeof q[f]&&0<=q[f]){for(;l.length<=q[f];)Ea(a);d(q[f],n)}else if(\"number\"===typeof q[f]&&0>q[f])d(l.length+q[f],n);else if(\"string\"===typeof q[f]){j=0;for(i=l.length;j<i;j++)(\"_all\"==q[f]||h(l[j].nTh).hasClass(q[f]))&&\r\nd(j,n)}}if(c){e=0;for(a=c.length;e<a;e++)d(e,c[e])}}function N(a,b,c,d){var e=a.aoData.length,f=h.extend(!0,{},m.models.oRow,{src:c?\"dom\":\"data\",idx:e});f._aData=b;a.aoData.push(f);for(var g=a.aoColumns,j=0,i=g.length;j<i;j++)g[j].sType=null;a.aiDisplayMaster.push(e);b=a.rowIdFn(b);b!==k&&(a.aIds[b]=f);(c||!a.oFeatures.bDeferRender)&&Ha(a,e,c,d);return e}function ma(a,b){var c;b instanceof h||(b=h(b));return b.map(function(b,e){c=Ia(a,e);return N(a,c.data,e,c.cells)})}function B(a,b,c,d){var e=a.iDraw,\r\nf=a.aoColumns[c],g=a.aoData[b]._aData,j=f.sDefaultContent,i=f.fnGetData(g,d,{settings:a,row:b,col:c});if(i===k)return a.iDrawError!=e&&null===j&&(L(a,0,\"Requested unknown parameter \"+(\"function\"==typeof f.mData?\"{function}\":\"'\"+f.mData+\"'\")+\" for row \"+b+\", column \"+c,4),a.iDrawError=e),j;if((i===g||null===i)&&null!==j&&d!==k)i=j;else if(\"function\"===typeof i)return i.call(g);return null===i&&\"display\"==d?\"\":i}function jb(a,b,c,d){a.aoColumns[c].fnSetData(a.aoData[b]._aData,d,{settings:a,row:b,col:c})}\r\nfunction Ja(a){return h.map(a.match(/(\\\\.|[^\\.])+/g)||[\"\"],function(a){return a.replace(/\\\\./g,\".\")})}function Q(a){if(h.isPlainObject(a)){var b={};h.each(a,function(a,c){c&&(b[a]=Q(c))});return function(a,c,f,g){var j=b[c]||b._;return j!==k?j(a,c,f,g):a}}if(null===a)return function(a){return a};if(\"function\"===typeof a)return function(b,c,f,g){return a(b,c,f,g)};if(\"string\"===typeof a&&(-1!==a.indexOf(\".\")||-1!==a.indexOf(\"[\")||-1!==a.indexOf(\"(\"))){var c=function(a,b,f){var g,j;if(\"\"!==f){j=Ja(f);\r\nfor(var i=0,n=j.length;i<n;i++){f=j[i].match(ba);g=j[i].match(U);if(f){j[i]=j[i].replace(ba,\"\");\"\"!==j[i]&&(a=a[j[i]]);g=[];j.splice(0,i+1);j=j.join(\".\");if(h.isArray(a)){i=0;for(n=a.length;i<n;i++)g.push(c(a[i],b,j))}a=f[0].substring(1,f[0].length-1);a=\"\"===a?g:g.join(a);break}else if(g){j[i]=j[i].replace(U,\"\");a=a[j[i]]();continue}if(null===a||a[j[i]]===k)return k;a=a[j[i]]}}return a};return function(b,e){return c(b,e,a)}}return function(b){return b[a]}}function R(a){if(h.isPlainObject(a))return R(a._);\r\nif(null===a)return function(){};if(\"function\"===typeof a)return function(b,d,e){a(b,\"set\",d,e)};if(\"string\"===typeof a&&(-1!==a.indexOf(\".\")||-1!==a.indexOf(\"[\")||-1!==a.indexOf(\"(\"))){var b=function(a,d,e){var e=Ja(e),f;f=e[e.length-1];for(var g,j,i=0,n=e.length-1;i<n;i++){g=e[i].match(ba);j=e[i].match(U);if(g){e[i]=e[i].replace(ba,\"\");a[e[i]]=[];f=e.slice();f.splice(0,i+1);g=f.join(\".\");if(h.isArray(d)){j=0;for(n=d.length;j<n;j++)f={},b(f,d[j],g),a[e[i]].push(f)}else a[e[i]]=d;return}j&&(e[i]=e[i].replace(U,\r\n\"\"),a=a[e[i]](d));if(null===a[e[i]]||a[e[i]]===k)a[e[i]]={};a=a[e[i]]}if(f.match(U))a[f.replace(U,\"\")](d);else a[f.replace(ba,\"\")]=d};return function(c,d){return b(c,d,a)}}return function(b,d){b[a]=d}}function Ka(a){return G(a.aoData,\"_aData\")}function na(a){a.aoData.length=0;a.aiDisplayMaster.length=0;a.aiDisplay.length=0;a.aIds={}}function oa(a,b,c){for(var d=-1,e=0,f=a.length;e<f;e++)a[e]==b?d=e:a[e]>b&&a[e]--; -1!=d&&c===k&&a.splice(d,1)}function ca(a,b,c,d){var e=a.aoData[b],f,g=function(c,d){for(;c.childNodes.length;)c.removeChild(c.firstChild);\r\nc.innerHTML=B(a,b,d,\"display\")};if(\"dom\"===c||(!c||\"auto\"===c)&&\"dom\"===e.src)e._aData=Ia(a,e,d,d===k?k:e._aData).data;else{var j=e.anCells;if(j)if(d!==k)g(j[d],d);else{c=0;for(f=j.length;c<f;c++)g(j[c],c)}}e._aSortData=null;e._aFilterData=null;g=a.aoColumns;if(d!==k)g[d].sType=null;else{c=0;for(f=g.length;c<f;c++)g[c].sType=null;La(a,e)}}function Ia(a,b,c,d){var e=[],f=b.firstChild,g,j,i=0,n,l=a.aoColumns,q=a._rowReadObject,d=d!==k?d:q?{}:[],t=function(a,b){if(\"string\"===typeof a){var c=a.indexOf(\"@\");\r\n-1!==c&&(c=a.substring(c+1),R(a)(d,b.getAttribute(c)))}},S=function(a){if(c===k||c===i)j=l[i],n=h.trim(a.innerHTML),j&&j._bAttrSrc?(R(j.mData._)(d,n),t(j.mData.sort,a),t(j.mData.type,a),t(j.mData.filter,a)):q?(j._setter||(j._setter=R(j.mData)),j._setter(d,n)):d[i]=n;i++};if(f)for(;f;){g=f.nodeName.toUpperCase();if(\"TD\"==g||\"TH\"==g)S(f),e.push(f);f=f.nextSibling}else{e=b.anCells;f=0;for(g=e.length;f<g;f++)S(e[f])}if(b=b.firstChild?b:b.nTr)(b=b.getAttribute(\"id\"))&&R(a.rowId)(d,b);return{data:d,cells:e}}\r\nfunction Ha(a,b,c,d){var e=a.aoData[b],f=e._aData,g=[],j,i,n,l,q;if(null===e.nTr){j=c||I.createElement(\"tr\");e.nTr=j;e.anCells=g;j._DT_RowIndex=b;La(a,e);l=0;for(q=a.aoColumns.length;l<q;l++){n=a.aoColumns[l];i=c?d[l]:I.createElement(n.sCellType);i._DT_CellIndex={row:b,column:l};g.push(i);if((!c||n.mRender||n.mData!==l)&&(!h.isPlainObject(n.mData)||n.mData._!==l+\".display\"))i.innerHTML=B(a,b,l,\"display\");n.sClass&&(i.className+=\" \"+n.sClass);n.bVisible&&!c?j.appendChild(i):!n.bVisible&&c&&i.parentNode.removeChild(i);\r\nn.fnCreatedCell&&n.fnCreatedCell.call(a.oInstance,i,B(a,b,l),f,b,l)}u(a,\"aoRowCreatedCallback\",null,[j,f,b])}e.nTr.setAttribute(\"role\",\"row\")}function La(a,b){var c=b.nTr,d=b._aData;if(c){var e=a.rowIdFn(d);e&&(c.id=e);d.DT_RowClass&&(e=d.DT_RowClass.split(\" \"),b.__rowc=b.__rowc?pa(b.__rowc.concat(e)):e,h(c).removeClass(b.__rowc.join(\" \")).addClass(d.DT_RowClass));d.DT_RowAttr&&h(c).attr(d.DT_RowAttr);d.DT_RowData&&h(c).data(d.DT_RowData)}}function kb(a){var b,c,d,e,f,g=a.nTHead,j=a.nTFoot,i=0===\r\nh(\"th, td\",g).length,n=a.oClasses,l=a.aoColumns;i&&(e=h(\"<tr/>\").appendTo(g));b=0;for(c=l.length;b<c;b++)f=l[b],d=h(f.nTh).addClass(f.sClass),i&&d.appendTo(e),a.oFeatures.bSort&&(d.addClass(f.sSortingClass),!1!==f.bSortable&&(d.attr(\"tabindex\",a.iTabIndex).attr(\"aria-controls\",a.sTableId),Ma(a,f.nTh,b))),f.sTitle!=d[0].innerHTML&&d.html(f.sTitle),Na(a,\"header\")(a,d,f,n);i&&da(a.aoHeader,g);h(g).find(\">tr\").attr(\"role\",\"row\");h(g).find(\">tr>th, >tr>td\").addClass(n.sHeaderTH);h(j).find(\">tr>th, >tr>td\").addClass(n.sFooterTH);\r\nif(null!==j){a=a.aoFooter[0];b=0;for(c=a.length;b<c;b++)f=l[b],f.nTf=a[b].cell,f.sClass&&h(f.nTf).addClass(f.sClass)}}function ea(a,b,c){var d,e,f,g=[],j=[],i=a.aoColumns.length,n;if(b){c===k&&(c=!1);d=0;for(e=b.length;d<e;d++){g[d]=b[d].slice();g[d].nTr=b[d].nTr;for(f=i-1;0<=f;f--)!a.aoColumns[f].bVisible&&!c&&g[d].splice(f,1);j.push([])}d=0;for(e=g.length;d<e;d++){if(a=g[d].nTr)for(;f=a.firstChild;)a.removeChild(f);f=0;for(b=g[d].length;f<b;f++)if(n=i=1,j[d][f]===k){a.appendChild(g[d][f].cell);\r\nfor(j[d][f]=1;g[d+i]!==k&&g[d][f].cell==g[d+i][f].cell;)j[d+i][f]=1,i++;for(;g[d][f+n]!==k&&g[d][f].cell==g[d][f+n].cell;){for(c=0;c<i;c++)j[d+c][f+n]=1;n++}h(g[d][f].cell).attr(\"rowspan\",i).attr(\"colspan\",n)}}}}function O(a){var b=u(a,\"aoPreDrawCallback\",\"preDraw\",[a]);if(-1!==h.inArray(!1,b))C(a,!1);else{var b=[],c=0,d=a.asStripeClasses,e=d.length,f=a.oLanguage,g=a.iInitDisplayStart,j=\"ssp\"==y(a),i=a.aiDisplay;a.bDrawing=!0;g!==k&&-1!==g&&(a._iDisplayStart=j?g:g>=a.fnRecordsDisplay()?0:g,a.iInitDisplayStart=\r\n-1);var g=a._iDisplayStart,n=a.fnDisplayEnd();if(a.bDeferLoading)a.bDeferLoading=!1,a.iDraw++,C(a,!1);else if(j){if(!a.bDestroying&&!lb(a))return}else a.iDraw++;if(0!==i.length){f=j?a.aoData.length:n;for(j=j?0:g;j<f;j++){var l=i[j],q=a.aoData[l];null===q.nTr&&Ha(a,l);l=q.nTr;if(0!==e){var t=d[c%e];q._sRowStripe!=t&&(h(l).removeClass(q._sRowStripe).addClass(t),q._sRowStripe=t)}u(a,\"aoRowCallback\",null,[l,q._aData,c,j]);b.push(l);c++}}else c=f.sZeroRecords,1==a.iDraw&&\"ajax\"==y(a)?c=f.sLoadingRecords:\r\nf.sEmptyTable&&0===a.fnRecordsTotal()&&(c=f.sEmptyTable),b[0]=h(\"<tr/>\",{\"class\":e?d[0]:\"\"}).append(h(\"<td />\",{valign:\"top\",colSpan:aa(a),\"class\":a.oClasses.sRowEmpty}).html(c))[0];u(a,\"aoHeaderCallback\",\"header\",[h(a.nTHead).children(\"tr\")[0],Ka(a),g,n,i]);u(a,\"aoFooterCallback\",\"footer\",[h(a.nTFoot).children(\"tr\")[0],Ka(a),g,n,i]);d=h(a.nTBody);d.children().detach();d.append(h(b));u(a,\"aoDrawCallback\",\"draw\",[a]);a.bSorted=!1;a.bFiltered=!1;a.bDrawing=!1}}function T(a,b){var c=a.oFeatures,d=c.bFilter;\r\nc.bSort&&mb(a);d?fa(a,a.oPreviousSearch):a.aiDisplay=a.aiDisplayMaster.slice();!0!==b&&(a._iDisplayStart=0);a._drawHold=b;O(a);a._drawHold=!1}function nb(a){var b=a.oClasses,c=h(a.nTable),c=h(\"<div/>\").insertBefore(c),d=a.oFeatures,e=h(\"<div/>\",{id:a.sTableId+\"_wrapper\",\"class\":b.sWrapper+(a.nTFoot?\"\":\" \"+b.sNoFooter)});a.nHolding=c[0];a.nTableWrapper=e[0];a.nTableReinsertBefore=a.nTable.nextSibling;for(var f=a.sDom.split(\"\"),g,j,i,n,l,q,t=0;t<f.length;t++){g=null;j=f[t];if(\"<\"==j){i=h(\"<div/>\")[0];\r\nn=f[t+1];if(\"'\"==n||'\"'==n){l=\"\";for(q=2;f[t+q]!=n;)l+=f[t+q],q++;\"H\"==l?l=b.sJUIHeader:\"F\"==l&&(l=b.sJUIFooter);-1!=l.indexOf(\".\")?(n=l.split(\".\"),i.id=n[0].substr(1,n[0].length-1),i.className=n[1]):\"#\"==l.charAt(0)?i.id=l.substr(1,l.length-1):i.className=l;t+=q}e.append(i);e=h(i)}else if(\">\"==j)e=e.parent();else if(\"l\"==j&&d.bPaginate&&d.bLengthChange)g=ob(a);else if(\"f\"==j&&d.bFilter)g=pb(a);else if(\"r\"==j&&d.bProcessing)g=qb(a);else if(\"t\"==j)g=rb(a);else if(\"i\"==j&&d.bInfo)g=sb(a);else if(\"p\"==\r\nj&&d.bPaginate)g=tb(a);else if(0!==m.ext.feature.length){i=m.ext.feature;q=0;for(n=i.length;q<n;q++)if(j==i[q].cFeature){g=i[q].fnInit(a);break}}g&&(i=a.aanFeatures,i[j]||(i[j]=[]),i[j].push(g),e.append(g))}c.replaceWith(e);a.nHolding=null}function da(a,b){var c=h(b).children(\"tr\"),d,e,f,g,j,i,n,l,q,t;a.splice(0,a.length);f=0;for(i=c.length;f<i;f++)a.push([]);f=0;for(i=c.length;f<i;f++){d=c[f];for(e=d.firstChild;e;){if(\"TD\"==e.nodeName.toUpperCase()||\"TH\"==e.nodeName.toUpperCase()){l=1*e.getAttribute(\"colspan\");\r\nq=1*e.getAttribute(\"rowspan\");l=!l||0===l||1===l?1:l;q=!q||0===q||1===q?1:q;g=0;for(j=a[f];j[g];)g++;n=g;t=1===l?!0:!1;for(j=0;j<l;j++)for(g=0;g<q;g++)a[f+g][n+j]={cell:e,unique:t},a[f+g].nTr=d}e=e.nextSibling}}}function qa(a,b,c){var d=[];c||(c=a.aoHeader,b&&(c=[],da(c,b)));for(var b=0,e=c.length;b<e;b++)for(var f=0,g=c[b].length;f<g;f++)if(c[b][f].unique&&(!d[f]||!a.bSortCellsTop))d[f]=c[b][f].cell;return d}function ra(a,b,c){u(a,\"aoServerParams\",\"serverParams\",[b]);if(b&&h.isArray(b)){var d={},\r\ne=/(.*?)\\[\\]$/;h.each(b,function(a,b){var c=b.name.match(e);c?(c=c[0],d[c]||(d[c]=[]),d[c].push(b.value)):d[b.name]=b.value});b=d}var f,g=a.ajax,j=a.oInstance,i=function(b){u(a,null,\"xhr\",[a,b,a.jqXHR]);c(b)};if(h.isPlainObject(g)&&g.data){f=g.data;var n=h.isFunction(f)?f(b,a):f,b=h.isFunction(f)&&n?n:h.extend(!0,b,n);delete g.data}n={data:b,success:function(b){var c=b.error||b.sError;c&&L(a,0,c);a.json=b;i(b)},dataType:\"json\",cache:!1,type:a.sServerMethod,error:function(b,c){var d=u(a,null,\"xhr\",\r\n[a,null,a.jqXHR]);-1===h.inArray(!0,d)&&(\"parsererror\"==c?L(a,0,\"Invalid JSON response\",1):4===b.readyState&&L(a,0,\"Ajax error\",7));C(a,!1)}};a.oAjaxData=b;u(a,null,\"preXhr\",[a,b]);a.fnServerData?a.fnServerData.call(j,a.sAjaxSource,h.map(b,function(a,b){return{name:b,value:a}}),i,a):a.sAjaxSource||\"string\"===typeof g?a.jqXHR=h.ajax(h.extend(n,{url:g||a.sAjaxSource})):h.isFunction(g)?a.jqXHR=g.call(j,b,i,a):(a.jqXHR=h.ajax(h.extend(n,g)),g.data=f)}function lb(a){return a.bAjaxDataGet?(a.iDraw++,C(a,\r\n!0),ra(a,ub(a),function(b){vb(a,b)}),!1):!0}function ub(a){var b=a.aoColumns,c=b.length,d=a.oFeatures,e=a.oPreviousSearch,f=a.aoPreSearchCols,g,j=[],i,n,l,q=V(a);g=a._iDisplayStart;i=!1!==d.bPaginate?a._iDisplayLength:-1;var k=function(a,b){j.push({name:a,value:b})};k(\"sEcho\",a.iDraw);k(\"iColumns\",c);k(\"sColumns\",G(b,\"sName\").join(\",\"));k(\"iDisplayStart\",g);k(\"iDisplayLength\",i);var S={draw:a.iDraw,columns:[],order:[],start:g,length:i,search:{value:e.sSearch,regex:e.bRegex}};for(g=0;g<c;g++)n=b[g],\r\nl=f[g],i=\"function\"==typeof n.mData?\"function\":n.mData,S.columns.push({data:i,name:n.sName,searchable:n.bSearchable,orderable:n.bSortable,search:{value:l.sSearch,regex:l.bRegex}}),k(\"mDataProp_\"+g,i),d.bFilter&&(k(\"sSearch_\"+g,l.sSearch),k(\"bRegex_\"+g,l.bRegex),k(\"bSearchable_\"+g,n.bSearchable)),d.bSort&&k(\"bSortable_\"+g,n.bSortable);d.bFilter&&(k(\"sSearch\",e.sSearch),k(\"bRegex\",e.bRegex));d.bSort&&(h.each(q,function(a,b){S.order.push({column:b.col,dir:b.dir});k(\"iSortCol_\"+a,b.col);k(\"sSortDir_\"+\r\na,b.dir)}),k(\"iSortingCols\",q.length));b=m.ext.legacy.ajax;return null===b?a.sAjaxSource?j:S:b?j:S}function vb(a,b){var c=sa(a,b),d=b.sEcho!==k?b.sEcho:b.draw,e=b.iTotalRecords!==k?b.iTotalRecords:b.recordsTotal,f=b.iTotalDisplayRecords!==k?b.iTotalDisplayRecords:b.recordsFiltered;if(d){if(1*d<a.iDraw)return;a.iDraw=1*d}na(a);a._iRecordsTotal=parseInt(e,10);a._iRecordsDisplay=parseInt(f,10);d=0;for(e=c.length;d<e;d++)N(a,c[d]);a.aiDisplay=a.aiDisplayMaster.slice();a.bAjaxDataGet=!1;O(a);a._bInitComplete||\r\nta(a,b);a.bAjaxDataGet=!0;C(a,!1)}function sa(a,b){var c=h.isPlainObject(a.ajax)&&a.ajax.dataSrc!==k?a.ajax.dataSrc:a.sAjaxDataProp;return\"data\"===c?b.aaData||b[c]:\"\"!==c?Q(c)(b):b}function pb(a){var b=a.oClasses,c=a.sTableId,d=a.oLanguage,e=a.oPreviousSearch,f=a.aanFeatures,g='<input type=\"search\" class=\"'+b.sFilterInput+'\"/>',j=d.sSearch,j=j.match(/_INPUT_/)?j.replace(\"_INPUT_\",g):j+g,b=h(\"<div/>\",{id:!f.f?c+\"_filter\":null,\"class\":b.sFilter}).append(h(\"<label/>\").append(j)),f=function(){var b=!this.value?\r\n\"\":this.value;b!=e.sSearch&&(fa(a,{sSearch:b,bRegex:e.bRegex,bSmart:e.bSmart,bCaseInsensitive:e.bCaseInsensitive}),a._iDisplayStart=0,O(a))},g=null!==a.searchDelay?a.searchDelay:\"ssp\"===y(a)?400:0,i=h(\"input\",b).val(e.sSearch).attr(\"placeholder\",d.sSearchPlaceholder).bind(\"keyup.DT search.DT input.DT paste.DT cut.DT\",g?Oa(f,g):f).bind(\"keypress.DT\",function(a){if(13==a.keyCode)return!1}).attr(\"aria-controls\",c);h(a.nTable).on(\"search.dt.DT\",function(b,c){if(a===c)try{i[0]!==I.activeElement&&i.val(e.sSearch)}catch(d){}});\r\nreturn b[0]}function fa(a,b,c){var d=a.oPreviousSearch,e=a.aoPreSearchCols,f=function(a){d.sSearch=a.sSearch;d.bRegex=a.bRegex;d.bSmart=a.bSmart;d.bCaseInsensitive=a.bCaseInsensitive};Ga(a);if(\"ssp\"!=y(a)){wb(a,b.sSearch,c,b.bEscapeRegex!==k?!b.bEscapeRegex:b.bRegex,b.bSmart,b.bCaseInsensitive);f(b);for(b=0;b<e.length;b++)xb(a,e[b].sSearch,b,e[b].bEscapeRegex!==k?!e[b].bEscapeRegex:e[b].bRegex,e[b].bSmart,e[b].bCaseInsensitive);yb(a)}else f(b);a.bFiltered=!0;u(a,null,\"search\",[a])}function yb(a){for(var b=\r\nm.ext.search,c=a.aiDisplay,d,e,f=0,g=b.length;f<g;f++){for(var j=[],i=0,n=c.length;i<n;i++)e=c[i],d=a.aoData[e],b[f](a,d._aFilterData,e,d._aData,i)&&j.push(e);c.length=0;h.merge(c,j)}}function xb(a,b,c,d,e,f){if(\"\"!==b)for(var g=a.aiDisplay,d=Pa(b,d,e,f),e=g.length-1;0<=e;e--)b=a.aoData[g[e]]._aFilterData[c],d.test(b)||g.splice(e,1)}function wb(a,b,c,d,e,f){var d=Pa(b,d,e,f),e=a.oPreviousSearch.sSearch,f=a.aiDisplayMaster,g;0!==m.ext.search.length&&(c=!0);g=zb(a);if(0>=b.length)a.aiDisplay=f.slice();\r\nelse{if(g||c||e.length>b.length||0!==b.indexOf(e)||a.bSorted)a.aiDisplay=f.slice();b=a.aiDisplay;for(c=b.length-1;0<=c;c--)d.test(a.aoData[b[c]]._sFilterRow)||b.splice(c,1)}}function Pa(a,b,c,d){a=b?a:Qa(a);c&&(a=\"^(?=.*?\"+h.map(a.match(/\"[^\"]+\"|[^ ]+/g)||[\"\"],function(a){if('\"'===a.charAt(0))var b=a.match(/^\"(.*)\"$/),a=b?b[1]:a;return a.replace('\"',\"\")}).join(\")(?=.*?\")+\").*$\");return RegExp(a,d?\"i\":\"\")}function zb(a){var b=a.aoColumns,c,d,e,f,g,j,i,h,l=m.ext.type.search;c=!1;d=0;for(f=a.aoData.length;d<\r\nf;d++)if(h=a.aoData[d],!h._aFilterData){j=[];e=0;for(g=b.length;e<g;e++)c=b[e],c.bSearchable?(i=B(a,d,e,\"filter\"),l[c.sType]&&(i=l[c.sType](i)),null===i&&(i=\"\"),\"string\"!==typeof i&&i.toString&&(i=i.toString())):i=\"\",i.indexOf&&-1!==i.indexOf(\"&\")&&(ua.innerHTML=i,i=Zb?ua.textContent:ua.innerText),i.replace&&(i=i.replace(/[\\r\\n]/g,\"\")),j.push(i);h._aFilterData=j;h._sFilterRow=j.join(\"  \");c=!0}return c}function Ab(a){return{search:a.sSearch,smart:a.bSmart,regex:a.bRegex,caseInsensitive:a.bCaseInsensitive}}\r\nfunction Bb(a){return{sSearch:a.search,bSmart:a.smart,bRegex:a.regex,bCaseInsensitive:a.caseInsensitive}}function sb(a){var b=a.sTableId,c=a.aanFeatures.i,d=h(\"<div/>\",{\"class\":a.oClasses.sInfo,id:!c?b+\"_info\":null});c||(a.aoDrawCallback.push({fn:Cb,sName:\"information\"}),d.attr(\"role\",\"status\").attr(\"aria-live\",\"polite\"),h(a.nTable).attr(\"aria-describedby\",b+\"_info\"));return d[0]}function Cb(a){var b=a.aanFeatures.i;if(0!==b.length){var c=a.oLanguage,d=a._iDisplayStart+1,e=a.fnDisplayEnd(),f=a.fnRecordsTotal(),\r\ng=a.fnRecordsDisplay(),j=g?c.sInfo:c.sInfoEmpty;g!==f&&(j+=\" \"+c.sInfoFiltered);j+=c.sInfoPostFix;j=Db(a,j);c=c.fnInfoCallback;null!==c&&(j=c.call(a.oInstance,a,d,e,f,g,j));h(b).html(j)}}function Db(a,b){var c=a.fnFormatNumber,d=a._iDisplayStart+1,e=a._iDisplayLength,f=a.fnRecordsDisplay(),g=-1===e;return b.replace(/_START_/g,c.call(a,d)).replace(/_END_/g,c.call(a,a.fnDisplayEnd())).replace(/_MAX_/g,c.call(a,a.fnRecordsTotal())).replace(/_TOTAL_/g,c.call(a,f)).replace(/_PAGE_/g,c.call(a,g?1:Math.ceil(d/\r\ne))).replace(/_PAGES_/g,c.call(a,g?1:Math.ceil(f/e)))}function ga(a){var b,c,d=a.iInitDisplayStart,e=a.aoColumns,f;c=a.oFeatures;var g=a.bDeferLoading;if(a.bInitialised){nb(a);kb(a);ea(a,a.aoHeader);ea(a,a.aoFooter);C(a,!0);c.bAutoWidth&&Fa(a);b=0;for(c=e.length;b<c;b++)f=e[b],f.sWidth&&(f.nTh.style.width=x(f.sWidth));u(a,null,\"preInit\",[a]);T(a);e=y(a);if(\"ssp\"!=e||g)\"ajax\"==e?ra(a,[],function(c){var f=sa(a,c);for(b=0;b<f.length;b++)N(a,f[b]);a.iInitDisplayStart=d;T(a);C(a,!1);ta(a,c)},a):(C(a,!1),\r\nta(a))}else setTimeout(function(){ga(a)},200)}function ta(a,b){a._bInitComplete=!0;(b||a.oInit.aaData)&&Y(a);u(a,null,\"plugin-init\",[a,b]);u(a,\"aoInitComplete\",\"init\",[a,b])}function Ra(a,b){var c=parseInt(b,10);a._iDisplayLength=c;Sa(a);u(a,null,\"length\",[a,c])}function ob(a){for(var b=a.oClasses,c=a.sTableId,d=a.aLengthMenu,e=h.isArray(d[0]),f=e?d[0]:d,d=e?d[1]:d,e=h(\"<select/>\",{name:c+\"_length\",\"aria-controls\":c,\"class\":b.sLengthSelect}),g=0,j=f.length;g<j;g++)e[0][g]=new Option(d[g],f[g]);var i=\r\nh(\"<div><label/></div>\").addClass(b.sLength);a.aanFeatures.l||(i[0].id=c+\"_length\");i.children().append(a.oLanguage.sLengthMenu.replace(\"_MENU_\",e[0].outerHTML));h(\"select\",i).val(a._iDisplayLength).bind(\"change.DT\",function(){Ra(a,h(this).val());O(a)});h(a.nTable).bind(\"length.dt.DT\",function(b,c,d){a===c&&h(\"select\",i).val(d)});return i[0]}function tb(a){var b=a.sPaginationType,c=m.ext.pager[b],d=\"function\"===typeof c,e=function(a){O(a)},b=h(\"<div/>\").addClass(a.oClasses.sPaging+b)[0],f=a.aanFeatures;\r\nd||c.fnInit(a,b,e);f.p||(b.id=a.sTableId+\"_paginate\",a.aoDrawCallback.push({fn:function(a){if(d){var b=a._iDisplayStart,i=a._iDisplayLength,h=a.fnRecordsDisplay(),l=-1===i,b=l?0:Math.ceil(b/i),i=l?1:Math.ceil(h/i),h=c(b,i),k,l=0;for(k=f.p.length;l<k;l++)Na(a,\"pageButton\")(a,f.p[l],l,h,b,i)}else c.fnUpdate(a,e)},sName:\"pagination\"}));return b}function Ta(a,b,c){var d=a._iDisplayStart,e=a._iDisplayLength,f=a.fnRecordsDisplay();0===f||-1===e?d=0:\"number\"===typeof b?(d=b*e,d>f&&(d=0)):\"first\"==b?d=0:\r\n\"previous\"==b?(d=0<=e?d-e:0,0>d&&(d=0)):\"next\"==b?d+e<f&&(d+=e):\"last\"==b?d=Math.floor((f-1)/e)*e:L(a,0,\"Unknown paging action: \"+b,5);b=a._iDisplayStart!==d;a._iDisplayStart=d;b&&(u(a,null,\"page\",[a]),c&&O(a));return b}function qb(a){return h(\"<div/>\",{id:!a.aanFeatures.r?a.sTableId+\"_processing\":null,\"class\":a.oClasses.sProcessing}).html(a.oLanguage.sProcessing).insertBefore(a.nTable)[0]}function C(a,b){a.oFeatures.bProcessing&&h(a.aanFeatures.r).css(\"display\",b?\"block\":\"none\");u(a,null,\"processing\",\r\n[a,b])}function rb(a){var b=h(a.nTable);b.attr(\"role\",\"grid\");var c=a.oScroll;if(\"\"===c.sX&&\"\"===c.sY)return a.nTable;var d=c.sX,e=c.sY,f=a.oClasses,g=b.children(\"caption\"),j=g.length?g[0]._captionSide:null,i=h(b[0].cloneNode(!1)),n=h(b[0].cloneNode(!1)),l=b.children(\"tfoot\");l.length||(l=null);i=h(\"<div/>\",{\"class\":f.sScrollWrapper}).append(h(\"<div/>\",{\"class\":f.sScrollHead}).css({overflow:\"hidden\",position:\"relative\",border:0,width:d?!d?null:x(d):\"100%\"}).append(h(\"<div/>\",{\"class\":f.sScrollHeadInner}).css({\"box-sizing\":\"content-box\",\r\nwidth:c.sXInner||\"100%\"}).append(i.removeAttr(\"id\").css(\"margin-left\",0).append(\"top\"===j?g:null).append(b.children(\"thead\"))))).append(h(\"<div/>\",{\"class\":f.sScrollBody}).css({position:\"relative\",overflow:\"auto\",width:!d?null:x(d)}).append(b));l&&i.append(h(\"<div/>\",{\"class\":f.sScrollFoot}).css({overflow:\"hidden\",border:0,width:d?!d?null:x(d):\"100%\"}).append(h(\"<div/>\",{\"class\":f.sScrollFootInner}).append(n.removeAttr(\"id\").css(\"margin-left\",0).append(\"bottom\"===j?g:null).append(b.children(\"tfoot\")))));\r\nvar b=i.children(),k=b[0],f=b[1],t=l?b[2]:null;if(d)h(f).on(\"scroll.DT\",function(){var a=this.scrollLeft;k.scrollLeft=a;l&&(t.scrollLeft=a)});h(f).css(e&&c.bCollapse?\"max-height\":\"height\",e);a.nScrollHead=k;a.nScrollBody=f;a.nScrollFoot=t;a.aoDrawCallback.push({fn:ka,sName:\"scrolling\"});return i[0]}function ka(a){var b=a.oScroll,c=b.sX,d=b.sXInner,e=b.sY,b=b.iBarWidth,f=h(a.nScrollHead),g=f[0].style,j=f.children(\"div\"),i=j[0].style,n=j.children(\"table\"),j=a.nScrollBody,l=h(j),q=j.style,t=h(a.nScrollFoot).children(\"div\"),\r\nm=t.children(\"table\"),o=h(a.nTHead),F=h(a.nTable),p=F[0],r=p.style,u=a.nTFoot?h(a.nTFoot):null,Eb=a.oBrowser,Ua=Eb.bScrollOversize,s=G(a.aoColumns,\"nTh\"),P,v,w,y,z=[],A=[],B=[],C=[],D,E=function(a){a=a.style;a.paddingTop=\"0\";a.paddingBottom=\"0\";a.borderTopWidth=\"0\";a.borderBottomWidth=\"0\";a.height=0};v=j.scrollHeight>j.clientHeight;if(a.scrollBarVis!==v&&a.scrollBarVis!==k)a.scrollBarVis=v,Y(a);else{a.scrollBarVis=v;F.children(\"thead, tfoot\").remove();u&&(w=u.clone().prependTo(F),P=u.find(\"tr\"),w=\r\nw.find(\"tr\"));y=o.clone().prependTo(F);o=o.find(\"tr\");v=y.find(\"tr\");y.find(\"th, td\").removeAttr(\"tabindex\");c||(q.width=\"100%\",f[0].style.width=\"100%\");h.each(qa(a,y),function(b,c){D=Z(a,b);c.style.width=a.aoColumns[D].sWidth});u&&J(function(a){a.style.width=\"\"},w);f=F.outerWidth();if(\"\"===c){r.width=\"100%\";if(Ua&&(F.find(\"tbody\").height()>j.offsetHeight||\"scroll\"==l.css(\"overflow-y\")))r.width=x(F.outerWidth()-b);f=F.outerWidth()}else\"\"!==d&&(r.width=x(d),f=F.outerWidth());J(E,v);J(function(a){B.push(a.innerHTML);\r\nz.push(x(h(a).css(\"width\")))},v);J(function(a,b){if(h.inArray(a,s)!==-1)a.style.width=z[b]},o);h(v).height(0);u&&(J(E,w),J(function(a){C.push(a.innerHTML);A.push(x(h(a).css(\"width\")))},w),J(function(a,b){a.style.width=A[b]},P),h(w).height(0));J(function(a,b){a.innerHTML='<div class=\"dataTables_sizing\" style=\"height:0;overflow:hidden;\">'+B[b]+\"</div>\";a.style.width=z[b]},v);u&&J(function(a,b){a.innerHTML='<div class=\"dataTables_sizing\" style=\"height:0;overflow:hidden;\">'+C[b]+\"</div>\";a.style.width=\r\nA[b]},w);if(F.outerWidth()<f){P=j.scrollHeight>j.offsetHeight||\"scroll\"==l.css(\"overflow-y\")?f+b:f;if(Ua&&(j.scrollHeight>j.offsetHeight||\"scroll\"==l.css(\"overflow-y\")))r.width=x(P-b);(\"\"===c||\"\"!==d)&&L(a,1,\"Possible column misalignment\",6)}else P=\"100%\";q.width=x(P);g.width=x(P);u&&(a.nScrollFoot.style.width=x(P));!e&&Ua&&(q.height=x(p.offsetHeight+b));c=F.outerWidth();n[0].style.width=x(c);i.width=x(c);d=F.height()>j.clientHeight||\"scroll\"==l.css(\"overflow-y\");e=\"padding\"+(Eb.bScrollbarLeft?\"Left\":\r\n\"Right\");i[e]=d?b+\"px\":\"0px\";u&&(m[0].style.width=x(c),t[0].style.width=x(c),t[0].style[e]=d?b+\"px\":\"0px\");F.children(\"colgroup\").insertBefore(F.children(\"thead\"));l.scroll();if((a.bSorted||a.bFiltered)&&!a._drawHold)j.scrollTop=0}}function J(a,b,c){for(var d=0,e=0,f=b.length,g,j;e<f;){g=b[e].firstChild;for(j=c?c[e].firstChild:null;g;)1===g.nodeType&&(c?a(g,j,d):a(g,d),d++),g=g.nextSibling,j=c?j.nextSibling:null;e++}}function Fa(a){var b=a.nTable,c=a.aoColumns,d=a.oScroll,e=d.sY,f=d.sX,g=d.sXInner,\r\nj=c.length,i=la(a,\"bVisible\"),n=h(\"th\",a.nTHead),l=b.getAttribute(\"width\"),k=b.parentNode,t=!1,m,o,p=a.oBrowser,d=p.bScrollOversize;(m=b.style.width)&&-1!==m.indexOf(\"%\")&&(l=m);for(m=0;m<i.length;m++)o=c[i[m]],null!==o.sWidth&&(o.sWidth=Fb(o.sWidthOrig,k),t=!0);if(d||!t&&!f&&!e&&j==aa(a)&&j==n.length)for(m=0;m<j;m++)i=Z(a,m),null!==i&&(c[i].sWidth=x(n.eq(m).width()));else{j=h(b).clone().css(\"visibility\",\"hidden\").removeAttr(\"id\");j.find(\"tbody tr\").remove();var r=h(\"<tr/>\").appendTo(j.find(\"tbody\"));\r\nj.find(\"thead, tfoot\").remove();j.append(h(a.nTHead).clone()).append(h(a.nTFoot).clone());j.find(\"tfoot th, tfoot td\").css(\"width\",\"\");n=qa(a,j.find(\"thead\")[0]);for(m=0;m<i.length;m++)o=c[i[m]],n[m].style.width=null!==o.sWidthOrig&&\"\"!==o.sWidthOrig?x(o.sWidthOrig):\"\",o.sWidthOrig&&f&&h(n[m]).append(h(\"<div/>\").css({width:o.sWidthOrig,margin:0,padding:0,border:0,height:1}));if(a.aoData.length)for(m=0;m<i.length;m++)t=i[m],o=c[t],h(Gb(a,t)).clone(!1).append(o.sContentPadding).appendTo(r);h(\"[name]\",\r\nj).removeAttr(\"name\");o=h(\"<div/>\").css(f||e?{position:\"absolute\",top:0,left:0,height:1,right:0,overflow:\"hidden\"}:{}).append(j).appendTo(k);f&&g?j.width(g):f?(j.css(\"width\",\"auto\"),j.removeAttr(\"width\"),j.width()<k.clientWidth&&l&&j.width(k.clientWidth)):e?j.width(k.clientWidth):l&&j.width(l);for(m=e=0;m<i.length;m++)k=h(n[m]),g=k.outerWidth()-k.width(),k=p.bBounding?Math.ceil(n[m].getBoundingClientRect().width):k.outerWidth(),e+=k,c[i[m]].sWidth=x(k-g);b.style.width=x(e);o.remove()}l&&(b.style.width=\r\nx(l));if((l||f)&&!a._reszEvt)b=function(){h(D).bind(\"resize.DT-\"+a.sInstance,Oa(function(){Y(a)}))},d?setTimeout(b,1E3):b(),a._reszEvt=!0}function Fb(a,b){if(!a)return 0;var c=h(\"<div/>\").css(\"width\",x(a)).appendTo(b||I.body),d=c[0].offsetWidth;c.remove();return d}function Gb(a,b){var c=Hb(a,b);if(0>c)return null;var d=a.aoData[c];return!d.nTr?h(\"<td/>\").html(B(a,c,b,\"display\"))[0]:d.anCells[b]}function Hb(a,b){for(var c,d=-1,e=-1,f=0,g=a.aoData.length;f<g;f++)c=B(a,f,b,\"display\")+\"\",c=c.replace($b,\r\n\"\"),c=c.replace(/&nbsp;/g,\" \"),c.length>d&&(d=c.length,e=f);return e}function x(a){return null===a?\"0px\":\"number\"==typeof a?0>a?\"0px\":a+\"px\":a.match(/\\d$/)?a+\"px\":a}function V(a){var b,c,d=[],e=a.aoColumns,f,g,j,i;b=a.aaSortingFixed;c=h.isPlainObject(b);var n=[];f=function(a){a.length&&!h.isArray(a[0])?n.push(a):h.merge(n,a)};h.isArray(b)&&f(b);c&&b.pre&&f(b.pre);f(a.aaSorting);c&&b.post&&f(b.post);for(a=0;a<n.length;a++){i=n[a][0];f=e[i].aDataSort;b=0;for(c=f.length;b<c;b++)g=f[b],j=e[g].sType||\r\n\"string\",n[a]._idx===k&&(n[a]._idx=h.inArray(n[a][1],e[g].asSorting)),d.push({src:i,col:g,dir:n[a][1],index:n[a]._idx,type:j,formatter:m.ext.type.order[j+\"-pre\"]})}return d}function mb(a){var b,c,d=[],e=m.ext.type.order,f=a.aoData,g=0,j,i=a.aiDisplayMaster,h;Ga(a);h=V(a);b=0;for(c=h.length;b<c;b++)j=h[b],j.formatter&&g++,Ib(a,j.col);if(\"ssp\"!=y(a)&&0!==h.length){b=0;for(c=i.length;b<c;b++)d[i[b]]=b;g===h.length?i.sort(function(a,b){var c,e,g,j,i=h.length,k=f[a]._aSortData,m=f[b]._aSortData;for(g=\r\n0;g<i;g++)if(j=h[g],c=k[j.col],e=m[j.col],c=c<e?-1:c>e?1:0,0!==c)return\"asc\"===j.dir?c:-c;c=d[a];e=d[b];return c<e?-1:c>e?1:0}):i.sort(function(a,b){var c,g,j,i,k=h.length,m=f[a]._aSortData,p=f[b]._aSortData;for(j=0;j<k;j++)if(i=h[j],c=m[i.col],g=p[i.col],i=e[i.type+\"-\"+i.dir]||e[\"string-\"+i.dir],c=i(c,g),0!==c)return c;c=d[a];g=d[b];return c<g?-1:c>g?1:0})}a.bSorted=!0}function Jb(a){for(var b,c,d=a.aoColumns,e=V(a),a=a.oLanguage.oAria,f=0,g=d.length;f<g;f++){c=d[f];var j=c.asSorting;b=c.sTitle.replace(/<.*?>/g,\r\n\"\");var i=c.nTh;i.removeAttribute(\"aria-sort\");c.bSortable&&(0<e.length&&e[0].col==f?(i.setAttribute(\"aria-sort\",\"asc\"==e[0].dir?\"ascending\":\"descending\"),c=j[e[0].index+1]||j[0]):c=j[0],b+=\"asc\"===c?a.sSortAscending:a.sSortDescending);i.setAttribute(\"aria-label\",b)}}function Va(a,b,c,d){var e=a.aaSorting,f=a.aoColumns[b].asSorting,g=function(a,b){var c=a._idx;c===k&&(c=h.inArray(a[1],f));return c+1<f.length?c+1:b?null:0};\"number\"===typeof e[0]&&(e=a.aaSorting=[e]);c&&a.oFeatures.bSortMulti?(c=h.inArray(b,\r\nG(e,\"0\")),-1!==c?(b=g(e[c],!0),null===b&&1===e.length&&(b=0),null===b?e.splice(c,1):(e[c][1]=f[b],e[c]._idx=b)):(e.push([b,f[0],0]),e[e.length-1]._idx=0)):e.length&&e[0][0]==b?(b=g(e[0]),e.length=1,e[0][1]=f[b],e[0]._idx=b):(e.length=0,e.push([b,f[0]]),e[0]._idx=0);T(a);\"function\"==typeof d&&d(a)}function Ma(a,b,c,d){var e=a.aoColumns[c];Wa(b,{},function(b){!1!==e.bSortable&&(a.oFeatures.bProcessing?(C(a,!0),setTimeout(function(){Va(a,c,b.shiftKey,d);\"ssp\"!==y(a)&&C(a,!1)},0)):Va(a,c,b.shiftKey,d))})}\r\nfunction va(a){var b=a.aLastSort,c=a.oClasses.sSortColumn,d=V(a),e=a.oFeatures,f,g;if(e.bSort&&e.bSortClasses){e=0;for(f=b.length;e<f;e++)g=b[e].src,h(G(a.aoData,\"anCells\",g)).removeClass(c+(2>e?e+1:3));e=0;for(f=d.length;e<f;e++)g=d[e].src,h(G(a.aoData,\"anCells\",g)).addClass(c+(2>e?e+1:3))}a.aLastSort=d}function Ib(a,b){var c=a.aoColumns[b],d=m.ext.order[c.sSortDataType],e;d&&(e=d.call(a.oInstance,a,b,$(a,b)));for(var f,g=m.ext.type.order[c.sType+\"-pre\"],j=0,i=a.aoData.length;j<i;j++)if(c=a.aoData[j],\r\nc._aSortData||(c._aSortData=[]),!c._aSortData[b]||d)f=d?e[j]:B(a,j,b,\"sort\"),c._aSortData[b]=g?g(f):f}function wa(a){if(a.oFeatures.bStateSave&&!a.bDestroying){var b={time:+new Date,start:a._iDisplayStart,length:a._iDisplayLength,order:h.extend(!0,[],a.aaSorting),search:Ab(a.oPreviousSearch),columns:h.map(a.aoColumns,function(b,d){return{visible:b.bVisible,search:Ab(a.aoPreSearchCols[d])}})};u(a,\"aoStateSaveParams\",\"stateSaveParams\",[a,b]);a.oSavedState=b;a.fnStateSaveCallback.call(a.oInstance,a,\r\nb)}}function Kb(a){var b,c,d=a.aoColumns;if(a.oFeatures.bStateSave){var e=a.fnStateLoadCallback.call(a.oInstance,a);if(e&&e.time&&(b=u(a,\"aoStateLoadParams\",\"stateLoadParams\",[a,e]),-1===h.inArray(!1,b)&&(b=a.iStateDuration,!(0<b&&e.time<+new Date-1E3*b)&&d.length===e.columns.length))){a.oLoadedState=h.extend(!0,{},e);e.start!==k&&(a._iDisplayStart=e.start,a.iInitDisplayStart=e.start);e.length!==k&&(a._iDisplayLength=e.length);e.order!==k&&(a.aaSorting=[],h.each(e.order,function(b,c){a.aaSorting.push(c[0]>=\r\nd.length?[0,c[1]]:c)}));e.search!==k&&h.extend(a.oPreviousSearch,Bb(e.search));b=0;for(c=e.columns.length;b<c;b++){var f=e.columns[b];f.visible!==k&&(d[b].bVisible=f.visible);f.search!==k&&h.extend(a.aoPreSearchCols[b],Bb(f.search))}u(a,\"aoStateLoaded\",\"stateLoaded\",[a,e])}}}function xa(a){var b=m.settings,a=h.inArray(a,G(b,\"nTable\"));return-1!==a?b[a]:null}function L(a,b,c,d){c=\"DataTables warning: \"+(a?\"table id=\"+a.sTableId+\" - \":\"\")+c;d&&(c+=\". For more information about this error, please see http://datatables.net/tn/\"+\r\nd);if(b)D.console&&console.log&&console.log(c);else if(b=m.ext,b=b.sErrMode||b.errMode,a&&u(a,null,\"error\",[a,d,c]),\"alert\"==b)alert(c);else{if(\"throw\"==b)throw Error(c);\"function\"==typeof b&&b(a,d,c)}}function E(a,b,c,d){h.isArray(c)?h.each(c,function(c,d){h.isArray(d)?E(a,b,d[0],d[1]):E(a,b,d)}):(d===k&&(d=c),b[c]!==k&&(a[d]=b[c]))}function Lb(a,b,c){var d,e;for(e in b)b.hasOwnProperty(e)&&(d=b[e],h.isPlainObject(d)?(h.isPlainObject(a[e])||(a[e]={}),h.extend(!0,a[e],d)):a[e]=c&&\"data\"!==e&&\"aaData\"!==\r\ne&&h.isArray(d)?d.slice():d);return a}function Wa(a,b,c){h(a).bind(\"click.DT\",b,function(b){a.blur();c(b)}).bind(\"keypress.DT\",b,function(a){13===a.which&&(a.preventDefault(),c(a))}).bind(\"selectstart.DT\",function(){return!1})}function z(a,b,c,d){c&&a[b].push({fn:c,sName:d})}function u(a,b,c,d){var e=[];b&&(e=h.map(a[b].slice().reverse(),function(b){return b.fn.apply(a.oInstance,d)}));null!==c&&(b=h.Event(c+\".dt\"),h(a.nTable).trigger(b,d),e.push(b.result));return e}function Sa(a){var b=a._iDisplayStart,\r\nc=a.fnDisplayEnd(),d=a._iDisplayLength;b>=c&&(b=c-d);b-=b%d;if(-1===d||0>b)b=0;a._iDisplayStart=b}function Na(a,b){var c=a.renderer,d=m.ext.renderer[b];return h.isPlainObject(c)&&c[b]?d[c[b]]||d._:\"string\"===typeof c?d[c]||d._:d._}function y(a){return a.oFeatures.bServerSide?\"ssp\":a.ajax||a.sAjaxSource?\"ajax\":\"dom\"}function ya(a,b){var c=[],c=Mb.numbers_length,d=Math.floor(c/2);b<=c?c=W(0,b):a<=d?(c=W(0,c-2),c.push(\"ellipsis\"),c.push(b-1)):(a>=b-1-d?c=W(b-(c-2),b):(c=W(a-d+2,a+d-1),c.push(\"ellipsis\"),\r\nc.push(b-1)),c.splice(0,0,\"ellipsis\"),c.splice(0,0,0));c.DT_el=\"span\";return c}function db(a){h.each({num:function(b){return za(b,a)},\"num-fmt\":function(b){return za(b,a,Xa)},\"html-num\":function(b){return za(b,a,Aa)},\"html-num-fmt\":function(b){return za(b,a,Aa,Xa)}},function(b,c){v.type.order[b+a+\"-pre\"]=c;b.match(/^html\\-/)&&(v.type.search[b+a]=v.type.search.html)})}function Nb(a){return function(){var b=[xa(this[m.ext.iApiIndex])].concat(Array.prototype.slice.call(arguments));return m.ext.internal[a].apply(this,\r\nb)}}var m=function(a){this.$=function(a,b){return this.api(!0).$(a,b)};this._=function(a,b){return this.api(!0).rows(a,b).data()};this.api=function(a){return a?new r(xa(this[v.iApiIndex])):new r(this)};this.fnAddData=function(a,b){var c=this.api(!0),d=h.isArray(a)&&(h.isArray(a[0])||h.isPlainObject(a[0]))?c.rows.add(a):c.row.add(a);(b===k||b)&&c.draw();return d.flatten().toArray()};this.fnAdjustColumnSizing=function(a){var b=this.api(!0).columns.adjust(),c=b.settings()[0],d=c.oScroll;a===k||a?b.draw(!1):\r\n(\"\"!==d.sX||\"\"!==d.sY)&&ka(c)};this.fnClearTable=function(a){var b=this.api(!0).clear();(a===k||a)&&b.draw()};this.fnClose=function(a){this.api(!0).row(a).child.hide()};this.fnDeleteRow=function(a,b,c){var d=this.api(!0),a=d.rows(a),e=a.settings()[0],h=e.aoData[a[0][0]];a.remove();b&&b.call(this,e,h);(c===k||c)&&d.draw();return h};this.fnDestroy=function(a){this.api(!0).destroy(a)};this.fnDraw=function(a){this.api(!0).draw(a)};this.fnFilter=function(a,b,c,d,e,h){e=this.api(!0);null===b||b===k?e.search(a,\r\nc,d,h):e.column(b).search(a,c,d,h);e.draw()};this.fnGetData=function(a,b){var c=this.api(!0);if(a!==k){var d=a.nodeName?a.nodeName.toLowerCase():\"\";return b!==k||\"td\"==d||\"th\"==d?c.cell(a,b).data():c.row(a).data()||null}return c.data().toArray()};this.fnGetNodes=function(a){var b=this.api(!0);return a!==k?b.row(a).node():b.rows().nodes().flatten().toArray()};this.fnGetPosition=function(a){var b=this.api(!0),c=a.nodeName.toUpperCase();return\"TR\"==c?b.row(a).index():\"TD\"==c||\"TH\"==c?(a=b.cell(a).index(),\r\n[a.row,a.columnVisible,a.column]):null};this.fnIsOpen=function(a){return this.api(!0).row(a).child.isShown()};this.fnOpen=function(a,b,c){return this.api(!0).row(a).child(b,c).show().child()[0]};this.fnPageChange=function(a,b){var c=this.api(!0).page(a);(b===k||b)&&c.draw(!1)};this.fnSetColumnVis=function(a,b,c){a=this.api(!0).column(a).visible(b);(c===k||c)&&a.columns.adjust().draw()};this.fnSettings=function(){return xa(this[v.iApiIndex])};this.fnSort=function(a){this.api(!0).order(a).draw()};this.fnSortListener=\r\nfunction(a,b,c){this.api(!0).order.listener(a,b,c)};this.fnUpdate=function(a,b,c,d,e){var h=this.api(!0);c===k||null===c?h.row(b).data(a):h.cell(b,c).data(a);(e===k||e)&&h.columns.adjust();(d===k||d)&&h.draw();return 0};this.fnVersionCheck=v.fnVersionCheck;var b=this,c=a===k,d=this.length;c&&(a={});this.oApi=this.internal=v.internal;for(var e in m.ext.internal)e&&(this[e]=Nb(e));this.each(function(){var e={},e=1<d?Lb(e,a,!0):a,g=0,j,i=this.getAttribute(\"id\"),n=!1,l=m.defaults,q=h(this);if(\"table\"!=\r\nthis.nodeName.toLowerCase())L(null,0,\"Non-table node initialisation (\"+this.nodeName+\")\",2);else{eb(l);fb(l.column);K(l,l,!0);K(l.column,l.column,!0);K(l,h.extend(e,q.data()));var t=m.settings,g=0;for(j=t.length;g<j;g++){var p=t[g];if(p.nTable==this||p.nTHead.parentNode==this||p.nTFoot&&p.nTFoot.parentNode==this){g=e.bRetrieve!==k?e.bRetrieve:l.bRetrieve;if(c||g)return p.oInstance;if(e.bDestroy!==k?e.bDestroy:l.bDestroy){p.oInstance.fnDestroy();break}else{L(p,0,\"Cannot reinitialise DataTable\",3);\r\nreturn}}if(p.sTableId==this.id){t.splice(g,1);break}}if(null===i||\"\"===i)this.id=i=\"DataTables_Table_\"+m.ext._unique++;var o=h.extend(!0,{},m.models.oSettings,{sDestroyWidth:q[0].style.width,sInstance:i,sTableId:i});o.nTable=this;o.oApi=b.internal;o.oInit=e;t.push(o);o.oInstance=1===b.length?b:q.dataTable();eb(e);e.oLanguage&&Da(e.oLanguage);e.aLengthMenu&&!e.iDisplayLength&&(e.iDisplayLength=h.isArray(e.aLengthMenu[0])?e.aLengthMenu[0][0]:e.aLengthMenu[0]);e=Lb(h.extend(!0,{},l),e);E(o.oFeatures,\r\ne,\"bPaginate bLengthChange bFilter bSort bSortMulti bInfo bProcessing bAutoWidth bSortClasses bServerSide bDeferRender\".split(\" \"));E(o,e,[\"asStripeClasses\",\"ajax\",\"fnServerData\",\"fnFormatNumber\",\"sServerMethod\",\"aaSorting\",\"aaSortingFixed\",\"aLengthMenu\",\"sPaginationType\",\"sAjaxSource\",\"sAjaxDataProp\",\"iStateDuration\",\"sDom\",\"bSortCellsTop\",\"iTabIndex\",\"fnStateLoadCallback\",\"fnStateSaveCallback\",\"renderer\",\"searchDelay\",\"rowId\",[\"iCookieDuration\",\"iStateDuration\"],[\"oSearch\",\"oPreviousSearch\"],[\"aoSearchCols\",\r\n\"aoPreSearchCols\"],[\"iDisplayLength\",\"_iDisplayLength\"],[\"bJQueryUI\",\"bJUI\"]]);E(o.oScroll,e,[[\"sScrollX\",\"sX\"],[\"sScrollXInner\",\"sXInner\"],[\"sScrollY\",\"sY\"],[\"bScrollCollapse\",\"bCollapse\"]]);E(o.oLanguage,e,\"fnInfoCallback\");z(o,\"aoDrawCallback\",e.fnDrawCallback,\"user\");z(o,\"aoServerParams\",e.fnServerParams,\"user\");z(o,\"aoStateSaveParams\",e.fnStateSaveParams,\"user\");z(o,\"aoStateLoadParams\",e.fnStateLoadParams,\"user\");z(o,\"aoStateLoaded\",e.fnStateLoaded,\"user\");z(o,\"aoRowCallback\",e.fnRowCallback,\r\n\"user\");z(o,\"aoRowCreatedCallback\",e.fnCreatedRow,\"user\");z(o,\"aoHeaderCallback\",e.fnHeaderCallback,\"user\");z(o,\"aoFooterCallback\",e.fnFooterCallback,\"user\");z(o,\"aoInitComplete\",e.fnInitComplete,\"user\");z(o,\"aoPreDrawCallback\",e.fnPreDrawCallback,\"user\");o.rowIdFn=Q(e.rowId);gb(o);i=o.oClasses;e.bJQueryUI?(h.extend(i,m.ext.oJUIClasses,e.oClasses),e.sDom===l.sDom&&\"lfrtip\"===l.sDom&&(o.sDom='<\"H\"lfr>t<\"F\"ip>'),o.renderer)?h.isPlainObject(o.renderer)&&!o.renderer.header&&(o.renderer.header=\"jqueryui\"):\r\no.renderer=\"jqueryui\":h.extend(i,m.ext.classes,e.oClasses);q.addClass(i.sTable);o.iInitDisplayStart===k&&(o.iInitDisplayStart=e.iDisplayStart,o._iDisplayStart=e.iDisplayStart);null!==e.iDeferLoading&&(o.bDeferLoading=!0,g=h.isArray(e.iDeferLoading),o._iRecordsDisplay=g?e.iDeferLoading[0]:e.iDeferLoading,o._iRecordsTotal=g?e.iDeferLoading[1]:e.iDeferLoading);var r=o.oLanguage;h.extend(!0,r,e.oLanguage);\"\"!==r.sUrl&&(h.ajax({dataType:\"json\",url:r.sUrl,success:function(a){Da(a);K(l.oLanguage,a);h.extend(true,\r\nr,a);ga(o)},error:function(){ga(o)}}),n=!0);null===e.asStripeClasses&&(o.asStripeClasses=[i.sStripeOdd,i.sStripeEven]);var g=o.asStripeClasses,v=q.children(\"tbody\").find(\"tr\").eq(0);-1!==h.inArray(!0,h.map(g,function(a){return v.hasClass(a)}))&&(h(\"tbody tr\",this).removeClass(g.join(\" \")),o.asDestroyStripes=g.slice());t=[];g=this.getElementsByTagName(\"thead\");0!==g.length&&(da(o.aoHeader,g[0]),t=qa(o));if(null===e.aoColumns){p=[];g=0;for(j=t.length;g<j;g++)p.push(null)}else p=e.aoColumns;g=0;for(j=\r\np.length;g<j;g++)Ea(o,t?t[g]:null);ib(o,e.aoColumnDefs,p,function(a,b){ja(o,a,b)});if(v.length){var s=function(a,b){return a.getAttribute(\"data-\"+b)!==null?b:null};h(v[0]).children(\"th, td\").each(function(a,b){var c=o.aoColumns[a];if(c.mData===a){var d=s(b,\"sort\")||s(b,\"order\"),e=s(b,\"filter\")||s(b,\"search\");if(d!==null||e!==null){c.mData={_:a+\".display\",sort:d!==null?a+\".@data-\"+d:k,type:d!==null?a+\".@data-\"+d:k,filter:e!==null?a+\".@data-\"+e:k};ja(o,a)}}})}var w=o.oFeatures;e.bStateSave&&(w.bStateSave=\r\n!0,Kb(o,e),z(o,\"aoDrawCallback\",wa,\"state_save\"));if(e.aaSorting===k){t=o.aaSorting;g=0;for(j=t.length;g<j;g++)t[g][1]=o.aoColumns[g].asSorting[0]}va(o);w.bSort&&z(o,\"aoDrawCallback\",function(){if(o.bSorted){var a=V(o),b={};h.each(a,function(a,c){b[c.src]=c.dir});u(o,null,\"order\",[o,a,b]);Jb(o)}});z(o,\"aoDrawCallback\",function(){(o.bSorted||y(o)===\"ssp\"||w.bDeferRender)&&va(o)},\"sc\");g=q.children(\"caption\").each(function(){this._captionSide=q.css(\"caption-side\")});j=q.children(\"thead\");0===j.length&&\r\n(j=h(\"<thead/>\").appendTo(this));o.nTHead=j[0];j=q.children(\"tbody\");0===j.length&&(j=h(\"<tbody/>\").appendTo(this));o.nTBody=j[0];j=q.children(\"tfoot\");if(0===j.length&&0<g.length&&(\"\"!==o.oScroll.sX||\"\"!==o.oScroll.sY))j=h(\"<tfoot/>\").appendTo(this);0===j.length||0===j.children().length?q.addClass(i.sNoFooter):0<j.length&&(o.nTFoot=j[0],da(o.aoFooter,o.nTFoot));if(e.aaData)for(g=0;g<e.aaData.length;g++)N(o,e.aaData[g]);else(o.bDeferLoading||\"dom\"==y(o))&&ma(o,h(o.nTBody).children(\"tr\"));o.aiDisplay=\r\no.aiDisplayMaster.slice();o.bInitialised=!0;!1===n&&ga(o)}});b=null;return this},v,r,p,s,Ya={},Ob=/[\\r\\n]/g,Aa=/<.*?>/g,ac=/^[\\w\\+\\-]/,bc=/[\\w\\+\\-]$/,cc=RegExp(\"(\\\\/|\\\\.|\\\\*|\\\\+|\\\\?|\\\\||\\\\(|\\\\)|\\\\[|\\\\]|\\\\{|\\\\}|\\\\\\\\|\\\\$|\\\\^|\\\\-)\",\"g\"),Xa=/[',$£€¥%\\u2009\\u202F\\u20BD\\u20a9\\u20BArfk]/gi,M=function(a){return!a||!0===a||\"-\"===a?!0:!1},Pb=function(a){var b=parseInt(a,10);return!isNaN(b)&&isFinite(a)?b:null},Qb=function(a,b){Ya[b]||(Ya[b]=RegExp(Qa(b),\"g\"));return\"string\"===typeof a&&\".\"!==b?a.replace(/\\./g,\r\n\"\").replace(Ya[b],\".\"):a},Za=function(a,b,c){var d=\"string\"===typeof a;if(M(a))return!0;b&&d&&(a=Qb(a,b));c&&d&&(a=a.replace(Xa,\"\"));return!isNaN(parseFloat(a))&&isFinite(a)},Rb=function(a,b,c){return M(a)?!0:!(M(a)||\"string\"===typeof a)?null:Za(a.replace(Aa,\"\"),b,c)?!0:null},G=function(a,b,c){var d=[],e=0,f=a.length;if(c!==k)for(;e<f;e++)a[e]&&a[e][b]&&d.push(a[e][b][c]);else for(;e<f;e++)a[e]&&d.push(a[e][b]);return d},ha=function(a,b,c,d){var e=[],f=0,g=b.length;if(d!==k)for(;f<g;f++)a[b[f]][c]&&\r\ne.push(a[b[f]][c][d]);else for(;f<g;f++)e.push(a[b[f]][c]);return e},W=function(a,b){var c=[],d;b===k?(b=0,d=a):(d=b,b=a);for(var e=b;e<d;e++)c.push(e);return c},Sb=function(a){for(var b=[],c=0,d=a.length;c<d;c++)a[c]&&b.push(a[c]);return b},pa=function(a){var b=[],c,d,e=a.length,f,g=0;d=0;a:for(;d<e;d++){c=a[d];for(f=0;f<g;f++)if(b[f]===c)continue a;b.push(c);g++}return b};m.util={throttle:function(a,b){var c=b!==k?b:200,d,e;return function(){var b=this,g=+new Date,h=arguments;d&&g<d+c?(clearTimeout(e),\r\ne=setTimeout(function(){d=k;a.apply(b,h)},c)):(d=g,a.apply(b,h))}},escapeRegex:function(a){return a.replace(cc,\"\\\\$1\")}};var A=function(a,b,c){a[b]!==k&&(a[c]=a[b])},ba=/\\[.*?\\]$/,U=/\\(\\)$/,Qa=m.util.escapeRegex,ua=h(\"<div>\")[0],Zb=ua.textContent!==k,$b=/<.*?>/g,Oa=m.util.throttle,Tb=[],w=Array.prototype,dc=function(a){var b,c,d=m.settings,e=h.map(d,function(a){return a.nTable});if(a){if(a.nTable&&a.oApi)return[a];if(a.nodeName&&\"table\"===a.nodeName.toLowerCase())return b=h.inArray(a,e),-1!==b?[d[b]]:\r\nnull;if(a&&\"function\"===typeof a.settings)return a.settings().toArray();\"string\"===typeof a?c=h(a):a instanceof h&&(c=a)}else return[];if(c)return c.map(function(){b=h.inArray(this,e);return-1!==b?d[b]:null}).toArray()};r=function(a,b){if(!(this instanceof r))return new r(a,b);var c=[],d=function(a){(a=dc(a))&&(c=c.concat(a))};if(h.isArray(a))for(var e=0,f=a.length;e<f;e++)d(a[e]);else d(a);this.context=pa(c);b&&h.merge(this,b);this.selector={rows:null,cols:null,opts:null};r.extend(this,this,Tb)};\r\nm.Api=r;h.extend(r.prototype,{any:function(){return 0!==this.count()},concat:w.concat,context:[],count:function(){return this.flatten().length},each:function(a){for(var b=0,c=this.length;b<c;b++)a.call(this,this[b],b,this);return this},eq:function(a){var b=this.context;return b.length>a?new r(b[a],this[a]):null},filter:function(a){var b=[];if(w.filter)b=w.filter.call(this,a,this);else for(var c=0,d=this.length;c<d;c++)a.call(this,this[c],c,this)&&b.push(this[c]);return new r(this.context,b)},flatten:function(){var a=\r\n[];return new r(this.context,a.concat.apply(a,this.toArray()))},join:w.join,indexOf:w.indexOf||function(a,b){for(var c=b||0,d=this.length;c<d;c++)if(this[c]===a)return c;return-1},iterator:function(a,b,c,d){var e=[],f,g,h,i,n,l=this.context,m,t,p=this.selector;\"string\"===typeof a&&(d=c,c=b,b=a,a=!1);g=0;for(h=l.length;g<h;g++){var o=new r(l[g]);if(\"table\"===b)f=c.call(o,l[g],g),f!==k&&e.push(f);else if(\"columns\"===b||\"rows\"===b)f=c.call(o,l[g],this[g],g),f!==k&&e.push(f);else if(\"column\"===b||\"column-rows\"===\r\nb||\"row\"===b||\"cell\"===b){t=this[g];\"column-rows\"===b&&(m=Ba(l[g],p.opts));i=0;for(n=t.length;i<n;i++)f=t[i],f=\"cell\"===b?c.call(o,l[g],f.row,f.column,g,i):c.call(o,l[g],f,g,i,m),f!==k&&e.push(f)}}return e.length||d?(a=new r(l,a?e.concat.apply([],e):e),b=a.selector,b.rows=p.rows,b.cols=p.cols,b.opts=p.opts,a):this},lastIndexOf:w.lastIndexOf||function(a,b){return this.indexOf.apply(this.toArray.reverse(),arguments)},length:0,map:function(a){var b=[];if(w.map)b=w.map.call(this,a,this);else for(var c=\r\n0,d=this.length;c<d;c++)b.push(a.call(this,this[c],c));return new r(this.context,b)},pluck:function(a){return this.map(function(b){return b[a]})},pop:w.pop,push:w.push,reduce:w.reduce||function(a,b){return hb(this,a,b,0,this.length,1)},reduceRight:w.reduceRight||function(a,b){return hb(this,a,b,this.length-1,-1,-1)},reverse:w.reverse,selector:null,shift:w.shift,sort:w.sort,splice:w.splice,toArray:function(){return w.slice.call(this)},to$:function(){return h(this)},toJQuery:function(){return h(this)},\r\nunique:function(){return new r(this.context,pa(this))},unshift:w.unshift});r.extend=function(a,b,c){if(c.length&&b&&(b instanceof r||b.__dt_wrapper)){var d,e,f,g=function(a,b,c){return function(){var d=b.apply(a,arguments);r.extend(d,d,c.methodExt);return d}};d=0;for(e=c.length;d<e;d++)f=c[d],b[f.name]=\"function\"===typeof f.val?g(a,f.val,f):h.isPlainObject(f.val)?{}:f.val,b[f.name].__dt_wrapper=!0,r.extend(a,b[f.name],f.propExt)}};r.register=p=function(a,b){if(h.isArray(a))for(var c=0,d=a.length;c<\r\nd;c++)r.register(a[c],b);else for(var e=a.split(\".\"),f=Tb,g,j,c=0,d=e.length;c<d;c++){g=(j=-1!==e[c].indexOf(\"()\"))?e[c].replace(\"()\",\"\"):e[c];var i;a:{i=0;for(var n=f.length;i<n;i++)if(f[i].name===g){i=f[i];break a}i=null}i||(i={name:g,val:{},methodExt:[],propExt:[]},f.push(i));c===d-1?i.val=b:f=j?i.methodExt:i.propExt}};r.registerPlural=s=function(a,b,c){r.register(a,c);r.register(b,function(){var a=c.apply(this,arguments);return a===this?this:a instanceof r?a.length?h.isArray(a[0])?new r(a.context,\r\na[0]):a[0]:k:a})};p(\"tables()\",function(a){var b;if(a){b=r;var c=this.context;if(\"number\"===typeof a)a=[c[a]];else var d=h.map(c,function(a){return a.nTable}),a=h(d).filter(a).map(function(){var a=h.inArray(this,d);return c[a]}).toArray();b=new b(a)}else b=this;return b});p(\"table()\",function(a){var a=this.tables(a),b=a.context;return b.length?new r(b[0]):a});s(\"tables().nodes()\",\"table().node()\",function(){return this.iterator(\"table\",function(a){return a.nTable},1)});s(\"tables().body()\",\"table().body()\",\r\nfunction(){return this.iterator(\"table\",function(a){return a.nTBody},1)});s(\"tables().header()\",\"table().header()\",function(){return this.iterator(\"table\",function(a){return a.nTHead},1)});s(\"tables().footer()\",\"table().footer()\",function(){return this.iterator(\"table\",function(a){return a.nTFoot},1)});s(\"tables().containers()\",\"table().container()\",function(){return this.iterator(\"table\",function(a){return a.nTableWrapper},1)});p(\"draw()\",function(a){return this.iterator(\"table\",function(b){\"page\"===\r\na?O(b):(\"string\"===typeof a&&(a=\"full-hold\"===a?!1:!0),T(b,!1===a))})});p(\"page()\",function(a){return a===k?this.page.info().page:this.iterator(\"table\",function(b){Ta(b,a)})});p(\"page.info()\",function(){if(0===this.context.length)return k;var a=this.context[0],b=a._iDisplayStart,c=a.oFeatures.bPaginate?a._iDisplayLength:-1,d=a.fnRecordsDisplay(),e=-1===c;return{page:e?0:Math.floor(b/c),pages:e?1:Math.ceil(d/c),start:b,end:a.fnDisplayEnd(),length:c,recordsTotal:a.fnRecordsTotal(),recordsDisplay:d,\r\nserverSide:\"ssp\"===y(a)}});p(\"page.len()\",function(a){return a===k?0!==this.context.length?this.context[0]._iDisplayLength:k:this.iterator(\"table\",function(b){Ra(b,a)})});var Ub=function(a,b,c){if(c){var d=new r(a);d.one(\"draw\",function(){c(d.ajax.json())})}if(\"ssp\"==y(a))T(a,b);else{C(a,!0);var e=a.jqXHR;e&&4!==e.readyState&&e.abort();ra(a,[],function(c){na(a);for(var c=sa(a,c),d=0,e=c.length;d<e;d++)N(a,c[d]);T(a,b);C(a,!1)})}};p(\"ajax.json()\",function(){var a=this.context;if(0<a.length)return a[0].json});\r\np(\"ajax.params()\",function(){var a=this.context;if(0<a.length)return a[0].oAjaxData});p(\"ajax.reload()\",function(a,b){return this.iterator(\"table\",function(c){Ub(c,!1===b,a)})});p(\"ajax.url()\",function(a){var b=this.context;if(a===k){if(0===b.length)return k;b=b[0];return b.ajax?h.isPlainObject(b.ajax)?b.ajax.url:b.ajax:b.sAjaxSource}return this.iterator(\"table\",function(b){h.isPlainObject(b.ajax)?b.ajax.url=a:b.ajax=a})});p(\"ajax.url().load()\",function(a,b){return this.iterator(\"table\",function(c){Ub(c,\r\n!1===b,a)})});var $a=function(a,b,c,d,e){var f=[],g,j,i,n,l,m;i=typeof b;if(!b||\"string\"===i||\"function\"===i||b.length===k)b=[b];i=0;for(n=b.length;i<n;i++){j=b[i]&&b[i].split?b[i].split(\",\"):[b[i]];l=0;for(m=j.length;l<m;l++)(g=c(\"string\"===typeof j[l]?h.trim(j[l]):j[l]))&&g.length&&(f=f.concat(g))}a=v.selector[a];if(a.length){i=0;for(n=a.length;i<n;i++)f=a[i](d,e,f)}return pa(f)},ab=function(a){a||(a={});a.filter&&a.search===k&&(a.search=a.filter);return h.extend({search:\"none\",order:\"current\",\r\npage:\"all\"},a)},bb=function(a){for(var b=0,c=a.length;b<c;b++)if(0<a[b].length)return a[0]=a[b],a[0].length=1,a.length=1,a.context=[a.context[b]],a;a.length=0;return a},Ba=function(a,b){var c,d,e,f=[],g=a.aiDisplay;c=a.aiDisplayMaster;var j=b.search;d=b.order;e=b.page;if(\"ssp\"==y(a))return\"removed\"===j?[]:W(0,c.length);if(\"current\"==e){c=a._iDisplayStart;for(d=a.fnDisplayEnd();c<d;c++)f.push(g[c])}else if(\"current\"==d||\"applied\"==d)f=\"none\"==j?c.slice():\"applied\"==j?g.slice():h.map(c,function(a){return-1===\r\nh.inArray(a,g)?a:null});else if(\"index\"==d||\"original\"==d){c=0;for(d=a.aoData.length;c<d;c++)\"none\"==j?f.push(c):(e=h.inArray(c,g),(-1===e&&\"removed\"==j||0<=e&&\"applied\"==j)&&f.push(c))}return f};p(\"rows()\",function(a,b){a===k?a=\"\":h.isPlainObject(a)&&(b=a,a=\"\");var b=ab(b),c=this.iterator(\"table\",function(c){var e=b;return $a(\"row\",a,function(a){var b=Pb(a);if(b!==null&&!e)return[b];var j=Ba(c,e);if(b!==null&&h.inArray(b,j)!==-1)return[b];if(!a)return j;if(typeof a===\"function\")return h.map(j,function(b){var e=\r\nc.aoData[b];return a(b,e._aData,e.nTr)?b:null});b=Sb(ha(c.aoData,j,\"nTr\"));if(a.nodeName){if(a._DT_RowIndex!==k)return[a._DT_RowIndex];if(a._DT_CellIndex)return[a._DT_CellIndex.row];b=h(a).closest(\"*[data-dt-row]\");return b.length?[b.data(\"dt-row\")]:[]}if(typeof a===\"string\"&&a.charAt(0)===\"#\"){j=c.aIds[a.replace(/^#/,\"\")];if(j!==k)return[j.idx]}return h(b).filter(a).map(function(){return this._DT_RowIndex}).toArray()},c,e)},1);c.selector.rows=a;c.selector.opts=b;return c});p(\"rows().nodes()\",function(){return this.iterator(\"row\",\r\nfunction(a,b){return a.aoData[b].nTr||k},1)});p(\"rows().data()\",function(){return this.iterator(!0,\"rows\",function(a,b){return ha(a.aoData,b,\"_aData\")},1)});s(\"rows().cache()\",\"row().cache()\",function(a){return this.iterator(\"row\",function(b,c){var d=b.aoData[c];return\"search\"===a?d._aFilterData:d._aSortData},1)});s(\"rows().invalidate()\",\"row().invalidate()\",function(a){return this.iterator(\"row\",function(b,c){ca(b,c,a)})});s(\"rows().indexes()\",\"row().index()\",function(){return this.iterator(\"row\",\r\nfunction(a,b){return b},1)});s(\"rows().ids()\",\"row().id()\",function(a){for(var b=[],c=this.context,d=0,e=c.length;d<e;d++)for(var f=0,g=this[d].length;f<g;f++){var h=c[d].rowIdFn(c[d].aoData[this[d][f]]._aData);b.push((!0===a?\"#\":\"\")+h)}return new r(c,b)});s(\"rows().remove()\",\"row().remove()\",function(){var a=this;this.iterator(\"row\",function(b,c,d){var e=b.aoData,f=e[c],g,h,i,n,l;e.splice(c,1);g=0;for(h=e.length;g<h;g++)if(i=e[g],l=i.anCells,null!==i.nTr&&(i.nTr._DT_RowIndex=g),null!==l){i=0;for(n=\r\nl.length;i<n;i++)l[i]._DT_CellIndex.row=g}oa(b.aiDisplayMaster,c);oa(b.aiDisplay,c);oa(a[d],c,!1);Sa(b);c=b.rowIdFn(f._aData);c!==k&&delete b.aIds[c]});this.iterator(\"table\",function(a){for(var c=0,d=a.aoData.length;c<d;c++)a.aoData[c].idx=c});return this});p(\"rows.add()\",function(a){var b=this.iterator(\"table\",function(b){var c,f,g,h=[];f=0;for(g=a.length;f<g;f++)c=a[f],c.nodeName&&\"TR\"===c.nodeName.toUpperCase()?h.push(ma(b,c)[0]):h.push(N(b,c));return h},1),c=this.rows(-1);c.pop();h.merge(c,b);\r\nreturn c});p(\"row()\",function(a,b){return bb(this.rows(a,b))});p(\"row().data()\",function(a){var b=this.context;if(a===k)return b.length&&this.length?b[0].aoData[this[0]]._aData:k;b[0].aoData[this[0]]._aData=a;ca(b[0],this[0],\"data\");return this});p(\"row().node()\",function(){var a=this.context;return a.length&&this.length?a[0].aoData[this[0]].nTr||null:null});p(\"row.add()\",function(a){a instanceof h&&a.length&&(a=a[0]);var b=this.iterator(\"table\",function(b){return a.nodeName&&\"TR\"===a.nodeName.toUpperCase()?\r\nma(b,a)[0]:N(b,a)});return this.row(b[0])});var cb=function(a,b){var c=a.context;if(c.length&&(c=c[0].aoData[b!==k?b:a[0]])&&c._details)c._details.remove(),c._detailsShow=k,c._details=k},Vb=function(a,b){var c=a.context;if(c.length&&a.length){var d=c[0].aoData[a[0]];if(d._details){(d._detailsShow=b)?d._details.insertAfter(d.nTr):d._details.detach();var e=c[0],f=new r(e),g=e.aoData;f.off(\"draw.dt.DT_details column-visibility.dt.DT_details destroy.dt.DT_details\");0<G(g,\"_details\").length&&(f.on(\"draw.dt.DT_details\",\r\nfunction(a,b){e===b&&f.rows({page:\"current\"}).eq(0).each(function(a){a=g[a];a._detailsShow&&a._details.insertAfter(a.nTr)})}),f.on(\"column-visibility.dt.DT_details\",function(a,b){if(e===b)for(var c,d=aa(b),f=0,h=g.length;f<h;f++)c=g[f],c._details&&c._details.children(\"td[colspan]\").attr(\"colspan\",d)}),f.on(\"destroy.dt.DT_details\",function(a,b){if(e===b)for(var c=0,d=g.length;c<d;c++)g[c]._details&&cb(f,c)}))}}};p(\"row().child()\",function(a,b){var c=this.context;if(a===k)return c.length&&this.length?\r\nc[0].aoData[this[0]]._details:k;if(!0===a)this.child.show();else if(!1===a)cb(this);else if(c.length&&this.length){var d=c[0],c=c[0].aoData[this[0]],e=[],f=function(a,b){if(h.isArray(a)||a instanceof h)for(var c=0,k=a.length;c<k;c++)f(a[c],b);else a.nodeName&&\"tr\"===a.nodeName.toLowerCase()?e.push(a):(c=h(\"<tr><td/></tr>\").addClass(b),h(\"td\",c).addClass(b).html(a)[0].colSpan=aa(d),e.push(c[0]))};f(a,b);c._details&&c._details.remove();c._details=h(e);c._detailsShow&&c._details.insertAfter(c.nTr)}return this});\r\np([\"row().child.show()\",\"row().child().show()\"],function(){Vb(this,!0);return this});p([\"row().child.hide()\",\"row().child().hide()\"],function(){Vb(this,!1);return this});p([\"row().child.remove()\",\"row().child().remove()\"],function(){cb(this);return this});p(\"row().child.isShown()\",function(){var a=this.context;return a.length&&this.length?a[0].aoData[this[0]]._detailsShow||!1:!1});var ec=/^(.+):(name|visIdx|visible)$/,Wb=function(a,b,c,d,e){for(var c=[],d=0,f=e.length;d<f;d++)c.push(B(a,e[d],b));\r\nreturn c};p(\"columns()\",function(a,b){a===k?a=\"\":h.isPlainObject(a)&&(b=a,a=\"\");var b=ab(b),c=this.iterator(\"table\",function(c){var e=a,f=b,g=c.aoColumns,j=G(g,\"sName\"),i=G(g,\"nTh\");return $a(\"column\",e,function(a){var b=Pb(a);if(a===\"\")return W(g.length);if(b!==null)return[b>=0?b:g.length+b];if(typeof a===\"function\"){var e=Ba(c,f);return h.map(g,function(b,f){return a(f,Wb(c,f,0,0,e),i[f])?f:null})}var k=typeof a===\"string\"?a.match(ec):\"\";if(k)switch(k[2]){case \"visIdx\":case \"visible\":b=parseInt(k[1],\r\n10);if(b<0){var m=h.map(g,function(a,b){return a.bVisible?b:null});return[m[m.length+b]]}return[Z(c,b)];case \"name\":return h.map(j,function(a,b){return a===k[1]?b:null});default:return[]}if(a.nodeName&&a._DT_CellIndex)return[a._DT_CellIndex.column];b=h(i).filter(a).map(function(){return h.inArray(this,i)}).toArray();if(b.length||!a.nodeName)return b;b=h(a).closest(\"*[data-dt-column]\");return b.length?[b.data(\"dt-column\")]:[]},c,f)},1);c.selector.cols=a;c.selector.opts=b;return c});s(\"columns().header()\",\r\n\"column().header()\",function(){return this.iterator(\"column\",function(a,b){return a.aoColumns[b].nTh},1)});s(\"columns().footer()\",\"column().footer()\",function(){return this.iterator(\"column\",function(a,b){return a.aoColumns[b].nTf},1)});s(\"columns().data()\",\"column().data()\",function(){return this.iterator(\"column-rows\",Wb,1)});s(\"columns().dataSrc()\",\"column().dataSrc()\",function(){return this.iterator(\"column\",function(a,b){return a.aoColumns[b].mData},1)});s(\"columns().cache()\",\"column().cache()\",\r\nfunction(a){return this.iterator(\"column-rows\",function(b,c,d,e,f){return ha(b.aoData,f,\"search\"===a?\"_aFilterData\":\"_aSortData\",c)},1)});s(\"columns().nodes()\",\"column().nodes()\",function(){return this.iterator(\"column-rows\",function(a,b,c,d,e){return ha(a.aoData,e,\"anCells\",b)},1)});s(\"columns().visible()\",\"column().visible()\",function(a,b){var c=this.iterator(\"column\",function(b,c){if(a===k)return b.aoColumns[c].bVisible;var f=b.aoColumns,g=f[c],j=b.aoData,i,n,l;if(a!==k&&g.bVisible!==a){if(a){var m=\r\nh.inArray(!0,G(f,\"bVisible\"),c+1);i=0;for(n=j.length;i<n;i++)l=j[i].nTr,f=j[i].anCells,l&&l.insertBefore(f[c],f[m]||null)}else h(G(b.aoData,\"anCells\",c)).detach();g.bVisible=a;ea(b,b.aoHeader);ea(b,b.aoFooter);wa(b)}});a!==k&&(this.iterator(\"column\",function(c,e){u(c,null,\"column-visibility\",[c,e,a,b])}),(b===k||b)&&this.columns.adjust());return c});s(\"columns().indexes()\",\"column().index()\",function(a){return this.iterator(\"column\",function(b,c){return\"visible\"===a?$(b,c):c},1)});p(\"columns.adjust()\",\r\nfunction(){return this.iterator(\"table\",function(a){Y(a)},1)});p(\"column.index()\",function(a,b){if(0!==this.context.length){var c=this.context[0];if(\"fromVisible\"===a||\"toData\"===a)return Z(c,b);if(\"fromData\"===a||\"toVisible\"===a)return $(c,b)}});p(\"column()\",function(a,b){return bb(this.columns(a,b))});p(\"cells()\",function(a,b,c){h.isPlainObject(a)&&(a.row===k?(c=a,a=null):(c=b,b=null));h.isPlainObject(b)&&(c=b,b=null);if(null===b||b===k)return this.iterator(\"table\",function(b){var d=a,e=ab(c),f=\r\nb.aoData,g=Ba(b,e),j=Sb(ha(f,g,\"anCells\")),i=h([].concat.apply([],j)),l,n=b.aoColumns.length,m,p,r,u,v,s;return $a(\"cell\",d,function(a){var c=typeof a===\"function\";if(a===null||a===k||c){m=[];p=0;for(r=g.length;p<r;p++){l=g[p];for(u=0;u<n;u++){v={row:l,column:u};if(c){s=f[l];a(v,B(b,l,u),s.anCells?s.anCells[u]:null)&&m.push(v)}else m.push(v)}}return m}if(h.isPlainObject(a))return[a];c=i.filter(a).map(function(a,b){return{row:b._DT_CellIndex.row,column:b._DT_CellIndex.column}}).toArray();if(c.length||\r\n!a.nodeName)return c;s=h(a).closest(\"*[data-dt-row]\");return s.length?[{row:s.data(\"dt-row\"),column:s.data(\"dt-column\")}]:[]},b,e)});var d=this.columns(b,c),e=this.rows(a,c),f,g,j,i,n,l=this.iterator(\"table\",function(a,b){f=[];g=0;for(j=e[b].length;g<j;g++){i=0;for(n=d[b].length;i<n;i++)f.push({row:e[b][g],column:d[b][i]})}return f},1);h.extend(l.selector,{cols:b,rows:a,opts:c});return l});s(\"cells().nodes()\",\"cell().node()\",function(){return this.iterator(\"cell\",function(a,b,c){return(a=a.aoData[b])&&\r\na.anCells?a.anCells[c]:k},1)});p(\"cells().data()\",function(){return this.iterator(\"cell\",function(a,b,c){return B(a,b,c)},1)});s(\"cells().cache()\",\"cell().cache()\",function(a){a=\"search\"===a?\"_aFilterData\":\"_aSortData\";return this.iterator(\"cell\",function(b,c,d){return b.aoData[c][a][d]},1)});s(\"cells().render()\",\"cell().render()\",function(a){return this.iterator(\"cell\",function(b,c,d){return B(b,c,d,a)},1)});s(\"cells().indexes()\",\"cell().index()\",function(){return this.iterator(\"cell\",function(a,\r\nb,c){return{row:b,column:c,columnVisible:$(a,c)}},1)});s(\"cells().invalidate()\",\"cell().invalidate()\",function(a){return this.iterator(\"cell\",function(b,c,d){ca(b,c,a,d)})});p(\"cell()\",function(a,b,c){return bb(this.cells(a,b,c))});p(\"cell().data()\",function(a){var b=this.context,c=this[0];if(a===k)return b.length&&c.length?B(b[0],c[0].row,c[0].column):k;jb(b[0],c[0].row,c[0].column,a);ca(b[0],c[0].row,\"data\",c[0].column);return this});p(\"order()\",function(a,b){var c=this.context;if(a===k)return 0!==\r\nc.length?c[0].aaSorting:k;\"number\"===typeof a?a=[[a,b]]:a.length&&!h.isArray(a[0])&&(a=Array.prototype.slice.call(arguments));return this.iterator(\"table\",function(b){b.aaSorting=a.slice()})});p(\"order.listener()\",function(a,b,c){return this.iterator(\"table\",function(d){Ma(d,a,b,c)})});p(\"order.fixed()\",function(a){if(!a){var b=this.context,b=b.length?b[0].aaSortingFixed:k;return h.isArray(b)?{pre:b}:b}return this.iterator(\"table\",function(b){b.aaSortingFixed=h.extend(!0,{},a)})});p([\"columns().order()\",\r\n\"column().order()\"],function(a){var b=this;return this.iterator(\"table\",function(c,d){var e=[];h.each(b[d],function(b,c){e.push([c,a])});c.aaSorting=e})});p(\"search()\",function(a,b,c,d){var e=this.context;return a===k?0!==e.length?e[0].oPreviousSearch.sSearch:k:this.iterator(\"table\",function(e){e.oFeatures.bFilter&&fa(e,h.extend({},e.oPreviousSearch,{sSearch:a+\"\",bRegex:null===b?!1:b,bSmart:null===c?!0:c,bCaseInsensitive:null===d?!0:d}),1)})});s(\"columns().search()\",\"column().search()\",function(a,\r\nb,c,d){return this.iterator(\"column\",function(e,f){var g=e.aoPreSearchCols;if(a===k)return g[f].sSearch;e.oFeatures.bFilter&&(h.extend(g[f],{sSearch:a+\"\",bRegex:null===b?!1:b,bSmart:null===c?!0:c,bCaseInsensitive:null===d?!0:d}),fa(e,e.oPreviousSearch,1))})});p(\"state()\",function(){return this.context.length?this.context[0].oSavedState:null});p(\"state.clear()\",function(){return this.iterator(\"table\",function(a){a.fnStateSaveCallback.call(a.oInstance,a,{})})});p(\"state.loaded()\",function(){return this.context.length?\r\nthis.context[0].oLoadedState:null});p(\"state.save()\",function(){return this.iterator(\"table\",function(a){wa(a)})});m.versionCheck=m.fnVersionCheck=function(a){for(var b=m.version.split(\".\"),a=a.split(\".\"),c,d,e=0,f=a.length;e<f;e++)if(c=parseInt(b[e],10)||0,d=parseInt(a[e],10)||0,c!==d)return c>d;return!0};m.isDataTable=m.fnIsDataTable=function(a){var b=h(a).get(0),c=!1;h.each(m.settings,function(a,e){var f=e.nScrollHead?h(\"table\",e.nScrollHead)[0]:null,g=e.nScrollFoot?h(\"table\",e.nScrollFoot)[0]:\r\nnull;if(e.nTable===b||f===b||g===b)c=!0});return c};m.tables=m.fnTables=function(a){var b=!1;h.isPlainObject(a)&&(b=a.api,a=a.visible);var c=h.map(m.settings,function(b){if(!a||a&&h(b.nTable).is(\":visible\"))return b.nTable});return b?new r(c):c};m.camelToHungarian=K;p(\"$()\",function(a,b){var c=this.rows(b).nodes(),c=h(c);return h([].concat(c.filter(a).toArray(),c.find(a).toArray()))});h.each([\"on\",\"one\",\"off\"],function(a,b){p(b+\"()\",function(){var a=Array.prototype.slice.call(arguments);a[0].match(/\\.dt\\b/)||\r\n(a[0]+=\".dt\");var d=h(this.tables().nodes());d[b].apply(d,a);return this})});p(\"clear()\",function(){return this.iterator(\"table\",function(a){na(a)})});p(\"settings()\",function(){return new r(this.context,this.context)});p(\"init()\",function(){var a=this.context;return a.length?a[0].oInit:null});p(\"data()\",function(){return this.iterator(\"table\",function(a){return G(a.aoData,\"_aData\")}).flatten()});p(\"destroy()\",function(a){a=a||!1;return this.iterator(\"table\",function(b){var c=b.nTableWrapper.parentNode,\r\nd=b.oClasses,e=b.nTable,f=b.nTBody,g=b.nTHead,j=b.nTFoot,i=h(e),f=h(f),k=h(b.nTableWrapper),l=h.map(b.aoData,function(a){return a.nTr}),p;b.bDestroying=!0;u(b,\"aoDestroyCallback\",\"destroy\",[b]);a||(new r(b)).columns().visible(!0);k.unbind(\".DT\").find(\":not(tbody *)\").unbind(\".DT\");h(D).unbind(\".DT-\"+b.sInstance);e!=g.parentNode&&(i.children(\"thead\").detach(),i.append(g));j&&e!=j.parentNode&&(i.children(\"tfoot\").detach(),i.append(j));b.aaSorting=[];b.aaSortingFixed=[];va(b);h(l).removeClass(b.asStripeClasses.join(\" \"));\r\nh(\"th, td\",g).removeClass(d.sSortable+\" \"+d.sSortableAsc+\" \"+d.sSortableDesc+\" \"+d.sSortableNone);b.bJUI&&(h(\"th span.\"+d.sSortIcon+\", td span.\"+d.sSortIcon,g).detach(),h(\"th, td\",g).each(function(){var a=h(\"div.\"+d.sSortJUIWrapper,this);h(this).append(a.contents());a.detach()}));f.children().detach();f.append(l);g=a?\"remove\":\"detach\";i[g]();k[g]();!a&&c&&(c.insertBefore(e,b.nTableReinsertBefore),i.css(\"width\",b.sDestroyWidth).removeClass(d.sTable),(p=b.asDestroyStripes.length)&&f.children().each(function(a){h(this).addClass(b.asDestroyStripes[a%\r\np])}));c=h.inArray(b,m.settings);-1!==c&&m.settings.splice(c,1)})});h.each([\"column\",\"row\",\"cell\"],function(a,b){p(b+\"s().every()\",function(a){var d=this.selector.opts,e=this;return this.iterator(b,function(f,g,h,i,n){a.call(e[b](g,\"cell\"===b?h:d,\"cell\"===b?d:k),g,h,i,n)})})});p(\"i18n()\",function(a,b,c){var d=this.context[0],a=Q(a)(d.oLanguage);a===k&&(a=b);c!==k&&h.isPlainObject(a)&&(a=a[c]!==k?a[c]:a._);return a.replace(\"%d\",c)});m.version=\"1.10.12\";m.settings=[];m.models={};m.models.oSearch={bCaseInsensitive:!0,\r\nsSearch:\"\",bRegex:!1,bSmart:!0};m.models.oRow={nTr:null,anCells:null,_aData:[],_aSortData:null,_aFilterData:null,_sFilterRow:null,_sRowStripe:\"\",src:null,idx:-1};m.models.oColumn={idx:null,aDataSort:null,asSorting:null,bSearchable:null,bSortable:null,bVisible:null,_sManualType:null,_bAttrSrc:!1,fnCreatedCell:null,fnGetData:null,fnSetData:null,mData:null,mRender:null,nTh:null,nTf:null,sClass:null,sContentPadding:null,sDefaultContent:null,sName:null,sSortDataType:\"std\",sSortingClass:null,sSortingClassJUI:null,\r\nsTitle:null,sType:null,sWidth:null,sWidthOrig:null};m.defaults={aaData:null,aaSorting:[[0,\"asc\"]],aaSortingFixed:[],ajax:null,aLengthMenu:[10,25,50,100],aoColumns:null,aoColumnDefs:null,aoSearchCols:[],asStripeClasses:null,bAutoWidth:!0,bDeferRender:!1,bDestroy:!1,bFilter:!0,bInfo:!0,bJQueryUI:!1,bLengthChange:!0,bPaginate:!0,bProcessing:!1,bRetrieve:!1,bScrollCollapse:!1,bServerSide:!1,bSort:!0,bSortMulti:!0,bSortCellsTop:!1,bSortClasses:!0,bStateSave:!1,fnCreatedRow:null,fnDrawCallback:null,fnFooterCallback:null,\r\nfnFormatNumber:function(a){return a.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g,this.oLanguage.sThousands)},fnHeaderCallback:null,fnInfoCallback:null,fnInitComplete:null,fnPreDrawCallback:null,fnRowCallback:null,fnServerData:null,fnServerParams:null,fnStateLoadCallback:function(a){try{return JSON.parse((-1===a.iStateDuration?sessionStorage:localStorage).getItem(\"DataTables_\"+a.sInstance+\"_\"+location.pathname))}catch(b){}},fnStateLoadParams:null,fnStateLoaded:null,fnStateSaveCallback:function(a,b){try{(-1===\r\na.iStateDuration?sessionStorage:localStorage).setItem(\"DataTables_\"+a.sInstance+\"_\"+location.pathname,JSON.stringify(b))}catch(c){}},fnStateSaveParams:null,iStateDuration:7200,iDeferLoading:null,iDisplayLength:10,iDisplayStart:0,iTabIndex:0,oClasses:{},oLanguage:{oAria:{sSortAscending:\": activate to sort column ascending\",sSortDescending:\": activate to sort column descending\"},oPaginate:{sFirst:\"First\",sLast:\"Last\",sNext:\"Next\",sPrevious:\"Previous\"},sEmptyTable:\"No data available in table\",sInfo:\"Showing _START_ to _END_ of _TOTAL_ entries\",\r\nsInfoEmpty:\"Showing 0 to 0 of 0 entries\",sInfoFiltered:\"(filtered from _MAX_ total entries)\",sInfoPostFix:\"\",sDecimal:\"\",sThousands:\",\",sLengthMenu:\"Show _MENU_ entries\",sLoadingRecords:\"Loading...\",sProcessing:\"Processing...\",sSearch:\"Search:\",sSearchPlaceholder:\"\",sUrl:\"\",sZeroRecords:\"No matching records found\"},oSearch:h.extend({},m.models.oSearch),sAjaxDataProp:\"data\",sAjaxSource:null,sDom:\"lfrtip\",searchDelay:null,sPaginationType:\"simple_numbers\",sScrollX:\"\",sScrollXInner:\"\",sScrollY:\"\",sServerMethod:\"GET\",\r\nrenderer:null,rowId:\"DT_RowId\"};X(m.defaults);m.defaults.column={aDataSort:null,iDataSort:-1,asSorting:[\"asc\",\"desc\"],bSearchable:!0,bSortable:!0,bVisible:!0,fnCreatedCell:null,mData:null,mRender:null,sCellType:\"td\",sClass:\"\",sContentPadding:\"\",sDefaultContent:null,sName:\"\",sSortDataType:\"std\",sTitle:null,sType:null,sWidth:null};X(m.defaults.column);m.models.oSettings={oFeatures:{bAutoWidth:null,bDeferRender:null,bFilter:null,bInfo:null,bLengthChange:null,bPaginate:null,bProcessing:null,bServerSide:null,\r\nbSort:null,bSortMulti:null,bSortClasses:null,bStateSave:null},oScroll:{bCollapse:null,iBarWidth:0,sX:null,sXInner:null,sY:null},oLanguage:{fnInfoCallback:null},oBrowser:{bScrollOversize:!1,bScrollbarLeft:!1,bBounding:!1,barWidth:0},ajax:null,aanFeatures:[],aoData:[],aiDisplay:[],aiDisplayMaster:[],aIds:{},aoColumns:[],aoHeader:[],aoFooter:[],oPreviousSearch:{},aoPreSearchCols:[],aaSorting:null,aaSortingFixed:[],asStripeClasses:null,asDestroyStripes:[],sDestroyWidth:0,aoRowCallback:[],aoHeaderCallback:[],\r\naoFooterCallback:[],aoDrawCallback:[],aoRowCreatedCallback:[],aoPreDrawCallback:[],aoInitComplete:[],aoStateSaveParams:[],aoStateLoadParams:[],aoStateLoaded:[],sTableId:\"\",nTable:null,nTHead:null,nTFoot:null,nTBody:null,nTableWrapper:null,bDeferLoading:!1,bInitialised:!1,aoOpenRows:[],sDom:null,searchDelay:null,sPaginationType:\"two_button\",iStateDuration:0,aoStateSave:[],aoStateLoad:[],oSavedState:null,oLoadedState:null,sAjaxSource:null,sAjaxDataProp:null,bAjaxDataGet:!0,jqXHR:null,json:k,oAjaxData:k,\r\nfnServerData:null,aoServerParams:[],sServerMethod:null,fnFormatNumber:null,aLengthMenu:null,iDraw:0,bDrawing:!1,iDrawError:-1,_iDisplayLength:10,_iDisplayStart:0,_iRecordsTotal:0,_iRecordsDisplay:0,bJUI:null,oClasses:{},bFiltered:!1,bSorted:!1,bSortCellsTop:null,oInit:null,aoDestroyCallback:[],fnRecordsTotal:function(){return\"ssp\"==y(this)?1*this._iRecordsTotal:this.aiDisplayMaster.length},fnRecordsDisplay:function(){return\"ssp\"==y(this)?1*this._iRecordsDisplay:this.aiDisplay.length},fnDisplayEnd:function(){var a=\r\nthis._iDisplayLength,b=this._iDisplayStart,c=b+a,d=this.aiDisplay.length,e=this.oFeatures,f=e.bPaginate;return e.bServerSide?!1===f||-1===a?b+d:Math.min(b+a,this._iRecordsDisplay):!f||c>d||-1===a?d:c},oInstance:null,sInstance:null,iTabIndex:0,nScrollHead:null,nScrollFoot:null,aLastSort:[],oPlugins:{},rowIdFn:null,rowId:null};m.ext=v={buttons:{},classes:{},builder:\"-source-\",errMode:\"alert\",feature:[],search:[],selector:{cell:[],column:[],row:[]},internal:{},legacy:{ajax:null},pager:{},renderer:{pageButton:{},\r\nheader:{}},order:{},type:{detect:[],search:{},order:{}},_unique:0,fnVersionCheck:m.fnVersionCheck,iApiIndex:0,oJUIClasses:{},sVersion:m.version};h.extend(v,{afnFiltering:v.search,aTypes:v.type.detect,ofnSearch:v.type.search,oSort:v.type.order,afnSortData:v.order,aoFeatures:v.feature,oApi:v.internal,oStdClasses:v.classes,oPagination:v.pager});h.extend(m.ext.classes,{sTable:\"dataTable\",sNoFooter:\"no-footer\",sPageButton:\"paginate_button\",sPageButtonActive:\"current\",sPageButtonDisabled:\"disabled\",sStripeOdd:\"odd\",\r\nsStripeEven:\"even\",sRowEmpty:\"dataTables_empty\",sWrapper:\"dataTables_wrapper\",sFilter:\"dataTables_filter\",sInfo:\"dataTables_info\",sPaging:\"dataTables_paginate paging_\",sLength:\"dataTables_length\",sProcessing:\"dataTables_processing\",sSortAsc:\"sorting_asc\",sSortDesc:\"sorting_desc\",sSortable:\"sorting\",sSortableAsc:\"sorting_asc_disabled\",sSortableDesc:\"sorting_desc_disabled\",sSortableNone:\"sorting_disabled\",sSortColumn:\"sorting_\",sFilterInput:\"\",sLengthSelect:\"\",sScrollWrapper:\"dataTables_scroll\",sScrollHead:\"dataTables_scrollHead\",\r\nsScrollHeadInner:\"dataTables_scrollHeadInner\",sScrollBody:\"dataTables_scrollBody\",sScrollFoot:\"dataTables_scrollFoot\",sScrollFootInner:\"dataTables_scrollFootInner\",sHeaderTH:\"\",sFooterTH:\"\",sSortJUIAsc:\"\",sSortJUIDesc:\"\",sSortJUI:\"\",sSortJUIAscAllowed:\"\",sSortJUIDescAllowed:\"\",sSortJUIWrapper:\"\",sSortIcon:\"\",sJUIHeader:\"\",sJUIFooter:\"\"});var Ca=\"\",Ca=\"\",H=Ca+\"ui-state-default\",ia=Ca+\"css_right ui-icon ui-icon-\",Xb=Ca+\"fg-toolbar ui-toolbar ui-widget-header ui-helper-clearfix\";h.extend(m.ext.oJUIClasses,\r\nm.ext.classes,{sPageButton:\"fg-button ui-button \"+H,sPageButtonActive:\"ui-state-disabled\",sPageButtonDisabled:\"ui-state-disabled\",sPaging:\"dataTables_paginate fg-buttonset ui-buttonset fg-buttonset-multi ui-buttonset-multi paging_\",sSortAsc:H+\" sorting_asc\",sSortDesc:H+\" sorting_desc\",sSortable:H+\" sorting\",sSortableAsc:H+\" sorting_asc_disabled\",sSortableDesc:H+\" sorting_desc_disabled\",sSortableNone:H+\" sorting_disabled\",sSortJUIAsc:ia+\"triangle-1-n\",sSortJUIDesc:ia+\"triangle-1-s\",sSortJUI:ia+\"carat-2-n-s\",\r\nsSortJUIAscAllowed:ia+\"carat-1-n\",sSortJUIDescAllowed:ia+\"carat-1-s\",sSortJUIWrapper:\"DataTables_sort_wrapper\",sSortIcon:\"DataTables_sort_icon\",sScrollHead:\"dataTables_scrollHead \"+H,sScrollFoot:\"dataTables_scrollFoot \"+H,sHeaderTH:H,sFooterTH:H,sJUIHeader:Xb+\" ui-corner-tl ui-corner-tr\",sJUIFooter:Xb+\" ui-corner-bl ui-corner-br\"});var Mb=m.ext.pager;h.extend(Mb,{simple:function(){return[\"previous\",\"next\"]},full:function(){return[\"first\",\"previous\",\"next\",\"last\"]},numbers:function(a,b){return[ya(a,\r\nb)]},simple_numbers:function(a,b){return[\"previous\",ya(a,b),\"next\"]},full_numbers:function(a,b){return[\"first\",\"previous\",ya(a,b),\"next\",\"last\"]},_numbers:ya,numbers_length:7});h.extend(!0,m.ext.renderer,{pageButton:{_:function(a,b,c,d,e,f){var g=a.oClasses,j=a.oLanguage.oPaginate,i=a.oLanguage.oAria.paginate||{},k,l,m=0,p=function(b,d){var o,r,u,s,v=function(b){Ta(a,b.data.action,true)};o=0;for(r=d.length;o<r;o++){s=d[o];if(h.isArray(s)){u=h(\"<\"+(s.DT_el||\"div\")+\"/>\").appendTo(b);p(u,s)}else{k=null;\r\nl=\"\";switch(s){case \"ellipsis\":b.append('<span class=\"ellipsis\">&#x2026;</span>');break;case \"first\":k=j.sFirst;l=s+(e>0?\"\":\" \"+g.sPageButtonDisabled);break;case \"previous\":k=j.sPrevious;l=s+(e>0?\"\":\" \"+g.sPageButtonDisabled);break;case \"next\":k=j.sNext;l=s+(e<f-1?\"\":\" \"+g.sPageButtonDisabled);break;case \"last\":k=j.sLast;l=s+(e<f-1?\"\":\" \"+g.sPageButtonDisabled);break;default:k=s+1;l=e===s?g.sPageButtonActive:\"\"}if(k!==null){u=h(\"<a>\",{\"class\":g.sPageButton+\" \"+l,\"aria-controls\":a.sTableId,\"aria-label\":i[s],\r\n\"data-dt-idx\":m,tabindex:a.iTabIndex,id:c===0&&typeof s===\"string\"?a.sTableId+\"_\"+s:null}).html(k).appendTo(b);Wa(u,{action:s},v);m++}}}},r;try{r=h(b).find(I.activeElement).data(\"dt-idx\")}catch(o){}p(h(b).empty(),d);r&&h(b).find(\"[data-dt-idx=\"+r+\"]\").focus()}}});h.extend(m.ext.type.detect,[function(a,b){var c=b.oLanguage.sDecimal;return Za(a,c)?\"num\"+c:null},function(a){if(a&&!(a instanceof Date)&&(!ac.test(a)||!bc.test(a)))return null;var b=Date.parse(a);return null!==b&&!isNaN(b)||M(a)?\"date\":\r\nnull},function(a,b){var c=b.oLanguage.sDecimal;return Za(a,c,!0)?\"num-fmt\"+c:null},function(a,b){var c=b.oLanguage.sDecimal;return Rb(a,c)?\"html-num\"+c:null},function(a,b){var c=b.oLanguage.sDecimal;return Rb(a,c,!0)?\"html-num-fmt\"+c:null},function(a){return M(a)||\"string\"===typeof a&&-1!==a.indexOf(\"<\")?\"html\":null}]);h.extend(m.ext.type.search,{html:function(a){return M(a)?a:\"string\"===typeof a?a.replace(Ob,\" \").replace(Aa,\"\"):\"\"},string:function(a){return M(a)?a:\"string\"===typeof a?a.replace(Ob,\r\n\" \"):a}});var za=function(a,b,c,d){if(0!==a&&(!a||\"-\"===a))return-Infinity;b&&(a=Qb(a,b));a.replace&&(c&&(a=a.replace(c,\"\")),d&&(a=a.replace(d,\"\")));return 1*a};h.extend(v.type.order,{\"date-pre\":function(a){return Date.parse(a)||0},\"html-pre\":function(a){return M(a)?\"\":a.replace?a.replace(/<.*?>/g,\"\").toLowerCase():a+\"\"},\"string-pre\":function(a){return M(a)?\"\":\"string\"===typeof a?a.toLowerCase():!a.toString?\"\":a.toString()},\"string-asc\":function(a,b){return a<b?-1:a>b?1:0},\"string-desc\":function(a,\r\nb){return a<b?1:a>b?-1:0}});db(\"\");h.extend(!0,m.ext.renderer,{header:{_:function(a,b,c,d){h(a.nTable).on(\"order.dt.DT\",function(e,f,g,h){if(a===f){e=c.idx;b.removeClass(c.sSortingClass+\" \"+d.sSortAsc+\" \"+d.sSortDesc).addClass(h[e]==\"asc\"?d.sSortAsc:h[e]==\"desc\"?d.sSortDesc:c.sSortingClass)}})},jqueryui:function(a,b,c,d){h(\"<div/>\").addClass(d.sSortJUIWrapper).append(b.contents()).append(h(\"<span/>\").addClass(d.sSortIcon+\" \"+c.sSortingClassJUI)).appendTo(b);h(a.nTable).on(\"order.dt.DT\",function(e,\r\nf,g,h){if(a===f){e=c.idx;b.removeClass(d.sSortAsc+\" \"+d.sSortDesc).addClass(h[e]==\"asc\"?d.sSortAsc:h[e]==\"desc\"?d.sSortDesc:c.sSortingClass);b.find(\"span.\"+d.sSortIcon).removeClass(d.sSortJUIAsc+\" \"+d.sSortJUIDesc+\" \"+d.sSortJUI+\" \"+d.sSortJUIAscAllowed+\" \"+d.sSortJUIDescAllowed).addClass(h[e]==\"asc\"?d.sSortJUIAsc:h[e]==\"desc\"?d.sSortJUIDesc:c.sSortingClassJUI)}})}}});var Yb=function(a){return\"string\"===typeof a?a.replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\").replace(/\"/g,\"&quot;\"):a};m.render={number:function(a,\r\nb,c,d,e){return{display:function(f){if(\"number\"!==typeof f&&\"string\"!==typeof f)return f;var g=0>f?\"-\":\"\",h=parseFloat(f);if(isNaN(h))return Yb(f);f=Math.abs(h);h=parseInt(f,10);f=c?b+(f-h).toFixed(c).substring(2):\"\";return g+(d||\"\")+h.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g,a)+f+(e||\"\")}}},text:function(){return{display:Yb}}};h.extend(m.ext.internal,{_fnExternApiFunc:Nb,_fnBuildAjax:ra,_fnAjaxUpdate:lb,_fnAjaxParameters:ub,_fnAjaxUpdateDraw:vb,_fnAjaxDataSrc:sa,_fnAddColumn:Ea,_fnColumnOptions:ja,\r\n_fnAdjustColumnSizing:Y,_fnVisibleToColumnIndex:Z,_fnColumnIndexToVisible:$,_fnVisbleColumns:aa,_fnGetColumns:la,_fnColumnTypes:Ga,_fnApplyColumnDefs:ib,_fnHungarianMap:X,_fnCamelToHungarian:K,_fnLanguageCompat:Da,_fnBrowserDetect:gb,_fnAddData:N,_fnAddTr:ma,_fnNodeToDataIndex:function(a,b){return b._DT_RowIndex!==k?b._DT_RowIndex:null},_fnNodeToColumnIndex:function(a,b,c){return h.inArray(c,a.aoData[b].anCells)},_fnGetCellData:B,_fnSetCellData:jb,_fnSplitObjNotation:Ja,_fnGetObjectDataFn:Q,_fnSetObjectDataFn:R,\r\n_fnGetDataMaster:Ka,_fnClearTable:na,_fnDeleteIndex:oa,_fnInvalidate:ca,_fnGetRowElements:Ia,_fnCreateTr:Ha,_fnBuildHead:kb,_fnDrawHead:ea,_fnDraw:O,_fnReDraw:T,_fnAddOptionsHtml:nb,_fnDetectHeader:da,_fnGetUniqueThs:qa,_fnFeatureHtmlFilter:pb,_fnFilterComplete:fa,_fnFilterCustom:yb,_fnFilterColumn:xb,_fnFilter:wb,_fnFilterCreateSearch:Pa,_fnEscapeRegex:Qa,_fnFilterData:zb,_fnFeatureHtmlInfo:sb,_fnUpdateInfo:Cb,_fnInfoMacros:Db,_fnInitialise:ga,_fnInitComplete:ta,_fnLengthChange:Ra,_fnFeatureHtmlLength:ob,\r\n_fnFeatureHtmlPaginate:tb,_fnPageChange:Ta,_fnFeatureHtmlProcessing:qb,_fnProcessingDisplay:C,_fnFeatureHtmlTable:rb,_fnScrollDraw:ka,_fnApplyToChildren:J,_fnCalculateColumnWidths:Fa,_fnThrottle:Oa,_fnConvertToWidth:Fb,_fnGetWidestNode:Gb,_fnGetMaxLenString:Hb,_fnStringToCss:x,_fnSortFlatten:V,_fnSort:mb,_fnSortAria:Jb,_fnSortListener:Va,_fnSortAttachListener:Ma,_fnSortingClasses:va,_fnSortData:Ib,_fnSaveState:wa,_fnLoadState:Kb,_fnSettingsFromNode:xa,_fnLog:L,_fnMap:E,_fnBindAction:Wa,_fnCallbackReg:z,\r\n_fnCallbackFire:u,_fnLengthOverflow:Sa,_fnRenderer:Na,_fnDataSource:y,_fnRowAttributes:La,_fnCalculateEnd:function(){}});h.fn.dataTable=m;m.$=h;h.fn.dataTableSettings=m.settings;h.fn.dataTableExt=m.ext;h.fn.DataTable=function(a){return h(this).dataTable(a).api()};h.each(m,function(a,b){h.fn.DataTable[a]=b});return h.fn.dataTable});\r\n\n",
    "/*!\r\n Responsive 2.1.0\r\n 2014-2016 SpryMedia Ltd - datatables.net/license\r\n*/\r\n(function(c){\"function\"===typeof define&&define.amd?define('jqueryDataTablesResponsive',[\"jquery\",\"datatables.net\"],function(l){return c(l,window,document)}):\"object\"===typeof exports?module.exports=function(l,k){l||(l=window);if(!k||!k.fn.dataTable)k=require(\"datatables.net\")(l,k).$;return c(k,l,l.document)}:c(jQuery,window,document)})(function(c,l,k,p){var m=c.fn.dataTable,j=function(a,b){if(!m.versionCheck||!m.versionCheck(\"1.10.3\"))throw\"DataTables Responsive requires DataTables 1.10.3 or newer\";this.s={dt:new m.Api(a),columns:[],\r\ncurrent:[]};this.s.dt.settings()[0].responsive||(b&&\"string\"===typeof b.details?b.details={type:b.details}:b&&!1===b.details?b.details={type:!1}:b&&!0===b.details&&(b.details={type:\"inline\"}),this.c=c.extend(!0,{},j.defaults,m.defaults.responsive,b),a.responsive=this,this._constructor())};c.extend(j.prototype,{_constructor:function(){var a=this,b=this.s.dt,d=b.settings()[0],e=c(l).width();b.settings()[0]._responsive=this;c(l).on(\"resize.dtr orientationchange.dtr\",m.util.throttle(function(){var b=\r\nc(l).width();b!==e&&(a._resize(),e=b)}));d.oApi._fnCallbackReg(d,\"aoRowCreatedCallback\",function(e){-1!==c.inArray(!1,a.s.current)&&c(\"td, th\",e).each(function(e){e=b.column.index(\"toData\",e);!1===a.s.current[e]&&c(this).css(\"display\",\"none\")})});b.on(\"destroy.dtr\",function(){b.off(\".dtr\");c(b.table().body()).off(\".dtr\");c(l).off(\"resize.dtr orientationchange.dtr\");c.each(a.s.current,function(b,e){!1===e&&a._setColumnVis(b,!0)})});this.c.breakpoints.sort(function(a,b){return a.width<b.width?1:a.width>\r\nb.width?-1:0});this._classLogic();this._resizeAuto();d=this.c.details;!1!==d.type&&(a._detailsInit(),b.on(\"column-visibility.dtr\",function(){a._classLogic();a._resizeAuto();a._resize()}),b.on(\"draw.dtr\",function(){a._redrawChildren()}),c(b.table().node()).addClass(\"dtr-\"+d.type));b.on(\"column-reorder.dtr\",function(){a._classLogic();a._resizeAuto();a._resize()});b.on(\"column-sizing.dtr\",function(){a._resizeAuto();a._resize()});b.on(\"init.dtr\",function(){a._resizeAuto();a._resize();c.inArray(false,\r\na.s.current)&&b.columns.adjust()});this._resize()},_columnsVisiblity:function(a){var b=this.s.dt,d=this.s.columns,e,f,g=d.map(function(a,b){return{columnIdx:b,priority:a.priority}}).sort(function(a,b){return a.priority!==b.priority?a.priority-b.priority:a.columnIdx-b.columnIdx}),h=c.map(d,function(b){return b.auto&&null===b.minWidth?!1:!0===b.auto?\"-\":-1!==c.inArray(a,b.includeIn)}),n=0;e=0;for(f=h.length;e<f;e++)!0===h[e]&&(n+=d[e].minWidth);e=b.settings()[0].oScroll;e=e.sY||e.sX?e.iBarWidth:0;b=\r\nb.table().container().offsetWidth-e-n;e=0;for(f=h.length;e<f;e++)d[e].control&&(b-=d[e].minWidth);n=!1;e=0;for(f=g.length;e<f;e++){var i=g[e].columnIdx;\"-\"===h[i]&&(!d[i].control&&d[i].minWidth)&&(n||0>b-d[i].minWidth?(n=!0,h[i]=!1):h[i]=!0,b-=d[i].minWidth)}g=!1;e=0;for(f=d.length;e<f;e++)if(!d[e].control&&!d[e].never&&!h[e]){g=!0;break}e=0;for(f=d.length;e<f;e++)d[e].control&&(h[e]=g);-1===c.inArray(!0,h)&&(h[0]=!0);return h},_classLogic:function(){var a=this,b=this.c.breakpoints,d=this.s.dt,e=\r\nd.columns().eq(0).map(function(a){var b=this.column(a),e=b.header().className,a=d.settings()[0].aoColumns[a].responsivePriority;a===p&&(b=c(b.header()).data(\"priority\"),a=b!==p?1*b:1E4);return{className:e,includeIn:[],auto:!1,control:!1,never:e.match(/\\bnever\\b/)?!0:!1,priority:a}}),f=function(a,b){var d=e[a].includeIn;-1===c.inArray(b,d)&&d.push(b)},g=function(c,d,i,g){if(i)if(\"max-\"===i){g=a._find(d).width;d=0;for(i=b.length;d<i;d++)b[d].width<=g&&f(c,b[d].name)}else if(\"min-\"===i){g=a._find(d).width;\r\nd=0;for(i=b.length;d<i;d++)b[d].width>=g&&f(c,b[d].name)}else{if(\"not-\"===i){d=0;for(i=b.length;d<i;d++)-1===b[d].name.indexOf(g)&&f(c,b[d].name)}}else e[c].includeIn.push(d)};e.each(function(a,e){for(var d=a.className.split(\" \"),f=!1,j=0,l=d.length;j<l;j++){var k=c.trim(d[j]);if(\"all\"===k){f=!0;a.includeIn=c.map(b,function(a){return a.name});return}if(\"none\"===k||a.never){f=!0;return}if(\"control\"===k){f=!0;a.control=!0;return}c.each(b,function(a,b){var d=b.name.split(\"-\"),c=k.match(RegExp(\"(min\\\\-|max\\\\-|not\\\\-)?(\"+\r\nd[0]+\")(\\\\-[_a-zA-Z0-9])?\"));c&&(f=!0,c[2]===d[0]&&c[3]===\"-\"+d[1]?g(e,b.name,c[1],c[2]+c[3]):c[2]===d[0]&&!c[3]&&g(e,b.name,c[1],c[2]))})}f||(a.auto=!0)});this.s.columns=e},_detailsDisplay:function(a,b){var d=this,e=this.s.dt,f=this.c.details;if(f&&!1!==f.type){var g=f.display(a,b,function(){return f.renderer(e,a[0],d._detailsObj(a[0]))});(!0===g||!1===g)&&c(e.table().node()).triggerHandler(\"responsive-display.dt\",[e,a,g,b])}},_detailsInit:function(){var a=this,b=this.s.dt,d=this.c.details;\"inline\"===\r\nd.type&&(d.target=\"td:first-child, th:first-child\");b.on(\"draw.dtr\",function(){a._tabIndexes()});a._tabIndexes();c(b.table().body()).on(\"keyup.dtr\",\"td, th\",function(a){a.keyCode===13&&c(this).data(\"dtr-keyboard\")&&c(this).click()});var e=d.target;c(b.table().body()).on(\"click.dtr mousedown.dtr mouseup.dtr\",\"string\"===typeof e?e:\"td, th\",function(d){if(c(b.table().node()).hasClass(\"collapsed\")&&b.row(c(this).closest(\"tr\")).length){if(typeof e===\"number\"){var g=e<0?b.columns().eq(0).length+e:e;if(b.cell(this).index().column!==\r\ng)return}g=b.row(c(this).closest(\"tr\"));d.type===\"click\"?a._detailsDisplay(g,false):d.type===\"mousedown\"?c(this).css(\"outline\",\"none\"):d.type===\"mouseup\"&&c(this).blur().css(\"outline\",\"\")}})},_detailsObj:function(a){var b=this,d=this.s.dt;return c.map(this.s.columns,function(e,c){if(!e.never&&!e.control)return{title:d.settings()[0].aoColumns[c].sTitle,data:d.cell(a,c).render(b.c.orthogonal),hidden:d.column(c).visible()&&!b.s.current[c],columnIndex:c,rowIndex:a}})},_find:function(a){for(var b=this.c.breakpoints,\r\nd=0,c=b.length;d<c;d++)if(b[d].name===a)return b[d]},_redrawChildren:function(){var a=this,b=this.s.dt;b.rows({page:\"current\"}).iterator(\"row\",function(c,e){b.row(e);a._detailsDisplay(b.row(e),!0)})},_resize:function(){var a=this,b=this.s.dt,d=c(l).width(),e=this.c.breakpoints,f=e[0].name,g=this.s.columns,h,j=this.s.current.slice();for(h=e.length-1;0<=h;h--)if(d<=e[h].width){f=e[h].name;break}var i=this._columnsVisiblity(f);this.s.current=i;e=!1;h=0;for(d=g.length;h<d;h++)if(!1===i[h]&&!g[h].never&&\r\n!g[h].control){e=!0;break}c(b.table().node()).toggleClass(\"collapsed\",e);var k=!1;b.columns().eq(0).each(function(b,c){i[c]!==j[c]&&(k=!0,a._setColumnVis(b,i[c]))});k&&(this._redrawChildren(),c(b.table().node()).trigger(\"responsive-resize.dt\",[b,this.s.current]))},_resizeAuto:function(){var a=this.s.dt,b=this.s.columns;if(this.c.auto&&-1!==c.inArray(!0,c.map(b,function(a){return a.auto}))){a.table().node();var d=a.table().node().cloneNode(!1),e=c(a.table().header().cloneNode(!1)).appendTo(d),f=c(a.table().body()).clone(!1,\r\n!1).empty().appendTo(d),g=a.columns().header().filter(function(b){return a.column(b).visible()}).to$().clone(!1).css(\"display\",\"table-cell\");c(f).append(c(a.rows({page:\"current\"}).nodes()).clone(!1)).find(\"th, td\").css(\"display\",\"\");if(f=a.table().footer()){var f=c(f.cloneNode(!1)).appendTo(d),h=a.columns().footer().filter(function(b){return a.column(b).visible()}).to$().clone(!1).css(\"display\",\"table-cell\");c(\"<tr/>\").append(h).appendTo(f)}c(\"<tr/>\").append(g).appendTo(e);\"inline\"===this.c.details.type&&\r\nc(d).addClass(\"dtr-inline collapsed\");c(d).find(\"[name]\").removeAttr(\"name\");d=c(\"<div/>\").css({width:1,height:1,overflow:\"hidden\"}).append(d);d.insertBefore(a.table().node());g.each(function(c){c=a.column.index(\"fromVisible\",c);b[c].minWidth=this.offsetWidth||0});d.remove()}},_setColumnVis:function(a,b){var d=this.s.dt,e=b?\"\":\"none\";c(d.column(a).header()).css(\"display\",e);c(d.column(a).footer()).css(\"display\",e);d.column(a).nodes().to$().css(\"display\",e)},_tabIndexes:function(){var a=this.s.dt,\r\nb=a.cells({page:\"current\"}).nodes().to$(),d=a.settings()[0],e=this.c.details.target;b.filter(\"[data-dtr-keyboard]\").removeData(\"[data-dtr-keyboard]\");c(\"number\"===typeof e?\":eq(\"+e+\")\":e,a.rows({page:\"current\"}).nodes()).attr(\"tabIndex\",d.iTabIndex).data(\"dtr-keyboard\",1)}});j.breakpoints=[{name:\"desktop\",width:Infinity},{name:\"tablet-l\",width:1024},{name:\"tablet-p\",width:768},{name:\"mobile-l\",width:480},{name:\"mobile-p\",width:320}];j.display={childRow:function(a,b,d){if(b){if(c(a.node()).hasClass(\"parent\"))return a.child(d(),\r\n\"child\").show(),!0}else{if(a.child.isShown())return a.child(!1),c(a.node()).removeClass(\"parent\"),!1;a.child(d(),\"child\").show();c(a.node()).addClass(\"parent\");return!0}},childRowImmediate:function(a,b,d){if(!b&&a.child.isShown()||!a.responsive.hasHidden())return a.child(!1),c(a.node()).removeClass(\"parent\"),!1;a.child(d(),\"child\").show();c(a.node()).addClass(\"parent\");return!0},modal:function(a){return function(b,d,e){if(d)c(\"div.dtr-modal-content\").empty().append(e());else{var f=function(){g.remove();\r\nc(k).off(\"keypress.dtr\")},g=c('<div class=\"dtr-modal\"/>').append(c('<div class=\"dtr-modal-display\"/>').append(c('<div class=\"dtr-modal-content\"/>').append(e())).append(c('<div class=\"dtr-modal-close\">&times;</div>').click(function(){f()}))).append(c('<div class=\"dtr-modal-background\"/>').click(function(){f()})).appendTo(\"body\");c(k).on(\"keyup.dtr\",function(a){27===a.keyCode&&(a.stopPropagation(),f())})}a&&a.header&&c(\"div.dtr-modal-content\").prepend(\"<h2>\"+a.header(b)+\"</h2>\")}}};j.renderer={listHidden:function(){return function(a,\r\nb,d){return(a=c.map(d,function(a){return a.hidden?'<li data-dtr-index=\"'+a.columnIndex+'\" data-dt-row=\"'+a.rowIndex+'\" data-dt-column=\"'+a.columnIndex+'\"><span class=\"dtr-title\">'+a.title+'</span> <span class=\"dtr-data\">'+a.data+\"</span></li>\":\"\"}).join(\"\"))?c('<ul data-dtr-index=\"'+b+'\"/>').append(a):!1}},tableAll:function(a){a=c.extend({tableClass:\"\"},a);return function(b,d,e){b=c.map(e,function(a){return'<tr data-dt-row=\"'+a.rowIndex+'\" data-dt-column=\"'+a.columnIndex+'\"><td>'+a.title+\":</td> <td>\"+\r\na.data+\"</td></tr>\"}).join(\"\");return c('<table class=\"'+a.tableClass+'\" width=\"100%\"/>').append(b)}}};j.defaults={breakpoints:j.breakpoints,auto:!0,details:{display:j.display.childRow,renderer:j.renderer.listHidden(),target:0,type:\"inline\"},orthogonal:\"display\"};var o=c.fn.dataTable.Api;o.register(\"responsive()\",function(){return this});o.register(\"responsive.index()\",function(a){a=c(a);return{column:a.data(\"dtr-index\"),row:a.parent().data(\"dtr-index\")}});o.register(\"responsive.rebuild()\",function(){return this.iterator(\"table\",\r\nfunction(a){a._responsive&&a._responsive._classLogic()})});o.register(\"responsive.recalc()\",function(){return this.iterator(\"table\",function(a){a._responsive&&(a._responsive._resizeAuto(),a._responsive._resize())})});o.register(\"responsive.hasHidden()\",function(){var a=this.context[0];return a._responsive?-1!==c.inArray(!1,a._responsive.s.current):!1});j.version=\"2.1.0\";c.fn.dataTable.Responsive=j;c.fn.DataTable.Responsive=j;c(k).on(\"preInit.dt.dtr\",function(a,b){if(\"dt\"===a.namespace&&(c(b.nTable).hasClass(\"responsive\")||\r\nc(b.nTable).hasClass(\"dt-responsive\")||b.oInit.responsive||m.defaults.responsive)){var d=b.oInit.responsive;!1!==d&&new j(b,c.isPlainObject(d)?d:{})}});return j});\r\n\n",
    "/*!\r\n * jQuery.ellipsis\r\n * http://github.com/jjenzz/jquery.ellipsis\r\n * --------------------------------------------------------------------------\r\n * Copyright (c) 2013 J. Smith (@jjenzz)\r\n * Dual licensed under the MIT and GPL licenses:\r\n * http://www.opensource.org/licenses/mit-license.php\r\n * http://www.gnu.org/licenses/gpl.html\r\n *\r\n * adds a class to the last 'allowed' line of text so you can apply\r\n * text-overflow: ellipsis;\r\n */\r\n(function(e){\"use strict\";if(typeof define===\"function\"&&define.amd){define('ellipsis',[\"jquery\"],e)}else{e(jQuery)}})(function(e){\"use strict\";function i(i,s){function g(){o.text=o.$cont.text();o.opts.ellipLineClass=o.opts.ellipClass+\"-line\";o.$el=e('<span class=\"'+o.opts.ellipClass+'\" />');o.$el.text(o.text);o.$cont.empty().append(o.$el);y()}function y(){if(typeof o.opts.lines===\"number\"&&o.opts.lines<2){o.$el.addClass(o.opts.ellipLineClass);return}d=o.$cont.height();if(o.opts.lines===\"auto\"&&o.$el.prop(\"scrollHeight\")<=d){return}if(!f){return}v=e.trim(w(o.text)).split(/\\s+/);o.$el.html(n+v.join(\"</span> \"+n)+\"</span>\");o.$el.find(\"span\").each(f);if(l!=null){b(l)}}function b(e){v[e]='<span class=\"'+o.opts.ellipLineClass+'\">'+v[e];v.push(\"</span>\");o.$el.html(v.join(\" \"))}function w(e){return String(e).replace(/[&<>\"'\\/]/g,function(e){return m[e]})}var o=this,u=0,a=[],f,l,c,h,p,d,v,m;m={\"&\":\"&\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#x27;\",\"`\":\"&#x60;\"};o.$cont=e(i);o.opts=e.extend({},r,s);if(o.opts.lines===\"auto\"){var E=function(t,n){var r=e(n),i=r.position().top;p=p||r.height();if(i===h){a[u].push(r)}else{h=i;u+=1;a[u]=[r]}if(i+p>d){l=t-a[u-1].length;return false}};f=E}if(typeof o.opts.lines===\"number\"&&o.opts.lines>1){var S=function(t,n){var r=e(n),i=r.position().top;if(i!==h){h=i;u+=1}if(u===o.opts.lines){l=t;return false}};f=S}if(o.opts.responsive){var x=function(){a=[];u=0;h=null;l=null;o.$el.html(w(o.text));clearTimeout(c);c=setTimeout(y,100)};e(window).on(\"resize.\"+t,x)}g()}var t=\"ellipsis\",n='<span style=\"white-space: nowrap;\">',r={lines:\"auto\",ellipClass:\"ellip\",responsive:false};e.fn[t]=function(n){return this.each(function(){try{e(this).data(t,new i(this,n))}catch(r){if(window.console){console.error(t+\": \"+r)}}})}})\r\n;\n",
    "(function(root) {\ndefine(\"coveo\", [], function() {\n  return (function() {\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(\"Coveo__temporary\",[],t):\"object\"==typeof exports?exports.Coveo__temporary=t():e.Coveo__temporary=t()}(\"undefined\"!=typeof self?self:this,function(){return function(e){function t(n){if(i[n])return i[n].exports;var o=i[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n=window.webpackJsonpCoveo__temporary;window.webpackJsonpCoveo__temporary=function(t,i,r){for(var s,a,u=0,l=[];u<t.length;u++)a=t[u],o[a]&&l.push(o[a][0]),o[a]=0;for(s in i)Object.prototype.hasOwnProperty.call(i,s)&&(e[s]=i[s]);for(n&&n(t,i,r);l.length;)l.shift()()};var i={},o={83:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:0,16:0,17:0,18:0,19:0,20:0,21:0,22:0,23:0,24:0,25:0,26:0,27:0,28:0,29:0,30:0,31:0,32:0,33:0,34:0,35:0,36:0,37:0,38:0,39:0,40:0,41:0,42:0,43:0,44:0,45:0,46:0,47:0,48:0,49:0,50:0,51:0,52:0,53:0,54:0,55:0,56:0,57:0,58:0,59:0,60:0,61:0,62:0,63:0,64:0,65:0,66:0,67:0,68:0,69:0,70:0,71:0,72:0,73:0,74:0,75:0,76:0,77:0,78:0,79:0,80:0,81:0,82:0};return t.e=function(e){function n(){a.onerror=a.onload=null,clearTimeout(u);var t=o[e];0!==t&&(t&&t[1](new Error(\"Loading chunk \"+e+\" failed.\")),o[e]=void 0)}var i=o[e];if(0===i)return new Promise(function(e){e()});if(i)return i[2];var r=new Promise(function(t,n){i=o[e]=[t,n]});i[2]=r;var s=document.getElementsByTagName(\"head\")[0],a=document.createElement(\"script\");a.type=\"text/javascript\",a.charset=\"utf-8\",a.async=!0,a.timeout=12e4,t.nc&&a.setAttribute(\"nonce\",t.nc),a.src=t.p+\"\"+({0:\"RelevanceInspector\"}[e]||e)+\".min__2626bf1f0a69068e18bb.js\";var u=setTimeout(n,12e4);return a.onerror=a.onload=n,s.appendChild(a),r},t.m=e,t.c=i,t.d=function(e,n,i){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:i})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,\"a\",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p=\"js/\",t.oe=function(e){throw console.error(e),e},t(t.s=749)}([function(e,t,n){(function(e,n){var i,o;!function(){var r=\"object\"==typeof self&&self.self===self&&self||\"object\"==typeof e&&e.global===e&&e||this||{},s=r._,a=Array.prototype,u=Object.prototype,l=\"undefined\"!=typeof Symbol?Symbol.prototype:null,c=a.push,p=a.slice,h=u.toString,d=u.hasOwnProperty,f=Array.isArray,m=Object.keys,y=Object.create,g=function(){},v=function(e){return e instanceof v?e:this instanceof v?void(this._wrapped=e):new v(e)};void 0===t||t.nodeType?r._=v:(void 0!==n&&!n.nodeType&&n.exports&&(t=n.exports=v),t._=v),v.VERSION=\"1.9.1\";var b,C=function(e,t,n){if(void 0===t)return e;switch(null==n?3:n){case 1:return function(n){return e.call(t,n)};case 3:return function(n,i,o){return e.call(t,n,i,o)};case 4:return function(n,i,o,r){return e.call(t,n,i,o,r)}}return function(){return e.apply(t,arguments)}},S=function(e,t,n){return v.iteratee!==b?v.iteratee(e,t):null==e?v.identity:v.isFunction(e)?C(e,t,n):v.isObject(e)&&!v.isArray(e)?v.matcher(e):v.property(e)};v.iteratee=b=function(e,t){return S(e,t,1/0)};var w=function(e,t){return t=null==t?e.length-1:+t,function(){for(var n=Math.max(arguments.length-t,0),i=Array(n),o=0;o<n;o++)i[o]=arguments[o+t];switch(t){case 0:return e.call(this,i);case 1:return e.call(this,arguments[0],i);case 2:return e.call(this,arguments[0],arguments[1],i)}var r=Array(t+1);for(o=0;o<t;o++)r[o]=arguments[o];return r[t]=i,e.apply(this,r)}},x=function(e){if(!v.isObject(e))return{};if(y)return y(e);g.prototype=e;var t=new g;return g.prototype=null,t},_=function(e){return function(t){return null==t?void 0:t[e]}},O=function(e,t){return null!=e&&d.call(e,t)},E=function(e,t){for(var n=t.length,i=0;i<n;i++){if(null==e)return;e=e[t[i]]}return n?e:void 0},A=Math.pow(2,53)-1,T=_(\"length\"),R=function(e){var t=T(e);return\"number\"==typeof t&&t>=0&&t<=A};v.each=v.forEach=function(e,t,n){t=C(t,n);var i,o;if(R(e))for(i=0,o=e.length;i<o;i++)t(e[i],i,e);else{var r=v.keys(e);for(i=0,o=r.length;i<o;i++)t(e[r[i]],r[i],e)}return e},v.map=v.collect=function(e,t,n){t=S(t,n);for(var i=!R(e)&&v.keys(e),o=(i||e).length,r=Array(o),s=0;s<o;s++){var a=i?i[s]:s;r[s]=t(e[a],a,e)}return r};var F=function(e){var t=function(t,n,i,o){var r=!R(t)&&v.keys(t),s=(r||t).length,a=e>0?0:s-1;for(o||(i=t[r?r[a]:a],a+=e);a>=0&&a<s;a+=e){var u=r?r[a]:a;i=n(i,t[u],u,t)}return i};return function(e,n,i,o){var r=arguments.length>=3;return t(e,C(n,o,4),i,r)}};v.reduce=v.foldl=v.inject=F(1),v.reduceRight=v.foldr=F(-1),v.find=v.detect=function(e,t,n){var i=R(e)?v.findIndex:v.findKey,o=i(e,t,n);if(void 0!==o&&-1!==o)return e[o]},v.filter=v.select=function(e,t,n){var i=[];return t=S(t,n),v.each(e,function(e,n,o){t(e,n,o)&&i.push(e)}),i},v.reject=function(e,t,n){return v.filter(e,v.negate(S(t)),n)},v.every=v.all=function(e,t,n){t=S(t,n);for(var i=!R(e)&&v.keys(e),o=(i||e).length,r=0;r<o;r++){var s=i?i[r]:r;if(!t(e[s],s,e))return!1}return!0},v.some=v.any=function(e,t,n){t=S(t,n);for(var i=!R(e)&&v.keys(e),o=(i||e).length,r=0;r<o;r++){var s=i?i[r]:r;if(t(e[s],s,e))return!0}return!1},v.contains=v.includes=v.include=function(e,t,n,i){return R(e)||(e=v.values(e)),(\"number\"!=typeof n||i)&&(n=0),v.indexOf(e,t,n)>=0},v.invoke=w(function(e,t,n){var i,o;return v.isFunction(t)?o=t:v.isArray(t)&&(i=t.slice(0,-1),t=t[t.length-1]),v.map(e,function(e){var r=o;if(!r){if(i&&i.length&&(e=E(e,i)),null==e)return;r=e[t]}return null==r?r:r.apply(e,n)})}),v.pluck=function(e,t){return v.map(e,v.property(t))},v.where=function(e,t){return v.filter(e,v.matcher(t))},v.findWhere=function(e,t){return v.find(e,v.matcher(t))},v.max=function(e,t,n){var i,o,r=-1/0,s=-1/0;if(null==t||\"number\"==typeof t&&\"object\"!=typeof e[0]&&null!=e){e=R(e)?e:v.values(e);for(var a=0,u=e.length;a<u;a++)null!=(i=e[a])&&i>r&&(r=i)}else t=S(t,n),v.each(e,function(e,n,i){((o=t(e,n,i))>s||o===-1/0&&r===-1/0)&&(r=e,s=o)});return r},v.min=function(e,t,n){var i,o,r=1/0,s=1/0;if(null==t||\"number\"==typeof t&&\"object\"!=typeof e[0]&&null!=e){e=R(e)?e:v.values(e);for(var a=0,u=e.length;a<u;a++)null!=(i=e[a])&&i<r&&(r=i)}else t=S(t,n),v.each(e,function(e,n,i){((o=t(e,n,i))<s||o===1/0&&r===1/0)&&(r=e,s=o)});return r},v.shuffle=function(e){return v.sample(e,1/0)},v.sample=function(e,t,n){if(null==t||n)return R(e)||(e=v.values(e)),e[v.random(e.length-1)];var i=R(e)?v.clone(e):v.values(e),o=T(i);t=Math.max(Math.min(t,o),0);for(var r=o-1,s=0;s<t;s++){var a=v.random(s,r),u=i[s];i[s]=i[a],i[a]=u}return i.slice(0,t)},v.sortBy=function(e,t,n){var i=0;return t=S(t,n),v.pluck(v.map(e,function(e,n,o){return{value:e,index:i++,criteria:t(e,n,o)}}).sort(function(e,t){var n=e.criteria,i=t.criteria;if(n!==i){if(n>i||void 0===n)return 1;if(n<i||void 0===i)return-1}return e.index-t.index}),\"value\")};var I=function(e,t){return function(n,i,o){var r=t?[[],[]]:{};return i=S(i,o),v.each(n,function(t,o){var s=i(t,o,n);e(r,t,s)}),r}};v.groupBy=I(function(e,t,n){O(e,n)?e[n].push(t):e[n]=[t]}),v.indexBy=I(function(e,t,n){e[n]=t}),v.countBy=I(function(e,t,n){O(e,n)?e[n]++:e[n]=1});var M=/[^\\ud800-\\udfff]|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\ud800-\\udfff]/g;v.toArray=function(e){return e?v.isArray(e)?p.call(e):v.isString(e)?e.match(M):R(e)?v.map(e,v.identity):v.values(e):[]},v.size=function(e){return null==e?0:R(e)?e.length:v.keys(e).length},v.partition=I(function(e,t,n){e[n?0:1].push(t)},!0),v.first=v.head=v.take=function(e,t,n){return null==e||e.length<1?null==t?void 0:[]:null==t||n?e[0]:v.initial(e,e.length-t)},v.initial=function(e,t,n){return p.call(e,0,Math.max(0,e.length-(null==t||n?1:t)))},v.last=function(e,t,n){return null==e||e.length<1?null==t?void 0:[]:null==t||n?e[e.length-1]:v.rest(e,Math.max(0,e.length-t))},v.rest=v.tail=v.drop=function(e,t,n){return p.call(e,null==t||n?1:t)},v.compact=function(e){return v.filter(e,Boolean)};var P=function(e,t,n,i){i=i||[];for(var o=i.length,r=0,s=T(e);r<s;r++){var a=e[r];if(R(a)&&(v.isArray(a)||v.isArguments(a)))if(t)for(var u=0,l=a.length;u<l;)i[o++]=a[u++];else P(a,t,n,i),o=i.length;else n||(i[o++]=a)}return i};v.flatten=function(e,t){return P(e,t,!1)},v.without=w(function(e,t){return v.difference(e,t)}),v.uniq=v.unique=function(e,t,n,i){v.isBoolean(t)||(i=n,n=t,t=!1),null!=n&&(n=S(n,i));for(var o=[],r=[],s=0,a=T(e);s<a;s++){var u=e[s],l=n?n(u,s,e):u;t&&!n?(s&&r===l||o.push(u),r=l):n?v.contains(r,l)||(r.push(l),o.push(u)):v.contains(o,u)||o.push(u)}return o},v.union=w(function(e){return v.uniq(P(e,!0,!0))}),v.intersection=function(e){for(var t=[],n=arguments.length,i=0,o=T(e);i<o;i++){var r=e[i];if(!v.contains(t,r)){var s;for(s=1;s<n&&v.contains(arguments[s],r);s++);s===n&&t.push(r)}}return t},v.difference=w(function(e,t){return t=P(t,!0,!0),v.filter(e,function(e){return!v.contains(t,e)})}),v.unzip=function(e){for(var t=e&&v.max(e,T).length||0,n=Array(t),i=0;i<t;i++)n[i]=v.pluck(e,i);return n},v.zip=w(v.unzip),v.object=function(e,t){for(var n={},i=0,o=T(e);i<o;i++)t?n[e[i]]=t[i]:n[e[i][0]]=e[i][1];return n};var D=function(e){return function(t,n,i){n=S(n,i);for(var o=T(t),r=e>0?0:o-1;r>=0&&r<o;r+=e)if(n(t[r],r,t))return r;return-1}};v.findIndex=D(1),v.findLastIndex=D(-1),v.sortedIndex=function(e,t,n,i){n=S(n,i,1);for(var o=n(t),r=0,s=T(e);r<s;){var a=Math.floor((r+s)/2);n(e[a])<o?r=a+1:s=a}return r};var $=function(e,t,n){return function(i,o,r){var s=0,a=T(i);if(\"number\"==typeof r)e>0?s=r>=0?r:Math.max(r+a,s):a=r>=0?Math.min(r+1,a):r+a+1;else if(n&&r&&a)return r=n(i,o),i[r]===o?r:-1;if(o!==o)return r=t(p.call(i,s,a),v.isNaN),r>=0?r+s:-1;for(r=e>0?s:a-1;r>=0&&r<a;r+=e)if(i[r]===o)return r;return-1}};v.indexOf=$(1,v.findIndex,v.sortedIndex),v.lastIndexOf=$(-1,v.findLastIndex),v.range=function(e,t,n){null==t&&(t=e||0,e=0),n||(n=t<e?-1:1);for(var i=Math.max(Math.ceil((t-e)/n),0),o=Array(i),r=0;r<i;r++,e+=n)o[r]=e;return o},v.chunk=function(e,t){if(null==t||t<1)return[];for(var n=[],i=0,o=e.length;i<o;)n.push(p.call(e,i,i+=t));return n};var N=function(e,t,n,i,o){if(!(i instanceof t))return e.apply(n,o);var r=x(e.prototype),s=e.apply(r,o);return v.isObject(s)?s:r};v.bind=w(function(e,t,n){if(!v.isFunction(e))throw new TypeError(\"Bind must be called on a function\");var i=w(function(o){return N(e,i,t,this,n.concat(o))});return i}),v.partial=w(function(e,t){var n=v.partial.placeholder,i=function(){for(var o=0,r=t.length,s=Array(r),a=0;a<r;a++)s[a]=t[a]===n?arguments[o++]:t[a];for(;o<arguments.length;)s.push(arguments[o++]);return N(e,i,this,this,s)};return i}),v.partial.placeholder=v,v.bindAll=w(function(e,t){t=P(t,!1,!1);var n=t.length;if(n<1)throw new Error(\"bindAll must be passed function names\");for(;n--;){var i=t[n];e[i]=v.bind(e[i],e)}}),v.memoize=function(e,t){var n=function(i){var o=n.cache,r=\"\"+(t?t.apply(this,arguments):i);return O(o,r)||(o[r]=e.apply(this,arguments)),o[r]};return n.cache={},n},v.delay=w(function(e,t,n){return setTimeout(function(){return e.apply(null,n)},t)}),v.defer=v.partial(v.delay,v,1),v.throttle=function(e,t,n){var i,o,r,s,a=0;n||(n={});var u=function(){a=!1===n.leading?0:v.now(),i=null,s=e.apply(o,r),i||(o=r=null)},l=function(){var l=v.now();a||!1!==n.leading||(a=l);var c=t-(l-a);return o=this,r=arguments,c<=0||c>t?(i&&(clearTimeout(i),i=null),a=l,s=e.apply(o,r),i||(o=r=null)):i||!1===n.trailing||(i=setTimeout(u,c)),s};return l.cancel=function(){clearTimeout(i),a=0,i=o=r=null},l},v.debounce=function(e,t,n){var i,o,r=function(t,n){i=null,n&&(o=e.apply(t,n))},s=w(function(s){if(i&&clearTimeout(i),n){var a=!i;i=setTimeout(r,t),a&&(o=e.apply(this,s))}else i=v.delay(r,t,this,s);return o});return s.cancel=function(){clearTimeout(i),i=null},s},v.wrap=function(e,t){return v.partial(t,e)},v.negate=function(e){return function(){return!e.apply(this,arguments)}},v.compose=function(){var e=arguments,t=e.length-1;return function(){for(var n=t,i=e[t].apply(this,arguments);n--;)i=e[n].call(this,i);return i}},v.after=function(e,t){return function(){if(--e<1)return t.apply(this,arguments)}},v.before=function(e,t){var n;return function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=null),n}},v.once=v.partial(v.before,2),v.restArguments=w;var V=!{toString:null}.propertyIsEnumerable(\"toString\"),k=[\"valueOf\",\"isPrototypeOf\",\"toString\",\"propertyIsEnumerable\",\"hasOwnProperty\",\"toLocaleString\"],L=function(e,t){var n=k.length,i=e.constructor,o=v.isFunction(i)&&i.prototype||u,r=\"constructor\";for(O(e,r)&&!v.contains(t,r)&&t.push(r);n--;)(r=k[n])in e&&e[r]!==o[r]&&!v.contains(t,r)&&t.push(r)};v.keys=function(e){if(!v.isObject(e))return[];if(m)return m(e);var t=[];for(var n in e)O(e,n)&&t.push(n);return V&&L(e,t),t},v.allKeys=function(e){if(!v.isObject(e))return[];var t=[];for(var n in e)t.push(n);return V&&L(e,t),t},v.values=function(e){for(var t=v.keys(e),n=t.length,i=Array(n),o=0;o<n;o++)i[o]=e[t[o]];return i},v.mapObject=function(e,t,n){t=S(t,n);for(var i=v.keys(e),o=i.length,r={},s=0;s<o;s++){var a=i[s];r[a]=t(e[a],a,e)}return r},v.pairs=function(e){for(var t=v.keys(e),n=t.length,i=Array(n),o=0;o<n;o++)i[o]=[t[o],e[t[o]]];return i},v.invert=function(e){for(var t={},n=v.keys(e),i=0,o=n.length;i<o;i++)t[e[n[i]]]=n[i];return t},v.functions=v.methods=function(e){var t=[];for(var n in e)v.isFunction(e[n])&&t.push(n);return t.sort()};var B=function(e,t){return function(n){var i=arguments.length;if(t&&(n=Object(n)),i<2||null==n)return n;for(var o=1;o<i;o++)for(var r=arguments[o],s=e(r),a=s.length,u=0;u<a;u++){var l=s[u];t&&void 0!==n[l]||(n[l]=r[l])}return n}};v.extend=B(v.allKeys),v.extendOwn=v.assign=B(v.keys),v.findKey=function(e,t,n){t=S(t,n);for(var i,o=v.keys(e),r=0,s=o.length;r<s;r++)if(i=o[r],t(e[i],i,e))return i};var Q=function(e,t,n){return t in n};v.pick=w(function(e,t){var n={},i=t[0];if(null==e)return n;v.isFunction(i)?(t.length>1&&(i=C(i,t[1])),t=v.allKeys(e)):(i=Q,t=P(t,!1,!1),e=Object(e));for(var o=0,r=t.length;o<r;o++){var s=t[o],a=e[s];i(a,s,e)&&(n[s]=a)}return n}),v.omit=w(function(e,t){var n,i=t[0];return v.isFunction(i)?(i=v.negate(i),t.length>1&&(n=t[1])):(t=v.map(P(t,!1,!1),String),i=function(e,n){return!v.contains(t,n)}),v.pick(e,i,n)}),v.defaults=B(v.allKeys,!0),v.create=function(e,t){var n=x(e);return t&&v.extendOwn(n,t),n},v.clone=function(e){return v.isObject(e)?v.isArray(e)?e.slice():v.extend({},e):e},v.tap=function(e,t){return t(e),e},v.isMatch=function(e,t){var n=v.keys(t),i=n.length;if(null==e)return!i;for(var o=Object(e),r=0;r<i;r++){var s=n[r];if(t[s]!==o[s]||!(s in o))return!1}return!0};var U,j;U=function(e,t,n,i){if(e===t)return 0!==e||1/e==1/t;if(null==e||null==t)return!1;if(e!==e)return t!==t;var o=typeof e;return(\"function\"===o||\"object\"===o||\"object\"==typeof t)&&j(e,t,n,i)},j=function(e,t,n,i){e instanceof v&&(e=e._wrapped),t instanceof v&&(t=t._wrapped);var o=h.call(e);if(o!==h.call(t))return!1;switch(o){case\"[object RegExp]\":case\"[object String]\":return\"\"+e==\"\"+t;case\"[object Number]\":return+e!=+e?+t!=+t:0==+e?1/+e==1/t:+e==+t;case\"[object Date]\":case\"[object Boolean]\":return+e==+t;case\"[object Symbol]\":return l.valueOf.call(e)===l.valueOf.call(t)}var r=\"[object Array]\"===o;if(!r){if(\"object\"!=typeof e||\"object\"!=typeof t)return!1;var s=e.constructor,a=t.constructor;if(s!==a&&!(v.isFunction(s)&&s instanceof s&&v.isFunction(a)&&a instanceof a)&&\"constructor\"in e&&\"constructor\"in t)return!1}n=n||[],i=i||[];for(var u=n.length;u--;)if(n[u]===e)return i[u]===t;if(n.push(e),i.push(t),r){if((u=e.length)!==t.length)return!1;for(;u--;)if(!U(e[u],t[u],n,i))return!1}else{var c,p=v.keys(e);if(u=p.length,v.keys(t).length!==u)return!1;for(;u--;)if(c=p[u],!O(t,c)||!U(e[c],t[c],n,i))return!1}return n.pop(),i.pop(),!0},v.isEqual=function(e,t){return U(e,t)},v.isEmpty=function(e){return null==e||(R(e)&&(v.isArray(e)||v.isString(e)||v.isArguments(e))?0===e.length:0===v.keys(e).length)},v.isElement=function(e){return!(!e||1!==e.nodeType)},v.isArray=f||function(e){return\"[object Array]\"===h.call(e)},v.isObject=function(e){var t=typeof e;return\"function\"===t||\"object\"===t&&!!e},v.each([\"Arguments\",\"Function\",\"String\",\"Number\",\"Date\",\"RegExp\",\"Error\",\"Symbol\",\"Map\",\"WeakMap\",\"Set\",\"WeakSet\"],function(e){v[\"is\"+e]=function(t){return h.call(t)===\"[object \"+e+\"]\"}}),v.isArguments(arguments)||(v.isArguments=function(e){return O(e,\"callee\")});var q=r.document&&r.document.childNodes;\"function\"!=typeof/./&&\"object\"!=typeof Int8Array&&\"function\"!=typeof q&&(v.isFunction=function(e){return\"function\"==typeof e||!1}),v.isFinite=function(e){return!v.isSymbol(e)&&isFinite(e)&&!isNaN(parseFloat(e))},v.isNaN=function(e){return v.isNumber(e)&&isNaN(e)},v.isBoolean=function(e){return!0===e||!1===e||\"[object Boolean]\"===h.call(e)},v.isNull=function(e){return null===e},v.isUndefined=function(e){return void 0===e},v.has=function(e,t){if(!v.isArray(t))return O(e,t);for(var n=t.length,i=0;i<n;i++){var o=t[i];if(null==e||!d.call(e,o))return!1;e=e[o]}return!!n},v.noConflict=function(){return r._=s,this},v.identity=function(e){return e},v.constant=function(e){return function(){return e}},v.noop=function(){},v.property=function(e){return v.isArray(e)?function(t){return E(t,e)}:_(e)},v.propertyOf=function(e){return null==e?function(){}:function(t){return v.isArray(t)?E(e,t):e[t]}},v.matcher=v.matches=function(e){return e=v.extendOwn({},e),function(t){return v.isMatch(t,e)}},v.times=function(e,t,n){var i=Array(Math.max(0,e));t=C(t,n,1);for(var o=0;o<e;o++)i[o]=t(o);return i},v.random=function(e,t){return null==t&&(t=e,e=0),e+Math.floor(Math.random()*(t-e+1))},v.now=Date.now||function(){return(new Date).getTime()};var H={\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#x27;\",\"`\":\"&#x60;\"},z=v.invert(H),W=function(e){var t=function(t){return e[t]},n=\"(?:\"+v.keys(e).join(\"|\")+\")\",i=RegExp(n),o=RegExp(n,\"g\");return function(e){return e=null==e?\"\":\"\"+e,i.test(e)?e.replace(o,t):e}};v.escape=W(H),v.unescape=W(z),v.result=function(e,t,n){v.isArray(t)||(t=[t]);var i=t.length;if(!i)return v.isFunction(n)?n.call(e):n;for(var o=0;o<i;o++){var r=null==e?void 0:e[t[o]];void 0===r&&(r=n,o=i),e=v.isFunction(r)?r.call(e):r}return e};var G=0;v.uniqueId=function(e){var t=++G+\"\";return e?e+t:t},v.templateSettings={evaluate:/<%([\\s\\S]+?)%>/g,interpolate:/<%=([\\s\\S]+?)%>/g,escape:/<%-([\\s\\S]+?)%>/g};var Y=/(.)^/,K={\"'\":\"'\",\"\\\\\":\"\\\\\",\"\\r\":\"r\",\"\\n\":\"n\",\"\\u2028\":\"u2028\",\"\\u2029\":\"u2029\"},J=/\\\\|'|\\r|\\n|\\u2028|\\u2029/g,X=function(e){return\"\\\\\"+K[e]};v.template=function(e,t,n){!t&&n&&(t=n),t=v.defaults({},t,v.templateSettings);var i=RegExp([(t.escape||Y).source,(t.interpolate||Y).source,(t.evaluate||Y).source].join(\"|\")+\"|$\",\"g\"),o=0,r=\"__p+='\";e.replace(i,function(t,n,i,s,a){return r+=e.slice(o,a).replace(J,X),o=a+t.length,n?r+=\"'+\\n((__t=(\"+n+\"))==null?'':_.escape(__t))+\\n'\":i?r+=\"'+\\n((__t=(\"+i+\"))==null?'':__t)+\\n'\":s&&(r+=\"';\\n\"+s+\"\\n__p+='\"),t}),r+=\"';\\n\",t.variable||(r=\"with(obj||{}){\\n\"+r+\"}\\n\"),r=\"var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\\n\"+r+\"return __p;\\n\";var s;try{s=new Function(t.variable||\"obj\",\"_\",r)}catch(e){throw e.source=r,e}var a=function(e){return s.call(this,e,v)};return a.source=\"function(\"+(t.variable||\"obj\")+\"){\\n\"+r+\"}\",a},v.chain=function(e){var t=v(e);return t._chain=!0,t};var Z=function(e,t){return e._chain?v(t).chain():t};v.mixin=function(e){return v.each(v.functions(e),function(t){var n=v[t]=e[t];v.prototype[t]=function(){var e=[this._wrapped];return c.apply(e,arguments),Z(this,n.apply(v,e))}}),v},v.mixin(v),v.each([\"pop\",\"push\",\"reverse\",\"shift\",\"sort\",\"splice\",\"unshift\"],function(e){var t=a[e];v.prototype[e]=function(){var n=this._wrapped;return t.apply(n,arguments),\"shift\"!==e&&\"splice\"!==e||0!==n.length||delete n[0],Z(this,n)}}),v.each([\"concat\",\"join\",\"slice\"],function(e){var t=a[e];v.prototype[e]=function(){return Z(this,t.apply(this._wrapped,arguments))}}),v.prototype.value=function(){return this._wrapped},v.prototype.valueOf=v.prototype.toJSON=v.prototype.value,v.prototype.toString=function(){return String(this._wrapped)},i=[],void 0!==(o=function(){return v}.apply(t,i))&&(n.exports=o)}()}).call(t,n(62),n(140)(e))},function(e,t,n){\"use strict\";function i(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return 1===e.length&&e[0]instanceof l?e[0]:new l(1!==e.length||o.isString(e[0])?l.createElement.apply(l,e):e[0])}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(5),s=n(9),a=n(73),u=n(4),l=function(){function e(e){r.Assert.exists(e),this.el=e}return e.createElement=function(t,n){for(var i=[],r=2;r<arguments.length;r++)i[r-2]=arguments[r];var s=document.createElement(t);for(var a in n)if(\"className\"===a)s.className=n.className;else{var l=-1!==a.indexOf(\"-\")?a:u.Utils.toDashCase(a);s.setAttribute(l,n[a])}return o.each(i,function(t){t instanceof HTMLElement?s.appendChild(t):o.isString(t)?s.innerHTML+=t:t instanceof e&&s.appendChild(t.el)}),s},e.prototype.append=function(e){this.el.appendChild(e)},e.prototype.css=function(e){return this.el.style[e]?this.el.style[e]:window.getComputedStyle(this.el).getPropertyValue(e)},e.prototype.text=function(e){if(u.Utils.isUndefined(e))return this.el.innerText||this.el.textContent;void 0!=this.el.innerText?this.el.innerText=e:void 0!=this.el.textContent&&(this.el.textContent=e)},e.nodeListToArray=function(e){for(var t=e.length,n=new Array(t);t--;)n[t]=e.item(t);return n},e.prototype.empty=function(){for(;this.el.firstChild;)this.el.removeChild(this.el.firstChild)},e.prototype.remove=function(){this.el.parentNode&&this.el.parentNode.removeChild(this.el)},e.prototype.show=function(){this.el.style.display=\"block\",i(this.el).setAttribute(\"aria-hidden\",\"false\")},e.prototype.hide=function(){this.el.style.display=\"none\",i(this.el).setAttribute(\"aria-hidden\",\"true\")},e.prototype.unhide=function(){this.el.style.display=\"\",i(this.el).setAttribute(\"aria-hidden\",\"false\")},e.prototype.toggle=function(e){void 0===e?\"block\"==this.el.style.display?this.hide():this.show():e?this.show():this.hide()},e.prototype.isVisible=function(){return\"none\"!=this.el.style.display&&(\"hidden\"!=this.el.style.visibility&&(!this.hasClass(\"coveo-tab-disabled\")&&!this.hasClass(\"coveo-hidden\")))},e.prototype.getAttribute=function(e){return this.el.getAttribute(e)},e.prototype.setAttribute=function(e,t){this.el.setAttribute(e,t)},e.prototype.find=function(e){return this.el.querySelector(e)},e.prototype.is=function(e){return this.el.tagName.toLowerCase()==e.toLowerCase()||(!(\".\"!=e[0]||!this.hasClass(e.substr(1)))||\"#\"==e[0]&&this.el.getAttribute(\"id\")==e.substr(1))},e.prototype.closest=function(e){return this.traverseAncestorForClass(this.el,e)},e.prototype.parent=function(e){if(void 0!=this.el.parentElement)return this.traverseAncestorForClass(this.el.parentElement,e)},e.prototype.parents=function(t){for(var n=[],i=this.parent(t);i;)n.push(i),i=new e(i).parent(t);return n},e.prototype.children=function(){return e.nodeListToArray(this.el.children)},e.prototype.siblings=function(e){for(var t=[],n=this.el.parentNode.firstChild;n;n=n.nextSibling)n!=this.el&&(!this.matches(n,e)&&e||t.push(n));return t},e.prototype.matches=function(e,t){for(var n=document.querySelectorAll(t),i=0;i<n.length;i++)if(n[i]===e)return!0;return!1},e.prototype.findAll=function(t){return e.nodeListToArray(this.el.querySelectorAll(t))},e.prototype.findClass=function(t){if(\"getElementsByClassName\"in this.el)return e.nodeListToArray(this.el.getElementsByClassName(t))},e.prototype.findId=function(e){return document.getElementById(e)},e.prototype.addClass=function(e){var t=this;o.isArray(e)?o.each(e,function(e){t.addClass(e)}):this.hasClass(e)||(this.el.className?this.el.className+=\" \"+e:this.el.className=e)},e.prototype.removeClass=function(e){this.el.className=this.el.className.replace(new RegExp(\"(^|\\\\s)\"+e+\"(\\\\s|$)\",\"g\"),\"$1\").trim()},e.prototype.toggleClass=function(e,t){u.Utils.isNullOrUndefined(t)?this.hasClass(e)?this.removeClass(e):this.addClass(e):t?this.addClass(e):this.removeClass(e)},e.prototype.setHtml=function(e){this.el.innerHTML=e},e.prototype.getClass=function(){var t=this.getAttribute(\"class\");return t&&t.match?t.match(e.CLASS_NAME_REGEX)||[]:[]},e.prototype.hasClass=function(e){return o.contains(this.getClass(),e)},e.prototype.detach=function(){this.el.parentElement&&this.el.parentElement.removeChild(this.el)},e.prototype.insertAfter=function(e){e.parentNode&&e.parentNode.insertBefore(this.el,e.nextSibling)},e.prototype.insertBefore=function(e){e.parentNode&&e.parentNode.insertBefore(this.el,e)},e.prototype.prepend=function(t){this.el.firstChild?new e(t).insertBefore(this.el.firstChild):this.el.appendChild(t)},e.prototype.on=function(t,n){var i=this;if(o.isArray(t))o.each(t,function(e){i.on(e,n)});else{var r=this.processEventTypeToBeJQueryCompatible(t),s=a.JQueryUtils.getJQuery();if(this.shouldUseJQueryEvent())s(this.el).on(r,n);else if(this.el.addEventListener){var u=function(e){n(e,e.detail)};e.handlers.set(n,u),r&&-1!=r.indexOf(\"touch\")?this.el.addEventListener(r,u,{passive:!0}):this.el.addEventListener(r,u,!1)}else this.el.on&&this.el.on(\"on\"+r,n)}},e.prototype.one=function(e,t){var n=this;if(o.isArray(e))o.each(e,function(e){n.one(e,t)});else{var i=this.processEventTypeToBeJQueryCompatible(e),r=function(e,o){return n.off(i,r),t(e,o)};this.on(i,r)}},e.prototype.off=function(t,n){var i=this;if(o.isArray(t))o.each(t,function(e){i.off(e,n)});else{var r=this.processEventTypeToBeJQueryCompatible(t),s=a.JQueryUtils.getJQuery();if(this.shouldUseJQueryEvent())s(this.el).off(r,n);else if(this.el.removeEventListener){var u=e.handlers.get(n);u&&this.el.removeEventListener(r,u,!1)}else this.el.off&&this.el.off(\"on\"+r,n)}},e.prototype.trigger=function(e,t){var n=this.processEventTypeToBeJQueryCompatible(e);if(this.shouldUseJQueryEvent())a.JQueryUtils.getJQuery()(this.el).trigger(n,t);else if(void 0!==window.CustomEvent){var i=new CustomEvent(n,{detail:t,bubbles:!0});this.el.dispatchEvent(i)}else try{this.el.dispatchEvent(this.buildIE11CustomEvent(n,t))}catch(e){this.oldBrowserError()}},e.prototype.isEmpty=function(){return e.ONLY_WHITE_SPACE_REGEX.test(this.el.innerHTML)},e.prototype.isValid=function(){return null!=this.el&&void 0!=this.el.getAttribute},e.prototype.isDescendant=function(e){for(var t=this.el.parentNode;null!=t;){if(t==e)return!0;t=t.parentNode}return!1},e.prototype.replaceWith=function(t){this.el.parentNode&&new e(t).insertAfter(this.el),this.detach()},e.prototype.position=function(){var e=this.offsetParent(),t=this.offset(),n={top:0,left:0};i(e).is(\"html\")||(n=i(e).offset());var o=parseInt(i(e).css(\"borderTopWidth\")),r=parseInt(i(e).css(\"borderLeftWidth\"));o=isNaN(o)?0:o,r=isNaN(r)?0:r,n={top:n.top+o,left:n.left+r};var s=parseInt(this.css(\"marginTop\")),a=parseInt(this.css(\"marginLeft\"));return s=isNaN(s)?0:s,a=isNaN(a)?0:a,{top:t.top-n.top-s,left:t.left-n.left-a}},e.prototype.offsetParent=function(){for(var e=this.el.offsetParent;e instanceof HTMLElement&&\"static\"===i(e).css(\"position\");)e=e.offsetParent;return e instanceof HTMLElement?e:document.documentElement},e.prototype.offset=function(){if(!this.el.getClientRects().length)return{top:0,left:0};var e=this.el.getBoundingClientRect();if(e.width||e.height){var t=this.el.ownerDocument,n=t.documentElement;return{top:e.top+window.pageYOffset-n.clientTop,left:e.left+window.pageXOffset-n.clientLeft}}return e},e.prototype.width=function(){return this.el.offsetWidth},e.prototype.height=function(){return this.el.offsetHeight},e.prototype.clone=function(e){return void 0===e&&(e=!1),i(this.el.cloneNode(e))},e.prototype.canHandleEvent=function(e){var t=\"on\"+e,n=t in this.el;return!n&&this.el.setAttribute&&(this.el.setAttribute(t,\"return;\"),n=\"function\"==typeof this.el[t],this.el.removeAttribute(t)),n},e.prototype.buildIE11CustomEvent=function(e,t){var n=document.createEvent(\"CustomEvent\");return n.initCustomEvent(e,!0,!0,t),n},e.prototype.shouldUseJQueryEvent=function(){return a.JQueryUtils.getJQuery()&&!e.useNativeJavaScriptEvents},e.prototype.processEventTypeToBeJQueryCompatible=function(e){return e?e.replace(/[^a-zA-Z0-9\\:\\_]/g,\"\"):e},e.prototype.traverseAncestorForClass=function(e,t){void 0===e&&(e=this.el),0==t.indexOf(\".\")&&(t=t.substr(1));for(var n=!1;!n&&(i(e).hasClass(t)&&(n=!0),\"body\"!=e.tagName.toLowerCase())&&null!=e.parentElement;)n||(e=e.parentElement);if(n)return e},e.prototype.oldBrowserError=function(){new s.Logger(this).error(\"CANNOT TRIGGER EVENT FOR OLDER BROWSER\")},e.CLASS_NAME_REGEX=/-?[_a-zA-Z]+[_a-zA-Z0-9-]*/g,e.ONLY_WHITE_SPACE_REGEX=/^\\s*$/,e.useNativeJavaScriptEvents=!1,e.handlers=new WeakMap,e}();t.Dom=l;var c=function(){function e(e){this.win=e}return e.prototype.height=function(){return this.win.innerHeight},e.prototype.width=function(){return this.win.innerWidth},e.prototype.scrollY=function(){return this.supportPageOffset()?this.win.pageYOffset:this.isCSS1Compat()?this.win.document.documentElement.scrollTop:this.win.document.body.scrollTop},e.prototype.scrollX=function(){return this.supportPageOffset()?window.pageXOffset:this.isCSS1Compat()?document.documentElement.scrollLeft:document.body.scrollLeft},e.prototype.isCSS1Compat=function(){return\"CSS1Compat\"===(this.win.document.compatMode||\"\")},e.prototype.supportPageOffset=function(){return void 0!==this.win.pageXOffset},e}();t.Win=c;var p=function(){function e(e){this.doc=e}return e.prototype.height=function(){var e=this.doc.body;return Math.max(e.scrollHeight,e.offsetHeight)},e.prototype.width=function(){var e=this.doc.body;return Math.max(e.scrollWidth,e.offsetWidth)},e}();t.Doc=p,t.$$=i},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(0),a=n(40),u=n(16),l=n(5),c=n(9),p=n(27),h=n(75),d=n(13),f=n(1),m=n(47),y=n(73),g=n(4),v=n(10),b=n(7),C=n(18),S=n(423),w=n(28),x=function(){function e(){}return e.registerDefaultOptions=function(e,t){var n=e.CoveoDefaultOptions||{},i=g.Utils.extendDeep(n,t);e.CoveoDefaultOptions=i},e.resolveDefaultOptions=function(t,n){var i,o=t.CoveoDefaultOptions;return i=g.Utils.exists(o)?g.Utils.extendDeep(o,n):n,t.parentElement?e.resolveDefaultOptions(t.parentElement,i):i},e.registerAutoCreateComponent=function(t){l.Assert.exists(t),l.Assert.exists(t.ID),l.Assert.doesNotExists(e.namedMethods[t.ID]),s.contains(e.registeredComponents,t.ID)||(e.registeredComponents.push(t.ID),t.aliases&&(e.componentAliases[t.ID]=t.aliases)),null==O.eagerlyLoadedComponents[t.ID]&&(O.eagerlyLoadedComponents[t.ID]=t),null==_.lazyLoadedComponents[t.ID]&&(_.lazyLoadedComponents[t.ID]=function(){return new Promise(function(e,n){e(t)})})},e.registerComponentFields=function(t,n){e.fieldsNeededForQuery=g.Utils.concatWithoutDuplicate(e.fieldsNeededForQuery,n);var i=function(t){null==e.fieldsNeededForQueryByComponent[t]?e.fieldsNeededForQueryByComponent[t]=n:e.fieldsNeededForQueryByComponent[t]=g.Utils.concatWithoutDuplicate(e.fieldsNeededForQueryByComponent[t],n)};i(t),i(b.Component.computeCssClassNameForType(t))},e.getRegisteredFieldsForQuery=function(){return e.fieldsNeededForQuery},e.getRegisteredFieldsComponentForQuery=function(t){var n=e.fieldsNeededForQueryByComponent[t]||[],i=e.fieldsNeededForQueryByComponent[b.Component.computeCssClassNameForType(t)]||[];return g.Utils.concatWithoutDuplicate(n,i)},e.isComponentClassIdRegistered=function(t){return s.contains(e.registeredComponents,t)||s.contains(e.registeredComponents,b.Component.computeCssClassNameForType(t))},e.getListOfRegisteredComponents=function(){return e.registeredComponents},e.getListOfLoadedComponents=function(){return s.keys(O.eagerlyLoadedComponents)},e.getRegisteredComponent=function(e){return O.eagerlyLoadedComponents[e]},e.initializeFramework=function(t,n,i){var s=this;if(l.Assert.exists(t),b.Component.get(t,a.QueryController,!0))return this.logger.error(\"This DOM element has already been initialized as a search interface, skipping initialization\",t),Promise.resolve({elem:t});n=e.resolveDefaultOptions(t,n);var c=function(e,t){return o(s,void 0,void 0,function(){var n,i=this;return r(this,function(o){try{return n=t.map(function(t){return t.catch(function(t){return i.logger.warn('An error occurred when trying to defer the \"'+e+'\" event. The defer will be ignored.',\"Error: \"+t)})}),[2,Promise.all(n)]}catch(e){this.logger.error('An unexpected error occurred when trying to defer the \"'+event+'\" event. All defers will be ignored.',\"Error: \"+e)}return[2]})})},p=function(e){var n={defer:[]};return f.$$(t).trigger(e,n),n.defer.length>0?c(e,n.defer):Promise.resolve()};e.performInitFunctionsOption(n,u.InitializationEvents.beforeInitialization),f.$$(t).trigger(u.InitializationEvents.beforeInitialization);var h=function(){return o(s,void 0,void 0,function(){var i,o,s;return r(this,function(r){switch(r.label){case 0:return[4,e.initExternalComponents(t,n)];case 1:return i=r.sent(),e.performInitFunctionsOption(n,u.InitializationEvents.afterComponentsInitialization),[4,p(u.InitializationEvents.afterComponentsInitialization)];case 2:return r.sent(),f.$$(t).trigger(u.InitializationEvents.restoreHistoryState),e.performInitFunctionsOption(n,u.InitializationEvents.afterInitialization),[4,p(u.InitializationEvents.afterInitialization)];case 3:return r.sent(),o=b.Component.get(t,C.SearchInterface),e.shouldExecuteFirstQueryAutomatically(o)&&(e.logFirstQueryCause(o),s=!0,Coveo.Recommendation&&(s=!(o instanceof Coveo.Recommendation)),b.Component.get(t,a.QueryController).executeQuery({logInActionsHistory:s,isFirstQuery:!0})),[2,i]}})})},d=i(t,n);return d.isLazyInit?d.initResult.then(h).then(function(){return{elem:t}}):h().then(function(){return{elem:t}})},e.initSearchInterface=function(t,n){void 0===n&&(n={}),n=e.resolveDefaultOptions(t,n);var i=new C.SearchInterface(t,n.SearchInterface,n.Analytics);i.options.originalOptionsObject=n;var o={options:n,bindings:i.getBindings()};return e.automaticallyCreateComponentsInside(t,o,[\"Recommendation\"])},e.initStandaloneSearchInterface=function(t,n){void 0===n&&(n={}),n=e.resolveDefaultOptions(t,n),n.Querybox||(n.Querybox={}),n.Omnibox||(n.Omnibox={}),n.Searchbox||(n.Searchbox={}),n.Querybox.triggerQueryOnClear&&n.Omnibox.triggerQueryOnClear&&n.Searchbox.triggerOnQueryClear||(n.Querybox.triggerQueryOnClear=!1,n.Omnibox.triggerQueryOnClear=!1,n.Searchbox.triggerQueryOnClear=!1);var i=new C.StandaloneSearchInterface(t,n.StandaloneSearchInterface,n.Analytics);i.options.originalOptionsObject=n;var o={options:n,bindings:i.getBindings()};return e.automaticallyCreateComponentsInside(t,o)},e.initRecommendationInterface=function(t,n){void 0===n&&(n={}),n=e.resolveDefaultOptions(t,n);var i=s.extend({},n.SearchInterface,n.Recommendation);i.mainSearchInterface&&(i.firstLoadingAnimation=f.$$(\"span\").el);var o=new window.Coveo.Recommendation(t,i,n.Analytics);o.options.originalOptionsObject=n;var r={options:n,bindings:o.getBindings()};return e.automaticallyCreateComponentsInside(t,r)},e.automaticallyCreateComponentsInsideResult=function(t,n,o){void 0===o&&(o={});var r=i({initOptions:o},n.searchInterface.options.originalOptionsObject),s=i({},n.searchInterface.getBindings(),{resultElement:t}),a={options:r,bindings:s,result:n};return e.automaticallyCreateComponentsInside(t,a)},e.automaticallyCreateComponentsInside=function(e,t,n){var i=this;void 0===n&&(n=[]),l.Assert.exists(e);var o,r=S.InitializationHelper.findDOMElementsToIgnore(e,n),a=S.InitializationHelper.findDOMElementsToInitialize(e,r),u=s.chain(a).map(function(e){var n=i.componentsFactory(e.htmlElements,e.componentClassId,t);return o=n.isLazyInit,n.factory}).map(function(e){var t=e();return t?Promise.all(t).then(function(){return!0}):Promise.resolve(!0)}).value();return{initResult:Promise.all(u).then(function(){return!0}).catch(function(e){return i.logger.error(e),i.logger.warn(\"Skipping initialization of previous component in error ... \"),!0}),isLazyInit:o}},e.registerNamedMethod=function(t,n){l.Assert.isNonEmptyString(t),l.Assert.doesNotExists(O.eagerlyLoadedComponents[t]),l.Assert.doesNotExists(e.namedMethods[t]),l.Assert.exists(n),e.namedMethods[t]=n},e.isNamedMethodRegistered=function(t){return g.Utils.exists(e.namedMethods[t])},e.monkeyPatchComponentMethod=function(e,t,n){l.Assert.isNonEmptyString(e),l.Assert.exists(n);var i;if(e.indexOf(\".\")>0){var o=e.split(\".\");l.Assert.check(2==o.length,\"Invalid method name, correct syntax is CoveoComponent.methodName.\"),i=o[0],e=o[1]}var r=b.Component.get(t,i);l.Assert.exists(r),l.Assert.exists(r[e]);var s=\"__\"+e;g.Utils.exists(r[s])||(r[s]=r[e]),r[e]=n},e.initBoxInterface=function(t,n,i,o){void 0===n&&(n={}),void 0===i&&(i=\"Standard\"),void 0===o&&(o=!0),n=e.resolveDefaultOptions(t,n);var r=\"Box\";\"Standard\"!=i&&(r+=\"For\"+i);var s=b.Component.getComponentRef(r);if(s){new c.Logger(t).info(\"Initializing box of type \"+r);var a=o?s.getInjection:function(){},u=new s(t,n[r],n.Analytics,a,n);u.options.originalOptionsObject=n;var p={options:n,bindings:u.getBindings()};return e.automaticallyCreateComponentsInside(t,p)}return{initResult:new Promise(function(e,n){new c.Logger(t).error(\"Trying to initialize box of type : \"+r+\" but not found in code (not compiled)!\"),l.Assert.fail(\"Cannot initialize unknown type of box\"),n(!1)}),isLazyInit:!1}},e.dispatchNamedMethodCall=function(t,n,i){l.Assert.isNonEmptyString(t),l.Assert.exists(n);var o=e.namedMethods[t];return l.Assert.exists(o),e.logger.trace(\"Dispatching named method call of \"+t,n,i),0!=i.length?o.apply(null,[n].concat(i)):o.apply(null,[n])},e.dispatchNamedMethodCallOrComponentCreation=function(t,n,i){return l.Assert.isNonEmptyString(t),l.Assert.exists(n),e.isNamedMethodRegistered(t)?e.dispatchNamedMethodCall(t,n,i):e.isThereASingleComponentBoundToThisElement(n)?e.dispatchMethodCallOnBoundComponent(t,n,i):void l.Assert.fail(\"No method or component named \"+t+\" are registered.\")},e.isSearchFromLink=function(e){return g.Utils.isNonEmptyString(e.getBindings().queryStateModel.get(\"q\"))},e.isThereASingleComponentBoundToThisElement=function(e){return l.Assert.exists(e),g.Utils.exists(b.Component.get(e,null,!0))},e.isThereANonSearchInterfaceComponentBoundToThisElement=function(t){return!!f.$$(t).hasClass(\"CoveoRecommendation\")||e.isThereASingleComponentBoundToThisElement(t)&&!w.get(t,C.SearchInterface,!0)&&!f.$$(t).hasClass(\"CoveoRecommendation\")},e.dispatchMethodCallOnBoundComponent=function(e,t,n){l.Assert.isNonEmptyString(e),l.Assert.exists(t);var i=b.Component.get(t);l.Assert.exists(i);var o=i[e];if(g.Utils.exists(o))return o.apply(i,n);l.Assert.fail(\"No method named \"+e+\" exist on component \"+i.type)},e.logFirstQueryCause=function(t){var n=m.HashUtils.getValue(\"firstQueryCause\",m.HashUtils.getHash());if(null!=n){var i=m.HashUtils.getValue(\"firstQueryMeta\",m.HashUtils.getHash())||{};t.usageAnalytics.logSearchEvent(v.analyticsActionCauseList[n],i)}else e.isSearchFromLink(t)?t.usageAnalytics.logSearchEvent(v.analyticsActionCauseList.searchFromLink,{}):t.usageAnalytics.logSearchEvent(v.analyticsActionCauseList.interfaceLoad,{})},e.performInitFunctionsOption=function(t,n){g.Utils.exists(t)&&e.performFunctions(t[n])},e.performFunctions=function(e){g.Utils.exists(e)&&s.each(e,function(e){\"function\"==typeof e&&e()})},e.initExternalComponents=function(t,n){var i=this;if(n&&n.externalComponents){var o=b.Component.get(t,C.SearchInterface),r=b.Component.get(t,d.QueryStateModel),u=b.Component.get(t,h.ComponentStateModel),c=b.Component.get(t,a.QueryController),f=b.Component.get(t,p.ComponentOptionsModel),m=o.usageAnalytics;l.Assert.exists(o),l.Assert.exists(r),l.Assert.exists(c),l.Assert.exists(u),l.Assert.exists(m);var v={options:n,bindings:{searchInterface:o,queryStateModel:r,queryController:c,usageAnalytics:m,componentStateModel:u,componentOptionsModel:f,root:t}},S=s.map(n.externalComponents,function(t){var n=t;return g.Utils.isHtmlElement(n)?e.automaticallyCreateComponentsInside(n,v).initResult:y.JQueryUtils.isInstanceOfJQuery(n)?e.automaticallyCreateComponentsInside(n.get(0),v).initResult:void 0});return Promise.all(S).then(function(e){return s.first(e)}).catch(function(e){return i.logger.error(e),!1})}return Promise.resolve(!1)},e.shouldExecuteFirstQueryAutomatically=function(e){var t=e.options;return!t||!1!==t.autoTriggerQuery&&(!0===t.allowQueriesWithoutKeywords||\"\"!=w.state(e.element).get(\"q\"))},e.logger=new c.Logger(\"Initialization\"),e.registeredComponents=[],e.componentAliases={},e.namedMethods={},e.fieldsNeededForQuery=[],e.fieldsNeededForQueryByComponent={},e}();t.Initialization=x;var _=function(){function e(){}return e.getLazyRegisteredComponent=function(t){return e.lazyLoadedComponents[t]()},e.getLazyRegisteredModule=function(t){return e.lazyLoadedModule[t]()},e.registerLazyComponent=function(t,n,i){null==e.lazyLoadedComponents[t]?(l.Assert.exists(n),s.contains(x.registeredComponents,t)||x.registeredComponents.push(t),e.lazyLoadedComponents[t]=n,i&&(x.componentAliases[t]=i)):this.logger.warn(\"Component being registered twice\",t)},e.buildErrorCallback=function(t,n){return function(i){e.logger.warn(\"Cannot load chunk for \"+t+\". You may need to add the coveo-script class on the script tag that includes the Coveo framework. More details [here](https://docs.coveo.com/en/295/javascript-search-framework/lazy-versus-eager-component-loading#fixing-code-chunks-loading-path-issues).\\n        \"+i),n(function(){})}},e.registerLazyModule=function(t,n){null==e.lazyLoadedModule[t]?(l.Assert.exists(n),e.lazyLoadedModule[t]=n):this.logger.warn(\"Module being registered twice\",t)},e.componentsFactory=function(t,n,i){return{factory:function(){var o=[];return s.each(t,function(t){if(null==b.Component.get(t,n)){var r=void 0;if(g.Utils.exists(i.options)){var a=i.options[n],u=i.options[t.id],l=i.options.initOptions?i.options.initOptions[n]:{};r=g.Utils.extendDeep(u,l),r=g.Utils.extendDeep(a,r)}var c=s.extend({},i,{options:r});o.push(e.createComponentOfThisClassOnElement(n,t,c))}}),o},isLazyInit:!0}},e.createComponentOfThisClassOnElement=function(t,n,i){return l.Assert.isNonEmptyString(t),l.Assert.exists(n),x.isThereANonSearchInterfaceComponentBoundToThisElement(n)?null:e.getLazyRegisteredComponent(t).then(function(o){if(l.Assert.exists(o),x.isThereANonSearchInterfaceComponentBoundToThisElement(n))return null;var r,a={},u={};return void 0!=i&&(s.each(i.bindings,function(e,t){a[t]=e}),u=i.options,r=i.result),e.logger.trace(\"Creating component of class \"+t,n,u),new o(n,u,a,r)})},e.logger=new c.Logger(\"LazyInitialization\"),e.lazyLoadedComponents={},e.lazyLoadedModule={},e}();t.LazyInitialization=_;var O=function(){function e(){}return e.componentsFactory=function(t,n,i){return{factory:function(){s.each(t,function(t){if(null==b.Component.get(t,n)){var o=void 0;if(g.Utils.exists(i.options)){var r=i.options[n],a=i.options[t.id],u=i.options.initOptions?i.options.initOptions[n]:{};o=g.Utils.extendDeep(a,u),o=g.Utils.extendDeep(r,o)}var l=s.extend({},i,{options:o});e.createComponentOfThisClassOnElement(n,t,l)}})},isLazyInit:!1}},e.createComponentOfThisClassOnElement=function(t,n,i){l.Assert.isNonEmptyString(t),l.Assert.exists(n);var o,r=x.getRegisteredComponent(t),a={},u={};return void 0!=i&&(s.each(i.bindings,function(e,t){a[t]=e}),u=i.options,o=i.result),x.isThereANonSearchInterfaceComponentBoundToThisElement(n)?null:(e.logger.trace(\"Creating component of class \"+t,n,u),null==r?(_.getLazyRegisteredComponent(t).then(function(i){e.logger.warn(\"Component of class \"+t+' was not found in \"Eager\" mode. Using lazy mode as a fallback.'),new i(n,u,a,o)}).catch(function(){e.logger.error(\"Component of class \"+t+' was not found in \"Eager\" mode nor \"Lazy\" mode. It will not be initialized properly...')}),null):new r(n,u,a,o))},e.logger=new c.Logger(\"EagerInitialization\"),e.eagerlyLoadedComponents={},e}();t.EagerInitialization=O},function(e,t,n){\"use strict\";function i(e){void 0==window.Coveo&&(window.Coveo={}),s.each(s.keys(e),function(t){null==window.Coveo[t]&&(window.Coveo[t]=e[t])})}function o(e,t){e.doExport?e.doExport():new a.Logger(this).error(\"Component \"+e+\" has no export function !\"),u.Initialization.registerAutoCreateComponent(e),t(e)}function r(e,t){e.doExport&&e.doExport(),t(e)}Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(0),a=n(9),u=n(2);t.exportGlobally=i,t.lazyExport=o,t.lazyExportModule=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=/^@[a-zA-Z0-9_\\.]+$/,r=function(){function e(){}return e.isUndefined=function(e){return void 0===e},e.isNull=function(e){return null===e},e.isNullOrUndefined=function(t){return e.isUndefined(t)||e.isNull(t)},e.exists=function(t){return!e.isNullOrUndefined(t)},e.toNotNullString=function(e){return i.isString(e)?e:\"\"},e.anyTypeToString=function(e){return e?e.toString():\"\"},e.isNullOrEmptyString=function(t){return e.isNullOrUndefined(t)||!e.isNonEmptyString(t)},e.isNonEmptyString=function(e){return i.isString(e)&&\"\"!==e},e.isEmptyString=function(t){return!e.isNonEmptyString(t)},e.stringStartsWith=function(e,t){return e.slice(0,t.length)==t},e.isNonEmptyArray=function(e){return i.isArray(e)&&e.length>0},e.isEmptyArray=function(t){return!e.isNonEmptyArray(t)},e.isHtmlElement=function(e){return void 0!=window.HTMLElement?e instanceof HTMLElement:e&&e.nodeType&&1==e.nodeType},e.parseIntIfNotUndefined=function(t){return e.isNonEmptyString(t)?parseInt(t,10):void 0},e.parseFloatIfNotUndefined=function(t){return HTMLDocument,e.isNonEmptyString(t)?parseFloat(t):void 0},e.round=function(e,t){return Math.round(e*Math.pow(10,t))/Math.pow(10,t)},e.parseBooleanIfNotUndefined=function(t){if(e.isNonEmptyString(t))switch(t.toLowerCase()){case\"true\":case\"1\":case\"yes\":return!0;case\"false\":case\"0\":case\"no\":return!1;default:return}},e.trim=function(e){return null==e?null:e.replace(/^\\s+|\\s+$/g,\"\")},e.encodeHTMLEntities=function(e){for(var t=[],n=e.length-1;n>=0;n--)/^[a-z0-9]/i.test(e[n])?t.unshift(e[n]):t.unshift([\"&#\",e.charCodeAt(n),\";\"].join(\"\"));return t.join(\"\")},e.decodeHTMLEntities=function(e){return e.replace(/&#(\\d+);/g,function(e,t){return String.fromCharCode(t)})},e.safeEncodeURIComponent=function(e){return i.isString(e)?encodeURIComponent(e.replace(/[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])/g,\"\").split(\"\").reverse().join(\"\").replace(/[\\uDC00-\\uDFFF](?![\\uD800-\\uDBFF])/g,\"\").split(\"\").reverse().join(\"\")):encodeURIComponent(e)},e.arrayEqual=function(e,t,n){if(void 0===n&&(n=!0),n)return i.isEqual(e,t);var o=[e,t];return i.all(o,function(e){return e.length==o[0].length&&0==i.difference(e,o[0]).length})},e.objectEqual=function(e,t){return i.isEqual(e,t)},e.isCoveoField=function(e){return o.test(e)},e.escapeRegexCharacter=function(e){return e.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g,\"\\\\$&\")},e.getCaseInsensitiveProperty=function(e,t){var n=e[t];if(null==n){var o=t.toLowerCase();if(null==(n=e[o])){var r=i.find(i.keys(e),function(e){return e.toLowerCase()==o});null!=r&&(n=e[r])}}return n},e.getFirstAvailableFieldValue=function(t,n){for(var i=0;i<n.length;i++){var o=e.getFieldValue(t,n[i]);if(void 0!==o)return o}},e.getFieldValue=function(t,n){if(null!=n&&(n=e.trim(n),\"@\"==n[0]&&(n=n.substr(1)),\"\"!=n)){if(!e.isCoveoField(\"@\"+n))throw\"Not a valid field : \"+n;for(var i=n.split(\".\").reverse(),o=t.raw;i.length>1;)if(o=e.getCaseInsensitiveProperty(o,i.pop()),e.isUndefined(o))return;var r=e.getCaseInsensitiveProperty(o,i[0]);return null==r&&(r=e.getCaseInsensitiveProperty(t,n)),r}},e.throttle=function(e,t,n,i,o){void 0===n&&(n={});var r,s=null,a=0,u=function(){a=!1===n.leading?0:(new Date).getTime(),s=null,r=e.apply(i,o)};return function(){var l=(new Date).getTime();a||!1!==n.leading||(a=l);var c=t-(l-a);return i=this,o=arguments,c<=0?(clearTimeout(s),s=null,a=l,r=e.apply(i,o)):s||!1===n.trailing||(s=window.setTimeout(u,c)),r}},e.extendDeep=function(t,n){t||(t={});var o=i.isArray(n),r=o&&[]||{};return o?(t=t||[],r=r.concat(t),i.each(n,function(n,o,s){void 0===t[o]?r[o]=n:\"object\"!=typeof n||i.isElement(n)?-1===t.indexOf(n)&&r.push(n):r[o]=e.extendDeep(t[o],n)})):(t&&\"object\"==typeof t&&!i.isElement(t)&&i.each(i.keys(t),function(e){r[e]=t[e]}),i.each(i.keys(n),function(i){\"object\"==typeof n[i]&&n[i]&&t[i]?r[i]=e.extendDeep(t[i],n[i]):r[i]=n[i]})),r},e.getQueryStringValue=function(e,t){return void 0===t&&(t=window.location.search),t.replace(new RegExp(\"^(?:.*[&\\\\?]\"+e.replace(/[\\.\\+\\*]/g,\"\\\\$&\")+\"(?:\\\\=([^&]*))?)?.*$\",\"i\"),\"$1\")},e.isValidUrl=function(e){return/(ftp|http|https):\\/\\/(\\w+:{0,1}\\w*@)?(\\S+)(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))?/.test(e)},e.debounce=function(e,t){var n,i;return function(){for(var o=this,r=[],s=0;s<arguments.length;s++)r[s]=arguments[s];null==n?(n=window.setTimeout(function(){n=null},t),i=setTimeout(function(){e.apply(o,r),i=null})):null==i&&(clearTimeout(n),n=window.setTimeout(function(){e.apply(o,r),n=null},t))}},e.readCookie=function(e){for(var t=e+\"=\",n=document.cookie.split(\";\"),i=0;i<n.length;i++){for(var o=n[i];\" \"==o.charAt(0);)o=o.substring(1,o.length);if(0==o.indexOf(t))return o.substring(t.length,o.length)}return null},e.toDashCase=function(e){return e.replace(/([a-z][A-Z])/g,function(e){return e[0]+\"-\"+e[1].toLowerCase()})},e.toCamelCase=function(e){return e.replace(/-([a-z])/g,function(e){return e[1].toUpperCase()})},e.parseXml=function(e){if(\"undefined\"!=typeof DOMParser)return(new DOMParser).parseFromString(e,\"text/xml\");if(\"undefined\"!=typeof ActiveXObject&&new ActiveXObject(\"Microsoft.XMLDOM\")){var t=new ActiveXObject(\"Microsoft.XMLDOM\");return t.async=\"false\",t.loadXML(e),t}throw new Error(\"No XML parser found\")},e.copyObject=function(e,t){var n=this;i.each(i.keys(t),function(i){\"object\"==typeof t[i]&&t[i]&&e[i]?n.copyObject(e[i],t[i]):e[i]=t[i]})},e.copyObjectAttributes=function(e,t,n){var o=this;i.each(i.keys(t),function(r){i.contains(n,r)&&(\"object\"==typeof t[r]&&t[r]&&e[r]?o.copyObject(e[r],t[r]):e[r]=t[r])})},e.concatWithoutDuplicate=function(e,t){var n=i.difference(t,e);return n&&n.length>0&&(e=e.concat(n)),e},e.differenceBetweenObjects=function(e,t){var n={},i=function(e,t){for(var i in e)e[i]!==t[i]&&null==n[i]&&(n[i]=e[i])};return i(e,t),i(t,e),n},e.resolveAfter=function(e,t){return new Promise(function(n){return setTimeout(function(){return t?n(t):n()},e)})},e}();t.Utils=r},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(9),r=n(4),s=n(0),a=function(){function e(){}return e.fail=function(t){e.failureHandler(t)},e.check=function(t,n){t||e.fail(n)},e.isUndefined=function(t){e.check(r.Utils.isUndefined(t),\"Value should be undefined.\")},e.isNotUndefined=function(t){e.check(!r.Utils.isUndefined(t),\"Value should not be undefined.\")},e.isNull=function(t){e.check(r.Utils.isNull(t),\"Value should be null.\")},e.isNotNull=function(t){e.check(!r.Utils.isNull(t),\"Value should not be null.\")},e.exists=function(t){e.check(!r.Utils.isNullOrUndefined(t),\"Value should not be null or undefined\")},e.doesNotExists=function(t){e.check(r.Utils.isNullOrUndefined(t),\"Value should be null or undefined\")},e.isString=function(t){e.check(s.isString(t),\"Value should be a string.\")},e.stringStartsWith=function(t,n){e.isNonEmptyString(t),e.isNonEmptyString(n),e.check(0==t.indexOf(n),\"Value should start with \"+n)},e.isNonEmptyString=function(t){e.check(r.Utils.isNonEmptyString(t),\"Value should be a non-empty string.\")},e.isNumber=function(t){e.check(s.isNumber(t),\"Value should be a number.\")},e.isLargerThan=function(t,n){e.check(n>t,\"Value \"+n+\" should be larger than \"+t)},e.isLargerOrEqualsThan=function(t,n){e.check(n>=t,\"Value \"+n+\" should be larger or equal than \"+t)},e.isSmallerThan=function(t,n){e.check(n<t,\"Value \"+n+\" should be smaller than \"+t)},e.isSmallerOrEqualsThan=function(t,n){e.check(n<=t,\"Value \"+n+\" should be smaller or equal than \"+t)},e.logger=new o.Logger(\"Assert\"),e.failureHandler=function(t){throw e.logger.error(\"Assertion Failed!\",t),window.console&&console.trace&&console.trace(),new u(r.Utils.isNonEmptyString(t)?t:\"Assertion Failed!\")},e}();t.Assert=a;var u=function(e){function t(t){var n=e.call(this,t)||this;return n.message=t,n}return i(t,e),t.prototype.toString=function(){return this.message},t}(Error);t.PreconditionFailedException=u},function(e,t,n){\"use strict\";function i(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return o.L10N.format.apply(this,arguments)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(147);t.l=i},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(5),r=n(4),s=n(73),a=n(1),u=n(13),l=n(75),c=n(27),p=n(40),h=n(18),d=n(98),f=n(34),m=n(97),y=n(0),g=n(3),v=function(){function e(e){this.owner=e,o.Assert.exists(e)}return e.doExport=function(){g.exportGlobally({ComponentEvents:e})},e.prototype.on=function(e,t,n){if(s.JQueryUtils.getJQuery()&&s.JQueryUtils.isInstanceOfJQuery(e)){e.on(t,this.wrapToCallIfEnabled(n))}else{var i=e;a.$$(i).on(t,this.wrapToCallIfEnabled(n))}},e.prototype.one=function(e,t,n){if(e instanceof HTMLElement){var i=e;a.$$(i).one(t,this.wrapToCallIfEnabled(n))}else{e.one(t,this.wrapToCallIfEnabled(n))}},e.prototype.onRootElement=function(e,t){this.on(this.owner.root,e,t)},e.prototype.oneRootElement=function(e,t){this.one(this.owner.root,e,t)},e.prototype.onQueryState=function(e,t,n){this.onRootElement(this.getQueryStateEventName(e,t),n)},e.prototype.onComponentOptions=function(e,t,n){this.onRootElement(this.getComponentOptionEventName(e,t),n)},e.prototype.oneQueryState=function(e,t,n){this.oneRootElement(this.getQueryStateEventName(e,t),n)},e.prototype.trigger=function(e,t,n){this.wrapToCallIfEnabled(function(){if(e instanceof HTMLElement){var i=e;a.$$(i).trigger(t,n)}else{e.trigger(t,n)}})(n)},e.prototype.wrapToCallIfEnabled=function(e){var t=this;return function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];if(!t.owner.disabled)return n&&n[0]instanceof CustomEvent?n[0].detail&&(n=[n[0].detail]):n&&s.JQueryUtils.isInstanceOfJqueryEvent(n[0])&&(n=void 0!=n[1]?[n[1]]:n[0].hasOwnProperty(\"originalEvent\")?[n[0].originalEvent]:[]),e.apply(t.owner,n)}},e.prototype.getQueryStateEventName=function(e,t){return this.getModelEvent(this.owner.queryStateModel,e,t)},e.prototype.getComponentOptionEventName=function(e,t){return this.getModelEvent(this.owner.componentOptionsModel,e,t)},e.prototype.getModelEvent=function(e,t,n){return t&&n?e.getEventName(t+n):e.getEventName(t)},e}();t.ComponentEvents=v;var b=function(e){function t(n,i,o){void 0===o&&(o={});var r=e.call(this,n,i)||this;return r.element=n,r.type=i,r.bind=new t.ComponentEventClass(r),r.root=o.root||t.resolveRoot(n),r.queryStateModel=o.queryStateModel||r.resolveQueryStateModel(),r.componentStateModel=o.componentStateModel||r.resolveComponentStateModel(),r.queryController=o.queryController||r.resolveQueryController(),r.searchInterface=o.searchInterface||r.resolveSearchInterface(),r.componentOptionsModel=o.componentOptionsModel||r.resolveComponentOptionsModel(),r.ensureDom=y.once(function(){return r.createDom()}),null!=r.searchInterface&&r.searchInterface.attachComponent(i,r),r.initDebugInfo(),r}return i(t,e),t.prototype.getBindings=function(){return{root:this.root,queryStateModel:this.queryStateModel,queryController:this.queryController,searchInterface:this.searchInterface,componentStateModel:this.componentStateModel,componentOptionsModel:this.componentOptionsModel,usageAnalytics:this.usageAnalytics}},Object.defineProperty(t.prototype,\"usageAnalytics\",{get:function(){return this.resolveUA()},enumerable:!0,configurable:!0}),t.prototype.createDom=function(){},t.prototype.resolveSearchInterface=function(){return t.resolveBinding(this.element,h.SearchInterface)},t.prototype.resolveQueryController=function(){return t.resolveBinding(this.element,p.QueryController)},t.prototype.resolveComponentStateModel=function(){return t.resolveBinding(this.element,l.ComponentStateModel)},t.prototype.resolveQueryStateModel=function(){return t.resolveBinding(this.element,u.QueryStateModel)},t.prototype.resolveComponentOptionsModel=function(){return t.resolveBinding(this.element,c.ComponentOptionsModel)},t.prototype.resolveUA=function(){return this.searchInterface&&this.searchInterface.usageAnalytics?this.searchInterface.usageAnalytics:new d.NoopAnalyticsClient},t.prototype.resolveResult=function(){return t.getResult(this.element)},t.prototype.initDebugInfo=function(){var e=this;a.$$(this.element).on(\"dblclick\",function(t){if(t.altKey){null!=e.debugInfo()&&a.$$(e.root).trigger(m.DebugEvents.showDebugPanel,e.debugInfo())}})},t.get=function(e,n,i){if(o.Assert.exists(e),y.isString(n))return e[t.computeCssClassNameForType(n)];if(r.Utils.exists(n))return o.Assert.exists(n.ID),e[t.computeCssClassNameForType(n.ID)];var s=f.BaseComponent.getBoundComponentsForElement(e);return i||o.Assert.check(s.length<=1,\"More than one component is bound to this element. You need to specify the component type.\"),s[0]},t.getResult=function(e,t){void 0===t&&(t=!1);var n=a.$$(e).closest(\".CoveoResult\");return o.Assert.check(t||void 0!=n),n.CoveoResult},t.bindResultToElement=function(e,t){o.Assert.exists(e),o.Assert.exists(t),a.$$(e).addClass(\"CoveoResult\"),e.CoveoResult=t;var n=s.JQueryUtils.getJQuery();n&&n(e).data(t)},t.resolveRoot=function(e){o.Assert.exists(e);var n=t.resolveBinding(e,h.SearchInterface);return n?n.element:document.body},t.resolveBinding=function(e,n){o.Assert.exists(e),o.Assert.exists(n),o.Assert.exists(n.ID);var i,r=t.computeCssClassNameForType(n.ID);if(a.$$(e).is(\".\"+r))i=e;else{var s=a.$$(e).findClass(r);if(s&&0!==s.length)i=s[0];else{var u=a.$$(e).closest(r);u&&(i=u)}}return i?i[r]:void 0},t.pointElementsToDummyForm=function(e){var t=a.$$(e).is(\"input\")?[e]:[];t=t.concat(a.$$(e).findAll(\"input\")),y.each(y.compact(t),function(e){e.setAttribute(\"form\",\"coveo-dummy-form\")})},t.ComponentEventClass=v,t}(f.BaseComponent);t.Component=b},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(5),r=n(9),s=n(1),a=n(12),u=n(4),l=n(354),c=n(355),p=n(356),h=n(357),d=n(46),f=n(59),m=/([A-Z])|\\W+(\\w)/g,y=/\\s*,\\s*/,g=/([a-zA-Z\\-]+)\\s*:\\s*(([^,]|,\\s*(?!([a-zA-Z\\-]+)\\s*:))+)/g,v=function(){function e(){}return e.buildTemplateOption=function(e){return f.TemplateComponentOptions.buildTemplateOption(e)},e.buildBooleanOption=function(t){return e.buildOption(d.ComponentOptionsType.BOOLEAN,e.loadBooleanOption,t)},e.buildNumberOption=function(t){return e.buildOption(d.ComponentOptionsType.NUMBER,e.loadNumberOption,t)},e.buildStringOption=function(t){return e.buildOption(d.ComponentOptionsType.STRING,e.loadStringOption,t)},e.buildIconOption=function(t){return e.buildOption(d.ComponentOptionsType.ICON,e.loadIconOption,t)},e.buildColorOption=function(t){return e.buildOption(d.ComponentOptionsType.COLOR,e.loadStringOption,t)},e.buildHelperOption=function(t){return e.buildOption(d.ComponentOptionsType.HELPER,e.loadStringOption,t)},e.buildJsonOption=function(t){return e.buildOption(d.ComponentOptionsType.JSON,e.loadJsonObjectOption,t)},e.buildJsonObjectOption=function(t){return e.buildJsonOption(t)},e.buildLocalizedStringOption=function(t){return e.buildOption(d.ComponentOptionsType.LOCALIZED_STRING,e.loadLocalizedStringOption,t)},e.buildFieldOption=function(t){return e.buildOption(d.ComponentOptionsType.FIELD,e.loadFieldOption,t)},e.buildFieldsOption=function(t){return e.buildOption(d.ComponentOptionsType.FIELDS,e.loadFieldsOption,t)},e.buildQueryExpressionOption=function(t){return e.buildOption(d.ComponentOptionsType.QUERY_EXPRESSION,e.loadStringOption,t)},e.buildListOption=function(t){return e.buildOption(d.ComponentOptionsType.LIST,e.loadListOption,t)},e.buildSelectorOption=function(t){return e.buildOption(d.ComponentOptionsType.SELECTOR,e.loadSelectorOption,t)},e.buildChildHtmlElementOption=function(t){return e.buildOption(d.ComponentOptionsType.CHILD_HTML_ELEMENT,e.loadChildHtmlElementOption,t)},e.buildCustomOption=function(t,n){var i=function(n,i,o){var r=e.loadStringOption(n,i,o);if(!u.Utils.isNullOrEmptyString(r))return t(r)};return e.buildOption(d.ComponentOptionsType.STRING,i,n)},e.buildCustomListOption=function(t,n){var i=function(n,i,o){var r=e.loadListOption(n,i,o);return t(r)};return e.buildOption(d.ComponentOptionsType.LIST,i,n)},e.buildObjectOption=function(t){var n=function(n,o,r){for(var s=i.keys(t.subOptions),a={},u={},l=0;l<s.length;l++){var c=s[l],p=e.mergeCamelCase(o,c);a[p]=t.subOptions[c]}e.initOptions(n,a,u,\"\");for(var h={},d=!1,l=0;l<s.length;l++){var c=s[l],p=e.mergeCamelCase(o,c);null!=u[p]&&(h[c]=u[p],d=!0)}return d?h:null};return e.buildOption(d.ComponentOptionsType.OBJECT,n,t)},e.buildFieldConditionOption=function(){return e.buildOption(d.ComponentOptionsType.FIELD,e.loadFieldConditionOption)},e.buildOption=function(e,t,n){void 0===n&&(n={});var i=n;return i.type=e,i.load=t,i},e.attrNameFromName=function(t,n){return n&&n.attrName?n.attrName:t?\"data-\"+e.camelCaseToHyphen(t):t},e.camelCaseToHyphen=function(e){return e.replace(m,\"-$1$2\").toLowerCase()},e.mergeCamelCase=function(e,t){return e+t.substr(0,1).toUpperCase()+t.substr(1)},e.initComponentOptions=function(t,n,i){return e.initOptions(t,n.options,i,n.ID)},e.initOptions=function(e,t,n,o){return void 0===n&&(n={}),u.Utils.isNullOrUndefined(n)&&(n={}),i.each(t,function(t,i){var r=new l.ComponentOptionLoader(e,n,i,t).load();new c.ComponentOptionsMerger(t,{value:r,name:i},n).merge(),new h.ComponentOptionsValidator(t,{componentID:o,name:i,value:r},n).validate()}),new p.ComponentOptionsPostProcessor(t,n,o).postProcess(),n},e.tryLoadFromAttribute=function(e,t,n){var i=n.load;return i?i(e,t,n):null},e.loadStringOption=function(t,n,i){return t.getAttribute(e.attrNameFromName(n,i))||e.getAttributeFromAlias(t,i)},e.loadIconOption=function(t,n,i){var o=e.loadStringOption(t,n,i);return null==o?null:(o=o.replace(\"coveo-sprites-replies\",\"replies\"),o=o.replace(\"coveo-sprites-main-search-active\",\"search\"),u.Utils.isNullOrUndefined(a.SVGIcons.icons[o])?(new r.Logger(t).warn(\"Icon with name \"+o+\" not found.\"),null):o=u.Utils.toCamelCase(o))},e.loadFieldOption=function(t,n,i){var r=e.loadStringOption(t,n,i);return o.Assert.check(!u.Utils.isNonEmptyString(r)||u.Utils.isCoveoField(r),r+\" is not a valid field\"),r},e.loadFieldConditionOption=function(e,t,n){var i=s.Dom.nodeListToArray(e.attributes).filter(function(e){return u.Utils.stringStartsWith(e.nodeName,\"data-condition-field-\")});return 0!=i.length?i.map(function(e){return{field:e.nodeName.replace(\"data-condition-field-not-\",\"\").replace(\"data-condition-field-\",\"\"),values:u.Utils.isNonEmptyString(e.nodeValue)?e.nodeValue.split(/\\s*,\\s*/):null,reverseCondition:0==e.nodeName.indexOf(\"data-condition-field-not-\")}}):void 0},e.loadFieldsOption=function(t,n,r){var s=e.loadStringOption(t,n,r);if(null==s)return null;var a=s.split(y);return i.each(a,function(e){o.Assert.check(u.Utils.isCoveoField(e),e+\" is not a valid field\")}),a},e.loadLocalizedStringOption=function(t,n,o){var r=e.loadStringOption(t,n,o),s=String.locale||String.defaultLocale;if(null!=s&&null!=r){var a=s.toLowerCase().split(\"-\"),u=i.map(a,function(e,t){return a.slice(0,t+1).join(\"-\")}),l=r.match(g);if(null!=l)for(var c=0;c<l.length;c++){var p=g.exec(l[c]);if(null!=p){var h=p[1].toLowerCase();if(i.contains(u,h))return p[2].replace(/^\\s+|\\s+$/g,\"\")}}return null!=r?r.toLocaleString():null}return r},e.loadNumberOption=function(t,n,i){var o=e.loadStringOption(t,n,i);if(null==o)return null;var s=!0===i.float?u.Utils.parseFloatIfNotUndefined(o):u.Utils.parseIntIfNotUndefined(o);return null!=i.min&&i.min>s&&(new r.Logger(t).info(\"Value for option \"+n+\" is less than the possible minimum (Value is \"+s+\", minimum is \"+i.min+\"). It has been forced to its minimum value.\",i),s=i.min),null!=i.max&&i.max<s&&(new r.Logger(t).info(\"Value for option \"+n+\" is higher than the possible maximum (Value is \"+s+\", maximum is \"+i.max+\"). It has been forced to its maximum value.\",i),s=i.max),s},e.loadBooleanOption=function(t,n,i){return u.Utils.parseBooleanIfNotUndefined(e.loadStringOption(t,n,i))},e.loadListOption=function(t,n,i){var o=i.separator||/\\s*,\\s*/,r=e.loadStringOption(t,n,i);return u.Utils.isNonEmptyString(r)?r.split(o):null},e.loadEnumOption=function(t,n,i,o){var r=e.loadStringOption(t,n,i);return null!=r?o[r]:null},e.loadJsonObjectOption=function(t,n,i){var o=e.loadStringOption(t,n,i);if(null==o)return null;try{return JSON.parse(o)}catch(e){return new r.Logger(t).info(\"Value for option \"+n+\" is not a valid JSON string (Value is \"+o+\"). It has been disabled.\",e),null}},e.loadSelectorOption=function(t,n,i,o){void 0===o&&(o=document);var r=e.loadStringOption(t,n,i);return u.Utils.isNonEmptyString(r)?o.querySelector(r):null},e.loadChildHtmlElementOption=function(t,n,i,o){void 0===o&&(o=document);var r,s=i.selectorAttr||e.attrNameFromName(n,i)+\"-selector\",a=t.getAttribute(s)||e.getAttributeFromAlias(t,i);if(null!=a&&(r=o.body.querySelector(a)),null==r){var u=i.childSelector;null==u&&(u=\".\"+n),r=e.loadChildHtmlElementFromSelector(t,u)}return r},e.loadChildHtmlElementFromSelector=function(e,t){return o.Assert.isNonEmptyString(t),s.$$(e).is(t)?e:s.$$(e).find(t)},e.loadChildrenHtmlElementFromSelector=function(e,t){return o.Assert.isNonEmptyString(t),s.$$(e).findAll(t)},e.findParentScrolling=function(t,n){for(void 0===n&&(n=document);t!=n&&null!=t;){if(e.isElementScrollable(t))return\"body\"!==t.tagName.toLowerCase()?t:window;t=t.parentElement}return window},e.isElementScrollable=function(e){var t=s.$$(e).css(\"overflow-y\");return\"scroll\"==t||\"auto\"==t},e.getAttributeFromAlias=function(t,n){if(i.isArray(n.alias)){var o;return i.each(n.alias,function(n){var i=t.getAttribute(e.attrNameFromName(n));i&&(o=i)}),o}return n.alias?t.getAttribute(e.attrNameFromName(n.alias)):void 0},e}();t.ComponentOptions=v},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),window.console||(console={log:function(){},debug:function(){},info:function(){},warn:function(){},error:function(){},assert:function(){},clear:function(){},count:function(){},dir:function(){},dirxml:function(){},group:function(){},groupCollapsed:function(){},groupEnd:function(){},msIsIndependentlyComposed:function(e){},profile:function(){},profileEnd:function(){},select:function(){},time:function(){},timeEnd:function(){},trace:function(){}});var i=function(){function e(e){this.owner=e}return e.prototype.trace=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];e.level<=e.TRACE&&this.log(\"TRACE\",t)},e.prototype.debug=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];e.level<=e.DEBUG&&this.log(\"DEBUG\",t)},e.prototype.info=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];e.level<=e.INFO&&this.log(\"INFO\",t)},e.prototype.warn=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];e.level<=e.WARN&&this.log(\"WARN\",t)},e.prototype.error=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];e.level<=e.ERROR&&this.log(\"ERROR\",t)},e.prototype.log=function(t,n){window.console&&console.log&&(console.error&&\"ERROR\"==t?console.error([t,this.owner].concat(n)):console.info&&\"INFO\"==t?console.info([t,this.owner].concat(n)):console.warn&&\"WARN\"==t?console.warn([t,this.owner].concat(n)):console.log([t,this.owner].concat(n)),e.executionTime&&(console.timeEnd(\"Execution time\"),console.time(\"Execution time\")))},e.enable=function(){e.level=e.TRACE},e.disable=function(){e.level=e.NOTHING},e.TRACE=1,e.DEBUG=2,e.INFO=3,e.WARN=4,e.ERROR=5,e.NOTHING=6,e.level=e.INFO,e.executionTime=!1,e}();t.Logger=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.analyticsActionCauseList={interfaceLoad:{name:\"interfaceLoad\",type:\"interface\"},interfaceChange:{name:\"interfaceChange\",type:\"interface\"},contextRemove:{name:\"contextRemove\",type:\"misc\"},didyoumeanAutomatic:{name:\"didyoumeanAutomatic\",type:\"misc\"},didyoumeanClick:{name:\"didyoumeanClick\",type:\"misc\"},resultsSort:{name:\"resultsSort\",type:\"misc\"},searchboxSubmit:{name:\"searchboxSubmit\",type:\"search box\"},searchboxClear:{name:\"searchboxClear\",type:\"search box\"},searchboxAsYouType:{name:\"searchboxAsYouType\",type:\"search box\"},breadcrumbFacet:{name:\"breadcrumbFacet\",type:\"breadcrumb\"},breadcrumbAdvancedSearch:{name:\"breadcrumbAdvancedSearch\",type:\"breadcrumb\"},breadcrumbResetAll:{name:\"breadcrumbResetAll\",type:\"breadcrumb\"},documentTag:{name:\"documentTag\",type:\"document\"},documentField:{name:\"documentField\",type:\"document\"},documentQuickview:{name:\"documentQuickview\",type:\"document\"},documentOpen:{name:\"documentOpen\",type:\"document\"},omniboxFacetSelect:{name:\"omniboxFacetSelect\",type:\"omnibox\"},omniboxFacetExclude:{name:\"omniboxFacetExclude\",type:\"omnibox\"},omniboxFacetDeselect:{name:\"omniboxFacetDeselect\",type:\"omnibox\"},omniboxFacetUnexclude:{name:\"omniboxFacetUnexclude\",type:\"omnibox\"},omniboxAnalytics:{name:\"omniboxAnalytics\",type:\"omnibox\"},omniboxFromLink:{name:\"omniboxFromLink\",type:\"omnibox\"},omniboxField:{name:\"omniboxField\",type:\"omnibox\"},facetClearAll:{name:\"facetClearAll\",type:\"facet\"},facetSearch:{name:\"facetSearch\",type:\"facet\"},facetToggle:{name:\"facetToggle\",type:\"facet\"},facetRangeSlider:{name:\"facetRangeSlider\",type:\"facet\"},facetRangeGraph:{name:\"facetRangeGraph\",type:\"facet\"},facetSelect:{name:\"facetSelect\",type:\"facet\"},facetSelectAll:{name:\"facetSelectAll\",type:\"facet\"},facetDeselect:{name:\"facetDeselect\",type:\"facet\"},facetExclude:{name:\"facetExclude\",type:\"facet\"},facetUnexclude:{name:\"facetUnexclude\",type:\"facet\"},facetUpdateSort:{name:\"facetUpdateSort\",type:\"facet\"},facetShowMore:{name:\"showMoreFacetResults\",type:\"facet\"},facetShowLess:{name:\"showLessFacetResults\",type:\"facet\"},categoryFacetSelect:{name:\"categoryFacetSelect\",type:\"categoryFacet\"},categoryFacetReload:{name:\"categoryFacetReload\",type:\"categoryFacet\"},categoryFacetClear:{name:\"categoryFacetClear\",type:\"categoryFacet\"},categoryFacetBreadcrumb:{name:\"categoryFacetBreadcrumb\",type:\"categoryFacet\"},categoryFacetSearch:{name:\"categoryFacetSearch\",type:\"categoryFacet\"},dynamicFacetSelect:{name:\"facetSelect\",type:\"dynamicFacet\"},dynamicFacetDeselect:{name:\"facetDeselect\",type:\"dynamicFacet\"},dynamicFacetClearAll:{name:\"facetClearAll\",type:\"dynamicFacet\"},dynamicFacetShowMore:{name:\"showMoreFacetResults\",type:\"dynamicFacet\"},dynamicFacetShowLess:{name:\"showLessFacetResults\",type:\"dynamicFacet\"},errorBack:{name:\"errorBack\",type:\"errors\"},errorClearQuery:{name:\"errorClearQuery\",type:\"errors\"},errorRetry:{name:\"errorRetry\",type:\"errors\"},noResultsBack:{name:\"noResultsBack\",type:\"noResults\"},expandToFullUI:{name:\"expandToFullUI\",type:\"interface\"},caseCreationInputChange:{name:\"inputChange\",type:\"caseCreation\"},caseCreationSubmitButton:{name:\"submitButton\",type:\"caseCreation\"},caseCreationCancelButton:{name:\"cancelButton\",type:\"caseCreation\"},caseCreationUnloadPage:{name:\"unloadPage\",type:\"caseCreation\"},casecontextAdd:{name:\"casecontextAdd\",type:\"casecontext\"},casecontextRemove:{name:\"casecontextRemove\",type:\"casecontext\"},preferencesChange:{name:\"preferencesChange\",type:\"preferences\"},getUserHistory:{name:\"getUserHistory\",type:\"userHistory\"},userActionDocumentClick:{name:\"userActionDocumentClick\",type:\"userHistory\"},caseAttach:{name:\"caseAttach\",type:\"case\"},caseDetach:{name:\"caseDetach\",type:\"case\"},customfiltersChange:{name:\"customfiltersChange\",type:\"customfilters\"},pagerNumber:{name:\"pagerNumber\",type:\"getMoreResults\"},pagerNext:{name:\"pagerNext\",type:\"getMoreResults\"},pagerPrevious:{name:\"pagerPrevious\",type:\"getMoreResults\"},pagerScrolling:{name:\"pagerScrolling\",type:\"getMoreResults\"},pagerResize:{name:\"pagerResize\",type:\"getMoreResults\"},positionSet:{name:\"positionSet\",type:\"distance\"},searchFromLink:{name:\"searchFromLink\",type:\"interface\"},triggerNotify:{name:\"notify\",type:\"queryPipelineTriggers\"},triggerExecute:{name:\"execute\",type:\"queryPipelineTriggers\"},triggerQuery:{name:\"query\",type:\"queryPipelineTriggers\"},triggerRedirect:{name:\"redirect\",type:\"queryPipelineTriggers\"},queryError:{name:\"query\",type:\"errors\"},exportToExcel:{name:\"exportToExcel\",type:\"misc\"},recommendation:{name:\"recommendation\",type:\"recommendation\"},recommendationInterfaceLoad:{name:\"recommendationInterfaceLoad\",type:\"recommendation\"},recommendationOpen:{name:\"recommendationOpen\",type:\"recommendation\"},advancedSearch:{name:\"advancedSearch\",type:\"advancedSearch\"},searchAlertsFollowDocument:{name:\"followDocument\",type:\"searchAlerts\"},searchAlertsFollowQuery:{name:\"followQuery\",type:\"searchAlerts\"},searchAlertsUpdateSubscription:{name:\"updateSubscription\",type:\"searchAlerts\"},searchAlertsDeleteSubscription:{name:\"deleteSubscription\",type:\"searchAlerts\"},searchAlertsUnfollowDocument:{name:\"unfollowDocument\",type:\"searchAlerts\"},searchAlertsUnfollowQuery:{name:\"unfollowQuery\",type:\"searchAlerts\"},simpleFilterSelectValue:{name:\"selectValue\",type:\"simpleFilter\"},simpleFilterDeselectValue:{name:\"deselectValue\",type:\"simpleFilter\"},simpleFilterClearAll:{name:\"selectValue\",type:\"simpleFilter\"},resultsLayoutChange:{name:\"changeResultsLayout\",type:\"resultsLayout\"},foldingShowMore:{name:\"showMoreFoldedResults\",type:\"folding\"},foldingShowLess:{name:\"showLessFoldedResults\",type:\"folding\"},addMissingTerm:{name:\"addMissingTerm\",type:\"missingTerm\"},removeMissingTerm:{name:\"removeMissingTerm\",type:\"missingTerm\"},showQuerySuggestPreview:{name:\"showQuerySuggestPreview\",type:\"querySuggestPreview\"},clickQuerySuggestPreview:{name:\"clickQuerySuggestPreview\",type:\"querySuggestPreview\"}}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.newQuery=\"newQuery\",e.buildingQuery=\"buildingQuery\",e.doneBuildingQuery=\"doneBuildingQuery\",e.duringQuery=\"duringQuery\",e.duringFetchMoreQuery=\"duringFetchMoreQuery\",e.querySuccess=\"querySuccess\",e.fetchMoreSuccess=\"fetchMoreSuccess\",e.deferredQuerySuccess=\"deferredQuerySuccess\",e.queryError=\"queryError\",e.preprocessResults=\"preprocessResults\",e.preprocessMoreResults=\"preprocessMoreResults\",e.noResults=\"noResults\",e.buildingCallOptions=\"buildingCallOptions\",e}();t.QueryEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.icons={search:n(321),more:n(322),loading:n(323),checkboxHookExclusionMore:n(324),arrowUp:n(325),arrowDown:n(326),mainClear:n(327),orAnd:n(328),sort:n(329),ascending:n(330),descending:n(331),dropdownMore:n(332),dropdownLess:n(333),facetCollapse:n(334),facetExpand:n(335),dropdownShareQuery:n(336),dropdownPreferences:n(337),dropdownAuthenticate:n(338),dropdownExport:n(339),dropdownFollowQuery:n(340),quickview:n(341),pagerRightArrow:n(342),pagerLeftArrow:n(343),replies:n(344),video:n(345),coveoLogo:n(346),coveoPoweredBy:n(347),taggingOk:n(348),edit:n(349),star:n(350),listLayout:n(351),cardLayout:n(352),tableLayout:n(353)},e}();t.SVGIcons=i},function(e,t,n){\"use strict\";function i(e,t){if(a.Assert.exists(e),0==t.length||void 0==t[0])return e;if(1==t.length&&l.Utils.isNonEmptyString(t[0]))return e.get(t[0]);if(u.isObject(t[0])){var n=t[0],i=u.extend({customAttribute:!0},t[1]);return e.setMultiple(n,i)}if(t.length>1){var o=t[0],r=t[1],i=u.extend({customAttribute:!0},t[2]);return a.Assert.isNonEmptyString(o),e.set(o,r,i)}}var o=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),r=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(15),a=n(5),u=n(0),l=n(4);t.QUERY_STATE_ATTRIBUTES={Q:\"q\",FIRST:\"first\",T:\"t\",TG:\"tg\",SORT:\"sort\",LAYOUT:\"layout\",HD:\"hd\",HQ:\"hq\",QUICKVIEW:\"quickview\",DEBUG:\"debug\",NUMBER_OF_RESULTS:\"numberOfResults\",MISSING_TERMS:\"missingTerms\"};var c=function(e){function t(n,i){var o=r({},t.defaultAttributes,i);return e.call(this,n,t.ID,o)||this}return o(t,e),t.getFacetId=function(e,t){return void 0===t&&(t=!0),\"f:\"+e+(t?\"\":\":not\")},t.getFacetOperator=function(e){return\"f:\"+e+\":operator\"},t.getFacetLookupValue=function(e){return t.getFacetId(e)+\":lookupvalues\"},t.prototype.atLeastOneFacetIsActive=function(){var e=this;return!u.isUndefined(u.find(this.attributes,function(t,n){return n.match(/^f:/)&&!l.Utils.arrayEqual(e.getDefault(n),t)}))},t.prototype.set=function(t,n,i){this.validate(t,n),e.prototype.set.call(this,t,n,i)},t.prototype.validate=function(e,n){e==t.attributesEnum.first&&(a.Assert.isNumber(n),a.Assert.isLargerOrEqualsThan(0,n))},t.ID=\"state\",t.defaultAttributes={q:\"\",first:0,fv:\"\",t:\"\",hd:\"\",hq:\"\",sort:\"\",layout:\"list\",tg:\"\",quickview:\"\",debug:!1,numberOfResults:10,missingTerms:[]},t.attributesEnum={q:\"q\",first:\"first\",fv:\"fv\",t:\"t\",sort:\"sort\",layout:\"layout\",hd:\"hd\",hq:\"hq\",tg:\"tg\",quickview:\"quickview\",debug:\"debug\",numberOfResults:\"numberOfResults\",missingTerms:\"missingTerms\"},t}(s.Model);t.QueryStateModel=c,t.setState=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(){}return e.addClassToSVGInContainer=function(t,n){var i=t.querySelector(\"svg\");i.setAttribute(\"class\",\"\"+e.getClass(i)+n)},e.removeClassFromSVGInContainer=function(t,n){var i=t.querySelector(\"svg\");i.setAttribute(\"class\",e.getClass(i).replace(n,\"\"))},e.addStyleToSVGInContainer=function(e,t){var n=e.querySelector(\"svg\");i.each(t,function(e,t){n.style[t]=e})},e.getClass=function(e){var t=e.getAttribute(\"class\");return t?t+\" \":\"\"},e}();t.SVGDom=o},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(1),r=n(5),s=n(4),a=n(34),u=n(0);t.MODEL_EVENTS={PREPROCESS:\"preprocess\",CHANGE_ONE:\"change:\",CHANGE:\"change\",RESET:\"reset\",ALL:\"all\"};var l=function(e){function t(t,n,i){var o=e.call(this,t,n)||this;return o.eventNameSpace=n,o.defaultAttributes=s.Utils.extendDeep(o.defaultAttributes,i),o.attributes=i,o.logger.debug(\"Creating model\"),o}return i(t,e),t.prototype.set=function(e,t,n){var i={};i[e]=t,this.setMultiple(i,n)},t.prototype.getAttributes=function(){var e=this,t={};return u.each(this.attributes,function(n,i){u.isObject(n)?s.Utils.objectEqual(n,e.defaultAttributes[i])||(t[i]=s.Utils.extendDeep({},n)):n!=e.defaultAttributes[i]&&(t[i]=n)}),t},t.prototype.setMultiple=function(e,t){var n=this,i=!1;this.preprocessEvent(e),u.each(e,function(e,o){t&&t.customAttribute||n.checkIfAttributeExists(o),e=n.parseToCorrectType(o,e),(t&&!t.validateType||n.typeIsValid(o,e))&&n.checkIfAttributeChanged(o,e)&&(n.attributes[o]=e,i=!0,null!=t&&t.silent||n.attributeHasChangedEvent(o))}),!i||null!=t&&t.silent||(this.attributesHasChangedEvent(),this.anyEvent())},t.prototype.setNewDefault=function(e,t,n){n&&n.customAttribute||this.checkIfAttributeExists(e),this.defaultAttributes[e]=t},t.prototype.setDefault=function(e){this.set(e,this.defaultAttributes[e])},t.prototype.get=function(e){return void 0==e?this.attributes:this.attributes[e]},t.prototype.getDefault=function(e){return void 0==e?this.defaultAttributes:this.defaultAttributes[e]},t.prototype.reset=function(){this.setMultiple(this.defaultAttributes),this.modelWasResetEvent()},t.prototype.registerNewAttribute=function(e,t){this.defaultAttributes[e]=t,this.attributes[e]=t},t.prototype.getEventName=function(e){return this.eventNameSpace+\":\"+e},t.prototype.attributesHasChangedEvent=function(){o.$$(this.element).trigger(this.getEventName(t.eventTypes.change),this.createAttributesChangedArgument())},t.prototype.attributeHasChangedEvent=function(e){o.$$(this.element).trigger(this.getEventName(t.eventTypes.changeOne)+e,this.createAttributeChangedArgument(e))},t.prototype.preprocessEvent=function(e){o.$$(this.element).trigger(this.getEventName(t.eventTypes.preprocess),e)},t.prototype.modelWasResetEvent=function(){o.$$(this.element).trigger(this.getEventName(t.eventTypes.reset),this.createModelChangedArgument())},t.prototype.anyEvent=function(){o.$$(this.element).trigger(this.getEventName(t.eventTypes.all),this.createModelChangedArgument())},t.prototype.createAttributeChangedArgument=function(e){return{attribute:e,value:this.attributes[e]}},t.prototype.createAttributesChangedArgument=function(){return{attributes:this.attributes}},t.prototype.createModelChangedArgument=function(){return{model:this}},t.prototype.checkIfAttributeExists=function(e){r.Assert.check(u.has(this.attributes,e),\"The attribute \"+e+\" is not registered.\")},t.prototype.typeIsValid=function(e,t){return!(!s.Utils.isNullOrUndefined(this.attributes[e])&&!s.Utils.isUndefined(t))||(u.isNumber(this.attributes[e])?this.validateNumber(e,t):u.isBoolean(this.attributes[e])?this.validateBoolean(e,t):this.validateOther(e,t))},t.prototype.validateNumber=function(e,t){return!(!u.isNumber(t)||isNaN(t))||(this.logger.error(\"Non-matching type for \"+e+\". Expected number and got \"+t),!1)},t.prototype.validateBoolean=function(e,t){return!(!u.isBoolean(t)&&void 0!==!s.Utils.parseBooleanIfNotUndefined(t))||(this.logger.error(\"Non matching type for \"+e+\". Expected boolean and got \"+t),!1)},t.prototype.validateOther=function(e,t){return!(!s.Utils.isNullOrUndefined(this.defaultAttributes[e])&&typeof t!=typeof this.defaultAttributes[e])||(this.logger.error(\"Non-matching type for \"+e+\". Expected \"+typeof this.defaultAttributes[e]+\" and got \"+t),!1)},t.prototype.parseToCorrectType=function(e,t){return u.isNumber(this.attributes[e])?parseInt(t,10):u.isBoolean(this.attributes[e])?u.isBoolean(t)?t:s.Utils.parseBooleanIfNotUndefined(t):t},t.prototype.checkIfAttributeChanged=function(e,t){var n=this.attributes[e];return u.isNumber(n)||u.isString(n)||u.isBoolean(n)?n!==t:u.isArray(n)?!s.Utils.arrayEqual(n,t):!u.isObject(n)||!s.Utils.objectEqual(n,t)},t.prototype.debugInfo=function(){return null},t.eventTypes={preprocess:\"preprocess\",changeOne:\"change:\",change:\"change\",reset:\"reset\",all:\"all\"},t}(a.BaseComponent);t.Model=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.beforeInitialization=\"beforeInitialization\",e.afterComponentsInitialization=\"afterComponentsInitialization\",e.restoreHistoryState=\"restoreHistoryState\",e.afterInitialization=\"afterInitialization\",e.nuke=\"nuke\",e}();t.InitializationEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(9),o=n(25),r=n(1);n(422);var s=function(){function e(){this.logger=new i.Logger(this)}return e.prototype.withOwner=function(e){return this.eventOwner=e,this},e.prototype.withElement=function(e){return e instanceof HTMLElement?this.element=r.$$(e):this.element=e,this},e.prototype.withLabel=function(e){return this.label=e,this},e.prototype.withTitle=function(e){return this.title=e,this},e.prototype.withSelectAction=function(e){return this.clickAction=e,this.enterKeyboardAction=e,this},e.prototype.withClickAction=function(e){return this.clickAction=e,this},e.prototype.withEnterKeyboardAction=function(e){return this.enterKeyboardAction=e,this},e.prototype.withFocusAndMouseEnterAction=function(e){return this.focusAction=e,this.mouseenterAction=e,this},e.prototype.withFocusAction=function(e){return this.focusAction=e,this},e.prototype.withMouseEnterAction=function(e){return this.mouseenterAction=e,this},e.prototype.withBlurAndMouseLeaveAction=function(e){return this.mouseleaveAction=e,this.blurAction=e,this},e.prototype.withMouseLeaveAction=function(e){return this.mouseleaveAction=e,this},e.prototype.withBlurAction=function(e){return this.blurAction=e,this},e.prototype.build=function(){return this.element||(this.element=r.$$(\"div\")),this.ensureCorrectRole(),this.ensureCorrectLabel(),this.ensureTitle(),this.ensureSelectAction(),this.ensureUnselectAction(),this.ensureMouseenterAndFocusAction(),this.ensureMouseleaveAndBlurAction(),this.ensureDifferentiationBetweenKeyboardAndMouseFocus(),this},e.prototype.ensureDifferentiationBetweenKeyboardAndMouseFocus=function(){var e=this;r.$$(this.element).addClass(\"coveo-accessible-button\"),r.$$(this.element).on(\"mouseup\",function(){return r.$$(e.element).addClass(\"coveo-accessible-button-pressed\")}),r.$$(this.element).on(\"focus\",function(){r.$$(e.element).removeClass(\"coveo-accessible-button-pressed\")})},e.prototype.ensureCorrectRole=function(){this.element.getAttribute(\"role\")||this.element.setAttribute(\"role\",\"button\")},e.prototype.ensureCorrectLabel=function(){if(!this.label)return void this.logger.error(\"Missing label to create an accessible button !\");this.element.setAttribute(\"aria-label\",this.label)},e.prototype.ensureTitle=function(){this.title&&this.element.setAttribute(\"title\",this.title)},e.prototype.ensureTabIndex=function(){this.element.setAttribute(\"tabindex\",\"0\")},e.prototype.ensureSelectAction=function(){var e=this;this.enterKeyboardAction&&(this.ensureTabIndex(),this.bindEvent(\"keyup\",o.KeyboardUtils.keypressAction(o.KEYBOARD.ENTER,function(t){return e.enterKeyboardAction(t)})),this.bindEvent(\"keydown\",o.KeyboardUtils.keypressAction(o.KEYBOARD.SPACEBAR,function(e){e.preventDefault()})),this.bindEvent(\"keyup\",o.KeyboardUtils.keypressAction(o.KEYBOARD.SPACEBAR,function(t){e.enterKeyboardAction(t)}))),this.clickAction&&this.bindEvent(\"click\",this.clickAction)},e.prototype.ensureUnselectAction=function(){this.blurAction&&this.bindEvent(\"blur\",this.blurAction),this.mouseleaveAction&&this.bindEvent(\"mouseleave\",this.mouseleaveAction)},e.prototype.ensureMouseenterAndFocusAction=function(){this.mouseenterAction&&this.bindEvent(\"mouseenter\",this.mouseenterAction),this.focusAction&&this.bindEvent(\"focus\",this.focusAction)},e.prototype.ensureMouseleaveAndBlurAction=function(){this.mouseleaveAction&&this.bindEvent(\"mouseleave\",this.mouseleaveAction),this.blurAction&&this.bindEvent(\"blur\",this.blurAction)},e.prototype.bindEvent=function(e,t){this.eventOwner?this.eventOwner.on(this.element,e,t):r.$$(this.element).on(e,t)},e}();t.AccessibleButton=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(310);n(313),n(314),n(315),n(316);var s=n(0),a=n(149),u=n(150),l=n(317),c=n(40),p=n(16),h=n(11),d=n(92),f=n(5),m=n(318),y=n(27),g=n(75),v=n(15),b=n(13),C=n(50),S=n(1),w=n(47),x=n(4),_=n(10),O=n(98),E=n(319),A=n(34),T=n(8),R=n(172),F=n(41),I=n(153),M=n(196),P=n(419),D=n(51),$=n(420),N=n(421),V=n(49),k=function(e){function t(n,i,o,r){void 0===r&&(r=window);var s=e.call(this,n,t.ID)||this;s.element=n,s.options=i,s.analyticsOptions=o,s._window=r,s.isResultsPerPageModifiedByPipeline=!1,s.options=T.ComponentOptions.initComponentOptions(n,t,i),f.Assert.exists(n),f.Assert.exists(s.options),s.root=n,s.setupQueryMode(),s.queryStateModel=new b.QueryStateModel(n),s.componentStateModel=new g.ComponentStateModel(n),s.componentOptionsModel=new y.ComponentOptionsModel(n),s.usageAnalytics=s.initializeAnalytics(),s.queryController=new c.QueryController(n,s.options,s.usageAnalytics,s),s.facetValueStateHandler=new N.FacetValueStateHandler(s.element),new m.SentryLogger(s.queryController);var a={element:s.element,queryStateModel:s.queryStateModel,queryController:s.queryController,usageAnalytics:s.usageAnalytics};return new M.MissingTermManager(a),s.omniboxAnalytics=new P.OmniboxAnalytics,s.setupEventsHandlers(),s.setupHistoryManager(n,r),s.element.style.display=n.style.display||\"block\",s.setupDebugInfo(),s.setupResponsiveComponents(),s.ariaLive=new E.AriaLive(n),s}return i(t,e),Object.defineProperty(t.prototype,\"resultsPerPage\",{get:function(){return null!=this.queryPipelineConfigurationForResultsPerPage&&0!=this.queryPipelineConfigurationForResultsPerPage?this.queryPipelineConfigurationForResultsPerPage:null!=this.queryController.options.resultsPerPage&&0!=this.queryController.options.resultsPerPage?this.queryController.options.resultsPerPage:(this.logger.warn(\"Results per page is incoherent in the search interface.\",this),10)},set:function(e){this.options.resultsPerPage=this.queryController.options.resultsPerPage=e},enumerable:!0,configurable:!0}),t.prototype.getOmniboxAnalytics=function(){return this.omniboxAnalytics},t.prototype.attachComponent=function(e,t){this.getComponents(e).push(t)},t.prototype.detachComponent=function(e,t){var n=this.getComponents(e),i=s.indexOf(n,t);i>-1&&n.splice(i,1)},t.prototype.getBindings=function(){return{root:this.root,queryStateModel:this.queryStateModel,queryController:this.queryController,searchInterface:this,componentStateModel:this.componentStateModel,componentOptionsModel:this.componentOptionsModel,usageAnalytics:this.usageAnalytics}},t.prototype.getQueryContext=function(){var e,t=this.queryController.getLastQuery();if(t.context)e=t.context;else{var n=this.getComponents(\"PipelineContext\");if(n&&!s.isEmpty(n)){var i=s.chain(n).map(function(e){return e.getContext()}).reduce(function(e,t){return o({},e,t)},{}).value();s.isEmpty(i)||(e=i)}}return e},t.prototype.getComponents=function(e){return null==this.attachedComponents&&(this.attachedComponents={}),e in this.attachedComponents||(this.attachedComponents[e]=[]),this.attachedComponents[e]},t.prototype.detachComponentsInside=function(e){var t=this;s.each(this.attachedComponents,function(n,i){n.filter(function(t){return e!=t.element&&e.contains(t.element)}).forEach(function(e){return t.detachComponent(i,e)})})},t.prototype.initializeAnalytics=function(){var e=A.BaseComponent.getComponentRef(\"Analytics\");return e?e.create(this.element,this.analyticsOptions,this.getBindings()):new O.NoopAnalyticsClient},t.prototype.setupHistoryManager=function(e,t){var n=this;return this.options.enableHistory?this.options.useLocalStorageForHistory?void(this.historyManager=new u.LocalStorageHistoryController(e,t,this.queryStateModel,this.queryController)):void(this.historyManager=new a.HistoryController(e,t,this.queryStateModel,this.queryController)):(this.historyManager=new l.NoopHistoryController,void S.$$(this.element).on(p.InitializationEvents.restoreHistoryState,function(){return n.queryStateModel.setMultiple(o({},n.queryStateModel.defaultAttributes))}))},t.prototype.setupQueryMode=function(){this.options.allowQueriesWithoutKeywords?this.initializeEmptyQueryAllowed():this.initializeEmptyQueryNotAllowed()},t.prototype.setupEventsHandlers=function(){var e=this,t=this.queryStateModel.getEventName(v.Model.eventTypes.preprocess);S.$$(this.element).on(t,function(t,n){return e.handlePreprocessQueryStateModel(n)}),S.$$(this.element).on(h.QueryEvents.buildingQuery,function(t,n){return e.handleBuildingQuery(n)}),S.$$(this.element).on(h.QueryEvents.querySuccess,function(t,n){return e.handleQuerySuccess(n)}),S.$$(this.element).on(h.QueryEvents.queryError,function(t,n){return e.handleQueryError(n)}),S.$$(this.element).on(p.InitializationEvents.afterComponentsInitialization,function(){return e.handleAfterComponentsInitialization()});var n=this.queryStateModel.getEventName(v.Model.eventTypes.changeOne+b.QueryStateModel.attributesEnum.debug);S.$$(this.element).on(n,function(t,n){return e.handleDebugModeChange(n)}),this.queryStateModel.registerNewAttribute(b.QueryStateModel.attributesEnum.fv,{});var i=this.queryStateModel.getEventName(v.Model.eventTypes.changeOne+b.QueryStateModel.attributesEnum.quickview);S.$$(this.element).on(i,function(t,n){return e.handleQuickviewChanged(n)})},t.prototype.setupDebugInfo=function(){var e=this;this.options.enableDebugInfo&&setTimeout(function(){return new I.Debug(e.element,e.getBindings())})},t.prototype.setupResponsiveComponents=function(){this.responsiveComponents=new D.ResponsiveComponents,this.responsiveComponents.setMediumScreenWidth(this.options.responsiveMediumBreakpoint),this.responsiveComponents.setSmallScreenWidth(this.options.responsiveSmallBreakpoint),this.responsiveComponents.setResponsiveMode(this.options.responsiveMode)},t.prototype.handleDebugModeChange=function(e){var t=this;e.value&&!this.relevanceInspector&&this.options.enableDebugInfo&&n.e(0).then(function(){var e=n(223),i=e.RelevanceInspector,o=S.$$(\"btn\");S.$$(t.element).prepend(o.el),t.relevanceInspector=new i(o.el,t.getBindings())}.bind(null,n)).catch(null)},t.prototype.handlePreprocessQueryStateModel=function(e){var t=this.queryStateModel.get(b.QueryStateModel.attributesEnum.tg),n=this.queryStateModel.get(b.QueryStateModel.attributesEnum.t),i=t,o=n;e&&void 0!==e.tg&&(e.tg=this.getTabGroupId(e.tg),i!=e.tg&&(e.t=e.t||b.QueryStateModel.defaultAttributes.t,e.sort=e.sort||b.QueryStateModel.defaultAttributes.sort,i=e.tg)),e&&void 0!==e.t&&(e.t=this.getTabId(i,e.t),o!=e.t&&(e.sort=e.sort||b.QueryStateModel.defaultAttributes.sort,o=e.t)),e&&void 0!==e.sort&&(e.sort=this.getSort(o,e.sort)),e&&void 0!==e.quickview&&(e.quickview=this.getQuickview(e.quickview)),!e||!e.fv||this instanceof L||this.facetValueStateHandler.handleFacetValueState(e)},t.prototype.getTabGroupId=function(e){var t=A.BaseComponent.getComponentRef(\"TabGroup\");if(t){var n=this.getComponents(t.ID);if(e!=b.QueryStateModel.defaultAttributes.tg&&s.any(n,function(t){return!t.disabled&&e==t.options.id}))return e;if(n.length>0)return n[0].options.id}return b.QueryStateModel.defaultAttributes.tg},t.prototype.getTabId=function(e,t){var n=A.BaseComponent.getComponentRef(\"Tab\"),i=A.BaseComponent.getComponentRef(\"TabGroup\");if(n){var o=this.getComponents(n.ID);if(i&&e!=b.QueryStateModel.defaultAttributes.tg){var r=this.getComponents(i.ID),a=s.find(r,function(t){return e==t.options.id});if(t!=b.QueryStateModel.defaultAttributes.t&&s.any(o,function(e){return t==e.options.id&&a.isElementIncludedInTabGroup(e.element)}))return t;var u=s.find(o,function(e){return a.isElementIncludedInTabGroup(e.element)});return null!=u?u.options.id:b.QueryStateModel.defaultAttributes.t}if(t!=b.QueryStateModel.defaultAttributes.t&&s.any(o,function(e){return t==e.options.id}))return t;if(o.length>0)return o[0].options.id}return b.QueryStateModel.defaultAttributes.t},t.prototype.getSort=function(e,t){var n=A.BaseComponent.getComponentRef(\"Sort\");if(n){var i=this.getComponents(n.ID),o=A.BaseComponent.getComponentRef(\"Tab\");if(o&&e!=b.QueryStateModel.defaultAttributes.t){var r=this.getComponents(o.ID),a=s.find(r,function(t){return e==t.options.id}),u=a.options.sort;if(t!=b.QueryStateModel.defaultAttributes.sort&&s.any(i,function(e){return a.isElementIncludedInTab(e.element)&&e.match(t)}))return t;if(null!=u)return u.toString();var l=s.find(i,function(e){return a.isElementIncludedInTab(e.element)});return null!=l?l.options.sortCriteria[0].toString():b.QueryStateModel.defaultAttributes.sort}if(t!=b.QueryStateModel.defaultAttributes.sort&&s.any(i,function(e){return e.match(t)}))return t;if(i.length>0)return i[0].options.sortCriteria[0].toString()}return b.QueryStateModel.defaultAttributes.sort},t.prototype.getQuickview=function(e){var t=A.BaseComponent.getComponentRef(\"Quickview\");if(t){var n=this.getComponents(t.ID);if(s.any(n,function(t){return t.getHashId()==e}))return e}return b.QueryStateModel.defaultAttributes.quickview},t.prototype.handleQuickviewChanged=function(e){var t=A.BaseComponent.getComponentRef(\"Quickview\");if(t){var n=this.getComponents(t.ID);if(\"\"!=e.value){var i=s.partition(n,function(t){return t.getHashId()==e.value});0!=i[0].length&&(s.first(i[0]).open(),s.each(s.tail(i[0]),function(e){return e.close()})),s.each(i[1],function(e){return e.close()})}else s.each(n,function(e){e.close()})}},t.prototype.handleBuildingQuery=function(e){this.options.enableDuplicateFiltering&&(e.queryBuilder.enableDuplicateFiltering=!0),x.Utils.isNullOrUndefined(this.options.pipeline)||(e.queryBuilder.pipeline=this.options.pipeline),x.Utils.isNullOrUndefined(this.options.maximumAge)||(e.queryBuilder.maximumAge=this.options.maximumAge),x.Utils.isNullOrUndefined(this.options.resultsPerPage)||(e.queryBuilder.numberOfResults=this.options.resultsPerPage),x.Utils.isNullOrUndefined(this.options.excerptLength)||(e.queryBuilder.excerptLength=this.options.excerptLength),x.Utils.isNonEmptyString(this.options.expression)&&e.queryBuilder.constantExpression.add(this.options.expression),x.Utils.isNonEmptyString(this.options.filterField)&&(e.queryBuilder.filterField=this.options.filterField),x.Utils.isNonEmptyString(this.options.timezone)&&(e.queryBuilder.timezone=this.options.timezone),e.queryBuilder.enableCollaborativeRating=this.options.enableCollaborativeRating,e.queryBuilder.enableDuplicateFiltering=this.options.enableDuplicateFiltering,e.queryBuilder.allowQueriesWithoutKeywords=this.options.allowQueriesWithoutKeywords;var t=this.queryController.getEndpoint();null!=t&&t.options&&this.queryStateModel.get(b.QueryStateModel.attributesEnum.debug)&&(e.queryBuilder.maximumAge=0,e.queryBuilder.enableDebug=!0,e.queryBuilder.fieldsToExclude=[\"allmetadatavalues\"],e.queryBuilder.fieldsToInclude=null)},t.prototype.handleQuerySuccess=function(e){var t=0==e.results.results.length;this.toggleSectionState(\"coveo-no-results\",t),this.handlePossiblyModifiedNumberOfResultsInQueryPipeline(e);var n=S.$$(this.element).find(\".coveo-results-header\");n&&S.$$(n).removeClass(\"coveo-query-error\")},t.prototype.handlePossiblyModifiedNumberOfResultsInQueryPipeline=function(e){if(e&&e.query&&e.results){var t=e.query.numberOfResults,n=e.results.results.length,i=e.results.totalCountFiltered-e.query.firstResult===n,o=!i&&e.results.totalCountFiltered>n;t!=n&&o?(this.isResultsPerPageModifiedByPipeline=!0,this.queryPipelineConfigurationForResultsPerPage=n):(this.isResultsPerPageModifiedByPipeline=!1,this.queryPipelineConfigurationForResultsPerPage=null)}},t.prototype.handleQueryError=function(e){this.toggleSectionState(\"coveo-no-results\");var t=S.$$(this.element).find(\".coveo-results-header\");t&&S.$$(t).addClass(\"coveo-query-error\")},t.prototype.handleAfterComponentsInitialization=function(){var e=this;s.each(this.attachedComponents,function(t){t.forEach(function(t){$.FacetColumnAutoLayoutAdjustment.isAutoLayoutAdjustable(t)&&$.FacetColumnAutoLayoutAdjustment.initializeAutoLayoutAdjustment(e.element,t)})}),this.duplicatesFacets.length&&this.logger.warn(\"The following facets have duplicate id/field:\",this.duplicatesFacets,\"Ensure that each facet in your search interface has a unique id.\")},Object.defineProperty(t.prototype,\"duplicatesFacets\",{get:function(){var e=[],t=V.ComponentsTypes.getAllFacetsInstance(this.root);return t.forEach(function(n){t.forEach(function(t){if(n!=t)return n.options.id===t.options.id?void e.push(n):void 0})}),e},enumerable:!0,configurable:!0}),t.prototype.toggleSectionState=function(e,t){var n=this;void 0===t&&(t=!0);var i=S.$$(this.element).find(\".coveo-facet-column\"),o=S.$$(this.element).find(\".coveo-results-column\"),r=S.$$(this.element).find(\".coveo-results-header\"),a=S.$$(this.element).findAll(\".coveo-facet-search-results\"),u=S.$$(this.element).find(\".coveo-recommendation-main-section\");i&&S.$$(i).toggleClass(e,t&&!this.queryStateModel.atLeastOneFacetIsActive()),o&&S.$$(o).toggleClass(e,t&&!this.queryStateModel.atLeastOneFacetIsActive()),r&&S.$$(r).toggleClass(e,t&&!this.queryStateModel.atLeastOneFacetIsActive()),u&&S.$$(u).toggleClass(e,t),a&&a.length>0&&s.each(a,function(i){S.$$(i).toggleClass(e,t&&!n.queryStateModel.atLeastOneFacetIsActive())})},t.prototype.initializeEmptyQueryAllowed=function(){new R.InitializationPlaceholder(this.element).withFullInitializationStyling().withAllPlaceholders()},t.prototype.initializeEmptyQueryNotAllowed=function(){var e=this,t=new R.InitializationPlaceholder(this.element).withEventToRemovePlaceholder(h.QueryEvents.newQuery).withFullInitializationStyling().withHiddenRootElement().withPlaceholderForFacets().withPlaceholderForResultList();S.$$(this.root).on(p.InitializationEvents.restoreHistoryState,function(){t.withVisibleRootElement(),\"\"==e.queryStateModel.get(\"q\")&&t.withWaitingForFirstQueryMode()}),S.$$(this.element).on(h.QueryEvents.doneBuildingQuery,function(t,n){if(!n.queryBuilder.containsEndUserKeywords()){var i=e.queryController.getLastQuery().q;x.Utils.isNonEmptyString(i)?(e.queryStateModel.set(b.QUERY_STATE_ATTRIBUTES.Q,i),n.queryBuilder.expression.add(i)):(e.logger.info(\"Query cancelled by the Search Interface\",\"Configuration does not allow empty query\",e,e.options),n.cancel=!0,e.queryStateModel.reset(),new R.InitializationPlaceholder(e.element).withEventToRemovePlaceholder(h.QueryEvents.newQuery).withFullInitializationStyling().withVisibleRootElement().withPlaceholderForFacets().withPlaceholderForResultList().withWaitingForFirstQueryMode())}})},t.ID=\"SearchInterface\",t.options={enableHistory:T.ComponentOptions.buildBooleanOption({defaultValue:!1}),enableAutomaticResponsiveMode:T.ComponentOptions.buildBooleanOption({defaultValue:!0}),useLocalStorageForHistory:T.ComponentOptions.buildBooleanOption({defaultValue:!1}),resultsPerPage:T.ComponentOptions.buildNumberOption({defaultValue:10,min:0}),excerptLength:T.ComponentOptions.buildNumberOption({defaultValue:200,min:0}),expression:T.ComponentOptions.buildQueryExpressionOption({defaultValue:\"\"}),filterField:T.ComponentOptions.buildFieldOption({defaultValue:\"\"}),hideUntilFirstQuery:T.ComponentOptions.buildBooleanOption({deprecated:\"Exposed for legacy reasons. The loading animation is now composed of placeholders, and this option is obsolete.\"}),firstLoadingAnimation:T.ComponentOptions.buildChildHtmlElementOption({deprecated:\"Exposed for legacy reasons. The loading animation is now composed of placeholder, and this options is obsolete.\"}),autoTriggerQuery:T.ComponentOptions.buildBooleanOption({defaultValue:!0}),allowQueriesWithoutKeywords:T.ComponentOptions.buildBooleanOption({defaultValue:!0}),endpoint:T.ComponentOptions.buildCustomOption(function(e){return null!=e&&e in C.SearchEndpoint.endpoints?C.SearchEndpoint.endpoints[e]:null},{defaultFunction:function(){return C.SearchEndpoint.endpoints.default}}),timezone:T.ComponentOptions.buildStringOption({defaultFunction:function(){return r.determine().name()}}),enableDebugInfo:T.ComponentOptions.buildBooleanOption({defaultValue:!0}),enableCollaborativeRating:T.ComponentOptions.buildBooleanOption({defaultValue:!1}),enableDuplicateFiltering:T.ComponentOptions.buildBooleanOption({defaultValue:!1}),pipeline:T.ComponentOptions.buildStringOption(),maximumAge:T.ComponentOptions.buildNumberOption(),searchPageUri:T.ComponentOptions.buildStringOption(),responsiveMediumBreakpoint:T.ComponentOptions.buildNumberOption({defaultValue:D.MEDIUM_SCREEN_WIDTH,depend:\"enableAutomaticResponsiveMode\"}),responsiveSmallBreakpoint:T.ComponentOptions.buildNumberOption({defaultValue:D.SMALL_SCREEN_WIDTH,depend:\"enableAutomaticResponsiveMode\"}),responsiveMode:T.ComponentOptions.buildCustomOption(function(e){return\"auto\"===e||\"small\"===e||\"medium\"===e||\"large\"===e?e:(console.warn(e+\" is not a proper value for responsiveMode, auto has been used instead.\"),\"auto\")},{defaultValue:\"auto\"})},t.SMALL_INTERFACE_CLASS_NAME=\"coveo-small-search-interface\",t}(F.RootComponent);t.SearchInterface=k;var L=function(e){function t(n,i,o,r){void 0===r&&(r=window);var s=e.call(this,n,T.ComponentOptions.initComponentOptions(n,t,i),o,r)||this;return s.element=n,s.options=i,s.analyticsOptions=o,s._window=r,S.$$(s.root).on(h.QueryEvents.newQuery,function(e,t){return s.handleRedirect(e,t)}),s}return i(t,e),t.prototype.handleRedirect=function(e,t){if(!1!==t.shouldRedirectStandaloneSearchbox){var n={searchPageUri:this.options.searchPageUri,cancel:!1};S.$$(this.root).trigger(d.StandaloneSearchInterfaceEvents.beforeRedirect,n),n.cancel||(t.cancel=!0,this.searchboxIsEmpty()&&!this.options.redirectIfEmpty||this.redirectToSearchPage(n.searchPageUri))}},t.prototype.redirectToSearchPage=function(e){var t=this,n=this.queryStateModel.getAttributes(),i=this.usageAnalytics.getCurrentEventCause();null!=i&&(i==_.analyticsActionCauseList.searchboxSubmit.name&&(i=_.analyticsActionCauseList.searchFromLink.name),n.firstQueryCause=i);var o=this.usageAnalytics.getCurrentEventMeta();null==o||s.isEmpty(o)||(n.firstQueryMeta=o);var r=document.createElement(\"a\");r.href=e,r.href=r.href;var a=0==r.pathname.indexOf(\"/\")?r.pathname:\"/\"+r.pathname,u=r.hash?r.hash+\"&\":\"#\";setTimeout(function(){t._window.location.href=r.protocol+\"//\"+r.host+a+r.search+u+w.HashUtils.encodeValues(n)},0)},t.prototype.searchboxIsEmpty=function(){return x.Utils.isEmptyString(this.queryStateModel.get(b.QueryStateModel.attributesEnum.q))},t.ID=\"StandaloneSearchInterface\",t.options={redirectIfEmpty:T.ComponentOptions.buildBooleanOption({defaultValue:!0})},t}(k);t.StandaloneSearchInterface=L},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=n(1),r=n(9),s=n(358),a=n(0),u=function(){function e(){}return e.javascriptEncode=function(e){return i.Assert.isString(e),e=e.replace(/\\\\/g,\"\\\\\\\\\"),e=e.replace(/'/g,\"\\\\'\"),e=e.replace(/\"/g,'\\\\\"')},e.htmlEncode=function(e){i.Assert.isString(e);var t=o.$$(\"div\");return t.text(e),t.el.innerHTML},e.splice=function(e,t,n,i){return e.slice(0,t)+i+e.slice(t+Math.abs(n))},e.removeMiddle=function(t,n,i){if(t.length<n)return t;var o=t.length-n,r=Math.floor(n/2);return e.splice(t,r,o,i)},e.regexEncode=function(e){return i.Assert.isString(e),e.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g,\"\\\\$&\")},e.stringToRegex=function(t,n){void 0===n&&(n=!1),i.Assert.isString(t);var o=e.regexEncode(t);return n?a.map(o,function(t){var n=a.find(e.accented,function(e){return null!=t.match(e)});return n?n.source:t}).join(\"\"):o},e.wildcardsToRegex=function(t,n){void 0===n&&(n=!1),i.Assert.isString(t);var o=e.stringToRegex(t,n);return o=o.replace(/\\\\\\*/,\".*\"),o=o.replace(/\\\\\\?/,\".\")},e.getHighlights=function(e,t,n){for(var i,o=[];i=t.exec(e);){var r=i[2],s=i[1],u=i.index+s.length;if(o.push({offset:u,length:r.length,dataHighlightGroupTerm:n}),!t.global)break}return a.isEmpty(o)?void 0:o},e.encodeCarriageReturn=function(e){return i.Assert.isString(e),e.replace(/\\n/g,\"<br/>\")},e.equalsCaseInsensitive=function(e,t){return e.toLowerCase()==t.toLowerCase()},e.match=function(e,t){for(var n,i=[];null!==(n=t.exec(e));)i.push(n);return i},e.hashCode=function(e){for(var t=0,n=e.length,i=0;i<n;i++){t=(t<<5)-t+e.charCodeAt(i),t&=t}return t.toString(16)},e.latinize=function(e){return s(e)},e.capitalizeFirstLetter=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},e.buildStringTemplateFromResult=function(t,n){var i=this;return t?t.replace(/\\$\\{(.*?)\\}/g,function(t){var o=t.substring(2,t.length-1),s=e.readFromObject(n,o);return s||(s=e.readFromObject(window,o)),s||new r.Logger(i).warn(o+\" used in the ResultLink template is undefined for this result: \"+n.title),s||t}):\"\"},e.readFromObject=function(e,t){var n=t.indexOf(\".\");if(e&&-1!==n){var i=t.substring(n+1);return t=t.substring(0,n),this.readFromObject(e[t],i)}return e?e[t]:void 0},e.accented={A:/[Aa\\xaa\\xc0-\\xc5\\xe0-\\xe5\\u0100-\\u0105\\u01cd\\u01ce\\u0200-\\u0203\\u0226\\u0227\\u1d2c\\u1d43\\u1e00\\u1e01\\u1e9a\\u1ea0-\\u1ea3\\u2090\\u2100\\u2101\\u213b\\u249c\\u24b6\\u24d0\\u3371-\\u3374\\u3380-\\u3384\\u3388\\u3389\\u33a9-\\u33af\\u33c2\\u33ca\\u33df\\u33ff\\uff21\\uff41]/g,B:/[Bb\\u1d2e\\u1d47\\u1e02-\\u1e07\\u212c\\u249d\\u24b7\\u24d1\\u3374\\u3385-\\u3387\\u33c3\\u33c8\\u33d4\\u33dd\\uff22\\uff42]/g,C:/[Cc\\xc7\\xe7\\u0106-\\u010d\\u1d9c\\u2100\\u2102\\u2103\\u2105\\u2106\\u212d\\u216d\\u217d\\u249e\\u24b8\\u24d2\\u3376\\u3388\\u3389\\u339d\\u33a0\\u33a4\\u33c4-\\u33c7\\uff23\\uff43]/g,D:/[Dd\\u010e\\u010f\\u01c4-\\u01c6\\u01f1-\\u01f3\\u1d30\\u1d48\\u1e0a-\\u1e13\\u2145\\u2146\\u216e\\u217e\\u249f\\u24b9\\u24d3\\u32cf\\u3372\\u3377-\\u3379\\u3397\\u33ad-\\u33af\\u33c5\\u33c8\\uff24\\uff44]/g,E:/[Ee\\xc8-\\xcb\\xe8-\\xeb\\u0112-\\u011b\\u0204-\\u0207\\u0228\\u0229\\u1d31\\u1d49\\u1e18-\\u1e1b\\u1eb8-\\u1ebd\\u2091\\u2121\\u212f\\u2130\\u2147\\u24a0\\u24ba\\u24d4\\u3250\\u32cd\\u32ce\\uff25\\uff45]/g,F:/[Ff\\u1da0\\u1e1e\\u1e1f\\u2109\\u2131\\u213b\\u24a1\\u24bb\\u24d5\\u338a-\\u338c\\u3399\\ufb00-\\ufb04\\uff26\\uff46]/g,G:/[Gg\\u011c-\\u0123\\u01e6\\u01e7\\u01f4\\u01f5\\u1d33\\u1d4d\\u1e20\\u1e21\\u210a\\u24a2\\u24bc\\u24d6\\u32cc\\u32cd\\u3387\\u338d-\\u338f\\u3393\\u33ac\\u33c6\\u33c9\\u33d2\\u33ff\\uff27\\uff47]/g,H:/[Hh\\u0124\\u0125\\u021e\\u021f\\u02b0\\u1d34\\u1e22-\\u1e2b\\u1e96\\u210b-\\u210e\\u24a3\\u24bd\\u24d7\\u32cc\\u3371\\u3390-\\u3394\\u33ca\\u33cb\\u33d7\\uff28\\uff48]/g,I:/[Ii\\xcc-\\xcf\\xec-\\xef\\u0128-\\u0130\\u0132\\u0133\\u01cf\\u01d0\\u0208-\\u020b\\u1d35\\u1d62\\u1e2c\\u1e2d\\u1ec8-\\u1ecb\\u2071\\u2110\\u2111\\u2139\\u2148\\u2160-\\u2163\\u2165-\\u2168\\u216a\\u216b\\u2170-\\u2173\\u2175-\\u2178\\u217a\\u217b\\u24a4\\u24be\\u24d8\\u337a\\u33cc\\u33d5\\ufb01\\ufb03\\uff29\\uff49]/g,J:/[Jj\\u0132-\\u0135\\u01c7-\\u01cc\\u01f0\\u02b2\\u1d36\\u2149\\u24a5\\u24bf\\u24d9\\u2c7c\\uff2a\\uff4a]/g,K:/[Kk\\u0136\\u0137\\u01e8\\u01e9\\u1d37\\u1d4f\\u1e30-\\u1e35\\u212a\\u24a6\\u24c0\\u24da\\u3384\\u3385\\u3389\\u338f\\u3391\\u3398\\u339e\\u33a2\\u33a6\\u33aa\\u33b8\\u33be\\u33c0\\u33c6\\u33cd-\\u33cf\\uff2b\\uff4b]/g,L:/[Ll\\u0139-\\u0140\\u01c7-\\u01c9\\u02e1\\u1d38\\u1e36\\u1e37\\u1e3a-\\u1e3d\\u2112\\u2113\\u2121\\u216c\\u217c\\u24a7\\u24c1\\u24db\\u32cf\\u3388\\u3389\\u33d0-\\u33d3\\u33d5\\u33d6\\u33ff\\ufb02\\ufb04\\uff2c\\uff4c]/g,M:/[Mm\\u1d39\\u1d50\\u1e3e-\\u1e43\\u2120\\u2122\\u2133\\u216f\\u217f\\u24a8\\u24c2\\u24dc\\u3377-\\u3379\\u3383\\u3386\\u338e\\u3392\\u3396\\u3399-\\u33a8\\u33ab\\u33b3\\u33b7\\u33b9\\u33bd\\u33bf\\u33c1\\u33c2\\u33ce\\u33d0\\u33d4-\\u33d6\\u33d8\\u33d9\\u33de\\u33df\\uff2d\\uff4d]/g,N:/[Nn\\xd1\\xf1\\u0143-\\u0149\\u01ca-\\u01cc\\u01f8\\u01f9\\u1d3a\\u1e44-\\u1e4b\\u207f\\u2115\\u2116\\u24a9\\u24c3\\u24dd\\u3381\\u338b\\u339a\\u33b1\\u33b5\\u33bb\\u33cc\\u33d1\\uff2e\\uff4e]/g,O:/[Oo\\xba\\xd2-\\xd6\\xf2-\\xf6\\u014c-\\u0151\\u01a0\\u01a1\\u01d1\\u01d2\\u01ea\\u01eb\\u020c-\\u020f\\u022e\\u022f\\u1d3c\\u1d52\\u1ecc-\\u1ecf\\u2092\\u2105\\u2116\\u2134\\u24aa\\u24c4\\u24de\\u3375\\u33c7\\u33d2\\u33d6\\uff2f\\uff4f]/g,P:/[Pp\\u1d3e\\u1d56\\u1e54-\\u1e57\\u2119\\u24ab\\u24c5\\u24df\\u3250\\u3371\\u3376\\u3380\\u338a\\u33a9-\\u33ac\\u33b0\\u33b4\\u33ba\\u33cb\\u33d7-\\u33da\\uff30\\uff50]/g,Q:/[Qq\\u211a\\u24ac\\u24c6\\u24e0\\u33c3\\uff31\\uff51]/g,R:/[Rr\\u0154-\\u0159\\u0210-\\u0213\\u02b3\\u1d3f\\u1d63\\u1e58-\\u1e5b\\u1e5e\\u1e5f\\u20a8\\u211b-\\u211d\\u24ad\\u24c7\\u24e1\\u32cd\\u3374\\u33ad-\\u33af\\u33da\\u33db\\uff32\\uff52]/g,S:/[Ss\\u015a-\\u0161\\u017f\\u0218\\u0219\\u02e2\\u1e60-\\u1e63\\u20a8\\u2101\\u2120\\u24ae\\u24c8\\u24e2\\u33a7\\u33a8\\u33ae-\\u33b3\\u33db\\u33dc\\ufb06\\uff33\\uff53]/g,T:/[Tt\\u0162-\\u0165\\u021a\\u021b\\u1d40\\u1d57\\u1e6a-\\u1e71\\u1e97\\u2121\\u2122\\u24af\\u24c9\\u24e3\\u3250\\u32cf\\u3394\\u33cf\\ufb05\\ufb06\\uff34\\uff54]/g,U:/[Uu\\xd9-\\xdc\\xf9-\\xfc\\u0168-\\u0173\\u01af\\u01b0\\u01d3\\u01d4\\u0214-\\u0217\\u1d41\\u1d58\\u1d64\\u1e72-\\u1e77\\u1ee4-\\u1ee7\\u2106\\u24b0\\u24ca\\u24e4\\u3373\\u337a\\uff35\\uff55]/g,V:/[Vv\\u1d5b\\u1d65\\u1e7c-\\u1e7f\\u2163-\\u2167\\u2173-\\u2177\\u24b1\\u24cb\\u24e5\\u2c7d\\u32ce\\u3375\\u33b4-\\u33b9\\u33dc\\u33de\\uff36\\uff56]/g,W:/[Ww\\u0174\\u0175\\u02b7\\u1d42\\u1e80-\\u1e89\\u1e98\\u24b2\\u24cc\\u24e6\\u33ba-\\u33bf\\u33dd\\uff37\\uff57]/g,X:/[Xx\\u02e3\\u1e8a-\\u1e8d\\u2093\\u213b\\u2168-\\u216b\\u2178-\\u217b\\u24b3\\u24cd\\u24e7\\u33d3\\uff38\\uff58]/g,Y:/[Yy\\xdd\\xfd\\xff\\u0176-\\u0178\\u0232\\u0233\\u02b8\\u1e8e\\u1e8f\\u1e99\\u1ef2-\\u1ef9\\u24b4\\u24ce\\u24e8\\u33c9\\uff39\\uff59]/g,Z:/[Zz\\u0179-\\u017e\\u01f1-\\u01f3\\u1dbb\\u1e90-\\u1e95\\u2124\\u2128\\u24b5\\u24cf\\u24e9\\u3390-\\u3394\\uff3a\\uff5a]/g},e}();t.StringUtils=u},function(e,t,n){(function(t){e.exports=t.Globalize=n(304)}).call(t,n(62))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=n(4),r=n(0),s=function(){function e(){}return e.createGuid=function(){var t,n=!1;if(\"undefined\"!=typeof crypto&&void 0!==crypto.getRandomValues)try{t=e.generateWithCrypto(),n=!0}catch(e){n=!1}return n||(t=e.generateWithRandom()),t},e.generateWithRandom=function(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,function(e){var t=16*Math.random()|0;return(\"x\"==e?t:3&t|8).toString(16)})},e.generateWithCrypto=function(){var e=new Uint16Array(8);crypto.getRandomValues(e);var t=function(e){for(var t=e.toString(16);t.length<4;)t=\"0\"+t;return t};return t(e[0])+t(e[1])+\"-\"+t(e[2])+\"-\"+t(e[3])+\"-\"+t(e[4])+\"-\"+t(e[5])+t(e[6])+t(e[7])},e.setStateObjectOnQueryResults=function(t,n){e.setPropertyOnResults(n,\"state\",t)},e.setStateObjectOnQueryResult=function(t,n){e.setPropertyOnResult(n,\"state\",t)},e.setSearchInterfaceObjectOnQueryResult=function(t,n){e.setPropertyOnResult(n,\"searchInterface\",t)},e.setIndexAndUidOnQueryResults=function(t,n,o,r,s){i.Assert.exists(t),i.Assert.exists(n);var a=t.firstResult;e.setPropertyOnResults(n,\"queryUid\",o),e.setPropertyOnResults(n,\"pipeline\",r),e.setPropertyOnResults(n,\"splitTestRun\",s),e.setPropertyOnResults(n,\"index\",a,function(){return++a})},e.setTermsToHighlightOnQueryResults=function(t,n){e.setPropertyOnResults(n,\"termsToHighlight\",n.termsToHighlight),e.setPropertyOnResults(n,\"phrasesToHighlight\",n.phrasesToHighlight)},e.splitFlags=function(e,t){return void 0===t&&(t=\";\"),i.Assert.exists(e),e.split(t)},e.isAttachment=function(t){return r.contains(e.splitFlags(t.flags),\"IsAttachment\")},e.containsAttachment=function(t){return r.contains(e.splitFlags(t.flags),\"ContainsAttachment\")},e.hasHTMLVersion=function(t){return r.contains(e.splitFlags(t.flags),\"HasHtmlVersion\")},e.hasThumbnail=function(t){return r.contains(e.splitFlags(t.flags),\"HasThumbnail\")},e.hasExcerpt=function(e){return void 0!=e.excerpt&&\"\"!=e.excerpt},e.getAuthor=function(e){return e.raw.author},e.getUriHash=function(e){return e.raw.urihash},e.getObjectType=function(e){return e.raw.objecttype},e.getCollection=function(e){return e.raw.collection||\"default\"},e.getSource=function(e){return e.raw.source},e.getLanguage=function(e){return e.raw.language},e.getPermanentId=function(e){var t,n,i=o.Utils.getFieldValue(e,\"permanentid\");return i?(n=\"permanentid\",t=i):(n=\"urihash\",t=o.Utils.getFieldValue(e,\"urihash\")),{fieldValue:t,fieldUsed:n}},e.quoteAndEscapeIfNeeded=function(t){return i.Assert.isString(t),e.isAtomicString(t)||e.isRangeString(t)||e.isRangeWithoutOuterBoundsString(t)?t:e.quoteAndEscape(t)},e.quoteAndEscape=function(t){return i.Assert.isString(t),'\"'+e.escapeString(t)+'\"'},e.escapeString=function(e){return i.Assert.isString(e),e.replace(/\"/g,\" \")},e.isAtomicString=function(e){return i.Assert.isString(e),/^\\d+(\\.\\d+)?$|^[\\d\\w]+$/.test(e)},e.isRangeString=function(e){return i.Assert.isString(e),/^\\d+(\\.\\d+)?\\.\\.\\d+(\\.\\d+)?$|^\\d{4}\\/\\d{2}\\/\\d{2}@\\d{2}:\\d{2}:\\d{2}\\.\\.\\d{4}\\/\\d{2}\\/\\d{2}@\\d{2}:\\d{2}:\\d{2}$/.test(e)},e.isRangeWithoutOuterBoundsString=function(e){return i.Assert.isString(e),/^\\d+(\\.\\d+)?$|^\\d{4}\\/\\d{2}\\/\\d{2}@\\d{2}:\\d{2}:\\d{2}$/.test(e)},e.buildFieldExpression=function(t,n,o){return i.Assert.isNonEmptyString(t),i.Assert.stringStartsWith(t,\"@\"),i.Assert.isNonEmptyString(n),i.Assert.isLargerOrEqualsThan(1,o.length),1==o.length?t+n+e.quoteAndEscapeIfNeeded(o[0]):t+n+\"(\"+r.map(o,function(t){return e.quoteAndEscapeIfNeeded(t)}).join(\",\")+\")\"},e.buildFieldNotEqualExpression=function(t,n){i.Assert.isNonEmptyString(t),i.Assert.stringStartsWith(t,\"@\"),i.Assert.isLargerOrEqualsThan(1,n.length);return\"(NOT \"+(1==n.length?t+\"==\"+e.quoteAndEscapeIfNeeded(n[0]):t+\"==(\"+r.map(n,function(t){return e.quoteAndEscapeIfNeeded(t)}).join(\",\")+\")\")+\")\"},e.setPropertyOnResults=function(t,n,i,o){r.each(t.results,function(t){e.setPropertyOnResult(t,n,i),i=o?o():i})},e.setPropertyOnResult=function(e,t,n){e[t]=n,r.each(e.childResults,function(e){e[t]=n}),o.Utils.isNullOrUndefined(e.parentResult)||(e.parentResult[t]=n)},e.isStratusAgnosticField=function(e,t){var n=/^(@?)(sys)?(.*)/i,i=n.exec(e),o=n.exec(t);return!(!i||!o)&&(i[1]+i[3]).toLowerCase()==(o[1]+o[3]).toLowerCase()},e}();t.QueryUtils=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(51),o=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),r=function(){function e(){}return e.getDeviceName=function(e){return void 0===e&&(e=navigator.userAgent),e.match(/Edge/i)?\"Edge\":e.match(/Opera Mini/i)?\"Opera Mini\":e.match(/Android/i)?\"Android\":e.match(/BlackBerry/i)?\"BlackBerry\":e.match(/iPhone/i)?\"iPhone\":e.match(/iPad/i)?\"iPad\":e.match(/iPod/i)?\"iPod\":e.match(/Chrome/i)?\"Chrome\":e.match(/MSIE/i)||e.match(/Trident/i)?\"IE\":e.match(/Opera/i)?\"Opera\":e.match(/Firefox/i)?\"Firefox\":e.match(/Safari/i)?\"Safari\":\"Others\"},e.isAndroid=function(){return\"Android\"==e.getDeviceName()},e.isIos=function(){var t=e.getDeviceName();return\"iPhone\"==t||\"iPad\"==t||\"iPod\"==t},e.isMobileDevice=function(){return o},e.isSmallScreenWidth=function(){return(new i.ResponsiveComponents).isSmallScreenWidth()},e}();t.DeviceUtils=r},function(e,t,n){\"use strict\";function i(e){for(var n in e)t.hasOwnProperty(n)||(t[n]=e[n])}Object.defineProperty(t,\"__esModule\",{value:!0}),window.Promise instanceof Function||n(285);var o=n(199);t._=o.underscoreInstance,i(n(287)),i(n(70)),i(n(305)),i(n(137)),i(n(307)),i(n(194)),i(n(309)),i(n(426)),i(n(121))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(9),o=n(1),r=n(151),s=n(131),a=n(51),u=n(0),l=n(2),c=n(4),p=function(){function e(){this.currentLayout=null,this.checkCondition=!0,this.wrapInDiv=!0,this.responsiveComponents=new a.ResponsiveComponents}return e.prototype.get=function(){return{currentLayout:this.currentLayout,checkCondition:this.checkCondition,wrapInDiv:this.wrapInDiv,responsiveComponents:this.responsiveComponents}},e.prototype.merge=function(e){return e?u.extend(this.get(),e):this.get()},e}();t.DefaultInstantiateTemplateOptions=p;var h=function(){function e(e){this.dataToString=e,this.logger=new i.Logger(this),this.fields=[]}return e.prototype.instantiateToString=function(e,t){if(void 0===t&&(t=new p),this.dataToString){if(!1===t.checkCondition)return this.dataToString(e);if(null==t.responsiveComponents&&(t.responsiveComponents=new a.ResponsiveComponents),!0===this.mobile&&!t.responsiveComponents.isSmallScreenWidth())return this.logger.trace(\"Template was skipped because it is optimized for small screen width\",this),null;if(!1===this.mobile&&t.responsiveComponents.isSmallScreenWidth())return this.logger.trace(\"Template was skipped because it is not optimized for small screen width\",this),null;if(!0===this.tablet&&!t.responsiveComponents.isMediumScreenWidth())return this.logger.trace(\"Template was skipped because it is optimized for medium screen width\",this),null;if(!1===this.tablet&&t.responsiveComponents.isMediumScreenWidth())return this.logger.trace(\"Template was skipped because it is not optimized for medium screen width\",this),null;if(!0===this.desktop&&!t.responsiveComponents.isLargeScreenWidth())return this.logger.trace(\"Template was skipped because it is optimized for large screen width\",this),null;if(!1===this.desktop&&t.responsiveComponents.isLargeScreenWidth())return this.logger.trace(\"Template was skipped because it is not optimized for large screen width\",this),null;if(null!=this.layout&&null!=t.currentLayout&&t.currentLayout!==this.layout)return this.logger.trace(\"Template was skipped because layout does not match\",this,this.layout),null;try{if(this.logger.trace(\"Evaluating template ...\"),null!=this.condition&&this.condition(e))return this.logger.trace(\"Template was loaded because condition was :\",this.condition,e),this.dataToString(e);if(null!=this.conditionToParse&&r.TemplateConditionEvaluator.evaluateCondition(this.conditionToParse,e,t.responsiveComponents))return this.logger.trace(\"Template was loaded because condition was :\",this.conditionToParse,e),this.dataToString(e);if(null!=this.fieldsToMatch&&s.TemplateFieldsEvaluator.evaluateFieldsToMatch(this.fieldsToMatch,e))return this.logger.trace(\"Template was loaded because condition was :\",this.fieldsToMatch,e),this.dataToString(e);if(null==this.condition&&null==this.conditionToParse&&null==this.fieldsToMatch)return this.logger.trace(\"Template was loaded because there was *NO* condition\",this.condition,e),this.dataToString(e)}catch(e){return new i.Logger(this).error(\"Cannot instantiate template\",e.message,this.getTemplateInfo()),new i.Logger(this).warn(\"A default template was used\"),null}}return this.logger.trace(\"Template was skipped because it did not match any condition\",this),null},e.prototype.addField=function(e){u.contains(this.fields,e)||this.fields.push(e)},e.prototype.addFields=function(e){c.Utils.isNonEmptyArray(e)&&(this.fields=c.Utils.concatWithoutDuplicate(this.fields,e))},e.prototype.getComponentsInside=function(e){var t=u.map(l.Initialization.getListOfRegisteredComponents(),function(t){return new RegExp(\"Coveo\"+t,\"g\").exec(e)?t:null});return u.compact(t)},e.prototype.instantiateToElement=function(e,t){var n=this;void 0===t&&(t={});var i=(new p).merge(t),o=this.instantiateToString(e,i);return null==o?null:this.ensureComponentsInHtmlStringHaveLoaded(o).then(function(){var t=n.buildTemplate(o,i);return n.logger.trace(\"Instantiated result template\",e,t),t})},e.prototype.toHtmlElement=function(){return null},e.prototype.getFields=function(){return this.fields},e.prototype.getType=function(){return\"Template\"},e.prototype.setConditionWithFallback=function(e){try{this.condition=new Function(\"obj\",\"with(obj||{}){return \"+e+\"}\")}catch(t){this.conditionToParse=e}},e.prototype.getTemplateInfo=function(){return void 0!=this.conditionToParse?this.conditionToParse:void 0!=this.condition?this.condition:this.fieldsToMatch},e.prototype.ensureComponentsInHtmlStringHaveLoaded=function(e){var t=this.getComponentsInside(e).map(function(e){return l.LazyInitialization.getLazyRegisteredComponent(e)});return Promise.all(t)},e.prototype.buildTemplate=function(e,t){var n=this.layout||t.currentLayout,i=\"table\"===n?\"tr\":\"div\",r=o.$$(i,{},e).el;return t.wrapInDiv||1!==r.children.length||(r=r.children.item(0)),n&&o.$$(r).addClass(\"coveo-\"+n+\"-layout\"),r.template=this,r},e}();t.Template=h},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i,o=n(4),r=n(0);!function(e){e[e.BACKSPACE=8]=\"BACKSPACE\",e[e.TAB=9]=\"TAB\",e[e.ENTER=13]=\"ENTER\",e[e.SHIFT=16]=\"SHIFT\",e[e.CTRL=17]=\"CTRL\",e[e.ALT=18]=\"ALT\",e[e.ESCAPE=27]=\"ESCAPE\",e[e.SPACEBAR=32]=\"SPACEBAR\",e[e.PAGE_UP=33]=\"PAGE_UP\",e[e.PAGE_DOWN=34]=\"PAGE_DOWN\",e[e.HOME=36]=\"HOME\",e[e.LEFT_ARROW=37]=\"LEFT_ARROW\",e[e.UP_ARROW=38]=\"UP_ARROW\",e[e.RIGHT_ARROW=39]=\"RIGHT_ARROW\",e[e.DOWN_ARROW=40]=\"DOWN_ARROW\",e[e.INSERT=45]=\"INSERT\",e[e.DELETE=46]=\"DELETE\"}(i=t.KEYBOARD||(t.KEYBOARD={}));var s=function(){function e(){}return e.keysEqual=function(e,t){return o.Utils.isNullOrUndefined(e.keyCode)?!o.Utils.isNullOrUndefined(e.which)&&e.which==t:e.keyCode==t},e.isAllowedKeyForOmnibox=function(t){var n=t.keyCode;return e.isNumberKeyPushed(n)||32==n||13==n||e.isLetterKeyPushed(n)||n>95&&n<112||n>185&&n<193||n>218&&n<223||n==i.BACKSPACE||n==i.DELETE||e.isArrowKeyPushed(n)},e.isAllowedKeyForSearchAsYouType=function(t){return e.isAllowedKeyForOmnibox(t)&&!e.isArrowKeyPushed(t.keyCode)},e.isDeleteOrBackspace=function(t){return e.keysEqual(t,i.BACKSPACE)||e.keysEqual(t,i.DELETE)},e.isArrowKeyPushed=function(e){return e==i.LEFT_ARROW||e==i.UP_ARROW||e==i.RIGHT_ARROW||e==i.DOWN_ARROW},e.isNumberKeyPushed=function(e){return e>47&&e<58},e.isLetterKeyPushed=function(e){return e>64&&e<91},e.keypressAction=function(e,t){return function(n){for(var i=[],o=1;o<arguments.length;o++)i[o-1]=arguments[o];if(n){var s=n.charCode||n.keyCode;s&&(r.isArray(e)&&r.contains(e,s)?t(n):s===e&&t(n))}}},e}();t.KeyboardUtils=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.ModalBox=n(302),t.LocaleString=n(303)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(15),r=n(0);t.COMPONENT_OPTIONS_ATTRIBUTES={RESULT_LINK:\"resultLink\",SEARCH_HUB:\"searchHub\",SEARCH_BOX:\"searchBox\"};var s=function(e){function t(n,i){var o=r.extend({},t.defaultAttributes,i);return e.call(this,n,t.ID,o)||this}return i(t,e),t.ID=\"ComponentOptions\",t.defaultAttributes={resultLink:void 0,searchHub:void 0,searchBox:void 0},t.attributesEnum={resultLink:\"resultLink\",searchHub:\"searchHub\",searchBox:\"searchBox\"},t}(o.Model);t.ComponentOptionsModel=s},function(e,t,n){\"use strict\";function i(e,t){return void 0===t&&(t={}),O.Initialization.initializeFramework(e,t,function(){return O.Initialization.initSearchInterface(e,t)})}function o(e,t,n){void 0===n&&(n={}),E.Assert.isNonEmptyString(t);var i={};return i.searchPageUri=t,i.autoTriggerQuery=!1,i.enableHistory=!1,n=P.extend({},n,{StandaloneSearchInterface:i}),O.Initialization.initializeFramework(e,n,function(){return O.Initialization.initStandaloneSearchInterface(e,n)})}function r(e,t,n,i){void 0===i&&(i={});var o={};return o.mainSearchInterface=t,o.userContext=n,o.enableHistory=!1,i=P.extend({},i,{Recommendation:o}),null!=window.Coveo.Recommendation&&(O.LazyInitialization.registerLazyComponent(\"Recommendation\",function(){return Promise.resolve(window.Coveo.Recommendation)}),O.EagerInitialization.eagerlyLoadedComponents.Recommendation=window.Coveo.Recommendation),O.LazyInitialization.getLazyRegisteredComponent(\"Recommendation\").then(function(){return O.Initialization.initializeFramework(e,i,function(){return O.Initialization.initRecommendationInterface(e,i)})})}function s(e){E.Assert.exists(e);var t=I.Component.resolveBinding(e,A.QueryController);return E.Assert.exists(t),t.executeQuery()}function a(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];E.Assert.exists(e);var i=I.Component.resolveBinding(e,T.QueryStateModel);return T.setState(i,t)}function u(e,t,n){return E.Assert.exists(e),I.Component.get(e,t,n)}function l(e,t){return E.Assert.exists(e),I.Component.getResult(e,t)}function c(e){var t=p(e);return t?t.client:void 0}function p(e){var t=e.classList.contains(I.Component.computeCssClassNameForType(\"Analytics\"))?e:F.$$(e).find(I.Component.computeSelectorForType(\"Analytics\"));return t?I.Component.resolveBinding(t,N.Analytics):void 0}function h(e,t,n,i){var o=c(e);o&&o.logCustomEvent(t,n,e,i)}function d(e,t,n){var i=c(e);i&&i.logSearchEvent(t,n)}function f(e,t,n){var i=c(e);i&&i.logSearchAsYouType(t,n)}function m(e,t,n,i){var o=c(e);o&&o.logClickEvent(t,n,i,e)}function y(e,t){void 0===t&&(t={}),O.Initialization.registerDefaultOptions(e,t)}function g(e,t,n){O.Initialization.monkeyPatchComponentMethod(t,e,n)}function v(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i,o,r={};0==t.length?(i=\"Standard\",o=!1):1==t.length?\"string\"==typeof t[0]?(i=t[0],o=!0):\"object\"==typeof t[0]?(i=\"Standard\",o=!1,r=t[0]):E.Assert.fail(\"Invalid parameters to init a box\"):2==t.length&&(i=t[0],r=t[1],o=!0);var s={};s[i||\"Container\"]=P.extend({},r.SearchInterface,r[i]),r=P.extend({},r,s),O.Initialization.initializeFramework(e,r,function(){return O.Initialization.initBoxInterface(e,r,i,o)})}function b(e){F.$$(e).trigger(R.InitializationEvents.nuke)}function C(e){D.PublicPathUtils.configureResourceRoot(e)}function S(e){void 0===e&&(e=document.querySelector(I.Component.computeSelectorForType(M.SearchInterface.ID)));var t=p(e);if(!t)return V.warn(\"Could not enable analytics because no Analytics component could be found in the specified searchRoot.\");t.enable()}function w(e){void 0===e&&(e=document.querySelector(I.Component.computeSelectorForType(M.SearchInterface.ID)));var t=p(e);if(!t)return V.warn(\"Could not clear local data because no Analytics component could be found in the specified searchRoot.\");t.clearLocalData()}function x(e){void 0===e&&(e=document.querySelector(I.Component.computeSelectorForType(M.SearchInterface.ID)));var t=p(e);if(!t)return V.warn(\"Could not disable analytics because no Analytics component could be found in the specified searchRoot.\");t.disable()}function _(e){return null!=O.LazyInitialization.lazyLoadedComponents[e]?O.LazyInitialization.getLazyRegisteredComponent(e):null!=O.LazyInitialization.lazyLoadedModule[e]?O.LazyInitialization.getLazyRegisteredModule(e):Promise.reject(\"Module \"+e+\" is not available\")}Object.defineProperty(t,\"__esModule\",{value:!0});var O=n(2),E=n(5),A=n(40),T=n(13),R=n(16),F=n(1),I=n(7),M=n(18),P=n(0),D=n(164),$=n(9),N=n(165),V=new $.Logger(\"RegisteredNamedMethods\");t.init=i,O.Initialization.registerNamedMethod(\"init\",function(e,t){return void 0===t&&(t={}),i(e,t)}),t.initSearchbox=o,O.Initialization.registerNamedMethod(\"initSearchbox\",function(e,t,n){void 0===n&&(n={}),o(e,t,n)}),t.initRecommendation=r,O.Initialization.registerNamedMethod(\"initRecommendation\",function(e,t,n,i){void 0===n&&(n={}),void 0===i&&(i={}),r(e,t,n,i)}),t.executeQuery=s,O.Initialization.registerNamedMethod(\"executeQuery\",function(e){return s(e)}),t.state=a,O.Initialization.registerNamedMethod(\"state\",function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return 0!=t.length?a.apply(void 0,[e].concat(t)):a.apply(void 0,[e])}),t.get=u,O.Initialization.registerNamedMethod(\"get\",function(e,t,n){return u(e,t,n)}),t.result=l,O.Initialization.registerNamedMethod(\"result\",function(e,t){return l(e,t)}),t.logCustomEvent=h,O.Initialization.registerNamedMethod(\"logCustomEvent\",function(e,t,n,i){h(e,t,n,i)}),t.logSearchEvent=d,O.Initialization.registerNamedMethod(\"logSearchEvent\",function(e,t,n){d(e,t,n)}),t.logSearchAsYouTypeEvent=f,O.Initialization.registerNamedMethod(\"logSearchAsYouTypeEvent\",function(e,t,n){f(e,t,n)}),t.logClickEvent=m,O.Initialization.registerNamedMethod(\"logClickEvent\",function(e,t,n,i){m(e,t,n,i)}),t.options=y,O.Initialization.registerNamedMethod(\"options\",function(e,t){void 0===t&&(t={}),y(e,t)}),t.patch=g,O.Initialization.registerNamedMethod(\"patch\",function(e,t,n){g(e,t,n)}),t.initBox=v,O.Initialization.registerNamedMethod(\"initBox\",function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];v(e,t)}),t.nuke=b,O.Initialization.registerNamedMethod(\"nuke\",function(e){b(e)}),t.configureResourceRoot=C,O.Initialization.registerNamedMethod(\"configureResourceRoot\",function(e){C(e)}),t.enableAnalytics=S,O.Initialization.registerNamedMethod(\"enableAnalytics\",function(){S()}),t.clearLocalData=w,O.Initialization.registerNamedMethod(\"clearLocalData\",function(){w()}),t.disableAnalytics=x,O.Initialization.registerNamedMethod(\"disableAnalytics\",function(){x()}),t.load=_,O.Initialization.registerNamedMethod(\"require\",function(e){return _(e)})},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(74),r=n(4),s=n(6),a=n(0),u=n(123),l=n(9),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.now=u().toDate(),t.useTodayYesterdayAndTomorrow=!0,t.useWeekdayIfThisWeek=!0,t.omitYearIfCurrentOne=!0,t.useLongDateFormat=!1,t.includeTimeIfToday=!0,t.includeTimeIfThisWeek=!0,t.alwaysIncludeTime=!1,t.predefinedFormat=void 0,t}return i(t,e),t}(o.Options),p=function(){function e(){}return e.convertFromJsonDateIfNeeded=function(t){return e.convertToStandardDate(t)},e.convertToStandardDate=function(e){if(a.isDate(e))return u(e).toDate();if(null!==e&&!isNaN(Number(e)))return u(Number(e)).toDate();if(a.isString(e)){var t=[\"YYYY/MM/DD@HH:mm:ssZ\",u.ISO_8601];return u(e,t).toDate()}},e.setLocale=function(){e.saveOriginalMomentLocaleData(),u.updateLocale(e.momentjsCompatibleLocale,e.transformGlobalizeCalendarToMomentCalendar()),u.locale(e.momentjsCompatibleLocale)},e.saveOriginalMomentLocaleData=function(){var t=e.momentjsCompatibleLocale;null!=e.momentjsLocaleDataMap[t]||(e.momentjsLocaleDataMap[t]=u.localeData())},e.dateForQuery=function(t){return e.setLocale(),u(t).format(\"YYYY/MM/DD\")},e.dateTimeForQuery=function(t){return e.setLocale(),u(t).format(\"YYYY/MM/DD@HH:mm:ss\")},e.keepOnlyDatePart=function(t){e.setLocale();var n=u(t);return new Date(n.year(),n.month(),n.date())},e.offsetDateByDays=function(e,t){return u(e).add(t,\"days\").toDate()},e.isTodayYesterdayOrTomorrow=function(t,n){var i=u(e.keepOnlyDatePart(t)),o=u(e.keepOnlyDatePart(n.now)),r=i.diff(o,\"days\");return 0==r||1==r||-1==r},e.getMomentJsFormat=function(t){var n=t,i=e.buildRegexMatchingExactCharSequence(\"y\",4);n=n.replace(i,\"$1YYYY\");var o=e.buildRegexMatchingExactCharSequence(\"y\",2);n=n.replace(o,\"$1YY\");var r=e.buildRegexMatchingExactCharSequence(\"d\",2);n=n.replace(r,\"$1DD\");var s=e.buildRegexMatchingExactCharSequence(\"d\",1);n=n.replace(s,\"$1D\");var a=e.buildRegexMatchingExactCharSequence(\"h\",2);return n=n.replace(a,\"$1H\")},e.buildRegexMatchingExactCharSequence=function(e,t){var n=\"(?:([^\"+e+\"]|^))\",i=e+\"{\"+t+\"}\",o=\"(?!\"+e+\")\",r=\"\"+n+i+o;return new RegExp(r,\"g\")},e.dateToString=function(t,n){if(e.setLocale(),r.Utils.isNullOrUndefined(t))return new l.Logger(this).warn(\"Impossible to format an undefined or null date.\"),\"\";n=(new c).merge(n);var i=u(e.keepOnlyDatePart(t)),o=u(e.keepOnlyDatePart(n.now));if(n.predefinedFormat)return i.format(this.getMomentJsFormat(n.predefinedFormat));if(n.useTodayYesterdayAndTomorrow&&e.isTodayYesterdayOrTomorrow(t,n))return u(i).calendar(u(o));var a=0==i.diff(u(o),\"weeks\");return n.useWeekdayIfThisWeek&&a?i.valueOf()>o.valueOf()?s.l(\"NextDay\",s.l(i.format(\"dddd\"))):i.valueOf()<o.valueOf()?s.l(\"LastDay\",s.l(i.format(\"dddd\"))):i.format(\"dddd\"):n.omitYearIfCurrentOne&&i.year()===o.year()?i.format(\"LL\"):n.useLongDateFormat?i.format(this.longDateFormat):i.format(\"L\")},Object.defineProperty(e,\"longDateFormat\",{get:function(){return e.momentjsLocaleDataMap[e.momentjsCompatibleLocale].longDateFormat(\"LLLL\").replace(/[h:mA]/g,\"\").trim()},enumerable:!0,configurable:!0}),e.timeToString=function(e,t){return r.Utils.isNullOrUndefined(e)?\"\":u(e).format(\"h:mm A\")},e.dateTimeToString=function(t,n){if(e.setLocale(),n=(new c).merge(n),r.Utils.isNullOrUndefined(t))return new l.Logger(this).warn(\"Impossible to format an undefined or null date.\"),\"\";if(!u(t).isValid())return new l.Logger(this).warn(\"Impossible to format an invalid date: \"+t),\"\";if(n.predefinedFormat)return u(t).format(this.getMomentJsFormat(n.predefinedFormat));var i=e.keepOnlyDatePart(n.now),o=e.dateToString(t,n),s=e.keepOnlyDatePart(t),a=0==u(t).diff(u(i),\"weeks\"),p=s.valueOf()==i.valueOf();return function(){return!!n.alwaysIncludeTime||(!(!n.includeTimeIfThisWeek||!a)||!(!n.includeTimeIfToday||!p))}()?o+\", \"+e.timeToString(t):o},e.monthToString=function(t){e.setLocale();var n=u(new Date(1980,t)).toDate();return u(n).format(\"MMMM\")},e.isValid=function(t){return e.setLocale(),t instanceof Date&&!isNaN(t.getTime())},e.timeBetween=function(e,t){return r.Utils.isNullOrUndefined(e)||r.Utils.isNullOrUndefined(t)?\"\":(\"0\"+((u(t).valueOf()-u(e).valueOf())/36e5).toFixed()).slice(-2)+\":\"+(\"0\"+((u(t).valueOf()-u(e).valueOf())%36e5/6e4).toFixed()).slice(-2)+\":\"+(\"0\"+((u(t).valueOf()-u(e).valueOf())%6e4/1e3).toFixed()).slice(-2)},Object.defineProperty(e,\"currentGlobalizeCalendar\",{get:function(){return Globalize.culture(e.currentLocale).calendar},enumerable:!0,configurable:!0}),Object.defineProperty(e,\"currentLocale\",{get:function(){return String.locale},enumerable:!0,configurable:!0}),Object.defineProperty(e,\"momentjsCompatibleLocale\",{get:function(){var t=e.currentLocale;return\"no\"==t.toLowerCase()?t=\"nn\":\"es-es\"==t.toLowerCase()&&(t=\"es\"),t},enumerable:!0,configurable:!0}),e.transformGlobalizeCalendarToMomentCalendar=function(){var t=function(e){return e.replace(/y/g,\"Y\").replace(/d/g,\"D\")};return{months:e.currentGlobalizeCalendar.months.names,monthsShort:e.currentGlobalizeCalendar.months.namesAbbr,weekdays:e.currentGlobalizeCalendar.days.names,weekdaysShort:e.currentGlobalizeCalendar.days.namesAbbr,weekdaysMin:e.currentGlobalizeCalendar.days.namesShort,longDateFormat:{LT:t(e.currentGlobalizeCalendar.patterns.t),LTS:t(e.currentGlobalizeCalendar.patterns.T),L:t(e.currentGlobalizeCalendar.patterns.d),LL:t(e.currentGlobalizeCalendar.patterns.M),LLL:t(e.currentGlobalizeCalendar.patterns.f),LLLL:t(e.currentGlobalizeCalendar.patterns.F)},calendar:{lastDay:\"[\"+s.l(\"Yesterday\")+\"]\",sameDay:\"[\"+s.l(\"Today\")+\"]\",nextDay:\"[\"+s.l(\"Tomorrow\")+\"]\"}}},e.momentjsLocaleDataMap={},e}();t.DateUtils=p},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(){}return e.defer=function(t){e.functions.push(t),e.arm()},e.flush=function(){for(;e.popOne(););},e.arm=function(){i.defer(function(){e.popOne()&&e.arm()})},e.popOne=function(){if(e.functions.length>0){var t=e.functions[0];return e.functions=i.rest(e.functions),t(),e.functions.length>0}return!1},e.functions=[],e}();t.Defer=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.newResultsDisplayed=\"newResultsDisplayed\",e.newResultDisplayed=\"newResultDisplayed\",e.openQuickview=\"openQuickview\",e.changeLayout=\"changeLayout\",e}();t.ResultListEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.populateBreadcrumb=\"populateBreadcrumb\",e.clearBreadcrumb=\"clearBreadcrumb\",e.redrawBreadcrumb=\"redrawBreadcrumb\",e}();t.BreadcrumbEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.populateOmnibox=\"populateOmnibox\",e.populateOmniboxSuggestions=\"populateOmniboxSuggestions\",e.omniboxPreprocessResultForQuery=\"omniboxPreprocessResultForQuery\",e.buildingQuerySuggest=\"buildingQuerySuggest\",e.querySuggestSuccess=\"querySuggestSuccess\",e.querySuggestRendered=\"querySuggestRendered\",e.querySuggestGetFocus=\"querySuggestGetFocus\",e.querySuggestLoseFocus=\"querySuggestLooseFocus\",e.querySuggestSelection=\"querySuggestSelection\",e}();t.OmniboxEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=n(1),r=n(9),s=function(){function e(t,n){this.element=t,this.type=n,this.disabled=!1,i.Assert.exists(t),i.Assert.isNonEmptyString(n),this.logger=new r.Logger(this),e.bindComponentToElement(t,this)}return e.prototype.debugInfo=function(){var e={};return e[this.constructor.ID]=this,e},e.prototype.disable=function(){this.disabled=!0},e.prototype.enable=function(){this.disabled=!1},e.bindComponentToElement=function(t,n){i.Assert.exists(t),i.Assert.exists(n),i.Assert.isNonEmptyString(n.type),t[e.computeCssClassNameForType(n.type)]=n,o.$$(t).addClass(e.computeCssClassNameForType(n.type)),e.getBoundComponentsForElement(t).push(n)},e.computeCssClassName=function(t){return e.computeCssClassNameForType(t.ID)},e.computeCssClassNameForType=function(e){return i.Assert.isNonEmptyString(e),\"Coveo\"+e},e.computeSelectorForType=function(t){return i.Assert.isNonEmptyString(t),\".\"+e.computeCssClassNameForType(t)},e.getBoundComponentsForElement=function(e){return i.Assert.exists(e),null==e.CoveoBoundComponents&&(e.CoveoBoundComponents=[]),e.CoveoBoundComponents},e.getComponentRef=function(e){return Coveo[e]},e}();t.BaseComponent=s},function(e,t){function n(e){return e&&e.__esModule?e:{default:e}}e.exports=n},function(e,t){var n=e.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=n)},function(e,t){var n=e.exports={version:\"2.6.9\"};\"number\"==typeof __e&&(__e=n)},function(e,t,n){\"use strict\";function i(e){return function(t,n){return u(e(t),n)}}function o(e,t){return[e,t]}function r(e,t,n){var i=(t-e)/Math.max(0,n),o=Math.floor(Math.log(i)/Math.LN10),r=i/Math.pow(10,o);return o>=0?(r>=A?10:r>=T?5:r>=R?2:1)*Math.pow(10,o):-Math.pow(10,-o)/(r>=A?10:r>=T?5:r>=R?2:1)}function s(e,t,n){var i=Math.abs(t-e)/Math.max(0,n),o=Math.pow(10,Math.floor(Math.log(i)/Math.LN10)),r=i/o;return r>=A?o*=10:r>=T?o*=5:r>=R&&(o*=2),t<e?-o:o}function a(e){return e.length}var u=function(e,t){return e<t?-1:e>t?1:e>=t?0:NaN},l=function(e){return 1===e.length&&(e=i(e)),{left:function(t,n,i,o){for(null==i&&(i=0),null==o&&(o=t.length);i<o;){var r=i+o>>>1;e(t[r],n)<0?i=r+1:o=r}return i},right:function(t,n,i,o){for(null==i&&(i=0),null==o&&(o=t.length);i<o;){var r=i+o>>>1;e(t[r],n)>0?o=r:i=r+1}return i}}},c=l(u),p=c.right,h=c.left,d=p,f=function(e,t){null==t&&(t=o);for(var n=0,i=e.length-1,r=e[0],s=new Array(i<0?0:i);n<i;)s[n]=t(r,r=e[++n]);return s},m=function(e,t,n){var i,r,s,a,u=e.length,l=t.length,c=new Array(u*l);for(null==n&&(n=o),i=s=0;i<u;++i)for(a=e[i],r=0;r<l;++r,++s)c[s]=n(a,t[r]);return c},y=function(e,t){return t<e?-1:t>e?1:t>=e?0:NaN},g=function(e){return null===e?NaN:+e},v=function(e,t){var n,i,o=e.length,r=0,s=-1,a=0,u=0;if(null==t)for(;++s<o;)isNaN(n=g(e[s]))||(i=n-a,a+=i/++r,u+=i*(n-a));else for(;++s<o;)isNaN(n=g(t(e[s],s,e)))||(i=n-a,a+=i/++r,u+=i*(n-a));if(r>1)return u/(r-1)},b=function(e,t){var n=v(e,t);return n?Math.sqrt(n):n},C=function(e,t){var n,i,o,r=e.length,s=-1;if(null==t){for(;++s<r;)if(null!=(n=e[s])&&n>=n)for(i=o=n;++s<r;)null!=(n=e[s])&&(i>n&&(i=n),o<n&&(o=n))}else for(;++s<r;)if(null!=(n=t(e[s],s,e))&&n>=n)for(i=o=n;++s<r;)null!=(n=t(e[s],s,e))&&(i>n&&(i=n),o<n&&(o=n));return[i,o]},S=Array.prototype,w=S.slice,x=S.map,_=function(e){return function(){return e}},O=function(e){return e},E=function(e,t,n){e=+e,t=+t,n=(o=arguments.length)<2?(t=e,e=0,1):o<3?1:+n;for(var i=-1,o=0|Math.max(0,Math.ceil((t-e)/n)),r=new Array(o);++i<o;)r[i]=e+i*n;return r},A=Math.sqrt(50),T=Math.sqrt(10),R=Math.sqrt(2),F=function(e,t,n){var i,o,s,a,u=-1;if(t=+t,e=+e,n=+n,e===t&&n>0)return[e];if((i=t<e)&&(o=e,e=t,t=o),0===(a=r(e,t,n))||!isFinite(a))return[];if(a>0)for(e=Math.ceil(e/a),t=Math.floor(t/a),s=new Array(o=Math.ceil(t-e+1));++u<o;)s[u]=(e+u)*a;else for(e=Math.floor(e*a),t=Math.ceil(t*a),s=new Array(o=Math.ceil(e-t+1));++u<o;)s[u]=(e-u)/a;return i&&s.reverse(),s},I=function(e){return Math.ceil(Math.log(e.length)/Math.LN2)+1},M=function(){function e(e){var o,r,a=e.length,u=new Array(a);for(o=0;o<a;++o)u[o]=t(e[o],o,e);var l=n(u),c=l[0],p=l[1],h=i(u,c,p);Array.isArray(h)||(h=s(c,p,h),h=E(Math.ceil(c/h)*h,Math.floor(p/h)*h,h));for(var f=h.length;h[0]<=c;)h.shift(),--f;for(;h[f-1]>p;)h.pop(),--f;var m,y=new Array(f+1);for(o=0;o<=f;++o)m=y[o]=[],m.x0=o>0?h[o-1]:c,m.x1=o<f?h[o]:p;for(o=0;o<a;++o)r=u[o],c<=r&&r<=p&&y[d(h,r,0,f)].push(e[o]);return y}var t=O,n=C,i=I;return e.value=function(n){return arguments.length?(t=\"function\"==typeof n?n:_(n),e):t},e.domain=function(t){return arguments.length?(n=\"function\"==typeof t?t:_([t[0],t[1]]),e):n},e.thresholds=function(t){return arguments.length?(i=\"function\"==typeof t?t:_(Array.isArray(t)?w.call(t):t),e):i},e},P=function(e,t,n){if(null==n&&(n=g),i=e.length){if((t=+t)<=0||i<2)return+n(e[0],0,e);if(t>=1)return+n(e[i-1],i-1,e);var i,o=(i-1)*t,r=Math.floor(o),s=+n(e[r],r,e);return s+(+n(e[r+1],r+1,e)-s)*(o-r)}},D=function(e,t,n){return e=x.call(e,g).sort(u),Math.ceil((n-t)/(2*(P(e,.75)-P(e,.25))*Math.pow(e.length,-1/3)))},$=function(e,t,n){return Math.ceil((n-t)/(3.5*b(e)*Math.pow(e.length,-1/3)))},N=function(e,t){var n,i,o=e.length,r=-1;if(null==t){for(;++r<o;)if(null!=(n=e[r])&&n>=n)for(i=n;++r<o;)null!=(n=e[r])&&n>i&&(i=n)}else for(;++r<o;)if(null!=(n=t(e[r],r,e))&&n>=n)for(i=n;++r<o;)null!=(n=t(e[r],r,e))&&n>i&&(i=n);return i},V=function(e,t){var n,i=e.length,o=i,r=-1,s=0;if(null==t)for(;++r<i;)isNaN(n=g(e[r]))?--o:s+=n;else for(;++r<i;)isNaN(n=g(t(e[r],r,e)))?--o:s+=n;if(o)return s/o},k=function(e,t){var n,i=e.length,o=-1,r=[];if(null==t)for(;++o<i;)isNaN(n=g(e[o]))||r.push(n);else for(;++o<i;)isNaN(n=g(t(e[o],o,e)))||r.push(n);return P(r.sort(u),.5)},L=function(e){for(var t,n,i,o=e.length,r=-1,s=0;++r<o;)s+=e[r].length;for(n=new Array(s);--o>=0;)for(i=e[o],t=i.length;--t>=0;)n[--s]=i[t];return n},B=function(e,t){var n,i,o=e.length,r=-1;if(null==t){for(;++r<o;)if(null!=(n=e[r])&&n>=n)for(i=n;++r<o;)null!=(n=e[r])&&i>n&&(i=n)}else for(;++r<o;)if(null!=(n=t(e[r],r,e))&&n>=n)for(i=n;++r<o;)null!=(n=t(e[r],r,e))&&i>n&&(i=n);return i},Q=function(e,t){for(var n=t.length,i=new Array(n);n--;)i[n]=e[t[n]];return i},U=function(e,t){if(n=e.length){var n,i,o=0,r=0,s=e[r];for(null==t&&(t=u);++o<n;)(t(i=e[o],s)<0||0!==t(s,s))&&(s=i,r=o);return 0===t(s,s)?r:void 0}},j=function(e,t,n){for(var i,o,r=(null==n?e.length:n)-(t=null==t?0:+t);r;)o=Math.random()*r--|0,i=e[r+t],e[r+t]=e[o+t],e[o+t]=i;return e},q=function(e,t){var n,i=e.length,o=-1,r=0;if(null==t)for(;++o<i;)(n=+e[o])&&(r+=n);else for(;++o<i;)(n=+t(e[o],o,e))&&(r+=n);return r},H=function(e){if(!(o=e.length))return[];for(var t=-1,n=B(e,a),i=new Array(n);++t<n;)for(var o,r=-1,s=i[t]=new Array(o);++r<o;)s[r]=e[r][t];return i},z=function(){return H(arguments)};n.d(t,\"b\",function(){return d}),n.d(t,\"d\",function(){return p}),n.d(t,\"c\",function(){return h}),n.d(t,\"a\",function(){return u}),n.d(t,\"e\",function(){return l}),n.d(t,\"f\",function(){return m}),n.d(t,\"g\",function(){return y}),n.d(t,\"h\",function(){return b}),n.d(t,\"i\",function(){return C}),n.d(t,\"j\",function(){return M}),n.d(t,\"w\",function(){return D}),n.d(t,\"x\",function(){return $}),n.d(t,\"y\",function(){return I}),n.d(t,\"k\",function(){return N}),n.d(t,\"l\",function(){return V}),n.d(t,\"m\",function(){return k}),n.d(t,\"n\",function(){return L}),n.d(t,\"o\",function(){return B}),n.d(t,\"p\",function(){return f}),n.d(t,\"q\",function(){return Q}),n.d(t,\"r\",function(){return P}),n.d(t,\"s\",function(){return E}),n.d(t,\"t\",function(){return U}),n.d(t,\"u\",function(){return j}),n.d(t,\"v\",function(){return q}),n.d(t,\"B\",function(){return F}),n.d(t,\"z\",function(){return r}),n.d(t,\"A\",function(){return s}),n.d(t,\"C\",function(){return H}),n.d(t,\"D\",function(){return v}),n.d(t,\"E\",function(){return z})},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(4),s=function(){function e(){}return e.getUrlParameter=function(e){return decodeURIComponent((new RegExp(\"[?|&]\"+e+\"=([^&;]+?)(&|#|;|$)\").exec(location.search)||[,\"\"])[1].replace(/\\+/g,\"%20\"))||null},e.merge=function(t){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];return n.forEach(function(n){var o=e.normalizeAsParts(n),s=o.path,a=o.queryNormalized;if(r.Utils.isNonEmptyString(s)&&(t=i({},t,{url:s})),r.Utils.isNonEmptyArray(a)){var u=r.Utils.isNonEmptyArray(t.queryString),l=u?r.Utils.concatWithoutDuplicate(t.queryString,a):a;t=i({},t,{queryString:l})}}),t},e.normalizeAsString=function(e){var t=this.normalizeAsParts(e),n=t.queryNormalized;return\"\"+t.path+this.addToUrlIfNotEmpty(n,\"&\",\"?\")},e.normalizeAsParts=function(t){var n=this.normalizePaths(t);return{pathsNormalized:n,queryNormalized:this.normalizeQueryString(t),path:this.addToUrlIfNotEmpty(n,\"/\",e.getRelativePathLeadingCharacters(t))}},e.getRelativePathLeadingCharacters=function(e){var t=\"\",n=/^(([\\/])+)/,i=o.first(this.toArray(e.paths));if(i){var r=n.exec(i);r&&(t=r[0])}return t},e.normalizePaths=function(e){var t=this;return this.toArray(e.paths).map(function(e){return r.Utils.isNonEmptyString(e)?t.removeProblematicChars(e):\"\"})},e.normalizeQueryString=function(t){var n=this,i=[];if(t.queryAsString){var s=this.toArray(t.queryAsString).map(function(e){return e=n.removeProblematicChars(e),e=n.encodeKeyValuePair(e)});i=i.concat(s)}if(t.query){var a=o.pairs(t.query),u=a.map(function(t){var i=t[0],s=t[1],a=[\"pipeline\"];return o.isString(i)&&o.contains(a,i.toLowerCase())||!e.isInvalidQueryStringValue(s)&&!e.isInvalidQueryStringValue(i)?n.isEncoded(s)?[n.removeProblematicChars(i),s].join(\"=\"):[n.removeProblematicChars(i),r.Utils.safeEncodeURIComponent(s)].join(\"=\"):\"\"});i=i.concat(u)}return o.uniq(i)},e.addToUrlIfNotEmpty=function(e,t,n){return r.Utils.isNonEmptyArray(e)?\"\"+n+o.compact(e).join(t):\"\"},e.startsWith=function(e,t){return t.substr(0,e.length)===e},e.endsWith=function(e,t){return t.substring(t.length-e.length,t.length)===e},e.removeAtEnd=function(e,t){for(;this.endsWith(e,t);)t=t.slice(0,t.length-e.length);return t},e.removeAtStart=function(e,t){for(;this.startsWith(e,t);)t=t.slice(e.length);return t},e.toArray=function(e){return o.isArray(e)?e:[e]},e.encodeKeyValuePair=function(e){var t=e.split(\"=\");if(0==t.length)return e;var n=t[0],i=o.rest(t,1).join(\"\");return n&&i?(n=this.removeProblematicChars(n),this.isEncoded(i)||(i=r.Utils.safeEncodeURIComponent(i)),n+\"=\"+i):e},e.removeProblematicChars=function(e){var t=this;return[\"?\",\"/\",\"#\",\"=\"].forEach(function(n){e=t.removeAtStart(n,e),e=t.removeAtEnd(n,e)}),e},e.isEncoded=function(e){return e!=decodeURIComponent(e)},e.isInvalidQueryStringValue=function(e){return o.isString(e)?r.Utils.isEmptyString(e):r.Utils.isNullOrUndefined(e)},e}();t.UrlUtils=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(94),r=n(96),s=n(0),a=n(11),u=n(26),l=n(5),c=n(30),p=n(308),h=n(34),d=n(44),f=n(41),m=n(1),y=n(45),g=n(21),v=n(39),b=n(4),C=function(){function e(){this.searchAsYouType=!1,this.cancel=!1,this.logInActionsHistory=!1,this.shouldRedirectStandaloneSearchbox=!0}return e}(),S=function(e){function t(n,i,o,r){var s=e.call(this,n,t.ID)||this;return s.options=i,s.searchInterface=r,s.modalBox=u.ModalBox,s.closeModalBox=!0,s.showingExecutingQueryAnimation=!1,s.localStorage=new y.LocalStorageUtils(\"lastQueryHash\"),l.Assert.exists(n),l.Assert.exists(i),s.firstQuery=!0,s.enableHistory(),s}return i(t,e),Object.defineProperty(t.prototype,\"usageAnalytics\",{get:function(){return this.searchInterface.usageAnalytics},enumerable:!0,configurable:!0}),t.prototype.setEndpoint=function(e){this.overrideEndpoint=e,this.logger.debug(\"Endpoint set\",e)},t.prototype.getEndpoint=function(){var e=this.overrideEndpoint||this.options.endpoint;return new p.SearchEndpointWithDefaultCallOptions(e,this.getCallOptions())},t.prototype.getLastQuery=function(){return this.lastQuery||(new d.QueryBuilder).build()},t.prototype.getLastResults=function(){return this.lastQueryResults},t.prototype.executeQuery=function(e){var t=this;e=s.extend(new C,e),this.closeModalBoxIfNeeded(e?e.closeModalBox:void 0),this.logger.debug(\"Executing new query\"),this.cancelAnyCurrentPendingQuery(),null!=e.beforeExecuteQuery&&e.beforeExecuteQuery(),e.ignoreWarningSearchEvent||this.usageAnalytics.warnAboutSearchEvent(),this.showExecutingQueryAnimation();var n={searchAsYouType:e.searchAsYouType,cancel:e.cancel,origin:e.origin,shouldRedirectStandaloneSearchbox:e.shouldRedirectStandaloneSearchbox};if(this.newQueryEvent(n),n.cancel)return void this.cancelQuery();var i=this.createQueryBuilder(e);if(i){var o=i.build();e.logInActionsHistory&&this.logQueryInActionsHistory(o,e.isFirstQuery);var r=this.getEndpoint(),a=this.currentPendingQuery=r.search(o);a.then(function(n){if(l.Assert.exists(n),t.firstQuery&&(t.firstQuery=!1),a===t.currentPendingQuery){t.logger.debug(\"Query results received\",o,n),t.keepLastSearchUid(o,n,e)?(n.searchUid=t.getLastSearchUid(),n._reusedSearchUid=!0,g.QueryUtils.setPropertyOnResults(n,\"queryUid\",t.getLastSearchUid())):(t.lastQueryHash=t.queryHash(o,n),t.lastSearchUid=n.searchUid),t.lastQuery=o,t.lastQueryResults=n,t.currentError=null;var r={queryBuilder:i,query:o,results:n,searchAsYouType:e.searchAsYouType};t.preprocessResultsEvent(r);var s={queryBuilder:i,query:o,results:n,searchAsYouType:e.searchAsYouType,retryTheQuery:!1};if(0==n.results.length&&t.noResultEvent(s),s.retryTheQuery)return t.executeQuery();t.lastQueryBuilder=i,t.currentPendingQuery=void 0;var u={queryBuilder:i,query:o,results:n,searchAsYouType:e.searchAsYouType};return t.querySuccessEvent(u),c.Defer.defer(function(){t.deferredQuerySuccessEvent(u),t.hideExecutingQueryAnimation()}),n}}).catch(function(n){if(a===t.currentPendingQuery){t.logger.error(\"Query triggered an error\",o,n),t.currentPendingQuery=void 0;var s={queryBuilder:i,endpoint:r,query:o,error:n,searchAsYouType:e.searchAsYouType};t.lastQuery=o,t.lastQueryResults=null,t.currentError=n,t.queryError(s),t.hideExecutingQueryAnimation()}});var u={queryBuilder:i,query:o,searchAsYouType:e.searchAsYouType,promise:a};return this.duringQueryEvent(u),this.currentPendingQuery}},t.prototype.fetchMore=function(e){var t=this;if(void 0==this.currentPendingQuery){this.usageAnalytics.sendAllPendingEvents();var n=new d.QueryBuilder;this.continueLastQueryBuilder(n,e);var i=n.build(),o=this.getEndpoint(),r=this.currentPendingQuery=o.search(i),u={queryBuilder:n,query:i,searchAsYouType:!1,promise:r};return m.$$(this.element).trigger(a.QueryEvents.duringFetchMoreQuery,u),this.lastQueryBuilder=n,this.lastQuery=i,r.then(function(e){t.currentPendingQuery=void 0,null==t.lastQueryResults?t.lastQueryResults=e:s.forEach(e.results,function(e){t.lastQueryResults.results.push(e)});var o={queryBuilder:n,query:i,results:e,searchAsYouType:!1};t.preprocessResultsEvent(o),g.QueryUtils.setIndexAndUidOnQueryResults(i,e,t.getLastSearchUid(),e.pipeline,e.splitTestRun);var r={query:i,results:e,queryBuilder:n,searchAsYouType:!1};t.fetchMoreSuccessEvent(r)}),this.currentPendingQuery}},t.prototype.cancelQuery=function(){this.cancelAnyCurrentPendingQuery(),this.hideExecutingQueryAnimation()},t.prototype.deferExecuteQuery=function(e){var t=this;this.showExecutingQueryAnimation(),c.Defer.defer(function(){return t.executeQuery(e)})},t.prototype.ensureCreatedQueryBuilder=function(){this.createdOneQueryBuilder||this.createQueryBuilder(new C)},t.prototype.createQueryBuilder=function(e){l.Assert.exists(e),this.createdOneQueryBuilder=!0;var t=new d.QueryBuilder;t.locale=String.locale,t.firstResult=t.firstResult||0;var n={queryBuilder:t,searchAsYouType:e.searchAsYouType,cancel:e.cancel};this.buildingQueryEvent(n);var i={queryBuilder:t,searchAsYouType:e.searchAsYouType,cancel:e.cancel};if(this.doneBuildingQueryEvent(i),n.cancel||i.cancel)return void this.cancelQuery();var o=this.getPipelineInUrl();return o&&(t.pipeline=o),t},t.prototype.isStandaloneSearchbox=function(){return b.Utils.isNonEmptyString(this.options.searchPageUri)},t.prototype.saveLastQuery=function(){this.localStorage.save({expire:(new Date).getTime()+18e5,hash:this.lastQueryHash,uid:this.lastSearchUid})},t.prototype.getLastQueryHash=function(){return null!=this.lastQueryHash?this.lastQueryHash:(this.loadLastQueryHash(),this.lastQueryHash||this.queryHash((new d.QueryBuilder).build()))},t.prototype.resetHistory=function(){this.historyStore.clear()},t.prototype.enableHistory=function(){this.historyStore=new o.history.HistoryStore},t.prototype.disableHistory=function(){this.historyStore=new o.history.HistoryStore(new r.NullStorage)},t.prototype.closeModalBoxIfNeeded=function(e){(void 0!=e?e:this.closeModalBox)&&this.modalBox.close(!0)},t.prototype.getLastSearchUid=function(){return null!=this.lastSearchUid?this.lastSearchUid:(this.loadLastQueryHash(),this.lastSearchUid)},t.prototype.loadLastQueryHash=function(){var e=this.localStorage.load();null!=e&&(new Date).getTime()<=e.expire&&(this.lastQueryHash=e.hash,this.lastSearchUid=e.uid,this.localStorage.remove())},t.prototype.continueLastQueryBuilder=function(e,t){s.extend(e,this.lastQueryBuilder),e.firstResult=e.firstResult+e.numberOfResults,e.numberOfResults=t},t.prototype.getPipelineInUrl=function(){return v.UrlUtils.getUrlParameter(\"pipeline\")},t.prototype.cancelAnyCurrentPendingQuery=function(){return!!b.Utils.exists(this.currentPendingQuery)&&(this.logger.debug(\"Cancelling current pending query\"),Promise.reject(\"Cancelling current pending query\"),this.currentPendingQuery=void 0,!0)},t.prototype.showExecutingQueryAnimation=function(){this.showingExecutingQueryAnimation||(m.$$(this.element).addClass(\"coveo-executing-query\"),this.showingExecutingQueryAnimation=!0)},t.prototype.hideExecutingQueryAnimation=function(){this.showingExecutingQueryAnimation&&(m.$$(this.element).removeClass(\"coveo-executing-query\"),this.showingExecutingQueryAnimation=!1)},t.prototype.keepLastSearchUid=function(e,t,n){return!0===n.keepLastSearchUid||this.searchInterface&&this.searchInterface.options&&this.searchInterface.options.enableHistory&&this.getLastQueryHash()==this.queryHash(e,t)},t.prototype.queryHash=function(e,t){var n=JSON.stringify(s.omit(e,\"firstResult\",\"groupBy\",\"debug\"));return null!=t&&(n+=t.pipeline),n},t.prototype.getCallOptions=function(){var e={options:{authentication:[]}};return m.$$(this.element).trigger(a.QueryEvents.buildingCallOptions,e),e.options},t.prototype.newQueryEvent=function(e){m.$$(this.element).trigger(a.QueryEvents.newQuery,e)},t.prototype.buildingQueryEvent=function(e){m.$$(this.element).trigger(a.QueryEvents.buildingQuery,e)},t.prototype.doneBuildingQueryEvent=function(e){m.$$(this.element).trigger(a.QueryEvents.doneBuildingQuery,e)},t.prototype.duringQueryEvent=function(e){m.$$(this.element).trigger(a.QueryEvents.duringQuery,e)},t.prototype.querySuccessEvent=function(e){m.$$(this.element).trigger(a.QueryEvents.querySuccess,e)},t.prototype.fetchMoreSuccessEvent=function(e){m.$$(this.element).trigger(a.QueryEvents.fetchMoreSuccess,e)},t.prototype.deferredQuerySuccessEvent=function(e){m.$$(this.element).trigger(a.QueryEvents.deferredQuerySuccess,e)},t.prototype.queryError=function(e){m.$$(this.element).trigger(a.QueryEvents.queryError,e)},t.prototype.preprocessResultsEvent=function(e){m.$$(this.element).trigger(a.QueryEvents.preprocessResults,e)},t.prototype.noResultEvent=function(e){m.$$(this.element).trigger(a.QueryEvents.noResults,e)},t.prototype.debugInfo=function(){var e=this,t={query:this.lastQuery};return null!=this.lastQueryResults&&(t.queryDuration=function(){return e.buildQueryDurationSection(e.lastQueryResults)},t.results=function(){return s.omit(e.lastQueryResults,\"results\")}),null!=this.currentError&&(t.error=function(){return e.currentError}),t},t.prototype.buildQueryDurationSection=function(e){var t=m.Dom.createElement(\"div\",{className:\"coveo-debug-queryDuration\"}),n=m.Dom.createElement(\"div\",{className:\"coveo-debug-durations\"}),i=h.BaseComponent.getComponentRef(\"Debug\");return t.appendChild(n),s.forEach(i.durationKeys,function(i){var o=e[i];if(null!=o){n.appendChild(m.Dom.createElement(\"div\",{className:\"coveo-debug-duration\",style:\"width:\"+o+\"px\",\"data-id\":i}));var r=m.Dom.createElement(\"div\",{className:\"coveo-debug-duration-legend\",\"data-id\":i});t.appendChild(r);var s=m.Dom.createElement(\"span\",{className:\"coveo-debug-duration-label\"});s.appendChild(document.createTextNode(i)),r.appendChild(s);var a=m.Dom.createElement(\"span\",{className:\"coveo-debug-duration-value\"});a.appendChild(document.createTextNode(o)),r.appendChild(a)}}),t},t.prototype.logQueryInActionsHistory=function(e,t){var n={name:\"Query\",value:e.q,time:JSON.stringify(new Date)};this.historyStore.addElement(n)},t.ID=\"QueryController\",t}(f.RootComponent);t.QueryController=S},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(34),r=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.element=t,i.type=n,i}return i(t,e),t}(o.BaseComponent);t.RootComponent=r},function(e,t,n){var i=n(157)(\"wks\"),o=n(159),r=n(36).Symbol,s=\"function\"==typeof r;(e.exports=function(e){return i[e]||(i[e]=s&&r[e]||(s?r:o)(\"Symbol.\"+e))}).store=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(19),o=n(21),r=n(111),s=n(29),a=n(4),u=n(1),l=n(0),c=n(6),p=function(){function e(){}return e.getRegexToUseForFacetSearch=function(e,t){return new RegExp(i.StringUtils.stringToRegex(e,t),\"i\")},e.getDisplayValueFromValueCaption=function(e,t,n){var i=this.tryToGetTranslatedCaption(t,e);return n[e]||i},e.getValuesToUseForSearchInFacet=function(e,t){var n=[e],i=this.getRegexToUseForFacetSearch(e,t.options.facetSearchIgnoreAccents);return t.options.valueCaption?(l.chain(t.options.valueCaption).pairs().filter(function(e){return i.test(e[1])}).each(function(e){n.push(e[0])}),(o.QueryUtils.isStratusAgnosticField(t.options.field,\"@objecttype\")||o.QueryUtils.isStratusAgnosticField(t.options.field,\"@filetype\"))&&l.each(r.FileTypes.getFileTypeCaptions(),function(e,o){o in t.options.valueCaption||!i.test(e)||n.push(o)})):o.QueryUtils.isStratusAgnosticField(t.options.field,\"@objecttype\")||o.QueryUtils.isStratusAgnosticField(t.options.field,\"@filetype\")?l.each(l.filter(l.pairs(r.FileTypes.getFileTypeCaptions()),function(e){return i.test(e[1])}),function(e){n.push(e[0])}):o.QueryUtils.isStratusAgnosticField(t.options.field,\"@month\")&&l.each(l.range(1,13),function(e){i.test(s.DateUtils.monthToString(e-1))&&n.push((\"0\"+e.toString()).substr(-2))}),n},e.buildFacetSearchPattern=function(e){return e=l.map(e,function(e){return a.Utils.escapeRegexCharacter(e)}),e[0]=\".*\"+e[0]+\".*\",e.join(\"|\")},e.needAnotherFacetSearch=function(e,t,n,i){return e<t&&e<i&&e>n},e.addNoStateCssClassToFacetValues=function(e,t){if(0!=e.values.getSelected().length){var n=u.$$(t).findAll(\"li:not(.coveo-selected)\");l.each(n,function(e){u.$$(e).addClass(\"coveo-no-state\")})}},e.tryToGetTranslatedCaption=function(t,n){var i;if(o.QueryUtils.isStratusAgnosticField(t.toLowerCase(),\"@filetype\"))i=r.FileTypes.getFileType(n).caption;else if(o.QueryUtils.isStratusAgnosticField(t.toLowerCase(),\"@objecttype\"))i=r.FileTypes.getObjectType(n).caption;else if(e.isMonthFieldValue(t,n)){var u=parseInt(n,10);i=s.DateUtils.monthToString(u-1)}else i=c.l(n);return void 0!=i&&a.Utils.isNonEmptyString(i)?i:n},e.isMonthFieldValue=function(e,t){if(!o.QueryUtils.isStratusAgnosticField(e.toLowerCase(),\"@month\"))return!1;var n=parseInt(t,10);return!isNaN(n)&&!(n<1||n>12)},e}();t.FacetUtils=p},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(4),r=n(71),s=n(177),a=function(){function e(){this.expression=new r.ExpressionBuilder,this.advancedExpression=new r.ExpressionBuilder,this.constantExpression=new r.ExpressionBuilder,this.longQueryExpression=new r.ExpressionBuilder,this.disjunctionExpression=new r.ExpressionBuilder,this.enableQuerySyntax=!1,this.firstResult=0,this.numberOfResults=10,this.requiredFields=[],this.includeRequiredFields=!1,this.enableDidYouMean=!1,this.enableDebug=!1,this.sortCriteria=\"relevancy\",this.retrieveFirstSentences=!0,this.queryFunctions=[],this.rankingFunctions=[],this.groupByRequests=[],this.facetRequests=[],this.facetOptions={},this.categoryFacets=[],this.enableDuplicateFiltering=!1}return e.prototype.build=function(){return{q:this.expression.build(),aq:this.advancedExpression.build(),cq:this.constantExpression.build(),lq:this.longQueryExpression.build(),dq:this.disjunctionExpression.build(),searchHub:this.searchHub,tab:this.tab,locale:this.locale,pipeline:this.pipeline,maximumAge:this.maximumAge,wildcards:this.enableWildcards,questionMark:this.enableQuestionMarks,lowercaseOperators:this.enableLowercaseOperators,partialMatch:this.enablePartialMatch,partialMatchKeywords:this.partialMatchKeywords,partialMatchThreshold:this.partialMatchThreshold,firstResult:this.firstResult,numberOfResults:this.numberOfResults,excerptLength:this.excerptLength,filterField:this.filterField,filterFieldRange:this.filterFieldRange,parentField:this.parentField,childField:this.childField,fieldsToInclude:this.computeFieldsToInclude(),fieldsToExclude:this.fieldsToExclude,enableDidYouMean:this.enableDidYouMean,sortCriteria:this.sortCriteria,sortField:this.sortField,queryFunctions:this.queryFunctions,rankingFunctions:this.rankingFunctions,groupBy:this.groupBy,facets:this.facets,facetOptions:this.facetOptions,categoryFacets:this.categoryFacets,retrieveFirstSentences:this.retrieveFirstSentences,timezone:this.timezone,enableQuerySyntax:this.enableQuerySyntax,enableDuplicateFiltering:this.enableDuplicateFiltering,enableCollaborativeRating:this.enableCollaborativeRating,debug:this.enableDebug,context:this.context,actionsHistory:this.actionsHistory,recommendation:this.recommendation,allowQueriesWithoutKeywords:this.allowQueriesWithoutKeywords,userActions:this.userActions,commerce:this.commerce}},e.prototype.computeCompleteExpression=function(){return this.computeCompleteExpressionParts().full},e.prototype.computeCompleteExpressionParts=function(){return new s.QueryBuilderExpression(this.expression.build(),this.advancedExpression.build(),this.constantExpression.build(),this.disjunctionExpression.build())},e.prototype.computeCompleteExpressionExcept=function(e){return this.computeCompleteExpressionPartsExcept(e).full},e.prototype.computeCompleteExpressionPartsExcept=function(e){r.ExpressionBuilder.merge(this.expression,this.advancedExpression).remove(e);var t=new r.ExpressionBuilder;t.fromExpressionBuilder(this.expression),t.remove(e);var n=new r.ExpressionBuilder;n.fromExpressionBuilder(this.advancedExpression),n.remove(e);var i=new r.ExpressionBuilder;i.fromExpressionBuilder(this.constantExpression),i.remove(e);var o=new r.ExpressionBuilder;return o.fromExpressionBuilder(this.disjunctionExpression),o.remove(e),new s.QueryBuilderExpression(t.build(),n.build(),i.build(),o.build())},e.prototype.addFieldsToInclude=function(e){this.fieldsToInclude=i.uniq((this.fieldsToInclude||[]).concat(e))},e.prototype.addRequiredFields=function(e){this.requiredFields=i.uniq(this.requiredFields.concat(e))},e.prototype.addFieldsToExclude=function(e){this.fieldsToExclude=i.uniq((this.fieldsToInclude||[]).concat(e))},e.prototype.computeFieldsToInclude=function(){return this.includeRequiredFields||null!=this.fieldsToInclude?this.requiredFields.concat(this.fieldsToInclude||[]):null},e.prototype.addContextValue=function(e,t){null==this.context&&(this.context={}),this.context[e]=t},e.prototype.addContext=function(e){null==this.context&&(this.context={}),i.extend(this.context,e)},e.prototype.containsEndUserKeywords=function(){var e=this.build();return o.Utils.isNonEmptyString(e.q)||o.Utils.isNonEmptyString(e.lq)},Object.defineProperty(e.prototype,\"groupBy\",{get:function(){if(!o.Utils.isEmptyArray(this.groupByRequests))return this.groupByRequests},set:function(e){this.groupByRequests=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"facets\",{get:function(){if(!o.Utils.isEmptyArray(this.facetRequests))return this.facetRequests},set:function(e){this.facetRequests=e},enumerable:!0,configurable:!0}),e}();t.QueryBuilder=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i;try{i=window.localStorage}catch(e){i=null}var o=function(){function e(e){this.id=e}return e.prototype.save=function(e){try{null!=i&&i.setItem(this.getLocalStorageKey(),JSON.stringify(e))}catch(e){}},e.prototype.load=function(){try{if(null==i)return null;var e=i.getItem(this.getLocalStorageKey());return e&&JSON.parse(e)}catch(e){return null}},e.prototype.remove=function(e){try{if(null!=i)if(void 0==e)i.removeItem(this.getLocalStorageKey());else{var t=this.load();delete t[e],this.save(t)}}catch(e){}},e.prototype.getLocalStorageKey=function(){return\"coveo-\"+this.id},e}();t.LocalStorageUtils=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});!function(e){e[e.BOOLEAN=0]=\"BOOLEAN\",e[e.NUMBER=1]=\"NUMBER\",e[e.STRING=2]=\"STRING\",e[e.LOCALIZED_STRING=3]=\"LOCALIZED_STRING\",e[e.LIST=4]=\"LIST\",e[e.SELECTOR=5]=\"SELECTOR\",e[e.CHILD_HTML_ELEMENT=6]=\"CHILD_HTML_ELEMENT\",e[e.TEMPLATE=7]=\"TEMPLATE\",e[e.FIELD=8]=\"FIELD\",e[e.FIELDS=9]=\"FIELDS\",e[e.ICON=10]=\"ICON\",e[e.COLOR=11]=\"COLOR\",e[e.OBJECT=12]=\"OBJECT\",e[e.QUERY=13]=\"QUERY\",e[e.HELPER=14]=\"HELPER\",e[e.LONG_STRING=15]=\"LONG_STRING\",e[e.JSON=16]=\"JSON\",e[e.JAVASCRIPT=17]=\"JAVASCRIPT\",e[e.NONE=18]=\"NONE\",e[e.QUERY_EXPRESSION=19]=\"QUERY_EXPRESSION\"}(t.ComponentOptionsType||(t.ComponentOptionsType={}))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=n(4),r=n(0),s=n(70),a=function(){function e(){}return e.getHash=function(t){void 0===t&&(t=window),i.Assert.exists(t);var n=\"#\"+(t.location.href.split(\"#\")[1]||\"\");return e.getAjaxcrawlableHash(n)},e.getValue=function(t,n){i.Assert.isNonEmptyString(t),i.Assert.exists(n),n=e.getAjaxcrawlableHash(n);var o=e.getRawValue(t,n);return void 0!=o&&(o=e.getValueDependingOnType(t,o)),o},e.encodeValues=function(t){var n=[];return r.each(t,function(t,i,s){var a=\"\";o.Utils.isNonEmptyArray(t)?a=e.encodeArray(t):r.isObject(t)&&o.Utils.isNonEmptyArray(r.keys(t))?a=e.encodeObject(t):o.Utils.isNullOrUndefined(t)||(a=o.Utils.safeEncodeURIComponent(t.toString())),\"\"!=a&&n.push(i+\"=\"+a)}),n.join(\"&\")},e.getAjaxcrawlableHash=function(e){return void 0!=e[1]&&\"!\"==e[1]?e.substring(0,1)+e.substring(2):e},e.getRawValue=function(e,t){i.Assert.exists(e),i.Assert.exists(t),i.Assert.check(0==t.indexOf(\"#\")||\"\"==t);for(var n=t.substr(1).split(\"&\"),o=0,r=!0,s=void 0;r;){var a=n[o].split(\"=\");a[0]==e?(r=!1,s=a[1]):++o>=n.length&&(o=void 0,r=!1)}return s},e.getValueDependingOnType=function(t,n){var i,o=e.getValueType(t,n);if(\"object\"==o)i=e.decodeObject(n);else if(\"array\"==o)i=e.decodeArray(n);else try{i=decodeURIComponent(n)}catch(i){new s.Logger(e).warn(\"Error while decoding a value from the URL as a standard value\",i,t,n)}return i},e.getValueType=function(t,n){return\"q\"==t?\"other\":e.isObject(n)?\"object\":e.startsOrEndsWithSquareBracket(n)?\"array\":\"other\"},e.startsWithLeftSquareBracket=function(t){return e.DELIMITER.arrayStartRegExp.test(t)},e.startsWithEncodedLeftSquareBracket=function(t){return 0==t.indexOf(o.Utils.safeEncodeURIComponent(e.DELIMITER.arrayStart))},e.endsWithRightSquareBracket=function(t){return e.DELIMITER.arrayEndRegExp.test(t)},e.endsWithEncodedRightSquareBracket=function(t){var n=o.Utils.safeEncodeURIComponent(e.DELIMITER.arrayEnd);return t.indexOf(n)==t.length-n.length},e.isObjectStartNotEncoded=function(t){return t.substr(0,1)==e.DELIMITER.objectStart},e.isObjectStartEncoded=function(t){return 0==t.indexOf(o.Utils.safeEncodeURIComponent(e.DELIMITER.objectStart))},e.isObjectEndNotEncoded=function(t){return t.substr(t.length-1)==e.DELIMITER.objectEnd},e.isObjectEndEncoded=function(t){return t.indexOf(o.Utils.safeEncodeURIComponent(e.DELIMITER.objectEnd))==t.length-o.Utils.safeEncodeURIComponent(e.DELIMITER.objectEnd).length},e.isObject=function(t){var n=e.isObjectStartNotEncoded(t)||e.isObjectStartEncoded(t),i=e.isObjectEndNotEncoded(t)||e.isObjectEndEncoded(t);return n&&i},e.startsOrEndsWithSquareBracket=function(t){var n=e.startsWithLeftSquareBracket(t)||e.startsWithEncodedLeftSquareBracket(t),i=e.endsWithRightSquareBracket(t)||e.endsWithEncodedRightSquareBracket(t);return n||i},e.encodeArray=function(t){var n=r.map(t,function(e){return o.Utils.safeEncodeURIComponent(e)});return e.DELIMITER.arrayStart+n.join(\",\")+e.DELIMITER.arrayEnd},e.encodeObject=function(t){var n=this,i=r.map(t,function(e,t,i){return'\"'+o.Utils.safeEncodeURIComponent(t)+'\":'+n.encodeValue(e)});return e.DELIMITER.objectStart+i.join(\" , \")+e.DELIMITER.objectEnd},e.encodeValue=function(t){return r.isArray(t)?e.encodeArray(t):r.isObject(t)?JSON.stringify(t):r.isNumber(t)||r.isBoolean(t)?o.Utils.safeEncodeURIComponent(t.toString()):'\"'+o.Utils.safeEncodeURIComponent(t)+'\"'},e.decodeObject=function(t){e.isObjectStartEncoded(t)&&e.isObjectEndEncoded(t)&&(t=t.replace(/encodeURIComponent(HashUtils.Delimiter.objectStart)/,e.DELIMITER.objectStart),t=t.replace(o.Utils.safeEncodeURIComponent(e.DELIMITER.objectEnd),e.DELIMITER.objectEnd));try{var n=/(\\[.*\\])/.exec(t);n&&(t=t.replace(/(\\[.*\\])/,\"[\"+this.decodeArray(n[1]).map(function(e){return'\"'+e+'\"'}).join(\",\")+\"]\"));var i=decodeURIComponent(t);return JSON.parse(i)}catch(n){return new s.Logger(e).warn(\"Error while decoding a value from the URL as an object\",n,t),{}}},e.decodeArray=function(t){var n=e.removeSquareBrackets(t),i=n.split(\",\");return r.chain(i).map(function(n){try{return decodeURIComponent(n)}catch(i){return new s.Logger(e).warn(\"Error while decoding a value from the URL as an array\",i,n,t),null}}).compact().value()},e.removeSquareBrackets=function(t){return e.startsWithEncodedLeftSquareBracket(t)&&(t=t.replace(o.Utils.safeEncodeURIComponent(e.DELIMITER.arrayStart),\"\")),e.endsWithEncodedRightSquareBracket(t)&&(t=t.replace(o.Utils.safeEncodeURIComponent(e.DELIMITER.arrayEnd),\"\")),e.startsWithLeftSquareBracket(t)&&(t=t.replace(e.DELIMITER.arrayStart,\"\")),e.endsWithRightSquareBracket(t)&&(t=t.replace(e.DELIMITER.arrayEnd,\"\")),t},e.DELIMITER={objectStart:\"{\",objectEnd:\"}\",arrayStart:\"[\",arrayEnd:\"]\",arrayStartRegExp:/^\\[/,arrayEndRegExp:/\\]$/},e}();t.HashUtils=a},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(209),r=n(210),s=n(0),a=function(){function e(e,t,n){var i=this;this.expression=t,this.input=n,s.isString(e)?this.value=e:s.isArray(e)&&(this.subResults=e,s.forEach(this.subResults,function(e){e.parent=i}))}return e.prototype.isSuccess=function(){return null!=this.value||null!=this.subResults&&s.all(this.subResults,function(e){return e.isSuccess()})},e.prototype.path=function(e){var t=null!=this.parent&&this.parent!=e?this.parent.path(e):[];return t.push(this),t},e.prototype.findParent=function(e){for(var t=this,n=s.isString(e)?function(t){return e==t.expression.id}:e;null!=t&&!n(t);)t=t.parent;return t},e.prototype.find=function(e){var t=s.isString(e)?function(t){return e==t.expression.id}:e;if(t(this))return this;if(this.subResults)for(var n=0;n<this.subResults.length;n++){var i=this.subResults[n].find(t);if(i)return i}return null},e.prototype.findAll=function(e){var t=[],n=s.isString(e)?function(t){return e==t.expression.id}:e;return n(this)&&t.push(this),this.subResults&&(t=s.reduce(this.subResults,function(e,t){return e.concat(t.findAll(n))},t)),t},e.prototype.resultAt=function(e,t){if(e<0||e>this.getLength())return[];if(null!=t){if(s.isString(t)){if(t==this.expression.id)return[this]}else if(t(this))return[this]}else{if(null!=(null==this.value&&null==this.subResults?this.input:this.value))return[this]}if(null!=this.subResults){for(var n=[],i=0;i<this.subResults.length;i++){var o=this.subResults[i];if(n=n.concat(o.resultAt(e,t)),(e-=o.getLength())<0)break}return n}return[]},e.prototype.getExpect=function(){return null==this.value&&null==this.subResults?[this]:null!=this.subResults?s.reduce(this.subResults,function(e,t){return e.concat(t.getExpect())},[]):[]},e.prototype.getBestExpect=function(){var e=this.getExpect(),t=s.groupBy(e,function(e){return e.input}),n=s.last(s.keys(t).sort(function(e,t){return t.length-e.length})),i=t[n],t=s.groupBy(i,function(e){return e.expression.id});return s.map(t,function(e){return s.chain(e).map(function(e){return{path:e.path().length,result:e}}).sortBy(\"path\").pluck(\"result\").first().value()})},e.prototype.getHumanReadableExpect=function(){var e=this.getBestExpect(),t=e.length>0?s.last(e).input:\"\";return\"Expected \"+s.map(e,function(e){return e.getHumanReadable()}).join(\" or \")+\" but \"+(t.length>0?JSON.stringify(t[0]):\"end of input\")+\" found.\"},e.prototype.before=function(){if(null==this.parent)return\"\";var e=s.indexOf(this.parent.subResults,this);return this.parent.before()+s.chain(this.parent.subResults).first(e).map(function(e){return e.toString()}).join(\"\").value()},e.prototype.after=function(){if(null==this.parent)return\"\";var e=s.indexOf(this.parent.subResults,this);return s.chain(this.parent.subResults).last(this.parent.subResults.length-e-1).map(function(e){return e.toString()}).join(\"\").value()+this.parent.after()},e.prototype.getLength=function(){return null!=this.value?this.value.length:null!=this.subResults?s.reduce(this.subResults,function(e,t){return e+t.getLength()},0):this.input.length},e.prototype.toHtmlElement=function(){var e=document.createElement(\"span\"),t=null!=this.expression?this.expression.id:null;return null!=t&&e.setAttribute(\"data-id\",t),e.setAttribute(\"data-success\",this.isSuccess().toString()),null!=this.value?(e.appendChild(document.createTextNode(this.value)),e.setAttribute(\"data-value\",this.value)):null!=this.subResults?s.each(this.subResults,function(t){e.appendChild(t.toHtmlElement())}):(e.appendChild(document.createTextNode(this.input)),e.setAttribute(\"data-input\",this.input),e.className=\"magic-box-error\"+(this.input.length>0?\"\":\" magic-box-error-empty\")),e.result=this,e},e.prototype.clean=function(t){if(null!=t||!this.isSuccess()){t=t||s.last(this.getBestExpect()).path(this);var n=s.first(t);if(null!=n){var i=s.indexOf(this.subResults,n),o=-1==i?[]:s.map(s.first(this.subResults,i),function(e){return e.clean()});return o.push(n.clean(s.rest(t))),new e(o,this.expression,this.input)}return new e(null,this.expression,this.input)}return null!=this.value?new e(this.value,this.expression,this.input):null!=this.subResults?new e(s.map(this.subResults,function(e){return e.clean()}),this.expression,this.input):void 0},e.prototype.clone=function(){return null!=this.value?new e(this.value,this.expression,this.input):null!=this.subResults?new e(s.map(this.subResults,function(e){return e.clone()}),this.expression,this.input):new e(null,this.expression,this.input)},e.prototype.toString=function(){return null!=this.value?this.value:null!=this.subResults?s.map(this.subResults,function(e){return e.toString()}).join(\"\"):this.input},e.prototype.getHumanReadable=function(){return this.expression instanceof r.ExpressionConstant?JSON.stringify(this.expression.value):this.expression.id},e}();t.Result=a;var u=function(e){function t(t){var n=e.call(this,[t],o.ExpressionEndOfInput,t.input)||this,i=new a(null,o.ExpressionEndOfInput,t.input.substr(t.getLength()));return i.parent=n,n.subResults.push(i),n}return i(t,e),t}(a);t.EndOfInputResult=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(7),o=n(1),r=function(){function e(){}return Object.defineProperty(e,\"allFacetsType\",{get:function(){return[\"Facet\",\"FacetSlider\",\"FacetRange\",\"TimespanFacet\",\"HierarchicalFacet\",\"CategoryFacet\",\"DynamicFacet\",\"DynamicFacetRange\",\"DynamicHierarchicalFacet\"]},enumerable:!0,configurable:!0}),Object.defineProperty(e,\"allFacetsClassname\",{get:function(){return e.allFacetsType.map(function(e){return\"Coveo\"+e})},enumerable:!0,configurable:!0}),e.getAllFacetsElements=function(t){var n=e.allFacetsClassname.map(function(e){return\".\"+e}).join(\", \"),i=function(e){return!o.$$(e).findAll(n).length};return o.$$(t).findAll(n).filter(i)},e.getAllFacetsInstance=function(t){return e.getAllFacetsElements(t).map(function(e){return i.Component.get(e)})},e}();t.ComponentsTypes=r},function(e,t,n){\"use strict\";function i(e,t,n){return{originalMethod:n.value,nbParams:e[t].prototype.constructor.length}}function o(){return{url:\"\",queryString:[],requestData:{},method:\"\",responseType:\"\",errorsAsSuccess:!1}}function r(e){return function(t,n,r){var s=i(t,n,r),a=s.originalMethod,u=s.nbParams;return r.value=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=this.buildBaseUri(e);if(t[u-1])t[u-1].url=i;else{var r=T.extend(o(),{url:i});t[u-1]=r}return a.apply(this,t)},r}}function s(e){return function(t,n,r){var s=i(t,n,r),a=s.originalMethod,u=s.nbParams;return r.value=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=this.buildSearchAlertsUri(e);if(t[u-1])t[u-1].url=i;else{var r=T.extend(o(),{url:i});t[u-1]=r}return a.apply(this,t)},r}}function a(e){return function(t,n,r){var s=i(t,n,r),a=s.originalMethod,u=s.nbParams;return r.value=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(t[u-1])t[u-1].requestDataType=e;else{var i=T.extend(o(),{requestDataType:e});t[u-1]=i}return a.apply(this,t)},r}}function u(e){return function(t,n,r){var s=i(t,n,r),a=s.originalMethod,u=s.nbParams;return r.value=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(t[u-1])t[u-1].method=e;else{var i=T.extend(o(),{method:e});t[u-1]=i}return a.apply(this,t)},r}}function l(e){return function(t,n,r){var s=i(t,n,r),a=s.originalMethod,u=s.nbParams;return r.value=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(t[u-1])t[u-1].responseType=e;else{var i=T.extend(o(),{responseType:e});t[u-1]=i}return a.apply(this,t)},r}}function c(e){return void 0===e&&(e=\"access_token\"),function(t,n,r){var s=i(t,n,r),a=s.originalMethod,u=s.nbParams,l=function(e,t){var n=[];return A.Utils.isNonEmptyString(t.accessToken.token)&&n.push(e+\"=\"+A.Utils.safeEncodeURIComponent(t.accessToken.token)),n};return r.value=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=l(e,this);if(t[u-1])t[u-1].queryString=t[u-1].queryString.concat(i);else{var r=T.extend(o(),{queryString:i});t[u-1]=r}return a.apply(this,t)},r}}function p(e){return void 0===e&&(e=new R.history.HistoryStore),function(t,n,r){var s=i(t,n,r),a=s.originalMethod,u=s.nbParams;return r.value=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=e.getHistory();if(null==i&&(i=[]),t[u-1])t[u-1].requestData.actionsHistory=i;else{var r=T.extend(o(),{requestData:{actionsHistory:i}});t[u-1]=r}return a.apply(this,t)},r}}function h(){return function(e,t,n){var r=i(e,t,n),s=r.originalMethod,a=r.nbParams;return n.value=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=document.referrer;if(null==n&&(n=\"\"),e[a-1])e[a-1].requestData.referrer=n;else{var i=T.extend(o(),{requestData:{referrer:n}});e[a-1]=i}return s.apply(this,e)},n}}function d(){return function(e,t,n){var r=i(e,t,n),s=r.originalMethod,a=r.nbParams;return n.value=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=F.Cookie.get(\"visitorId\");if(null==n&&(n=\"\"),e[a-1])e[a-1].requestData.visitorId=n;else{var i=T.extend(o(),{requestData:{visitorId:n}});e[a-1]=i}return s.apply(this,e)},n}}function f(){return function(e,t,n){var r=i(e,t,n),s=r.originalMethod,a=r.nbParams;return n.value=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=this.options.isGuestUser;if(e[a-1])e[a-1].requestData.isGuestUser=n;else{var i=T.extend(o(),{requestData:{isGuestUser:n}});e[a-1]=i}return s.apply(this,e)},n}}var m=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},y=this&&this.__decorate||function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},g=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},v=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var b=n(86),C=n(9),S=n(5),w=n(95),x=n(292),_=n(293),O=n(21),E=n(141),A=n(4),T=n(0),R=n(94),F=n(72),I=n(68),M=n(39),P=n(145),D=n(300),$=function(){function e(){this.version=\"v2\",this.queryStringArguments={},this.anonymous=!1,this.isGuestUser=!1}return e}();t.DefaultSearchEndpointOptions=$;var N=function(){function e(t){var n=this;this.options=t,S.Assert.exists(t),S.Assert.exists(t.restUri);var i=new $;i.anonymous=0==window.location.href.indexOf(\"file://\")&&A.Utils.isNonEmptyString(t.accessToken),this.options=T.extend({},i,t),this.accessToken=new P.AccessToken(this.options.accessToken,this.options.renewAccessToken),this.accessToken.subscribeToRenewal(function(){return n.createEndpointCaller()}),e.isDebugArgumentPresent()&&(this.options.queryStringArguments.debug=1),this.onUnload=function(){n.handleUnload()},window.addEventListener(\"beforeunload\",this.onUnload),this.logger=new C.Logger(this),this.createEndpointCaller()}return e.configureSampleEndpoint=function(t){e.isUseLocalArgumentPresent()?e.endpoints.default=new e(T.extend({restUri:\"http://localhost:8100/rest/search\",searchAlertsUri:\"http://localhost:8088/rest/search/alerts/\"},t)):e.endpoints.default=new e(T.extend({restUri:\"https://cloudplatform.coveo.com/rest/search\",accessToken:\"52d806a2-0f64-4390-a3f2-e0f41a4a73ec\"},t))},e.configureSampleEndpointV2=function(t){e.endpoints.default=new e(T.extend({restUri:\"https://platform.cloud.coveo.com/rest/search\",accessToken:\"xx564559b1-0045-48e1-953c-3addd1ee4457\",queryStringArguments:{organizationId:\"searchuisamples\",viewAllContent:1}},t))},e.configureCloudEndpoint=function(t,n,i,o){void 0===i&&(i=\"https://cloudplatform.coveo.com/rest/search\");var r={restUri:i,accessToken:n,queryStringArguments:{organizationId:t}},s=e.mergeConfigOptions(r,o);e.endpoints.default=new e(e.removeUndefinedConfigOption(s))},e.configureCloudV2Endpoint=function(t,n,i,o){return void 0===i&&(i=\"https://platform.cloud.coveo.com/rest/search\"),e.configureCloudEndpoint(t,n,i,o)},e.configureOnPremiseEndpoint=function(t,n,i){var o=e.mergeConfigOptions({restUri:t,accessToken:n},i);e.endpoints.default=new e(e.removeUndefinedConfigOption(o))},e.removeUndefinedConfigOption=function(e){return T.each(T.keys(e),function(t){void 0==e[t]&&delete e[t]}),e},e.mergeConfigOptions=function(t,n){return t=e.removeUndefinedConfigOption(t),n=e.removeUndefinedConfigOption(n),T.extend({},t,n)},e.prototype.reset=function(){this.createEndpointCaller()},e.prototype.setRequestModifier=function(e){this.caller.options.requestModifier=e},e.prototype.getBaseUri=function(){return this.buildBaseUri(\"\")},e.prototype.getBaseAlertsUri=function(){return this.buildSearchAlertsUri(\"\")},e.prototype.getAuthenticationProviderUri=function(e,t,n,i,o){return M.UrlUtils.normalizeAsString({paths:[o.url,e],queryAsString:o.queryString,query:m({redirectUri:t,message:n},this.buildBaseQueryString(i))})},e.prototype.isJsonp=function(){return this.caller.useJsonp},e.prototype.search=function(e,t,n){var i=this;S.Assert.exists(e),n=m({},n,{requestData:m({},n.requestData,T.omit(e,function(e){return A.Utils.isNullOrUndefined(e)}))}),this.logger.info(\"Performing REST query\",e);var o=new Date;return this.performOneCall(n,t).then(function(t){return i.logger.info(\"REST query successful\",t,e),null==t.apiVersion&&(t.apiVersion=1),t.apiVersion<w.version.supportedApiVersion&&i.logger.error(\"Please update your REST Search API\"),t.searchAPIDuration=t.duration,t.duration=I.TimeSpan.fromDates(o,new Date).getMilliseconds(),A.Utils.isNullOrEmptyString(t.searchUid)&&(t.searchUid=O.QueryUtils.createGuid()),O.QueryUtils.setIndexAndUidOnQueryResults(e,t,t.searchUid,t.pipeline,t.splitTestRun),O.QueryUtils.setTermsToHighlightOnQueryResults(e,t),t})},e.prototype.getExportToExcelLink=function(e,t,n,i){return M.UrlUtils.normalizeAsString({paths:i.url,queryAsString:i.queryString,query:m({numberOfResults:t?t.toString():null,format:\"xlsx\"},this.buildQueryAsQueryString(null,e),this.buildBaseQueryString(n))})},e.prototype.getRawDataStream=function(e,t,n,i){var o=this;return S.Assert.exists(e),i=M.UrlUtils.merge(i,{paths:i.url,query:m({dataStream:t},this.buildViewAsHtmlQueryString(e,n))}),this.logger.info(\"Performing REST query for datastream \"+t+\" on item uniqueID \"+e),this.performOneCall(i,n).then(function(t){return o.logger.info(\"REST query successful\",t,e),t})},e.prototype.getViewAsDatastreamUri=function(e,t,n,i){return void 0===n&&(n={}),M.UrlUtils.normalizeAsString({paths:i.url,queryAsString:i.queryString,query:m({dataStream:t},this.buildViewAsHtmlQueryString(e,n),this.buildQueryAsQueryString(n.query,n.queryObject),this.buildBaseQueryString(n))})},e.prototype.getDocument=function(e,t,n){var i=this;return n=M.UrlUtils.merge(n,{paths:n.url,queryAsString:n.queryString,query:m({},this.buildViewAsHtmlQueryString(e,t))}),this.logger.info(\"Performing REST query to retrieve document\",e),this.performOneCall(n,t).then(function(t){return i.logger.info(\"REST query successful\",t,e),t})},e.prototype.getDocumentText=function(e,t,n){var i=this;return n=M.UrlUtils.merge(n,{paths:n.url,queryAsString:n.queryString,query:m({},this.buildViewAsHtmlQueryString(e,t))}),this.logger.info('Performing REST query to retrieve \"TEXT\" version of document',e),this.performOneCall(n,t).then(function(t){return i.logger.info(\"REST query successful\",t,e),t.content})},e.prototype.getDocumentHtml=function(e,t,n){var i=this;return t=m({},t),n=M.UrlUtils.merge(m({},n,{requestData:t.queryObject||{q:t.query}}),{paths:n.url,queryAsString:n.queryString,query:m({},this.buildViewAsHtmlQueryString(e,t))}),this.logger.info('Performing REST query to retrieve \"HTML\" version of document',e),this.performOneCall(n,t).then(function(t){return i.logger.info(\"REST query successful\",t,e),t})},e.prototype.getViewAsHtmlUri=function(e,t,n){return M.UrlUtils.normalizeAsString({paths:n.url,queryAsString:n.queryString,query:m({},this.buildViewAsHtmlQueryString(e,t),this.buildBaseQueryString(t))})},e.prototype.listFieldValues=function(e,t,n){var i=this;return S.Assert.exists(e),n=m({},n,{requestData:m({},n.requestData,e)}),this.logger.info(\"Listing field values\",e),this.performOneCall(n,t).then(function(t){return i.logger.info(\"REST list field values successful\",t.values,e),t.values})},e.prototype.listFieldValuesBatch=function(e,t,n){var i=this;return S.Assert.exists(e),n=m({},n,{requestData:m({},n.requestData,e)}),this.logger.info(\"Listing field batch values\",e),this.performOneCall(n,t).then(function(t){return i.logger.info(\"REST list field batch values successful\",t.batch,e),t.batch})},e.prototype.listFields=function(e,t){var n=this;return this.logger.info(\"Listing fields\"),this.performOneCall(t,e).then(function(e){return n.logger.info(\"REST list fields successful\",e.fields),e.fields})},e.prototype.extensions=function(e,t){var n=this;return this.logger.info(\"Performing REST query to list extensions\"),this.performOneCall(t,e).then(function(e){return n.logger.info(\"REST query successful\",e),e})},e.prototype.rateDocument=function(e,t,n){var i=this;return this.logger.info(\"Performing REST query to rate a document\",e),n=m({},n,{requestData:m({},n.requestData,e)}),this.performOneCall(n,t).then(function(){return i.logger.info(\"REST query successful\",e),!0})},e.prototype.tagDocument=function(e,t,n){var i=this;return this.logger.info(\"Performing REST query to tag an item\",e),n=m({},n,{requestData:m({},n.requestData,e)}),this.performOneCall(n,t).then(function(){return i.logger.info(\"REST query successful\",e),!0})},e.prototype.getQuerySuggest=function(e,t,n){var i=this;return n=m({},n,{requestData:m({},n.requestData,T.omit(e,function(e){return A.Utils.isNullOrUndefined(e)}))}),this.logger.info(\"Performing REST query to get query suggest\",e),this.performOneCall(n,t).then(function(e){return i.logger.info(\"REST query successful\",e),e})},e.prototype.getRevealQuerySuggest=function(e,t,n){return this.getQuerySuggest(e,t,n)},e.prototype.facetSearch=function(e,t,n){return g(this,void 0,void 0,function(){var i;return v(this,function(o){switch(o.label){case 0:return n=m({},n,{requestData:m({},n.requestData,T.omit(e,function(e){return A.Utils.isNullOrUndefined(e)}))}),this.logger.info(\"Performing REST query to get facet search results\",e),[4,this.performOneCall(n,t)];case 1:return i=o.sent(),this.logger.info(\"REST query successful\",i),[2,i]}})})},e.prototype.follow=function(e,t,n){var i=this;return n.requestData=e,this.logger.info(\"Performing REST query to follow an item or a query\",e),this.performOneCall(n,t).then(function(e){return i.logger.info(\"REST query successful\",e),e})},e.prototype.listSubscriptions=function(e,t,n){var i=this;return this.options.isGuestUser?new Promise(function(e,t){t()}):(null==this.currentListSubscriptions&&(n=M.UrlUtils.merge(n,{paths:n.url,query:{page:e||0}}),this.logger.info(\"Performing REST query to list subscriptions\"),this.currentListSubscriptions=this.performOneCall(n,t),this.currentListSubscriptions.then(function(e){return i.currentListSubscriptions=null,i.logger.info(\"REST query successful\",e),e}).catch(function(e){if(403!=e.status)throw e})),this.currentListSubscriptions)},e.prototype.updateSubscription=function(e,t,n){var i=this;return n=M.UrlUtils.merge(m({},n,{requestData:m({},n.requestData,e)}),{paths:[n.url,e.id]}),this.logger.info(\"Performing REST query to update a subscription\",e),this.performOneCall(n,t).then(function(e){return i.logger.info(\"REST query successful\",e),e})},e.prototype.deleteSubscription=function(e,t,n){var i=this;return n=M.UrlUtils.merge(n,{paths:[n.url,e.id]}),this.logger.info(\"Performing REST query to delete a subscription\",e),this.performOneCall(n,t).then(function(e){return i.logger.info(\"REST query successful\",e),e})},e.prototype.logError=function(e,t,n){return n=m({},n,{requestData:m({},n.requestData,e)}),this.performOneCall(n,t).then(function(){return!0}).catch(function(){return!1})},e.prototype.nuke=function(){window.removeEventListener(\"beforeunload\",this.onUnload)},e.prototype.createEndpointCaller=function(){this.caller=new b.EndpointCaller(m({},this.options,{accessToken:this.accessToken.token}))},e.isDebugArgumentPresent=function(){return/[?&]debug=1([&]|$)/.test(window.location.search)},e.isUseLocalArgumentPresent=function(){return/[?&]useLocal=1([&]|$)/.test(window.location.search)},e.prototype.handleUnload=function(){this.isRedirecting=!0},e.prototype.buildBaseUri=function(e){return S.Assert.isString(e),M.UrlUtils.normalizeAsString({paths:[this.options.restUri,this.options.version,e]})},e.prototype.buildSearchAlertsUri=function(e){S.Assert.isString(e);var t=this.options.searchAlertsUri||M.UrlUtils.normalizeAsString({paths:[this.options.restUri,\"/alerts\"]});return M.UrlUtils.normalizeAsString({paths:[t,e]})},e.prototype.buildBaseQueryString=function(e){return e=m({},e),T.isArray(e.authentication)&&A.Utils.isNonEmptyArray(e.authentication)?m({},this.options.queryStringArguments,{authentication:e.authentication.join(\",\")}):m({},this.options.queryStringArguments)},e.prototype.buildQueryAsQueryString=function(e,t){t=m({},t);var n={};[\"q\",\"aq\",\"cq\",\"dq\",\"searchHub\",\"tab\",\"locale\",\"pipeline\",\"lowercaseOperators\",\"timezone\"].forEach(function(e){n[e]=t[e]});var i={};if(T.pairs(t.context).forEach(function(e){var t=e[0],n=e[1];i[\"context[\"+A.Utils.safeEncodeURIComponent(t)+\"]\"]=n}),t.fieldsToInclude){var o=t.fieldsToInclude.map(function(e){return'\"'+A.Utils.safeEncodeURIComponent(e.replace(\"@\",\"\"))+'\"'});n.fieldsToInclude=\"[\"+o.join(\",\")+\"]\"}return m({q:e},i,n)},e.prototype.buildViewAsHtmlQueryString=function(e,t){return t=T.extend({},t),{uniqueId:A.Utils.safeEncodeURIComponent(e),enableNavigation:\"true\",requestedOutputSize:t.requestedOutputSize?t.requestedOutputSize.toString():null,contentType:t.contentType}},e.prototype.performOneCall=function(e,t){return g(this,void 0,void 0,function(){var n,i,o,r,s,a,i,u=this;return v(this,function(l){switch(l.label){case 0:e=M.UrlUtils.merge(e,{paths:e.url,queryAsString:e.queryString,query:m({},this.buildBaseQueryString(t))}),n=function(){return u.caller.call(e)},l.label=1;case 1:return l.trys.push([1,3,,10]),[4,n()];case 2:return i=l.sent(),[2,i.data];case 3:if(!(o=l.sent()))throw new Error(\"Request failed but it did not return an error.\");switch(r=o.statusCode,s=r){case 419:return[3,4];case 429:return[3,6]}return[3,8];case 4:return[4,this.accessToken.doRenew()];case 5:if(!(a=l.sent()))throw this.handleErrorResponse(o);return[2,this.performOneCall(e,t)];case 6:return[4,this.backOffThrottledRequest(n)];case 7:return i=l.sent(),[2,i.data];case 8:throw this.handleErrorResponse(o);case 9:return[3,10];case 10:return[2]}})})},e.prototype.backOffThrottledRequest=function(e){return g(this,void 0,void 0,function(){var t,n,i=this;return v(this,function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),t={fn:function(){return e()},retry:function(e,t){return i.retryIf429Error(e,t)}},[4,D.BackOffRequest.enqueue(t)];case 1:return[2,o.sent()];case 2:throw n=o.sent(),this.handleErrorResponse(n);case 3:return[2]}})})},e.prototype.retryIf429Error=function(e,t){return!!this.isThrottled(e)&&(this.logger.info(\"Resending the request because it was throttled. Retry attempt \"+t),!0)},e.prototype.isThrottled=function(e){return e&&429===e.statusCode},e.prototype.handleErrorResponse=function(e){return this.isMissingAuthenticationProviderStatus(e.statusCode)?new _.MissingAuthenticationError(e.data.provider):e.data&&e.data.message&&e.data.type?new E.QueryError(e):e.data&&e.data.message?new x.AjaxError(\"Request Error : \"+e.data.message,e.statusCode):new x.AjaxError(\"Request Error\",e.statusCode)},e.prototype.isMissingAuthenticationProviderStatus=function(e){return 402==e},e.endpoints={},y([r(\"/login/\"),c()],e.prototype,\"getAuthenticationProviderUri\",null),y([r(\"/\"),u(\"POST\"),l(\"text\"),p(),h(),d(),f()],e.prototype,\"search\",null),y([r(\"/\"),c()],e.prototype,\"getExportToExcelLink\",null),y([r(\"/datastream\"),c(),u(\"GET\"),l(\"arraybuffer\")],e.prototype,\"getRawDataStream\",null),y([r(\"/datastream\"),c()],e.prototype,\"getViewAsDatastreamUri\",null),y([r(\"/document\"),u(\"GET\"),l(\"text\")],e.prototype,\"getDocument\",null),y([r(\"/text\"),u(\"GET\"),l(\"text\")],e.prototype,\"getDocumentText\",null),y([r(\"/html\"),u(\"POST\"),l(\"document\")],e.prototype,\"getDocumentHtml\",null),y([r(\"/html\"),c()],e.prototype,\"getViewAsHtmlUri\",null),y([r(\"/values\"),u(\"POST\"),l(\"text\")],e.prototype,\"listFieldValues\",null),y([r(\"/values/batch\"),u(\"POST\"),l(\"text\")],e.prototype,\"listFieldValuesBatch\",null),y([r(\"/fields\"),u(\"GET\"),l(\"text\")],e.prototype,\"listFields\",null),y([r(\"/extensions\"),u(\"GET\"),l(\"text\")],e.prototype,\"extensions\",null),y([r(\"/rating\"),u(\"POST\"),l(\"text\")],e.prototype,\"rateDocument\",null),y([r(\"/tag\"),u(\"POST\"),l(\"text\")],e.prototype,\"tagDocument\",null),y([r(\"/querySuggest\"),u(\"POST\"),l(\"text\"),p(),h(),d(),f()],e.prototype,\"getQuerySuggest\",null),y([r(\"/facet\"),u(\"POST\"),a(\"application/json\"),l(\"text\"),p(),h(),d(),f()],e.prototype,\"facetSearch\",null),y([s(\"/subscriptions\"),c(\"accessToken\"),u(\"POST\"),a(\"application/json\"),l(\"text\")],e.prototype,\"follow\",null),y([s(\"/subscriptions\"),c(\"accessToken\"),u(\"GET\"),a(\"application/json\"),l(\"text\")],e.prototype,\"listSubscriptions\",null),y([s(\"/subscriptions/\"),c(\"accessToken\"),u(\"PUT\"),a(\"application/json\"),l(\"text\")],e.prototype,\"updateSubscription\",null),y([s(\"/subscriptions/\"),c(\"accessToken\"),u(\"DELETE\"),a(\"application/json\"),l(\"text\")],e.prototype,\"deleteSubscription\",null),y([r(\"/log\"),u(\"POST\")],e.prototype,\"logError\",null),e}();t.SearchEndpoint=N},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5);n(290),t.MEDIUM_SCREEN_WIDTH=800,t.SMALL_SCREEN_WIDTH=480;var o=function(){function e(e){void 0===e&&(e=window),this.windoh=e,this.responsiveMode=\"auto\"}return e.prototype.setSmallScreenWidth=function(e){i.Assert.check(\"auto\"===this.responsiveMode,\"Cannot modify medium screen width if responsiveMode is locked on \"+this.responsiveMode+\".\"),i.Assert.check(e<this.getMediumScreenWidth(),\"Cannot set small screen width (\"+e+\") larger or equal to the current medium screen width (\"+this.getMediumScreenWidth()+\")\"),this.smallScreenWidth=e},e.prototype.setMediumScreenWidth=function(e){i.Assert.check(\"auto\"===this.responsiveMode,\"Cannot modify medium screen width if responsiveMode is locked on \"+this.responsiveMode+\".\"),i.Assert.check(e>this.getSmallScreenWidth(),\"Cannot set medium screen width (\"+e+\") smaller or equal to the current small screen width (\"+this.getSmallScreenWidth()+\")\"),this.mediumScreenWidth=e},e.prototype.setResponsiveMode=function(e){this.responsiveMode=e},e.prototype.getSmallScreenWidth=function(){return\"small\"===this.responsiveMode?Number.POSITIVE_INFINITY:\"auto\"!==this.responsiveMode?0:null==this.smallScreenWidth?t.SMALL_SCREEN_WIDTH:this.smallScreenWidth},e.prototype.getMediumScreenWidth=function(){return\"medium\"===this.responsiveMode?Number.POSITIVE_INFINITY:\"auto\"!==this.responsiveMode?0:null==this.mediumScreenWidth?t.MEDIUM_SCREEN_WIDTH:this.mediumScreenWidth},e.prototype.getResponsiveMode=function(){return this.responsiveMode},e.prototype.isSmallScreenWidth=function(){return null!=this.windoh.clientWidth?this.windoh.clientWidth<=this.getSmallScreenWidth():document.body.clientWidth<=this.getSmallScreenWidth()},e.prototype.isMediumScreenWidth=function(){return!this.isSmallScreenWidth()&&(null!=this.windoh.clientWidth?this.windoh.clientWidth<=this.getMediumScreenWidth():document.body.clientWidth<=this.getMediumScreenWidth())},e.prototype.isLargeScreenWidth=function(){return!this.isSmallScreenWidth()&&!this.isMediumScreenWidth()},e}();t.ResponsiveComponents=o},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(3),r=n(1),s=n(25),a={usePlaceholder:!1,className:\"coveo-input\",triggerOnChangeAsYouType:!1,isRequired:!0},u=function(){function e(e,t,n){void 0===e&&(e=function(e){}),this.onChange=e,this.name=t,this.options=n,this.lastQueryText=\"\",this.options=i({},a,this.options),this.buildContent()}return e.doExport=function(){o.exportGlobally({TextInput:e})},e.prototype.getElement=function(){return this.element},e.prototype.getValue=function(){return r.$$(this.element).find(\"input\").value},e.prototype.setValue=function(e){var t=this.getValue();r.$$(this.element).find(\"input\").value=e,t!=e&&this.onChange(this),this.lastQueryText=this.getInput().value},e.prototype.reset=function(){var e=this.getValue();r.$$(this.element).find(\"input\").value=\"\",\"\"!=e&&this.onChange(this),this.lastQueryText=this.getInput().value},e.prototype.build=function(){return this.element},e.prototype.getInput=function(){return r.$$(this.element).find(\"input\")},e.prototype.buildContent=function(){this.element=r.$$(\"div\",{className:this.options.className}).el,this.input=r.$$(\"input\",{type:\"text\"}),this.options.isRequired&&this.input.setAttribute(\"required\",\"true\"),this.options.ariaLabel&&this.input.setAttribute(\"aria-label\",this.options.ariaLabel),this.addEventListeners(),this.element.appendChild(this.input.el),this.name&&this.createLabelOrPlaceholder()},e.prototype.addEventListeners=function(){this.options.triggerOnChangeAsYouType?this.addOnTypeEventListener():this.addOnChangeEventListener()},e.prototype.addOnChangeEventListener=function(){var e=this;this.input.on([\"keydown\",\"blur\"],function(t){\"blur\"!=t.type&&t.keyCode!=s.KEYBOARD.ENTER||e.triggerChange()})},e.prototype.addOnTypeEventListener=function(){var e=this;this.input.on([\"keyup\"],function(){e.triggerChange()})},e.prototype.createLabelOrPlaceholder=function(){if(this.options.usePlaceholder)return this.input.setAttribute(\"placeholder\",this.name);var e=r.$$(\"label\");e.text(this.name),this.element.appendChild(e.el)},e.prototype.triggerChange=function(){this.lastQueryText!=this.getInput().value&&(this.onChange(this),this.lastQueryText=this.getInput().value)},e}();t.TextInput=u},function(e,t,n){\"use strict\";function i(e,t,n,i,o){var r=e*e,s=r*e;return((1-3*e+3*r-s)*t+(4-6*r+3*s)*n+(1+3*e+3*r-3*s)*i+s*o)/6}function o(e,t){return function(n){return e+n*t}}function r(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(i){return Math.pow(e+i*t,n)}}function s(e,t){var n=t-e;return n?o(e,n>180||n<-180?n-360*Math.round(n/360):n):R(isNaN(e)?t:e)}function a(e){return 1==(e=+e)?u:function(t,n){return n-t?r(t,n,e):R(isNaN(t)?n:t)}}function u(e,t){var n=t-e;return n?o(e,n):R(isNaN(e)?t:e)}function l(e){return function(t){var n,i,o=t.length,r=new Array(o),s=new Array(o),a=new Array(o);for(n=0;n<o;++n)i=Object(E.f)(t[n]),r[n]=i.r||0,s[n]=i.g||0,a[n]=i.b||0;return r=e(r),s=e(s),a=e(a),i.opacity=1,function(e){return i.r=r(e),i.g=s(e),i.b=a(e),i+\"\"}}}function c(e){return function(){return e}}function p(e){return function(t){return e(t)+\"\"}}function h(e){return\"none\"===e?j:(w||(w=document.createElement(\"DIV\"),x=document.documentElement,_=document.defaultView),w.style.transform=e,e=_.getComputedStyle(x.appendChild(w),null).getPropertyValue(\"transform\"),x.removeChild(w),e=e.slice(7,-1).split(\",\"),q(+e[0],+e[1],+e[2],+e[3],+e[4],+e[5]))}function d(e){return null==e?j:(O||(O=document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\")),O.setAttribute(\"transform\",e),(e=O.transform.baseVal.consolidate())?(e=e.matrix,q(e.a,e.b,e.c,e.d,e.e,e.f)):j)}function f(e,t,n,i){function o(e){return e.length?e.pop()+\" \":\"\"}function r(e,i,o,r,s,a){if(e!==o||i!==r){var u=s.push(\"translate(\",null,t,null,n);a.push({i:u-4,x:$(e,o)},{i:u-2,x:$(i,r)})}else(o||r)&&s.push(\"translate(\"+o+t+r+n)}function s(e,t,n,r){e!==t?(e-t>180?t+=360:t-e>180&&(e+=360),r.push({i:n.push(o(n)+\"rotate(\",null,i)-2,x:$(e,t)})):t&&n.push(o(n)+\"rotate(\"+t+i)}function a(e,t,n,r){e!==t?r.push({i:n.push(o(n)+\"skewX(\",null,i)-2,x:$(e,t)}):t&&n.push(o(n)+\"skewX(\"+t+i)}function u(e,t,n,i,r,s){if(e!==n||t!==i){var a=r.push(o(r)+\"scale(\",null,\",\",null,\")\");s.push({i:a-4,x:$(e,n)},{i:a-2,x:$(t,i)})}else 1===n&&1===i||r.push(o(r)+\"scale(\"+n+\",\"+i+\")\")}return function(t,n){var i=[],o=[];return t=e(t),n=e(n),r(t.translateX,t.translateY,n.translateX,n.translateY,i,o),s(t.rotate,n.rotate,i,o),a(t.skewX,n.skewX,i,o),u(t.scaleX,t.scaleY,n.scaleX,n.scaleY,i,o),t=n=null,function(e){for(var t,n=-1,r=o.length;++n<r;)i[(t=o[n]).i]=t.x(e);return i.join(\"\")}}}function m(e){return((e=Math.exp(e))+1/e)/2}function y(e){return((e=Math.exp(e))-1/e)/2}function g(e){return((e=Math.exp(2*e))-1)/(e+1)}function v(e){return function(t,n){var i=e((t=Object(E.d)(t)).h,(n=Object(E.d)(n)).h),o=u(t.s,n.s),r=u(t.l,n.l),s=u(t.opacity,n.opacity);return function(e){return t.h=i(e),t.s=o(e),t.l=r(e),t.opacity=s(e),t+\"\"}}}function b(e,t){var n=u((e=Object(E.e)(e)).l,(t=Object(E.e)(t)).l),i=u(e.a,t.a),o=u(e.b,t.b),r=u(e.opacity,t.opacity);return function(t){return e.l=n(t),e.a=i(t),e.b=o(t),e.opacity=r(t),e+\"\"}}function C(e){return function(t,n){var i=e((t=Object(E.c)(t)).h,(n=Object(E.c)(n)).h),o=u(t.c,n.c),r=u(t.l,n.l),s=u(t.opacity,n.opacity);return function(e){return t.h=i(e),t.c=o(e),t.l=r(e),t.opacity=s(e),t+\"\"}}}function S(e){return function t(n){function i(t,i){var o=e((t=Object(E.b)(t)).h,(i=Object(E.b)(i)).h),r=u(t.s,i.s),s=u(t.l,i.l),a=u(t.opacity,i.opacity);return function(e){return t.h=o(e),t.s=r(e),t.l=s(Math.pow(e,n)),t.opacity=a(e),t+\"\"}}return n=+n,i.gamma=t,i}(1)}var w,x,_,O,E=n(60),A=function(e){var t=e.length-1;return function(n){var o=n<=0?n=0:n>=1?(n=1,t-1):Math.floor(n*t),r=e[o],s=e[o+1],a=o>0?e[o-1]:2*r-s,u=o<t-1?e[o+2]:2*s-r;return i((n-o/t)*t,a,r,s,u)}},T=function(e){var t=e.length;return function(n){var o=Math.floor(((n%=1)<0?++n:n)*t),r=e[(o+t-1)%t],s=e[o%t],a=e[(o+1)%t],u=e[(o+2)%t];return i((n-o/t)*t,r,s,a,u)}},R=function(e){return function(){return e}},F=function e(t){function n(e,t){var n=i((e=Object(E.f)(e)).r,(t=Object(E.f)(t)).r),o=i(e.g,t.g),r=i(e.b,t.b),s=u(e.opacity,t.opacity);return function(t){return e.r=n(t),e.g=o(t),e.b=r(t),e.opacity=s(t),e+\"\"}}var i=a(t);return n.gamma=e,n}(1),I=l(A),M=l(T),P=function(e,t){var n,i=t?t.length:0,o=e?Math.min(i,e.length):0,r=new Array(o),s=new Array(i);for(n=0;n<o;++n)r[n]=B(e[n],t[n]);for(;n<i;++n)s[n]=t[n];return function(e){for(n=0;n<o;++n)s[n]=r[n](e);return s}},D=function(e,t){var n=new Date;return e=+e,t-=e,function(i){return n.setTime(e+t*i),n}},$=function(e,t){return e=+e,t-=e,function(n){return e+t*n}},N=function(e,t){var n,i={},o={};null!==e&&\"object\"==typeof e||(e={}),null!==t&&\"object\"==typeof t||(t={});for(n in t)n in e?i[n]=B(e[n],t[n]):o[n]=t[n];return function(e){for(n in i)o[n]=i[n](e);return o}},V=/[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,k=new RegExp(V.source,\"g\"),L=function(e,t){var n,i,o,r=V.lastIndex=k.lastIndex=0,s=-1,a=[],u=[];for(e+=\"\",t+=\"\";(n=V.exec(e))&&(i=k.exec(t));)(o=i.index)>r&&(o=t.slice(r,o),a[s]?a[s]+=o:a[++s]=o),(n=n[0])===(i=i[0])?a[s]?a[s]+=i:a[++s]=i:(a[++s]=null,u.push({i:s,x:$(n,i)})),r=k.lastIndex;return r<t.length&&(o=t.slice(r),a[s]?a[s]+=o:a[++s]=o),a.length<2?u[0]?p(u[0].x):c(t):(t=u.length,function(e){for(var n,i=0;i<t;++i)a[(n=u[i]).i]=n.x(e);return a.join(\"\")})},B=function(e,t){var n,i=typeof t;return null==t||\"boolean\"===i?R(t):(\"number\"===i?$:\"string\"===i?(n=Object(E.a)(t))?(t=n,F):L:t instanceof E.a?F:t instanceof Date?D:Array.isArray(t)?P:\"function\"!=typeof t.valueOf&&\"function\"!=typeof t.toString||isNaN(t)?N:$)(e,t)},Q=function(e,t){return e=+e,t-=e,function(n){return Math.round(e+t*n)}},U=180/Math.PI,j={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},q=function(e,t,n,i,o,r){var s,a,u;return(s=Math.sqrt(e*e+t*t))&&(e/=s,t/=s),(u=e*n+t*i)&&(n-=e*u,i-=t*u),(a=Math.sqrt(n*n+i*i))&&(n/=a,i/=a,u/=a),e*i<t*n&&(e=-e,t=-t,u=-u,s=-s),{translateX:o,translateY:r,rotate:Math.atan2(t,e)*U,skewX:Math.atan(u)*U,scaleX:s,scaleY:a}},H=f(h,\"px, \",\"px)\",\"deg)\"),z=f(d,\", \",\")\",\")\"),W=Math.SQRT2,G=function(e,t){var n,i,o=e[0],r=e[1],s=e[2],a=t[0],u=t[1],l=t[2],c=a-o,p=u-r,h=c*c+p*p;if(h<1e-12)i=Math.log(l/s)/W,n=function(e){return[o+e*c,r+e*p,s*Math.exp(W*e*i)]};else{var d=Math.sqrt(h),f=(l*l-s*s+4*h)/(2*s*2*d),v=(l*l-s*s-4*h)/(2*l*2*d),b=Math.log(Math.sqrt(f*f+1)-f),C=Math.log(Math.sqrt(v*v+1)-v);i=(C-b)/W,n=function(e){var t=e*i,n=m(b),a=s/(2*d)*(n*g(W*t+b)-y(b));return[o+a*c,r+a*p,s*n/m(W*t+b)]}}return n.duration=1e3*i,n},Y=v(s),K=v(u),J=C(s),X=C(u),Z=S(s),ee=S(u),te=function(e,t){for(var n=new Array(t),i=0;i<t;++i)n[i]=e(i/(t-1));return n};n.d(t,\"a\",function(){return B}),n.d(t,\"b\",function(){return P}),n.d(t,\"c\",function(){return A}),n.d(t,\"d\",function(){return T}),n.d(t,\"g\",function(){return D}),n.d(t,\"m\",function(){return $}),n.d(t,\"n\",function(){return N}),n.d(t,\"r\",function(){return Q}),n.d(t,\"s\",function(){return L}),n.d(t,\"t\",function(){return H}),n.d(t,\"u\",function(){return z}),n.d(t,\"v\",function(){return G}),n.d(t,\"o\",function(){return F}),n.d(t,\"p\",function(){return I}),n.d(t,\"q\",function(){return M}),n.d(t,\"j\",function(){return Y}),n.d(t,\"k\",function(){return K}),n.d(t,\"l\",function(){return b}),n.d(t,\"h\",function(){return J}),n.d(t,\"i\",function(){return X}),n.d(t,\"e\",function(){return Z}),n.d(t,\"f\",function(){return ee}),n.d(t,\"w\",function(){return te})},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.settingsPopulateMenu=\"settingsPopulateMenu\",e}();t.SettingsEvents=i},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=n(5),s=n(4),a=n(9),u=n(152),l=n(115),c=n(0),p=n(1),h=function(e){function t(n){var i=e.call(this)||this;i.element=n,r.Assert.exists(n);var o=n.innerHTML;try{i.template=c.template(o)}catch(e){new a.Logger(i).error(\"Cannot instantiate underscore template. Might be caused by strict Content-Security-Policy. Will fallback on a default template...\",e)}return i.templateFromAScriptTag=new u.TemplateFromAScriptTag(i,i.element),i.dataToString=function(e){var n=c.extend({},e,t.templateHelpers);if(!i.template)return(new l.DefaultResultTemplate).getFallbackTemplate();try{return i.template(n)}catch(e){return new a.Logger(i).error(\"Cannot instantiate template\",e.message,i.getTemplateInfo()),new a.Logger(i).warn(\"A default template was used\"),(new l.DefaultResultTemplate).getFallbackTemplate()}},i}return i(t,e),t.prototype.toHtmlElement=function(){var e=this.templateFromAScriptTag.toHtmlElement(p.$$(\"script\"));return e.setAttribute(\"type\",c.first(t.mimeTypes)),e},t.prototype.getType=function(){return\"UnderscoreTemplate\"},t.prototype.getTemplateInfo=function(){return this.element},t.registerTemplateHelper=function(e,n){t.templateHelpers[e]=n},t.isLibraryAvailable=function(){return s.Utils.exists(window._)},t.fromString=function(e,n){var i=u.TemplateFromAScriptTag.fromString(e,n,document.createElement(\"script\"));return i.setAttribute(\"type\",t.mimeTypes[0]),new t(i)},t.create=function(e){return r.Assert.exists(e),new t(e)},t.templateHelpers={},t.mimeTypes=[\"text/underscore\",\"text/underscore-template\",\"text/x-underscore\",\"text/x-underscore-template\"],t}(o.Template);t.UnderscoreTemplate=h},function(e,t,n){var i=n(36),o=n(37),r=n(369),s=n(57),a=n(78),u=function(e,t,n){var l,c,p,h=e&u.F,d=e&u.G,f=e&u.S,m=e&u.P,y=e&u.B,g=e&u.W,v=d?o:o[t]||(o[t]={}),b=v.prototype,C=d?i:f?i[t]:(i[t]||{}).prototype;d&&(n=t);for(l in n)(c=!h&&C&&void 0!==C[l])&&a(v,l)||(p=c?C[l]:n[l],v[l]=d&&\"function\"!=typeof C[l]?n[l]:y&&c?r(p,i):g&&C[l]==p?function(e){var t=function(t,n,i){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(t);case 2:return new e(t,n)}return new e(t,n,i)}return e.apply(this,arguments)};return t.prototype=e.prototype,t}(p):m&&\"function\"==typeof p?r(Function.call,p):p,m&&((v.virtual||(v.virtual={}))[l]=p,e&u.R&&b&&!b[l]&&s(b,l,p)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,e.exports=u},function(e,t,n){var i=n(100),o=n(155);e.exports=n(77)?function(e,t,n){return i.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(16),r=n(7),s=n(18),a=n(4),u=n(0),l=n(11),c=n(9),p=n(22),h=n(0),d=function(){function e(t){var n=this;this.disabledComponents=[],this.responsiveComponents=[],this.coveoRoot=t,this.searchInterface=r.Component.get(this.coveoRoot.el,s.SearchInterface,!1),this.dropdownHeadersWrapper=i.$$(\"div\",{className:e.DROPDOWN_HEADER_WRAPPER_CSS_CLASS}),this.searchBoxElement=this.getSearchBoxElement(),this.logger=new c.Logger(this),this.resizeListener=h.debounce(function(){n.isAbleToDetermineMode()?(n.addDropdownHeaderWrapperIfNeeded(),n.shouldSwitchToSmallMode()?n.coveoRoot.addClass(\"coveo-small-interface\"):n.shouldSwitchToSmallMode()||n.coveoRoot.removeClass(\"coveo-small-interface\"),u.each(n.responsiveComponents,function(e){e.handleResizeEvent()})):n.logger.warn(\"The width of the search interface is 0, cannot dispatch resize events to responsive components. This means that the tabs will not\\n        automatically fit in the tab section. Also, the facet and recommendation component will not hide in a menu. Could the search\\n        interface display property be none? Could its visibility property be set to hidden? Also, if either of these scenarios happen during\\n        loading, it could be the cause of this issue.\")},250),p.DeviceUtils.isMobileDevice()||window.addEventListener(\"resize\",this.resizeListener),this.bindNukeEvents()}return e.register=function(t,n,i,r,s){var p=this;(s.initializationEventRoot||n).on(o.InitializationEvents.afterInitialization,function(){if(p.shouldEnableResponsiveMode(n)){var o=u.find(p.componentManagers,function(e){return n.el==e.coveoRoot.el});if(o||(o=new e(n),p.componentManagers.push(o)),!a.Utils.isNullOrUndefined(s.enableResponsiveMode)&&!s.enableResponsiveMode)return void o.disableComponent(i);p.componentInitializations.push({responsiveComponentsManager:o,arguments:[t,n,i,r,s]})}if(0==--p.remainingComponentInitializations)if(p.instantiateResponsiveComponents(),0==n.width()){var h=new c.Logger(\"ResponsiveComponentsManager\");h.info(\"Search interface width is 0, cannot dispatch resize events to responsive components. Will try again after first\\n          query success.\"),n.one(l.QueryEvents.querySuccess,function(){p.resizeAllComponentsManager()})}else p.resizeAllComponentsManager()}),this.remainingComponentInitializations++},e.shouldEnableResponsiveMode=function(e){var t=r.Component.get(e.el,s.SearchInterface,!0);return t instanceof s.SearchInterface&&t.options.enableAutomaticResponsiveMode},e.instantiateResponsiveComponents=function(){u.each(this.componentInitializations,function(e){var t=e.responsiveComponentsManager;t.register.apply(t,e.arguments)})},e.resizeAllComponentsManager=function(){u.each(this.componentManagers,function(e){e.resizeListener()})},e.prototype.register=function(e,t,n,i,o){if(!this.isDisabled(n)){if(!this.isActivated(n)){var r=new e(t,n,o);this.isTabs(n)?this.responsiveComponents.push(r):this.responsiveComponents.unshift(r)}u.each(this.responsiveComponents,function(e){null!=e.registerComponent&&e.registerComponent(i)})}},e.prototype.disableComponent=function(e){this.disabledComponents.push(e)},e.prototype.isDisabled=function(e){return-1!=u.indexOf(this.disabledComponents,e)},e.prototype.shouldSwitchToSmallMode=function(){var e=this.needDropdownWrapper(),t=this.coveoRoot.width()<=this.searchInterface.responsiveComponents.getMediumScreenWidth();return e||t},e.prototype.needDropdownWrapper=function(){for(var e=0;e<this.responsiveComponents.length;e++){var t=this.responsiveComponents[e];if(t.needDropdownWrapper&&t.needDropdownWrapper())return!0}return!1},e.prototype.addDropdownHeaderWrapperIfNeeded=function(){if(this.needDropdownWrapper()){var e=i.$$(this.coveoRoot).find(\".coveo-tab-section\");this.searchBoxElement?this.dropdownHeadersWrapper.insertAfter(this.searchBoxElement):e?this.dropdownHeadersWrapper.insertAfter(e):this.coveoRoot.prepend(this.dropdownHeadersWrapper.el)}},e.prototype.isTabs=function(e){return\"Tab\"==e},e.prototype.isActivated=function(e){return void 0!=u.find(this.responsiveComponents,function(t){return t.ID==e})},e.prototype.getSearchBoxElement=function(){var e=this.coveoRoot.find(\".coveo-search-section\");return e||this.coveoRoot.find(\".CoveoSearchbox\")},e.prototype.bindNukeEvents=function(){var t=this;i.$$(this.coveoRoot).on(o.InitializationEvents.nuke,function(){window.removeEventListener(\"resize\",t.resizeListener),e.componentManagers=u.filter(e.componentManagers,function(e){return e.coveoRoot.el!=t.coveoRoot.el})})},e.prototype.isAbleToDetermineMode=function(){return 0!=this.coveoRoot.width()||\"auto\"!==this.searchInterface.options.responsiveMode},e.DROPDOWN_HEADER_WRAPPER_CSS_CLASS=\"coveo-dropdown-header-wrapper\",e.componentManagers=[],e.remainingComponentInitializations=0,e.componentInitializations=[],e}();t.ResponsiveComponentsManager=d},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(5),r=n(4),s=n(99),a=n(65),u=n(88),l=n(55),c=n(8),p=n(46),h=function(){function e(){}return e.buildTemplateOption=function(t){return c.ComponentOptions.buildOption(p.ComponentOptionsType.TEMPLATE,e.loadTemplateOption,t)},e.loadTemplateOption=function(t,n,i,o){void 0===o&&(o=document);var r,s=i.selectorAttr||c.ComponentOptions.attrNameFromName(n,i)+\"-selector\",a=t.getAttribute(s)||c.ComponentOptions.getAttributeFromAlias(t,i);if(null!=a){var u=o.querySelector(a);null!=u&&(r=e.createResultTemplateFromElement(u))}if(null==r){var l=i.idAttr||c.ComponentOptions.attrNameFromName(n,i)+\"-id\",p=t.getAttribute(l)||c.ComponentOptions.getAttributeFromAlias(t,i);null!=p&&(r=e.loadResultTemplateFromId(p))}if(null==r){var h=i.childSelector;null==h&&(h=\".\"+n.replace(/([A-Z])/g,\"-$1\").toLowerCase()),r=e.loadChildrenResultTemplateFromSelector(t,h)}return r},e.createResultTemplateFromElement=function(e){o.Assert.exists(e);var t=e.getAttribute(\"type\"),n=\"You must specify the type of template. Valid values are: \"+l.UnderscoreTemplate.mimeTypes.toString()+\" \"+s.HtmlTemplate.mimeTypes.toString();return o.Assert.check(r.Utils.isNonEmptyString(t),n),-1!=i.indexOf(l.UnderscoreTemplate.mimeTypes,t.toLowerCase())?l.UnderscoreTemplate.create(e):-1!=i.indexOf(s.HtmlTemplate.mimeTypes,t.toLowerCase())?new s.HtmlTemplate(e):void o.Assert.fail(\"Cannot guess template type from attribute: \"+t+\". Valid values are \"+n)},e.loadResultTemplateFromId=function(e){return r.Utils.isNonEmptyString(e)?a.TemplateCache.getTemplate(e):null},e.loadChildrenResultTemplateFromSelector=function(t,n){var o=c.ComponentOptions.loadChildrenHtmlElementFromSelector(t,n);return o.length>0?new u.TemplateList(i.compact(o.map(function(t){return e.createResultTemplateFromElement(t)}))):null},e}();t.TemplateComponentOptions=h},function(e,t,n){\"use strict\";function i(e,t){var n=Object.create(e.prototype);for(var i in t)n[i]=t[i];return n}function o(){}function r(e){var t;return e=(e+\"\").trim().toLowerCase(),(t=P.exec(e))?(t=parseInt(t[1],16),new c(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1)):(t=D.exec(e))?s(parseInt(t[1],16)):(t=$.exec(e))?new c(t[1],t[2],t[3],1):(t=N.exec(e))?new c(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=V.exec(e))?a(t[1],t[2],t[3],t[4]):(t=k.exec(e))?a(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=L.exec(e))?p(t[1],t[2]/100,t[3]/100,1):(t=B.exec(e))?p(t[1],t[2]/100,t[3]/100,t[4]):Q.hasOwnProperty(e)?s(Q[e]):\"transparent\"===e?new c(NaN,NaN,NaN,0):null}function s(e){return new c(e>>16&255,e>>8&255,255&e,1)}function a(e,t,n,i){return i<=0&&(e=t=n=NaN),new c(e,t,n,i)}function u(e){return e instanceof o||(e=r(e)),e?(e=e.rgb(),new c(e.r,e.g,e.b,e.opacity)):new c}function l(e,t,n,i){return 1===arguments.length?u(e):new c(e,t,n,null==i?1:i)}function c(e,t,n,i){this.r=+e,this.g=+t,this.b=+n,this.opacity=+i}function p(e,t,n,i){return i<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new f(e,t,n,i)}function h(e){if(e instanceof f)return new f(e.h,e.s,e.l,e.opacity);if(e instanceof o||(e=r(e)),!e)return new f;if(e instanceof f)return e;e=e.rgb();var t=e.r/255,n=e.g/255,i=e.b/255,s=Math.min(t,n,i),a=Math.max(t,n,i),u=NaN,l=a-s,c=(a+s)/2;return l?(u=t===a?(n-i)/l+6*(n<i):n===a?(i-t)/l+2:(t-n)/l+4,l/=c<.5?a+s:2-a-s,u*=60):l=c>0&&c<1?0:u,new f(u,l,c,e.opacity)}function d(e,t,n,i){return 1===arguments.length?h(e):new f(e,t,n,null==i?1:i)}function f(e,t,n,i){this.h=+e,this.s=+t,this.l=+n,this.opacity=+i}function m(e,t,n){return 255*(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)}function y(e){if(e instanceof v)return new v(e.l,e.a,e.b,e.opacity);if(e instanceof O){var t=e.h*U;return new v(e.l,Math.cos(t)*e.c,Math.sin(t)*e.c,e.opacity)}e instanceof c||(e=u(e));var n=w(e.r),i=w(e.g),o=w(e.b),r=b((.4124564*n+.3575761*i+.1804375*o)/q),s=b((.2126729*n+.7151522*i+.072175*o)/H);return new v(116*s-16,500*(r-s),200*(s-b((.0193339*n+.119192*i+.9503041*o)/z)),e.opacity)}function g(e,t,n,i){return 1===arguments.length?y(e):new v(e,t,n,null==i?1:i)}function v(e,t,n,i){this.l=+e,this.a=+t,this.b=+n,this.opacity=+i}function b(e){return e>K?Math.pow(e,1/3):e/Y+W}function C(e){return e>G?e*e*e:Y*(e-W)}function S(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function w(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function x(e){if(e instanceof O)return new O(e.h,e.c,e.l,e.opacity);e instanceof v||(e=y(e));var t=Math.atan2(e.b,e.a)*j;return new O(t<0?t+360:t,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function _(e,t,n,i){return 1===arguments.length?x(e):new O(e,t,n,null==i?1:i)}function O(e,t,n,i){this.h=+e,this.c=+t,this.l=+n,this.opacity=+i}function E(e){if(e instanceof T)return new T(e.h,e.s,e.l,e.opacity);e instanceof c||(e=u(e));var t=e.r/255,n=e.g/255,i=e.b/255,o=(oe*i+ne*t-ie*n)/(oe+ne-ie),r=i-o,s=(te*(n-o)-Z*r)/ee,a=Math.sqrt(s*s+r*r)/(te*o*(1-o)),l=a?Math.atan2(s,r)*j-120:NaN;return new T(l<0?l+360:l,a,o,e.opacity)}function A(e,t,n,i){return 1===arguments.length?E(e):new T(e,t,n,null==i?1:i)}function T(e,t,n,i){this.h=+e,this.s=+t,this.l=+n,this.opacity=+i}var R=function(e,t,n){e.prototype=t.prototype=n,n.constructor=e},F=\"\\\\s*([+-]?\\\\d+)\\\\s*\",I=\"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",M=\"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",P=/^#([0-9a-f]{3})$/,D=/^#([0-9a-f]{6})$/,$=new RegExp(\"^rgb\\\\(\"+[F,F,F]+\"\\\\)$\"),N=new RegExp(\"^rgb\\\\(\"+[M,M,M]+\"\\\\)$\"),V=new RegExp(\"^rgba\\\\(\"+[F,F,F,I]+\"\\\\)$\"),k=new RegExp(\"^rgba\\\\(\"+[M,M,M,I]+\"\\\\)$\"),L=new RegExp(\"^hsl\\\\(\"+[I,M,M]+\"\\\\)$\"),B=new RegExp(\"^hsla\\\\(\"+[I,M,M,I]+\"\\\\)$\"),Q={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};R(o,r,{displayable:function(){return this.rgb().displayable()},toString:function(){return this.rgb()+\"\"}}),R(c,l,i(o,{brighter:function(e){return e=null==e?1/.7:Math.pow(1/.7,e),new c(this.r*e,this.g*e,this.b*e,this.opacity)},darker:function(e){return e=null==e?.7:Math.pow(.7,e),new c(this.r*e,this.g*e,this.b*e,this.opacity)},rgb:function(){return this},displayable:function(){return 0<=this.r&&this.r<=255&&0<=this.g&&this.g<=255&&0<=this.b&&this.b<=255&&0<=this.opacity&&this.opacity<=1},toString:function(){var e=this.opacity;return e=isNaN(e)?1:Math.max(0,Math.min(1,e)),(1===e?\"rgb(\":\"rgba(\")+Math.max(0,Math.min(255,Math.round(this.r)||0))+\", \"+Math.max(0,Math.min(255,Math.round(this.g)||0))+\", \"+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===e?\")\":\", \"+e+\")\")}})),R(f,d,i(o,{brighter:function(e){return e=null==e?1/.7:Math.pow(1/.7,e),new f(this.h,this.s,this.l*e,this.opacity)},darker:function(e){return e=null==e?.7:Math.pow(.7,e),new f(this.h,this.s,this.l*e,this.opacity)},rgb:function(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,i=n+(n<.5?n:1-n)*t,o=2*n-i;return new c(m(e>=240?e-240:e+120,o,i),m(e,o,i),m(e<120?e+240:e-120,o,i),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1}}));var U=Math.PI/180,j=180/Math.PI,q=.95047,H=1,z=1.08883,W=4/29,G=6/29,Y=3*G*G,K=G*G*G;R(v,g,i(o,{brighter:function(e){return new v(this.l+18*(null==e?1:e),this.a,this.b,this.opacity)},darker:function(e){return new v(this.l-18*(null==e?1:e),this.a,this.b,this.opacity)},rgb:function(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,n=isNaN(this.b)?e:e-this.b/200;return e=H*C(e),t=q*C(t),n=z*C(n),new c(S(3.2404542*t-1.5371385*e-.4985314*n),S(-.969266*t+1.8760108*e+.041556*n),S(.0556434*t-.2040259*e+1.0572252*n),this.opacity)}})),R(O,_,i(o,{brighter:function(e){return new O(this.h,this.c,this.l+18*(null==e?1:e),this.opacity)},darker:function(e){return new O(this.h,this.c,this.l-18*(null==e?1:e),this.opacity)},rgb:function(){return y(this).rgb()}}));var J=-.14861,X=1.78277,Z=-.29227,ee=-.90649,te=1.97294,ne=te*ee,ie=te*X,oe=X*Z-ee*J;R(T,A,i(o,{brighter:function(e){return e=null==e?1/.7:Math.pow(1/.7,e),new T(this.h,this.s,this.l*e,this.opacity)},darker:function(e){return e=null==e?.7:Math.pow(.7,e),new T(this.h,this.s,this.l*e,this.opacity)},rgb:function(){var e=isNaN(this.h)?0:(this.h+120)*U,t=+this.l,n=isNaN(this.s)?0:this.s*t*(1-t),i=Math.cos(e),o=Math.sin(e);return new c(255*(t+n*(J*i+X*o)),255*(t+n*(Z*i+ee*o)),255*(t+n*(te*i)),this.opacity)}})),n.d(t,\"a\",function(){return r}),n.d(t,\"f\",function(){return l}),n.d(t,\"d\",function(){return d}),n.d(t,\"e\",function(){return g}),n.d(t,\"c\",function(){return _}),n.d(t,\"b\",function(){return A})},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(362);var i=n(3),o=n(1),r=function(){function e(e,t,n,i){void 0===e&&(e=function(e){}),this.onChange=e,this.label=t,this.ariaLabel=n,this.labelSuffix=i,this.buildContent()}return e.prototype.toggle=function(){this.checkbox.checked=!this.isSelected(),o.$$(this.checkbox).trigger(\"change\")},e.prototype.getElement=function(){return this.element},e.prototype.build=function(){return this.element},e.prototype.getValue=function(){return this.label},e.prototype.reset=function(){var e=this.isSelected();this.checkbox.checked=!1,e&&o.$$(this.checkbox).trigger(\"change\")},e.prototype.select=function(e){void 0===e&&(e=!0);var t=this.isSelected();this.checkbox.checked=!0,!t&&e&&o.$$(this.checkbox).trigger(\"change\")},e.prototype.isSelected=function(){return this.checkbox.checked},e.prototype.getLabel=function(){return this.element},e.prototype.buildContent=function(){var e=this,t=o.$$(\"label\",{className:\"coveo-checkbox-label\"});this.checkbox=o.$$(\"input\",{type:\"checkbox\",className:\"coveo-checkbox\",value:this.label,\"aria-label\":this.ariaLabel||this.label,\"aria-hidden\":!0}).el;var n=o.$$(\"button\",{type:\"button\",className:\"coveo-checkbox-button\",\"aria-label\":this.ariaLabel||this.label}),i=o.$$(\"span\",{className:\"coveo-checkbox-span-label\"});i.text(this.label);var r=o.$$(\"span\",{className:\"coveo-checkbox-span-label-suffix\"});r.text(this.labelSuffix),t.append(this.checkbox),t.append(n.el),t.append(i.el),this.labelSuffix&&t.append(r.el),n.on(\"click\",function(t){t.preventDefault(),e.toggle()}),o.$$(this.checkbox).on(\"change\",function(){return e.onChange(e)}),this.element=t.el},e.doExport=function(){i.exportGlobally({Checkbox:e})},e}();t.Checkbox=r},function(e,t){var n;n=function(){return this}();try{n=n||Function(\"return this\")()||(0,eval)(\"this\")}catch(e){\"object\"==typeof window&&(n=window)}e.exports=n},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.searchEvent=\"analyticsSearchEvent\",e.documentViewEvent=\"analyticsDocumentViewEvent\",e.customEvent=\"analyticsCustomEvent\",e.analyticsEventReady=\"analyticsEventReady\",e.changeAnalyticsCustomData=\"changeAnalyticsCustomData\",e}();t.AnalyticsEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});!function(e){e.idle=\"idle\",e.selected=\"selected\"}(t.FacetValueState||(t.FacetValueState={}))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(24),o=n(5),r=n(55),s=n(99),a=n(0),u=function(){function e(){}return e.registerTemplate=function(t,n,r,s,u){void 0===r&&(r=!0),void 0===s&&(s=!1),void 0===u&&(u=!1),o.Assert.isNonEmptyString(t),o.Assert.exists(n),n instanceof i.Template||(n=new i.Template(n)),null==n.name&&(n.name=t),e.templates[t]=n,r&&!a.contains(e.templateNames,t)&&e.templateNames.push(t),u&&!a.contains(e.resultListTemplateNames,t)&&e.resultListTemplateNames.push(t),s&&(e.defaultTemplates[t]=n)},e.unregisterTemplate=function(t){o.Assert.isNonEmptyString(t),void 0!=e.templates[t]&&delete e.templates[t],void 0!=e.defaultTemplates[t]&&delete e.defaultTemplates[t]},e.getTemplate=function(t){return e.templates[t]||e.scanAndRegisterTemplates(),o.Assert.exists(e.templates[t]),e.templates[t]},e.getTemplates=function(){return e.templates},e.getTemplateNames=function(){return e.templateNames},e.getResultListTemplateNames=function(){return e.resultListTemplateNames},e.getDefaultTemplates=function(){return a.keys(e.defaultTemplates)},e.getDefaultTemplate=function(t){return o.Assert.exists(e.defaultTemplates[t]),e.defaultTemplates[t]},e.scanAndRegisterTemplates=function(){r.UnderscoreTemplate.isLibraryAvailable()&&e.scanAndRegisterUnderscoreTemplates(),e.scanAndRegisterHtmlTemplates()},e.scanAndRegisterUnderscoreTemplates=function(){a.each(r.UnderscoreTemplate.mimeTypes,function(t){for(var n=document.querySelectorAll(\"script[id][type='\"+t+\"']\"),i=n.length,o=new Array(i);i--;)o[i]=n.item(i);a.each(o,function(t){var n=new r.UnderscoreTemplate(t);e.registerTemplate(t.getAttribute(\"id\"),n)})})},e.scanAndRegisterHtmlTemplates=function(){a.each(s.HtmlTemplate.mimeTypes,function(t){for(var n=document.querySelectorAll(\"script[id][type='\"+t+\"']\"),i=n.length,o=new Array(i);i--;)o[i]=n.item(i);a.each(o,function(t){var n=new s.HtmlTemplate(t);e.registerTemplate(t.getAttribute(\"id\"),n)})})},e.templates={},e.templateNames=[],e.resultListTemplateNames=[],e.defaultTemplates={},e}();t.TemplateCache=u,document.addEventListener(\"DOMContentLoaded\",function(){u.scanAndRegisterTemplates()})},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(4),o=n(5),r=n(0),s=function(){function e(){}return e.replace=function(t,n,o){var r=new e;if(i.Utils.isNullOrEmptyString(t))return r;var s=t.lastIndexOf(n);if(-1==s)return r.value=t,r;for(var a=[];s>=0;){var u={begin:s,size:n.length,replacementSize:o.length};a.push(u),t=t.slice(0,s)+o+t.slice(s+n.length),s=t.lastIndexOf(n)}return r.holes=a,r.value=t,r},e.shortenPath=function(t,n){var o=new e,r=t;if(i.Utils.isNullOrEmptyString(r)||r.length<=n)return o.value=r,o;var s=[],a=-1;if(-1!==(a=i.Utils.stringStartsWith(r,\"\\\\\\\\\")?r.indexOf(\"\\\\\",a+2):r.indexOf(\"\\\\\"))){for(var u=0,l=r.indexOf(\"\\\\\",a+1);-1!==l&&r.length-u+e.SHORTEN_END.length>n;)u=l-a-1,l=r.indexOf(\"\\\\\",l+1);if(u>0){r=r.slice(0,a+1)+e.SHORTEN_END+r.slice(u);var c={begin:a+1,size:u-e.SHORTEN_END.length,replacementSize:e.SHORTEN_END.length};s.push(c)}}if(r.length>n){var p=r.length-n+e.SHORTEN_END.length,h=r.length-p;r=r.slice(0,h)+e.SHORTEN_END;var c={begin:h,size:p,replacementSize:e.SHORTEN_END.length};s.push(c)}return o.holes=s,o.value=r,o},e.shortenString=function(t,n,o){void 0===n&&(n=200);var r=t;o=i.Utils.toNotNullString(o);var s=new e;if(i.Utils.isNullOrEmptyString(r)||n<=o.length)return s.value=r,s;if(r.length<=n)return s.value=r,s;var a=r;if(n-=o.length,a=a.slice(0,n),\" \"!==r.charAt(a.length)){var u=a.lastIndexOf(\" \");-1!==u&&a.length-u<e.WORD_SHORTER&&(a=a.slice(0,u))}var l=[];return l[0]={begin:a.length,size:r.length-a.length,replacementSize:o.length},a+=o,s.value=a,s.holes=l,s},e.shortenUri=function(t,n){var o=new e;if(i.Utils.isNullOrEmptyString(t)||t.length<=n)return o.value=t,o;var r=[],s=t.indexOf(\"//\");if(-1!==s&&(s=t.indexOf(\"/\",s+2)),-1!==s){for(var a=0,u=t.indexOf(\"/\",s+1);-1!==u&&t.length-a+e.SHORTEN_END.length>n;)a=u-s-1,u=t.indexOf(\"/\",u+1);if(a>0){t=t.slice(0,s+1)+e.SHORTEN_END+t.slice(s+1+a);var l={begin:s+1,size:a,replacementSize:e.SHORTEN_END.length};r.push(l)}}if(t.length>n){var c=t.length-n+e.SHORTEN_END.length,p=t.length-c;t=t.slice(0,p)+e.SHORTEN_END;var l={begin:p,size:c,replacementSize:e.SHORTEN_END.length};r.push(l)}return o.holes=r,o.value=t,o},e.SHORTEN_END=\"...\",e.WORD_SHORTER=10,e}();t.StringAndHoles=s;var a=function(){function e(){}return e.highlightString=function(e,t,n,s){if(o.Assert.isNotUndefined(t),o.Assert.isNotNull(t),o.Assert.isNonEmptyString(s),i.Utils.isNullOrEmptyString(e))return e;for(var a=e.length,u=\"\",l=0,c=0;c<t.length;c++){var p=t[c],h=p.offset,d=h+p.length;if(null!==n){for(var f=!1,m=0;m<n.length;m++){var y=n[m],g=y.begin,v=g+y.size;if(h<g&&d>=g&&d<v)d=g;else{if(h>=g&&d<v){f=!0;break}if(h>=g&&h<v&&d>=v)h=g+y.replacementSize,d-=y.size-y.replacementSize;else if(h<g&&d>=v)d-=y.size-y.replacementSize;else if(h>=v){var b=y.size-y.replacementSize;h-=b,d-=b}}}if(f||h===d)continue}if(d>a)break;u+=r.escape(e.slice(l,h)),u+='<span class=\"'+s+'\"',p.dataHighlightGroup&&(u+=' data-highlight-group=\"'+p.dataHighlightGroup.toString()+'\"'),p.dataHighlightGroupTerm&&(u+=' data-highlight-group-term=\"'+p.dataHighlightGroupTerm+'\"'),u+=\">\",u+=r.escape(e.slice(h,d)),u+=\"</span>\",l=d}return l!=a&&(u+=r.escape(e.slice(l))),u},e}();t.HighlightUtils=a},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0}),n(516),n(517);var r=n(0),s=n(208),a=n(32),u=n(33),l=n(11),c=n(83),p=n(3),h=n(5),d=n(30),f=n(15),m=n(13),y=n(6),g=n(17),v=n(49),b=n(168),C=n(22),S=n(1),w=n(14),x=n(12),_=n(4),O=n(10),E=n(7),A=n(8),T=n(2),R=n(81),F=n(171),I=n(458),M=n(459),P=n(457),D=n(460),$=n(170),N=n(461),V=n(455),k=n(456),L=n(43),B=n(126),Q=n(125),U=n(462),j=n(205),q=n(463),H=n(464),z=n(451),W=function(e){function t(n,i,o,s){void 0===s&&(s=t.ID);var a=e.call(this,n,s,o)||this;return a.element=n,a.options=i,a.keepDisplayedValuesNextTime=!1,a.values=new Q.FacetValues,a.currentPage=0,a.firstQuery=!0,a.canFetchMore=!0,a.showingWaitAnimation=!1,a.listenToQueryStateChange=!0,a.options=A.ComponentOptions.initComponentOptions(n,t,i),null!=a.options.valueCaption&&(a.options.availableSorts=r.filter(a.options.availableSorts,function(e){return!/^alpha.*$/.test(e)}),a.logger.warn(\"Because the \"+a.options.field+\" facet is using value captions, alphabetical sorts are disabled.\")),F.ResponsiveFacets.init(a.root,a,a.options),a.omniboxZIndex=t.omniboxIndex,t.omniboxIndex--,a.checkForComputedFieldAndSort(),a.checkForValueCaptionType(),a.checkForCustomSort(),a.initDependsOnManager(),a.initFacetQueryController(),a.initQueryEvents(),a.initQueryStateEvents(),a.initComponentStateEvents(),a.initOmniboxEvents(),a.initBreadCrumbEvents(),a.initSearchAlertEvents(),a.updateNumberOfValues(),a.bind.oneRootElement(l.QueryEvents.querySuccess,function(){a.firstQuery=!1}),a}return i(t,e),t.prototype.isCurrentlyDisplayed=function(){return!!S.$$(this.element).isVisible()&&(!!S.$$(this.element).hasClass(\"coveo-active\")||!S.$$(this.element).hasClass(\"coveo-facet-empty\"))},t.prototype.createDom=function(){var e=this;if(this.initBottomAndTopSpacer(),this.buildFacetContent(),this.updateAppearanceDependingOnState(),this.facetSettings&&this.options.enableSettingsFacetState){var t=r.once(function(){e.facetSettings.loadSavedState.apply(e.facetSettings)});this.bind.onRootElement(l.QueryEvents.newQuery,t)}},t.prototype.selectValue=function(e){h.Assert.exists(e),this.ensureDom(),this.logger.info(\"Selecting facet value\",this.facetValuesList.select(e)),this.facetValueHasChanged()},t.prototype.selectMultipleValues=function(e){var t=this;h.Assert.exists(e),this.ensureDom(),r.each(e,function(e){t.logger.info(\"Selecting facet value\",t.facetValuesList.select(e))}),this.facetValueHasChanged()},t.prototype.deselectValue=function(e){h.Assert.exists(e),this.ensureDom(),this.logger.info(\"Deselecting facet value\",this.facetValuesList.unselect(e)),this.facetValueHasChanged()},t.prototype.deselectMultipleValues=function(e){var t=this;h.Assert.exists(e),this.ensureDom(),r.each(e,function(e){t.logger.info(\"Deselecting facet value\",t.facetValuesList.unselect(e))}),this.facetValueHasChanged()},t.prototype.excludeValue=function(e){h.Assert.exists(e),this.ensureDom(),this.logger.info(\"Excluding facet value\",this.facetValuesList.exclude(e)),this.facetValueHasChanged()},t.prototype.excludeMultipleValues=function(e){var t=this;h.Assert.exists(e),this.ensureDom(),r.each(e,function(e){t.logger.info(\"Excluding facet value\",t.facetValuesList.exclude(e))}),this.facetValueHasChanged()},t.prototype.unexcludeValue=function(e){h.Assert.exists(e),this.ensureDom(),this.logger.info(\"Unexcluding facet value\",this.facetValuesList.unExclude(e)),this.facetValueHasChanged()},t.prototype.unexcludeMultipleValues=function(e){var t=this;h.Assert.exists(e),this.ensureDom(),r.each(e,function(e){t.logger.info(\"Unexcluding facet value\",t.facetValuesList.unExclude(e))}),this.facetValueHasChanged()},t.prototype.toggleSelectValue=function(e){h.Assert.exists(e),this.ensureDom(),this.logger.info(\"Toggle select facet value\",this.facetValuesList.toggleSelect(e)),this.facetValueHasChanged()},t.prototype.toggleExcludeValue=function(e){h.Assert.exists(e),this.ensureDom(),this.logger.info(\"Toggle exclude facet value\",this.facetValuesList.toggleExclude(e)),this.facetValueHasChanged()},t.prototype.getDisplayedValues=function(){return r.pluck(this.getDisplayedFacetValues(),\"value\")},t.prototype.getDisplayedFacetValues=function(){this.ensureDom();var e=this.facetValuesList.getAllCurrentlyDisplayed();return r.map(e,function(e){return e.facetValue})},t.prototype.getSelectedValues=function(){return this.ensureDom(),r.map(this.values.getSelected(),function(e){return e.value})},t.prototype.getExcludedValues=function(){return this.ensureDom(),r.map(this.values.getExcluded(),function(e){return e.value})},t.prototype.reset=function(){this.ensureDom(),this.values.reset(),this.rebuildValueElements(),this.updateAppearanceDependingOnState(),this.updateQueryStateModel()},t.prototype.switchToAnd=function(){this.ensureDom(),this.logger.info(\"Switching to AND\"),this.facetHeader.switchToAnd()},t.prototype.switchToOr=function(){this.ensureDom(),this.logger.info(\"Switching to OR\"),this.facetHeader.switchToOr()},t.prototype.getEndpoint=function(){return this.queryController.getEndpoint()},t.prototype.updateSort=function(e){this.ensureDom(),this.options.sortCriteria!=e&&(this.options.sortCriteria=e,this.usageAnalytics.logCustomEvent(O.analyticsActionCauseList.facetUpdateSort,{criteria:e,facetId:this.options.id,facetField:this.options.field.toString(),facetTitle:this.options.title},this.element),this.triggerNewQuery())},t.prototype.unfadeInactiveValuesInMainList=function(){S.$$(this.element).removeClass(\"coveo-facet-fade\")},t.prototype.fadeInactiveValuesInMainList=function(e){S.$$(this.element).addClass(\"coveo-facet-fade\")},t.prototype.showWaitingAnimation=function(){this.ensureDom(),this.showingWaitAnimation||(S.$$(this.headerElement).find(\".coveo-facet-header-wait-animation\").style.visibility=\"visible\",this.showingWaitAnimation=!0)},t.prototype.hideWaitingAnimation=function(){this.ensureDom(),this.showingWaitAnimation&&(S.$$(this.headerElement).find(\".coveo-facet-header-wait-animation\").style.visibility=\"hidden\",this.showingWaitAnimation=!1)},t.prototype.processFacetSearchAllResultsSelected=function(e){var t=this,n=[];r.each(e,function(e){t.ensureFacetValueIsInList(e),n.push(e.value)});var i=this.values.getSelected().concat(this.values.getExcluded());this.numberOfValues=i.length+r.difference(i,e).length,this.numberOfValues=Math.max(this.numberOfValues,this.options.numberOfValues),this.currentPage=Math.floor((this.numberOfValues-this.options.numberOfValues)/this.options.pageSize),this.updateQueryStateModel(),this.triggerNewQuery(function(){return t.usageAnalytics.logSearchEvent(O.analyticsActionCauseList.facetSelectAll,{facetId:t.options.id,facetField:t.options.field.toString(),facetTitle:t.options.title})})},t.prototype.pinFacetPosition=function(){this.options.preservePosition&&(this.pinnedViewportPosition=this.element.getBoundingClientRect().top)},t.prototype.getValueCaption=function(e){h.Assert.exists(e);var t=e.lookupValue||e.value,n=t;return n=L.FacetUtils.tryToGetTranslatedCaption(this.options.field,t),_.Utils.exists(this.options.valueCaption)&&(\"object\"==typeof this.options.valueCaption&&(n=this.options.valueCaption[t]||n),\"function\"==typeof this.options.valueCaption&&(this.values.get(t),n=this.options.valueCaption.call(this,this.facetValuesList.get(t).facetValue))),n},t.prototype.showMore=function(){this.currentPage++,this.updateNumberOfValues(),this.nbAvailableValues>=this.numberOfValues||!this.canFetchMore?this.rebuildValueElements():this.triggerMoreQuery()},t.prototype.showLess=function(){S.$$(this.lessElement).removeClass(\"coveo-active\"),this.currentPage=0,this.updateNumberOfValues(),S.$$(this.moreElement).addClass(\"coveo-active\"),this.values.sortValuesDependingOnStatus(this.numberOfValues),this.rebuildValueElements(),this.logAnalyticsFacetShowMoreLess(O.analyticsActionCauseList.facetShowLess)},t.prototype.collapse=function(){this.ensureDom(),this.facetHeader&&this.facetHeader.collapseFacet()},t.prototype.expand=function(){this.ensureDom(),this.facetHeader&&this.facetHeader.expandFacet()},t.prototype.triggerNewQuery=function(e){e?this.queryController.executeQuery({beforeExecuteQuery:e}):this.queryController.executeQuery({ignoreWarningSearchEvent:!0}),this.showWaitingAnimation()},t.prototype.handleDeferredQuerySuccess=function(e){h.Assert.exists(e),this.unfadeInactiveValuesInMainList(),this.hideWaitingAnimation();var t=e.results.groupByResults[this.facetQueryController.lastGroupByRequestIndex];this.facetQueryController.lastGroupByResult=t,t||(this.keepDisplayedValuesNextTime=!1),1==this.values.getAll().length&&(this.keepDisplayedValuesNextTime=!1),this.processNewGroupByResults(t)},t.prototype.handleQueryError=function(){this.updateValues(new Q.FacetValues),this.updateAppearanceDependingOnState(),this.hideWaitingAnimation()},t.prototype.handlePopulateBreadcrumb=function(e){if(h.Assert.exists(e),this.values.hasSelectedOrExcludedValues()){var t=new M.BreadcrumbValueList(this,this.values.getSelected().concat(this.values.getExcluded()),I.BreadcrumbValueElement).build();e.breadcrumbs.push({element:t})}},t.prototype.handlePopulateSearchAlerts=function(e){if(this.values.hasSelectedOrExcludedValues()){var t=this.values.getExcluded(),n=this.values.getSelected();r.isEmpty(t)||e.text.push({value:new M.BreadcrumbValueList(this,t,I.BreadcrumbValueElement).buildAsString(),lineThrough:!0}),r.isEmpty(n)||e.text.push({value:new M.BreadcrumbValueList(this,n,I.BreadcrumbValueElement).buildAsString(),lineThrough:!1})}},t.prototype.initFacetQueryController=function(){this.facetQueryController=new s.FacetQueryController(this)},t.prototype.initFacetValuesList=function(){this.facetValuesList=new U.FacetValuesList(this,B.FacetValueElement),this.element.appendChild(this.facetValuesList.build())},t.prototype.initFacetSearch=function(){this.facetSearch=new D.FacetSearch(this,N.FacetSearchValuesList,this.root),this.element.appendChild(this.facetSearch.build())},t.prototype.facetValueHasChanged=function(){var e=this;this.updateQueryStateModel(),this.rebuildValueElements(),d.Defer.defer(function(){e.updateAppearanceDependingOnState()})},t.prototype.updateAppearanceDependingOnState=function(){S.$$(this.element).toggleClass(\"coveo-active\",this.values.hasSelectedOrExcludedValues()),S.$$(this.element).toggleClass(\"coveo-facet-empty\",!this.isAnyValueCurrentlyDisplayed()),this.dependsOnManager.updateVisibilityBasedOnDependsOn(),S.$$(this.facetHeader.eraserElement).toggleClass(\"coveo-facet-header-eraser-visible\",this.values.hasSelectedOrExcludedValues())},t.prototype.initQueryEvents=function(){var e=this;this.bind.onRootElement(l.QueryEvents.duringQuery,function(){return e.handleDuringQuery()}),this.bind.onRootElement(l.QueryEvents.buildingQuery,function(t){return e.handleBuildingQuery(t)}),this.bind.onRootElement(l.QueryEvents.doneBuildingQuery,function(t){return e.handleDoneBuildingQuery(t)}),this.bind.onRootElement(l.QueryEvents.deferredQuerySuccess,function(t){return e.handleDeferredQuerySuccess(t)}),this.bind.onRootElement(l.QueryEvents.queryError,function(){return e.handleQueryError()})},t.prototype.initQueryStateEvents=function(){var e=this;this.includedAttributeId=m.QueryStateModel.getFacetId(this.options.id),this.excludedAttributeId=m.QueryStateModel.getFacetId(this.options.id,!1),this.operatorAttributeId=m.QueryStateModel.getFacetOperator(this.options.id),this.lookupValueAttributeId=m.QueryStateModel.getFacetLookupValue(this.options.id),this.queryStateModel.registerNewAttribute(this.includedAttributeId,[]),this.queryStateModel.registerNewAttribute(this.excludedAttributeId,[]),this.queryStateModel.registerNewAttribute(this.operatorAttributeId,\"\"),this.queryStateModel.registerNewAttribute(this.lookupValueAttributeId,{}),this.bind.onQueryState(f.MODEL_EVENTS.CHANGE,void 0,function(t){return e.handleQueryStateChanged(t)}),this.dependsOnManager.listenToParentIfDependentFacet()},t.prototype.initComponentStateEvents=function(){this.componentStateId=m.QueryStateModel.getFacetId(this.options.id),this.componentStateModel.registerComponent(this.componentStateId,this)},t.prototype.initOmniboxEvents=function(){var e=this;this.options.includeInOmnibox&&this.bind.onRootElement(u.OmniboxEvents.populateOmnibox,function(t){return e.handlePopulateOmnibox(t)})},t.prototype.initBreadCrumbEvents=function(){var e=this;this.options.includeInBreadcrumb&&(this.bind.onRootElement(a.BreadcrumbEvents.populateBreadcrumb,function(t){return e.handlePopulateBreadcrumb(t)}),this.bind.onRootElement(a.BreadcrumbEvents.clearBreadcrumb,function(t){return e.handleClearBreadcrumb()}))},t.prototype.initSearchAlertEvents=function(){var e=this;this.bind.onRootElement(c.SearchAlertsEvents.searchAlertsPopulateMessage,function(t){return e.handlePopulateSearchAlerts(t)})},t.prototype.handleOmniboxWithStaticValue=function(e){var t=this,n=new RegExp(\"^\"+e.completeQueryExpression.regex.source,\"i\"),i=r.first(r.filter(this.getDisplayedValues(),function(e){var i=t.getValueCaption(t.facetValuesList.get(e).facetValue);return n.test(i)}),this.options.numberOfValuesInOmnibox),o=r.map(i,function(e){return t.facetValuesList.get(e).facetValue}),s=new H.OmniboxValuesList(this,o,e,q.OmniboxValueElement).build();e.rows.push({element:s,zIndex:this.omniboxZIndex})},t.prototype.processNewGroupByResults=function(e){this.logger.trace(\"Displaying group by results\",e),void 0!=e&&void 0!=e.values&&(this.nbAvailableValues=e.values.length);var t=new Q.FacetValues(e);this.updateValues(t),this.canFetchMore=this.numberOfValues<this.nbAvailableValues,this.values.hasSelectedOrExcludedValues()&&!this.options.useAnd&&this.options.isMultiValueField?this.triggerUpdateDeltaQuery(r.filter(this.values.getAll(),function(e){return!e.selected&&!e.excluded})):this.values.getSelected().length>0&&!this.options.useAnd&&this.values.updateDeltaWithFilteredFacetValues(new Q.FacetValues,this.options.isMultiValueField),this.values.hasSelectedOrExcludedValues()&&!this.options.useAnd&&this.options.isMultiValueField||(this.rebuildValueElements(),this.updateAppearanceDependingOnState(),this.ensurePinnedFacetHasntMoved()),this.keepDisplayedValuesNextTime=!1},t.prototype.updateQueryStateModel=function(){this.listenToQueryStateChange=!1,this.updateExcludedQueryStateModel(),this.updateIncludedQueryStateModel(),this.facetHeader.updateOperatorQueryStateModel(),this.updateLookupValueQueryStateModel(),this.listenToQueryStateChange=!0},t.prototype.rebuildValueElements=function(){this.updateNumberOfValues(),this.facetValuesList.rebuild(this.numberOfValues),this.shouldRenderMoreLess()?(this.updateMoreLess(),this.shouldRenderFacetSearch()&&this.updateSearchElement(this.nbAvailableValues>this.numberOfValues)):this.shouldRenderFacetSearch()&&this.updateSearchElement()},t.prototype.updateSearchElement=function(e){var t=this;if(void 0===e&&(e=!0),e){var n=new z.ValueElementRenderer(this,Q.FacetValue.create(y.l(\"Search\")));this.searchContainer=n.build().withNo([n.excludeIcon,n.icon]),S.$$(this.searchContainer.listItem).addClass(\"coveo-facet-search-button\"),(new g.AccessibleButton).withElement(this.searchContainer.accessibleElement).withLabel(y.l(\"Search\")).withEnterKeyboardAction(function(e){return t.toggleSearchMenu(e)}).build(),C.DeviceUtils.isMobileDevice()&&S.$$(this.searchContainer.label).on(\"click\",function(e){return t.toggleSearchMenu(e)}),S.$$(this.searchContainer.checkbox).on(\"change\",function(){S.$$(t.element).addClass(\"coveo-facet-searching\"),t.facetSearch.focus()}),this.facetValuesList.valueContainer.appendChild(this.searchContainer.listItem)}},t.prototype.updateMoreLess=function(e,t){void 0===e&&(e=this.getMinimumNumberOfValuesToDisplay()<this.numberOfValues),void 0===t&&(t=this.nbAvailableValues>this.numberOfValues),e?S.$$(this.lessElement).addClass(\"coveo-active\"):S.$$(this.lessElement).removeClass(\"coveo-active\"),t?S.$$(this.moreElement).addClass(\"coveo-active\"):S.$$(this.moreElement).removeClass(\"coveo-active\"),e||t?S.$$(this.footerElement).removeClass(\"coveo-facet-empty\"):S.$$(this.footerElement).addClass(\"coveo-facet-empty\")},t.prototype.handleClickMore=function(){this.showMore()},t.prototype.handleClickLess=function(){this.showLess()},t.prototype.toggleSearchMenu=function(e){var t=this.searchContainer;t.checkbox.getAttribute(\"checked\")?t.checkbox.removeAttribute(\"checked\"):t.checkbox.setAttribute(\"checked\",\"checked\"),S.$$(t.checkbox).trigger(\"change\"),e.stopPropagation(),e.preventDefault()},t.prototype.checkForComputedFieldAndSort=function(){-1!=this.options.sortCriteria.toLowerCase().indexOf(\"computedfield\")&&_.Utils.isNullOrUndefined(this.options.computedField)&&this.logger.warn(\"Sort criteria is specified as ComputedField, but the facet uses no computed field. Facet will always be empty !\",this)},t.prototype.checkForValueCaptionType=function(){this.options.valueCaption&&\"function\"==typeof this.options.valueCaption&&(this.options.enableFacetSearch=!1,this.options.includeInOmnibox=!1,this.logger.warn(\"Using a function as valueCaption is now deprecated. Use a json key value pair instead. Facet search and omnibox has been disabled for this facet\",this))},t.prototype.checkForCustomSort=function(){void 0==this.options.customSort||r.contains(this.options.availableSorts,\"custom\")||this.options.availableSorts.unshift(\"custom\"),\"custom\"==this.options.availableSorts[0]&&(this.options.sortCriteria=\"nosort\")},t.prototype.initDependsOnManager=function(){var e=this,t={reset:function(){return e.reset()},toggleDependentFacet:function(t){return e.toggleDependentFacet(t)},element:this.element,root:this.root,dependsOn:this.options.dependsOn,id:this.options.id,queryStateModel:this.queryStateModel,bind:this.bind};this.dependsOnManager=new b.DependsOnManager(t)},t.prototype.toggleDependentFacet=function(e){this.getSelectedValues().length?e.enable():e.disable()},t.prototype.dependsOnUpdateParentDisplayValue=function(){var e=this;if(this.options.dependsOn){var n=v.ComponentsTypes.getAllFacetsInstance(this.root).filter(function(n){return n instanceof t&&n.options.id===e.options.dependsOn});if(!n.length)return void this.logger.warn('Unable to find a Facet with the id or field \"'+this.options.dependsOn+'\".',\"The master facet values can't be updated.\");if(n.length>1)return void this.logger.warn('Multiple facets with id \"'+this.options.dependsOn+'\" found.',\"A given facet may only depend on a single other facet.\",\"Ensure that each facet in your search interface has a unique id.\",\"The master facet cannot be updated.\",n);n[0].keepDisplayedValuesNextTime=!1}},t.prototype.initBottomAndTopSpacer=function(){var e=this,t=S.$$(this.options.paddingContainer).find(\".coveo-bottomSpace\"),n=S.$$(this.options.paddingContainer).find(\".coveo-topSpace\");this.options.preservePosition&&(S.$$(this.options.paddingContainer).on(\"mouseleave\",function(){return e.unpinFacetPosition()}),this.pinnedTopSpace=n,this.pinnedBottomSpace=t,this.pinnedTopSpace||(this.pinnedTopSpace=document.createElement(\"div\"),S.$$(this.pinnedTopSpace).addClass(\"coveo-topSpace\"),S.$$(this.pinnedTopSpace).insertBefore(this.options.paddingContainer.firstChild)),this.pinnedBottomSpace||(this.pinnedBottomSpace=document.createElement(\"div\"),S.$$(this.pinnedBottomSpace).addClass(\"coveo-bottomSpace\"),this.options.paddingContainer.appendChild(this.pinnedBottomSpace)))},t.prototype.updateIncludedQueryStateModel=function(){var e={included:this.getSelectedValues(),title:this.includedAttributeId};this.queryStateModel.set(this.includedAttributeId,e.included)},t.prototype.updateExcludedQueryStateModel=function(){var e={title:this.excludedAttributeId,excluded:this.getExcludedValues()};this.queryStateModel.set(this.excludedAttributeId,e.excluded)},t.prototype.updateLookupValueQueryStateModel=function(){if(this.options.lookupField){var e={};r.each(this.values.getSelected().concat(this.values.getExcluded()),function(t){e[t.value]=t.lookupValue}),this.queryStateModel.set(this.lookupValueAttributeId,e)}},t.prototype.handleQueryStateChangedOperator=function(e){\"and\"==e?this.switchToAnd():\"or\"==e&&this.switchToOr()},t.prototype.handleQueryStateChangedIncluded=function(e){var t=r.difference(this.getSelectedValues(),e);_.Utils.isNonEmptyArray(t)&&this.deselectMultipleValues(t),_.Utils.arrayEqual(this.getSelectedValues(),e,!1)||this.selectMultipleValues(e)},t.prototype.handleQueryStateChangedExcluded=function(e){var t=r.difference(this.getExcludedValues(),e);_.Utils.isNonEmptyArray(t)&&this.unexcludeMultipleValues(t),_.Utils.arrayEqual(this.getExcludedValues(),e,!1)||this.excludeMultipleValues(e)},t.prototype.handleLookupvalueChanged=function(e){var t=this;r.each(e,function(e,n){t.facetValuesList.get(decodeURIComponent(n)).facetValue.lookupValue=decodeURIComponent(e)})},t.prototype.handleQueryStateChanged=function(e){h.Assert.exists(e),this.ensureDom(),this.dependsOnUpdateParentDisplayValue();var t=function(e){return e&&(e=r.map(e,function(e){return e.trim()})),e},n=e.attributes,i=t(n[this.includedAttributeId]),o=t(n[this.excludedAttributeId]),s=n[this.operatorAttributeId],a=n[this.lookupValueAttributeId];this.listenToQueryStateChange&&(_.Utils.isNullOrEmptyString(s)||this.handleQueryStateChangedOperator(s),_.Utils.isNullOrUndefined(i)||this.handleQueryStateChangedIncluded(i),_.Utils.isNullOrUndefined(o)||this.handleQueryStateChangedExcluded(o),_.Utils.isNullOrUndefined(a)||this.handleLookupvalueChanged(a))},t.prototype.handlePopulateOmnibox=function(e){h.Assert.exists(e),h.Assert.exists(e.completeQueryExpression),this.queryController.ensureCreatedQueryBuilder(),this.canFetchMore?this.handleOmniboxWithSearchInFacet(e):this.handleOmniboxWithStaticValue(e)},t.prototype.handleOmniboxWithSearchInFacet=function(e){var t=this,n=new RegExp(\"^\"+e.completeQueryExpression.regex.source,\"i\"),i=new Promise(function(i,o){var s=new $.FacetSearchParameters(t);s.setValueToSearch(e.completeQueryExpression.word),s.nbResults=t.options.numberOfValuesInOmnibox,t.facetQueryController.search(s).then(function(o){var s=r.map(r.filter(o,function(e){return n.test(e.lookupValue)}),function(e){return t.values.get(e.lookupValue)||Q.FacetValue.create(e)}),a=new H.OmniboxValuesList(t,s,e,q.OmniboxValueElement).build();i({element:a,zIndex:t.omniboxZIndex})}).catch(function(){i({element:void 0})})});e.rows.push({deferred:i})},t.prototype.handleDuringQuery=function(){this.ensureDom(),this.keepDisplayedValuesNextTime||this.fadeInactiveValuesInMainList(this.options.facetSearchDelay)},t.prototype.handleBuildingQuery=function(e){if(h.Assert.exists(e),h.Assert.exists(e.queryBuilder),this.facetQueryController.prepareForNewQuery(),this.values.hasSelectedOrExcludedValues()){var t=this.facetQueryController.computeOurFilterExpression();this.logger.trace(\"Putting filter in query\",t),e.queryBuilder.advancedExpression.add(t)}},t.prototype.handleDoneBuildingQuery=function(e){h.Assert.exists(e),h.Assert.exists(e.queryBuilder);var t=e.queryBuilder;this.facetQueryController.putGroupByIntoQueryBuilder(t)},t.prototype.handleClearBreadcrumb=function(){this.reset()},t.prototype.updateValues=function(e){h.Assert.exists(e),this.keepDisplayedValuesNextTime?this.values.updateCountsFromNewValues(e):(e.importActiveValuesFromOtherList(this.values),e.sortValuesDependingOnStatus(this.numberOfValues),this.values=e),this.updateNumberOfValues()},t.prototype.ensureFacetValueIsInList=function(e){h.Assert.exists(e),this.values.contains(e.value)||this.values.add(e)},t.prototype.isAnyValueCurrentlyDisplayed=function(){return!this.values.isEmpty()},t.prototype.buildFacetContent=function(){this.headerElement=this.buildHeader(),this.element.appendChild(this.headerElement),this.initFacetValuesList(),this.shouldRenderFacetSearch()&&this.initFacetSearch(),this.shouldRenderMoreLess()&&(this.moreElement=this.buildMore(),this.lessElement=this.buildLess()),this.footerElement=this.buildFooter(),this.element.appendChild(this.footerElement),this.lessElement&&this.moreElement&&(this.footerElement.appendChild(this.lessElement),this.footerElement.appendChild(this.moreElement))},t.prototype.buildHeader=function(){var e=this.options.headerIcon;this.options.headerIcon==this.options.field&&(e=void 0),this.facetHeader=new P.FacetHeader({facetElement:this.element,title:this.options.title,icon:e,field:this.options.field,enableClearElement:!0,enableCollapseElement:this.options.enableCollapse,facet:this,settingsKlass:this.options.enableSettings?V.FacetSettings:void 0,sortKlass:k.FacetSort,availableSorts:this.options.availableSorts});var t=this.facetHeader.build();return this.facetSettings=this.facetHeader.settings,this.facetSort=this.facetHeader.sort,t},t.prototype.unpinFacetPosition=function(){this.shouldFacetUnpin()&&this.options.preservePosition&&(S.$$(this.pinnedTopSpace).addClass(\"coveo-with-animation\"),S.$$(this.pinnedBottomSpace).addClass(\"coveo-with-animation\"),this.pinnedTopSpace.style.height=\"0px\",this.pinnedBottomSpace.style.height=\"0px\"),this.unpinnedViewportPosition=void 0,this.pinnedViewportPosition=void 0},t.prototype.isFacetPinned=function(){return _.Utils.exists(this.pinnedViewportPosition)},t.prototype.shouldFacetUnpin=function(){return _.Utils.exists(this.unpinnedViewportPosition)},t.prototype.ensurePinnedFacetHasntMoved=function(){if(this.isFacetPinned()){h.Assert.exists(this.pinnedViewportPosition),S.$$(this.pinnedTopSpace).removeClass(\"coveo-with-animation\"),S.$$(this.pinnedBottomSpace).removeClass(\"coveo-with-animation\"),this.pinnedTopSpace.style.height=\"0px\",this.pinnedBottomSpace.style.height=\"0px\";var e=this.options.scrollContainer==document.body?window:this.options.scrollContainer,t=this.element.getBoundingClientRect().top,n=t-this.pinnedViewportPosition;!function(){e instanceof Window?window.scrollTo(0,new S.Win(e).scrollY()+n):e.scrollTop=e.scrollTop+n}(),t=this.element.getBoundingClientRect().top,n=t-this.pinnedViewportPosition,n<0&&(this.pinnedTopSpace.style.height=-1*n+\"px\"),this.unpinnedViewportPosition=this.pinnedViewportPosition,this.pinnedViewportPosition=null}},t.prototype.buildFooter=function(){return S.$$(\"div\",{className:\"coveo-facet-footer\"}).el},t.prototype.buildMore=function(){var e=this,t=S.$$(\"span\",{className:\"coveo-facet-more-icon\"},x.SVGIcons.icons.arrowDown).el;w.SVGDom.addClassToSVGInContainer(t,\"coveo-facet-more-icon-svg\");var n=S.$$(\"div\",{className:\"coveo-facet-more\",tabindex:0},t).el;return(new g.AccessibleButton).withElement(n).withLabel(y.l(\"ShowMoreFacetResults\",this.options.title)).withSelectAction(function(){return e.handleClickMore()}).build(),n},t.prototype.buildLess=function(){var e=this,t=S.$$(\"span\",{className:\"coveo-facet-less-icon\"},x.SVGIcons.icons.arrowUp).el;w.SVGDom.addClassToSVGInContainer(t,\"coveo-facet-less-icon-svg\");var n=S.$$(\"div\",{className:\"coveo-facet-less\",tabindex:0},t).el;return(new g.AccessibleButton).withElement(n).withLabel(y.l(\"ShowLessFacetResults\",this.options.title)).withSelectAction(function(){return e.handleClickLess()}).build(),n},t.prototype.triggerMoreQuery=function(){var e=this;this.logger.info(\"Triggering new facet more query\"),this.showWaitingAnimation(),this.facetQueryController.fetchMore(this.numberOfValues+1).then(function(t){e.logAnalyticsFacetShowMoreLess(O.analyticsActionCauseList.facetShowMore);var n=new Q.FacetValues(t.groupByResults[0]);n.importActiveValuesFromOtherList(e.values),n.sortValuesDependingOnStatus(e.numberOfValues),e.values=n,e.nbAvailableValues=e.values.size(),e.updateNumberOfValues(),e.canFetchMore=e.numberOfValues<e.nbAvailableValues,e.values.hasSelectedOrExcludedValues()&&!e.options.useAnd&&e.options.isMultiValueField?e.triggerUpdateDeltaQuery(r.filter(e.values.getAll(),function(e){return!e.selected&&!e.excluded})):e.values.hasSelectedOrExcludedValues()&&!e.options.useAnd?(e.values.updateDeltaWithFilteredFacetValues(new Q.FacetValues,e.options.isMultiValueField),e.hideWaitingAnimation()):e.hideWaitingAnimation(),e.rebuildValueElements()}).catch(function(){return e.hideWaitingAnimation()})},t.prototype.triggerUpdateDeltaQuery=function(e){var t=this;this.showWaitingAnimation(),this.facetQueryController.searchInFacetToUpdateDelta(e).then(function(e){var n=new Q.FacetValues;r.each(e.groupByResults,function(e){r.each(e.values,function(e){n.contains(e.value)||n.add(Q.FacetValue.createFromGroupByValue(e))})}),t.values.updateDeltaWithFilteredFacetValues(n,t.options.isMultiValueField),t.cleanupDeltaValuesForMultiValueField(),t.rebuildValueElements(),t.hideWaitingAnimation()})},t.prototype.updateNumberOfValues=function(){this.currentPage<=0?(this.currentPage=0,this.numberOfValues=0):this.numberOfValues=this.options.numberOfValues+this.currentPage*this.options.pageSize,this.numberOfValues=Math.max(this.numberOfValues,this.getMinimumNumberOfValuesToDisplay())},t.prototype.getMinimumNumberOfValuesToDisplay=function(){var e=this.values.getExcluded().length+this.values.getSelected().length;if(null!=this.options.customSort&&null!=this.facetSort&&this.options.customSort.length>0){var t=-1;new j.FacetValuesOrder(this,this.facetSort).reorderValues(this.values.getAll()).forEach(function(e,n){e.selected&&(t=n)}),e=t+1}return Math.max(e,this.options.numberOfValues)},t.prototype.cleanupDeltaValuesForMultiValueField=function(){var e=this;this.options.isMultiValueField&&(r.each(this.values.getAll(),function(t){0!=t.occurrences||t.selected||t.excluded||e.values.remove(t.value)}),this.nbAvailableValues=this.values.getAll().length)},t.prototype.shouldRenderFacetSearch=function(){return this.options.enableFacetSearch},t.prototype.shouldRenderMoreLess=function(){return this.options.enableMoreLess},t.prototype.debugInfo=function(){var e={};return e[this.constructor.ID]={component:this,groupByRequest:this.facetQueryController.lastGroupByRequest,groupByResult:this.facetQueryController.lastGroupByResult},e},t.prototype.logAnalyticsFacetShowMoreLess=function(e){this.usageAnalytics.logCustomEvent(e,{facetId:this.options.id,facetField:this.options.field.toString(),facetTitle:this.options.title},this.element)},t.ID=\"Facet\",t.omniboxIndex=50,t.doExport=function(){p.exportGlobally({Facet:t,FacetHeader:P.FacetHeader,FacetSearchValuesList:N.FacetSearchValuesList,FacetSettings:V.FacetSettings,FacetSort:k.FacetSort,FacetUtils:L.FacetUtils,FacetValueElement:B.FacetValueElement,FacetValue:Q.FacetValue})},t.options=o({title:A.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return y.l(\"NoTitle\")},section:\"CommonOptions\",priority:10}),field:A.ComponentOptions.buildFieldOption({required:!0,groupByField:!0,section:\"CommonOptions\"}),headerIcon:A.ComponentOptions.buildStringOption({deprecated:\"This option is exposed for legacy reasons, and the recommendation is to not use this option.\"}),id:A.ComponentOptions.buildStringOption({postProcessing:function(e,t){if(e){var n=e.replace(/[^a-zA-Z0-9-@$_.+!*'(),,]+/g,\"\");return _.Utils.isNullOrEmptyString(n)?t.field:n}return t.field}}),isMultiValueField:A.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"CommonOptions\"}),lookupField:A.ComponentOptions.buildFieldOption({deprecated:\"This option is exposed for legacy reasons. It is not recommended to use this option.\"}),enableSettings:A.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"Sorting\",priority:9}),enableSettingsFacetState:A.ComponentOptions.buildBooleanOption({defaultValue:!1,depend:\"enableSettings\"}),availableSorts:A.ComponentOptions.buildListOption({defaultValue:[\"occurrences\",\"score\",\"alphaascending\",\"alphadescending\"],section:\"Sorting\",depend:\"enableSettings\",values:[\"occurrences\",\"score\",\"alphaascending\",\"alphadescending\",\"computedfieldascending\",\"computedfielddescending\",\"chisquare\",\"nosort\"]}),sortCriteria:A.ComponentOptions.buildStringOption({postProcessing:function(e,t){return e||(t.availableSorts.length>0?t.availableSorts[0]:\"occurrences\")},section:\"Sorting\"}),customSort:A.ComponentOptions.buildListOption({section:\"Sorting\"}),numberOfValues:A.ComponentOptions.buildNumberOption({defaultValue:5,min:0,section:\"CommonOptions\"}),injectionDepth:A.ComponentOptions.buildNumberOption({defaultValue:1e3,min:0}),showIcon:A.ComponentOptions.buildBooleanOption({defaultValue:!1,deprecated:\"This option is exposed for legacy reasons. It is not recommended to use this option.\"}),useAnd:A.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"Filtering\"}),enableTogglingOperator:A.ComponentOptions.buildBooleanOption({defaultValue:!1,alias:\"allowTogglingOperator\"}),enableFacetSearch:A.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"FacetSearch\",priority:8}),facetSearchDelay:A.ComponentOptions.buildNumberOption({defaultValue:100,min:0,depend:\"enableFacetSearch\"}),facetSearchIgnoreAccents:A.ComponentOptions.buildBooleanOption({defaultValue:!1,depend:\"enableFacetSearch\"}),numberOfValuesInFacetSearch:A.ComponentOptions.buildNumberOption({defaultValue:15,min:1,section:\"FacetSearch\"}),useWildcardsInFacetSearch:A.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"FacetSearch\"}),includeInBreadcrumb:A.ComponentOptions.buildBooleanOption({defaultValue:!0}),numberOfValuesInBreadcrumb:A.ComponentOptions.buildNumberOption({defaultFunction:function(){return C.DeviceUtils.isMobileDevice()?3:5},min:0,depend:\"includeInBreadcrumb\"}),includeInOmnibox:A.ComponentOptions.buildBooleanOption({defaultValue:!1,deprecated:\"This option is exposed for legacy reasons. It is not recommended to use this option.\"}),numberOfValuesInOmnibox:A.ComponentOptions.buildNumberOption({defaultFunction:function(){return C.DeviceUtils.isMobileDevice()?3:5},min:0,depend:\"includeInOmnibox\",deprecated:\"This option is exposed for legacy reasons. It is not recommended to use this option.\"}),computedField:A.ComponentOptions.buildFieldOption({priority:7}),computedFieldOperation:A.ComponentOptions.buildStringOption({defaultValue:\"sum\",section:\"ComputedField\"}),computedFieldFormat:A.ComponentOptions.buildStringOption({defaultValue:\"c0\",section:\"ComputedField\"}),computedFieldCaption:A.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return y.l(\"ComputedField\")},section:\"ComputedField\"}),preservePosition:A.ComponentOptions.buildBooleanOption({defaultValue:!0}),paddingContainer:A.ComponentOptions.buildSelectorOption({defaultFunction:function(e){var t=S.$$(e).parent(\"coveo-facet-column\");return null!=t?t:e.parentElement}}),scrollContainer:A.ComponentOptions.buildSelectorOption({defaultFunction:function(e){return document.body}}),enableMoreLess:A.ComponentOptions.buildBooleanOption({defaultValue:!0}),pageSize:A.ComponentOptions.buildNumberOption({defaultValue:10,min:1,depend:\"enableMoreLess\"}),enableCollapse:A.ComponentOptions.buildBooleanOption({defaultValue:!0,depend:\"enableSettings\"}),allowedValues:A.ComponentOptions.buildListOption(),additionalFilter:A.ComponentOptions.buildQueryExpressionOption(),dependsOn:A.ComponentOptions.buildStringOption(),valueCaption:A.ComponentOptions.buildJsonOption()},R.ResponsiveFacetOptions),t}(E.Component);t.Facet=W,T.Initialization.registerAutoCreateComponent(W),W.doExport()},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=function(){function e(e,t){void 0===t&&(t=!0),this.milliseconds=t?e:1e3*e}return e.prototype.getMilliseconds=function(){return this.milliseconds},e.prototype.getSeconds=function(){return this.getMilliseconds()/1e3},e.prototype.getMinutes=function(){return this.getSeconds()/60},e.prototype.getHours=function(){return this.getMinutes()/60},e.prototype.getDays=function(){return this.getHours()/24},e.prototype.getWeeks=function(){return this.getDays()/7},e.prototype.getHHMMSS=function(){var e,t,n,i=Math.floor(this.getHours()),o=Math.floor(this.getMinutes())%60,r=Math.floor(this.getSeconds())%60;return e=0==i?\"\":i<10?\"0\"+i.toString():i.toString(),t=o<10?\"0\"+o.toString():o.toString(),n=r<10?\"0\"+r.toString():r.toString(),(\"\"!=e?e+\":\":\"\")+t+\":\"+n},e.fromDates=function(t,n){return i.Assert.exists(t),i.Assert.exists(n),new e(n.valueOf()-t.valueOf())},e}();t.TimeSpan=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(6),r=n(0),s=n(3),a=function(){function e(e,t,n,i){void 0===e&&(e=function(e){}),void 0===n&&(n=o.l),this.onChange=e,this.listOfValues=t,this.getDisplayValue=n,this.label=i,this.optionsElement=[],this.buildContent(),this.select(0,!1),this.bindEvents()}return e.doExport=function(){s.exportGlobally({Dropdown:e})},e.prototype.reset=function(){this.select(0,!1)},e.prototype.setId=function(e){i.$$(this.element).setAttribute(\"id\",e)},e.prototype.getElement=function(){return this.element},e.prototype.getValue=function(){return this.selectElement.value},e.prototype.select=function(e,t){void 0===t&&(t=!0),this.selectOption(this.optionsElement[e],t)},e.prototype.build=function(){return this.element},e.prototype.setValue=function(e){var t=this;r.each(this.optionsElement,function(n){i.$$(n).getAttribute(\"data-value\")==e&&t.selectOption(n)})},e.prototype.selectOption=function(e,t){void 0===t&&(t=!0),this.selectElement.value=e.value,t&&this.onChange(this)},e.prototype.buildContent=function(){var e=this;this.selectElement=i.$$(\"select\",{className:\"coveo-dropdown\"}).el,this.label&&this.selectElement.setAttribute(\"aria-label\",o.l(this.label));var t=this.buildOptions();r.each(t,function(t){i.$$(e.selectElement).append(t)}),this.element=this.selectElement},e.prototype.buildOptions=function(){var e=this,t=[];return r.each(this.listOfValues,function(n){t.push(e.buildOption(n))}),t},e.prototype.buildOption=function(e){var t=i.$$(\"option\");return t.setAttribute(\"data-value\",e),t.setAttribute(\"value\",e),t.text(this.getDisplayValue(e)),this.optionsElement.push(t.el),t.el},e.prototype.bindEvents=function(){var e=this;i.$$(this.selectElement).on(\"change\",function(){return e.onChange(e)})},e}();t.Dropdown=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5);t.Assert=i.Assert;var o=n(30);t.Defer=o.Defer;var r=n(147);t.L10N=r.L10N;var s=n(9);t.Logger=s.Logger;var a=n(74);t.Options=a.Options;var u=n(6);t.l=u.l,n(9).Logger.disable()},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=n(21),r=n(0),s=function(){function e(){this.parts=[],this.wrapParts=!0}return e.prototype.add=function(e){i.Assert.isNonEmptyString(e),this.parts.push(e)},e.prototype.fromExpressionBuilder=function(e){this.parts=this.parts.concat(e.parts)},e.prototype.addFieldExpression=function(e,t,n){i.Assert.isNonEmptyString(e),i.Assert.stringStartsWith(e,\"@\"),i.Assert.isNonEmptyString(t),i.Assert.isLargerOrEqualsThan(1,n.length),this.add(o.QueryUtils.buildFieldExpression(e,t,n))},e.prototype.addFieldNotEqualExpression=function(e,t){i.Assert.isNonEmptyString(e),i.Assert.stringStartsWith(e,\"@\"),i.Assert.isLargerOrEqualsThan(1,t.length),this.add(o.QueryUtils.buildFieldNotEqualExpression(e,t))},e.prototype.remove=function(e){i.Assert.isNonEmptyString(e),-1!=r.indexOf(this.parts,e)&&this.parts.splice(r.indexOf(this.parts,e),1)},e.prototype.isEmpty=function(){return 0==this.parts.length},e.prototype.build=function(e){return void 0===e&&(e=\" \"),0==this.parts.length?void 0:1==this.parts.length?this.parts[0]:this.wrapParts?\"(\"+this.parts.join(\")\"+e+\"(\")+\")\":this.parts.join(e)},e.prototype.getParts=function(){return this.parts},e.merge=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=new e;return r.each(t,function(e){i.parts=i.parts.concat(e.parts)}),i},e.mergeUsingOr=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=r.filter(t,function(e){return!e.isEmpty()}),o=new e;if(1==i.length)o.parts=[].concat(i[0].parts);else if(i.length>1){var s=r.map(i,function(e){return e.build()});o.add(\"(\"+s.join(\") OR (\")+\")\")}return o},e}();t.ExpressionBuilder=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.set=function(t,n,i){var o,r,s,a,u;i?(s=new Date,s.setTime(s.getTime()+i),a=\"; expires=\"+s.toGMTString()):a=\"\",u=location.hostname,1===u.split(\".\").length?document.cookie=this.prefix+t+\"=\"+n+a+\"; path=/\":(r=u.split(\".\"),r.shift(),o=\".\"+r.join(\".\"),document.cookie=this.prefix+t+\"=\"+n+a+\"; path=/; domain=\"+o,null!=e.get(t)&&e.get(t)==n||(o=\".\"+u,document.cookie=this.prefix+t+\"=\"+n+a+\"; path=/; domain=\"+o))},e.get=function(e){for(var t=this.prefix+e+\"=\",n=document.cookie.split(\";\"),i=0;i<n.length;i++){for(var o=n[i];\" \"==o.charAt(0);)o=o.substring(1,o.length);if(0==o.indexOf(t))return o.substring(t.length,o.length)}return null},e.erase=function(t){e.set(t,\"\",-1)},e.prefix=\"coveo_\",e}();t.Cookie=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.getJQuery=function(){return!!(window&&window.Coveo&&window.Coveo.$)&&window.Coveo.$},e.isInstanceOfJQuery=function(e){var t=this.getJQuery();return!!t&&e instanceof t},e.isInstanceOfJqueryEvent=function(e){var t=this.getJQuery();return!!t&&e instanceof t.Event},e}();t.JQueryUtils=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(4),o=n(0),r=function(){function e(){}return e.prototype.merge=function(e){return o.extend({},this,e)},e.prototype.mergeDeep=function(e){return o.extend({},i.Utils.extendDeep(this,e))},e}();t.Options=r},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(15),r=function(e){function t(n){return e.call(this,n,t.ID,{})||this}return i(t,e),t.prototype.registerComponent=function(e,t){void 0==this.attributes[e]?this.attributes[e]=[t]:this.attributes[e].push(t)},t.ID=\"ComponentState\",t}(o.Model);t.ComponentStateModel=r},function(e,t,n){var i=n(101);e.exports=function(e){if(!i(e))throw TypeError(e+\" is not an object!\");return e}},function(e,t,n){e.exports=!n(102)(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t){e.exports=function(e){if(void 0==e)throw TypeError(\"Can't call method on  \"+e);return e}},function(e,t){e.exports={}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(8);t.ResponsiveFacetOptions={enableResponsiveMode:i.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"ResponsiveOptions\"}),responsiveBreakpoint:i.ComponentOptions.buildNumberOption({deprecated:\"This option is exposed for legacy reasons. It is not recommended to use this option. Instead, use `SearchInterface.options.responsiveMediumBreakpoint` options exposed on the `SearchInterface`.\"}),dropdownHeaderLabel:i.ComponentOptions.buildLocalizedStringOption({section:\"ResponsiveOptions\"})}},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(1),a=n(29),u=n(111),l=n(4),c=n(19),p=n(12),h=n(28),d=n(9),f=n(23),m=n(5),y=function(){function e(){}return e.getPopUpCloseButton=function(e,t){var n=document.createElement(\"span\"),i=document.createElement(\"span\");s.$$(i).addClass(\"coveo-close-button\"),n.appendChild(i);var o=document.createElement(\"span\");s.$$(o).addClass(\"coveo-icon\"),s.$$(o).addClass(\"coveo-sprites-quickview-close\"),i.appendChild(o),s.$$(i).text(e);var r=document.createElement(\"span\");return s.$$(r).addClass(\"coveo-pop-up-reminder\"),s.$$(r).text(t),n.appendChild(r),n.outerHTML},e.getBasicLoadingAnimation=function(){var e=document.createElement(\"div\");return e.className=\"coveo-first-loading-animation\",e.innerHTML=\"<div class='coveo-logo'>\"+p.SVGIcons.icons.coveoLogo+\"</div>\\n    <div class='coveo-loading-container'>\\n      <div class='coveo-loading-dot'></div>\\n      <div class='coveo-loading-dot'></div>\\n      <div class='coveo-loading-dot'></div>\\n      <div class='coveo-loading-dot'></div>\\n    </div>\",e},e.highlight=function(e,t,n){void 0===t&&(t=\"coveo-highlight\"),void 0===n&&(n=!0);var i=null!==t?t.trim():null;return null!==i&&m.Assert.check(/^([^\\s\\-][a-z\\s\\-]*[^\\s\\-])?$/i.test(i),\"Invalid class\"),\"<span\"+(null!==i&&i.length>0?\" class='\"+i+\"'\":\"\")+\">\"+(n?c.StringUtils.htmlEncode(e):e)+\"</span>\"},e.highlightElement=function(e,t,n){void 0===n&&(n=\"coveo-highlight\");var i=new RegExp(l.Utils.escapeRegexCharacter(c.StringUtils.latinize(t)),\"i\"),o=c.StringUtils.latinize(e).search(i);if(o>=0){var r=o+t.length;return c.StringUtils.htmlEncode(e.slice(0,o))+this.highlight(e.slice(o,r),n,!0)+c.StringUtils.htmlEncode(e.slice(r))}return e},e.getLoadingSpinner=function(){return s.$$(\"div\",{className:\"coveo-loading-spinner\"}).el},e.getModalBoxHeader=function(e){var t=s.$$(\"div\");return t.el.innerHTML=\"<div class='coveo-modalbox-right-header'>\\n        <span class='coveo-modalbox-close-button'>\\n          <span class='coveo-icon coveo-sprites-common-clear'></span>\\n        </span>\\n      </div>\\n      <div class='coveo-modalbox-left-header'>\\n        <span class='coveo-modalbox-pop-up-reminder'> \"+(e||\"\")+\"</span>\\n      </div>\",t},e.getQuickviewHeader=function(t,n,o){var r=\"\";if(n.showDate){var c=l.Utils.getFieldValue(t,\"date\");c&&(r=a.DateUtils.dateTimeToString(new Date(c)))}var p=u.FileTypes.get(t),h=s.$$(\"div\");h.el.innerHTML=\"<div class='coveo-quickview-right-header'>\\n        <span class='coveo-quickview-time'>\"+r+\"</span>\\n        <span class='coveo-quickview-close-button'>\\n          <span class='coveo-icon coveo-sprites-common-clear'></span>\\n        </span>\\n      </div>\\n      <div class='coveo-quickview-left-header'>\\n        <span class='coveo-quickview-icon coveo-small \"+p.icon+\"'></span>\\n      </div>\";var d=s.$$(\"a\",{className:\"coveo-quickview-pop-up-reminder\"}),f=Coveo.Salesforce?\"SalesforceResultLink\":\"ResultLink\",m=i({},t);return n.title&&(m.title=n.title),e.loadResultLink(f,d,h,m,n),h},e.loadResultLink=function(e,t,n,i,a){return o(this,void 0,void 0,function(){var o,u;return r(this,function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,h.load(e)];case 1:return r.sent(),t.addClass(\"Coveo\"+e),f.Initialization.automaticallyCreateComponentsInsideResult(t.el,i),[3,3];case 2:return o=r.sent(),u=new d.Logger(this),u.error(\"Failed to load module \"+e+\" : \"+o),u.info(\"Fallback on displaying a non clickable header\"),t.text(a.title),[3,3];case 3:return s.$$(n.find(\".coveo-quickview-left-header\")).append(t.el),[2]}})})},e}();t.DomUtils=y},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.searchAlertsCreated=\"searchAlertsCreated\",e.searchAlertsDeleted=\"searchAlertsDeleted\",e.searchAlertsFail=\"searchAlertsFail\",e.searchAlertsPopulateMessage=\"searchAlertsPopulateMessage\",e}();t.SearchAlertsEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.buildingAdvancedSearch=\"buildingAdvancedSearch\",e.executeAdvancedSearch=\"executeAdvancedSearch\",e}();t.AdvancedSearchEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(29),r=n(3),s=n(6),a=n(5),u=n(20),l=n(425),c=function(){function e(e){void 0===e&&(e=function(){}),this.onChange=e,this.wasReset=!0,a.Assert.exists(e),this.buildContent()}return e.prototype.reset=function(){this.picker.setDate(void 0),this.wasReset=!0,this.onChange(this)},e.prototype.getElement=function(){return this.element},e.prototype.getValue=function(){return this.wasReset?\"\":this.picker.getDate()?o.DateUtils.dateForQuery(this.picker.getDate()):\"\"},e.prototype.getDateValue=function(){return this.wasReset?null:this.picker.getDate()},e.prototype.setValue=function(e){a.Assert.exists(e),this.picker.setDate(e),this.wasReset=!1},e.prototype.build=function(){return this.element},e.prototype.buildContent=function(){var e=this;this.element=i.$$(\"input\",{className:\"coveo-button\",\"aria-label\":s.l(\"Date\")}).el,this.element.readOnly=!0,this.picker=new l({field:this.element,onSelect:function(){e.wasReset=!1,e.onChange.call(e,e)},i18n:{previousMonth:s.l(\"PreviousMonth\"),nextMonth:s.l(\"NextMonth\"),months:u.culture().calendar.months.names,weekdays:u.culture().calendar.days.names,weekdaysShort:u.culture().calendar.days.namesAbbr}})},e.doExport=function(){r.exportGlobally({DatePicker:e})},e}();t.DatePicker=c},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i,o=n(9),r=n(5),s=n(68),a=n(22),u=n(4),l=n(73),c=n(0),p=n(39);!function(e){e[e.OPENED=XMLHttpRequest.OPENED||1]=\"OPENED\",e[e.HEADERS_RECEIVED=XMLHttpRequest.HEADERS_RECEIVED||2]=\"HEADERS_RECEIVED\",e[e.DONE=XMLHttpRequest.DONE||4]=\"DONE\"}(i||(i={}));var h=function(){function e(e){void 0===e&&(e={}),this.options=e,this.useJsonp=!1,this.logger=new o.Logger(this)}return e.convertJsonToQueryString=function(e){return r.Assert.exists(e),c.chain(e).map(function(e,t){if(null!=e){var n=c.isObject(e)?JSON.stringify(e):e.toString();return t+\"=\"+u.Utils.safeEncodeURIComponent(n)}return null}).compact().value()},e.convertJsonToFormBody=function(e){return this.convertJsonToQueryString(e).join(\"&\")},e.prototype.call=function(e){var t={url:e.url,queryString:e.errorsAsSuccess?e.queryString.concat([\"errorsAsSuccess=1\"]):e.queryString,requestData:e.requestData,requestDataType:e.requestDataType||'application/x-www-form-urlencoded; charset=\"UTF-8\"',begun:new Date,method:e.method};t.headers=this.buildRequestHeaders(t),c.isFunction(this.options.requestModifier)&&(t=this.options.requestModifier(t)),this.logger.trace(\"Performing REST request\",t);var n=this.parseURL(t.url),i=window.location.hostname===n.hostname||\"\"===n.hostname,o=\"\"!=window.location.port?window.location.port:\"https:\"==window.location.protocol?\"443\":\"80\",r=o==n.port,s=!(i&&r);return this.useJsonp?this.callUsingAjaxJsonP(t):this.isCORSSupported()||!s?this.callUsingXMLHttpRequest(t,e.responseType):this.isXDomainRequestSupported()?this.callUsingXDomainRequest(t):this.callUsingAjaxJsonP(t)},e.prototype.callUsingXMLHttpRequest=function(t,n){var o=this;return void 0===n&&(n=\"text\"),new Promise(function(r,s){var u=o.getXmlHttpRequest(),l=!1;u.onreadystatechange=function(p){if(u.readyState!=i.OPENED||l){if(u.readyState==i.HEADERS_RECEIVED){var h=u.status;o.isSuccessHttpStatus(h)?u.responseType=n:u.responseType=\"text\"}else if(u.readyState==i.DONE){var d=u.status,f=void 0;switch(n){case\"json\":if(f=u.response,\"json\"==n&&\"IE\"==a.DeviceUtils.getDeviceName())try{f=JSON.parse(f)}catch(e){}break;case\"text\":f=o.tryParseResponseText(u.responseText,u.getResponseHeader(\"Content-Type\"));break;default:f=u.response}void 0==f&&(f=o.tryParseResponseText(u.responseText,u.getResponseHeader(\"Content-Type\"))),o.isSuccessHttpStatus(d)?o.handleSuccessfulResponseThatMightBeAnError(t,f,r,s):o.handleError(t,u.status,f,s)}}else l=!0,u.withCredentials=!0,c.each(t.headers,function(e,t){u.setRequestHeader(t,e)}),\"GET\"==t.method?u.send():0===t.requestDataType.indexOf(\"application/json\")?u.send(JSON.stringify(t.requestData)):u.send(e.convertJsonToFormBody(t.requestData))};var p=t.queryString;\"GET\"==t.method&&(p=p.concat(e.convertJsonToQueryString(t.requestData))),u.open(t.method,o.combineUrlAndQueryString(t.url,p))})},e.prototype.callUsingXDomainRequest=function(t){var n=this;return new Promise(function(i,o){var r=t.queryString.concat([]);n.options.accessToken&&r.push(\"access_token=\"+u.Utils.safeEncodeURIComponent(n.options.accessToken));var s=new XDomainRequest;\"GET\"==t.method&&(r=r.concat(e.convertJsonToQueryString(t.requestData))),s.open(t.method,n.combineUrlAndQueryString(t.url,r)),s.onload=function(){var e=n.tryParseResponseText(s.responseText,s.contentType);n.handleSuccessfulResponseThatMightBeAnError(t,e,i,o)},s.onerror=function(){var e=n.tryParseResponseText(s.responseText,s.contentType);n.handleError(t,0,e,o)},s.ontimeout=function(){return n.logger.error(\"Request timeout\",s,t.requestData)},s.onprogress=function(){return n.logger.trace(\"Request progress\",s,t.requestData)},c.defer(function(){\"GET\"==t.method?s.send():s.send(e.convertJsonToFormBody(t.requestData))})})},e.prototype.callUsingAjaxJsonP=function(t){var n=this,i=l.JQueryUtils.getJQuery();return r.Assert.check(i,\"Using jsonp without having included jQuery is not supported.\"),new Promise(function(o,r){var s=t.queryString.concat(e.convertJsonToQueryString(t.requestData));n.options.accessToken&&s.push(\"access_token=\"+u.Utils.safeEncodeURIComponent(n.options.accessToken)),s.push(\"callback=?\"),i.ajax({url:n.combineUrlAndQueryString(t.url,s),dataType:\"jsonp\",success:function(e){return n.handleSuccessfulResponseThatMightBeAnError(t,e,o,r)},timeout:e.JSONP_ERROR_TIMEOUT,error:function(){return n.handleError(t,0,void 0,r)}})})},e.prototype.parseURL=function(e){var t=document.createElement(\"a\");return t.href=e,t},e.prototype.getXmlHttpRequest=function(){return new(this.options.xmlHttpRequest||XMLHttpRequest)},e.prototype.handleSuccessfulResponseThatMightBeAnError=function(e,t,n,i){this.isErrorResponseBody(t)?this.handleError(e,t.statusCode,t,i):this.handleSuccess(e,t,n)},e.prototype.handleSuccess=function(e,t,n){var i={duration:s.TimeSpan.fromDates(e.begun,new Date).getMilliseconds(),data:t};this.logger.trace(\"REST request successful\",t,e),n(i)},e.prototype.handleError=function(e,t,n,i){var o={statusCode:t,data:n};this.logger.error(\"REST request failed\",t,n,e),i(o)},e.prototype.combineUrlAndQueryString=function(e,t){return p.UrlUtils.normalizeAsString({paths:[e],queryAsString:t})},e.prototype.isXDomainRequestSupported=function(){return\"XDomainRequest\"in window},e.prototype.isCORSSupported=function(){return\"withCredentials\"in this.getXmlHttpRequest()},e.prototype.isSuccessHttpStatus=function(e){return e>=200&&e<300||304===e},e.prototype.tryParseResponseText=function(e,t){if(null==t||-1==t.indexOf(\"application/json\"))return e;if(u.Utils.isNonEmptyString(e))try{return JSON.parse(e)}catch(e){return}},e.prototype.isErrorResponseBody=function(e){return!(!e||!e.statusCode)&&!this.isSuccessHttpStatus(e.statusCode)},e.prototype.buildRequestHeaders=function(e){var t={};return this.options.accessToken?t.Authorization=\"Bearer \"+this.options.accessToken:this.options.username&&this.options.password&&(t.Authorization=\"Basic \"+btoa(this.options.username+\":\"+this.options.password)),\"GET\"==e.method?t:(0===e.requestDataType.indexOf(\"application/json\")?t[\"Content-Type\"]='application/json; charset=\"UTF-8\"':t[\"Content-Type\"]='application/x-www-form-urlencoded; charset=\"UTF-8\"',t)},e.JSONP_ERROR_TIMEOUT=1e4,e}();t.EndpointCaller=h},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0}),n(491),n(492),n(493);var s=n(0),a=n(11),u=n(128),l=n(31),c=n(3),p=n(5),h=n(30),d=n(15),f=n(13),m=n(22),y=n(1),g=n(82),v=n(4),b=n(10),C=n(7),S=n(8),w=n(2),x=n(172),_=n(59),O=n(494),E=n(441),A=n(439),T=n(115),R=n(438),F=n(65),I=n(88),M=n(495),P=n(496),D=n(202),$=n(497),N=n(109),V=n(440);E.CoreHelpers.exportAllHelpersGlobally(window.Coveo);var k=function(e){function t(n,i,o,r){void 0===r&&(r=t.ID);var s=e.call(this,n,r,o)||this;return s.element=n,s.options=i,s.bindings=o,s.currentlyDisplayedResults=[],s.reachedTheEndOfResults=!1,s.disableLayoutChange=!1,s.successiveScrollCount=0,s.options=S.ComponentOptions.initComponentOptions(n,t,i),p.Assert.exists(n),p.Assert.exists(s.options),p.Assert.exists(s.options.resultTemplate),p.Assert.exists(s.options.infiniteScrollContainer),s.showOrHideElementsDependingOnState(!1,!1),s.bind.onRootElement(a.QueryEvents.newQuery,function(e){return s.handleNewQuery()}),s.bind.onRootElement(a.QueryEvents.buildingQuery,function(e){return s.handleBuildingQuery(e)}),s.bind.onRootElement(a.QueryEvents.querySuccess,function(e){return s.handleQuerySuccess(e)}),s.bind.onRootElement(a.QueryEvents.duringQuery,function(e){return s.handleDuringQuery()}),s.bind.onRootElement(a.QueryEvents.queryError,function(e){return s.handleQueryError()}),y.$$(s.root).on(l.ResultListEvents.changeLayout,function(e,t){return s.handleChangeLayout(t)}),s.options.enableInfiniteScroll&&(s.handlePageChanged(),s.bind.on(s.options.infiniteScrollContainer,\"scroll\",function(e){s.successiveScrollCount=0,s.handleScrollOfResultList()})),s.bind.onQueryState(d.MODEL_EVENTS.CHANGE_ONE,f.QUERY_STATE_ATTRIBUTES.FIRST,function(){return s.handlePageChanged()}),s.resultContainer=s.initResultContainer(),p.Assert.exists(s.options.resultsContainer),s.initWaitAnimationContainer(),p.Assert.exists(s.options.waitAnimationContainer),s.setupTemplatesVersusLayouts(),y.$$(s.root).on(u.ResultLayoutEvents.populateResultLayout,function(e,t){return t.layouts.push(s.options.layout)}),s.setupRenderer(),s}return i(t,e),t.getDefaultTemplate=function(e){var n=t.loadTemplatesFromCache();if(null!=n)return n;var i=C.Component.get(e);return Coveo.Recommendation&&i.searchInterface instanceof Coveo.Recommendation?new A.DefaultRecommendationTemplate:new T.DefaultResultTemplate},t.loadTemplatesFromCache=function(){var e=F.TemplateCache.getResultListTemplateNames();return e.length>0?new I.TemplateList(s.compact(s.map(e,function(e){return F.TemplateCache.getTemplate(e)}))):null},t.prototype.getAutoSelectedFieldsToInclude=function(){return s.chain(this.options.resultTemplate.getFields()).concat(this.getMinimalFieldsToInclude()).compact().unique().value()},t.prototype.setupTemplatesVersusLayouts=function(){var e=this,t=\"coveo-\"+this.options.layout+\"-layout-container\";this.resultContainer.addClass(t),\"table\"===this.options.layout&&(this.options.resultTemplate=new R.TableTemplate(this.options.resultTemplate.templates||[])),this.options.resultTemplate instanceof I.TemplateList?s.each(this.options.resultTemplate.templates,function(t){t.layout||(t.layout=e.options.layout)}):this.options.resultTemplate instanceof T.DefaultResultTemplate&&\"list\"==this.options.layout&&O.ResponsiveDefaultResultTemplate.init(this.root,this,{})},t.prototype.renderResults=function(e,t){var n=this;return void 0===t&&(t=!1),t||this.resultContainer.empty(),this.renderer.renderResults(e,t,this.triggerNewResultDisplayed.bind(this)).then(function(){return n.triggerNewResultsDisplayed()})},t.prototype.buildResults=function(e){var t=this.options.layout;return this.templateToHtml.buildResults(e,t,this.currentlyDisplayedResults)},t.prototype.buildResult=function(e){var t=this.options.layout;return this.templateToHtml.buildResult(e,t,this.currentlyDisplayedResults)},t.prototype.displayMoreResults=function(e){return p.Assert.isLargerOrEqualsThan(1,e),this.isCurrentlyFetchingMoreResults()?void this.logger.warn(\"Ignoring request to display more results since we're already doing so\"):this.hasPotentiallyMoreResultsToDisplay()?(this.options.enableInfiniteScrollWaitingAnimation&&this.showWaitingAnimationForInfiniteScrolling(),this.fetchAndRenderMoreResults(e)):void this.logger.warn(\"Ignoring request to display more results since we know there aren't more to display\")},Object.defineProperty(t.prototype,\"templateToHtml\",{get:function(){var e={resultTemplate:this.options.resultTemplate,searchInterface:this.searchInterface,queryStateModel:this.queryStateModel};return new V.TemplateToHtml(e)},enumerable:!0,configurable:!0}),t.prototype.getDisplayedResults=function(){return this.currentlyDisplayedResults},t.prototype.getDisplayedResultsElements=function(){return this.resultContainer.getResultElements()},t.prototype.enable=function(){var t=this;e.prototype.enable.call(this),this.disableLayoutChange=!1,s.each(this.resultLayoutSelectors,function(e){e.enableLayouts([t.options.layout])}),y.$$(this.element).removeClass(\"coveo-hidden\")},t.prototype.disable=function(){var t=this;e.prototype.disable.call(this);var n=s.map(this.otherResultLists,function(e){return e.options.layout});s.contains(n,this.options.layout)||this.disableLayoutChange||s.each(this.resultLayoutSelectors,function(e){e.disableLayouts([t.options.layout])}),this.disableLayoutChange=!1,y.$$(this.element).addClass(\"coveo-hidden\")},t.prototype.autoCreateComponentsInsideResult=function(e,t){return this.templateToHtml.autoCreateComponentsInsideResult(e,t)},t.prototype.triggerNewResultDisplayed=function(e,t){var n={result:e,item:t};y.$$(this.element).trigger(l.ResultListEvents.newResultDisplayed,n)},t.prototype.triggerNewResultsDisplayed=function(){y.$$(this.element).trigger(l.ResultListEvents.newResultsDisplayed,{})},t.prototype.fetchAndRenderMoreResults=function(e){return o(this,void 0,void 0,function(){var t,n;return r(this,function(i){switch(i.label){case 0:this.fetchingMoreResults=this.queryController.fetchMore(e),i.label=1;case 1:return i.trys.push([1,3,,4]),[4,this.fetchingMoreResults];case 2:return t=i.sent(),p.Assert.exists(t),this.usageAnalytics.logCustomEvent(b.analyticsActionCauseList.pagerScrolling,{},this.element),this.reachedTheEndOfResults=e>t.results.length,this.renderNewResults(t),this.resetStateAfterFetchingMoreResults(),[2,t];case 3:return n=i.sent(),this.resetStateAfterFetchingMoreResults(),[2,Promise.reject(n)];case 4:return[2]}})})},t.prototype.renderNewResults=function(e){return o(this,void 0,void 0,function(){var t,n;return r(this,function(i){switch(i.label){case 0:return[4,this.buildResults(e)];case 1:return t=i.sent(),this.renderResults(t,!0),(n=this.currentlyDisplayedResults).push.apply(n,e.results),this.triggerNewResultsDisplayed(),[2]}})})},t.prototype.resetStateAfterFetchingMoreResults=function(){var e=this;this.hideWaitingAnimationForInfiniteScrolling(),this.fetchingMoreResults=void 0,h.Defer.defer(function(){e.successiveScrollCount++,e.successiveScrollCount<=t.MAX_AMOUNT_OF_SUCESSIVE_REQUESTS?e.handleScrollOfResultList():e.logger.info(\"Result list has triggered 5 consecutive queries to try and fill up the scrolling container, but it is still unable to do so.\\n          Try explicitly setting the 'data-infinite-scroll-container-selector' option on the result list. See: https://coveo.github.io/search-ui/components/resultlist.html#options.infinitescrollcontainer\")})},t.prototype.handleDuringQuery=function(){this.logger.trace(\"Emptying the result container\"),this.cancelFetchingMoreResultsIfNeeded(),this.showWaitingAnimation(),this.showOrHideElementsDependingOnState(!1,!1)},t.prototype.handleQueryError=function(){this.hideWaitingAnimation(),this.resultContainer.empty(),this.currentlyDisplayedResults=[],this.reachedTheEndOfResults=!0},t.prototype.handleQuerySuccess=function(e){var n=this;p.Assert.exists(e),p.Assert.exists(e.results);var i=e.results;this.logger.trace(\"Received query results from new query\",i),this.hideWaitingAnimation(),t.resultCurrentlyBeingRendered=void 0,this.reachedTheEndOfResults=e.query.numberOfResults>e.results.results.length,this.currentlyDisplayedResults=[],this.buildResults(e.results).then(function(t){return o(n,void 0,void 0,function(){return r(this,function(n){switch(n.label){case 0:return[4,this.renderResults(t)];case 1:return n.sent(),this.showOrHideElementsDependingOnState(!0,0!=this.currentlyDisplayedResults.length),m.DeviceUtils.isMobileDevice()&&void 0!=this.options.mobileScrollContainer&&(this.options.mobileScrollContainer.scrollTop=0),this.options.enableInfiniteScroll&&i.results.length==e.queryBuilder.numberOfResults&&(this.scrollToTopIfEnabled(),this.handleScrollOfResultList()),[2]}})})})},t.prototype.handleScrollOfResultList=function(){!this.isCurrentlyFetchingMoreResults()&&this.options.enableInfiniteScroll&&this.isScrollingOfResultListAlmostAtTheBottom()&&this.hasPotentiallyMoreResultsToDisplay()&&this.displayMoreResults(this.options.infiniteScrollPageSize)},t.prototype.handlePageChanged=function(){var e=this;this.bind.onRootElement(a.QueryEvents.deferredQuerySuccess,function(){setTimeout(function(){e.scrollToTopIfEnabled()},0)})},t.prototype.scrollToTopIfEnabled=function(){this.options.enableScrollToTop&&N.ResultListUtils.scrollToTop(this.root)},t.prototype.handleNewQuery=function(){y.$$(this.element).removeClass(\"coveo-hidden\"),t.resultCurrentlyBeingRendered=void 0},Object.defineProperty(t.prototype,\"otherResultLists\",{get:function(){var e=this.searchInterface.getComponents(t.ID);return s.without(e,this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"resultLayoutSelectors\",{get:function(){return this.searchInterface.getComponents(\"ResultLayoutSelector\")},enumerable:!0,configurable:!0}),t.prototype.handleBuildingQuery=function(e){if(null!=this.options.fieldsToInclude&&e.queryBuilder.addFieldsToInclude(s.map(this.options.fieldsToInclude,function(e){return e.substr(1)})),this.options.autoSelectFieldsToInclude){var t=s.flatten(s.map(this.otherResultLists,function(e){return e.getAutoSelectedFieldsToInclude()}));e.queryBuilder.addRequiredFields(s.unique(t.concat(this.getAutoSelectedFieldsToInclude()))),e.queryBuilder.includeRequiredFields=!0}},t.prototype.handleChangeLayout=function(e){var t=this;e.layout===this.options.layout?(this.disableLayoutChange=!1,this.enable(),this.options.resultTemplate.layout=this.options.layout,e.results&&(this.resultContainer.isEmpty()&&new x.InitializationPlaceholder(this.root).withVisibleRootElement().withPlaceholderForResultList(),h.Defer.defer(function(){return o(t,void 0,void 0,function(){var t;return r(this,function(n){switch(n.label){case 0:return[4,this.buildResults(e.results)];case 1:return t=n.sent(),this.renderResults(t),this.showOrHideElementsDependingOnState(!0,0!==this.currentlyDisplayedResults.length),[2]}})})}))):(this.disableLayoutChange=!0,this.disable(),this.resultContainer.empty())},t.prototype.isCurrentlyFetchingMoreResults=function(){return v.Utils.exists(this.fetchingMoreResults)},t.prototype.getMinimalFieldsToInclude=function(){return[\"author\",\"language\",\"urihash\",\"objecttype\",\"collection\",\"source\",\"language\",\"permanentid\"]},t.prototype.isScrollingOfResultListAlmostAtTheBottom=function(){var e;try{e=this.options.infiniteScrollContainer instanceof Window}catch(t){e=!1}return e?this.isScrollAtBottomForWindowElement():this.isScrollAtBottomForHtmlElement()},t.prototype.isScrollAtBottomForWindowElement=function(){var e=new y.Win(window),t=e.height(),n=e.scrollY();return new y.Doc(document).height()-(t+n)<t/2},t.prototype.isScrollAtBottomForHtmlElement=function(){var e=this.options.infiniteScrollContainer,t=e.clientHeight;return e.scrollHeight-(e.scrollTop+t)<t/2},t.prototype.hasPotentiallyMoreResultsToDisplay=function(){return this.currentlyDisplayedResults.length>0&&!this.reachedTheEndOfResults},t.prototype.cancelFetchingMoreResultsIfNeeded=function(){this.isCurrentlyFetchingMoreResults()&&(this.logger.trace(\"Cancelling fetching more results\"),Promise.reject(this.fetchingMoreResults),this.fetchingMoreResults=void 0)},t.prototype.showOrHideElementsDependingOnState=function(e,t){var n=y.$$(this.element).findAll(\".coveo-show-if-query\"),i=y.$$(this.element).findAll(\".coveo-show-if-no-query\"),o=y.$$(this.element).findAll(\".coveo-show-if-results\"),r=y.$$(this.element).findAll(\".coveo-show-if-no-results\");s.each(n,function(t){y.$$(t).toggle(e)}),s.each(i,function(t){y.$$(t).toggle(!e)}),s.each(o,function(n){y.$$(n).toggle(e&&t)}),s.each(r,function(n){y.$$(n).toggle(e&&!t)})},Object.defineProperty(t.prototype,\"waitAnimation\",{get:function(){return this.options.waitAnimation.toLowerCase()},enumerable:!0,configurable:!0}),t.prototype.showWaitingAnimation=function(){switch(this.waitAnimation){case\"fade\":y.$$(this.options.waitAnimationContainer).addClass(\"coveo-fade-out\");break;case\"spinner\":this.resultContainer.hideChildren(),void 0==y.$$(this.options.waitAnimationContainer).find(\".coveo-wait-animation\")&&this.options.waitAnimationContainer.appendChild(g.DomUtils.getBasicLoadingAnimation())}},t.prototype.hideWaitingAnimation=function(){switch(this.waitAnimation){case\"fade\":y.$$(this.options.waitAnimationContainer).removeClass(\"coveo-fade-out\");break;case\"spinner\":var e=y.$$(this.options.waitAnimationContainer).find(\".coveo-loading-spinner\");e&&y.$$(e).detach()}},t.prototype.showWaitingAnimationForInfiniteScrolling=function(){var e=g.DomUtils.getLoadingSpinner();if(\"card\"==this.options.layout&&this.options.enableInfiniteScroll){var t=y.$$(this.options.waitAnimationContainer).findAll(\".coveo-loading-spinner-container\");s.each(t,function(e){return y.$$(e).remove()});var n=y.$$(\"div\",{className:\"coveo-loading-spinner-container\"});n.append(e),this.options.waitAnimationContainer.appendChild(n.el)}else this.options.waitAnimationContainer.appendChild(g.DomUtils.getLoadingSpinner())},t.prototype.hideWaitingAnimationForInfiniteScrolling=function(){var e=y.$$(this.options.waitAnimationContainer).findAll(\".coveo-loading-spinner\"),t=y.$$(this.options.waitAnimationContainer).findAll(\".coveo-loading-spinner-container\");s.each(e,function(e){return y.$$(e).remove()}),s.each(t,function(e){return y.$$(e).remove()})},t.prototype.initResultContainer=function(){if(!this.options.resultsContainer){var e=\"table\"===this.options.layout?\"table\":\"div\";this.options.resultsContainer=y.$$(e,{className:\"coveo-result-list-container\"}).el,this.initResultContainerAddToDom()}return new M.ResultContainer(this.options.resultsContainer,this.searchInterface)},t.prototype.initResultContainerAddToDom=function(){this.element.appendChild(this.options.resultsContainer)},t.prototype.initWaitAnimationContainer=function(){this.options.waitAnimationContainer||(this.options.waitAnimationContainer=this.resultContainer.el)},t.prototype.setupRenderer=function(){var e={options:this.searchInterface.options.originalOptionsObject,bindings:this.bindings},t=function(t){return w.Initialization.automaticallyCreateComponentsInside(t,e)};switch(this.options.layout){case\"card\":this.renderer=new P.ResultListCardRenderer(this.options,t);break;case\"table\":this.renderer=new $.ResultListTableRenderer(this.options,t);break;case\"list\":default:this.renderer=new D.ResultListRenderer(this.options,t)}},t.ID=\"ResultList\",t.doExport=function(){c.exportGlobally({ResultList:t})},t.options={resultsContainer:S.ComponentOptions.buildChildHtmlElementOption(),resultTemplate:_.TemplateComponentOptions.buildTemplateOption({defaultFunction:t.getDefaultTemplate}),waitAnimation:S.ComponentOptions.buildStringOption({defaultValue:\"none\"}),waitAnimationContainer:S.ComponentOptions.buildChildHtmlElementOption({postProcessing:function(e,t){return e||t.resultsContainer}}),enableInfiniteScroll:S.ComponentOptions.buildBooleanOption({defaultValue:!1}),infiniteScrollPageSize:S.ComponentOptions.buildNumberOption({defaultValue:10,min:1,depend:\"enableInfiniteScroll\"}),infiniteScrollContainer:S.ComponentOptions.buildChildHtmlElementOption({depend:\"enableInfiniteScroll\",defaultFunction:function(e){return S.ComponentOptions.findParentScrolling(e)}}),enableInfiniteScrollWaitingAnimation:S.ComponentOptions.buildBooleanOption({depend:\"enableInfiniteScroll\",defaultValue:!0}),mobileScrollContainer:S.ComponentOptions.buildSelectorOption({defaultFunction:function(){return document.querySelector(\".coveo-results-column\")}}),autoSelectFieldsToInclude:S.ComponentOptions.buildBooleanOption({defaultValue:!1}),fieldsToInclude:S.ComponentOptions.buildFieldsOption({includeInResults:!0}),layout:S.ComponentOptions.buildStringOption({defaultValue:\"list\",required:!0}),enableScrollToTop:S.ComponentOptions.buildBooleanOption({defaultValue:!0,depend:\"enableInfiniteScroll\"})},t.resultCurrentlyBeingRendered=null,t.MAX_AMOUNT_OF_SUCESSIVE_REQUESTS=5,t}(C.Component);t.ResultList=k,w.Initialization.registerAutoCreateComponent(k)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=n(115),s=n(5),a=n(0),u=function(e){function t(t){var n=e.call(this)||this;return n.templates=t,s.Assert.exists(t),n}return i(t,e),t.prototype.instantiateToString=function(e,t){void 0===t&&(t={});for(var n=(new o.DefaultInstantiateTemplateOptions).merge(t),i=a.reject(this.templates,function(e){return null!=e.role}),r=0;r<i.length;r++){var s=i[r].instantiateToString(e,n);if(null!=s)return s}return this.getFallbackTemplate().instantiateToString(e,t)},t.prototype.instantiateToElement=function(e,t){void 0===t&&(t={});for(var n=(new o.DefaultInstantiateTemplateOptions).merge(t),i=a.reject(this.templates,function(e){return null!=e.role}),r=0;r<i.length;r++){var s=i[r].instantiateToElement(e,n);if(null!=s)return s}return this.getFallbackTemplate().instantiateToElement(e,n)},t.prototype.getFields=function(){return a.reduce(this.templates,function(e,t){return e.concat(t.getFields())},[])},t.prototype.getType=function(){return\"TemplateList\"},t.prototype.getFallbackTemplate=function(){return new r.DefaultResultTemplate},t}(o.Template);t.TemplateList=u},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},r=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},s=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(7),u=n(6),l=n(8),c=n(1),p=n(2),h=n(3),d=n(523),f=n(524),m=n(526),y=n(14),g=n(12),v=n(13);n(527);var b=n(15),C=n(4),S=n(0),w=n(5),x=n(11),_=n(528),O=n(32),E=n(530),A=n(10),T=n(531),R=n(44),F=n(171),I=n(81),M=n(532),P=n(17),D=n(168),$=n(109),N=n(533),V=function(e){function t(n,i,o){var r=e.call(this,n,\"CategoryFacet\",o)||this;return r.element=n,r.options=i,r.listenToQueryStateChange=!0,r.moreValuesToFetch=!0,r.showingWaitAnimation=!1,r.numberOfChildValuesCurrentlyDisplayed=0,r.options=l.ComponentOptions.initComponentOptions(n,t,i),r.categoryFacetQueryController=new m.CategoryFacetQueryController(r),r.categoryFacetTemplates=new d.CategoryFacetTemplates,r.categoryValueRoot=new f.CategoryValueRoot(c.$$(r.element),r.categoryFacetTemplates,r),r.categoryValueRoot.path=r.activePath,r.currentPage=0,r.numberOfValues=r.options.numberOfValues,r.categoryFacetValuesTree=new N.CategoryFacetValuesTree,r.tryToInitFacetSearch(),r.options.debug&&new T.CategoryFacetDebug(r),F.ResponsiveFacets.init(r.root,r,r.options),r.initDependsOnManager(),r.bind.onRootElement(x.QueryEvents.buildingQuery,function(e){return r.handleBuildingQuery(e)}),r.bind.onRootElement(x.QueryEvents.querySuccess,function(e){return r.handleQuerySuccess(e)}),r.bind.onRootElement(x.QueryEvents.duringQuery,function(){return r.addFading()}),r.bind.onRootElement(x.QueryEvents.deferredQuerySuccess,function(){return r.handleDeferredQuerySuccess()}),r.bind.onRootElement(O.BreadcrumbEvents.populateBreadcrumb,function(e){return r.handlePopulateBreadCrumb(e)}),r.bind.onRootElement(O.BreadcrumbEvents.clearBreadcrumb,function(){return r.handleClearBreadcrumb()}),r.buildFacetHeader(),r.initQueryStateEvents(),r}return i(t,e),t.prototype.isCurrentlyDisplayed=function(){return c.$$(this.element).isVisible()},Object.defineProperty(t.prototype,\"activePath\",{get:function(){return this.queryStateModel.get(this.queryStateAttribute)||this.options.basePath},set:function(e){this.listenToQueryStateChange=!1,this.queryStateModel.set(this.queryStateAttribute,e),this.listenToQueryStateChange=!0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"queryStateAttribute\",{get:function(){return v.QueryStateModel.getFacetId(this.options.id)},enumerable:!0,configurable:!0}),t.prototype.handleBuildingQuery=function(e){this.positionInQuery=this.categoryFacetQueryController.putCategoryFacetInQueryBuilder(e.queryBuilder,this.activePath,this.numberOfValues+1)},t.prototype.scrollToTop=function(){$.ResultListUtils.scrollToTop(this.root)},t.prototype.tryToInitFacetSearch=function(){if(!this.isFacetSearchAvailable)return this.logDisabledFacetSearchWarning();this.categoryFacetSearch=new _.CategoryFacetSearch(this)},t.prototype.logDisabledFacetSearchWarning=function(){if(!this.isEnableFacetSearchFalsy){var e=this.getOptionAttributeName(\"valueCaption\"),t=this.getOptionAttributeName(\"enableFacetSearch\"),n=this.options.field;this.logger.warn(\"The search box is disabled on the \"+n+\" CategoryFacet. To hide this warning,\\n    either remove the \"+e+\" option or set the \"+t+' option to \"false\".')}},t.prototype.getOptionAttributeName=function(e){return l.ComponentOptions.attrNameFromName(e)},Object.defineProperty(t.prototype,\"isFacetSearchAvailable\",{get:function(){return!this.areValueCaptionsSpecified&&!this.isEnableFacetSearchFalsy},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"areValueCaptionsSpecified\",{get:function(){var e=this.options.valueCaption;return 0!==S.keys(e).length},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isEnableFacetSearchFalsy\",{get:function(){return!this.options.enableFacetSearch},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isCategoryEmpty\",{get:function(){return!this.categoryValueRoot.children.length},enumerable:!0,configurable:!0}),t.prototype.updateAppearance=function(){if(this.disabled||this.isCategoryEmpty)return this.hide();this.show(),this.dependsOnManager.updateVisibilityBasedOnDependsOn()},t.prototype.handleQuerySuccess=function(e){if(C.Utils.isNullOrUndefined(e.results.categoryFacets))return this.notImplementedError();if(!C.Utils.isNullOrUndefined(e.results.categoryFacets[this.positionInQuery])){var t=e.query.categoryFacets[this.positionInQuery].maximumNumberOfValues,n=e.results.categoryFacets[this.positionInQuery];if(this.moreValuesToFetch=t==n.values.length,this.clear(),n.notImplemented)return this.notImplementedError();if(n.values.length||n.parentValues.length){if(this.renderValues(n,t),this.isFacetSearchAvailable){var i=this.categoryFacetSearch.build();c.$$(i).insertAfter(this.categoryValueRoot.listRoot.el)}this.moreLessContainer=c.$$(\"div\",{className:\"coveo-category-facet-more-less-container\"}),c.$$(this.element).append(this.moreLessContainer.el),this.options.enableMoreLess&&this.renderMoreLess(),this.isPristine()||c.$$(this.element).addClass(\"coveo-category-facet-non-empty-path\")}}},t.prototype.changeActivePath=function(e){this.activePath=e},t.prototype.executeQuery=function(){return r(this,void 0,void 0,function(){return s(this,function(e){switch(e.label){case 0:this.showWaitingAnimation(),e.label=1;case 1:return e.trys.push([1,,3,4]),[4,this.queryController.executeQuery()];case 2:return e.sent(),[3,4];case 3:return this.hideWaitingAnimation(),[7];case 4:return[2]}})})},t.prototype.reload=function(){this.changeActivePath(this.activePath),this.logAnalyticsEvent(A.analyticsActionCauseList.categoryFacetReload),this.executeQuery()},t.prototype.getVisibleParentValues=function(){return this.getVisibleParentCategoryValues().map(function(e){return e.getDescriptor()})},t.prototype.getVisibleParentCategoryValues=function(){if(0==this.categoryValueRoot.children.length||0==this.categoryValueRoot.children[0].children.length)return[];for(var e=this.categoryValueRoot.children[0],t=[e];0!=e.children.length&&!C.Utils.arrayEqual(e.path,this.activePath);)e=e.children[0],t.push(e);return t},t.prototype.showMore=function(){this.moreValuesToFetch&&(this.currentPage++,this.numberOfValues=this.options.numberOfValues+this.currentPage*this.options.pageSize,this.reload(),this.logAnalyticsFacetShowMoreLess(A.analyticsActionCauseList.facetShowMore))},t.prototype.showLess=function(){this.currentPage>0&&(this.currentPage--,this.numberOfValues=this.options.numberOfValues+this.currentPage*this.options.pageSize,this.reload(),this.logAnalyticsFacetShowMoreLess(A.analyticsActionCauseList.facetShowLess))},t.prototype.getAvailableValues=function(){return this.activeCategoryValue?this.activeCategoryValue.children.map(function(e){return{value:e.categoryValueDescriptor.value,count:e.categoryValueDescriptor.count,path:e.path}}):[]},t.prototype.selectValue=function(e){w.Assert.check(S.contains(S.pluck(this.getAvailableValues(),\"value\"),e),\"Failed while trying to select a value that is not available.\");var t=this.activePath.slice(0);t.push(e),this.changeActivePath(t),this.logAnalyticsEvent(A.analyticsActionCauseList.categoryFacetSelect),this.executeQuery()},t.prototype.deselectCurrentValue=function(){if(0!=this.activePath.length){var e=this.activePath.slice(0);e.pop(),this.changeActivePath(e),this.logAnalyticsEvent(A.analyticsActionCauseList.categoryFacetSelect),this.executeQuery()}},t.prototype.resetPath=function(){this.changeActivePath(this.options.basePath)},t.prototype.reset=function(){this.resetPath(),this.logAnalyticsEvent(A.analyticsActionCauseList.categoryFacetClear),this.executeQuery()},t.prototype.hide=function(){c.$$(this.element).addClass(\"coveo-hidden\")},t.prototype.show=function(){c.$$(this.element).removeClass(\"coveo-hidden\")},t.prototype.enable=function(){e.prototype.enable.call(this),this.updateAppearance()},t.prototype.disable=function(){e.prototype.disable.call(this),this.updateAppearance()},t.prototype.debugValue=function(e){return r(this,void 0,void 0,function(){var t,n;return s(this,function(i){switch(i.label){case 0:return t=new R.QueryBuilder,this.categoryFacetQueryController.addDebugGroupBy(t,e),[4,this.queryController.getEndpoint().search(t.build())];case 1:return n=i.sent(),T.CategoryFacetDebug.analyzeResults(n.groupByResults[0],this.options.delimitingCharacter),[2]}})})},t.prototype.getCaption=function(e){var t=this.options.valueCaption,n=t[e];return n||e},t.prototype.showWaitingAnimation=function(){this.ensureDom(),this.showingWaitAnimation||(c.$$(this.headerElement).find(\".coveo-category-facet-header-wait-animation\").style.visibility=\"visible\",this.showingWaitAnimation=!0)},t.prototype.hideWaitingAnimation=function(){this.ensureDom(),this.showingWaitAnimation&&(c.$$(this.headerElement).find(\".coveo-category-facet-header-wait-animation\").style.visibility=\"hidden\",this.showingWaitAnimation=!1)},t.prototype.logAnalyticsEvent=function(e,t){void 0===t&&(t=this.activePath),this.usageAnalytics.logSearchEvent(e,{categoryFacetId:this.options.id,categoryFacetField:this.options.field.toString(),categoryFacetPath:t,categoryFacetTitle:this.options.title})},t.prototype.getEndpoint=function(){return this.queryController.getEndpoint()},Object.defineProperty(t.prototype,\"children\",{get:function(){return this.categoryValueRoot.children},enumerable:!0,configurable:!0}),t.prototype.renderValues=function(e,n){this.categoryFacetValuesTree.storeNewValues(e);var i,o=this.sortParentValues(e.parentValues),r=this.categoryValueRoot,s=!1,a=Math.floor(t.NUMBER_OF_VALUES_TO_KEEP_AFTER_TRUNCATING/2),u=Math.ceil(t.NUMBER_OF_VALUES_TO_KEEP_AFTER_TRUNCATING/2);o=this.hideBasePathInParentValues(o),this.shouldTruncate(o)&&(i=this.findPathOfLastTruncatedParentValue(o,u),s=!0,o=S.first(o,a).concat(S.last(o,u))),this.isPristine()||this.addAllCategoriesButton();for(var l=0;l<o.length;l++){r=r.renderAsParent(o[l]);l==o.length-1||r.makeSelectable().showCollapseArrow(),s&&(l==a-1&&this.addEllipsis(),l==a&&(r.path=i.concat([o[l].value])))}var c=this.moreValuesToFetch?e.values.slice(0,n-1):e.values.slice(0,n);this.numberOfChildValuesCurrentlyDisplayed=c.length,r.renderChildren(c),this.activeCategoryValue=r},t.prototype.hideBasePathInParentValues=function(e){return C.Utils.arrayEqual(S.first(this.activePath,this.options.basePath.length),this.options.basePath)&&(e=S.last(e,e.length-this.options.basePath.length)),e},t.prototype.shouldTruncate=function(e){return e.length>t.MAXIMUM_NUMBER_OF_VALUES_BEFORE_TRUNCATING},t.prototype.addEllipsis=function(){this.categoryValueRoot.listRoot.append(this.categoryFacetTemplates.buildEllipsis().el)},t.prototype.findPathOfLastTruncatedParentValue=function(e,t){var n=e.length-t-1;return S.reduce(S.first(e,n+1),function(e,t){return e.concat([t.value])},[])},t.prototype.addAllCategoriesButton=function(){var e=this,t=this.categoryFacetTemplates.buildAllCategoriesButton();t.on(\"click\",function(){e.reset(),e.scrollToTop()}),this.categoryValueRoot.listRoot.append(t.el)},t.prototype.isPristine=function(){return C.Utils.arrayEqual(this.activePath,this.options.basePath)},t.prototype.buildFacetHeader=function(){var e=new M.CategoryFacetHeader({categoryFacet:this,title:this.options.title});this.headerElement=e.build(),c.$$(this.element).prepend(this.headerElement)},t.prototype.handleQueryStateChanged=function(e){if(this.listenToQueryStateChange){var t=e.attributes[this.queryStateAttribute];!C.Utils.isNullOrUndefined(t)&&S.isArray(t)&&0!=t.length&&(this.activePath=t)}},t.prototype.initQueryStateEvents=function(){var e=this;this.queryStateModel.registerNewAttribute(this.queryStateAttribute,this.options.basePath),this.bind.onQueryState(b.MODEL_EVENTS.CHANGE,void 0,function(t){return e.handleQueryStateChanged(t)}),this.dependsOnManager.listenToParentIfDependentFacet()},t.prototype.initDependsOnManager=function(){var e=this,t={reset:function(){return e.dependsOnReset()},toggleDependentFacet:function(t){return e.toggleDependentFacet(t)},element:this.element,root:this.root,dependsOn:this.options.dependsOn,id:this.options.id,queryStateModel:this.queryStateModel,bind:this.bind};this.dependsOnManager=new D.DependsOnManager(t)},t.prototype.dependsOnReset=function(){this.changeActivePath(this.options.basePath),this.clear()},t.prototype.toggleDependentFacet=function(e){this.activePath.length?e.enable():e.disable()},t.prototype.addFading=function(){c.$$(this.element).addClass(\"coveo-category-facet-values-fade\")},t.prototype.handleDeferredQuerySuccess=function(){this.updateAppearance(),this.removeFading()},t.prototype.removeFading=function(){c.$$(this.element).removeClass(\"coveo-category-facet-values-fade\")},t.prototype.notImplementedError=function(){this.logger.error(\"Category Facets are not supported by your current search endpoint. Disabling this component.\"),this.disable()},t.prototype.sortParentValues=function(e){if(this.activePath.length!=e.length)return this.logger.warn(\"Inconsistent CategoryFacet results: Number of parent values results does not equal length of active path\"),e;for(var t=[],n=this,i=0,o=this.activePath;i<o.length;i++){var r=o[i],s=function(i){var o=S.find(e,function(e){return e.value.toLowerCase()==i.toLowerCase()});if(!o)return n.logger.warn(\"Inconsistent CategoryFacet results: path not consistent with parent values results\"),{value:e};t.push(o)}(r);if(\"object\"==typeof s)return s.value}return t},t.prototype.renderMoreLess=function(){this.numberOfChildValuesCurrentlyDisplayed>this.options.numberOfValues&&this.moreLessContainer.append(this.buildLessButton()),this.moreValuesToFetch&&this.moreLessContainer.append(this.buildMoreButton())},t.prototype.clear=function(){this.categoryValueRoot.clear(),this.isFacetSearchAvailable&&this.categoryFacetSearch.clear(),this.moreLessContainer&&this.moreLessContainer.detach(),c.$$(this.element).removeClass(\"coveo-category-facet-non-empty-path\")},t.prototype.buildMoreButton=function(){var e=this,t=c.$$(\"span\",{className:\"coveo-facet-more-icon\"},g.SVGIcons.icons.arrowDown).el;y.SVGDom.addClassToSVGInContainer(t,\"coveo-facet-more-icon-svg\");var n=c.$$(\"div\",{className:\"coveo-category-facet-more\"},t);return(new P.AccessibleButton).withElement(n).withSelectAction(function(){return e.showMore()}).withLabel(u.l(\"ShowMoreFacetResults\",this.options.title)).build(),n.el},t.prototype.buildLessButton=function(){var e=this,t=c.$$(\"span\",{className:\"coveo-facet-less-icon\"},g.SVGIcons.icons.arrowUp).el;y.SVGDom.addClassToSVGInContainer(t,\"coveo-facet-less-icon-svg\");var n=c.$$(\"div\",{className:\"coveo-category-facet-less\"},t);return(new P.AccessibleButton).withElement(n).withSelectAction(function(){return e.showLess()}).withLabel(u.l(\"ShowLessFacetResults\",this.options.title)).build(),n.el},t.prototype.handlePopulateBreadCrumb=function(e){var t=this;if(!this.isPristine()){var n=this.categoryFacetValuesTree.getValueForLastPartInPath(this.activePath),i={path:this.activePath,count:n.numberOfResults,value:n.value},o=function(){t.logAnalyticsEvent(A.analyticsActionCauseList.breadcrumbFacet),t.reset()},r=new E.CategoryFacetBreadcrumb(this,o,i);e.breadcrumbs.push({element:r.build()})}},t.prototype.handleClearBreadcrumb=function(){this.changeActivePath(this.options.basePath)},t.prototype.logAnalyticsFacetShowMoreLess=function(e){this.usageAnalytics.logCustomEvent(e,{facetId:this.options.id,facetField:this.options.field.toString(),facetTitle:this.options.title},this.element)},t.doExport=function(){h.exportGlobally({CategoryFacet:t})},t.ID=\"CategoryFacet\",t.options=o({field:l.ComponentOptions.buildFieldOption({required:!0}),title:l.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return u.l(\"NoTitle\")}}),numberOfValues:l.ComponentOptions.buildNumberOption({defaultValue:5,min:0,section:\"CommonOptions\"}),enableFacetSearch:l.ComponentOptions.buildBooleanOption({defaultValue:!0}),id:l.ComponentOptions.buildStringOption({postProcessing:function(e,t){return e||t.field}}),injectionDepth:l.ComponentOptions.buildNumberOption({defaultValue:1e3,min:0}),numberOfResultsInFacetSearch:l.ComponentOptions.buildNumberOption({defaultValue:15,min:1}),facetSearchDelay:l.ComponentOptions.buildNumberOption({defaultValue:100,min:0}),enableMoreLess:l.ComponentOptions.buildBooleanOption({defaultValue:!0}),pageSize:l.ComponentOptions.buildNumberOption({defaultValue:10,min:1,depend:\"enableMoreLess\"}),delimitingCharacter:l.ComponentOptions.buildStringOption({defaultValue:\"|\"}),basePath:l.ComponentOptions.buildListOption({defaultValue:[]}),maximumDepth:l.ComponentOptions.buildNumberOption({min:1,defaultValue:Number.MAX_VALUE}),debug:l.ComponentOptions.buildBooleanOption({defaultValue:!1}),valueCaption:l.ComponentOptions.buildJsonOption({defaultValue:{}}),dependsOn:l.ComponentOptions.buildStringOption()},I.ResponsiveFacetOptions),t.MAXIMUM_NUMBER_OF_VALUES_BEFORE_TRUNCATING=15,t.NUMBER_OF_VALUES_TO_KEEP_AFTER_TRUNCATING=10,t.WAIT_ELEMENT_CLASS=\"coveo-category-facet-header-wait-animation\",t}(a.Component);t.CategoryFacet=V,p.Initialization.registerAutoCreateComponent(V),V.doExport()},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(27),a=n(10),u=n(31),l=n(66),c=n(22),p=n(176),h=n(2),d=n(21),f=n(5),m=n(4),y=n(30),g=n(1),v=n(112),b=n(19),C=n(0),S=n(3);n(501);var w=n(17),x=function(e){function t(n,i,o,u,l){var p=e.call(this,n,t.ID,o)||this;if(p.element=n,p.options=i,p.bindings=o,p.result=u,p.os=l,p.logOpenDocument=C.debounce(function(){p.queryController.saveLastQuery();var e=g.$$(p.element).getAttribute(\"href\");void 0!=e&&\"\"!=e||(e=p.result.clickUri),p.usageAnalytics.logClickEvent(a.analyticsActionCauseList.documentOpen,{documentURL:e,documentTitle:p.result.title,author:m.Utils.getFieldValue(p.result,\"author\")},p.result,p.root),y.Defer.flush()},1500,!0),p.options=r.ComponentOptions.initComponentOptions(n,t,i),p.options=C.extend({},p.options,p.componentOptionsModel.get(s.ComponentOptionsModel.attributesEnum.resultLink)),p.result=u||p.resolveResult(),null==p.options.openQuickview&&(p.options.openQuickview=\"ExchangeCrawler\"==u.raw.connectortype&&c.DeviceUtils.isMobileDevice()),p.element.setAttribute(\"tabindex\",\"0\"),p.addHeadingRoleIfFirstResultLink(),f.Assert.exists(p.componentOptionsModel),f.Assert.exists(p.result),!p.quickviewShouldBeOpened()){var h=C.once(function(){return p.logOpenDocument()});g.$$(n).on([\"contextmenu\",\"click\",\"mousedown\",\"mouseup\"],h);var d;g.$$(n).on(\"touchstart\",function(){d=window.setTimeout(h,1e3)}),g.$$(n).on(\"touchend\",function(){d&&clearTimeout(d)})}return p.renderUri(n,u),p.bindEventToOpen(),p}return i(t,e),t.prototype.renderUri=function(e,t){if(/^\\s*$/.test(this.element.innerHTML))if(this.options.titleTemplate){var n=b.StringUtils.buildStringTemplateFromResult(this.options.titleTemplate,this.result);this.element.innerHTML=n?v.StreamHighlightUtils.highlightStreamText(n,this.result.termsToHighlight,this.result.phrasesToHighlight):this.result.clickUri}else this.element.innerHTML=this.result.title?l.HighlightUtils.highlightString(this.result.title,this.result.titleHighlights,null,\"coveo-highlight\"):this.result.clickUri},t.prototype.openLink=function(e){void 0===e&&(e=!0),e&&this.logOpenDocument(),window.location.href=this.getResultUri()},t.prototype.openLinkInNewWindow=function(e){void 0===e&&(e=!0),e&&this.logOpenDocument(),window.open(this.getResultUri(),\"_blank\")},t.prototype.openLinkInOutlook=function(e){void 0===e&&(e=!0),this.hasOutlookField()&&(e&&this.logOpenDocument(),this.openLink())},t.prototype.openLinkAsConfigured=function(e){void 0===e&&(e=!0),this.toExecuteOnOpen&&(e&&this.logOpenDocument(),this.toExecuteOnOpen())},t.prototype.bindEventToOpen=function(){return this.bindOnClickIfNotUndefined()||this.bindOpenQuickviewIfNotUndefined()||this.setHrefIfNotAlready()||this.openLinkThatIsNotAnAnchor()},t.prototype.addHeadingRoleIfFirstResultLink=function(){this.isFirstResultLink&&(this.element.setAttribute(\"role\",\"heading\"),this.element.setAttribute(\"aria-level\",\"2\"))},Object.defineProperty(t.prototype,\"isFirstResultLink\",{get:function(){var e=g.$$(this.element).closest(\"CoveoResult\");if(!e)return!1;var n=\".\"+o.Component.computeCssClassNameForType(t.ID);return g.$$(e).find(n)===this.element},enumerable:!0,configurable:!0}),t.prototype.bindOnClickIfNotUndefined=function(){var e=this;return void 0!=this.options.onClick&&(this.toExecuteOnOpen=function(t){e.options.onClick.call(e,t,e.result)},(new w.AccessibleButton).withElement(this.element).withLabel(this.result.title).withSelectAction(function(t){return e.toExecuteOnOpen(t)}).build(),!0)},t.prototype.bindOpenQuickviewIfNotUndefined=function(){var e=this;return!!this.quickviewShouldBeOpened()&&(this.toExecuteOnOpen=function(){g.$$(e.bindings.resultElement).trigger(u.ResultListEvents.openQuickview)},g.$$(this.element).on(\"click\",function(t){t.preventDefault(),e.toExecuteOnOpen()}),!0)},t.prototype.openLinkThatIsNotAnAnchor=function(){var e=this;return!this.elementIsAnAnchor()&&(this.toExecuteOnOpen=function(){e.options.alwaysOpenInNewWindow?e.options.openInOutlook?e.openLinkInOutlook():e.openLinkInNewWindow():e.openLink()},g.$$(this.element).on(\"click\",function(){e.toExecuteOnOpen()}),!0)},t.prototype.setHrefIfNotAlready=function(){return!(!this.elementIsAnAnchor()||m.Utils.isNonEmptyString(g.$$(this.element).getAttribute(\"href\")))&&(g.$$(this.element).setAttribute(\"href\",this.getResultUri()),!this.options.alwaysOpenInNewWindow||this.options.openInOutlook&&this.hasOutlookField()||g.$$(this.element).setAttribute(\"target\",\"_blank\"),!0)},t.prototype.getResultUri=function(){return this.options.hrefTemplate?b.StringUtils.buildStringTemplateFromResult(this.options.hrefTemplate,this.result):(void 0==this.options.field&&this.options.openInOutlook&&this.setField(),void 0!=this.options.field?m.Utils.getFieldValue(this.result,this.options.field):this.result.clickUri)},t.prototype.elementIsAnAnchor=function(){return\"A\"==this.element.tagName},t.prototype.setField=function(){var e=m.Utils.exists(this.os)?this.os:p.OSUtils.get();e==p.OS_NAME.MACOSX&&this.hasOutlookField()?this.options.field=\"@outlookformacuri\":e==p.OS_NAME.WINDOWS&&this.hasOutlookField()&&(this.options.field=\"@outlookuri\")},t.prototype.hasOutlookField=function(){var e=m.Utils.exists(this.os)?this.os:p.OSUtils.get();return e==p.OS_NAME.MACOSX&&void 0!=this.result.raw.outlookformacuri||e==p.OS_NAME.WINDOWS&&void 0!=this.result.raw.outlookuri},t.prototype.isUriThatMustBeOpenedInQuickview=function(){return 0==this.result.clickUri.toLowerCase().indexOf(\"ldap://\")},t.prototype.quickviewShouldBeOpened=function(){return(this.options.openQuickview||this.isUriThatMustBeOpenedInQuickview())&&d.QueryUtils.hasHTMLVersion(this.result)},t.ID=\"ResultLink\",t.doExport=function(){S.exportGlobally({ResultLink:t})},t.options={field:r.ComponentOptions.buildFieldOption(),openInOutlook:r.ComponentOptions.buildBooleanOption({defaultValue:!1}),openQuickview:r.ComponentOptions.buildBooleanOption({defaultValue:!1}),alwaysOpenInNewWindow:r.ComponentOptions.buildBooleanOption({defaultValue:!1}),hrefTemplate:r.ComponentOptions.buildStringOption(),titleTemplate:r.ComponentOptions.buildStringOption(),onClick:r.ComponentOptions.buildCustomOption(function(){return null})},t}(o.Component);t.ResultLink=x,h.Initialization.registerAutoCreateComponent(x)},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),function(e){function n(e){var t=!1;return function(){t||(t=!0,window.Promise.resolve().then(function(){t=!1,e()}))}}function i(e){var t=!1;return function(){t||(t=!0,setTimeout(function(){t=!1,e()},pe))}}function o(e){var t={};return e&&\"[object Function]\"===t.toString.call(e)}function r(e,t){if(1!==e.nodeType)return[];var n=getComputedStyle(e,null);return t?n[t]:n}function s(e){return\"HTML\"===e.nodeName?e:e.parentNode||e.host}function a(e){if(!e)return document.body;switch(e.nodeName){case\"HTML\":case\"BODY\":return e.ownerDocument.body;case\"#document\":return e.body}var t=r(e),n=t.overflow,i=t.overflowX;return/(auto|scroll|overlay)/.test(n+t.overflowY+i)?e:a(s(e))}function u(e){return 11===e?me:10===e?ye:me||ye}function l(e){if(!e)return document.documentElement;for(var t=u(10)?document.body:null,n=e.offsetParent;n===t&&e.nextElementSibling;)n=(e=e.nextElementSibling).offsetParent;var i=n&&n.nodeName;return i&&\"BODY\"!==i&&\"HTML\"!==i?-1!==[\"TD\",\"TABLE\"].indexOf(n.nodeName)&&\"static\"===r(n,\"position\")?l(n):n:e?e.ownerDocument.documentElement:document.documentElement}function c(e){var t=e.nodeName;return\"BODY\"!==t&&(\"HTML\"===t||l(e.firstElementChild)===e)}function p(e){return null!==e.parentNode?p(e.parentNode):e}function h(e,t){if(!(e&&e.nodeType&&t&&t.nodeType))return document.documentElement;var n=e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING,i=n?e:t,o=n?t:e,r=document.createRange();r.setStart(i,0),r.setEnd(o,0);var s=r.commonAncestorContainer;if(e!==s&&t!==s||i.contains(o))return c(s)?s:l(s);var a=p(e);return a.host?h(a.host,t):h(e,p(t).host)}function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"top\",n=\"top\"===t?\"scrollTop\":\"scrollLeft\",i=e.nodeName;if(\"BODY\"===i||\"HTML\"===i){var o=e.ownerDocument.documentElement;return(e.ownerDocument.scrollingElement||o)[n]}return e[n]}function f(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=d(t,\"top\"),o=d(t,\"left\"),r=n?-1:1;return e.top+=i*r,e.bottom+=i*r,e.left+=o*r,e.right+=o*r,e}function m(e,t){var n=\"x\"===t?\"Left\":\"Top\",i=\"Left\"===n?\"Right\":\"Bottom\";return parseFloat(e[\"border\"+n+\"Width\"],10)+parseFloat(e[\"border\"+i+\"Width\"],10)}function y(e,t,n,i){return Math.max(t[\"offset\"+e],t[\"scroll\"+e],n[\"client\"+e],n[\"offset\"+e],n[\"scroll\"+e],u(10)?n[\"offset\"+e]+i[\"margin\"+(\"Height\"===e?\"Top\":\"Left\")]+i[\"margin\"+(\"Height\"===e?\"Bottom\":\"Right\")]:0)}function g(){var e=document.body,t=document.documentElement,n=u(10)&&getComputedStyle(t);return{height:y(\"Height\",e,t,n),width:y(\"Width\",e,t,n)}}function v(e){return Ce({},e,{right:e.left+e.width,bottom:e.top+e.height})}function b(e){var t={};try{if(u(10)){t=e.getBoundingClientRect();var n=d(e,\"top\"),i=d(e,\"left\");t.top+=n,t.left+=i,t.bottom+=n,t.right+=i}else t=e.getBoundingClientRect()}catch(e){}var o={left:t.left,top:t.top,width:t.right-t.left,height:t.bottom-t.top},s=\"HTML\"===e.nodeName?g():{},a=s.width||e.clientWidth||o.right-o.left,l=s.height||e.clientHeight||o.bottom-o.top,c=e.offsetWidth-a,p=e.offsetHeight-l;if(c||p){var h=r(e);c-=m(h,\"x\"),p-=m(h,\"y\"),o.width-=c,o.height-=p}return v(o)}function C(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=u(10),o=\"HTML\"===t.nodeName,s=b(e),l=b(t),c=a(e),p=r(t),h=parseFloat(p.borderTopWidth,10),d=parseFloat(p.borderLeftWidth,10);n&&\"HTML\"===t.nodeName&&(l.top=Math.max(l.top,0),l.left=Math.max(l.left,0));var m=v({top:s.top-l.top-h,left:s.left-l.left-d,width:s.width,height:s.height});if(m.marginTop=0,m.marginLeft=0,!i&&o){var y=parseFloat(p.marginTop,10),g=parseFloat(p.marginLeft,10);m.top-=h-y,m.bottom-=h-y,m.left-=d-g,m.right-=d-g,m.marginTop=y,m.marginLeft=g}return(i&&!n?t.contains(c):t===c&&\"BODY\"!==c.nodeName)&&(m=f(m,t)),m}function S(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=e.ownerDocument.documentElement,i=C(e,n),o=Math.max(n.clientWidth,window.innerWidth||0),r=Math.max(n.clientHeight,window.innerHeight||0),s=t?0:d(n),a=t?0:d(n,\"left\");return v({top:s-i.top+i.marginTop,left:a-i.left+i.marginLeft,width:o,height:r})}function w(e){var t=e.nodeName;return\"BODY\"!==t&&\"HTML\"!==t&&(\"fixed\"===r(e,\"position\")||w(s(e)))}function x(e){if(!e||!e.parentElement||u())return document.documentElement;for(var t=e.parentElement;t&&\"none\"===r(t,\"transform\");)t=t.parentElement;return t||document.documentElement}function _(e,t,n,i){var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],r={top:0,left:0},u=o?x(e):h(e,t);if(\"viewport\"===i)r=S(u,o);else{var l=void 0;\"scrollParent\"===i?(l=a(s(t)),\"BODY\"===l.nodeName&&(l=e.ownerDocument.documentElement)):l=\"window\"===i?e.ownerDocument.documentElement:i;var c=C(l,u,o);if(\"HTML\"!==l.nodeName||w(u))r=c;else{var p=g(),d=p.height,f=p.width;r.top+=c.top-c.marginTop,r.bottom=d+c.top,r.left+=c.left-c.marginLeft,r.right=f+c.left}}return r.left+=n,r.top+=n,r.right-=n,r.bottom-=n,r}function O(e){return e.width*e.height}function E(e,t,n,i,o){var r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===e.indexOf(\"auto\"))return e;var s=_(n,i,r,o),a={top:{width:s.width,height:t.top-s.top},right:{width:s.right-t.right,height:s.height},bottom:{width:s.width,height:s.bottom-t.bottom},left:{width:t.left-s.left,height:s.height}},u=Object.keys(a).map(function(e){return Ce({key:e},a[e],{area:O(a[e])})}).sort(function(e,t){return t.area-e.area}),l=u.filter(function(e){var t=e.width,i=e.height;return t>=n.clientWidth&&i>=n.clientHeight}),c=l.length>0?l[0].key:u[0].key,p=e.split(\"-\")[1];return c+(p?\"-\"+p:\"\")}function A(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return C(n,i?x(t):h(t,n),i)}function T(e){var t=getComputedStyle(e),n=parseFloat(t.marginTop)+parseFloat(t.marginBottom),i=parseFloat(t.marginLeft)+parseFloat(t.marginRight);return{width:e.offsetWidth+i,height:e.offsetHeight+n}}function R(e){var t={left:\"right\",right:\"left\",bottom:\"top\",top:\"bottom\"};return e.replace(/left|right|bottom|top/g,function(e){return t[e]})}function F(e,t,n){n=n.split(\"-\")[0];var i=T(e),o={width:i.width,height:i.height},r=-1!==[\"right\",\"left\"].indexOf(n),s=r?\"top\":\"left\",a=r?\"left\":\"top\",u=r?\"height\":\"width\",l=r?\"width\":\"height\";return o[s]=t[s]+t[u]/2-i[u]/2,o[a]=n===a?t[a]-i[l]:t[R(a)],o}function I(e,t){return Array.prototype.find?e.find(t):e.filter(t)[0]}function M(e,t,n){if(Array.prototype.findIndex)return e.findIndex(function(e){return e[t]===n});var i=I(e,function(e){return e[t]===n});return e.indexOf(i)}function P(e,t,n){return(void 0===n?e:e.slice(0,M(e,\"name\",n))).forEach(function(e){e.function&&console.warn(\"`modifier.function` is deprecated, use `modifier.fn`!\");var n=e.function||e.fn;e.enabled&&o(n)&&(t.offsets.popper=v(t.offsets.popper),t.offsets.reference=v(t.offsets.reference),t=n(t,e))}),t}function D(){if(!this.state.isDestroyed){var e={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};e.offsets.reference=A(this.state,this.popper,this.reference,this.options.positionFixed),e.placement=E(this.options.placement,e.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),e.originalPlacement=e.placement,e.positionFixed=this.options.positionFixed,e.offsets.popper=F(this.popper,e.offsets.reference,e.placement),e.offsets.popper.position=this.options.positionFixed?\"fixed\":\"absolute\",e=P(this.modifiers,e),this.state.isCreated?this.options.onUpdate(e):(this.state.isCreated=!0,this.options.onCreate(e))}}function $(e,t){return e.some(function(e){var n=e.name;return e.enabled&&n===t})}function N(e){for(var t=[!1,\"ms\",\"Webkit\",\"Moz\",\"O\"],n=e.charAt(0).toUpperCase()+e.slice(1),i=0;i<t.length;i++){var o=t[i],r=o?\"\"+o+n:e;if(void 0!==document.body.style[r])return r}return null}function V(){return this.state.isDestroyed=!0,$(this.modifiers,\"applyStyle\")&&(this.popper.removeAttribute(\"x-placement\"),this.popper.style.position=\"\",this.popper.style.top=\"\",this.popper.style.left=\"\",this.popper.style.right=\"\",this.popper.style.bottom=\"\",this.popper.style.willChange=\"\",this.popper.style[N(\"transform\")]=\"\"),this.disableEventListeners(),this.options.removeOnDestroy&&this.popper.parentNode.removeChild(this.popper),this}function k(e){var t=e.ownerDocument;return t?t.defaultView:window}function L(e,t,n,i){var o=\"BODY\"===e.nodeName,r=o?e.ownerDocument.defaultView:e;r.addEventListener(t,n,{passive:!0}),o||L(a(r.parentNode),t,n,i),i.push(r)}function B(e,t,n,i){n.updateBound=i,k(e).addEventListener(\"resize\",n.updateBound,{passive:!0});var o=a(e);return L(o,\"scroll\",n.updateBound,n.scrollParents),n.scrollElement=o,n.eventsEnabled=!0,n}function Q(){this.state.eventsEnabled||(this.state=B(this.reference,this.options,this.state,this.scheduleUpdate))}function U(e,t){return k(e).removeEventListener(\"resize\",t.updateBound),t.scrollParents.forEach(function(e){e.removeEventListener(\"scroll\",t.updateBound)}),t.updateBound=null,t.scrollParents=[],t.scrollElement=null,t.eventsEnabled=!1,t}function j(){this.state.eventsEnabled&&(cancelAnimationFrame(this.scheduleUpdate),this.state=U(this.reference,this.state))}function q(e){return\"\"!==e&&!isNaN(parseFloat(e))&&isFinite(e)}function H(e,t){Object.keys(t).forEach(function(n){var i=\"\";-1!==[\"width\",\"height\",\"top\",\"right\",\"bottom\",\"left\"].indexOf(n)&&q(t[n])&&(i=\"px\"),e.style[n]=t[n]+i})}function z(e,t){Object.keys(t).forEach(function(n){!1!==t[n]?e.setAttribute(n,t[n]):e.removeAttribute(n)})}function W(e){return H(e.instance.popper,e.styles),z(e.instance.popper,e.attributes),e.arrowElement&&Object.keys(e.arrowStyles).length&&H(e.arrowElement,e.arrowStyles),e}function G(e,t,n,i,o){var r=A(o,t,e,n.positionFixed),s=E(n.placement,r,t,e,n.modifiers.flip.boundariesElement,n.modifiers.flip.padding);return t.setAttribute(\"x-placement\",s),H(t,{position:n.positionFixed?\"fixed\":\"absolute\"}),n}function Y(e,t){var n=t.x,i=t.y,o=e.offsets.popper,r=I(e.instance.modifiers,function(e){return\"applyStyle\"===e.name}).gpuAcceleration;void 0!==r&&console.warn(\"WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!\");var s=void 0!==r?r:t.gpuAcceleration,a=l(e.instance.popper),u=b(a),c={position:o.position},p={left:Math.floor(o.left),top:Math.round(o.top),bottom:Math.round(o.bottom),right:Math.floor(o.right)},h=\"bottom\"===n?\"top\":\"bottom\",d=\"right\"===i?\"left\":\"right\",f=N(\"transform\"),m=void 0,y=void 0;if(y=\"bottom\"===h?-u.height+p.bottom:p.top,m=\"right\"===d?-u.width+p.right:p.left,s&&f)c[f]=\"translate3d(\"+m+\"px, \"+y+\"px, 0)\",c[h]=0,c[d]=0,c.willChange=\"transform\";else{var g=\"bottom\"===h?-1:1,v=\"right\"===d?-1:1;c[h]=y*g,c[d]=m*v,c.willChange=h+\", \"+d}var C={\"x-placement\":e.placement};return e.attributes=Ce({},C,e.attributes),e.styles=Ce({},c,e.styles),e.arrowStyles=Ce({},e.offsets.arrow,e.arrowStyles),e}function K(e,t,n){var i=I(e,function(e){return e.name===t}),o=!!i&&e.some(function(e){return e.name===n&&e.enabled&&e.order<i.order});if(!o){var r=\"`\"+t+\"`\",s=\"`\"+n+\"`\";console.warn(s+\" modifier is required by \"+r+\" modifier in order to work, be sure to include it before \"+r+\"!\")}return o}function J(e,t){var n;if(!K(e.instance.modifiers,\"arrow\",\"keepTogether\"))return e;var i=t.element;if(\"string\"==typeof i){if(!(i=e.instance.popper.querySelector(i)))return e}else if(!e.instance.popper.contains(i))return console.warn(\"WARNING: `arrow.element` must be child of its popper element!\"),e;var o=e.placement.split(\"-\")[0],s=e.offsets,a=s.popper,u=s.reference,l=-1!==[\"left\",\"right\"].indexOf(o),c=l?\"height\":\"width\",p=l?\"Top\":\"Left\",h=p.toLowerCase(),d=l?\"left\":\"top\",f=l?\"bottom\":\"right\",m=T(i)[c];u[f]-m<a[h]&&(e.offsets.popper[h]-=a[h]-(u[f]-m)),u[h]+m>a[f]&&(e.offsets.popper[h]+=u[h]+m-a[f]),e.offsets.popper=v(e.offsets.popper);var y=u[h]+u[c]/2-m/2,g=r(e.instance.popper),b=parseFloat(g[\"margin\"+p],10),C=parseFloat(g[\"border\"+p+\"Width\"],10),S=y-e.offsets.popper[h]-b-C;return S=Math.max(Math.min(a[c]-m,S),0),e.arrowElement=i,e.offsets.arrow=(n={},be(n,h,Math.round(S)),be(n,d,\"\"),n),e}function X(e){return\"end\"===e?\"start\":\"start\"===e?\"end\":e}function Z(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=we.indexOf(e),i=we.slice(n+1).concat(we.slice(0,n));return t?i.reverse():i}function ee(e,t){if($(e.instance.modifiers,\"inner\"))return e;if(e.flipped&&e.placement===e.originalPlacement)return e;var n=_(e.instance.popper,e.instance.reference,t.padding,t.boundariesElement,e.positionFixed),i=e.placement.split(\"-\")[0],o=R(i),r=e.placement.split(\"-\")[1]||\"\",s=[];switch(t.behavior){case xe.FLIP:s=[i,o];break;case xe.CLOCKWISE:s=Z(i);break;case xe.COUNTERCLOCKWISE:s=Z(i,!0);break;default:s=t.behavior}return s.forEach(function(a,u){if(i!==a||s.length===u+1)return e;i=e.placement.split(\"-\")[0],o=R(i);var l=e.offsets.popper,c=e.offsets.reference,p=Math.floor,h=\"left\"===i&&p(l.right)>p(c.left)||\"right\"===i&&p(l.left)<p(c.right)||\"top\"===i&&p(l.bottom)>p(c.top)||\"bottom\"===i&&p(l.top)<p(c.bottom),d=p(l.left)<p(n.left),f=p(l.right)>p(n.right),m=p(l.top)<p(n.top),y=p(l.bottom)>p(n.bottom),g=\"left\"===i&&d||\"right\"===i&&f||\"top\"===i&&m||\"bottom\"===i&&y,v=-1!==[\"top\",\"bottom\"].indexOf(i),b=!!t.flipVariations&&(v&&\"start\"===r&&d||v&&\"end\"===r&&f||!v&&\"start\"===r&&m||!v&&\"end\"===r&&y);(h||g||b)&&(e.flipped=!0,(h||g)&&(i=s[u+1]),b&&(r=X(r)),e.placement=i+(r?\"-\"+r:\"\"),e.offsets.popper=Ce({},e.offsets.popper,F(e.instance.popper,e.offsets.reference,e.placement)),e=P(e.instance.modifiers,e,\"flip\"))}),e}function te(e){var t=e.offsets,n=t.popper,i=t.reference,o=e.placement.split(\"-\")[0],r=Math.floor,s=-1!==[\"top\",\"bottom\"].indexOf(o),a=s?\"right\":\"bottom\",u=s?\"left\":\"top\",l=s?\"width\":\"height\";return n[a]<r(i[u])&&(e.offsets.popper[u]=r(i[u])-n[l]),n[u]>r(i[a])&&(e.offsets.popper[u]=r(i[a])),e}function ne(e,t,n,i){var o=e.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/),r=+o[1],s=o[2];if(!r)return e;if(0===s.indexOf(\"%\")){var a=void 0;switch(s){case\"%p\":a=n;break;case\"%\":case\"%r\":default:a=i}return v(a)[t]/100*r}if(\"vh\"===s||\"vw\"===s){return(\"vh\"===s?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*r}return r}function ie(e,t,n,i){var o=[0,0],r=-1!==[\"right\",\"left\"].indexOf(i),s=e.split(/(\\+|\\-)/).map(function(e){return e.trim()}),a=s.indexOf(I(s,function(e){return-1!==e.search(/,|\\s/)}));s[a]&&-1===s[a].indexOf(\",\")&&console.warn(\"Offsets separated by white space(s) are deprecated, use a comma (,) instead.\");var u=/\\s*,\\s*|\\s+/,l=-1!==a?[s.slice(0,a).concat([s[a].split(u)[0]]),[s[a].split(u)[1]].concat(s.slice(a+1))]:[s];return l=l.map(function(e,i){var o=(1===i?!r:r)?\"height\":\"width\",s=!1;return e.reduce(function(e,t){return\"\"===e[e.length-1]&&-1!==[\"+\",\"-\"].indexOf(t)?(e[e.length-1]=t,s=!0,e):s?(e[e.length-1]+=t,s=!1,e):e.concat(t)},[]).map(function(e){return ne(e,o,t,n)})}),l.forEach(function(e,t){e.forEach(function(n,i){q(n)&&(o[t]+=n*(\"-\"===e[i-1]?-1:1))})}),o}function oe(e,t){var n=t.offset,i=e.placement,o=e.offsets,r=o.popper,s=o.reference,a=i.split(\"-\")[0],u=void 0;return u=q(+n)?[+n,0]:ie(n,r,s,a),\"left\"===a?(r.top+=u[0],r.left-=u[1]):\"right\"===a?(r.top+=u[0],r.left+=u[1]):\"top\"===a?(r.left+=u[0],r.top-=u[1]):\"bottom\"===a&&(r.left+=u[0],r.top+=u[1]),e.popper=r,e}function re(e,t){var n=t.boundariesElement||l(e.instance.popper);e.instance.reference===n&&(n=l(n));var i=N(\"transform\"),o=e.instance.popper.style,r=o.top,s=o.left,a=o[i];o.top=\"\",o.left=\"\",o[i]=\"\";var u=_(e.instance.popper,e.instance.reference,t.padding,n,e.positionFixed);o.top=r,o.left=s,o[i]=a,t.boundaries=u;var c=t.priority,p=e.offsets.popper,h={primary:function(e){var n=p[e];return p[e]<u[e]&&!t.escapeWithReference&&(n=Math.max(p[e],u[e])),be({},e,n)},secondary:function(e){var n=\"right\"===e?\"left\":\"top\",i=p[n];return p[e]>u[e]&&!t.escapeWithReference&&(i=Math.min(p[n],u[e]-(\"right\"===e?p.width:p.height))),be({},n,i)}};return c.forEach(function(e){var t=-1!==[\"left\",\"top\"].indexOf(e)?\"primary\":\"secondary\";p=Ce({},p,h[t](e))}),e.offsets.popper=p,e}function se(e){var t=e.placement,n=t.split(\"-\")[0],i=t.split(\"-\")[1];if(i){var o=e.offsets,r=o.reference,s=o.popper,a=-1!==[\"bottom\",\"top\"].indexOf(n),u=a?\"left\":\"top\",l=a?\"width\":\"height\",c={start:be({},u,r[u]),end:be({},u,r[u]+r[l]-s[l])};e.offsets.popper=Ce({},s,c[i])}return e}function ae(e){if(!K(e.instance.modifiers,\"hide\",\"preventOverflow\"))return e;var t=e.offsets.reference,n=I(e.instance.modifiers,function(e){return\"preventOverflow\"===e.name}).boundaries;if(t.bottom<n.top||t.left>n.right||t.top>n.bottom||t.right<n.left){if(!0===e.hide)return e;e.hide=!0,e.attributes[\"x-out-of-boundaries\"]=\"\"}else{if(!1===e.hide)return e;e.hide=!1,e.attributes[\"x-out-of-boundaries\"]=!1}return e}function ue(e){var t=e.placement,n=t.split(\"-\")[0],i=e.offsets,o=i.popper,r=i.reference,s=-1!==[\"left\",\"right\"].indexOf(n),a=-1===[\"top\",\"left\"].indexOf(n);return o[s?\"left\":\"top\"]=r[n]-(a?o[s?\"width\":\"height\"]:0),e.placement=R(t),e.offsets.popper=v(o),e}for(var le=\"undefined\"!=typeof window&&\"undefined\"!=typeof document,ce=[\"Edge\",\"Trident\",\"Firefox\"],pe=0,he=0;he<ce.length;he+=1)if(le&&navigator.userAgent.indexOf(ce[he])>=0){pe=1;break}var de=le&&window.Promise,fe=de?n:i,me=le&&!(!window.MSInputMethodContext||!document.documentMode),ye=le&&/MSIE 10/.test(navigator.userAgent),ge=function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")},ve=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,\"value\"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),be=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},Ce=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Se=[\"auto-start\",\"auto\",\"auto-end\",\"top-start\",\"top\",\"top-end\",\"right-start\",\"right\",\"right-end\",\"bottom-end\",\"bottom\",\"bottom-start\",\"left-end\",\"left\",\"left-start\"],we=Se.slice(3),xe={FLIP:\"flip\",CLOCKWISE:\"clockwise\",COUNTERCLOCKWISE:\"counterclockwise\"},_e={shift:{order:100,enabled:!0,fn:se},offset:{order:200,enabled:!0,fn:oe,offset:0},preventOverflow:{order:300,enabled:!0,fn:re,priority:[\"left\",\"right\",\"top\",\"bottom\"],padding:5,boundariesElement:\"scrollParent\"},keepTogether:{order:400,enabled:!0,fn:te},arrow:{order:500,enabled:!0,fn:J,element:\"[x-arrow]\"},flip:{order:600,enabled:!0,fn:ee,behavior:\"flip\",padding:5,boundariesElement:\"viewport\"},inner:{order:700,enabled:!1,fn:ue},hide:{order:800,enabled:!0,fn:ae},computeStyle:{order:850,enabled:!0,fn:Y,gpuAcceleration:!0,x:\"bottom\",y:\"right\"},applyStyle:{order:900,enabled:!0,fn:W,onLoad:G,gpuAcceleration:void 0}},Oe={placement:\"bottom\",positionFixed:!1,eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:_e},Ee=function(){function e(t,n){var i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};ge(this,e),this.scheduleUpdate=function(){return requestAnimationFrame(i.update)},this.update=fe(this.update.bind(this)),this.options=Ce({},e.Defaults,r),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=t&&t.jquery?t[0]:t,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(Ce({},e.Defaults.modifiers,r.modifiers)).forEach(function(t){i.options.modifiers[t]=Ce({},e.Defaults.modifiers[t]||{},r.modifiers?r.modifiers[t]:{})}),this.modifiers=Object.keys(this.options.modifiers).map(function(e){return Ce({name:e},i.options.modifiers[e])}).sort(function(e,t){return e.order-t.order}),this.modifiers.forEach(function(e){e.enabled&&o(e.onLoad)&&e.onLoad(i.reference,i.popper,i.options,e,i.state)}),this.update();var s=this.options.eventsEnabled;s&&this.enableEventListeners(),this.state.eventsEnabled=s}return ve(e,[{key:\"update\",value:function(){return D.call(this)}},{key:\"destroy\",value:function(){return V.call(this)}},{key:\"enableEventListeners\",value:function(){return Q.call(this)}},{key:\"disableEventListeners\",value:function(){return j.call(this)}}]),e}();Ee.Utils=(\"undefined\"!=typeof window?window:e).PopperUtils,Ee.placements=Se,Ee.Defaults=Oe,t.default=Ee}.call(t,n(62))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.beforeRedirect=\"beforeRedirect\",e}();t.StandaloneSearchInterfaceEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.savePreferences=\"savePreferences\",e.exitPreferencesWithoutSave=\"exitPreferencesWithoutSave\",e}();t.PreferencesPanelEvents=i},function(e,t,n){\"use strict\";var i=n(142);t.analytics=i;var o=n(296);t.SimpleAnalytics=o;var r=n(143);t.history=r;var s=n(299);t.donottrack=s;var a=n(96);t.storage=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.version={lib:\"2.7968.10\",product:\"2.7968.10\",supportedApiVersion:2}},function(e,t,n){\"use strict\";function i(){return t.preferredStorage?t.preferredStorage:o.hasLocalStorage()?localStorage:o.hasCookieStorage()?new s:o.hasSessionStorage()?sessionStorage:new a}var o=n(144),r=n(294);t.preferredStorage=null,t.getAvailableStorage=i;var s=function(){function e(){}return e.prototype.getItem=function(e){return r.Cookie.get(e)},e.prototype.removeItem=function(e){r.Cookie.erase(e)},e.prototype.setItem=function(e,t){r.Cookie.set(e,t)},e}();t.CookieStorage=s;var a=function(){function e(){}return e.prototype.getItem=function(e){return null},e.prototype.removeItem=function(e){},e.prototype.setItem=function(e,t){},e}();t.NullStorage=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.showDebugPanel=\"showDebugPanel\",e}();t.DebugEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){this.isContextual=!1,this.endpoint=null}return e.prototype.isActivated=function(){return!1},e.prototype.getCurrentEventCause=function(){return this.currentEventCause},e.prototype.getCurrentEventMeta=function(){return this.currentEventMeta},e.prototype.logSearchEvent=function(e,t){this.setNoopCauseAndMeta(e.name,t)},e.prototype.logSearchAsYouType=function(e,t){this.setNoopCauseAndMeta(e.name,t)},e.prototype.logClickEvent=function(e,t,n,i){return this.setNoopCauseAndMeta(e.name,t),Promise.resolve(null)},e.prototype.logCustomEvent=function(e,t,n){return this.setNoopCauseAndMeta(e.name,t),Promise.resolve(null)},e.prototype.getTopQueries=function(e){return new Promise(function(e,t){e([])})},e.prototype.getCurrentVisitIdPromise=function(){return new Promise(function(e,t){e(null)})},e.prototype.getCurrentVisitId=function(){return null},e.prototype.sendAllPendingEvents=function(){},e.prototype.cancelAllPendingEvents=function(){},e.prototype.warnAboutSearchEvent=function(){},e.prototype.getPendingSearchEvent=function(){return null},e.prototype.setOriginContext=function(e){},e.prototype.setNoopCauseAndMeta=function(e,t){this.currentEventCause=e,this.currentEventMeta=t},e}();t.NoopAnalyticsClient=i},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=n(5),s=n(152),a=function(e){function t(t){var n=e.call(this,function(){return t.innerHTML})||this;return n.element=t,n.templateFromAScriptTag=new s.TemplateFromAScriptTag(n,n.element),n}return i(t,e),t.prototype.toHtmlElement=function(){return this.templateFromAScriptTag.toHtmlElement()},t.prototype.getType=function(){return\"HtmlTemplate\"},t.create=function(e){return r.Assert.exists(e),new t(e)},t.fromString=function(e,n){return new t(s.TemplateFromAScriptTag.fromString(e,n))},t.prototype.getTemplateInfo=function(){return this.element},t.mimeTypes=[\"text/html\",\"text/HTML\"],t}(o.Template);t.HtmlTemplate=a},function(e,t,n){var i=n(76),o=n(371),r=n(372),s=Object.defineProperty;t.f=n(77)?Object.defineProperty:function(e,t,n){if(i(e),t=r(t,!0),i(n),o)try{return s(e,t,n)}catch(e){}if(\"get\"in n||\"set\"in n)throw TypeError(\"Accessors not supported!\");return\"value\"in n&&(e[t]=n.value),e}},function(e,t){e.exports=function(e){return\"object\"==typeof e?null!==e:\"function\"==typeof e}},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t,n){var i=n(376),o=n(79);e.exports=function(e){return i(o(e))}},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t){var n=Math.ceil,i=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?i:n)(e)}},function(e,t,n){var i=n(157)(\"keys\"),o=n(159);e.exports=function(e){return i[e]||(i[e]=o(e))}},function(e,t,n){e.exports=n(388)},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(11),a=n(5),u=n(1),l=n(18),c=n(7),p=n(40),h=n(30),d=n(167),f=n(63),m=n(10),y=n(13),g=n(0),v=n(9),b=function(){function e(e,t,n,i){var o=this;this.root=e,this.endpoint=t,this.templateSearchEvent=n,this.sendToCloud=i,this.searchPromises=[],this.results=[],this.cancelled=!1,this.finished=!1,this.searchEvents=[],a.Assert.exists(e),a.Assert.exists(t),a.Assert.exists(n),this.handler=function(e,t){o.handleDuringQuery(e,t)},u.$$(e).on(s.QueryEvents.duringQuery,this.handler)}return e.prototype.getEventCause=function(){return this.templateSearchEvent.actionCause},e.prototype.getEventMeta=function(){return this.templateSearchEvent.customData},e.prototype.addFacetState=function(e){this.facetState||(this.facetState=[]),(t=this.facetState).push.apply(t,e);var t},e.prototype.cancel=function(){this.stopRecording(),this.cancelled=!0},e.prototype.stopRecording=function(){this.handler&&(u.$$(this.root).off(s.QueryEvents.duringQuery,this.handler),u.$$(this.root).off(s.QueryEvents.duringFetchMoreQuery,this.handler),this.handler=null)},e.prototype.handleDuringQuery=function(e,t,n){a.Assert.check(!this.finished),a.Assert.check(!this.cancelled),this.searchPromises.push(t.promise);var i=e.target,o=c.Component.get(i,l.SearchInterface);a.Assert.exists(o),n||(n=o.queryStateModel.get(y.QueryStateModel.attributesEnum.q));var r=c.Component.get(i,p.QueryController);a.Assert.exists(r),this.updateSearchEventsAndQueryResults(t,o,n)},e.prototype.updateSearchEventsAndQueryResults=function(e,t,n){return o(this,void 0,void 0,function(){var o,s,u,l,c;return r(this,function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,e.promise];case 1:return o=r.sent(),a.Assert.exists(o),a.Assert.check(!this.finished),s=this.templateSearchEvent.actionCause===m.analyticsActionCauseList.recommendation.name,(!0!==o._reusedSearchUid||s)&&(u=i({},this.templateSearchEvent),this.fillSearchEvent(u,t,e.query,o,n),this.searchEvents.push(u),this.results.push(o)),[3,3];case 2:return l=r.sent(),new v.Logger(this).error(l),[3,3];case 3:return c=g.indexOf(this.searchPromises,e.promise),this.searchPromises.splice(c,1),this.searchPromises.length||this.flush(),[2]}})})},e.prototype.flush=function(){var e=this;this.cancelled||(this.stopRecording(),this.finished=!0,a.Assert.check(this.searchEvents.length==this.results.length),h.Defer.defer(function(){e.sendToCloud&&e.endpoint.sendSearchEvents(e.searchEvents);var t=g.map(e.searchEvents,function(e){return d.APIAnalyticsBuilder.convertSearchEventToAPI(e)});u.$$(e.root).trigger(f.AnalyticsEvents.searchEvent,{searchEvents:t}),e.searchEvents.length&&e.searchEvents.forEach(function(t){u.$$(e.root).trigger(f.AnalyticsEvents.analyticsEventReady,{event:\"CoveoSearchEvent\",coveoAnalyticsEventData:t})})}))},e.prototype.fillSearchEvent=function(e,t,n,i,o){a.Assert.exists(e),a.Assert.exists(t),a.Assert.exists(n),a.Assert.exists(i);var r=t.queryStateModel.get(y.QueryStateModel.attributesEnum.q);e.queryPipeline=i.pipeline,e.splitTestRunName=e.splitTestRunName||i.splitTestRun,e.splitTestRunVersion=e.splitTestRunVersion||(void 0!=i.splitTestRun?i.pipeline:void 0),e.originLevel2=e.originLevel2||t.queryStateModel.get(\"t\")||\"default\",e.queryText=o||r||n.q||\"\",e.advancedQuery=n.aq||\"\",e.didYouMean=n.enableDidYouMean,e.numberOfResults=i.totalCount,e.responseTime=i.duration,e.pageNumber=n.firstResult/n.numberOfResults,e.resultsPerPage=n.numberOfResults,e.searchQueryUid=i.searchUid,e.queryPipeline=i.pipeline,e.facetState=this.facetState,void 0!=n.context&&g.each(n.context,function(t,n){return e.customData[\"context_\"+n]=t}),void 0!=i.refinedKeywords&&0!=i.refinedKeywords.length&&(e.customData.refinedKeywords=i.refinedKeywords)},e}();t.PendingSearchEvent=b},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(7),o=n(87),r=n(1),s=n(0),a=n(9),u=function(){function e(){}return e.hideIfInfiniteScrollEnabled=function(t){e.isInfiniteScrollEnabled(t.searchInterface.element)?(t.disable(),r.$$(t.element).hide(),e.warnIfComponentNotNeeded(t)):(t.enable(),r.$$(t.element).unhide())},e.isInfiniteScrollEnabled=function(t){var n=e.getActiveResultList(t);return!!n&&!!n.options.enableInfiniteScroll},e.scrollToTop=function(t){var n=e.getActiveResultList(t);if(!n)return new a.Logger(this).warn(\"No active ResultList, scrolling to the top of the Window\"),window.scrollTo(0,0);var i=n.options.infiniteScrollContainer;if(\"function\"==typeof i.scrollTo){var o=n.searchInterface.element.getBoundingClientRect().top;i.scrollTo(0,window.pageYOffset+o)}else i.scrollTop=0},e.getActiveResultList=function(t){var n=e.getResultLists(t);return s.find(n,function(e){return!e.disabled})},e.getResultLists=function(t){return r.$$(t).findAll(\".\"+e.cssClass()).map(function(e){return i.Component.get(e,o.ResultList)})},e.cssClass=function(){return i.Component.computeCssClassName(o.ResultList)},e.warnIfComponentNotNeeded=function(t){var n=t.searchInterface.root;e.allResultListsUseInfiniteScroll(n)&&e.notNeededComponentWarning(t)},e.allResultListsUseInfiniteScroll=function(t){return 0===e.getResultLists(t).filter(function(e){return!e.options.enableInfiniteScroll}).length},e.notNeededComponentWarning=function(t){var n=i.Component.computeCssClassNameForType(t.type),o=\"The \"+n+\" component is not needed because all \"+e.cssClass()+\" components have enableInfiniteScroll set to 'true'.\\n    For the best performance, remove the \"+n+\" component from your search page.\";new a.Logger(t).warn(o)},e}();t.ResultListUtils=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(91),o=n(58),r=n(5),s=n(6),a=function(){function e(e,t,n,i,o){this.element=t,r.Assert.isString(e),r.Assert.exists(t),r.Assert.exists(n),r.Assert.isLargerOrEqualsThan(0,i),r.Assert.isLargerOrEqualsThan(0,o),r.Assert.isSmallerOrEqualsThan(1,o),this.cssClassName=\"coveo-\"+e+\"-dropdown-content\",this.coveoRoot=n,this.widthRatio=o,this.minWidth=i}return e.isTargetInsideOpenedDropdown=function(t){r.Assert.exists(t);var n=t.parent(e.DEFAULT_CSS_CLASS_NAME);return!!n&&\"none\"!=n.style.display},e.prototype.positionDropdown=function(){this.setElementAttributes(),this.createPopper()},e.prototype.hideDropdown=function(){this.popperReference&&this.popperReference.destroy(),this.unsetElementAttributes()},e.prototype.cleanUp=function(){this.element.el.removeAttribute(\"style\")},e.prototype.setElementAttributes=function(){this.element.show(),this.element.addClass(this.cssClassName),this.element.addClass(e.DEFAULT_CSS_CLASS_NAME),this.element.setAttribute(\"role\",\"group\"),this.element.setAttribute(\"aria-label\",s.l(\"FiltersDropdown\")),this.setElementWidth()},e.prototype.setElementWidth=function(){var e=this.widthRatio*this.coveoRoot.width();e<=this.minWidth&&(e=this.minWidth),this.element.el.style.width=e.toString()+\"px\"},e.prototype.unsetElementAttributes=function(){this.element.hide(),this.element.removeClass(this.cssClassName),this.element.removeClass(e.DEFAULT_CSS_CLASS_NAME),this.element.setAttribute(\"role\",null),this.element.setAttribute(\"aria-label\",null)},e.prototype.createPopper=function(){var e=this.coveoRoot.find(\".\"+o.ResponsiveComponentsManager.DROPDOWN_HEADER_WRAPPER_CSS_CLASS);this.popperReference=new i.default(e,this.element.el,{placement:\"bottom-end\",positionFixed:!0,modifiers:{preventOverflow:{boundariesElement:this.coveoRoot.el}}})},e.DEFAULT_CSS_CLASS_NAME=\"coveo-dropdown-content\",e}();t.ResponsiveDropdownContent=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i,o=n(4),r=n(6),s=n(5),a=n(0),u=function(){function e(){}return e.get=function(t){var n=o.Utils.getFieldValue(t,\"objecttype\"),i=o.Utils.getFieldValue(t,\"filetype\");return o.Utils.isNonEmptyString(n)&&!n.match(/^(file|document|contentversion|item)$/i)?e.getObjectType(n):o.Utils.isNonEmptyString(i)?e.getFileType(i):{icon:\"coveo-icon filetype\",caption:r.l(\"Unknown\")}},e.getObjectType=function(e){var t=e.toLowerCase(),n=\"objecttype_\"+t,i=r.l(n);return i.toLowerCase()==n.toLowerCase()&&(i=r.l(e)),{icon:\"coveo-icon objecttype \"+t.replace(\" \",\"-\"),caption:i}},e.getFileType=function(e){var t=e.toLowerCase();\".\"==t[0]&&(t=t.substring(1));var n=\"filetype_\"+t,i=r.l(n);return i.toLowerCase()==n.toLowerCase()&&(i=r.l(e)),{icon:\"coveo-icon filetype \"+t.replace(\" \",\"-\"),caption:i}},e.getFileTypeCaptions=function(){if(void 0==i){i={};var e=String.locales[String.locale.toLowerCase()];s.Assert.isNotUndefined(e),a.each(a.keys(e),function(e){0==e.indexOf(\"filetype_\")?i[e.substr(\"filetype_\".length)]=e.toLocaleString():0==e.indexOf(\"objecttype_\")&&(i[e.substr(\"objecttype_\".length)]=e.toLocaleString())})}return i},e}();t.FileTypes=u},function(e,t,n){\"use strict\";function i(e,t,n,i){var o=[],r=p.chain(n).values().map(p.keys).flatten().value();return p.each(t,function(t,n){var s=p.chain([n]).concat(t).compact().difference(r).map(l.Utils.escapeRegexCharacter).sortBy(\"length\").value(),a=\"\"+d+s.join(\"|\")+\")(?=(?:\"+h+\"|$)+)\",c=u.StringUtils.getHighlights(e,new RegExp(a,i.regexFlags),n);void 0!=c&&l.Utils.isNonEmptyArray(c)&&o.push(c)}),p.each(n,function(t,n){var r=n.split(\" \"),s=d;p.each(r,function(e,n){s+=\"(?:\"+[e].concat(t[e]).join(\"|\")+\")\",n==r.length-1&&(s+=\"(?=\"),s+=h,n==r.length-1&&(s+=\"|$)\"),n!=r.length-1&&(s+=\"+\")}),s+=\")\";var a=u.StringUtils.getHighlights(e,new RegExp(s,i.regexFlags),n);void 0!=a&&l.Utils.isNonEmptyArray(a)&&o.push(a)}),p.chain(o).flatten().compact().uniq(function(e){return e.offset}).sortBy(function(e){return e.offset}).map(function(e){var i=p.keys(t),o=p.keys(n),r=i.concat(o),s=p.indexOf(r,e.dataHighlightGroupTerm)+1;return p.extend(e,{dataHighlightGroup:s})}).value()}function o(e){var t=c.$$(\"div\").el;return t.innerHTML=e,t}var r=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(74),a=n(66),u=n(19),l=n(4),c=n(1),p=n(0),h=\"[\\\\.\\\\-\\\\u2011\\\\s~=,.\\\\|\\\\/:'`’;_()!?&+]\",d=\"(\"+h+\"|^)(\",f=function(e){function t(t,n,i){void 0===t&&(t=\"coveo-highlight\"),void 0===n&&(n=0),void 0===i&&(i=\"gi\");var o=e.call(this)||this;return o.cssClass=t,o.shorten=n,o.regexFlags=i,o}return r(t,e),t}(s.Options);t.DefaultStreamHighlightOptions=f;var m=function(){function e(){}return e.highlightStreamHTML=function(t,n,r,s){var u=(new f).merge(s),l=o(t),h=c.$$(l).findAll(\"*\");return h.length>0?(p.each(h,function(e,t){var o=c.$$(e).text();e.innerHTML=a.HighlightUtils.highlightString(o,i(o,n,r,u),[],u.cssClass)}),l.innerHTML):e.highlightStreamText(t,n,r,s)},e.highlightStreamText=function(e,t,n,o){var r=(new f).merge(o);return a.HighlightUtils.highlightString(e,i(e,t,n,r),[],r.cssClass)},e}();t.StreamHighlightUtils=m,t.getRestHighlightsForAllTerms=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=n(55),r=n(4),s=function(){function e(){}return e.registerFieldHelper=function(t,n){e.fieldHelpers.push(t),e.registerTemplateHelper(t,n)},e.registerTemplateHelper=function(t,n){i.Assert.isNonEmptyString(t),i.Assert.exists(n),e.registerTemplateHelperInUnderscore(t,n),e.helpers[t]=n},e.getHelper=function(t){return r.Utils.getCaseInsensitiveProperty(e.helpers,t)},e.getHelpers=function(){return e.helpers},e.registerTemplateHelperInUnderscore=function(e,t){i.Assert.isNonEmptyString(e),i.Assert.exists(t),o.UnderscoreTemplate.registerTemplateHelper(e,t)},e.helpers={},e.fieldHelpers=[],e}();t.TemplateHelpers=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},r=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},s=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0}),n(206);var a=n(0),u=n(1),l=n(3),c=n(7),p=n(8),h=n(2),d=n(81),f=n(502),m=n(503),y=n(445),g=n(446),v=n(11),b=n(13),C=n(447),S=n(4),w=n(15),x=n(5),_=n(505),O=n(6),E=n(22),A=n(32),T=n(10),R=n(506),F=n(109),I=n(169),M=n(168),P=n(514),D=function(e){function t(n,i,o,r){void 0===r&&(r=t.ID);var s=e.call(this,n,r,o)||this;return s.element=n,s.listenToQueryStateChange=!0,s.position=null,s.moreValuesAvailable=!1,s.isDynamicFacet=!0,s.handleQueryStateChangedIncluded=function(e){var t=s.values.selectedValues,n=e.filter(function(e){return s.values.get(e)}),i=a.difference(n,t),o=a.difference(t,n);S.Utils.isNonEmptyArray(i)&&s.selectMultipleValues(i),S.Utils.isNonEmptyArray(o)&&s.deselectMultipleValues(o)},s.options=p.ComponentOptions.initComponentOptions(n,t,i),s.initDynamicFacetQueryController(),s.initDependsOnManager(),s.initQueryEvents(),s.initQueryStateEvents(),s.initBreadCrumbEvents(),s.initComponentStateEvents(),s.initValues(),s.verifyCollapsingConfiguration(),s.isCollapsed=s.options.enableCollapse&&s.options.collapsedByDefault,f.ResponsiveDynamicFacets.init(s.root,s,s.options),s}return i(t,e),Object.defineProperty(t.prototype,\"fieldName\",{get:function(){return this.options.field.slice(1)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"facetType\",{get:function(){return I.FacetType.specific},enumerable:!0,configurable:!0}),t.prototype.selectValue=function(e){x.Assert.exists(e),this.selectMultipleValues([e])},t.prototype.selectMultipleValues=function(e){var t=this;x.Assert.exists(e),this.ensureDom(),this.logger.info(\"Selecting facet value(s)\",e),e.forEach(function(e){t.values.get(e).select()}),this.updateQueryStateModel()},t.prototype.deselectValue=function(e){x.Assert.exists(e),this.deselectMultipleValues([e])},t.prototype.deselectMultipleValues=function(e){var t=this;x.Assert.exists(e),this.ensureDom(),this.logger.info(\"Deselecting facet value(s)\",e),e.forEach(function(e){t.values.get(e).deselect()}),this.updateQueryStateModel()},t.prototype.toggleSelectValue=function(e){x.Assert.exists(e),this.ensureDom();var t=this.values.get(e);t.toggleSelect(),this.logger.info(\"Toggle select facet value\",t),this.updateQueryStateModel()},t.prototype.showMoreValues=function(e){var t=this;void 0===e&&(e=this.options.numberOfValues),this.ensureDom(),this.logger.info(\"Show more values\"),this.dynamicFacetQueryController.increaseNumberOfValuesToRequest(e),this.triggerNewIsolatedQuery(function(){return t.logAnalyticsFacetShowMoreLess(T.analyticsActionCauseList.dynamicFacetShowMore)})},t.prototype.showLessValues=function(){var e=this;this.ensureDom(),this.logger.info(\"Show less values\"),this.dynamicFacetQueryController.resetNumberOfValuesToRequest(),this.triggerNewIsolatedQuery(function(){return e.logAnalyticsFacetShowMoreLess(T.analyticsActionCauseList.dynamicFacetShowLess)})},t.prototype.reset=function(){this.ensureDom(),this.values.hasActiveValues&&(this.logger.info(\"Deselect all values\"),this.values.clearAll(),this.values.render()),this.updateAppearance(),this.updateQueryStateModel()},t.prototype.toggleCollapse=function(){this.isCollapsed?this.expand():this.collapse()},t.prototype.expand=function(){if(!this.options.enableCollapse)return this.logger.warn('Calling expand() won\\'t do anything on a facet that has the option \"enableCollapse\" set to \"false\"');this.isCollapsed&&(this.ensureDom(),this.logger.info(\"Expand facet values\"),this.isCollapsed=!1,this.updateAppearance())},t.prototype.collapse=function(){if(!this.options.enableCollapse)return this.logger.warn('Calling collapse() won\\'t do anything on a facet that has the option \"enableCollapse\" set to \"false\"');this.isCollapsed||(this.ensureDom(),this.logger.info(\"Collapse facet values\"),this.isCollapsed=!0,this.updateAppearance())},t.prototype.enableFreezeCurrentValuesFlag=function(){x.Assert.exists(this.dynamicFacetQueryController),this.dynamicFacetQueryController.enableFreezeCurrentValuesFlag()},t.prototype.enableFreezeFacetOrderFlag=function(){x.Assert.exists(this.dynamicFacetQueryController),this.dynamicFacetQueryController.enableFreezeFacetOrderFlag()},t.prototype.scrollToTop=function(){this.options.enableScrollToTop&&F.ResultListUtils.scrollToTop(this.root)},Object.defineProperty(t.prototype,\"analyticsFacetState\",{get:function(){return this.values.activeValues.map(function(e){return e.analyticsFacetState})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"basicAnalyticsFacetState\",{get:function(){return{field:this.options.field.toString(),id:this.options.id,title:this.options.title,facetType:this.facetType,facetPosition:this.position}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"basicAnalyticsFacetMeta\",{get:function(){return{facetField:this.options.field.toString(),facetId:this.options.id,facetTitle:this.options.title}},enumerable:!0,configurable:!0}),t.prototype.logAnalyticsEvent=function(e,t){this.usageAnalytics.logSearchEvent(e,t)},t.prototype.putStateIntoQueryBuilder=function(e){x.Assert.exists(e),this.dynamicFacetQueryController.putFacetIntoQueryBuilder(e)},t.prototype.putStateIntoAnalytics=function(){var e=this.usageAnalytics.getPendingSearchEvent();e&&e.addFacetState(this.analyticsFacetState)},t.prototype.isCurrentlyDisplayed=function(){return u.$$(this.element).isVisible()},Object.defineProperty(t.prototype,\"hasActiveValues\",{get:function(){return this.values.hasActiveValues},enumerable:!0,configurable:!0}),t.prototype.initQueryEvents=function(){var e=this;this.bind.onRootElement(v.QueryEvents.duringQuery,function(){return e.ensureDom()}),this.bind.onRootElement(v.QueryEvents.doneBuildingQuery,function(t){return e.handleDoneBuildingQuery(t)}),this.bind.onRootElement(v.QueryEvents.querySuccess,function(t){return e.handleQuerySuccess(t.results)}),this.bind.onRootElement(v.QueryEvents.queryError,function(){return e.onNoValues()})},t.prototype.initQueryStateEvents=function(){this.includedAttributeId=b.QueryStateModel.getFacetId(this.options.id),this.queryStateModel.registerNewAttribute(this.includedAttributeId,[]),this.bind.onQueryState(w.MODEL_EVENTS.CHANGE,void 0,this.handleQueryStateChanged),this.dependsOnManager.listenToParentIfDependentFacet()},t.prototype.initBreadCrumbEvents=function(){var e=this;this.options.includeInBreadcrumb&&(this.bind.onRootElement(A.BreadcrumbEvents.populateBreadcrumb,function(t){return e.handlePopulateBreadcrumb(t)}),this.bind.onRootElement(A.BreadcrumbEvents.clearBreadcrumb,function(){return e.reset()}))},t.prototype.initValues=function(){this.values=new g.DynamicFacetValues(this,P.DynamicFacetValueCreator)},t.prototype.initComponentStateEvents=function(){var e=b.QueryStateModel.getFacetId(this.options.id);this.componentStateModel.registerComponent(e,this)},t.prototype.initDynamicFacetQueryController=function(){this.dynamicFacetQueryController=new C.DynamicFacetQueryController(this)},t.prototype.handleDoneBuildingQuery=function(e){this.dynamicFacetManager||(x.Assert.exists(e),x.Assert.exists(e.queryBuilder),this.putStateIntoQueryBuilder(e.queryBuilder),this.putStateIntoAnalytics())},t.prototype.handleQuerySuccess=function(e){if(!this.dynamicFacetManager)return S.Utils.isNullOrUndefined(e.facets)?this.notImplementedError():void this.handleQueryResults(e)},t.prototype.handleQueryResults=function(e){var t=a.findIndex(e.facets,{facetId:this.options.id}),n=-1!==t?e.facets[t]:null;this.position=n?t+1:null,n?this.onNewValues(n):this.onNoValues(),this.header.hideLoading(),this.updateQueryStateModel(),this.values.render(),this.updateAppearance()},t.prototype.onNewValues=function(e){this.moreValuesAvailable=e.moreValuesAvailable,this.values.createFromResponse(e)},t.prototype.onNoValues=function(){this.moreValuesAvailable=!1,this.values.resetValues()},t.prototype.handleQueryStateChanged=function(e){if(this.listenToQueryStateChange){var t=e.attributes[this.includedAttributeId];t&&this.handleQueryStateChangedIncluded(t)}},t.prototype.handlePopulateBreadcrumb=function(e){if(x.Assert.exists(e),this.values.hasActiveValues){var t=new m.DynamicFacetBreadcrumbs(this);e.breadcrumbs.push({element:t.element})}},t.prototype.initDependsOnManager=function(){var e=this,t={reset:function(){return e.reset()},toggleDependentFacet:function(t){return e.toggleDependentFacet(t)},element:this.element,root:this.root,dependsOn:this.options.dependsOn,id:this.options.id,queryStateModel:this.queryStateModel,bind:this.bind};this.dependsOnManager=new M.DependsOnManager(t)},t.prototype.toggleDependentFacet=function(e){this.values.hasSelectedValues?e.enable():e.disable()},t.prototype.createDom=function(){this.createAndAppendContent(),this.updateAppearance()},t.prototype.createAndAppendContent=function(){this.createAndAppendHeader(),this.createAndAppendSearch(),this.createAndAppendValues()},t.prototype.createAndAppendHeader=function(){var e=this;this.header=new y.DynamicFacetHeader({title:this.options.title,enableCollapse:this.options.enableCollapse,clear:function(){return e.clear()},toggleCollapse:function(){return e.toggleCollapse()},collapse:function(){return e.collapse()},expand:function(){return e.expand()}}),this.element.appendChild(this.header.element)},t.prototype.createAndAppendSearch=function(){!1!==this.options.enableFacetSearch&&(this.search=new R.DynamicFacetSearch(this),this.element.appendChild(this.search.element))},t.prototype.createAndAppendValues=function(){this.element.appendChild(this.values.render())},t.prototype.updateQueryStateModel=function(){this.listenToQueryStateChange=!1,this.queryStateModel.set(this.includedAttributeId,this.values.selectedValues),this.listenToQueryStateChange=!0},t.prototype.updateAppearance=function(){this.header.toggleClear(this.values.hasSelectedValues),this.header.toggleCollapse(this.isCollapsed),this.toggleSearchDisplay(),u.$$(this.element).toggleClass(\"coveo-dynamic-facet-collapsed\",this.isCollapsed),u.$$(this.element).toggleClass(\"coveo-active\",this.values.hasSelectedValues),u.$$(this.element).removeClass(\"coveo-hidden\"),this.dependsOnManager.updateVisibilityBasedOnDependsOn(),!this.values.hasDisplayedValues&&u.$$(this.element).addClass(\"coveo-hidden\")},t.prototype.toggleSearchDisplay=function(){!1!==this.options.enableFacetSearch&&(S.Utils.isUndefined(this.options.enableFacetSearch)&&u.$$(this.search.element).toggle(this.moreValuesAvailable),this.isCollapsed&&u.$$(this.search.element).toggle(!1))},t.prototype.triggerNewQuery=function(e){this.beforeSendingQuery();var t=e?{beforeExecuteQuery:e}:{ignoreWarningSearchEvent:!0};this.queryController.executeQuery(t)},t.prototype.triggerNewIsolatedQuery=function(e){return r(this,void 0,void 0,function(){var t,n;return s(this,function(i){switch(i.label){case 0:this.beforeSendingQuery(),e&&e(),i.label=1;case 1:return i.trys.push([1,3,,4]),[4,this.dynamicFacetQueryController.getQueryResults()];case 2:return t=i.sent(),this.handleQueryResults(t),[3,4];case 3:return n=i.sent(),this.header.hideLoading(),[3,4];case 4:return[2]}})})},t.prototype.beforeSendingQuery=function(){this.header.showLoading()},t.prototype.notImplementedError=function(){this.logger.error(\"DynamicFacets are not supported by your current search endpoint. Disabling this component.\"),this.disable(),this.updateAppearance()},t.prototype.verifyCollapsingConfiguration=function(){this.options.collapsedByDefault&&!this.options.enableCollapse&&this.logger.warn('The \"collapsedByDefault\" option is \"true\" while the \"enableCollapse\" is \"false\"')},t.prototype.logAnalyticsFacetShowMoreLess=function(e){this.usageAnalytics.logCustomEvent(e,this.basicAnalyticsFacetMeta,this.element)},t.prototype.clear=function(){var e=this;this.reset(),this.enableFreezeFacetOrderFlag(),this.scrollToTop(),this.triggerNewQuery(function(){return e.logClearAllToAnalytics()})},t.prototype.logClearAllToAnalytics=function(){this.logAnalyticsEvent(T.analyticsActionCauseList.dynamicFacetClearAll,this.basicAnalyticsFacetMeta)},t.ID=\"DynamicFacet\",t.doExport=function(){return l.exportGlobally({DynamicFacet:t})},t.options=o({},d.ResponsiveFacetOptions,{id:p.ComponentOptions.buildStringOption({postProcessing:function(e,t){void 0===e&&(e=\"\");var n=e.replace(/[^A-Za-z0-9-_@]+/g,\"\");return S.Utils.isNonEmptyString(n)?n.slice(0,59):t.field.slice(0,59)}}),title:p.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return O.l(\"NoTitle\")},section:\"CommonOptions\",priority:10}),field:p.ComponentOptions.buildFieldOption({required:!0,section:\"CommonOptions\"}),sortCriteria:p.ComponentOptions.buildStringOption({postProcessing:function(e){return _.isFacetSortCriteria(e)?e:void 0},section:\"Sorting\"}),numberOfValues:p.ComponentOptions.buildNumberOption({min:0,defaultValue:8,section:\"CommonOptions\"}),enableCollapse:p.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"Filtering\"}),enableScrollToTop:p.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"CommonOptions\"}),enableMoreLess:p.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"CommonOptions\"}),enableFacetSearch:p.ComponentOptions.buildBooleanOption({section:\"Filtering\"}),useLeadingWildcardInFacetSearch:p.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"Filtering\",depend:\"enableFacetSearch\"}),collapsedByDefault:p.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"Filtering\",depend:\"enableCollapse\"}),includeInBreadcrumb:p.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"CommonOptions\"}),numberOfValuesInBreadcrumb:p.ComponentOptions.buildNumberOption({defaultFunction:function(){return E.DeviceUtils.isMobileDevice()?3:5},min:0,depend:\"includeInBreadcrumb\",section:\"CommonOptions\"}),valueCaption:p.ComponentOptions.buildJsonOption({defaultValue:{}}),dependsOn:p.ComponentOptions.buildStringOption(),injectionDepth:p.ComponentOptions.buildNumberOption({defaultValue:1e3,min:0})}),t}(c.Component);t.DynamicFacet=D,h.Initialization.registerAutoCreateComponent(D),D.doExport()},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=n(55),s=n(65),a=n(5),u=n(1),l=n(0),c=n(2),p=function(e){function t(){var t=e.call(this)||this;return t.addFields(c.Initialization.getRegisteredFieldsForQuery()),t}return i(t,e),t.prototype.instantiateToString=function(e,t){void 0===t&&(t={}),a.Assert.exists(e);var n=(new o.DefaultInstantiateTemplateOptions).merge(t);e=l.extend({},e,r.UnderscoreTemplate.templateHelpers);for(var i=l.chain(s.TemplateCache.getDefaultTemplates()).map(function(e){return s.TemplateCache.getTemplate(e)}).value(),u=l.chain(i).sortBy(function(e){return null==e.condition}).sortBy(function(e){return null==e.fieldsToMatch}).value(),c=0;c<u.length;c++){var p=u[c].instantiateToString(e,n);if(null!=p)return p}return this.getFallbackTemplate()},t.prototype.getFields=function(){var e=l.map(s.TemplateCache.getDefaultTemplates(),function(e){return s.TemplateCache.getTemplate(e)});return l.flatten(l.map(e,function(e){return e.getFields()}))},t.prototype.getType=function(){return\"DefaultResultTemplate\"},t.prototype.getFallbackTemplate=function(){var e=u.$$(\"div\",{className:\"coveo-title\"}),t=u.$$(\"a\",{className:\"CoveoResultLink\"});e.append(t.el);var n=u.$$(\"div\",{className:\"CoveoExcerpt\"}),i=u.$$(\"div\");return i.append(e.el),i.append(n.el),i.el.outerHTML},t}(o.Template);t.DefaultResultTemplate=p},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i,o=n(1),r=n(133),s=n(0),a=n(17),u=n(25),l=n(16),c=n(5),p=n(6);!function(e){e.OPEN=\"responsiveDropdownOpen\",e.CLOSE=\"responsiveDropdownClose\"}(i=t.ResponsiveDropdownEvent||(t.ResponsiveDropdownEvent={}));var h=function(){function e(e,t,n){var i=this;this.dropdownContent=e,this.dropdownHeader=t,this.coveoRoot=n,this.isOpened=!1,this.onOpenHandlers=[],this.onCloseHandlers=[],this.popupBackgroundIsEnabled=!0,this.closeIfOpened=function(){i.isOpened&&i.close()},c.Assert.exists(e),c.Assert.exists(t),c.Assert.exists(n),this.popupBackground=this.buildPopupBackground(),this.bindOnClickDropdownHeaderEvent(),this.saveContentPosition(),this.bindOnKeyboardEscapeEvent(),this.bindNukeEvents()}return e.prototype.registerOnOpenHandler=function(e,t){c.Assert.exists(e),this.onOpenHandlers.push({handler:e,context:t})},e.prototype.registerOnCloseHandler=function(e,t){c.Assert.exists(e),this.onCloseHandlers.push({handler:e,context:t})},e.prototype.cleanUp=function(){this.close(),this.dropdownHeader.cleanUp(),this.dropdownContent.cleanUp(),this.restoreContentPosition()},e.prototype.open=function(){this.isOpened=!0,this.dropdownHeader.open(),this.dropdownContent.positionDropdown(),s.each(this.onOpenHandlers,function(e){e.handler.apply(e.context)}),this.showPopupBackground(),o.$$(this.dropdownHeader.element).trigger(i.OPEN)},e.prototype.close=function(){this.isOpened=!1,s.each(this.onCloseHandlers,function(e){e.handler.apply(e.context)}),this.dropdownHeader.close(),this.dropdownContent.hideDropdown(),this.hidePopupBackground(),o.$$(this.dropdownHeader.element).trigger(i.CLOSE)},e.prototype.disablePopupBackground=function(){this.popupBackgroundIsEnabled=!1},e.prototype.bindOnClickDropdownHeaderEvent=function(){var e=this;(new a.AccessibleButton).withElement(this.dropdownHeader.element).withSelectAction(function(){return e.isOpened?e.close():e.open()}).withLabel(p.l(this.isOpened?\"CloseFiltersDropdown\":\"OpenFiltersDropdown\")).build()},e.prototype.bindOnKeyboardEscapeEvent=function(){o.$$(document.documentElement).on(\"keyup\",u.KeyboardUtils.keypressAction(u.KEYBOARD.ESCAPE,this.closeIfOpened))},e.prototype.unbindOnKeyboardEscapeEvent=function(){o.$$(document.documentElement).off(\"keyup\",u.KeyboardUtils.keypressAction(u.KEYBOARD.ESCAPE,this.closeIfOpened))},e.prototype.bindNukeEvents=function(){var e=this;o.$$(this.coveoRoot).on(l.InitializationEvents.nuke,function(){e.unbindOnKeyboardEscapeEvent()})},e.prototype.showPopupBackground=function(){this.popupBackgroundIsEnabled&&(this.coveoRoot.el.appendChild(this.popupBackground.el),window.getComputedStyle(this.popupBackground.el).opacity,this.popupBackground.el.style.opacity=e.TRANSPARENT_BACKGROUND_OPACITY,this.popupBackground.addClass(\"coveo-dropdown-background-active\"))},e.prototype.hidePopupBackground=function(){this.popupBackgroundIsEnabled&&(window.getComputedStyle(this.popupBackground.el).opacity,this.popupBackground.el.style.opacity=\"0\",this.popupBackground.removeClass(\"coveo-dropdown-background-active\"))},e.prototype.buildPopupBackground=function(){var t=this,n=o.$$(\"div\",{className:e.DROPDOWN_BACKGROUND_CSS_CLASS_NAME});return r.EventsUtils.addPrefixedEvent(n.el,\"TransitionEnd\",function(){\"0\"==n.el.style.opacity&&n.detach()}),n.on(\"click\",function(){return t.close()}),n},e.prototype.saveContentPosition=function(){var e=this.dropdownContent.element.el.previousSibling,t=this.dropdownContent.element.el.parentElement;this.previousSibling=e?o.$$(e):null,this.parent=o.$$(t)},e.prototype.restoreContentPosition=function(){this.previousSibling?this.dropdownContent.element.insertAfter(this.previousSibling.el):this.parent.prepend(this.dropdownContent.element.el)},e.TRANSPARENT_BACKGROUND_OPACITY=\"0.9\",e.DROPDOWN_BACKGROUND_CSS_CLASS_NAME=\"coveo-dropdown-background\",e}();t.ResponsiveDropdown=h},function(module,exports,__webpack_require__){\"use strict\";function showOnlyWithHelper(e,t){return null==t&&(t={}),t.helpers=e,t}var __extends=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(exports,\"__esModule\",{value:!0});var underscore_1=__webpack_require__(0),GlobalExports_1=__webpack_require__(3),Assert_1=__webpack_require__(5),QueryStateModel_1=__webpack_require__(13),Strings_1=__webpack_require__(6),AccessibleButton_1=__webpack_require__(17),DateUtils_1=__webpack_require__(29),Dom_1=__webpack_require__(1),StringUtils_1=__webpack_require__(19),Utils_1=__webpack_require__(4),AnalyticsActionListMeta_1=__webpack_require__(10),Component_1=__webpack_require__(7),ComponentOptions_1=__webpack_require__(8),Initialization_1=__webpack_require__(2),DynamicFacet_1=__webpack_require__(114),FacetUtils_1=__webpack_require__(43),TemplateFieldsEvaluator_1=__webpack_require__(131),TemplateHelpers_1=__webpack_require__(113),FieldValue=function(_super){function FieldValue(e,t,n,i,o){void 0===o&&(o=FieldValue.ID);var r=_super.call(this,e,o,n)||this;return r.element=e,r.options=t,r.result=i,r.options=ComponentOptions_1.ComponentOptions.initOptions(e,FieldValue.simpleOptions,t,FieldValue.ID),null!=r.options.helper&&r.normalizeHelperAndOptions(),r.result=r.result||r.resolveResult(),Assert_1.Assert.exists(r.result),TemplateFieldsEvaluator_1.TemplateFieldsEvaluator.evaluateFieldsToMatch(r.options.conditions,r.result)&&r.getValue()?r.initialize():null!=r.element.parentElement&&r.element.parentElement.removeChild(r.element),r}return __extends(FieldValue,_super),FieldValue.prototype.initialize=function(){var e,t=this.getValue();underscore_1.isArray(t)?e=t:this.options.splitValues?underscore_1.isString(t)&&(e=underscore_1.map(t.split(this.options.separator),function(e){return e.trim()})):(t=t.toString(),e=[t]),this.appendValuesToDom(e),null!=this.options.textCaption&&this.prependTextCaptionToDom()},FieldValue.prototype.getValue=function(){var e=Utils_1.Utils.getFieldValue(this.result,this.options.field);return!underscore_1.isArray(e)&&underscore_1.isObject(e)&&(e=null),e},FieldValue.prototype.renderOneValue=function(e){var t=Dom_1.$$(\"span\").el,n=FacetUtils_1.FacetUtils.tryToGetTranslatedCaption(this.options.field,e);if(this.options.helper){var i=TemplateHelpers_1.TemplateHelpers.getHelper(this.options.helper+\"v2\")||TemplateHelpers_1.TemplateHelpers.getHelper(\"\"+this.options.helper);Utils_1.Utils.exists(i)?n=i.call(this,e,this.getHelperOptions()):this.logger.warn(\"Helper \"+this.options.helper+\" is not found in available helpers. The list of supported helpers is :\",underscore_1.keys(TemplateHelpers_1.TemplateHelpers.getHelpers()));var o=this.getFullDate(e,this.options.helper);o&&t.setAttribute(\"title\",o),\"date\"!=this.options.helper&&\"dateTime\"!=this.options.helper&&\"emailDateTime\"!=this.options.helper||(n=StringUtils_1.StringUtils.capitalizeFirstLetter(n))}return this.options.htmlValue?t.innerHTML=n:t.appendChild(document.createTextNode(n)),this.bindEventOnValue(t,e,n),t},FieldValue.prototype.getValueContainer=function(){return this.element},FieldValue.prototype.normalizeHelperAndOptions=function(){var e=this;this.options=ComponentOptions_1.ComponentOptions.initOptions(this.element,FieldValue.helperOptions,this.options,FieldValue.ID);var t=underscore_1.keys(FieldValue.options.helperOptions.subOptions),n=underscore_1.filter(t,function(t){var n=FieldValue.options.helperOptions.subOptions[t];if(n){var i=n.helpers;return null!=i&&underscore_1.contains(i,e.options.helper)}return!1});this.options.helperOptions=underscore_1.omit(this.options.helperOptions,function(e,t){return!underscore_1.contains(n,t)})},FieldValue.prototype.getHelperOptions=function(){var inlineOptions=ComponentOptions_1.ComponentOptions.loadStringOption(this.element,\"helperOptions\",{});return Utils_1.Utils.isNonEmptyString(inlineOptions)?underscore_1.extend({},this.options.helperOptions,eval(\"(\"+inlineOptions+\")\")):this.options.helperOptions},FieldValue.prototype.getFullDate=function(e,t){var n={useLongDateFormat:!0,useTodayYesterdayAndTomorrow:!1,useWeekdayIfThisWeek:!1,omitYearIfCurrentOne:!1};return\"date\"==t?DateUtils_1.DateUtils.dateToString(new Date(parseInt(e)),n):\"dateTime\"==t||\"emailDateTime\"==t?DateUtils_1.DateUtils.dateTimeToString(new Date(parseInt(e)),n):\"\"},FieldValue.prototype.appendValuesToDom=function(e){var t=this;underscore_1.each(e,function(n,i){void 0!=n&&(t.getValueContainer().appendChild(t.renderOneValue(n)),i!==e.length-1&&t.getValueContainer().appendChild(document.createTextNode(t.options.displaySeparator)))})},FieldValue.prototype.renderTextCaption=function(){return Dom_1.$$(\"span\",{className:\"coveo-field-caption\"},underscore_1.escape(this.options.textCaption)).el},FieldValue.prototype.prependTextCaptionToDom=function(){var e=this.getValueContainer();Dom_1.$$(e).prepend(this.renderTextCaption()),Dom_1.$$(e).addClass(\"coveo-with-label\")},FieldValue.prototype.bindEventOnValue=function(e,t,n){this.bindFacets(e,t,n),this.bindDynamicFacets(e,t,n)},FieldValue.prototype.bindFacets=function(e,t,n){var i=this,o=QueryStateModel_1.QueryStateModel.getFacetId(this.options.facet),r=underscore_1.filter(this.componentStateModel.get(o),function(e){var t=!0,n=-1!==e.type.indexOf(\"Dynamic\"),i=Component_1.Component.getComponentRef(\"FacetRange\"),o=Component_1.Component.getComponentRef(\"FacetSlider\");return!e.disabled&&!n&&(t&&i&&(t=!(e instanceof i)),t&&o&&(t=!(e instanceof o)),t)});if(r.length){var s=!!underscore_1.find(r,function(e){var n=e.values.get(t);return n&&n.selected}),a=function(){return i.handleFacetSelection(s,r,t)};this.buildClickableElement(e,!!s,n,a)}},FieldValue.prototype.getDynamicFacets=function(){var e=QueryStateModel_1.QueryStateModel.getFacetId(this.options.facet);return underscore_1.filter(this.componentStateModel.get(e),function(e){return e.type===DynamicFacet_1.DynamicFacet.ID&&!e.disabled})},FieldValue.prototype.bindDynamicFacets=function(e,t,n){var i=this,o=this.getDynamicFacets();if(o.length){var r=!!underscore_1.find(o,function(e){return e.values.hasSelectedValue(t)}),s=function(){return i.handleDynamicFacetSelection(r,o,t)};this.buildClickableElement(e,r,n,s)}},FieldValue.prototype.buildClickableElement=function(e,t,n,i){var o=t?Strings_1.l(\"RemoveFilterOn\",n):Strings_1.l(\"FilterOn\",n);(new AccessibleButton_1.AccessibleButton).withTitle(o).withLabel(o).withElement(e).withSelectAction(i).build(),t&&Dom_1.$$(e).addClass(\"coveo-selected\"),Dom_1.$$(e).addClass(\"coveo-clickable\")},FieldValue.prototype.handleFacetSelection=function(e,t,n){t.forEach(function(t){e?t.deselectValue(n):t.selectValue(n)}),this.executeQuery(n)},FieldValue.prototype.handleDynamicFacetSelection=function(e,t,n){t.forEach(function(t){e?t.deselectValue(n):t.selectValue(n)}),this.executeQuery(n)},FieldValue.prototype.executeQuery=function(e){var t=this;this.queryController.deferExecuteQuery({beforeExecuteQuery:function(){return t.usageAnalytics.logSearchEvent(AnalyticsActionListMeta_1.analyticsActionCauseList.documentField,{facetId:t.options.facet,facetField:t.options.field.toString(),facetValue:e.toLowerCase()})}})},FieldValue.ID=\"FieldValue\",FieldValue.doExport=function(){GlobalExports_1.exportGlobally({FieldValue:FieldValue})},FieldValue.options={field:ComponentOptions_1.ComponentOptions.buildFieldOption({defaultValue:\"@field\",required:!0}),facet:ComponentOptions_1.ComponentOptions.buildStringOption({postProcessing:function(e,t){return e||t.field}}),htmlValue:ComponentOptions_1.ComponentOptions.buildBooleanOption({defaultValue:!1}),splitValues:ComponentOptions_1.ComponentOptions.buildBooleanOption({defaultValue:!1}),separator:ComponentOptions_1.ComponentOptions.buildStringOption({depend:\"splitValues\",defaultValue:\";\"}),displaySeparator:ComponentOptions_1.ComponentOptions.buildStringOption({depend:\"splitValues\",defaultValue:\", \"}),helper:ComponentOptions_1.ComponentOptions.buildHelperOption(),helperOptions:ComponentOptions_1.ComponentOptions.buildObjectOption({subOptions:{text:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"anchor\"])),target:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"anchor\"])),class:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"anchor\"])),decimals:ComponentOptions_1.ComponentOptions.buildNumberOption(showOnlyWithHelper([\"currency\"],{min:0})),symbol:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"currency\"])),useTodayYesterdayAndTomorrow:ComponentOptions_1.ComponentOptions.buildBooleanOption(showOnlyWithHelper([\"date\",\"dateTime\",\"emailDateTime\",\"time\"],{defaultValue:!0})),useWeekdayIfThisWeek:ComponentOptions_1.ComponentOptions.buildBooleanOption(showOnlyWithHelper([\"date\",\"dateTime\",\"emailDateTime\",\"time\"],{defaultValue:!0})),omitYearIfCurrentOne:ComponentOptions_1.ComponentOptions.buildBooleanOption(showOnlyWithHelper([\"date\",\"dateTime\",\"emailDateTime\",\"time\"],{defaultValue:!0})),useLongDateFormat:ComponentOptions_1.ComponentOptions.buildBooleanOption(showOnlyWithHelper([\"date\",\"dateTime\",\"emailDateTime\",\"time\"],{defaultValue:!1})),includeTimeIfToday:ComponentOptions_1.ComponentOptions.buildBooleanOption(showOnlyWithHelper([\"date\",\"dateTime\",\"emailDateTime\",\"time\"],{defaultValue:!0})),includeTimeIfThisWeek:ComponentOptions_1.ComponentOptions.buildBooleanOption(showOnlyWithHelper([\"date\",\"dateTime\",\"emailDateTime\",\"time\"],{defaultValue:!0})),alwaysIncludeTime:ComponentOptions_1.ComponentOptions.buildBooleanOption(showOnlyWithHelper([\"date\",\"dateTime\",\"emailDateTime\",\"time\"],{defaultValue:!1})),predefinedFormat:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"date\",\"dateTime\",\"emailDateTime\",\"time\"])),companyDomain:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"email\"])),me:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"email\"])),lengthLimit:ComponentOptions_1.ComponentOptions.buildNumberOption(showOnlyWithHelper([\"email\"],{min:1})),truncateName:ComponentOptions_1.ComponentOptions.buildBooleanOption(showOnlyWithHelper([\"email\"])),alt:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"image\"])),height:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"image\"])),width:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"image\"])),srcTemplate:ComponentOptions_1.ComponentOptions.buildStringOption(showOnlyWithHelper([\"image\"])),precision:ComponentOptions_1.ComponentOptions.buildNumberOption(showOnlyWithHelper([\"size\"],{min:0,defaultValue:2})),base:ComponentOptions_1.ComponentOptions.buildNumberOption(showOnlyWithHelper([\"size\"],{min:0,defaultValue:0})),isMilliseconds:ComponentOptions_1.ComponentOptions.buildBooleanOption(showOnlyWithHelper([\"timeSpan\"])),length:ComponentOptions_1.ComponentOptions.buildNumberOption(showOnlyWithHelper([\"shorten\",\"shortenPath\",\"shortenUri\"],{defaultValue:200}))}}),textCaption:ComponentOptions_1.ComponentOptions.buildLocalizedStringOption(),conditions:ComponentOptions_1.ComponentOptions.buildFieldConditionOption()},FieldValue.simpleOptions=underscore_1.omit(FieldValue.options,\"helperOptions\"),FieldValue.helperOptions={helperOptions:FieldValue.options.helperOptions},FieldValue}(Component_1.Component);exports.FieldValue=FieldValue,Initialization_1.Initialization.registerAutoCreateComponent(FieldValue)},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1);n(535);var o=n(3),r=function(){function e(e,t,n){void 0===e&&(e=function(e){}),this.onChange=e,this.label=t,this.name=n,this.buildContent()}return e.doExport=function(){o.exportGlobally({RadioButton:e})},e.prototype.reset=function(){var e=this.isSelected();this.getRadio().checked=!1,e&&this.onChange(this)},e.prototype.select=function(e){void 0===e&&(e=!0);var t=this.isSelected();this.getRadio().checked=!0,!t&&e&&this.onChange(this)},e.prototype.build=function(){return this.element},e.prototype.getElement=function(){return this.element},e.prototype.getValue=function(){return this.label},e.prototype.isSelected=function(){return this.getRadio().checked},e.prototype.getRadio=function(){return i.$$(this.element).find(\"input\")},e.prototype.getLabel=function(){return i.$$(this.element).find(\"label\")},e.prototype.buildContent=function(){var e=this,t=i.$$(\"div\",{className:\"coveo-radio\"}),n=i.$$(\"input\",{type:\"radio\",name:this.name,id:this.label}),o=i.$$(\"label\",{className:\"coveo-radio-input-label\",for:this.label});o.text(this.label),n.on(\"change\",function(){e.onChange(e)}),t.append(n.el),t.append(o.el),this.element=t.el},e}();t.RadioButton=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(3),o=n(6),r=n(1),s=n(14),a=n(12),u=function(){function e(e,t,n,i){void 0===e&&(e=function(e){}),void 0===t&&(t=0),this.onChange=e,this.min=t,this.max=n,this.label=i,this.buildContent(),this.bindEvents()}return e.doExport=function(){i.exportGlobally({NumericSpinner:e})},e.prototype.reset=function(){this.getSpinnerInput().value=\"\",this.onChange(this)},e.prototype.getElement=function(){return this.element},e.prototype.getValue=function(){return this.getSpinnerInput().value},e.prototype.getIntValue=function(){return this.getSpinnerInput().value?parseInt(this.getSpinnerInput().value,10):this.min},e.prototype.getFloatValue=function(){return this.getSpinnerInput().value?parseFloat(this.getSpinnerInput().value):this.min},e.prototype.setValue=function(e){this.max&&e>this.max&&(e=this.max),e<this.min&&(e=this.min),this.getSpinnerInput().value=e.toString(),this.onChange(this)},e.prototype.build=function(){return this.element},e.prototype.buildContent=function(){var e=r.$$(\"div\",{className:\"coveo-numeric-spinner\"}),t=r.$$(\"input\",{className:\"coveo-number-input\",type:\"text\",\"aria-label\":this.label?o.l(this.label):\"\"}),n=r.$$(\"span\",{className:\"coveo-add-on\"}),i=r.$$(\"div\",{className:\"coveo-spinner-up\"},a.SVGIcons.icons.arrowUp);s.SVGDom.addClassToSVGInContainer(i.el,\"coveo-spinner-up-svg\");var u=r.$$(\"div\",{className:\"coveo-spinner-down\"},a.SVGIcons.icons.arrowDown);s.SVGDom.addClassToSVGInContainer(u.el,\"coveo-spinner-down-svg\"),n.append(i.el),n.append(u.el),e.append(t.el),e.append(n.el),this.element=e.el},e.prototype.bindEvents=function(){var e=this,t=r.$$(this.element).find(\".coveo-spinner-up\");r.$$(t).on(\"click\",function(){e.setValue(e.getFloatValue()+1)});var n=r.$$(this.element).find(\".coveo-spinner-down\");r.$$(n).on(\"click\",function(){e.setValue(e.getFloatValue()-1)});var i=r.$$(this.element).find(\"input\");r.$$(i).on(\"input\",function(){i.value.match(/[0-9]*/)&&e.onChange(e)})},e.prototype.getSpinnerInput=function(){return r.$$(this.element).find(\".coveo-number-input\")},e}();t.NumericSpinner=u},function(e,t,n){\"use strict\";function i(e){e.logSearchEvent(r.analyticsActionCauseList.searchboxSubmit,{})}function o(e,t){e.logSearchEvent(r.analyticsActionCauseList.resultsSort,{resultsSortBy:t})}Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(10);t.logSearchBoxSubmitEvent=i,t.logSortEvent=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(139);t.ColorUtils=i.ColorUtils;var o=n(72);t.Cookie=o.Cookie;var r=n(129);t.CurrencyUtils=r.CurrencyUtils;var s=n(29);t.DateUtils=s.DateUtils;var a=n(22);t.DeviceUtils=a.DeviceUtils;var u=n(1);t.Dom=u.Dom,t.$$=u.$$;var l=n(82);t.DomUtils=l.DomUtils;var c=n(173);t.EmailUtils=c.EmailUtils;var p=n(47);t.HashUtils=p.HashUtils;var h=n(66);t.HighlightUtils=h.HighlightUtils,t.StringAndHoles=h.StringAndHoles;var d=n(174);t.HTMLUtils=d.HTMLUtils;var f=n(25);t.KEYBOARD=f.KEYBOARD,t.KeyboardUtils=f.KeyboardUtils;var m=n(45);t.LocalStorageUtils=m.LocalStorageUtils;var y=n(176);t.OSUtils=y.OSUtils,t.OS_NAME=y.OS_NAME;var g=n(132);t.PopupUtils=g.PopupUtils;var v=n(21);t.QueryUtils=v.QueryUtils;var b=n(112);t.StreamHighlightUtils=b.StreamHighlightUtils;var C=n(19);t.StringUtils=C.StringUtils;var S=n(68);t.TimeSpan=S.TimeSpan;var w=n(4);t.Utils=w.Utils;var x=n(39);t.UrlUtils=x.UrlUtils},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(108),r=n(1),s=n(16),a=n(18),u=n(7),l=n(13),c=n(0),p=function(e){function t(t,n,i,o){var a=e.call(this,t,n,i,o)||this;return a.root=t,a.endpoint=n,a.templateSearchEvent=i,a.sendToCloud=o,a.delayBeforeSending=5e3,a.queryContent=\"\",a.beforeUnloadHandler=function(){a.onWindowUnload()},window.addEventListener(\"beforeunload\",a.beforeUnloadHandler),r.$$(t).on(s.InitializationEvents.nuke,function(){return a.handleNuke()}),a}return i(t,e),t.prototype.handleDuringQuery=function(t,n){var i=this,o=c.clone(t),r=t.target,s=u.Component.get(r,a.SearchInterface);this.modifyQueryContent(s.queryStateModel.get(l.QueryStateModel.attributesEnum.q)),this.beforeResolve=new Promise(function(t){i.toSendRightNow=function(){i.isCancelledOrFinished()||(t(i),e.prototype.handleDuringQuery.call(i,o,n,i.queryContent))},c.delay(function(){i.toSendRightNow()},i.delayBeforeSending)})},t.prototype.sendRightNow=function(){this.toSendRightNow&&this.toSendRightNow()},t.prototype.modifyCustomData=function(e,t){c.each(this.searchEvents,function(n){n.customData[e]=t}),this.templateSearchEvent.customData||(this.templateSearchEvent.customData={}),this.templateSearchEvent.customData[e]=t},t.prototype.modifyEventCause=function(e){c.each(this.searchEvents,function(t){t.actionCause=e.name,t.actionType=e.type}),this.templateSearchEvent.actionCause=e.name,this.templateSearchEvent.actionType=e.type},t.prototype.modifyQueryContent=function(e){this.queryContent=e},t.prototype.stopRecording=function(){e.prototype.stopRecording.call(this),this.beforeUnloadHandler&&(window.removeEventListener(\"beforeunload\",this.beforeUnloadHandler),this.beforeUnloadHandler=void 0)},t.prototype.handleNuke=function(){window.removeEventListener(\"beforeunload\",this.beforeUnloadHandler)},t.prototype.onWindowUnload=function(){this.isCancelledOrFinished()||this.sendRightNow()},t.prototype.isCancelledOrFinished=function(){return!!this.cancelled||!!this.finished&&(this.cancel(),!0)},t}(o.PendingSearchEvent);t.PendingSearchAsYouTypeSearchEvent=p},function(e,t,n){(function(e){!function(t,n){e.exports=n()}(0,function(){\"use strict\";function t(){return Ai.apply(null,arguments)}function n(e){return e instanceof Array||\"[object Array]\"===Object.prototype.toString.call(e)}function i(e){return null!=e&&\"[object Object]\"===Object.prototype.toString.call(e)}function o(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(e.hasOwnProperty(t))return!1;return!0}function r(e){return void 0===e}function s(e){return\"number\"==typeof e||\"[object Number]\"===Object.prototype.toString.call(e)}function a(e){return e instanceof Date||\"[object Date]\"===Object.prototype.toString.call(e)}function u(e,t){var n,i=[];for(n=0;n<e.length;++n)i.push(t(e[n],n));return i}function l(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function c(e,t){for(var n in t)l(t,n)&&(e[n]=t[n]);return l(t,\"toString\")&&(e.toString=t.toString),l(t,\"valueOf\")&&(e.valueOf=t.valueOf),e}function p(e,t,n,i){return _t(e,t,n,i,!0).utc()}function h(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function d(e){return null==e._pf&&(e._pf=h()),e._pf}function f(e){if(null==e._isValid){var t=d(e),n=Ti.call(t.parsedDateParts,function(e){return null!=e}),i=!isNaN(e._d.getTime())&&t.overflow<0&&!t.empty&&!t.invalidMonth&&!t.invalidWeekday&&!t.weekdayMismatch&&!t.nullInput&&!t.invalidFormat&&!t.userInvalidated&&(!t.meridiem||t.meridiem&&n);if(e._strict&&(i=i&&0===t.charsLeftOver&&0===t.unusedTokens.length&&void 0===t.bigHour),null!=Object.isFrozen&&Object.isFrozen(e))return i;e._isValid=i}return e._isValid}function m(e){var t=p(NaN);return null!=e?c(d(t),e):d(t).userInvalidated=!0,t}function y(e,t){var n,i,o;if(r(t._isAMomentObject)||(e._isAMomentObject=t._isAMomentObject),r(t._i)||(e._i=t._i),r(t._f)||(e._f=t._f),r(t._l)||(e._l=t._l),r(t._strict)||(e._strict=t._strict),r(t._tzm)||(e._tzm=t._tzm),r(t._isUTC)||(e._isUTC=t._isUTC),r(t._offset)||(e._offset=t._offset),r(t._pf)||(e._pf=d(t)),r(t._locale)||(e._locale=t._locale),Ri.length>0)for(n=0;n<Ri.length;n++)i=Ri[n],o=t[i],r(o)||(e[i]=o);return e}function g(e){y(this,e),this._d=new Date(null!=e._d?e._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===Fi&&(Fi=!0,t.updateOffset(this),Fi=!1)}function v(e){return e instanceof g||null!=e&&null!=e._isAMomentObject}function b(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function C(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=b(t)),n}function S(e,t,n){var i,o=Math.min(e.length,t.length),r=Math.abs(e.length-t.length),s=0;for(i=0;i<o;i++)(n&&e[i]!==t[i]||!n&&C(e[i])!==C(t[i]))&&s++;return s+r}function w(e){!1===t.suppressDeprecationWarnings&&\"undefined\"!=typeof console&&console.warn&&console.warn(\"Deprecation warning: \"+e)}function x(e,n){var i=!0;return c(function(){if(null!=t.deprecationHandler&&t.deprecationHandler(null,e),i){for(var o,r=[],s=0;s<arguments.length;s++){if(o=\"\",\"object\"==typeof arguments[s]){o+=\"\\n[\"+s+\"] \";for(var a in arguments[0])o+=a+\": \"+arguments[0][a]+\", \";o=o.slice(0,-2)}else o=arguments[s];r.push(o)}w(e+\"\\nArguments: \"+Array.prototype.slice.call(r).join(\"\")+\"\\n\"+(new Error).stack),i=!1}return n.apply(this,arguments)},n)}function _(e,n){null!=t.deprecationHandler&&t.deprecationHandler(e,n),Ii[e]||(w(n),Ii[e]=!0)}function O(e){return e instanceof Function||\"[object Function]\"===Object.prototype.toString.call(e)}function E(e){var t,n;for(n in e)t=e[n],O(t)?this[n]=t:this[\"_\"+n]=t;this._config=e,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+\"|\"+/\\d{1,2}/.source)}function A(e,t){var n,o=c({},e);for(n in t)l(t,n)&&(i(e[n])&&i(t[n])?(o[n]={},c(o[n],e[n]),c(o[n],t[n])):null!=t[n]?o[n]=t[n]:delete o[n]);for(n in e)l(e,n)&&!l(t,n)&&i(e[n])&&(o[n]=c({},o[n]));return o}function T(e){null!=e&&this.set(e)}function R(e,t,n){var i=this._calendar[e]||this._calendar.sameElse;return O(i)?i.call(t,n):i}function F(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e])}function I(){return this._invalidDate}function M(e){return this._ordinal.replace(\"%d\",e)}function P(e,t,n,i){var o=this._relativeTime[n];return O(o)?o(e,t,n,i):o.replace(/%d/i,e)}function D(e,t){var n=this._relativeTime[e>0?\"future\":\"past\"];return O(n)?n(t):n.replace(/%s/i,t)}function $(e,t){var n=e.toLowerCase();Vi[n]=Vi[n+\"s\"]=Vi[t]=e}function N(e){return\"string\"==typeof e?Vi[e]||Vi[e.toLowerCase()]:void 0}function V(e){var t,n,i={};for(n in e)l(e,n)&&(t=N(n))&&(i[t]=e[n]);return i}function k(e,t){ki[e]=t}function L(e){var t=[];for(var n in e)t.push({unit:n,priority:ki[n]});return t.sort(function(e,t){return e.priority-t.priority}),t}function B(e,t,n){var i=\"\"+Math.abs(e),o=t-i.length;return(e>=0?n?\"+\":\"\":\"-\")+Math.pow(10,Math.max(0,o)).toString().substr(1)+i}function Q(e,t,n,i){var o=i;\"string\"==typeof i&&(o=function(){return this[i]()}),e&&(Ui[e]=o),t&&(Ui[t[0]]=function(){return B(o.apply(this,arguments),t[1],t[2])}),n&&(Ui[n]=function(){return this.localeData().ordinal(o.apply(this,arguments),e)})}function U(e){return e.match(/\\[[\\s\\S]/)?e.replace(/^\\[|\\]$/g,\"\"):e.replace(/\\\\/g,\"\")}function j(e){var t,n,i=e.match(Li);for(t=0,n=i.length;t<n;t++)Ui[i[t]]?i[t]=Ui[i[t]]:i[t]=U(i[t]);return function(t){var o,r=\"\";for(o=0;o<n;o++)r+=O(i[o])?i[o].call(t,e):i[o];return r}}function q(e,t){return e.isValid()?(t=H(t,e.localeData()),Qi[t]=Qi[t]||j(t),Qi[t](e)):e.localeData().invalidDate()}function H(e,t){function n(e){return t.longDateFormat(e)||e}var i=5;for(Bi.lastIndex=0;i>=0&&Bi.test(e);)e=e.replace(Bi,n),Bi.lastIndex=0,i-=1;return e}function z(e,t,n){so[e]=O(t)?t:function(e,i){return e&&n?n:t}}function W(e,t){return l(so,e)?so[e](t._strict,t._locale):new RegExp(G(e))}function G(e){return Y(e.replace(\"\\\\\",\"\").replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,function(e,t,n,i,o){return t||n||i||o}))}function Y(e){return e.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\")}function K(e,t){var n,i=t;for(\"string\"==typeof e&&(e=[e]),s(t)&&(i=function(e,n){n[t]=C(e)}),n=0;n<e.length;n++)ao[e[n]]=i}function J(e,t){K(e,function(e,n,i,o){i._w=i._w||{},t(e,i._w,i,o)})}function X(e,t,n){null!=t&&l(ao,e)&&ao[e](t,n._a,n,e)}function Z(e){return ee(e)?366:365}function ee(e){return e%4==0&&e%100!=0||e%400==0}function te(){return ee(this.year())}function ne(e,n){return function(i){return null!=i?(oe(this,e,i),t.updateOffset(this,n),this):ie(this,e)}}function ie(e,t){return e.isValid()?e._d[\"get\"+(e._isUTC?\"UTC\":\"\")+t]():NaN}function oe(e,t,n){e.isValid()&&!isNaN(n)&&(\"FullYear\"===t&&ee(e.year())&&1===e.month()&&29===e.date()?e._d[\"set\"+(e._isUTC?\"UTC\":\"\")+t](n,e.month(),ue(n,e.month())):e._d[\"set\"+(e._isUTC?\"UTC\":\"\")+t](n))}function re(e){return e=N(e),O(this[e])?this[e]():this}function se(e,t){if(\"object\"==typeof e){e=V(e);for(var n=L(e),i=0;i<n.length;i++)this[n[i].unit](e[n[i].unit])}else if(e=N(e),O(this[e]))return this[e](t);return this}function ae(e,t){return(e%t+t)%t}function ue(e,t){if(isNaN(e)||isNaN(t))return NaN;var n=ae(t,12);return e+=(t-n)/12,1===n?ee(e)?29:28:31-n%7%2}function le(e,t){return e?n(this._months)?this._months[e.month()]:this._months[(this._months.isFormat||Co).test(t)?\"format\":\"standalone\"][e.month()]:n(this._months)?this._months:this._months.standalone}function ce(e,t){return e?n(this._monthsShort)?this._monthsShort[e.month()]:this._monthsShort[Co.test(t)?\"format\":\"standalone\"][e.month()]:n(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function pe(e,t,n){var i,o,r,s=e.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],i=0;i<12;++i)r=p([2e3,i]),this._shortMonthsParse[i]=this.monthsShort(r,\"\").toLocaleLowerCase(),this._longMonthsParse[i]=this.months(r,\"\").toLocaleLowerCase();return n?\"MMM\"===t?(o=vo.call(this._shortMonthsParse,s),-1!==o?o:null):(o=vo.call(this._longMonthsParse,s),-1!==o?o:null):\"MMM\"===t?-1!==(o=vo.call(this._shortMonthsParse,s))?o:(o=vo.call(this._longMonthsParse,s),-1!==o?o:null):-1!==(o=vo.call(this._longMonthsParse,s))?o:(o=vo.call(this._shortMonthsParse,s),-1!==o?o:null)}function he(e,t,n){var i,o,r;if(this._monthsParseExact)return pe.call(this,e,t,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),i=0;i<12;i++){if(o=p([2e3,i]),n&&!this._longMonthsParse[i]&&(this._longMonthsParse[i]=new RegExp(\"^\"+this.months(o,\"\").replace(\".\",\"\")+\"$\",\"i\"),this._shortMonthsParse[i]=new RegExp(\"^\"+this.monthsShort(o,\"\").replace(\".\",\"\")+\"$\",\"i\")),n||this._monthsParse[i]||(r=\"^\"+this.months(o,\"\")+\"|^\"+this.monthsShort(o,\"\"),this._monthsParse[i]=new RegExp(r.replace(\".\",\"\"),\"i\")),n&&\"MMMM\"===t&&this._longMonthsParse[i].test(e))return i;if(n&&\"MMM\"===t&&this._shortMonthsParse[i].test(e))return i;if(!n&&this._monthsParse[i].test(e))return i}}function de(e,t){var n;if(!e.isValid())return e;if(\"string\"==typeof t)if(/^\\d+$/.test(t))t=C(t);else if(t=e.localeData().monthsParse(t),!s(t))return e;return n=Math.min(e.date(),ue(e.year(),t)),e._d[\"set\"+(e._isUTC?\"UTC\":\"\")+\"Month\"](t,n),e}function fe(e){return null!=e?(de(this,e),t.updateOffset(this,!0),this):ie(this,\"Month\")}function me(){return ue(this.year(),this.month())}function ye(e){return this._monthsParseExact?(l(this,\"_monthsRegex\")||ve.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):(l(this,\"_monthsShortRegex\")||(this._monthsShortRegex=xo),this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex)}function ge(e){return this._monthsParseExact?(l(this,\"_monthsRegex\")||ve.call(this),e?this._monthsStrictRegex:this._monthsRegex):(l(this,\"_monthsRegex\")||(this._monthsRegex=_o),this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex)}function ve(){function e(e,t){return t.length-e.length}var t,n,i=[],o=[],r=[];for(t=0;t<12;t++)n=p([2e3,t]),i.push(this.monthsShort(n,\"\")),o.push(this.months(n,\"\")),r.push(this.months(n,\"\")),r.push(this.monthsShort(n,\"\"));for(i.sort(e),o.sort(e),r.sort(e),t=0;t<12;t++)i[t]=Y(i[t]),o[t]=Y(o[t]);for(t=0;t<24;t++)r[t]=Y(r[t]);this._monthsRegex=new RegExp(\"^(\"+r.join(\"|\")+\")\",\"i\"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp(\"^(\"+o.join(\"|\")+\")\",\"i\"),this._monthsShortStrictRegex=new RegExp(\"^(\"+i.join(\"|\")+\")\",\"i\")}function be(e,t,n,i,o,r,s){var a=new Date(e,t,n,i,o,r,s);return e<100&&e>=0&&isFinite(a.getFullYear())&&a.setFullYear(e),a}function Ce(e){var t=new Date(Date.UTC.apply(null,arguments));return e<100&&e>=0&&isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e),t}function Se(e,t,n){var i=7+t-n;return-(7+Ce(e,0,i).getUTCDay()-t)%7+i-1}function we(e,t,n,i,o){var r,s,a=(7+n-i)%7,u=Se(e,i,o),l=1+7*(t-1)+a+u;return l<=0?(r=e-1,s=Z(r)+l):l>Z(e)?(r=e+1,s=l-Z(e)):(r=e,s=l),{year:r,dayOfYear:s}}function xe(e,t,n){var i,o,r=Se(e.year(),t,n),s=Math.floor((e.dayOfYear()-r-1)/7)+1;return s<1?(o=e.year()-1,i=s+_e(o,t,n)):s>_e(e.year(),t,n)?(i=s-_e(e.year(),t,n),o=e.year()+1):(o=e.year(),i=s),{week:i,year:o}}function _e(e,t,n){var i=Se(e,t,n),o=Se(e+1,t,n);return(Z(e)-i+o)/7}function Oe(e){return xe(e,this._week.dow,this._week.doy).week}function Ee(){return this._week.dow}function Ae(){return this._week.doy}function Te(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),\"d\")}function Re(e){var t=xe(this,1,4).week;return null==e?t:this.add(7*(e-t),\"d\")}function Fe(e,t){return\"string\"!=typeof e?e:isNaN(e)?(e=t.weekdaysParse(e),\"number\"==typeof e?e:null):parseInt(e,10)}function Ie(e,t){return\"string\"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Me(e,t){return e?n(this._weekdays)?this._weekdays[e.day()]:this._weekdays[this._weekdays.isFormat.test(t)?\"format\":\"standalone\"][e.day()]:n(this._weekdays)?this._weekdays:this._weekdays.standalone}function Pe(e){return e?this._weekdaysShort[e.day()]:this._weekdaysShort}function De(e){return e?this._weekdaysMin[e.day()]:this._weekdaysMin}function $e(e,t,n){var i,o,r,s=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],i=0;i<7;++i)r=p([2e3,1]).day(i),this._minWeekdaysParse[i]=this.weekdaysMin(r,\"\").toLocaleLowerCase(),this._shortWeekdaysParse[i]=this.weekdaysShort(r,\"\").toLocaleLowerCase(),this._weekdaysParse[i]=this.weekdays(r,\"\").toLocaleLowerCase();return n?\"dddd\"===t?(o=vo.call(this._weekdaysParse,s),-1!==o?o:null):\"ddd\"===t?(o=vo.call(this._shortWeekdaysParse,s),-1!==o?o:null):(o=vo.call(this._minWeekdaysParse,s),-1!==o?o:null):\"dddd\"===t?-1!==(o=vo.call(this._weekdaysParse,s))?o:-1!==(o=vo.call(this._shortWeekdaysParse,s))?o:(o=vo.call(this._minWeekdaysParse,s),-1!==o?o:null):\"ddd\"===t?-1!==(o=vo.call(this._shortWeekdaysParse,s))?o:-1!==(o=vo.call(this._weekdaysParse,s))?o:(o=vo.call(this._minWeekdaysParse,s),-1!==o?o:null):-1!==(o=vo.call(this._minWeekdaysParse,s))?o:-1!==(o=vo.call(this._weekdaysParse,s))?o:(o=vo.call(this._shortWeekdaysParse,s),-1!==o?o:null)}function Ne(e,t,n){var i,o,r;if(this._weekdaysParseExact)return $e.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),i=0;i<7;i++){if(o=p([2e3,1]).day(i),n&&!this._fullWeekdaysParse[i]&&(this._fullWeekdaysParse[i]=new RegExp(\"^\"+this.weekdays(o,\"\").replace(\".\",\".?\")+\"$\",\"i\"),this._shortWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysShort(o,\"\").replace(\".\",\".?\")+\"$\",\"i\"),this._minWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysMin(o,\"\").replace(\".\",\".?\")+\"$\",\"i\")),this._weekdaysParse[i]||(r=\"^\"+this.weekdays(o,\"\")+\"|^\"+this.weekdaysShort(o,\"\")+\"|^\"+this.weekdaysMin(o,\"\"),this._weekdaysParse[i]=new RegExp(r.replace(\".\",\"\"),\"i\")),n&&\"dddd\"===t&&this._fullWeekdaysParse[i].test(e))return i;if(n&&\"ddd\"===t&&this._shortWeekdaysParse[i].test(e))return i;if(n&&\"dd\"===t&&this._minWeekdaysParse[i].test(e))return i;if(!n&&this._weekdaysParse[i].test(e))return i}}function Ve(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=Fe(e,this.localeData()),this.add(e-t,\"d\")):t}function ke(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,\"d\")}function Le(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=Ie(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function Be(e){return this._weekdaysParseExact?(l(this,\"_weekdaysRegex\")||je.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(l(this,\"_weekdaysRegex\")||(this._weekdaysRegex=Ro),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Qe(e){return this._weekdaysParseExact?(l(this,\"_weekdaysRegex\")||je.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(l(this,\"_weekdaysShortRegex\")||(this._weekdaysShortRegex=Fo),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Ue(e){return this._weekdaysParseExact?(l(this,\"_weekdaysRegex\")||je.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(l(this,\"_weekdaysMinRegex\")||(this._weekdaysMinRegex=Io),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function je(){function e(e,t){return t.length-e.length}var t,n,i,o,r,s=[],a=[],u=[],l=[];for(t=0;t<7;t++)n=p([2e3,1]).day(t),i=this.weekdaysMin(n,\"\"),o=this.weekdaysShort(n,\"\"),r=this.weekdays(n,\"\"),s.push(i),a.push(o),u.push(r),l.push(i),l.push(o),l.push(r);for(s.sort(e),a.sort(e),u.sort(e),l.sort(e),t=0;t<7;t++)a[t]=Y(a[t]),u[t]=Y(u[t]),l[t]=Y(l[t]);this._weekdaysRegex=new RegExp(\"^(\"+l.join(\"|\")+\")\",\"i\"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp(\"^(\"+u.join(\"|\")+\")\",\"i\"),this._weekdaysShortStrictRegex=new RegExp(\"^(\"+a.join(\"|\")+\")\",\"i\"),this._weekdaysMinStrictRegex=new RegExp(\"^(\"+s.join(\"|\")+\")\",\"i\")}function qe(){return this.hours()%12||12}function He(){return this.hours()||24}function ze(e,t){Q(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function We(e,t){return t._meridiemParse}function Ge(e){return\"p\"===(e+\"\").toLowerCase().charAt(0)}function Ye(e,t,n){return e>11?n?\"pm\":\"PM\":n?\"am\":\"AM\"}function Ke(e){return e?e.toLowerCase().replace(\"_\",\"-\"):e}function Je(e){for(var t,n,i,o,r=0;r<e.length;){for(o=Ke(e[r]).split(\"-\"),t=o.length,n=Ke(e[r+1]),n=n?n.split(\"-\"):null;t>0;){if(i=Xe(o.slice(0,t).join(\"-\")))return i;if(n&&n.length>=t&&S(o,n,!0)>=t-1)break;t--}r++}return null}function Xe(t){var n=null;if(!No[t]&&void 0!==e&&e&&e.exports)try{n=Mo._abbr;!function(){var e=new Error('Cannot find module \"./locale\"');throw e.code=\"MODULE_NOT_FOUND\",e}(),Ze(n)}catch(e){}return No[t]}function Ze(e,t){var n;return e&&(n=r(t)?nt(e):et(e,t))&&(Mo=n),Mo._abbr}function et(e,t){if(null!==t){var n=$o;if(t.abbr=e,null!=No[e])_(\"defineLocaleOverride\",\"use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info.\"),n=No[e]._config;else if(null!=t.parentLocale){if(null==No[t.parentLocale])return Vo[t.parentLocale]||(Vo[t.parentLocale]=[]),Vo[t.parentLocale].push({name:e,config:t}),null;n=No[t.parentLocale]._config}return No[e]=new T(A(n,t)),Vo[e]&&Vo[e].forEach(function(e){et(e.name,e.config)}),Ze(e),No[e]}return delete No[e],null}function tt(e,t){if(null!=t){var n,i,o=$o;i=Xe(e),null!=i&&(o=i._config),t=A(o,t),n=new T(t),n.parentLocale=No[e],No[e]=n,Ze(e)}else null!=No[e]&&(null!=No[e].parentLocale?No[e]=No[e].parentLocale:null!=No[e]&&delete No[e]);return No[e]}function nt(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return Mo;if(!n(e)){if(t=Xe(e))return t;e=[e]}return Je(e)}function it(){return Mi(No)}function ot(e){var t,n=e._a;return n&&-2===d(e).overflow&&(t=n[lo]<0||n[lo]>11?lo:n[co]<1||n[co]>ue(n[uo],n[lo])?co:n[po]<0||n[po]>24||24===n[po]&&(0!==n[ho]||0!==n[fo]||0!==n[mo])?po:n[ho]<0||n[ho]>59?ho:n[fo]<0||n[fo]>59?fo:n[mo]<0||n[mo]>999?mo:-1,d(e)._overflowDayOfYear&&(t<uo||t>co)&&(t=co),d(e)._overflowWeeks&&-1===t&&(t=yo),d(e)._overflowWeekday&&-1===t&&(t=go),d(e).overflow=t),e}function rt(e,t,n){return null!=e?e:null!=t?t:n}function st(e){var n=new Date(t.now());return e._useUTC?[n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate()]:[n.getFullYear(),n.getMonth(),n.getDate()]}function at(e){var t,n,i,o,r,s=[];if(!e._d){for(i=st(e),e._w&&null==e._a[co]&&null==e._a[lo]&&ut(e),null!=e._dayOfYear&&(r=rt(e._a[uo],i[uo]),(e._dayOfYear>Z(r)||0===e._dayOfYear)&&(d(e)._overflowDayOfYear=!0),n=Ce(r,0,e._dayOfYear),e._a[lo]=n.getUTCMonth(),e._a[co]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=s[t]=i[t];for(;t<7;t++)e._a[t]=s[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[po]&&0===e._a[ho]&&0===e._a[fo]&&0===e._a[mo]&&(e._nextDay=!0,e._a[po]=0),e._d=(e._useUTC?Ce:be).apply(null,s),o=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[po]=24),e._w&&void 0!==e._w.d&&e._w.d!==o&&(d(e).weekdayMismatch=!0)}}function ut(e){var t,n,i,o,r,s,a,u;if(t=e._w,null!=t.GG||null!=t.W||null!=t.E)r=1,s=4,n=rt(t.GG,e._a[uo],xe(Ot(),1,4).year),i=rt(t.W,1),((o=rt(t.E,1))<1||o>7)&&(u=!0);else{r=e._locale._week.dow,s=e._locale._week.doy;var l=xe(Ot(),r,s);n=rt(t.gg,e._a[uo],l.year),i=rt(t.w,l.week),null!=t.d?((o=t.d)<0||o>6)&&(u=!0):null!=t.e?(o=t.e+r,(t.e<0||t.e>6)&&(u=!0)):o=r}i<1||i>_e(n,r,s)?d(e)._overflowWeeks=!0:null!=u?d(e)._overflowWeekday=!0:(a=we(n,i,o,r,s),e._a[uo]=a.year,e._dayOfYear=a.dayOfYear)}function lt(e){var t,n,i,o,r,s,a=e._i,u=ko.exec(a)||Lo.exec(a);if(u){for(d(e).iso=!0,t=0,n=Qo.length;t<n;t++)if(Qo[t][1].exec(u[1])){o=Qo[t][0],i=!1!==Qo[t][2];break}if(null==o)return void(e._isValid=!1);if(u[3]){for(t=0,n=Uo.length;t<n;t++)if(Uo[t][1].exec(u[3])){r=(u[2]||\" \")+Uo[t][0];break}if(null==r)return void(e._isValid=!1)}if(!i&&null!=r)return void(e._isValid=!1);if(u[4]){if(!Bo.exec(u[4]))return void(e._isValid=!1);s=\"Z\"}e._f=o+(r||\"\")+(s||\"\"),gt(e)}else e._isValid=!1}function ct(e,t,n,i,o,r){var s=[pt(e),wo.indexOf(t),parseInt(n,10),parseInt(i,10),parseInt(o,10)];return r&&s.push(parseInt(r,10)),s}function pt(e){var t=parseInt(e,10);return t<=49?2e3+t:t<=999?1900+t:t}function ht(e){return e.replace(/\\([^)]*\\)|[\\n\\t]/g,\" \").replace(/(\\s\\s+)/g,\" \").trim()}function dt(e,t,n){if(e){if(Ao.indexOf(e)!==new Date(t[0],t[1],t[2]).getDay())return d(n).weekdayMismatch=!0,n._isValid=!1,!1}return!0}function ft(e,t,n){if(e)return Ho[e];if(t)return 0;var i=parseInt(n,10),o=i%100;return(i-o)/100*60+o}function mt(e){var t=qo.exec(ht(e._i));if(t){var n=ct(t[4],t[3],t[2],t[5],t[6],t[7]);if(!dt(t[1],n,e))return;e._a=n,e._tzm=ft(t[8],t[9],t[10]),e._d=Ce.apply(null,e._a),e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),d(e).rfc2822=!0}else e._isValid=!1}function yt(e){var n=jo.exec(e._i);if(null!==n)return void(e._d=new Date(+n[1]));lt(e),!1===e._isValid&&(delete e._isValid,mt(e),!1===e._isValid&&(delete e._isValid,t.createFromInputFallback(e)))}function gt(e){if(e._f===t.ISO_8601)return void lt(e);if(e._f===t.RFC_2822)return void mt(e);e._a=[],d(e).empty=!0;var n,i,o,r,s,a=\"\"+e._i,u=a.length,l=0;for(o=H(e._f,e._locale).match(Li)||[],n=0;n<o.length;n++)r=o[n],i=(a.match(W(r,e))||[])[0],i&&(s=a.substr(0,a.indexOf(i)),s.length>0&&d(e).unusedInput.push(s),a=a.slice(a.indexOf(i)+i.length),l+=i.length),Ui[r]?(i?d(e).empty=!1:d(e).unusedTokens.push(r),X(r,i,e)):e._strict&&!i&&d(e).unusedTokens.push(r);d(e).charsLeftOver=u-l,a.length>0&&d(e).unusedInput.push(a),e._a[po]<=12&&!0===d(e).bigHour&&e._a[po]>0&&(d(e).bigHour=void 0),d(e).parsedDateParts=e._a.slice(0),d(e).meridiem=e._meridiem,e._a[po]=vt(e._locale,e._a[po],e._meridiem),at(e),ot(e)}function vt(e,t,n){var i;return null==n?t:null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?(i=e.isPM(n),i&&t<12&&(t+=12),i||12!==t||(t=0),t):t}function bt(e){var t,n,i,o,r;if(0===e._f.length)return d(e).invalidFormat=!0,void(e._d=new Date(NaN));for(o=0;o<e._f.length;o++)r=0,t=y({},e),null!=e._useUTC&&(t._useUTC=e._useUTC),t._f=e._f[o],gt(t),f(t)&&(r+=d(t).charsLeftOver,r+=10*d(t).unusedTokens.length,d(t).score=r,(null==i||r<i)&&(i=r,n=t));c(e,n||t)}function Ct(e){if(!e._d){var t=V(e._i);e._a=u([t.year,t.month,t.day||t.date,t.hour,t.minute,t.second,t.millisecond],function(e){return e&&parseInt(e,10)}),at(e)}}function St(e){var t=new g(ot(wt(e)));return t._nextDay&&(t.add(1,\"d\"),t._nextDay=void 0),t}function wt(e){var t=e._i,i=e._f;return e._locale=e._locale||nt(e._l),null===t||void 0===i&&\"\"===t?m({nullInput:!0}):(\"string\"==typeof t&&(e._i=t=e._locale.preparse(t)),v(t)?new g(ot(t)):(a(t)?e._d=t:n(i)?bt(e):i?gt(e):xt(e),f(e)||(e._d=null),e))}function xt(e){var o=e._i;r(o)?e._d=new Date(t.now()):a(o)?e._d=new Date(o.valueOf()):\"string\"==typeof o?yt(e):n(o)?(e._a=u(o.slice(0),function(e){return parseInt(e,10)}),at(e)):i(o)?Ct(e):s(o)?e._d=new Date(o):t.createFromInputFallback(e)}function _t(e,t,r,s,a){var u={};return!0!==r&&!1!==r||(s=r,r=void 0),(i(e)&&o(e)||n(e)&&0===e.length)&&(e=void 0),u._isAMomentObject=!0,u._useUTC=u._isUTC=a,u._l=r,u._i=e,u._f=t,u._strict=s,St(u)}function Ot(e,t,n,i){return _t(e,t,n,i,!1)}function Et(e,t){var i,o;if(1===t.length&&n(t[0])&&(t=t[0]),!t.length)return Ot();for(i=t[0],o=1;o<t.length;++o)t[o].isValid()&&!t[o][e](i)||(i=t[o]);return i}function At(){return Et(\"isBefore\",[].slice.call(arguments,0))}function Tt(){return Et(\"isAfter\",[].slice.call(arguments,0))}function Rt(e){for(var t in e)if(-1===vo.call(Yo,t)||null!=e[t]&&isNaN(e[t]))return!1;for(var n=!1,i=0;i<Yo.length;++i)if(e[Yo[i]]){if(n)return!1;parseFloat(e[Yo[i]])!==C(e[Yo[i]])&&(n=!0)}return!0}function Ft(){return this._isValid}function It(){return Kt(NaN)}function Mt(e){var t=V(e),n=t.year||0,i=t.quarter||0,o=t.month||0,r=t.week||0,s=t.day||0,a=t.hour||0,u=t.minute||0,l=t.second||0,c=t.millisecond||0;this._isValid=Rt(t),this._milliseconds=+c+1e3*l+6e4*u+1e3*a*60*60,this._days=+s+7*r,this._months=+o+3*i+12*n,this._data={},this._locale=nt(),this._bubble()}function Pt(e){return e instanceof Mt}function Dt(e){return e<0?-1*Math.round(-1*e):Math.round(e)}function $t(e,t){Q(e,0,0,function(){var e=this.utcOffset(),n=\"+\";return e<0&&(e=-e,n=\"-\"),n+B(~~(e/60),2)+t+B(~~e%60,2)})}function Nt(e,t){var n=(t||\"\").match(e);if(null===n)return null;var i=n[n.length-1]||[],o=(i+\"\").match(Ko)||[\"-\",0,0],r=60*o[1]+C(o[2]);return 0===r?0:\"+\"===o[0]?r:-r}function Vt(e,n){var i,o;return n._isUTC?(i=n.clone(),o=(v(e)||a(e)?e.valueOf():Ot(e).valueOf())-i.valueOf(),i._d.setTime(i._d.valueOf()+o),t.updateOffset(i,!1),i):Ot(e).local()}function kt(e){return 15*-Math.round(e._d.getTimezoneOffset()/15)}function Lt(e,n,i){var o,r=this._offset||0;if(!this.isValid())return null!=e?this:NaN;if(null!=e){if(\"string\"==typeof e){if(null===(e=Nt(io,e)))return this}else Math.abs(e)<16&&!i&&(e*=60);return!this._isUTC&&n&&(o=kt(this)),this._offset=e,this._isUTC=!0,null!=o&&this.add(o,\"m\"),r!==e&&(!n||this._changeInProgress?tn(this,Kt(e-r,\"m\"),1,!1):this._changeInProgress||(this._changeInProgress=!0,t.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?r:kt(this)}function Bt(e,t){return null!=e?(\"string\"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}function Qt(e){return this.utcOffset(0,e)}function Ut(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(kt(this),\"m\")),this}function jt(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if(\"string\"==typeof this._i){var e=Nt(no,this._i);null!=e?this.utcOffset(e):this.utcOffset(0,!0)}return this}function qt(e){return!!this.isValid()&&(e=e?Ot(e).utcOffset():0,(this.utcOffset()-e)%60==0)}function Ht(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function zt(){if(!r(this._isDSTShifted))return this._isDSTShifted;var e={};if(y(e,this),e=wt(e),e._a){var t=e._isUTC?p(e._a):Ot(e._a);this._isDSTShifted=this.isValid()&&S(e._a,t.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Wt(){return!!this.isValid()&&!this._isUTC}function Gt(){return!!this.isValid()&&this._isUTC}function Yt(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}function Kt(e,t){var n,i,o,r=e,a=null;return Pt(e)?r={ms:e._milliseconds,d:e._days,M:e._months}:s(e)?(r={},t?r[t]=e:r.milliseconds=e):(a=Jo.exec(e))?(n=\"-\"===a[1]?-1:1,r={y:0,d:C(a[co])*n,h:C(a[po])*n,m:C(a[ho])*n,s:C(a[fo])*n,ms:C(Dt(1e3*a[mo]))*n}):(a=Xo.exec(e))?(n=\"-\"===a[1]?-1:(a[1],1),r={y:Jt(a[2],n),M:Jt(a[3],n),w:Jt(a[4],n),d:Jt(a[5],n),h:Jt(a[6],n),m:Jt(a[7],n),s:Jt(a[8],n)}):null==r?r={}:\"object\"==typeof r&&(\"from\"in r||\"to\"in r)&&(o=Zt(Ot(r.from),Ot(r.to)),r={},r.ms=o.milliseconds,r.M=o.months),i=new Mt(r),Pt(e)&&l(e,\"_locale\")&&(i._locale=e._locale),i}function Jt(e,t){var n=e&&parseFloat(e.replace(\",\",\".\"));return(isNaN(n)?0:n)*t}function Xt(e,t){var n={milliseconds:0,months:0};return n.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(n.months,\"M\").isAfter(t)&&--n.months,n.milliseconds=+t-+e.clone().add(n.months,\"M\"),n}function Zt(e,t){var n;return e.isValid()&&t.isValid()?(t=Vt(t,e),e.isBefore(t)?n=Xt(e,t):(n=Xt(t,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function en(e,t){return function(n,i){var o,r;return null===i||isNaN(+i)||(_(t,\"moment().\"+t+\"(period, number) is deprecated. Please use moment().\"+t+\"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.\"),r=n,n=i,i=r),n=\"string\"==typeof n?+n:n,o=Kt(n,i),tn(this,o,e),this}}function tn(e,n,i,o){var r=n._milliseconds,s=Dt(n._days),a=Dt(n._months);e.isValid()&&(o=null==o||o,a&&de(e,ie(e,\"Month\")+a*i),s&&oe(e,\"Date\",ie(e,\"Date\")+s*i),r&&e._d.setTime(e._d.valueOf()+r*i),o&&t.updateOffset(e,s||a))}function nn(e,t){var n=e.diff(t,\"days\",!0);return n<-6?\"sameElse\":n<-1?\"lastWeek\":n<0?\"lastDay\":n<1?\"sameDay\":n<2?\"nextDay\":n<7?\"nextWeek\":\"sameElse\"}function on(e,n){var i=e||Ot(),o=Vt(i,this).startOf(\"day\"),r=t.calendarFormat(this,o)||\"sameElse\",s=n&&(O(n[r])?n[r].call(this,i):n[r]);return this.format(s||this.localeData().calendar(r,this,Ot(i)))}function rn(){return new g(this)}function sn(e,t){var n=v(e)?e:Ot(e);return!(!this.isValid()||!n.isValid())&&(t=N(r(t)?\"millisecond\":t),\"millisecond\"===t?this.valueOf()>n.valueOf():n.valueOf()<this.clone().startOf(t).valueOf())}function an(e,t){var n=v(e)?e:Ot(e);return!(!this.isValid()||!n.isValid())&&(t=N(r(t)?\"millisecond\":t),\"millisecond\"===t?this.valueOf()<n.valueOf():this.clone().endOf(t).valueOf()<n.valueOf())}function un(e,t,n,i){return i=i||\"()\",(\"(\"===i[0]?this.isAfter(e,n):!this.isBefore(e,n))&&(\")\"===i[1]?this.isBefore(t,n):!this.isAfter(t,n))}function ln(e,t){var n,i=v(e)?e:Ot(e);return!(!this.isValid()||!i.isValid())&&(t=N(t||\"millisecond\"),\"millisecond\"===t?this.valueOf()===i.valueOf():(n=i.valueOf(),this.clone().startOf(t).valueOf()<=n&&n<=this.clone().endOf(t).valueOf()))}function cn(e,t){return this.isSame(e,t)||this.isAfter(e,t)}function pn(e,t){return this.isSame(e,t)||this.isBefore(e,t)}function hn(e,t,n){var i,o,r;if(!this.isValid())return NaN;if(i=Vt(e,this),!i.isValid())return NaN;switch(o=6e4*(i.utcOffset()-this.utcOffset()),t=N(t)){case\"year\":r=dn(this,i)/12;break;case\"month\":r=dn(this,i);break;case\"quarter\":r=dn(this,i)/3;break;case\"second\":r=(this-i)/1e3;break;case\"minute\":r=(this-i)/6e4;break;case\"hour\":r=(this-i)/36e5;break;case\"day\":r=(this-i-o)/864e5;break;case\"week\":r=(this-i-o)/6048e5;break;default:r=this-i}return n?r:b(r)}function dn(e,t){var n,i,o=12*(t.year()-e.year())+(t.month()-e.month()),r=e.clone().add(o,\"months\");return t-r<0?(n=e.clone().add(o-1,\"months\"),i=(t-r)/(r-n)):(n=e.clone().add(o+1,\"months\"),i=(t-r)/(n-r)),-(o+i)||0}function fn(){return this.clone().locale(\"en\").format(\"ddd MMM DD YYYY HH:mm:ss [GMT]ZZ\")}function mn(e){if(!this.isValid())return null;var t=!0!==e,n=t?this.clone().utc():this;return n.year()<0||n.year()>9999?q(n,t?\"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]\":\"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ\"):O(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this._d.valueOf()).toISOString().replace(\"Z\",q(n,\"Z\")):q(n,t?\"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]\":\"YYYY-MM-DD[T]HH:mm:ss.SSSZ\")}function yn(){if(!this.isValid())return\"moment.invalid(/* \"+this._i+\" */)\";var e=\"moment\",t=\"\";this.isLocal()||(e=0===this.utcOffset()?\"moment.utc\":\"moment.parseZone\",t=\"Z\");var n=\"[\"+e+'(\"]',i=0<=this.year()&&this.year()<=9999?\"YYYY\":\"YYYYYY\",o=t+'[\")]';return this.format(n+i+\"-MM-DD[T]HH:mm:ss.SSS\"+o)}function gn(e){e||(e=this.isUtc()?t.defaultFormatUtc:t.defaultFormat);var n=q(this,e);return this.localeData().postformat(n)}function vn(e,t){return this.isValid()&&(v(e)&&e.isValid()||Ot(e).isValid())?Kt({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function bn(e){return this.from(Ot(),e)}function Cn(e,t){return this.isValid()&&(v(e)&&e.isValid()||Ot(e).isValid())?Kt({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function Sn(e){return this.to(Ot(),e)}function wn(e){var t;return void 0===e?this._locale._abbr:(t=nt(e),null!=t&&(this._locale=t),this)}function xn(){return this._locale}function _n(e){switch(e=N(e)){case\"year\":this.month(0);case\"quarter\":case\"month\":this.date(1);case\"week\":case\"isoWeek\":case\"day\":case\"date\":this.hours(0);case\"hour\":this.minutes(0);case\"minute\":this.seconds(0);case\"second\":this.milliseconds(0)}return\"week\"===e&&this.weekday(0),\"isoWeek\"===e&&this.isoWeekday(1),\"quarter\"===e&&this.month(3*Math.floor(this.month()/3)),this}function On(e){return void 0===(e=N(e))||\"millisecond\"===e?this:(\"date\"===e&&(e=\"day\"),this.startOf(e).add(1,\"isoWeek\"===e?\"week\":e).subtract(1,\"ms\"))}function En(){return this._d.valueOf()-6e4*(this._offset||0)}function An(){return Math.floor(this.valueOf()/1e3)}function Tn(){return new Date(this.valueOf())}function Rn(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function Fn(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function In(){return this.isValid()?this.toISOString():null}function Mn(){return f(this)}function Pn(){return c({},d(this))}function Dn(){return d(this).overflow}function $n(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function Nn(e,t){Q(0,[e,e.length],0,t)}function Vn(e){return Qn.call(this,e,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function kn(e){return Qn.call(this,e,this.isoWeek(),this.isoWeekday(),1,4)}function Ln(){return _e(this.year(),1,4)}function Bn(){var e=this.localeData()._week;return _e(this.year(),e.dow,e.doy)}function Qn(e,t,n,i,o){var r;return null==e?xe(this,i,o).year:(r=_e(e,i,o),t>r&&(t=r),Un.call(this,e,t,n,i,o))}function Un(e,t,n,i,o){var r=we(e,t,n,i,o),s=Ce(r.year,0,r.dayOfYear);return this.year(s.getUTCFullYear()),this.month(s.getUTCMonth()),this.date(s.getUTCDate()),this}function jn(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}function qn(e){var t=Math.round((this.clone().startOf(\"day\")-this.clone().startOf(\"year\"))/864e5)+1;return null==e?t:this.add(e-t,\"d\")}function Hn(e,t){t[mo]=C(1e3*(\"0.\"+e))}function zn(){return this._isUTC?\"UTC\":\"\"}function Wn(){return this._isUTC?\"Coordinated Universal Time\":\"\"}function Gn(e){return Ot(1e3*e)}function Yn(){return Ot.apply(null,arguments).parseZone()}function Kn(e){return e}function Jn(e,t,n,i){var o=nt(),r=p().set(i,t);return o[n](r,e)}function Xn(e,t,n){if(s(e)&&(t=e,e=void 0),e=e||\"\",null!=t)return Jn(e,t,n,\"month\");var i,o=[];for(i=0;i<12;i++)o[i]=Jn(e,i,n,\"month\");return o}function Zn(e,t,n,i){\"boolean\"==typeof e?(s(t)&&(n=t,t=void 0),t=t||\"\"):(t=e,n=t,e=!1,s(t)&&(n=t,t=void 0),t=t||\"\");var o=nt(),r=e?o._week.dow:0;if(null!=n)return Jn(t,(n+r)%7,i,\"day\");var a,u=[];for(a=0;a<7;a++)u[a]=Jn(t,(a+r)%7,i,\"day\");return u}function ei(e,t){return Xn(e,t,\"months\")}function ti(e,t){return Xn(e,t,\"monthsShort\")}function ni(e,t,n){return Zn(e,t,n,\"weekdays\")}function ii(e,t,n){return Zn(e,t,n,\"weekdaysShort\")}function oi(e,t,n){return Zn(e,t,n,\"weekdaysMin\")}function ri(){var e=this._data;return this._milliseconds=lr(this._milliseconds),this._days=lr(this._days),this._months=lr(this._months),e.milliseconds=lr(e.milliseconds),e.seconds=lr(e.seconds),e.minutes=lr(e.minutes),e.hours=lr(e.hours),e.months=lr(e.months),e.years=lr(e.years),this}function si(e,t,n,i){var o=Kt(t,n);return e._milliseconds+=i*o._milliseconds,e._days+=i*o._days,e._months+=i*o._months,e._bubble()}function ai(e,t){return si(this,e,t,1)}function ui(e,t){return si(this,e,t,-1)}function li(e){return e<0?Math.floor(e):Math.ceil(e)}function ci(){var e,t,n,i,o,r=this._milliseconds,s=this._days,a=this._months,u=this._data;return r>=0&&s>=0&&a>=0||r<=0&&s<=0&&a<=0||(r+=864e5*li(hi(a)+s),s=0,a=0),u.milliseconds=r%1e3,e=b(r/1e3),u.seconds=e%60,t=b(e/60),u.minutes=t%60,n=b(t/60),u.hours=n%24,s+=b(n/24),o=b(pi(s)),a+=o,s-=li(hi(o)),i=b(a/12),a%=12,u.days=s,u.months=a,u.years=i,this}function pi(e){return 4800*e/146097}function hi(e){return 146097*e/4800}function di(e){if(!this.isValid())return NaN;var t,n,i=this._milliseconds;if(\"month\"===(e=N(e))||\"year\"===e)return t=this._days+i/864e5,n=this._months+pi(t),\"month\"===e?n:n/12;switch(t=this._days+Math.round(hi(this._months)),e){case\"week\":return t/7+i/6048e5;case\"day\":return t+i/864e5;case\"hour\":return 24*t+i/36e5;case\"minute\":return 1440*t+i/6e4;case\"second\":return 86400*t+i/1e3;case\"millisecond\":return Math.floor(864e5*t)+i;default:throw new Error(\"Unknown unit \"+e)}}function fi(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*C(this._months/12):NaN}function mi(e){return function(){return this.as(e)}}function yi(){return Kt(this)}function gi(e){return e=N(e),this.isValid()?this[e+\"s\"]():NaN}function vi(e){return function(){return this.isValid()?this._data[e]:NaN}}function bi(){return b(this.days()/7)}function Ci(e,t,n,i,o){return o.relativeTime(t||1,!!n,e,i)}function Si(e,t,n){var i=Kt(e).abs(),o=Or(i.as(\"s\")),r=Or(i.as(\"m\")),s=Or(i.as(\"h\")),a=Or(i.as(\"d\")),u=Or(i.as(\"M\")),l=Or(i.as(\"y\")),c=o<=Er.ss&&[\"s\",o]||o<Er.s&&[\"ss\",o]||r<=1&&[\"m\"]||r<Er.m&&[\"mm\",r]||s<=1&&[\"h\"]||s<Er.h&&[\"hh\",s]||a<=1&&[\"d\"]||a<Er.d&&[\"dd\",a]||u<=1&&[\"M\"]||u<Er.M&&[\"MM\",u]||l<=1&&[\"y\"]||[\"yy\",l];return c[2]=t,c[3]=+e>0,c[4]=n,Ci.apply(null,c)}function wi(e){return void 0===e?Or:\"function\"==typeof e&&(Or=e,!0)}function xi(e,t){return void 0!==Er[e]&&(void 0===t?Er[e]:(Er[e]=t,\"s\"===e&&(Er.ss=t-1),!0))}function _i(e){if(!this.isValid())return this.localeData().invalidDate();var t=this.localeData(),n=Si(this,!e,t);return e&&(n=t.pastFuture(+this,n)),t.postformat(n)}function Oi(e){return(e>0)-(e<0)||+e}function Ei(){if(!this.isValid())return this.localeData().invalidDate();var e,t,n,i=Ar(this._milliseconds)/1e3,o=Ar(this._days),r=Ar(this._months);e=b(i/60),t=b(e/60),i%=60,e%=60,n=b(r/12),r%=12;var s=n,a=r,u=o,l=t,c=e,p=i?i.toFixed(3).replace(/\\.?0+$/,\"\"):\"\",h=this.asSeconds();if(!h)return\"P0D\";var d=h<0?\"-\":\"\",f=Oi(this._months)!==Oi(h)?\"-\":\"\",m=Oi(this._days)!==Oi(h)?\"-\":\"\",y=Oi(this._milliseconds)!==Oi(h)?\"-\":\"\";return d+\"P\"+(s?f+s+\"Y\":\"\")+(a?f+a+\"M\":\"\")+(u?m+u+\"D\":\"\")+(l||c||p?\"T\":\"\")+(l?y+l+\"H\":\"\")+(c?y+c+\"M\":\"\")+(p?y+p+\"S\":\"\")}var Ai,Ti;Ti=Array.prototype.some?Array.prototype.some:function(e){for(var t=Object(this),n=t.length>>>0,i=0;i<n;i++)if(i in t&&e.call(this,t[i],i,t))return!0;return!1};var Ri=t.momentProperties=[],Fi=!1,Ii={};t.suppressDeprecationWarnings=!1,t.deprecationHandler=null;var Mi;Mi=Object.keys?Object.keys:function(e){var t,n=[];for(t in e)l(e,t)&&n.push(t);return n};var Pi={sameDay:\"[Today at] LT\",nextDay:\"[Tomorrow at] LT\",nextWeek:\"dddd [at] LT\",lastDay:\"[Yesterday at] LT\",lastWeek:\"[Last] dddd [at] LT\",sameElse:\"L\"},Di={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"},$i=/\\d{1,2}/,Ni={future:\"in %s\",past:\"%s ago\",s:\"a few seconds\",ss:\"%d seconds\",m:\"a minute\",mm:\"%d minutes\",h:\"an hour\",hh:\"%d hours\",d:\"a day\",dd:\"%d days\",M:\"a month\",MM:\"%d months\",y:\"a year\",yy:\"%d years\"},Vi={},ki={},Li=/(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Bi=/(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Qi={},Ui={},ji=/\\d/,qi=/\\d\\d/,Hi=/\\d{3}/,zi=/\\d{4}/,Wi=/[+-]?\\d{6}/,Gi=/\\d\\d?/,Yi=/\\d\\d\\d\\d?/,Ki=/\\d\\d\\d\\d\\d\\d?/,Ji=/\\d{1,3}/,Xi=/\\d{1,4}/,Zi=/[+-]?\\d{1,6}/,eo=/\\d+/,to=/[+-]?\\d+/,no=/Z|[+-]\\d\\d:?\\d\\d/gi,io=/Z|[+-]\\d\\d(?::?\\d\\d)?/gi,oo=/[+-]?\\d+(\\.\\d{1,3})?/,ro=/[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i,so={},ao={},uo=0,lo=1,co=2,po=3,ho=4,fo=5,mo=6,yo=7,go=8;Q(\"Y\",0,0,function(){var e=this.year();return e<=9999?\"\"+e:\"+\"+e}),Q(0,[\"YY\",2],0,function(){return this.year()%100}),Q(0,[\"YYYY\",4],0,\"year\"),Q(0,[\"YYYYY\",5],0,\"year\"),Q(0,[\"YYYYYY\",6,!0],0,\"year\"),$(\"year\",\"y\"),k(\"year\",1),z(\"Y\",to),z(\"YY\",Gi,qi),z(\"YYYY\",Xi,zi),z(\"YYYYY\",Zi,Wi),z(\"YYYYYY\",Zi,Wi),K([\"YYYYY\",\"YYYYYY\"],uo),K(\"YYYY\",function(e,n){n[uo]=2===e.length?t.parseTwoDigitYear(e):C(e)}),K(\"YY\",function(e,n){n[uo]=t.parseTwoDigitYear(e)}),K(\"Y\",function(e,t){t[uo]=parseInt(e,10)}),t.parseTwoDigitYear=function(e){return C(e)+(C(e)>68?1900:2e3)};var vo,bo=ne(\"FullYear\",!0);vo=Array.prototype.indexOf?Array.prototype.indexOf:function(e){var t;for(t=0;t<this.length;++t)if(this[t]===e)return t;return-1},Q(\"M\",[\"MM\",2],\"Mo\",function(){return this.month()+1}),Q(\"MMM\",0,0,function(e){return this.localeData().monthsShort(this,e)}),Q(\"MMMM\",0,0,function(e){return this.localeData().months(this,e)}),$(\"month\",\"M\"),k(\"month\",8),z(\"M\",Gi),z(\"MM\",Gi,qi),z(\"MMM\",function(e,t){return t.monthsShortRegex(e)}),z(\"MMMM\",function(e,t){return t.monthsRegex(e)}),K([\"M\",\"MM\"],function(e,t){t[lo]=C(e)-1}),K([\"MMM\",\"MMMM\"],function(e,t,n,i){var o=n._locale.monthsParse(e,i,n._strict);null!=o?t[lo]=o:d(n).invalidMonth=e});var Co=/D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/,So=\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),wo=\"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec\".split(\"_\"),xo=ro,_o=ro;Q(\"w\",[\"ww\",2],\"wo\",\"week\"),Q(\"W\",[\"WW\",2],\"Wo\",\"isoWeek\"),$(\"week\",\"w\"),$(\"isoWeek\",\"W\"),k(\"week\",5),k(\"isoWeek\",5),z(\"w\",Gi),z(\"ww\",Gi,qi),z(\"W\",Gi),z(\"WW\",Gi,qi),J([\"w\",\"ww\",\"W\",\"WW\"],function(e,t,n,i){t[i.substr(0,1)]=C(e)});var Oo={dow:0,doy:6};Q(\"d\",0,\"do\",\"day\"),Q(\"dd\",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),Q(\"ddd\",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),Q(\"dddd\",0,0,function(e){return this.localeData().weekdays(this,e)}),Q(\"e\",0,0,\"weekday\"),Q(\"E\",0,0,\"isoWeekday\"),$(\"day\",\"d\"),$(\"weekday\",\"e\"),$(\"isoWeekday\",\"E\"),k(\"day\",11),k(\"weekday\",11),k(\"isoWeekday\",11),z(\"d\",Gi),z(\"e\",Gi),z(\"E\",Gi),z(\"dd\",function(e,t){return t.weekdaysMinRegex(e)}),z(\"ddd\",function(e,t){return t.weekdaysShortRegex(e)}),z(\"dddd\",function(e,t){return t.weekdaysRegex(e)}),J([\"dd\",\"ddd\",\"dddd\"],function(e,t,n,i){var o=n._locale.weekdaysParse(e,i,n._strict);null!=o?t.d=o:d(n).invalidWeekday=e}),J([\"d\",\"e\",\"E\"],function(e,t,n,i){t[i]=C(e)});var Eo=\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),Ao=\"Sun_Mon_Tue_Wed_Thu_Fri_Sat\".split(\"_\"),To=\"Su_Mo_Tu_We_Th_Fr_Sa\".split(\"_\"),Ro=ro,Fo=ro,Io=ro;Q(\"H\",[\"HH\",2],0,\"hour\"),Q(\"h\",[\"hh\",2],0,qe),Q(\"k\",[\"kk\",2],0,He),Q(\"hmm\",0,0,function(){return\"\"+qe.apply(this)+B(this.minutes(),2)}),Q(\"hmmss\",0,0,function(){return\"\"+qe.apply(this)+B(this.minutes(),2)+B(this.seconds(),2)}),Q(\"Hmm\",0,0,function(){return\"\"+this.hours()+B(this.minutes(),2)}),Q(\"Hmmss\",0,0,function(){return\"\"+this.hours()+B(this.minutes(),2)+B(this.seconds(),2)}),ze(\"a\",!0),ze(\"A\",!1),$(\"hour\",\"h\"),k(\"hour\",13),z(\"a\",We),z(\"A\",We),z(\"H\",Gi),z(\"h\",Gi),z(\"k\",Gi),z(\"HH\",Gi,qi),z(\"hh\",Gi,qi),z(\"kk\",Gi,qi),z(\"hmm\",Yi),z(\"hmmss\",Ki),z(\"Hmm\",Yi),z(\"Hmmss\",Ki),K([\"H\",\"HH\"],po),K([\"k\",\"kk\"],function(e,t,n){var i=C(e);t[po]=24===i?0:i}),K([\"a\",\"A\"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),K([\"h\",\"hh\"],function(e,t,n){t[po]=C(e),d(n).bigHour=!0}),K(\"hmm\",function(e,t,n){var i=e.length-2;t[po]=C(e.substr(0,i)),t[ho]=C(e.substr(i)),d(n).bigHour=!0}),K(\"hmmss\",function(e,t,n){var i=e.length-4,o=e.length-2;t[po]=C(e.substr(0,i)),t[ho]=C(e.substr(i,2)),t[fo]=C(e.substr(o)),d(n).bigHour=!0}),K(\"Hmm\",function(e,t,n){var i=e.length-2;t[po]=C(e.substr(0,i)),t[ho]=C(e.substr(i))}),K(\"Hmmss\",function(e,t,n){var i=e.length-4,o=e.length-2;t[po]=C(e.substr(0,i)),t[ho]=C(e.substr(i,2)),t[fo]=C(e.substr(o))});var Mo,Po=/[ap]\\.?m?\\.?/i,Do=ne(\"Hours\",!0),$o={calendar:Pi,longDateFormat:Di,invalidDate:\"Invalid date\",ordinal:\"%d\",dayOfMonthOrdinalParse:$i,relativeTime:Ni,months:So,monthsShort:wo,week:Oo,weekdays:Eo,weekdaysMin:To,weekdaysShort:Ao,meridiemParse:Po},No={},Vo={},ko=/^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,Lo=/^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,Bo=/Z|[+-]\\d\\d(?::?\\d\\d)?/,Qo=[[\"YYYYYY-MM-DD\",/[+-]\\d{6}-\\d\\d-\\d\\d/],[\"YYYY-MM-DD\",/\\d{4}-\\d\\d-\\d\\d/],[\"GGGG-[W]WW-E\",/\\d{4}-W\\d\\d-\\d/],[\"GGGG-[W]WW\",/\\d{4}-W\\d\\d/,!1],[\"YYYY-DDD\",/\\d{4}-\\d{3}/],[\"YYYY-MM\",/\\d{4}-\\d\\d/,!1],[\"YYYYYYMMDD\",/[+-]\\d{10}/],[\"YYYYMMDD\",/\\d{8}/],[\"GGGG[W]WWE\",/\\d{4}W\\d{3}/],[\"GGGG[W]WW\",/\\d{4}W\\d{2}/,!1],[\"YYYYDDD\",/\\d{7}/]],Uo=[[\"HH:mm:ss.SSSS\",/\\d\\d:\\d\\d:\\d\\d\\.\\d+/],[\"HH:mm:ss,SSSS\",/\\d\\d:\\d\\d:\\d\\d,\\d+/],[\"HH:mm:ss\",/\\d\\d:\\d\\d:\\d\\d/],[\"HH:mm\",/\\d\\d:\\d\\d/],[\"HHmmss.SSSS\",/\\d\\d\\d\\d\\d\\d\\.\\d+/],[\"HHmmss,SSSS\",/\\d\\d\\d\\d\\d\\d,\\d+/],[\"HHmmss\",/\\d\\d\\d\\d\\d\\d/],[\"HHmm\",/\\d\\d\\d\\d/],[\"HH\",/\\d\\d/]],jo=/^\\/?Date\\((\\-?\\d+)/i,qo=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/,Ho={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};t.createFromInputFallback=x(\"value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.\",function(e){e._d=new Date(e._i+(e._useUTC?\" UTC\":\"\"))}),t.ISO_8601=function(){},t.RFC_2822=function(){};var zo=x(\"moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var e=Ot.apply(null,arguments);return this.isValid()&&e.isValid()?e<this?this:e:m()}),Wo=x(\"moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var e=Ot.apply(null,arguments);return this.isValid()&&e.isValid()?e>this?this:e:m()}),Go=function(){return Date.now?Date.now():+new Date},Yo=[\"year\",\"quarter\",\"month\",\"week\",\"day\",\"hour\",\"minute\",\"second\",\"millisecond\"];$t(\"Z\",\":\"),$t(\"ZZ\",\"\"),z(\"Z\",io),z(\"ZZ\",io),K([\"Z\",\"ZZ\"],function(e,t,n){n._useUTC=!0,n._tzm=Nt(io,e)});var Ko=/([\\+\\-]|\\d\\d)/gi;t.updateOffset=function(){};var Jo=/^(\\-|\\+)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/,Xo=/^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;Kt.fn=Mt.prototype,Kt.invalid=It;var Zo=en(1,\"add\"),er=en(-1,\"subtract\");t.defaultFormat=\"YYYY-MM-DDTHH:mm:ssZ\",t.defaultFormatUtc=\"YYYY-MM-DDTHH:mm:ss[Z]\";var tr=x(\"moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.\",function(e){return void 0===e?this.localeData():this.locale(e)});Q(0,[\"gg\",2],0,function(){return this.weekYear()%100}),Q(0,[\"GG\",2],0,function(){return this.isoWeekYear()%100}),Nn(\"gggg\",\"weekYear\"),Nn(\"ggggg\",\"weekYear\"),Nn(\"GGGG\",\"isoWeekYear\"),Nn(\"GGGGG\",\"isoWeekYear\"),$(\"weekYear\",\"gg\"),$(\"isoWeekYear\",\"GG\"),k(\"weekYear\",1),k(\"isoWeekYear\",1),z(\"G\",to),z(\"g\",to),z(\"GG\",Gi,qi),z(\"gg\",Gi,qi),z(\"GGGG\",Xi,zi),z(\"gggg\",Xi,zi),z(\"GGGGG\",Zi,Wi),z(\"ggggg\",Zi,Wi),J([\"gggg\",\"ggggg\",\"GGGG\",\"GGGGG\"],function(e,t,n,i){t[i.substr(0,2)]=C(e)}),J([\"gg\",\"GG\"],function(e,n,i,o){n[o]=t.parseTwoDigitYear(e)}),Q(\"Q\",0,\"Qo\",\"quarter\"),$(\"quarter\",\"Q\"),k(\"quarter\",7),z(\"Q\",ji),K(\"Q\",function(e,t){t[lo]=3*(C(e)-1)}),Q(\"D\",[\"DD\",2],\"Do\",\"date\"),$(\"date\",\"D\"),k(\"date\",9),z(\"D\",Gi),z(\"DD\",Gi,qi),z(\"Do\",function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient}),K([\"D\",\"DD\"],co),K(\"Do\",function(e,t){t[co]=C(e.match(Gi)[0])});var nr=ne(\"Date\",!0);Q(\"DDD\",[\"DDDD\",3],\"DDDo\",\"dayOfYear\"),$(\"dayOfYear\",\"DDD\"),k(\"dayOfYear\",4),z(\"DDD\",Ji),z(\"DDDD\",Hi),K([\"DDD\",\"DDDD\"],function(e,t,n){n._dayOfYear=C(e)}),Q(\"m\",[\"mm\",2],0,\"minute\"),$(\"minute\",\"m\"),k(\"minute\",14),z(\"m\",Gi),z(\"mm\",Gi,qi),K([\"m\",\"mm\"],ho);var ir=ne(\"Minutes\",!1);Q(\"s\",[\"ss\",2],0,\"second\"),$(\"second\",\"s\"),k(\"second\",15),z(\"s\",Gi),z(\"ss\",Gi,qi),K([\"s\",\"ss\"],fo);var or=ne(\"Seconds\",!1);Q(\"S\",0,0,function(){return~~(this.millisecond()/100)}),Q(0,[\"SS\",2],0,function(){return~~(this.millisecond()/10)}),Q(0,[\"SSS\",3],0,\"millisecond\"),Q(0,[\"SSSS\",4],0,function(){return 10*this.millisecond()}),Q(0,[\"SSSSS\",5],0,function(){return 100*this.millisecond()}),Q(0,[\"SSSSSS\",6],0,function(){return 1e3*this.millisecond()}),Q(0,[\"SSSSSSS\",7],0,function(){return 1e4*this.millisecond()}),Q(0,[\"SSSSSSSS\",8],0,function(){return 1e5*this.millisecond()}),Q(0,[\"SSSSSSSSS\",9],0,function(){return 1e6*this.millisecond()}),$(\"millisecond\",\"ms\"),k(\"millisecond\",16),z(\"S\",Ji,ji),z(\"SS\",Ji,qi),z(\"SSS\",Ji,Hi);var rr;for(rr=\"SSSS\";rr.length<=9;rr+=\"S\")z(rr,eo);for(rr=\"S\";rr.length<=9;rr+=\"S\")K(rr,Hn);var sr=ne(\"Milliseconds\",!1);Q(\"z\",0,0,\"zoneAbbr\"),Q(\"zz\",0,0,\"zoneName\");var ar=g.prototype;ar.add=Zo,ar.calendar=on,ar.clone=rn,ar.diff=hn,ar.endOf=On,ar.format=gn,ar.from=vn,ar.fromNow=bn,ar.to=Cn,ar.toNow=Sn,ar.get=re,ar.invalidAt=Dn,ar.isAfter=sn,ar.isBefore=an,ar.isBetween=un,ar.isSame=ln,ar.isSameOrAfter=cn,ar.isSameOrBefore=pn,ar.isValid=Mn,ar.lang=tr,ar.locale=wn,ar.localeData=xn,ar.max=Wo,ar.min=zo,ar.parsingFlags=Pn,ar.set=se,ar.startOf=_n,ar.subtract=er,ar.toArray=Rn,ar.toObject=Fn,ar.toDate=Tn,ar.toISOString=mn,ar.inspect=yn,ar.toJSON=In,ar.toString=fn,ar.unix=An,ar.valueOf=En,ar.creationData=$n,ar.year=bo,ar.isLeapYear=te,ar.weekYear=Vn,ar.isoWeekYear=kn,ar.quarter=ar.quarters=jn,ar.month=fe,ar.daysInMonth=me,ar.week=ar.weeks=Te,ar.isoWeek=ar.isoWeeks=Re,ar.weeksInYear=Bn,ar.isoWeeksInYear=Ln,ar.date=nr,ar.day=ar.days=Ve,ar.weekday=ke,ar.isoWeekday=Le,ar.dayOfYear=qn,ar.hour=ar.hours=Do,ar.minute=ar.minutes=ir,ar.second=ar.seconds=or,ar.millisecond=ar.milliseconds=sr,ar.utcOffset=Lt,ar.utc=Qt,ar.local=Ut,ar.parseZone=jt,ar.hasAlignedHourOffset=qt,ar.isDST=Ht,ar.isLocal=Wt,ar.isUtcOffset=Gt,ar.isUtc=Yt,ar.isUTC=Yt,ar.zoneAbbr=zn,ar.zoneName=Wn,ar.dates=x(\"dates accessor is deprecated. Use date instead.\",nr),ar.months=x(\"months accessor is deprecated. Use month instead\",fe),ar.years=x(\"years accessor is deprecated. Use year instead\",bo),ar.zone=x(\"moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/\",Bt),ar.isDSTShifted=x(\"isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information\",zt);var ur=T.prototype;ur.calendar=R,ur.longDateFormat=F,ur.invalidDate=I,ur.ordinal=M,ur.preparse=Kn,ur.postformat=Kn,ur.relativeTime=P,ur.pastFuture=D,ur.set=E,ur.months=le,ur.monthsShort=ce,ur.monthsParse=he,ur.monthsRegex=ge,ur.monthsShortRegex=ye,ur.week=Oe,ur.firstDayOfYear=Ae,ur.firstDayOfWeek=Ee,ur.weekdays=Me,ur.weekdaysMin=De,ur.weekdaysShort=Pe,ur.weekdaysParse=Ne,ur.weekdaysRegex=Be,ur.weekdaysShortRegex=Qe,ur.weekdaysMinRegex=Ue,ur.isPM=Ge,ur.meridiem=Ye,Ze(\"en\",{dayOfMonthOrdinalParse:/\\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===C(e%100/10)?\"th\":1===t?\"st\":2===t?\"nd\":3===t?\"rd\":\"th\")}}),t.lang=x(\"moment.lang is deprecated. Use moment.locale instead.\",Ze),t.langData=x(\"moment.langData is deprecated. Use moment.localeData instead.\",nt);var lr=Math.abs,cr=mi(\"ms\"),pr=mi(\"s\"),hr=mi(\"m\"),dr=mi(\"h\"),fr=mi(\"d\"),mr=mi(\"w\"),yr=mi(\"M\"),gr=mi(\"y\"),vr=vi(\"milliseconds\"),br=vi(\"seconds\"),Cr=vi(\"minutes\"),Sr=vi(\"hours\"),wr=vi(\"days\"),xr=vi(\"months\"),_r=vi(\"years\"),Or=Math.round,Er={ss:44,s:45,m:45,h:22,d:26,M:11},Ar=Math.abs,Tr=Mt.prototype;return Tr.isValid=Ft,Tr.abs=ri,Tr.add=ai,Tr.subtract=ui,Tr.as=di,Tr.asMilliseconds=cr,Tr.asSeconds=pr,Tr.asMinutes=hr,Tr.asHours=dr,Tr.asDays=fr,Tr.asWeeks=mr,Tr.asMonths=yr,Tr.asYears=gr,Tr.valueOf=fi,Tr._bubble=ci,Tr.clone=yi,Tr.get=gi,Tr.milliseconds=vr,Tr.seconds=br,Tr.minutes=Cr,Tr.hours=Sr,Tr.days=wr,Tr.weeks=bi,Tr.months=xr,Tr.years=_r,Tr.humanize=_i,Tr.toISOString=Ei,Tr.toString=Ei,Tr.toJSON=Ei,Tr.locale=wn,Tr.localeData=xn,Tr.toIsoString=x(\"toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)\",Ei),Tr.lang=tr,Q(\"X\",0,0,\"unix\"),Q(\"x\",0,0,\"valueOf\"),z(\"x\",to),z(\"X\",oo),K(\"X\",function(e,t,n){n._d=new Date(1e3*parseFloat(e,10))}),K(\"x\",function(e,t,n){n._d=new Date(C(e))}),t.version=\"2.20.1\",function(e){Ai=e}(Ot),t.fn=ar,t.min=At,t.max=Tt,t.now=Go,t.utc=p,t.unix=Gn,t.months=ei,t.isDate=a,t.locale=Ze,t.invalid=m,t.duration=Kt,t.isMoment=v,t.weekdays=ni,t.parseZone=Yn,t.localeData=nt,t.isDuration=Pt,t.monthsShort=ti,t.weekdaysMin=oi,t.defineLocale=et,t.updateLocale=tt,t.locales=it,t.weekdaysShort=ii,t.normalizeUnits=N,t.relativeTimeRounding=wi,t.relativeTimeThreshold=xi,t.calendarFormat=nn,t.prototype=ar,t.HTML5_FMT={DATETIME_LOCAL:\"YYYY-MM-DDTHH:mm\",DATETIME_LOCAL_SECONDS:\"YYYY-MM-DDTHH:mm:ss\",DATETIME_LOCAL_MS:\"YYYY-MM-DDTHH:mm:ss.SSS\",DATE:\"YYYY-MM-DD\",TIME:\"HH:mm\",TIME_SECONDS:\"HH:mm:ss\",TIME_MS:\"HH:mm:ss.SSS\",WEEK:\"YYYY-[W]WW\",MONTH:\"YYYY-MM\"},t})}).call(t,n(140)(e))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(110),o=function(){function e(){}return e.shouldDrawFacetSlider=function(e,t){return i.ResponsiveDropdownContent.isTargetInsideOpenedDropdown(t)||!this.isSmallFacetActivated(e)},e.isSmallTabsActivated=function(e){return e.hasClass(this.smallTabsClassName)},e.isSmallFacetActivated=function(e){return e.hasClass(this.smallFacetClassName)},e.isSmallRecommendationActivated=function(e){return e.hasClass(this.smallRecommendationClassName)},e.activateSmallTabs=function(e){e.addClass(this.smallTabsClassName)},e.deactivateSmallTabs=function(e){e.removeClass(this.smallTabsClassName)},e.activateSmallFacet=function(e){e.addClass(this.smallFacetClassName)},e.deactivateSmallFacet=function(e){e.removeClass(this.smallFacetClassName)},e.activateSmallRecommendation=function(e){e.addClass(this.smallRecommendationClassName)},e.deactivateSmallRecommendation=function(e){e.removeClass(this.smallRecommendationClassName)},e.smallTabsClassName=\"coveo-small-tabs\",e.smallFacetClassName=\"coveo-small-facets\",e.smallRecommendationClassName=\"coveo-small-recommendation\",e}();t.ResponsiveComponentsUtils=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=n(4),r=n(20),s=n(0),a=function(){function e(){this.selected=!1,this.excluded=!1,this.waitingForDelta=!1}return e.prototype.reset=function(){this.selected=!1,this.excluded=!1},e.prototype.updateCountsFromNewValue=function(e){i.Assert.exists(e),this.occurrences=e.occurrences,this.delta=e.delta,this.computedField=e.computedField},e.prototype.clone=function(){return this.computedField=void 0,this.delta=void 0,this},e.prototype.cloneWithZeroOccurrences=function(){return this.occurrences=0,this.clone()},e.prototype.cloneWithDelta=function(e,t){i.Assert.isLargerOrEqualsThan(0,e);var n=this.cloneWithZeroOccurrences();return n.delta=t,n.occurrences=e,n},e.prototype.getFormattedCount=function(){var e=void 0;return o.Utils.exists(this.delta)&&this.delta>0?e=\"+\"+r.format(this.delta,\"n0\"):this.occurrences>0&&(e=r.format(this.occurrences,\"n0\")),e},e.prototype.getFormattedComputedField=function(e){return 0!=this.computedField?r.format(this.computedField,e):void 0},e.create=function(t){if(s.isString(t))return e.createFromValue(t);if(s.isObject(t))return\"computedFieldResults\"in t?e.createFromGroupByValue(t):e.createFromFieldValue(t);throw new Error(\"Can't create value from \"+t)},e.createFromValue=function(t){i.Assert.isNonEmptyString(t);var n=new e;return n.value=t,n.lookupValue=t,n},e.createFromGroupByValue=function(t){i.Assert.exists(t),i.Assert.exists(t);var n=new e;return n.value=t.value,n.lookupValue=o.Utils.exists(t.lookupValue)?t.lookupValue:t.value,n.occurrences=t.numberOfResults,n.computedField=o.Utils.isNonEmptyArray(t.computedFieldResults)?t.computedFieldResults[0]:void 0,n.score=t.score,n},e.createFromFieldValue=function(t){i.Assert.exists(t);var n=new e;return n.value=t.value,n.lookupValue=t.lookupValue,n.occurrences=t.numberOfResults,n},e}();t.FacetValue=a;var u=function(){function e(e){o.Utils.exists(e)?this.values=s.map(e.values,function(e){return a.createFromGroupByValue(e)}):this.values=[]}return e.prototype.add=function(e){i.Assert.exists(e),i.Assert.check(!this.contains(e.value)),this.values.push(e)},e.prototype.remove=function(e){i.Assert.isNonEmptyString(e),e=e,this.values=s.filter(this.values,function(t){return t.value!=e})},e.prototype.size=function(){return this.values.length},e.prototype.isEmpty=function(){return 0==this.values.length},e.prototype.at=function(e){return i.Assert.isLargerOrEqualsThan(0,e),i.Assert.isSmallerThan(this.values.length,e),this.values[e]},e.prototype.get=function(e){return s.find(this.values,function(t){return t.value.toLowerCase()==e.toLowerCase()})},e.prototype.contains=function(e){return o.Utils.exists(this.get(e))},e.prototype.getAll=function(){return this.values},e.prototype.getSelected=function(){return s.filter(this.values,function(e){return e.selected})},e.prototype.getExcluded=function(){return s.filter(this.values,function(e){return e.excluded})},e.prototype.hasSelectedOrExcludedValues=function(){return 0!=this.getSelected().length||0!=this.getExcluded().length},e.prototype.hasSelectedAndExcludedValues=function(){return 0!=this.getSelected().length&&0!=this.getExcluded().length},e.prototype.hasOnlyExcludedValues=function(){return 0==this.getSelected().length&&0!=this.getExcluded().length},e.prototype.hasOnlySelectedValues=function(){return 0!=this.getSelected().length&&0==this.getExcluded().length},e.prototype.reset=function(){s.each(this.values,function(e){return e.reset()})},e.prototype.importActiveValuesFromOtherList=function(e){var t=this;i.Assert.exists(e),s.each(e.getSelected(),function(e){var n=t.get(e.value);o.Utils.exists(n)?n.selected=!0:t.values.push(e.cloneWithZeroOccurrences())}),s.each(e.getExcluded(),function(e){var n=t.get(e.value);if(o.Utils.exists(n))n.excluded=!0;else if(0!=e.occurrences){var i=e.occurrences,r=e.cloneWithZeroOccurrences();r.occurrences=i,t.values.push(r)}else t.values.push(e.cloneWithZeroOccurrences())})},e.prototype.updateCountsFromNewValues=function(e){i.Assert.exists(e),this.values=s.map(this.values,function(t){var n=e.get(t.value);return o.Utils.exists(n)?(t.updateCountsFromNewValue(n),t):null==t.occurrences?t.cloneWithZeroOccurrences():t})},e.prototype.updateDeltaWithFilteredFacetValues=function(e,t){var n=this;i.Assert.exists(e),s.each(this.values,function(i){var r=e.get(i.value);i.waitingForDelta=!1,o.Utils.exists(r)?i.occurrences-r.occurrences>0?n.hasOnlyExcludedValues()?(i.delta=null,i.occurrences=r.occurrences):i.delta=i.occurrences-r.occurrences:i.delta=null:i.selected||i.excluded||(t&&0==e.values.length?(i.delta=null,i.occurrences=0):i.delta=i.occurrences)})},e.prototype.mergeWithUnfilteredFacetValues=function(e){var t=this;i.Assert.exists(e);var n=[];s.each(e.values,function(e){var i=t.get(e.value);o.Utils.exists(i)?i.occurrences==e.occurrences?n.push(i):n.push(e.cloneWithDelta(e.occurrences,e.occurrences-i.occurrences)):n.push(e.cloneWithDelta(e.occurrences,e.occurrences))});var r=0;s.each(this.values,function(t){var i=e.get(t.value);if(o.Utils.exists(i)){for(var s=0;s<n.length;s++)if(n[s].value==t.value){r=s+1;break}}else(t.selected||t.excluded)&&(n.splice(r,0,t),r++)}),this.values=n},e.prototype.sortValuesDependingOnStatus=function(e){if(this.values=s.sortBy(this.values,function(e){return e.selected?1:e.excluded?3:2}),null!=e&&e<this.values.length){var t=this.getExcluded().length,n=this.values.splice(this.values.length-t,t);Array.prototype.splice.apply(this.values,[e-t,0].concat(n))}},e}();t.FacetValues=u},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(450),r=function(e){function t(t,n,i){var o=e.call(this,t,n)||this;return o.facet=t,o.facetValue=n,o.keepDisplayedValueNextTime=i,o}return i(t,e),t.prototype.bindEvent=function(){e.prototype.bindEvent.call(this,{displayNextTime:this.keepDisplayedValueNextTime,pinFacet:this.facet.options.preservePosition})},t}(o.ValueElement);t.FacetValueElement=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(48),o=n(48);t.notWordStart=\" ()[],$@'\\\"\",t.notInWord=\" ()[],:\",t.Basic={basicExpressions:[\"Word\",\"DoubleQuoted\"],grammars:{DoubleQuoted:'\"[NotDoubleQuote]\"',NotDoubleQuote:/[^\"]*/,SingleQuoted:\"'[NotSingleQuote]'\",NotSingleQuote:/[^']*/,Number:/-?(0|[1-9]\\d*)(\\.\\d+)?/,Word:function(e,n,r){var s=new RegExp(\"[^\"+t.notWordStart.replace(/(.)/g,\"\\\\$1\")+\"][^\"+t.notInWord.replace(/(.)/g,\"\\\\$1\")+\"]*\"),a=e.match(s);null!=a&&0!=a.index&&(a=null);var u=new i.Result(null!=a?a[0]:null,r,e);return u.isSuccess()&&n&&e.length>u.value.length?new o.EndOfInputResult(u):u}}}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.populateResultLayout=\"populateResultLayout\",e}();t.ResultLayoutEvents=i},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(5),r=n(74),s=n(4),a=n(20),u=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.decimals=0,t}return i(t,e),t}(r.Options),l=function(){function e(){}return e.currencyToString=function(e,t){if(s.Utils.isNullOrUndefined(e))return\"\";e=Number(e),o.Assert.isNumber(e),t=(new u).merge(t);var n=a.culture().numberFormat.currency,i=n.symbol;s.Utils.isNonEmptyString(t.symbol)&&(n.symbol=t.symbol);var r=a.format(e,\"c\"+t.decimals.toString());return n.symbol=i,r},e}();t.CurrencyUtils=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(5),r=function(){function e(t,n){this.element=n,o.Assert.isString(t),o.Assert.exists(n),this.element.addClass(\"coveo-\"+t+\"-dropdown-header\"),this.element.addClass(e.DEFAULT_CSS_CLASS_NAME)}return e.prototype.open=function(){this.element.addClass(e.ACTIVE_HEADER_CSS_CLASS_NAME)},e.prototype.close=function(){this.element.removeClass(e.ACTIVE_HEADER_CSS_CLASS_NAME)},e.prototype.cleanUp=function(){this.element.detach()},e.prototype.hide=function(){i.$$(this.element).addClass(\"coveo-hidden\")},e.prototype.show=function(){i.$$(this.element).removeClass(\"coveo-hidden\")},e.DEFAULT_CSS_CLASS_NAME=\"coveo-dropdown-header\",e.ACTIVE_HEADER_CSS_CLASS_NAME=\"coveo-dropdown-header-active\",e}();t.ResponsiveDropdownHeader=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(){}return e.evaluateFieldsToMatch=function(t,n){var o=!0;return!t||(i.each(t,function(t){var r=!1;t.values?i.each(t.values,function(i){if(!r){var o=n.raw[t.field],s=e.getFieldValueAsArray(o);r=e.isMatch(s,i)}}):r=null!=n.raw[t.field],o=o&&(t.reverseCondition?!r:r)}),o)},e.getFieldValueAsArray=function(e){return\"string\"==typeof e?[e]:e},e.isMatch=function(e,t){return void 0!=i.find(e,function(e){return e.toLowerCase()==t.toLowerCase()})},e}();t.TemplateFieldsEvaluator=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i,o=n(1);!function(e){e[e.TOP=0]=\"TOP\",e[e.MIDDLE=1]=\"MIDDLE\",e[e.BOTTOM=2]=\"BOTTOM\",e[e.INNERTOP=3]=\"INNERTOP\",e[e.INNERBOTTOM=4]=\"INNERBOTTOM\"}(i=t.PopupVerticalAlignment||(t.PopupVerticalAlignment={}));var r;!function(e){e[e.LEFT=0]=\"LEFT\",e[e.CENTER=1]=\"CENTER\",e[e.RIGHT=2]=\"RIGHT\",e[e.INNERLEFT=3]=\"INNERLEFT\",e[e.INNERRIGHT=4]=\"INNERRIGHT\"}(r=t.PopupHorizontalAlignment||(t.PopupHorizontalAlignment={}));var s=function(){function e(){}return e.positionPopup=function(t,n,i,r,s,a){void 0===a&&(a=0),t.style.position=\"absolute\",s&&o.$$(s).append(t),r.verticalOffset=r.verticalOffset?r.verticalOffset:0,r.horizontalOffset=r.horizontalOffset?r.horizontalOffset:0;var u=o.$$(n).offset();e.basicVerticalAlignment(u,t,n,r),e.basicHorizontalAlignment(u,t,n,r),e.finalAdjustement(o.$$(t).offset(),u,t,r);var l=e.getBoundary(t),c=e.getBoundary(i);if(a<2){var p=e.checkForOutOfBoundary(l,c);if(\"ok\"!=p.horizontal&&!0===r.horizontalClip){var h=t.offsetWidth;l.left<c.left&&(h-=c.left-l.left),l.right>c.right&&(h-=l.right-c.right),t.style.width=h+\"px\",p.horizontal=\"ok\"}if(\"ok\"!=p.vertical||\"ok\"!=p.horizontal){var d=e.alignInsideBoundary(r,p);e.positionPopup(t,n,i,d,s,a+1)}}},e.finalAdjustement=function(e,t,n,i){var r=o.$$(n).position();n.style.top=r.top+i.verticalOffset-(e.top-t.top)+\"px\",n.style.left=r.left+i.horizontalOffset-(e.left-t.left)+\"px\"},e.basicVerticalAlignment=function(e,t,n,o){switch(o.vertical){case i.TOP:e.top-=t.offsetHeight;break;case i.BOTTOM:e.top+=n.offsetHeight;break;case i.MIDDLE:e.top-=t.offsetHeight/3;case i.INNERTOP:break;case i.INNERBOTTOM:e.top-=t.offsetHeight-n.offsetHeight}},e.basicHorizontalAlignment=function(t,n,i,o){switch(o.horizontal){case r.LEFT:t.left-=n.offsetWidth;break;case r.RIGHT:t.left+=i.offsetWidth;break;case r.CENTER:t.left+=e.offSetToAlignCenter(n,i);break;case r.INNERLEFT:break;case r.INNERRIGHT:t.left-=n.offsetWidth-i.offsetWidth}},e.alignInsideBoundary=function(e,t){var n=e;return\"left\"==t.horizontal&&(n.horizontal=r.RIGHT),\"right\"==t.horizontal&&(n.horizontal=r.LEFT),\"top\"==t.vertical&&(n.vertical=i.BOTTOM),\"bottom\"==t.vertical&&(n.vertical=i.TOP),n},e.offSetToAlignCenter=function(e,t){return(t.offsetWidth-e.offsetWidth)/2},e.getBoundary=function(e){var t,n=o.$$(e).offset();return t=\"body\"==e.tagName.toLowerCase()?Math.max(e.scrollHeight,e.offsetHeight):\"html\"==e.tagName.toLowerCase()?Math.max(e.clientHeight,e.scrollHeight,e.offsetHeight):e.offsetHeight,{top:n.top,left:n.left,right:n.left+e.offsetWidth,bottom:n.top+t}},e.checkForOutOfBoundary=function(e,t){var n={vertical:\"ok\",horizontal:\"ok\"};return e.top<t.top&&(n.vertical=\"top\"),e.bottom>t.bottom&&(n.vertical=\"bottom\"),e.left<t.left&&(n.horizontal=\"left\"),e.right>t.right&&(n.horizontal=\"right\"),n},e}();t.PopupUtils=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(){}return e.addPrefixedEvent=function(e,t,n){i.each(this.prefixes,function(i){\"\"==i&&(t=t.toLowerCase()),e.addEventListener(i+t,n,!1)})},e.removePrefixedEvent=function(e,t,n){i.each(this.prefixes,function(i){\"\"==i&&(t=t.toLowerCase()),e.removeEventListener(i+t,n,!1)})},e.prefixes=[\"webkit\",\"moz\",\"MS\",\"o\",\"\"],e}();t.EventsUtils=o},function(e,t,n){\"use strict\";function i(){}function o(e,t){var n=new i;if(e instanceof i)e.each(function(e,t){n.set(t,e)});else if(Array.isArray(e)){var o,r=-1,s=e.length;if(null==t)for(;++r<s;)n.set(r,e[r]);else for(;++r<s;)n.set(t(o=e[r],r,e),o)}else if(e)for(var a in e)n.set(a,e[a]);return n}function r(){return{}}function s(e,t,n){e[t]=n}function a(){return p()}function u(e,t,n){e.set(t,n)}function l(){}function c(e,t){var n=new l;if(e instanceof l)e.each(function(e){n.add(e)});else if(e){var i=-1,o=e.length;if(null==t)for(;++i<o;)n.add(e[i]);else for(;++i<o;)n.add(t(e[i],i,e))}return n}i.prototype=o.prototype={constructor:i,has:function(e){return\"$\"+e in this},get:function(e){return this[\"$\"+e]},set:function(e,t){return this[\"$\"+e]=t,this},remove:function(e){var t=\"$\"+e;return t in this&&delete this[t]},clear:function(){for(var e in this)\"$\"===e[0]&&delete this[e]},keys:function(){var e=[];for(var t in this)\"$\"===t[0]&&e.push(t.slice(1));return e},values:function(){var e=[];for(var t in this)\"$\"===t[0]&&e.push(this[t]);return e},entries:function(){var e=[];for(var t in this)\"$\"===t[0]&&e.push({key:t.slice(1),value:this[t]});return e},size:function(){var e=0;for(var t in this)\"$\"===t[0]&&++e;return e},empty:function(){for(var e in this)if(\"$\"===e[0])return!1;return!0},each:function(e){for(var t in this)\"$\"===t[0]&&e(this[t],t.slice(1),this)}};var p=o,h=function(){function e(t,o,r,s){if(o>=l.length)return null!=n&&t.sort(n),null!=i?i(t):t;for(var a,u,c,h=-1,d=t.length,f=l[o++],m=p(),y=r();++h<d;)(c=m.get(a=f(u=t[h])+\"\"))?c.push(u):m.set(a,[u]);return m.each(function(t,n){s(y,n,e(t,o,r,s))}),y}function t(e,n){if(++n>l.length)return e;var o,r=c[n-1];return null!=i&&n>=l.length?o=e.entries():(o=[],e.each(function(e,i){o.push({key:i,values:t(e,n)})})),null!=r?o.sort(function(e,t){return r(e.key,t.key)}):o}var n,i,o,l=[],c=[];return o={object:function(t){return e(t,0,r,s)},map:function(t){return e(t,0,a,u)},entries:function(n){return t(e(n,0,a,u),0)},key:function(e){return l.push(e),o},sortKeys:function(e){return c[l.length-1]=e,o},sortValues:function(e){return n=e,o},rollup:function(e){return i=e,o}}},d=p.prototype;l.prototype=c.prototype={constructor:l,has:d.has,add:function(e){return e+=\"\",this[\"$\"+e]=e,this},remove:d.remove,clear:d.clear,values:d.keys,size:d.size,empty:d.empty,each:d.each};var f=c,m=function(e){var t=[];for(var n in e)t.push(n);return t},y=function(e){var t=[];for(var n in e)t.push(e[n]);return t},g=function(e){var t=[];for(var n in e)t.push({key:n,value:e[n]});return t};n.d(t,\"d\",function(){return h}),n.d(t,\"e\",function(){return f}),n.d(t,\"c\",function(){return p}),n.d(t,\"b\",function(){return m}),n.d(t,\"f\",function(){return y}),n.d(t,\"a\",function(){return g})},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(540);var o=n(11),r=n(92),s=n(3),a=n(175),u=n(213),l=n(5),c=n(15),p=n(13),h=n(6),d=n(1),f=n(10),m=n(7),y=n(8),g=n(2),v=n(481),b=n(482),C=function(e){function t(n,i,s){var l=e.call(this,n,t.ID,s)||this;l.element=n,l.options=i,l.bindings=s,n instanceof HTMLInputElement&&l.logger.error(\"Querybox cannot be used on an HTMLInputElement\"),l.options=y.ComponentOptions.initComponentOptions(n,t,i),new v.QueryboxOptionsProcessing(l).postProcess(),d.$$(l.element).toggleClass(\"coveo-query-syntax-disabled\",0==l.options.enableQuerySyntax),l.magicBox=u.createMagicBox(n,new a.Grammar(\"Query\",{Query:\"[Term*][Spaces?]\",Term:\"[Spaces?][Word]\",Spaces:/ +/,Word:/[^ ]+/}),{inline:!0});var m=d.$$(l.magicBox.element).find(\"input\");return m&&d.$$(m).setAttribute(\"aria-label\",l.options.placeholder||h.l(\"Search\")),l.bind.onRootElement(o.QueryEvents.buildingQuery,function(e){return l.handleBuildingQuery(e)}),l.bind.onRootElement(r.StandaloneSearchInterfaceEvents.beforeRedirect,function(){return l.updateQueryState()}),l.bind.onQueryState(c.MODEL_EVENTS.CHANGE_ONE,p.QUERY_STATE_ATTRIBUTES.Q,function(e){return l.handleQueryStateChanged(e)}),l.options.enableSearchAsYouType&&(d.$$(l.element).addClass(\"coveo-search-as-you-type\"),l.magicBox.onchange=function(){l.searchAsYouType()}),l.magicBox.onsubmit=function(){l.submit()},l.magicBox.onblur=function(){l.updateQueryState()},l.magicBox.onclear=function(){l.updateQueryState(),l.options.triggerQueryOnClear&&(l.usageAnalytics.logSearchEvent(f.analyticsActionCauseList.searchboxClear,{}),l.triggerNewQuery(!1))},l}return i(t,e),t.prototype.submit=function(){this.magicBox.clearSuggestion(),this.updateQueryState(),this.usageAnalytics.logSearchEvent(f.analyticsActionCauseList.searchboxSubmit,{}),this.triggerNewQuery(!1)},t.prototype.setText=function(e){this.magicBox.setText(e),this.updateQueryState()},t.prototype.clear=function(){this.magicBox.clear()},t.prototype.getText=function(){return this.magicBox.getText()},t.prototype.getResult=function(){return this.magicBox.getResult()},t.prototype.getDisplayedResult=function(){return this.magicBox.getDisplayedResult()},t.prototype.getCursor=function(){return this.magicBox.getCursor()},t.prototype.resultAtCursor=function(e){return this.magicBox.resultAtCursor(e)},t.prototype.handleBuildingQuery=function(e){l.Assert.exists(e),l.Assert.exists(e.queryBuilder),this.updateQueryState(),this.lastQuery=this.magicBox.getText(),new b.QueryboxQueryParameters(this.options).addParameters(e.queryBuilder,this.lastQuery)},t.prototype.triggerNewQuery=function(e){clearTimeout(this.searchAsYouTypeTimeout);var t=this.magicBox.getText();this.lastQuery!=t&&null!=t&&(this.lastQuery=t,this.queryController.executeQuery({searchAsYouType:e,logInActionsHistory:!0}))},t.prototype.updateQueryState=function(){this.queryStateModel.set(p.QueryStateModel.attributesEnum.q,this.magicBox.getText())},t.prototype.handleQueryStateChanged=function(e){l.Assert.exists(e);var t=e.value;t!=this.magicBox.getText()&&this.magicBox.setText(t)},t.prototype.searchAsYouType=function(){var e=this;clearTimeout(this.searchAsYouTypeTimeout),this.searchAsYouTypeTimeout=window.setTimeout(function(){e.usageAnalytics.logSearchAsYouType(f.analyticsActionCauseList.searchboxAsYouType,{}),e.triggerNewQuery(!0)},this.options.searchAsYouTypeDelay)},t.ID=\"Querybox\",t.doExport=function(){s.exportGlobally({Querybox:t,QueryboxQueryParameters:b.QueryboxQueryParameters})},t.options={enableSearchAsYouType:y.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"Advanced Options\"}),searchAsYouTypeDelay:y.ComponentOptions.buildNumberOption({defaultValue:50,min:0,section:\"Advanced Options\"}),enableQuerySyntax:y.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"Advanced Options\"}),enableWildcards:y.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"Advanced Options\"}),enableQuestionMarks:y.ComponentOptions.buildBooleanOption({defaultValue:!1,depend:\"enableWildcards\"}),enableLowercaseOperators:y.ComponentOptions.buildBooleanOption({defaultValue:!1,depend:\"enableQuerySyntax\"}),enablePartialMatch:y.ComponentOptions.buildBooleanOption({defaultValue:!1}),partialMatchKeywords:y.ComponentOptions.buildNumberOption({defaultValue:5,min:1,depend:\"enablePartialMatch\"}),partialMatchThreshold:y.ComponentOptions.buildStringOption({defaultValue:\"50%\",depend:\"enablePartialMatch\"}),triggerQueryOnClear:y.ComponentOptions.buildBooleanOption({defaultValue:!1})},t}(m.Component);t.Querybox=C,g.Initialization.registerAutoCreateComponent(C)},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(0);n(541);var r=n(3),s=function(){function e(e,t){var n=this;this.labelElement=i.$$(\"span\",{className:\"coveo-form-group-label\"}),this.labelElement.text(t),this.element=i.$$(\"fieldset\",{className:\"coveo-form-group\"},this.labelElement),o.each(e,function(e){n.element.append(e.build())})}return e.doExport=function(){r.exportGlobally({FormGroup:e})},e.prototype.build=function(){return this.element.el},e}();t.FormGroup=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(84);t.AdvancedSearchEvents=i.AdvancedSearchEvents;var o=n(63);t.AnalyticsEvents=o.AnalyticsEvents;var r=n(32);t.BreadcrumbEvents=r.BreadcrumbEvents;var s=n(97);t.DebugEvents=s.DebugEvents;var a=n(193);t.DistanceEvents=a.DistanceEvents;var u=n(16);t.InitializationEvents=u.InitializationEvents;var l=n(33);t.OmniboxEvents=l.OmniboxEvents;var c=n(93);t.PreferencesPanelEvents=c.PreferencesPanelEvents;var p=n(11);t.QueryEvents=p.QueryEvents;var h=n(31);t.ResultListEvents=h.ResultListEvents;var d=n(128);t.ResultLayoutEvents=d.ResultLayoutEvents;var f=n(83);t.SearchAlertsEvents=f.SearchAlertsEvents;var m=n(54);t.SettingsEvents=m.SettingsEvents;var y=n(138);t.SliderEvents=y.SliderEvents;var g=n(92);t.StandaloneSearchInterfaceEvents=g.StandaloneSearchInterfaceEvents},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.startSlide=\"startSlide\",e.duringSlide=\"duringSlide\",e.endSlide=\"endSlide\",e.graphValueSelected=\"graphValueSelected\",e}();t.SliderEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.hsvToRgb=function(e,t,n){var i,o,r,s=Math.floor(6*e),a=6*e-s,u=n*(1-t),l=n*(1-a*t),c=n*(1-(1-a)*t);switch(s%6){case 0:i=n,o=c,r=u;break;case 1:i=l,o=n,r=u;break;case 2:i=u,o=n,r=c;break;case 3:i=u,o=l,r=n;break;case 4:i=c,o=u,r=n;break;case 5:i=n,o=u,r=l}return[Math.round(255*i),Math.round(255*o),Math.round(255*r)]},e.rgbToHsv=function(e,t,n){e/=255,t/=255,n/=255;var i,o,r=Math.max(e,t,n),s=Math.min(e,t,n),a=r,u=r-s;if(o=0==r?0:u/r,r==s)i=0;else{switch(r){case e:i=(t-n)/u+(t<n?6:0);break;case t:i=(n-e)/u+2;break;case n:i=(e-t)/u+4}i/=6}return[i,o,a]},e}();t.ColorUtils=i},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,\"loaded\",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,\"id\",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=function(){function e(e){this.status=e.statusCode,this.message=e.data.message,this.name=this.type=e.data.type,this.queryExecutionReport=e.data.executionReport,i.Assert.isNumber(this.status),i.Assert.isNonEmptyString(this.message),i.Assert.isNonEmptyString(this.type)}return e}();t.QueryError=o},function(e,t,n){\"use strict\";function i(e){return e.json().then(function(t){return t.raw=e,t})}var o=n(143);n(295),t.Version=\"v15\",t.Endpoints={default:\"https://usageanalytics.coveo.com\",production:\"https://usageanalytics.coveo.com\",dev:\"https://usageanalyticsdev.coveo.com\",staging:\"https://usageanalyticsstaging.coveo.com\"};var r=function(){function e(e){if(void 0===e)throw new Error(\"You have to pass options to this constructor\");this.endpoint=e.endpoint||t.Endpoints.default,this.token=e.token,this.version=e.version||t.Version}return e.prototype.sendEvent=function(e,t){return fetch(this.getRestEndpoint()+\"/analytics/\"+e,{method:\"POST\",headers:this.getHeaders(),mode:\"cors\",body:JSON.stringify(t),credentials:\"include\"})},e.prototype.sendSearchEvent=function(e){return this.sendEvent(\"search\",e).then(i)},e.prototype.sendClickEvent=function(e){return this.sendEvent(\"click\",e).then(i)},e.prototype.sendCustomEvent=function(e){return this.sendEvent(\"custom\",e).then(i)},e.prototype.sendViewEvent=function(e){\"\"===e.referrer&&delete e.referrer;var t=new o.HistoryStore,n={name:\"PageView\",value:e.contentIdValue,time:JSON.stringify(new Date)};return t.addElement(n),this.sendEvent(\"view\",e).then(i)},e.prototype.getVisit=function(){return fetch(this.getRestEndpoint()+\"/analytics/visit\").then(i)},e.prototype.getHealth=function(){return fetch(this.getRestEndpoint()+\"/analytics/monitoring/health\").then(i)},e.prototype.getRestEndpoint=function(){return this.endpoint+\"/rest/\"+this.version},e.prototype.getHeaders=function(){var e={\"Content-Type\":\"application/json\"};return this.token&&(e.Authorization=\"Bearer \"+this.token),e},e}();t.Client=r,Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=r},function(e,t,n){\"use strict\";var i=n(96),o=n(144);t.STORE_KEY=\"__coveo.analytics.history\",t.MAX_NUMBER_OF_HISTORY_ELEMENTS=20,t.MIN_THRESHOLD_FOR_DUPLICATE_VALUE=6e4,t.MAX_VALUE_SIZE=75;var r=function(){function e(e){this.store=e||i.getAvailableStorage(),this.store instanceof i.CookieStorage||!o.hasCookieStorage()||(new i.CookieStorage).removeItem(t.STORE_KEY)}return e.prototype.addElement=function(e){e.internalTime=(new Date).getTime(),this.cropQueryElement(e);var t=this.getHistoryWithInternalTime();null!=t?this.isValidEntry(e)&&this.setHistory([e].concat(t)):this.setHistory([e])},e.prototype.getHistory=function(){var e=this.getHistoryWithInternalTime();return this.stripInternalTime(e)},e.prototype.getHistoryWithInternalTime=function(){try{return JSON.parse(this.store.getItem(t.STORE_KEY))}catch(e){return[]}},e.prototype.setHistory=function(e){try{this.store.setItem(t.STORE_KEY,JSON.stringify(e.slice(0,t.MAX_NUMBER_OF_HISTORY_ELEMENTS)))}catch(e){}},e.prototype.clear=function(){try{this.store.removeItem(t.STORE_KEY)}catch(e){}},e.prototype.getMostRecentElement=function(){var e=this.getHistoryWithInternalTime();if(null!=e){return e.sort(function(e,t){return null==e.internalTime&&null==t.internalTime?0:null==e.internalTime&&null!=t.internalTime?1:null!=e.internalTime&&null==t.internalTime?-1:t.internalTime-e.internalTime})[0]}return null},e.prototype.cropQueryElement=function(e){e.name&&\"query\"==e.name.toLowerCase()&&null!=e.value&&(e.value=e.value.slice(0,t.MAX_VALUE_SIZE))},e.prototype.isValidEntry=function(e){var n=this.getMostRecentElement();return!n||n.value!=e.value||e.internalTime-n.internalTime>t.MIN_THRESHOLD_FOR_DUPLICATE_VALUE},e.prototype.stripInternalTime=function(e){return e&&e.forEach(function(e,t,n){delete e.internalTime}),e},e}();t.HistoryStore=r,Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=r},function(e,t,n){\"use strict\";function i(){try{return\"localStorage\"in window&&null!==window.localStorage}catch(e){return!1}}function o(){try{return\"sessionStorage\"in window&&null!==window.sessionStorage}catch(e){return!1}}function r(){return navigator.cookieEnabled}function s(){return null!==document}function a(){return s()&&null!==document.location}t.hasLocalStorage=i,t.hasSessionStorage=o,t.hasCookieStorage=r,t.hasDocument=s,t.hasDocumentLocation=a},function(e,t,n){\"use strict\";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var r,s=n(9),a=n(0);!function(e){e.NO_RENEW_FUNCTION=\"NO_RENEW_FUNCTION\",e.REPEATED_FAILURES=\"REPEATED_FAILURES\"}(r=t.ACCESS_TOKEN_ERRORS||(t.ACCESS_TOKEN_ERRORS={}));var u=function(){function e(e,t){var n=this;this.token=e,this.renew=t,this.subscribers=[],this.logger=new s.Logger(this),this.triedRenewals=0,this.resetRenewalTriesAfterDelay=a.debounce(function(){n.triedRenewals=0},500,!1)}return e.prototype.isExpired=function(e){return null!=e&&419===e.statusCode},e.prototype.doRenew=function(e){return i(this,void 0,void 0,function(){var t,n,i=this;return o(this,function(o){switch(o.label){case 0:this.triedRenewals++,this.resetRenewalTriesAfterDelay(),o.label=1;case 1:return o.trys.push([1,3,,4]),this.verifyRenewSetup(),this.logger.info(\"Renewing expired access token\"),t=this,[4,this.renew()];case 2:return t.token=o.sent(),this.logger.info(\"Access token renewed\",this.token),this.subscribers.forEach(function(e){return e(i.token)}),[2,!0];case 3:switch(n=o.sent(),n.message){case r.REPEATED_FAILURES:this.logger.error(\"AccessToken tried to renew itself extremely fast in a short period of time\"),this.logger.error(\"There is most probably an authentication error, or a bad implementation of the custom renew function\"),this.logger.error(\"Inspect the developer console of your browser to find out the root cause\");break;case r.NO_RENEW_FUNCTION:this.logger.error(\"AccessToken tried to renew, but no function is configured on initialization to provide acess token renewal\"),this.logger.error(\"The option name is renewAccessToken on the SearchEndpoint class\")}return this.logger.error(\"Failed to renew access token\",n),e&&e(n),[2,!1];case 4:return[2]}})})},e.prototype.subscribeToRenewal=function(e){this.subscribers.push(e)},e.prototype.verifyRenewSetup=function(){if(null==this.renew)throw new Error(r.NO_RENEW_FUNCTION);if(this.triedRenewals>=5)throw new Error(r.REPEATED_FAILURES)},e}();t.AccessToken=u},function(e,t,n){\"use strict\";function i(){var e=String.locales||(String.locales={});e.en=s(e.en,a),String.toLocaleString.call(this,{en:a}),String.locale=\"en\",String.defaultLocale=\"en\",r.culture(\"en\")}function o(){var e=String.locales||(String.locales={});e.en=s(e.en,a),String.toLocaleString.call(this,{en:a}),String.locale=\"en\",String.defaultLocale=\"en\",r.culture(\"en\")}Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(20),s=function(e,t){var n={};for(var i in e)n[i]=e[i];for(var i in t)n[i]=t[i];return n},a={\"box user\":\"User\",\"filetype_box user\":\"User\",html:\"HTML File\",filetype_html:\"HTML File\",wiki:\"Wiki\",filetype_wiki:\"Wiki\",webscraperwebpage:\"Web Page\",filetype_webscraperwebpage:\"Web Page\",image:\"Image\",filetype_image:\"Image\",folder:\"Folder\",filetype_folder:\"Folder\",txt:\"Text\",filetype_txt:\"Text\",zip:\"Zip File\",filetype_zip:\"Zip File\",olefile:\"OLE file\",filetype_olefile:\"OLE file\",gmailmessage:\"Gmail Message\",filetype_gmailmessage:\"Gmail Message\",pdf:\"PDF File\",filetype_pdf:\"PDF File\",swf:\"Flash File\",filetype_swf:\"Flash File\",xml:\"XML File\",filetype_xml:\"XML File\",vsd:\"Visio\",filetype_vsd:\"Visio\",svg:\"SVG\",filetype_svg:\"SVG\",svm:\"Open Office\",filetype_svm:\"Open Office\",rssitem:\"RSS feed\",filetype_rssitem:\"RSS feed\",doc:\"Document\",filetype_doc:\"Document\",docx:\"Microsoft Word Document\",filetype_docx:\"Microsoft Word Document\",xls:\"Spreadsheet Document\",filetype_xls:\"Spreadsheet Document\",ppt:\"Presentation Document\",filetype_ppt:\"Presentation Document\",video:\"Video\",filetype_video:\"Video\",youtube:\"YouTube video\",filetype_youtube:\"YouTube video\",saleforceitem:\"Salesforce\",filetype_saleforceitem:\"Salesforce\",dynamicscrmitem:\"Dynamics CRM\",filetype_dynamicscrmitem:\"Dynamics CRM\",salesforceitem:\"Salesforce\",filetype_salesforceitem:\"Salesforce\",odt:\"Open Text Document\",filetype_odt:\"Open Text Document\",box:\"User\",filetype_box:\"User\",jiraissue:\"Jira Issue\",filetype_jiraissue:\"Jira Issue\",cfpage:\"Confluence Page\",filetype_cfpage:\"Confluence Page\",cfcomment:\"Confluence Comment\",filetype_cfcomment:\"Confluence Comment\",cfspace:\"Confluence Space\",filetype_cfspace:\"Confluence Space\",cfblogentry:\"Confluence Blog Entry\",filetype_cfblogentry:\"Confluence Blog Entry\",confluencespace:\"Confluence Space\",filetype_confluencespace:\"Confluence Space\",exchangemessage:\"Message\",filetype_exchangemessage:\"Message\",exchangeappointment:\"Appointment\",filetype_exchangeappointment:\"Appointment\",exchangenote:\"Note\",filetype_exchangenote:\"Note\",exchangetask:\"Task\",filetype_exchangetask:\"Task\",exchangeperson:\"Exchange User\",filetype_exchangeperson:\"Exchange User\",activedirperson:\"Active Directory User\",filetype_activedirperson:\"Active Directory User\",exchangeactivity:\"Activity\",filetype_exchangeactivity:\"Activity\",exchangecalendarmessage:\"Calendar Message\",filetype_exchangecalendarmessage:\"Calendar Message\",exchangedocument:\"Exchange Document\",filetype_exchangedocument:\"Exchange Document\",exchangedsn:\"DSN\",filetype_exchangedsn:\"DSN\",exchangefreebusy:\"Free/Busy\",filetype_exchangefreebusy:\"Free/Busy\",exchangegroup:\"Group\",filetype_exchangegroup:\"Group\",exchangerssfeed:\"RSS Feed\",filetype_exchangerssfeed:\"RSS Feed\",exchangejunkmessage:\"Junk Email\",filetype_exchangejunkmessage:\"Junk Email\",exchangeofficecom:\"Communications\",filetype_exchangeofficecom:\"Communications\",lithiummessage:\"Lithium Message\",filetype_lithiummessage:\"Lithium Message\",lithiumthread:\"Lithium Thread\",filetype_lithiumthread:\"Lithium Thread\",lithiumboard:\"Lithium Board\",filetype_lithiumboard:\"Lithium Board\",lithiumcategory:\"Lithium Category\",filetype_lithiumcategory:\"Lithium Category\",lithiumcommunity:\"Lithium Community\",filetype_lithiumcommunity:\"Lithium Community\",people:\"User\",objecttype_people:\"User\",message:\"Message\",objecttype_message:\"Message\",feed:\"RSS Feed\",objecttype_feed:\"RSS Feed\",thread:\"Thread\",objecttype_thread:\"Thread\",file:\"File\",objecttype_file:\"File\",board:\"Board\",objecttype_board:\"Board\",category:\"Category\",objecttype_category:\"Category\",account:\"Account\",objecttype_account:\"Account\",annotation:\"Note\",objecttype_annotation:\"Note\",campaign:\"Campaign\",objecttype_campaign:\"Campaign\",case:\"Case\",objecttype_case:\"Case\",contact:\"Contact\",objecttype_contact:\"Contact\",contract:\"Contract\",objecttype_contract:\"Contract\",event:\"Event\",objecttype_event:\"Event\",email:\"Email\",objecttype_email:\"Email\",goal:\"Goal\",objecttype_goal:\"Goal\",incident:\"Incident\",objecttype_incident:\"Incident\",invoice:\"Invoice\",objecttype_invoice:\"Invoice\",lead:\"Lead\",objecttype_lead:\"Lead\",list:\"List\",objecttype_list:\"Marketing List\",solution:\"Solution\",objecttype_solution:\"Solution\",report:\"Report\",objecttype_report:\"Report\",task:\"Task\",objecttype_task:\"Task\",user:\"User\",objecttype_user:\"User\",attachment:\"Attachment\",objecttype_attachment:\"Attachment\",casecomment:\"Case Comment\",objecttype_casecomment:\"Case Comment\",opportunity:\"Opportunity\",objecttype_opportunity:\"Opportunity\",opportunityproduct:\"Opportunity Product\",objecttype_opportunityproduct:\"Opportunity Product\",feeditem:\"Chatter\",objecttype_feeditem:\"Chatter\",feedcomment:\"Comment\",objecttype_feedcomment:\"Comment\",note:\"Note\",objecttype_note:\"Note\",product:\"Product\",objecttype_product:\"Product\",partner:\"Partner\",objecttype_partner:\"Partner\",queueitem:\"Queue Item\",objecttype_queueitem:\"Queue Item\",quote:\"Quote\",objecttype_quote:\"Quote\",salesliterature:\"Sales Literature\",objecttype_salesliterature:\"Sales Literature\",salesorder:\"Sales Order\",objecttype_salesorder:\"Sales Order\",service:\"Service\",objecttype_service:\"Service\",socialprofile:\"Social Profile\",objecttype_socialprofile:\"Social Profile\",kbdocumentation:\"Knowledge Document\",objecttype_kbdocumentation:\"Knowledge Document\",kbtechnicalarticle:\"Technical Documentation\",objecttype_kbtechnicalarticle:\"Technical Documentation\",kbsolution:\"Solution\",objecttype_kbsolution:\"Solution\",kbknowledgearticle:\"Knowledge Article\",objecttype_kbknowledgearticle:\"Knowledge Article\",kbattachment:\"Attachment\",objecttype_kbattachment:\"Attachment\",kbarticle:\"Article\",objecttype_kbarticle:\"Article\",kbarticlecomment:\"Article Comment\",objecttype_kbarticlecomment:\"Article Comment\",knowledgearticle:\"Knowledge Article\",objecttype_knowledgearticle:\"Knowledge Article\",topic:\"Topic\",objecttype_topic:\"Topic\",dashboard:\"Dashboard\",objecttype_dashboard:\"Dashboard\",contentversion:\"Document\",objecttype_contentversion:\"Document\",collaborationgroup:\"Collaboration group\",objecttype_collaborationgroup:\"Collaboration group\",phonecall:\"Phone call\",objecttype_phonecall:\"Phone call\",appointment:\"Appointment\",objecttype_appointment:\"Appointment\",sn_hr_core_case:\"HR Case\",filetype_sn_hr_core_case:\"HR Case\",sc_cat_item:\"Catalog Item\",filetype_sc_cat_item:\"Catalog Item\",sn_customerservice_case:\"Case\",filetype_sn_customerservice_case:\"Case\",kb_social_qa_answer:\"Answer\",filetype_kb_social_qa_answer:\"Answer\",kb_social_qa_question:\"Question\",filetype_kb_social_qa_question:\"Question\",kb_social_qa_comment:\"Comment\",filetype_kb_social_qa_comment:\"Comment\",filetype_incident:\"Incident\",kb_knowledge:\"Knowledge Article\",filetype_kb_knowledge:\"Knowledge Article\",spportal:\"Portal\",filetype_spportal:\"Portal\",spsite:\"SharePoint Site\",filetype_spsite:\"SharePoint Site\",spuserprofile:\"SharePoint User\",filetype_spuserprofile:\"SharePoint User\",sparea:\"Area\",filetype_sparea:\"Area\",spannouncement:\"Announcement\",filetype_spannouncement:\"Announcement\",spannouncementlist:\"Announcements\",filetype_spannouncementlist:\"Announcements\",spcontact:\"Contact\",filetype_spcontact:\"Contact\",spcontactlist:\"Contacts\",filetype_spcontactlist:\"Contacts\",spcustomlist:\"Custom Lists\",filetype_spcustomlist:\"Custom Lists\",spdiscussionboard:\"Discussion Board\",filetype_spdiscussionboard:\"Discussion Board\",spdiscussionboardlist:\"Discussion Boards\",filetype_spdiscussionboardlist:\"Discussion Boards\",spdocumentlibrarylist:\"Document Library\",filetype_spdocumentlibrarylist:\"Document Library\",spevent:\"Event\",filetype_spevent:\"Event\",speventlist:\"Events\",filetype_speventlist:\"Events\",spformlibrarylist:\"Form Library\",filetype_spformlibrarylist:\"Form Library\",spissue:\"Issue\",filetype_spissue:\"Issue\",spissuelist:\"Issues\",filetype_spissuelist:\"Issues\",splink:\"Link\",filetype_splink:\"Link\",splinklist:\"Links\",filetype_splinklist:\"Links\",sppicturelibrarylist:\"Picture Library\",filetype_sppicturelibrarylist:\"Picture Library\",spsurvey:\"Survey\",filetype_spsurvey:\"Survey\",spsurveylist:\"Surveys\",filetype_spsurveylist:\"Surveys\",sptask:\"Task\",filetype_sptask:\"Task\",sptasklist:\"Tasks\",filetype_sptasklist:\"Tasks\",spagenda:\"Agenda\",filetype_spagenda:\"Agenda\",spagendalist:\"Agendas\",filetype_spagendalist:\"Agendas\",spattendee:\"Attendee\",filetype_spattendee:\"Attendee\",spattendeelist:\"Attendees\",filetype_spattendeelist:\"Attendees\",spcustomgridlist:\"Custom Grids\",filetype_spcustomgridlist:\"Custom Grids\",spdecision:\"Decision\",filetype_spdecision:\"Decision\",spdecisionlist:\"Decisions\",filetype_spdecisionlist:\"Decisions\",spobjective:\"Objective\",filetype_spobjective:\"Objective\",spobjectivelist:\"Objectives\",filetype_spobjectivelist:\"Objectives\",sptextbox:\"Textbox\",filetype_sptextbox:\"Textbox\",sptextboxlist:\"Textbox list\",filetype_sptextboxlist:\"Textbox list\",spthingstobring:\"Thing To Bring\",filetype_spthingstobring:\"Thing To Bring\",spthingstobringlist:\"Things To Bring\",filetype_spthingstobringlist:\"Things To Bring\",sparealisting:\"Area Listing\",filetype_sparealisting:\"Area Listing\",spmeetingserie:\"Meeting series\",filetype_spmeetingserie:\"Meeting series\",spmeetingserielist:\"Meeting Series List\",filetype_spmeetingserielist:\"Meeting Series List\",spsitedirectory:\"Site Directory Item\",filetype_spsitedirectory:\"Site Directory Item\",spsitedirectorylist:\"Site Directory\",filetype_spsitedirectorylist:\"Site Directory\",spdatasource:\"Data Source\",filetype_spdatasource:\"Data Source\",spdatasourcelist:\"Data Source List\",filetype_spdatasourcelist:\"Data Source List\",splisttemplatecataloglist:\"List Template Gallery\",filetype_splisttemplatecataloglist:\"List Template Gallery\",spwebpartcataloglist:\"WebPart Gallery\",filetype_spwebpartcataloglist:\"WebPart Gallery\",spwebtemplatecataloglist:\"Site Template Gallery\",filetype_spwebtemplatecataloglist:\"Site Template Gallery\",spworkspacepagelist:\"Workspace Pages\",filetype_spworkspacepagelist:\"Workspace Pages\",spunknownlist:\"Custom List\",filetype_spunknownlist:\"Custom List\",spadministratortask:\"Administrator Task\",filetype_spadministratortask:\"Administrator Task\",spadministratortasklist:\"Administrator Tasks\",filetype_spadministratortasklist:\"Administrator Tasks\",spareadocumentlibrarylist:\"Area Document Library\",filetype_spareadocumentlibrarylist:\"Area Document Library\",spblogcategory:\"Blog Category\",filetype_spblogcategory:\"Blog Category\",spblogcategorylist:\"Blog Categories\",filetype_spblogcategorylist:\"Blog Categories\",spblogcomment:\"Blog Comment\",filetype_spblogcomment:\"Blog Comment\",spblogcommentlist:\"Blog Comments\",filetype_spblogcommentlist:\"Blog Comments\",spblogpost:\"Blog Post\",filetype_spblogpost:\"Blog Post\",spblogpostlist:\"Blog Posts\",filetype_spblogpostlist:\"Blog Posts\",spdataconnectionlibrarylist:\"Data Connection Library\",filetype_spdataconnectionlibrarylist:\"Data Connection Library\",spdistributiongroup:\"Distribution Group\",filetype_spdistributiongroup:\"Distribution Group\",spdistributiongrouplist:\"Distribution Groups\",filetype_spdistributiongrouplist:\"Distribution Groups\",spipfslist:\"InfoPath Forms Servers\",filetype_spipfslist:\"InfoPath Forms Servers\",spkeyperformanceindicator:\"Key Performance Indicator\",filetype_spkeyperformanceindicator:\"Key Performance Indicator\",spkeyperformanceindicatorlist:\"Key Performance Indicators\",filetype_spkeyperformanceindicatorlist:\"Key Performance Indicators\",splanguagesandtranslator:\"Languages and Translator\",filetype_splanguagesandtranslator:\"Languages and Translator\",splanguagesandtranslatorlist:\"Languages and Translators\",filetype_splanguagesandtranslatorlist:\"Languages and Translators\",spmasterpagescataloglist:\"Master Page Gallery\",filetype_spmasterpagescataloglist:\"Master Page Gallery\",spnocodeworkflowlibrarylist:\"No-code Workflow Libraries\",filetype_spnocodeworkflowlibrarylist:\"No-code Workflow Libraries\",spprojecttask:\"Project Task\",filetype_spprojecttask:\"Project Task\",spprojecttasklist:\"Project Tasks\",filetype_spprojecttasklist:\"Project Tasks\",sppublishingpageslibrarylist:\"Page Library\",filetype_sppublishingpageslibrarylist:\"Page Library\",spreportdocumentlibrarylist:\"Report Document Library\",filetype_spreportdocumentlibrarylist:\"Report Document Library\",spreportlibrarylist:\"Report Library\",filetype_spreportlibrarylist:\"Report Library\",spslidelibrarylist:\"Slide Library\",filetype_spslidelibrarylist:\"Slide Library\",sptab:\"Tabs\",filetype_sptab:\"Tabs\",sptablist:\"Tabs List\",filetype_sptablist:\"Tabs List\",sptranslationmanagementlibrarylist:\"Translation Management Library\",filetype_sptranslationmanagementlibrarylist:\"Translation Management Library\",spuserinformation:\"User Information\",filetype_spuserinformation:\"User Information\",spuserinformationlist:\"User Information List\",filetype_spuserinformationlist:\"User Information List\",spwikipagelibrarylist:\"Wiki Page Library\",filetype_spwikipagelibrarylist:\"Wiki Page Library\",spworkflowhistory:\"Workflow History\",filetype_spworkflowhistory:\"Workflow History\",spworkflowhistorylist:\"Workflow History List\",filetype_spworkflowhistorylist:\"Workflow History List\",spworkflowprocess:\"Custom Workflow Process\",filetype_spworkflowprocess:\"Custom Workflow Process\",spworkflowprocesslist:\"Custom Workflow Processes\",filetype_spworkflowprocesslist:\"Custom Workflow Processes\",sppublishingimageslibrarylist:\"Publishing Image Library\",filetype_sppublishingimageslibrarylist:\"Publishing Image Library\",spcirculation:\"Circulation\",filetype_spcirculation:\"Circulation\",spcirculationlist:\"Circulations\",filetype_spcirculationlist:\"Circulations\",spdashboardslibrarylist:\"Dashboards Library\",filetype_spdashboardslibrarylist:\"Dashboards Library\",spdataconnectionforperformancepointlibrarylist:\"PerformancePoint Data Connection Library\",filetype_spdataconnectionforperformancepointlibrarylist:\"PerformancePoint Data Connection Library\",sphealthreport:\"Health Report\",filetype_sphealthreport:\"Health Report\",sphealthreportlist:\"Health Reports\",filetype_sphealthreportlist:\"Health Reports\",sphealthrule:\"Health Rule\",filetype_sphealthrule:\"Health Rule\",sphealthrulelist:\"Health Rules\",filetype_sphealthrulelist:\"Health Rules\",spimedictionary:\"IME Dictionary\",filetype_spimedictionary:\"IME Dictionary\",spimedictionarylist:\"IME Dictionaries\",filetype_spimedictionarylist:\"IME Dictionaries\",spperformancepointcontent:\"PerformancePoint Content\",filetype_spperformancepointcontent:\"PerformancePoint Content\",spperformancepointcontentlist:\"PerformancePoint Contents\",filetype_spperformancepointcontentlist:\"PerformancePoint Contents\",spphonecallmemo:\"Phone Call Memo\",filetype_spphonecallmemo:\"Phone Call Memo\",spphonecallmemolist:\"Phone Call Memos\",filetype_spphonecallmemolist:\"Phone Call Memos\",sprecordlibrarylist:\"Record Library\",filetype_sprecordlibrarylist:\"Record Library\",spresource:\"Resource\",filetype_spresource:\"Resource\",spresourcelist:\"Resources\",filetype_spresourcelist:\"Resources\",spprocessdiagramslibrarylist:\"Process Diagram Library\",filetype_spprocessdiagramslibrarylist:\"Process Diagram Library\",spsitethemeslibrarylist:\"Site Theme Library\",filetype_spsitethemeslibrarylist:\"Site Theme Library\",spsolutionslibrarylist:\"Solution Library\",filetype_spsolutionslibrarylist:\"Solution Library\",spwfpublibrarylist:\"WFPUB Library\",filetype_spwfpublibrarylist:\"WFPUB Library\",spwhereabout:\"Whereabout\",filetype_spwhereabout:\"Whereabout\",spwhereaboutlist:\"Whereabouts\",filetype_spwhereaboutlist:\"Whereabouts\",spdocumentlink:\"Link to a Document\",filetype_spdocumentlink:\"Link to a Document\",spdocumentset:\"Document Set\",filetype_spdocumentset:\"Document Set\",spmicrofeedpost:\"Microfeed Post\",filetype_spmicrofeedpost:\"Microfeed Post\",spmicrofeedlist:\"Microfeed\",filetype_spmicrofeedlist:\"Microfeed\",splistfolder:\"List Folder\",filetype_splistfolder:\"List Folder\",youtubevideo:\"YouTube video\",filetype_youtubevideo:\"YouTube video\",youtubeplaylistitem:\"YouTube playlist item\",filetype_youtubeplaylistitem:\"YouTube playlist item\",youtubeplaylist:\"YouTube playlist\",filetype_youtubeplaylist:\"YouTube playlist\",Unknown:\"Unknown\",And:\"AND\",Authenticating:\"Authenticating {0}...\",Clear:\"Clear {0}\",CompleteQuery:\"Complete query\",Exclude:\"Exclude {0}\",EnterTag:\"Add Tag\",Next:\"Next\",Last:\"Last\",Link:\"Link\",Or:\"OR\",Previous:\"Previous\",QueryDidntMatchAnyDocuments:\"Your query did not match any documents.\",QueryException:\"Your query has an error: {0}.\",Me:\"Me\",Remove:\"Remove\",Search:\"Search\",SearchFor:\"Search for {0}\",SubmitSearch:\"Submit search\",ShareQuery:\"Share Query\",Preferences:\"Preferences\",LinkOpeningSettings:\"Link opening settings\",Reauthenticate:\"Reauthenticate {0}\",ResultsFilteringExpression:\"Results filtering expressions\",FiltersInYourPreferences:\"Filters in your preferences\",Create:\"Create\",SearchIn:\"Search in {0}\",Seconds:\"in {0} second<pl>s</pl>\",ShowingResultsOf:\"Result<pl>s</pl> {0}<pl>-{1}</pl> of {2}\",ShowingResultsOfWithQuery:\"Result<pl>s</pl> {0}<pl>-{1}</pl> of {2} for {3}\",SwitchTo:\"Switch to {0}\",Unexclude:\"Unexclude {0}\",ClearAllFilters:\"Clear All Filters\",SkipLogin:\"Skip login\",LoginInProgress:\"Login in progress, please wait ...\",Login:\"Log In\",GetStarted:\"Get Started\",More:\"More\",NMore:\"{0} more...\",Less:\"Fewer\",Settings:\"Settings\",Score:\"Score\",ScoreDescription:\"The score is computed from the number of occurrences as well as from the position in the result set.\",Occurrences:\"Occurrences\",OccurrencesDescription:\"Sort by number of occurrences, with values having the highest number appearing first.\",Label:\"Label\",Of:\"of\",LabelDescription:\"Sort alphabetically on the field values.\",Value:\"Value\",ValueDescription:\"Sort on the values of the first computed field\",AlphaAscending:\"Value Ascending\",AlphaDescending:\"Value Descending\",ChiSquare:\"Chi Square\",Nosort:\"No Sort\",NosortDescription:\"Do not sort the values. The values will be returned in a random order.\",RelativeFrequency:\"Relative Frequency\",RelativeFrequencyDescription:\"Sort based on the relative frequency of values. Less common values will appear higher.\",DateDistribution:\"Date distribution\",Custom:\"Custom\",CustomDescription:\"Sort based on a custom order\",ComputedField:\"Computed Field\",Ascending:\"Ascending\",Descending:\"Descending\",noResultFor:\"No results for {0}\",autoCorrectedQueryTo:\"Query was automatically corrected to {0}\",didYouMean:\"Did you mean: {0}\",SuggestedResults:\"Suggested Results\",SuggestedQueries:\"Suggested Queries\",MostRelevantItems:\"Most relevant items:\",AllItems:\"All items:\",ShowLess:\"Show less\",ShowMore:\"Show more\",HideFacet:\"Hide Facet\",ShowFacet:\"Show Facet\",AndOthers:\"and {0} other<pl>s</pl>\",Others:\"{0} other<pl>s</pl>\",MostRelevantPosts:\"Most Relevant Posts:\",CompleteThread:\"Complete Thread:\",ShowCompleteThread:\"Show Complete Thread\",ShowOnlyTopMatchingPosts:\"Show Only Top Matching Posts\",MostRelevantReplies:\"Most Relevant Replies:\",AllConversation:\"All Conversation:\",ShowAllConversation:\"Show All Conversation\",ShowAllReplies:\"Show All Replies\",ShowOnlyMostRelevantReplies:\"Show Only Most Relevant Replies\",Close:\"Close\",Open:\"Open\",OpenInOutlookWhenPossible:\"Open in Outlook (when possible)\",AlwaysOpenInNewWindow:\"Always open results in new window\",Quickview:\"Quick View\",NoQuickview:\"The Quick View for this document is unavailable\",ErrorReport:\"Error Report\",OopsError:\"Something went wrong.\",ProblemPersists:\"If the problem persists contact the administrator.\",GoBack:\"Go Back\",Reset:\"Reset\",Retry:\"Retry\",MoreInfo:\"More Information\",Username:\"Username\",Password:\"Password\",PostedBy:\"Posted by\",CannotConnect:\"Cannot connect to the server address.\",BadUserPass:\"Password does not match with username.\",PleaseEnterYourCredentials:\"Please enter your credentials for {0}.\",PleaseEnterYourSearchPage:\"Please enter your search page URL\",Collapse:\"Collapse\",Collapsable:\"Collapsible\",Expand:\"Expand\",CollapseFacet:\"Collapse {0} facet\",ExpandFacet:\"Expand {0} facet\",ShowLessFacetResults:\"Show fewer results for {0} facet\",ShowMoreFacetResults:\"Show more results for {0} facet\",ShowLessCategoryResults:\"Show fewer results for the {0} category\",ShowMoreCategoryResults:\"Show more results for the {0} category\",SearchFacetResults:\"Search for values in {0} facet\",Today:\"Today\",Yesterday:\"Yesterday\",Tomorrow:\"Tomorrow\",Duration:\"Duration: {0}\",IndexDuration:\"Index Duration: {0}\",ProxyDuration:\"Proxy Duration: {0}\",ClientDuration:\"Client Duration: {0}\",Unavailable:\"Unavailable\",Reply:\"Reply\",ReplyAll:\"Reply All\",Forward:\"Forward\",From:\"From\",Caption:\"Caption\",Expression:\"Expression\",Tab:\"Tab\",Tabs:\"Tabs\",EnterExpressionName:\"Enter expression name\",EnterExpressionToFilterWith:\"Enter expression to filter results with\",SelectTab:\"Select Tab\",SelectAll:\"Select All\",PageUrl:\"Search page URL\",ErrorSavingToDevice:\"Error while saving the information to your device\",ErrorReadingFromDevice:\"Error while reading the information from your device\",AppIntro:\"Speak with a product specialist who can answer your questions about Coveo and help you decide which Coveo solution is right for you. Or, try a live demo !\",TryDemo:\"Try the demo\",ContactUs:\"Contact us\",NewToCoveo:\"New to Coveo?\",LetUsHelpGetStarted:\"Let us help you get started\",LikesThis:\"{0} like<sn>s</sn> this.\",CannotConnectSearchPage:\"Cannot connect to your search page\",AreYouSureDeleteFilter:\"Are you sure you want to delete the filter {0} with the expression {1}\",OnlineHelp:\"Online Help\",Done:\"Done\",SaveFacetState:\"Save this facet state\",ClearFacetState:\"Clear facet state\",DisplayingTheOnlyMessage:\"Displaying the only message in this conversation\",NoNetworkConnection:\"No network connection\",UnknownConnection:\"Unknown connection\",EthernetConnection:\"Ethernet connection\",WiFi:\"WiFi connection\",CELL:\"Cellular connection\",CELL_2G:\"Cellular 2G connection\",CELL_3G:\"Cellular 3G connection\",CELL_4G:\"Cellular 4G connection\",Relevance:\"Relevance\",Date:\"Date\",Amount:\"Amount\",QueryExceptionNoException:\"No exception\",QueryExceptionInvalidSyntax:\"Invalid syntax\",QueryExceptionInvalidCustomField:\"Invalid custom field\",QueryExceptionInvalidDate:\"Invalid date\",QueryExceptionInvalidExactPhrase:\"Invalid exact phrase\",QueryExceptionInvalidDateOp:\"Invalid date operator\",QueryExceptionInvalidNear:\"Invalid NEAR operator\",QueryExceptionInvalidWeightedNear:\"Invalid weighted NEAR\",QueryExceptionInvalidTerm:\"Invalid term\",QueryExceptionTooManyTerms:\"Too many terms\",QueryExceptionWildcardTooGeneral:\"Wildcard too general\",QueryExceptionInvalidSortField:\"Invalid sort field\",QueryExceptionInvalidSmallStringOp:\"Invalid small string operator\",QueryExceptionRequestedResultsMax:\"Requested results maximum\",QueryExceptionAggregatedMirrorDead:\"Aggregated mirror is offline\",QueryExceptionAggregatedMirrorQueryTimeOut:\"Aggregated mirror query timeout\",QueryExceptionAggregatedMirrorInvalidBuildNumber:\"Aggregated mirror invalid build number\",QueryExceptionAggregatedMirrorCannotConnect:\"Aggregated mirror cannot connect\",QueryExceptionNotEnoughLeadingCharsWildcard:\"Not enough leading character wildcard\",QueryExceptionSecurityInverterNotFound:\"Security inverter not found\",QueryExceptionSecurityInverterAccessDenied:\"Security inverter access denied\",QueryExceptionAggregatedMirrorCannotImpersonate:\"Aggregated mirror cannot impersonate\",QueryExceptionUnexpected:\"Unexpected\",QueryExceptionAccessDenied:\"Access denied\",QueryExceptionSuperUserTokenInvalid:\"Super user token invalid\",QueryExceptionSuperUserTokenExpired:\"Super user token is expired\",QueryExceptionLicenseQueriesExpired:\"Queries license expired\",QueryExceptionLicenseSuperUserTokenNotSupported:\"License super user token not supported\",QueryExceptionInvalidSession:\"Invalid session\",QueryExceptionInvalidDocument:\"Invalid document\",QueryExceptionSearchDisabled:\"Search disabled\",FileType:\"File type\",ShowAttachment:\"Show attachment\",OnFeed:\"on {0}'s feed.\",Author:\"Author\",NoTitle:\"No title\",CurrentSelections:\"Current selections\",AllContent:\"All content\",CancelLastAction:\"Cancel last action\",SearchTips:\"Search tips\",CheckSpelling:\"Check the spelling of your keywords.\",TryUsingFewerKeywords:\"Try using fewer, different or more general keywords.\",SelectFewerFilters:\"Select fewer filters to broaden your search.\",Document:\"Document\",Time:\"Time\",StartDate:\"Start Date\",StartTime:\"Start Time\",DurationTitle:\"Duration\",UserQuery:\"User query\",ShowUserActions:\"Show User Actions\",NoData:\"No data available\",EventType:\"Event type\",GoToFullSearch:\"Full search\",GoToEdition:\"Customize Panel\",RemoveContext:\"Remove context\",BoxAttachToCase:\"Attach to case\",AttachToCase:\"Attach to case\",Attach:\"Attach\",Attached:\"Attached\",Detach:\"Detach\",Details:\"Details\",AdditionalFilters:\"Additional filters\",SelectNonContextualSearch:\"Remove the context from the current record to broaden your search\",CopyPasteToSupport:\"Copy paste this message to the Coveo Support team for more information.\",FollowQueryDescription:\"Alert me for changes to the search results of this query.\",SearchAlerts_Panel:\"Manage Alerts\",SearchAlerts_PanelDescription:\"View and manage your search alerts.\",SearchAlerts_PanelNoSearchAlerts:\"You have no subscriptions.\",SearchAlerts_Fail:\"The Search Alerts service is currently unavailable.\",SearchAlerts_Type:\"Type\",SearchAlerts_Content:\"Content\",SearchAlerts_Actions:\"Action\",EmptyQuery:\"<empty>\",SearchAlerts_Type_followQuery:\"Query\",SearchAlerts_Type_followDocument:\"Item\",SearchAlerts_unFollowing:\"Stop Following\",SearchAlerts_follow:\"Follow\",SearchAlerts_followed:\"Followed\",SearchAlerts_followQuery:\"Follow Query\",Subscription_StopFollowingQuery:\"Stop Following Query\",SearchAlerts_Frequency:\"When\",SubscriptionsManageSubscriptions:\"Manage Alerts\",SubscriptionsMessageFollowQuery:\"You will receive alerts when the query <b>{0}</b> returns new or updated items.\",SubscriptionsMessageFollow:\"You will receive alerts for changes to the item <b>{0}</b>.\",Expiration:\"Expiration\",Monthly:\"Monthly\",Daily:\"Daily\",Monday:\"Monday\",Tuesday:\"Tuesday\",Wednesday:\"Wednesday\",Thursday:\"Thursday\",Friday:\"Friday\",Saturday:\"Saturday\",Sunday:\"Sunday\",NextDay:\"Next {0}\",LastDay:\"Last {0}\",StartTypingCaseForSuggestions:\"Describe your problem to see possible solutions\",ExportToExcel:\"Export to Excel\",ExportToExcelDescription:\"Export search results to Excel\",CaseCreationNoResults:\"No recommended solutions were found\",SortBy:\"Sort by\",BoxCreateArticle:\"Create Article\",Facets:\"Facets\",AdvancedSearch:\"Advanced Search\",Keywords:\"Keywords\",AllTheseWords:\"All these words\",ExactPhrase:\"This exact phrase\",AnyOfTheseWords:\"Any of these words\",NoneOfTheseWords:\"None of these words\",Anytime:\"Anytime\",InTheLast:\"In the last\",Days:\"days\",Months:\"months\",Month:\"Month\",Year:\"Year\",Between:\"Between\",Language:\"Language\",Size:\"Size\",AtLeast:\"at least\",AtMost:\"at most\",Contains:\"contains\",DoesNotContain:\"does not contain\",Matches:\"matches\",Bytes:\"bytes\",card:\"Card\",table:\"Table\",ResultLinks:\"Result links\",EnableQuerySyntax:\"Enable query syntax\",On:\"On\",Off:\"Off\",Automatic:\"Automatic\",ResultsPerPage:\"Results per page\",PreviousMonth:\"Previous month\",NextMonth:\"Next month\",Title:\"Title\",FiltersInAdvancedSearch:\"Filters in Advanced Search\",NoEndpoints:\"{0} has no registered endpoints.\",InvalidToken:\"The token used is invalid.\",AddSources:\"You will need to add sources in your index, or wait for the created sources to finish indexing.\",TryAgain:\"Please try again.\",CoveoOnlineHelp:\"Coveo Online Help\",CannotAccess:\"{0} cannot be accessed.\",CoveoOrganization:\"Coveo Organization\",SearchAPIDuration:\"Search API Duration: {0}\",LastUpdated:\"Last updated\",AllDates:\"All dates\",WithinLastDay:\"Within last day\",WithinLastWeek:\"Within last week\",WithinLastMonth:\"Within last month\",WithinLastYear:\"Within last year\",RelevanceInspector:\"Relevance Inspector\",KeywordInCategory:'{0} <span class=\"coveo-omnibox-suggestion-category\">in {1}</span>',ResultCount:\"{0} result<pl>s</pl>\",ShowingResults:\"{0} result<pl>s</pl>\",ShowingResultsWithQuery:\"{0} result<pl>s</pl> for {1}\",NumberOfVideos:\"Number of videos\",AllCategories:\"All Categories\",Recommended:\"Recommended\",Featured:\"Featured\",CoveoHomePage:\"Coveo Home page\",SizeValue:\"Size value\",UnitMeasurement:\"Unit of measurement\",Toggle:\"Toggle\",FilterOn:\"Filter on {0}\",RemoveFilterOn:\"Remove filter on {0}\",Enter:\"Enter\",InsertAQuery:\"Insert a query\",PressEnterToSend:\"Press enter to send\",SortResultsBy:\"Sort results by {0}\",DisplayResultsAs:\"Display results as {0}\",FacetTitle:\"{0} facet\",SelectValueWithResultCount:\"Select {0} with {1}\",UnselectValueWithResultCount:\"Unselect {0} with {1}\",ExcludeValueWithResultCount:\"Exclude {0} with {1}\",UnexcludeValueWithResultCount:\"Unexclude {0} with {1}\",PageNumber:\"Page {0}\",DisplayResultsPerPage:\"Display {0} results per page\",GroupByAndFacetRequestsCannotCoexist:\"The query is invalid because it contains both Group By and Facet requests. Ensure that the search interface does not initialize DynamicFacet components alongside Facet components (or alongside any component extending the Facet component, such as FacetRange or FacetSlider).\",MustContain:\"Must contain:\",Missing:\"Missing:\",Filters:\"Filters\",FiltersDropdown:\"Filters dropdown\",OpenFiltersDropdown:\"Open the filters dropdown\",CloseFiltersDropdown:\"Close the filters dropdown\",NoValuesFound:\"No values found.\",QuerySuggestPreview:\"Product recommendations for\",To:\"to\"};t.defaultLanguage=i,t.setLanguageAfterPageLoaded=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(26),o=n(0);String.toLocaleString=i.LocaleString;var r=/<pl>(((?!<\\/pl>).)*)<\\/pl>/g,s=/<sn>(((?!<\\/sn>).)*)<\\/sn>/g;t.L10N={format:function(e){for(var n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];var r=e.toLocaleString();if(r==e){var s=e.toUpperCase().toLocaleString(),a=e.toLowerCase().toLocaleString(),u=(e.charAt(0).toUpperCase()+e.toLowerCase().slice(1)).toLocaleString();s!=e.toUpperCase().toLocaleString()?r=s:a!=e.toLowerCase().toLocaleString()?r=a:u!=e.charAt(0).toUpperCase()+e.toLowerCase().slice(1)&&(r=u)}if(n.length>0){var l=o.last(n);(o.isBoolean(l)||o.isNumber(l))&&(n.pop(),r=t.L10N.formatPlSn(r,l)),o.each(n,function(e,t){return r=r.replace(\"{\"+t+\"}\",e)})}else r=r.replace(/{[0-9]}|<pl>[a-zA-Z]+<\\/pl>|<sn>|<\\/sn>/g,\"\").trim();return r},formatPlSn:function(e,t){return e=(o.isBoolean(t)?t:t>1)?e.replace(r,\"$1\").replace(s,\"\"):e.replace(r,\"\").replace(s,\"$1\")}}},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(0),a=n(5),u=n(9),l=n(306),c=n(72),p=n(39),h=n(4),d=function(){function e(e){this.options=e,this.logger=new u.Logger(this);var t={accessToken:this.options.accessToken.token};this.endpointCaller=new l.AnalyticsEndpointCaller(t),this.organization=e.organization}return e.prototype.getCurrentVisitId=function(){return this.visitId},e.prototype.getCurrentVisitIdPromise=function(){var e=this;return new Promise(function(t,n){if(e.getCurrentVisitId())t(e.getCurrentVisitId());else{var i=e.buildAnalyticsUrl(\"/analytics/visit\");e.getFromService(i,{}).then(function(n){e.visitId=n.id,t(e.visitId)}).catch(function(e){n(e)})}})},e.prototype.sendSearchEvents=function(e){if(e.length>0)return this.logger.info(\"Logging analytics search events\",e),this.sendToService(e,\"searches\",\"searchEvents\")},e.prototype.sendDocumentViewEvent=function(e){return a.Assert.exists(e),this.logger.info(\"Logging analytics document view\",e),this.sendToService(e,\"click\",\"clickEvent\")},e.prototype.sendCustomEvent=function(e){return a.Assert.exists(e),this.logger.info(\"Logging analytics custom event\",e),this.sendToService(e,\"custom\",\"customEvent\")},e.prototype.getTopQueries=function(e){var t=this.buildAnalyticsUrl(\"/stats/topQueries\");return this.getFromService(t,e)},e.prototype.clearCookies=function(){c.Cookie.erase(\"visitorId\"),c.Cookie.erase(\"visitId\")},e.prototype.sendToService=function(t,n,i){return o(this,void 0,void 0,function(){var o,s,a,u,l;return r(this,function(r){switch(r.label){case 0:return null==e.pendingRequest?[3,2]:[4,e.pendingRequest];case 1:r.sent(),r.label=2;case 2:o=this.getURL(n),s=this.executeRequest(o,t),r.label=3;case 3:return r.trys.push([3,5,,8]),[4,s];case 4:return a=r.sent(),e.pendingRequest=null,this.handleAnalyticsEventResponse(a.data),[2,a.data];case 5:return u=r.sent(),e.pendingRequest=null,this.options.accessToken.isExpired(u)?[4,this.options.accessToken.doRenew()]:[3,7];case 6:if(l=r.sent())return[2,this.sendToService(t,n,i)];r.label=7;case 7:throw u;case 8:return[2]}})})},e.prototype.executeRequest=function(t,n){var i=this.endpointCaller.call({errorsAsSuccess:!1,method:\"POST\",queryString:t.queryNormalized,requestData:n,url:t.path,responseType:\"text\",requestDataType:\"application/json\"});return i?(e.pendingRequest=i,i):Promise.resolve({data:{visitId:\"\",visitorId:\"\"},duration:0})},e.prototype.getURL=function(t){var n=e.CUSTOM_ANALYTICS_VERSION||e.DEFAULT_ANALYTICS_VERSION;return p.UrlUtils.normalizeAsParts({paths:[this.options.serviceUrl,\"/rest/\",n,\"/analytics/\",t],query:{org:this.organization,visitor:c.Cookie.get(\"visitorId\")}})},e.prototype.getFromService=function(e,t){var n=i({},t,{access_token:this.options.accessToken.token});return this.endpointCaller.call({errorsAsSuccess:!1,method:\"GET\",queryString:this.options.organization?[\"org=\"+h.Utils.safeEncodeURIComponent(this.options.organization)]:[],requestData:n,responseType:\"json\",url:e}).then(function(e){return e.data})},e.prototype.handleAnalyticsEventResponse=function(t){var n,i;return t.visitId?(n=t.visitId,i=t.visitorId):t.searchEventResponses&&(n=s.first(t.searchEventResponses).visitId,i=s.first(t.searchEventResponses).visitorId),n&&(this.visitId=n),i&&c.Cookie.set(\"visitorId\",i,e.VISITOR_COOKIE_TIME),t},e.prototype.buildAnalyticsUrl=function(t){return p.UrlUtils.normalizeAsString({paths:[this.options.serviceUrl,\"/rest/\",e.CUSTOM_ANALYTICS_VERSION||e.DEFAULT_ANALYTICS_VERSION,t]})},e.DEFAULT_ANALYTICS_URI=\"https://usageanalytics.coveo.com\",e.DEFAULT_ANALYTICS_VERSION=\"v15\",e.CUSTOM_ANALYTICS_VERSION=void 0,e.VISITOR_COOKIE_TIME=864e9,e}();t.AnalyticsEndpoint=d},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(5),r=n(16),s=n(1),a=n(47),u=n(30),l=n(41),c=n(4),p=n(0),h=n(13),d=n(10),f=n(120),m=n(15),y=function(e){function t(n,i,a,u,l){var c=e.call(this,n,t.ID)||this;return c.window=i,c.queryStateModel=a,c.queryController=u,c.ignoreNextHashChange=!1,c.initialHashChange=!1,c.willUpdateHash=!1,o.Assert.exists(c.queryStateModel),o.Assert.exists(c.queryController),s.$$(c.element).on(r.InitializationEvents.restoreHistoryState,function(){c.logger.trace(\"Restore history state. Update model\"),c.updateModelFromHash(),c.lastState=c.queryStateModel.getAttributes()}),s.$$(c.element).on(c.queryStateModel.getEventName(m.Model.eventTypes.all),function(){c.logger.trace(\"Query model changed. Update hash\"),c.updateHashFromModel()}),c.hashchange=function(){c.handleHashChange(),c.lastState=c.queryStateModel.getAttributes()},c.window.addEventListener(\"hashchange\",c.hashchange),s.$$(c.element).on(r.InitializationEvents.nuke,function(){return c.handleNuke()}),c}return i(t,e),Object.defineProperty(t.prototype,\"usageAnalytics\",{get:function(){return this.queryController.usageAnalytics},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"hashUtils\",{get:function(){return this.hashUtilsModule?this.hashUtilsModule:a.HashUtils},set:function(e){this.hashUtilsModule=e},enumerable:!0,configurable:!0}),t.prototype.setState=function(e){this.setHashValues(e)},t.prototype.replaceState=function(e){this.ignoreNextHashChange=!0;var t=\"#\"+this.hashUtils.encodeValues(e);this.window.location.replace(t)},t.prototype.setHashValues=function(e){this.logger.trace(\"Update history hash\");var t=\"#\"+this.hashUtils.encodeValues(e),n=this.window.location.hash!=t;this.ignoreNextHashChange=n,this.logger.trace(\"ignoreNextHashChange\",this.ignoreNextHashChange),this.logger.trace(\"initialHashChange\",this.initialHashChange),this.logger.trace(\"from\",this.window.location.hash,\"to\",t),this.initialHashChange?(this.initialHashChange=!1,n&&(this.replaceState(e),this.logger.trace(\"History hash modified\",t))):n&&(this.window.location.hash=t,this.logger.trace(\"History hash created\",t))},t.prototype.debugInfo=function(){return{state:this.queryStateModel.getAttributes()}},t.prototype.handleHashChange=function(){if(this.logger.trace(\"History hash changed\"),this.ignoreNextHashChange)return this.logger.trace(\"History hash change ignored\"),void(this.ignoreNextHashChange=!1);var e=this.updateModelFromHash();if(p.difference(e,t.attributesThatDoNotTriggerQuery).length>0){if(this.lastState){var n=c.Utils.differenceBetweenObjects(this.queryStateModel.getAttributes(),this.lastState);this.mapStateDifferenceToUsageAnalyticsCall(n)}this.queryController.executeQuery()}},t.prototype.handleNuke=function(){this.window.removeEventListener(\"hashchange\",this.hashchange)},t.prototype.updateHashFromModel=function(){var e=this;this.logger.trace(\"Model -> history hash\"),this.willUpdateHash||(u.Defer.defer(function(){var t=e.queryStateModel.getAttributes();e.setHashValues(t),e.logger.debug(\"Saving state to hash\",t),e.willUpdateHash=!1}),this.willUpdateHash=!0)},t.prototype.updateModelFromHash=function(){var e=this;this.logger.trace(\"History hash -> model\");var t={},n=[];return p.each(this.queryStateModel.attributes,function(i,o,r){var s=e.getHashValue(o);t[o]=s,e.queryStateModel.get(o)!=s&&n.push(o)}),this.initialHashChange=!0,this.queryStateModel.setMultiple(t),n},t.prototype.getHashValue=function(e){o.Assert.isNonEmptyString(e);var t;try{var n=this.hashUtils.getHash(this.window);t=this.hashUtils.getValue(e,n)}catch(t){this.logger.error(\"Could not parse parameter \"+e+\" from URI\")}return c.Utils.isUndefined(t)&&(t=this.queryStateModel.defaultAttributes[e]),t},t.prototype.mapStateDifferenceToUsageAnalyticsCall=function(e){var t=this;return this.usageAnalytics?h.QUERY_STATE_ATTRIBUTES.Q in e?void f.logSearchBoxSubmitEvent(this.usageAnalytics):h.QUERY_STATE_ATTRIBUTES.SORT in e?void f.logSortEvent(this.usageAnalytics,e[h.QUERY_STATE_ATTRIBUTES.SORT]):void p.keys(e).forEach(function(e){var n=t.extractFacetInfoFromStateDifference(e);n&&t.usageAnalytics.logSearchEvent(n.actionCause,{facetId:n.fieldName,facetField:n.fieldName,facetTitle:n.fieldName,facetValue:n.valueModified})}):(this.logger.warn(\"The query state has been modified directly in the URL and we couldn't log the proper analytics call.\"),void this.logger.warn(\"This is caused by an history controller that has been initialized without the usage analytics parameter.\"))},t.prototype.extractFacetInfoFromStateDifference=function(e){var t,n=/^f:(?!.*:not)(.*)/,i=n.exec(e),o=/^f:(.*):not/,r=o.exec(e),s=this.queryStateModel.get(e)||[],a=this.lastState[e]||[],u=s.length<a.length;if(t=u?p.first(p.difference(a,s)):p.first(p.difference(s,a)),i){var l=i[1],c=void 0;return c=u?d.analyticsActionCauseList.facetDeselect:d.analyticsActionCauseList.facetSelect,{fieldName:l,actionCause:c,valueModified:t}}if(r){var l=r[1],c=void 0;return c=u?d.analyticsActionCauseList.facetUnexclude:d.analyticsActionCauseList.facetExclude,{fieldName:l,actionCause:c,valueModified:t}}return null},t.ID=\"HistoryController\",t.attributesThatDoNotTriggerQuery=[\"quickview\"],t}(l.RootComponent);t.HistoryController=y},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(45),r=n(15),s=n(9),a=n(5),u=n(16),l=n(41),c=n(1),p=n(0),h=function(e){function t(n,i,l,p){var h=e.call(this,n,t.ID)||this;return h.windoh=i,h.model=l,h.queryController=p,h.omit=[],i.localStorage?(h.storage=new o.LocalStorageUtils(t.ID),a.Assert.exists(h.model),a.Assert.exists(h.queryController),c.$$(h.element).on(u.InitializationEvents.restoreHistoryState,function(){return h.updateModelFromLocalStorage()}),c.$$(h.element).on(h.model.getEventName(r.Model.eventTypes.all),function(){return h.updateLocalStorageFromModel()})):new s.Logger(n).info(\"No local storage available in current browser. LocalStorageHistoryController cannot initialize itself\",h),h}return i(t,e),t.prototype.replaceState=function(e){this.storage.save(e)},t.prototype.withoutThoseAttribute=function(e){this.omit=e},t.prototype.updateLocalStorageFromModel=function(){var e=p.omit(this.model.getAttributes(),this.omit);this.setState(e),this.logger.debug(\"Saving state to localstorage\",e)},t.prototype.updateModelFromLocalStorage=function(){var e=this,t={},n=this.storage.load();p.each(this.model.attributes,function(i,o,r){var s=n?n[o]:void 0;void 0==s&&(s=e.model.defaultAttributes[o]),t[o]=s}),this.model.setMultiple(t)},t.prototype.setState=function(e){this.storage.save(e)},t.ID=\"LocalStorageHistoryController\",t}(l.RootComponent);t.LocalStorageHistoryController=h},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(19),o=n(51),r=n(0),s=function(){function e(){}return e.getFieldFromString=function(e){var t=new RegExp('@([a-z0-9_]+)\\\\b|\\\\braw\\\\.([a-z0-9_]+)\\\\b|\\\\braw\\\\[(?:\"[^\"]*?([a-z0-9_]+)[^\"]*?\"|'+\"'[^']*?([a-z0-9_]+)[^']*?')\\\\]|data-condition-field-(?:not-)?([a-z0-9_]+)=\",\"gi\"),n=i.StringUtils.match(e,t);return r.map(n,function(e){return r.find(e.splice(1),function(e){return e})})},e.evaluateCondition=function(t,n,i){void 0===i&&(i=new o.ResponsiveComponents);var s=!0,a=e.getFieldFromString(t);return r.each(a,function(i){var o=e.evaluateMatchingFieldValues(i,t);(0!=o.length||e.evaluateFieldShouldNotBeNull(i,t))&&(s=s&&null!=n.raw[i]),s&&r.each(o,function(e){s=s&&n.raw[i].toLowerCase()==e.toLowerCase()})}),s&&e.evaluateShouldUseSmallScreen(t)&&(s=s&&i.isSmallScreenWidth()),s},e.evaluateMatchingFieldValues=function(e,t){var n=[],o=new RegExp(\"raw.\"+e+\"\\\\s*=+\\\\s*[\\\"|']([a-zA-Z]+)[\\\"|']\",\"gi\"),s=new RegExp(\"raw[[\\\"|']\"+e+\"[\\\"|']]\\\\s*=+\\\\s*[\\\"|']([a-zA-Z]+)[\\\"|']\",\"gi\");return i.StringUtils.match(t,o).concat(i.StringUtils.match(t,s)).forEach(function(e){n=n.concat(e[1])}),r.unique(n)},e.evaluateFieldShouldNotBeNull=function(e,t){var n=new RegExp(\"raw.\"+e+\"\\\\s*!=\\\\s*(?=null|undefined)\",\"gi\"),i=new RegExp(\"raw[[\\\"|']\"+e+\"[\\\"|']]\\\\s*!=\\\\s*(?=null|undefined)\",\"gi\");return null!=t.match(n)||null!=t.match(i)},e.evaluateShouldUseSmallScreen=function(e){return e.match(/Coveo\\.DeviceUtils\\.isSmallScreenWidth/gi)},e}();t.TemplateConditionEvaluator=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(4),o=n(151),r=n(8),s=n(1),a=n(2),u=n(0),l=function(){function e(e,t){this.template=e,this.scriptTag=t;var n=t.getAttribute(\"data-condition\");if(null!=n)n=n.toString().replace(/&quot;/g,'\"'),e.setConditionWithFallback(n);else{var s=this.parseFieldsAttributes();s&&i.Utils.isNonEmptyArray(s)&&(this.template.fieldsToMatch=s)}this.template.layout=this.parseLayout(),this.template.mobile=this.parseScreenSize(\"data-mobile\"),this.template.tablet=this.parseScreenSize(\"data-tablet\"),this.template.desktop=this.parseScreenSize(\"data-desktop\"),this.template.fields=o.TemplateConditionEvaluator.getFieldFromString(t.innerHTML+\" \"+(n||\"\")),this.template.role=t.getAttribute(\"data-role\"),this.template.addFields(o.TemplateConditionEvaluator.getFieldFromString(t.innerHTML+\" \"+n)||[]);var l=r.ComponentOptions.loadFieldsOption(t,\"fields\",{includeInResults:!0});null!=l&&this.template.addFields(u.map(l,function(e){return e.substr(1)})),this.template.addFields(u.map(this.template.fieldsToMatch,function(e){return e.field}));var c=u.chain(this.template.getComponentsInside(t.innerHTML)).map(function(e){return a.Initialization.getRegisteredFieldsComponentForQuery(e)}).flatten().value();this.template.addFields(c)}return e.prototype.toHtmlElement=function(e){e||(e=s.$$(\"code\"));var t=s.$$(this.scriptTag).getAttribute(\"data-condition\");return t&&e.setAttribute(\"data-condition\",t),e.setHtml(this.scriptTag.innerHTML),e.el},e.prototype.parseFieldsAttributes=function(){var e=this.scriptTag.dataset;return u.chain(e).map(function(e,t){var n=t.match(/field([a-zA-Z0-9_\\.]*)/i);if(n){var i=void 0;return null!=e&&\"null\"!=e&&\"\"!=e&&(i=u.map(e.split(\",\"),function(e){return e.trim()})),{field:n[1].toLowerCase(),values:i}}}).compact().value()},e.prototype.parseScreenSize=function(e){return i.Utils.parseBooleanIfNotUndefined(this.scriptTag.getAttribute(e))},e.prototype.parseLayout=function(){return this.scriptTag.getAttribute(\"data-layout\")},e.fromString=function(e,t,n){return void 0===t&&(t={}),void 0===n&&(n=document.createElement(\"code\")),n.innerHTML=e,null!=t.condition&&n.setAttribute(\"data-condition\",t.condition),null!=t.layout?n.setAttribute(\"data-layout\",t.layout):n.setAttribute(\"data-layout\",\"list\"),null!=t.mobile&&n.setAttribute(\"data-mobile\",t.mobile.toString()),null!=t.tablet&&n.setAttribute(\"data-tablet\",t.tablet.toString()),null!=t.desktop&&n.setAttribute(\"data-desktop\",t.desktop.toString()),null!=t.fieldsToMatch&&u.each(t.fieldsToMatch,function(e){e.values?n.setAttribute(\"data-field-\"+e.field.toLowerCase(),e.values.join(\",\")):n.setAttribute(\"data-field-\"+e.field.toLowerCase(),null)}),null!=t.role&&n.setAttribute(\"data-role\",t.role),n},e}();t.TemplateFromAScriptTag=l},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(8),s=n(45),a=n(31),u=n(97),l=n(1),c=n(19),p=n(50),h=n(41),d=n(34),f=n(26),m=n(20),y=n(0);n(360);var g=n(6),v=n(361),b=n(11),C=n(363),S=n(3),w=n(24),x=function(e){function t(n,i,o,c){void 0===c&&(c=f.ModalBox);var p=e.call(this,n,t.ID)||this;return p.element=n,p.bindings=i,p.options=o,p.ModalBox=c,p.opened=!1,p.options=r.ComponentOptions.initComponentOptions(n,t,o),p.showDebugPanel=y.debounce(function(){return p.openModalBox()},100),l.$$(p.element).on(a.ResultListEvents.newResultDisplayed,function(e,t){return p.handleNewResultDisplayed(t)}),l.$$(p.element).on(u.DebugEvents.showDebugPanel,function(e,t){return p.handleShowDebugPanel(t)}),l.$$(p.element).on(b.QueryEvents.querySuccess,function(e,t){return p.handleQuerySuccess(t)}),l.$$(p.element).on(b.QueryEvents.newQuery,function(){return p.handleNewQuery()}),p.localStorageDebug=new s.LocalStorageUtils(\"DebugPanel\"),p.collapsedSections=p.localStorageDebug.load()||[],p}return i(t,e),t.prototype.debugInfo=function(){return null},t.prototype.addInfoToDebugPanel=function(e){null==this.stackDebug&&(this.stackDebug={}),this.stackDebug=o({},this.stackDebug,e)},t.prototype.handleNewResultDisplayed=function(e){var t=this;l.$$(e.item).on(\"dblclick\",function(n){t.handleResultDoubleClick(n,e)})},t.prototype.handleResultDoubleClick=function(e,t){if(e.altKey){var n=t.result.index,i=t.item.template,r=function(e){return null!=e?y.find(e.results,function(e){return e.index==n}):t.result},s=o({},new C.DebugForResult(this.bindings).generateDebugInfoForResult(t.result),{findResult:r,template:this.templateToJson(i)});this.addInfoToDebugPanel(s),this.showDebugPanel()}},t.prototype.handleQuerySuccess=function(e){this.opened&&(this.stackDebug&&this.stackDebug.findResult&&this.addInfoToDebugPanel(new C.DebugForResult(this.bindings).generateDebugInfoForResult(this.stackDebug.findResult(e.results))),this.redrawDebugPanel(),this.hideAnimationDuringQuery())},t.prototype.handleNewQuery=function(){this.opened&&this.showAnimationDuringQuery()},t.prototype.handleShowDebugPanel=function(e){this.addInfoToDebugPanel(e),this.showDebugPanel()},t.prototype.buildStackPanel=function(){var e=this,n=l.$$(\"div\",{className:\"coveo-debug\"}),i=y.chain(this.stackDebug).omit(\"findResult\").keys().value(),o=y.pairs(i);o=o.sort(function(e,n){var i=y.indexOf(t.customOrder,e[1]),o=y.indexOf(t.customOrder,n[1]);return-1!=i&&-1!=o?i-o:-1!=i?-1:-1!=o?1:e[0]-n[0]});var r={};return y.forEach(o,function(t){var i=e.buildSection(t[1]),o=e.buildStackPanelSection(e.stackDebug[t[1]],e.stackDebug.result);i.container.append(o.section),null!=o.json&&(r[t[1]]=o.json),n.append(i.dom.el)}),{body:n.el,json:r}},t.prototype.getModalBody=function(){return this.modalBox&&this.modalBox.content?l.$$(this.modalBox.content).find(\".coveo-modal-body\"):null},t.prototype.redrawDebugPanel=function(){var e=this.buildStackPanel(),t=this.getModalBody();t&&(l.$$(t).empty(),l.$$(t).append(e.body)),this.updateSearchFunctionnality(e)},t.prototype.openModalBox=function(){var e=this,t=this.buildStackPanel();this.opened=!0,this.modalBox=this.ModalBox.open(t.body,{title:g.l(\"Debug\"),className:\"coveo-debug\",titleClose:!0,overlayClose:!0,validation:function(){return e.onCloseModalBox(),!0},sizeMod:\"big\"});var n=l.$$(this.modalBox.wrapper).find(\".coveo-modal-header\");n?this.debugHeader?(this.debugHeader.moveTo(n),this.updateSearchFunctionnality(t)):this.debugHeader=new v.DebugHeader(this,n,function(n){return e.search(n,t.body)},this.stackDebug):this.logger.warn(\"No title found in modal box.\")},t.prototype.updateSearchFunctionnality=function(e){var t=this;this.debugHeader&&(this.debugHeader.setNewInfoToDebug(this.stackDebug),this.debugHeader.setSearch(function(n){return t.search(n,e.body)}))},t.prototype.onCloseModalBox=function(){this.stackDebug=null,this.opened=!1},t.prototype.buildStackPanelSection=function(e,t){if(e instanceof HTMLElement)return{section:e};if(y.isFunction(e))return this.buildStackPanelSection(e(t),t);var n=this.toJson(e);return{section:this.buildProperty(n),json:n}},t.prototype.findInProperty=function(e,t){var n=this,i=l.$$(e),o=-1!=e.label.indexOf(t);if(o?this.highlightSearch(e.labelDom,t):this.removeHighlightSearch(e.labelDom),i.hasClass(\"coveo-property-object\")){i.toggleClass(\"coveo-search-match\",o);var r=e.buildKeys(),s=!1;return y.each(r,function(e){s=n.findInProperty(e,t)||s}),i.toggleClass(\"coveo-search-submatch\",s),o||s}return-1!=e.values.indexOf(t)?(this.highlightSearch(e.valueDom,t),o=!0):this.removeHighlightSearch(e.valueDom),i.toggleClass(\"coveo-search-match\",o),o},t.prototype.buildSection=function(e){var t=this,n=l.$$(\"div\",{className:\"coveo-section coveo-\"+e+\"-section\"}),i=l.$$(\"div\",{className:\"coveo-section-header\"});l.$$(i).text(e),n.append(i.el);var o=l.$$(\"div\",{className:\"coveo-section-container\"});return n.append(o.el),y.contains(this.collapsedSections,e)&&l.$$(n).addClass(\"coveo-debug-collapsed\"),i.on(\"click\",function(){l.$$(n).toggleClass(\"coveo-debug-collapsed\"),y.contains(t.collapsedSections,e)?t.collapsedSections=y.without(t.collapsedSections,e):t.collapsedSections.push(e),t.localStorageDebug.save(t.collapsedSections)}),{dom:n,header:i,container:o}},t.prototype.buildProperty=function(e,t){return e instanceof Promise?this.buildPromise(e,t):!y.isArray(e)&&!y.isObject(e)||y.isString(e)?this.buildBasicProperty(e,t):this.buildObjectProperty(e,t)},t.prototype.buildPromise=function(e,t){var n=this,i=l.$$(\"div\",{className:\"coveo-property coveo-property-promise\"});return e.then(function(e){var o=n.buildProperty(e,t);i.replaceWith(o)}),i.el},t.prototype.buildObjectProperty=function(e,t){var n=this,i=l.$$(\"div\",{className:\"coveo-property coveo-property-object\"}),o=l.$$(\"div\",{className:\"coveo-property-value\"}),r=y.keys(e);y.isArray(e)||r.sort();var s,a=function(){return null==s&&(s=[],y.each(r,function(t){var i=n.buildProperty(e[t],t);null!=i&&(s.push(i),o.append(i))})),s};if(i.el.buildKeys=a,null!=t){var u=l.$$(\"div\",{className:\"coveo-property-label\"});u.text(t),i.el.labelDom=u.el,i.append(u.el),0!=r.length&&(i.addClass(\"coveo-collapsible\"),u.on(\"click\",function(){a();var e=i.el.className.split(/\\s+/);y.contains(e,\"coveo-expanded\")?e=y.without(e,\"coveo-expanded\"):e.push(\"coveo-expanded\"),i.el.className=e.join(\" \")}))}else a();if(0==r.length){var c=y.without(i.el.className.split(/\\s+/),\"coveo-property-object\");c.push(\"coveo-property-basic\"),i.el.className=c.join(\" \"),y.isArray(e)?o.setHtml(\"[]\"):o.setHtml(\"{}\"),i.el.values=\"\"}return i.el.label=null!=t?t.toLowerCase():\"\",i.append(o.el),i.el},t.prototype.buildBasicProperty=function(e,t){var n=this,i=l.$$(\"div\",{className:\"coveo-property coveo-property-basic\"});if(null!=t){var o=l.$$(\"div\",{className:\"coveo-property-label\"});o.text(t),i.append(o.el),i.el.labelDom=o.el}var r=null!=e?e.toString():String(e);null!=e&&null!=e.ref&&(e=e.ref);var s=l.$$(\"div\");s.text(r),s.on(\"dblclick\",function(){n.selectElementText(s.el)}),i.append(s.el),i.el.valueDom=s;var a=[\"coveo-property-value\"];return y.isString(e)&&a.push(\"coveo-property-value-string\"),(y.isNull(e)||y.isUndefined(e))&&a.push(\"coveo-property-value-null\"),y.isNumber(e)&&a.push(\"coveo-property-value-number\"),y.isBoolean(e)&&a.push(\"coveo-property-value-boolean\"),y.isDate(e)&&a.push(\"coveo-property-value-date\"),y.isObject(e)&&a.push(\"coveo-property-value-object\"),y.isArray(e)&&a.push(\"coveo-property-value-array\"),s.el.className=a.join(\" \"),i.el.label=null!=t?t.toLowerCase():\"\",i.el.values=r.toLowerCase(),i.el},t.prototype.toJson=function(e,n,i){var o=this;if(void 0===n&&(n=0),void 0===i&&(i=[]),e instanceof d.BaseComponent||e instanceof p.SearchEndpoint)return this.componentToJson(e,n);if(e instanceof HTMLElement)return this.htmlToJson(e);if(e instanceof w.Template)return this.templateToJson(e);if(e instanceof Promise)return e.then(function(e){return o.toJson(e,n,i)});if(e==window)return this.toJsonRef(e);if(y.isArray(e)||y.isObject(e)){if(y.contains(i,e))return this.toJsonRef(e,\"< RECURSIVE >\");if(n>=t.maxDepth)return this.toJsonRef(e);if(y.isArray(e))return y.map(e,function(t,r){return o.toJson(t,n+1,i.concat([e]))});if(y.isDate(e))return this.toJsonRef(e,m.format(e,\"F\"));var r={};return y.each(e,function(t,s){r[s]=o.toJson(t,n+1,i.concat([e]))}),r.ref,r}return e},t.prototype.toJsonRef=function(e,t){return t=new String(t||e),t.ref=e,t},t.prototype.componentToJson=function(e,t){return void 0===t&&(t=0),y.keys(e.options).length>0?this.toJson(e.options,t):this.toJsonRef(e.options,new String(\"No options\"))},t.prototype.htmlToJson=function(e){if(null!=e)return{tagName:e.tagName,id:e.id,classList:e.className.split(/\\s+/)}},t.prototype.templateToJson=function(e){if(null==e)return null;var t=e.element,n={type:e.getType()};return null!=t&&(n.id=t.id,n.condition=t.attributes[\"data-condition\"],n.content=t.innerText),n},t.prototype.selectElementText=function(e){if(window.getSelection&&document.createRange){var t=window.getSelection(),n=document.createRange();n.selectNodeContents(e),t.removeAllRanges(),t.addRange(n)}else if(\"createTextRange\"in document.body){var i=document.body.createTextRange();i.moveToElementText(e),i.select()}},t.prototype.search=function(e,t){var n=this;y.isEmpty(e)?(l.$$(t).findAll(\".coveo-search-match, .coveo-search-submatch\").forEach(function(e){l.$$(e).removeClass(\"coveo-search-match, coveo-search-submatch\")}),l.$$(t).removeClass(\"coveo-searching\")):(l.$$(t).addClass(\"coveo-searching-loading\"),setTimeout(function(){var i=l.$$(t).findAll(\".coveo-section .coveo-section-container > .coveo-property\");y.each(i,function(t){n.findInProperty(t,e)}),l.$$(t).addClass(\"coveo-searching\"),l.$$(t).removeClass(\"coveo-searching-loading\")}))},t.prototype.highlightSearch=function(e,t){var n;if(e instanceof HTMLElement?n=e:e instanceof l.Dom&&(n=e.el),null!=n&&null!=n.innerText){var i=n.innerText.split(new RegExp(\"(?=\"+c.StringUtils.regexEncode(t)+\")\",\"gi\"));n.innerHTML=\"\",i.forEach(function(e){var i,o=new RegExp(\"(\"+c.StringUtils.regexEncode(t)+\")\",\"i\"),r=e.match(o);null!=r?(i=l.$$(\"span\",{className:\"coveo-debug-highlight\"}),i.text(r[1]),n.appendChild(i.el),i=l.$$(\"span\"),i.text(e.substr(r[1].length)),n.appendChild(i.el)):(i=l.$$(\"span\"),i.text(e),n.appendChild(i.el))})}},t.prototype.removeHighlightSearch=function(e){null!=e&&(e.innerHTML=e.innerText)},t.prototype.showAnimationDuringQuery=function(){l.$$(this.modalBox.content).addClass(\"coveo-debug-loading\")},t.prototype.hideAnimationDuringQuery=function(){l.$$(this.modalBox.content).removeClass(\"coveo-debug-loading\")},t.ID=\"Debug\",t.doExport=function(){S.exportGlobally({Debug:t})},t.options={enableDebug:r.ComponentOptions.buildBooleanOption({defaultValue:!1})},t.customOrder=[\"error\",\"queryDuration\",\"result\",\"fields\",\"rankingInfo\",\"template\",\"query\",\"results\",\"state\"],t.durationKeys=[\"indexDuration\",\"proxyDuration\",\"clientDuration\",\"duration\"],t.maxDepth=10,t}(h.RootComponent);t.Debug=x},function(e,t,n){var i=n(101),o=n(36).document,r=i(o)&&i(o.createElement);e.exports=function(e){return r?o.createElement(e):{}}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){var i=n(76),o=n(373),r=n(160),s=n(106)(\"IE_PROTO\"),a=function(){},u=function(){var e,t=n(154)(\"iframe\"),i=r.length;for(t.style.display=\"none\",n(380).appendChild(t),t.src=\"javascript:\",e=t.contentWindow.document,e.open(),e.write(\"<script>document.F=Object<\\/script>\"),e.close(),u=e.F;i--;)delete u.prototype[r[i]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(a.prototype=i(e),n=new a,a.prototype=null,n[s]=e):n=u(),void 0===t?n:o(n,t)}},function(e,t,n){var i=n(37),o=n(36),r=o[\"__core-js_shared__\"]||(o[\"__core-js_shared__\"]={});(e.exports=function(e,t){return r[e]||(r[e]=void 0!==t?t:{})})(\"versions\",[]).push({version:i.version,mode:n(158)?\"pure\":\"global\",copyright:\"© 2019 Denis Pushkarev (zloirock.ru)\"})},function(e,t){e.exports=!0},function(e,t){var n=0,i=Math.random();e.exports=function(e){return\"Symbol(\".concat(void 0===e?\"\":e,\")_\",(++n+i).toString(36))}},function(e,t){e.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},function(e,t,n){\"use strict\";var i=n(158),o=n(56),r=n(393),s=n(57),a=n(80),u=n(394),l=n(162),c=n(395),p=n(42)(\"iterator\"),h=!([].keys&&\"next\"in[].keys()),d=function(){return this};e.exports=function(e,t,n,f,m,y,g){u(n,t,f);var v,b,C,S=function(e){if(!h&&e in O)return O[e];switch(e){case\"keys\":case\"values\":return function(){return new n(this,e)}}return function(){return new n(this,e)}},w=t+\" Iterator\",x=\"values\"==m,_=!1,O=e.prototype,E=O[p]||O[\"@@iterator\"]||m&&O[m],A=E||S(m),T=m?x?S(\"entries\"):A:void 0,R=\"Array\"==t?O.entries||E:E;if(R&&(C=c(R.call(new e)))!==Object.prototype&&C.next&&(l(C,w,!0),i||\"function\"==typeof C[p]||s(C,p,d)),x&&E&&\"values\"!==E.name&&(_=!0,A=function(){return E.call(this)}),i&&!g||!h&&!_&&O[p]||s(O,p,A),a[t]=A,a[w]=d,m)if(v={values:x?A:S(\"values\"),keys:y?A:S(\"keys\"),entries:T},g)for(b in v)b in O||r(O,b,v[b]);else o(o.P+o.F*(h||_),t,v);return v}},function(e,t,n){var i=n(100).f,o=n(78),r=n(42)(\"toStringTag\");e.exports=function(e,t,n){e&&!o(e=n?e:e.prototype,r)&&i(e,r,{configurable:!0,value:t})}},function(e,t){e.exports=\"\\t\\n\\v\\f\\r   ᠎              \\u2028\\u2029\\ufeff\"},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(4),o=n(23),r=n(0),s=function(){function e(){}return e.detectPublicPath=function(){this.pathHasBeenConfigured||(n.p=e.getDynamicPublicPath())},e.getDynamicPublicPath=function(){var e=this.getCurrentScript(),t=this.getCoveoScript();if(this.isScript(t)||new o.Logger(this).warn(\"You should add the class coveo-script on the script tag that includes the Coveo framework. Not doing so may cause the framework to not be able to auto-detect the path to load the lazy chunks in certain environments.\\n        More details [here](https://docs.coveo.com/en/295/javascript-search-framework/lazy-versus-eager-component-loading#fixing-code-chunks-loading-path-issues).\"),i.Utils.isNullOrUndefined(e)){if(this.isScript(t))return this.parseScriptDirectoryPath(t);var n=document.getElementsByTagName(\"script\");return this.parseScriptDirectoryPath(n[n.length-1])}return this.parseScriptDirectoryPath(e)},e.configureResourceRoot=function(e){this.pathHasBeenConfigured=!0,n.p=e},e.reset=function(){this.pathHasBeenConfigured=!1},e.getCurrentScript=function(){return document.currentScript},e.getCoveoScript=function(){var e=this;return r.find(document.querySelectorAll(\".coveo-script\"),function(t){return e.isScript(t)})},e.parseScriptDirectoryPath=function(e){return e.src.replace(/\\/[\\w\\.-]*\\.js((#|\\?)(.*)){0,1}$/,\"/\")},e.isScript=function(e){return e&&o.$$(e).is(\"script\")},e.pathHasBeenConfigured=!1,e}();t.PublicPathUtils=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(148),a=n(50),u=n(5),l=n(11),c=n(27),p=n(1),h=n(15),d=n(4),f=n(98),m=n(166),y=n(424),g=n(10),v=n(198),b=n(0),C=n(3),S=n(108),w=n(122),x=n(145),_=n(63),O=function(e){function t(n,i,s){void 0===i&&(i={});var a=e.call(this,n,t.ID,s)||this;if(a.element=n,a.options=i,a.bindings=s,a.options=r.ComponentOptions.initComponentOptions(n,t,i),a.setupAccessToken(),null==a.accessToken)return a.logger.error(\"Analytics component could not resolve any access token\"),a.logger.error('Either provide a analytics token : data-option-token=\"an-authentication-token\" on the Analytics element, or configure a default SearchEndpoint',a.element),a;if(a.options.token=a.accessToken.token,a.accessToken.subscribeToRenewal(function(e){return a.client.endpoint.endpointCaller.options.accessToken=e}),a.initializeAnalyticsClient(),u.Assert.exists(a.client),a.bind.onRootElement(l.QueryEvents.buildingQuery,function(e){return a.handleBuildingQuery(e)}),a.bind.onRootElement(l.QueryEvents.queryError,function(e){return a.handleQueryError(e)}),a.options.autoPushToGtmDataLayer&&a.isGtmDataLayerInitialized&&a.bind.onRootElement(_.AnalyticsEvents.analyticsEventReady,function(e){return a.pushToGtmDataLayer(e)}),!a.componentOptionsModel){var d=p.$$(n).find(\".\"+o.Component.computeCssClassName(c.ComponentOptionsModel));d&&(a.componentOptionsModel=d[o.Component.computeCssClassName(c.ComponentOptionsModel)])}if(a.componentOptionsModel){a.componentOptionsModel.set(c.ComponentOptionsModel.attributesEnum.searchHub,a.options.searchHub);var f=a.componentOptionsModel.getEventName(h.Model.eventTypes.changeOne+c.ComponentOptionsModel.attributesEnum.searchHub);a.bind.onRootElement(f,function(e){return a.handleSearchHubChanged(e)})}return a}return i(t,e),t.doExport=function(){C.exportGlobally({PendingSearchEvent:S.PendingSearchEvent,PendingSearchAsYouTypeSearchEvent:w.PendingSearchAsYouTypeSearchEvent,analyticsActionCauseList:g.analyticsActionCauseList,NoopAnalyticsClient:f.NoopAnalyticsClient,LiveAnalyticsClient:m.LiveAnalyticsClient,MultiAnalyticsClient:y.MultiAnalyticsClient,Analytics:t})},t.prototype.logSearchEvent=function(e,t){this.client.logSearchEvent(e,t)},t.prototype.logSearchAsYouType=function(e,t){this.client.logSearchAsYouType(e,t)},t.prototype.logCustomEvent=function(e,t,n,i){void 0===n&&(n=this.element),this.client.logCustomEvent(e,t,n,i)},t.prototype.logClickEvent=function(e,t,n,i){void 0===i&&(i=this.element),this.client.logClickEvent(e,t,n,i)},t.prototype.setOriginContext=function(e){this.client.setOriginContext(e)},t.prototype.enable=function(){if(!this.disabled)return this.logger.warn(\"The Analytics component is already enabled.\");e.prototype.enable.call(this),this.initializeAnalyticsClient(),this.updateSearchInterfaceUAClient(),this.resolveQueryController().enableHistory()},t.prototype.clearLocalData=function(){if(this.disabled||this.client instanceof f.NoopAnalyticsClient)return this.logger.warn(\"Could not clear local data while analytics are disabled.\");this.client.endpoint.clearCookies(),this.resolveQueryController().resetHistory()},t.prototype.disable=function(){if(this.disabled)return this.logger.warn(\"The Analytics component is already disabled.\");this.clearLocalData(),this.client.cancelAllPendingEvents(),this.client=new f.NoopAnalyticsClient,this.updateSearchInterfaceUAClient(),this.resolveQueryController().disableHistory(),e.prototype.disable.call(this)},t.prototype.updateSearchInterfaceUAClient=function(){this.searchInterface.usageAnalytics=this.client},t.prototype.pushToGtmDataLayer=function(e){var t=this.options.gtmDataLayerName;try{window[t].push(e)}catch(e){this.logger.error(\"Unexpected error when pushing to Google Tag Manager data layer '\"+t+\"': '\"+e+\"'.\")}},t.prototype.initializeAnalyticsEndpoint=function(){return new s.AnalyticsEndpoint({accessToken:this.accessToken,serviceUrl:this.options.endpoint,organization:this.options.organization})},t.prototype.initializeAnalyticsClient=function(){if(d.Utils.isNonEmptyString(this.options.endpoint)){var e=this.initializeAnalyticsEndpoint(),t=void 0;this.root&&this.element&&(t=this.root.contains(this.element)?this.root:this.element);var n=p.$$(this.root).hasClass(o.Component.computeCssClassNameForType(\"Recommendation\"));this.instantiateAnalyticsClient(e,t,n)}else this.client=new f.NoopAnalyticsClient},t.prototype.instantiateAnalyticsClient=function(e,t,n){this.client=n?new v.RecommendationAnalyticsClient(e,t,this.options.user,this.options.userDisplayName,this.options.anonymous,this.options.splitTestRunName,this.options.splitTestRunVersion,this.options.searchHub,this.options.sendToCloud,this.getBindings()):new m.LiveAnalyticsClient(e,t,this.options.user,this.options.userDisplayName,this.options.anonymous,this.options.splitTestRunName,this.options.splitTestRunVersion,this.options.searchHub,this.options.sendToCloud,this.getBindings())},t.prototype.setupAccessToken=function(){this.trySetupAccessTokenFromOptions(),null==this.accessToken&&this.trySetupAccessTokenFromDefaultSearchEndpoint()},t.prototype.trySetupAccessTokenFromOptions=function(){null!=this.options.token&&(this.accessToken=new x.AccessToken(this.options.token,this.options.renewAccessToken))},t.prototype.trySetupAccessTokenFromDefaultSearchEndpoint=function(){var e=this;this.defaultEndpoint&&(this.accessToken=this.defaultEndpoint.accessToken,this.options.token=this.defaultEndpoint.accessToken.token,this.defaultEndpoint.accessToken.subscribeToRenewal(function(t){e.options.token=t,e.initializeAnalyticsClient()})),!this.options.organization&&this.defaultEndpoint&&(this.options.organization=this.defaultEndpoint.options.queryStringArguments.organizationId)},Object.defineProperty(t.prototype,\"defaultEndpoint\",{get:function(){return this.searchInterface.options.endpoint||a.SearchEndpoint.endpoints.default||b.find(a.SearchEndpoint.endpoints,function(e){return null!=e})},enumerable:!0,configurable:!0}),t.prototype.handleBuildingQuery=function(e){u.Assert.exists(e),e.queryBuilder.searchHub=this.options.searchHub},t.prototype.handleSearchHubChanged=function(e){this.options.searchHub=e.value},t.prototype.handleQueryError=function(e){u.Assert.exists(e),this.client.logCustomEvent(g.analyticsActionCauseList.queryError,{query:e.query.q,aq:e.query.aq,cq:e.query.cq,dq:e.query.dq,errorType:e.error.type,errorMessage:e.error.message},this.element)},Object.defineProperty(t.prototype,\"isGtmDataLayerInitialized\",{get:function(){var e=this.options.gtmDataLayerName;return!!e&&(!!window[e]||(this.logger.warn(\"Cannot automatically push to Google Tag Manager data layer: '\"+e+\"' is undefined.\"),!1))},enumerable:!0,configurable:!0}),t.create=function(e,n,i){var r=o.Component.computeSelectorForType(t.ID),s=[];return s=s.concat(p.$$(e).findAll(r)),p.$$(e).hasClass(o.Component.computeCssClassNameForType(\"Recommendation\"))||(s=this.ignoreElementsInsideRecommendationInterface(s)),s.push(p.$$(e).closest(o.Component.computeCssClassName(t))),p.$$(e).is(r)&&s.push(e),s=b.compact(s),1==s.length?t.getClient(s[0],n,i):s.length>1?new y.MultiAnalyticsClient(b.map(s,function(e){return t.getClient(e,n,i)})):new f.NoopAnalyticsClient},t.ignoreElementsInsideRecommendationInterface=function(e){return b.filter(e,function(e){return void 0===p.$$(e).closest(o.Component.computeCssClassNameForType(\"Recommendation\"))})},t.getClient=function(e,n,i){var r=o.Component.get(e,t,!0);return r instanceof t?r.client:new t(e,n,i).client},t.ID=\"Analytics\",t.options={user:r.ComponentOptions.buildStringOption(),userDisplayName:r.ComponentOptions.buildStringOption(),token:r.ComponentOptions.buildStringOption(),endpoint:r.ComponentOptions.buildStringOption({defaultValue:s.AnalyticsEndpoint.DEFAULT_ANALYTICS_URI}),anonymous:r.ComponentOptions.buildBooleanOption({defaultValue:!1}),searchHub:r.ComponentOptions.buildStringOption({defaultValue:\"default\"}),splitTestRunName:r.ComponentOptions.buildStringOption(),splitTestRunVersion:r.ComponentOptions.buildStringOption(),sendToCloud:r.ComponentOptions.buildBooleanOption({defaultValue:!0}),organization:r.ComponentOptions.buildStringOption(),autoPushToGtmDataLayer:r.ComponentOptions.buildBooleanOption({defaultValue:!1}),gtmDataLayerName:r.ComponentOptions.buildStringOption({defaultValue:\"dataLayer\"})},t}(o.Component);t.Analytics=O},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(22),o=n(108),r=n(122),s=n(5),a=n(9),u=n(10),l=n(30),c=n(1),p=n(63),h=n(167),d=n(13),f=n(7),m=n(95),y=n(21),g=n(0),v=function(){function e(e,t,n,o,r,u,l,c,p,h){this.endpoint=e,this.rootElement=t,this.userId=n,this.userDisplayName=o,this.anonymous=r,this.splitTestRunName=u,this.splitTestRunVersion=l,this.originLevel1=c,this.sendToCloud=p,this.bindings=h,this.isContextual=!1,this.originContext=\"Search\",this.language=String.locale,this.device=i.DeviceUtils.getDeviceName(),this.mobile=i.DeviceUtils.isMobileDevice(),s.Assert.exists(e),s.Assert.exists(t),s.Assert.isNonEmptyString(this.language),s.Assert.isNonEmptyString(this.device),s.Assert.isNonEmptyString(this.originLevel1),this.logger=new a.Logger(this)}return e.prototype.isActivated=function(){return!0},e.prototype.getCurrentVisitId=function(){return this.endpoint.getCurrentVisitId()},e.prototype.getCurrentVisitIdPromise=function(){return this.endpoint.getCurrentVisitIdPromise()},e.prototype.getCurrentEventCause=function(){return null!=this.pendingSearchEvent?this.pendingSearchEvent.getEventCause():null!=this.pendingSearchAsYouTypeSearchEvent?this.pendingSearchAsYouTypeSearchEvent.getEventCause():null},e.prototype.getCurrentEventMeta=function(){return null!=this.pendingSearchEvent?this.pendingSearchEvent.getEventMeta():null!=this.pendingSearchAsYouTypeSearchEvent?this.pendingSearchAsYouTypeSearchEvent.getEventMeta():null},e.prototype.logSearchEvent=function(e,t){var n=this.buildMetaObject(t);this.pushSearchEvent(e,n)},e.prototype.logSearchAsYouType=function(e,t){var n=this.buildMetaObject(t);this.pushSearchAsYouTypeEvent(e,n)},e.prototype.logClickEvent=function(e,t,n,i){var o=this.buildMetaObject(t,n);return this.pushClickEvent(e,o,n,i)},e.prototype.logCustomEvent=function(e,t,n,i){var o=this.buildMetaObject(t,i);return this.pushCustomEvent(e,o,n)},e.prototype.getTopQueries=function(e){return this.endpoint.getTopQueries(e)},e.prototype.sendAllPendingEvents=function(){this.pendingSearchAsYouTypeSearchEvent&&this.pendingSearchAsYouTypeSearchEvent.sendRightNow()},e.prototype.cancelAllPendingEvents=function(){this.pendingSearchAsYouTypeSearchEvent&&(this.pendingSearchAsYouTypeSearchEvent.cancel(),this.pendingSearchAsYouTypeSearchEvent=null),this.pendingSearchEvent&&(this.pendingSearchEvent.cancel(),this.pendingSearchEvent=null)},e.prototype.getPendingSearchEvent=function(){return this.pendingSearchEvent?this.pendingSearchEvent:this.pendingSearchAsYouTypeSearchEvent?this.pendingSearchAsYouTypeSearchEvent:null},e.prototype.warnAboutSearchEvent=function(){g.isUndefined(this.pendingSearchEvent)&&g.isUndefined(this.pendingSearchAsYouTypeSearchEvent)&&(this.logger.warn(\"A search was triggered, but no analytics event was logged. If you wish to have consistent analytics data, consider logging a search event using the methods provided by the framework\",\"https://docs.coveo.com/en/2726/#logging-your-own-search-events\"),window.console&&console.trace&&console.trace())},e.prototype.setOriginContext=function(e){this.originContext=e},e.prototype.pushCustomEvent=function(e,t,n){var i=this.buildCustomEvent(e,t,n);return this.triggerChangeAnalyticsCustomData(\"CustomEvent\",t,i),this.checkToSendAnyPendingSearchAsYouType(e),c.$$(this.rootElement).trigger(p.AnalyticsEvents.customEvent,{customEvent:h.APIAnalyticsBuilder.convertCustomEventToAPI(i)}),c.$$(this.rootElement).trigger(p.AnalyticsEvents.analyticsEventReady,{event:\"CoveoCustomEvent\",coveoAnalyticsEventData:i}),this.sendToCloud?this.endpoint.sendCustomEvent(i):Promise.resolve(null)},e.prototype.pushSearchEvent=function(e,t){var n=this;if(s.Assert.exists(e),this.pendingSearchEvent&&this.pendingSearchEvent.getEventCause()!==e.name&&(this.pendingSearchEvent.stopRecording(),this.pendingSearchEvent=null),this.checkToSendAnyPendingSearchAsYouType(e),!this.pendingSearchEvent){var i=this.buildSearchEvent(e,t);this.triggerChangeAnalyticsCustomData(\"SearchEvent\",t,i);var r=this.pendingSearchEvent=new o.PendingSearchEvent(this.rootElement,this.endpoint,i,this.sendToCloud);l.Defer.defer(function(){n.pendingSearchEvent=void 0,r.stopRecording()})}},e.prototype.checkToSendAnyPendingSearchAsYouType=function(e){this.eventIsNotRelatedToSearchbox(e.name)?this.sendAllPendingEvents():this.cancelAnyPendingSearchAsYouTypeEvent()},e.prototype.pushSearchAsYouTypeEvent=function(e,t){this.cancelAnyPendingSearchAsYouTypeEvent();var n=this.buildSearchEvent(e,t);this.triggerChangeAnalyticsCustomData(\"SearchEvent\",t,n),this.pendingSearchAsYouTypeSearchEvent=new r.PendingSearchAsYouTypeSearchEvent(this.rootElement,this.endpoint,n,this.sendToCloud)},e.prototype.pushClickEvent=function(e,t,n,i){var o=this.buildClickEvent(e,t,n,i);return this.checkToSendAnyPendingSearchAsYouType(e),this.triggerChangeAnalyticsCustomData(\"ClickEvent\",t,o,{resultData:n}),s.Assert.isNonEmptyString(o.searchQueryUid),s.Assert.isNonEmptyString(o.collectionName),s.Assert.isNonEmptyString(o.sourceName),s.Assert.isNumber(o.documentPosition),c.$$(this.rootElement).trigger(p.AnalyticsEvents.documentViewEvent,{documentViewEvent:h.APIAnalyticsBuilder.convertDocumentViewToAPI(o)}),c.$$(this.rootElement).trigger(p.AnalyticsEvents.analyticsEventReady,{event:\"CoveoClickEvent\",coveoAnalyticsEventData:o}),this.sendToCloud?this.endpoint.sendDocumentViewEvent(o):Promise.resolve(null)},e.prototype.buildAnalyticsEvent=function(e,t){return{actionCause:e.name,actionType:e.type,username:this.userId,userDisplayName:this.userDisplayName,anonymous:this.anonymous,device:this.device,mobile:this.mobile,language:this.language,responseTime:void 0,originLevel1:this.originLevel1,originLevel2:this.getOriginLevel2(this.rootElement),originLevel3:document.referrer,originContext:this.originContext,customData:g.keys(t).length>0?t:void 0,userAgent:navigator.userAgent}},e.prototype.buildSearchEvent=function(e,t){return this.merge(this.buildAnalyticsEvent(e,t),{searchQueryUid:void 0,pipeline:void 0,splitTestRunName:this.splitTestRunName,splitTestRunVersion:this.splitTestRunVersion,queryText:void 0,advancedQuery:void 0,results:void 0,resultsPerPage:void 0,pageNumber:void 0,didYouMean:void 0,facets:void 0,contextual:this.isContextual})},e.prototype.buildClickEvent=function(e,t,n,i){return this.merge(this.buildAnalyticsEvent(e,t),{searchQueryUid:n.queryUid,queryPipeline:n.pipeline,splitTestRunName:this.splitTestRunName||n.splitTestRun,splitTestRunVersion:this.splitTestRunVersion||(void 0!=n.splitTestRun?n.pipeline:void 0),documentUri:n.uri,documentUriHash:y.QueryUtils.getUriHash(n),documentUrl:n.clickUri,documentTitle:n.title,documentCategory:y.QueryUtils.getObjectType(n),originLevel2:this.getOriginLevel2(i),collectionName:y.QueryUtils.getCollection(n),sourceName:y.QueryUtils.getSource(n),documentPosition:n.index+1,responseTime:0,viewMethod:e.name,rankingModifier:n.rankingModifier})},e.prototype.buildCustomEvent=function(e,t,n){return this.merge(this.buildAnalyticsEvent(e,t),{eventType:e.type,eventValue:e.name,originLevel2:this.getOriginLevel2(n),responseTime:0})},e.prototype.getOriginLevel2=function(e){return this.resolveActiveTabFromElement(e)||\"default\"},e.prototype.buildMetaObject=function(e,t){var n=g.extend({},e);if(n.JSUIVersion=m.version.lib+\";\"+m.version.product,!(n.contentIDKey&&n.contentIDValue)&&t){var i=y.QueryUtils.getPermanentId(t);n.contentIDKey=i.fieldUsed,n.contentIDValue=i.fieldValue}return n},e.prototype.cancelAnyPendingSearchAsYouTypeEvent=function(){this.pendingSearchAsYouTypeSearchEvent&&(this.pendingSearchAsYouTypeSearchEvent.cancel(),this.pendingSearchAsYouTypeSearchEvent=void 0)},e.prototype.resolveActiveTabFromElement=function(e){s.Assert.exists(e);var t=this.resolveQueryStateModel(e);return t&&t.get(d.QueryStateModel.attributesEnum.t)},e.prototype.resolveQueryStateModel=function(e){return f.Component.resolveBinding(e,d.QueryStateModel)},e.prototype.eventIsNotRelatedToSearchbox=function(e){return e!==u.analyticsActionCauseList.searchboxSubmit.name&&e!==u.analyticsActionCauseList.searchboxClear.name},e.prototype.triggerChangeAnalyticsCustomData=function(e,t,n,i){t.metaDataAsString={},t.metaDataAsNumber={};var o={language:n.language,originLevel1:n.originLevel1,originLevel2:n.originLevel2,originLevel3:n.originLevel3,metaObject:t},r=g.extend({},{type:e,actionType:n.actionType,actionCause:n.actionCause},o,i);c.$$(this.rootElement).trigger(p.AnalyticsEvents.changeAnalyticsCustomData,r),n.language=r.language,n.originLevel1=r.originLevel1,n.originLevel2=r.originLevel2,n.originLevel3=r.originLevel3,n.customData=t;var s=n.customData.metaDataAsString;g.keys(s).length>0&&(this.logger.warn(\"Using deprecated 'metaDataAsString' key to log custom analytics data. Custom meta should now be put at the root of the object.\"),g.extend(n.customData,s)),delete n.customData.metaDataAsString;var a=n.customData.metaDataAsNumber;g.keys(a).length>0&&(this.logger.warn(\"Using deprecated 'metaDataAsNumber' key to log custom analytics data. Custom meta should now be put at the root of the object.\"),g.extend(n.customData,a)),delete n.customData.metaDataAsNumber},e.prototype.merge=function(e,t){return g.extend({},e,t)},e}();t.LiveAnalyticsClient=v},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.convertSearchEventToAPI=function(e){return{advancedQuery:e.advancedQuery,customMetadatas:e.customData,device:e.device,didYouMean:e.didYouMean,language:e.language,pageNumber:e.pageNumber,queryText:e.queryText,responseTime:e.responseTime,numberOfResults:e.numberOfResults,resultsPerPage:e.resultsPerPage,searchHub:e.originLevel1,searchInterface:e.originLevel2,searchQueryUid:e.searchQueryUid,type:e.actionType,actionCause:e.actionCause,queryPipeline:e.queryPipeline,splitTestRunName:e.splitTestRunName,splitTestRunVersion:e.splitTestRunVersion}},e.convertDocumentViewToAPI=function(e){return{collectionName:e.collectionName,device:e.device,documentPosition:e.documentPosition,title:e.documentTitle,documentUrl:e.documentUrl,documentUri:e.documentUri,documentUriHash:e.documentUriHash,language:e.language,responseTime:e.responseTime,searchHub:e.originLevel1,searchInterface:e.originLevel2,searchQueryUid:e.searchQueryUid,sourceName:e.sourceName,viewMethod:e.viewMethod,customMetadatas:e.customData,actionCause:e.actionCause,queryPipeline:e.queryPipeline,splitTestRunName:e.splitTestRunName,splitTestRunVersion:e.splitTestRunVersion}},e.convertCustomEventToAPI=function(e){return{actionCause:e.actionCause,actionType:e.actionType,device:e.device,language:e.language,responseTime:e.responseTime,searchHub:e.originLevel1,searchInterface:e.originLevel2,customMetadatas:e.customData}},e}();t.APIAnalyticsBuilder=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(4),o=n(23),r=n(15),s=n(49),a=function(){function e(e){var t=this;this.facet=e,this.facet.bind.onRootElement(o.QueryEvents.newQuery,function(){return t.handleNewQuery()}),this.updateVisibilityBasedOnDependsOn()}return e.prototype.listenToParentIfDependentFacet=function(){var e=this;this.isDependentFacet&&this.facet.bind.onQueryState(r.MODEL_EVENTS.CHANGE,void 0,function(){return e.resetIfParentFacetHasNoSelectedValues()})},e.prototype.updateVisibilityBasedOnDependsOn=function(){this.isDependentFacet&&o.$$(this.facet.element).toggleClass(\"coveo-hidden\",!this.parentFacetHasSelectedValues)},Object.defineProperty(e.prototype,\"dependentFacets\",{get:function(){var e=this;return s.ComponentsTypes.getAllFacetsInstance(this.facet.root).filter(function(t){return e.facet.id===t.options.dependsOn})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"hasDependentFacets\",{get:function(){return!!this.dependentFacets.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"dependentFacetsHaveSelectedValues\",{get:function(){var e=this;return this.dependentFacets.some(function(t){return e.valuesExistForFacetWithId(t.options.id)})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"isDependentFacet\",{get:function(){return i.Utils.isNonEmptyString(this.facetDependsOnField)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"facetDependsOnField\",{get:function(){return this.facet.dependsOn},enumerable:!0,configurable:!0}),e.prototype.resetIfParentFacetHasNoSelectedValues=function(){this.parentFacetHasSelectedValues||this.facet.reset()},Object.defineProperty(e.prototype,\"parentFacetHasSelectedValues\",{get:function(){return this.valuesExistForFacetWithId(this.facetDependsOnField)},enumerable:!0,configurable:!0}),e.prototype.valuesExistForFacetWithId=function(e){var t=this.facet.queryStateModel.get(o.QueryStateModel.getFacetId(e));return null!=t&&0!=t.length},e.prototype.handleNewQuery=function(){var e=this;this.dependentFacets.forEach(function(t){e.facet.toggleDependentFacet(t)})},e}();t.DependsOnManager=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});!function(e){e.specific=\"specific\",e.numericalRange=\"numericalRange\",e.dateRange=\"dateRange\",e.hierarchical=\"hierarchical\"}(t.FacetType||(t.FacetType={}))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(4),o=n(43),r=n(44),s=n(1),a=n(0),u=n(449),l=function(){function e(e){this.facet=e,this.valueToSearch=\"\",this.alwaysInclude=[],this.alwaysExclude=[],this.sortCriteria=\"occurrences\",this.fetchMore=!1,this.completeFacetWithStandardValues=!0,this.nbResults=e.options.numberOfValuesInFacetSearch,this.ignoreAccents=e.options.facetSearchIgnoreAccents}return e.prototype.setValueToSearch=function(e){return this.valueToSearch=e,i.Utils.isNonEmptyString(e)&&(this.valueToSearch=this.valueToSearch.trim(),this.alwaysInclude=this.alwaysInclude.concat(o.FacetUtils.getValuesToUseForSearchInFacet(this.valueToSearch,this.facet))),this},e.prototype.excludeCurrentlyDisplayedValuesInSearch=function(e){var t=this;a.each(this.getCurrentlyShowedValueInSearch(e),function(e){var n=o.FacetUtils.getValuesToUseForSearchInFacet(e,t.facet);a.each(n,function(e){t.alwaysExclude.push(e)})}),a.each(this.facet.getDisplayedFacetValues(),function(e){t.alwaysExclude.push(e.value)})},e.prototype.getGroupByRequest=function(){this.lowerCaseAll();var e=this.nbResults;e+=this.alwaysExclude.length;var t=[];this.valueToSearch&&(t=[\"*\"+this.valueToSearch+\"*\"]);var n;n=this.valueToSearch?t.concat(this.alwaysInclude).concat(this.alwaysExclude):a.compact(t.concat(this.alwaysInclude).concat(this.facet.options.allowedValues));var i=this.completeFacetWithStandardValues;null!=this.facet.options.lookupField&&(i=!1);var o={allowedValues:n,allowedValuesPatternType:this.facet.options.useWildcardsInFacetSearch?u.AllowedValuesPatternType.Wildcards:u.AllowedValuesPatternType.Legacy,maximumNumberOfValues:e,completeFacetWithStandardValues:i,field:this.facet.options.field,sortCriteria:this.facet.options.sortCriteria||this.sortCriteria,injectionDepth:this.facet.options.injectionDepth};return this.facet.options.lookupField&&(o.lookupField=this.facet.options.lookupField),this.facet.options.computedField&&(o.computedFields=[{field:this.facet.options.computedField,operation:this.facet.options.computedFieldOperation}]),o},e.prototype.getQuery=function(){var e=a.clone(this.facet.queryController.getLastQuery());return e||(e=(new r.QueryBuilder).build()),e.enableQuerySyntax?e.q=this.facet.facetQueryController.basicExpressionToUseForFacetSearch:i.Utils.isNonEmptyString(this.facet.facetQueryController.basicExpressionToUseForFacetSearch)?e.q=\"<@- \"+this.facet.facetQueryController.basicExpressionToUseForFacetSearch+\" -@>\":e.q=\"\",e.enableQuerySyntax=!0,e.cq=this.facet.facetQueryController.constantExpressionToUseForFacetSearch,e.aq=this.facet.facetQueryController.advancedExpressionToUseForFacetSearch,e.enableDidYouMean=!1,e.firstResult=0,e.numberOfResults=0,e.fieldsToInclude=[],e.groupBy=[this.getGroupByRequest()],e},e.prototype.getCurrentlyShowedValueInSearch=function(e){return a.map(s.$$(e).findAll(\".coveo-facet-value-caption\"),function(e){return s.$$(e).getAttribute(\"data-original-value\")||s.$$(e).text()})},e.prototype.lowerCaseAll=function(){this.alwaysExclude=a.chain(this.alwaysExclude).map(function(e){return e.toLowerCase()}).uniq().value(),this.alwaysInclude=a.chain(this.alwaysInclude).map(function(e){return e.toLowerCase()}).uniq().value()},e}();t.FacetSearchParameters=l},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(203),r=n(67),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.init=function(e,n,i){o.ResponsiveFacetColumn.init(t,e,n,i,r.Facet.ID)},t}(o.ResponsiveFacetColumn);t.ResponsiveFacets=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(4),r=n(0);n(359);var s=n(11),a=n(16),u=n(31),l=n(47),c=n(49),p=function(){function e(e){this.root=e,this.facetPlaceholder='<div class=\"coveo-placeholder-title\"></div>\\n    <div class=\"coveo-facet-placeholder-line\">\\n      <div class=\"coveo-facet-placeholder-checkbox\"></div>\\n      <div class=\"coveo-placeholder-text\"></div>\\n    </div>\\n    <div class=\"coveo-facet-placeholder-line\">\\n      <div class=\"coveo-facet-placeholder-checkbox\"></div>\\n      <div class=\"coveo-placeholder-text\"></div>\\n    </div>\\n    <div class=\"coveo-facet-placeholder-line\">\\n      <div class=\"coveo-facet-placeholder-checkbox\"></div>\\n      <div class=\"coveo-placeholder-text\"></div>\\n    </div>\\n    <div class=\"coveo-facet-placeholder-line\">\\n      <div class=\"coveo-facet-placeholder-checkbox\"></div>\\n      <div class=\"coveo-placeholder-text\"></div>\\n    </div>\\n    <div class=\"coveo-facet-placeholder-line\">\\n      <div class=\"coveo-facet-placeholder-checkbox\"></div>\\n      <div class=\"coveo-placeholder-text\"></div>\\n    </div>',this.resultListPlaceholder='<div class=\"coveo-result-frame coveo-placeholder-result\">\\n  <div class=\"coveo-result-row\">\\n    <div class=\"coveo-result-cell\" style=\"width:85px;text-align:center;\">\\n      <div class=\"coveo-placeholder-icon\"></div>\\n    </div>\\n    <div class=\"coveo-result-cell\" style=\"padding-left:15px;\">\\n      <div class=\"coveo-result-row\">\\n        <div class=\"coveo-result-cell\">\\n          <div class=\"coveo-placeholder-title\" style=\"width: 60%\"></div>\\n        </div>\\n        <div class=\"coveo-result-cell\" style=\"width:120px; text-align:right;\">\\n          <div class=\"coveo-placeholder-text\" style=\"width: 80%\"></div>\\n        </div>\\n      </div>\\n      <div class=\"coveo-result-row\">\\n        <div class=\"coveo-result-cell\">\\n          <div class=\"coveo-placeholder-text\" style=\"width: 70%\"></div>\\n          <div class=\"coveo-placeholder-text\" style=\"width: 90%\"></div>\\n          <div class=\"coveo-placeholder-text\" style=\"width: 60%\"></div>\\n        </div>\\n      </div>\\n    </div>\\n  </div>\\n</div>',this.cardResultListPlaceholder='<div class=\"coveo-card-layout coveo-placeholder-result CoveoResult\">\\n  <div class=\"coveo-result-frame\">\\n    <div class=\"coveo-result-row\" style=\"margin-bottom: 20px;\">\\n      <div class=\"coveo-result-cell\" style=\"width: 32px; vertical-align: middle;\">\\n        <div class=\"coveo-placeholder-icon-small\"></div>\\n      </div>\\n      <div class=\"coveo-result-cell\" style=\"text-align:left; padding-left: 10px; vertical-align: middle;\">\\n        <div class=\"coveo-placeholder-title\" style=\"width: 60%\"></div>\\n      </div>\\n    </div>\\n    <div class=\"coveo-result-row\" style=\"margin-bottom: 20px;\">\\n      <div class=\"coveo-result-cell\">\\n        <div class=\"coveo-placeholder-text\" style=\"width: 70%\"></div>\\n        <div class=\"coveo-placeholder-text\" style=\"width: 90%\"></div>\\n        <div class=\"coveo-placeholder-text\" style=\"width: 60%\"></div>\\n      </div>\\n      <div class=\"coveo-result-cell\">\\n        <div class=\"coveo-placeholder-text\" style=\"width: 90%\"></div>\\n        <div class=\"coveo-placeholder-text\" style=\"width: 70%\"></div>\\n        <div class=\"coveo-placeholder-text\" style=\"width: 60%\"></div>\\n      </div>\\n    </div>\\n    <div class=\"coveo-result-row\">\\n      <div class=\"coveo-result-cell\">\\n        <div class=\"coveo-placeholder-text\" style=\"width: 90%\"></div>\\n          <div class=\"coveo-placeholder-text\" style=\"width: 100%\"></div>\\n      </div>\\n    </div>\\n  </div>\\n</div>\\n',this.recommendationResultListPlaceholder='<div class=\"coveo-result-frame coveo-placeholder-result\">\\n  <div class=\"coveo-result-row\">\\n    <div class=\"coveo-result-cell\" style=\"width: 32px; vertical-align: middle;\">\\n        <div class=\"coveo-placeholder-icon-small\"></div>\\n      </div>\\n    <div class=\"coveo-result-cell\" style=\"padding-left:10px; vertical-align: middle;\">\\n      <div class=\"coveo-result-row\">\\n        <div class=\"coveo-result-cell\">\\n          <div class=\"coveo-placeholder-title\" style=\"width: 90%\"></div>\\n        </div>\\n      </div>\\n    </div>\\n  </div>\\n  ',this.eventToRemovePlaceholder=a.InitializationEvents.afterComponentsInitialization}return e.prototype.withEventToRemovePlaceholder=function(e){return this.eventToRemovePlaceholder=e,this},e.prototype.withFullInitializationStyling=function(){var t=this;return i.$$(this.root).addClass(e.INITIALIZATION_CLASS),i.$$(this.root).removeClass(e.AFTER_INITIALIZATION_CLASS),i.$$(this.root).one(this.eventToRemovePlaceholder,function(){i.$$(t.root).removeClass(e.INITIALIZATION_CLASS),i.$$(t.root).addClass(e.AFTER_INITIALIZATION_CLASS)}),this},e.prototype.withHiddenRootElement=function(){return i.$$(this.root).addClass(\"coveo-hidden\"),this},e.prototype.withVisibleRootElement=function(){return i.$$(this.root).removeClass(\"coveo-hidden\"),this},e.prototype.withWaitingForFirstQueryMode=function(){var e=this;return i.$$(this.root).addClass(\"coveo-waiting-for-query\"),i.$$(this.root).one(s.QueryEvents.duringQuery,function(){i.$$(e.root).removeClass(\"coveo-waiting-for-query\")}),this},e.prototype.withAllPlaceholders=function(){return this.withPlaceholderForFacets(),this.withPlaceholderForResultList(),this.withPlaceholderSearchbox(),this},e.prototype.withPlaceholderForFacets=function(){var t=this,n=c.ComponentsTypes.getAllFacetsElements(this.root);if(o.Utils.isNonEmptyArray(n)){var a=[];r.each(n,function(t){return i.$$(t).addClass(e.INITIALIZATION_CLASS)}),r.each(r.first(n,e.NUMBER_OF_FACETS),function(e){i.$$(e).addClass(\"coveo-with-placeholder\");var n=i.$$(\"div\",{className:\"coveo-facet-placeholder\"},t.facetPlaceholder);e.appendChild(n.el),a.push(n)}),i.$$(this.root).one(this.eventToRemovePlaceholder,function(){var o=function(){r.each(a,function(e){return e.remove()}),r.each(n,function(t){return i.$$(t).removeClass(e.INITIALIZATION_CLASS)}),r.each(n,function(e){return i.$$(e).removeClass(\"coveo-with-placeholder\")})};i.$$(t.root).one(s.QueryEvents.queryError,function(){return o()}),i.$$(t.root).one(s.QueryEvents.deferredQuerySuccess,function(){return o()})})}return this},e.prototype.withPlaceholderSearchbox=function(){var t=i.$$(this.root).findAll(\".CoveoSearchbox\");return o.Utils.isNonEmptyArray(t)&&(r.each(t,function(t){i.$$(t).addClass(e.INITIALIZATION_CLASS)}),i.$$(this.root).one(this.eventToRemovePlaceholder,function(){r.each(t,function(t){return i.$$(t).removeClass(e.INITIALIZATION_CLASS)})})),this},e.prototype.withPlaceholderForResultList=function(){var t=i.$$(this.root).findAll(\".CoveoResultList\");if(o.Utils.isNonEmptyArray(t)){r.each(t,function(t){return i.$$(t).addClass(e.INITIALIZATION_CLASS)});var n=this.determineResultListPlaceholder(t),a=n.placeholderToUse,l=n.resultListToUse,c=n.rootToUse;i.$$(l).append(c),i.$$(l).addClass(\"coveo-with-placeholder\"),r.times(this.isRecommendationRoot()?e.NUMBER_OF_RESULTS_RECOMMENDATION:e.NUMBER_OF_RESULTS,function(){c.innerHTML+=a});var p=function(){i.$$(c).remove(),r.each(t,function(t){return i.$$(t).removeClass(e.INITIALIZATION_CLASS)}),i.$$(l).removeClass(\"coveo-with-placeholder\")};i.$$(this.root).one(u.ResultListEvents.newResultDisplayed,function(){return p()}),i.$$(this.root).one(s.QueryEvents.queryError,function(){return p()}),i.$$(this.root).one(s.QueryEvents.noResults,function(){return p()})}return this},e.prototype.determineResultListPlaceholder=function(e){var t;if(e.length>1?t=l.HashUtils.getValue(\"layout\",l.HashUtils.getHash()):1==e.length&&(t=e[0].getAttribute(\"data-layout\")),t||(t=\"list\"),e.length>1){var n=r.find(e,function(e){return e.getAttribute(\"data-layout\")==t});return n||(n=r.find(e,function(e){return null==e.getAttribute(\"data-layout\")})),n||(n=r.first(e)),{placeholderToUse:this.determineResultListFromLayout(t),resultListToUse:n,rootToUse:this.determineRootFromLayout(t)}}return 1==e.length?{placeholderToUse:this.determineResultListFromLayout(t),resultListToUse:e[0],rootToUse:this.determineRootFromLayout(t)}:null},e.prototype.determineResultListFromLayout=function(e){switch(e){case\"list\":return this.isRecommendationRoot()?this.recommendationResultListPlaceholder:this.resultListPlaceholder;case\"card\":return this.cardResultListPlaceholder;default:return this.resultListPlaceholder}},e.prototype.determineRootFromLayout=function(e){switch(e){case\"list\":return i.$$(\"div\").el;case\"card\":return i.$$(\"div\",{className:\"coveo-result-list-container coveo-card-layout-container\"}).el;default:return i.$$(\"div\").el}},e.prototype.isRecommendationRoot=function(){return i.$$(this.root).hasClass(\"CoveoRecommendation\")},e.NUMBER_OF_FACETS=3,e.NUMBER_OF_RESULTS=10,e.NUMBER_OF_RESULTS_RECOMMENDATION=5,e.INITIALIZATION_CLASS=\"coveo-during-initialization\",e.AFTER_INITIALIZATION_CLASS=\"coveo-after-initialization\",e}();t.InitializationPlaceholder=p},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(4),o=n(6),r=n(0),s=function(){function e(){}return e.splitSemicolonSeparatedListOfEmailAddresses=function(e){var t=e.split(/\\s*;\\s*/);return r.filter(t,function(e){return i.Utils.exists(e)&&i.Utils.isNonEmptyString(i.Utils.trim(e))})},e.emailAddressesToHyperlinks=function(t,n,s,a,u){void 0===a&&(a=2),void 0===u&&(u=!1),t=r.filter(t,function(e){return i.Utils.exists(e)&&i.Utils.isNonEmptyString(i.Utils.trim(e))});var l=r.map(t,function(t){var r=e.parseEmail(t),a=r[1],l=r[0];if(i.Utils.exists(s)&&a==s&&(l=o.l(\"Me\")),u){var c=l.split(\" \");i.Utils.isNullOrUndefined(c[1])||(l=c[0]+\" \"+c[1].substring(0,1)+\".\")}var p=a.indexOf(\"@\")>=0?a.indexOf(\"@\")+1:0,h=a.substr(p);return i.Utils.exists(n)&&h!=n&&(l+=\" (\"+h+\")\"),'<a title=\"'+t.replace(/'/g,\"&quot;\")+'\" href=\"mailto:'+encodeURI(a)+'\">'+l+\"</a>\"}),c=l.length-a,p=c>0?e.buildEmailAddressesAndOthers(r.last(l,c)):\"\";return r.first(l,a).join(\", \")+p},e.buildEmailAddressesAndOthers=function(e){return'<span class=\"coveo-emails-excess-collapsed coveo-active\" onclick=\"Coveo.TemplateHelpers.getHelper(\\'excessEmailToggle\\')(this);\"> '+o.l(\"AndOthers\",e.length.toString(),e.length)+'</span><span class=\"coveo-emails-excess-expanded\"> , '+e.join(\" , \")+\"</span>\"},e.parseEmail=function(e){var t,n=e.match(/^\\s*(.*)\\s+<(.*)>$/);return null!=n?(t=n[1],/^'.*'|'.*'$/.test(t)&&(t=t.substr(1,t.length-2)),e=n[2]):(t=e,e=e),[t,e]},e}();t.EmailUtils=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(){}return e.buildAttributeString=function(e){var t=[];return i.each(e,function(e,n,i){void 0!=e&&t.push(n+\"=\"+JSON.stringify(e.toString()))}),t.join(\" \")},e}();t.HTMLUtils=o;var r=function(){function e(){}return e.buildAnchor=function(e,t){var n;return t&&t.text?(n=t.text,t.text=void 0):n=e,\"<a href='\"+e+\"' \"+o.buildAttributeString(t)+\">\"+n+\"</a>\"},e}();t.AnchorUtils=r;var s=function(){function e(){}return e.buildImage=function(e,t){var n=\"<img \";return n+=e?\"src='\"+e+\"' \":\"\",n+=o.buildAttributeString(t)+\"/>\"},e.selectImageFromResult=function(e){return document.querySelector(\"img[data-coveo-uri-hash=\"+e.raw.urihash+\"]\")},e.buildImageWithDirectSrcAttribute=function(t,n){var i=new Image,o=t.getViewAsDatastreamUri(n.uniqueId,\"$Thumbnail$\",{contentType:\"image/png\"});i.onload=function(){e.selectImageFromResult(n).setAttribute(\"src\",o)},i.src=o},e.buildImageWithBase64SrcAttribute=function(t,n){t.getRawDataStream(n.uniqueId,\"$Thumbnail$\").then(function(t){var i=String.fromCharCode.apply(null,new Uint8Array(t));e.selectImageFromResult(n).setAttribute(\"src\",\"data:image/png;base64, \"+btoa(i))}).catch(function(){e.selectImageFromResult(n).remove()})},e.buildImageFromResult=function(t,n,o){o=o||{};var r=e.buildImage(void 0,i.extend(o,{\"data-coveo-uri-hash\":t.raw.urihash}));return n.isJsonp()?e.buildImageWithDirectSrcAttribute(n,t):e.buildImageWithBase64SrcAttribute(n,t),r},e}();t.ImageUtils=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(465),o=n(467),r=n(469),s=n(0),a=n(470),u=n(210),l=n(471),c=function(){function e(e,t){void 0===t&&(t={}),this.expressions={},this.start=new i.ExpressionRef(e,null,\"start\",this),this.addExpressions(t)}return e.prototype.addExpressions=function(e){var t=this;s.each(e,function(e,n){t.addExpression(n,e)})},e.prototype.addExpression=function(t,n){if(t in this.expressions)throw new Error(\"Grammar already contain the id:\"+t);this.expressions[t]=e.buildExpression(n,t,this)},e.prototype.getExpression=function(e){return this.expressions[e]},e.prototype.parse=function(e){return this.start.parse(e,!0)},e.buildExpression=function(e,t,n){if(void 0===e)throw new Error(\"Invalid Expression: \"+e);if(s.isString(e))return this.buildStringExpression(e,t,n);if(s.isArray(e))return new o.ExpressionOptions(s.map(e,function(e,o){return new i.ExpressionRef(e,null,t+\"_\"+o,n)}),t);if(s.isRegExp(e))return new r.ExpressionRegExp(e,t,n);if(s.isFunction(e))return new a.ExpressionFunction(e,t,n);throw new Error(\"Invalid Expression: \"+e)},e.buildStringExpression=function(t,n,o){var r=e.stringMatch(t,e.spliter),a=s.map(r,function(e,t){if(e[1]){var r=e[1],s=e[3]?Number(e[3]):e[2]||null;return new i.ExpressionRef(r,s,n+\"_\"+t,o)}return new u.ExpressionConstant(e[4],n+\"_\"+t)});if(1==a.length){var c=a[0];return c.id=n,c}return new l.ExpressionList(a,n)},e.stringMatch=function(e,t){for(var n=[],i=new RegExp(t.source,\"g\"),o=i.exec(e);null!==o;)n.push(o),o=i.exec(e);return n},e.spliter=/\\[(\\w+)(\\*|\\+|\\?|\\{([1-9][0-9]*)\\})?\\]|(.[^\\[]*)/,e}();t.Grammar=c},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i;!function(e){e[e.WINDOWS=0]=\"WINDOWS\",e[e.MACOSX=1]=\"MACOSX\",e[e.UNIX=2]=\"UNIX\",e[e.LINUX=3]=\"LINUX\",e[e.UNKNOWN=4]=\"UNKNOWN\"}(i=t.OS_NAME||(t.OS_NAME={}));var o=function(){function e(){}return e.get=function(e){void 0===e&&(e=navigator);return-1!=e.appVersion.indexOf(\"Win\")?i.WINDOWS:-1!=e.appVersion.indexOf(\"Mac\")?i.MACOSX:-1!=e.appVersion.indexOf(\"X11\")?i.UNIX:-1!=e.appVersion.indexOf(\"Linux\")?i.LINUX:i.UNKNOWN},e}();t.OSUtils=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(71),r=n(4),s=function(){function e(e,t,n,i){this.basicExpression=e,this.advancedExpression=t,this.constantExpression=n,this.disjunctionExpression=i}return e.isEmpty=function(e){var t=i.chain(e).values().compact().value();return i.isEmpty(t)},e.prototype.reset=function(){this.basicExpression=\"\",this.advancedExpression=\"\",this.constantExpression=\"\",this.disjunctionExpression=\"\"},Object.defineProperty(e.prototype,\"withoutConstant\",{get:function(){return this.expressionBuilders.withoutConstantExpression.build()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"full\",{get:function(){return o.ExpressionBuilder.mergeUsingOr(this.expressionBuilders.fullExpression,this.expressionBuilders.disjunctionExpression).build()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"basic\",{get:function(){return this.expressionBuilders.basicExpression.build()},set:function(e){this.basicExpression=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"advanced\",{get:function(){return this.expressionBuilders.advancedExpression.build()},set:function(e){this.advancedExpression=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"constant\",{get:function(){return this.expressionBuilders.constantExpression.build()},set:function(e){this.constantExpression=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"expressionBuilders\",{get:function(){var e=function(e,t){r.Utils.isNonEmptyString(t)&&e.add(t)},t=new o.ExpressionBuilder;e(t,this.basicExpression);var n=new o.ExpressionBuilder;e(n,this.advancedExpression);var i=new o.ExpressionBuilder;e(i,this.constantExpression);var s=new o.ExpressionBuilder;return e(s,this.disjunctionExpression),{basicExpression:t,advancedExpression:n,constantExpression:i,disjunctionExpression:s,withoutConstantExpression:o.ExpressionBuilder.merge(t,n),fullExpression:o.ExpressionBuilder.merge(t,n,i)}},enumerable:!0,configurable:!0}),e}();t.QueryBuilderExpression=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(52),o=n(84),r=n(1),s=function(){function e(e,t){this.inputName=e,this.root=t}return e.prototype.reset=function(){this.clear()},e.prototype.build=function(){return this.input=new i.TextInput(this.onChange.bind(this),this.inputName),this.input.getElement()},e.prototype.setValue=function(e){this.input.setValue(e)},e.prototype.getValue=function(){return this.input.getValue()},e.prototype.clear=function(){this.input.setValue(\"\")},e.prototype.updateQuery=function(e){var t=this.getValue();t&&e.advancedExpression.add(t)},e.prototype.onChange=function(){this.root?r.$$(this.root).trigger(o.AdvancedSearchEvents.executeAdvancedSearch):this.input&&r.$$(this.input.getElement()).trigger(o.AdvancedSearchEvents.executeAdvancedSearch)},e}();t.KeywordsInput=s},function(e,t,n){\"use strict\";function i(e,t,n,o){function r(t){return e(t=new Date(+t)),t}return r.floor=r,r.ceil=function(n){return e(n=new Date(n-1)),t(n,1),e(n),n},r.round=function(e){var t=r(e),n=r.ceil(e);return e-t<n-e?t:n},r.offset=function(e,n){return t(e=new Date(+e),null==n?1:Math.floor(n)),e},r.range=function(n,i,o){var s,a=[];if(n=r.ceil(n),o=null==o?1:Math.floor(o),!(n<i&&o>0))return a;do{a.push(s=new Date(+n)),t(n,o),e(n)}while(s<n&&n<i);return a},r.filter=function(n){return i(function(t){if(t>=t)for(;e(t),!n(t);)t.setTime(t-1)},function(e,i){if(e>=e)if(i<0)for(;++i<=0;)for(;t(e,-1),!n(e););else for(;--i>=0;)for(;t(e,1),!n(e););})},n&&(r.count=function(t,i){return s.setTime(+t),a.setTime(+i),e(s),e(a),Math.floor(n(s,a))},r.every=function(e){return e=Math.floor(e),isFinite(e)&&e>0?e>1?r.filter(o?function(t){return o(t)%e==0}:function(t){return r.count(0,t)%e==0}):r:null}),r}function o(e){return i(function(t){t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},function(e,t){e.setDate(e.getDate()+7*t)},function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*p)/h})}function r(e){return i(function(t){t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},function(e,t){e.setUTCDate(e.getUTCDate()+7*t)},function(e,t){return(t-e)/h})}var s=new Date,a=new Date,u=i(function(){},function(e,t){e.setTime(+e+t)},function(e,t){return t-e});u.every=function(e){return e=Math.floor(e),isFinite(e)&&e>0?e>1?i(function(t){t.setTime(Math.floor(t/e)*e)},function(t,n){t.setTime(+t+n*e)},function(t,n){return(n-t)/e}):u:null};var l=u,c=u.range,p=6e4,h=6048e5,d=i(function(e){e.setTime(1e3*Math.floor(e/1e3))},function(e,t){e.setTime(+e+1e3*t)},function(e,t){return(t-e)/1e3},function(e){return e.getUTCSeconds()}),f=d,m=d.range,y=i(function(e){e.setTime(Math.floor(e/p)*p)},function(e,t){e.setTime(+e+t*p)},function(e,t){return(t-e)/p},function(e){return e.getMinutes()}),g=y,v=y.range,b=i(function(e){var t=e.getTimezoneOffset()*p%36e5;t<0&&(t+=36e5),e.setTime(36e5*Math.floor((+e-t)/36e5)+t)},function(e,t){e.setTime(+e+36e5*t)},function(e,t){return(t-e)/36e5},function(e){return e.getHours()}),C=b,S=b.range,w=i(function(e){e.setHours(0,0,0,0)},function(e,t){e.setDate(e.getDate()+t)},function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*p)/864e5},function(e){return e.getDate()-1}),x=w,_=w.range,O=o(0),E=o(1),A=o(2),T=o(3),R=o(4),F=o(5),I=o(6),M=O.range,P=E.range,D=A.range,$=T.range,N=R.range,V=F.range,k=I.range,L=i(function(e){e.setDate(1),e.setHours(0,0,0,0)},function(e,t){e.setMonth(e.getMonth()+t)},function(e,t){return t.getMonth()-e.getMonth()+12*(t.getFullYear()-e.getFullYear())},function(e){return e.getMonth()}),B=L,Q=L.range,U=i(function(e){e.setMonth(0,1),e.setHours(0,0,0,0)},function(e,t){e.setFullYear(e.getFullYear()+t)},function(e,t){return t.getFullYear()-e.getFullYear()},function(e){return e.getFullYear()});U.every=function(e){return isFinite(e=Math.floor(e))&&e>0?i(function(t){t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},function(t,n){t.setFullYear(t.getFullYear()+n*e)}):null};var j=U,q=U.range,H=i(function(e){e.setUTCSeconds(0,0)},function(e,t){e.setTime(+e+t*p)},function(e,t){return(t-e)/p},function(e){return e.getUTCMinutes()}),z=H,W=H.range,G=i(function(e){e.setUTCMinutes(0,0,0)},function(e,t){e.setTime(+e+36e5*t)},function(e,t){return(t-e)/36e5},function(e){return e.getUTCHours()}),Y=G,K=G.range,J=i(function(e){e.setUTCHours(0,0,0,0)},function(e,t){e.setUTCDate(e.getUTCDate()+t)},function(e,t){return(t-e)/864e5},function(e){return e.getUTCDate()-1}),X=J,Z=J.range,ee=r(0),te=r(1),ne=r(2),ie=r(3),oe=r(4),re=r(5),se=r(6),ae=ee.range,ue=te.range,le=ne.range,ce=ie.range,pe=oe.range,he=re.range,de=se.range,fe=i(function(e){e.setUTCDate(1),e.setUTCHours(0,0,0,0)},function(e,t){e.setUTCMonth(e.getUTCMonth()+t)},function(e,t){return t.getUTCMonth()-e.getUTCMonth()+12*(t.getUTCFullYear()-e.getUTCFullYear())},function(e){return e.getUTCMonth()}),me=fe,ye=fe.range,ge=i(function(e){e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},function(e,t){e.setUTCFullYear(e.getUTCFullYear()+t)},function(e,t){return t.getUTCFullYear()-e.getUTCFullYear()},function(e){return e.getUTCFullYear()});ge.every=function(e){return isFinite(e=Math.floor(e))&&e>0?i(function(t){t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},function(t,n){t.setUTCFullYear(t.getUTCFullYear()+n*e)}):null};var ve=ge,be=ge.range;n.d(t,\"g\",function(){return i}),n.d(t,\"h\",function(){return l}),n.d(t,\"i\",function(){return c}),n.d(t,\"L\",function(){return l}),n.d(t,\"M\",function(){return c}),n.d(t,\"r\",function(){return f}),n.d(t,\"s\",function(){return m}),n.d(t,\"V\",function(){return f}),n.d(t,\"W\",function(){return m}),n.d(t,\"j\",function(){return g}),n.d(t,\"k\",function(){return v}),n.d(t,\"e\",function(){return C}),n.d(t,\"f\",function(){return S}),n.d(t,\"a\",function(){return x}),n.d(t,\"b\",function(){return _}),n.d(t,\"B\",function(){return O}),n.d(t,\"C\",function(){return M}),n.d(t,\"t\",function(){return O}),n.d(t,\"u\",function(){return M}),n.d(t,\"l\",function(){return E}),n.d(t,\"m\",function(){return P}),n.d(t,\"x\",function(){return A}),n.d(t,\"y\",function(){return D}),n.d(t,\"z\",function(){return T}),n.d(t,\"A\",function(){return $}),n.d(t,\"v\",function(){return R}),n.d(t,\"w\",function(){return N}),n.d(t,\"c\",function(){return F}),n.d(t,\"d\",function(){return V}),n.d(t,\"p\",function(){return I}),n.d(t,\"q\",function(){return k}),n.d(t,\"n\",function(){return B}),n.d(t,\"o\",function(){return Q}),n.d(t,\"D\",function(){return j}),n.d(t,\"E\",function(){return q}),n.d(t,\"N\",function(){return z}),n.d(t,\"O\",function(){return W}),n.d(t,\"J\",function(){return Y}),n.d(t,\"K\",function(){return K}),n.d(t,\"F\",function(){return X}),n.d(t,\"G\",function(){return Z}),n.d(t,\"_5\",function(){return ee}),n.d(t,\"_6\",function(){return ae}),n.d(t,\"X\",function(){return ee}),n.d(t,\"Y\",function(){return ae}),n.d(t,\"P\",function(){return te}),n.d(t,\"Q\",function(){return ue}),n.d(t,\"_1\",function(){return ne}),n.d(t,\"_2\",function(){return le}),n.d(t,\"_3\",function(){return ie}),n.d(t,\"_4\",function(){return ce}),n.d(t,\"Z\",function(){return oe}),n.d(t,\"_0\",function(){return pe}),n.d(t,\"H\",function(){return re}),n.d(t,\"I\",function(){return he}),n.d(t,\"T\",function(){return se}),n.d(t,\"U\",function(){return de}),n.d(t,\"R\",function(){return me}),n.d(t,\"S\",function(){return ye}),n.d(t,\"_7\",function(){return ve}),n.d(t,\"_8\",function(){return be})},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(26),r=n(3),s=n(1),a=n(82),u=n(14),l=n(12),c=n(4),p=n(7),h=n(8),d=n(2),f=n(28),m=n(90),y=function(e){function t(n,i,r,a,f){void 0===f&&(f=o.ModalBox);var y=e.call(this,n,t.ID,r)||this;y.element=n,y.options=i,y.bindings=r,y.result=a,y.ModalBox=f,y.options=h.ComponentOptions.initComponentOptions(n,t,i),y.resultLink=s.$$(\"a\",{className:p.Component.computeCssClassName(m.ResultLink)});var g=s.$$(\"div\",{className:\"coveo-youtube-thumbnail-container\"});y.resultLink.append(g.el);var v=s.$$(\"img\",{src:c.Utils.getFieldValue(y.result,\"ytthumbnailurl\"),className:\"coveo-youtube-thumbnail-img\",alt:y.result.title,title:y.result.title});v.el.style.width=y.options.width,v.el.style.height=y.options.height,v.el.onerror=function(){var e=s.$$(\"div\",{},l.SVGIcons.icons.video).el;u.SVGDom.addStyleToSVGInContainer(e,{width:y.options.width}),s.$$(v).remove(),g.append(e)},g.append(v.el);var b=s.$$(\"span\",{className:\"coveo-youtube-thumbnail-play-button\"});return g.append(b.el),s.$$(y.element).append(y.resultLink.el),d.Initialization.automaticallyCreateComponentsInsideResult(n,a,{ResultLink:y.options.embed?{onClick:function(){return y.openYoutubeIframe()}}:null}),y}return i(t,e),t.prototype.openResultLink=function(){f.get(this.resultLink.el).openLinkAsConfigured()},t.prototype.openYoutubeIframe=function(){var e=this,t=s.$$(\"iframe\",{src:\"https://www.youtube.com/embed/\"+this.extractVideoId()+\"?autoplay=1\",allowfullscreen:\"allowfullscreen\",width:\"100%\",height:\"100%\"}),n=s.$$(\"div\");n.append(t.el),this.modalbox=this.ModalBox.open(n.el,{overlayClose:!0,title:a.DomUtils.getQuickviewHeader(this.result,{showDate:!0,title:this.result.title},this.bindings).el,className:\"coveo-youtube-player\",validation:function(){return!0},body:this.element.ownerDocument.body,sizeMod:\"big\"}),s.$$(s.$$(this.modalbox.wrapper).find(\".coveo-quickview-close-button\")).on(\"click\",function(){e.modalbox.close()})},t.prototype.extractVideoId=function(){return this.result.clickUri.split(\"watch?v=\")[1]},t.ID=\"YouTubeThumbnail\",t.doExport=function(){r.exportGlobally({YouTubeThumbnail:t})},t.options={width:h.ComponentOptions.buildStringOption({defaultValue:\"200px\"}),height:h.ComponentOptions.buildStringOption({defaultValue:\"112px\"}),embed:h.ComponentOptions.buildBooleanOption({defaultValue:!0})},t}(p.Component);t.YouTubeThumbnail=y,d.Initialization.registerAutoCreateComponent(y)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(67),s=n(8),a=n(4),u=n(113),l=n(29),c=n(542),p=n(2),h=n(20),d=n(3),f=n(81),m=n(171),y=function(e){function t(n,i,o){var r=e.call(this,n,s.ComponentOptions.initComponentOptions(n,t,i),o,t.ID)||this;return r.element=n,r.options.enableFacetSearch=!1,r.options.enableSettings=!1,r.options.includeInOmnibox=!1,r.options.enableMoreLess=!1,m.ResponsiveFacets.init(r.root,r,r.options),r}return i(t,e),t.prototype.getValueCaption=function(t){return a.Utils.exists(this.options.valueCaption)&&\"string\"==typeof this.options.valueCaption?this.translateValueCaptionFromFunctionName(t):!a.Utils.exists(this.options.valueCaption)&&this.options.dateField?this.translateValueCaptionFromDate(t):e.prototype.getValueCaption.call(this,t)},t.prototype.initFacetQueryController=function(){this.facetQueryController=new c.FacetRangeQueryController(this)},t.prototype.processNewGroupByResults=function(t){var n=this;null!=t&&null==this.options.ranges&&t.values.sort(function(e,t){return n.sortRangeGroupByResults(e,t)}),e.prototype.processNewGroupByResults.call(this,t)},t.prototype.sortRangeGroupByResults=function(e,t){var n,i,o=this.extractStartAndEndValue(e),r=this.extractStartAndEndValue(t);return n=o?o.start:e.value,i=r?r.start:t.value,this.options.dateField?Date.parse(n)-Date.parse(i):Number(n)-Number(i)},t.prototype.translateValueCaptionFromFunctionName=function(e){var t=this.extractStartAndEndValue(e),n=t.start,i=t.end;if(null==n||null==i)return null;var o=u.TemplateHelpers.getHelper(this.options.valueCaption);if(null!=o)return o.call(this,n)+\" - \"+o.call(this,i);var r=n.match(/^[\\+\\-]?[0-9]+(\\.[0-9]+)?$/)?Number(n):l.DateUtils.convertFromJsonDateIfNeeded(n),s=i.match(/^[\\+\\-]?[0-9]+(\\.[0-9]+)?$/)?Number(i):l.DateUtils.convertFromJsonDateIfNeeded(i);return h.format(r,this.options.valueCaption)+\" - \"+h.format(s,this.options.valueCaption)},t.prototype.extractStartAndEndValue=function(e){var t=/^(.*)\\.\\.(.*)$/.exec(e.value);return null==t?null:{start:t[1],end:t[2]}},t.prototype.translateValueCaptionFromDate=function(e){var t=u.TemplateHelpers.getHelper(\"dateTime\"),n=this.extractStartAndEndValue(e),i=n.start,o=n.end,r={alwaysIncludeTime:!1,includeTimeIfThisWeek:!1,includeTimeIfToday:!1,omitYearIfCurrentOne:!1,useTodayYesterdayAndTomorrow:!1,useWeekdayIfThisWeek:!1};return t(i,r)+\" - \"+t(o,r)},t.ID=\"FacetRange\",t.parent=r.Facet,t.doExport=function(){d.exportGlobally({FacetRange:t})},t.options=o({dateField:s.ComponentOptions.buildBooleanOption({defaultValue:!1}),ranges:s.ComponentOptions.buildJsonOption()},f.ResponsiveFacetOptions),t}(r.Facet);t.FacetRange=y,p.Initialization.registerAutoCreateComponent(y)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(11),s=n(3),a=n(5),u=n(1),l=n(4),c=n(7),p=n(8),h=n(2),d=n(44),f=n(483),m=function(e){function t(n,i,o){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.options=p.ComponentOptions.initComponentOptions(n,t,i),a.Assert.check(l.Utils.isCoveoField(s.options.field),s.options.field+\" is not a valid field\"),a.Assert.exists(s.options.maximumExpandedResults),s.swapParentChildFoldingFields(),s.bind.onRootElement(r.QueryEvents.buildingQuery,s.handleBuildingQuery),s.bind.onRootElement(r.QueryEvents.preprocessResults,s.handlepreprocessResults),s}return i(t,e),t.foldWithParent=function(e){var n={score:Number.NEGATIVE_INFINITY,children:[],result:{raw:!1}};o.each(e,function(e,i){var r=t.findUniqueId(n.children,e.uniqueId);if(null==e.parentResult||e.parentResult.uniqueId==e.uniqueId)null==r&&(r={result:e,score:i,children:[]},n.children.push(r),r.parent=n);else{null!=r?(r.score=Math.min(i,r.score),r.parent.children=o.without(r.parent.children,r)):r={result:e,score:i,children:[]};var s=t.findUniqueId(n.children,e.parentResult.uniqueId);null==s&&(s={result:e.parentResult,score:Number.POSITIVE_INFINITY,children:[]},n.children.push(s),s.parent=n),s.children.push(r),r.parent=s;for(var a=s;null!=a&&r.score<a.score;)a.score=r.score,a=a.parent}});var i=t.resultNodeToQueryResult(n);return o.each(i.attachments,function(e){return e.parentResult=null}),i.attachments},t.defaultGetResult=function(e){var n=e.childResults||[];n.unshift(e),e.childResults=[],n=t.foldWithParent(n);var i=n.shift();return i.childResults=n,i},t.defaultGetMoreResults=function(e){return t.foldWithParent(e)},t.resultNodeToQueryResult=function(e){var n=e.result;return n.attachments=o.map(o.sortBy(e.children,\"score\"),t.resultNodeToQueryResult),n.parentResult=null!=e.parent?e.parent.result:null,n},t.findUniqueId=function(e,n){for(var i=0;i<e.length;i++){if(e[i].result.uniqueId==n)return e[i];var o=t.findUniqueId(e[i].children,n);if(null!=o)return o}return null},t.prototype.swapParentChildFoldingFields=function(){null!=this.options.childField&&(this.logger.warn('Detecting usage of deprecated option \"childField\". Assigning it automatically to the \"parent\" option instead.'),this.logger.warn(\"The option definition was changed to support universal folding across all sources.\"),this.logger.warn('To remove this warning, rename the \"childField\" option (data-child-field) to \"parent\" (data-parent).'),this.options.parent=this.options.childField),null!=this.options.parentField&&(this.logger.warn('Detecting usage of deprecated option \"parentField\". Assigning it automatically to the \"child\" option instead.'),this.logger.warn(\"The option definition was changed to support universal folding across all sources.\"),this.logger.warn('To remove this warning, rename the \"parentField\" option (data-parent-field) to \"child\" (data-child).'),this.options.child=this.options.parentField)},t.prototype.handleBuildingQuery=function(e){a.Assert.exists(e),this.disabled||(e.queryBuilder.childField=this.options.parent,e.queryBuilder.parentField=this.options.child,e.queryBuilder.filterField=this.options.field,e.queryBuilder.filterFieldRange=this.options.range,e.queryBuilder.requiredFields.push(this.options.field),null!=this.options.parent&&e.queryBuilder.requiredFields.push(this.options.parent),null!=this.options.child&&e.queryBuilder.requiredFields.push(this.options.child))},t.prototype.handlepreprocessResults=function(e){var n=this;a.Assert.exists(e),a.Assert.check(!e.results._folded,\"Two or more Folding components are active at the same time for the same Tab. Cannot process the results.\"),e.results._folded=!0;var i=e.results,r=this.options.getResult||t.defaultGetResult;i.results=o.map(i.results,r),this.options.rearrange&&i.results.forEach(function(e){e.childResults=o.sortBy(e.childResults,function(e){return l.Utils.getFieldValue(e,n.options.rearrange.sort)}),n.shouldBeReversed(e.childResults)&&(e.childResults=e.childResults.reverse())}),this.addLoadMoreHandler(i.results,e.query)},t.prototype.shouldBeReversed=function(e){var t=this;return\"ascending\"!=this.options.rearrange.direction&&!o.any(e,function(e){return l.Utils.isNullOrUndefined(l.Utils.getFieldValue(e,t.options.rearrange.sort))})},t.prototype.addLoadMoreHandler=function(e,t){var n=this;return o.map(e,function(e){return n.options.enableExpand&&!l.Utils.isNullOrUndefined(l.Utils.getFieldValue(e,n.options.field))&&(e.moreResults=function(){return n.moreResults(e,t)}),e})},t.prototype.moreResults=function(e,t){var n=this,i=o.clone(t),r=new d.QueryBuilder;i.numberOfResults=this.options.maximumExpandedResults;var s=l.Utils.getFieldValue(e,this.options.field);return l.Utils.isNonEmptyString(s)&&(r.advancedExpression.addFieldExpression(this.options.field,\"=\",[s]),i.aq=r.build().aq),l.Utils.isNonEmptyString(t.q)&&(t.enableQuerySyntax?i.q=\"( \"+t.q+\" ) OR @uri\":(i.enableQuerySyntax=!0,i.q=\"( <@- \"+t.q+\" -@> ) OR @uri\")),l.Utils.isNonEmptyString(this.options.expandExpression)&&(i.cq=this.options.expandExpression),null!=this.options.child&&(i.parentField=this.options.child),null!=this.options.parent&&(i.childField=this.options.parent),i.filterField=null,i.filterFieldRange=null,i.firstResult=0,this.options.rearrange?(this.options.rearrange.putInQueryBuilder(r),i.sortCriteria=r.sortCriteria,i.sortField=r.sortField):(i.sortCriteria=t.sortCriteria,i.sortField=t.sortField),this.queryController.getEndpoint().search(i).then(function(e){return n.handlePreprocessMoreResults(e),e.results}).catch(function(e){return n.logger.error(\"Invalid query performed while trying to retrieve more results for folding.\",e),[]})},t.prototype.handlePreprocessMoreResults=function(e){var n=this.options.getMoreResults||t.defaultGetMoreResults;e.results=n(e.results),u.$$(this.element).trigger(r.QueryEvents.preprocessMoreResults,{results:e})},t.ID=\"Folding\",t.doExport=function(){s.exportGlobally({Folding:t})},t.options={field:p.ComponentOptions.buildFieldOption({defaultValue:\"@foldingcollection\"}),child:p.ComponentOptions.buildFieldOption({defaultValue:\"@foldingchild\"}),parent:p.ComponentOptions.buildFieldOption({defaultValue:\"@foldingparent\"}),childField:p.ComponentOptions.buildFieldOption({deprecated:\"This option is deprecated. Instead, use the data-parent option.\"}),parentField:p.ComponentOptions.buildFieldOption({deprecated:\"This option is deprecated. Instead, use the data-child option.\"}),range:p.ComponentOptions.buildNumberOption({defaultValue:2,min:0}),rearrange:p.ComponentOptions.buildCustomOption(function(e){return l.Utils.isNonEmptyString(e)?f.SortCriteria.parse(e):null}),enableExpand:p.ComponentOptions.buildBooleanOption({defaultValue:!0}),expandExpression:p.ComponentOptions.buildQueryExpressionOption({depend:\"enableExpand\"}),maximumExpandedResults:p.ComponentOptions.buildNumberOption({defaultValue:100,min:1,depend:\"enableExpand\"}),getResult:p.ComponentOptions.buildCustomOption(function(){return null}),getMoreResults:p.ComponentOptions.buildCustomOption(function(){return null})},t}(c.Component);t.Folding=m,h.Initialization.registerAutoCreateComponent(m)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(5),a=n(21),u=n(2),l=n(4),c=n(111),p=n(1),h=n(3),d=n(131),f=function(e){function t(n,i,o,a){var u=e.call(this,n,t.ID,o)||this;return u.element=n,u.options=i,u.result=a,u.options=r.ComponentOptions.initComponentOptions(n,t,i),u.result=u.result||u.resolveResult(),s.Assert.exists(u.result),d.TemplateFieldsEvaluator.evaluateFieldsToMatch(u.options.conditions,u.result)?u.initialize(n,o):null!=u.element.parentElement&&u.element.parentElement.removeChild(u.element),u}return i(t,e),t.prototype.initialize=function(e,n){var i=p.$$(this.element).find(\".\"+o.Component.computeCssClassNameForType(\"Quickview\"));!l.Utils.isNullOrUndefined(i)&&a.QueryUtils.hasHTMLVersion(this.result)&&(p.$$(this.element).addClass(\"coveo-with-quickview\"),p.$$(this.element).on(\"click\",function(){o.Component.get(i).open()})),t.createIcon(this.result,this.options,e,n)},t.createIcon=function(e,n,i,o){void 0===n&&(n={}),void 0===i&&(i=p.$$(\"div\").el);var r=c.FileTypes.get(e);return!o&&e.searchInterface&&(o=e.searchInterface.getBindings()),r=t.preprocessIconInfo(n,r),p.$$(i).toggleClass(\"coveo-small\",!0===n.small),void 0!=n.value&&(!0===n.small&&-1==n.value.indexOf(\"-small\")&&(r.icon+=\"-small\"),!1===n.small&&-1!=n.value.indexOf(\"-small\")&&(r.icon=r.icon.replace(\"-small\",\"\"))),p.$$(i).addClass(r.icon),i.setAttribute(\"title\",r.caption),t.shouldDisplayLabel(n,o)&&(i.appendChild(p.$$(\"span\",{className:\"coveo-icon-caption-overlay\"},r.caption).el),p.$$(i).addClass(\"coveo-icon-with-caption-overlay\"),p.$$(i).setAttribute(\"data-with-label\",\"true\")),i},t.shouldDisplayLabel=function(e,t){return!1!==e.withLabel},t.preprocessIconInfo=function(e,t){return null!=e.labelValue&&(t.caption=e.labelValue),null!=e.value&&(t.icon=\"coveo-icon \"+e.value),null==t.caption&&(t.caption=\"\"),null==t.icon&&(t.icon=\"coveo-icon coveo-sprites-custom\"),t},t.ID=\"Icon\",t.doExport=function(){h.exportGlobally({Icon:t})},t.options={value:r.ComponentOptions.buildStringOption(),small:r.ComponentOptions.buildBooleanOption(),withLabel:r.ComponentOptions.buildBooleanOption(),labelValue:r.ComponentOptions.buildLocalizedStringOption(),conditions:r.ComponentOptions.buildFieldConditionOption()},t}(o.Component);t.Icon=f,u.Initialization.registerAutoCreateComponent(f)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0}),n(543);var r=n(0),s=n(0),a=n(32),u=n(33),l=n(11),c=n(92),p=n(3),h=n(175),d=n(478),f=n(479),m=n(213),y=n(5),g=n(27),v=n(15),b=n(13),C=n(6),S=n(1),w=n(4),x=n(10),_=n(122),O=n(120),E=n(7),A=n(8),T=n(2),R=n(135),F=n(481),I=n(482),M=n(18),P=n(544),D=n(545),$=n(546),N=n(547),V=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;r.element=n,r.options=i,r.lastSuggestions=[],r.movedOnce=!1,r.skipAutoSuggest=!1,r.options=A.ComponentOptions.initComponentOptions(n,t,i);var s=r.options.enableQuerySyntax;return new F.QueryboxOptionsProcessing(r).postProcess(),r.omniboxAnalytics=r.searchInterface.getOmniboxAnalytics(),S.$$(r.element).toggleClass(\"coveo-query-syntax-disabled\",0==r.options.enableQuerySyntax),r.suggestionAddon=r.options.enableQuerySuggestAddon?new N.QuerySuggestAddon(r):new N.VoidQuerySuggestAddon,new D.OldOmniboxAddon(r),r.createMagicBox(),r.bind.onRootElement(l.QueryEvents.newQuery,function(e){return r.handleNewQuery(e)}),r.bind.onRootElement(l.QueryEvents.buildingQuery,function(e){return r.handleBuildingQuery(e)}),r.bind.onRootElement(c.StandaloneSearchInterfaceEvents.beforeRedirect,function(){return r.handleBeforeRedirect()}),r.bind.onRootElement(l.QueryEvents.querySuccess,function(){return r.handleQuerySuccess()}),r.bind.onQueryState(v.MODEL_EVENTS.CHANGE_ONE,b.QUERY_STATE_ATTRIBUTES.Q,function(e){return r.handleQueryStateChanged(e)}),r.isAutoSuggestion()&&r.bind.onRootElement(l.QueryEvents.duringQuery,function(e){return r.handleDuringQuery(e)}),r.bind.onComponentOptions(v.MODEL_EVENTS.CHANGE_ONE,g.COMPONENT_OPTIONS_ATTRIBUTES.SEARCH_BOX,function(e){null!=e.value.enableQuerySyntax?r.options.enableQuerySyntax=e.value.enableQuerySyntax:r.options.enableQuerySyntax=s,r.updateGrammar()}),r.bind.onRootElement(u.OmniboxEvents.querySuggestGetFocus,function(e){return r.handleQuerySuggestGetFocus(e)}),r}return i(t,e),t.prototype.submit=function(){var e=this;this.magicBox.clearSuggestion(),this.updateQueryState(),this.triggerNewQuery(!1,function(){O.logSearchBoxSubmitEvent(e.usageAnalytics)}),this.magicBox.blur()},t.prototype.getText=function(){return this.magicBox.getText()},t.prototype.setText=function(e){this.magicBox.setText(e),this.updateQueryState()},t.prototype.clear=function(){this.magicBox.clear()},t.prototype.getInput=function(){return this.magicBox.element.querySelector(\"input\")},t.prototype.getResult=function(){return this.magicBox.getResult()},t.prototype.getDisplayedResult=function(){return this.magicBox.getDisplayedResult()},t.prototype.getCursor=function(){return this.magicBox.getCursor()},t.prototype.resultAtCursor=function(e){return this.magicBox.resultAtCursor(e)},t.prototype.createGrammar=function(){var e=null;return this.options.enableQuerySyntax?(e=f.Expressions(d.Complete),this.options.enableFieldAddon&&new P.FieldAddon(this),null!=this.options.fieldAlias&&(this.options.listOfFields=this.options.listOfFields||[],this.options.listOfFields=this.options.listOfFields.concat(r.keys(this.options.fieldAlias))),this.options.enableQueryExtensionAddon&&new $.QueryExtensionAddon(this)):e={start:\"Any\",expressions:{Any:/.*/}},null!=this.options.grammar&&(e=this.options.grammar(e)),e},t.prototype.updateGrammar=function(){var e=this.createGrammar();this.magicBox.grammar=new h.Grammar(e.start,e.expressions),this.magicBox.setText(this.magicBox.getText())},t.prototype.createMagicBox=function(){var e=this.createGrammar();this.magicBox=m.createMagicBox(this.element,new h.Grammar(e.start,e.expressions),{inline:this.options.inline,selectableSuggestionClass:\"coveo-omnibox-selectable\",selectedSuggestionClass:\"coveo-omnibox-selected\",suggestionTimeout:this.options.omniboxTimeout});var t=S.$$(this.magicBox.element).find(\"input\");t&&S.$$(t).setAttribute(\"aria-label\",C.l(\"SubmitSearch\")),this.setupMagicBox()},t.prototype.setupMagicBox=function(){var e=this;this.magicBox.onmove=function(){e.isAutoSuggestion()&&(e.modifyEventTo=e.getOmniboxAnalyticsEventCause()),e.movedOnce=!0},this.magicBox.onfocus=function(){e.isAutoSuggestion()&&(e.skipAutoSuggest=!0)},this.magicBox.onSuggestions=function(t){w.Utils.isEmptyString(e.getText())&&(e.omniboxAnalytics.partialQueries=[]),e.movedOnce=!1,e.lastSuggestions=t,e.isAutoSuggestion()&&!e.skipAutoSuggest&&e.searchAsYouType()},this.options.enableSearchAsYouType&&S.$$(this.element).addClass(\"coveo-magicbox-search-as-you-type\"),this.magicBox.onchange=function(){e.skipAutoSuggest=!1;var t=e.getText();void 0!=t&&\"\"!=t?e.isAutoSuggestion()?e.movedOnce&&e.searchAsYouType(!0):e.options.enableSearchAsYouType&&e.searchAsYouType(!0):e.clear()},this.options.placeholder&&(this.magicBox.element.querySelector(\"input\").placeholder=this.options.placeholder),this.magicBox.onsubmit=function(){return e.submit()},this.magicBox.onselect=function(t){var n=r.indexOf(e.lastSuggestions,t),i=r.compact(r.map(e.lastSuggestions,function(e){return e.text}));e.magicBox.clearSuggestion(),e.updateQueryState(),e.isAutoSuggestion()?e.isAutoSuggestion()&&e.movedOnce?e.handleAutoSuggestionWithKeyboard(n,i):e.isAutoSuggestion()&&!e.movedOnce&&e.handleAutoSuggestionsWithMouse(n,i):(e.usageAnalytics.cancelAllPendingEvents(),e.triggerNewQuery(!1,function(){e.usageAnalytics.logSearchEvent(e.getOmniboxAnalyticsEventCause(),e.buildCustomDataForPartialQueries(n,i))})),e.isAutoSuggestion()&&(e.omniboxAnalytics.partialQueries=[])},this.magicBox.onblur=function(){e.isAutoSuggestion()&&(e.setText(e.getQuery(!0)),e.usageAnalytics.sendAllPendingEvents())},this.magicBox.onclear=function(){e.updateQueryState(),(e.options.triggerQueryOnClear||e.options.enableSearchAsYouType)&&e.triggerNewQuery(!1,function(){e.usageAnalytics.logSearchEvent(x.analyticsActionCauseList.searchboxClear,{})})},this.magicBox.ontabpress=function(){e.handleTabPress()},this.magicBox.getSuggestions=function(){return e.handleSuggestions()}},t.prototype.handleAutoSuggestionWithKeyboard=function(e,t){var n=this;this.searchAsYouTypeTimeout?(this.usageAnalytics.cancelAllPendingEvents(),clearTimeout(this.searchAsYouTypeTimeout),this.searchAsYouTypeTimeout=void 0,this.triggerNewQuery(!1,function(){n.usageAnalytics.logSearchEvent(n.getOmniboxAnalyticsEventCause(),n.buildCustomDataForPartialQueries(e,t))})):(this.modifyEventTo=this.getOmniboxAnalyticsEventCause(),this.modifyCustomDataOnPending(e,t),this.modifyQueryContentOnPending(),this.usageAnalytics.sendAllPendingEvents())},t.prototype.handleAutoSuggestionsWithMouse=function(e,t){var n=this;this.searchAsYouTypeTimeout||0!=e?(this.clearSearchAsYouType(),this.usageAnalytics.cancelAllPendingEvents(),this.triggerNewQuery(!1,function(){n.usageAnalytics.logSearchEvent(n.getOmniboxAnalyticsEventCause(),n.buildCustomDataForPartialQueries(e,t))})):(this.modifyEventTo=this.getOmniboxAnalyticsEventCause(),this.modifyCustomDataOnPending(e,t),this.modifyQueryContentOnPending(),this.usageAnalytics.sendAllPendingEvents(),this.lastQuery!=this.getText()&&this.triggerNewQuery(!1,function(){n.usageAnalytics.logSearchEvent(n.getOmniboxAnalyticsEventCause(),n.buildCustomDataForPartialQueries(e,t))}))},t.prototype.modifyCustomDataOnPending=function(e,t){var n=this.usageAnalytics.getPendingSearchEvent();if(n instanceof _.PendingSearchAsYouTypeSearchEvent){var i=this.buildCustomDataForPartialQueries(e,t);r.each(r.keys(i),function(e){n.modifyCustomData(e,i[e])})}},t.prototype.modifyQueryContentOnPending=function(){var e=this.usageAnalytics.getPendingSearchEvent();if(e instanceof _.PendingSearchAsYouTypeSearchEvent){var t=this.getQuery(this.options.enableSearchAsYouType);e.modifyQueryContent(t)}},t.prototype.buildCustomDataForPartialQueries=function(e,t){return this.updateOmniboxAnalytics(t,e),this.omniboxAnalytics.buildCustomDataForPartialQueries()},t.prototype.handleQuerySuggestGetFocus=function(e){var t=e.suggestion,n=r.compact(r.map(this.lastSuggestions,function(e){return e.text})),i=this.lastSuggestions.indexOf(s.findWhere(this.lastSuggestions,{text:t}));this.updateOmniboxAnalytics(n,i)},t.prototype.updateOmniboxAnalytics=function(e,t){this.omniboxAnalytics.suggestions=e,this.omniboxAnalytics.suggestionRanking=t},t.prototype.handleSuggestions=function(){var e=this.getText();if(this.options.querySuggestCharacterThreshold<=e.length){var t={suggestions:[],omnibox:this};return this.triggerOmniboxSuggestions(t),w.Utils.isNullOrEmptyString(e)||this.omniboxAnalytics.partialQueries.push(e),r.compact(t.suggestions)}return[]},t.prototype.triggerOmniboxSuggestions=function(e){this.bind.trigger(this.element,u.OmniboxEvents.populateOmniboxSuggestions,e),S.$$(this.element).isDescendant(this.root)||this.bind.trigger(this.root,u.OmniboxEvents.populateOmniboxSuggestions,e)},t.prototype.handleBeforeRedirect=function(){this.updateQueryState()},t.prototype.handleBuildingQuery=function(e){var t=this;y.Assert.exists(e),y.Assert.exists(e.queryBuilder),this.updateQueryState(),this.lastQuery=this.getQuery(e.searchAsYouType);var n=this.lastQuery==this.magicBox.getDisplayedResult().input?this.magicBox.getDisplayedResult().clone():this.magicBox.grammar.parse(this.lastQuery).clean(),i={result:n};if(this.options.enableQuerySyntax){var o=i.result.findAll(\"FieldValueNotQuoted\");if(r.each(o,function(e){return e.value='\"'+e.value.replace(/\"|\\u00A0/g,\" \")+'\"'}),this.options.fieldAlias){var s=i.result.findAll(function(e){return\"FieldName\"==e.expression.id&&e.isSuccess()});r.each(s,function(e){var n=r.find(r.keys(t.options.fieldAlias),function(t){return t.toLowerCase()==e.value.toLowerCase()});null!=n&&(e.value=t.options.fieldAlias[n])})}}this.triggerOmniboxPreprocessResultForQuery(i);var a=i.result.toString();new I.QueryboxQueryParameters(this.options).addParameters(e.queryBuilder,a)},t.prototype.triggerOmniboxPreprocessResultForQuery=function(e){this.bind.trigger(this.element,u.OmniboxEvents.omniboxPreprocessResultForQuery,e),S.$$(this.element).isDescendant(this.root)||this.bind.trigger(this.root,u.OmniboxEvents.omniboxPreprocessResultForQuery,e)},t.prototype.handleNewQuery=function(e){y.Assert.exists(e),this.options.clearFiltersOnNewQuery&&this.clearFiltersIfNewQuery(e)},t.prototype.clearFiltersIfNewQuery=function(e){var n=e.origin,i=e.searchAsYouType;if(!this.queryController.firstQuery){var o=[t.ID,\"SearchButton\"];if(n&&-1!==o.indexOf(n.type)){(this.queryController.getLastQuery().q||\"\")!==this.getQuery(i)&&this.bind.trigger(this.root,a.BreadcrumbEvents.clearBreadcrumb)}}},t.prototype.handleTabPress=function(){this.options.enableQuerySuggestAddon&&this.handleTabPressForSuggestions(),this.handleTabPressForOldOmniboxAddon()},t.prototype.handleTabPressForSuggestions=function(){if(this.options.enableSearchAsYouType)this.setText(this.getQuery(!0));else{var e=r.compact(r.map(this.lastSuggestions,function(e){return e.text}));this.usageAnalytics.logCustomEvent(this.getOmniboxAnalyticsEventCause(),this.buildCustomDataForPartialQueries(0,e),this.element)}},t.prototype.handleTabPressForOldOmniboxAddon=function(){var e=this.lastSuggestions.filter(function(e){return e.dom}).map(function(e){return S.$$(e.dom)}),t=this.findAllElementsWithClass(e,\".coveo-omnibox-selected\");if(t.length>0)S.$$(t[0]).trigger(\"tabSelect\");else if(!this.options.enableQuerySuggestAddon){var n=this.findAllElementsWithClass(e,\".coveo-omnibox-selectable\");n.length>0&&S.$$(n[0]).trigger(\"tabSelect\")}},t.prototype.findAllElementsWithClass=function(e,t){return e.map(function(e){return e.find(t)}).filter(function(e){return e}).reduce(function(e,t){return e.concat(t)},[])},t.prototype.triggerNewQuery=function(e,t){clearTimeout(this.searchAsYouTypeTimeout);var n=this.shouldExecuteQuery(e);this.lastQuery=this.getQuery(e),n&&t(),this.queryController.executeQuery({searchAsYouType:e,logInActionsHistory:!0,cancel:!n,origin:this})},t.prototype.getQuery=function(e){if(this.lastQuery==this.magicBox.getText())return this.lastQuery;if(!e)return this.magicBox.getText();var t=this.magicBox.getWordCompletion();if(null!=t)return t;var n=this.magicBox.getWordCompletion()||this.getFirstSuggestion();return n||(this.isAutoSuggestion()?this.lastQuery||this.magicBox.getText():this.magicBox.getText())},t.prototype.getFirstSuggestion=function(){if(null==this.lastSuggestions)return\"\";if(this.lastSuggestions.length<=0)return\"\";var e=r.find(this.lastSuggestions,function(e){return null!=e.text});return null==e?\"\":e.text},t.prototype.updateQueryState=function(){this.queryStateModel.set(b.QueryStateModel.attributesEnum.q,this.magicBox.getText())},t.prototype.handleQueryStateChanged=function(e){y.Assert.exists(e);var t=e.value;t!=this.magicBox.getText()&&this.magicBox.setText(t)},t.prototype.handleQuerySuccess=function(){this.isAutoSuggestion()||(this.omniboxAnalytics.partialQueries=[])},t.prototype.handleDuringQuery=function(e){var t=this;e.promise.then(function(){var n=t.usageAnalytics.getPendingSearchEvent();n instanceof _.PendingSearchAsYouTypeSearchEvent&&n.beforeResolve.then(function(n){e.promise.then(function(){t.modifyEventTo&&(n.modifyEventCause(t.modifyEventTo),t.modifyEventTo=null)})})})},t.prototype.searchAsYouType=function(e){var t=this;void 0===e&&(e=!1),this.clearSearchAsYouType(),this.shouldExecuteQuery(!0)&&(this.searchAsYouTypeTimeout=window.setTimeout(function(){if(t.suggestionShouldTriggerQuery()||e){var n=r.map(t.lastSuggestions,function(e){return e.text}),i=r.indexOf(n,t.magicBox.getWordCompletion());t.triggerNewQuery(!0,function(){t.usageAnalytics.logSearchAsYouType(x.analyticsActionCauseList.searchboxAsYouType,t.buildCustomDataForPartialQueries(i,n))}),t.clearSearchAsYouType()}},this.options.searchAsYouTypeDelay))},t.prototype.isAutoSuggestion=function(){return this.options.enableSearchAsYouType&&this.options.enableQuerySuggestAddon},t.prototype.shouldExecuteQuery=function(e){var t=this.getQuery(e);return!1===this.searchInterface.options.allowQueriesWithoutKeywords?this.lastQuery!=t&&w.Utils.isNonEmptyString(t):this.lastQuery!=t&&null!=t},t.prototype.suggestionShouldTriggerQuery=function(e){if(void 0===e&&(e=this.lastSuggestions),this.shouldExecuteQuery(!0)&&e&&e[0]){var t=e[0];if(t&&void 0!=t.executableConfidence)return t.executableConfidence>=.8;if(t.text&&0==t.text.indexOf(this.magicBox.getText()))return!0}return!1},t.prototype.clearSearchAsYouType=function(){clearTimeout(this.searchAsYouTypeTimeout),this.searchAsYouTypeTimeout=void 0},t.prototype.getOmniboxAnalyticsEventCause=function(){return this.searchInterface instanceof M.StandaloneSearchInterface?x.analyticsActionCauseList.omniboxFromLink:x.analyticsActionCauseList.omniboxAnalytics},t.ID=\"Omnibox\",t.doExport=function(){p.exportGlobally({Omnibox:t,QueryboxQueryParameters:I.QueryboxQueryParameters})},t.options={inline:A.ComponentOptions.buildBooleanOption({defaultValue:!1}),enableSearchAsYouType:A.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"Advanced Options\"}),searchAsYouTypeDelay:A.ComponentOptions.buildNumberOption({defaultValue:2e3,min:0,depend:\"enableSearchAsYouType\",section:\"Advanced Options\"}),enableFieldAddon:A.ComponentOptions.buildBooleanOption({defaultValue:!1,depend:\"enableQuerySyntax\",postProcessing:function(e,t){return e&&(t.enableQuerySyntax=!0),e},section:\"Advanced Options\"}),enableSimpleFieldAddon:A.ComponentOptions.buildBooleanOption({defaultValue:!1,depend:\"enableFieldAddon\"}),listOfFields:A.ComponentOptions.buildFieldsOption({depend:\"enableFieldAddon\"}),enableQuerySuggestAddon:A.ComponentOptions.buildBooleanOption({defaultValue:!0,alias:[\"enableTopQueryAddon\",\"enableRevealQuerySuggestAddon\"]}),enableQueryExtensionAddon:A.ComponentOptions.buildBooleanOption({defaultValue:!1,depend:\"enableQuerySyntax\",postProcessing:function(e,t){return e&&(t.enableQuerySyntax=!0),e},section:\"Advanced Options\"}),placeholder:A.ComponentOptions.buildLocalizedStringOption(),omniboxTimeout:A.ComponentOptions.buildNumberOption({defaultValue:2e3,min:0}),enableQuerySyntax:A.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"Advanced Options\"}),numberOfSuggestions:A.ComponentOptions.buildNumberOption({defaultValue:5,min:1}),querySuggestCharacterThreshold:A.ComponentOptions.buildNumberOption({defaultValue:0,min:0}),clearFiltersOnNewQuery:A.ComponentOptions.buildBooleanOption({defaultValue:!1})},t}(E.Component);t.Omnibox=V,V.options=o({},V.options,R.Querybox.options),T.Initialization.registerAutoCreateComponent(V)},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(0),r=n(6);n(548);var s=n(4),a=n(3),u=function(){function e(e,t,n){void 0===e&&(e=function(e){}),this.onChange=e,this.options=t,this.label=n,this.buildContent()}return e.doExport=function(){a.exportGlobally({MultiSelect:e})},e.prototype.build=function(){return this.element},e.prototype.getElement=function(){return this.element},e.prototype.getValue=function(){return o.chain(this.element.options).toArray().filter(function(e){return e.selected}).map(function(e){return e.value}).value()},e.prototype.getUnselectedValues=function(){return o.chain(this.element.options).toArray().filter(function(e){return!e.selected}).map(function(e){return e.value}).value()},e.prototype.setValue=function(e){var t=this.getValue(),n=o.partition(o.toArray(this.element.options),function(e){return o.contains(t,e.value)}),r=o.partition(o.toArray(this.element.options),function(t){return o.contains(e,t.value)});o.each(r[0],function(e){return e.selected=!0}),o.each(r[1],function(e){return e.selected=!1});var a=!1;s.Utils.arrayEqual(n[0],r[0],!1)||(a=!0),s.Utils.arrayEqual(n[1],r[1],!1)||(a=!0),a&&i.$$(this.element).trigger(\"change\")},e.prototype.reset=function(){var e=this.getValue();this.element.selectedIndex=-1,s.Utils.isEmptyArray(e)||i.$$(this.element).trigger(\"change\")},e.prototype.buildContent=function(){var e=this;this.element=i.$$(\"select\",{className:\"mdc-multi-select mdl-list\",multiple:\"\",size:this.options.length.toString()}).el;var t=i.$$(\"optgroup\",{className:\"mdc-list-group\",label:this.label}),n=o.map(this.options,function(e){return i.$$(\"option\",{value:e,className:\"mdc-list-item\"},r.l(e))});o.each(n,function(e){return t.append(e.el)}),this.element.appendChild(t.el),i.$$(this.element).on(\"change\",function(){return e.onChange(e)})},e}();t.MultiSelect=u},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(3),r=n(6),s=n(17),a=n(1),u=n(14),l=n(12),c=n(4),p=n(10),h=n(7),d=n(2),f=n(13),m=function(e){function t(n,i,o){var p=e.call(this,n,t.ID,o)||this;if(p.element=n,p.options=i,(new s.AccessibleButton).withElement(n).withOwner(p.bind).withLabel(r.l(\"Search\")).withSelectAction(function(){return p.handleClick()}).build(),\"\"==c.Utils.trim(a.$$(p.element).text())){var h=a.$$(\"span\",{className:\"coveo-search-button\"},l.SVGIcons.icons.search).el;u.SVGDom.addClassToSVGInContainer(h,\"coveo-search-button-svg\");var d=a.$$(\"span\",{className:\"coveo-search-button-loading\"},l.SVGIcons.icons.loading).el;u.SVGDom.addClassToSVGInContainer(d,\"coveo-search-button-loading-svg\"),n.appendChild(h),n.appendChild(d)}return p}return i(t,e),t.prototype.click=function(){this.handleClick()},t.prototype.handleClick=function(){this.logger.debug(\"Performing query following button click\"),this.updateQueryStateModelWithSearchboxQuery(),this.usageAnalytics.logSearchEvent(p.analyticsActionCauseList.searchboxSubmit,{}),this.queryController.executeQuery({origin:this})},t.prototype.updateQueryStateModelWithSearchboxQuery=function(){var e=this.options&&this.options.searchbox;e&&this.queryStateModel.set(f.QueryStateModel.attributesEnum.q,e.getText())},t.ID=\"SearchButton\",t.doExport=function(){o.exportGlobally({SearchButton:t})},t.options={},t}(h.Component);t.SearchButton=m,d.Initialization.registerAutoCreateComponent(m)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(23),r=n(3),s=n(8),a=n(117),u=function(e){function t(n,i,o,r){var u=e.call(this,n,t.ID,o)||this;u.element=n,u.options=i,u.result=r,u.options=s.ComponentOptions.initComponentOptions(n,t,i);var l={field:u.options.field,helper:\"image\",htmlValue:!0,helperOptions:{height:u.options.height,width:u.options.width,alt:r.title,srcTemplate:u.options.srcTemplate}};return new a.FieldValue(n,l,o,r),u}return i(t,e),t.ID=\"ImageFieldValue\",t.doExport=function(){r.exportGlobally({ImageFieldValue:t})},t.options={field:s.ComponentOptions.buildFieldOption({required:!0}),width:s.ComponentOptions.buildNumberOption(),height:s.ComponentOptions.buildNumberOption(),srcTemplate:s.ComponentOptions.buildStringOption()},t}(o.Component);t.ImageFieldValue=u,o.Initialization.registerAutoCreateComponent(u)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0}),n(574);var r=n(0),s=n(575),a=n(32),u=n(16),l=n(11),c=n(83),p=n(138),h=n(3),d=n(5),f=n(70),m=n(15),y=n(13),g=n(6),v=n(1),b=n(14),C=n(12),S=n(4),w=n(10),x=n(7),_=n(8),O=n(2),E=n(457),A=n(576),T=n(124),R=n(116),F=n(81),I=n(578),M=function(e){function t(n,i,o,r){var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.slider=r,a.isSimpleSliderConfig=!1,a.isEmpty=!1,a.options=_.ComponentOptions.initComponentOptions(n,t,i),a.isSimpleSliderConfig=null!=a.options.start&&null!=a.options.end,I.ResponsiveFacetSlider.init(a.root,a,a.options),null==a.options.excludeOuterBounds&&(a.options.excludeOuterBounds=!1),a.normalizeStartAndEndOptionsValues(),a.facetQueryController=new s.FacetSliderQueryController(a),a.bindQueryStateEvents(),a.bindQueryEvents(),a.bindResizeEvents(),a.bindBreadcrumbEvents(),a.bind.onRootElement(c.SearchAlertsEvents.searchAlertsPopulateMessage,function(e){return a.handlePopulateSearchAlerts(e)}),a}return i(t,e),t.prototype.isCurrentlyDisplayed=function(){return!!v.$$(this.element).isVisible()&&!v.$$(this.element).hasClass(\"coveo-disabled-empty\")},t.prototype.createDom=function(){this.facetHeader=new E.FacetHeader({field:this.options.field,facetElement:this.element,title:this.options.title,enableClearElement:!0,enableCollapseElement:!0,facetSlider:this}),this.element.appendChild(this.facetHeader.build())},t.prototype.reset=function(){this.slider&&(this.slider.initializeState(),this.updateQueryState(),this.updateAppearanceDependingOnState())},t.prototype.getSelectedValues=function(){return void 0!=this.startOfSlider&&void 0!=this.endOfSlider?[this.startOfSlider,this.endOfSlider]:[void 0,void 0]},t.prototype.setSelectedValues=function(e){this.setupSliderIfNeeded(void 0),this.startOfSlider=e[0],this.endOfSlider=e[1],this.slider.setValues([this.startOfSlider,this.endOfSlider]),this.updateAppearanceDependingOnState()},t.prototype.isActive=function(){return!(isNaN(this.startOfSlider)||isNaN(this.endOfSlider)||isNaN(this.initialStartOfSlider)||isNaN(this.initialEndOfSlider)||this.startOfSlider==this.initialStartOfSlider&&this.endOfSlider==this.initialEndOfSlider)},t.prototype.getSliderBoundaryForQuery=function(){var e=!1;return this.slider?this.slider&&this.isActive()&&(e=!0):e=!0,e?this.generateBoundary():void 0},t.prototype.drawDelayedGraphData=function(){null==this.delayedGraphData||this.isEmpty||this.slider.drawGraph(this.delayedGraphData),this.delayedGraphData=null},t.prototype.hasAGraph=function(){return void 0!=this.options.graph},t.prototype.normalizeStartAndEndOptionsValues=function(){this.options.start&&(this.options.start=this.options.dateField?new Date(this.options.start.replace(/-/g,\"/\")).getTime():Number(this.options.start)),this.options.end&&(this.options.end=this.options.dateField?new Date(this.options.end.replace(/-/g,\"/\")).getTime():Number(this.options.end))},t.prototype.bindQueryEvents=function(){var e=this;this.bind.onRootElement(l.QueryEvents.newQuery,function(){return e.handleNewQuery()}),this.bind.onRootElement(l.QueryEvents.noResults,function(){return e.handleNoresults()}),this.bind.onRootElement(l.QueryEvents.deferredQuerySuccess,function(t){return e.handleDeferredQuerySuccess(t)}),this.bind.onRootElement(l.QueryEvents.buildingQuery,function(t){return e.handleBuildingQuery(t)}),this.bind.onRootElement(l.QueryEvents.doneBuildingQuery,function(t){return e.handleDoneBuildingQuery(t)})},t.prototype.bindResizeEvents=function(){var e=this;this.onResize=r.debounce(function(){T.ResponsiveComponentsUtils.shouldDrawFacetSlider(v.$$(e.root),v.$$(e.element))&&e.slider&&!e.isEmpty&&(e.delayedGraphData?e.drawDelayedGraphData():e.slider.drawGraph()),e.slider&&e.slider.onMoving()},250),window.addEventListener(\"resize\",this.onResize),this.bind.onRootElement(R.ResponsiveDropdownEvent.OPEN,this.onResize),this.bind.onRootElement(\"onPopupOpen\",this.onResize),v.$$(this.root).on(u.InitializationEvents.nuke,function(){return e.handleNuke()})},t.prototype.bindBreadcrumbEvents=function(){var e=this;this.bind.onRootElement(a.BreadcrumbEvents.clearBreadcrumb,function(){return e.reset()}),this.bind.onRootElement(a.BreadcrumbEvents.populateBreadcrumb,function(t){return e.handlePopulateBreadcrumb(t)})},t.prototype.handleNoresults=function(){this.isEmpty=!0,this.updateAppearanceDependingOnState()},t.prototype.handleNewQuery=function(){this.isEmpty=!1},t.prototype.handleRangeQueryStateChanged=function(e){this.setupSliderIfNeeded(e),this.startOfSlider=void 0==e.value[0]?this.startOfSlider:e.value[0],this.endOfSlider=void 0==e.value[1]?this.endOfSlider:e.value[1],this.setSelectedValues([this.startOfSlider,this.endOfSlider])},t.prototype.handlePopulateBreadcrumb=function(e){var t=this,n=function(){t.isActive()&&e.breadcrumbs.push({element:t.buildBreadcrumbFacetSlider()})};this.slider?n():v.$$(this.root).one(l.QueryEvents.deferredQuerySuccess,function(){n(),v.$$(t.root).trigger(a.BreadcrumbEvents.redrawBreadcrumb)})},t.prototype.handlePopulateSearchAlerts=function(e){this.isActive()&&e.text.push(v.$$(this.buildBreadcrumbFacetSlider()).text())},t.prototype.buildBreadcrumbFacetSlider=function(){var e=this,t=v.$$(\"div\",{className:\"coveo-facet-slider-breadcrumb\"}).el,n=v.$$(\"span\",{className:\"coveo-facet-slider-breadcrumb-title\"});n.text(this.options.title+\": \"),t.appendChild(n.el);var i=v.$$(\"span\",{className:\"coveo-facet-slider-breadcrumb-values\"});t.appendChild(i.el);var o=v.$$(\"span\",{className:\"coveo-facet-slider-breadcrumb-value\"}),r=v.$$(\"span\",{clasName:\"coveo-facet-slider-breadcrumb-caption\"});r.text(this.slider.getCaption()),o.append(r.el),i.el.appendChild(o.el);var s=v.$$(\"span\",{className:\"coveo-facet-slider-breadcrumb-clear\"},C.SVGIcons.icons.checkboxHookExclusionMore);return b.SVGDom.addClassToSVGInContainer(s.el,\"coveo-facet-slider-clear-svg\"),o.el.appendChild(s.el),o.on(\"click\",function(){e.reset(),e.usageAnalytics.logSearchEvent(w.analyticsActionCauseList.facetClearAll,{facetId:e.options.id,facetField:e.options.field.toString(),facetTitle:e.options.title}),e.queryController.executeQuery()}),t},t.prototype.initSlider=function(){this.buildSlider(),this.slider.initializeState([this.startOfSlider,this.endOfSlider]),this.updateAppearanceDependingOnState()},t.prototype.bindQueryStateEvents=function(){var e=this;this.rangeQueryStateAttribute=y.QueryStateModel.getFacetId(this.options.id)+\":range\",this.queryStateModel.registerNewAttribute(this.rangeQueryStateAttribute,[void 0,void 0]);var t=this.queryStateModel.getEventName(m.Model.eventTypes.changeOne+this.rangeQueryStateAttribute);this.bind.onRootElement(t,function(t){e.slider?e.handleRangeQueryStateChanged(t):e.setRangeStateSliderStillNotCreated(t)})},t.prototype.setRangeStateSliderStillNotCreated=function(e){this.rangeFromUrlState=this.copyValues(e.value)},t.prototype.buildSlider=function(){var e=this,t=v.$$(\"div\",{className:\"coveo-slider-container\"}).el;this.hasAGraph()&&v.$$(t).addClass(\"coveo-with-graph\");var n=v.$$(\"div\").el;this.slider=this.slider?this.slider:new A.Slider(n,o({},this.options,{dateField:this.options.dateField}),this.root),v.$$(n).on(p.SliderEvents.endSlide,function(t,n){e.handleEndSlide(n)}),v.$$(n).on(p.SliderEvents.duringSlide,function(t,n){e.handleDuringSlide(n)}),this.hasAGraph()&&v.$$(n).on(p.SliderEvents.graphValueSelected,function(t,n){e.handleGraphValueSelected(n)}),t.appendChild(n),this.element.appendChild(t),this.updateAppearanceDependingOnState()},t.prototype.handleBuildingQuery=function(e){d.Assert.exists(e),d.Assert.exists(e.queryBuilder);var t=this.getSliderBoundaryForQuery();if(void 0!=t){this.facetQueryController.prepareForNewQuery();var n=this.facetQueryController.computeOurFilterExpression(t);S.Utils.isNonEmptyString(n)&&(this.logger.trace(\"Putting filter in query\",n),e.queryBuilder.advancedExpression.add(n))}},t.prototype.handleDoneBuildingQuery=function(e){var t=e.queryBuilder;this.facetQueryController.putGroupByIntoQueryBuilder(t)},t.prototype.handleDeferredQuerySuccess=function(e){this.ensureDom(),this.setupSliderIfNeeded(e);var t=e.results.groupByResults[this.facetQueryController.lastGroupByRequestIndex];this.isEmpty=this.isFacetEmpty(t,e),this.updateAppearanceDependingOnState(),this.hasAGraph()&&this.renderToSliderGraph(e)},t.prototype.handleEndSlide=function(e){var t=e.slider.getValues();this.startOfSlider=t[0],this.endOfSlider=t[1],this.updateQueryState(t)&&(this.updateAppearanceDependingOnState(),this.usageAnalytics.logSearchEvent(w.analyticsActionCauseList.facetRangeSlider,{facetId:this.options.id,facetField:this.options.field.toString(),facetRangeStart:this.startOfSlider.toString(),facetRangeEnd:this.endOfSlider.toString()}),this.queryController.executeQuery())},t.prototype.handleDuringSlide=function(e){var t=e.slider.getValues();this.startOfSlider=t[0],this.endOfSlider=t[1],this.slider.setValues([this.startOfSlider,this.endOfSlider]),this.updateAppearanceDependingOnState(!0)},t.prototype.handleGraphValueSelected=function(e){(this.options.rangeSlider&&this.startOfSlider!=e.start||this.endOfSlider!=e.end)&&(this.options.rangeSlider&&(this.startOfSlider=e.start),this.endOfSlider=e.end,this.slider.setValues([this.startOfSlider,this.endOfSlider]),this.updateQueryState(),this.usageAnalytics.logSearchEvent(w.analyticsActionCauseList.facetRangeGraph,{facetId:this.options.id,facetField:this.options.field.toString(),facetRangeStart:this.startOfSlider.toString(),facetRangeEnd:this.endOfSlider.toString()}),this.queryController.executeQuery())},t.prototype.updateQueryState=function(e,t){void 0===e&&(e=this.slider.getValues()),void 0===t&&(t=!1);var n=this.copyValues(e),i=e[0]+0,o=e[1]+0,r=this.queryStateModel.get(this.rangeQueryStateAttribute);return(null==r||n[0]!=r[0]||n[1]!=r[1])&&(n[0]=i,n[1]=o,this.queryStateModel.set(this.rangeQueryStateAttribute,n,{silent:t}),!0)},t.prototype.copyValues=function(e){var t=[];return t[0]=Number(e[0])+0,t[1]=Number(e[1])+0,t},t.prototype.renderToSliderGraph=function(e){var t,n=this,i=e.results.groupByResults[this.facetQueryController.graphGroupByQueriesIndex],o=0;i&&(t=r.map(i.values,function(e){o+=e.numberOfResults;var t=e.value.split(\"..\")[0],i=e.value.split(\"..\")[1];return n.options.dateField?(t=new Date(t.split(\"@\")[0]).getTime(),i=new Date(i.split(\"@\")[0]).getTime()):(t=Number(t),i=Number(i)),{start:t,y:e.numberOfResults,end:i,isDate:n.options.dateField}})),0==o&&(this.isEmpty=!0,this.updateAppearanceDependingOnState()),void 0==t||this.isDropdownHidden()?void 0!=t&&this.isDropdownHidden()&&(this.delayedGraphData=t):f.Defer.defer(function(){return n.slider.drawGraph(t)})},t.prototype.isDropdownHidden=function(){var e=this.root.querySelector(\".coveo-facet-column\");if(e)return\"none\"==v.$$(e).css(\"display\");if(v.$$(this.root).hasClass(\"CoveoRecommendation\")){var t=v.$$(this.root).parents(\".coveo-recommendation-column\")[0]||this.root;return\"none\"==v.$$(t).css(\"display\")}return!1},t.prototype.generateBoundary=function(){if(this.slider){var e=this.generateBoundaryFromSlider();return void 0==e[0]&&void 0==e[1]?this.generateBoundaryFromState():e}return this.generateBoundaryFromState()},t.prototype.generateBoundaryFromSlider=function(){var e,t;return void 0!=this.startOfSlider&&(e=this.startOfSlider),void 0!=this.endOfSlider&&(t=this.endOfSlider),[e,t]},t.prototype.generateBoundaryFromState=function(){var e,t,n=this.queryStateModel.get(this.rangeQueryStateAttribute)[0];void 0!=n&&(e=n);var i=this.queryStateModel.get(this.rangeQueryStateAttribute)[1];return void 0!=i&&(t=i),e!=this.queryStateModel.getDefault(this.rangeQueryStateAttribute)[0]||t!=this.queryStateModel.getDefault(this.rangeQueryStateAttribute)[1]?[e,t]:[void 0,void 0]},t.prototype.setupSliderIfNeeded=function(e){if(this.ensureDom(),S.Utils.isNullOrUndefined(this.slider)){this.alreadySetBoundary()||this.trySetSliderBoundaryFromOptions(),this.alreadySetBoundary()||void 0==e||this.trySetSliderBoundaryFromQueryResult(e),this.trySetSliderBoundaryFromState(),this.setupSliderStateVariables();this.verifySetup()?this.logger.warn(\"Unable to initialize slider with current values\",this):(this.initSlider(),this.updateQueryState())}},t.prototype.verifySetup=function(){var e=0;return e+=void 0==this.initialStartOfSlider?1:0,e+=isNaN(this.initialStartOfSlider)?1:0,e+=void 0==this.initialEndOfSlider?1:0,e+=isNaN(this.initialEndOfSlider)?1:0},t.prototype.setupSliderStateVariables=function(){isNaN(this.initialStartOfSlider)||isNaN(this.initialEndOfSlider)?this.logger.warn(\"Cannnot initialize slider with those values : start: \"+this.initialStartOfSlider+\" end: \"+this.initialEndOfSlider):(this.initialStartOfSlider=Number(this.initialStartOfSlider),this.initialEndOfSlider=Number(this.initialEndOfSlider),this.startOfSlider=void 0!=this.startOfSlider?Number(this.startOfSlider):this.initialStartOfSlider,this.endOfSlider=void 0!=this.endOfSlider?Number(this.endOfSlider):this.initialEndOfSlider,this.options.start=this.initialStartOfSlider,this.options.end=this.initialEndOfSlider,this.queryStateModel.setNewDefault(this.rangeQueryStateAttribute,[this.initialStartOfSlider,this.initialEndOfSlider]))},t.prototype.alreadySetBoundary=function(){return void 0!=this.startOfSlider&&void 0!=this.endOfSlider},t.prototype.trySetSliderBoundaryFromOptions=function(){S.Utils.isNullOrUndefined(this.options.start)||this.setupInitialSliderStateStart(this.options.start),S.Utils.isNullOrUndefined(this.options.end)||this.setupInitialSliderStateEnd(this.options.end)},t.prototype.trySetSliderBoundaryFromState=function(){var e=this.rangeFromUrlState||this.queryStateModel.get(this.rangeQueryStateAttribute);e&&void 0!=e[0]&&void 0!=e[1]&&(e[0]=Number(e[0]),e[1]=Number(e[1]),this.setupInitialSliderStateStart(e[0]),this.setupInitialSliderStateEnd(e[1]),this.startOfSlider=e[0],this.endOfSlider=e[1])},t.prototype.trySetSliderBoundaryFromQueryResult=function(e){var t=e.results.groupByResults[this.facetQueryController.lastGroupByRequestForFullRangeIndex];t&&t.values.length>0&&0!=t.values[0].numberOfResults&&(this.setupInitialSliderStateStart(t.values[0].value.split(\"..\")[0]),this.setupInitialSliderStateEnd(t.values[t.values.length-1].value.split(\"..\")[1]))},t.prototype.setupInitialSliderStateStart=function(e){void 0==this.initialStartOfSlider&&(this.initialStartOfSlider=e,this.options.dateField&&isNaN(e)&&(this.initialStartOfSlider=new Date(e.replace(\"@\",\" \")).getTime()))},t.prototype.setupInitialSliderStateEnd=function(e){void 0==this.initialEndOfSlider&&(this.initialEndOfSlider=e,this.options.dateField&&isNaN(e)&&(this.initialEndOfSlider=new Date(e.replace(\"@\",\" \")).getTime()))},t.prototype.updateAppearanceDependingOnState=function(e){var t=this;void 0===e&&(e=!1),f.Defer.defer(function(){!t.isEmpty||t.isActive()||e?(v.$$(t.element).removeClass(\"coveo-disabled-empty\"),v.$$(t.facetHeader.eraserElement).toggle(t.isActive())):v.$$(t.element).addClass(\"coveo-disabled-empty\"),t.isActive()||e?v.$$(t.element).removeClass(\"coveo-disabled\"):v.$$(t.element).addClass(\"coveo-disabled\"),t.isActive()&&t.slider&&t.slider.onMoving()})},t.prototype.handleNuke=function(){window.removeEventListener(\"resize\",this.onResize)},t.prototype.isFacetEmpty=function(e,t){return S.Utils.isNullOrUndefined(e)||r.every(e.values,function(e){return S.Utils.isNullOrUndefined(e)||0===e.numberOfResults})||0==t.results.results.length},t.options=o({title:_.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return g.l(\"NoTitle\")},section:\"CommonOptions\"}),dateField:_.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"CommonOptions\"}),field:_.ComponentOptions.buildFieldOption({groupByField:!0,required:!0,section:\"CommonOptions\"}),id:_.ComponentOptions.buildStringOption({postProcessing:function(e,t){return e||t.field}}),dateFormat:_.ComponentOptions.buildStringOption({section:\"Display\"}),queryOverride:_.ComponentOptions.buildQueryExpressionOption({section:\"Filtering\"}),start:_.ComponentOptions.buildStringOption({section:\"Filtering\"}),end:_.ComponentOptions.buildStringOption({section:\"Filtering\"}),excludeOuterBounds:_.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"Filtering\"}),rounded:_.ComponentOptions.buildNumberOption({min:0,section:\"Filtering\"}),steps:_.ComponentOptions.buildNumberOption({min:2}),rangeSlider:_.ComponentOptions.buildBooleanOption(),displayAsValue:_.ComponentOptions.buildObjectOption({subOptions:{enable:_.ComponentOptions.buildBooleanOption({defaultValue:!0}),unitSign:_.ComponentOptions.buildStringOption(),separator:_.ComponentOptions.buildStringOption({defaultValue:\"-\"})},section:\"Display\"}),displayAsPercent:_.ComponentOptions.buildObjectOption({subOptions:{enable:_.ComponentOptions.buildBooleanOption({defaultValue:!1}),separator:_.ComponentOptions.buildStringOption({defaultValue:\"-\"})},section:\"Display\"}),graph:_.ComponentOptions.buildObjectOption({subOptions:{steps:_.ComponentOptions.buildNumberOption({min:2}),animationDuration:_.ComponentOptions.buildNumberOption({min:0}),margin:_.ComponentOptions.buildObjectOption({subOptions:{top:_.ComponentOptions.buildNumberOption({min:0}),bottom:_.ComponentOptions.buildNumberOption({min:0}),left:_.ComponentOptions.buildNumberOption({min:0}),right:_.ComponentOptions.buildNumberOption({min:0})}})},section:\"Graph\"}),getSteps:_.ComponentOptions.buildCustomOption(function(){return null}),valueCaption:_.ComponentOptions.buildCustomOption(function(){return null})},F.ResponsiveFacetOptions),t.ID=\"FacetSlider\",t.doExport=function(){h.exportGlobally({FacetSlider:t,Slider:A.Slider})},t.DEBOUNCED_RESIZE_DELAY=250,t}(x.Component);t.FacetSlider=M,O.Initialization.registerAutoCreateComponent(M)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(18),r=n(8),s=n(11),a=n(33),u=n(31),l=n(54),c=n(93),p=n(63),h=n(10),d=n(32),f=n(216),m=n(13),y=n(15),g=n(4),v=n(1),b=n(611),C=n(94),S=n(28),w=n(16),x=n(0),_=n(3),O=n(439),E=n(614),A=n(198);n(615);var T=n(6),R=function(e){function t(n,i,o,a){void 0===i&&(i={}),void 0===o&&(o={}),void 0===a&&(a=window);var u=e.call(this,n,r.ComponentOptions.initComponentOptions(n,t,i),o,a)||this;return u.element=n,u.options=i,u.analyticsOptions=o,u.element.style.display=\"\",u.options.id||u.generateDefaultId(),u.preventEventPropagation(),u.options.mainSearchInterface&&u.bindToMainSearchInterface(),v.$$(u.element).on(s.QueryEvents.buildingQuery,function(e,t){return u.handleRecommendationBuildingQuery(t)}),v.$$(u.element).on(s.QueryEvents.querySuccess,function(e,t){return u.handleRecommendationQuerySuccess(t)}),v.$$(u.element).on(s.QueryEvents.noResults,function(e,t){return u.handleRecommendationNoResults()}),v.$$(u.element).on(s.QueryEvents.queryError,function(e,t){return u.handleRecommendationQueryError()}),u.historyStore=new C.history.HistoryStore,u.options.mainSearchInterface||u.ensureCurrentPageViewExistsInStore(),b.ResponsiveRecommendation.init(u.root,u,i),u}return i(t,e),t.prototype.getId=function(){return this.options.id},t.prototype.enable=function(){e.prototype.enable.call(this),this.show()},t.prototype.disable=function(){e.prototype.disable.call(this),this.hide()},t.prototype.hide=function(){v.$$(this.element).addClass(\"coveo-hidden\")},t.prototype.show=function(){v.$$(this.element).removeClass(\"coveo-hidden\")},t.prototype.ensureCurrentPageViewExistsInStore=function(){var e={name:\"PageView\",value:document.location.toString(),time:JSON.stringify(new Date),title:x.escape(document.title)};this.historyStore.addElement(e)},t.prototype.bindToMainSearchInterface=function(){this.bindComponentOptionsModelToMainSearchInterface(),this.bindQueryEventsToMainSearchInterface()},t.prototype.bindComponentOptionsModelToMainSearchInterface=function(){var e=this,t=S.get(this.options.mainSearchInterface,o.SearchInterface),n=null!=t,i=function(){var n=t.getBindings().componentOptionsModel;e.componentOptionsModel.setMultiple(n.getAttributes()),v.$$(e.options.mainSearchInterface).on(e.componentOptionsModel.getEventName(y.MODEL_EVENTS.ALL),function(){e.componentOptionsModel.setMultiple(n.getAttributes())})};n?i():v.$$(this.options.mainSearchInterface).on(w.InitializationEvents.afterComponentsInitialization,function(){t=S.get(e.options.mainSearchInterface,o.SearchInterface),i()})},t.prototype.bindQueryEventsToMainSearchInterface=function(){var e=this;v.$$(this.options.mainSearchInterface).on(s.QueryEvents.querySuccess,function(t,n){e.mainInterfaceQuery=n,e.mainQuerySearchUID=n.results.searchUid,e.mainQueryPipeline=n.results.pipeline,0!=n.results.results.length&&(e.usageAnalytics.logSearchEvent(h.analyticsActionCauseList.recommendation,{}),e.queryController.executeQuery({closeModalBox:!1}))}),v.$$(this.options.mainSearchInterface).on(s.QueryEvents.queryError,function(){return e.hide()}),v.$$(this.options.mainSearchInterface).on(s.QueryEvents.noResults,function(){return e.hide()})},t.prototype.handleRecommendationBuildingQuery=function(e){this.disabled||(this.modifyQueryForRecommendation(e),this.addRecommendationInfoInQuery(e))},t.prototype.handleRecommendationQuerySuccess=function(e){this.disabled||this.options.hideIfNoResults&&(0===e.results.totalCount?this.hide():this.show())},t.prototype.handleRecommendationNoResults=function(){this.disabled||this.options.hideIfNoResults&&this.hide()},t.prototype.handleRecommendationQueryError=function(){this.disabled||this.hide()},t.prototype.modifyQueryForRecommendation=function(e){this.mainInterfaceQuery&&g.Utils.copyObjectAttributes(e.queryBuilder,this.mainInterfaceQuery.queryBuilder,this.options.optionsToUse)},t.prototype.addRecommendationInfoInQuery=function(e){x.isEmpty(this.options.userContext)||e.queryBuilder.addContext(this.options.userContext),e.queryBuilder.recommendation=this.options.id},t.prototype.preventEventPropagation=function(){this.preventEventPropagationOn(s.QueryEvents),this.preventEventPropagationOn(a.OmniboxEvents),this.preventEventPropagationOn(u.ResultListEvents),this.preventEventPropagationOn(l.SettingsEvents),this.preventEventPropagationOn(c.PreferencesPanelEvents),this.preventEventPropagationOn(p.AnalyticsEvents),this.preventEventPropagationOn(d.BreadcrumbEvents),this.preventEventPropagationOn(f.QuickviewEvents),this.preventEventPropagationOn(w.InitializationEvents),this.preventEventPropagationOn(this.getAllModelEvents())},t.prototype.preventEventPropagationOn=function(e,t){void 0===t&&(t=function(e){return e});for(var n in e)v.$$(this.root).on(t(n),function(e){return e.stopPropagation()})},t.prototype.getAllModelEvents=function(){var e=this,t={},n=this.getBindings().queryStateModel;return x.each(x.values(y.Model.eventTypes),function(i){var o=n.getEventName(i);t[o]=o,x.each(x.values(m.QUERY_STATE_ATTRIBUTES),function(n){var o=e.queryStateModel.getEventName(i+n);t[o]=o})}),t},t.prototype.generateDefaultId=function(){var e=\"Recommendation\";1!==t.NEXT_ID&&(this.logger.warn(\"Generating another recommendation default id\",\"Consider configuring a human friendly / meaningful id for this interface\"),e=e+\"_\"+t.NEXT_ID),t.NEXT_ID++,this.options.id=e},t.ID=\"Recommendation\",t.NEXT_ID=1,t.doExport=function(){_.exportGlobally({Recommendation:t,DefaultRecommendationTemplate:O.DefaultRecommendationTemplate,RecommendationQuery:E.RecommendationQuery,RecommendationAnalyticsClient:A.RecommendationAnalyticsClient})},t.options={mainSearchInterface:r.ComponentOptions.buildSelectorOption(),userContext:r.ComponentOptions.buildJsonOption(),id:r.ComponentOptions.buildStringOption(),optionsToUse:r.ComponentOptions.buildListOption({defaultValue:[\"expression\"]}),sendActionsHistory:r.ComponentOptions.buildBooleanOption({defaultValue:!0,deprecated:\"This option is now deprecated. The correct way to control this behaviour is to configure an appropriate machine learning model in the administration interface (Recommendation, Relevance tuning, Query suggestions)\"}),hideIfNoResults:r.ComponentOptions.buildBooleanOption({defaultValue:!0}),autoTriggerQuery:r.ComponentOptions.buildBooleanOption({postProcessing:function(e,t){return!t.mainSearchInterface&&e}}),enableResponsiveMode:r.ComponentOptions.buildBooleanOption({defaultValue:!0}),responsiveBreakpoint:r.ComponentOptions.buildNumberOption({defaultValue:1e3}),dropdownHeaderLabel:r.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return T.l(\"Recommendations\")}})},t}(o.SearchInterface);t.Recommendation=R},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(621);var o=n(0),r=n(16),s=n(11),a=n(128),u=n(31),l=n(5),c=n(15),p=n(13),h=n(3),d=n(6),f=n(1),m=n(14),y=n(12),g=n(4),v=n(10),b=n(7),C=n(8),S=n(2),w=n(622),x=n(17);t.defaultLayout=\"list\";var _=function(e){function t(n,i,o){var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.options=C.ComponentOptions.initComponentOptions(n,t,i),a.currentActiveLayouts={},a.bind.onQueryState(c.MODEL_EVENTS.CHANGE_ONE,p.QUERY_STATE_ATTRIBUTES.LAYOUT,a.handleQueryStateChanged.bind(a)),a.bind.onRootElement(s.QueryEvents.querySuccess,function(e){return a.handleQuerySuccess(e)}),a.bind.onRootElement(s.QueryEvents.queryError,function(e){return a.handleQueryError(e)}),a.resultLayoutSection=f.$$(a.element).closest(\".coveo-result-layout-section\"),a.bind.oneRootElement(r.InitializationEvents.afterComponentsInitialization,function(){return a.populate()}),a.bind.oneRootElement(r.InitializationEvents.afterInitialization,function(){return a.handleQueryStateChanged()}),w.ResponsiveResultLayout.init(a.root,a,{}),a}return i(t,e),Object.defineProperty(t.prototype,\"activeLayouts\",{get:function(){return this.currentActiveLayouts},enumerable:!0,configurable:!0}),t.prototype.changeLayout=function(e){if(l.Assert.check(this.isLayoutDisplayedByButton(e),\"Layout not available or invalid\"),e!==this.currentLayout||\"\"===this.getModelValue()){this.setModelValue(e);var t=this.queryController.getLastResults();this.setLayout(e,t),t?this.usageAnalytics.logCustomEvent(v.analyticsActionCauseList.resultsLayoutChange,{resultsLayoutChangeTo:e},this.element):(this.usageAnalytics.logSearchEvent(v.analyticsActionCauseList.resultsLayoutChange,{resultsLayoutChangeTo:e}),this.queryController.firstQuery||this.queryController.executeQuery())}},t.prototype.getCurrentLayout=function(){return this.currentLayout},t.prototype.disableLayouts=function(e){var t=this;if(g.Utils.isNonEmptyArray(e)){o.each(e,function(e){return t.disableLayout(e)});var n=o.difference(o.keys(this.currentActiveLayouts),e);if(o.isEmpty(n)){this.logger.error(\"Cannot disable the last valid layout ... Re-enabling the first one possible\");var i=o.keys(this.currentActiveLayouts)[0];this.enableLayout(i),this.setLayout(i)}else{var r=o.contains(n,this.currentLayout)?this.currentLayout:n[0];this.changeLayout(r)}}},t.prototype.enableLayouts=function(e){var t=this;o.each(e,function(e){t.enableLayout(e)})},t.prototype.disableLayout=function(e){this.isLayoutDisplayedByButton(e)&&this.hideButton(e)},t.prototype.enableLayout=function(e){var t=this.resultLists;o.find(t,function(t){return t.options.layout==e})&&this.isLayoutDisplayedByButton(e)&&(this.showButton(e),this.updateSelectorAppearance())},Object.defineProperty(t.prototype,\"resultLists\",{get:function(){return this.searchInterface.getComponents(\"ResultList\")},enumerable:!0,configurable:!0}),t.prototype.hideButton=function(e){if(this.isLayoutDisplayedByButton(e)){var t=this.currentActiveLayouts[e].button;f.$$(t.el).addClass(\"coveo-hidden\"),t.visible=!1,this.updateSelectorAppearance()}},t.prototype.showButton=function(e){if(this.isLayoutDisplayedByButton(e)){var t=this.currentActiveLayouts[e].button;f.$$(t.el).removeClass(\"coveo-hidden\"),t.visible=!0}},t.prototype.setLayout=function(e,t){e&&(this.currentLayout&&f.$$(this.currentActiveLayouts[this.currentLayout].button.el).removeClass(\"coveo-selected\"),f.$$(this.currentActiveLayouts[e].button.el).addClass(\"coveo-selected\"),this.currentLayout=e,f.$$(this.element).trigger(u.ResultListEvents.changeLayout,{layout:e,results:t}))},t.prototype.handleQuerySuccess=function(e){this.hasNoResults=0==e.results.results.length,this.shouldShowSelector()?this.show():this.hide()},t.prototype.handleQueryStateChanged=function(e){var t=this.getModelValue(),n=o.find(o.keys(this.currentActiveLayouts),function(e){return e===t});void 0!==n?this.setLayout(n):this.setLayout(o.keys(this.currentActiveLayouts)[0])},t.prototype.handleQueryError=function(e){this.hasNoResults=!0,this.hide()},t.prototype.updateSelectorAppearance=function(){this.shouldShowSelector()?this.show():this.hide()},t.prototype.populate=function(){var e=this,n={layouts:[]};f.$$(this.root).trigger(a.ResultLayoutEvents.populateResultLayout,n);var i=o.uniq(n.layouts.map(function(e){return e.toLowerCase()}));o.each(i,function(e){return l.Assert.check(o.contains(t.validLayouts,e),\"Invalid layout\")}),o.isEmpty(i)||(o.each(i,function(t){return e.addButton(t)}),this.shouldShowSelector()||this.hide())},t.prototype.addButton=function(e){var t=this,n=f.$$(\"span\",{className:\"coveo-result-layout-selector\"}),i=f.$$(\"span\",{className:\"coveo-result-layout-selector-caption\"},d.l(e));n.append(i.el);var o=f.$$(\"span\",{className:\"coveo-icon coveo-\"+e+\"-layout-icon\"},y.SVGIcons.icons[e+\"Layout\"]);m.SVGDom.addClassToSVGInContainer(o.el,\"coveo-\"+e+\"-svg\"),n.prepend(o.el);var r=function(){return t.changeLayout(e)};(new x.AccessibleButton).withElement(n).withLabel(d.l(\"DisplayResultsAs\",d.l(e))).withSelectAction(r).withOwner(this.bind).build(),e===this.currentLayout&&n.addClass(\"coveo-selected\"),f.$$(this.element).append(n.el),this.currentActiveLayouts[e]={button:{visible:!0,el:n.el},enabled:!0}},t.prototype.hide=function(){var e=this.resultLayoutSection||this.element;f.$$(e).addClass(\"coveo-result-layout-hidden\")},t.prototype.show=function(){var e=this.resultLayoutSection||this.element;f.$$(e).removeClass(\"coveo-result-layout-hidden\")},t.prototype.getModelValue=function(){return this.queryStateModel.get(p.QueryStateModel.attributesEnum.layout)},t.prototype.setModelValue=function(e){this.queryStateModel.set(p.QueryStateModel.attributesEnum.layout,e)},t.prototype.shouldShowSelector=function(){return o.keys(this.currentActiveLayouts).length>1&&o.filter(this.currentActiveLayouts,function(e){return e.button.visible}).length>1&&!this.hasNoResults},t.prototype.isLayoutDisplayedByButton=function(e){return o.contains(o.keys(this.currentActiveLayouts),e)},t.ID=\"ResultLayoutSelector\",t.aliases=[\"ResultLayout\"],t.doExport=function(){h.exportGlobally({ResultLayoutSelector:t,ResultLayout:t})},t.validLayouts=[\"list\",\"card\",\"table\"],t.options={mobileLayouts:C.ComponentOptions.buildListOption({defaultValue:[\"card\",\"table\"]}),tabletLayouts:C.ComponentOptions.buildListOption({defaultValue:[\"list\",\"card\",\"table\"]}),desktopLayouts:C.ComponentOptions.buildListOption({defaultValue:[\"list\",\"card\",\"table\"]})},t}(b.Component);t.ResultLayoutSelector=_,S.Initialization.registerAutoCreateComponent(_)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(635);var o=n(0),r=n(16),s=n(11),a=n(3),u=n(5),l=n(15),c=n(13),p=n(50),h=n(17),d=n(1),f=n(4),m=n(10),y=n(7),g=n(8),v=n(2),b=n(636),C=function(e){function t(n,i,o){var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.options=g.ComponentOptions.initComponentOptions(n,t,i),a.bind.onRootElement(s.QueryEvents.buildingQuery,function(e){return a.handleBuildingQuery(e)}),a.bind.onRootElement(r.InitializationEvents.afterInitialization,function(){return a.handleAfterInitialization()}),a.bind.onQueryState(l.MODEL_EVENTS.CHANGE_ONE,c.QUERY_STATE_ATTRIBUTES.T,function(e){return a.handleQueryStateChanged(e)}),(new h.AccessibleButton).withElement(n).withSelectAction(function(){return a.select()}).withLabel(a.options.caption).withTitle(a.options.caption).withOwner(a.bind).build(),a.render(),b.ResponsiveTabs.init(a.root,a,a.options),a}return i(t,e),t.prototype.select=function(){if(!this.disabled){var e={t:this.options.id,sort:this.options.sort||c.QueryStateModel.defaultAttributes.sort};this.options.layout&&(e.layout=this.options.layout),this.queryStateModel.setMultiple(e),this.usageAnalytics.logSearchEvent(m.analyticsActionCauseList.interfaceChange,{interfaceChangeTo:this.options.id}),this.queryController.executeQuery()}},t.prototype.isElementIncludedInTab=function(e){u.Assert.exists(e);var t=this.splitListOfTabs(e.getAttribute(\"data-tab\")),n=this.splitListOfTabs(e.getAttribute(\"data-tab-not\"));return u.Assert.check(!(0!=t.length&&0!=n.length),\"You cannot both explicitly include and exclude an element from tabs.\"),0!=t.length&&-1!=o.indexOf(t,this.options.id)||0!=n.length&&-1==o.indexOf(n,this.options.id)||0==t.length&&0==n.length},t.prototype.render=function(){var e=this.options.icon;if(f.Utils.isNonEmptyString(e)){var t=d.$$(\"span\").el;d.$$(t).addClass([\"coveo-icon\",e]),this.element.insertBefore(t,this.element.firstChild)}var n=this.options.caption;if(f.Utils.isNonEmptyString(n)){var i=document.createElement(\"p\");d.$$(i).text(n),this.element.appendChild(i)}},t.prototype.handleBuildingQuery=function(e){u.Assert.exists(e),!this.disabled&&this.isSelected()&&(e.queryBuilder.tab=this.options.id,f.Utils.isNonEmptyString(this.options.expression)&&(this.options.constant?e.queryBuilder.constantExpression.add(this.options.expression):e.queryBuilder.advancedExpression.add(this.options.expression)),this.options.enableDuplicateFiltering&&(e.queryBuilder.enableDuplicateFiltering=!0),null!=this.options.pipeline&&(e.queryBuilder.pipeline=this.options.pipeline),null!=this.options.maximumAge&&(e.queryBuilder.maximumAge=this.options.maximumAge))},t.prototype.handleQueryStateChanged=function(e){u.Assert.exists(e),!this.disabled&&this.isSelected()?(d.$$(this.element).addClass(\"coveo-selected\"),this.queryController.setEndpoint(this.options.endpoint),this.showAndHideAppropriateElements()):d.$$(this.element).removeClass(\"coveo-selected\")},t.prototype.handleAfterInitialization=function(){this.isSelected()&&this.options.layout&&this.queryStateModel.set(c.QUERY_STATE_ATTRIBUTES.LAYOUT,this.options.layout)},t.prototype.isSelected=function(){return this.queryStateModel.get(c.QueryStateModel.attributesEnum.t)==this.options.id},t.prototype.showAndHideAppropriateElements=function(){var e=this,t=[],n=[];o.each(d.$$(this.root).findAll(\"[data-tab],[data-tab-not]\"),function(i){e.isElementIncludedInTab(i)?(e.toggleAllComponentsUnder(i,!0),t.push(i)):(e.toggleAllComponentsUnder(i,!1),n.push(i))}),d.$$(this.root).one(s.QueryEvents.querySuccess,function(){o.each(t,function(e){return d.$$(e).removeClass(\"coveo-tab-disabled\")}),o.each(n,function(e){return d.$$(e).addClass(\"coveo-tab-disabled\")})})},t.prototype.splitListOfTabs=function(e){return f.Utils.exists(e)?o.map(e.split(\",\"),function(e){return f.Utils.trim(e)}):[]},t.prototype.toggleAllComponentsUnder=function(e,t){u.Assert.exists(e);var n=function(e){var n=y.Component.get(e,void 0,!0);n&&(t?n.enable():n.disable())};n(e),o.each(d.$$(e).findAll(\"*\"),function(e){n(e)})},t.prototype.enable=function(){e.prototype.enable.call(this),this.element.style.display=\"\"},t.prototype.disable=function(){e.prototype.disable.call(this),this.element.style.display=\"none\"},t.ID=\"Tab\",t.doExport=function(){a.exportGlobally({Tab:t})},t.options={id:g.ComponentOptions.buildStringOption({required:!0,section:\"Common Options\"}),caption:g.ComponentOptions.buildLocalizedStringOption({required:!0,section:\"Common Options\"}),icon:g.ComponentOptions.buildStringOption(),expression:g.ComponentOptions.buildQueryExpressionOption({section:\"Common Options\"}),endpoint:g.ComponentOptions.buildCustomOption(function(e){return null!=e?p.SearchEndpoint.endpoints[e]:null}),sort:g.ComponentOptions.buildStringOption(),layout:g.ComponentOptions.buildStringOption(),constant:g.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"Filtering\"}),enableDuplicateFiltering:g.ComponentOptions.buildBooleanOption({defaultValue:!1}),pipeline:g.ComponentOptions.buildStringOption(),maximumAge:g.ComponentOptions.buildNumberOption(),enableResponsiveMode:g.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"ResponsiveOptions\"}),dropdownHeaderLabel:g.ComponentOptions.buildLocalizedStringOption({section:\"ResponsiveOptions\"})},t}(y.Component);t.Tab=C,v.Initialization.registerAutoCreateComponent(C)},function(e,t){function n(){throw new Error(\"setTimeout has not been defined\")}function i(){throw new Error(\"clearTimeout has not been defined\")}function o(e){if(c===setTimeout)return setTimeout(e,0);if((c===n||!c)&&setTimeout)return c=setTimeout,setTimeout(e,0);try{return c(e,0)}catch(t){try{return c.call(null,e,0)}catch(t){return c.call(this,e,0)}}}function r(e){if(p===clearTimeout)return clearTimeout(e);if((p===i||!p)&&clearTimeout)return p=clearTimeout,clearTimeout(e);try{return p(e)}catch(t){try{return p.call(null,e)}catch(t){return p.call(this,e)}}}function s(){m&&d&&(m=!1,d.length?f=d.concat(f):y=-1,f.length&&a())}function a(){if(!m){var e=o(s);m=!0;for(var t=f.length;t;){for(d=f,f=[];++y<t;)d&&d[y].run();y=-1,t=f.length}d=null,m=!1,r(e)}}function u(e,t){this.fun=e,this.array=t}function l(){}var c,p,h=e.exports={};!function(){try{c=\"function\"==typeof setTimeout?setTimeout:n}catch(e){c=n}try{p=\"function\"==typeof clearTimeout?clearTimeout:i}catch(e){p=i}}();var d,f=[],m=!1,y=-1;h.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];f.push(new u(e,t)),1!==f.length||m||o(a)},u.prototype.run=function(){this.fun.apply(null,this.array)},h.title=\"browser\",h.browser=!0,h.env={},h.argv=[],h.version=\"\",h.versions={},h.on=l,h.addListener=l,h.once=l,h.off=l,h.removeListener=l,h.removeAllListeners=l,h.emit=l,h.prependListener=l,h.prependOnceListener=l,h.listeners=function(e){return[]},h.binding=function(e){throw new Error(\"process.binding is not supported\")},h.cwd=function(){return\"/\"},h.chdir=function(e){throw new Error(\"process.chdir is not supported\")},h.umask=function(){return 0}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.onPositionResolved=\"onPositionResolved\",e.onResolvingPosition=\"onResolvingPosition\",e.onPositionNotResolved=\"onPositionNotResolved\",e}();t.DistanceEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(15);t.Model=i.Model;var o=n(13);t.QueryStateModel=o.QueryStateModel;var r=n(27);t.ComponentOptionsModel=r.ComponentOptionsModel;var s=n(75);t.ComponentStateModel=s.ComponentStateModel},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(20),o=n(0),r=n(6),s=n(28),a=n(1),u=function(){function e(){}return e.message=function(t,n){return e.messageBuilderForMode(t)(n,e.getSummaryStrings(n))},e.htmlMessage=function(t,n){return e.messageBuilderForMode(t)(n,e.getHtmlSummaryStrings(n))},e.replaceQueryTags=function(e,t){var n=/\\$\\{query\\}/g;return e?e.replace(n,t):\"\"},e.messageBuilderForMode=function(t){return e.isInfiniteScrollMode(t)?e.buildInfiniteScrollMessage:e.buildStandardMessage},e.isInfiniteScrollMode=function(e){var t=a.$$(e).findAll(\".CoveoResultList\");return o.any(t,function(e){var t=s.get(e).options;return t&&t.enableInfiniteScroll})},e.buildStandardMessage=function(t,n){var i=t.results.results.length,o={includingQuery:r.l(\"ShowingResultsOfWithQuery\",n.first,n.last,n.totalCount,n.query,i),excludingQuery:r.l(\"ShowingResultsOf\",n.first,n.last,n.totalCount,i)};return e.buildMessage(t,o)},e.buildInfiniteScrollMessage=function(t,n){var i=t.results.results.length,o={includingQuery:r.l(\"ShowingResultsWithQuery\",n.totalCount,n.query,i),excludingQuery:r.l(\"ShowingResults\",n.totalCount,i)};return e.buildMessage(t,o)},e.buildMessage=function(t,n){var i=t.results.results.length,o=e.sanitizeQuery(t.query);return i?o?n.includingQuery:n.excludingQuery:\"\"},e.getHtmlSummaryStrings=function(t){var n=e.getSummaryStrings(t);return{first:e.wrapWithSpanTag(n.first),last:e.wrapWithSpanTag(n.last),totalCount:e.wrapWithSpanTag(n.totalCount),query:e.wrapWithSpanTag(n.query)}},e.wrapWithSpanTag=function(e){return a.$$(\"span\",{className:\"coveo-highlight\"},e).el.outerHTML},e.getSummaryStrings=function(t){var n=t.query,o=t.results;return{first:i.format(n.firstResult+1,\"n0\"),last:i.format(n.firstResult+o.results.length,\"n0\"),totalCount:i.format(o.totalCountFiltered,\"n0\"),query:e.sanitizeQuery(n)}},e.sanitizeQuery=function(e){return e.q?o.escape(e.q.trim()):\"\"},e}();t.QuerySummaryUtils=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(364);var i=n(1),o=n(10),r=n(23),s=n(12),a=n(15),u=n(13),l=n(197),c=function(){function e(e){var t=this;this.args=e,i.$$(e.element).on(r.QueryEvents.doneBuildingQuery,function(e,n){return t.handleBuildingQuery(n)}),i.$$(e.element).on(\"state:\"+a.MODEL_EVENTS.CHANGE_ONE+u.QUERY_STATE_ATTRIBUTES.Q,function(e,n){return t.handleQueryChange(n)}),i.$$(e.element).on(r.BreadcrumbEvents.populateBreadcrumb,function(e,n){t.handlePopulateBreadcrumb(n)}),i.$$(e.element).on(r.BreadcrumbEvents.clearBreadcrumb,function(e,n){return t.handleClearBreadcrumb()})}return e.prototype.handleBuildingQuery=function(e){this.args.queryStateModel.get(\"missingTerms\").forEach(function(t){e.queryBuilder.advancedExpression.add(t)})},Object.defineProperty(e.prototype,\"termsForcedToAppear\",{get:function(){return this.args.queryStateModel.get(\"missingTerms\").slice()},enumerable:!0,configurable:!0}),e.prototype.setUpdateTermsForcedToAppear=function(e){this.args.queryStateModel.set(\"missingTerms\",e.slice())},e.prototype.handlePopulateBreadcrumb=function(e){if(0!==this.termsForcedToAppear.length){var t=this.buildTermForcedToAppear(),n=this.buildBreadcrumbContainer();t.forEach(function(e){return i.$$(n).append(e.el)}),e.breadcrumbs.push({element:n.el})}},e.prototype.buildTermForcedToAppear=function(){var e=this;return this.termsForcedToAppear.map(function(t){var n=i.$$(\"button\",{className:\"coveo-missing-term-breadcrumb-value coveo-accessible-button\"},i.$$(\"span\",{className:\"coveo-missing-term-breadcrumb-caption\"},t),i.$$(\"span\",{className:\"coveo-missing-term-breadcrumb-clear\"},s.SVGIcons.icons.mainClear));return n.on(\"click\",function(){return e.removeTermForcedToAppear(t)}),n})},e.prototype.buildBreadcrumbContainer=function(){return i.$$(\"div\",{className:\"coveo-remove-term-container\"},i.$$(\"span\",{className:\"coveo-missing-term-breadcrumb-title\"},r.l(\"MustContain\")))},e.prototype.removeTermForcedToAppear=function(e){var t=this.termsForcedToAppear,n=t.indexOf(e);t.splice(n,1),this.setUpdateTermsForcedToAppear(t),this.logAnalyticsRemoveMissingTerm(e),this.args.queryController.executeQuery()},e.prototype.logAnalyticsRemoveMissingTerm=function(e){this.args.usageAnalytics.logSearchEvent(o.analyticsActionCauseList.removeMissingTerm,{missingTerm:e})},e.prototype.handleClearBreadcrumb=function(){this.setUpdateTermsForcedToAppear([])},e.prototype.handleQueryChange=function(e){this.updateTermsForcedToAppearToOnlyIncludeWords(e);var t=document.querySelector(\".CoveoBreadcrumb\");if(t){var n=r.get(t);n&&(n.getBreadcrumbs(),i.$$(this.args.element).trigger(r.BreadcrumbEvents.redrawBreadcrumb))}},e.prototype.updateTermsForcedToAppearToOnlyIncludeWords=function(t){var n=this.termsForcedToAppear;this.termsForcedToAppear.forEach(function(i){if(!l(e.wordBoundary+\"(\"+i+\")\"+e.wordBoundary,\"g\").test(t.value)){var o=n.indexOf(i);n.splice(o,1)}}),this.setUpdateTermsForcedToAppear(n)},e.ID=\"MissingTermManager\",e.wordBoundary=\"(([\\\\p{Han}])?([^(\\\\p{Latin}-)])|^|$)\",e}();t.MissingTermManager=c},function(e,t,n){\"use strict\";var i=n(35);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var o=i(n(365)),r=i(n(408)),s=i(n(409)),a=i(n(410)),u=i(n(411)),l=i(n(413)),c=i(n(415)),p=i(n(417));(0,r.default)(o.default),(0,s.default)(o.default),(0,a.default)(o.default),(0,u.default)(o.default),(0,l.default)(o.default),(0,c.default)(o.default),(0,p.default)(o.default);var h=o.default;t.default=h,e.exports=t.default},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(166),r=n(10),s=n(7),a=n(18),u=n(0),l=function(e){function t(t,n,i,o,r,s,a,u,l,c){var p=e.call(this,t,n,i,o,r,s,a,u,l,c)||this;return p.endpoint=t,p.rootElement=n,p.userId=i,p.userDisplayName=o,p.anonymous=r,p.splitTestRunName=s,p.splitTestRunVersion=a,p.originLevel1=u,p.sendToCloud=l,p.bindings=c,p.recommendation=p.bindings.searchInterface,p}return i(t,e),t.prototype.logSearchEvent=function(t,n){t==r.analyticsActionCauseList.interfaceLoad&&(t=r.analyticsActionCauseList.recommendationInterfaceLoad),e.prototype.logSearchEvent.call(this,t,n)},t.prototype.logClickEvent=function(t,n,i,o){t==r.analyticsActionCauseList.documentOpen&&(t=r.analyticsActionCauseList.recommendationOpen);var l=[e.prototype.logClickEvent.call(this,t,n,i,o)];if(this.recommendation.mainQuerySearchUID&&null!=this.recommendation.mainQueryPipeline){var c=s.Component.get(this.recommendation.options.mainSearchInterface,a.SearchInterface);i.queryUid=this.recommendation.mainQuerySearchUID,i.pipeline=this.recommendation.mainQueryPipeline,l.push(c.usageAnalytics.logClickEvent(t,n,i,o))}return Promise.all(l).then(function(e){return u.first(e)})},t.prototype.getOriginLevel2=function(e){return this.recommendation.getId()},t}(o.LiveAnalyticsClient);t.RecommendationAnalyticsClient=l},function(e,t,n){\"use strict\";function i(e){e.templateSettings={evaluate:/(?:<%|{{)([\\s\\S]+?)(?:%>|}})/g,interpolate:/(?:<%|{{)=([\\s\\S]+?)(?:%>|}})/g,escape:/(?:<%|{{)-([\\s\\S]+?)(?:%>|}})/g}}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0);t.underscoreInstance=o,function(){void 0==window.Coveo&&(window.Coveo={}),void 0==window.Coveo._&&(window.Coveo._=o,i(window.Coveo._),t.underscoreInstance=window.Coveo._)}(),window._=o,i(window._)},function(e,t,n){\"use strict\";function i(){return!!o()&&(t.jQueryInstance=a(),void 0==window.Coveo&&(window.Coveo={}),void 0==window.Coveo.$&&(window.Coveo.$=t.jQueryInstance),t.jQueryInstance.fn.coveo=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n;return this.each(function(t,i){var o;if(l.isString(e[0])){var r=e[0];o=u.Initialization.dispatchNamedMethodCallOrComponentCreation(r,i,e.slice(1))}else o=u.Initialization.dispatchNamedMethodCall(\"get\",i,e);n=n||o}),n},!0)}function o(){return s()||r()}function r(){return void 0!=window.Coveo&&void 0!=window.Coveo.$}function s(){return void 0!=window.$&&void 0!=window.$.fn&&void 0!=window.$.fn.jquery}function a(){return window.$?window.$:window.Coveo.$}Object.defineProperty(t,\"__esModule\",{value:!0});var u=n(2),l=n(0);i()||document.addEventListener(\"DOMContentLoaded\",function(){i()}),t.initCoveoJQuery=i,t.jQueryIsDefined=o},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"YouTubeThumbnail\",t.fields)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2);t.fields=[\"ytthumbnailurl\"],t.registerFields=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(7),o=n(0),r=function(){function e(e,t){this.resultListOptions=e,this.autoCreateComponentsFn=t}return e.prototype.renderResults=function(e,t,n){var r=this;return void 0===t&&(t=!1),Promise.all([this.getStartFragment(e,t),this.getEndFragment(e,t)]).then(function(t){var s=t[0],a=t[1],u=document.createDocumentFragment();s&&u.appendChild(s),o.each(e,function(e){u.appendChild(e),n(i.Component.getResult(e),e)}),a&&u.appendChild(a),r.resultListOptions.resultsContainer.appendChild(u)})},e.prototype.getStartFragment=function(e,t){return Promise.resolve(document.createDocumentFragment())},e.prototype.getEndFragment=function(e,t){return Promise.resolve(document.createDocumentFragment())},e}();t.ResultListRenderer=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(498);var i=n(11),o=n(9),r=n(6),s=n(1),a=n(4),u=n(7),l=n(18),c=n(51),p=n(58),h=n(124),d=n(116),f=n(110),m=n(130),y=n(0),g=n(49),v=function(){function e(e,t,n,i){this.coveoRoot=e,this.ID=t,this.componentsInFacetColumn=[],this.preservePositionOriginalValues=[],this.dropdownHeaderLabel=this.getDropdownHeaderLabel(),this.dropdown=this.buildDropdown(i),this.searchInterface=u.Component.get(this.coveoRoot.el,l.SearchInterface,!1),this.bindDropdownContentEvents(),this.registerOnCloseHandler(),this.registerQueryEvents(),this.breakpoint=n.responsiveBreakpoint}return e.init=function(t,n,i,o,r){this.findColumn(n)&&(p.ResponsiveComponentsManager.register(e,s.$$(n),\"ResponsiveFacetColumn\",i,o),p.ResponsiveComponentsManager.register(t,s.$$(n),r,i,o))},e.findColumn=function(e){var t=s.$$(e).find(\".coveo-facet-column\");if(!t){new o.Logger(\"ResponsiveFacets\").info(\"No element with class coveo-facet-column. Responsive facets cannot be enabled\")}return t},e.prototype.registerComponent=function(e){return this.componentsInFacetColumn.push(e),this.preservePositionOriginalValues.push(e.options.preservePosition),!0},e.prototype.needDropdownWrapper=function(){return this.needSmallMode()},e.prototype.handleResizeEvent=function(){this.needSmallMode()&&!h.ResponsiveComponentsUtils.isSmallFacetActivated(this.coveoRoot)?this.changeToSmallMode():!this.needSmallMode()&&h.ResponsiveComponentsUtils.isSmallFacetActivated(this.coveoRoot)&&this.changeToLargeMode(),this.dropdown.isOpened&&this.dropdown.dropdownContent.positionDropdown()},e.prototype.dismissFacetSearches=function(){y.each(this.componentsInFacetColumn,function(e){e.facetSearch&&e.facetSearch.currentlyDisplayedResults&&e.facetSearch.dismissSearchResults()})},e.prototype.needSmallMode=function(){if(!this.searchInterface)return this.coveoRoot.width()<=(a.Utils.isNullOrUndefined(this.breakpoint)?(new c.ResponsiveComponents).getMediumScreenWidth():this.breakpoint);switch(this.searchInterface.responsiveComponents.getResponsiveMode()){case\"small\":case\"medium\":return!0;case\"auto\":return this.coveoRoot.width()<=(a.Utils.isNullOrUndefined(this.breakpoint)?this.searchInterface.responsiveComponents.getMediumScreenWidth():this.breakpoint);default:return!1}},e.prototype.changeToSmallMode=function(){this.dropdown.close(),this.disableFacetPreservePosition(),s.$$(this.coveoRoot.find(\".\"+p.ResponsiveComponentsManager.DROPDOWN_HEADER_WRAPPER_CSS_CLASS)).append(this.dropdown.dropdownHeader.element.el),h.ResponsiveComponentsUtils.activateSmallFacet(this.coveoRoot)},e.prototype.changeToLargeMode=function(){this.restoreFacetPreservePositionValue(),this.dropdown.cleanUp(),h.ResponsiveComponentsUtils.deactivateSmallFacet(this.coveoRoot)},e.prototype.buildDropdown=function(e){var t=this.buildDropdownContent(),n=this.buildDropdownHeader();return e||new d.ResponsiveDropdown(t,n,this.coveoRoot)},e.prototype.buildDropdownContent=function(){var t=s.$$(this.coveoRoot.find(\".coveo-facet-column\")),n=s.$$(\"div\",{className:\"coveo-facet-header-filter-by-container\",style:\"display: none\"}),i=s.$$(\"div\",{className:\"coveo-facet-header-filter-by\"});return i.text(r.l(\"Filter by:\")),n.append(i.el),t.prepend(n.el),new f.ResponsiveDropdownContent(\"facet\",t,this.coveoRoot,e.DROPDOWN_MIN_WIDTH,e.DROPDOWN_WIDTH_RATIO)},e.prototype.buildDropdownHeader=function(){var e=s.$$(\"a\"),t=s.$$(\"p\");return t.text(this.dropdownHeaderLabel),e.el.appendChild(t.el),new m.ResponsiveDropdownHeader(\"facet\",e)},e.prototype.registerOnCloseHandler=function(){this.dropdown.registerOnCloseHandler(this.dismissFacetSearches,this)},e.prototype.registerQueryEvents=function(){var e=this;this.coveoRoot.on(i.QueryEvents.noResults,function(){return e.handleNoResults()}),this.coveoRoot.on(i.QueryEvents.querySuccess,function(t,n){return e.handleQuerySuccess(n)}),this.coveoRoot.on(i.QueryEvents.queryError,function(){return e.handleQueryError()})},e.prototype.bindDropdownContentEvents=function(){var t=this;this.dropdown.dropdownContent.element.on(\"scroll\",y.debounce(function(){y.each(t.componentsInFacetColumn,function(e){var n=e.facetSearch;n&&n.currentlyDisplayedResults&&!t.isFacetSearchScrolledIntoView(n.search)?e.facetSearch.positionSearchResults(t.dropdown.dropdownContent.element.el):n&&e.facetSearch.currentlyDisplayedResults&&e.facetSearch.positionSearchResults()})},e.DEBOUNCE_SCROLL_WAIT))},e.prototype.restoreFacetPreservePositionValue=function(){var e=this;y.each(this.componentsInFacetColumn,function(t,n){t.options&&(t.options.preservePosition=e.preservePositionOriginalValues[n])})},e.prototype.disableFacetPreservePosition=function(){y.each(this.componentsInFacetColumn,function(e){e.options&&(e.options.preservePosition=!1)})},e.prototype.isFacetSearchScrolledIntoView=function(e){var t=e.getBoundingClientRect().top,n=e.getBoundingClientRect().bottom,i=this.dropdown.dropdownContent.element.el.getBoundingClientRect().top,o=this.dropdown.dropdownContent.element.el.getBoundingClientRect().bottom;return i=i>=0?i:0,t>=i&&n<=o},e.prototype.getDropdownHeaderLabel=function(){var t;return g.ComponentsTypes.getAllFacetsInstance(this.coveoRoot.find(\".coveo-facet-column\")).forEach(function(e){var n=e.options;!t&&n.dropdownHeaderLabel&&(t=n.dropdownHeaderLabel)}),t||(t=r.l(e.DROPDOWN_HEADER_LABEL_DEFAULT_VALUE)),t},e.prototype.handleNoResults=function(){this.dropdown.dropdownHeader.hide()},e.prototype.handleQueryError=function(){this.dropdown.dropdownHeader.hide()},e.prototype.handleQuerySuccess=function(e){0===e.results.totalCount?this.dropdown.dropdownHeader.hide():this.dropdown.dropdownHeader.show()},e.DEBOUNCE_SCROLL_WAIT=250,e.DROPDOWN_MIN_WIDTH=280,e.DROPDOWN_WIDTH_RATIO=.35,e.DROPDOWN_HEADER_LABEL_DEFAULT_VALUE=\"Filters\",e}();t.ResponsiveFacetColumn=v},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(20),r=n(64),s=n(10),a=n(6),u=n(169),l=function(){function e(e,t,n){this.facet=t,this.preventAutoSelect=!1,this.element=null,this.value=e.value,this.start=e.start,this.end=e.end,this.endInclusive=e.endInclusive,this.state=e.state,this.numberOfResults=e.numberOfResults,this.position=e.position,this.displayValue=e.displayValue,this.renderer=new n(this,t)}return Object.defineProperty(e.prototype,\"isSelected\",{get:function(){return this.state===r.FacetValueState.selected},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"isIdle\",{get:function(){return this.state===r.FacetValueState.idle},enumerable:!0,configurable:!0}),e.prototype.toggleSelect=function(){this.state===r.FacetValueState.selected?this.deselect():this.select()},e.prototype.select=function(){this.state=r.FacetValueState.selected},e.prototype.deselect=function(){this.state=r.FacetValueState.idle,this.preventAutoSelect=!0},e.prototype.equals=function(e){return(\"string\"==typeof e?e:e.value).toLowerCase()===this.value.toLowerCase()},Object.defineProperty(e.prototype,\"formattedCount\",{get:function(){return o.format(this.numberOfResults,\"n0\")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"selectAriaLabel\",{get:function(){var e=this.isSelected?\"UnselectValueWithResultCount\":\"SelectValueWithResultCount\",t=a.l(\"ResultCount\",this.formattedCount,this.numberOfResults);return\"\"+a.l(e,this.displayValue,t)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"isRange\",{get:function(){return this.facet.facetType!==u.FacetType.specific},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"analyticsValue\",{get:function(){return this.isRange?this.start+\"..\"+this.end:this.value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"rangeFacetState\",{get:function(){return this.isRange?{start:\"\"+this.start,end:\"\"+this.end,endInclusive:this.endInclusive}:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"analyticsFacetState\",{get:function(){return i({},this.facet.basicAnalyticsFacetState,this.rangeFacetState,{value:this.analyticsValue,valuePosition:this.position,displayValue:this.displayValue,state:this.state})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"rangeFacetMeta\",{get:function(){return this.isRange?{facetRangeStart:\"\"+this.start,facetRangeEnd:\"\"+this.end,facetRangeEndInclusive:this.endInclusive}:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"analyticsFacetMeta\",{get:function(){return i({},this.facet.basicAnalyticsFacetMeta,this.rangeFacetMeta,{facetValue:this.analyticsValue})},enumerable:!0,configurable:!0}),e.prototype.logSelectActionToAnalytics=function(){var e=this.state===r.FacetValueState.selected?s.analyticsActionCauseList.dynamicFacetSelect:s.analyticsActionCauseList.dynamicFacetDeselect;this.facet.logAnalyticsEvent(e,this.analyticsFacetMeta)},e.prototype.render=function(){return this.element=this.renderer.render(),this.element},Object.defineProperty(e.prototype,\"renderedElement\",{get:function(){return this.element?this.element:this.render()},enumerable:!0,configurable:!0}),e}();t.DynamicFacetValue=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(19),o=n(0),r=function(){function e(e,t){this.facet=e,this.facetSort=t}return e.prototype.reorderValues=function(e){if(this.facetSort&&this.facetSort.activeSort){if(\"custom\"==this.facetSort.activeSort.name&&void 0!=this.facet.options.customSort)return this.reorderValuesWithCustomOrder(e);if(-1!=this.facetSort.activeSort.name.indexOf(\"alpha\"))return this.reorderValuesWithCustomCaption(e)}return e},e.prototype.reorderValuesWithCustomOrder=function(e){var t=o.map(this.facet.options.customSort,function(e){return e.toLowerCase()}),n=o.map(e,function(e,n){var r=o.findIndex(t,function(t){return i.StringUtils.equalsCaseInsensitive(t,e.value)||null!=e.lookupValue&&i.StringUtils.equalsCaseInsensitive(t,e.lookupValue)});return-1==r&&(r=n+t.length),{facetValue:e,index:r}}),r=o.sortBy(n,\"index\");return r=\"ascending\"==this.facetSort.customSortDirection?r:r.reverse(),o.pluck(r,\"facetValue\")},e.prototype.reorderValuesWithCustomCaption=function(e){var t=this,n=e.sort(function(e,n){return t.facet.getValueCaption(e).localeCompare(t.facet.getValueCaption(n),String.locale,{sensitivity:\"base\"})});return-1!=this.facetSort.activeSort.name.indexOf(\"descending\")&&(n=n.reverse()),n},e}();t.FacetValuesOrder=r},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=function(){function e(e){var t=i.$$(\"button\",{className:e.className,ariaLabel:e.ariaLabel},e.label);this.element=i.$$(\"li\",null,t).el,t.on(\"click\",function(){return e.action()})}return e}();t.DynamicFacetValueShowMoreLessButton=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(71),o=n(4),r=n(170),s=n(5),a=n(43),u=n(0),l=n(177),c=function(){function e(e){this.facet=e}return e.prototype.prepareForNewQuery=function(){this.lastGroupByRequestIndex=void 0,this.expressionToUseForFacetSearch=void 0,this.constantExpressionToUseForFacetSearch=void 0},e.prototype.computeOurFilterExpression=function(){var e=this,t=new i.ExpressionBuilder,n=this.facet.values.getSelected();n.length>0&&(this.facet.options.useAnd?u.each(n,function(n){t.addFieldExpression(e.facet.options.field,\"==\",[n.value])}):t.addFieldExpression(this.facet.options.field,\"==\",u.map(n,function(e){return e.value})));var r=this.facet.values.getExcluded();return r.length>0&&t.addFieldNotEqualExpression(this.facet.options.field,u.map(r,function(e){return e.value})),o.Utils.isNonEmptyString(this.facet.options.additionalFilter)&&t.add(this.facet.options.additionalFilter),t.build()},e.prototype.putGroupByIntoQueryBuilder=function(e){s.Assert.exists(e);var t=this.createGroupByAllowedValues(),n=this.createBasicGroupByRequest(t),i=this.createGroupByQueryOverride(e);if(o.Utils.isNullOrUndefined(i)&&l.QueryBuilderExpression.isEmpty(i)){var r=e.computeCompleteExpressionParts();this.expressionToUseForFacetSearch=null==r.withoutConstant?\"\":r.withoutConstant,this.basicExpressionToUseForFacetSearch=null==r.basic?\"\":r.basic,this.advancedExpressionToUseForFacetSearch=r.advanced,this.constantExpressionToUseForFacetSearch=r.constant}else n.queryOverride=i.basic,n.advancedQueryOverride=i.advanced,n.constantQueryOverride=i.constant,this.expressionToUseForFacetSearch=i.withoutConstant,this.basicExpressionToUseForFacetSearch=i.basic,this.advancedExpressionToUseForFacetSearch=i.advanced,this.constantExpressionToUseForFacetSearch=i.constant;this.lastGroupByRequestIndex=e.groupByRequests.length,this.lastGroupByRequest=n,e.groupByRequests.push(n)},e.prototype.search=function(e,t){var n=this;return void 0===t&&(t=e.nbResults),e.completeFacetWithStandardValues=!1,new Promise(function(i,o){var r=function(o){var r=o.length;if(o=n.checkForFacetSearchValuesToRemove(o,e.valueToSearch),a.FacetUtils.needAnotherFacetSearch(o.length,r,t,5))return e.nbResults+=5,n.search(e,o.length);i(o)},s=n.facet.getEndpoint().search(e.getQuery());n.currentSearchPromise=s,s.then(function(t){if(n.currentSearchPromise==s){var i=[];t.groupByResults&&t.groupByResults[0]&&u.each(t.groupByResults[0].values,function(t){t.lookupValue?u.contains(e.alwaysExclude,t.lookupValue.toLowerCase())||i.push(t):u.contains(e.alwaysExclude,t.value.toLowerCase())||i.push(t)}),r(u.first(i,e.nbResults))}else o()}).catch(function(e){o(e)})})},e.prototype.fetchMore=function(e){var t=this,n=new r.FacetSearchParameters(this.facet);return n.alwaysInclude=this.facet.options.allowedValues||u.pluck(this.facet.values.getAll(),\"value\"),n.nbResults=e,this.facet.getEndpoint().search(n.getQuery()).then(function(e){return t.facet.options.allowedValues&&e&&e.groupByResults&&e.groupByResults[0]&&(e.groupByResults[0].values=t.filterByAllowedValueOption(e.groupByResults[0].values)),e})},e.prototype.searchInFacetToUpdateDelta=function(e){var t=new r.FacetSearchParameters(this.facet),n=t.getQuery();return n.aq=(n.aq?n.aq:\"\")+\" \"+this.computeOurFilterExpression(),u.each(e,function(e){e.waitingForDelta=!0}),n.groupBy=[this.createBasicGroupByRequest(u.map(e,function(e){return e.value}))],n.groupBy[0].completeFacetWithStandardValues=!1,this.facet.getEndpoint().search(n)},e.prototype.createGroupByAllowedValues=function(){return void 0!=this.facet.options.allowedValues?this.facet.options.allowedValues:void 0!=this.facet.options.customSort?this.getUnionWithCustomSortLowercase(this.facet.options.customSort,this.getAllowedValuesFromSelected()):u.map(this.getAllowedValuesFromSelected(),function(e){return e.value})},e.prototype.createBasicGroupByRequest=function(e,t){void 0===t&&(t=!0);var n=this.facet.numberOfValues;if(null!=this.facet.options.customSort){var i=this.getUnionWithCustomSortLowercase(this.facet.options.customSort,this.facet.values.getSelected().concat(this.facet.values.getExcluded()));n=Math.max(n,i.length)}var r={field:this.facet.options.field,maximumNumberOfValues:n+(this.facet.options.enableMoreLess?1:0),sortCriteria:this.facet.options.sortCriteria,injectionDepth:this.facet.options.injectionDepth,completeFacetWithStandardValues:void 0==this.facet.options.allowedValues};return this.facet.options.lookupField&&(r.lookupField=this.facet.options.lookupField),null!=e&&(r.allowedValues=e),t&&o.Utils.isNonEmptyString(this.facet.options.computedField)&&(r.computedFields=[{field:this.facet.options.computedField,operation:this.facet.options.computedFieldOperation}]),r},e.prototype.getAllowedValuesFromSelected=function(){var e=[];if(this.facet.options.useAnd||!this.facet.keepDisplayedValuesNextTime){if(0==this.facet.values.getSelected().length)return;e=this.facet.values.getSelected()}else e=this.facet.values.getAll();return e},Object.defineProperty(e.prototype,\"additionalFilter\",{get:function(){return this.facet.options.additionalFilter?this.facet.options.additionalFilter:\"\"},enumerable:!0,configurable:!0}),e.prototype.getUnionWithCustomSortLowercase=function(e,t){var n=u.map(e,function(e){return e.toLowerCase()}),i=u.chain(t).filter(function(e){return!u.contains(n,e.value.toLowerCase())}).map(function(e){return e.value}).value();return u.compact(e.concat(i))},e.prototype.createGroupByQueryOverride=function(e){var t=e.computeCompleteExpressionParts();return this.queryOverrideIsNeededForMultiSelection()?t=this.processQueryOverrideForMultiSelection(e,t):t.reset(),this.queryOverrideIsNeededForAdditionalFilter()&&(t=this.processQueryOverrideForAdditionalFilter(e,t)),t=this.processQueryOverrideForEmptyValues(e,t),l.QueryBuilderExpression.isEmpty(t)?null:t},e.prototype.queryOverrideIsNeededForMultiSelection=function(){return!this.facet.options.useAnd&&!!this.facet.values.hasSelectedOrExcludedValues()},e.prototype.queryOverrideIsNeededForAdditionalFilter=function(){return o.Utils.isNonEmptyString(this.additionalFilter)},e.prototype.processQueryOverrideForMultiSelection=function(e,t){if(this.facet.values.hasSelectedOrExcludedValues()){var n=this.computeOurFilterExpression();t=e.computeCompleteExpressionPartsExcept(n),l.QueryBuilderExpression.isEmpty(t)&&(t.advanced=\"@uri\")}return t},e.prototype.processQueryOverrideForAdditionalFilter=function(e,t){if(o.Utils.isEmptyString(t.basic)&&(t.basic=e.expression.build()),o.Utils.isEmptyString(t.constant)){var n=e.constantExpression.isEmpty()?\"\":e.constantExpression.build()+\" \";t.constant=\"\"+n+this.additionalFilter}else t.constant=t.constant+\" \"+this.additionalFilter;return t.advanced||(t.advanced=this.getFilterExpressionWithoutOurFilterExpression(e)),t},e.prototype.getFilterExpressionWithoutOurFilterExpression=function(e){var t=new i.ExpressionBuilder;e.advancedExpression.getParts().forEach(function(e){return t.add(e)});var n=this.computeOurFilterExpression();return t.remove(n),t.build()},e.prototype.processQueryOverrideForEmptyValues=function(e,t){var n=u.chain(t).keys().each(function(e){(o.Utils.isEmptyString(t[e])||o.Utils.isNullOrUndefined(t[e]))&&delete t[e]}).value();return 0==u.keys(n).length&&(t=void 0),t},e.prototype.checkForFacetSearchValuesToRemove=function(e,t){var n=this,i=a.FacetUtils.getRegexToUseForFacetSearch(t,this.facet.options.facetSearchIgnoreAccents);return u.filter(e,function(e){var t=u.isEmpty(n.facet.options.allowedValues)||n.isValueAllowedByAllowedValueOption(e.value),o=n.facet.getValueCaption(e);return t&&i.test(o)})},e.prototype.filterByAllowedValueOption=function(e){var t=this;return u.filter(e,function(e){return t.isValueAllowedByAllowedValueOption(e.value)})},e.prototype.isValueAllowedByAllowedValueOption=function(e){return u.some(this.facet.options.allowedValues,function(t){return new RegExp(\"^\"+t.replace(/\\*/g,\".*\").replace(/\\?/g,\".\")+\"$\",\"gi\").test(e)})},e}();t.FacetQueryController=c},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.ExpressionEndOfInput={id:\"end of input\",parse:null}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(48),o=n(48),r=function(){function e(e,t){this.value=e,this.id=t}return e.prototype.parse=function(e,t){var n=0==e.indexOf(this.value),r=new i.Result(n?this.value:null,this,e);return n&&t&&e.length>this.value.length?new o.EndOfInputResult(r):r},e.prototype.toString=function(){return this.value},e}();t.ExpressionConstant=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(127),o=n(473);t.Field={basicExpressions:[\"FieldSimpleQuery\",\"FieldQuery\",\"Field\"],grammars:{FieldQuery:\"[Field][OptionalSpaces][FieldQueryOperation]\",FieldQueryOperation:[\"FieldQueryValue\",\"FieldQueryNumeric\"],FieldQueryValue:\"[FieldOperator][OptionalSpaces][FieldValue]\",FieldQueryNumeric:\"[FieldOperatorNumeric][OptionalSpaces][FieldValueNumeric]\",FieldSimpleQuery:\"[FieldName]:[OptionalSpaces][FieldValue]\",Field:\"@[FieldName]\",FieldName:/[a-zA-Z][a-zA-Z0-9\\.\\_]*/,FieldOperator:/==|=|<>/,FieldOperatorNumeric:/<=|>=|<|>/,FieldValue:[\"DateRange\",\"NumberRange\",\"DateRelative\",\"Date\",\"Number\",\"FieldValueList\",\"FieldValueString\"],FieldValueNumeric:[\"DateRelative\",\"Date\",\"Number\"],FieldValueString:[\"DoubleQuoted\",\"FieldValueNotQuoted\"],FieldValueList:\"([FieldValueString][FieldValueStringList*])\",FieldValueStringList:\"[FieldValueSeparator][FieldValueString]\",FieldValueSeparator:/ *, */,FieldValueNotQuoted:/[^ \\(\\),]+/,NumberRange:\"[Number][Spaces?]..[Spaces?][Number]\"},include:[o.Date,i.Basic]}},function(e,t,n){\"use strict\";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var r,s=n(0),a=n(33),u=n(7),l=n(1),c=n(538),p=n(477);!function(e){e.Up=\"Up\",e.Down=\"Down\",e.Left=\"Left\",e.Right=\"Right\"}(r=t.Direction||(t.Direction={}));var h=function(){function e(e,t,n,i){var o=this;this.element=e,this.magicBoxContainer=t,this.inputManager=n,this.root=u.Component.resolveRoot(e),this.options=s.defaults(i,{suggestionClass:\"magic-box-suggestion\",selectedClass:\"magic-box-selected\"}),void 0==this.options.timeout&&(this.options.timeout=500),this.hasSuggestions=!1,l.$$(this.element).on(\"mouseover\",function(e){o.handleMouseOver(e)}),l.$$(this.element).on(\"mouseout\",function(e){o.handleMouseOut(e)}),this.suggestionsProcessor=new p.QueryProcessor({timeout:this.options.timeout}),this.resultPreviewsManager=new c.ResultPreviewsManager(e,{selectedClass:this.options.selectedClass,timeout:this.options.timeout}),this.suggestionsListbox=this.buildSuggestionsContainer(),l.$$(this.element).append(this.suggestionsListbox.el),this.addAccessibilityPropertiesForCombobox(),this.appendEmptySuggestionOption()}return Object.defineProperty(e.prototype,\"hasFocus\",{get:function(){return l.$$(this.element).findClass(this.options.selectedClass).length>0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"hasPreviews\",{get:function(){return this.resultPreviewsManager.hasPreviews},enumerable:!0,configurable:!0}),e.prototype.handleMouseOver=function(e){var t=l.$$(e.target),n=t.parents(this.options.suggestionClass);t.hasClass(this.options.suggestionClass)?this.processMouseSelection(t.el):n.length>0&&this.element.contains(n[0])&&this.processMouseSelection(n[0])},e.prototype.handleMouseOut=function(e){var t=l.$$(e.target),n=t.parents(this.options.suggestionClass);if(e.relatedTarget&&l.$$(e.relatedTarget).isValid()){var i=l.$$(e.relatedTarget).parents(this.options.suggestionClass);t.hasClass(this.options.selectedClass)&&!l.$$(e.relatedTarget).hasClass(this.options.suggestionClass)?this.removeSelectedStatus(t.el):0==i.length&&n.length>0&&this.removeSelectedStatus(n[0])}else t.hasClass(this.options.selectedClass)?this.removeSelectedStatus(t.el):n.length>0&&this.removeSelectedStatus(n[0]);l.$$(this.root).trigger(a.OmniboxEvents.querySuggestLoseFocus)},e.prototype.moveDown=function(){return i(this,void 0,void 0,function(){return o(this,function(e){switch(e.label){case 0:return[4,this.move(r.Down)];case 1:return e.sent(),[2]}})})},e.prototype.moveUp=function(){return i(this,void 0,void 0,function(){return o(this,function(e){switch(e.label){case 0:return[4,this.move(r.Up)];case 1:return e.sent(),[2]}})})},e.prototype.moveLeft=function(){return i(this,void 0,void 0,function(){return o(this,function(e){switch(e.label){case 0:return[4,this.move(r.Left)];case 1:return e.sent(),[2]}})})},e.prototype.moveRight=function(){return i(this,void 0,void 0,function(){return o(this,function(e){switch(e.label){case 0:return[4,this.move(r.Right)];case 1:return e.sent(),[2]}})})},e.prototype.selectAndReturnKeyboardFocusedElement=function(){var e=this.keyboardFocusedElement;return e&&(l.$$(e).trigger(\"keyboardSelect\"),this.keyboardFocusedElement=null,this.inputManager.blur()),e},e.prototype.clearKeyboardFocusedElement=function(){this.keyboardFocusedElement=null},e.prototype.receiveSuggestions=function(e){return i(this,void 0,void 0,function(){var t,n,i;return o(this,function(o){switch(o.label){case 0:return[4,this.suggestionsProcessor.processQueries(e)];case 1:return t=o.sent(),(n=t.results,i=t.status,i===p.ProcessingStatus.Overriden)?[2,[]]:(this.updateSuggestions(n),[2,n])}})})},e.prototype.clearSuggestions=function(){this.updateSuggestions([])},e.prototype.updateSuggestions=function(e){var t=this;if(this.suggestionsListbox.empty(),this.inputManager.input.removeAttribute(\"aria-activedescendant\"),this.hasSuggestions=e.length>0,l.$$(this.element).toggleClass(\"magic-box-hasSuggestion\",this.hasSuggestions),l.$$(this.magicBoxContainer).setAttribute(\"aria-expanded\",this.hasSuggestions.toString()),this.resultPreviewsManager.displaySearchResultPreviewsForSuggestion(null),!this.hasSuggestions)return this.appendEmptySuggestionOption(),void l.$$(this.root).trigger(a.OmniboxEvents.querySuggestLoseFocus);s.each(e,function(n){var i=n.dom?t.modifyDomFromExistingSuggestion(n.dom):t.createDomFromSuggestion(n);i.setAttribute(\"id\",\"magic-box-suggestion-\"+s.indexOf(e,n)),i.setAttribute(\"role\",\"option\"),i.setAttribute(\"aria-selected\",\"false\"),i.setAttribute(\"aria-label\",i.text()),i.suggestion=n,t.suggestionsListbox.append(i.el)}),l.$$(this.root).trigger(a.OmniboxEvents.querySuggestRendered)},Object.defineProperty(e.prototype,\"selectedSuggestion\",{get:function(){return this.htmlElementIsSuggestion(this.keyboardFocusedElement)?this.returnMoved(this.keyboardFocusedElement):null},enumerable:!0,configurable:!0}),e.prototype.processKeyboardSelection=function(e){return i(this,void 0,void 0,function(){return o(this,function(t){switch(t.label){case 0:return this.addSelectedStatus(e),this.keyboardFocusedElement=e,l.$$(this.inputManager.input).setAttribute(\"aria-activedescendant\",l.$$(e).getAttribute(\"id\")),[4,this.updateSelectedSuggestion(e)];case 1:return t.sent(),[2]}})})},e.prototype.processKeyboardPreviewSelection=function(e){this.addSelectedStatus(e),this.keyboardFocusedElement=e},e.prototype.processMouseSelection=function(e){this.addSelectedStatus(e),this.updateSelectedSuggestion(e),this.keyboardFocusedElement=null},e.prototype.buildSuggestionsContainer=function(){return l.$$(\"div\",{className:\"coveo-magicbox-suggestions\",id:\"coveo-magicbox-suggestions\",role:\"listbox\"})},e.prototype.createDomFromSuggestion=function(e){var t=this,n=l.$$(\"div\",{className:\"magic-box-suggestion \"+this.options.suggestionClass});if(n.on(\"click\",function(){t.selectSuggestion(e)}),n.on(\"keyboardSelect\",function(){t.selectSuggestion(e)}),e.html)return n.el.innerHTML=e.html,n;if(e.text)return n.text(e.text),n;if(e.separator){n.addClass(\"magic-box-suggestion-seperator\");var i=l.$$(\"div\",{className:\"magic-box-suggestion-seperator-label\"},e.separator);return n.append(i.el),n}return n},e.prototype.selectSuggestion=function(e){e.onSelect(),l.$$(this.root).trigger(a.OmniboxEvents.querySuggestSelection,{suggestion:e.text})},e.prototype.appendEmptySuggestionOption=function(){this.suggestionsListbox.append(l.$$(\"div\",{role:\"option\"}).el)},e.prototype.modifyDomFromExistingSuggestion=function(e){this.removeSelectedStatus(e);var t=l.$$(e).find(\".\"+this.options.suggestionClass);return this.removeSelectedStatus(t),l.$$(e)},e.prototype.move=function(e){return i(this,void 0,void 0,function(){var t;return o(this,function(n){switch(n.label){case 0:return this.resultPreviewsManager.focusedPreviewElement?[4,this.moveWithinPreview(e)]:[3,2];case 1:return n.sent(),[2];case 2:return e!==r.Right&&e!==r.Left||!(t=this.resultPreviewsManager.previewElements[0])?[4,this.moveWithinSuggestion(e)]:(this.processKeyboardPreviewSelection(t),[2]);case 3:return n.sent(),[2]}})})},e.prototype.moveWithinSuggestion=function(e){return i(this,void 0,void 0,function(){var t,n,i,a;return o(this,function(o){switch(o.label){case 0:return t=l.$$(this.element).find(\".\"+this.options.selectedClass),n=l.$$(this.element).findAll(\".\"+this.options.suggestionClass),i=s.indexOf(n,t),a=e===r.Up?i-1:i+1,a=(a+n.length)%n.length,[4,this.selectQuerySuggest(n[a])];case 1:return o.sent(),[2]}})})},e.prototype.selectQuerySuggest=function(e){return i(this,void 0,void 0,function(){return o(this,function(t){switch(t.label){case 0:return e?[4,this.processKeyboardSelection(e)]:[3,2];case 1:return t.sent(),[3,3];case 2:this.keyboardFocusedElement=null,this.inputManager.input.removeAttribute(\"aria-activedescendant\"),t.label=3;case 3:return[2,e]}})})},e.prototype.moveWithinPreview=function(e){return i(this,void 0,void 0,function(){var t;return o(this,function(n){switch(n.label){case 0:return t=this.resultPreviewsManager.getElementInDirection(e),t?[3,2]:[4,this.selectQuerySuggest(this.resultPreviewsManager.previewsOwner)];case 1:return n.sent(),[2];case 2:return this.processKeyboardPreviewSelection(t),[2]}})})},e.prototype.returnMoved=function(e){if(e){if(e.suggestion)return e.suggestion;if(e[\"no-text-suggestion\"])return null;if(e instanceof HTMLElement)return{text:l.$$(e).text()}}return null},e.prototype.addSelectedStatus=function(e){for(var t=this.element.getElementsByClassName(this.options.selectedClass),n=0;n<t.length;n++){var i=t.item(n);this.removeSelectedStatus(i)}l.$$(e).addClass(this.options.selectedClass),this.updateAreaSelectedIfDefined(e,\"true\")},e.prototype.updateSelectedSuggestion=function(e){return i(this,void 0,void 0,function(){return o(this,function(t){switch(t.label){case 0:return l.$$(this.root).trigger(a.OmniboxEvents.querySuggestGetFocus,{suggestion:e.innerText}),[4,this.resultPreviewsManager.displaySearchResultPreviewsForSuggestion(e)];case 1:return t.sent(),[2]}})})},e.prototype.removeSelectedStatus=function(e){l.$$(e).removeClass(this.options.selectedClass),this.updateAreaSelectedIfDefined(e,\"false\")},e.prototype.updateAreaSelectedIfDefined=function(e,t){l.$$(e).getAttribute(\"aria-selected\")&&l.$$(e).setAttribute(\"aria-selected\",t)},e.prototype.addAccessibilityPropertiesForCombobox=function(){var e=l.$$(this.magicBoxContainer),t=l.$$(this.inputManager.input);e.setAttribute(\"aria-expanded\",\"false\"),e.setAttribute(\"role\",\"combobox\"),e.setAttribute(\"aria-owns\",\"coveo-magicbox-suggestions\"),e.setAttribute(\"aria-haspopup\",\"listbox\"),t.el.removeAttribute(\"aria-activedescendant\"),t.setAttribute(\"aria-controls\",\"coveo-magicbox-suggestions\"),t.setAttribute(\"aria-autocomplete\",\"list\")},e.prototype.htmlElementIsSuggestion=function(e){var t=l.$$(this.element).findAll(\".\"+this.options.suggestionClass);return s.indexOf(t,e)>-1},e}();t.SuggestionsManager=h},function(e,t,n){\"use strict\";function i(e,t,n){return new f(e,t,n)}function o(e){return\"requestAnimationFrame\"in window?window.requestAnimationFrame(e):setTimeout(e)}var r=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},s=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(0),u=n(23),l=n(1),c=n(536),p=n(476),h=n(539),d=n(212),f=function(){function e(e,t,n){void 0===n&&(n={});var i=this;this.element=e,this.grammar=t,this.options=n,this.lastSuggestions=[],a.isUndefined(this.options.inline)&&(this.options.inline=!1),l.$$(e).addClass(\"magic-box\"),this.options.inline&&l.$$(e).addClass(\"magic-box-inline\"),this.result=this.grammar.parse(\"\"),this.displayedResult=this.result.clean();var o=l.$$(e).find(\".magic-box-input\");o||(o=document.createElement(\"div\"),o.className=\"magic-box-input\",e.appendChild(o)),this.inputManager=new p.InputManager(o,function(e,t){t?(i.setText(e),i.onselect&&i.onselect(i.firstSuggestionWithText)):(i.setText(e),i.addSuggestions(),i.onchange&&i.onchange())},this),this.inputManager.ontabpress=function(){i.ontabpress&&i.ontabpress()};var r=this.inputManager.getValue();r&&(this.displayedResult.input=r),this.inputManager.setResult(this.displayedResult);var s=document.createElement(\"div\");s.className=\"magic-box-suggestions\",this.element.appendChild(s),this.suggestionsManager=new d.SuggestionsManager(s,this.element,this.inputManager,{suggestionClass:this.options.selectableSuggestionClass,selectedClass:this.options.selectedSuggestionClass,timeout:this.options.suggestionTimeout}),this.magicBoxClear=new h.MagicBoxClear(this),this.setupHandler()}return Object.defineProperty(e.prototype,\"firstSuggestionWithText\",{get:function(){return a.find(this.lastSuggestions,function(e){return e.text})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"firstSuggestionText\",{get:function(){var e=this.firstSuggestionWithText;return e?e.text:\"\"},enumerable:!0,configurable:!0}),e.prototype.getResult=function(){return this.result},e.prototype.getDisplayedResult=function(){return this.displayedResult},e.prototype.setText=function(e){l.$$(this.element).toggleClass(\"magic-box-notEmpty\",e.length>0),this.magicBoxClear.toggleTabindexAndAriaHidden(e.length>0),this.result=this.grammar.parse(e),this.displayedResult=this.result.clean(),this.inputManager.setResult(this.displayedResult)},e.prototype.setCursor=function(e){this.inputManager.setCursor(e)},e.prototype.getCursor=function(){return this.inputManager.getCursor()},e.prototype.resultAtCursor=function(e){return this.displayedResult.resultAt(this.getCursor(),e)},e.prototype.setupHandler=function(){var e=this;this.inputManager.onblur=function(){l.$$(e.element).removeClass(\"magic-box-hasFocus\"),e.onblur&&e.onblur(),e.options.inline||e.clearSuggestion()},this.inputManager.onfocus=function(){l.$$(e.element).addClass(\"magic-box-hasFocus\"),e.addSuggestions(),e.onfocus&&e.onfocus()},this.inputManager.onkeydown=function(t){if(e.shouldMoveInSuggestions(t))return!1;if(t===u.KEYBOARD.ENTER){return null==e.suggestionsManager.selectAndReturnKeyboardFocusedElement()&&e.onsubmit&&e.onsubmit(),!1}return t===u.KEYBOARD.ESCAPE?(e.clearSuggestion(),e.blur()):e.suggestionsManager.clearKeyboardFocusedElement(),!0},this.inputManager.onchangecursor=function(){e.addSuggestions()},this.inputManager.onkeyup=function(t){if(e.onmove&&e.onmove(),!e.shouldMoveInSuggestions(t))return!0;switch(t){case u.KEYBOARD.UP_ARROW:e.suggestionsManager.moveUp();break;case u.KEYBOARD.DOWN_ARROW:e.suggestionsManager.moveDown();break;case u.KEYBOARD.LEFT_ARROW:e.suggestionsManager.moveLeft();break;case u.KEYBOARD.RIGHT_ARROW:e.suggestionsManager.moveRight()}return e.suggestionsManager.selectedSuggestion&&e.focusOnSuggestion(e.suggestionsManager.selectedSuggestion),e.onchange&&e.onchange(),!1}},e.prototype.addSuggestions=function(){return r(this,void 0,void 0,function(){var e;return s(this,function(t){switch(t.label){case 0:return[4,this.suggestionsManager.receiveSuggestions(null!=this.getSuggestions?this.getSuggestions():[])];case 1:return e=t.sent(),this.addSelectEventHandlers(e),this.inputManager.setWordCompletion(this.firstSuggestionText),this.onSuggestions(e),[2]}})})},e.prototype.shouldMoveInSuggestions=function(e){switch(e){case u.KEYBOARD.UP_ARROW:case u.KEYBOARD.DOWN_ARROW:return!0;case u.KEYBOARD.LEFT_ARROW:case u.KEYBOARD.RIGHT_ARROW:if(this.suggestionsManager.hasFocus&&this.suggestionsManager.hasPreviews)return!0}return!1},e.prototype.addSelectEventHandlers=function(e){var t=this;a.each(e,function(e){null==e.onSelect&&null!=e.text&&(e.onSelect=function(){t.setText(e.text),t.onselect&&t.onselect(e)})})},e.prototype.focus=function(){l.$$(this.element).addClass(\"magic-box-hasFocus\"),this.inputManager.focus()},e.prototype.blur=function(){this.inputManager.blur()},e.prototype.clearSuggestion=function(){return r(this,void 0,void 0,function(){return s(this,function(e){return this.inputManager.setWordCompletion(null),this.suggestionsManager.clearSuggestions(),this.onSuggestions([]),[2]})})},e.prototype.focusOnSuggestion=function(e){null==e||null==e.text?this.inputManager.setResult(this.displayedResult,this.firstSuggestionText):this.inputManager.setResult(this.grammar.parse(e.text).clean(),e.text)},e.prototype.getText=function(){return this.inputManager.getValue()},e.prototype.getWordCompletion=function(){return this.inputManager.getWordCompletion()},e.prototype.clear=function(){this.setText(\"\"),this.clearSuggestion(),this.focus(),this.onclear&&this.onclear()},e.prototype.hasSuggestions=function(){return this.suggestionsManager.hasSuggestions},e}();t.MagicBoxInstance=f,t.createMagicBox=i,t.requestAnimationFrame=o,c.doMagicBoxExport()},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(){}return e.escapeRegExp=function(e){return e.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g,\"\\\\$&\")},e.highlightText=function(e,t,n,i,o){var r=this;if(void 0===n&&(n=!1),void 0===i&&(i=\"magic-box-hightlight\"),void 0===o&&(o=\"\"),0==t.length)return e;var s=this.escapeRegExp(t),a=\"(\"+s+\")|(.*?(?=\"+s+\")|.+)\",u=new RegExp(a,n?\"gi\":\"g\");return e.replace(u,function(e,t,n){return r.escapeText(null!=t?i:o,e)})},e.escapeText=function(e,t){return'<span class=\"'+e+'\">'+i.escape(t)+\"</span>\"},e}();t.MagicBoxUtils=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.buildURI=function(e,t,n){return e.replace(t,n)},e.bindClickEventToElement=function(e,t,n){return e},e}();t.ChatterUtils=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.quickviewLoaded=\"quickviewLoaded\",e.openQuickview=\"openQuickview\",e}();t.QuickviewEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.SUBSCRIPTION_TYPE={followQuery:\"followQuery\",followDocument:\"followDocument\"}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(84),o=n(1),r=n(118),s=n(0),a=function(){function e(e,t){this.inputName=e,this.root=t,this.buildContent()}return e.prototype.reset=function(){this.radio.reset()},e.prototype.build=function(){return this.element},e.prototype.getElement=function(){return this.element},e.prototype.isSelected=function(){return this.getRadio().checked},e.prototype.updateQuery=function(e){try{var t=this.getValue();t&&e.advancedExpression.add(t),this.removeErrorMessage()}catch(e){this.setErrorMessage(e)}},e.prototype.getRadio=function(){return o.$$(this.element).find(\"input\")},e.prototype.setErrorMessage=function(e){this.removeErrorMessage(),this.error=o.$$(\"div\",{className:\"coveo-error coveo-error-date-input\"},e).el,o.$$(this.element).append(this.error)},e.prototype.removeErrorMessage=function(){this.error&&o.$$(this.error).remove()},e.prototype.buildContent=function(){var e=this;this.radio=new r.RadioButton(function(){e.deactivateAllInputs(),e.activateSelectedInput()},this.inputName,\"coveo-advanced-search-date-input\"),this.element=this.radio.getElement(),o.$$(this.element).addClass(\"coveo-advanced-search-date-input-section\"),o.$$(this.radio.getRadio()).addClass(\"coveo-advanced-search-date\"),o.$$(this.radio.getLabel()).addClass(\"coveo-advanced-search-label\")},e.prototype.deactivateAllInputs=function(){var e=o.$$(this.element.parentElement).findAll(\"fieldset\");s.each(e,function(e){e.disabled=!0})},e.prototype.activateSelectedInput=function(){var e=o.$$(this.element).findAll(\"fieldset\");s.each(e,function(e){e.disabled=!1})},e.prototype.onChange=function(){this.root?o.$$(this.root).trigger(i.AdvancedSearchEvents.executeAdvancedSearch):this.element&&o.$$(this.element).trigger(i.AdvancedSearchEvents.executeAdvancedSearch)},e}();t.DateInput=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(84),r=n(6),s=function(){function e(e,t){this.inputName=e,this.root=t}return e.prototype.reset=function(){},e.prototype.build=function(){var e=i.$$(\"div\",{className:\"coveo-advanced-search-document-input-section\"}),t=i.$$(\"span\",{className:\"coveo-advanced-search-label\"});return t.text(r.l(this.inputName)),e.append(t.el),this.element=e.el,this.element},e.prototype.getValue=function(){return\"\"},e.prototype.updateQuery=function(e){this.getValue()&&e.advancedExpression.add(this.getValue())},e.prototype.onChange=function(){this.root?i.$$(this.root).trigger(o.AdvancedSearchEvents.executeAdvancedSearch):this.element&&i.$$(this.element).trigger(o.AdvancedSearchEvents.executeAdvancedSearch)},e}();t.DocumentInput=s},function(e,t,n){\"use strict\";function i(e){return new o(e)}function o(e){if(!(t=m.exec(e)))throw new Error(\"invalid format: \"+e);var t,n=t[1]||\" \",i=t[2]||\">\",o=t[3]||\"-\",r=t[4]||\"\",s=!!t[5],a=t[6]&&+t[6],u=!!t[7],l=t[8]&&+t[8].slice(1),c=t[9]||\"\";\"n\"===c?(u=!0,c=\"g\"):f[c]||(c=\"\"),(s||\"0\"===n&&\"=\"===i)&&(s=!0,n=\"0\",i=\"=\"),this.fill=n,this.align=i,this.sign=o,this.symbol=r,this.zero=s,this.width=a,this.comma=u,this.precision=l,this.type=c}function r(e){return y=S(e),g=y.format,v=y.formatPrefix,y}var s,a=function(e,t){if((n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf(\"e\"))<0)return null;var n,i=e.slice(0,n);return[i.length>1?i[0]+i.slice(2):i,+e.slice(n+1)]},u=function(e){return e=a(Math.abs(e)),e?e[1]:NaN},l=function(e,t){return function(n,i){for(var o=n.length,r=[],s=0,a=e[0],u=0;o>0&&a>0&&(u+a+1>i&&(a=Math.max(1,i-u)),r.push(n.substring(o-=a,o+a)),!((u+=a+1)>i));)a=e[s=(s+1)%e.length];return r.reverse().join(t)}},c=function(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}},p=function(e,t){e=e.toPrecision(t);e:for(var n,i=e.length,o=1,r=-1;o<i;++o)switch(e[o]){case\".\":r=n=o;break;case\"0\":0===r&&(r=o),n=o;break;case\"e\":break e;default:r>0&&(r=0)}return r>0?e.slice(0,r)+e.slice(n+1):e},h=function(e,t){var n=a(e,t);if(!n)return e+\"\";var i=n[0],o=n[1],r=o-(s=3*Math.max(-8,Math.min(8,Math.floor(o/3))))+1,u=i.length;return r===u?i:r>u?i+new Array(r-u+1).join(\"0\"):r>0?i.slice(0,r)+\".\"+i.slice(r):\"0.\"+new Array(1-r).join(\"0\")+a(e,Math.max(0,t+r-1))[0]},d=function(e,t){var n=a(e,t);if(!n)return e+\"\";var i=n[0],o=n[1];return o<0?\"0.\"+new Array(-o).join(\"0\")+i:i.length>o+1?i.slice(0,o+1)+\".\"+i.slice(o+1):i+new Array(o-i.length+2).join(\"0\")},f={\"\":p,\"%\":function(e,t){return(100*e).toFixed(t)},b:function(e){return Math.round(e).toString(2)},c:function(e){return e+\"\"},d:function(e){return Math.round(e).toString(10)},e:function(e,t){return e.toExponential(t)},f:function(e,t){return e.toFixed(t)},g:function(e,t){return e.toPrecision(t)},o:function(e){return Math.round(e).toString(8)},p:function(e,t){return d(100*e,t)},r:d,s:h,X:function(e){return Math.round(e).toString(16).toUpperCase()},x:function(e){return Math.round(e).toString(16)}},m=/^(?:(.)?([<>=^]))?([+\\-\\( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?([a-z%])?$/i;i.prototype=o.prototype,o.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?\"0\":\"\")+(null==this.width?\"\":Math.max(1,0|this.width))+(this.comma?\",\":\"\")+(null==this.precision?\"\":\".\"+Math.max(0,0|this.precision))+this.type};var y,g,v,b=function(e){return e},C=[\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"µ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"],S=function(e){function t(e){function t(e){var t,i,r,c=b,h=S;if(\"c\"===v)h=w(e)+h,e=\"\";else{e=+e;var f=e<0;if(e=w(Math.abs(e),g),f&&0==+e&&(f=!1),c=(f?\"(\"===l?l:\"-\":\"-\"===l||\"(\"===l?\"\":l)+c,h=(\"s\"===v?C[8+s/3]:\"\")+h+(f&&\"(\"===l?\")\":\"\"),x)for(t=-1,i=e.length;++t<i;)if(48>(r=e.charCodeAt(t))||r>57){h=(46===r?a+e.slice(t+1):e.slice(t))+h,e=e.slice(0,t);break}}y&&!d&&(e=o(e,1/0));var _=c.length+e.length+h.length,O=_<m?new Array(m-_+1).join(n):\"\";switch(y&&d&&(e=o(O+e,O.length?m-h.length:1/0),O=\"\"),u){case\"<\":e=c+e+h+O;break;case\"=\":e=c+O+e+h;break;case\"^\":e=O.slice(0,_=O.length>>1)+c+e+h+O.slice(_);break;default:e=O+c+e+h}return p(e)}e=i(e);var n=e.fill,u=e.align,l=e.sign,c=e.symbol,d=e.zero,m=e.width,y=e.comma,g=e.precision,v=e.type,b=\"$\"===c?r[0]:\"#\"===c&&/[boxX]/.test(v)?\"0\"+v.toLowerCase():\"\",S=\"$\"===c?r[1]:/[%p]/.test(v)?h:\"\",w=f[v],x=!v||/[defgprs%]/.test(v);return g=null==g?v?6:12:/[gprs]/.test(v)?Math.max(1,Math.min(21,g)):Math.max(0,Math.min(20,g)),t.toString=function(){return e+\"\"},t}function n(e,n){var o=t((e=i(e),e.type=\"f\",e)),r=3*Math.max(-8,Math.min(8,Math.floor(u(n)/3))),s=Math.pow(10,-r),a=C[8+r/3];return function(e){return o(s*e)+a}}var o=e.grouping&&e.thousands?l(e.grouping,e.thousands):b,r=e.currency,a=e.decimal,p=e.numerals?c(e.numerals):b,h=e.percent||\"%\";return{format:t,formatPrefix:n}};r({decimal:\".\",thousands:\",\",grouping:[3],currency:[\"$\",\"\"]});var w=function(e){return Math.max(0,-u(Math.abs(e)))},x=function(e,t){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(u(t)/3)))-u(Math.abs(e)))},_=function(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,u(t)-u(e))+1};n.d(t,\"b\",function(){return r}),n.d(t,\"a\",function(){return g}),n.d(t,\"d\",function(){return v}),n.d(t,\"c\",function(){return S}),n.d(t,\"e\",function(){return i}),n.d(t,\"f\",function(){return w}),n.d(t,\"g\",function(){return x}),n.d(t,\"h\",function(){return _})},function(e,t,n){\"use strict\";function i(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function o(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function r(e){return{y:e,m:0,d:1,H:0,M:0,S:0,L:0}}function s(e){function t(e,t){return function(n){var i,o,r,s=[],a=-1,u=0,l=e.length;for(n instanceof Date||(n=new Date(+n));++a<l;)37===e.charCodeAt(a)&&(s.push(e.slice(u,a)),null!=(o=we[i=e.charAt(++a)])?i=e.charAt(++a):o=\"e\"===i?\" \":\"0\",(r=t[i])&&(i=r(n,o)),s.push(i),u=a+1);return s.push(e.slice(u,a)),s.join(\"\")}}function n(e,t){return function(n){var i,a,u=r(1900),l=s(u,e,n+=\"\",0);if(l!=n.length)return null;if(\"Q\"in u)return new Date(u.Q);if(\"p\"in u&&(u.H=u.H%12+12*u.p),\"V\"in u){if(u.V<1||u.V>53)return null;\"w\"in u||(u.w=1),\"Z\"in u?(i=o(r(u.y)),a=i.getUTCDay(),i=a>4||0===a?Se.P.ceil(i):Object(Se.P)(i),i=Se.F.offset(i,7*(u.V-1)),u.y=i.getUTCFullYear(),u.m=i.getUTCMonth(),u.d=i.getUTCDate()+(u.w+6)%7):(i=t(r(u.y)),a=i.getDay(),i=a>4||0===a?Se.l.ceil(i):Object(Se.l)(i),i=Se.a.offset(i,7*(u.V-1)),u.y=i.getFullYear(),u.m=i.getMonth(),u.d=i.getDate()+(u.w+6)%7)}else(\"W\"in u||\"U\"in u)&&(\"w\"in u||(u.w=\"u\"in u?u.u%7:\"W\"in u?1:0),a=\"Z\"in u?o(r(u.y)).getUTCDay():t(r(u.y)).getDay(),u.m=0,u.d=\"W\"in u?(u.w+6)%7+7*u.W-(a+5)%7:u.w+7*u.U-(a+6)%7);return\"Z\"in u?(u.H+=u.Z/100|0,u.M+=u.Z%100,o(u)):t(u)}}function s(e,t,n,i){for(var o,r,s=0,a=t.length,u=n.length;s<a;){if(i>=u)return-1;if(37===(o=t.charCodeAt(s++))){if(o=t.charAt(s++),!(r=Je[o in we?t.charAt(s++):o])||(i=r(e,n,i))<0)return-1}else if(o!=n.charCodeAt(i++))return-1}return i}function a(e,t,n){var i=Le.exec(t.slice(n));return i?(e.p=Be[i[0].toLowerCase()],n+i[0].length):-1}function u(e,t,n){var i=je.exec(t.slice(n));return i?(e.w=qe[i[0].toLowerCase()],n+i[0].length):-1}function de(e,t,n){var i=Qe.exec(t.slice(n));return i?(e.w=Ue[i[0].toLowerCase()],n+i[0].length):-1}function fe(e,t,n){var i=We.exec(t.slice(n));return i?(e.m=Ge[i[0].toLowerCase()],n+i[0].length):-1}function me(e,t,n){var i=He.exec(t.slice(n));return i?(e.m=ze[i[0].toLowerCase()],n+i[0].length):-1}function ye(e,t,n){return s(e,Ie,t,n)}function ge(e,t,n){return s(e,Me,t,n)}function ve(e,t,n){return s(e,Pe,t,n)}function be(e){return Ne[e.getDay()]}function Ce(e){return $e[e.getDay()]}function xe(e){return ke[e.getMonth()]}function _e(e){return Ve[e.getMonth()]}function Oe(e){return De[+(e.getHours()>=12)]}function Ee(e){return Ne[e.getUTCDay()]}function Ae(e){return $e[e.getUTCDay()]}function Te(e){return ke[e.getUTCMonth()]}function Re(e){return Ve[e.getUTCMonth()]}function Fe(e){return De[+(e.getUTCHours()>=12)]}var Ie=e.dateTime,Me=e.date,Pe=e.time,De=e.periods,$e=e.days,Ne=e.shortDays,Ve=e.months,ke=e.shortMonths,Le=l(De),Be=c(De),Qe=l($e),Ue=c($e),je=l(Ne),qe=c(Ne),He=l(Ve),ze=c(Ve),We=l(ke),Ge=c(ke),Ye={a:be,A:Ce,b:xe,B:_e,c:null,d:F,e:F,f:$,H:I,I:M,j:P,L:D,m:N,M:V,p:Oe,Q:pe,s:he,S:k,u:L,U:B,V:Q,w:U,W:j,x:null,X:null,y:q,Y:H,Z:z,\"%\":ce},Ke={a:Ee,A:Ae,b:Te,B:Re,c:null,d:W,e:W,f:X,H:G,I:Y,j:K,L:J,m:Z,M:ee,p:Fe,Q:pe,s:he,S:te,u:ne,U:ie,V:oe,w:re,W:se,x:null,X:null,y:ae,Y:ue,Z:le,\"%\":ce},Je={a:u,A:de,b:fe,B:me,c:ye,d:C,e:C,f:E,H:w,I:w,j:S,L:O,m:b,M:x,p:a,Q:T,s:R,S:_,u:h,U:d,V:f,w:p,W:m,x:ge,X:ve,y:g,Y:y,Z:v,\"%\":A};return Ye.x=t(Me,Ye),Ye.X=t(Pe,Ye),Ye.c=t(Ie,Ye),Ke.x=t(Me,Ke),Ke.X=t(Pe,Ke),Ke.c=t(Ie,Ke),{format:function(e){var n=t(e+=\"\",Ye);return n.toString=function(){return e},n},parse:function(e){var t=n(e+=\"\",i);return t.toString=function(){return e},t},utcFormat:function(e){var n=t(e+=\"\",Ke);return n.toString=function(){return e},n},utcParse:function(e){var t=n(e,o);return t.toString=function(){return e},t}}}function a(e,t,n){var i=e<0?\"-\":\"\",o=(i?-e:e)+\"\",r=o.length;return i+(r<n?new Array(n-r+1).join(t)+o:o)}function u(e){return e.replace(Oe,\"\\\\$&\")}function l(e){return new RegExp(\"^(?:\"+e.map(u).join(\"|\")+\")\",\"i\")}function c(e){for(var t={},n=-1,i=e.length;++n<i;)t[e[n].toLowerCase()]=n;return t}function p(e,t,n){var i=xe.exec(t.slice(n,n+1));return i?(e.w=+i[0],n+i[0].length):-1}function h(e,t,n){var i=xe.exec(t.slice(n,n+1));return i?(e.u=+i[0],n+i[0].length):-1}function d(e,t,n){var i=xe.exec(t.slice(n,n+2));return i?(e.U=+i[0],n+i[0].length):-1}function f(e,t,n){var i=xe.exec(t.slice(n,n+2));return i?(e.V=+i[0],n+i[0].length):-1}function m(e,t,n){var i=xe.exec(t.slice(n,n+2));return i?(e.W=+i[0],n+i[0].length):-1}function y(e,t,n){var i=xe.exec(t.slice(n,n+4));return i?(e.y=+i[0],n+i[0].length):-1}function g(e,t,n){var i=xe.exec(t.slice(n,n+2));return i?(e.y=+i[0]+(+i[0]>68?1900:2e3),n+i[0].length):-1}function v(e,t,n){var i=/^(Z)|([+-]\\d\\d)(?::?(\\d\\d))?/.exec(t.slice(n,n+6));return i?(e.Z=i[1]?0:-(i[2]+(i[3]||\"00\")),n+i[0].length):-1}function b(e,t,n){var i=xe.exec(t.slice(n,n+2));return i?(e.m=i[0]-1,n+i[0].length):-1}function C(e,t,n){var i=xe.exec(t.slice(n,n+2));return i?(e.d=+i[0],n+i[0].length):-1}function S(e,t,n){var i=xe.exec(t.slice(n,n+3));return i?(e.m=0,e.d=+i[0],n+i[0].length):-1}function w(e,t,n){var i=xe.exec(t.slice(n,n+2));return i?(e.H=+i[0],n+i[0].length):-1}function x(e,t,n){var i=xe.exec(t.slice(n,n+2));return i?(e.M=+i[0],n+i[0].length):-1}function _(e,t,n){var i=xe.exec(t.slice(n,n+2));return i?(e.S=+i[0],n+i[0].length):-1}function O(e,t,n){var i=xe.exec(t.slice(n,n+3));return i?(e.L=+i[0],n+i[0].length):-1}function E(e,t,n){var i=xe.exec(t.slice(n,n+6));return i?(e.L=Math.floor(i[0]/1e3),n+i[0].length):-1}function A(e,t,n){var i=_e.exec(t.slice(n,n+1));return i?n+i[0].length:-1}function T(e,t,n){var i=xe.exec(t.slice(n));return i?(e.Q=+i[0],n+i[0].length):-1}function R(e,t,n){var i=xe.exec(t.slice(n));return i?(e.Q=1e3*+i[0],n+i[0].length):-1}function F(e,t){return a(e.getDate(),t,2)}function I(e,t){return a(e.getHours(),t,2)}function M(e,t){return a(e.getHours()%12||12,t,2)}function P(e,t){return a(1+Se.a.count(Object(Se.D)(e),e),t,3)}function D(e,t){return a(e.getMilliseconds(),t,3)}function $(e,t){return D(e,t)+\"000\"}function N(e,t){return a(e.getMonth()+1,t,2)}function V(e,t){return a(e.getMinutes(),t,2)}function k(e,t){return a(e.getSeconds(),t,2)}function L(e){var t=e.getDay();return 0===t?7:t}function B(e,t){return a(Se.t.count(Object(Se.D)(e),e),t,2)}function Q(e,t){var n=e.getDay();return e=n>=4||0===n?Object(Se.v)(e):Se.v.ceil(e),a(Se.v.count(Object(Se.D)(e),e)+(4===Object(Se.D)(e).getDay()),t,2)}function U(e){return e.getDay()}function j(e,t){return a(Se.l.count(Object(Se.D)(e),e),t,2)}function q(e,t){return a(e.getFullYear()%100,t,2)}function H(e,t){return a(e.getFullYear()%1e4,t,4)}function z(e){var t=e.getTimezoneOffset();return(t>0?\"-\":(t*=-1,\"+\"))+a(t/60|0,\"0\",2)+a(t%60,\"0\",2)}function W(e,t){return a(e.getUTCDate(),t,2)}function G(e,t){return a(e.getUTCHours(),t,2)}function Y(e,t){return a(e.getUTCHours()%12||12,t,2)}function K(e,t){return a(1+Se.F.count(Object(Se._7)(e),e),t,3)}function J(e,t){return a(e.getUTCMilliseconds(),t,3)}function X(e,t){return J(e,t)+\"000\"}function Z(e,t){return a(e.getUTCMonth()+1,t,2)}function ee(e,t){return a(e.getUTCMinutes(),t,2)}function te(e,t){return a(e.getUTCSeconds(),t,2)}function ne(e){var t=e.getUTCDay();return 0===t?7:t}function ie(e,t){return a(Se.X.count(Object(Se._7)(e),e),t,2)}function oe(e,t){var n=e.getUTCDay();return e=n>=4||0===n?Object(Se.Z)(e):Se.Z.ceil(e),a(Se.Z.count(Object(Se._7)(e),e)+(4===Object(Se._7)(e).getUTCDay()),t,2)}function re(e){return e.getUTCDay()}function se(e,t){return a(Se.P.count(Object(Se._7)(e),e),t,2)}function ae(e,t){return a(e.getUTCFullYear()%100,t,2)}function ue(e,t){return a(e.getUTCFullYear()%1e4,t,4)}function le(){return\"+0000\"}function ce(){return\"%\"}function pe(e){return+e}function he(e){return Math.floor(+e/1e3)}function de(e){return ye=s(e),ge=ye.format,ve=ye.parse,be=ye.utcFormat,Ce=ye.utcParse,ye}function fe(e){return e.toISOString()}function me(e){var t=new Date(e);return isNaN(t)?null:t}var ye,ge,ve,be,Ce,Se=n(179),we={\"-\":\"\",_:\" \",0:\"0\"},xe=/^\\s*\\d+/,_e=/^%/,Oe=/[\\\\^$*+?|[\\]().{}]/g;de({dateTime:\"%x, %X\",date:\"%-m/%-d/%Y\",time:\"%-I:%M:%S %p\",periods:[\"AM\",\"PM\"],days:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],shortDays:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortMonths:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"]});var Ee=Date.prototype.toISOString?fe:be(\"%Y-%m-%dT%H:%M:%S.%LZ\"),Ae=Ee,Te=+new Date(\"2000-01-01T00:00:00.000Z\")?me:Ce(\"%Y-%m-%dT%H:%M:%S.%LZ\"),Re=Te;n.d(t,\"d\",function(){return de}),n.d(t,\"c\",function(){return ge}),n.d(t,\"f\",function(){return ve}),n.d(t,\"g\",function(){return be}),n.d(t,\"h\",function(){return Ce}),n.d(t,\"e\",function(){return s}),n.d(t,\"a\",function(){return Ae}),n.d(t,\"b\",function(){return Re})},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},r=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},s=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(216),u=n(5),l=n(1),c=n(4),p=n(7),h=n(8),d=n(2),f=n(604),m=n(605),y=n(606),g=n(0),v=n(609),b=n(610);t.HIGHLIGHT_PREFIX=\"CoveoHighlight\";var C=function(e){function t(n,i,o,r){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.result=r,s.options=h.ComponentOptions.initComponentOptions(n,t,i),s.result=r||s.resolveResult(),u.Assert.exists(s.result),s}return i(t,e),t.prototype.createDom=function(){var e=l.$$(\"div\",{className:\"coveo-quickview-document\"});this.element.appendChild(e.el),this.header=new m.QuickviewDocumentHeader,this.iframe=new f.QuickviewDocumentIframe,e.append(this.header.el),e.append(this.iframe.el)},t.prototype.open=function(){return r(this,void 0,void 0,function(){var e,t,n,i,o,r,a,u,a,l=this;return s(this,function(s){switch(s.label){case 0:this.ensureDom(),e=(new Date).getTime(),t=this.initialTermsToHighlight,this.triggerOpenQuickViewEvent({termsToHighlight:t}),n=this.wereTermsToHighlightModified(t),n&&this.handleTermsToHighlight(t,this.query),s.label=1;case 1:return s.trys.push([1,4,,6]),[4,this.queryController.getEndpoint().getDocumentHtml(this.result.uniqueId,{queryObject:this.query,requestedOutputSize:this.options.maximumDocumentSize})];case 2:return i=s.sent(),[4,this.iframe.render(i)];case 3:return s.sent(),o=new y.QuickviewDocumentWords(this.iframe,this.result),r=new b.QuickviewDocumentPreviewBar(this.iframe,o),g.each(o.words,function(e){var t=new v.QuickviewDocumentWordButton(e,r,l.iframe);l.header.addWord(t)}),a=(new Date).getTime(),this.triggerQuickviewLoaded(a-e),[3,6];case 4:return u=s.sent(),[4,this.iframe.renderError(u)];case 5:return s.sent(),a=(new Date).getTime(),this.triggerQuickviewLoaded(a-e),[3,6];case 6:return[2]}})})},Object.defineProperty(t.prototype,\"initialTermsToHighlight\",{get:function(){return g.keys(this.result.termsToHighlight)},enumerable:!0,configurable:!0}),t.prototype.triggerOpenQuickViewEvent=function(e){l.$$(this.root).trigger(a.QuickviewEvents.openQuickview,e)},Object.defineProperty(t.prototype,\"query\",{get:function(){return o({},this.queryController.getLastQuery())},enumerable:!0,configurable:!0}),t.prototype.triggerQuickviewLoaded=function(e){l.$$(this.element).trigger(a.QuickviewEvents.quickviewLoaded,{duration:e})},t.prototype.handleTermsToHighlight=function(e,t){var n=this;for(var i in this.result.termsToHighlight)delete this.result.termsToHighlight[i];var o=\"\";g.each(e,function(e){o+=e+\" \",n.result.termsToHighlight[e]=[e]}),o=o.substring(0,o.length-1),t.q=o},t.prototype.wereTermsToHighlightModified=function(e){return!c.Utils.arrayEqual(e,this.initialTermsToHighlight)},t.ID=\"QuickviewDocument\",t.options={maximumDocumentSize:h.ComponentOptions.buildNumberOption({defaultValue:0,min:0})},t}(p.Component);t.QuickviewDocument=C,d.Initialization.registerAutoCreateComponent(C)},,function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(11),a=n(84),u=n(54),l=n(2),c=n(6),p=n(1),h=n(549),d=n(10),f=n(484),m=n(0),y=n(3);n(560);var g=n(119),v=n(85),b=n(69),C=n(52),S=n(118),w=n(26),x=n(32),_=n(12),O=n(17),E=function(e){function t(n,i,o,s){void 0===s&&(s=w.ModalBox);var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.ModalBox=s,a.inputs=[],a.inputFactory=new h.AdvancedSearchInputFactory(a.queryController.getEndpoint(),a.root),a.externalSections=[],a.needToPopulateBreadcrumb=!1,a.needToExecuteAdvancedSearch=!0,a.options=r.ComponentOptions.initComponentOptions(n,t,i),a.bindEvents(),a.buildContent(),a}return i(t,e),t.prototype.executeAdvancedSearch=function(){this.needToExecuteAdvancedSearch&&(this.usageAnalytics.logSearchEvent(d.analyticsActionCauseList.advancedSearch,{}),this.queryController.executeQuery({closeModalBox:!1}))},t.prototype.reset=function(){m.each(this.inputs,function(e){e.reset()})},t.prototype.open=function(){null==this.modalbox&&(this.modalbox=this.ModalBox.open(this.content.el,{sizeMod:\"big\",title:c.l(\"AdvancedSearch\"),className:\"coveo-advanced-search-modal\"}))},t.prototype.close=function(){null!=this.modalbox&&(this.modalbox.close(),this.modalbox=null)},t.prototype.handlePopulateBreadcrumb=function(e){if(this.needToPopulateBreadcrumb){var t=this.buildBreadcrumbElements(),n=t.container,i=t.title,o=t.clear;n.append(i.el),n.append(o.el),e.breadcrumbs.push({element:n.el})}},t.prototype.buildBreadcrumbElements=function(){return{container:this.buildBreadcrumbContainer(),title:this.buildBreadcrumbTitle(),clear:this.buildBreacrumbClear()}},t.prototype.buildBreadcrumbContainer=function(){return p.$$(\"div\",{className:\"coveo-advanced-search-breadcrumb\"})},t.prototype.buildBreadcrumbTitle=function(){return p.$$(\"span\",{className:\"coveo-advanced-search-breadcrumb-title\"},c.l(\"FiltersInAdvancedSearch\")+\":\")},t.prototype.buildBreacrumbClear=function(){var e=this,t=p.$$(\"span\",{className:\"coveo-advanced-search-breadcrumb-clear\"},_.SVGIcons.icons.mainClear),n=function(){e.handleClearBreadcrumb(),e.usageAnalytics.logSearchEvent(d.analyticsActionCauseList.breadcrumbAdvancedSearch,{}),e.queryController.executeQuery()};return(new O.AccessibleButton).withElement(t).withLabel(c.l(\"Clear\")).withSelectAction(function(){return n()}).build(),t},t.prototype.handleClearBreadcrumb=function(){this.needToPopulateBreadcrumb&&(this.needToExecuteAdvancedSearch=!1,this.reset(),this.needToExecuteAdvancedSearch=!0)},t.prototype.handleQuerySummaryCancelLastAction=function(){this.needToExecuteAdvancedSearch=!1,this.reset(),this.needToExecuteAdvancedSearch=!0},t.prototype.handlePopulateMenu=function(e){var t=this;e.menuData.push({text:c.l(\"AdvancedSearch\"),className:\"coveo-advanced-search\",onOpen:function(){return t.open()},onClose:function(){return t.close()},svgIcon:_.SVGIcons.icons.dropdownPreferences,svgIconClassName:\"coveo-advanced-search-svg\"})},t.prototype.handleBuildingQuery=function(e){var t=e.queryBuilder.build();m.each(this.externalSections,function(t){t.updateQuery&&t.updateQuery(t.inputs,e.queryBuilder)}),m.each(this.inputs,function(t){t.updateQuery&&t.updateQuery(e.queryBuilder)});var n=e.queryBuilder.build();this.needToPopulateBreadcrumb=n.aq!=t.aq},t.prototype.buildContent=function(){var e=this,t=p.$$(\"div\"),n=[];this.options.includeKeywords&&n.push(this.getKeywordsSection()),this.options.includeDate&&n.push(this.getDateSection()),this.options.includeDocument&&n.push(this.getDocumentSection()),this.externalSections=[],p.$$(this.root).trigger(a.AdvancedSearchEvents.buildingAdvancedSearch,{sections:this.externalSections,executeQuery:function(t){return t=m.extend({},t,{closeModalBox:!1}),e.queryController.executeQuery(t)}}),m.each(this.externalSections,function(n){t.append(e.buildExternalSection(n))}),m.each(n,function(n){t.append(e.buildInternalSection(n))}),this.content=t},t.prototype.getKeywordsSection=function(){var e=c.l(\"Keywords\"),t=[];return t.push(this.inputFactory.createAllKeywordsInput()),t.push(this.inputFactory.createExactKeywordsInput()),t.push(this.inputFactory.createAnyKeywordsInput()),t.push(this.inputFactory.createNoneKeywordsInput()),{name:e,inputs:t}},t.prototype.getDateSection=function(){var e=c.l(\"Date\"),t=[];return t.push(this.inputFactory.createAnytimeDateInput()),t.push(this.inputFactory.createInTheLastDateInput()),t.push(this.inputFactory.createBetweenDateInput()),{name:e,inputs:t}},t.prototype.getDocumentSection=function(){var e=c.l(\"Document\"),t=[];return t.push(this.inputFactory.createSimpleFieldInput(c.l(\"FileType\"),\"@filetype\")),t.push(this.inputFactory.createSimpleFieldInput(c.l(\"Language\"),\"@language\")),t.push(this.inputFactory.createSizeInput()),t.push(this.inputFactory.createAdvancedFieldInput(c.l(\"Title\"),\"@title\")),t.push(this.inputFactory.createAdvancedFieldInput(c.l(\"Author\"),\"@author\")),{name:e,inputs:t}},t.prototype.buildExternalSection=function(e){var t=this.buildSectionTitle(e).el;return this.inputs=m.union(this.inputs,e.inputs),t.appendChild(e.content),t},t.prototype.buildInternalSection=function(e){var t=this,n=this.buildSectionTitle(e),i=n.el,o=n.id,r=[];return m.each(e.inputs,function(e){r.push(t.buildDefaultInput(e))}),this.inputs=m.union(this.inputs,r),m.each(r,function(e){var t=e.build(),n=t.querySelector(\"input\");n&&n.setAttribute(\"aria-labelledby\",o),p.$$(i).append(t)}),i},t.prototype.buildSectionTitle=function(e){var t=p.$$(\"div\",{className:\"coveo-advanced-search-section\"}),n=p.$$(\"div\",{className:\"coveo-advanced-search-section-title\"});n.text(e.name);var i=\"coveo-advanced-search-section-\"+e.name;return n.el.id=i,t.append(n.el),{el:t.el,id:i}},t.prototype.buildDefaultInput=function(e){return this.isPrebuiltInput(e)?this.inputFactory.create(e.name,e.parameters):e},t.prototype.isPrebuiltInput=function(e){return void 0!==e.name},t.prototype.bindEvents=function(){var e=this;this.bind.onRootElement(x.BreadcrumbEvents.populateBreadcrumb,function(t){return e.handlePopulateBreadcrumb(t)}),this.bind.onRootElement(x.BreadcrumbEvents.clearBreadcrumb,function(t){return e.handleClearBreadcrumb()}),this.bind.onRootElement(u.SettingsEvents.settingsPopulateMenu,function(t){return e.handlePopulateMenu(t)}),this.bind.onRootElement(s.QueryEvents.buildingQuery,function(t){return e.handleBuildingQuery(t)}),this.bind.onRootElement(a.AdvancedSearchEvents.executeAdvancedSearch,function(){return e.executeAdvancedSearch()}),this.bind.onRootElement(f.QuerySummaryEvents.cancelLastAction,function(){return e.handleQuerySummaryCancelLastAction()})},t.ID=\"AdvancedSearch\",t.doExport=function(){y.exportGlobally({AdvancedSearch:t,NumericSpinner:g.NumericSpinner,DatePicker:v.DatePicker,Dropdown:b.Dropdown,TextInput:C.TextInput,RadioButton:S.RadioButton})},t.options={includeKeywords:r.ComponentOptions.buildBooleanOption({defaultValue:!0}),includeDate:r.ComponentOptions.buildBooleanOption({defaultValue:!0}),includeDocument:r.ComponentOptions.buildBooleanOption({defaultValue:!0})},t}(o.Component);t.AdvancedSearch=E,l.Initialization.registerAutoCreateComponent(E)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(11),a=n(2),u=n(1),l=n(20),c=n(0),p=n(3),h=function(e){function t(n,i,o){var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.options=r.ComponentOptions.initComponentOptions(n,t,i),a.bind.onRootElement(s.QueryEvents.buildingQuery,function(e){return a.handleBuildingQuery(e)}),a.bind.onRootElement(s.QueryEvents.querySuccess,function(e){return a.handleQuerySuccess(e)}),u.$$(a.element).hide(),a}return i(t,e),t.doExport=function(){p.exportGlobally({Aggregate:t})},t.prototype.handleBuildingQuery=function(e){var t={field:this.options.field,maximumNumberOfValues:0,computedFields:[{field:this.options.field,operation:this.options.operation}]};this.index=e.queryBuilder.groupByRequests.length,e.queryBuilder.groupByRequests.push(t)},t.prototype.handleQuerySuccess=function(e){if(c.isNumber(this.index)&&0!=e.results.groupByResults.length){var t=e.results.groupByResults[this.index],n=t.globalComputedFieldResults[0];u.$$(this.element).text(l.format(n,this.options.format)),u.$$(this.element).show()}else u.$$(this.element).hide()},t.ID=\"Aggregate\",t.options={field:r.ComponentOptions.buildFieldOption({required:!0}),operation:r.ComponentOptions.buildStringOption({defaultValue:\"sum\"}),format:r.ComponentOptions.buildStringOption({defaultValue:\"c0\"})},t}(o.Component);t.Aggregate=h,a.Initialization.registerAutoCreateComponent(h)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(33),s=n(11),a=n(3),u=n(5),l=n(13),c=n(6),p=n(17),h=n(1),d=n(10),f=n(7),m=n(8),y=n(2),g=n(485),v=n(18),b=function(e){function t(n,i,a){var u=e.call(this,n,t.ID,a)||this;u.options=i,u.partialQueries=[],u.lastSuggestions=[],u.resultsToBuildWith=[],u.options&&\"omniboxSuggestionOptions\"in u.options&&(u.options=o.extend(u.options,u.options.omniboxSuggestionOptions)),u.options=m.ComponentOptions.initComponentOptions(n,t,u.options);var l=function(e){var t=h.$$(\"div\",{className:\"magic-box-suggestion coveo-omnibox-selectable coveo-top-analytics-suggestion-row\"});return(new p.AccessibleButton).withElement(t).withLabel(e.rawValue).build(),e.data&&(t.el.innerHTML=e.data),t.el.outerHTML};u.options.onSelect=u.options.onSelect||u.onRowSelection;var c={row:l};return u.suggestionForOmnibox=new g.SuggestionForOmnibox(c,function(e,t){u.options.onSelect.call(u,e,t)},function(e,t){u.onRowTab.call(u,e,t)}),u.bind.onRootElement(r.OmniboxEvents.populateOmnibox,function(e){return u.handlePopulateOmnibox(e)}),u.bind.onRootElement(s.QueryEvents.querySuccess,function(){return u.partialQueries=[]}),u}return i(t,e),t.doExport=function(){a.exportGlobally({AnalyticsSuggestions:t})},t.prototype.selectSuggestion=function(e){if(this.currentlyDisplayedSuggestions)if(isNaN(e))this.currentlyDisplayedSuggestions[e]&&h.$$(this.currentlyDisplayedSuggestions[e].element).trigger(\"click\");else{var t=o.findWhere(this.currentlyDisplayedSuggestions,{pos:e});t&&h.$$(t.element).trigger(\"click\")}},t.prototype.handlePopulateOmnibox=function(e){var t=this;u.Assert.exists(e);var n=new Promise(function(n,i){var r=t.usageAnalytics.getTopQueries({pageSize:t.options.numberOfSuggestions,queryText:e.completeQueryExpression.word});r.then(function(i){t.resultsToBuildWith=o.map(i,function(e){return{value:e}}),t.lastSuggestions=i,o.isEmpty(t.resultsToBuildWith)||\"\"==e.completeQueryExpression.word||t.partialQueries.push(e.completeQueryExpression.word);var r=t.suggestionForOmnibox.buildOmniboxElement(t.resultsToBuildWith,e);t.currentlyDisplayedSuggestions={},r&&o.map(h.$$(r).findAll(\".coveo-omnibox-selectable\"),function(e,n){t.currentlyDisplayedSuggestions[h.$$(e).text()]={element:e,pos:n}}),n({element:r,zIndex:t.options.omniboxZIndex})}),r.catch(function(){n({element:void 0})})});e.rows.push({deferred:n})},t.prototype.onRowSelection=function(e,t){t.clear(),t.closeOmnibox(),this.queryStateModel.set(l.QueryStateModel.attributesEnum.q,e),this.usageAnalytics.logSearchEvent(this.getOmniboxAnalyticsEventCause(),{partialQueries:this.cleanCustomData(this.partialQueries),suggestionRanking:o.indexOf(o.pluck(this.resultsToBuildWith,\"value\"),e),suggestions:this.cleanCustomData(this.lastSuggestions),partialQuery:t.completeQueryExpression.word}),this.queryController.executeQuery()},t.prototype.onRowTab=function(e,t){t.clear(),t.closeOmnibox(),this.queryStateModel.set(l.QueryStateModel.attributesEnum.q,\"\"+e),this.usageAnalytics.logCustomEvent(this.getOmniboxAnalyticsEventCause(),{partialQueries:this.cleanCustomData(this.partialQueries),suggestionRanking:o.indexOf(o.pluck(this.resultsToBuildWith,\"value\"),e),suggestions:this.cleanCustomData(this.lastSuggestions),partialQuery:t.completeQueryExpression.word},this.element)},t.prototype.cleanCustomData=function(e,t){void 0===t&&(t=256),e=o.compact(o.filter(e,function(e,t,n){return 0===t||e!==n[t-1]})),e=o.map(e,function(e){return e.replace(/;/g,\"\")});var n=[];return o.reduceRight(e,function(e,i){var o=e+i.length;return o<=t&&n.push(i),o},0),e=n.reverse(),e.join(\";\").length>=256?this.cleanCustomData(e,t-10):e.join(\";\")},t.prototype.getOmniboxAnalyticsEventCause=function(){return this.searchInterface instanceof v.StandaloneSearchInterface?d.analyticsActionCauseList.omniboxFromLink:d.analyticsActionCauseList.omniboxAnalytics},t.ID=\"AnalyticsSuggestions\",t.options={omniboxZIndex:m.ComponentOptions.buildNumberOption({defaultValue:52,min:0}),headerTitle:m.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return c.l(\"SuggestedQueries\")}}),numberOfSuggestions:m.ComponentOptions.buildNumberOption({defaultValue:5,min:1})},t}(f.Component);t.AnalyticsSuggestions=b,y.Initialization.registerAutoCreateComponent(b)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(5),a=n(11),u=n(16),l=n(54),c=n(82),p=n(1),h=n(2),d=n(6),f=n(26),m=n(0),y=n(3);n(561);var g=n(12),v=function(e){function t(n,i,o,c){void 0===i&&(i={});var p=e.call(this,n,t.ID,o)||this;return p.element=n,p.options=i,p._window=c,p.options=r.ComponentOptions.initComponentOptions(n,t,i),s.Assert.exists(p.options.name),p.handlers=[],p._window=p._window||window,p.redirectCount=0,p.bind.onRootElement(a.QueryEvents.buildingCallOptions,p.handleBuildingCallOptions),p.bind.onRootElement(a.QueryEvents.queryError,p.handleQueryError),p.bind.onRootElement(u.InitializationEvents.nuke,p.handleNuke),p.bind.onRootElement(l.SettingsEvents.settingsPopulateMenu,function(e){e.menuData.push({text:d.l(\"Reauthenticate\",p.options.caption),className:\"coveo-authentication-provider\",onOpen:function(){return p.authenticateWithProvider()},svgIcon:g.SVGIcons.icons.dropdownAuthenticate,svgIconClassName:\"coveo-authentication-provider-svg\"})}),p}return i(t,e),t.prototype.handleBuildingCallOptions=function(e){e.options.authentication.push(this.options.name)},t.prototype.handleQueryError=function(e){var t=e.error;t.isMissingAuthentication&&t.provider===this.options.name&&this.redirectCount<2&&-1!==this.redirectCount?(++this.redirectCount,this.authenticateWithProvider()):(this.logger.error(\"The AuthenticationProvider is in a redirect loop. This may be due to a back-end configuration problem.\"),this.redirectCount=-1)},t.prototype.authenticateWithProvider=function(){this.options.useIFrame?this.authenticateWithIFrame():this.redirectToAuthenticationProvider()},t.prototype.redirectToAuthenticationProvider=function(){this.logger.info(\"Redirecting to authentication provider \"+this.options.name),this._window.location.href=this.getAuthenticationProviderUriForRedirect()},t.prototype.authenticateWithIFrame=function(){this.logger.info(\"Using iframe to retrieve authentication for provider \"+this.options.name);var e,t=p.$$(\"iframe\",{src:this.getAuthenticationProviderUriForIFrame()}).el;e=this.options.showIFrame?this.createPopupForVisibleIFrame(t):this.createPopupForWaitMessage(t);var n=this.createHandler(e,t);p.$$(this._window).one(\"message\",n),this.handlers.push(n)},t.prototype.createHandler=function(e,t){var n=this;return function(){p.$$(t).detach(),n.logger.info(\"Got authentication for provider \"+n.options.name+\"; retrying query.\"),e.close(),n.queryController.executeQuery()}},t.prototype.handleNuke=function(){var e=this;m.each(this.handlers,function(t){return p.$$(e._window).off(\"message\",t)})},t.prototype.createPopupForWaitMessage=function(e){var t=p.$$(\"div\",{className:\"coveo-waiting-for-authentication-popup\"},c.DomUtils.getBasicLoadingAnimation()).el;return p.$$(e).hide(),document.body.appendChild(e),f.ModalBox.open(t,{title:d.l(\"Authenticating\",this.options.caption),sizeMod:\"small\"}),f.ModalBox},t.prototype.createPopupForVisibleIFrame=function(e){p.$$(e).addClass(\"coveo-authentication-iframe\");var t=p.$$(\"div\",{},e).el;return f.ModalBox.open(t,{title:d.l(\"Authenticating\",this.options.caption),className:\"coveo-authentication-popup\",sizeMod:\"big\"}),f.ModalBox},t.prototype.getAuthenticationProviderUriForRedirect=function(){return this.queryController.getEndpoint().getAuthenticationProviderUri(this.options.name,this._window.location.href,void 0)},t.prototype.getAuthenticationProviderUriForIFrame=function(){return this.queryController.getEndpoint().getAuthenticationProviderUri(this.options.name,void 0,\"success\")},t.ID=\"AuthenticationProvider\",t.doExport=function(){y.exportGlobally({AuthenticationProvider:t})},t.options={name:r.ComponentOptions.buildStringOption(),caption:r.ComponentOptions.buildStringOption({postProcessing:function(e,t){return e||t.name}}),useIFrame:r.ComponentOptions.buildBooleanOption({defaultValue:!1,alias:[\"useIframe\"]}),showIFrame:r.ComponentOptions.buildBooleanOption({defaultValue:!0,alias:[\"showIframe\"],depend:\"useIFrame\"})},t}(o.Component);t.AuthenticationProvider=v,h.Initialization.registerAutoCreateComponent(v)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(562);var o=n(26),r=n(3),s=n(1),a=n(4),u=n(7),l=n(8),c=n(2),p=n(180),h=function(e){function t(n,i,r,s,u,p){void 0===p&&(p=o.ModalBox);var h=e.call(this,n,t.ID,r)||this;h.element=n,h.options=i,h.result=s,h._window=u,h.ModalBox=p,h.options=l.ComponentOptions.initComponentOptions(n,t,i),h._window=h._window||window;var d=\"\";return h.options.overlayColor&&(d+=\"linear-gradient(\"+h.options.overlayColor+\", \"+(h.options.overlayGradient?\"rgba(0,0,0,0)\":h.options.overlayColor)+\"), \"),d+=\"url('\"+(h.options.imageUrl||a.Utils.getFieldValue(s,h.options.imageField))+\"') center center\",h.element.style.background=d,h.element.style.backgroundSize=\"cover\",c.Initialization.automaticallyCreateComponentsInsideResult(n,s),h.configureSpecialBackdropActions(),h}return i(t,e),t.prototype.configureSpecialBackdropActions=function(){if(a.Utils.getFieldValue(this.result,\"ytthumbnailurl\")){var e=new p.YouTubeThumbnail(s.$$(\"div\").el,{embed:!0},this.getBindings(),this.result,this.ModalBox);s.$$(this.element).on(\"click\",function(t){s.$$(t.target).hasClass(\"CoveoResultLink\")||e.openResultLink()})}},t.ID=\"Backdrop\",t.doExport=function(){r.exportGlobally({Backdrop:t})},t.options={imageUrl:l.ComponentOptions.buildStringOption(),imageField:l.ComponentOptions.buildFieldOption(),overlayColor:l.ComponentOptions.buildColorOption(),overlayGradient:l.ComponentOptions.buildBooleanOption({defaultValue:!1,depend:\"overlayColor\"})},t}(u.Component);t.Backdrop=h,c.Initialization.registerAutoCreateComponent(h)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(8),r=n(2),s=n(117),a=n(19),u=n(5),l=n(1),c=n(0),p=n(3),h=function(e){function t(n,i,r,s){var a=e.call(this,n,o.ComponentOptions.initComponentOptions(n,t,i),r,s,t.ID)||this;return a.options=i,c.isString(a.options.colors)&&(a.options.colors=t.parseColors(a.options.colors)),null==a.options.colors.values&&(a.options.colors.values={}),a}return i(t,e),t.parseColors=function(e){if(e){if(t.colorsRegex.test(e)){var n={values:{}},i=a.StringUtils.match(e,t.colorRegex);return c.each(i,function(e){var t=e[1],i=e[2];null!=t?n.values[t.replace(/\\\\(:|;)/g,\"$1\")]={icon:i}:n.icon=i}),n}try{return JSON.parse(e)}catch(t){u.Assert.fail(\"Invalid colors for badge '\"+e+\"'\")}}return{}},t.prototype.getColor=function(e){void 0===e&&(e=\"\");var t=c.find(c.keys(this.options.colors.values),function(t){return e.toLowerCase()==t.toLowerCase()}),n=t?this.options.colors.values[t]:{};return{icon:n.icon||this.options.colors.icon,text:n.text||this.options.colors.text}},t.prototype.renderOneValue=function(t){var n=e.prototype.renderOneValue.call(this,t);l.$$(n).addClass(\"coveo-value\");var i=this.getColor(t),o=l.$$(\"span\",{className:\"coveo-badge-icon\"}).el;null!=i.icon&&(o.style.color=i.icon);var r=l.$$(\"span\",{className:\"coveo-badge-label\"},n.innerHTML).el;return null!=i.text&&(r.style.color=i.text),l.$$(n).empty(),n.appendChild(o),n.appendChild(r),n},t.prototype.prependTextCaptionToDom=function(){},t.ID=\"Badge\",t.doExport=function(){p.exportGlobally({Badge:t})},t.options={colors:o.ComponentOptions.buildCustomOption(function(e){return t.parseColors(e)},{defaultValue:{values:{}}}),textCaption:o.ComponentOptions.buildLocalizedStringOption()},t.parent=s.FieldValue,t.colorRegex=/(?:\\s*((?:[^:;]|\\\\[;:])*)\\s*:\\s*)?(\\w+|#[A-Fa-f0-9]{6}|#[A-Fa-f0-9]{3})/g,t.colorsRegex=new RegExp(\"^(\\\\s*\"+t.colorRegex.source+\"\\\\s*;)*(\\\\s*\"+t.colorRegex.source+\")?\\\\s*$\"),t}(s.FieldValue);t.Badge=h,h.options=c.omit(h.options,\"textCaption\"),r.Initialization.registerAutoCreateComponent(h)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(563);var o=n(0),r=n(32),s=n(16),a=n(11),u=n(3),l=n(6),c=n(17),p=n(1),h=n(10),d=n(7),f=n(8),m=n(2),y=function(e){function t(n,i,o){var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.options=f.ComponentOptions.initComponentOptions(n,t,i),a.bind.oneRootElement(s.InitializationEvents.afterInitialization,function(){return a.handleAfterInitialization()}),a.bind.onRootElement(r.BreadcrumbEvents.redrawBreadcrumb,function(){return a.redrawBreadcrumb()}),a.element.style.display=\"none\",a}return i(t,e),t.prototype.getBreadcrumbs=function(){var e={breadcrumbs:[]};return this.bind.trigger(this.root,r.BreadcrumbEvents.populateBreadcrumb,e),this.logger.debug(\"Retrieved breadcrumbs\",e.breadcrumbs),this.lastBreadcrumbs=e.breadcrumbs,e.breadcrumbs},t.prototype.clearBreadcrumbs=function(){var e={};this.bind.trigger(this.root,r.BreadcrumbEvents.clearBreadcrumb,e),this.logger.debug(\"Clearing breadcrumbs\"),this.usageAnalytics.logSearchEvent(h.analyticsActionCauseList.breadcrumbResetAll,{}),this.queryController.executeQuery()},t.prototype.drawBreadcrumb=function(e){var t=this;p.$$(this.element).empty(),0!=e.length?this.element.style.display=\"\":this.element.style.display=\"none\";var n=document.createElement(\"div\");p.$$(n).addClass(\"coveo-breadcrumb-items\"),this.element.appendChild(n),o.each(e,function(e){var t=e.element;p.$$(t).addClass(\"coveo-breadcrumb-item\"),n.appendChild(t)});var i=p.$$(\"div\",void 0,l.l(\"ClearAllFilters\")).el,r=p.$$(\"div\",{className:\"coveo-breadcrumb-clear-all\",title:l.l(\"ClearAllFilters\")},i).el;(new c.AccessibleButton).withElement(r).withSelectAction(function(){return t.clearBreadcrumbs()}).withOwner(this.bind).withLabel(l.l(\"ClearAllFilters\")).build(),this.element.appendChild(r)},t.prototype.redrawBreadcrumb=function(){this.lastBreadcrumbs?this.drawBreadcrumb(this.lastBreadcrumbs):this.drawBreadcrumb(this.getBreadcrumbs())},t.prototype.handleDeferredQuerySuccess=function(){this.drawBreadcrumb(this.getBreadcrumbs())},t.prototype.handleQueryError=function(){this.drawBreadcrumb(this.getBreadcrumbs())},t.prototype.handleAfterInitialization=function(){var e=this;this.bind.onRootElement(a.QueryEvents.deferredQuerySuccess,function(){return e.handleDeferredQuerySuccess()}),this.bind.onRootElement(a.QueryEvents.queryError,function(){return e.handleQueryError()})},t.ID=\"Breadcrumb\",t.options={},t.doExport=function(){u.exportGlobally({Breadcrumb:t})},t}(d.Component);t.Breadcrumb=y,m.Initialization.registerAutoCreateComponent(y)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(2),a=n(5),u=n(1),l=n(25),c=n(0),p=n(3);n(564);var h=n(12),d=n(14),f=function(e){function t(n,i,o,s){var l=e.call(this,n,t.ID,o)||this;return l.element=n,l.options=i,l.result=s,l.removedTabIndexElements=[],l.options=r.ComponentOptions.initComponentOptions(n,t,i),l.parentResult=u.$$(l.element).closest(\"CoveoResult\"),a.Assert.check(void 0!==l.parentResult,\"ActionBar needs to be a child of a Result\"),l.options.hidden?(u.$$(l.parentResult).addClass(\"coveo-clickable\"),l.appendArrow(),l.bindEvents(),c.forEach(u.$$(l.element).findAll(\"*\"),function(e){e.hasAttribute(\"tabindex\")&&\"0\"==e.getAttribute(\"tabindex\")&&(l.removedTabIndexElements.push(e),e.removeAttribute(\"tabindex\"))})):(l.element.style.transition=\"none\",l.element.style.transform=\"none\"),l}return i(t,e),t.prototype.show=function(){u.$$(this.element).addClass(\"coveo-opened\"),c.forEach(this.removedTabIndexElements,function(e){e.setAttribute(\"tabindex\",\"0\")})},t.prototype.hide=function(){u.$$(this.element).removeClass(\"coveo-opened\"),c.forEach(this.removedTabIndexElements,function(e){e.removeAttribute(\"tabindex\")})},t.prototype.bindEvents=function(){var e=this;u.$$(this.parentResult).on(\"click\",function(){return e.show()}),u.$$(this.parentResult).on(\"mouseleave\",function(){return e.hide()}),this.options.openOnMouseOver&&u.$$(this.arrowContainer).on(\"mouseenter\",function(){return e.show()})},t.prototype.appendArrow=function(){var e=this;this.arrowContainer=u.$$(\"div\",{className:\"coveo-card-action-bar-arrow-container\",tabindex:0}).el,this.bind.on(this.arrowContainer,\"keyup\",l.KeyboardUtils.keypressAction(l.KEYBOARD.ENTER,function(){return e.show()}));var t=u.$$(\"span\",{className:\"coveo-icon coveo-card-action-bar-arrow-icon\"},h.SVGIcons.icons.arrowUp);d.SVGDom.addClassToSVGInContainer(t.el,\"coveo-card-action-bar-arrow-svg\"),this.arrowContainer.appendChild(t.el),this.parentResult.appendChild(this.arrowContainer)},t.ID=\"CardActionBar\",t.doExport=function(){p.exportGlobally({CardActionBar:t})},t.options={hidden:r.ComponentOptions.buildBooleanOption({defaultValue:!0}),openOnMouseOver:r.ComponentOptions.buildBooleanOption({defaultValue:!0,depend:\"hidden\"})},t}(o.Component);t.CardActionBar=f,s.Initialization.registerAutoCreateComponent(f)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(2),a=n(565),u=n(1),l=n(5),c=n(25),p=n(3);n(566);var h=n(12),d=n(14),f=n(4),m=n(6),y=function(e){function t(n,i,o){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.options=r.ComponentOptions.initComponentOptions(n,t,i),s.parentCard=u.$$(s.element).closest(\".CoveoResult\"),l.Assert.exists(s.parentCard),u.$$(s.parentCard).addClass(\"coveo-with-card-overlay\"),s.createOverlay(),s.createButton(s.element),s.closeOverlay(),s}return i(t,e),t.prototype.toggleOverlay=function(e){void 0!==e?e?this.openOverlay():this.closeOverlay():u.$$(this.overlay).hasClass(\"coveo-opened\")?this.closeOverlay():this.openOverlay()},t.prototype.openOverlay=function(){u.$$(this.overlay).removeClass(\"coveo-hidden-for-tab-nav\"),u.$$(this.overlay).addClass(\"coveo-opened\"),u.$$(this.parentCard).addClass(\"coveo-card-overlay-opened\"),this.bind.trigger(this.element,a.CardOverlayEvents.openCardOverlay)},t.prototype.closeOverlay=function(){u.$$(this.overlay).addClass(\"coveo-hidden-for-tab-nav\"),u.$$(this.overlay).removeClass(\"coveo-opened\"),u.$$(this.parentCard).removeClass(\"coveo-card-overlay-opened\"),this.bind.trigger(this.element,a.CardOverlayEvents.closeCardOverlay)},t.prototype.createOverlay=function(){var e=this;this.overlay=u.$$(\"div\",{className:\"coveo-card-overlay\"}).el;var t=u.$$(\"div\",{className:\"coveo-card-overlay-header\"}).el;this.createButton(t),this.overlay.appendChild(t);for(var n=u.$$(\"div\",{className:\"coveo-card-overlay-body\"}).el;this.element.childNodes.length>0;)n.appendChild(this.element.firstChild);this.overlay.appendChild(n);var i=u.$$(\"span\",{className:\"coveo-icon coveo-open-card-overlay\"},h.SVGIcons.icons.arrowDown);d.SVGDom.addClassToSVGInContainer(i.el,\"coveo-open-card-overlay-svg\");var o=u.$$(\"div\",{className:\"coveo-card-overlay-footer\",tabindex:\"0\"},i.el);o.on(\"click\",function(){return e.toggleOverlay(!1)}),this.bind.on(o.el,\"keyup\",c.KeyboardUtils.keypressAction(c.KEYBOARD.ENTER,function(){return e.toggleOverlay(!1)})),this.overlay.appendChild(o.el),this.parentCard.appendChild(this.overlay)},t.prototype.createButton=function(e){var t=this;if(this.options.icon){var n=u.$$(\"span\",{className:\"coveo-icon \"},h.SVGIcons.icons[this.options.icon]).el;e.appendChild(n),d.SVGDom.addClassToSVGInContainer(e,\"coveo-\"+f.Utils.toDashCase(this.options.icon)+\"-svg\")}e.appendChild(u.$$(\"span\",{className:\"coveo-label\"},this.options.title).el),e.setAttribute(\"tabindex\",\"0\"),u.$$(e).on(\"click\",function(){return t.toggleOverlay()}),this.bind.on(e,\"keyup\",c.KeyboardUtils.keypressAction(c.KEYBOARD.ENTER,function(){return t.toggleOverlay()}))},t.ID=\"CardOverlay\",t.doExport=function(){p.exportGlobally({CardOverlay:t})},t.options={title:r.ComponentOptions.buildLocalizedStringOption({required:!0,localizedString:function(){return m.l(\"NoTitle\")}}),icon:r.ComponentOptions.buildIconOption()},t}(o.Component);t.CardOverlay=y,s.Initialization.registerAutoCreateComponent(y)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=n(8),s=n(7),a=n(4),u=n(1),l=n(6),c=n(215),p=n(3),h=function(e){function t(n,i,o,s){var l=e.call(this,n,t.ID,o)||this;if(l.element=n,l.options=i,l.bindings=o,l.result=s,l.options=r.ComponentOptions.initComponentOptions(n,t,i),!a.Utils.isNullOrUndefined(a.Utils.getFieldValue(s,\"sflikedby\"))&&!a.Utils.isNullOrUndefined(a.Utils.getFieldValue(s,\"sflikedbyid\"))){var c=a.Utils.getFieldValue(s,\"sflikedby\").split(\";\"),p=a.Utils.getFieldValue(s,\"sflikedbyid\").split(\";\"),h=u.$$(\"div\",{className:\"coveo-chatter-result-box-row\"});u.$$(n).append(h.el);var d=u.$$(\"div\",{className:\"coveo-sprites-common-thumbup_inactive coveo-chatter-result-box-icon\"});h.append(d.el);var f=u.$$(\"div\",{className:\"coveo-chatter-result-likes\"});h.append(f.el),l.renderLikesList(f.el,s,c,p,l.options.nbLikesToRender)}return l}return i(t,e),t.prototype.renderLikesList=function(e,t,n,i,o){for(var r=this,s=u.$$(\"div\"),a=0;a<i.length-1&&(0==o||a<o);a++)s.append(this.renderLikeLink(t,n[a],i[a])),(0==o||a<o-1)&&a<i.length-2?s.append(u.$$(\"span\",{},\", \").el):a<i.length-1&&s.append(u.$$(\"span\",{},\" \"+l.l(\"And\").toLowerCase()+\" \").el);if(0==o||i.length<=o)s.append(this.renderLikeLink(t,n[i.length-1],i[i.length-1]));else{var c=i.length-o,p=u.$$(\"a\");p.text(\" \"+l.l(\"Others\",c.toString(),c)),p.on(\"click\",function(o){o.preventDefault(),u.$$(e).empty(),r.renderLikesList(e,t,n,i,0)}),s.append(p.el)}if(i.length>0){var h=u.$$(\"span\");h.el.innerHTML=l.l(\"LikesThis\",s.el.innerHTML,i.length),u.$$(e).append(h.el)}},t.prototype.renderLikeLink=function(e,t,n){var i=u.$$(\"a\",{href:c.ChatterUtils.buildURI(e.clickUri,a.Utils.getFieldValue(e,\"sffeeditemid\"),n)});return i.text(t),i.el},t.ID=\"ChatterLikedBy\",t.doExport=function(){p.exportGlobally({ChatterLikedBy:t})},t.options={nbLikesToRender:r.ComponentOptions.buildNumberOption({defaultValue:2,min:0}),openInPrimaryTab:r.ComponentOptions.buildBooleanOption({defaultValue:!1}),openInSubTab:r.ComponentOptions.buildBooleanOption({defaultValue:!0})},t}(s.Component);t.ChatterLikedBy=h,o.Initialization.registerAutoCreateComponent(h)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(4),s=n(215),a=n(6),u=n(2),l=n(1),c=n(3),p=function(e){function t(n,i,o,u){var c=e.call(this,n,t.ID,o)||this;if(c.element=n,c.options=i,c.bindings=o,c.result=u,!r.Utils.isNullOrUndefined(r.Utils.getFieldValue(u,\"sfcontentversionid\"))){var p=l.$$(\"div\",{className:\"coveo-chatter-result-box-row\"});l.$$(n).append(p.el);var h=l.$$(\"div\",{className:\"coveo-sprites-common-system coveo-chatter-result-box-icon\"});p.append(h.el);var d=l.$$(\"a\",{href:s.ChatterUtils.buildURI(u.clickUri,r.Utils.getFieldValue(u,\"sffeeditemid\"),r.Utils.getFieldValue(u,\"sfcontentversionid\"))});p.append(d.el);var f=r.Utils.getFirstAvailableFieldValue(u,[\"sfcontentfilename\",\"sftitle\",\"sf_title\"]);r.Utils.isNullOrUndefined(f)?d.text(a.l(\"ShowAttachment\")):d.text(f)}return c}return i(t,e),t.ID=\"ChatterPostAttachment\",t.doExport=function(){c.exportGlobally({ChatterPostAttachment:t})},t}(o.Component);t.ChatterPostAttachment=p,u.Initialization.registerAutoCreateComponent(p)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(215),a=n(2),u=n(6),l=n(4),c=n(1),p=n(3),h=function(e){function t(n,i,o,s){var a=e.call(this,n,t.ID,o)||this;if(a.element=n,a.options=i,a.bindings=o,a.result=s,a.options=r.ComponentOptions.initComponentOptions(n,t,i),null!=l.Utils.getFieldValue(a.result,\"sfcreatedbyname\")){var p=c.$$(\"span\");if(p.text((a.options.useFromInstead?u.l(\"From\"):u.l(\"PostedBy\"))+\" \"),c.$$(n).append(p.el),c.$$(n).append(a.renderLink(l.Utils.getFieldValue(a.result,\"sfcreatedbyname\"),l.Utils.getFieldValue(a.result,\"sfcreatedbyid\"))),a.options.enablePostedOn&&!l.Utils.isNullOrUndefined(l.Utils.getFieldValue(a.result,\"sfparentname\"))&&!l.Utils.isNullOrUndefined(l.Utils.getFieldValue(a.result,\"sfparentid\")))if(l.Utils.isNullOrUndefined(l.Utils.getFieldValue(a.result,\"sfuserid\"))||l.Utils.getFieldValue(a.result,\"sfuserid\")==l.Utils.getFieldValue(a.result,\"sfinsertedbyid\")){if(l.Utils.isNullOrUndefined(l.Utils.getFieldValue(a.result,\"sfuserid\"))){var h=c.$$(\"span\");h.text(\" \"+u.l(\"On\").toLowerCase()+\" \"),c.$$(n).append(h.el),c.$$(n).append(a.renderLink(l.Utils.getFieldValue(a.result,\"sfparentname\"),l.Utils.getFieldValue(a.result,\"sfparentid\")))}}else{var d=c.$$(\"span\"),f=\" \"+u.l(\"OnFeed\",a.renderLink(l.Utils.getFieldValue(a.result,\"sfparentname\"),l.Utils.getFieldValue(a.result,\"sfparentid\")).outerHTML);d.el.innerHTML=f,c.$$(n).append(d.el)}}return a}return i(t,e),t.prototype.renderLink=function(e,t){var n=c.$$(\"a\",{href:s.ChatterUtils.buildURI(this.result.clickUri,l.Utils.getFieldValue(this.result,\"sffeeditemid\"),t)});return n.text(e),s.ChatterUtils.bindClickEventToElement(n.el,this.options.openInPrimaryTab,this.options.openInSubTab)},t.ID=\"ChatterPostedBy\",t.doExport=function(){p.exportGlobally({ChatterPostedBy:t})},t.options={enablePostedOn:r.ComponentOptions.buildBooleanOption({defaultValue:!0}),useFromInstead:r.ComponentOptions.buildBooleanOption({defaultValue:!1}),openInPrimaryTab:r.ComponentOptions.buildBooleanOption({defaultValue:!1}),openInSubTab:r.ComponentOptions.buildBooleanOption({defaultValue:!0})},t.fields=[\"sfcreatedbyname\",\"sfcreatedbyid\",\"sffeeditemid\",\"sfuserid\",\"sfinsertedbyid\",\"sfparentid\",\"sfparentname\"],t}(o.Component);t.ChatterPostedBy=h,a.Initialization.registerAutoCreateComponent(h)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(4),s=n(2),a=n(1),u=n(3),l=function(e){function t(n,i,o,s){var u=e.call(this,n,t.ID,o)||this;if(u.element=n,u.options=i,u.bindings=o,u.result=s,!r.Utils.isNullOrUndefined(r.Utils.getFieldValue(u.result,\"coveochatterfeedtopics\"))){var l=a.$$(\"div\",{className:\"coveo-chatter-result-box-row\"}),c=r.Utils.getFieldValue(s,\"coveochatterfeedtopics\").split(\";\"),p=a.$$(\"div\",{className:\"coveo-sprites-common-tagging_tag coveo-chatter-result-box-icon\"});l.append(p.el);for(var h=0;h<c.length;h++){var d=a.$$(\"span\");if(d.text(c[h]),l.append(d.el),h<c.length-1){var f=a.$$(\"span\");f.text(\", \"),l.append(f.el)}}a.$$(n).append(l.el)}return u}return i(t,e),t.ID=\"ChatterTopic\",t.doExport=function(){u.exportGlobally({ChatterTopic:t})},t}(o.Component);t.ChatterTopic=l,s.Initialization.registerAutoCreateComponent(l)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(567);var o=n(0),r=n(3),s=n(11),a=n(5),u=n(13),l=n(6),c=n(1),p=n(19),h=n(4),d=n(10),f=n(7),m=n(8),y=n(2),g=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;return r.element=n,r.options=i,r.bindings=o,r.options=m.ComponentOptions.initComponentOptions(n,t,i),a.Assert.exists(n),a.Assert.exists(r.options),r.hideNext=!0,r.correctedTerm=null,r.bind.onRootElement(s.QueryEvents.buildingQuery,r.handlePrepareQueryBuilder),r.bind.onRootElement(s.QueryEvents.querySuccess,r.handleProcessNewQueryResults),r.bind.onRootElement(s.QueryEvents.noResults,r.handleNoResults),r.bind.onRootElement(s.QueryEvents.newQuery,r.handleNewQuery),c.$$(r.element).hide(),r}return i(t,e),t.prototype.doQueryWithCorrectedTerm=function(){var e=this;a.Assert.exists(this.correctedTerm),this.queryStateModel.set(u.QueryStateModel.attributesEnum.q,this.correctedTerm),this.queryController.deferExecuteQuery({beforeExecuteQuery:function(){return e.usageAnalytics.logSearchEvent(d.analyticsActionCauseList.didyoumeanClick,{})}})},t.prototype.handleNewQuery=function(){this.hideNext?(c.$$(this.element).empty(),c.$$(this.element).hide(),this.correctedTerm=null):this.hideNext=!0},t.prototype.handlePrepareQueryBuilder=function(e){a.Assert.exists(e),e.queryBuilder.enableDidYouMean=!0},t.prototype.handleNoResults=function(e){if(h.Utils.isNonEmptyArray(e.results.queryCorrections)&&!e.searchAsYouType&&this.options.enableAutoCorrection){var t=this.queryStateModel.get(u.QueryStateModel.attributesEnum.q);this.correctedTerm=e.results.queryCorrections[0].correctedQuery;var n=this.buildCorrectedSentence(e.results.queryCorrections[0]);this.queryStateModel.set(u.QueryStateModel.attributesEnum.q,e.results.queryCorrections[0].correctedQuery),this.searchInterface.historyManager.replaceState(this.queryStateModel.getAttributes()),e.retryTheQuery=!0,this.hideNext=!1;var i=c.$$(\"div\",{className:\"coveo-did-you-mean-no-results-for\"}).el;i.innerHTML=l.l(\"noResultFor\",'<span class=\"coveo-highlight coveo-did-you-mean-highlight\">'+p.StringUtils.htmlEncode(t)+\"</span>\"),this.element.appendChild(i);var o=c.$$(\"div\",{className:\"coveo-did-you-mean-automatic-correct\"}).el;o.innerHTML=l.l(\"autoCorrectedQueryTo\",'<span class=\"coveo-highlight\">'+n+\"</span>\"),this.element.appendChild(o),c.$$(this.element).show(),this.usageAnalytics.logSearchEvent(d.analyticsActionCauseList.didyoumeanAutomatic,{})}},t.prototype.handleProcessNewQueryResults=function(e){var t=this;a.Assert.exists(e),a.Assert.exists(e.results);var n=e.results;if(this.logger.trace(\"Received query results from new query\",n),h.Utils.isNonEmptyArray(n.queryCorrections)){var i=this.buildCorrectedSentence(n.queryCorrections[0]);this.correctedTerm=n.queryCorrections[0].correctedQuery;var o=c.$$(\"a\",{},i).el,r=c.$$(\"div\",{className:\"coveo-did-you-mean-suggestion\"},l.l(\"didYouMean\",o.outerHTML));this.element.appendChild(r.el);var s=r.find(o.tagName);c.$$(s).on(\"click\",function(){return t.doQueryWithCorrectedTerm()}),c.$$(this.element).show()}},t.prototype.buildCorrectedSentence=function(e){var t=[],n=0;return o.each(e.wordCorrections,function(i){t.push(p.StringUtils.htmlEncode(e.correctedQuery.slice(n,i.offset))),n=i.offset,t.push(\"<span class='coveo-did-you-mean-word-correction'>\"),t.push(p.StringUtils.htmlEncode(e.correctedQuery.slice(n,i.length+n))),t.push(\"</span>\"),n=i.offset+i.length}),t.push(p.StringUtils.htmlEncode(e.correctedQuery.slice(n))),t.join(\"\")},t.ID=\"DidYouMean\",t.doExport=function(){r.exportGlobally({DidYouMean:t})},t.options={enableAutoCorrection:m.ComponentOptions.buildBooleanOption({defaultValue:!0})},t}(f.Component);t.DidYouMean=g,y.Initialization.registerAutoCreateComponent(g)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(193),a=n(137),u=n(3),l=n(1),c=n(10),p=n(7),h=n(8),d=n(2),f=n(28),m=n(568),y=n(569),g=n(570),v=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;return r.element=n,r.options=i,r.bindings=o,r.isFirstPositionResolved=!1,r.options=h.ComponentOptions.initComponentOptions(n,t,i),r.registerDistanceQuery(),r.bind.onRootElement(a.InitializationEvents.afterComponentsInitialization,function(e){return r.onAfterComponentsInitialization(e)}),r}return i(t,e),t.prototype.setPosition=function(e,t){this.enable(),this.latitude=e,this.longitude=t;var n={position:{latitude:e,longitude:t}};this.bind.trigger(this.element,s.DistanceEvents.onPositionResolved,n);var i=this.shouldTriggerQueryWhenPositionSet();this.isFirstPositionResolved=!0,i&&(this.sendAnalytics(),this.queryController.executeQuery())},t.prototype.getLastPositionRequest=function(){return o(this,void 0,void 0,function(){return r(this,function(e){switch(e.label){case 0:return this.lastPositionRequest?[4,this.lastPositionRequest]:[3,2];case 1:return e.sent(),[2,{latitude:this.latitude,longitude:this.longitude}];case 2:Promise.reject(\"No position request was executed yet.\"),e.label=3;case 3:return[2]}})})},t.prototype.sendAnalytics=function(){this.usageAnalytics.logSearchEvent(c.analyticsActionCauseList.positionSet,{})},t.prototype.shouldTriggerQueryWhenPositionSet=function(){return!this.queryController.firstQuery&&this.options.triggerNewQueryOnNewPosition},t.prototype.onAfterComponentsInitialization=function(e){var t={providers:this.getProvidersFromOptions()};this.bind.trigger(this.element,s.DistanceEvents.onResolvingPosition,t),this.lastPositionRequest=this.tryToSetPositionFromProviders(t.providers),this.options.cancelQueryUntilPositionResolved&&e.defer.push(this.lastPositionRequest)},t.prototype.tryToSetPositionFromProviders=function(e){return o(this,void 0,void 0,function(){var t,n;return r(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,this.tryGetPositionFromProviders(e)];case 1:return t=i.sent(),t?this.setPosition(t.latitude,t.longitude):this.triggerDistanceNotSet(),[3,3];case 2:return n=i.sent(),this.logger.error(\"An error occurred while trying to resolve the current position.\",n),this.triggerDistanceNotSet(),[3,3];case 3:return[2]}})})},t.prototype.getProvidersFromOptions=function(){var e=[];return this.options.useNavigator&&e.push(new y.NavigatorPositionProvider),this.options.googleApiKey&&e.push(new m.GoogleApiPositionProvider(this.options.googleApiKey)),this.options.longitudeValue&&this.options.latitudeValue&&e.push(new g.StaticPositionProvider(this.options.latitudeValue,this.options.longitudeValue)),e},t.prototype.tryGetPositionFromProviders=function(e){return o(this,void 0,void 0,function(){var t,n,i;return r(this,function(o){switch(o.label){case 0:if(!(e.length>0))return[3,5];t=e.shift(),o.label=1;case 1:return o.trys.push([1,3,,4]),[4,t.getPosition()];case 2:return n=o.sent(),n.latitude&&n.longitude?[2,n]:[3,4];case 3:return i=o.sent(),this.logger.warn(\"An error occurred while trying to resolve the position within a position provider.\",i),[3,4];case 4:return[3,0];case 5:return[2]}})})},t.prototype.triggerDistanceNotSet=function(){this.isFirstPositionResolved=!0,this.logger.warn(\"None of the given position providers could resolve the current position. The distance field will not be calculated and the distance components will be disabled until the next call to 'setPosition'.\"),this.bind.trigger(this.element,s.DistanceEvents.onPositionNotResolved,{}),this.disable()},t.prototype.registerDistanceQuery=function(){var e=this;this.bind.onRootElement(a.QueryEvents.buildingQuery,function(t){if(e.isFirstPositionResolved&&t&&t.queryBuilder){var n={function:e.getConvertedUnitsFunction(\"dist(\"+e.options.latitudeField+\", \"+e.options.longitudeField+\", \"+e.latitude+\", \"+e.longitude+\")\"),fieldName:\"\"+e.options.distanceField};t.queryBuilder.queryFunctions.push(n),e.enableDistanceComponents()}})},t.prototype.enableDistanceComponents=function(){var e=this;l.$$(this.root).findAll(\".\"+this.options.disabledDistanceCssClass).forEach(function(t){try{t.classList.remove(e.options.disabledDistanceCssClass);var n=f.get(t);n&&n.enable()}catch(n){e.logger.error(\"Could not re-enable distance component.\",n,t)}})},t.prototype.getConvertedUnitsFunction=function(e){return e+\"/\"+this.options.unitConversionFactor},t.ID=\"DistanceResources\",t.doExport=function(){u.exportGlobally({DistanceResources:t})},t.options={distanceField:h.ComponentOptions.buildFieldOption({required:!0}),latitudeField:h.ComponentOptions.buildFieldOption({required:!0}),longitudeField:h.ComponentOptions.buildFieldOption({required:!0}),unitConversionFactor:h.ComponentOptions.buildNumberOption({defaultValue:1e3,validator:function(e){return!!e&&e>0}}),disabledDistanceCssClass:h.ComponentOptions.buildStringOption({defaultValue:\"coveo-distance-disabled\"}),latitudeValue:h.ComponentOptions.buildNumberOption({float:!0}),longitudeValue:h.ComponentOptions.buildNumberOption({float:!0}),googleApiKey:h.ComponentOptions.buildStringOption(),useNavigator:h.ComponentOptions.buildBooleanOption(),triggerNewQueryOnNewPosition:h.ComponentOptions.buildBooleanOption({defaultValue:!1}),cancelQueryUntilPositionResolved:h.ComponentOptions.buildBooleanOption({defaultValue:!0})},t}(p.Component);t.DistanceResources=v,d.Initialization.registerAutoCreateComponent(v)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(571);var o=n(11),r=n(3),s=n(5),a=n(6),u=n(17),l=n(1),c=n(10),p=n(7),h=n(8),d=n(2),f=function(e){function t(n,i,r){var s=e.call(this,n,t.ID,r)||this;return s.element=n,s.options=i,s.options=h.ComponentOptions.initComponentOptions(n,t,i),s.container=l.$$(\"div\",{className:\"coveo-error-report-container\"}),s.element.appendChild(s.container.el),s.options.showDetailedError&&(s.message=l.$$(\"div\",{className:\"coveo-error-report-message\"}),s.container.append(s.message.el)),s.helpSuggestion=l.$$(\"div\",{className:\"coveo-error-report-help-suggestion\"}),l.$$(s.element).hide(),s.bind.onRootElement(o.QueryEvents.newQuery,function(){return s.handleNewQuery()}),s.bind.onRootElement(o.QueryEvents.queryError,function(e){return s.handleQueryError(e)}),s}return i(t,e),t.prototype.back=function(){this.usageAnalytics.logCustomEvent(c.analyticsActionCauseList.errorBack,{},this.root),this.usageAnalytics.logSearchEvent(c.analyticsActionCauseList.errorBack,{}),history.back()},t.prototype.reset=function(){this.queryStateModel.reset(),this.usageAnalytics.logSearchEvent(c.analyticsActionCauseList.errorClearQuery,{}),this.usageAnalytics.logCustomEvent(c.analyticsActionCauseList.errorClearQuery,{},this.root),this.queryController.executeQuery()},t.prototype.retry=function(){this.usageAnalytics.logSearchEvent(c.analyticsActionCauseList.errorRetry,{}),this.usageAnalytics.logCustomEvent(c.analyticsActionCauseList.errorRetry,{},this.root),this.queryController.executeQuery()},t.prototype.buildOrGetTitleElements=function(){var e,t=l.$$(this.element).find(\".coveo-error-report-title\");t?e=l.$$(t):(e=l.$$(\"div\",{className:\"coveo-error-report-title\"}),this.container.prepend(e.el));var n=e.find(\"h1\");n||(n=l.$$(\"h1\").el,e.append(n));var i=e.find(\"h2\");return i||(i=l.$$(\"h2\").el,e.append(i)),{title:e,h1:l.$$(n),h2:l.$$(i)}},t.prototype.setErrorTitle=function(e,t){var n={h1:e?a.l(e):a.l(\"OopsError\"),h2:t?a.l(t):a.l(\"ProblemPersists\")},i=this.buildOrGetTitleElements(),o=i.h1,r=i.h2;o&&r&&(l.$$(o).text(n.h1),l.$$(r).text(n.h2))},t.prototype.buildPrevious=function(){var e=this,t=l.$$(\"span\",{className:\"coveo-error-report-previous\"},a.l(\"GoBack\"));return(new u.AccessibleButton).withElement(t).withSelectAction(function(){return e.back()}).withLabel(a.l(\"GoBack\")).build(),t.el},t.prototype.buildReset=function(){var e=this,t=l.$$(\"span\",{className:\"coveo-error-report-clear\"},a.l(\"Reset\"));return(new u.AccessibleButton).withElement(t).withSelectAction(function(){return e.reset()}).withLabel(a.l(\"Reset\")).build(),t.el},t.prototype.buildRetry=function(){var e=this,t=l.$$(\"span\",{className:\"coveo-error-report-retry\"},a.l(\"Retry\"));return(new u.AccessibleButton).withElement(t).withSelectAction(function(){return e.retry()}).withLabel(a.l(\"Retry\")).build(),t.el},t.prototype.handleNewQuery=function(){l.$$(this.element).hide();var e=this.buildOrGetTitleElements(),t=e.h1,n=e.h2;t.remove(),n.remove(),null!=this.closePopup&&this.closePopup()},t.prototype.handleQueryError=function(e){var t=this;if(s.Assert.exists(e),s.Assert.exists(e.error),e.endpoint.options.queryStringArguments.organizationId?this.organizationId=e.endpoint.options.queryStringArguments.organizationId:this.organizationId=a.l(\"CoveoOrganization\"),!e.error.isMissingAuthentication){switch(e.error.name){case\"NoEndpointsException\":this.options.showDetailedError=!1,this.buildEndpointErrorElements(\"https://docs.coveo.com/en/331/\"),this.setErrorTitle(a.l(\"NoEndpoints\",this.organizationId),a.l(\"AddSources\"));break;case\"InvalidTokenException\":this.options.showDetailedError=!1,this.buildEndpointErrorElements(\"https://docs.coveo.com/en/56/\"),this.setErrorTitle(a.l(\"CannotAccess\",this.organizationId),a.l(\"InvalidToken\"));break;case\"GroupByAndFacetBothExistingException\":this.options.showDetailedError=!1,this.buildEndpointErrorElements(\"https://docs.coveo.com/en/2917\"),this.setErrorTitle(void 0,a.l(\"GroupByAndFacetRequestsCannotCoexist\"));break;default:this.buildOptionsElement(),this.setErrorTitle()}if(this.options.showDetailedError){this.message.empty();var n=l.$$(\"span\",{className:\"coveo-error-report-more-info\"},a.l(\"MoreInfo\"));n.on(\"click\",function(){n.empty(),t.message.el.appendChild(t.buildErrorInfo(e.error))}),this.message.el.appendChild(n.el)}l.$$(this.element).show()}},t.prototype.buildErrorInfo=function(e){var t=l.$$(\"div\",{className:\"coveo-error-info\"}),n=l.$$(\"textarea\",void 0,JSON.stringify(e,null,2));t.el.appendChild(n.el);var i=l.$$(\"div\",{className:\"coveo-error-info-label\"},a.l(\"CopyPasteToSupport\"));return t.el.appendChild(i.el),t.el},t.prototype.buildOptionsElement=function(){var e=this.container.find(\".coveo-error-report-options\");e&&l.$$(e).remove();var t=l.$$(\"div\",{className:\"coveo-error-report-options\"});t.el.appendChild(this.buildPrevious()),t.el.appendChild(this.buildReset()),t.el.appendChild(this.buildRetry()),this.container.append(t.el)},t.prototype.buildEndpointErrorElements=function(e){void 0===e&&(e=\"https://docs.coveo.com/en/331/\"),this.helpSuggestion.empty();var t=l.$$(\"a\",{href:e,className:\"coveo-error-report-help-link\"});t.setHtml(a.l(\"CoveoOnlineHelp\")),this.helpSuggestion.append(t.el),this.container.el.insertBefore(this.helpSuggestion.el,this.message.el)},t.ID=\"ErrorReport\",t.doExport=function(){r.exportGlobally({ErrorReport:t})},t.options={showDetailedError:h.ComponentOptions.buildBooleanOption({defaultValue:!0})},t}(p.Component);t.ErrorReport=f,d.Initialization.registerAutoCreateComponent(f)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(5),a=n(66),u=n(2),l=n(3);n(572);var c=function(e){function t(n,i,o,u){var l=e.call(this,n,t.ID,o)||this;return l.element=n,l.options=i,l.bindings=o,l.result=u,l.options=r.ComponentOptions.initComponentOptions(n,t,i),l.result=l.result||l.resolveResult(),s.Assert.exists(l.result),l.element.innerHTML=a.HighlightUtils.highlightString(l.result.excerpt,l.result.excerptHighlights,null,\"coveo-highlight\"),l}return i(t,e),t.ID=\"Excerpt\",t.doExport=function(){l.exportGlobally({Excerpt:t})},t}(o.Component);t.Excerpt=c,u.Initialization.registerAutoCreateComponent(c)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(54),a=n(10),u=n(2),l=n(6),c=n(0),p=n(3);n(573);var h=n(12),d=n(18),f=n(28),m=function(e){function t(n,i,o,a){var u=e.call(this,n,t.ID,o)||this;return u.element=n,u.options=i,u.bindings=o,u._window=a,u._window=u._window||window,u.options=r.ComponentOptions.initComponentOptions(n,t,i),u.bind.onRootElement(s.SettingsEvents.settingsPopulateMenu,function(e){e.menuData.push({text:l.l(\"ExportToExcel\"),className:\"coveo-export-to-excel\",tooltip:l.l(\"ExportToExcelDescription\"),onOpen:function(){return u.download()},svgIcon:h.SVGIcons.icons.dropdownExport,svgIconClassName:\"coveo-export-to-excel-svg\"})}),u}return i(t,e),t.prototype.download=function(){var e=this.queryController.getLastQuery();if(e){e=c.omit(e,[\"numberOfResults\",\"fieldsToInclude\"]),this.options.fieldsToInclude&&(e.fieldsToInclude=this.options.fieldsToInclude),this.logger.debug(\"Performing query following 'Export to Excel' click\");var t=this.queryController.getEndpoint();this.usageAnalytics.logCustomEvent(a.analyticsActionCauseList.exportToExcel,{},this.element),this._window.location.replace(t.getExportToExcelLink(e,this.options.numberOfResults))}},t.create=function(e,n,i){return new t(e,n,f.get(i,d.SearchInterface).getBindings())},t.ID=\"ExportToExcel\",t.doExport=function(){p.exportGlobally({ExportToExcel:t})},t.options={numberOfResults:r.ComponentOptions.buildNumberOption({defaultValue:100,min:1}),fieldsToInclude:r.ComponentOptions.buildFieldsOption()},t}(o.Component);t.ExportToExcel=m,u.Initialization.registerAutoCreateComponent(m)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(486);var o=n(0),r=n(33),s=n(3),a=n(5),u=n(13),l=n(1),c=n(4),p=n(10),h=n(7),d=n(8),f=n(2),m=n(485),y=function(e){function t(n,i,s){var u=e.call(this,n,t.ID,s)||this;u.options=i,u.options&&\"omniboxSuggestionOptions\"in u.options&&(u.options=o.extend(u.options,u.options.omniboxSuggestionOptions)),u.options=d.ComponentOptions.initComponentOptions(n,t,i),a.Assert.check(c.Utils.isCoveoField(u.options.field),u.options.field+\" is not a valid field\"),u.options.onSelect=u.options.onSelect||u.onRowSelection;var p,h=function(e){var t=l.$$(\"div\",{className:\"magic-box-suggestion coveo-omnibox-selectable coveo-top-field-suggestion-row\"});return e.data&&(t.el.innerHTML=e.data),t.el.outerHTML};if(null==u.options.headerTitle)p={row:h};else{p={header:{template:function(){var e=l.$$(\"div\",{className:\"coveo-top-field-suggestion-header\"}),t=l.$$(\"span\",{className:\"coveo-icon-top-field\"}),n=l.$$(\"span\",{className:\"coveo-caption\"});return u.options.headerTitle&&n.text(u.options.headerTitle),e.append(t.el),e.append(n.el),e.el.outerHTML},title:u.options.headerTitle},row:h}}return u.suggestionForOmnibox=new m.SuggestionForOmnibox(p,function(e,t){u.options.onSelect.call(u,e,t)},function(e,t){u.onRowTab(e,t)}),u.bind.onRootElement(r.OmniboxEvents.populateOmnibox,function(e){return u.handlePopulateOmnibox(e)}),u}return i(t,e),t.prototype.selectSuggestion=function(e){if(this.currentlyDisplayedSuggestions)if(isNaN(e))this.currentlyDisplayedSuggestions[e]&&l.$$(this.currentlyDisplayedSuggestions[e].element).trigger(\"click\");else{var t=o.findWhere(this.currentlyDisplayedSuggestions,{pos:e});t&&l.$$(t.element).trigger(\"click\")}},t.prototype.handlePopulateOmnibox=function(e){var t=this;a.Assert.exists(e);var n=e.completeQueryExpression.word,i=new Promise(function(i){t.queryController.getEndpoint().listFieldValues(t.buildListFieldValueRequest(n)).then(function(n){var r=t.suggestionForOmnibox.buildOmniboxElement(n,e);t.currentlyDisplayedSuggestions={},r?(o.map(l.$$(r).findAll(\".coveo-omnibox-selectable\"),function(e,n){t.currentlyDisplayedSuggestions[l.$$(e).text()]={element:e,pos:n}}),i({element:r,zIndex:t.options.omniboxZIndex})):i({element:void 0})}).catch(function(){i({element:void 0})})});e.rows.push({deferred:i})},t.prototype.onRowSelection=function(e,t){t.closeOmnibox(),this.queryStateModel.set(u.QueryStateModel.attributesEnum.q,e),this.usageAnalytics.logSearchEvent(p.analyticsActionCauseList.omniboxField,{}),this.queryController.executeQuery()},t.prototype.onRowTab=function(e,t){t.clear(),t.closeOmnibox(),this.queryStateModel.set(u.QueryStateModel.attributesEnum.q,\"\"+e),this.usageAnalytics.logCustomEvent(p.analyticsActionCauseList.omniboxField,{},this.element)},t.prototype.buildListFieldValueRequest=function(e){return{field:this.options.field,ignoreAccents:!0,sortCriteria:\"occurrences\",maximumNumberOfValues:this.options.numberOfSuggestions,patternType:\"Wildcards\",pattern:\"*\"+e+\"*\",queryOverride:this.options.queryOverride}},t.ID=\"FieldSuggestions\",t.doExport=function(){s.exportGlobally({FieldSuggestions:t})},t.options={field:d.ComponentOptions.buildFieldOption({required:!0}),queryOverride:d.ComponentOptions.buildQueryExpressionOption({defaultValue:\"\"}),omniboxZIndex:d.ComponentOptions.buildNumberOption({defaultValue:51,min:0}),headerTitle:d.ComponentOptions.buildLocalizedStringOption(),numberOfSuggestions:d.ComponentOptions.buildNumberOption({defaultValue:5,min:1}),onSelect:d.ComponentOptions.buildCustomOption(function(){return null})},t}(h.Component);t.FieldSuggestions=y,f.Initialization.registerAutoCreateComponent(y)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},r=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},s=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0}),n(486);var a=n(0),u=n(33),l=n(3),c=n(70),p=n(194),h=n(1),d=n(121),f=n(10),m=n(7),y=n(8),g=n(2),v=n(579),b=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;return r.options=i,r.options=y.ComponentOptions.initComponentOptions(n,t,i),r.facetValueSuggestionsProvider=new v.FacetValueSuggestionsProvider(r.queryController,{field:r.options.field}),r.queryStateFieldFacetId=\"f:\"+r.options.field,r.options.templateHelper||(r.options.templateHelper=t.defaultTemplate),h.$$(r.root).on(u.OmniboxEvents.populateOmniboxSuggestions,function(e,t){t.suggestions.push(r.getSuggestions(t.omnibox))}),r}return i(t,e),t.defaultTemplate=function(e,t){var n=e.keyword.html,i=d.DomUtils.highlight(e.value,\"coveo-omnibox-hightlight\"),o=this.options.displayEstimateNumberOfResults?d.DomUtils.highlight(\" (\"+c.l(\"ResultCount\",e.numberOfResults.toString(),e.numberOfResults)+\")\",\"coveo-omnibox-suggestion-results-count\",!0):\"\";return\"\"+c.l(\"KeywordInCategory\",n,i)+o},t.getQuerySuggestionKeywordFromText=function(e){return{text:e,html:d.DomUtils.highlight(e,\"coveo-omnibox-hightlight\")}},t.prototype.getSuggestions=function(e){return r(this,void 0,void 0,function(){var t,n;return s(this,function(i){switch(i.label){case 0:return 0==this.options.numberOfSuggestions?[2,[]]:(t=e.getText(),[4,this.getFacetValueSuggestions(t,e)]);case 1:return n=i.sent(),[2,n||[]]}})})},t.prototype.getQuerySuggestionsKeywords=function(e){return r(this,void 0,void 0,function(){var t;return s(this,function(n){switch(n.label){case 0:return this.options.useQuerySuggestions&&e.suggestionAddon?[4,e.suggestionAddon.getSuggestion()]:[3,2];case 1:return t=n.sent(),[2,t.map(function(e){var t=e.text,n=e.html;return{text:t||\"\",html:n}})];case 2:return[2,[]]}})})},t.prototype.getFacetValueSuggestions=function(e,n){return r(this,void 0,void 0,function(){var i,o,r;return s(this,function(s){switch(s.label){case 0:return i=this.options.useValueFromSearchbox?[t.getQuerySuggestionKeywordFromText(e)]:[],[4,this.getQuerySuggestionsKeywords(n)];case 1:return o=s.sent(),r=a.unique(i.concat(o).filter(function(e){return\"\"!=e.text}),function(e){return e.text}),0===r.length?[2,[]]:[2,this.getSuggestionsForWords(r,n)]}})})},t.prototype.getSuggestionsForWords=function(e,t){return r(this,void 0,void 0,function(){var n,i,o,r,a=this;return s(this,function(s){switch(s.label){case 0:return s.trys.push([0,2,,3]),[4,this.facetValueSuggestionsProvider.getSuggestions(e)];case 1:return n=s.sent(),this.logger.debug(\"FacetValue Suggestions Results\",n),i=this.queryStateModel.get(this.queryStateFieldFacetId)||[],o=n.filter(function(e){return a.isSuggestionRowAlreadyCheckedInFacet(e,i)}),[2,this.rankSuggestionRows(o).map(function(e){return a.mapFacetValueSuggestion(e,t)})];case 2:return r=s.sent(),this.logger.error(r),[2,[]];case 3:return[2]}})})},t.prototype.isSuggestionRowAlreadyCheckedInFacet=function(e,t){return!t.some(function(t){return t==e.value})},t.prototype.rankSuggestionRows=function(e){var t=e.sort(function(e,t){return t.score.distanceFromTotalForField-e.score.distanceFromTotalForField}).slice(),n=Math.ceil(this.options.numberOfSuggestions/2),i=-Math.floor(this.options.numberOfSuggestions/2),o=t.splice(0,n);if(0!=i){var r=t.slice(i);return o.concat(r)}return o},t.prototype.mapFacetValueSuggestion=function(e,t){var n=this;return{html:this.buildDisplayNameForRow(e,t),onSelect:function(){return n.onRowSelection(e,t)}}},t.prototype.buildDisplayNameForRow=function(e,n){try{return this.options.templateHelper.call(this,e,n)}catch(i){return this.logger.error(\"Could not apply template from options for the given row. Will use default template.\",i,e,n),t.defaultTemplate.call(this,e,n)}},t.prototype.onRowSelection=function(e,t){t.setText(e.keyword.text);var n=o({},this.queryStateModel.get(p.QueryStateModel.attributesEnum.fv)),i=n[this.options.field.toString()]||[],r=this.options.isCategoryField?e.value.split(this.options.categoryFieldDelimitingCharacter):[e.value];n[this.options.field.toString()]=i.concat(r),this.queryStateModel.set(p.QueryStateModel.attributesEnum.fv,n),t.magicBox.blur(),this.usageAnalytics.logSearchEvent(f.analyticsActionCauseList.omniboxField,{}),this.queryController.executeQuery()},t.ID=\"FacetValueSuggestions\",t.doExport=function(){l.exportGlobally({FacetValueSuggestions:t})},t.options={field:y.ComponentOptions.buildFieldOption({required:!0}),numberOfSuggestions:y.ComponentOptions.buildNumberOption({defaultValue:5,min:1}),useQuerySuggestions:y.ComponentOptions.buildBooleanOption({defaultValue:!0}),useValueFromSearchbox:y.ComponentOptions.buildBooleanOption({postProcessing:function(e,t){return e||!t.useQuerySuggestions}}),displayEstimateNumberOfResults:y.ComponentOptions.buildBooleanOption({defaultValue:!1}),templateHelper:y.ComponentOptions.buildCustomOption(function(){return null}),isCategoryField:y.ComponentOptions.buildBooleanOption({defaultValue:!1}),categoryFieldDelimitingCharacter:y.ComponentOptions.buildStringOption({defaultValue:\"|\",depend:\"isCategoryField\"})},t}(m.Component);t.FacetValueSuggestions=b,g.Initialization.registerAutoCreateComponent(b)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(580);var o=n(0),r=n(3),s=n(6),a=n(17),u=n(1),l=n(21),c=n(14),p=n(12),h=n(7),d=n(8),f=n(2),m=n(117),y=function(e){function t(n,i,r,s){var a=e.call(this,n,g.ID,r)||this;a.element=n,a.options=i,a.result=s,a.options=d.ComponentOptions.initComponentOptions(n,t,i);var l=u.$$(a.element).findAll(\"tr[data-field]\");return o.each(l,function(e){new g(e,{},r,s)}),null==u.$$(a.element).find(\"tr\")&&u.$$(n).detach(),a.isTogglable()?(a.toggleContainer=u.$$(\"div\",{className:\"coveo-field-table-toggle-container\"}).el,a.buildToggle(),u.$$(a.toggleContainer).insertBefore(a.element),a.toggleContainer.appendChild(a.element),a.toggleContainer.appendChild(a.toggleButtonInsideTable)):a.isExpanded=!0,a}return i(t,e),t.prototype.toggle=function(e){void 0===e&&(e=!1),this.isTogglable()&&(this.isExpanded=!this.isExpanded,this.isExpanded?this.expand(e):this.minimize(e))},t.prototype.expand=function(e){void 0===e&&(e=!1),this.isTogglable()&&(this.isExpanded=!0,this.toggleCaption.textContent=this.options.expandedTitle,c.SVGDom.addClassToSVGInContainer(this.toggleButtonSVGContainer,\"coveo-opened\"),c.SVGDom.addClassToSVGInContainer(this.toggleButtonInsideTable,\"coveo-opened\"),e?this.slideToggle(!0):this.slideToggle(!0,!1))},t.prototype.minimize=function(e){void 0===e&&(e=!1),this.isTogglable()&&(this.isExpanded=!1,this.toggleCaption.textContent=this.options.minimizedTitle,c.SVGDom.removeClassFromSVGInContainer(this.toggleButtonSVGContainer,\"coveo-opened\"),c.SVGDom.removeClassFromSVGInContainer(this.toggleButtonInsideTable,\"coveo-opened\"),e?this.slideToggle(!1):this.slideToggle(!1,!1))},t.prototype.updateToggleHeight=function(){this.updateToggleContainerHeight(),this.isExpanded?this.expand():this.minimize()},t.prototype.isTogglable=function(){return!!this.options.allowMinimization},t.prototype.buildToggle=function(){var e=this;this.toggleCaption=u.$$(\"span\",{className:\"coveo-field-table-toggle-caption\"}).el,this.toggleButton=u.$$(\"div\",{className:\"coveo-field-table-toggle coveo-field-table-toggle-down\"}).el,this.toggleButtonSVGContainer=u.$$(\"span\",null,p.SVGIcons.icons.arrowDown).el,c.SVGDom.addClassToSVGInContainer(this.toggleButtonSVGContainer,\"coveo-field-table-toggle-down-svg\"),this.toggleButton.appendChild(this.toggleCaption),this.toggleButton.appendChild(this.toggleButtonSVGContainer),u.$$(this.toggleButton).insertBefore(this.element),this.toggleButtonInsideTable=u.$$(\"span\",{className:\"coveo-field-table-toggle coveo-field-table-toggle-up\"},p.SVGIcons.icons.arrowUp).el,c.SVGDom.addClassToSVGInContainer(this.toggleButtonInsideTable,\"coveo-field-table-toggle-up-svg\"),!0===this.options.minimizedByDefault?this.isExpanded=!1:!1===this.options.minimizedByDefault?this.isExpanded=!0:this.isExpanded=!l.QueryUtils.hasExcerpt(this.result),setTimeout(function(){e.updateToggleHeight()});var t=function(){return e.toggle(!0)};(new a.AccessibleButton).withElement(this.toggleButton).withSelectAction(function(){return t()}).withOwner(this.bind).withLabel(s.l(\"Toggle\")).build(),u.$$(this.toggleButtonInsideTable).on(\"click\",t)},t.prototype.slideToggle=function(e,t){void 0===e&&(e=!0),void 0===t&&(t=!0),t||u.$$(this.toggleContainer).addClass(\"coveo-no-transition\"),e?(this.toggleContainer.style.display=\"block\",this.toggleContainer.style.height=this.toggleContainerHeight+\"px\"):(this.toggleContainer.style.height=this.toggleContainerHeight+\"px\",this.toggleContainer.style.height=\"0\"),t||(this.toggleContainer.offsetHeight,u.$$(this.toggleContainer).removeClass(\"coveo-no-transition\"))},t.prototype.updateToggleContainerHeight=function(){this.toggleContainerHeight=this.toggleContainer.scrollHeight},t.ID=\"FieldTable\",t.doExport=function(){r.exportGlobally({FieldTable:t,FieldValue:m.FieldValue})},t.options={allowMinimization:d.ComponentOptions.buildBooleanOption({defaultValue:!0}),expandedTitle:d.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return s.l(\"Details\")},depend:\"allowMinimization\"}),minimizedTitle:d.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return s.l(\"Details\")},depend:\"allowMinimization\"}),minimizedByDefault:d.ComponentOptions.buildBooleanOption({depend:\"allowMinimization\"})},t}(h.Component);t.FieldTable=y,f.Initialization.registerAutoCreateComponent(y);var g=function(e){function t(n,i,o,r){var s=e.call(this,n,i,o,r,t.ID)||this;s.element=n,s.options=i,s.result=r,s.options=d.ComponentOptions.initComponentOptions(n,t,i);var a=u.$$(\"th\").el;return a.appendChild(document.createTextNode(s.options.caption.toLocaleString())),s.element.insertBefore(a,s.getValueContainer()),s}return i(t,e),t.prototype.getValueContainer=function(){return null==this.valueContainer&&(this.valueContainer=document.createElement(\"td\"),this.element.appendChild(this.valueContainer)),this.valueContainer},t.ID=\"ValueRow\",t.options={caption:d.ComponentOptions.buildStringOption({postProcessing:function(e,t){return e||t.field.substr(1)}})},t.parent=m.FieldValue,t}(m.FieldValue)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(3),r=n(2),s=n(182),a=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.element=t,o.options=n,o.options.getMoreResults=function(e){return s.Folding.foldWithParent(e)[0].attachments},o.options.getResult=function(e){var t=s.Folding.defaultGetResult(e);return t.childResults=t.attachments,t.attachments=[],t},o}return i(t,e),t.ID=\"FoldingForThread\",t.doExport=function(){o.exportGlobally({FoldingForThread:t})},t}(s.Folding);t.FoldingForThread=a,r.Initialization.registerAutoCreateComponent(a)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(6),a=n(11),u=n(32),l=n(10),c=n(13),p=n(1),h=n(4),d=n(2),f=n(5),m=n(0),y=n(3);n(581);var g=n(12),v=function(e){function t(n,i,o){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.options=r.ComponentOptions.initComponentOptions(n,t,i),s.bind.onRootElement(a.QueryEvents.buildingQuery,function(e){return s.handleBuildingQuery(e)}),s.bind.onRootElement(u.BreadcrumbEvents.populateBreadcrumb,function(e){return s.handlePopulateBreadcrumb(e)}),s.bind.onRootElement(u.BreadcrumbEvents.clearBreadcrumb,function(){return s.setStateEmpty()}),s}return i(t,e),t.prototype.clear=function(){this.setStateEmpty();var e=this.getDescription();this.usageAnalytics.logSearchEvent(l.analyticsActionCauseList.contextRemove,{contextName:e}),this.queryController.executeQuery()},t.prototype.setStateEmpty=function(){this.queryStateModel.set(c.QUERY_STATE_ATTRIBUTES.HD,\"\"),this.queryStateModel.set(c.QUERY_STATE_ATTRIBUTES.HQ,\"\")},t.prototype.handleBuildingQuery=function(e){f.Assert.exists(e);var t=this.queryStateModel.get(c.QUERY_STATE_ATTRIBUTES.HQ);h.Utils.isNonEmptyString(t)&&e.queryBuilder.advancedExpression.add(t)},t.prototype.handlePopulateBreadcrumb=function(e){var t=this,n=this.getDescription();if(!m.isEmpty(n)&&!m.isEmpty(this.queryStateModel.get(c.QUERY_STATE_ATTRIBUTES.HQ))){var i=document.createElement(\"div\");p.$$(i).addClass(\"coveo-hidden-query-breadcrumb\");var o=document.createElement(\"span\");p.$$(o).addClass(\"coveo-hidden-query-breadcrumb-title\"),p.$$(o).text(this.options.title),i.appendChild(o);var r=p.$$(\"span\",{className:\"coveo-hidden-query-breadcrumb-value\"},n).el;i.appendChild(r);var s=p.$$(\"span\",{className:\"coveo-hidden-query-breadcrumb-clear\"},g.SVGIcons.icons.mainClear);r.appendChild(s.el),p.$$(r).on(\"click\",function(){return t.clear()}),e.breadcrumbs.push({element:i})}},t.prototype.getDescription=function(){var e=this.queryStateModel.get(c.QueryStateModel.attributesEnum.hd);return m.isEmpty(e)&&(e=this.queryStateModel.get(c.QueryStateModel.attributesEnum.hq)),m.isEmpty(e)||e.length>this.options.maximumDescriptionLength&&(e=e.slice(0,this.options.maximumDescriptionLength)+\" ...\"),e},t.ID=\"HiddenQuery\",t.doExport=function(){y.exportGlobally({HiddenQuery:t})},t.options={maximumDescriptionLength:r.ComponentOptions.buildNumberOption({min:0,defaultValue:100}),title:r.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return s.l(\"AdditionalFilters\")+\":\"}})},t}(o.Component);t.HiddenQuery=v,d.Initialization.registerAutoCreateComponent(v)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(125),s=n(67),a=n(8),u=n(582),l=n(583),c=n(4),p=n(1),h=n(30),d=n(584),f=n(586),m=n(587),y=n(5),g=n(589),v=n(591),b=n(2),C=n(0),S=n(3);n(592);var w=n(12),x=n(14),_=n(81),O=function(e){function t(n,i,o){var r=e.call(this,n,i,o,t.ID)||this;return r.element=n,r.bindings=o,r.shouldReshuffleFacetValuesClientSide=!1,r.correctLevels=[],r.options=a.ComponentOptions.initComponentOptions(n,t,r.options),r.numberOfValuesToShow=r.originalNumberOfValuesToShow=r.options.numberOfValues||5,r.numberOfValues=Math.max(r.options.numberOfValues,1e4),r.options.injectionDepth=Math.max(r.options.injectionDepth,1e4),r.logger.info(\"Hierarchy facet: Set number of values very high in order to build hierarchy\",r.numberOfValues,r),r.logger.info(\"Hierarchy facet: Set injection depth very high in order to build hierarchy\",r.options.injectionDepth),r}return i(t,e),t.prototype.selectValue=function(t,n){void 0===n&&(n=!this.options.useAnd),this.ensureDom(),this.ensureValueHierarchyExists([t]);var i=this.getValueFromHierarchy(t);n&&this.selectChilds(i,i.childs),this.flagParentForSelection(i),e.prototype.selectValue.call(this,t)},t.prototype.selectMultipleValues=function(t,n){var i=this;void 0===n&&(n=!this.options.useAnd),this.ensureDom(),this.ensureValueHierarchyExists(t),C.each(t,function(e){var t=i.getValueFromHierarchy(e);i.flagParentForSelection(t),n&&C.each(t.childs,function(e){i.selectValue(e.facetValue)})}),e.prototype.selectMultipleValues.call(this,t)},t.prototype.deselectValue=function(t,n){var i=this;void 0===n&&(n=!0),this.ensureDom(),this.ensureValueHierarchyExists([t]);var o=this.getValueFromHierarchy(t);if(n){if(void 0!=o.childs){var r=C.filter(o.childs,function(e){var t=i.getFacetValueFromHierarchy(e.facetValue);return t.selected||t.excluded});o.hasChildSelected=!1,r.length==o.childs.length&&this.deselectChilds(o,o.childs)}}this.deselectParent(o.parent),this.unflagParentForSelection(o),e.prototype.deselectValue.call(this,t)},t.prototype.excludeValue=function(t,n){void 0===n&&(n=!this.options.useAnd),this.ensureDom(),this.ensureValueHierarchyExists([t]);var i=this.getValueFromHierarchy(t);n?this.excludeChilds(i.childs):(this.deselectChilds(i,i.childs),this.close(i)),this.flagParentForSelection(i),e.prototype.excludeValue.call(this,t)},t.prototype.unexcludeValue=function(t,n){void 0===n&&(n=!this.options.useAnd),this.ensureDom(),this.ensureValueHierarchyExists([t]);var i=this.getValueFromHierarchy(t);n&&this.unexcludeChilds(i.childs),this.unflagParentForSelection(i),e.prototype.unexcludeValue.call(this,t)},t.prototype.deselectMultipleValues=function(t,n){var i=this;void 0===n&&(n=!this.options.useAnd),this.ensureDom(),this.ensureValueHierarchyExists(t),C.each(t,function(e){var t=i.getValueFromHierarchy(e);t.hasChildSelected=!1,i.unflagParentForSelection(t),n&&C.each(t.childs,function(e){i.getValueFromHierarchy(e.facetValue).hasChildSelected=!1,i.deselectValue(e.facetValue)})}),e.prototype.deselectMultipleValues.call(this,t)},t.prototype.toggleSelectValue=function(e){this.ensureDom(),this.ensureValueHierarchyExists([e]),0==this.getFacetValueFromHierarchy(e).selected?this.selectValue(e):this.deselectValue(e)},t.prototype.toggleExcludeValue=function(e){this.ensureDom(),this.ensureValueHierarchyExists([e]),0==this.getFacetValueFromHierarchy(e).excluded?this.excludeValue(e):this.unexcludeValue(e)},t.prototype.getValueCaption=function(e){var t=this.getSelf(e),n=t;return c.Utils.exists(this.options.valueCaption)&&(\"object\"==typeof this.options.valueCaption&&(n=this.options.valueCaption[t]||n),\"function\"==typeof this.options.valueCaption&&(n=this.options.valueCaption.call(this,e))),n},t.prototype.getDisplayedValues=function(){var e=this,t=C.filter(this.values.getAll(),function(t){if(e.getValueFromHierarchy(t)){var n=e.getElementFromFacetValueList(t);return!p.$$(n).hasClass(\"coveo-inactive\")}return!1});return C.pluck(t,\"value\")},t.prototype.updateSort=function(t){e.prototype.updateSort.call(this,t)},t.prototype.open=function(e){var t;void 0!=(t=C.isString(e)?this.getValueHierarchy(e):e instanceof r.FacetValue?this.getValueHierarchy(e.value):e)&&(p.$$(this.getElementFromFacetValueList(t.facetValue.value)).addClass(\"coveo-open\"),this.showChilds(t.childs),void 0!=t.parent&&this.open(this.getValueHierarchy(t.facetValue.value).parent),this.getValueHierarchy(t.facetValue.value).keepOpened=!0)},t.prototype.close=function(e){var t,n=this;void 0!=(t=C.isString(e)?this.getValueHierarchy(e):e instanceof r.FacetValue?this.getValueHierarchy(e.value):e)&&(p.$$(this.getElementFromFacetValueList(t.facetValue)).removeClass(\"coveo-open\"),this.hideChilds(t.childs),C.each(t.childs,function(e){n.close(n.getValueHierarchy(e.facetValue.value))}),this.getValueHierarchy(t.facetValue.value).keepOpened=!1)},t.prototype.reset=function(){var t=this;C.each(this.getAllValueHierarchy(),function(e){e.hasChildSelected=!1,e.allChildShouldBeSelected=!1}),C.each(this.getAllValueHierarchy(),function(e){t.close(e)}),e.prototype.reset.call(this)},t.prototype.processFacetSearchAllResultsSelected=function(e){this.selectMultipleValues(e),this.triggerNewQuery()},t.prototype.triggerUpdateDeltaQuery=function(t){this.shouldReshuffleFacetValuesClientSide=this.keepDisplayedValuesNextTime,e.prototype.triggerUpdateDeltaQuery.call(this,t)},t.prototype.updateSearchElement=function(t){void 0===t&&(t=!0),e.prototype.updateSearchElement.call(this,!0)},t.prototype.facetValueHasChanged=function(){var e=this;this.updateQueryStateModel(),h.Defer.defer(function(){e.updateAppearanceDependingOnState()})},t.prototype.initFacetQueryController=function(){this.facetQueryController=new l.HierarchicalFacetQueryController(this)},t.prototype.initFacetSearch=function(){this.facetSearch=new f.HierarchicalFacetSearch(this,d.HierarchicalFacetSearchValuesList,this.root),this.element.appendChild(this.facetSearch.build())},t.prototype.handleDeferredQuerySuccess=function(t){this.updateAppearanceDependingOnState(),e.prototype.handleDeferredQuerySuccess.call(this,t)},t.prototype.handlePopulateSearchAlerts=function(e){this.values.hasSelectedOrExcludedValues()&&e.text.push(new m.HierarchicalBreadcrumbValuesList(this,this.values.getSelected().concat(this.values.getExcluded()),this.getAllValueHierarchy()).buildAsString())},t.prototype.handlePopulateBreadcrumb=function(e){if(y.Assert.exists(e),this.values.hasSelectedOrExcludedValues()){var t=new m.HierarchicalBreadcrumbValuesList(this,this.values.getSelected().concat(this.values.getExcluded()),this.getAllValueHierarchy()).build();e.breadcrumbs.push({element:t})}},t.prototype.handleOmniboxWithStaticValue=function(e){var t=this,n=e.completeQueryExpression.regex,i=C.first(C.filter(this.getAllValueHierarchy(),function(e){return n.test(t.getValueCaption(e.facetValue))}),this.options.numberOfValuesInOmnibox),o=C.compact(C.map(i,function(e){var n=t.getFromFacetValueList(e.facetValue);return n?n.facetValue:void 0})),r=new g.OmniboxHierarchicalValuesList(this,o,e).build();e.rows.push({element:r,zIndex:this.omniboxZIndex})},t.prototype.rebuildValueElements=function(){this.shouldReshuffleFacetValuesClientSide=this.shouldReshuffleFacetValuesClientSide||this.keepDisplayedValuesNextTime,this.numberOfValues=Math.max(this.numberOfValues,1e4),this.processHierarchy(),this.setValueListContent(),e.prototype.rebuildValueElements.call(this),this.buildParentChildRelationship(),this.checkForOrphans(),this.checkForNewUnselectedChild(),this.crop(),this.shouldReshuffleFacetValuesClientSide=!1},t.prototype.initFacetValuesList=function(){this.facetValuesList=new u.HierarchicalFacetValuesList(this,v.HierarchicalFacetValueElement),this.element.appendChild(this.facetValuesList.build())},t.prototype.updateMoreLess=function(){var t=this.numberOfValuesToShow<this.topLevelHierarchy.length,n=this.numberOfValuesToShow>this.originalNumberOfValuesToShow;e.prototype.updateMoreLess.call(this,n,t)},t.prototype.handleClickMore=function(){this.numberOfValuesToShow+=this.originalNumberOfValuesToShow,this.numberOfValuesToShow=Math.min(this.numberOfValuesToShow,this.values.size()),this.crop(),this.updateMoreLess()},t.prototype.handleClickLess=function(){this.numberOfValuesToShow=this.originalNumberOfValuesToShow,this.crop(),this.updateMoreLess()},t.prototype.updateNumberOfValues=function(){this.numberOfValues=Math.max(this.numberOfValues,1e4)},t.prototype.ensureValueHierarchyExists=function(e){var t=this;e[0]&&\"string\"==typeof e[0]&&(e=C.map(e,function(e){return r.FacetValue.createFromValue(e)}));var n=!1;C.each(e,function(e){void 0==t.getValueHierarchy(e.value)&&(n=!0)}),n&&this.processHierarchy(e)},t.prototype.crop=function(){var e=this,t=C.partition(this.topLevelHierarchy,function(e){return e.facetValue.selected||e.facetValue.excluded||e.hasChildSelected}),n=this.numberOfValuesToShow-t[0].length;C.each(C.last(t[1],t[1].length-n),function(t){e.hideFacetValue(t),e.hideChilds(t.childs)}),C.each(C.first(t[1],n),function(t){e.showFacetValue(t)})},t.prototype.placeChildsUnderTheirParent=function(e,t){var n=this,i=e.childs;if(i){var o=this.facetValuesList.sortFacetValues(C.pluck(i,\"facetValue\")).reverse();C.each(o,function(e){var i=n.getValueFromHierarchy(e);if(i){var o=n.getElementFromFacetValueList(e);p.$$(o).insertAfter(t),i.childs&&0!=i.childs.length&&n.placeChildsUnderTheirParent(i,o)}})}e.keepOpened?(this.open(e),this.showChilds(e.childs)):this.hideChilds(e.childs)},t.prototype.addCssClassToParentAndChilds=function(e,t){var n=this;p.$$(t).addClass(\"coveo-has-childs\"),e.hasChildSelected&&p.$$(t).addClass(\"coveo-has-childs-selected\");var i=p.$$(\"span\",{className:\"coveo-hierarchical-facet-expand\"},w.SVGIcons.icons.facetExpand),o=p.$$(\"span\",{className:\"coveo-hierarchical-facet-collapse\"},w.SVGIcons.icons.facetCollapse);x.SVGDom.addClassToSVGInContainer(i.el,\"coveo-hierarchical-facet-expand-svg\"),x.SVGDom.addClassToSVGInContainer(o.el,\"coveo-hierarchical-facet-collapse-svg\");var r=p.$$(\"div\",{className:\"coveo-has-childs-toggle\"},i.el,o.el).el;p.$$(r).on(\"click\",function(){p.$$(t).hasClass(\"coveo-open\")?n.close(e):n.open(e)}),p.$$(t).prepend(r)},t.prototype.buildParentChildRelationship=function(){var e=this,t=document.createDocumentFragment();t.appendChild(this.facetValuesList.valueContainer);var n=C.map(this.facetValuesList.sortFacetValues(),function(t){return e.getValueFromHierarchy(t)});C.each(n,function(t){var n=e.getElementFromFacetValueList(t.facetValue);c.Utils.isNonEmptyArray(t.childs)?(e.placeChildsUnderTheirParent(t,n),e.addCssClassToParentAndChilds(t,n)):p.$$(n).addClass(\"coveo-no-childs\"),n.style.marginLeft=e.options.marginByLevel*(t.level-e.options.levelStart)+\"px\"}),p.$$(t).insertAfter(this.headerElement)},t.prototype.setValueListContent=function(){var e=this;this.facetValuesList.hierarchyFacetValues=C.map(this.correctLevels,function(t){return e.values.contains(t.facetValue.value)||(t.facetValue.occurrences=0,e.values.add(t.facetValue)),t.facetValue})},t.prototype.createHierarchy=function(e){var t=this,n=C.map(e,function(e){var n=t.getParent(e),i=e.lookupValue||e.value;return{facetValue:e,level:t.getLevel(e),parent:n,self:i}});return this.setInHierarchy(n),C.each(this.getAllValueHierarchy(),function(e){e.facetValue.selected&&t.flagParentForSelection(e)}),n},t.prototype.processHierarchy=function(e){var t=this;void 0===e&&(e=this.values.getAll()),C.each(this.getAllValueHierarchy(),function(e){void 0==t.values.get(e.facetValue.value)&&t.deleteValueHierarchy(t.getLookupOrValue(e.facetValue))}),this.createHierarchy(e)},t.prototype.setInHierarchy=function(e){var t=this;this.correctLevels=C.filter(e,function(e){var n=void 0==t.options.levelStart||e.level>=t.options.levelStart,i=void 0==t.options.levelEnd||e.level<t.options.levelEnd;return n&&i}),C.each(this.correctLevels,function(e){var n=C.map(C.filter(t.correctLevels,function(t){return null!=t.parent&&t.parent.toLowerCase()==e.self.toLowerCase()}),function(e){return{facetValue:e.facetValue,level:e.level,keepOpened:!1,hasChildSelected:!1,allChildShouldBeSelected:!1}}),i=null!=e.parent?C.find(t.correctLevels,function(t){return t.self.toLowerCase()==e.parent.toLowerCase()}):null,o=t.getValueHierarchy(e.facetValue.value);o&&o.childs.length!=n.length&&(o.childs=n);var r;i&&(r=t.getValueHierarchy(i.facetValue.value)),t.setValueHierarchy(e.facetValue.value,{childs:n,parent:void 0==i?void 0:{facetValue:i.facetValue,level:i.level,keepOpened:!!r&&r.keepOpened,hasChildSelected:!!r&&r.hasChildSelected,originalPosition:r?r.originalPosition:void 0,allChildShouldBeSelected:!!r&&r.allChildShouldBeSelected},facetValue:e.facetValue,level:e.level,keepOpened:!!o&&o.keepOpened,hasChildSelected:!!o&&o.hasChildSelected,originalPosition:o?o.originalPosition:void 0,allChildShouldBeSelected:!!o&&o.allChildShouldBeSelected})}),this.topLevelHierarchy=C.chain(this.values.getAll()).filter(function(e){var n=t.getValueFromHierarchy(e);return!!n&&n.level==(t.options.levelStart||0)}).map(function(e){return t.getValueFromHierarchy(e)}).value()},t.prototype.getParent=function(e){var t=this.getLookupOrValue(e).lastIndexOf(this.options.delimitingCharacter);if(-1!=t)return this.getLookupOrValue(e).substring(0,t)},t.prototype.getSelf=function(e){var t=this.getParent(e);if(void 0==t)return this.getLookupOrValue(e);var n=this.getLookupOrValue(e).indexOf(t);return this.getLookupOrValue(e).substring(n+t.length+1)},t.prototype.showFacetValue=function(e){p.$$(this.getElementFromFacetValueList(e.facetValue.value)).removeClass(\"coveo-inactive\")},t.prototype.hideFacetValue=function(e){p.$$(this.getElementFromFacetValueList(e.facetValue.value)).addClass(\"coveo-inactive\")},t.prototype.hideChilds=function(e){var t=this;C.each(e,function(e){t.hideFacetValue(e)})},t.prototype.showChilds=function(e){var t=this;C.each(e,function(e){t.showFacetValue(e)})},t.prototype.selectChilds=function(e,t){this.flagParentForSelection(e),e.allChildShouldBeSelected=!0,this.selectMultipleValues(C.map(t,function(e){return e.facetValue}))},t.prototype.deselectChilds=function(e,t){e.hasChildSelected=!1,e.allChildShouldBeSelected=!1,this.deselectMultipleValues(C.map(t,function(e){return e.facetValue}))},t.prototype.excludeChilds=function(e){this.excludeMultipleValues(C.map(e,function(e){return e.facetValue}))},t.prototype.unexcludeChilds=function(e){this.unexcludeMultipleValues(C.map(e,function(e){return e.facetValue}))},t.prototype.deselectParent=function(e){void 0!=e&&this.deselectValue(e.facetValue,!1)},t.prototype.flagParentForSelection=function(e){for(var t=e.parent,n=e;t;){var i=this.getValueHierarchy(t.facetValue.value);i.hasChildSelected=!0;var o=C.find(i.childs,function(e){return e.facetValue.value.toLowerCase()==n.facetValue.value.toLowerCase()});o&&this.getValueHierarchy(o.facetValue.value).hasChildSelected&&(o.hasChildSelected=!0),t=i.parent,n=i}},t.prototype.unflagParentForSelection=function(e){for(var t=this,n=e.parent;n;){var i=this.getValueHierarchy(n.facetValue.value);0==C.filter(i.childs,function(n){var i=t.getValueHierarchy(n.facetValue.value);if(void 0!=i)return i.facetValue.value!=e.facetValue.value&&(i.facetValue.selected||i.facetValue.excluded||i.hasChildSelected)}).length&&(i.hasChildSelected=!1),i.allChildShouldBeSelected=!1,n=i.parent}},t.prototype.getValueFromHierarchy=function(e){var t=e instanceof r.FacetValue?e.value:e;return this.getValueHierarchy(t)},t.prototype.getFacetValueFromHierarchy=function(e){return this.getValueFromHierarchy(e).facetValue},t.prototype.getLookupOrValue=function(e){return e.lookupValue||e.value},t.prototype.getElementFromFacetValueList=function(e){var t=this.getFromFacetValueList(e);return t?t.renderer.listItem:p.$$(\"div\").el},t.prototype.getFromFacetValueList=function(e){return void 0!=this.getValueFromHierarchy(e)?this.facetValuesList.get(e):void 0},t.prototype.getLevel=function(e){return e.value.split(this.options.delimitingCharacter).length-1},t.prototype.getAllValueHierarchy=function(){return null==this.valueHierarchy&&(this.valueHierarchy={}),this.valueHierarchy},t.prototype.deleteValueHierarchy=function(e){null!=this.valueHierarchy&&delete this.valueHierarchy[e.toLowerCase()]},t.prototype.getValueHierarchy=function(e){if(null!=this.valueHierarchy)return this.valueHierarchy[e.toLowerCase()]},t.prototype.setValueHierarchy=function(e,t){null==this.valueHierarchy&&(this.valueHierarchy={}),this.valueHierarchy[e.toLowerCase()]=t},t.prototype.checkForOrphans=function(){var e=this;C.each(this.valueHierarchy,function(t){e.getLevel(t.facetValue)!=e.options.levelStart&&void 0==e.getValueHierarchy(e.getParent(t.facetValue))&&(e.logger.error(\"Orphan value found in HierarchicalFacet : \"+t.facetValue.value,\"Needed : \"+e.getParent(t.facetValue)+\" but not found\"),e.logger.warn(\"Removing incoherent facet value : \"+t.facetValue.value),e.hideFacetValue(t))})},t.prototype.checkForNewUnselectedChild=function(){var e=this;C.each(this.valueHierarchy,function(t){if(t.allChildShouldBeSelected){C.find(t.childs,function(e){return 1!=e.facetValue.selected})&&(e.selectValue(t.facetValue,!0),e.logger.info(\"Re-executing query with new facet values returned by index\"),e.queryController.deferExecuteQuery())}})},t.ID=\"HierarchicalFacet\",t.doExport=function(){S.exportGlobally({HierarchicalFacet:t})},t.options=o({delimitingCharacter:a.ComponentOptions.buildStringOption({defaultValue:\"|\"}),levelStart:a.ComponentOptions.buildNumberOption({defaultValue:0,min:0}),levelEnd:a.ComponentOptions.buildNumberOption({min:0}),marginByLevel:a.ComponentOptions.buildNumberOption({defaultValue:10,min:0})},_.ResponsiveFacetOptions),t.parent=s.Facet,t}(s.Facet);t.HierarchicalFacet=O,b.Initialization.registerAutoCreateComponent(O)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(11),r=n(3),s=n(6),a=n(1),u=n(14),l=n(12),c=n(7),p=n(8),h=n(2),d=function(e){function t(n,i,r){var s=e.call(this,n,t.ID,r)||this;return s.element=n,s.options=i,s.options=p.ComponentOptions.initComponentOptions(n,t,i),s.buildLink(),s.bind.onRootElement(o.QueryEvents.queryError,function(){return s.hide()}),s.bind.onRootElement(o.QueryEvents.querySuccess,function(e){return s.handleQuerySuccess(e)}),s}return i(t,e),t.prototype.buildLink=function(){var e=a.$$(\"a\",{className:\"coveo-powered-by coveo-footer-logo\",href:\"https://www.coveo.com/\",\"aria-label\":s.l(\"CoveoHomePage\")},l.SVGIcons.icons.coveoPoweredBy);this.options.target&&e.setAttribute(\"target\",this.options.target),u.SVGDom.addClassToSVGInContainer(e.el,\"coveo-powered-by-svg\"),this.element.appendChild(e.el)},t.prototype.handleQuerySuccess=function(e){e.results.results.length>0?this.show():this.hide()},t.prototype.hide=function(){a.$$(this.element).addClass(\"coveo-hidden\")},t.prototype.show=function(){a.$$(this.element).removeClass(\"coveo-hidden\")},t.ID=\"Logo\",t.doExport=function(){r.exportGlobally({Logo:t})},t.options={target:p.ComponentOptions.buildStringOption()},t}(c.Component);t.Logo=d,h.Initialization.registerAutoCreateComponent(d)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(20);n(593);var r=n(0),s=n(11),a=n(3),u=n(13),l=n(1),c=n(21),p=n(4),h=n(7),d=n(8),f=n(2),m=n(59),y=n(594),g=n(595),v=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;return r.element=n,r.options=i,r.groupByIndex=[],r.rowId=\"\",r.columnId=\"\",r.selectedRowValue=void 0,r.selectedColumnValue=void 0,r.numberOfRows=0,r.numberOfColumns=0,r.options=d.ComponentOptions.initComponentOptions(n,t,i),r.options.previewTemplate||(r.options.previewTemplate=new g.DefaultMatrixResultPreviewTemplate(r.options.computedField,r.options.computedFieldFormat)),r.options.previewSortField||(r.options.previewSortField=r.options.computedField),r.options.columnFieldValues.length!=r.options.columnLabels.length&&(r.options.columnLabels=r.options.columnFieldValues),r.buildMatrix(),null==r.options.rowField?r.logger.error(\"'rowField' option is required in the Matrix component\"):null==r.options.columnField?r.logger.error(\"'columnField' option is required in the Matrix component\"):null==r.options.computedField?r.logger.error(\"'computedField' option is required in the Matrix component\"):(r.bindEvents(),r.initQueryState()),r}return i(t,e),t.prototype.selectCell=function(e,t){var n,i;0!==e&&e!==this.numberOfRows-1&&(n=this.getRowValue(e)),0!==t&&t!==this.numberOfColumns-1&&(i=this.getColumnValue(t)),n&&this.isRowFacetPresent()?this.queryStateModel.set(this.rowId,[n]):(this.selectedRowValue=n,this.queryStateModel.set(this.rowId,[])),i&&this.isColumnFacetPresent()?this.queryStateModel.set(this.columnId,[i]):(this.selectedColumnValue=i,this.queryStateModel.set(this.columnId,[]))},t.prototype.getSelectedColumnValue=function(){return this.selectedColumnValue},t.prototype.getSelectedRowValue=function(){return this.selectedRowValue},t.prototype.getCellElement=function(e,t){return this.data[e][t].getHTML()},t.prototype.getCellValue=function(e,t){var n=this.getCellElement(e,t);return l.$$(n).text()},t.prototype.drawMatrix=function(){var e=this,t=l.$$(\"div\",{className:\"coveo-matrix-row matrix-header-row\"});this.drawRow(t.el,0);for(var n=this.options.enableColumnTotals?this.numberOfRows-1:this.numberOfRows,i=1;i<n;i++){var o=l.$$(\"div\",{className:\"coveo-matrix-row\"}).el;this.drawRow(o,i)}if(this.options.enableColumnTotals){var s=l.$$(\"div\",{className:\"coveo-matrix-row matrix-total-row\"}).el;this.drawRow(s,this.numberOfRows-1)}if(\"\"!==this.options.cellFontSize){var a=l.$$(this.element).findAll(\".coveo-matrix-cell\");r.each(a,function(t){t.style.fontSize=e.options.cellFontSize})}},t.prototype.bindEvents=function(){var e=this;this.bind.onRootElement(s.QueryEvents.buildingQuery,function(t){return e.handleBuildingQuery(t)}),this.bind.onRootElement(s.QueryEvents.doneBuildingQuery,function(t){return e.handleDoneBuildingQuery(t)}),this.bind.onRootElement(s.QueryEvents.deferredQuerySuccess,function(t){return e.handleDeferredQuerySuccess(t)})},t.prototype.initQueryState=function(){this.rowId=u.QueryStateModel.getFacetId(this.options.rowField),this.columnId=u.QueryStateModel.getFacetId(this.options.columnField),this.queryStateModel.registerNewAttribute(this.rowId,[]),this.queryStateModel.registerNewAttribute(this.columnId,[])},t.prototype.buildMatrix=function(){this.buildTitle(),this.buildBody(),this.data=new Array,this.addHeaderRow()},t.prototype.buildTitle=function(){var e=this.options.title?this.options.title:\"\",t=l.$$(\"div\",{className:\"coveo-matrix-title\"},e).el;this.element.appendChild(t)},t.prototype.buildBody=function(){var e=l.$$(\"div\",{className:\"coveo-matrix\"}).el;this.element.appendChild(e)},t.prototype.handleBuildingQuery=function(e){this.areFacetsPresent()||(this.selectedRowValue&&!this.isRowFacetPresent()&&e.queryBuilder.advancedExpression.addFieldExpression(this.options.rowField,\"=\",[this.selectedRowValue]),this.selectedColumnValue&&!this.isColumnFacetPresent()&&e.queryBuilder.advancedExpression.addFieldExpression(this.options.columnField,\"=\",[this.selectedColumnValue]))},t.prototype.handleDoneBuildingQuery=function(e){this.groupByIndex=[],this.addMainGroubByRequest(e.queryBuilder),this.addColumnsGroupByRequests(e.queryBuilder)},t.prototype.handleDeferredQuerySuccess=function(e){this.reset(),this.parseResults(e.results),this.addTotals(),this.drawMatrix(),this.formatCells(),this.selectedRowValue=void 0,this.selectedColumnValue=void 0},t.prototype.addMainGroubByRequest=function(e){var t={field:this.options.rowField,sortCriteria:this.options.sortCriteria,computedFields:this.getComputedFields(),maximumNumberOfValues:this.options.maximumNumberOfRows};this.groupByIndex.push(e.groupByRequests.length),e.groupByRequests.push(t)},t.prototype.addColumnsGroupByRequests=function(e){for(var t=0;t<this.options.columnFieldValues.length;t++){var n={field:this.options.rowField,sortCriteria:this.options.sortCriteria,computedFields:this.getComputedFields(),queryOverride:\"(\"+this.buildExpression(e)+\")(\"+this.options.columnField+\"='\"+this.options.columnFieldValues[t]+\"')\",maximumNumberOfValues:this.options.maximumNumberOfValuesInGroupBy};this.groupByIndex.push(e.groupByRequests.length),e.groupByRequests.push(n)}},t.prototype.buildExpression=function(e){var t=e.expression.build(),n=e.advancedExpression.build(),i=e.constantExpression.build(),o=\"\";return t&&(o+=\" \"+t),n&&(o+=\" \"+n),i&&(o+=\" \"+i),o},t.prototype.getComputedFields=function(){return[{field:this.options.computedField,operation:this.options.computedFieldOperation}]},t.prototype.getCellResult=function(e,t,n){for(var i=this.getRowValue(t),o=this.getColumnValue(n),r=0,s=0;s<e.values.length;s++)if(e.values[s].value===i){r=e.values[s].computedFieldResults[0];break}return this.isAColumnSelected()&&!this.isColumnSelected(o)&&(r=0),r},t.prototype.addTotals=function(){this.options.enableRowTotals&&this.addRowTotals(),this.options.enableColumnTotals&&this.addColumnTotals()},t.prototype.addRowTotals=function(){var e=this;this.addColumn(),this.setValue(\"Total\",0,this.numberOfColumns-1);for(var t=1;t<this.numberOfRows;t++){var n=this.computeRowTotal(t);this.setValue(n,t,this.numberOfColumns-1)}\"computedfielddescending\"==this.options.sortCriteria.toLowerCase()&&this.data.sort(function(t,n){return n[e.numberOfColumns-1].getValue()-t[e.numberOfColumns-1].getValue()}),\"computedfieldascending\"==this.options.sortCriteria.toLowerCase()&&this.data.sort(function(t,n){return t[e.numberOfColumns-1].getValue()-n[e.numberOfColumns-1].getValue()})},t.prototype.addColumnTotals=function(){this.addRow(),this.setValue(\"Total\",this.numberOfRows-1,0);for(var e=1;e<this.numberOfColumns;e++){var t=this.computeColumnTotal(e);this.setValue(t,this.numberOfRows-1,e)}},t.prototype.computeRowTotal=function(e){for(var t=0,n=1;n<this.numberOfColumns-1;n++)t+=parseInt(this.getCellValue(e,n));return t},t.prototype.computeColumnTotal=function(e){for(var t=0,n=1;n<this.numberOfRows-1;n++)t+=parseInt(this.getCellValue(n,e));return t},t.prototype.formatCells=function(){for(var e=1;e<this.numberOfRows;e++)for(var t=1;t<this.numberOfColumns;t++){var n=this.getCellValue(e,t);n=o.format(parseInt(n),this.options.computedFieldFormat),this.setValue(n,e,t)}},t.prototype.addHeaderRow=function(){this.addRow(),this.addColumn(),this.setValue(this.options.columnHeader,0,0);for(var e=0;e<this.options.columnLabels.length;e++)this.addColumn(),this.setValue(this.options.columnLabels[e],0,e+1)},t.prototype.addRow=function(){this.data.push(new Array);for(var e=0;e<this.numberOfColumns;e++)this.addCellToRow(this.numberOfRows,e);this.numberOfRows++},t.prototype.addColumn=function(){for(var e=0;e<this.numberOfRows;e++)this.addCellToRow(e,this.numberOfColumns);this.numberOfColumns++},t.prototype.addCellToRow=function(e,t){var n=l.$$(\"div\",{className:\"coveo-matrix-cell\"});0==t&&n.addClass(\"matrix-first-column\"),this.data[e].push(new y.Cell(0,n.el))},t.prototype.setValue=function(e,t,n){var i=this.getCellElement(t,n);p.Utils.isNullOrUndefined(e)||l.$$(i).text(e.toString()),this.isCellSelected(this.getRowValue(t),this.getColumnValue(n))&&l.$$(i).addClass(\"coveo-matrix-selected\"),this.isAColumnSelected()&&!this.isColumnSelected(this.getColumnValue(n))&&0!=n&&0!=t&&l.$$(i).addClass(\"coveo-matrix-unimportant\"),this.data[t][n].setValue(e)},t.prototype.handleClick=function(e,t){this.selectCell(e,t),this.queryController.executeQuery()},t.prototype.getRowValue=function(e){return this.data[e][0].getValue()},t.prototype.getColumnValue=function(e){return this.options.columnFieldValues[e-1]},t.prototype.isAColumnSelected=function(){return 0!==(this.queryStateModel.get(this.columnId)||[]).length||void 0!=this.selectedColumnValue},t.prototype.isColumnSelected=function(e){if(this.isAColumnSelected()&&e)for(var t=this.queryStateModel.attributes[this.columnId]||[],n=0;n<t.length;n++)if(t[n].toLowerCase()===e.toLowerCase())return!0;return this.selectedColumnValue==e},t.prototype.isARowSelected=function(){return 0!==(this.queryStateModel.get(this.rowId)||[]).length||void 0!==this.selectedRowValue},t.prototype.isRowSelected=function(e){if(this.isARowSelected()&&e)for(var t=this.queryStateModel.get(this.rowId)||[],n=0;n<t.length;n++)if(t[n].toLowerCase()===e.toLowerCase())return!0;return this.selectedRowValue==e},t.prototype.isCellSelected=function(e,t){return this.isAColumnSelected()&&this.isARowSelected()?this.isRowSelected(e)&&this.isColumnSelected(t):!!this.isAColumnSelected()&&this.isColumnSelected(t)},t.prototype.areFacetsPresent=function(){return this.isRowFacetPresent()&&this.isColumnFacetPresent()},t.prototype.isRowFacetPresent=function(){var e=this.componentStateModel.get(this.rowId);return e&&!e[0].disabled},t.prototype.isColumnFacetPresent=function(){var e=this.componentStateModel.get(this.columnId);return e&&!e[0].disabled},t.prototype.reset=function(){l.$$(this.element).empty(),this.numberOfRows=0,this.numberOfColumns=0,this.data=new Array,this.buildMatrix()},t.prototype.parseResults=function(e){if(e){var t=e.groupByResults[this.groupByIndex[0]];if(t)for(var n=0;n<t.values.length;n++){var i=t.values[n].value;this.addRow(),this.setValue(i,n+1,0)}for(var n=1;n<this.numberOfRows;n++)for(var o=1;o<this.numberOfColumns;o++){var r=e.groupByResults[this.groupByIndex[o]],s=this.getCellResult(r,n,o);this.setValue(s,n,o)}}},t.prototype.drawRow=function(e,t){for(var n=this,i=l.$$(this.element).find(\".coveo-matrix\"),o=this,r=0;r<this.numberOfColumns;r++)!function(i){var r=o.data[t][i].getHTML();l.$$(r).on(\"click\",function(){!function(e){n.handleClick(t,e)}(i)}),o.options.enableHoverPreview&&function(e){l.$$(r).on(\"mouseover\",function(){return n.handleHoverIn(t,e)}),l.$$(r).on(\"mouseout\",function(){return n.handleHoverOut(t,e)})}(i),e.appendChild(r)}(r);i.appendChild(e)},t.prototype.handleHoverIn=function(e,t){var n=this;this.isHoverWorkingOnRow(e)&&this.isHoverWorkingOnColumn(t)&&(this.previewTimeout=window.setTimeout(function(){n.displayResultsPreview(e,t)},this.options.previewDelay))},t.prototype.handleHoverOut=function(e,t){clearTimeout(this.previewTimeout),this.data[e][t].removePreview()},t.prototype.displayResultsPreview=function(e,t){var n=this,i=this.createPreviewQuery(e,t);this.data[e][t].addPreview(this.options.previewMinWidth,this.options.previewMaxWidth),this.queryController.getEndpoint().search(i).then(function(i){if(n.isDataAvailable(e,t)){var o=n.data[e][t],s=r.map(i.results,function(e){return n.instantiateTemplate(e)}),a=\"\";r.each(s,function(e){e.then(function(e){a+=e.outerHTML})}),Promise.all(s).then(function(){o.updatePreview(a)})}})},t.prototype.instantiateTemplate=function(e){var t=this;return this.options.previewTemplate.instantiateToElement(e,{checkCondition:!1,responsiveComponents:this.searchInterface.responsiveComponents}).then(function(n){var i={options:t.options,bindings:t.getBindings(),result:e};return f.Initialization.automaticallyCreateComponentsInside(n,i).initResult.then(function(){return n})})},t.prototype.createPreviewQuery=function(e,t){var n=\"(\"+c.QueryUtils.buildFieldExpression(this.options.rowField,\"=\",[this.getRowValue(e)])+\")\",i=\"(\"+c.QueryUtils.buildFieldExpression(this.options.columnField,\"=\",[this.getColumnValue(t)])+\")\",o=this.queryController.getLastQuery();o.aq=n,o.aq+=i,o.sortCriteria=this.options.previewSortCriteria,o.sortField=this.options.previewSortField;var s=this.options.computedField.slice(1);return!r.find(o.fieldsToInclude,function(e){return e==s})&&o.fieldsToInclude&&o.fieldsToInclude.push(s),o},t.prototype.isHoverWorkingOnRow=function(e){return this.options.enableColumnTotals?0!==e&&e!==this.numberOfRows-1:0!==e},t.prototype.isHoverWorkingOnColumn=function(e){return this.options.enableRowTotals?0!==e&&e!==this.numberOfColumns-1:0!==e},t.prototype.isDataAvailable=function(e,t){return void 0!==this.data[e]&&void 0!==this.data[e][t]},t.ID=\"Matrix\",t.doExport=function(){a.exportGlobally({Matrix:t})},t.options={title:d.ComponentOptions.buildStringOption(),rowField:d.ComponentOptions.buildFieldOption({required:!0}),columnField:d.ComponentOptions.buildFieldOption({required:!0}),sortCriteria:d.ComponentOptions.buildStringOption({defaultValue:\"computedfielddescending\"}),maximumNumberOfRows:d.ComponentOptions.buildNumberOption({defaultValue:10,min:0}),enableRowTotals:d.ComponentOptions.buildBooleanOption({defaultValue:!0}),columnFieldValues:d.ComponentOptions.buildListOption({defaultValue:[]}),columnLabels:d.ComponentOptions.buildListOption({defaultValue:[]}),columnHeader:d.ComponentOptions.buildStringOption(),maximumNumberOfValuesInGroupBy:d.ComponentOptions.buildNumberOption({defaultValue:100,min:0}),enableColumnTotals:d.ComponentOptions.buildBooleanOption({defaultValue:!0}),computedField:d.ComponentOptions.buildFieldOption({required:!0}),computedFieldOperation:d.ComponentOptions.buildStringOption({defaultValue:\"sum\"}),computedFieldFormat:d.ComponentOptions.buildStringOption({defaultValue:\"c0\"}),cellFontSize:d.ComponentOptions.buildStringOption({defaultValue:\"\"}),enableHoverPreview:d.ComponentOptions.buildBooleanOption({defaultValue:!0}),previewSortCriteria:d.ComponentOptions.buildStringOption({defaultValue:\"FieldDescending\"}),previewSortField:d.ComponentOptions.buildFieldOption(),previewMaxWidth:d.ComponentOptions.buildStringOption({defaultValue:\"500px\"}),previewMinWidth:d.ComponentOptions.buildStringOption({defaultValue:\"0\"}),previewDelay:d.ComponentOptions.buildNumberOption({defaultValue:500}),previewTemplate:m.TemplateComponentOptions.buildTemplateOption()},t}(h.Component);t.Matrix=v,f.Initialization.registerAutoCreateComponent(v)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(596);var o=n(0),r=n(33),s=n(11),a=n(137),u=n(3),l=n(5),c=n(9),p=n(6),h=n(1),d=n(4),f=n(10),m=n(120),y=n(7),g=n(8),v=n(2),b=n(87),C=function(e){function t(n,i,o){var u=e.call(this,n,i,o,t.ID)||this;return u.element=n,u.options=i,u.bindings=o,u.options=g.ComponentOptions.initComponentOptions(n,t,i),u.setupOptions(),u.bind.onRootElement(r.OmniboxEvents.populateOmnibox,function(e){return u.handlePopulateOmnibox(e)}),u.bind.onRootElement(s.QueryEvents.buildingQuery,function(e){return u.handleBuildingQuery(e)}),u.bind.onRootElement(a.InitializationEvents.afterComponentsInitialization,function(){u.handleAfterComponentInit()}),u}return i(t,e),t.prototype.buildResults=function(e){var t=this,n=[],i=o.map(e.results,function(e){return t.buildResult(e).then(function(i){return h.$$(i).addClass(\"coveo-omnibox-selectable\"),i[\"no-text-suggestion\"]=!0,h.$$(i).on([\"keyboardSelect\",\"click\"],function(n){return t.handleOmniboxElementSelection(n,i,e)}),t.autoCreateComponentsInsideResult(i,e).initResult.then(function(){return n.push(i),i})})});return Promise.all(i).then(function(){return n})},t.prototype.renderResults=function(e,t){return void 0===t&&(t=!1),h.$$(this.options.resultsContainer).empty(),this.lastOmniboxRequest?(e.length&&(this.appendHeaderIfTitleIsSpecified(),this.appendResults(e)),this.resolveLastOmniboxRequest(),Promise.resolve(null)):Promise.resolve(null)},t.prototype.handleAfterComponentInit=function(){var e=this,t=h.$$(this.root).find(\".\"+y.Component.computeCssClassNameForType(\"Omnibox\"));if(t){y.Component.get(t).magicBox.onsubmit=function(){m.logSearchBoxSubmitEvent(e.usageAnalytics),e.queryController.executeQuery()}}},t.prototype.appendHeaderIfTitleIsSpecified=function(){this.options.headerTitle&&this.options.resultsContainer.appendChild(h.$$(\"div\",{className:\"coveo-omnibox-result-list-header\"},h.$$(\"span\",{className:\"coveo-icon-omnibox-result-list\"}).el,h.$$(\"span\",{className:\"coveo-caption\"},p.l(this.options.headerTitle)).el).el)},t.prototype.appendResults=function(e){var t=this;o.each(e,function(e){t.options.resultsContainer.appendChild(e),t.triggerNewResultDisplayed(y.Component.getResult(e),e)}),this.triggerNewResultsDisplayed()},t.prototype.resolveLastOmniboxRequest=function(){0==h.$$(this.options.resultsContainer).findAll(\".coveo-omnibox-selectable\").length?this.lastOmniboxRequest.resolve({element:null,zIndex:this.options.omniboxZIndex}):this.lastOmniboxRequest.resolve({element:this.options.resultsContainer,zIndex:this.options.omniboxZIndex})},t.prototype.handleChangeLayout=function(){},t.prototype.setupOptions=function(){this.logger.info(\"Disabling infinite scroll for OmniboxResultList\",this),this.options.enableInfiniteScroll=!1,this.options.onSelect=this.options.onSelect||this.onRowSelection},t.prototype.handlePopulateOmnibox=function(e){var t=this,n=new Promise(function(n,i){t.queryController.executeQuery({searchAsYouType:!0,shouldRedirectStandaloneSearchbox:!1,beforeExecuteQuery:function(){return t.usageAnalytics.logSearchAsYouType(f.analyticsActionCauseList.searchboxSubmit,{})}}),t.lastOmniboxRequest={omniboxObject:e,resolve:n}});e.rows.push({deferred:n})},t.prototype.handleBuildingQuery=function(e){l.Assert.exists(e),d.Utils.isNonEmptyString(this.options.queryOverride)&&e.queryBuilder.constantExpression.add(this.options.queryOverride)},t.prototype.handleOmniboxElementSelection=function(e,t,n){e&&e.target&&this.otherComponentShouldHandleSelection(e,t)||this.lastOmniboxRequest&&this.options.onSelect.call(this,n,t,this.lastOmniboxRequest.omniboxObject,e)},t.prototype.otherComponentShouldHandleSelection=function(e,n){for(var i=e.target,r=!1;i&&i!=n&&!(r=null!=o.find(t.elementsToIgnore,function(e){return h.$$(i).hasClass(e)}));)i=i.parentElement;return r},t.prototype.onRowSelection=function(e,t,n,i){this.usageAnalytics.logClickEvent(f.analyticsActionCauseList.documentOpen,{author:d.Utils.getFieldValue(e,\"author\")},e,this.root),window.location.href=e.clickUri},t.prototype.initResultContainerAddToDom=function(){},t.ID=\"OmniboxResultList\",t.elementsToIgnore=[\"coveo-field-table-toggle-caption\",\"CoveoFollowItem\",\"CoveoPrintableUri\",\"CoveoQuickview\",\"CoveoResultLink\",\"CoveoResultRating\",\"CoveoResultTagging\",\"CoveoYouTubeThumbnail\"],t.doExport=function(){u.exportGlobally({OmniboxResultList:t})},t.options={layout:g.ComponentOptions.buildStringOption({defaultValue:\"list\",postProcessing:function(e){if(\"list\"!=e){var n=new c.Logger(t);n.warn(\"Cannot apply layout \"+e+\" on the OmniboxResultListComponent\"),n.warn('OmniboxResultList does not support any layout other than \"list\"')}return\"list\"}}),omniboxZIndex:g.ComponentOptions.buildNumberOption({defaultValue:51,min:16}),headerTitle:g.ComponentOptions.buildStringOption(),queryOverride:g.ComponentOptions.buildQueryExpressionOption(),onSelect:g.ComponentOptions.buildCustomOption(function(){return null})},t}(b.ResultList);t.OmniboxResultList=C,v.Initialization.registerAutoCreateComponent(C)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(597);var o=n(11),r=n(31),s=n(3),a=n(5),u=n(15),l=n(13),c=n(6),p=n(17),h=n(22),d=n(1),f=n(109),m=n(14),y=n(12),g=n(10),v=n(7),b=n(8),C=n(2),S=function(e){function t(n,i,r){var s=e.call(this,n,t.ID,r)||this;return s.element=n,s.options=i,s.listenToQueryStateChange=!0,s.ignoreNextQuerySuccess=!1,s.needToReset=!0,s.options=b.ComponentOptions.initComponentOptions(n,t,i),s.currentPage=1,s.bind.onRootElement(o.QueryEvents.newQuery,function(e){return s.handleNewQuery(e)}),s.bind.onRootElement(o.QueryEvents.buildingQuery,function(e){return s.handleBuildingQuery(e)}),s.bind.onRootElement(o.QueryEvents.querySuccess,function(e){return s.handleQuerySuccess(e)}),s.bind.onRootElement(o.QueryEvents.queryError,function(){return s.handleQueryError()}),s.bind.onRootElement(o.QueryEvents.noResults,function(e){return s.handleNoResults(e)}),s.bind.onQueryState(u.MODEL_EVENTS.CHANGE_ONE,l.QUERY_STATE_ATTRIBUTES.FIRST,function(e){return s.handleQueryStateFirstResultChanged(e)}),s.bind.onQueryState(u.MODEL_EVENTS.CHANGE_ONE,l.QUERY_STATE_ATTRIBUTES.NUMBER_OF_RESULTS,function(e){return s.handleQueryStateNumberOfResultsPerPageChanged(e)}),s.addAlwaysActiveListeners(),s.list=document.createElement(\"ul\"),d.$$(s.list).addClass(\"coveo-pager-list\"),n.appendChild(s.list),s}return i(t,e),Object.defineProperty(t.prototype,\"currentPage\",{get:function(){return this._currentPage},set:function(e){var t=e;isNaN(e)&&(this.logger.warn(\"Unable to set pager current page to an invalid value: \"+e+\". Resetting to 1.\"),t=1),t=Math.max(Math.min(t,this.getMaxNumberOfPagesForCurrentResultsPerPage()),1),t=Math.floor(t),this._currentPage=t},enumerable:!0,configurable:!0}),t.prototype.setPage=function(e,t){void 0===t&&(t=g.analyticsActionCauseList.pagerNumber),a.Assert.exists(e),this.currentPage=e,this.updateQueryStateModel(this.getFirstResultNumber(this.currentPage)),this.usageAnalytics.logCustomEvent(t,{pagerNumber:this.currentPage},this.element),this.queryController.executeQuery({ignoreWarningSearchEvent:!0,keepLastSearchUid:!0,origin:this})},t.prototype.previousPage=function(){this.setPage(this.currentPage-1,g.analyticsActionCauseList.pagerPrevious)},t.prototype.nextPage=function(){this.setPage(this.currentPage+1,g.analyticsActionCauseList.pagerNext)},t.prototype.addAlwaysActiveListeners=function(){var e=this;this.searchInterface.element.addEventListener(r.ResultListEvents.newResultsDisplayed,function(){return f.ResultListUtils.hideIfInfiniteScrollEnabled(e)})},t.prototype.getMaxNumberOfPagesForCurrentResultsPerPage=function(){return Math.ceil(this.options.maximumNumberOfResultsFromIndex/this.searchInterface.resultsPerPage)},t.prototype.handleNewQuery=function(e){var n=e&&e.origin&&(e.origin.type==t.ID||\"Debug\"==e.origin.type);this.needToReset&&!n&&(this.currentPage=1,this.updateQueryStateModel(this.getFirstResultNumber(this.currentPage))),this.needToReset=!0},t.prototype.updateQueryStateModel=function(e){this.listenToQueryStateChange=!1,this.queryStateModel.set(l.QueryStateModel.attributesEnum.first,e),this.listenToQueryStateChange=!0},t.prototype.handleQueryError=function(){this.reset()},t.prototype.handleQuerySuccess=function(e){var t=this;if(this.reset(),this.ignoreNextQuerySuccess)this.ignoreNextQuerySuccess=!1;else{a.Assert.isNotUndefined(e);var n=e.query.firstResult,i=e.results.totalCountFiltered,o=this.computePagerBoundary(n,i);if(this.currentPage=o.currentPage,o.end-o.start>0){for(var r=this,s=o.start;s<=o.end;s++)!function(e){var n=document.createElement(\"a\");d.$$(n).addClass([\"coveo-pager-list-item-text\",\"coveo-pager-anchor\"]),d.$$(n).text(e.toString(10));var i=e,o=d.$$(\"li\",{className:\"coveo-pager-list-item\",tabindex:0}).el;i===r.currentPage&&d.$$(o).addClass(\"coveo-active\");var s=function(){return t.handleClickPage(i)};(new p.AccessibleButton).withElement(o).withLabel(c.l(\"PageNumber\",e.toString(10))).withClickAction(s).withEnterKeyboardAction(s).build(),o.appendChild(n),r.list.appendChild(o)}(s);this.options.enableNavigationButton&&o.lastResultPage>1&&this.renderNavigationButton(o)}}},t.prototype.handleNoResults=function(e){var t;if(e.results.totalCount>0){var n=this.computePagerBoundary(e.results.totalCountFiltered,e.results.totalCount).lastResultPage;this.currentPage>n&&(t=n)}else this.currentPage>this.getMaxNumberOfPagesForCurrentResultsPerPage()&&(t=this.getMaxNumberOfPagesForCurrentResultsPerPage());null!=t&&(this.currentPage=t,e.retryTheQuery=!0,this.needToReset=!1,this.ignoreNextQuerySuccess=!1,this.updateQueryStateModel(this.getFirstResultNumber(this.currentPage)))},t.prototype.reset=function(){d.$$(this.list).empty()},t.prototype.handleBuildingQuery=function(e){a.Assert.exists(e);var t=this.getQueryEventArgs();e.queryBuilder.firstResult=t.first,null==e.queryBuilder.numberOfResults&&(e.queryBuilder.numberOfResults=t.count);var n=e.queryBuilder.firstResult+e.queryBuilder.numberOfResults,i=Math.max(0,n-this.options.maximumNumberOfResultsFromIndex);e.queryBuilder.numberOfResults-=i},t.prototype.computePagerBoundary=function(e,t){var n=this.searchInterface.resultsPerPage,i=Math.floor(e/n)+1,o=Math.min(Math.ceil(t/n),this.getMaxNumberOfPagesForCurrentResultsPerPage());o=Math.max(o,1);var r=Math.floor(this.options.numberOfPages/2),s=i-r;s=Math.max(s,1);var a=s+this.options.numberOfPages-1;return a=Math.min(a,o),{start:s,end:a,lastResultPage:o,currentPage:i}},t.prototype.renderNavigationButton=function(e){if(this.currentPage>1){var t=this.renderPreviousButton();this.list.insertBefore(t.el,this.list.firstChild)}if(this.currentPage<e.lastResultPage){var n=this.renderNextButton();this.list.appendChild(n.el)}},t.prototype.renderPreviousButton=function(){var e=this,t=d.$$(\"li\",{className:\"coveo-pager-previous coveo-pager-anchor coveo-pager-list-item\"}),n=d.$$(\"a\",{title:c.l(\"Previous\")}),i=d.$$(\"span\",{className:\"coveo-pager-previous-icon\"},y.SVGIcons.icons.pagerLeftArrow);return m.SVGDom.addClassToSVGInContainer(i.el,\"coveo-pager-previous-icon-svg\"),n.append(i.el),t.append(n.el),(new p.AccessibleButton).withElement(t).withLabel(c.l(\"Previous\")).withSelectAction(function(){return e.handleClickPrevious()}).build(),t},t.prototype.renderNextButton=function(){var e=this,t=d.$$(\"li\",{className:\"coveo-pager-next coveo-pager-anchor coveo-pager-list-item\"}),n=d.$$(\"a\",{title:c.l(\"Next\")}),i=d.$$(\"span\",{className:\"coveo-pager-next-icon\"},y.SVGIcons.icons.pagerRightArrow);return m.SVGDom.addClassToSVGInContainer(i.el,\"coveo-pager-next-icon-svg\"),n.append(i.el),t.append(n.el),(new p.AccessibleButton).withElement(t).withLabel(c.l(\"Next\")).withSelectAction(function(){return e.handleClickNext()}).build(),t},t.prototype.handleQueryStateFirstResultChanged=function(e){if(this.listenToQueryStateChange){a.Assert.exists(e),this.needToReset=!1;var t=e.value;this.currentPage=this.fromFirstResultsToPageNumber(t)}},t.prototype.handleQueryStateNumberOfResultsPerPageChanged=function(e){var t=this.queryStateModel.get(l.QUERY_STATE_ATTRIBUTES.FIRST);this.searchInterface.resultsPerPage=e.value,this.currentPage=this.fromFirstResultsToPageNumber(t)},t.prototype.handleClickPage=function(e){a.Assert.exists(e),this.setPage(e)},t.prototype.handleClickPrevious=function(){this.previousPage()},t.prototype.handleClickNext=function(){this.nextPage()},t.prototype.fromFirstResultsToPageNumber=function(e){return e/this.searchInterface.resultsPerPage+1},t.prototype.getFirstResultNumber=function(e){return void 0===e&&(e=this.currentPage),(e-1)*this.searchInterface.resultsPerPage},t.prototype.getQueryEventArgs=function(){return{count:this.searchInterface.resultsPerPage,first:this.getFirstResultNumber()}},t.ID=\"Pager\",t.doExport=function(){s.exportGlobally({Pager:t})},t.options={numberOfPages:b.ComponentOptions.buildNumberOption({defaultFunction:function(){return h.DeviceUtils.isMobileDevice()?3:5},min:1}),enableNavigationButton:b.ComponentOptions.buildBooleanOption({defaultValue:!0}),maxNumberOfPages:b.ComponentOptions.buildNumberOption({defaultValue:void 0,deprecated:\"This is a deprecated option. The pager will automatically adapt itself on each new query. You no longer need to specify this option. Use maximumNumberOfResultsFromIndex instead.\"}),maximumNumberOfResultsFromIndex:b.ComponentOptions.buildNumberOption({defaultValue:1e3})},t}(v.Component);t.Pager=S,C.Initialization.registerAutoCreateComponent(S)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(11),s=n(3),a=n(1),u=n(4),l=n(7),c=n(8),p=n(2),h=function(e){function t(n,i,o){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.bindings=o,s.contextContent={},s.options=c.ComponentOptions.initComponentOptions(n,t,i),s.setContext(a.$$(s.element).text().trim()),s.bind.onRootElement(r.QueryEvents.buildingQuery,function(e){return s.handleBuildingQuery(e)}),s}return i(t,e),t.prototype.setContext=function(e){if(o.isString(e)){var t=this.tryParseContextFromString(e);this.contextContent=t}else this.contextContent=e},t.prototype.getContext=function(){var e=this,t=this.getContextKeys();return o.object(t,o.map(t,function(t){return e.getContextValue(t)}))},t.prototype.setContextValue=function(e,t){this.contextContent[e]=t},t.prototype.getContextKeys=function(){return o.keys(this.contextContent)},t.prototype.getContextValue=function(e){var t=this,n=this.contextContent[e];if(o.isArray(n)){var i=[];return o.each(this.contextContent[e],function(e){i.push(t.getModifiedData(e))}),i}return o.isString(n)?this.getModifiedData(n):\"\"},t.prototype.handleBuildingQuery=function(e){var t=this,n=this.getContextKeys();o.each(n,function(n){e.queryBuilder.addContextValue(n,t.getContextValue(n))})},t.prototype.tryParseContextFromString=function(e){if(o.isEmpty(e))return{};try{return JSON.parse(u.Utils.decodeHTMLEntities(e))}catch(t){try{return JSON.parse(e)}catch(e){return this.logger.error(\"Error while trying to parse context from the PipelineContext component\",e),null}}},t.prototype.getModifiedData=function(e){return e.replace(/\\{\\!([^\\}]+)\\}/g,function(e,n){var i=n.trim();return Coveo.context&&i in Coveo.context?Coveo.context[i]:i==t.CURRENT_URL?window.location.href:\"\"})},t.ID=\"PipelineContext\",t.CURRENT_URL=\"CurrentUrl\",t.doExport=function(){s.exportGlobally({PipelineContext:t})},t}(l.Component);t.PipelineContext=h,p.Initialization.registerAutoCreateComponent(h)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(54),a=n(93),u=n(2),l=n(6),c=n(1),p=n(3),h=n(26),d=n(0);n(598);var f=n(16),m=n(12),y=function(e){function t(n,i,o,a){void 0===a&&(a=h.ModalBox);var u=e.call(this,n,t.ID,o)||this;return u.element=n,u.options=i,u.ModalBox=a,u.content=[],u.options=r.ComponentOptions.initComponentOptions(n,t,i),u.bind.onRootElement(s.SettingsEvents.settingsPopulateMenu,function(e){e.menuData.push({className:\"coveo-preferences-panel\",text:l.l(\"Preferences\"),onOpen:function(){return u.open()},onClose:function(){return u.close()},svgIcon:m.SVGIcons.icons.dropdownPreferences,svgIconClassName:\"coveo-preferences-panel-svg\"})}),u.bind.onRootElement(f.InitializationEvents.afterComponentsInitialization,function(){u.content=c.$$(u.element).children()}),u}return i(t,e),t.prototype.open=function(){var e=this;if(null==this.modalbox){var t=c.$$(\"div\");d.each(this.content,function(e){t.append(e)}),this.modalbox=this.ModalBox.open(t.el,{title:l.l(\"Preferences\"),validation:function(){return e.cleanupOnExit(),!0}})}},t.prototype.close=function(){this.modalbox&&(this.cleanupOnExit(),this.modalbox.close(),this.modalbox=null)},t.prototype.save=function(){c.$$(this.element).trigger(a.PreferencesPanelEvents.savePreferences),this.queryController.executeQuery()},t.prototype.cleanupOnExit=function(){c.$$(this.element).trigger(a.PreferencesPanelEvents.exitPreferencesWithoutSave)},t.ID=\"PreferencesPanel\",t.doExport=function(){p.exportGlobally({PreferencesPanel:t})},t.options={},t}(o.Component);t.PreferencesPanel=y,u.Initialization.registerAutoCreateComponent(y)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(8),r=n(66),s=n(2),a=n(4),u=n(1),l=n(3);n(599);var c=n(90),p=n(112),h=n(0),d=n(27),f=n(7),m=function(e){function t(n,i,r,s){var a=e.call(this,n,t.ID,r)||this;return a.element=n,a.options=i,a.bindings=r,a.result=s,a.links=[],a.options=o.ComponentOptions.initComponentOptions(n,t,i),a.options=h.extend({},a.options,a.componentOptionsModel.get(d.ComponentOptionsModel.attributesEnum.resultLink)),a.renderUri(a.element,a.result),a}return i(t,e),t.prototype.openLink=function(e){void 0===e&&(e=!0),h.last(this.links).openLink(e)},t.prototype.openLinkInNewWindow=function(e){void 0===e&&(e=!0),h.last(this.links).openLinkInNewWindow(e)},t.prototype.openLinkAsConfigured=function(e){void 0===e&&(e=!0),h.last(this.links).openLinkAsConfigured(e)},t.prototype.renderUri=function(e,t){var n=a.Utils.getFieldValue(t,\"parents\");if(n)this.renderParentsXml(e,n);else if(this.options.titleTemplate){var i=new c.ResultLink(this.buildElementForResultLink(t.printableUri),this.options,this.bindings,this.result);this.links.push(i),this.element.appendChild(i.element)}else this.renderShortenedUri()},t.prototype.buildSeparator=function(){return u.$$(\"span\",{className:\"coveo-printable-uri-separator\"},\" > \").el},t.prototype.buildHtmlToken=function(e,t){var n=e.charAt(0).toUpperCase()+e.slice(1),i=h.extend({},this.result,{clickUri:t,title:n,titleHighlights:this.getModifiedHighlightsForModifiedResultTitle(n)}),o=new c.ResultLink(this.buildElementForResultLink(n),this.options,this.bindings,i);return this.links.push(o),o.element},t.prototype.renderParentsXml=function(e,t){for(var n=a.Utils.parseXml(t),i=n.getElementsByTagName(\"parent\"),o=[],r=[],s=0;s<i.length;s++){if(s>0){var u=this.buildSeparator();r.push(u),e.appendChild(u)}var l=i.item(s),c=this.buildHtmlToken(l.getAttribute(\"name\"),l.getAttribute(\"uri\"));o.push(c),e.appendChild(c)}},t.prototype.renderShortenedUri=function(){var e;e=-1==this.result.printableUri.indexOf(\"\\\\\")?r.StringAndHoles.shortenUri(this.result.printableUri,u.$$(this.element).width()):r.StringAndHoles.shortenPath(this.result.printableUri,u.$$(this.element).width());var t=r.HighlightUtils.highlightString(e.value,this.result.printableUriHighlights,e.holes,\"coveo-highlight\"),n=h.extend({},this.result,{title:t,titleHighlights:this.getModifiedHighlightsForModifiedResultTitle(t)}),i=new c.ResultLink(this.buildElementForResultLink(this.result.printableUri),this.options,this.bindings,n);this.links.push(i),this.element.appendChild(i.element)},t.prototype.buildElementForResultLink=function(e){return u.$$(\"a\",{className:\"CoveoResultLink coveo-printable-uri-part\",title:e}).el},t.prototype.getModifiedHighlightsForModifiedResultTitle=function(e){return p.getRestHighlightsForAllTerms(e,this.result.termsToHighlight,this.result.phrasesToHighlight,new p.DefaultStreamHighlightOptions)},t.ID=\"PrintableUri\",t.options={},t.doExport=function(){l.exportGlobally({PrintableUri:t})},t}(f.Component);t.PrintableUri=m,m.options=h.extend({},m.options,c.ResultLink.options),s.Initialization.registerAutoCreateComponent(m)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(11),a=n(5),u=n(1),l=n(6),c=n(2),p=n(20),h=n(3);n(600);var d=function(e){function t(n,i,o){var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.options=r.ComponentOptions.initComponentOptions(n,t,i),a.bind.onRootElement(s.QueryEvents.querySuccess,function(e){return a.handleQuerySuccess(e)}),a.bind.onRootElement(s.QueryEvents.queryError,function(){return u.$$(a.element).hide()}),a.element.style.display=\"none\",a.textContainer=u.$$(\"span\").el,a.element.appendChild(a.textContainer),a}return i(t,e),t.prototype.handleQuerySuccess=function(e){if(!this.disabled&&e.results.results.length>0){a.Assert.exists(e);var t=[l.l(\"Duration\",this.formatQueryDuration(e.results.duration)),l.l(\"SearchAPIDuration\",this.formatQueryDuration(e.results.searchAPIDuration)),l.l(\"IndexDuration\",this.formatQueryDuration(e.results.indexDuration))].join(\"\\n\");this.textContainer.textContent=this.formatQueryDuration(e.results.duration),this.element.setAttribute(\"title\",t),this.element.style.display=\"inline\"}else this.element.style.display=\"none\"},t.prototype.formatQueryDuration=function(e){if(void 0==e)return l.l(\"Unavailable\");var t=Math.max(e/1e3,.01);return\"en\"===String.locale?l.l(\"Seconds\",p.format(t,\"n2\"),t,!0):l.l(\"Seconds\",p.format(t,\"n2\"),t)},t.ID=\"QueryDuration\",t.doExport=function(){h.exportGlobally({QueryDuration:t})},t.options={},t}(o.Component);t.QueryDuration=d,c.Initialization.registerAutoCreateComponent(d)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(601);var o=n(0),r=n(11),s=n(484),a=n(3),u=n(5),l=n(13),c=n(6),p=n(1),h=n(195),d=n(10),f=n(7),m=n(8),y=n(2);t.noResultsCssClass=\"coveo-show-if-no-results\";var g=function(e){function n(t,i,o){var s=e.call(this,t,n.ID,o)||this;return s.element=t,s.options=i,s.options=m.ComponentOptions.initComponentOptions(t,n,i),s.bind.onRootElement(r.QueryEvents.querySuccess,function(e){return s.handleQuerySuccess(e)}),s.bind.onRootElement(r.QueryEvents.queryError,function(){return s.hide()}),s.hide(),s.textContainer=p.$$(\"span\").el,p.$$(s.element).prepend(s.textContainer),s}return i(n,e),n.prototype.hide=function(){p.$$(this.element).addClass(\"coveo-hidden\")},n.prototype.show=function(){p.$$(this.element).removeClass(\"coveo-hidden\")},n.prototype.render=function(e){p.$$(this.textContainer).empty(),this.show(),this.updateNoResultsSnapshot(),this.hideNoResultsPage(),this.options.onlyDisplaySearchTips||this.updateSummaryIfResultsWereReceived(e);var t=e.results;if(null!=t.exception&&null!=t.exception.code){var n=(\"QueryException\"+t.exception.code).toLocaleString();this.textContainer.innerHTML=c.l(\"QueryException\",n)}else 0==t.results.length?(this.updateQueryTagsInNoResultsContainer(),this.displayInfoOnNoResults()):this.lastKnownGoodState=this.queryStateModel.getAttributes()},n.prototype.handleQuerySuccess=function(e){u.Assert.exists(e),this.render(e)},n.prototype.updateSummaryIfResultsWereReceived=function(e){if(e.results.results.length){var t=h.QuerySummaryUtils.htmlMessage(this.root,e);this.textContainer.innerHTML=t}},n.prototype.updateNoResultsSnapshot=function(){var e=this.getNoResultsContainer();null==this.noResultsSnapshot&&e&&(this.noResultsSnapshot=e.innerHTML)},n.prototype.updateQueryTagsInNoResultsContainer=function(){var e=this.getNoResultsContainer();e&&(e.innerHTML=this.replaceQueryTagsWithHighlightedQuery(this.noResultsSnapshot))},n.prototype.replaceQueryTagsWithHighlightedQuery=function(e){var t='<span class=\"coveo-highlight\">'+this.sanitizedQuery+\"</span>\";return h.QuerySummaryUtils.replaceQueryTags(e,t)},Object.defineProperty(n.prototype,\"sanitizedQuery\",{get:function(){return o.escape(this.queryStateModel.get(l.QueryStateModel.attributesEnum.q))},enumerable:!0,configurable:!0}),n.prototype.displayInfoOnNoResults=function(){if(this.showNoResultsPage(),this.options.enableNoResultsFoundMessage){var e=this.getNoResultsFoundMessageElement();this.textContainer.appendChild(e.el)}if(this.options.enableCancelLastAction){var t=this.getCancelLastActionElement();this.textContainer.appendChild(t.el)}if(this.options.enableSearchTips){var n=this.getSearchTipsTitleElement(),i=this.getSearchTipsListElement();this.textContainer.appendChild(n.el),this.textContainer.appendChild(i.el)}},n.prototype.hideNoResultsPage=function(){this.getAllNoResultsContainer().forEach(function(e){p.$$(e).removeClass(\"coveo-no-results\")})},n.prototype.showNoResultsPage=function(){this.getAllNoResultsContainer().forEach(function(e){p.$$(e).addClass(\"coveo-no-results\")})},n.prototype.getNoResultsContainer=function(){return p.$$(this.element).find(\".\"+t.noResultsCssClass)},n.prototype.getAllNoResultsContainer=function(){return p.$$(this.element).findAll(\".\"+t.noResultsCssClass)},n.prototype.getNoResultsFoundMessageElement=function(){var e=this.replaceQueryTagsWithHighlightedQuery(this.options.noResultsFoundMessage);return p.$$(\"div\",{className:\"coveo-query-summary-no-results-string\"},e)},n.prototype.getCancelLastActionElement=function(){var e=this,t=p.$$(\"div\",{className:\"coveo-query-summary-cancel-last\"},c.l(\"CancelLastAction\"));return t.on(\"click\",function(){e.usageAnalytics.logCustomEvent(d.analyticsActionCauseList.noResultsBack,{},e.root),e.usageAnalytics.logSearchEvent(d.analyticsActionCauseList.noResultsBack,{}),e.lastKnownGoodState?(e.queryStateModel.reset(),e.queryStateModel.setMultiple(e.lastKnownGoodState),p.$$(e.root).trigger(s.QuerySummaryEvents.cancelLastAction),e.queryController.executeQuery()):history.back()}),t},n.prototype.getSearchTipsTitleElement=function(){var e=p.$$(\"div\",{className:\"coveo-query-summary-search-tips-info\"});return e.text(c.l(\"SearchTips\")),e},n.prototype.getSearchTipsListElement=function(){var e=p.$$(\"ul\"),t=p.$$(\"li\");t.text(c.l(\"CheckSpelling\"));var n=p.$$(\"li\");if(n.text(c.l(\"TryUsingFewerKeywords\")),e.el.appendChild(t.el),e.el.appendChild(n.el),this.queryStateModel.atLeastOneFacetIsActive()){var i=p.$$(\"li\");i.text(c.l(\"SelectFewerFilters\")),e.el.appendChild(i.el)}return e},n.ID=\"QuerySummary\",n.doExport=function(){a.exportGlobally({QuerySummary:n})},n.options={onlyDisplaySearchTips:m.ComponentOptions.buildBooleanOption({defaultValue:!1}),enableNoResultsFoundMessage:m.ComponentOptions.buildBooleanOption({defaultValue:!0}),noResultsFoundMessage:m.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return c.l(\"noResultFor\",\"${query}\")},depend:\"enableNoResultsFoundMessage\",postProcessing:function(e){return o.escape(e)}}),enableCancelLastAction:m.ComponentOptions.buildBooleanOption({defaultValue:!0}),enableSearchTips:m.ComponentOptions.buildBooleanOption({defaultValue:!0})},n}(f.Component);t.QuerySummary=g,y.Initialization.registerAutoCreateComponent(g)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(91);n(602);var a=n(216),u=n(31),l=n(26),c=n(3),p=n(13),h=n(6),d=n(17),f=n(1),m=n(82),y=n(19),g=n(14),v=n(12),b=n(4),C=n(10),S=n(7),w=n(8),x=n(46),_=n(2),O=n(59),E=n(603),A=n(222),T=function(e){function t(n,i,o,r,s){void 0===s&&(s=l.ModalBox);var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.bindings=o,a.result=r,a.ModalBox=s,a.options=w.ComponentOptions.initComponentOptions(n,t,i),null==a.options.contentTemplate&&(a.options.contentTemplate=new E.DefaultQuickviewTemplate),/^\\s*$/.test(a.element.innerHTML)&&a.buildContent(),a.bindClick(r),a.bindings.resultElement&&a.bind.on(a.bindings.resultElement,u.ResultListEvents.openQuickview,function(e){e&&e.stopPropagation(),a.open()}),a}return i(t,e),t.prototype.buildContent=function(){var e=this.buildIcon(),t=this.buildCaption(),n=f.$$(\"div\");n.append(e),n.append(t),f.$$(this.element).append(n.el),this.buildTooltipIfNotInCardLayout(e,t)},t.prototype.buildIcon=function(){var e=f.$$(\"div\",{className:\"coveo-icon-for-quickview\"},v.SVGIcons.icons.quickview).el;return g.SVGDom.addClassToSVGInContainer(e,\"coveo-icon-for-quickview-svg\"),e},t.prototype.buildCaption=function(){return f.$$(\"div\",{className:\"coveo-caption-for-icon\",tabindex:0},\"Quickview\".toLocaleString()).el},t.prototype.buildTooltipIfNotInCardLayout=function(e,t){if(!this.resultsAreInCardLayout){var n=f.$$(\"div\").el;t.appendChild(n),this.buildPopper(e,t,n)}},Object.defineProperty(t.prototype,\"resultsAreInCardLayout\",{get:function(){return\"card\"===this.queryStateModel.get(p.QueryStateModel.attributesEnum.layout)},enumerable:!0,configurable:!0}),t.prototype.buildPopper=function(e,t,n){var i=new s.default(e,t,{placement:this.options.tooltipPlacement,modifiers:{preventOverflow:{boundariesElement:f.$$(this.root).el,padding:0},arrow:{element:n},offset:{offset:\"0,8\"}}});f.$$(this.element).on(\"mouseover\",function(){i.update()})},t.prototype.open=function(){var e=this;if(b.Utils.isNullOrUndefined(this.modalbox)){t.resultCurrentlyBeingRendered=this.result,document.activeElement&&document.activeElement instanceof HTMLElement&&f.$$(document.activeElement).trigger(\"blur\");var n=this.prepareOpenQuickviewObject();return this.createModalBox(n).then(function(){e.bindQuickviewEvents(n),e.animateAndOpen(),e.logUsageAnalyticsEvent(),e.queryStateModel.set(p.QueryStateModel.attributesEnum.quickview,e.getHashId()),t.resultCurrentlyBeingRendered=null})}},t.prototype.close=function(){null!=this.modalbox&&(this.modalbox.close(),this.modalbox=null)},t.prototype.getHashId=function(){return this.result.queryUid+\".\"+this.result.index+\".\"+y.StringUtils.hashCode(this.result.uniqueId)},t.prototype.logUsageAnalyticsEvent=function(){this.usageAnalytics.logClickEvent(C.analyticsActionCauseList.documentQuickview,{author:b.Utils.getFieldValue(this.result,\"author\"),documentURL:this.result.clickUri,documentTitle:this.result.title},this.result,this.element)},t.prototype.bindClick=function(e){var t=this;if(void 0===e.hasHtmlVersion||e.hasHtmlVersion||this.options.alwaysShow){var n=function(){return t.open()};(new d.AccessibleButton).withElement(this.element).withSelectAction(n).withLabel(h.l(\"Quickview\")).withOwner(this.bind).build()}else this.element.style.display=\"none\"},t.prototype.bindQuickviewEvents=function(e){var t=this;f.$$(this.modalbox.content).on(a.QuickviewEvents.quickviewLoaded,function(){return o(t,void 0,void 0,function(){var t;return r(this,function(n){switch(n.label){case 0:return[4,e.loadingAnimation];case 1:return t=n.sent(),f.$$(t).remove(),[2]}})})})},t.prototype.animateAndOpen=function(){var e=f.$$(this.modalbox.modalBox).find(\".\"+S.Component.computeCssClassName(A.QuickviewDocument));e&&_.Initialization.dispatchNamedMethodCallOrComponentCreation(\"open\",e,null)},t.prototype.createModalBox=function(e){var t=this,n=f.$$(\"div\");return n.addClass(\"coveo-computed-modal-box-content\"),e.content.then(function(e){n.append(e.el);var i=m.DomUtils.getQuickviewHeader(t.result,{showDate:t.options.showDate,title:t.options.title},t.bindings).el;return t.modalbox=t.ModalBox.open(n.el,{title:i,className:\"coveo-quick-view\",validation:function(){return t.closeQuickview(),!0},body:t.element.ownerDocument.body,sizeMod:\"big\"}),n})},t.prototype.prepareOpenQuickviewObject=function(){var e=this.options.loadingAnimation;return{loadingAnimation:e,content:this.prepareQuickviewContent(e)}},t.prototype.prepareQuickviewContent=function(e){return o(this,void 0,void 0,function(){var t,n,i,o,s=this;return r(this,function(r){switch(r.label){case 0:return[4,this.instantiateTemplateToDom()];case 1:return t=r.sent(),n=this.searchInterface.options,i={options:n,bindings:this.getBindings(),result:this.result},[4,_.Initialization.automaticallyCreateComponentsInside(t.el,i).initResult];case 2:return r.sent(),o=function(){return void 0!=t.find(\".\"+S.Component.computeCssClassName(A.QuickviewDocument))&&s.options.enableLoadingAnimation},o()&&(e instanceof HTMLElement?t.prepend(e):e instanceof Promise&&e.then(function(e){t.prepend(e)})),[2,t]}})})},t.prototype.instantiateTemplateToDom=function(){return o(this,void 0,void 0,function(){var e,t;return r(this,function(n){switch(n.label){case 0:return n.trys.push([0,2,3,6]),[4,this.options.contentTemplate.instantiateToElement(this.result)];case 1:return e=n.sent(),[3,6];case 2:return t=n.sent(),this.logger.warn(t),[3,6];case 3:return e?[3,5]:(this.logger.warn(\"An unexpected error happened while trying to render a custom template quickview, fallbacking on default quickview template...\",this.options.contentTemplate),[4,(new E.DefaultQuickviewTemplate).instantiateToElement(this.result)]);case 4:e=n.sent(),n.label=5;case 5:return[7];case 6:return[2,f.$$(e)]}})})},t.prototype.closeQuickview=function(){this.queryStateModel.set(p.QueryStateModel.attributesEnum.quickview,\"\")},t.ID=\"Quickview\",t.doExport=function(){c.exportGlobally({Quickview:t,QuickviewDocument:A.QuickviewDocument})},t.options={alwaysShow:w.ComponentOptions.buildBooleanOption({defaultValue:!1}),title:w.ComponentOptions.buildStringOption(),showDate:w.ComponentOptions.buildBooleanOption({defaultValue:!0}),enableLoadingAnimation:w.ComponentOptions.buildBooleanOption({defaultValue:!0}),contentTemplate:O.TemplateComponentOptions.buildTemplateOption({selectorAttr:\"data-template-selector\",idAttr:\"data-template-id\"}),loadingAnimation:w.ComponentOptions.buildOption(x.ComponentOptionsType.NONE,function(e){var t=e.getAttribute(\"data-loading-animation-selector\");if(null!=t){var n=f.$$(document.documentElement).find(t);if(null!=n)return f.$$(n).detach(),n}var i=e.getAttribute(\"data-loading-animation-template-id\");if(null!=i){var o=O.TemplateComponentOptions.loadResultTemplateFromId(i);if(o)return o.instantiateToElement(void 0,{checkCondition:!1})}return m.DomUtils.getBasicLoadingAnimation()}),tooltipPlacement:w.ComponentOptions.buildCustomOption(function(e){return e},{defaultValue:\"bottom\"})},t.resultCurrentlyBeingRendered=null,t}(S.Component);t.Quickview=T,_.Initialization.registerAutoCreateComponent(T)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(1),a=n(5),u=n(2),l=n(0),c=n(3);n(616);var p=function(e){function t(n,i,o,s){var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.bindings=o,a.result=s,a.options=r.ComponentOptions.initComponentOptions(n,t,i),a.initializeParentResult(),a.bindEvents(),a.buildMenuItems(),a}return i(t,e),t.prototype.show=function(){s.$$(this.element).addClass(t.SHOW_CLASS)},t.prototype.hide=function(){s.$$(this.element).removeClass(t.SHOW_CLASS)},t.prototype.initializeParentResult=function(){this.parentResult=s.$$(this.element).closest(\"CoveoResult\"),a.Assert.check(void 0!==this.parentResult,\"ResultActionsMenu needs to be a child of a Result\"),s.$$(this.parentResult).addClass(\"coveo-clickable\")},t.prototype.bindEvents=function(){var e=this;s.$$(this.parentResult).on(\"click\",function(){return e.show()}),s.$$(this.parentResult).on(\"mouseleave\",function(){return e.hide()}),this.options.openOnMouseOver&&s.$$(this.parentResult).on(\"mouseenter\",function(){return e.show()})},t.prototype.buildMenuItems=function(){var e=this;this.menuItems=[],l.forEach(s.$$(this.element).children(),function(t){e.menuItems.push(t),s.$$(t).addClass(\"coveo-result-actions-menu-menu-item\")})},t.ID=\"ResultActionsMenu\",t.doExport=function(){c.exportGlobally({ResultActionsMenu:t})},t.SHOW_CLASS=\"coveo-menu-opened\",t.options={openOnMouseOver:r.ComponentOptions.buildBooleanOption({defaultValue:!0})},t}(o.Component);t.ResultActionsMenu=p,u.Initialization.registerAutoCreateComponent(p)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(617),a=n(4),u=n(21),l=n(2),c=n(5),p=n(1),h=n(0),d=n(3);n(618);var f=n(59),m=function(e){function t(n,i,o,s,u){void 0===u&&(u=0);var l=e.call(this,n,t.ID,o)||this;return l.element=n,l.options=i,l.bindings=o,l.attachmentLevel=u,l.options=r.ComponentOptions.initComponentOptions(n,t,i),l.attachments=s.attachments,a.Utils.isNonEmptyArray(l.attachments)&&l.renderAttachments(),l}return i(t,e),t.prototype.renderAttachments=function(){var e=this;h.each(this.attachments,function(n){u.QueryUtils.setStateObjectOnQueryResult(e.queryStateModel.get(),n),u.QueryUtils.setSearchInterfaceObjectOnQueryResult(e.searchInterface,n),(e.attachmentLevel>0?e.options.subResultTemplate.instantiateToElement(n):e.options.resultTemplate.instantiateToElement(n)).then(function(i){if(e.autoCreateComponentsInsideResult(i,h.extend({},n,{attachments:[]})),p.$$(i).addClass(\"coveo-result-attachments-container\"),e.element.appendChild(i),e.attachmentHasSubAttachment(n)&&e.attachmentLevel<e.options.maximumAttachmentLevel){var o=p.$$(\"div\").el;i.appendChild(o),new t(o,e.options,e.bindings,n,e.attachmentLevel+1)}})})},t.prototype.attachmentHasSubAttachment=function(e){return!!a.Utils.isNonEmptyArray(e.attachments)||!!a.Utils.isNonEmptyArray(e.childResults)&&(e.attachments=e.childResults,!0)},t.prototype.autoCreateComponentsInsideResult=function(e,n){c.Assert.exists(e);var i=this.searchInterface.options,o={options:i,bindings:this.getBindings(),result:n};l.Initialization.automaticallyCreateComponentsInside(e,o,[t.ID])},t.ID=\"ResultAttachments\",t.doExport=function(){d.exportGlobally({ResultAttachments:t,DefaultResultAttachmentTemplate:s.DefaultResultAttachmentTemplate})},t.options={resultTemplate:f.TemplateComponentOptions.buildTemplateOption({defaultFunction:function(e){return new s.DefaultResultAttachmentTemplate}}),subResultTemplate:f.TemplateComponentOptions.buildTemplateOption({postProcessing:function(e,t){return null!=e?e:t.resultTemplate}}),maximumAttachmentLevel:r.ComponentOptions.buildNumberOption({defaultValue:5,min:0})},t}(o.Component);t.ResultAttachments=m,l.Initialization.registerAutoCreateComponent(m)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(7),a=n(8),u=n(619),l=n(4),c=n(21),p=n(2),h=n(5),d=n(1),f=n(6),m=n(0),y=n(3),g=n(10),v=n(9);n(620);var b=n(12),C=n(14),S=n(59),w=n(17),x=function(e){function t(n,i,o,r){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.result=r,s.showingMoreResults=!1,s.options=a.ComponentOptions.initComponentOptions(s.element,t,i),h.Assert.exists(r),s.buildElements(),s.renderElements(),s}return i(t,e),t.prototype.showMoreResults=function(){return o(this,void 0,void 0,function(){var e,t,n;return r(this,function(i){switch(i.label){case 0:return h.Assert.exists(this.result.moreResults),this.cancelAnyPendingShowMore(),this.moreResultsPromise=this.result.moreResults(),this.waitAnimation=d.$$(\"div\",{className:\"coveo-loading-spinner\"}).el,this.results.appendChild(this.waitAnimation),this.updateElementVisibility(),[4,this.moreResultsPromise];case 1:e=i.sent(),this.childResults=e,this.showingMoreResults=!0,this.usageAnalytics.logClickEvent(g.analyticsActionCauseList.foldingShowMore,this.getAnalyticsMetadata(),this.result,this.element),i.label=2;case 2:return i.trys.push([2,4,,5]),[4,this.displayThoseResults(e)];case 3:return i.sent(),this.updateElementVisibility(e.length),[3,5];case 4:return t=i.sent(),n=new v.Logger(this),n.warn(\"An error occured when trying to display more results\"),[3,5];case 5:return this.moreResultsPromise=void 0,d.$$(this.waitAnimation).detach(),this.waitAnimation=void 0,[2,e]}})})},t.prototype.showLessResults=function(){return o(this,void 0,void 0,function(){return r(this,function(e){switch(e.label){case 0:return this.cancelAnyPendingShowMore(),this.showingMoreResults=!1,this.usageAnalytics.logCustomEvent(g.analyticsActionCauseList.foldingShowLess,this.getAnalyticsMetadata(),this.element),[4,this.displayThoseResults(this.result.childResults)];case 1:return e.sent(),this.updateElementVisibility(),this.scrollToResultElement(),[2]}})})},t.prototype.buildElements=function(){this.buildHeader(),this.buildResults(),this.buildFooter()},t.prototype.renderElements=function(){return o(this,void 0,void 0,function(){return r(this,function(e){switch(e.label){case 0:return[4,this.displayThoseResults(this.result.childResults)];case 1:return e.sent(),this.updateElementVisibility(),d.$$(this.element.parentElement).hasClass(\"CoveoCardOverlay\")&&this.bindOverlayEvents(),0!=this.result.childResults.length||this.result.moreResults||d.$$(this.element).hide(),[2]}})})},t.prototype.buildHeader=function(){var e=d.$$(\"div\",{className:\"coveo-folding-header\"}).el;this.element.appendChild(e),void 0!=this.options.normalCaption&&void 0!=this.options.expandedCaption&&(this.normalCaption=d.$$(\"div\",{className:\"coveo-folding-normal-caption\"},this.options.normalCaption).el,e.appendChild(this.normalCaption),this.expandedCaption=d.$$(\"div\",{className:\"coveo-folding-expanded-caption\"},this.options.expandedCaption).el,e.appendChild(this.expandedCaption)),this.oneResultCaption=d.$$(\"div\",{className:\"coveo-folding-oneresult-caption\"},this.options.oneResultCaption).el,e.appendChild(this.oneResultCaption)},t.prototype.buildResults=function(){this.results=d.$$(\"div\",{className:\"coveo-folding-results\"}).el,this.element.appendChild(this.results)},t.prototype.buildFooter=function(){var e=this,t=d.$$(\"div\",{className:\"coveo-folding-footer\"}).el;if(this.element.parentElement.appendChild(t),this.result.moreResults){this.showMore=d.$$(\"div\",{className:\"coveo-folding-footer-section-for-less\"}).el,t.appendChild(this.showMore),this.showLess=d.$$(\"div\",{className:\"coveo-folding-footer-section-for-more\"}).el,t.appendChild(this.showLess);var n=d.$$(\"div\",{className:\"coveo-folding-more\"},d.$$(\"span\",{className:\"coveo-folding-footer-icon\"},b.SVGIcons.icons.arrowDown).el).el;C.SVGDom.addClassToSVGInContainer(n,\"coveo-folding-more-svg\");var i=d.$$(\"div\",{className:\"coveo-folding-less\"},d.$$(\"span\",{className:\"coveo-folding-footer-icon\"},b.SVGIcons.icons.arrowUp).el).el;C.SVGDom.addClassToSVGInContainer(i,\"coveo-folding-less-svg\");var o=d.$$(\"a\",{className:\"coveo-folding-show-more\"},this.options.moreCaption).el,r=d.$$(\"a\",{className:\"coveo-folding-show-less\"},this.options.lessCaption).el;(new w.AccessibleButton).withElement(this.showMore).withLabel(this.options.moreCaption).withSelectAction(function(){return e.showMoreResults()}).build(),(new w.AccessibleButton).withElement(this.showLess).withLabel(this.options.lessCaption).withSelectAction(function(){return e.showLessResults()}).build(),this.showMore.appendChild(o),this.showLess.appendChild(r),this.showMore.appendChild(n),this.showLess.appendChild(i)}},t.prototype.updateElementVisibility=function(e){this.normalCaption&&d.$$(this.normalCaption).toggle(!this.showingMoreResults&&this.result.childResults.length>0),this.expandedCaption&&d.$$(this.expandedCaption).toggle(this.showingMoreResults),d.$$(this.oneResultCaption).toggleClass(\"coveo-hidden\",!(e&&1==e)),this.showMore&&(d.$$(this.showMore).toggleClass(\"coveo-visible\",!this.showingMoreResults&&!l.Utils.exists(this.moreResultsPromise)),d.$$(this.showLess).toggleClass(\"coveo-visible\",this.showingMoreResults));var t=d.$$(this.element).find(\".coveo-show-if-normal\");t&&d.$$(t).toggle(!this.showingMoreResults);var n=d.$$(this.element).find(\".coveo-show-if-expanded\");n&&d.$$(n).toggle(this.showingMoreResults)},t.prototype.scrollToResultElement=function(){var e=d.$$(this.element).closest(\"CoveoResult\");window.scrollTo(0,new d.Win(window).scrollY()+e.getBoundingClientRect().top)},t.prototype.displayThoseResults=function(e){return o(this,void 0,void 0,function(){var t,n,i=this;return r(this,function(o){switch(o.label){case 0:return t=m.map(e,function(e){return i.renderChildResult(e)}),[4,Promise.all(t)];case 1:return n=o.sent(),d.$$(this.results).empty(),m.each(n,function(e){i.results.appendChild(e)}),[2,!0]}})})},t.prototype.renderChildResult=function(e){return o(this,void 0,void 0,function(){var t;return r(this,function(n){switch(n.label){case 0:return c.QueryUtils.setStateObjectOnQueryResult(this.queryStateModel.get(),e),c.QueryUtils.setSearchInterfaceObjectOnQueryResult(this.searchInterface,e),[4,this.options.resultTemplate.instantiateToElement(e,{wrapInDiv:!1,checkCondition:!1,responsiveComponents:this.searchInterface.responsiveComponents})];case 1:return t=n.sent(),d.$$(t).addClass(\"coveo-result-folding-child-result\"),d.$$(t).toggleClass(\"coveo-normal-child-result\",!this.showingMoreResults),d.$$(t).toggleClass(\"coveo-expanded-child-result\",this.showingMoreResults),[4,p.Initialization.automaticallyCreateComponentsInsideResult(t,e).initResult];case 2:return n.sent(),[2,t]}})})},t.prototype.cancelAnyPendingShowMore=function(){this.moreResultsPromise&&(this.moreResultsPromise=void 0),h.Assert.doesNotExists(this.moreResultsPromise),h.Assert.doesNotExists(this.waitAnimation)},t.prototype.bindOverlayEvents=function(){var e=this;this.bind.one(this.element.parentElement,\"openCardOverlay\",function(){e.result.moreResults&&e.showMoreResults()})},t.prototype.getAnalyticsMetadata=function(){return{documentURL:this.result.clickUri,documentTitle:this.result.title,author:l.Utils.getFieldValue(this.result,\"author\")}},t.ID=\"ResultFolding\",t.doExport=function(){y.exportGlobally({ResultFolding:t,DefaultFoldingTemplate:u.DefaultFoldingTemplate})},t.options={resultTemplate:S.TemplateComponentOptions.buildTemplateOption({defaultFunction:function(){return new u.DefaultFoldingTemplate}}),normalCaption:a.ComponentOptions.buildLocalizedStringOption(),expandedCaption:a.ComponentOptions.buildLocalizedStringOption(),moreCaption:a.ComponentOptions.buildLocalizedStringOption({postProcessing:function(e){return e||f.l(\"ShowMore\")}}),lessCaption:a.ComponentOptions.buildLocalizedStringOption({postProcessing:function(e){return e||f.l(\"ShowLess\")}}),oneResultCaption:a.ComponentOptions.buildLocalizedStringOption({postProcessing:function(e){return e||f.l(\"DisplayingTheOnlyMessage\")}})},t}(s.Component);t.ResultFolding=x,p.Initialization.registerAutoCreateComponent(x)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(623);var o,r=n(3),s=n(17),a=n(1),u=n(14),l=n(12),c=n(4),p=n(7),h=n(8),d=n(2);!function(e){e[e.Undefined=0]=\"Undefined\",e[e.Lowest=1]=\"Lowest\",e[e.Low=2]=\"Low\",e[e.Average=3]=\"Average\",e[e.Good=4]=\"Good\",e[e.Best=5]=\"Best\"}(o=t.RatingValues||(t.RatingValues={}));var f=function(e){function t(n,i,o,r){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.bindings=o,s.result=r,s.options=h.ComponentOptions.initComponentOptions(n,t,i),c.Utils.isNullOrUndefined(r.rating)||s.renderComponent(n,r.rating),s}return i(t,e),t.prototype.renderComponent=function(e,t){for(var n=1;n<=5;n++)this.renderStar(e,n<=t,n)},t.prototype.renderStar=function(e,t,n){var i,o=this,r=a.$$(e).find('a[rating-value=\"'+n+'\"]');null==r?(i=a.$$(\"a\",{className:\"coveo-result-rating-star\"},l.SVGIcons.icons.star),u.SVGDom.addClassToSVGInContainer(i.el,\"coveo-result-rating-star-svg\"),e.appendChild(i.el),this.bindings.searchInterface.options.enableCollaborativeRating&&((new s.AccessibleButton).withElement(i).withSelectAction(function(e){var t=e.currentTarget;o.rateDocument(parseInt(t.getAttribute(\"rating-value\")))}).withLabel(n.toString()).build(),i.on(\"mouseover\",function(t){var n=t.currentTarget;o.renderComponent(e,parseInt(n.getAttribute(\"rating-value\")))}),i.on(\"mouseout\",function(){o.renderComponent(e,o.result.rating)})),i.el.setAttribute(\"rating-value\",n.toString())):i=a.$$(r),i.toggleClass(\"coveo-result-rating-star-active\",t)},t.prototype.rateDocument=function(e){var t=this,n={rating:o[e],uniqueId:this.result.uniqueId};this.queryController.getEndpoint().rateDocument(n).then(function(){t.result.rating=e,t.renderComponent(t.element,e)}).catch(function(){t.logger.error(\"An error occurred while rating the item\")})},t.ID=\"ResultRating\",t.doExport=function(){r.exportGlobally({ResultRating:t})},t}(p.Component);t.ResultRating=f,d.Initialization.registerAutoCreateComponent(f)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(624);var o=n(1),r=n(4),s=n(6),a=n(7),u=n(12),l=n(3),c=n(2),p=n(8),h=function(e){function t(n,i,o,r){var s=e.call(this,n,t.ID)||this;return s.element=n,s.options=i,s.bindings=o,s.result=r,s.options=p.ComponentOptions.initComponentOptions(n,t,i),r?(s.renderComponent(),s):(s.logger.error(\"No result passed to Star Rating component.\"),s)}return i(t,e),Object.defineProperty(t.prototype,\"configuredFieldsAreValid\",{get:function(){var e=r.Utils.getFieldValue(this.result,this.options.ratingField),t=r.Utils.getFieldValue(this.result,this.options.numberOfRatingsField);void 0!==t&&(this.numberOfRatingsField=Number(t)<0?0:Number(t)||0),this.rating=Number(e)<0?0:Number(e)||0;var n=this.options.ratingScale;return n<this.rating||n<=0?(this.logger.error(\"The rating scale property is either missing or invalid.\"),!1):(this.rating=Math.floor(this.rating*(5/n)),!0)},enumerable:!0,configurable:!0}),t.prototype.renderComponent=function(){if(this.configuredFieldsAreValid){for(var e=1;e<=5;e++)this.renderStar(e<=this.rating);void 0!==this.numberOfRatingsField&&this.renderNumberOfReviews(this.numberOfRatingsField)}},t.prototype.renderStar=function(e){var t=o.$$(\"span\",{className:\"coveo-star-rating-star\"},u.SVGIcons.icons.star);t.toggleClass(\"coveo-star-rating-star-active\",e),this.element.appendChild(t.el)},t.prototype.renderNumberOfReviews=function(e){var t=o.$$(\"span\",{className:\"coveo-star-rating-label\"});t.text(e>0?\"(\"+e+\")\":s.l(\"No Ratings\")),this.element.appendChild(t.el)},t.ID=\"StarRating\",t.doExport=function(){l.exportGlobally({StarRating:t})},t.options={ratingField:p.ComponentOptions.buildFieldOption({required:!0}),numberOfRatingsField:p.ComponentOptions.buildFieldOption(),ratingScale:p.ComponentOptions.buildNumberOption({defaultValue:5,min:1,max:1e5})},t}(a.Component);t.StarRating=h,c.Initialization.registerAutoCreateComponent(h)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(625);var o=n(0),r=n(32),s=n(16),a=n(93),u=n(11),l=n(3),c=n(15),p=n(13),h=n(6),d=n(17),f=n(1),m=n(45),y=n(14),g=n(12),v=n(4),b=n(10),C=n(7),S=n(8),w=n(2),x=n(61),_=n(136),O=n(185),E=n(52),A=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;return r.element=n,r.options=i,r.bindings=o,r.preferencePanelCheckboxInput={},r.options=S.ComponentOptions.initComponentOptions(n,t,i),r.preferencePanel=f.$$(r.element).closest(C.Component.computeCssClassNameForType(\"PreferencesPanel\")),r.preferencePanel?(r.preferencePanelLocalStorage=new m.LocalStorageUtils(t.ID),r.mergeLocalPreferencesWithStaticPreferences(),r.bindPreferencePanelEvent(),r.bindBreadcrumbEvent(),r.bindQueryEvent(),r.bind.oneRootElement(s.InitializationEvents.afterComponentsInitialization,function(){return r.createDom()}),r.bind.oneQueryState(c.MODEL_EVENTS.CHANGE_ONE,p.QUERY_STATE_ATTRIBUTES.T,function(){return r.fromPreferencesToCheckboxInput()}),r):(r.logger.warn('Cannot instantiate ResultsFilterPreferences, as there is no \"CoveoPreferencesPanel\" in your page !'),r)}return i(t,e),t.prototype.createDom=function(){this.container=new _.FormGroup([],h.l(\"ResultsFilteringExpression\")).build(),this.element.appendChild(this.container),this.buildCheckboxesInput(),this.options.showAdvancedFilters&&this.buildAdvancedFilters()},t.prototype.save=function(){this.fromCheckboxInputToPreferences();var e=o.omit(this.preferences,\"tab\");this.logger.info(\"Saving preferences\",e),this.preferencePanelLocalStorage.save(e)},t.prototype.exitWithoutSave=function(){this.fromPreferencesToCheckboxInput(),this.hideAdvancedFilterBuilder()},t.prototype.bindPreferencePanelEvent=function(){var e=this;this.bind.on(this.preferencePanel,a.PreferencesPanelEvents.savePreferences,function(){return e.save()}),this.bind.on(this.preferencePanel,a.PreferencesPanelEvents.exitPreferencesWithoutSave,function(){return e.exitWithoutSave()})},t.prototype.bindBreadcrumbEvent=function(){var e=this;this.options.includeInBreadcrumb&&(this.bind.onRootElement(r.BreadcrumbEvents.populateBreadcrumb,function(t){return e.handlePopulateBreadcrumb(t)}),this.bind.onRootElement(r.BreadcrumbEvents.clearBreadcrumb,function(){return e.handleClearBreadcrumb()}))},t.prototype.bindQueryEvent=function(){var e=this;this.bind.onRootElement(u.QueryEvents.buildingQuery,function(t){return e.handleBuildingQuery(t)})},t.prototype.handleBuildingQuery=function(e){o.each(this.getActiveFilters(),function(t){v.Utils.isNonEmptyString(t.expression)&&e.queryBuilder.advancedExpression.add(t.expression)})},t.prototype.handlePopulateBreadcrumb=function(e){var t=this.getActiveFilters();if(v.Utils.isNonEmptyArray(t)){var n=f.$$(\"div\",{className:\"coveo-results-filter-preferences-breadcrumb\"}),i=f.$$(\"span\",{className:\"coveo-title\"});i.text(h.l(\"FiltersInYourPreferences\")+\":\"),n.el.appendChild(i.el);var o=f.$$(\"span\",{className:\"coveo-values\"});n.el.appendChild(o.el);for(var r=0;r<t.length;r++)o.el.appendChild(this.buildBreadcrumb(t[r]));e.breadcrumbs.push({element:n.el})}},t.prototype.handleClearBreadcrumb=function(){this.isFullBreadcrumbClear=!0,o.each(this.getActiveFilters(),function(e){e.selected=!1}),this.fromPreferencesToCheckboxInput(),this.isFullBreadcrumbClear=!1},t.prototype.buildAdvancedFilters=function(){var e=this;this.advancedFilters=f.$$(\"div\",{className:\"coveo-advanced-filters\"},h.l(\"Create\")).el,this.buildAdvancedFilterInput(),this.buildAdvancedFilterFormValidate(),this.advancedFiltersBuilder=f.$$(\"div\",{className:\"coveo-advanced-filters-builder\"}).el,this.advancedFiltersBuilder.appendChild(this.advancedFilterFormValidate),f.$$(this.advancedFilters).on(\"click\",function(){return e.openAdvancedFilterSectionOrSaveFilters()});var t=f.$$(\"a\",{href:\"https://www.coveo.com/go?dest=adminhelp70&lcid=9&context=10006\",className:\"coveo-online-help\"},\"?\"),n=f.$$(this.container).find(\".coveo-form-group-label\");t.insertAfter(n),f.$$(this.advancedFilters).insertAfter(n),this.container.appendChild(this.advancedFiltersBuilder)},t.prototype.buildAdvancedFilterInput=function(){this.advancedFiltersTextInputCaption=new E.TextInput(function(){},h.l(\"Caption\")),this.advancedFiltersTextInputCaption.getInput().setAttribute(\"required\",\"\"),this.advancedFiltersTextInputExpression=new E.TextInput(function(){},h.l(\"Expression\")),this.advancedFiltersTextInputExpression.getInput().setAttribute(\"required\",\"\"),this.advancedFiltersTabSelect=new O.MultiSelect(function(){},this.getAllTabs(),h.l(\"Tab\"))},t.prototype.buildAdvancedFilterFormValidate=function(){var e=this;this.advancedFilterFormValidate=f.$$(\"form\").el;var t=f.$$(\"input\",{type:\"submit\"}),n=f.$$(\"span\",{className:\"coveo-save\"},g.SVGIcons.icons.checkboxHookExclusionMore);y.SVGDom.addClassToSVGInContainer(n.el,\"coveo-save-svg\");var i=f.$$(\"span\",{className:\"coveo-close\"},g.SVGIcons.icons.checkboxHookExclusionMore);y.SVGDom.addClassToSVGInContainer(i.el,\"coveo-close-svg\");var r=f.$$(\"div\",{className:\"coveo-choice-container coveo-close-and-save\"});r.el.appendChild(n.el),r.el.appendChild(i.el);var s=this.advancedFiltersTextInputCaption.build();f.$$(s).addClass(\"coveo-caption\");var a=this.advancedFiltersTabSelect.build();f.$$(a).addClass(\"coveo-tab\");var u=this.advancedFiltersTextInputExpression.build();f.$$(u).addClass(\"coveo-expression\"),o.each([s,u,a,r.el,t.el],function(t){e.advancedFilterFormValidate.appendChild(t)}),n.on(\"click\",function(){t.el.click()}),i.on(\"click\",function(){e.hideAdvancedFilterBuilder()}),f.$$(this.advancedFilterFormValidate).on(\"submit\",function(t){return e.validateAndSaveAdvancedFilter(t)})},t.prototype.getAllTabs=function(){var e=C.Component.getComponentRef(\"Tab\");if(e){var t=f.$$(this.root).findAll(\".\"+C.Component.computeCssClassName(e));return o.map(t,function(e){return C.Component.get(e).options.id})}return[]},t.prototype.getPreferencesBoxInputToBuild=function(){return o.map(this.preferences,function(e){return{label:e.caption,tab:e.tab,expression:e.expression}})},t.prototype.buildCheckboxesInput=function(){var e=this;void 0!=this.preferenceContainer&&this.preferenceContainer.remove();var t=this.getPreferencesBoxInputToBuild();v.Utils.isNonEmptyArray(t)&&(this.preferenceContainer=f.$$(\"div\",{className:\"coveo-choices-container\"}).el,o.each(t,function(t){var n=new x.Checkbox(function(t){e.save();var n=e.preferences[t.getValue()];e.queryController.firstQuery||e.isFullBreadcrumbClear||(e.fromFilterToAnalyticsEvent(n,n.selected?\"selected\":\"unselected\"),e.queryController.executeQuery({closeModalBox:!1}))},t.label);f.$$(n.build()).addClass(\"coveo-choice-container\"),e.preferencePanelCheckboxInput[t.label]=n,e.preferenceContainer.appendChild(n.getElement())}),o.each(f.$$(this.preferenceContainer).findAll(\".coveo-choice-container\"),function(e){e.appendChild(f.$$(\"div\",{className:\"coveo-section coveo-section-edit-delete\"}).el)}),f.$$(this.container).append(this.preferenceContainer),this.buildEditAdvancedFilter(),this.buildDeleteAdvancedFilter(),this.fromPreferencesToCheckboxInput())},t.prototype.buildDeleteAdvancedFilter=function(){var e=this;o.each(this.preferences,function(t){if(t.custom){var n=f.$$(\"span\",{className:\"coveo-delete\"},g.SVGIcons.icons.checkboxHookExclusionMore).el;y.SVGDom.addClassToSVGInContainer(n,\"coveo-delete-svg\");var i=e.getFilterElementByCaption(t.caption);f.$$(i).find(\".coveo-section-edit-delete\").appendChild(n),f.$$(n).on(\"click\",function(){return e.confirmDelete(t,i)})}})},t.prototype.buildEditAdvancedFilter=function(){var e=this;o.each(this.preferences,function(t){if(t.custom){var n=f.$$(\"span\",{className:\"coveo-edit\"},g.SVGIcons.icons.edit);y.SVGDom.addClassToSVGInContainer(n.el,\"coveo-edit-svg\");var i=e.getFilterElementByCaption(t.caption);f.$$(i).find(\".coveo-section-edit-delete\").appendChild(n.el),n.on(\"click\",function(){return e.editElement(t,i)})}})},t.prototype.buildBreadcrumb=function(e){var t=this,n=f.$$(\"span\",{className:\"coveo-value\"}),i=f.$$(\"span\",{className:\"coveo-caption\"});i.text(e.caption),n.el.appendChild(i.el);var o=f.$$(\"span\",{className:\"coveo-clear\"},g.SVGIcons.icons.mainClear);n.el.appendChild(o.el);var r=function(){e.selected=!1,t.fromFilterToAnalyticsEvent(e,\"cleared from breadcrumb\"),t.fromPreferencesToCheckboxInput()};return(new d.AccessibleButton).withElement(n).withLabel(h.l(\"RemoveFilterOn\",e.caption)).withSelectAction(r).build(),n.el},t.prototype.confirmDelete=function(e,t){if(confirm(h.l(\"AreYouSureDeleteFilter\",e.caption,e.expression))){var n=e.selected;this.deleteFilterPreference(e,t),n&&(this.fromFilterToAnalyticsEvent(e,\"deleted\"),this.queryController.executeQuery({closeModalBox:!1}))}},t.prototype.editElement=function(e,t){var n=this.preferences[e.caption].caption,i=this.preferences[e.caption].tab,o=this.preferences[e.caption].expression;this.deleteFilterPreference(e,t),this.openAdvancedFilterSectionOrSaveFilters(),this.populateEditSection({tab:i,caption:n,expression:o})},t.prototype.populateEditSection=function(e){void 0===e&&(e={tab:[\"\"],caption:\"\",expression:\"\"}),this.advancedFiltersTextInputCaption.setValue(e.caption),this.advancedFiltersTextInputExpression.setValue(e.expression),this.advancedFiltersTabSelect.setValue(e.tab)},t.prototype.deleteFilterPreference=function(e,t){this.preferencePanelLocalStorage.remove(e.caption),delete this.preferences[e.caption],f.$$(f.$$(t).closest(\".coveo-choice-container\")).detach()},t.prototype.openAdvancedFilterSectionOrSaveFilters=function(){f.$$(this.advancedFiltersBuilder).hasClass(\"coveo-active\")?(f.$$(f.$$(this.advancedFilterFormValidate).find(\"input[type=submit]\")).trigger(\"click\"),this.hideAdvancedFilterBuilder()):(this.populateEditSection(),this.showAdvancedFilterBuilder())},t.prototype.validateAndSaveAdvancedFilter=function(e){e.preventDefault(),this.hideAdvancedFilterBuilder();var t=this.advancedFiltersTextInputCaption.getValue(),n=this.advancedFiltersTextInputExpression.getValue(),i=this.advancedFiltersTabSelect.getValue();this.preferences[t]={caption:t,custom:!0,expression:n,tab:i,selected:!0},this.buildCheckboxesInput(),this.save(),this.queryStateModel.set(p.QueryStateModel.attributesEnum.t,this.getActiveTab()),this.advancedFiltersTextInputCaption.reset(),this.advancedFiltersTextInputExpression.reset(),this.advancedFiltersTabSelect.reset(),this.container.appendChild(this.advancedFiltersBuilder),this.fromFilterToAnalyticsEvent(this.preferences[t],\"saved\"),this.queryController.executeQuery({closeModalBox:!1})},t.prototype.fromPreferencesToCheckboxInput=function(){var e=this;o.each(this.getActiveFilters(),function(t){e.preferencePanelCheckboxInput[t.caption].select()}),o.each(this.getInactiveFilters(),function(t){e.preferencePanelCheckboxInput[t.caption].reset()}),o.each(this.getDormantFilters(),function(t){e.preferencePanelCheckboxInput[t.caption].select()})},t.prototype.fromCheckboxInputToPreferences=function(){if(this.preferencePanelCheckboxInput){var e=o.map(o.filter(this.preferencePanelCheckboxInput,function(e){return e.isSelected()}),function(e){return e.getValue()});o.each(this.preferences,function(t){o.contains(e,t.caption)?t.selected=!0:t.selected=!1})}},t.prototype.getDormantFilters=function(){var e=this,t=this.getActiveTab();return o.filter(this.preferences,function(n){return n.selected&&!e.filterIsInActiveTab(n,t)})},t.prototype.getActiveFilters=function(){var e=this,t=this.getActiveTab();return o.filter(this.preferences,function(n){return n.selected&&e.filterIsInActiveTab(n,t)})},t.prototype.getInactiveFilters=function(){var e=this,t=this.getActiveTab();return o.filter(this.preferences,function(n){return!n.selected||!e.filterIsInActiveTab(n,t)})},t.prototype.getActiveTab=function(){return this.queryStateModel.get(p.QueryStateModel.attributesEnum.t)},t.prototype.filterIsInActiveTab=function(e,t){return e.tab=o.compact(e.tab),o.contains(e.tab,t)||v.Utils.isEmptyArray(e.tab)},t.prototype.getFilterElementByCaption=function(e){return f.$$(this.preferenceContainer).find(\"input[value='\"+e+\"']\").parentElement},t.prototype.fromResultsFilterOptionToResultsPreferenceInterface=function(){var e={};return o.each(this.options.filters,function(t,n){e[n]={expression:t.expression,tab:t.tab,selected:!!t.selected&&t.selected,custom:!1,caption:n}}),e},t.prototype.mergeLocalPreferencesWithStaticPreferences=function(){var e=this.fromResultsFilterOptionToResultsPreferenceInterface(),t=this.preferencePanelLocalStorage.load(),n=o.filter(t,function(t){var n=t.custom,i=o.find(e,function(e){return e.caption==t.caption});return n||void 0!=i}),i={};o.each(n,function(e){i[e.caption]={expression:e.expression,tab:e.tab,selected:e.selected,custom:e.custom,caption:e.caption}}),this.preferences=v.Utils.extendDeep(e,i)},t.prototype.fromFilterToAnalyticsEvent=function(e,t){this.usageAnalytics.logSearchEvent(b.analyticsActionCauseList.customfiltersChange,{customFilterName:e.caption,customFilterExpression:e.expression,customFilterType:t})},t.prototype.enlargeModalBox=function(){var e=f.$$(document.body).find(\".coveo-modal-container\");e&&f.$$(e).addClass(\"coveo-mod-big\")},t.prototype.shrinkModalBox=function(){var e=f.$$(document.body).find(\".coveo-modal-container\");e&&f.$$(e).removeClass(\"coveo-mod-big\")},t.prototype.showAdvancedFilterBuilder=function(){this.advancedFiltersBuilder&&(f.$$(this.advancedFiltersBuilder).addClass(\"coveo-active\"),this.enlargeModalBox())},t.prototype.hideAdvancedFilterBuilder=function(){this.advancedFiltersBuilder&&(f.$$(this.advancedFiltersBuilder).removeClass(\"coveo-active\"),this.shrinkModalBox())},t.ID=\"ResultsFiltersPreferences\",t.doExport=function(){l.exportGlobally({ResultsFiltersPreferences:t})},t.options={includeInBreadcrumb:S.ComponentOptions.buildBooleanOption({defaultValue:!0}),showAdvancedFilters:S.ComponentOptions.buildBooleanOption({defaultValue:!0}),filters:S.ComponentOptions.buildJsonOption()},t}(C.Component);t.ResultsFiltersPreferences=A,w.Initialization.registerAutoCreateComponent(A)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(626);var o=n(0),r=n(16),s=n(11),a=n(31),u=n(3),l=n(5),c=n(15),p=n(13),h=n(6),d=n(17),f=n(22),m=n(1),y=n(109),g=n(10),v=n(7),b=n(8),C=n(2),S=function(e){function t(n,i,o){var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.options=b.ComponentOptions.initComponentOptions(n,t,i),a.bind.onRootElement(r.InitializationEvents.afterInitialization,function(){return a.resolveInitialState()}),a.bind.onRootElement(s.QueryEvents.querySuccess,function(e){return a.handleQuerySuccess(e)}),a.bind.onRootElement(s.QueryEvents.queryError,function(){return a.handleQueryError()}),a.bind.onRootElement(s.QueryEvents.noResults,function(e){return a.handleNoResults()}),a.bind.onQueryState(c.MODEL_EVENTS.CHANGE_ONE,p.QUERY_STATE_ATTRIBUTES.NUMBER_OF_RESULTS,function(e){return a.handleQueryStateModelChanged(e)}),a.addAlwaysActiveListeners(),a.initComponent(),a}return i(t,e),t.prototype.setResultsPerPage=function(e,t){void 0===t&&(t=g.analyticsActionCauseList.pagerResize),l.Assert.exists(e),l.Assert.check(this.isValidChoice(e),\"The specified number of results is not available in the options.\"),this.updateResultsPerPage(e),this.updateQueryStateModelResultsPerPage(),this.logAnalyticsEvent(t),this.executeQuery()},Object.defineProperty(t.prototype,\"resultsPerPage\",{get:function(){return this.currentResultsPerPage},enumerable:!0,configurable:!0}),t.prototype.updateResultsPerPage=function(e){this.queryController.options.resultsPerPage=e,this.searchInterface.resultsPerPage=e,this.currentResultsPerPage=e},t.prototype.updateQueryStateModelResultsPerPage=function(){this.queryStateModel.set(p.QueryStateModel.attributesEnum.numberOfResults,this.currentResultsPerPage)},t.prototype.logAnalyticsEvent=function(e){this.usageAnalytics.logCustomEvent(e,{currentResultsPerPage:this.currentResultsPerPage},this.element)},t.prototype.executeQuery=function(){this.queryController.executeQuery({ignoreWarningSearchEvent:!0,keepLastSearchUid:!0,origin:this})},t.prototype.handleQueryStateModelChanged=function(e){var t=e.value;this.isValidChoice(t)?this.updateResultsPerPage(t):(this.logInvalidConfiguredChoiceWarning(t),this.resolveInitialState())},t.prototype.addAlwaysActiveListeners=function(){var e=this;this.searchInterface.element.addEventListener(a.ResultListEvents.newResultsDisplayed,function(){return y.ResultListUtils.hideIfInfiniteScrollEnabled(e)})},t.prototype.resolveInitialState=function(){this.updateResultsPerPage(this.getInitialChoice()),this.updateQueryStateModelResultsPerPage()},t.prototype.getInitialChoice=function(){var e=this.options.choicesDisplayed[0],t=this.options.initialChoice,n=this.queryStateModel.get(p.QueryStateModel.attributesEnum.numberOfResults);if(n!==p.QueryStateModel.defaultAttributes.numberOfResults&&this.isValidChoice(n))return n;if(void 0!==t){if(this.isValidChoice(t))return t;this.logInvalidConfiguredChoiceWarning(t)}return e},t.prototype.isValidChoice=function(e){return-1!==this.options.choicesDisplayed.indexOf(e)},t.prototype.logInvalidConfiguredChoiceWarning=function(e){var t=this.options.choicesDisplayed;this.logger.warn(\"The choice \"+e+\" is not within the choices displayed. Consider setting a value that is valid: \"+t+\". The first choice will be selected instead.\")},t.prototype.initComponent=function(){this.span=m.$$(\"span\",{className:\"coveo-results-per-page-text\"},h.l(\"ResultsPerPage\")).el,this.element.appendChild(this.span),this.list=m.$$(\"ul\",{className:\"coveo-results-per-page-list\"}).el,this.element.appendChild(this.list)},t.prototype.render=function(){var e=this;m.$$(this.span).removeClass(\"coveo-results-per-page-no-results\");for(var t=this.options.choicesDisplayed,n=this,i=0;i<t.length;i++)!function(){var o=m.$$(\"li\",{className:\"coveo-results-per-page-list-item\",tabindex:0}).el,r=t[i];r===n.currentResultsPerPage&&m.$$(o).addClass(\"coveo-active\");var s=function(){return e.handleClickPage(r)};(new d.AccessibleButton).withElement(o).withLabel(h.l(\"DisplayResultsPerPage\",t[i].toString())).withClickAction(s).withEnterKeyboardAction(s).build(),o.appendChild(m.$$(\"a\",{className:\"coveo-results-per-page-list-item-text\"},t[i].toString()).el),n.list.appendChild(o)}()},t.prototype.handleQueryError=function(){this.reset()},t.prototype.handleNoResults=function(){this.reset()},t.prototype.handleQuerySuccess=function(e){if(this.searchInterface.isResultsPerPageModifiedByPipeline){this.logger.info(\"Results per page was modified by backend code (query pipeline). ResultsPerPage component will be hidden\",this),this.reset();var t=this.getInitialChoice();return void this.updateResultsPerPage(t)}0!=e.results.results.length&&(this.reset(),this.render())},t.prototype.handleClickPage=function(e){l.Assert.exists(e),this.setResultsPerPage(e)},t.prototype.reset=function(){m.$$(this.span).addClass(\"coveo-results-per-page-no-results\"),m.$$(this.list).empty()},t.ID=\"ResultsPerPage\",t.doExport=function(){u.exportGlobally({ResultsPerPage:t})},t.options={choicesDisplayed:b.ComponentOptions.buildCustomListOption(function(e){var t=o.map(e,function(e){return parseInt(e,10)});return 0==t.length?null:t},{defaultFunction:function(){return f.DeviceUtils.isMobileDevice()?[10,25,50]:[10,25,50,100]}}),initialChoice:b.ComponentOptions.buildNumberOption()},t}(v.Component);t.ResultsPerPage=S,C.Initialization.registerAutoCreateComponent(S)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(627);var o=n(0),r=n(93),s=n(3),a=n(5),u=n(30),l=n(27),c=n(6),p=n(1),h=n(45),d=n(10),f=n(7),m=n(8),y=n(2),g=n(61),v=n(136),b=n(118),C=function(e){function t(n,i,o){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.bindings=o,s.preferencePanelCheckboxInputs={},s.preferencePanelRadioInputs={},s.options=m.ComponentOptions.initComponentOptions(n,t,i),s.preferencesPanel=p.$$(s.element).closest(f.Component.computeCssClassNameForType(\"PreferencesPanel\")),s.preferencePanelLocalStorage=new h.LocalStorageUtils(t.ID),a.Assert.exists(s.componentOptionsModel),a.Assert.exists(window.localStorage),a.Assert.exists(s.preferencesPanel),s.preferences=s.preferencePanelLocalStorage.load()||{},s.adjustPreferencesToComponentConfig(),m.ComponentOptions.initComponentOptions(s.element,t,s.options),s.updateComponentOptionsModel(),s.bind.on(s.preferencesPanel,r.PreferencesPanelEvents.savePreferences,function(){return s.save()}),s.bind.on(s.preferencesPanel,r.PreferencesPanelEvents.exitPreferencesWithoutSave,function(){return s.exitWithoutSave()}),s.buildCheckboxesInput(),s.buildRadiosInput(),s}return i(t,e),t.prototype.save=function(){this.fromInputToPreferences(),this.logger.info(\"Saving preferences\",this.preferences),this.preferencePanelLocalStorage.save(this.preferences),this.updateComponentOptionsModel()},t.prototype.exitWithoutSave=function(){this.fromPreferencesToCheckboxInput()},t.prototype.updateComponentOptionsModel=function(){var e=o.pick(this.preferences,\"openInOutlook\",\"alwaysOpenInNewWindow\"),t=o.pick(this.preferences,\"enableQuerySyntax\");this.componentOptionsModel.set(l.ComponentOptionsModel.attributesEnum.resultLink,e),this.componentOptionsModel.set(l.ComponentOptionsModel.attributesEnum.searchBox,t)},t.prototype.buildRadiosInput=function(){var e=this;if(this.options.enableQuerySyntax){var t=function(t){return new b.RadioButton(function(n){e.fromPreferenceChangeEventToUsageAnalyticsLog(n.isSelected()?\"selected\":\"unselected\",t),e.save(),e.queryController.executeQuery({closeModalBox:!1})},t,\"coveo-results-preferences-query-syntax\")},n=o.map([\"On\",\"Off\",\"Automatic\"],function(e){return c.l(e)}),i=o.map(n,function(n){var i=t(n);return e.preferencePanelRadioInputs[n]=i,i}),r=new v.FormGroup(i,c.l(\"EnableQuerySyntax\"));p.$$(this.element).append(r.build()),this.fromPreferencesToRadioInput()}},t.prototype.buildCheckboxesInput=function(){var e=this,t=function(t){var n=new g.Checkbox(function(n){e.fromPreferenceChangeEventToUsageAnalyticsLog(n.isSelected()?\"selected\":\"unselected\",t),e.save(),e.queryController.executeQuery({closeModalBox:!1})},t);return e.preferencePanelCheckboxInputs[t]=n,n},n=[];this.options.enableOpenInOutlook&&n.push(t(c.l(\"OpenInOutlookWhenPossible\"))),this.options.enableOpenInNewWindow&&n.push(t(c.l(\"AlwaysOpenInNewWindow\"))),this.element.appendChild(new v.FormGroup(n,c.l(\"ResultLinks\")).build()),this.fromPreferencesToCheckboxInput()},t.prototype.fromInputToPreferences=function(){var e=this;this.preferences=this.preferences||{openInOutlook:!1,alwaysOpenInNewWindow:!1,enableQuerySyntax:void 0},o.each(this.preferencePanelCheckboxInputs,function(t,n){n==c.l(\"OpenInOutlookWhenPossible\")&&(e.isSelected(c.l(\"OpenInOutlookWhenPossible\"),n,t)?e.preferences.openInOutlook=!0:null!=e.preferences.openInOutlook&&(e.preferences.openInOutlook=!1)),n==c.l(\"AlwaysOpenInNewWindow\")&&(e.isSelected(c.l(\"AlwaysOpenInNewWindow\"),n,t)?e.preferences.alwaysOpenInNewWindow=!0:null!=e.preferences.alwaysOpenInNewWindow&&(e.preferences.alwaysOpenInNewWindow=!1))}),o.each(this.preferencePanelRadioInputs,function(t,n){e.isSelected(c.l(\"On\"),n,t)&&(e.preferences.enableQuerySyntax=!0),e.isSelected(c.l(\"Off\"),n,t)&&(e.preferences.enableQuerySyntax=!1),e.isSelected(c.l(\"Automatic\"),n,t)&&delete e.preferences.enableQuerySyntax})},t.prototype.fromPreferencesToCheckboxInput=function(){this.preferences.openInOutlook&&this.preferencePanelCheckboxInputs[c.l(\"OpenInOutlookWhenPossible\")].select(!1),this.preferences.alwaysOpenInNewWindow&&this.preferencePanelCheckboxInputs[c.l(\"AlwaysOpenInNewWindow\")].select(!1)},t.prototype.fromPreferencesToRadioInput=function(){!0===this.preferences.enableQuerySyntax?this.preferencePanelRadioInputs[c.l(\"On\")].select(!1):!1===this.preferences.enableQuerySyntax?this.preferencePanelRadioInputs[c.l(\"Off\")].select(!1):this.preferencePanelRadioInputs[c.l(\"Automatic\")].select(!1)},t.prototype.fromPreferenceChangeEventToUsageAnalyticsLog=function(e,t){this.usageAnalytics.logCustomEvent(d.analyticsActionCauseList.preferencesChange,{preferenceName:t,preferenceType:e},this.element),this.usageAnalytics.logSearchEvent(d.analyticsActionCauseList.preferencesChange,{preferenceName:t,preferenceType:e})},t.prototype.adjustPreferencesToComponentConfig=function(){var e=this,t=!1;this.options.enableOpenInNewWindow||(delete this.preferences.alwaysOpenInNewWindow,t=!0),this.options.enableOpenInOutlook||(delete this.preferences.openInOutlook,t=!0),this.options.enableQuerySyntax||(delete this.preferences.enableQuerySyntax,t=!0),t&&u.Defer.defer(function(){e.save()})},t.prototype.isSelected=function(e,t,n){return e==t&&n.isSelected()},t.ID=\"ResultsPreferences\",t.doExport=function(){s.exportGlobally({ResultsPreferences:t})},t.options={enableOpenInOutlook:m.ComponentOptions.buildBooleanOption({defaultValue:!1}),enableOpenInNewWindow:m.ComponentOptions.buildBooleanOption({defaultValue:!0}),enableQuerySyntax:m.ComponentOptions.buildBooleanOption({defaultValue:!1})},t}(f.Component);t.ResultsPreferences=C,y.Initialization.registerAutoCreateComponent(C)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(628);var o=n(0),r=n(3),s=n(5),a=n(13),u=n(6),l=n(1),c=n(25),p=n(19),h=n(14),d=n(12),f=n(4),m=n(10),y=n(7),g=n(8),v=n(2),b=function(e){function t(n,i,r,a){var u=e.call(this,n,t.ID,r)||this;if(u.element=n,u.options=i,u.result=a,u.options=g.ComponentOptions.initComponentOptions(n,t,i),u.result=a||u.resolveResult(),s.Assert.exists(u.componentOptionsModel),s.Assert.exists(u.result),!u.options.field)return u.logger.error(\"You must specify a field to the ResultTagging component\"),u;var c=f.Utils.getFieldValue(u.result,u.options.field);return c&&f.Utils.isNonEmptyString(c)?u.tags=c.split(\";\"):c&&f.Utils.isNonEmptyArray(c)?u.tags=c:u.tags=[],u.tags=o.map(u.tags,function(e){return e.trim()}),u.tagZone=l.$$(\"div\",{className:\"coveo-result-tagging-tag-zone\"}).el,n.appendChild(u.tagZone),n.appendChild(u.buildTagIcon()),u.autoCompleteZone=l.$$(\"div\",{className:\"coveo-result-tagging-auto-complete-zone\"}).el,n.appendChild(u.autoCompleteZone),u.autoCompleteZone.appendChild(u.buildTextBox()),u.autoCompleteZone.appendChild(u.buildAddIcon()),u.autoCompleteZone.appendChild(u.buildClearIcon()),u.buildExistingTags(),u}return i(t,e),t.prototype.buildExistingTags=function(){var e=this;this.tags&&o.each(this.tags,function(t){e.tagZone.appendChild(e.buildTagValue(t))})},t.prototype.buildTagIcon=function(){var e=this,t=l.$$(\"div\",{className:\"coveo-result-tagging-add-tag\"}),n=l.$$(\"span\",{className:\"coveo-result-tagging-add-tag-text\"});n.text(u.l(\"EnterTag\"));var i=l.$$(\"span\",{className:\"coveo-result-tagging-add-tag-icon\"});return i.on(\"click\",function(){o.defer(function(){e.focusOnTextBox()},20)}),t.el.appendChild(i.el),t.append(n.el),t.setAttribute(\"title\",u.l(\"EnterTag\")),t.el},t.prototype.focusOnTextBox=function(){this.textBox.focus()},t.prototype.buildTagValue=function(e){var t=this,n=l.$$(\"div\",{className:\"coveo-result-tagging-coveo-tag\"});n.el.appendChild(this.buildShortenedTagWithTitle(e));var i=l.$$(\"span\",{className:\"coveo-result-tagging-delete-icon\"},d.SVGIcons.icons.checkboxHookExclusionMore);return h.SVGDom.addClassToSVGInContainer(i.el,\"coveo-result-tagging-delete-icon-svg\"),n.el.appendChild(i.el),i.on(\"click\",function(){t.doRemoveTag(n.el,e.toLowerCase())}),n.el},t.prototype.buildShortenedTagWithTitle=function(e){var t=p.StringUtils.removeMiddle(e,16,\"...\"),n=l.$$(\"a\",{title:e,href:\"javascript:void(0);\"});return n.text(t),this.bindFacetEventOnValue(n.el,e),n.el},t.prototype.buildTextBox=function(){var e=this;return this.textBox=l.$$(\"input\",{type:\"text\",className:\"coveo-add-tag-textbox\",placeholder:u.l(\"EnterTag\")}).el,this.autoCompletePopup=l.$$(\"div\",{className:t.autoCompleteClass}).el,this.autoCompleteZone.appendChild(this.autoCompletePopup),this.manageAutocompleteAutoHide(),l.$$(this.textBox).on(\"keyup\",function(t){t.keyCode==c.KEYBOARD.UP_ARROW||t.keyCode==c.KEYBOARD.DOWN_ARROW||t.keyCode==c.KEYBOARD.ENTER?e.manageUpDownEnter(t.keyCode):c.KeyboardUtils.isArrowKeyPushed(t.keyCode)||e.populateSuggestions(),l.$$(e.element).removeClass(\"coveo-error\")}),l.$$(this.textBox).on(\"click\",function(){e.populateSuggestions()}),this.textBox},t.prototype.buildAddIcon=function(){var e=this,t=l.$$(\"div\",{className:\"coveo-result-tagging-add-tag-tick-icon\"},d.SVGIcons.icons.taggingOk);h.SVGDom.addClassToSVGInContainer(t.el,\"coveo-result-tagging-add-tag-tick-icon-svg\");var n=l.$$(\"span\");return n.on(\"click\",function(){e.doAddTag()}),t.el.appendChild(n.el),t.el},t.prototype.buildClearIcon=function(){var e=this,t=l.$$(\"div\",{className:\"coveo-result-tagging-clear-icon\"},d.SVGIcons.icons.checkboxHookExclusionMore);h.SVGDom.addClassToSVGInContainer(t.el,\"coveo-result-tagging-clear-icon-svg\");var n=l.$$(\"span\");return n.on(\"click\",function(){e.textBox.value=\"\"}),t.el.appendChild(n.el),t.el},t.prototype.bindFacetEventOnValue=function(e,t){var n=this,i=a.QueryStateModel.getFacetId(this.options.field),r=this.queryStateModel.get(i),s=this.componentStateModel.get(i),u=o.filter(s,function(e){return!e.disabled}).length>0;null!=r&&u&&(l.$$(e).on(\"click\",function(){o.contains(r,t)?n.queryStateModel.set(i,o.without(r,t)):n.queryStateModel.set(i,o.union(r,[t])),n.queryController.deferExecuteQuery({beforeExecuteQuery:function(){return n.usageAnalytics.logSearchEvent(m.analyticsActionCauseList.documentTag,{facetId:n.options.field,facetField:n.options.field,facetValue:t})}})}),o.contains(r,t)&&l.$$(e).addClass(\"coveo-selected\"),l.$$(e).addClass(\"coveo-clickable\"))},t.prototype.clearPopup=function(){l.$$(this.autoCompletePopup).hide(),l.$$(this.autoCompletePopup).empty()},t.prototype.showPopup=function(){l.$$(this.autoCompletePopup).show()},t.prototype.populateSuggestions=function(){var e=this,t=this.queryController.getEndpoint(),n=this.textBox.value,i={field:this.options.field,ignoreAccents:!0,sortCriteria:\"occurences\",maximumNumberOfValues:this.options.suggestBoxSize,queryOverride:\"@uri\",pattern:this.buildRegEx(n),patternType:\"RegularExpression\"};t.listFieldValues(i).then(function(t){e.clearPopup(),o.each(t,function(t){e.autoCompletePopup.appendChild(e.buildSelectableValue(t.lookupValue))}),e.showPopup(),e.autoCompletePopup.style.width=e.textBox.offsetWidth+\" px\"})},t.prototype.manageAutocompleteAutoHide=function(){var e,n=this;l.$$(this.textBox).on(\"mouseover\",function(){clearTimeout(e)}),l.$$(this.autoCompletePopup).on(\"mouseout\",function(i){l.$$(i.target).hasClass(t.autoCompleteClass)&&(e=setTimeout(function(){n.clearPopup()},n.options.autoCompleteTimer))}),l.$$(this.autoCompletePopup).on(\"mouseenter\",function(){clearTimeout(e)}),l.$$(this.element).on(\"mouseenter\",function(){n.clearPopup(),l.$$(n.element).addClass(\"coveo-opened\")}),l.$$(l.$$(this.element).closest(\".CoveoResult\")).on(\"mouseleave\",function(){n.clearPopup(),\"\"==n.textBox.value&&l.$$(n.element).removeClass(\"coveo-opened\")}),l.$$(l.$$(this.element).closest(\".CoveoResult\")).on(\"focusout\",function(e){\"\"!=n.textBox.value&&l.$$(e.target).closest(\".CoveoResult\")!=l.$$(n.element).closest(\".CoveoResult\")&&l.$$(n.element).addClass(\"coveo-error\")}),l.$$(l.$$(this.element).closest(\".CoveoResult\")).on(\"focusin\",function(){l.$$(n.element).removeClass(\"coveo-error\")})},t.prototype.buildRegEx=function(e){var t=this;return\"(?=.*\"+e+\")\"+o.map(this.tags,function(e){return t.buildTermToExclude(e)}).join(\"\")+\".*\"},t.prototype.buildTermToExclude=function(e){return\"(?!^\"+e+\"$)\"},t.prototype.manageUpDownEnter=function(e){var t=l.$$(this.element).findAll(\".coveo-selectable\");if(e==c.KEYBOARD.ENTER)return void this.doAddTag();if(t.length>0){var n=this.computeNextIndex(e,t);n=Math.max(0,n),n=Math.min(t.length-1,n);var i=l.$$(t[n]);i.addClass(\"coveo-selected\"),this.textBox.value=i.text()}},t.prototype.computeNextIndex=function(e,t){var n=0;return o.each(t,function(t,i){l.$$(t).hasClass(\"coveo-selected\")&&(e==c.KEYBOARD.UP_ARROW?n=i-1:e==c.KEYBOARD.DOWN_ARROW&&(n=i+1),l.$$(t).removeClass(\"coveo-selected\"))}),n},t.prototype.buildSelectableValue=function(e){var t=this,n=l.$$(\"div\",{className:\"coveo-selectable\"});return n.el.appendChild(this.buildShortenedTagWithTitle(e)),n.on(\"click\",function(){t.doAddTagWithValue(e)}),n.el},t.prototype.doRemoveTag=function(e,t){var n=this,i={fieldName:this.options.field,fieldValue:t,doAdd:!1,uniqueId:this.result.uniqueId};this.queryController.getEndpoint().tagDocument(i).then(function(){n.tags.splice(o.indexOf(n.tags,t),1),l.$$(e).detach()})},t.prototype.doAddTagWithValue=function(e){var t=this;o.each(e.split(\",\"),function(e){t.doAddSingleTagValue(e)})},t.prototype.doAddSingleTagValue=function(e){var t=this;if(this.clearPopup(),o.indexOf(this.tags,e)>-1)return void l.$$(this.element).addClass(\"coveo-error\");this.tags.push(e);var n={fieldName:this.options.field,fieldValue:e,doAdd:!0,uniqueId:this.result.uniqueId};this.queryController.getEndpoint().tagDocument(n).then(function(){t.tagZone.appendChild(t.buildTagValue(e)),t.textBox.value=\"\",l.$$(t.element).removeClass(\"coveo-error\")}).catch(function(){t.tags=o.without(t.tags,o.findWhere(t.tags,e))})},t.prototype.doAddTag=function(){var e=f.Utils.trim(this.textBox.value.toLowerCase());this.doAddTagWithValue(e)},t.ID=\"ResultTagging\",t.autoCompleteClass=\"coveo-result-tagging-auto-complete\",t.doExport=function(){r.exportGlobally({ResultTagging:t})},t.options={field:g.ComponentOptions.buildFieldOption({match:function(e){return\"Tag\"==e.type},required:!0}),suggestBoxSize:g.ComponentOptions.buildNumberOption({defaultValue:5,min:0}),autoCompleteTimer:g.ComponentOptions.buildNumberOption({defaultValue:2e3,min:0})},t.AUTO_COMPLETE_CLASS=\"coveo-result-tagging-auto-complete\",t}(y.Component);t.ResultTagging=b,v.Initialization.registerAutoCreateComponent(b)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(83),s=n(3),a=n(5),u=n(217),l=n(6),c=n(1),p=n(25),h=n(21),d=n(14),f=n(12),m=n(4),y=n(10),g=n(7),v=n(8),b=n(2),C=function(e){function t(n,i,o,s){var u=e.call(this,n,t.ID,o)||this;u.element=n,u.options=i,u.bindings=o,u.result=s,u.options=v.ComponentOptions.initComponentOptions(n,t,i),a.Assert.exists(u.result),u.container=c.$$(u.element),u.text=c.$$(\"span\");var l=u.buildIcon(),h=u.buildLoadingIcon();return u.container.append(l),u.container.append(h),u.container.append(u.text.el),u.container.on(\"click\",function(){return u.toggleFollow()}),u.container.setAttribute(\"tabindex\",\"0\"),u.bind.on(u.container,\"keyup\",p.KeyboardUtils.keypressAction(p.KEYBOARD.ENTER,function(){return u.toggleFollow()})),u.bind.onRootElement(r.SearchAlertsEvents.searchAlertsDeleted,function(e){return u.handleSubscriptionDeleted(e)}),u.bind.onRootElement(r.SearchAlertsEvents.searchAlertsCreated,function(e){return u.handleSubscriptionCreated(e)}),u.container.addClass(\"coveo-follow-item-loading\"),u.updateIsFollowed(),u}return i(t,e),t.prototype.setFollowed=function(e){this.container.removeClass(\"coveo-follow-item-loading\"),this.subscription=e,this.container.addClass(\"coveo-follow-item-followed\"),this.text.text(l.l(\"SearchAlerts_unFollowing\"))},t.prototype.setNotFollowed=function(){this.container.removeClass(\"coveo-follow-item-loading\"),this.subscription=t.buildFollowRequest(this.getId(),this.result.title,this.options),this.container.removeClass(\"coveo-follow-item-followed\"),this.text.text(l.l(\"SearchAlerts_follow\"))},t.prototype.toggleFollow=function(){var e=this;this.container.hasClass(\"coveo-follow-item-loading\")||(this.container.removeClass(\"coveo-follow-item-followed\"),this.container.addClass(\"coveo-follow-item-loading\"),this.subscription.id?(this.logAnalyticsEvent(y.analyticsActionCauseList.searchAlertsUnfollowDocument),this.queryController.getEndpoint().deleteSubscription(this.subscription).then(function(){var t={subscription:e.subscription,dom:e.element};c.$$(e.root).trigger(r.SearchAlertsEvents.searchAlertsDeleted,t)}).catch(function(){e.container.removeClass(\"coveo-follow-item-loading\");var t={dom:e.element};c.$$(e.root).trigger(r.SearchAlertsEvents.searchAlertsFail,t)})):(this.logAnalyticsEvent(y.analyticsActionCauseList.searchAlertsFollowDocument),this.queryController.getEndpoint().follow(this.subscription).then(function(t){var n={subscription:t,dom:e.element};c.$$(e.root).trigger(r.SearchAlertsEvents.searchAlertsCreated,n)}).catch(function(){e.container.removeClass(\"coveo-follow-item-loading\");var t={dom:e.element};c.$$(e.root).trigger(r.SearchAlertsEvents.searchAlertsFail,t)})))},t.prototype.getText=function(){return this.text.text()},t.prototype.updateIsFollowed=function(){var e=this;this.queryController.getEndpoint().listSubscriptions().then(function(t){if(o.isArray(t)){var n=o.find(t,function(t){var n=t.typeConfig;return n&&null!=n.id&&n.id==e.getId()});null!=n?e.setFollowed(n):e.setNotFollowed()}else e.remove()}).catch(function(){e.remove()})},t.prototype.buildIcon=function(){var e=c.$$(\"span\",{className:\"coveo-follow-item-icon\"},f.SVGIcons.icons.dropdownFollowQuery);return d.SVGDom.addClassToSVGInContainer(e.el,\"coveo-follow-item-icon-svg\"),e.el},t.prototype.buildLoadingIcon=function(){var e=c.$$(\"span\",{className:\"coveo-follow-item-icon-loading\"},f.SVGIcons.icons.loading);return d.SVGDom.addClassToSVGInContainer(e.el,\"coveo-follow-item-icon-loading-svg\"),e.el},t.prototype.handleSubscriptionDeleted=function(e){if(e.subscription&&e.subscription.type==u.SUBSCRIPTION_TYPE.followDocument){e.subscription.typeConfig.id==this.getId()&&this.setNotFollowed()}},t.prototype.handleSubscriptionCreated=function(e){if(e.subscription&&e.subscription.type==u.SUBSCRIPTION_TYPE.followDocument){e.subscription.typeConfig.id==this.getId()&&this.setFollowed(e.subscription)}},t.prototype.remove=function(){this.element.parentElement&&this.element.parentElement.removeChild(this.element)},t.prototype.getId=function(){return m.Utils.getFieldValue(this.result,\"sysurihash\")||m.Utils.getFieldValue(this.result,\"urihash\")},t.buildFollowRequest=function(e,t,n){var i={id:e,title:t};return n.modifiedDateField&&(i.modifiedDateField=n.modifiedDateField),n.watchedFields&&(i.watchedFields=n.watchedFields),{type:u.SUBSCRIPTION_TYPE.followDocument,typeConfig:i,name:t}},t.prototype.logAnalyticsEvent=function(e){this.usageAnalytics.logCustomEvent(e,{author:h.QueryUtils.getAuthor(this.result),documentLanguage:h.QueryUtils.getLanguage(this.result),documentSource:h.QueryUtils.getSource(this.result),documentTitle:this.result.title,contentIDValue:h.QueryUtils.getPermanentId(this.result).fieldValue,contentIDKey:h.QueryUtils.getPermanentId(this.result).fieldUsed},this.element)},t.ID=\"FollowItem\",t.doExport=function(){s.exportGlobally({FollowItem:t})},t.options={watchedFields:v.ComponentOptions.buildFieldsOption(),modifiedDateField:v.ComponentOptions.buildStringOption()},t}(g.Component);t.FollowItem=C,b.Initialization.registerAutoCreateComponent(C)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(0),a=n(11),u=n(83),l=n(54),c=n(26),p=n(3),h=n(5),d=n(217),f=n(6),m=n(1),y=n(12),g=n(10),v=n(7),b=n(8),C=n(2),S=n(28),w=n(69),x=n(18),_=n(629),O=function(e){function t(n,i,o,r){void 0===r&&(r=c.ModalBox);var s=e.call(this,n,t.ID,o)||this;s.element=n,s.options=i,s.ModalBox=r,s.options=b.ComponentOptions.initComponentOptions(n,t,i),s.options.enableMessage&&(s.message=new _.SearchAlertsMessage(n,{closeDelay:s.options.messageCloseDelay},s.getBindings())),s.queryController.getEndpoint().options.isGuestUser?s.logger.warn(\"Logged in as guest user, search alerts are therefore not available.\"):s.bind.onRootElement(l.SettingsEvents.settingsPopulateMenu,function(e){s.options.enableManagePanel&&e.menuData.push({text:f.l(\"SearchAlerts_Panel\"),className:\"coveo-subscriptions-panel\",onOpen:function(){return s.openPanel()},onClose:function(){return s.close()},svgIcon:y.SVGIcons.icons.dropdownFollowQuery,svgIconClassName:\"coveo-subscriptions-panel-svg\"})});var u=!1;return s.bind.onRootElement(a.QueryEvents.querySuccess,function(){u||(u=!0,s.queryController.getEndpoint().listSubscriptions().then(function(){s.bind.onRootElement(l.SettingsEvents.settingsPopulateMenu,function(e){s.options.enableFollowQuery&&e.menuData.push({text:f.l(\"SearchAlerts_followQuery\"),className:\"coveo-follow-query\",tooltip:f.l(\"FollowQueryDescription\"),onOpen:function(){return s.followQuery()},onClose:function(){},svgIcon:y.SVGIcons.icons.dropdownFollowQuery,svgIconClassName:\"coveo-follow-query-svg\"})})}).catch(function(e){if(403!=e.status)throw e}))}),s}return i(t,e),t.prototype.followQuery=function(){var e=this,t=this.queryController.createQueryBuilder({}),n=this.buildFollowQueryRequest(t.build(),this.options);this.usageAnalytics.logCustomEvent(g.analyticsActionCauseList.searchAlertsFollowQuery,{subscription:n.name},this.element),this.queryController.getEndpoint().follow(n).then(function(t){if(t){var n={subscription:t,dom:e.findQueryBoxDom()};m.$$(e.root).trigger(u.SearchAlertsEvents.searchAlertsCreated,n)}else e.triggerSearchAlertsFail()}).catch(function(){e.triggerSearchAlertsFail()})},t.prototype.openPanel=function(){return o(this,void 0,void 0,function(){var e,t,n,i,o,a,u,l,c,p,h,d,y,g,v,b=this;return r(this,function(r){switch(r.label){case 0:e=m.$$(\"div\"),t=m.$$(\"div\",{className:\"coveo-subscriptions-panel-title\"},f.l(\"SearchAlerts_Panel\")),e.append(t.el),n=m.$$(\"div\"),i=m.$$(\"table\",{className:\"coveo-subscriptions-panel-content\",cellspacing:0}),n.append(i.el),o=m.$$(\"thead\"),i.append(o.el),a=m.$$(\"tr\"),o.append(a.el),u=m.$$(\"th\",{className:\"coveo-subscriptions-panel-content-type\"},f.l(\"SearchAlerts_Type\")),l=m.$$(\"th\",null,f.l(\"SearchAlerts_Content\")),c=m.$$(\"th\",null,f.l(\"SearchAlerts_Frequency\")),p=m.$$(\"th\",{className:\"coveo-subscriptions-panel-content-actions\"},f.l(\"SearchAlerts_Actions\")),a.append(u.el),a.append(l.el),a.append(c.el),a.append(p.el),h=m.$$(\"tbody\",{className:\"coveo-subscriptions-panel-spacer\"},m.$$(\"tr\",null,m.$$(\"td\",{colsspan:3}))),i.append(h.el),d=m.$$(\"tbody\",{className:\"coveo-subscriptions-panel-subscriptions\"},m.$$(\"tr\",{className:\"coveo-subscriptions-panel-no-subscriptions\"},m.$$(\"td\",{colspan:3},f.l(\"SearchAlerts_PanelNoSearchAlerts\")))),i.append(d.el),y=\"big\",r.label=1;case 1:return r.trys.push([1,3,,4]),[4,this.queryController.getEndpoint().listSubscriptions()];case 2:return g=r.sent(),s.each(g,function(e){return b.addSearchAlert(e,n)}),[3,4];case 3:return v=r.sent(),this.logger.error(\"Error retrieving subscriptions\",v),y=\"small\",n.empty(),n.append(this.getFailureMessage().el),[3,4];case 4:return this.modal=this.ModalBox.open(n.el,{title:e.el.outerHTML,className:\"coveo-subscriptions-panel\",sizeMod:y}),[2]}})})},t.prototype.getFailureMessage=function(){return m.$$(\"div\",{className:\"coveo-subscriptions-panel-fail\"},f.l(\"SearchAlerts_Fail\"))},t.prototype.handleSearchAlertsFail=function(){if(null!=this.modal){var e=m.$$(this.modal.wrapper).find(\".coveo-modal-body\");m.$$(e).empty(),m.$$(e).append(this.getFailureMessage().el)}},t.prototype.close=function(){this.modal&&(this.modal.close(),this.modal=null)},t.prototype.addSearchAlert=function(e,t){var n,i=this,o=[{value:\"monthly\",label:f.l(\"Monthly\")},{value:\"daily\",label:f.l(\"Daily\")},{value:\"monday\",label:f.l(\"Monday\")},{value:\"tuesday\",label:f.l(\"Tuesday\")},{value:\"wednesday\",label:f.l(\"Wednesday\")},{value:\"thursday\",label:f.l(\"Thursday\")},{value:\"friday\",label:f.l(\"Friday\")},{value:\"saturday\",label:f.l(\"Saturday\")},{value:\"sunday\",label:f.l(\"Sunday\")}];if(e.name)if(\"<empty>\"==e.name)n=\"&lt;empty&gt;\";else{var r=m.$$(\"div\").el;r.innerHTML=e.name,n=m.$$(r).text()}else if(e.type==d.SUBSCRIPTION_TYPE.followQuery){var a=e.typeConfig;n=s.escape(a.query.q)||f.l(\"EmptyQuery\")}else{var a=e.typeConfig;n=s.escape(a.title||a.id)}var l=m.$$(\"tr\",{className:\"coveo-subscriptions-panel-subscription\"}),c=s.pluck(o,\"value\"),p=function(e){return s.findWhere(o,{value:e}).label},h=m.$$(\"td\",{className:\"coveo-subscriptions-panel-content-type\"},f.l(\"SearchAlerts_Type_\"+e.type)),y=m.$$(\"td\",{className:\"coveo-subscriptions-panel-context\",title:n});y.setHtml(n);var v=m.$$(\"td\",null,m.$$(\"div\",{className:\"coveo-subscriptions-panel-frequency\"},function(){return new w.Dropdown(function(t){i.usageAnalytics.logCustomEvent(g.analyticsActionCauseList.searchAlertsUpdateSubscription,{subscription:n,frequency:t.getValue()},i.element),e.frequency=t.getValue(),i.updateAndSyncSearchAlert(e)},c,p).build()}())),b=m.$$(\"td\",{className:\"coveo-subscriptions-panel-content-actions\"},null,m.$$(\"div\",{className:\"coveo-subscriptions-panel-action coveo-subscriptions-panel-action-unfollow\"},f.l(\"SearchAlerts_unFollowing\")),m.$$(\"div\",{className:\"coveo-subscriptions-panel-action coveo-subscriptions-panel-action-follow\"},f.l(\"SearchAlerts_follow\")));l.append(h.el),l.append(y.el),l.append(v.el),l.append(b.el);var C=t.find(\".coveo-subscriptions-panel-no-subscriptions\");l.insertBefore(C),v.find(\"select\").value=e.frequency,m.$$(l.find(\".coveo-subscriptions-panel-action-unfollow\")).on(\"click\",function(){l.addClass(\"coveo-subscription-unfollowed\"),i.queryController.getEndpoint().deleteSubscription(e).then(function(){e.type==d.SUBSCRIPTION_TYPE.followDocument?i.logAnalyticsEvent(g.analyticsActionCauseList.searchAlertsUnfollowDocument,e):e.type==d.SUBSCRIPTION_TYPE.followQuery&&i.logAnalyticsEvent(g.analyticsActionCauseList.searchAlertsUnfollowQuery,e),delete e.id;var t={subscription:e};m.$$(i.root).trigger(u.SearchAlertsEvents.searchAlertsDeleted,t)}).catch(function(){i.handleSearchAlertsFail()})}),m.$$(l.find(\".coveo-subscriptions-panel-action-follow\")).on(\"click\",function(){l.removeClass(\"coveo-subscription-unfollowed\"),i.queryController.getEndpoint().follow(e).then(function(t){e.type==d.SUBSCRIPTION_TYPE.followDocument?i.logAnalyticsEvent(g.analyticsActionCauseList.searchAlertsFollowDocument,e):e.type==d.SUBSCRIPTION_TYPE.followQuery&&i.logAnalyticsEvent(g.analyticsActionCauseList.searchAlertsFollowQuery,e),e.id=t.id;var n={subscription:e};m.$$(i.root).trigger(u.SearchAlertsEvents.searchAlertsCreated,n)}).catch(function(){i.handleSearchAlertsFail()})})},t.prototype.updateAndSyncSearchAlert=function(e){var t=this;this.queryController.getEndpoint().updateSubscription(e).then(function(t){return s.extend(e,t)}).catch(function(){t.handleSearchAlertsFail()})},t.prototype.triggerSearchAlertsFail=function(){var e={dom:this.findQueryBoxDom()};m.$$(this.root).trigger(u.SearchAlertsEvents.searchAlertsFail,e)},t.prototype.findQueryBoxDom=function(){var e,t=this.searchInterface.getComponents(\"Querybox\");if(t&&t.length>0)e=s.first(t).element;else{var n=this.searchInterface.getComponents(\"Omnibox\");n&&n.length>0&&(e=s.first(n).element)}return e},t.prototype.buildFollowQueryRequest=function(e,t){var n={query:e};return t.modifiedDateField&&(n.modifiedDateField=t.modifiedDateField),{type:d.SUBSCRIPTION_TYPE.followQuery,typeConfig:n,name:this.message.getFollowQueryMessage(e.q)}},t.prototype.logAnalyticsEvent=function(e,t){this.usageAnalytics.logCustomEvent(e,{subscription:t.name},this.element)},t.create=function(e,n,i){return h.Assert.exists(e),new t(e,n,S.get(i,x.SearchInterface).getBindings())},t.ID=\"SearchAlerts\",t.doExport=function(){p.exportGlobally({SearchAlerts:t,SearchAlertsMessage:_.SearchAlertsMessage})},t.options={enableManagePanel:b.ComponentOptions.buildBooleanOption({defaultValue:!0}),enableFollowQuery:b.ComponentOptions.buildBooleanOption({defaultValue:!0}),modifiedDateField:b.ComponentOptions.buildFieldOption(),enableMessage:b.ComponentOptions.buildBooleanOption({defaultValue:!0}),messageCloseDelay:b.ComponentOptions.buildNumberOption({defaultValue:2e3,min:0,depend:\"enableMessage\"})},t}(v.Component);t.SearchAlerts=O,C.Initialization.registerAutoCreateComponent(O)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0}),n(630);var r=n(3),s=n(1),a=n(14),u=n(12),l=n(631),c=n(7),p=n(8),h=n(2),d=n(184),f=n(135),m=n(186),y=n(0),g=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;return r.element=n,r.options=i,r.bindings=o,r.options=p.ComponentOptions.initComponentOptions(n,t,i),r.options.inline&&s.$$(n).addClass(\"coveo-inline\"),r.initSearchBox(),r.initSearchButton(),r.applyMagicBoxIcon(),r.applyCustomHeight(),r}return i(t,e),t.prototype.initSearchBox=function(){var e=document.createElement(\"div\");this.element.appendChild(e),this.options.enableOmnibox?this.searchbox=new d.Omnibox(e,this.options,this.bindings):this.searchbox=new f.Querybox(e,this.options,this.bindings)},t.prototype.initSearchButton=function(){if(this.options.addSearchButton){var e=s.$$(\"a\");this.element.appendChild(e.el),this.searchButton=new m.SearchButton(e.el,{searchbox:this.searchbox},this.bindings)}},t.prototype.applyMagicBoxIcon=function(){var e=s.$$(this.element).find(\".magic-box-icon\");e.innerHTML=u.SVGIcons.icons.mainClear,a.SVGDom.addClassToSVGInContainer(e,\"magic-box-clear-svg\")},t.prototype.applyCustomHeight=function(){this.options.height&&(s.$$(this.element).addClass(\"coveo-custom-height\"),l.SearchBoxResize.resize(this.element,this.options.height))},t.ID=\"Searchbox\",t.parent=d.Omnibox,t.doExport=function(){r.exportGlobally({Searchbox:t,SearchButton:m.SearchButton,Omnibox:d.Omnibox,Querybox:f.Querybox})},t.options={addSearchButton:p.ComponentOptions.buildBooleanOption({defaultValue:!0}),height:p.ComponentOptions.buildNumberOption({min:25}),enableOmnibox:p.ComponentOptions.buildBooleanOption({defaultValue:!0})},t}(c.Component);t.Searchbox=g,g.options=o({},g.options,d.Omnibox.options,f.Querybox.options),y.each(g.options,function(e,t){t in d.Omnibox.options&&!(t in f.Querybox.options)&&(g.options[t]=y.extend({depend:\"enableOmnibox\"},e))}),h.Initialization.registerAutoCreateComponent(g)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(91);n(632);var r=n(0),s=n(16),a=n(54),u=n(3),l=n(6),c=n(17),p=n(1),h=n(14),d=n(7),f=n(8),m=n(2),y=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;return r.element=n,r.options=i,r.isOpened=!1,r.options=f.ComponentOptions.initComponentOptions(n,t,i),r.bind.onRootElement(s.InitializationEvents.afterInitialization,function(){return r.init()}),r}return i(t,e),t.prototype.open=function(){this.isOpened=!0,null!=this.menu&&p.$$(this.menu).detach(),this.menu=this.buildMenu(),p.$$(this.menu).insertAfter(this.element),new o.default(this.element,this.menu,{placement:\"bottom-end\",modifiers:{offset:{offset:\"0, 5\"},preventOverflow:{boundariesElement:this.root}}})},t.prototype.close=function(){this.isOpened=!1,null!=this.menu&&(p.$$(this.menu).detach(),this.menu=null)},t.prototype.toggle=function(){this.isOpened?this.close():this.open()},t.prototype.init=function(){var e=this,t=p.$$(\"span\",{className:\"coveo-settings-square\"}).el,n=p.$$(\"span\",{className:\"coveo-settings-squares\"}).el;r.times(3,function(){return n.appendChild(t.cloneNode())}),this.element.appendChild(n),(new c.AccessibleButton).withElement(this.element).withOwner(this.bind).withSelectAction(function(){return e.toggle()}).withFocusAndMouseEnterAction(function(){return e.onfocus()}).withBlurAndMouseLeaveAction(function(){return e.onblur()}).withLabel(l.l(\"Settings\")).build()},t.prototype.buildMenu=function(){var e=this,t=p.$$(\"div\",{className:\"coveo-settings-advanced-menu\"}).el,n={settings:this,menuData:[]};return p.$$(this.root).trigger(a.SettingsEvents.settingsPopulateMenu,n),r.each(n.menuData,function(i){var o=e.buildMenuItem(i,n),r=o.menuItemElement,s=o.menuItemIcon,a=o.menuItemText;r.appendChild(s),r.appendChild(a),t.appendChild(r)}),t},t.prototype.buildMenuItem=function(e,t){var n=this,i=p.$$(\"div\",{className:\"coveo-settings-item \"+e.className}).el,o=function(){r.each(t.menuData,function(e){e.onClose&&e.onClose()}),n.close(),e.onOpen()};return(new c.AccessibleButton).withElement(i).withSelectAction(o).withFocusAndMouseEnterAction(function(){return n.onfocus()}).withBlurAndMouseLeaveAction(function(){return n.onblur()}).withLabel(e.tooltip||e.text).build(),{menuItemElement:i,menuItemIcon:this.buildMenuItemIcon(e),menuItemText:this.buildMenuItemText(e)}},t.prototype.buildMenuItemIcon=function(e){var t=p.$$(\"div\",{className:\"coveo-icon\"}).el;return e.svgIcon&&(t.innerHTML=e.svgIcon),e.svgIconClassName&&h.SVGDom.addClassToSVGInContainer(t,e.svgIconClassName),t},t.prototype.buildMenuItemText=function(e){return p.$$(\"div\",{className:\"coveo-settings-text\"},r.escape(e.text)).el},t.prototype.onblur=function(){var e=this;clearTimeout(this.closeTimeout),this.closeTimeout=window.setTimeout(function(){e.close()},this.options.menuDelay)},t.prototype.onfocus=function(){clearTimeout(this.closeTimeout)},t.ID=\"Settings\",t.doExport=function(){u.exportGlobally({Settings:t})},t.options={menuDelay:f.ComponentOptions.buildNumberOption({defaultValue:300,min:0})},t}(d.Component);t.Settings=y,m.Initialization.registerAutoCreateComponent(y)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(54),s=n(1),a=n(6),u=n(4),l=n(2),c=n(3),p=n(26);n(633);var h=n(12),d=function(e){function t(n,i,o,s){void 0===s&&(s=p.ModalBox);var u=e.call(this,n,t.ID,o)||this;return u.element=n,u.options=i,u.ModalBox=s,u.bind.onRootElement(r.SettingsEvents.settingsPopulateMenu,function(e){e.menuData.push({className:\"coveo-share-query\",text:a.l(\"ShareQuery\"),onOpen:function(){return u.open()},onClose:function(){return u.close()},svgIcon:h.SVGIcons.icons.dropdownShareQuery,svgIconClassName:\"coveo-share-query-svg\"})}),u}return i(t,e),t.prototype.open=function(){null==this.modalbox&&(this.dialogBoxContent=this.buildContent(),this.modalbox=this.ModalBox.open(this.dialogBoxContent,{title:a.l(\"ShareQuery\"),className:\"coveo-share-query-opened\"}))},t.prototype.close=function(){this.modalbox&&(this.modalbox.close(),this.modalbox=null)},t.prototype.getLinkToThisQuery=function(){return this.linkToThisQuery||this.buildLinkToThisQuery(),this.linkToThisQuery.value},t.prototype.setLinkToThisQuery=function(e){this.linkToThisQuery||this.buildLinkToThisQuery(),this.linkToThisQuery.value=e},t.prototype.getCompleteQuery=function(){return this.completeQuery||this.buildCompleteQuery(),this.completeQuery.value},t.prototype.setCompleteQuery=function(e){this.completeQuery||this.buildCompleteQuery(),this.completeQuery.value=e},t.prototype.outputIfNotNull=function(e){return e?\"(\"+e+\")\":\"\"},t.prototype.buildContent=function(){var e=s.$$(\"div\",{className:\"coveo-share-query-summary-info\"}).el,t=s.$$(\"div\",{className:\"coveo-share-query-summary-info-boxes\"}).el;return this.buildLinkToThisQuery(),this.buildCompleteQuery(),t.appendChild(this.buildTextBoxWithLabel(a.l(\"Link\"),this.linkToThisQuery)),t.appendChild(this.buildTextBoxWithLabel(a.l(\"CompleteQuery\"),this.completeQuery)),e.appendChild(t),o.Component.pointElementsToDummyForm(e),e},t.prototype.buildCompleteQuery=function(){this.completeQuery=s.$$(\"input\",{type:\"text\",className:\"coveo-share-query-summary-info-input\"}).el;var e=this.queryController.getLastQuery();this.completeQuery.value=u.Utils.trim(this.outputIfNotNull(e.q)+\" \"+this.outputIfNotNull(e.aq)+\" \"+this.outputIfNotNull(e.cq))},t.prototype.buildLinkToThisQuery=function(){var e=this;this.linkToThisQuery=s.$$(\"input\",{type:\"text\",className:\"coveo-share-query-summary-info-input\"}).el,s.$$(this.linkToThisQuery).on(\"click\",function(){return e.linkToThisQuery.select()}),this.linkToThisQuery.value=window.location.href},t.prototype.buildTextBoxWithLabel=function(e,t){var n=s.$$(\"span\",{className:\"coveo-share-query-summary-info-label\"});n.text(e);var i=s.$$(\"div\").el;return i.appendChild(n.el),i.appendChild(t),i},t.ID=\"ShareQuery\",t.options={},t.doExport=function(){c.exportGlobally({ShareQuery:t})},t}(o.Component);t.ShareQuery=d,l.Initialization.registerAutoCreateComponent(d)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(634);var o=n(0),r=n(3),s=n(11),a=n(5),u=n(15),l=n(13),c=n(1),p=n(14),h=n(12),d=n(4),f=n(120),m=n(7),y=n(8),g=n(2),v=n(483),b=n(17),C=n(6),S=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;if(r.element=n,r.options=i,r.options=y.ComponentOptions.initComponentOptions(n,t,i),a.Assert.isLargerOrEqualsThan(1,r.options.sortCriteria.length),r.bind.onQueryState(u.MODEL_EVENTS.CHANGE_ONE,l.QUERY_STATE_ATTRIBUTES.SORT,function(e){return r.handleQueryStateChanged(e)}),r.bind.onRootElement(s.QueryEvents.querySuccess,function(e){return r.handleQuerySuccess(e)}),r.bind.onRootElement(s.QueryEvents.buildingQuery,function(e){return r.handleBuildingQuery(e)}),r.bind.onRootElement(s.QueryEvents.queryError,function(e){return r.handleQueryError(e)}),r.setTextToCaptionIfDefined(),r.addAccessiblityAttributes(),r.isToggle()){r.icon=c.$$(\"span\",{className:\"coveo-icon\"}).el;var d=c.$$(\"span\",{className:\"coveo-sort-icon-ascending\"},h.SVGIcons.icons.arrowUp);p.SVGDom.addClassToSVGInContainer(d.el,\"coveo-sort-icon-ascending-svg\");var f=c.$$(\"span\",{className:\"coveo-sort-icon-descending\"},h.SVGIcons.icons.arrowDown);p.SVGDom.addClassToSVGInContainer(f.el,\"coveo-sort-icon-descending-svg\"),r.icon.appendChild(d.el),r.icon.appendChild(f.el),r.element.appendChild(r.icon)}return r.update(),r.updateAppearance(),r}return i(t,e),t.prototype.select=function(e){if(e)this.currentCriteria=o.find(this.options.sortCriteria,function(t){return t.direction==e});else if(d.Utils.exists(this.currentCriteria)){var t=o.indexOf(this.options.sortCriteria,this.currentCriteria);a.Assert.check(t>=0),this.currentCriteria=this.options.sortCriteria[(t+1)%this.options.sortCriteria.length]}else this.currentCriteria=this.options.sortCriteria[0];this.queryStateModel.set(l.QueryStateModel.attributesEnum.sort,this.currentCriteria.toString())},t.prototype.enable=function(){c.$$(this.element).removeClass(\"coveo-tab-disabled\"),this.update(),e.prototype.enable.call(this)},t.prototype.disable=function(){c.$$(this.element).addClass(\"coveo-tab-disabled\"),e.prototype.disable.call(this)},t.prototype.getCurrentCriteria=function(){return this.currentCriteria},t.prototype.match=function(e){return o.any(this.options.sortCriteria,function(t){return e==t.toString()})},t.prototype.handleQueryStateChanged=function(e){this.update()},t.prototype.update=function(){var e=this.queryStateModel.get(l.QueryStateModel.attributesEnum.sort);if(d.Utils.isNonEmptyString(e)){var t=v.SortCriteria.parse(e);this.currentCriteria=o.find(this.options.sortCriteria,function(e){return t.equals(e)})}else this.currentCriteria=null;this.updateAppearance()},t.prototype.setTextToCaptionIfDefined=function(){this.captionIsDefined&&c.$$(this.element).text(this.options.caption)},Object.defineProperty(t.prototype,\"captionIsDefined\",{get:function(){return d.Utils.isNonEmptyString(this.options.caption)},enumerable:!0,configurable:!0}),t.prototype.addAccessiblityAttributes=function(){var e=this,t=C.l(this.displayedSortText);(new b.AccessibleButton).withElement(this.element).withSelectAction(function(){return e.handleClick()}).withLabel(C.l(\"SortResultsBy\",t)).build()},Object.defineProperty(t.prototype,\"displayedSortText\",{get:function(){return this.captionIsDefined?this.options.caption:this.element.textContent},enumerable:!0,configurable:!0}),t.prototype.handleBuildingQuery=function(e){a.Assert.exists(e),(this.queryStateModel.get(l.QueryStateModel.attributesEnum.sort)==l.QueryStateModel.defaultAttributes.sort||this.isSelected())&&this.currentCriteria&&this.currentCriteria.putInQueryBuilder(e.queryBuilder)},t.prototype.handleQuerySuccess=function(e){0==e.results.results.length?c.$$(this.element).addClass(\"coveo-sort-hidden\"):c.$$(this.element).removeClass(\"coveo-sort-hidden\")},t.prototype.handleQueryError=function(e){c.$$(this.element).addClass(\"coveo-sort-hidden\")},t.prototype.handleClick=function(){var e=this,t=this.currentCriteria;this.select(),t!=this.currentCriteria&&this.queryController.deferExecuteQuery({beforeExecuteQuery:function(){return f.logSortEvent(e.usageAnalytics,e.currentCriteria.sort+e.currentCriteria.direction)}})},t.prototype.isToggle=function(){return this.options.sortCriteria.length>1},t.prototype.isSelected=function(){return d.Utils.exists(this.currentCriteria)},t.prototype.updateAppearance=function(){if(c.$$(this.element).toggleClass(\"coveo-selected\",this.isSelected()),this.isToggle()){var e=this.currentCriteria?this.currentCriteria.direction:this.options.sortCriteria[0].direction;c.$$(this.element).removeClass(\"coveo-ascending\"),c.$$(this.element).removeClass(\"coveo-descending\"),this.isSelected()&&c.$$(this.element).addClass(\"ascending\"===e?\"coveo-ascending\":\"coveo-descending\")}},t.ID=\"Sort\",t.doExport=function(){r.exportGlobally({Sort:t,SortCriteria:v.SortCriteria})},t.options={sortCriteria:y.ComponentOptions.buildCustomListOption(function(e){return o.map(e,function(e){return\"string\"==typeof e?new v.SortCriteria(e):e})},{required:!0}),caption:y.ComponentOptions.buildLocalizedStringOption({required:!0})},t}(m.Component);t.Sort=S,g.Initialization.registerAutoCreateComponent(S)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(3),s=n(5),a=n(1),u=n(7),l=n(8),c=n(2),p=n(59),h=function(e){function t(n,i,o,r){var a=e.call(this,n,t.ID,o)||this;if(a.element=n,a.options=i,a.bindings=o,a.result=r,a.options=l.ComponentOptions.initComponentOptions(n,t,i),a.result=a.result||a.resolveResult(),s.Assert.exists(a.result),null!=a.options.condition){new Function(\"obj\",\"with(obj||{}){return \"+a.options.condition+\"}\")(a.result)&&a.initialize()}else a.initialize();return a}return i(t,e),t.prototype.initialize=function(){var e=this;if(null!=this.options.template){var n=this.searchInterface.options,i={options:n,bindings:this.bindings,result:this.result},r=a.$$(this.element).parents(u.Component.computeCssClassName(t));o.each(r,function(t){var n=t.cloneNode();a.$$(n).empty();var i=n.outerHTML;s.Assert.check(-1===i.indexOf(e.element.outerHTML),\"TemplateLoader cannot load a template into itself.\")}),this.element.innerHTML=this.options.template.instantiateToString(this.result,{checkCondition:!1,responsiveComponents:this.bindings?this.bindings.searchInterface.responsiveComponents:null}),c.Initialization.automaticallyCreateComponentsInside(this.element,i)}},t.ID=\"TemplateLoader\",t.doExport=function(){r.exportGlobally({TemplateLoader:t})},t.options={template:p.TemplateComponentOptions.buildTemplateOption(),condition:l.ComponentOptions.buildStringOption()},t}(u.Component);t.TemplateLoader=h,c.Initialization.registerAutoCreateComponent(h)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(638);var o=n(3),r=n(1),s=n(7),a=n(8),u=n(2),l=function(e){function t(n,i,o){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.options=a.ComponentOptions.initComponentOptions(n,t,i),r.$$(s.element).text(s.options.value),s.element.style.fontSize=s.options.size,s.element.style.fontStyle=s.options.style,s.element.style.color=s.options.color,s.element.style.fontWeight=s.options.weight,s.element.style.textAlign=s.options.textAlign,s.element.style.marginTop=s.options.marginTop,s.element.style.marginBottom=s.options.marginBottom,s.element.style.marginRight=s.options.marginRight,s.element.style.marginLeft=s.options.marginLeft,s.element.style.paddingTop=s.options.paddingTop,s.element.style.paddingBottom=s.options.paddingBottom,s.element.style.paddingLeft=s.options.paddingLeft,s.element.style.paddingRight=s.options.paddingRight,s}return i(t,e),t.ID=\"Text\",t.doExport=function(){o.exportGlobally({Text:t})},t.options={value:a.ComponentOptions.buildLocalizedStringOption(),size:a.ComponentOptions.buildStringOption(),style:a.ComponentOptions.buildStringOption(),color:a.ComponentOptions.buildStringOption(),weight:a.ComponentOptions.buildStringOption(),textAlign:a.ComponentOptions.buildStringOption(),marginTop:a.ComponentOptions.buildStringOption(),marginBottom:a.ComponentOptions.buildStringOption(),marginLeft:a.ComponentOptions.buildStringOption(),marginRight:a.ComponentOptions.buildStringOption(),paddingTop:a.ComponentOptions.buildStringOption(),paddingBottom:a.ComponentOptions.buildStringOption(),paddingLeft:a.ComponentOptions.buildStringOption(),paddingRight:a.ComponentOptions.buildStringOption()},t}(s.Component);t.Text=l,u.Initialization.registerAutoCreateComponent(l)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(3),s=n(1),a=n(21),u=n(7),l=n(8),c=n(2),p=n(28),h=n(183),d=n(90),f=function(e){function t(n,i,o,r){var u=e.call(this,n,t.ID,o)||this;if(u.element=n,u.options=i,u.bindings=o,u.result=r,u.options=l.ComponentOptions.initOptions(n,t.options,i,t.ID),\"img\"!=u.element.tagName.toLowerCase()?(u.img=s.$$(\"img\").el,u.element.appendChild(u.img)):u.img=u.element,u.options.clickable)if(\"img\"!=u.element.tagName.toLowerCase())new d.ResultLink(u.element,u.options,u.bindings,u.result);else{var c=s.$$(\"a\");s.$$(u.element).replaceWith(c.el),s.$$(c).append(u.element),new d.ResultLink(c.el,u.options,u.bindings,u.result)}if(u.img.setAttribute(\"src\",\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\"),a.QueryUtils.hasThumbnail(r))u.buildThumbnailImage();else{u.logger.info(\"Result has no thumbnail. Cannot build thumbnail image, instanciating an Icon component instead.\");var p=new h.Icon(s.$$(\"div\").el,{small:!0},o,r);s.$$(u.element).replaceWith(p.element)}return u}return i(t,e),t.prototype.buildThumbnailImage=function(){var e=this.bindings.queryController.getEndpoint();e.isJsonp()?this.buildImageWithDirectSrcAttribute(e):this.buildImageWithBase64SrcAttribute(e)},t.prototype.buildImageWithDirectSrcAttribute=function(e){var t=e.getViewAsDatastreamUri(this.result.uniqueId,\"$Thumbnail$\",{contentType:\"image/png\"});this.img.setAttribute(\"src\",t),this.resizeContainingFieldTable()},t.prototype.buildImageWithBase64SrcAttribute=function(e){var t=this;e.getRawDataStream(this.result.uniqueId,\"$Thumbnail$\").then(function(e){var n=String.fromCharCode.apply(null,new Uint8Array(e));t.img.setAttribute(\"src\",\"data:image/png;base64, \"+btoa(n)),t.resizeContainingFieldTable()}).catch(function(){t.setEmptyThumbnailClass()})},t.prototype.resizeContainingFieldTable=function(){var e=s.$$(this.element).closest(u.Component.computeCssClassNameForType(\"FieldTable\"));if(null!=e){p.get(e).updateToggleHeight()}},t.prototype.setEmptyThumbnailClass=function(){s.$$(this.img).addClass(this.options.noThumbnailClass)},t.ID=\"Thumbnail\",t.doExport=function(){r.exportGlobally({Thumbnail:t})},t.options={noThumbnailClass:l.ComponentOptions.buildStringOption({defaultValue:\"coveo-no-thumbnail\"}),clickable:l.ComponentOptions.buildBooleanOption({defaultValue:!1})},t.parent=d.ResultLink,t}(u.Component);t.Thumbnail=f,f.options=o.extend({},d.ResultLink.options,f.options),c.Initialization.registerAutoCreateComponent(f)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(5),a=n(11),u=n(1),l=n(10),c=n(13),p=n(2),h=n(0),d=n(3);n(639);var f=function(e){function t(n,i,o,u){var l=e.call(this,n,t.ID,o)||this;return l.element=n,l.options=i,l.bindings=o,l._window=u,l._window=l._window||window,l.options=r.ComponentOptions.initComponentOptions(n,t,i),s.Assert.exists(n),s.Assert.exists(l.options),l.notifications=[],l.bind.onRootElement(a.QueryEvents.querySuccess,l.handleProcessNewQueryResults),l}return i(t,e),t.prototype.handleProcessNewQueryResults=function(e){var t=this;s.Assert.exists(e),s.Assert.exists(e.results),u.$$(this.element).empty(),this.notifications.length=0;var n=!1;if(void 0===e.results.triggers)return void u.$$(this.element).toggleClass(\"coveo-visible\",n);this.executeTriggers(e.results.triggers,\"notify\",function(e){t.usageAnalytics.logCustomEvent(l.analyticsActionCauseList.triggerNotify,{notification:e.content},t.element),t.notifications.push(e.content),t.element.appendChild(u.$$(\"div\",{className:\"coveo-trigger-notify\"},e.content).el),n=!0}),this.executeTriggers(e.results.triggers,\"redirect\",function(e){t.usageAnalytics.logCustomEvent(l.analyticsActionCauseList.triggerRedirect,{redirectedTo:e.content},t.element),t._window.location.replace(e.content)},!0),this.executeTriggers(e.results.triggers,\"query\",function(e){t.queryStateModel.set(c.QueryStateModel.attributesEnum.q,e.content),t.queryController.executeQuery({beforeExecuteQuery:function(){t.usageAnalytics.logCustomEvent(l.analyticsActionCauseList.triggerQuery,{query:e.content},t.element)}})},!0),this.executeTriggers(e.results.triggers,\"execute\",function(n){try{var i=t._window[\"\"+n.content.name];if(\"function\"==typeof i){var o=h.object(h.map(n.content.params,function(e,t){return[\"param\"+(t+1),e]}));o.element=t.element,t.usageAnalytics.logCustomEvent(l.analyticsActionCauseList.triggerExecute,{executed:n.content.name},t.element),i.apply(t._window,[o])}else t.logger.error(\"A trigger tried to call the function '\"+n.content.name+\"', which doesn't exist.\",t,e.query,n)}catch(i){t.logger.error(\"A trigger called the function '\"+n.content.name+\"', which threw an error.\",t,e.query,n)}}),u.$$(this.element).toggleClass(\"coveo-visible\",n)},t.prototype.executeTriggers=function(e,t,n,i){void 0===i&&(i=!1);var o=h.filter(e,function(e){return e.type==t}),r=h.take(o,i?1:Number.MAX_VALUE);h.each(r,n)},t.ID=\"Triggers\",t.options={},t.doExport=function(){d.exportGlobally({Triggers:t})},t}(o.Component);t.Triggers=f,p.Initialization.registerAutoCreateComponent(f)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(488);var o=n(0),r=n(32),s=n(11),a=n(3),u=n(5),l=n(9),c=n(6),p=n(17),h=n(1),d=n(14),f=n(12),m=n(10),y=n(7),g=n(8),v=n(2),b=n(43),C=n(61),S=n(640),w=function(e){function t(n,i,o){var a=e.call(this,n,t.ID,o)||this;return a.element=n,a.options=i,a.bindings=o,a.previouslySelected=[],a.groupByRequestValues=[],a.isSticky=!1,a.shouldTriggerQuery=!0,a.options=g.ComponentOptions.initComponentOptions(n,t,i),a.element.title=a.options.title,a.buildContent(),(new p.AccessibleButton).withElement(a.element).withClickAction(function(e){return a.handleClick(e)}).withEnterKeyboardAction(function(e){return a.handleKeyboardSelect(e)}).withBlurAction(function(e){return a.handleBlur(e)}).withLabel(a.options.title).build(),a.bind.onRootElement(r.BreadcrumbEvents.populateBreadcrumb,function(e){return a.handlePopulateBreadcrumb(e)}),a.bind.onRootElement(r.BreadcrumbEvents.clearBreadcrumb,function(){return a.handleClearBreadcrumb()}),a.bind.onRootElement(s.QueryEvents.buildingQuery,function(e){return a.handleBuildingQuery(e)}),a.bind.onRootElement(s.QueryEvents.doneBuildingQuery,function(e){return a.handleDoneBuildingQuery(e)}),a.bind.onRootElement(s.QueryEvents.querySuccess,function(e){return a.handleQuerySuccess(e)}),a}return i(t,e),t.simpleFilterSortCritera=function(){return[\"score\",\"occurrences\",\"alphaascending\",\"alphadescending\",\"chisquare\"]},t.prototype.getValueContainer=function(){return this.valueContainer},t.prototype.getValueCaption=function(e){var t=e;return o.contains(o.keys(this.options.valueCaption),e)?(t=this.options.valueCaption[t]||t,c.l(t)):b.FacetUtils.tryToGetTranslatedCaption(this.options.field.toString(),t)},t.prototype.getSelectedCaptions=function(){var e=this;return o.map(this.getSelectedValues(),function(t){return e.getValueCaption(t)})},t.prototype.toggleContainer=function(){h.$$(this.valueContainer).hasClass(\"coveo-simplefilter-value-container-expanded\")?this.closeContainer():this.openContainer()},t.prototype.selectValue=function(e,t){var n=this;void 0===t&&(t=!0),o.each(this.checkboxes,function(i){var o=n.getValueCaption(i.label);i.label!=e&&o!=e||i.checkbox.select(t)})},t.prototype.deselectValue=function(e){var t=this;o.each(this.checkboxes,function(n){var i=t.getValueCaption(n.label);n.label!=e&&i!=e||n.checkbox.reset()})},t.prototype.toggleValue=function(e){var t=this;o.each(this.checkboxes,function(n){var i=t.getValueCaption(n.label);n.label!=e&&i!=e||n.checkbox.toggle()})},t.prototype.resetSimpleFilter=function(){var e=this;o.each(this.checkboxes,function(t){t.checkbox.isSelected()&&e.deselectValue(t.label)})},t.prototype.openContainer=function(){h.$$(this.element).addClass(\"coveo-simplefilter-value-container-expanded\"),this.valueContainer.addClass(\"coveo-simplefilter-value-container-expanded\"),this.refreshValueContainer(),this.isSticky=!0,this.backdrop.hasClass(\"coveo-dropdown-background-active\")||this.showBackdrop()},t.prototype.closeContainer=function(){h.$$(this.element).removeClass(\"coveo-simplefilter-value-container-expanded\"),this.valueContainer.removeClass(\"coveo-simplefilter-value-container-expanded\"),this.backdrop.hasClass(\"coveo-dropdown-background-active\")&&this.hideBackdrop(),0==this.getSelectedLabeledCheckboxes().length&&(this.isSticky=!1)},t.prototype.getSelectedValues=function(){return o.map(this.getSelectedLabeledCheckboxes(),function(e){return e.label})},t.prototype.handleClick=function(e){e.stopPropagation(),e.target==this.element&&this.toggleContainer()},t.prototype.handleKeyboardSelect=function(e){e.target==this.element?this.toggleContainer():this.toggleValue(h.$$(e.target).text())},t.prototype.handleBlur=function(e){var n=e.relatedTarget;n&&(h.$$(n).parent(y.Component.computeCssClassName(t))||this.closeContainer())},t.prototype.handleValueToggle=function(e){var t=this.getSelectedValues();this.circleElement.text(t.length.toString()),this.circleElement.removeClass(\"coveo-simplefilter-circle-hidden\"),1==t.length?(this.setDisplayedTitle(this.getValueCaption(t[0])),this.element.title=this.getValueCaption(t[0])):(this.setDisplayedTitle(this.options.title),this.element.title=this.options.title,t.length<1&&this.circleElement.addClass(\"coveo-simplefilter-circle-hidden\")),0==t.length&&(this.isSticky=!1);var n=e.isSelected()?m.analyticsActionCauseList.simpleFilterSelectValue:m.analyticsActionCauseList.simpleFilterDeselectValue;this.usageAnalytics.logSearchEvent(n,{simpleFilterTitle:this.options.title,simpleFilterSelectedValue:e.label,simpleFilterField:this.options.field}),this.shouldTriggerQuery&&this.queryController.executeQuery()},t.prototype.createCheckbox=function(e){var t=this,n=new C.Checkbox(function(){t.handleValueToggle(n)},this.getValueCaption(e));return n.getElement().title=c.l(e),h.$$(n.getElement()).setAttribute(\"tabindex\",\"0\"),{checkbox:n,label:e}},t.prototype.createCheckboxes=function(){var e=this;this.previouslySelected.length>0?(this.checkboxes=o.map(this.previouslySelected,function(t){return e.createCheckbox(t)}),o.each(this.checkboxes,function(t){e.previouslySelected.indexOf(t.label)>=0&&e.selectValue(t.label,!1)})):void 0!=this.options.values?this.checkboxes=o.map(this.options.values,function(t){return e.createCheckbox(t)}):void 0!=this.groupByRequestValues&&(this.checkboxes=o.map(this.groupByRequestValues,function(t){return e.createCheckbox(t)})),\"alphaascending\"!==this.options.sortCriteria.toLocaleLowerCase()&&\"alphadescending\"!==this.options.sortCriteria.toLowerCase()||(this.checkboxes.sort(function(e,t){return e.checkbox.label.localeCompare(t.checkbox.label)}),\"alphadescending\"===this.options.sortCriteria.toLowerCase()&&this.checkboxes.reverse()),o.each(this.checkboxes,function(t){e.valueContainer.append(t.checkbox.getElement())}),this.checkboxes.length>0&&h.$$(h.$$(this.checkboxes[this.checkboxes.length-1].checkbox.getElement()).find(\".coveo-checkbox-button\")).on(\"blur\",function(){e.closeContainer()})},t.prototype.createValueContainer=function(){this.valueContainer=h.$$(\"div\",{className:\"coveo-simplefilter-value-container\"})},t.prototype.buildContent=function(){this.createValueContainer(),this.element.appendChild(this.buildSelect()),this.element.appendChild(this.valueContainer.el),this.findOrCreateWrapper().append(this.element),this.createBackdrop()},t.prototype.buildSelect=function(){var e=h.$$(\"span\",{className:\"coveo-simplefilter-select\"});return this.selectTitle=h.$$(\"span\",{className:\"coveo-simplefilter-selecttext\"},this.options.title),e.append(this.selectTitle.el),e.append(this.buildCircleElement()),e.append(this.buildSvgToggleUpIcon()),e.el},t.prototype.buildSvgToggleUpIcon=function(){var e=h.$$(\"span\",{className:\"coveo-simplefilter-toggle-svg-container\"},f.SVGIcons.icons.arrowDown).el;return d.SVGDom.addClassToSVGInContainer(e,\"coveo-simplefilter-toggle-down-svg\"),e},t.prototype.buildCircleElement=function(){return this.circleElement=h.$$(\"span\",{className:\"coveo-simplefilter-circle coveo-simplefilter-circle-hidden\"},this.getSelectedLabeledCheckboxes().length.toString()),this.circleElement.el},t.prototype.createBackdrop=function(){var e=this,t=h.$$(this.root).find(\".coveo-dropdown-background\");null==t?(this.backdrop=h.$$(\"div\",{className:\"coveo-dropdown-background\"}),this.root.appendChild(this.backdrop.el)):this.backdrop=h.$$(t),this.backdrop.on(\"click\",function(){return e.closeContainer()})},t.prototype.handlePopulateBreadcrumb=function(e){var t=this;if(this.getSelectedLabeledCheckboxes().length>0){var n=h.$$(\"div\",{className:\"coveo-simplefilter-breadcrumb\"}),i=h.$$(\"span\",{className:\"coveo-simplefilter-breadcrumb-title\"},this.options.title+\":\");n.append(i.el);var r=h.$$(\"span\",{className:\"coveo-simplefilter-breadcrumb-values\"});n.append(r.el),o.each(this.getSelectedLabeledCheckboxes(),function(e){var n=h.$$(\"span\",{className:\"coveo-simplefilter-breadcrumb-value\"},t.getValueCaption(e.label));r.append(n.el);var i=h.$$(\"span\",{className:\"coveo-simplefilter-breadcrumb-clear\"},f.SVGIcons.icons.mainClear);n.append(i.el),n.el.title=t.getValueCaption(e.label),h.$$(n).on(\"click\",function(){return t.handleRemoveFromBreadcrumb(e)})}),e.breadcrumbs.push({element:n.el})}},t.prototype.handleRemoveFromBreadcrumb=function(e){e.checkbox.reset(),this.refreshValueContainer()},t.prototype.handleClearBreadcrumb=function(){this.shouldTriggerQuery=!1,this.resetSimpleFilter(),this.shouldTriggerQuery=!0},t.prototype.handleQuerySuccess=function(e){e.results.results.length>0?this.findOrCreateWrapper().removeClass(\"coveo-no-results\"):this.findOrCreateWrapper().addClass(\"coveo-no-results\"),void 0==this.options.values&&(this.groupByBuilder.groupBy(e),this.groupByRequestValues=this.groupByBuilder.getValuesFromGroupBy(),this.refreshValueContainer(),h.$$(this.element).hasClass(\"coveo-simplefilter-value-container-expanded\")||(this.isSticky=!1))},t.prototype.handleBuildingQuery=function(e){u.Assert.exists(e),u.Assert.exists(e.queryBuilder);var t=this.getSelectedValues();t.length>0&&e.queryBuilder.advancedExpression.addFieldExpression(this.options.field.toString(),\"==\",t)},t.prototype.handleDoneBuildingQuery=function(e){void 0==this.options.values&&(u.Assert.exists(e),u.Assert.exists(e.queryBuilder),this.previouslySelected=this.getSelectedValues(),this.groupByBuilder=new S.SimpleFilterValues(this,this.options),this.groupByBuilder.handleDoneBuildingQuery(e))},t.prototype.getSelectedLabeledCheckboxes=function(){return o.filter(this.checkboxes,function(e){return e.checkbox.isSelected()})},t.prototype.setDisplayedTitle=function(e){this.selectTitle.text(this.getValueCaption(e))},t.prototype.showBackdrop=function(){this.backdrop.addClass(\"coveo-dropdown-background-active\")},t.prototype.hideBackdrop=function(){this.backdrop.removeClass(\"coveo-dropdown-background-active\")},t.prototype.findOrCreateWrapper=function(){if(null==h.$$(this.root).find(\".coveo-simplefilter-header-wrapper\")){var e=h.$$(\"div\",{className:\"coveo-simplefilter-header-wrapper\"});return e.insertBefore(this.element),e}var e=h.$$(this.root).find(\".coveo-simplefilter-header-wrapper\");return h.$$(e)},t.prototype.refreshValueContainer=function(){this.isSticky||(this.valueContainer.empty(),this.createCheckboxes()),0!=this.checkboxes.length||this.isSticky?h.$$(this.element).removeClass(\"coveo-simplefilter-empty\"):h.$$(this.element).addClass(\"coveo-simplefilter-empty\"),h.$$(this.circleElement).text(this.getSelectedLabeledCheckboxes().length.toString())},t.ID=\"SimpleFilter\",t.doExport=function(){a.exportGlobally({SimpleFilter:t})},t.options={maximumNumberOfValues:g.ComponentOptions.buildNumberOption({defaultValue:5,min:0}),values:g.ComponentOptions.buildListOption(),field:g.ComponentOptions.buildFieldOption({required:!0}),title:g.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return c.l(\"NoTitle\")}}),valueCaption:g.ComponentOptions.buildJsonOption(),sortCriteria:g.ComponentOptions.buildStringOption({postProcessing:function(e,n){var i=e||\"score\";return-1!==t.simpleFilterSortCritera().indexOf(i.toLowerCase())?i:(new l.Logger(t).warn(\"The simpleFilter component doesn't accept \"+i+\" as the value for the sortCriteria option.\",\"Available option are : \"+t.simpleFilterSortCritera().toString()),\"score\")}})},t}(y.Component);t.SimpleFilter=w,v.Initialization.registerAutoCreateComponent(w)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(123),s=n(0),a=n(3),u=n(6),l=n(1),c=n(7),p=n(8),h=n(2),d=n(181),f=n(81),m=function(e){function t(n,i,o){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.bindings=o,s.rangeValues=[{start:r(0).toDate(),end:r().endOf(\"day\").toDate(),label:u.l(\"AllDates\"),endInclusive:!1},{start:r().startOf(\"day\").subtract(1,\"day\").toDate(),end:r().endOf(\"day\").toDate(),label:u.l(\"WithinLastDay\"),endInclusive:!1},{start:r().startOf(\"day\").subtract(1,\"week\").toDate(),end:r().endOf(\"day\").toDate(),label:u.l(\"WithinLastWeek\"),endInclusive:!1},{start:r().startOf(\"day\").subtract(1,\"month\").toDate(),end:r().endOf(\"day\").toDate(),label:u.l(\"WithinLastMonth\"),endInclusive:!1},{start:r().startOf(\"day\").subtract(1,\"year\").toDate(),end:r().endOf(\"day\").toDate(),label:u.l(\"WithinLastYear\"),endInclusive:!1}],s.options=p.ComponentOptions.initComponentOptions(n,t,i),s.buildFacet(),s}return i(t,e),t.prototype.isCurrentlyDisplayed=function(){return!!l.$$(this.element).isVisible()&&!this.disabled},Object.defineProperty(t.prototype,\"ranges\",{get:function(){return this.rangeValues},set:function(e){this.rangeValues=e,this.buildFacet()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"facet\",{get:function(){return this.facetRange},enumerable:!0,configurable:!0}),t.prototype.buildFacet=function(){this.destroyFacet(),this.facetRangeElement=l.$$(\"div\"),l.$$(this.element).append(this.facetRangeElement.el),this.facetRange=new d.FacetRange(this.facetRangeElement.el,{field:this.options.field,title:this.options.title,ranges:this.rangeValues,availableSorts:[\"custom\"],customSort:s.pluck(this.rangeValues,\"label\"),id:this.options.id},this.bindings),this.facetRange.isCurrentlyDisplayed=this.isCurrentlyDisplayed},t.prototype.destroyFacet=function(){this.facetRangeElement&&this.facetRangeElement.remove(),delete this.facetRange},t.ID=\"TimespanFacet\",t.options=o({title:p.ComponentOptions.buildStringOption({defaultValue:u.l(\"LastUpdated\")}),field:p.ComponentOptions.buildFieldOption({defaultValue:\"@date\"}),id:p.ComponentOptions.buildStringOption({postProcessing:function(e,t){return e||t.field}})},f.ResponsiveFacetOptions),t.doExport=function(){a.exportGlobally({TimespanFacet:t})},t}(c.Component);t.TimespanFacet=m,h.Initialization.registerAutoCreateComponent(m)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(641);var o=n(23),r=n(3),s=n(7),a=function(e){function t(n,i,r){var s=e.call(this,n,t.ID,r)||this;return s.element=n,s.options=i,s.bindings=r,s.options=o.ComponentOptions.initComponentOptions(n,t,i),s.bind.onRootElement(o.ResultListEvents.newResultDisplayed,function(e){var t=s.buildBadge(e.result,e.item);t&&s.appendBadge(t,e.item)}),s}return i(t,e),t.prototype.buildBadge=function(e,t){if(!this.shouldShowABadge(e,t))return null;var n=o.$$(\"div\",{className:this.getClassName(e)});return this.applyTagline(e,n),this.applyColor(e,n),n},t.prototype.appendBadge=function(e,t){this.isCardLayout(t)?this.addBadgeToCardLayout(e,t):o.$$(t).prepend(e.el)},t.prototype.addBadgeToCardLayout=function(e,t){var n;null==t.parentElement?(n=o.$$(\"div\",{className:\"coveo-promoted-result-badge-container-card-layout\"}),n.insertBefore(t)):n=o.$$(t.parentElement),n.append(e.el),n.append(t)},t.prototype.applyColor=function(e,t){this.isFeatured(e)&&this.options.colorForFeaturedResults&&(t.el.style.backgroundColor=this.options.colorForFeaturedResults),this.isRecommended(e)&&this.options.colorForRecommendedResults&&(t.el.style.backgroundColor=this.options.colorForRecommendedResults)},t.prototype.applyTagline=function(e,t){if(this.isFeatured(e)&&this.options.showBadgeForFeaturedResults&&t.text(this.options.captionForFeatured),this.isRecommended(e)&&this.options.showBadgeForRecommendedResults)return t.text(this.options.captionForRecommended)},t.prototype.isFeatured=function(e){return e.isTopResult},t.prototype.isRecommended=function(e){return e.isRecommendation&&!e.isTopResult},t.prototype.isTableLayout=function(e){return o.$$(e).hasClass(\"coveo-table-layout\")},t.prototype.isCardLayout=function(e){return o.$$(e).hasClass(\"coveo-card-layout\")},t.prototype.getClassName=function(e){return\"coveo-promoted-result-badge coveo-\"+(this.isFeatured(e)?\"featured\":\"recommended\")+\"-result-badge\"},t.prototype.shouldShowABadge=function(e,t){return!this.isTableLayout(t)&&(!(!this.isFeatured(e)||!this.options.showBadgeForFeaturedResults)||!(!this.isRecommended(e)||!this.options.showBadgeForRecommendedResults))},t.ID=\"PromotedResultsBadge\",t.doExport=function(){r.exportGlobally({PromotedResultsBadge:t})},t.options={showBadgeForFeaturedResults:o.ComponentOptions.buildBooleanOption({defaultValue:!0}),showBadgeForRecommendedResults:o.ComponentOptions.buildBooleanOption({defaultValue:!1}),captionForRecommended:o.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return o.l(\"Recommended\")},depend:\"showBadgeForRecommendedResults\"}),captionForFeatured:o.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return o.l(\"Featured\")},depend:\"showBadgeForFeaturedResults\"}),colorForFeaturedResults:o.ComponentOptions.buildColorOption({depend:\"showBadgeForFeaturedResults\"}),colorForRecommendedResults:o.ComponentOptions.buildColorOption({depend:\"showBadgeForRecommendedResults\"})},t}(s.Component);t.PromotedResultsBadge=a,o.Initialization.registerAutoCreateComponent(a)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},r=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},s=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0}),n(206);var a=n(7),u=n(6),l=n(8),c=n(1),p=n(2),h=n(3),d=n(642),f=n(13),m=n(15),y=n(4),g=n(0),v=n(5),b=n(11),C=n(32),S=n(643),w=n(10),x=n(171),_=n(81),O=n(445),E=n(168),A=n(109),T=n(169),R=n(644),F=n(64),I=function(e){function t(n,i,o){var r=e.call(this,n,\"DynamicHierarchicalFacet\",o)||this;return r.element=n,r.listenToQueryStateChange=!0,r.moreValuesAvailable=!1,r.position=null,r.isDynamicFacet=!0,r.options=l.ComponentOptions.initComponentOptions(n,t,i),r.dynamicHierarchicalFacetQueryController=new d.DynamicHierarchicalFacetQueryController(r),r.isCollapsed=r.options.enableCollapse&&r.options.collapsedByDefault,r.verifyCollapsingConfiguration(),r.values=new R.DynamicHierarchicalFacetValues(r),x.ResponsiveFacets.init(r.root,r,r.options),r.initDependsOnManager(),r.initBreadCrumbEvents(),r.initQueryEvents(),r.buildFacetHeader(),r.initQueryStateEvents(),r}return i(t,e),Object.defineProperty(t.prototype,\"fieldName\",{get:function(){return this.options.field.slice(1)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"facetType\",{get:function(){return T.FacetType.hierarchical},enumerable:!0,configurable:!0}),t.prototype.isCurrentlyDisplayed=function(){return c.$$(this.element).isVisible()},Object.defineProperty(t.prototype,\"hasActiveValues\",{get:function(){return this.values.hasSelectedValue},enumerable:!0,configurable:!0}),t.prototype.initQueryEvents=function(){var e=this;this.bind.onRootElement(b.QueryEvents.doneBuildingQuery,function(t){return e.handleDoneBuildingQuery(t)}),this.bind.onRootElement(b.QueryEvents.querySuccess,function(t){return e.handleQuerySuccess(t.results)}),this.bind.onRootElement(b.QueryEvents.duringQuery,function(){return e.ensureDom()}),this.bind.onRootElement(b.QueryEvents.queryError,function(){return e.onNoValues()})},t.prototype.initBreadCrumbEvents=function(){var e=this;this.options.includeInBreadcrumb&&(this.bind.onRootElement(C.BreadcrumbEvents.populateBreadcrumb,function(t){return e.handlePopulateBreadcrumb(t)}),this.bind.onRootElement(C.BreadcrumbEvents.clearBreadcrumb,function(){return e.reset()}))},Object.defineProperty(t.prototype,\"queryStateAttribute\",{get:function(){return f.QueryStateModel.getFacetId(this.options.id)},enumerable:!0,configurable:!0}),t.prototype.handleDoneBuildingQuery=function(e){this.dynamicFacetManager||(v.Assert.exists(e),v.Assert.exists(e.queryBuilder),this.putStateIntoQueryBuilder(e.queryBuilder),this.putStateIntoAnalytics())},t.prototype.verifyCollapsingConfiguration=function(){this.options.collapsedByDefault&&!this.options.enableCollapse&&this.logger.warn('Setting \"collapseByDefault\" to \"true\" has no effect when \"enableCollapse\" is set to \"false\"')},t.prototype.putStateIntoQueryBuilder=function(e){v.Assert.exists(e),this.dynamicHierarchicalFacetQueryController.putFacetIntoQueryBuilder(e)},t.prototype.putStateIntoAnalytics=function(){var e=this.usageAnalytics.getPendingSearchEvent();e&&e.addFacetState(this.analyticsFacetState)},t.prototype.scrollToTop=function(){this.options.enableScrollToTop&&A.ResultListUtils.scrollToTop(this.root)},t.prototype.updateAppearance=function(){this.header.toggleCollapse(this.isCollapsed),c.$$(this.element).toggleClass(\"coveo-dynamic-hierarchical-facet-collapsed\",this.isCollapsed),c.$$(this.element).removeClass(\"coveo-hidden\"),this.dependsOnManager.updateVisibilityBasedOnDependsOn(),!this.values.allFacetValues.length&&c.$$(this.element).addClass(\"coveo-hidden\")},t.prototype.handleQuerySuccess=function(e){if(!this.dynamicFacetManager)return y.Utils.isNullOrUndefined(e.facets)?this.notImplementedError():void this.handleQueryResults(e)},t.prototype.handleQueryResults=function(e){var t=g.findIndex(e.facets,{facetId:this.options.id}),n=-1!==t?e.facets[t]:null;this.position=n?t+1:null,n?this.onNewValues(n):this.onNoValues(),this.header.hideLoading(),this.updateQueryStateModel(this.values.selectedPath),this.values.render(),this.updateAppearance()},t.prototype.onNewValues=function(e){this.moreValuesAvailable=e.moreValuesAvailable,this.values.createFromResponse(e)},t.prototype.onNoValues=function(){this.moreValuesAvailable=!1,this.values.resetValues()},t.prototype.updateQueryStateModel=function(e){this.listenToQueryStateChange=!1,this.queryStateModel.set(this.queryStateAttribute,e),this.listenToQueryStateChange=!0},t.prototype.beforeSendingQuery=function(){this.header.showLoading()},t.prototype.triggerNewQuery=function(e){this.beforeSendingQuery();var t=e?{beforeExecuteQuery:e}:{ignoreWarningSearchEvent:!0};this.queryController.executeQuery(t)},t.prototype.triggerNewIsolatedQuery=function(e){return r(this,void 0,void 0,function(){var t,n;return s(this,function(i){switch(i.label){case 0:this.beforeSendingQuery(),e&&e(),i.label=1;case 1:return i.trys.push([1,3,,4]),[4,this.dynamicHierarchicalFacetQueryController.getQueryResults()];case 2:return t=i.sent(),this.handleQueryResults(t),[3,4];case 3:return n=i.sent(),this.header.hideLoading(),[3,4];case 4:return[2]}})})},t.prototype.showMoreValues=function(e){var t=this;void 0===e&&(e=this.options.numberOfValues),this.ensureDom(),this.logger.info(\"Show more values\"),this.dynamicHierarchicalFacetQueryController.increaseNumberOfValuesToRequest(e),this.triggerNewIsolatedQuery(function(){return t.logAnalyticsFacetShowMoreLess(w.analyticsActionCauseList.dynamicFacetShowMore)})},t.prototype.showLessValues=function(){var e=this;this.ensureDom(),this.logger.info(\"Show less values\"),this.dynamicHierarchicalFacetQueryController.resetNumberOfValuesToRequest(),this.triggerNewIsolatedQuery(function(){return e.logAnalyticsFacetShowMoreLess(w.analyticsActionCauseList.dynamicFacetShowLess)})},t.prototype.selectPath=function(e){v.Assert.exists(e),v.Assert.isLargerThan(0,e.length),this.ensureDom(),this.updateQueryStateModel(e),this.values.selectPath(e),this.logger.info(\"Toggle select facet value at path\",e)},t.prototype.clear=function(){var e=this;this.reset(),this.scrollToTop(),this.triggerNewQuery(function(){return e.logAnalyticsEvent(w.analyticsActionCauseList.dynamicFacetClearAll)})},t.prototype.reset=function(){this.ensureDom(),this.values.hasSelectedValue&&(this.logger.info(\"Deselect facet value\"),this.values.clearPath(),this.updateQueryStateModel([]))},t.prototype.toggleCollapse=function(){this.isCollapsed?this.expand():this.collapse()},t.prototype.expand=function(){if(!this.options.enableCollapse)return this.logger.warn('Calling expand() won\\'t do anything on a facet that has the option \"enableCollapse\" set to \"false\"');this.isCollapsed&&(this.ensureDom(),this.logger.info(\"Expand facet values\"),this.isCollapsed=!1,this.updateAppearance())},t.prototype.enableFreezeFacetOrderFlag=function(){v.Assert.exists(this.dynamicHierarchicalFacetQueryController),this.dynamicHierarchicalFacetQueryController.enableFreezeFacetOrderFlag()},t.prototype.collapse=function(){if(!this.options.enableCollapse)return this.logger.warn('Calling collapse() won\\'t do anything on a facet that has the option \"enableCollapse\" set to \"false\"');this.isCollapsed||(this.ensureDom(),this.logger.info(\"Collapse facet values\"),this.isCollapsed=!0,this.updateAppearance())},t.prototype.createDom=function(){this.element.appendChild(this.values.render()),this.updateAppearance()},t.prototype.getCaption=function(e){var t=this.options.valueCaption,n=t[e];return n||e},t.prototype.logAnalyticsEvent=function(e){this.usageAnalytics.logSearchEvent(e,this.analyticsFacetMeta)},Object.defineProperty(t.prototype,\"analyticsFacetValue\",{get:function(){return this.values.selectedPath.join(this.options.delimitingCharacter)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"analyticsFacetState\",{get:function(){return this.values.hasSelectedValue?[{field:this.options.field.toString(),id:this.options.id,title:this.options.title,facetType:this.facetType,facetPosition:this.position,value:this.analyticsFacetValue,displayValue:this.analyticsFacetValue,state:F.FacetValueState.selected,valuePosition:1}]:[]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"analyticsFacetMeta\",{get:function(){return{facetField:this.options.field.toString(),facetId:this.options.id,facetTitle:this.options.title,facetValue:this.analyticsFacetValue}},enumerable:!0,configurable:!0}),t.prototype.buildFacetHeader=function(){var e=this;this.header=new O.DynamicFacetHeader({title:this.options.title,enableCollapse:this.options.enableCollapse,clear:function(){return e.clear()},toggleCollapse:function(){return e.toggleCollapse()},expand:function(){return e.expand()},collapse:function(){return e.collapse()}}),c.$$(this.element).prepend(this.header.element)},t.prototype.pathIsValidForSelection=function(e){return!y.Utils.isNullOrUndefined(e)&&g.isArray(e)},t.prototype.handleQueryStateChanged=function(e){if(this.listenToQueryStateChange){var t=e.attributes[this.queryStateAttribute];this.pathIsValidForSelection(t)&&(y.Utils.arrayEqual(t,this.values.selectedPath)||(t.length?this.selectPath(t):this.reset()))}},t.prototype.initQueryStateEvents=function(){var e=this;this.queryStateModel.registerNewAttribute(this.queryStateAttribute,[]),this.bind.onQueryState(m.MODEL_EVENTS.CHANGE,void 0,function(t){return e.handleQueryStateChanged(t)}),this.dependsOnManager.listenToParentIfDependentFacet()},t.prototype.initDependsOnManager=function(){var e=this,t={reset:function(){return e.dependsOnReset()},toggleDependentFacet:function(t){return e.toggleDependentFacet(t)},element:this.element,root:this.root,dependsOn:this.options.dependsOn,id:this.options.id,queryStateModel:this.queryStateModel,bind:this.bind};this.dependsOnManager=new E.DependsOnManager(t)},t.prototype.dependsOnReset=function(){this.reset(),this.updateAppearance()},t.prototype.toggleDependentFacet=function(e){this.values.hasSelectedValue?e.enable():e.disable()},t.prototype.notImplementedError=function(){this.logger.error(\"DynamicHierarchicalFacets are not supported by your current search endpoint. Disabling this component.\"),this.disable(),this.updateAppearance()},t.prototype.handlePopulateBreadcrumb=function(e){if(v.Assert.exists(e),this.values.hasSelectedValue){var t=new S.DynamicHierarchicalFacetBreadcrumb(this);e.breadcrumbs.push({element:t.element})}},t.prototype.logAnalyticsFacetShowMoreLess=function(e){this.usageAnalytics.logCustomEvent(e,this.analyticsFacetMeta,this.element)},t.ID=\"DynamicHierarchicalFacet\",t.doExport=function(){h.exportGlobally({DynamicHierarchicalFacet:t})},t.options=o({id:l.ComponentOptions.buildStringOption({postProcessing:function(e,t){return e||t.field}}),field:l.ComponentOptions.buildFieldOption({required:!0}),title:l.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return u.l(\"NoTitle\")}}),numberOfValues:l.ComponentOptions.buildNumberOption({defaultValue:5,min:0,section:\"CommonOptions\"}),enableCollapse:l.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"Filtering\"}),collapsedByDefault:l.ComponentOptions.buildBooleanOption({defaultValue:!1,section:\"Filtering\",depend:\"enableCollapse\"}),enableScrollToTop:l.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"CommonOptions\"}),includeInBreadcrumb:l.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"CommonOptions\"}),injectionDepth:l.ComponentOptions.buildNumberOption({defaultValue:1e3,min:0}),enableMoreLess:l.ComponentOptions.buildBooleanOption({defaultValue:!0}),delimitingCharacter:l.ComponentOptions.buildStringOption({defaultValue:\"|\"}),valueCaption:l.ComponentOptions.buildJsonOption({defaultValue:{}}),dependsOn:l.ComponentOptions.buildStringOption(),clearLabel:l.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return u.l(\"AllCategories\")}})},_.ResponsiveFacetOptions),t}(a.Component);t.DynamicHierarchicalFacet=I,p.Initialization.registerAutoCreateComponent(I),I.doExport()},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0}),n(206);var s=n(2),a=n(114),u=n(489),l=n(8),c=n(3),p=n(6),h=n(169),d=n(446),f=n(648),m=n(654),y=function(e){function t(n,i,o){var r=e.call(this,n,l.ComponentOptions.initComponentOptions(n,t,i),o,t.ID)||this;return r.element=n,r.options=i,r.disableUnavailableOptions(),r}return i(t,e),t.prototype.initValues=function(){this.values=new d.DynamicFacetValues(this,f.DynamicFacetRangeValueCreator),this.options.ranges&&this.values.createFromRanges(this.options.ranges)},t.prototype.initDynamicFacetQueryController=function(){this.dynamicFacetQueryController=new m.DynamicFacetRangeQueryController(this)},t.prototype.disableUnavailableOptions=function(){this.options.enableFacetSearch=!1,this.options.useLeadingWildcardInFacetSearch=!1,this.options.enableMoreLess=!1,this.options.valueCaption={},this.options.sortCriteria=void 0},Object.defineProperty(t.prototype,\"facetType\",{get:function(){return this.options.valueFormat===u.DynamicFacetRangeValueFormat.date?h.FacetType.dateRange:h.FacetType.numericalRange},enumerable:!0,configurable:!0}),t.prototype.showMoreValues=function(){this.logger.warn('The \"showMoreValues\" method is not available on the \"DynamicFacetRange\" component')},t.prototype.showLessValues=function(){this.logger.warn('The \"showLessValues\" method is not available on the \"DynamicFacetRange\" component')},t.prototype.triggerNewIsolatedQuery=function(){return o(this,void 0,void 0,function(){return r(this,function(e){return this.logger.warn('The \"triggerNewIsolatedQuery\" method is not available on the \"DynamicFacetRange\" component'),[2]})})},t.ID=\"DynamicFacetRange\",t.parent=a.DynamicFacet,t.doExport=function(){return c.exportGlobally({DynamicFacetRange:t})},t.options={valueSeparator:l.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return p.l(\"To\")},section:\"CommonOptions\"}),valueFormat:l.ComponentOptions.buildStringOption({defaultValue:u.DynamicFacetRangeValueFormat.number,postProcessing:function(e){return u.isFacetRangeValueFormat(e)?e:u.DynamicFacetRangeValueFormat.number},section:\"CommonOptions\"}),currencySymbol:l.ComponentOptions.buildStringOption({section:\"CommonOptions\"}),ranges:l.ComponentOptions.buildJsonOption({required:!0})},t}(a.DynamicFacet);t.DynamicFacetRange=y,s.Initialization.registerAutoCreateComponent(y),y.doExport()},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(16),s=n(11),a=n(3),u=n(0),l=n(1),c=n(4),p=n(8),h=n(5),d=n(2),f=n(49),m=function(e){function t(n,i){var o=e.call(this,n,\"DynamicFacetManager\")||this;return o.options=i,o.childrenFacets=[],o.options=p.ComponentOptions.initComponentOptions(n,t,i),o.resetContainer(),o.prependContainer(),o.initEvents(),o}return i(t,e),Object.defineProperty(t.prototype,\"enabledFacets\",{get:function(){return this.childrenFacets.filter(function(e){return!e.disabled})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"displayedFacets\",{get:function(){return this.childrenFacets.filter(function(e){return e.isCurrentlyDisplayed()})},enumerable:!0,configurable:!0}),t.prototype.resetContainer=function(){this.containerElement&&l.$$(this.containerElement).remove(),this.containerElement=l.$$(\"div\",{className:\"coveo-dynamic-facet-manager-container\"}).el},t.prototype.prependContainer=function(){l.$$(this.element).prepend(this.containerElement)},t.prototype.initEvents=function(){var e=this;this.bind.onRootElement(r.InitializationEvents.afterComponentsInitialization,function(){return e.handleAfterComponentsInitialization()}),this.bind.onRootElement(s.QueryEvents.doneBuildingQuery,function(t){return e.handleDoneBuildingQuery(t)}),this.bind.onRootElement(s.QueryEvents.querySuccess,function(t){return e.handleQuerySuccess(t)})},t.prototype.isDynamicFacet=function(e){return!!e.isDynamicFacet},Object.defineProperty(t.prototype,\"allDynamicFacets\",{get:function(){return f.ComponentsTypes.getAllFacetsInstance(this.element).filter(this.isDynamicFacet)},enumerable:!0,configurable:!0}),t.prototype.handleAfterComponentsInitialization=function(){var e=this;this.childrenFacets=this.allDynamicFacets,this.childrenFacets.forEach(function(t){t.dynamicFacetManager=e,e.containerElement.appendChild(t.element)}),this.element.children.length>1&&this.logger.warn(\"DynamicFacetManager contains incompatible elements. Those elements may be moved in the DOM.\\n        To prevent this warning, move those elements outside of the DynamicFacetManager.\"),this.childrenFacets.length||this.disable()},t.prototype.handleDoneBuildingQuery=function(e){h.Assert.exists(e),h.Assert.exists(e.queryBuilder),this.enabledFacets.forEach(function(t){t.putStateIntoQueryBuilder(e.queryBuilder),t.putStateIntoAnalytics()})},t.prototype.handleQuerySuccess=function(e){if(c.Utils.isNullOrUndefined(e.results.facets))return this.notImplementedError();this.enabledFacets.forEach(function(t){t.handleQueryResults(e.results)}),this.options.enableReorder&&(this.mapResponseToComponents(e.results.facets),this.sortFacetsIfCompareOptionsProvided(),this.reorderDynamicFacetsInDom())},t.prototype.mapResponseToComponents=function(e){var t=this,n=e.map(function(e){var n=e.facetId;return t.getChildFacetWithId(n)}).filter(c.Utils.exists),i=u.without.apply(void 0,[this.childrenFacets].concat(n));n.forEach(function(e){return e.enable()}),this.childrenFacets=n.concat(i)},t.prototype.sortFacetsIfCompareOptionsProvided=function(){this.options.compareFacets&&(this.childrenFacets=this.childrenFacets.sort(this.options.compareFacets))},t.prototype.reorderDynamicFacetsInDom=function(){var e=this;this.resetContainer();var t=document.createDocumentFragment();this.childrenFacets.forEach(function(n,i){t.appendChild(n.element),e.options.onUpdate&&e.options.onUpdate(n,i)}),this.respectMaximumExpandedFacetsThreshold(),this.containerElement.appendChild(t),this.prependContainer()},t.prototype.respectMaximumExpandedFacetsThreshold=function(){if(-1!==this.options.maximumNumberOfExpandedFacets){var e=u.partition(this.displayedFacets,function(e){return e.options.enableCollapse}),t=e[0],n=e[1],i=u.partition(t,function(e){return e.hasActiveValues}),o=i[0],r=i[1],s=this.options.maximumNumberOfExpandedFacets-n.length-o.length;o.forEach(function(e){return e.expand()}),r.forEach(function(e){return s<1?e.collapse():e.options.collapsedByDefault?(e.logger.info('The facet has its \"collapsedByDefault\" option set to \"true\", which prevents the DynamicFacetManager from expanding it.',\"While this configuration may be legitimate, it partially defeats the purpose of the dynamic navigation experience feature.\",\"For more information, see https://docs.coveo.com/en/2917/.\"),e.collapse()):(s--,void e.expand())})}},t.prototype.getChildFacetWithId=function(e){return u.find(this.childrenFacets,function(t){return t.options.id===e})},t.prototype.notImplementedError=function(){this.logger.error(\"DynamicFacetManager is not supported by your current search endpoint. Disabling this component.\"),this.disable()},t.prototype.isCurrentlyDisplayed=function(){return!!u.find(this.childrenFacets,function(e){return e.isCurrentlyDisplayed()})},t.ID=\"DynamicFacetManager\",t.doExport=function(){return a.exportGlobally({DynamicFacetManager:t})},t.options={enableReorder:p.ComponentOptions.buildBooleanOption({defaultValue:!0,section:\"Filtering\"}),onUpdate:p.ComponentOptions.buildCustomOption(function(){return null}),compareFacets:p.ComponentOptions.buildCustomOption(function(){return null}),maximumNumberOfExpandedFacets:p.ComponentOptions.buildNumberOption({defaultValue:4,min:-1})},t}(o.Component);t.DynamicFacetManager=m,d.Initialization.registerAutoCreateComponent(m),m.doExport()},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0}),n(655);var o=n(23),r=n(3),s=n(10),a=n(7),u=n(8),l=n(196),c=n(197),p=function(e){function t(n,i,o,r){var s=e.call(this,n,t.ID,o)||this;return s.element=n,s.options=i,s.result=r,s.options=u.ComponentOptions.initComponentOptions(n,t,i),s.addMissingTerms(),s}return i(t,e),Object.defineProperty(t.prototype,\"missingTerms\",{get:function(){var e=this;return this.result.absentTerms.filter(function(t){return e.createWordBoundaryDelimitedRegex(t).test(e.queryStateModel.get(\"q\"))})},enumerable:!0,configurable:!0}),t.prototype.addTermForcedToAppear=function(e){if(-1===this.missingTerms.indexOf(e))return void this.logger.warn('Method execution aborted because the term to inject in aq (\"'+e+'\") is not a missing term.',\"Allowed missing terms: \"+this.missingTerms.toString()+\".\");this.updateTermForcedToAppear(),this.termForcedToAppear.push(e),this.queryStateModel.set(\"missingTerms\",this.termForcedToAppear.slice())},t.prototype.updateTermForcedToAppear=function(){this.termForcedToAppear=this.queryStateModel.get(\"missingTerms\").slice()},t.prototype.addMissingTerms=function(){var e=this;if(0!==this.missingTerms.length){var t=this.buildContainer();t.length>1&&(this.hideMissingTermsOverTheNumberOfResults(t),t.map(function(t){o.$$(e.element).append(t)}))}},t.prototype.buildContainer=function(){var e=[];return e.push(this.buildCaption().el),this.buildMissingTerms().forEach(function(t){t&&e.push(t.el)}),e},t.prototype.buildCaption=function(){return o.$$(\"span\",{className:\"coveo-field-caption\"},this.options.caption)},t.prototype.buildMissingTerms=function(){var e=this;return this.missingTerms.filter(function(t){return e.isValidTerm(t)}).map(function(t){return e.makeTermClickableIfEnabled(t)})},t.prototype.executeNewQuery=function(e){void 0===e&&(e=this.queryStateModel.get(\"q\")),this.queryController.executeQuery()},t.prototype.makeTermClickableIfEnabled=function(e){var t=this;if(this.options.clickable){var n=o.$$(\"button\",{className:\"coveo-missing-term coveo-clickable\"},e);return n.on(\"click\",function(){t.addTermForcedToAppear(e),t.logAnalyticsAddMissingTerm(e),t.executeNewQuery(e)}),n}return o.$$(\"span\",{className:\"coveo-missing-term\"},e)},t.prototype.createWordBoundaryDelimitedRegex=function(e){return c(l.MissingTermManager.wordBoundary+\"(\"+e+\")\"+l.MissingTermManager.wordBoundary,\"g\")},t.prototype.containsFeaturedResults=function(e){return this.updateTermForcedToAppear(),-1!==this.termForcedToAppear.indexOf(e)},t.prototype.hideMissingTermsOverTheNumberOfResults=function(e){var t=this,n=e.filter(function(e){return\"BUTTON\"===e.tagName});if(!(n.length<=this.options.numberOfTerms)){for(var i=this.options.numberOfTerms;i<n.length;i++)o.$$(n[i]).hide();var r=n.length-this.options.numberOfTerms,s=o.$$(\"button\",{className:\"coveo-missing-term-show-more coveo-clickable\"},o.l(\"NMore\",[r]));s.on(\"click\",function(){t.showAllHiddenMissingTerms()}),e.push(s.el)}},t.prototype.showAllHiddenMissingTerms=function(){var e=o.$$(this.element).find(\".coveo-missing-term-show-more\");e.parentNode.removeChild(e);for(var t=o.$$(this.element).findAll(\".coveo-missing-term\"),n=this.options.numberOfTerms;n<t.length;n++)o.$$(t[n]).show(),t[n].removeAttribute(\"style\")},t.prototype.isValidTerm=function(e){return this.isNonBoundaryTerm(e)&&!this.containsFeaturedResults(e)},t.prototype.isNonBoundaryTerm=function(e){var t=c(\"\\\\p{L}*[-'?*’.~=,/\\\\\\\\:`;_!&()]+\\\\p{L}*\",\"gi\");return(this.queryStateModel.get(\"q\").match(t)||[]).every(function(t){return-1===t.indexOf(e)})},t.prototype.logAnalyticsAddMissingTerm=function(e){this.usageAnalytics.logSearchEvent(s.analyticsActionCauseList.addMissingTerm,{missingTerm:e})},t.ID=\"MissingTerms\",t.options={clickable:u.ComponentOptions.buildBooleanOption({defaultValue:!0}),caption:u.ComponentOptions.buildLocalizedStringOption({localizedString:function(){return o.l(\"Missing\")}}),numberOfTerms:u.ComponentOptions.buildNumberOption({defaultValue:5,min:1})},t.doExport=function(){r.exportGlobally({MissingTerms:t})},t}(a.Component);t.MissingTerms=p,o.Initialization.registerAutoCreateComponent(p)},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(3),a=n(23);n(656);var u=n(59),l=n(440),c=n(90),p=n(10),h=n(187),d=n(480),f=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;return r.element=n,r.options=i,r.bindings=o,r.options=a.ComponentOptions.initComponentOptions(n,t,i),r.options.resultTemplate||(r.logger.warn(\"No template was provided for \"+t.ID+\", a default template was used instead.\"),r.options.resultTemplate=r.buildDefaultSearchResultPreviewTemplate()),r.bind.onRootElement(d.ResultPreviewsManagerEvents.updateResultPreviewsManagerOptions,function(e){return e.displayAfterDuration=Math.max(e.displayAfterDuration||0,r.options.executeQueryDelay)}),r.bind.onRootElement(d.ResultPreviewsManagerEvents.populateSearchResultPreviews,function(e){return r.populateSearchResultPreviews(e)}),r.omniboxAnalytics=r.searchInterface.getOmniboxAnalytics(),r}return i(t,e),t.prototype.buildDefaultSearchResultPreviewTemplate=function(){return a.HtmlTemplate.create(a.$$(\"script\",{className:\"result-template\",type:\"text/html\"},a.$$(\"div\",{className:\"coveo-result-frame coveo-default-result-preview\"},a.$$(\"div\",{className:a.Component.computeCssClassName(h.ImageFieldValue),\"data-field\":\"@image\"}),a.$$(\"a\",{className:a.Component.computeCssClassName(c.ResultLink)}))).el)},Object.defineProperty(t.prototype,\"templateToHtml\",{get:function(){var e={searchInterface:this.searchInterface,queryStateModel:this.queryStateModel,resultTemplate:this.options.resultTemplate};return new l.TemplateToHtml(e)},enumerable:!0,configurable:!0}),t.prototype.populateSearchResultPreviews=function(e){e.previewsQueries.push(this.fetchSearchResultPreviews(e.suggestionText))},t.prototype.fetchSearchResultPreviews=function(e){return o(this,void 0,void 0,function(){var t,n;return r(this,function(i){switch(i.label){case 0:return t=this.buildQuery(e),this.logShowQuerySuggestPreview(),[4,this.queryController.getEndpoint().search(t)];case 1:return n=i.sent(),n?[2,this.buildResultsPreview(e,n)]:[2,[]]}})})},t.prototype.buildQuery=function(e){var t=this.queryController.getLastQuery();return{firstResult:0,searchHub:t.searchHub,pipeline:t.pipeline,tab:t.tab,locale:t.locale,timezone:t.timezone,context:t.context,numberOfResults:this.options.numberOfPreviewResults,q:e}},t.prototype.buildResultsPreview=function(e,t){return o(this,void 0,void 0,function(){var n,i=this;return r(this,function(o){switch(o.label){case 0:return[4,this.templateToHtml.buildResults(t,\"preview\",[])];case 1:return n=o.sent(),n.length>0?[2,n.map(function(t,n){return i.buildResultPreview(e,t,n)})]:[2,[]]}})})},t.prototype.buildResultPreview=function(e,t,n){var i=this;return a.$$(t).addClass(\"coveo-preview-selectable\"),{element:t,onSelect:function(){return i.handleSelect(e,t,n)}}},t.prototype.handleSelect=function(e,t,n){this.logClickQuerySuggestPreview(e,n,t);var i=a.$$(t).find(\".\"+a.Component.computeCssClassNameForType(\"ResultLink\"));if(i){var o=a.Component.get(i);o.openLinkAsConfigured(),o.openLink()}},t.prototype.logShowQuerySuggestPreview=function(){this.usageAnalytics.logSearchEvent(p.analyticsActionCauseList.showQuerySuggestPreview,this.omniboxAnalytics.buildCustomDataForPartialQueries())},t.prototype.logClickQuerySuggestPreview=function(e,t,n){this.usageAnalytics.logCustomEvent(p.analyticsActionCauseList.clickQuerySuggestPreview,{suggestion:e,displayedRank:t},n)},t.ID=\"QuerySuggestPreview\",t.doExport=function(){s.exportGlobally({QuerySuggestPreview:t})},t.options={resultTemplate:u.TemplateComponentOptions.buildTemplateOption(),numberOfPreviewResults:a.ComponentOptions.buildNumberOption({defaultValue:4,min:1,max:6}),executeQueryDelay:a.ComponentOptions.buildNumberOption({defaultValue:200})},t}(a.Component);t.QuerySuggestPreview=f,a.Initialization.registerAutoCreateComponent(f)},function(e,t,n){\"use strict\";e.exports=n(286).polyfill()},function(e,t,n){(function(t,n){/*!\r\n * @overview es6-promise - a tiny implementation of Promises/A+.\r\n * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)\r\n * @license   Licensed under MIT license\r\n *            See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE\r\n * @version   v4.2.4+314e4831\r\n */\r\n!function(t,n){e.exports=n()}(0,function(){\"use strict\";function e(e){var t=typeof e;return null!==e&&(\"object\"===t||\"function\"===t)}function i(e){return\"function\"==typeof e}function o(e){Q=e}function r(e){U=e}function s(){return void 0!==B?function(){B(u)}:a()}function a(){var e=setTimeout;return function(){return e(u,1)}}function u(){for(var e=0;e<L;e+=2){(0,G[e])(G[e+1]),G[e]=void 0,G[e+1]=void 0}L=0}function l(e,t){var n=this,i=new this.constructor(p);void 0===i[K]&&R(i);var o=n._state;if(o){var r=arguments[o-1];U(function(){return E(o,i,r,n._result)})}else x(n,i,e,t);return i}function c(e){var t=this;if(e&&\"object\"==typeof e&&e.constructor===t)return e;var n=new t(p);return b(n,e),n}function p(){}function h(){return new TypeError(\"You cannot resolve a promise with itself\")}function d(){return new TypeError(\"A promises callback cannot return that same promise.\")}function f(e){try{return e.then}catch(e){return ee.error=e,ee}}function m(e,t,n,i){try{e.call(t,n,i)}catch(e){return e}}function y(e,t,n){U(function(e){var i=!1,o=m(n,t,function(n){i||(i=!0,t!==n?b(e,n):S(e,n))},function(t){i||(i=!0,w(e,t))},\"Settle: \"+(e._label||\" unknown promise\"));!i&&o&&(i=!0,w(e,o))},e)}function g(e,t){t._state===X?S(e,t._result):t._state===Z?w(e,t._result):x(t,void 0,function(t){return b(e,t)},function(t){return w(e,t)})}function v(e,t,n){t.constructor===e.constructor&&n===l&&t.constructor.resolve===c?g(e,t):n===ee?(w(e,ee.error),ee.error=null):void 0===n?S(e,t):i(n)?y(e,t,n):S(e,t)}function b(t,n){t===n?w(t,h()):e(n)?v(t,n,f(n)):S(t,n)}function C(e){e._onerror&&e._onerror(e._result),_(e)}function S(e,t){e._state===J&&(e._result=t,e._state=X,0!==e._subscribers.length&&U(_,e))}function w(e,t){e._state===J&&(e._state=Z,e._result=t,U(C,e))}function x(e,t,n,i){var o=e._subscribers,r=o.length;e._onerror=null,o[r]=t,o[r+X]=n,o[r+Z]=i,0===r&&e._state&&U(_,e)}function _(e){var t=e._subscribers,n=e._state;if(0!==t.length){for(var i=void 0,o=void 0,r=e._result,s=0;s<t.length;s+=3)i=t[s],o=t[s+n],i?E(n,i,o,r):o(r);e._subscribers.length=0}}function O(e,t){try{return e(t)}catch(e){return ee.error=e,ee}}function E(e,t,n,o){var r=i(n),s=void 0,a=void 0,u=void 0,l=void 0;if(r){if(s=O(n,o),s===ee?(l=!0,a=s.error,s.error=null):u=!0,t===s)return void w(t,d())}else s=o,u=!0;t._state!==J||(r&&u?b(t,s):l?w(t,a):e===X?S(t,s):e===Z&&w(t,s))}function A(e,t){try{t(function(t){b(e,t)},function(t){w(e,t)})}catch(t){w(e,t)}}function T(){return te++}function R(e){e[K]=te++,e._state=void 0,e._result=void 0,e._subscribers=[]}function F(){return new Error(\"Array Methods must be provided an Array\")}function I(e){return new ne(this,e).promise}function M(e){var t=this;return new t(k(e)?function(n,i){for(var o=e.length,r=0;r<o;r++)t.resolve(e[r]).then(n,i)}:function(e,t){return t(new TypeError(\"You must pass an array to race.\"))})}function P(e){var t=this,n=new t(p);return w(n,e),n}function D(){throw new TypeError(\"You must pass a resolver function as the first argument to the promise constructor\")}function $(){throw new TypeError(\"Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.\")}function N(){var e=void 0;if(void 0!==n)e=n;else if(\"undefined\"!=typeof self)e=self;else try{e=Function(\"return this\")()}catch(e){throw new Error(\"polyfill failed because global object is unavailable in this environment\")}var t=e.Promise;if(t){var i=null;try{i=Object.prototype.toString.call(t.resolve())}catch(e){}if(\"[object Promise]\"===i&&!t.cast)return}e.Promise=ie}var V=void 0;V=Array.isArray?Array.isArray:function(e){return\"[object Array]\"===Object.prototype.toString.call(e)};var k=V,L=0,B=void 0,Q=void 0,U=function(e,t){G[L]=e,G[L+1]=t,2===(L+=2)&&(Q?Q(u):Y())},j=\"undefined\"!=typeof window?window:void 0,q=j||{},H=q.MutationObserver||q.WebKitMutationObserver,z=\"undefined\"==typeof self&&void 0!==t&&\"[object process]\"==={}.toString.call(t),W=\"undefined\"!=typeof Uint8ClampedArray&&\"undefined\"!=typeof importScripts&&\"undefined\"!=typeof MessageChannel,G=new Array(1e3),Y=void 0;Y=z?function(){return function(){return t.nextTick(u)}}():H?function(){var e=0,t=new H(u),n=document.createTextNode(\"\");return t.observe(n,{characterData:!0}),function(){n.data=e=++e%2}}():W?function(){var e=new MessageChannel;return e.port1.onmessage=u,function(){return e.port2.postMessage(0)}}():void 0===j?function(){try{var e=Function(\"return this\")().require(\"vertx\");return B=e.runOnLoop||e.runOnContext,s()}catch(e){return a()}}():a();var K=Math.random().toString(36).substring(2),J=void 0,X=1,Z=2,ee={error:null},te=0,ne=function(){function e(e,t){this._instanceConstructor=e,this.promise=new e(p),this.promise[K]||R(this.promise),k(t)?(this.length=t.length,this._remaining=t.length,this._result=new Array(this.length),0===this.length?S(this.promise,this._result):(this.length=this.length||0,this._enumerate(t),0===this._remaining&&S(this.promise,this._result))):w(this.promise,F())}return e.prototype._enumerate=function(e){for(var t=0;this._state===J&&t<e.length;t++)this._eachEntry(e[t],t)},e.prototype._eachEntry=function(e,t){var n=this._instanceConstructor,i=n.resolve;if(i===c){var o=f(e);if(o===l&&e._state!==J)this._settledAt(e._state,t,e._result);else if(\"function\"!=typeof o)this._remaining--,this._result[t]=e;else if(n===ie){var r=new n(p);v(r,e,o),this._willSettleAt(r,t)}else this._willSettleAt(new n(function(t){return t(e)}),t)}else this._willSettleAt(i(e),t)},e.prototype._settledAt=function(e,t,n){var i=this.promise;i._state===J&&(this._remaining--,e===Z?w(i,n):this._result[t]=n),0===this._remaining&&S(i,this._result)},e.prototype._willSettleAt=function(e,t){var n=this;x(e,void 0,function(e){return n._settledAt(X,t,e)},function(e){return n._settledAt(Z,t,e)})},e}(),ie=function(){function e(t){this[K]=T(),this._result=this._state=void 0,this._subscribers=[],p!==t&&(\"function\"!=typeof t&&D(),this instanceof e?A(this,t):$())}return e.prototype.catch=function(e){return this.then(null,e)},e.prototype.finally=function(e){var t=this,n=t.constructor;return t.then(function(t){return n.resolve(e()).then(function(){return t})},function(t){return n.resolve(e()).then(function(){throw t})})},e}();return ie.prototype.then=l,ie.all=I,ie.race=M,ie.resolve=c,ie.reject=P,ie._setScheduler=o,ie._setAsap=r,ie._asap=U,ie.polyfill=N,ie.Promise=ie,ie})}).call(t,n(192),n(62))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(288).shim(),n(289).customEventPolyfill();var i=n(95);t.version=i.version;var o=n(50);t.SearchEndpoint=o.SearchEndpoint,function(e){for(var n in e)t.hasOwnProperty(n)||(t[n]=e[n])}(n(26)),n(146).defaultLanguage();var r=n(146);t.setLanguageAfterPageLoaded=r.setLanguageAfterPageLoaded},function(e,t,n){\"use strict\";function i(){var e=function(e){\"function\"!=typeof e.prototype.finally&&(e.prototype.finally=function(e){var t=this.constructor;return this.then(function(n){return t.resolve(e()).then(function(){return n})},function(n){return t.resolve(e()).then(function(){throw n})})});var t=function(e){e.then(null,function(e){setTimeout(function(){throw e},0)})};\"function\"!=typeof e.prototype.done&&(e.prototype.done=function(e,n){var i=arguments.length?this.then.apply(this,arguments):this;return t(i),this}),\"function\"!=typeof e.prototype.fail&&(e.prototype.fail=function(e,n){var i=arguments.length?this.catch.apply(this,arguments):this;return t(i),this})},t=window.Promise,n=Promise;t&&e(t),n&&e(n)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.shim=i},function(e,t,n){\"use strict\";function i(){if(\"function\"!=typeof window.CustomEvent){var e=function(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};var n=document.createEvent(\"CustomEvent\");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n};e.prototype=window.Event.prototype,window.CustomEvent=e}}Object.defineProperty(t,\"__esModule\",{value:!0}),t.customEventPolyfill=i},function(e,t){},function(e,t){e.exports=function(e){var t=\"undefined\"!=typeof window&&window.location;if(!t)throw new Error(\"fixUrls requires window.location\");if(!e||\"string\"!=typeof e)return e;var n=t.protocol+\"//\"+t.host,i=n+t.pathname.replace(/\\/[^\\/]*$/,\"/\");return e.replace(/url\\s*\\(((?:[^)(]|\\((?:[^)(]+|\\([^)(]*\\))*\\))*)\\)/gi,function(e,t){var o=t.trim().replace(/^\"(.*)\"$/,function(e,t){return t}).replace(/^'(.*)'$/,function(e,t){return t});if(/^(#|data:|http:\\/\\/|https:\\/\\/|file:\\/\\/\\/)/i.test(o))return e;var r;return r=0===o.indexOf(\"//\")?o:0===o.indexOf(\"/\")?n+o:i+o.replace(/^\\.\\//,\"\"),\"url(\"+JSON.stringify(r)+\")\"})}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=function(){function e(e,t){this.message=e,this.status=t,i.Assert.exists(e),i.Assert.exists(t),this.name=this.type=\"Ajax Error (status: \"+t+\")\"}return e}();t.AjaxError=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(e){this.provider=e,this.isMissingAuthentication=!0,this.name=this.type=this.message=\"Missing Authentication (provider: \"+e+\")\"}return e}();t.MissingAuthenticationError=i},function(e,t,n){\"use strict\";var i=function(){function e(){}return e.set=function(t,n,i){var o,r,s,a,u;i?(s=new Date,s.setTime(s.getTime()+i),a=\"; expires=\"+s.toGMTString()):a=\"\",u=location.hostname,-1===u.indexOf(\".\")?document.cookie=t+\"=\"+n+a+\"; path=/\":(r=u.split(\".\"),r.shift(),o=\".\"+r.join(\".\"),document.cookie=t+\"=\"+n+a+\"; path=/; domain=\"+o,null!=e.get(t)&&e.get(t)==n||(o=\".\"+u,document.cookie=t+\"=\"+n+a+\"; path=/; domain=\"+o))},e.get=function(e){for(var t=e+\"=\",n=document.cookie.split(\";\"),i=0;i<n.length;i++){var o=n[i];if(o=o.replace(/^\\s+/,\"\"),0==o.indexOf(t))return o.substring(t.length,o.length)}return null},e.erase=function(t){e.set(t,\"\",-1)},e}();t.Cookie=i},function(e,t){!function(e){\"use strict\";function t(e){if(\"string\"!=typeof e&&(e=String(e)),/[^a-z0-9\\-#$%&'*+.\\^_`|~]/i.test(e))throw new TypeError(\"Invalid character in header field name\");return e.toLowerCase()}function n(e){return\"string\"!=typeof e&&(e=String(e)),e}function i(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return g.iterable&&(t[Symbol.iterator]=function(){return t}),t}function o(e){this.map={},e instanceof o?e.forEach(function(e,t){this.append(t,e)},this):Array.isArray(e)?e.forEach(function(e){this.append(e[0],e[1])},this):e&&Object.getOwnPropertyNames(e).forEach(function(t){this.append(t,e[t])},this)}function r(e){if(e.bodyUsed)return Promise.reject(new TypeError(\"Already read\"));e.bodyUsed=!0}function s(e){return new Promise(function(t,n){e.onload=function(){t(e.result)},e.onerror=function(){n(e.error)}})}function a(e){var t=new FileReader,n=s(t);return t.readAsArrayBuffer(e),n}function u(e){var t=new FileReader,n=s(t);return t.readAsText(e),n}function l(e){for(var t=new Uint8Array(e),n=new Array(t.length),i=0;i<t.length;i++)n[i]=String.fromCharCode(t[i]);return n.join(\"\")}function c(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function p(){return this.bodyUsed=!1,this._initBody=function(e){if(this._bodyInit=e,e)if(\"string\"==typeof e)this._bodyText=e;else if(g.blob&&Blob.prototype.isPrototypeOf(e))this._bodyBlob=e;else if(g.formData&&FormData.prototype.isPrototypeOf(e))this._bodyFormData=e;else if(g.searchParams&&URLSearchParams.prototype.isPrototypeOf(e))this._bodyText=e.toString();else if(g.arrayBuffer&&g.blob&&b(e))this._bodyArrayBuffer=c(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer]);else{if(!g.arrayBuffer||!ArrayBuffer.prototype.isPrototypeOf(e)&&!C(e))throw new Error(\"unsupported BodyInit type\");this._bodyArrayBuffer=c(e)}else this._bodyText=\"\";this.headers.get(\"content-type\")||(\"string\"==typeof e?this.headers.set(\"content-type\",\"text/plain;charset=UTF-8\"):this._bodyBlob&&this._bodyBlob.type?this.headers.set(\"content-type\",this._bodyBlob.type):g.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set(\"content-type\",\"application/x-www-form-urlencoded;charset=UTF-8\"))},g.blob&&(this.blob=function(){var e=r(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error(\"could not read FormData body as blob\");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?r(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(a)}),this.text=function(){var e=r(this);if(e)return e;if(this._bodyBlob)return u(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(l(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error(\"could not read FormData body as text\");return Promise.resolve(this._bodyText)},g.formData&&(this.formData=function(){return this.text().then(f)}),this.json=function(){return this.text().then(JSON.parse)},this}function h(e){var t=e.toUpperCase();return S.indexOf(t)>-1?t:e}function d(e,t){t=t||{};var n=t.body;if(e instanceof d){if(e.bodyUsed)throw new TypeError(\"Already read\");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new o(e.headers)),this.method=e.method,this.mode=e.mode,n||null==e._bodyInit||(n=e._bodyInit,e.bodyUsed=!0)}else this.url=String(e);if(this.credentials=t.credentials||this.credentials||\"omit\",!t.headers&&this.headers||(this.headers=new o(t.headers)),this.method=h(t.method||this.method||\"GET\"),this.mode=t.mode||this.mode||null,this.referrer=null,(\"GET\"===this.method||\"HEAD\"===this.method)&&n)throw new TypeError(\"Body not allowed for GET or HEAD requests\");this._initBody(n)}function f(e){var t=new FormData;return e.trim().split(\"&\").forEach(function(e){if(e){var n=e.split(\"=\"),i=n.shift().replace(/\\+/g,\" \"),o=n.join(\"=\").replace(/\\+/g,\" \");t.append(decodeURIComponent(i),decodeURIComponent(o))}}),t}function m(e){var t=new o;return e.split(/\\r?\\n/).forEach(function(e){var n=e.split(\":\"),i=n.shift().trim();if(i){var o=n.join(\":\").trim();t.append(i,o)}}),t}function y(e,t){t||(t={}),this.type=\"default\",this.status=\"status\"in t?t.status:200,this.ok=this.status>=200&&this.status<300,this.statusText=\"statusText\"in t?t.statusText:\"OK\",this.headers=new o(t.headers),this.url=t.url||\"\",this._initBody(e)}if(!e.fetch){var g={searchParams:\"URLSearchParams\"in e,iterable:\"Symbol\"in e&&\"iterator\"in Symbol,blob:\"FileReader\"in e&&\"Blob\"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:\"FormData\"in e,arrayBuffer:\"ArrayBuffer\"in e};if(g.arrayBuffer)var v=[\"[object Int8Array]\",\"[object Uint8Array]\",\"[object Uint8ClampedArray]\",\"[object Int16Array]\",\"[object Uint16Array]\",\"[object Int32Array]\",\"[object Uint32Array]\",\"[object Float32Array]\",\"[object Float64Array]\"],b=function(e){return e&&DataView.prototype.isPrototypeOf(e)},C=ArrayBuffer.isView||function(e){return e&&v.indexOf(Object.prototype.toString.call(e))>-1};o.prototype.append=function(e,i){e=t(e),i=n(i);var o=this.map[e];this.map[e]=o?o+\",\"+i:i},o.prototype.delete=function(e){delete this.map[t(e)]},o.prototype.get=function(e){return e=t(e),this.has(e)?this.map[e]:null},o.prototype.has=function(e){return this.map.hasOwnProperty(t(e))},o.prototype.set=function(e,i){this.map[t(e)]=n(i)},o.prototype.forEach=function(e,t){for(var n in this.map)this.map.hasOwnProperty(n)&&e.call(t,this.map[n],n,this)},o.prototype.keys=function(){var e=[];return this.forEach(function(t,n){e.push(n)}),i(e)},o.prototype.values=function(){var e=[];return this.forEach(function(t){e.push(t)}),i(e)},o.prototype.entries=function(){var e=[];return this.forEach(function(t,n){e.push([n,t])}),i(e)},g.iterable&&(o.prototype[Symbol.iterator]=o.prototype.entries);var S=[\"DELETE\",\"GET\",\"HEAD\",\"OPTIONS\",\"POST\",\"PUT\"];d.prototype.clone=function(){return new d(this,{body:this._bodyInit})},p.call(d.prototype),p.call(y.prototype),y.prototype.clone=function(){return new y(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new o(this.headers),url:this.url})},y.error=function(){var e=new y(null,{status:0,statusText:\"\"});return e.type=\"error\",e};var w=[301,302,303,307,308];y.redirect=function(e,t){if(-1===w.indexOf(t))throw new RangeError(\"Invalid status code\");return new y(null,{status:t,headers:{location:e}})},e.Headers=o,e.Request=d,e.Response=y,e.fetch=function(e,t){return new Promise(function(n,i){var o=new d(e,t),r=new XMLHttpRequest;r.onload=function(){var e={status:r.status,statusText:r.statusText,headers:m(r.getAllResponseHeaders()||\"\")};e.url=\"responseURL\"in r?r.responseURL:e.headers.get(\"X-Request-URL\");var t=\"response\"in r?r.response:r.responseText;n(new y(t,e))},r.onerror=function(){i(new TypeError(\"Network request failed\"))},r.ontimeout=function(){i(new TypeError(\"Network request failed\"))},r.open(o.method,o.url,!0),\"include\"===o.credentials&&(r.withCredentials=!0),\"responseType\"in r&&g.blob&&(r.responseType=\"blob\"),o.headers.forEach(function(e,t){r.setRequestHeader(t,e)}),r.send(void 0===o._bodyInit?null:o._bodyInit)})},e.fetch.polyfill=!0}}(\"undefined\"!=typeof self?self:this)},function(e,t,n){\"use strict\";var i=n(142),o=n(297),r=n(298),s=function(){function e(){}return e.prototype.init=function(e,t){if(void 0===e)throw new Error(\"You must pass your token when you call 'init'\");if(\"string\"==typeof e)t=t||i.Endpoints.default,this.client=new i.Client({token:e,endpoint:t});else{if(\"object\"!=typeof e||void 0===e.sendEvent)throw new Error(\"You must pass either your token or a valid object when you call 'init'\");this.client=e}},e.prototype.send=function(e,t){if(void 0===this.client)throw new Error(\"You must call init before sending an event\");switch(t=o.default({},{hash:window.location.hash},t),e){case\"pageview\":return void this.client.sendViewEvent({location:window.location.toString(),referrer:document.referrer,language:document.documentElement.lang,title:document.title,contentIdKey:r.popFromObject(t,\"contentIdKey\"),contentIdValue:r.popFromObject(t,\"contentIdValue\"),contentType:r.popFromObject(t,\"contentType\"),anonymous:r.popFromObject(t,\"anonymous\"),customData:t});default:throw new Error(\"Event type: '\"+e+\"' not implemented\")}},e.prototype.onLoad=function(e){if(void 0===e)throw new Error(\"You must pass a function when you call 'onLoad'\");e()},e}();t.SimpleAPI=s;var a=new s;t.SimpleAnalytics=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=a[e];if(i)return i.apply(a,t)},Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=t.SimpleAnalytics},function(e,t,n){\"use strict\";var i=Object.prototype.hasOwnProperty,o=Object.getOwnPropertySymbols,r=Object.prototype.propertyIsEnumerable,s=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];if(void 0===e||null===e)throw new TypeError(\"Cannot convert undefined or null to object\");var s=Object(e);return t.forEach(function(e){var t=Object(e);for(var n in t)i.call(t,n)&&(s[n]=t[n]);if(o){o(t).forEach(function(e){r.call(t,e)&&(s[e]=t[e])})}}),s};t.ponyfill=s,t.assign=\"function\"==typeof Object.assign?Object.assign:s,Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=t.assign},function(e,t,n){\"use strict\";function i(e,t){if(e){var n=e[t];return delete e[t],n}}t.popFromObject=i},function(e,t,n){\"use strict\";t.doNotTrack=[!0,\"yes\",\"1\"].indexOf(navigator.doNotTrack||navigator.msDoNotTrack||window.doNotTrack),Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=t.doNotTrack},function(e,t,n){\"use strict\";function i(e){a=e||s.backOff}var o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(301),a=s.backOff;t.setBackOffModule=i;var u=function(){function e(){}return e.enqueue=function(t){return new Promise(function(n,i){e.enqueueRequest(t,n,i),e.clearQueueIfNotAlready()})},e.enqueueRequest=function(t,n,i){var o=function(){return a(t).then(n).catch(i)};e.queue.push(o)},e.clearQueueIfNotAlready=function(){return o(this,void 0,void 0,function(){var t;return r(this,function(n){switch(n.label){case 0:if(e.clearingQueue)return[2];e.clearingQueue=!0,n.label=1;case 1:return e.queue.length?(t=e.queue.shift(),[4,t()]):[3,3];case 2:return n.sent(),[3,1];case 3:return e.clearingQueue=!1,[2]}})})},e.queue=[],e.clearingQueue=!1,e}();t.BackOffRequest=u},function(e,t,n){\"use strict\";function i(e,t){return void 0===t&&(t={}),a(this,void 0,void 0,function(){var n,i,s,a,l,c;return u(this,function(u){switch(u.label){case 0:n=o(t),i=0,s=n.startingDelay,u.label=1;case 1:if(!(i<n.numOfAttempts))return[3,7];u.label=2;case 2:return u.trys.push([2,5,,6]),[4,r(s)];case 3:return u.sent(),i++,[4,e.fn()];case 4:return[2,u.sent()];case 5:if(a=u.sent(),l=!e.retry||e.retry(a,i),c=i>=n.numOfAttempts,!l||c)throw a;return s*=n.timeMultiple,[3,6];case 6:return[3,1];case 7:throw new Error(\"Something went wrong.\")}})})}function o(e){var t=s({},l,e);return t.numOfAttempts<1&&(t.numOfAttempts=1),t}function r(e){return new Promise(function(t){return setTimeout(t,e)})}var s=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},a=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},u=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=2&n[0]?r.return:n[0]?r.throw||((s=r.return)&&s.call(r),0):r.next)&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[2&n[0],s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var l={numOfAttempts:10,timeMultiple:2,startingDelay:100};t.backOff=i},function(e,t){var n;!function(e){!function(e){function t(e,t){void 0===t&&(t={});var n=t.body||document.body;n.className?-1==n.className.indexOf(\"coveo-modal-opened\")&&(n.className+=\" coveo-modal-opened\"):n.className=\"coveo-modal-opened\";var u=document.createElement(\"div\");u.className=\"coveo-modal-container coveo-opened \",\"small\"==t.sizeMod&&(u.className+=\" coveo-mod-small\"),\"big\"==t.sizeMod&&(u.className+=\" coveo-mod-big\"),setTimeout(function(){u.className+=\" coveo-mod-fade-in-scale\"},0),n.appendChild(u),!0===t.fullscreen&&(u.className+=\" coveo-fullscreen\");var l=document.createElement(\"div\");l.className=\"coveo-modal-backdrop coveo-modal-transparent\",n.appendChild(l),setTimeout(function(){r(l,\"coveo-modal-transparent\")},0);var c=document.createElement(\"div\");c.className=\"coveo-modal-content\",u.appendChild(c);var p=function(e,i){if(void 0===e&&(e=0),void 0===i&&(i=!1),!1!==(null==t.validation||t.validation(e))||i){u.parentElement&&u.parentElement.removeChild(u);var o=a.indexOf(p);return o>=0&&a.splice(o,1),null==n.querySelector(\".coveo-modal-container\")&&r(n,\"coveo-modal-opened\"),l.parentNode&&l.parentNode.removeChild(l),!0}return!1},h=i(t,p),d=h.header,f=h.closeIcon;c.appendChild(d),c.appendChild(o(t,e)),f.addEventListener(\"click\",function(){p()}),l.addEventListener(\"click\",function(){p()});var m=function(e){27==e.keyCode&&-1!=n.className.indexOf(\"coveo-modal-opened\")&&(p(),document.removeEventListener(\"keyup\",m))};document.addEventListener(\"keyup\",m);var y,g=function(e,t){var n=document.createElement(\"button\");n.className=\"coveo-btn\",n.textContent=e,n.addEventListener(\"click\",function(){return p(t)}),y.appendChild(n)};return null!=t.buttons&&(y=document.createElement(\"footer\"),y.className=\"coveo-modal-footer\",c.appendChild(y),t.buttons&s.OK&&g(\"Ok\",s.OK),t.buttons&s.APPLY&&g(\"Apply\",s.APPLY),t.buttons&s.YES&&g(\"Yes\",s.YES),t.buttons&s.NO&&g(\"No\",s.NO),t.buttons&s.CANCEL&&g(\"Cancel\",s.CANCEL)),a.push(p),null!=t.className&&(u.className+=\" \"+t.className),{modalBox:u,wrapper:c,buttons:y,content:c,overlay:l,close:p}}function n(e){void 0===e&&(e=!1);for(var t=0;a.length>t;){a[t](0,e)||t++}}function i(e,t){var n=document.createElement(\"header\");if(n.className=\"coveo-modal-header\",null!=e.title){var i=document.createElement(\"h1\");n.appendChild(i),e.title instanceof HTMLElement?i.appendChild(e.title):i.innerHTML=e.title,!0===e.titleClose&&i.addEventListener(\"click\",function(){return t()})}var o=document.createElement(\"span\");o.className=\"coveo-small-close\",n.appendChild(o);return o.innerHTML='<svg viewBox=\"0 0 22 22\" class=\"coveo-icon coveo-fill-pure-white\">\\n                    <g transform=\"matrix(.7071-.7071.7071.7071-3.142 11)\">\\n                        <path d=\"m9-3.4h2v26.9h-2z\"></path>\\n                        <path d=\"m-3.4 9h26.9v2h-26.9z\"></path>\\n                    </g>\\n                </svg>',{header:n,closeIcon:o}}function o(e,t){var n=document.createElement(\"div\");return n.className=\"coveo-modal-body coveo-mod-header-paddding coveo-mod-form-top-bottom-padding\",n.appendChild(t),n}function r(e,t){e.className=e.className.replace(new RegExp(\"(^|\\\\s)\"+t+\"(\\\\s|\\\\b)\",\"g\"),\"$1\")}!function(e){e[e.OK=1]=\"OK\",e[e.APPLY=2]=\"APPLY\",e[e.YES=4]=\"YES\",e[e.NO=8]=\"NO\",e[e.CANCEL=16]=\"CANCEL\"}(e.BUTTON||(e.BUTTON={}));var s=e.BUTTON,a=[];e.open=t,e.close=n}(e.ModalBox||(e.ModalBox={}))}(n||(n={})),e.exports=n.ModalBox},function(e,t){!function(){\"use strict\";var e,t,n=\"undefined\",i=\"string\",o=self.navigator,r=String,s=Object.prototype.hasOwnProperty,a={},u={},l=/^\\s*application\\/(?:vnd\\.oftn\\.|x-)?l10n\\+json\\s*(?:$|;)/i,c=\"locale\",p=\"defaultLocale\",h=\"toLocaleString\",d=\"toLowerCase\",f=Array.prototype.indexOf||function(e){for(var t=this.length,n=0;t>n;n++)if(n in this&&this[n]===e)return n;return-1},m=function(t){var n=new e;return n.open(\"GET\",t,!1),n.send(null),200!==n.status?(setTimeout(function(){var e=new Error(\"Unable to load localization data: \"+t);throw e.name=\"Localization Error\",e},0),{}):JSON.parse(n.responseText)},y=r[h]=function(e){if(arguments.length>0&&\"number\"!=typeof e)if(typeof e===i)y(m(e));else if(!1===e)u={};else{var t,n,o;for(t in e)if(s.call(e,t)){if(n=e[t],t=t[d](),t in u&&!1!==n||(u[t]={}),!1===n)continue;if(typeof n===i){if(0!==r[c][d]().indexOf(t)){t in a||(a[t]=[]),a[t].push(n);continue}n=m(n)}for(o in n)s.call(n,o)&&(u[t][o]=n[o])}}return Function.prototype[h].apply(r,arguments)},g=function(e){for(var t,n=a[e],i=0,o=n.length;o>i;i++)t={},t[e]=m(n[i]),y(t);delete a[e]},v=r.prototype[h]=function(){var e,n=t,i=r[n?p:c],o=i[d]().split(\"-\"),s=o.length,l=this.valueOf();t=!1;do{if(e=o.slice(0,s).join(\"-\"),e in a&&g(e),e in u&&l in u[e])return u[e][l]}while(s-- >1);return!n&&r[p]?(t=!0,v.call(l)):l};if(typeof XMLHttpRequest===n&&typeof ActiveXObject!==n){var b=ActiveXObject;e=function(){try{return new b(\"Msxml2.XMLHTTP.6.0\")}catch(e){}try{return new b(\"Msxml2.XMLHTTP.3.0\")}catch(e){}try{return new b(\"Msxml2.XMLHTTP\")}catch(e){}throw new Error(\"XMLHttpRequest not supported by this browser.\")}}else e=XMLHttpRequest;if(r[p]=r[p]||\"\",r[c]=o&&(o.language||o.userLanguage)||\"\",typeof document!==n)for(var C,S=document.getElementsByTagName(\"link\"),w=S.length;w--;){var x=S[w],_=(x.getAttribute(\"rel\")||\"\")[d]().split(/\\s+/);l.test(x.type)&&(-1!==f.call(_,\"localizations\")?y(x.getAttribute(\"href\")):-1!==f.call(_,\"localization\")&&(C={},C[(x.getAttribute(\"hreflang\")||\"\")[d]()]=x.getAttribute(\"href\"),y(C)))}}(),e.exports=window.String.toLocaleString},function(e,t,n){/*! globalize - v0.1.1 - 2013-04-30\r\n* https://github.com/jquery/globalize\r\n* Copyright 2013 ; Licensed MIT */\r\nvar i=function(t,n){var o,r,s,a,u,l,c,p,h,d,f,m,y,g,v,b,C,S,w,x,_,O,E,A;return o=function(e){return new o.prototype.init(e)},e.exports=o,o.cultures={},o.prototype={constructor:o,init:function(e){return this.cultures=o.cultures,this.cultureSelector=e,this}},o.prototype.init.prototype=o.prototype,o.cultures.default={name:\"en\",englishName:\"English\",nativeName:\"English\",isRTL:!1,language:\"en\",numberFormat:{pattern:[\"-n\"],decimals:2,\",\":\",\",\".\":\".\",groupSizes:[3],\"+\":\"+\",\"-\":\"-\",NaN:\"NaN\",negativeInfinity:\"-Infinity\",positiveInfinity:\"Infinity\",percent:{pattern:[\"-n %\",\"n %\"],decimals:2,groupSizes:[3],\",\":\",\",\".\":\".\",symbol:\"%\"},currency:{pattern:[\"($n)\",\"$n\"],decimals:2,groupSizes:[3],\",\":\",\",\".\":\".\",symbol:\"$\"}},calendars:{standard:{name:\"Gregorian_USEnglish\",\"/\":\"/\",\":\":\":\",firstDay:0,days:{names:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],namesAbbr:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],namesShort:[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"]},months:{names:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\",\"\"],namesAbbr:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"\"]},AM:[\"AM\",\"am\",\"AM\"],PM:[\"PM\",\"pm\",\"PM\"],eras:[{name:\"A.D.\",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:\"M/d/yyyy\",D:\"dddd, MMMM dd, yyyy\",t:\"h:mm tt\",T:\"h:mm:ss tt\",f:\"dddd, MMMM dd, yyyy h:mm tt\",F:\"dddd, MMMM dd, yyyy h:mm:ss tt\",M:\"MMMM dd\",Y:\"yyyy MMMM\",S:\"yyyy'-'MM'-'dd'T'HH':'mm':'ss\"}}},messages:{}},o.cultures.default.calendar=o.cultures.default.calendars.standard,o.cultures.en=o.cultures.default,o.cultureSelector=\"en\",r=/^0x[a-f0-9]+$/i,s=/^[+\\-]?infinity$/i,a=/^[+\\-]?\\d*\\.?\\d*(e[+\\-]?\\d+)?$/,u=/^\\s+|\\s+$/g,l=function(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,i=e.length;i>n;n++)if(e[n]===t)return n;return-1},c=function(e,t){return e.substr(e.length-t.length)===t},p=function(){var e,t,i,o,r,s,a=arguments[0]||{},u=1,l=arguments.length,c=!1;for(\"boolean\"==typeof a&&(c=a,a=arguments[1]||{},u=2),\"object\"==typeof a||d(a)||(a={});l>u;u++)if(null!=(e=arguments[u]))for(t in e)i=a[t],o=e[t],a!==o&&(c&&o&&(f(o)||(r=h(o)))?(r?(r=!1,s=i&&h(i)?i:[]):s=i&&f(i)?i:{},a[t]=p(c,s,o)):o!==n&&(a[t]=o));return a},h=Array.isArray||function(e){return\"[object Array]\"===Object.prototype.toString.call(e)},d=function(e){return\"[object Function]\"===Object.prototype.toString.call(e)},f=function(e){return\"[object Object]\"===Object.prototype.toString.call(e)},m=function(e,t){return 0===e.indexOf(t)},y=function(e){return(e+\"\").replace(u,\"\")},g=function(e){return isNaN(e)?NaN:Math[0>e?\"ceil\":\"floor\"](e)},v=function(e,t,n){var i;for(i=e.length;t>i;i+=1)e=n?\"0\"+e:e+\"0\";return e},b=function(e,t){for(var n=0,i=!1,o=0,r=e.length;r>o;o++){var s=e.charAt(o);switch(s){case\"'\":i?t.push(\"'\"):n++,i=!1;break;case\"\\\\\":i&&t.push(\"\\\\\"),i=!i;break;default:t.push(s),i=!1}}return n},C=function(e,t){t=t||\"F\";var n,i=e.patterns,o=t.length;if(1===o){if(!(n=i[t]))throw\"Invalid date format string '\"+t+\"'.\";t=n}else 2===o&&\"%\"===t.charAt(0)&&(t=t.charAt(1));return t},S=function(e,t,n){function i(e,t){var n,i=e+\"\";return t>1&&t>i.length?(n=y[t-2]+i,n.substr(n.length-t,t)):n=i}function o(e,t){if(m)return m[t];switch(t){case 0:return e.getFullYear();case 1:return e.getMonth();case 2:return e.getDate();default:throw\"Invalid part value \"+t}}var r,s=n.calendar,a=s.convert;if(!t||!t.length||\"i\"===t){if(n&&n.name.length)if(a)r=S(e,s.patterns.F,n);else{var u=new Date(e.getTime()),l=_(e,s.eras);u.setFullYear(O(e,s,l)),r=u.toLocaleString()}else r=\"\"+e;return r}var c=s.eras,p=\"s\"===t;t=C(s,t),r=[];var h,d,f,m,y=[\"0\",\"00\",\"000\"],g=/([^d]|^)(d|dd)([^d]|$)/g,v=0,w=x();for(!p&&a&&(m=a.fromGregorian(e));;){var E=w.lastIndex,A=w.exec(t),T=t.slice(E,A?A.index:t.length);if(v+=b(T,r),!A)break;if(v%2)r.push(A[0]);else{var R=A[0],F=R.length;switch(R){case\"ddd\":case\"dddd\":var I=3===F?s.days.namesAbbr:s.days.names;r.push(I[e.getDay()]);break;case\"d\":case\"dd\":d=!0,r.push(i(o(e,2),F));break;case\"MMM\":case\"MMMM\":var M=o(e,1);r.push(s.monthsGenitive&&function(){return d||f?d:(d=g.test(t),f=!0,d)}()?s.monthsGenitive[3===F?\"namesAbbr\":\"names\"][M]:s.months[3===F?\"namesAbbr\":\"names\"][M]);break;case\"M\":case\"MM\":r.push(i(o(e,1)+1,F));break;case\"y\":case\"yy\":case\"yyyy\":M=m?m[0]:O(e,s,_(e,c),p),4>F&&(M%=100),r.push(i(M,F));break;case\"h\":case\"hh\":h=e.getHours()%12,0===h&&(h=12),r.push(i(h,F));break;case\"H\":case\"HH\":r.push(i(e.getHours(),F));break;case\"m\":case\"mm\":r.push(i(e.getMinutes(),F));break;case\"s\":case\"ss\":r.push(i(e.getSeconds(),F));break;case\"t\":case\"tt\":M=12>e.getHours()?s.AM?s.AM[0]:\" \":s.PM?s.PM[0]:\" \",r.push(1===F?M.charAt(0):M);break;case\"f\":case\"ff\":case\"fff\":r.push(i(e.getMilliseconds(),3).substr(0,F));break;case\"z\":case\"zz\":h=e.getTimezoneOffset()/60,r.push((0>=h?\"+\":\"-\")+i(Math.floor(Math.abs(h)),F));break;case\"zzz\":h=e.getTimezoneOffset()/60,r.push((0>=h?\"+\":\"-\")+i(Math.floor(Math.abs(h)),2)+\":\"+i(Math.abs(e.getTimezoneOffset()%60),2));break;case\"g\":case\"gg\":s.eras&&r.push(s.eras[_(e,c)].name);break;case\"/\":r.push(s[\"/\"]);break;default:throw\"Invalid date format pattern '\"+R+\"'.\"}}}return r.join(\"\")},function(){var e;e=function(e,t,n){var i=n.groupSizes,o=i[0],r=1,s=Math.pow(10,t),a=Math.round(e*s)/s;isFinite(a)||(a=e),e=a;var u=e+\"\",l=\"\",c=u.split(/e/i),p=c.length>1?parseInt(c[1],10):0;u=c[0],c=u.split(\".\"),u=c[0],l=c.length>1?c[1]:\"\",p>0?(l=v(l,p,!1),u+=l.slice(0,p),l=l.substr(p)):0>p&&(p=-p,u=v(u,p+1,!0),l=u.slice(-p,u.length)+l,u=u.slice(0,-p)),l=t>0?n[\".\"]+(l.length>t?l.slice(0,t):v(l,t)):\"\";for(var h=u.length-1,d=n[\",\"],f=\"\";h>=0;){if(0===o||o>h)return u.slice(0,h+1)+(f.length?d+f+l:l);f=u.slice(h-o+1,h+1)+(f.length?d+f:\"\"),h-=o,i.length>r&&(o=i[r],r++)}return u.slice(0,h+1)+d+f+l},w=function(t,n,i){if(!isFinite(t))return 1/0===t?i.numberFormat.positiveInfinity:t===-1/0?i.numberFormat.negativeInfinity:i.numberFormat.NaN;if(!n||\"i\"===n)return i.name.length?t.toLocaleString():\"\"+t;n=n||\"D\";var o,r=i.numberFormat,s=Math.abs(t),a=-1;n.length>1&&(a=parseInt(n.slice(1),10));var u,l=n.charAt(0).toUpperCase();switch(l){case\"D\":o=\"n\",s=g(s),-1!==a&&(s=v(\"\"+s,a,!0)),0>t&&(s=\"-\"+s);break;case\"N\":u=r;case\"C\":u=u||r.currency;case\"P\":u=u||r.percent,o=0>t?u.pattern[0]:u.pattern[1]||\"n\",-1===a&&(a=u.decimals),s=e(s*(\"P\"===l?100:1),a,u);break;default:throw\"Bad number format specifier: \"+l}for(var c=/n|\\$|-|%/g,p=\"\";;){var h=c.lastIndex,d=c.exec(o);if(p+=o.slice(h,d?d.index:o.length),!d)break;switch(d[0]){case\"n\":p+=s;break;case\"$\":p+=r.currency.symbol;break;case\"-\":/[1-9]/.test(s)&&(p+=r[\"-\"]);break;case\"%\":p+=r.percent.symbol}}return p}}(),x=function(){return/\\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g},_=function(e,t){if(!t)return 0;for(var n,i=e.getTime(),o=0,r=t.length;r>o;o++)if(null===(n=t[o].start)||i>=n)return o;return 0},O=function(e,t,n,i){var o=e.getFullYear();return!i&&t.eras&&(o-=t.eras[n].offset),o},function(){var e,t,n,i,o,r,s;e=function(e,t){if(100>t){var n=new Date,i=_(n),o=O(n,e,i),r=e.twoDigitYearMax;r=\"string\"==typeof r?(new Date).getFullYear()%100+parseInt(r,10):r,(t+=o-o%100)>r&&(t-=100)}return t},t=function(e,t,n){var i,o=e.days,a=e._upperDays;return a||(e._upperDays=a=[s(o.names),s(o.namesAbbr),s(o.namesShort)]),t=r(t),n?-1===(i=l(a[1],t))&&(i=l(a[2],t)):i=l(a[0],t),i},n=function(e,t,n){var i=e.months,o=e.monthsGenitive||e.months,a=e._upperMonths,u=e._upperMonthsGen;a||(e._upperMonths=a=[s(i.names),s(i.namesAbbr)],e._upperMonthsGen=u=[s(o.names),s(o.namesAbbr)]),t=r(t);var c=l(n?a[1]:a[0],t);return 0>c&&(c=l(n?u[1]:u[0],t)),c},i=function(e,t){var n=e._parseRegExp;if(n){var i=n[t];if(i)return i}else e._parseRegExp=n={};for(var o,r=C(e,t).replace(/([\\^\\$\\.\\*\\+\\?\\|\\[\\]\\(\\)\\{\\}])/g,\"\\\\\\\\$1\"),s=[\"^\"],a=[],u=0,l=0,c=x();null!==(o=c.exec(r));){var p=r.slice(u,o.index);if(u=c.lastIndex,(l+=b(p,s))%2)s.push(o[0]);else{var h,d=o[0],f=d.length;switch(d){case\"dddd\":case\"ddd\":case\"MMMM\":case\"MMM\":case\"gg\":case\"g\":h=\"(\\\\D+)\";break;case\"tt\":case\"t\":h=\"(\\\\D*)\";break;case\"yyyy\":case\"fff\":case\"ff\":case\"f\":h=\"(\\\\d{\"+f+\"})\";break;case\"dd\":case\"d\":case\"MM\":case\"M\":case\"yy\":case\"y\":case\"HH\":case\"H\":case\"hh\":case\"h\":case\"mm\":case\"m\":case\"ss\":case\"s\":h=\"(\\\\d\\\\d?)\";break;case\"zzz\":h=\"([+-]?\\\\d\\\\d?:\\\\d{2})\";break;case\"zz\":case\"z\":h=\"([+-]?\\\\d\\\\d?)\";break;case\"/\":h=\"(\\\\/)\";break;default:throw\"Invalid date format pattern '\"+d+\"'.\"}h&&s.push(h),a.push(o[0])}}b(r.slice(u),s),s.push(\"$\");var m=s.join(\"\").replace(/\\s+/g,\"\\\\s+\"),y={regExp:m,groups:a};return n[t]=y},o=function(e,t,n){return t>e||e>n},r=function(e){return e.split(\" \").join(\" \").toUpperCase()},s=function(e){for(var t=[],n=0,i=e.length;i>n;n++)t[n]=r(e[n]);return t},E=function(r,s,a){r=y(r);var u=a.calendar,l=i(u,s),c=RegExp(l.regExp).exec(r);if(null===c)return null;for(var p,h=l.groups,d=null,f=null,g=null,v=null,b=null,C=0,S=0,w=0,x=0,_=null,O=!1,E=0,A=h.length;A>E;E++){var T=c[E+1];if(T){var R=h[E],F=R.length,I=parseInt(T,10);switch(R){case\"dd\":case\"d\":if(v=I,o(v,1,31))return null;break;case\"MMM\":case\"MMMM\":if(g=n(u,T,3===F),o(g,0,11))return null;break;case\"M\":case\"MM\":if(g=I-1,o(g,0,11))return null;break;case\"y\":case\"yy\":case\"yyyy\":if(f=4>F?e(u,I):I,o(f,0,9999))return null;break;case\"h\":case\"hh\":if(C=I,12===C&&(C=0),o(C,0,11))return null;break;case\"H\":case\"HH\":if(C=I,o(C,0,23))return null;break;case\"m\":case\"mm\":if(S=I,o(S,0,59))return null;break;case\"s\":case\"ss\":if(w=I,o(w,0,59))return null;break;case\"tt\":case\"t\":if(!(O=u.PM&&(T===u.PM[0]||T===u.PM[1]||T===u.PM[2]))&&(!u.AM||T!==u.AM[0]&&T!==u.AM[1]&&T!==u.AM[2]))return null;break;case\"f\":case\"ff\":case\"fff\":if(x=I*Math.pow(10,3-F),o(x,0,999))return null;break;case\"ddd\":case\"dddd\":if(b=t(u,T,3===F),o(b,0,6))return null;break;case\"zzz\":var M=T.split(/:/);if(2!==M.length)return null;if(p=parseInt(M[0],10),o(p,-12,13))return null;var P=parseInt(M[1],10);if(o(P,0,59))return null;_=60*p+(m(T,\"-\")?-P:P);break;case\"z\":case\"zz\":if(p=I,o(p,-12,13))return null;_=60*p;break;case\"g\":case\"gg\":var D=T;if(!D||!u.eras)return null;D=y(D.toLowerCase());for(var $=0,N=u.eras.length;N>$;$++)if(D===u.eras[$].name.toLowerCase()){d=$;break}if(null===d)return null}}}var V,k=new Date,L=u.convert;if(V=L?L.fromGregorian(k)[0]:k.getFullYear(),null===f?f=V:u.eras&&(f+=u.eras[d||0].offset),null===g&&(g=0),null===v&&(v=1),L){if(null===(k=L.toGregorian(f,g,v)))return null}else{if(k.setFullYear(f,g,v),k.getDate()!==v)return null;if(null!==b&&k.getDay()!==b)return null}if(O&&12>C&&(C+=12),k.setHours(C,S,w,x),null!==_){var B=k.getMinutes()-(_+k.getTimezoneOffset());k.setHours(k.getHours()+parseInt(B/60,10),B%60)}return k}}(),A=function(e,t,n){var i,o=t[\"-\"],r=t[\"+\"];switch(n){case\"n -\":o=\" \"+o,r=\" \"+r;case\"n-\":c(e,o)?i=[\"-\",e.substr(0,e.length-o.length)]:c(e,r)&&(i=[\"+\",e.substr(0,e.length-r.length)]);break;case\"- n\":o+=\" \",r+=\" \";case\"-n\":m(e,o)?i=[\"-\",e.substr(o.length)]:m(e,r)&&(i=[\"+\",e.substr(r.length)]);break;case\"(n)\":m(e,\"(\")&&c(e,\")\")&&(i=[\"-\",e.substr(1,e.length-2)])}return i||[\"\",e]},o.prototype.findClosestCulture=function(e){return o.findClosestCulture.call(this,e)},o.prototype.format=function(e,t,n){return o.format.call(this,e,t,n)},o.prototype.localize=function(e,t){return o.localize.call(this,e,t)},o.prototype.parseInt=function(e,t,n){return o.parseInt.call(this,e,t,n)},o.prototype.parseFloat=function(e,t,n){return o.parseFloat.call(this,e,t,n)},o.prototype.culture=function(e){return o.culture.call(this,e)},o.addCultureInfo=function(e,t,n){var i={},o=!1;\"string\"!=typeof e?(n=e,e=this.culture().name,i=this.cultures[e]):\"string\"!=typeof t?(n=t,o=null==this.cultures[e],i=this.cultures[e]||this.cultures.default):(o=!0,i=this.cultures[t]),this.cultures[e]=p(!0,{},i,n),o&&(this.cultures[e].calendar=this.cultures[e].calendars.standard)},o.findClosestCulture=function(e){var t;if(!e)return this.findClosestCulture(this.cultureSelector)||this.cultures.default;if(\"string\"==typeof e&&(e=e.split(\",\")),h(e)){var n,i,o=this.cultures,r=e,s=r.length,a=[];for(i=0;s>i;i++){e=y(r[i]);var u,l=e.split(\";\");n=y(l[0]),1===l.length?u=1:(e=y(l[1]),0===e.indexOf(\"q=\")?(e=e.substr(2),u=parseFloat(e),u=isNaN(u)?0:u):u=1),a.push({lang:n,pri:u})}for(a.sort(function(e,t){return e.pri<t.pri?1:e.pri>t.pri?-1:0}),i=0;s>i;i++)if(n=a[i].lang,t=o[n])return t;for(i=0;s>i;i++)for(n=a[i].lang;;){var c=n.lastIndexOf(\"-\");if(-1===c)break;if(n=n.substr(0,c),t=o[n])return t}for(i=0;s>i;i++){n=a[i].lang;for(var p in o){var d=o[p];if(d.language===n)return d}}}else if(\"object\"==typeof e)return e;return t||null},o.format=function(e,t,n){var i=this.findClosestCulture(n);return e instanceof Date?e=S(e,t,i):\"number\"==typeof e&&(e=w(e,t,i)),e},o.localize=function(e,t){return this.findClosestCulture(t).messages[e]||this.cultures.default.messages[e]},o.parseDate=function(e,t,n){n=this.findClosestCulture(n);var i,o,r;if(t){if(\"string\"==typeof t&&(t=[t]),t.length)for(var s=0,a=t.length;a>s;s++){var u=t[s];if(u&&(i=E(e,u,n)))break}}else{r=n.calendar.patterns;for(o in r)if(i=E(e,r[o],n))break}return i||null},o.parseInt=function(e,t,n){return g(o.parseFloat(e,t,n))},o.parseFloat=function(e,t,n){\"number\"!=typeof t&&(n=t,t=10);var i=this.findClosestCulture(n),o=NaN,u=i.numberFormat;if(e.indexOf(i.numberFormat.currency.symbol)>-1&&(e=e.replace(i.numberFormat.currency.symbol,\"\"),e=e.replace(i.numberFormat.currency[\".\"],i.numberFormat[\".\"])),e.indexOf(i.numberFormat.percent.symbol)>-1&&(e=e.replace(i.numberFormat.percent.symbol,\"\")),e=e.replace(/ /g,\"\"),s.test(e))o=parseFloat(e);else if(!t&&r.test(e))o=parseInt(e,16);else{var l=A(e,u,u.pattern[0]),c=l[0],p=l[1];\"\"===c&&\"(n)\"!==u.pattern[0]&&(l=A(e,u,\"(n)\"),c=l[0],p=l[1]),\"\"===c&&\"-n\"!==u.pattern[0]&&(l=A(e,u,\"-n\"),c=l[0],p=l[1]),c=c||\"+\";var h,d,f=p.indexOf(\"e\");0>f&&(f=p.indexOf(\"E\")),0>f?(d=p,h=null):(d=p.substr(0,f),h=p.substr(f+1));var m,y,g=u[\".\"],v=d.indexOf(g);0>v?(m=d,y=null):(m=d.substr(0,v),y=d.substr(v+g.length));var b=u[\",\"];m=m.split(b).join(\"\");var C=b.replace(/\\u00A0/g,\" \");b!==C&&(m=m.split(C).join(\"\"));var S=c+m;if(null!==y&&(S+=\".\"+y),null!==h){var w=A(h,u,\"-n\");S+=\"e\"+(w[0]||\"+\")+w[1]}a.test(S)&&(o=parseFloat(S))}return o},o.culture=function(e){return e!==n&&(this.cultureSelector=e),this.findClosestCulture(e)||this.cultures.default},i}()},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(148);t.AnalyticsEndpoint=i.AnalyticsEndpoint;var o=n(86);t.EndpointCaller=o.EndpointCaller;var r=n(141);t.QueryError=r.QueryError},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(86),o=n(39),r=function(){function e(e){void 0===e&&(e={}),this.options=e,this.passthrough=new i.EndpointCaller(e)}return e.prototype.call=function(e){return this.shouldSendAsBeacon(e)?void this.sendBeacon(e):this.passthrough.call(e)},Object.defineProperty(e.prototype,\"beaconApiIsUsable\",{get:function(){return\"function\"==typeof navigator.sendBeacon},enumerable:!0,configurable:!0}),e.prototype.sendBeacon=function(e){var t=e.queryString.concat(this.additionalQueryStringParams),n=o.UrlUtils.normalizeAsString({paths:e.url,queryAsString:t}),r=i.EndpointCaller.convertJsonToFormBody({clickEvent:e.requestData});navigator.sendBeacon(n,new Blob([r],{type:\"application/x-www-form-urlencoded\"}))},Object.defineProperty(e.prototype,\"additionalQueryStringParams\",{get:function(){var e=this.accessTokenAsQueryString;return e?[e]:[]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"accessTokenAsQueryString\",{get:function(){var e=this.options.accessToken;return e?\"access_token=\"+e:\"\"},enumerable:!0,configurable:!0}),e.prototype.shouldSendAsBeacon=function(e){return-1!=e.url.indexOf(\"/click\")&&this.beaconApiIsUsable},e}();t.AnalyticsEndpointCaller=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(40);t.QueryController=i.QueryController;var o=n(149);t.HistoryController=o.HistoryController;var r=n(150);t.LocalStorageHistoryController=r.LocalStorageHistoryController},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(e,t){this.endpoint=e,this.callOptions=t,this.options=e.options}return e.prototype.getBaseUri=function(){return this.endpoint.getBaseUri()},e.prototype.getBaseAlertsUri=function(){return this.endpoint.getBaseAlertsUri()},e.prototype.getAuthenticationProviderUri=function(e,t,n){return this.endpoint.getAuthenticationProviderUri(e,t,n)},e.prototype.isJsonp=function(){return this.endpoint.isJsonp()},e.prototype.search=function(e,t){return this.endpoint.search(e,this.enrichCallOptions(t))},e.prototype.getExportToExcelLink=function(e,t,n){return this.endpoint.getExportToExcelLink(e,t,this.enrichCallOptions(n))},e.prototype.tagDocument=function(e,t){return this.endpoint.tagDocument(e,this.enrichCallOptions(t))},e.prototype.getQuerySuggest=function(e,t){return this.endpoint.getQuerySuggest(e,this.enrichCallOptions(t))},e.prototype.facetSearch=function(e,t){return this.endpoint.facetSearch(e,this.enrichCallOptions(t))},e.prototype.rateDocument=function(e,t){return this.endpoint.rateDocument(e,this.enrichCallOptions(t))},e.prototype.getRawDataStream=function(e,t,n){return this.endpoint.getRawDataStream(e,t,this.enrichCallOptions(n))},e.prototype.getDocument=function(e,t){return this.endpoint.getDocument(e,this.enrichCallOptions(t))},e.prototype.getDocumentText=function(e,t){return this.endpoint.getDocumentText(e,this.enrichCallOptions(t))},e.prototype.getDocumentHtml=function(e,t){return this.endpoint.getDocumentHtml(e,this.enrichCallOptions(t))},e.prototype.getViewAsHtmlUri=function(e,t){return this.endpoint.getViewAsHtmlUri(e,this.enrichCallOptions(t))},e.prototype.getViewAsDatastreamUri=function(e,t,n){return this.endpoint.getViewAsDatastreamUri(e,t,this.enrichCallOptions(n))},e.prototype.listFieldValuesBatch=function(e,t){return this.endpoint.listFieldValuesBatch(e,this.enrichCallOptions(t))},e.prototype.listFieldValues=function(e,t){return this.endpoint.listFieldValues(e,this.enrichCallOptions(t))},e.prototype.listFields=function(e){return this.endpoint.listFields(this.enrichCallOptions(e))},e.prototype.extensions=function(e){return this.endpoint.extensions(this.enrichCallOptions(e))},e.prototype.follow=function(e){return this.endpoint.follow(e)},e.prototype.listSubscriptions=function(e){return this.endpoint.listSubscriptions(e)},e.prototype.updateSubscription=function(e){return this.endpoint.updateSubscription(e)},e.prototype.deleteSubscription=function(e){return this.endpoint.deleteSubscription(e)},e.prototype.logError=function(e){return this.endpoint.logError(e)},e.prototype.enrichCallOptions=function(e){return i.extend({},e,this.callOptions)},e}();t.SearchEndpointWithDefaultCallOptions=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),function(e){for(var n in e)t.hasOwnProperty(n)||(t[n]=e[n])}(n(28));var i=n(46);t.ComponentOptionsType=i.ComponentOptionsType;var o=n(8);t.ComponentOptions=o.ComponentOptions;var r=n(7);t.Component=r.Component;var s=n(34);t.BaseComponent=s.BaseComponent;var a=n(41);t.RootComponent=a.RootComponent;var u=n(44);t.QueryBuilder=u.QueryBuilder;var l=n(71);t.ExpressionBuilder=l.ExpressionBuilder;var c=n(2);t.Initialization=c.Initialization;var p=n(2);t.CoveoJQuery=p.Initialization;var h=n(200);t.initCoveoJQuery=h.initCoveoJQuery;var d=n(85);t.DatePicker=d.DatePicker;var f=n(58);t.ResponsiveComponentsManager=f.ResponsiveComponentsManager;var m=n(116);t.ResponsiveDropdown=m.ResponsiveDropdown;var y=n(130);t.ResponsiveDropdownHeader=y.ResponsiveDropdownHeader;var g=n(110);t.ResponsiveDropdownContent=g.ResponsiveDropdownContent},function(e,t,n){var i,o;!function(r){/**\r\n * This script gives you the zone info key representing your device's time zone setting.\r\n *\r\n * @name jsTimezoneDetect\r\n * @version 1.0.6\r\n * @author Jon Nylander\r\n * @license MIT License - https://bitbucket.org/pellepim/jstimezonedetect/src/default/LICENCE.txt\r\n *\r\n * For usage and examples, visit:\r\n * http://pellepim.bitbucket.org/jstz/\r\n *\r\n * Copyright (c) Jon Nylander\r\n */\r\nvar s=function(){\"use strict\";var e={DAY:864e5,HOUR:36e5,MINUTE:6e4,SECOND:1e3,BASELINE_YEAR:2014,MAX_SCORE:864e6,AMBIGUITIES:{\"America/Denver\":[\"America/Mazatlan\"],\"Europe/London\":[\"Africa/Casablanca\"],\"America/Chicago\":[\"America/Mexico_City\"],\"America/Asuncion\":[\"America/Campo_Grande\",\"America/Santiago\"],\"America/Montevideo\":[\"America/Sao_Paulo\",\"America/Santiago\"],\"Asia/Beirut\":[\"Asia/Amman\",\"Asia/Jerusalem\",\"Europe/Helsinki\",\"Asia/Damascus\",\"Africa/Cairo\",\"Asia/Gaza\",\"Europe/Minsk\"],\"Pacific/Auckland\":[\"Pacific/Fiji\"],\"America/Los_Angeles\":[\"America/Santa_Isabel\"],\"America/New_York\":[\"America/Havana\"],\"America/Halifax\":[\"America/Goose_Bay\"],\"America/Godthab\":[\"America/Miquelon\"],\"Asia/Dubai\":[\"Asia/Yerevan\"],\"Asia/Jakarta\":[\"Asia/Krasnoyarsk\"],\"Asia/Shanghai\":[\"Asia/Irkutsk\",\"Australia/Perth\"],\"Australia/Sydney\":[\"Australia/Lord_Howe\"],\"Asia/Tokyo\":[\"Asia/Yakutsk\"],\"Asia/Dhaka\":[\"Asia/Omsk\"],\"Asia/Baku\":[\"Asia/Yerevan\"],\"Australia/Brisbane\":[\"Asia/Vladivostok\"],\"Pacific/Noumea\":[\"Asia/Vladivostok\"],\"Pacific/Majuro\":[\"Asia/Kamchatka\",\"Pacific/Fiji\"],\"Pacific/Tongatapu\":[\"Pacific/Apia\"],\"Asia/Baghdad\":[\"Europe/Minsk\",\"Europe/Moscow\"],\"Asia/Karachi\":[\"Asia/Yekaterinburg\"],\"Africa/Johannesburg\":[\"Asia/Gaza\",\"Africa/Cairo\"]}},t=function(e){var t=-e.getTimezoneOffset();return null!==t?t:0},n=function(){var n=t(new Date(e.BASELINE_YEAR,0,2)),i=t(new Date(e.BASELINE_YEAR,5,2)),o=n-i;return o<0?n+\",1\":o>0?i+\",1,s\":n+\",0\"},i=function(){var e,t;if(\"undefined\"!=typeof Intl&&void 0!==Intl.DateTimeFormat&&void 0!==(e=Intl.DateTimeFormat())&&void 0!==e.resolvedOptions)return t=e.resolvedOptions().timeZone,t&&(t.indexOf(\"/\")>-1||\"UTC\"===t)?t:void 0},o=function(e){for(var t=new Date(e,0,1,0,0,1,0).getTime(),n=new Date(e,12,31,23,59,59).getTime(),i=t,o=new Date(i).getTimezoneOffset(),s=null,a=null;i<n-864e5;){var u=new Date(i),l=u.getTimezoneOffset();l!==o&&(l<o&&(s=u),l>o&&(a=u),o=l),i+=864e5}return!(!s||!a)&&{s:r(s).getTime(),e:r(a).getTime()}},r=function t(n,i,o){void 0===i&&(i=e.DAY,o=e.HOUR);for(var r=new Date(n.getTime()-i).getTime(),s=n.getTime()+i,a=new Date(r).getTimezoneOffset(),u=r,l=null;u<s-o;){var c=new Date(u);if(c.getTimezoneOffset()!==a){l=c;break}u+=o}return i===e.DAY?t(l,e.HOUR,e.MINUTE):i===e.HOUR?t(l,e.MINUTE,e.SECOND):l},a=function(e,t,n,i){if(\"N/A\"!==n)return n;if(\"Asia/Beirut\"===t){if(\"Africa/Cairo\"===i.name&&13983768e5===e[6].s&&14116788e5===e[6].e)return 0;if(\"Asia/Jerusalem\"===i.name&&13959648e5===e[6].s&&14118588e5===e[6].e)return 0}else if(\"America/Santiago\"===t){if(\"America/Asuncion\"===i.name&&14124816e5===e[6].s&&1397358e6===e[6].e)return 0;if(\"America/Campo_Grande\"===i.name&&14136912e5===e[6].s&&13925196e5===e[6].e)return 0}else if(\"America/Montevideo\"===t){if(\"America/Sao_Paulo\"===i.name&&14136876e5===e[6].s&&1392516e6===e[6].e)return 0}else if(\"Pacific/Auckland\"===t&&\"Pacific/Fiji\"===i.name&&14142456e5===e[6].s&&13961016e5===e[6].e)return 0;return n},u=function(t,n){for(var i={},o=s.olson.dst_rules.zones,r=o.length,u=e.AMBIGUITIES[n],l=0;l<r;l++){var c=o[l],p=function(i){for(var o=0,r=0;r<t.length;r++)if(i.rules[r]&&t[r]){if(!(t[r].s>=i.rules[r].s&&t[r].e<=i.rules[r].e)){o=\"N/A\";break}if(o=0,o+=Math.abs(t[r].s-i.rules[r].s),o+=Math.abs(i.rules[r].e-t[r].e),o>e.MAX_SCORE){o=\"N/A\";break}}return o=a(t,n,o,i)}(o[l]);\"N/A\"!==p&&(i[c.name]=p)}for(var h in i)if(i.hasOwnProperty(h))for(var d=0;d<u.length;d++)if(u[d]===h)return h;return n},l=function(e){var t=function(){for(var e=[],t=0;t<s.olson.dst_rules.years.length;t++){var n=o(s.olson.dst_rules.years[t]);e.push(n)}return e}();return function(e){for(var t=0;t<e.length;t++)if(!1!==e[t])return!0;return!1}(t)?u(t,e):e};return{determine:function(){var t=i();return t||(t=s.olson.timezones[n()],void 0!==e.AMBIGUITIES[t]&&(t=l(t))),{name:function(){return t}}}}}();s.olson=s.olson||{},s.olson.timezones={\"-720,0\":\"Etc/GMT+12\",\"-660,0\":\"Pacific/Pago_Pago\",\"-660,1,s\":\"Pacific/Apia\",\"-600,1\":\"America/Adak\",\"-600,0\":\"Pacific/Honolulu\",\"-570,0\":\"Pacific/Marquesas\",\"-540,0\":\"Pacific/Gambier\",\"-540,1\":\"America/Anchorage\",\"-480,1\":\"America/Los_Angeles\",\"-480,0\":\"Pacific/Pitcairn\",\"-420,0\":\"America/Phoenix\",\"-420,1\":\"America/Denver\",\"-360,0\":\"America/Guatemala\",\"-360,1\":\"America/Chicago\",\"-360,1,s\":\"Pacific/Easter\",\"-300,0\":\"America/Bogota\",\"-300,1\":\"America/New_York\",\"-270,0\":\"America/Caracas\",\"-240,1\":\"America/Halifax\",\"-240,0\":\"America/Santo_Domingo\",\"-240,1,s\":\"America/Asuncion\",\"-210,1\":\"America/St_Johns\",\"-180,1\":\"America/Godthab\",\"-180,0\":\"America/Argentina/Buenos_Aires\",\"-180,1,s\":\"America/Montevideo\",\"-120,0\":\"America/Noronha\",\"-120,1\":\"America/Noronha\",\"-60,1\":\"Atlantic/Azores\",\"-60,0\":\"Atlantic/Cape_Verde\",\"0,0\":\"UTC\",\"0,1\":\"Europe/London\",\"60,1\":\"Europe/Berlin\",\"60,0\":\"Africa/Lagos\",\"60,1,s\":\"Africa/Windhoek\",\"120,1\":\"Asia/Beirut\",\"120,0\":\"Africa/Johannesburg\",\"180,0\":\"Asia/Baghdad\",\"180,1\":\"Europe/Moscow\",\"210,1\":\"Asia/Tehran\",\"240,0\":\"Asia/Dubai\",\"240,1\":\"Asia/Baku\",\"270,0\":\"Asia/Kabul\",\"300,1\":\"Asia/Yekaterinburg\",\"300,0\":\"Asia/Karachi\",\"330,0\":\"Asia/Kolkata\",\"345,0\":\"Asia/Kathmandu\",\"360,0\":\"Asia/Dhaka\",\"360,1\":\"Asia/Omsk\",\"390,0\":\"Asia/Rangoon\",\"420,1\":\"Asia/Krasnoyarsk\",\"420,0\":\"Asia/Jakarta\",\"480,0\":\"Asia/Shanghai\",\"480,1\":\"Asia/Irkutsk\",\"525,0\":\"Australia/Eucla\",\"525,1,s\":\"Australia/Eucla\",\"540,1\":\"Asia/Yakutsk\",\"540,0\":\"Asia/Tokyo\",\"570,0\":\"Australia/Darwin\",\"570,1,s\":\"Australia/Adelaide\",\"600,0\":\"Australia/Brisbane\",\"600,1\":\"Asia/Vladivostok\",\"600,1,s\":\"Australia/Sydney\",\"630,1,s\":\"Australia/Lord_Howe\",\"660,1\":\"Asia/Kamchatka\",\"660,0\":\"Pacific/Noumea\",\"690,0\":\"Pacific/Norfolk\",\"720,1,s\":\"Pacific/Auckland\",\"720,0\":\"Pacific/Majuro\",\"765,1,s\":\"Pacific/Chatham\",\"780,0\":\"Pacific/Tongatapu\",\"780,1,s\":\"Pacific/Apia\",\"840,0\":\"Pacific/Kiritimati\"},s.olson.dst_rules={years:[2008,2009,2010,2011,2012,2013,2014],zones:[{name:\"Africa/Cairo\",rules:[{e:12199572e5,s:12090744e5},{e:1250802e6,s:1240524e6},{e:12858804e5,s:12840696e5},!1,!1,!1,{e:14116788e5,s:1406844e6}]},{name:\"Africa/Casablanca\",rules:[{e:12202236e5,s:12122784e5},{e:12508092e5,s:12438144e5},{e:1281222e6,s:12727584e5},{e:13120668e5,s:13017888e5},{e:13489704e5,s:1345428e6},{e:13828392e5,s:13761e8},{e:14142888e5,s:14069448e5}]},{name:\"America/Asuncion\",rules:[{e:12050316e5,s:12243888e5},{e:12364812e5,s:12558384e5},{e:12709548e5,s:12860784e5},{e:13024044e5,s:1317528e6},{e:1333854e6,s:13495824e5},{e:1364094e6,s:1381032e6},{e:13955436e5,s:14124816e5}]},{name:\"America/Campo_Grande\",rules:[{e:12032172e5,s:12243888e5},{e:12346668e5,s:12558384e5},{e:12667212e5,s:1287288e6},{e:12981708e5,s:13187376e5},{e:13302252e5,s:1350792e6},{e:136107e7,s:13822416e5},{e:13925196e5,s:14136912e5}]},{name:\"America/Goose_Bay\",rules:[{e:122559486e4,s:120503526e4},{e:125704446e4,s:123648486e4},{e:128909886e4,s:126853926e4},{e:13205556e5,s:129998886e4},{e:13520052e5,s:13314456e5},{e:13834548e5,s:13628952e5},{e:14149044e5,s:13943448e5}]},{name:\"America/Havana\",rules:[{e:12249972e5,s:12056436e5},{e:12564468e5,s:12364884e5},{e:12885012e5,s:12685428e5},{e:13211604e5,s:13005972e5},{e:13520052e5,s:13332564e5},{e:13834548e5,s:13628916e5},{e:14149044e5,s:13943412e5}]},{name:\"America/Mazatlan\",rules:[{e:1225008e6,s:12074724e5},{e:12564576e5,s:1238922e6},{e:1288512e6,s:12703716e5},{e:13199616e5,s:13018212e5},{e:13514112e5,s:13332708e5},{e:13828608e5,s:13653252e5},{e:14143104e5,s:13967748e5}]},{name:\"America/Mexico_City\",rules:[{e:12250044e5,s:12074688e5},{e:1256454e6,s:12389184e5},{e:12885084e5,s:1270368e6},{e:1319958e6,s:13018176e5},{e:13514076e5,s:13332672e5},{e:13828572e5,s:13653216e5},{e:14143068e5,s:13967712e5}]},{name:\"America/Miquelon\",rules:[{e:12255984e5,s:12050388e5},{e:1257048e6,s:12364884e5},{e:12891024e5,s:12685428e5},{e:1320552e6,s:12999924e5},{e:13520016e5,s:1331442e6},{e:13834512e5,s:13628916e5},{e:14149008e5,s:13943412e5}]},{name:\"America/Santa_Isabel\",rules:[{e:12250116e5,s:1207476e6},{e:12564612e5,s:12389256e5},{e:12885156e5,s:12703752e5},{e:13199652e5,s:13018248e5},{e:13514148e5,s:13332744e5},{e:13828644e5,s:13653288e5},{e:1414314e6,s:13967784e5}]},{name:\"America/Santiago\",rules:[{e:1206846e6,s:1223784e6},{e:1237086e6,s:12552336e5},{e:127035e7,s:12866832e5},{e:13048236e5,s:13138992e5},{e:13356684e5,s:13465584e5},{e:1367118e6,s:13786128e5},{e:13985676e5,s:14100624e5}]},{name:\"America/Sao_Paulo\",rules:[{e:12032136e5,s:12243852e5},{e:12346632e5,s:12558348e5},{e:12667176e5,s:12872844e5},{e:12981672e5,s:1318734e6},{e:13302216e5,s:13507884e5},{e:13610664e5,s:1382238e6},{e:1392516e6,s:14136876e5}]},{name:\"Asia/Amman\",rules:[{e:1225404e6,s:12066552e5},{e:12568536e5,s:12381048e5},{e:12883032e5,s:12695544e5},{e:13197528e5,s:13016088e5},!1,!1,{e:14147064e5,s:13959576e5}]},{name:\"Asia/Damascus\",rules:[{e:12254868e5,s:120726e7},{e:125685e7,s:12381048e5},{e:12882996e5,s:12701592e5},{e:13197492e5,s:13016088e5},{e:13511988e5,s:13330584e5},{e:13826484e5,s:1364508e6},{e:14147028e5,s:13959576e5}]},{name:\"Asia/Dubai\",rules:[!1,!1,!1,!1,!1,!1,!1]},{name:\"Asia/Gaza\",rules:[{e:12199572e5,s:12066552e5},{e:12520152e5,s:12381048e5},{e:1281474e6,s:126964086e4},{e:1312146e6,s:130160886e4},{e:13481784e5,s:13330584e5},{e:13802292e5,s:1364508e6},{e:1414098e6,s:13959576e5}]},{name:\"Asia/Irkutsk\",rules:[{e:12249576e5,s:12068136e5},{e:12564072e5,s:12382632e5},{e:12884616e5,s:12697128e5},!1,!1,!1,!1]},{name:\"Asia/Jerusalem\",rules:[{e:12231612e5,s:12066624e5},{e:1254006e6,s:1238112e6},{e:1284246e6,s:12695616e5},{e:131751e7,s:1301616e6},{e:13483548e5,s:13330656e5},{e:13828284e5,s:13645152e5},{e:1414278e6,s:13959648e5}]},{name:\"Asia/Kamchatka\",rules:[{e:12249432e5,s:12067992e5},{e:12563928e5,s:12382488e5},{e:12884508e5,s:12696984e5},!1,!1,!1,!1]},{name:\"Asia/Krasnoyarsk\",rules:[{e:12249612e5,s:12068172e5},{e:12564108e5,s:12382668e5},{e:12884652e5,s:12697164e5},!1,!1,!1,!1]},{name:\"Asia/Omsk\",rules:[{e:12249648e5,s:12068208e5},{e:12564144e5,s:12382704e5},{e:12884688e5,s:126972e7},!1,!1,!1,!1]},{name:\"Asia/Vladivostok\",rules:[{e:12249504e5,s:12068064e5},{e:12564e8,s:1238256e6},{e:12884544e5,s:12697056e5},!1,!1,!1,!1]},{name:\"Asia/Yakutsk\",rules:[{e:1224954e6,s:120681e7},{e:12564036e5,s:12382596e5},{e:1288458e6,s:12697092e5},!1,!1,!1,!1]},{name:\"Asia/Yekaterinburg\",rules:[{e:12249684e5,s:12068244e5},{e:1256418e6,s:1238274e6},{e:12884724e5,s:12697236e5},!1,!1,!1,!1]},{name:\"Asia/Yerevan\",rules:[{e:1224972e6,s:1206828e6},{e:12564216e5,s:12382776e5},{e:1288476e6,s:12697272e5},{e:13199256e5,s:13011768e5},!1,!1,!1]},{name:\"Australia/Lord_Howe\",rules:[{e:12074076e5,s:12231342e5},{e:12388572e5,s:12545838e5},{e:12703068e5,s:12860334e5},{e:13017564e5,s:1317483e6},{e:1333206e6,s:13495374e5},{e:13652604e5,s:1380987e6},{e:139671e7,s:14124366e5}]},{name:\"Australia/Perth\",rules:[{e:12068136e5,s:12249576e5},!1,!1,!1,!1,!1,!1]},{name:\"Europe/Helsinki\",rules:[{e:12249828e5,s:12068388e5},{e:12564324e5,s:12382884e5},{e:12884868e5,s:1269738e6},{e:13199364e5,s:13011876e5},{e:1351386e6,s:13326372e5},{e:13828356e5,s:13646916e5},{e:14142852e5,s:13961412e5}]},{name:\"Europe/Minsk\",rules:[{e:12249792e5,s:12068352e5},{e:12564288e5,s:12382848e5},{e:12884832e5,s:12697344e5},!1,!1,!1,!1]},{name:\"Europe/Moscow\",rules:[{e:12249756e5,s:12068316e5},{e:12564252e5,s:12382812e5},{e:12884796e5,s:12697308e5},!1,!1,!1,!1]},{name:\"Pacific/Apia\",rules:[!1,!1,!1,{e:13017528e5,s:13168728e5},{e:13332024e5,s:13489272e5},{e:13652568e5,s:13803768e5},{e:13967064e5,s:14118264e5}]},{name:\"Pacific/Fiji\",rules:[!1,!1,{e:12696984e5,s:12878424e5},{e:13271544e5,s:1319292e6},{e:1358604e6,s:13507416e5},{e:139005e7,s:1382796e6},{e:14215032e5,s:14148504e5}]},{name:\"Europe/London\",rules:[{e:12249828e5,s:12068388e5},{e:12564324e5,s:12382884e5},{e:12884868e5,s:1269738e6},{e:13199364e5,s:13011876e5},{e:1351386e6,s:13326372e5},{e:13828356e5,s:13646916e5},{e:14142852e5,s:13961412e5}]}]},void 0!==e&&void 0!==e.exports?e.exports=s:null!==n(311)&&null!=n(312)?(i=[],void 0!==(o=function(){return s}.apply(t,i))&&(e.exports=o)):void 0===r?window.jstz=s:r.jstz=s}()},function(e,t){e.exports=function(){throw new Error(\"define cannot be used indirect\")}},function(e,t){(function(t){e.exports=t}).call(t,{})},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.prototype.setState=function(e){},e.prototype.replaceState=function(e){},e}();t.NoopHistoryController=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(22),o=n(0),r=function(){function e(e,t){void 0===t&&(t=window),this.queryController=e,this.windoh=t,this.bindErrorHandler()}return e.prototype.bindErrorHandler=function(){var e=this,t=this.windoh.onerror;o.isFunction(t)?this.windoh.onerror=function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];return e.handleError.apply(e,n),t.apply(t,n)}:this.windoh.onerror=this.handleError.bind(this)},e.prototype.handleError=function(e,t,n,o,r){if(t.toLowerCase().match(/coveo/)&&!this.windoh.location.host.toLowerCase().match(/localhost/)){var s={message:e,filename:t,line:n,column:o,error:r.toString(),errorStack:r.stack,device:i.DeviceUtils.getDeviceName()},a={level:\"DEBUG\",title:this.windoh.location.href,message:JSON.stringify(s)};this.queryController.getEndpoint().logError(a)}},e}();t.SentryLogger=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(320);var i=n(1),o=n(11),r=n(195),s=n(6),a=function(){function e(e){this.root=e,this.initAriaLiveEl(),this.appendToRoot(),this.addQueryEventListeners()}return e.prototype.updateText=function(e){i.$$(this.ariaLiveEl).text(e)},e.prototype.appendToRoot=function(){this.root.appendChild(this.ariaLiveEl)},e.prototype.initAriaLiveEl=function(){this.ariaLiveEl=i.$$(\"div\",{\"aria-live\":\"polite\",className:\"coveo-visible-to-screen-reader-only\"}).el},e.prototype.addQueryEventListeners=function(){var e=this,t=i.$$(this.root);t.on(o.QueryEvents.querySuccess,function(t,n){return e.onQuerySuccess(n)}),t.on(o.QueryEvents.queryError,function(t,n){return e.onQueryError(n)})},e.prototype.onQuerySuccess=function(e){var t=this.messageForResultCount(e);this.updateText(t)},e.prototype.messageForResultCount=function(e){return e.results.results.length?r.QuerySummaryUtils.message(this.root,e):this.noResultMessage(e.query.q)},e.prototype.noResultMessage=function(e){var t=s.l(\"noResultFor\",\"${query}\"),n=escape(e);return r.QuerySummaryUtils.replaceQueryTags(t,n)},e.prototype.onQueryError=function(e){var t=s.l(\"QueryException\",e.error.message);this.updateText(t)},e}();t.AriaLive=a},function(e,t){},function(e,t){e.exports='<svg alt=\"Search\" focusable=\"false\" enable-background=\"new 0 0 20 20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-magnifier-circle-svg\" d=\"m8.368 16.736c-4.614 0-8.368-3.754-8.368-8.368s3.754-8.368 8.368-8.368 8.368 3.754 8.368 8.368-3.754 8.368-8.368 8.368m0-14.161c-3.195 0-5.793 2.599-5.793 5.793s2.599 5.793 5.793 5.793 5.793-2.599 5.793-5.793-2.599-5.793-5.793-5.793\"></path><path d=\"m18.713 20c-.329 0-.659-.126-.91-.377l-4.552-4.551c-.503-.503-.503-1.318 0-1.82.503-.503 1.318-.503 1.82 0l4.552 4.551c.503.503.503 1.318 0 1.82-.252.251-.581.377-.91.377\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"More\" focusable=\"false\" enable-background=\"new 0 0 16 16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-more-background-svg\" fill-opacity=\"0\" d=\"m8.03.819c3.987 0 7.227 3.222 7.227 7.181s-3.239 7.181-7.227 7.181c-3.976 0-7.209-3.222-7.209-7.181s3.237-7.181 7.209-7.181\"></path><path d=\"m0 8c0 4.416 3.572 8 7.991 8 4.425 0 8.009-3.581 8.009-8 0-4.416-3.581-8-8.009-8-4.416 0-7.991 3.581-7.991 8m8.031-6.4c3.553 0 6.441 2.872 6.441 6.4s-2.887 6.4-6.441 6.4c-3.544 0-6.425-2.872-6.425-6.4s2.885-6.4 6.425-6.4\"></path><path d=\"m10.988 9.024c.551 0 1-.449 1-1s-.449-1-1-1-1 .449-1 1 .449 1 1 1\"></path><path d=\"m7.991 9c .551 0 1-.449 1-1s-.449-1-1-1-1 .449-1 1 .449 1 1 1\"></path><path d=\"m4.994 9c .551 0 1-.449 1-1s-.449-1-1-1-1 .449-1 1 .449 1 1 1\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Loading\" focusable=\"false\" enable-background=\"new 0 0 18 18\" viewBox=\"0 0 18 18\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m16.76 8.051c-.448 0-.855-.303-.969-.757-.78-3.117-3.573-5.294-6.791-5.294s-6.01 2.177-6.79 5.294c-.134.537-.679.861-1.213.727-.536-.134-.861-.677-.728-1.212 1.004-4.009 4.594-6.809 8.731-6.809 4.138 0 7.728 2.8 8.73 6.809.135.536-.191 1.079-.727 1.213-.081.02-.162.029-.243.029z\"></path><path d=\"m9 18c-4.238 0-7.943-3.007-8.809-7.149-.113-.541.234-1.071.774-1.184.541-.112 1.071.232 1.184.773.674 3.222 3.555 5.56 6.851 5.56s6.178-2.338 6.852-5.56c.113-.539.634-.892 1.184-.773.54.112.887.643.773 1.184-.866 4.142-4.57 7.149-8.809 7.149z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Exclusion\" focusable=\"false\" enable-background=\"new 0 0 11 11\" viewBox=\"0 0 11 11\" xmlns=\"http://www.w3.org/2000/svg\"><g class=\"coveo-more-svg\" fill=\"none\"><path d=\"m10.083 4.583h-3.666v-3.666c0-.524-.393-.917-.917-.917s-.917.393-.917.917v3.667h-3.666c-.524-.001-.917.392-.917.916s.393.917.917.917h3.667v3.667c-.001.523.392.916.916.916s.917-.393.917-.917v-3.666h3.667c.523 0 .916-.393.916-.917-.001-.524-.394-.917-.917-.917z\"></path></g><g class=\"coveo-line-svg\" fill=\"none\"><path d=\"m10 6.5h-9c-.552 0-1-.448-1-1 0-.552.448-1 1-1h9c .552 0 1 .448 1 1 0 .552-.448 1-1 1z\"></path></g><g class=\"coveo-exclusion-svg\" fill=\"none\"><path d=\"m9.233 7.989-2.489-2.489 2.489-2.489c.356-.356.356-.889 0-1.244-.356-.356-.889-.356-1.244 0l-2.489 2.489-2.489-2.489c-.356-.356-.889-.356-1.244 0-.356.356-.356.889 0 1.244l2.489 2.489-2.489 2.489c-.356.356-.356.889 0 1.244.356.356.889.356 1.244 0l2.489-2.489 2.489 2.489c.356.356.889.356 1.244 0 .356-.355.356-.889 0-1.244z\"></path></g><g class=\"coveo-hook-svg\" fill=\"none\"><path d=\"m10.252 2.213c-.155-.142-.354-.211-.573-.213-.215.005-.414.091-.561.24l-4.873 4.932-2.39-2.19c-.154-.144-.385-.214-.57-.214-.214.004-.415.09-.563.24-.148.147-.227.343-.222.549.005.207.093.4.249.542l2.905 2.662c.168.154.388.239.618.239h.022.003c.237-.007.457-.101.618-.266l5.362-5.428c.148-.148.228-.344.223-.551s-.093-.399-.248-.542z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Arrow Up\" focusable=\"false\" enable-background=\"new 0 0 10 6\" viewBox=\"0 0 10 6\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m5 .068c.222 0 .443.084.612.253l4.134 4.134c.338.338.338.886 0 1.224s-.886.338-1.224 0l-3.522-3.521-3.523 3.521c-.336.338-.886.338-1.224 0s-.337-.886.001-1.224l4.134-4.134c.168-.169.39-.253.612-.253z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Arrow Down\" focusable=\"false\" enable-background=\"new 0 0 10 6\" viewBox=\"0 0 10 6\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m5 5.932c-.222 0-.443-.084-.612-.253l-4.134-4.134c-.338-.338-.338-.886 0-1.224s.886-.338 1.224 0l3.522 3.521 3.523-3.521c.336-.338.886-.338 1.224 0s .337.886-.001 1.224l-4.135 4.134c-.168.169-.39.253-.611.253z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Clear\" focusable=\"false\" enable-background=\"new 0 0 13 13\" viewBox=\"0 0 13 13\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m7.881 6.501 4.834-4.834c.38-.38.38-1.001 0-1.381s-1.001-.38-1.381 0l-4.834 4.834-4.834-4.835c-.38-.38-1.001-.38-1.381 0s-.38 1.001 0 1.381l4.834 4.834-4.834 4.834c-.38.38-.38 1.001 0 1.381s1.001.38 1.381 0l4.834-4.834 4.834 4.834c.38.38 1.001.38 1.381 0s .38-1.001 0-1.381z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Or/And Operator\" focusable=\"false\" enable-background=\"new 0 0 18 18\" viewBox=\"0 0 18 18\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-and-svg\" d=\"m13.769 5.294h-1.063v-1.063c0-2.329-1.894-4.231-4.231-4.231h-4.244c-2.329 0-4.231 1.894-4.231 4.231v4.244c0 2.329 1.894 4.231 4.231 4.231h1.063v1.063c0 2.329 1.894 4.231 4.231 4.231h4.244c2.329 0 4.231-1.894 4.231-4.231v-4.244c0-2.329-1.894-4.231-4.231-4.231zm2.731 8.475c0 1.506-1.225 2.731-2.731 2.731h-4.244c-1.506 0-2.731-1.225-2.731-2.731v-2.563h-2.563c-1.506 0-2.731-1.225-2.731-2.731v-4.244c0-1.506 1.225-2.731 2.731-2.731h4.244c1.506 0 2.731 1.225 2.731 2.731v2.563h2.563c1.506 0 2.731 1.225 2.731 2.731z\"></path><path class=\"coveo-or-svg\" d=\"m11.206 6.794v1.909c0 1.38-1.123 2.503-2.503 2.503h-1.909v-1.909c0-1.38 1.123-2.503 2.503-2.503zm1.5-1.5h-3.409c-2.209 0-4.003 1.792-4.003 4.003v3.409h3.409c2.209 0 4.003-1.792 4.003-4.003z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Sort\" focusable=\"false\" enable-background=\"new 0 0 15 14\" viewBox=\"0 0 15 14\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-active-shape-svg\" d=\"m13.002 4.076 0 0c0 .536-.439.975-.975.975h-2.925c-.536 0-.975-.439-.975-.975l0 0c0-.536.439-.975.975-.975h2.925c.537 0 .975.438.975.975z\"></path><path class=\"coveo-active-shape-svg\" d=\"m13.002 9.925 0 0c0 .536-.439.975-.975.975h-2.925c-.536 0-.975-.439-.975-.975l0 0c0-.536.439-.975.975-.975h2.925c.537 0 .975.439.975.975z\"></path><path class=\"coveo-active-shape-svg\" d=\"m15 7 0 0c0 .536-.439.975-.975.975h-4.923c-.536 0-.974-.438-.974-.975l0 0c0-.536.439-.975.975-.975h4.923c.535.001.974.439.974.975z\"></path><path d=\"m4.956 9.837-.671.671v-7.015l.671.671c.381.381.997.381 1.379 0 .381-.38.381-.997 0-1.379l-2.335-2.336c-.183-.184-.431-.286-.69-.286s-.506.102-.689.286l-2.335 2.336c-.381.381-.381.997 0 1.379s.997.381 1.379 0l .671-.671v7.015l-.671-.671c-.381-.381-.997-.381-1.379 0-.381.38-.381.997 0 1.379l2.335 2.336c.182.183.431.286.689.286s.506-.103.69-.287l2.335-2.336c.381-.381.381-.997 0-1.379-.382-.381-.998-.381-1.379.001z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Ascending\" focusable=\"false\" enable-background=\"new 0 0 15 12\" viewBox=\"0 0 15 12\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-active-shape-svg\" d=\"m10.936 2.021 0 0c0 .549-.452.998-1.004.998h-1.004c-.552 0-1.004-.449-1.004-.998l0 0c0-.549.452-.998 1.004-.998h1.004c.552 0 1.004.449 1.004.998z\"></path><path class=\"coveo-active-shape-svg\" d=\"m12.943 5.015 0 0c0 .549-.452.998-1.004.998h-3.011c-.552 0-1.004-.449-1.004-.998l0 0c0-.549.452-.998 1.004-.998h3.011c.553 0 1.004.449 1.004.998z\"></path><path class=\"coveo-active-shape-svg\" d=\"m15 8.008 0 0c0 .549-.452.998-1.004.998h-5.068c-.552 0-1.004-.449-1.004-.998l0 0c0-.549.452-.998 1.004-.998h5.068c.552 0 1.004.449 1.004.998z\"></path><path d=\"m6.521 2.683-2.403-2.391c-.188-.187-.444-.292-.71-.292s-.521.105-.71.292l-2.404 2.391c-.392.39-.392 1.021 0 1.411s1.027.39 1.419 0l .691-.687v7.594c0 .55.452.999 1.004.999s1.004-.449 1.004-.998v-7.594l.691.687c.392.39 1.027.39 1.419 0s .392-1.021-.001-1.412z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Descending\" focusable=\"false\" enable-background=\"new 0 0 15 12\" viewBox=\"0 0 15 12\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m6.521 7.906c-.392-.39-1.027-.39-1.419 0l-.69.686v-7.594c0-.549-.452-.998-1.004-.998s-1.004.449-1.004.998v7.594l-.69-.686c-.392-.39-1.027-.39-1.419 0-.392.39-.392 1.021 0 1.411l2.404 2.391c.188.187.443.292.709.292s.522-.105.71-.292l2.404-2.391c.392-.391.392-1.022-.001-1.411z\"></path><path class=\"coveo-active-shape-svg\" d=\"m9.932 11.001h-1.004c-.552 0-1.004-.449-1.004-.998l0 0c0-.549.452-.998 1.004-.998h1.004c.552 0 1.004.449 1.004.998l0 0c0 .549-.452.998-1.004.998z\"></path><path class=\"coveo-active-shape-svg\" d=\"m11.94 8.007h-3.012c-.552 0-1.004-.449-1.004-.998l0 0c0-.549.452-.998 1.004-.998h3.011c.552 0 1.004.449 1.004.998l0 0c0 .549-.451.998-1.003.998z\"></path><path class=\"coveo-active-shape-svg\" d=\"m13.996 5.014h-5.068c-.552 0-1.004-.449-1.004-.998l0 0c0-.549.452-.998 1.004-.998h5.068c.552 0 1.004.449 1.004.998l0 0c0 .548-.452.998-1.004.998z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Dropdown More\" focusable=\"false\" enable-background=\"new 0 0 16 16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-active-shape-svg\" d=\"m14 2v12h-12v-12zm1.306-2h-14.607c-.386 0-.699.318-.699.694v14.607c0 .384.315.699.699.699h14.602c.385 0 .699-.316.699-.694v-14.612c0-.383-.311-.694-.694-.694z\"></path><path d=\"m10.969 7.055h-1.97v-1.968c0-.571-.448-1.032-1-1.032s-1 .462-1 1.032v1.969h-1.969c-.57 0-1.032.448-1.032 1s .463 1 1.032 1h1.97v1.969c0 .57.448 1.032 1 1.032s1-.463 1-1.032v-1.97h1.969c.571 0 1.032-.448 1.032-1 .001-.552-.462-1-1.032-1z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Dropdown Less\" focusable=\"false\" enable-background=\"new 0 0 16 16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-active-shape-svg\" d=\"m14 2v12h-11.999v-12zm1.306-2h-14.607c-.386 0-.699.318-.699.694v14.607c0 .384.315.699.699.699h14.602c.385 0 .699-.316.699-.694v-14.612c0-.383-.311-.694-.694-.694z\"></path><path d=\"m10.969 9.055h-5.939c-.569 0-1.032-.448-1.032-1s .462-1 1.032-1h5.938c.57 0 1.032.448 1.032 1 .001.552-.46 1-1.031 1\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Collapse\" focusable=\"false\" enable-background=\"new 0 0 16 16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-active-shape-svg\" d=\"m8.01 0c-4.425 0-8.01 3.581-8.01 7.992 0 4.425 3.581 8.01 7.999 8.01l.003-.003c4.417 0 7.999-3.581 7.999-7.999 0-4.417-3.581-7.999-7.992-7.999m.002 1.5c3.58 0 6.493 2.916 6.493 6.5s-2.916 6.5-6.5 6.5h-.172c-3.506-.09-6.331-2.975-6.331-6.508 0-3.58 2.92-6.493 6.51-6.492\"></path><path d=\"m11.04 10.27c-.192 0-.384-.073-.53-.22l-2.51-2.51-2.51 2.51c-.293.293-.768.293-1.061 0s-.293-.768 0-1.061l3.041-3.04c.141-.14.332-.219.53-.219l0 0c .199 0 .39.079.53.22l3.04 3.041c.293.293.293.768 0 1.061-.146.145-.337.218-.53.218z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Expand\" focusable=\"false\" enable-background=\"new 0 0 16 16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-active-shape-svg\" d=\"m7.991 16.002c4.425 0 8.01-3.581 8.01-7.992 0-4.425-3.581-8.01-7.999-8.01l-.003.003c-4.417 0-7.999 3.581-7.999 7.999 0 4.417 3.581 7.999 7.992 7.999m-.002-1.5c-3.58 0-6.493-2.916-6.493-6.5s2.916-6.5 6.5-6.5h.172c3.506.09 6.331 2.975 6.331 6.508 0 3.58-2.92 6.493-6.51 6.493\"></path><path d=\"m4.961 5.732c.192 0 .384.073.53.22l2.51 2.51 2.51-2.51c.293-.293.768-.293 1.061 0s .293.768 0 1.061l-3.041 3.04c-.141.14-.332.219-.53.219l0 0c-.199 0-.39-.079-.53-.22l-3.04-3.041c-.293-.293-.293-.768 0-1.061.146-.145.337-.218.53-.218z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Dropdown Share Query\" focusable=\"false\" viewBox=\"0 0 18 14\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\" fill-rule=\"evenodd\"><path class=\"coveo-active-shape-svg\" d=\"m12.1 13.5c-.426 0-.771-.332-.771-.74 0-.409.346-.74.771-.74h1.862c1.374 0 2.49-1.136 2.49-2.534v-.193c0-1.144-.756-2.15-1.839-2.448l-.488-.134-.066-.484c-.132-.979-1.11-1.673-2.041-1.458l-.635.143-.253-.578c-.626-1.429-2.024-2.352-3.562-2.352-2.147 0-3.892 1.769-3.892 3.944 0 .082.002.164.007.246l.032.541-.529.192c-.986.359-1.65 1.319-1.65 2.388v.192c0 1.398 1.117 2.535 2.49 2.535h.782c.426 0 .771.332.771.74 0 .409-.346.74-.771.74h-.782c-2.224 0-4.03-1.802-4.03-4.02v-.192c0-1.496.842-2.861 2.143-3.549.097-2.908 2.496-5.243 5.432-5.243 1.968 0 3.767 1.061 4.726 2.747 1.501-.024 2.798.945 3.198 2.327 1.495.61 2.501 2.077 2.501 3.717v.193c0 2.215-1.808 4.02-4.03 4.02h-1.863\"></path><path d=\"m9 5.234c-.098-.149-.3-.233-.511-.234-.212 0-.413.084-.561.232l-3.193 3.176c-.311.309-.312.812-.003 1.123.155.156.359.233.563.233.202 0 .406-.076.56-.231l1.822-1.813v5.485c0 .438.356.794.794.794.438 0 .794-.356.794-.794v-5.504l1.82 1.83c.309.311.812.312 1.122.002.31-.309.312-.812.002-1.123l-3.21-3.176\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Dropdown Preferences\" focusable=\"false\" enable-background=\"new 0 0 22 22\" viewBox=\"0 0 22 22\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path class=\"coveo-active-shape-svg\" d=\"m12.989 21.947h-3.978c-.752 0-1.388-.557-1.48-1.295l-.298-2.075c-.309-.154-.611-.33-.905-.526l-1.968.79c-.722.268-1.508-.028-1.858-.668l-1.977-3.419c-.366-.671-.207-1.47.365-1.922l1.669-1.306c-.013-.186-.019-.359-.019-.526s.006-.34.02-.526l-1.665-1.303c-.586-.462-.742-1.292-.365-1.932l1.985-3.434c.343-.633 1.136-.923 1.836-.65l1.98.796c.3-.2.6-.375.901-.527l.301-2.096c.089-.719.726-1.275 1.478-1.275h3.979c.753 0 1.39.557 1.479 1.296l.298 2.074c.31.154.611.33.905.526l1.968-.791c.721-.263 1.508.028 1.857.667l1.979 3.421c.365.671.207 1.47-.365 1.922l-1.669 1.305c.012.166.02.342.02.527s-.008.361-.02.526l1.665 1.302c.576.457.734 1.256.381 1.903l-2 3.463c-.35.636-1.146.922-1.84.649l-1.978-.794c-.301.199-.6.374-.902.526l-.3 2.095c-.088.72-.725 1.277-1.478 1.277m-3.539-2h3.1l.396-2.762.529-.217c.485-.2.964-.478 1.461-.851l.45-.337 2.585 1.038 1.554-2.688-2.198-1.718.071-.563c.035-.277.062-.555.062-.85s-.027-.572-.062-.85l-.071-.563 2.198-1.718-1.555-2.688-2.592 1.042-.452-.348c-.466-.358-.94-.633-1.451-.843l-.529-.217-.396-2.761h-3.1l-.396 2.762-.53.217c-.485.199-.962.477-1.46.85l-.451.337-2.584-1.038-1.554 2.688 2.196 1.718-.07.562c-.034.277-.061.564-.061.851s.027.573.062.852l.07.562-2.196 1.718 1.554 2.688 2.591-1.041.452.348c.465.356.939.632 1.452.843l.529.217z\"></path><path d=\"m11 15c-2.206 0-4-1.794-4-4s1.794-4 4-4 4 1.794 4 4-1.794 4-4 4m0-6c-1.103 0-2 .897-2 2s .897 2 2 2 2-.897 2-2-.897-2-2-2\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Dropdown Authenticate\" focusable=\"false\" enable-background=\"new 0 0 12 16\" viewBox=\"0 0 12 16\" xmlns=\"http://www.w3.org/2000/svg\"><g class=\"coveo-dropdown-authenticate-svg\" fill=\"none\"><path d=\"m10 5h-8c-1.1 0-2 .9-2 2v5c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2v-5c0-1.1-.9-2-2-2m0 1.5c.3 0 .5.2.5.5v5c0 .3-.2.5-.5.5h-8c-.3 0-.5-.2-.5-.5v-5c0-.3.2-.5.5-.5z\"></path><path d=\"m10 5h-1.6v-1.1c0-1.3-1.1-2.4-2.4-2.4s-2.4 1.1-2.4 2.4v1.1h-1.6v-1.1c0-2.1 1.8-3.9 4-3.9s4 1.8 4 3.9z\"></path></g><g class=\"coveo-dropdown-authenticate-hover-svg\" fill=\"none\"><path class=\"coveo-active-shape-svg\" d=\"m10 7h-8c-1.1 0-2 .9-2 2v5c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2v-5c0-1.1-.9-2-2-2m0 1.5c.3 0 .5.2.5.5v5c0 .3-.2.5-.5.5h-8c-.3 0-.5-.2-.5-.5v-5c0-.3.2-.5.5-.5z\"></path><path d=\"m5.1.1c-1.8.4-3.1 2.1-3.1 4v2.9h1.6v-3.1c0-1.7 1.8-3 3.6-2.1.8.4 1.2 1.3 1.2 2.2v.6c0 .4.4.8.8.8s.8-.4.8-.8v-.7c0-2.4-2.3-4.4-4.9-3.8z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Dropdown Export\" focusable=\"false\" enable-background=\"new 0 0 14 14\" viewBox=\"0 0 14 14\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\" transform=\"matrix(0 1 -1 0 20 0)\"><path d=\"m7.699 8.591 1.05 1.05c.49.49 1.05 0 1.05 0s .49-.56 0-1.05l-2.31-2.381c-.28-.28-.7-.28-.98 0l-2.309 2.451c-.49.49 0 .98 0 .98s.56.49 1.05 0l1.05-1.05v7.91c0 .42.35.7.7.7s.7-.35.7-.7z\"></path><path class=\"coveo-active-shape-svg\" d=\"m10.5 12.301h2.033l.065 6.301h-11.198v-6.301h2.1c.386 0 .7-.314.7-.7l0 0c0-.386-.314-.7-.7-.7h-2.806c-.383-.001-.694.31-.694.694v7.706c0 .385.318.699.694.699h12.607c.384 0 .699-.315.699-.699v-7.7c0-.386-.316-.699-.694-.699h-2.806c-.386 0-.7.314-.7.7l0 0c0 .385.314.699.7.699z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Dropdown Follow Query\" focusable=\"false\" enable-background=\"new 0 0 15 12\" viewBox=\"0 0 15 12\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m9.224 11.999c-.198 0-.496-.103-.694-.308-.397-.411-.397-1.025 0-1.436l3.965-4.409-3.966-4.102c-.397-.411-.397-1.025 0-1.436s.991-.411 1.388 0l4.859 4.922c.298.308.298.718 0 1.025l-4.859 5.435c-.198.206-.496.309-.693.309\"></path><path class=\"coveo-active-shape-svg\" d=\"m4.958.411c-.397-.411-.991-.411-1.388 0s-.397 1.025 0 1.436l2.973 2.974h-5.552c-.594 0-.991.41-.991 1.025s.397 1.025.991 1.025h5.651l-3.074 3.384c-.397.411-.397 1.025 0 1.436.199.206.398.309.695.309.298 0 .495-.103.694-.308l4.859-5.333c.298-.308.298-.718 0-1.025z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Quickview\" focusable=\"false\" enable-background=\"new 0 0 20 12\" viewBox=\"0 0 20 12\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m10 4.3c-1 0-1.7.8-1.7 1.7 0 1 .8 1.7 1.7 1.7 1 0 1.7-.8 1.7-1.7 0-1-.7-1.7-1.7-1.7m0 4.7c-1.6 0-3-1.4-3-3s1.4-3 3-3 3 1.4 3 3-1.4 3-3 3\"></path><path d=\"m19.8 6.4v-.001c.069-.117.109-.253.109-.399s-.04-.282-.109-.399v-.001c-.005-.008.005.007 0 0-2.203-3.473-5.917-5.6-9.8-5.6-3.884 0-7.655 2.091-9.8 5.602l0 0c-.069.117-.109.253-.109.398s.04.281.109.398c0 0-.001-.002 0 0 2.203 3.475 5.916 5.602 9.8 5.602 3.883 0 7.597-2.127 9.8-5.6.005-.007-.005.008 0 0zm-9.8 4.1c-3.236 0-6.28-1.635-8.189-4.339-.067-.095-.067-.228-.002-.324 1.908-2.797 4.953-4.337 8.191-4.337 3.235 0 6.278 1.634 8.187 4.337.068.096.068.231 0 .327-1.909 2.702-4.952 4.336-8.187 4.336z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Right Arrow\" focusable=\"false\" enable-background=\"new 0 0 11 20\" viewBox=\"0 0 11 20\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m .308 18.189c-.412.413-.411 1.086 0 1.5.2.201.465.311.746.311.282 0 .547-.11.747-.31l8.891-8.939c.199-.2.307-.466.307-.75 0-.286-.109-.551-.305-.748l-8.893-8.942c-.199-.2-.465-.311-.747-.311-.001 0-.001 0-.001 0-.281 0-.546.11-.745.309-.198.201-.308.468-.308.753 0 .284.11.548.306.745l8.145 8.193z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Left Arrow\" focusable=\"false\" enable-background=\"new 0 0 11 20\" viewBox=\"0 0 11 20\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m10.692 1.811c.412-.413.411-1.086 0-1.5-.2-.201-.465-.311-.746-.311-.283 0-.548.11-.747.31l-8.892 8.939c-.198.2-.307.466-.307.75 0 .286.109.551.305.748l8.893 8.941c.2.201.466.312.748.312h.001c.281 0 .546-.11.745-.309.199-.201.308-.468.308-.753 0-.284-.109-.548-.306-.745l-8.146-8.194z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Replies\" focusable=\"false\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\" fill-rule=\"evenodd\" transform=\"translate(1)\"><path d=\"m4 5h7v1h-7v-1m0 3h7v1h-7v-1m0 3h7v1h-7v-1\"></path><path d=\"m15 1c.009-.525.066-1-1-1h-12.998c-.651 0-1 .33-1 1v15c0 .66.351 1 1 1h1.998v2c.075.546.383 1 1 1h13c.718 0 1-.295 1-1v-16c.001-.468-.406-.99-1-1h-2v-1m-13 14v-13h11v13h-11m14 3h-11v-.995l9-.005c.5.005.976-.428 1-1l.021-12h.979v14\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Video\" focusable=\"false\" enable-background=\"new 0 0 60 60\" viewBox=\"0 0 60 60\" xmlns=\"http://www.w3.org/2000/svg\"><path clip-rule=\"evenodd\" d=\"m3.753 60c-2.073 0-3.753-1.667-3.753-3.753v-52.494c0-2.073 1.667-3.753 3.753-3.753h52.494c2.073 0 3.753 1.667 3.753 3.753v52.493c0 2.074-1.667 3.754-3.753 3.754z\" fill=\"#cc0d00\" fill-rule=\"evenodd\"></path><path d=\"m42.8 21.536h-8.96c-.267-.64-.64-1.173-1.12-1.653l3.36-4.32c.533-.693.427-1.707-.267-2.24-.693-.533-1.707-.427-2.24.267l-3.733 4.8c-.32 0-.587-.053-.907-.053s-.587.053-.853.053l-3.733-4.8c-.533-.693-1.547-.8-2.24-.267s-.8 1.547-.267 2.24l3.36 4.32c-.48.48-.853 1.013-1.12 1.653h-6.88c-1.76 0-3.2 1.44-3.2 3.2v14.933c0 1.76 1.44 3.2 3.2 3.2h25.6c1.76 0 3.2-1.44 3.2-3.2v-14.933c0-1.76-1.44-3.2-3.2-3.2zm-4.267 17.067c0 .587-.48 1.067-1.067 1.067h-19.2c-.587 0-1.067-.48-1.067-1.067v-12.8c0-.587.48-1.067 1.067-1.067h19.2c.587 0 1.067.48 1.067 1.067zm3.734-5.334c-.907 0-1.6-.693-1.6-1.6s.693-1.6 1.6-1.6 1.6.693 1.6 1.6-.694 1.6-1.6 1.6zm0-5.333c-.907 0-1.6-.693-1.6-1.6s.693-1.6 1.6-1.6 1.6.693 1.6 1.6-.694 1.6-1.6 1.6z\" fill=\"#fff\"></path></svg>'},function(e,t){e.exports='<svg alt=\"Coveo Logo\" focusable=\"false\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 279.21 92.68\"><defs><style>.cls-1{fill:#004990;}.cls-2{fill:#f58020;}</style></defs><title>coveo_logo_blue_orange</title><g id=\"Layer_2\" data-name=\"Layer 2\"><g id=\"Layer_1-2\" data-name=\"Layer 1\"><path class=\"cls-1\" d=\"M34.73,60.22A15.78,15.78,0,0,0,22.4,54.37c-8.12,0-14.28,7.14-14.28,15.09,0,8.93,6.17,15.26,14.93,15.26,4.71,0,8.6-2.27,11.85-5.68V89.6A25.1,25.1,0,0,1,23,92.52c-12.66,0-23-9.74-23-22.72C0,56.48,10.39,46.58,23.54,46.58A22.78,22.78,0,0,1,34.9,49.51Z\"></path><path class=\"cls-1\" d=\"M57.46,69.63A14.77,14.77,0,1,0,72.23,54.7,14.86,14.86,0,0,0,57.46,69.63m37.66,0a22.59,22.59,0,0,1-23,22.89,22.89,22.89,0,1,1,0-45.77,22.59,22.59,0,0,1,23,22.89\"></path><polygon class=\"cls-1\" points=\"126.6 74.99 139.1 48.04 148.35 48.04 126.6 92.68 105.02 48.04 114.27 48.04 126.6 74.99\"></polygon><path class=\"cls-1\" d=\"M191.53,64.76c-1-6.49-5.19-10.71-11.85-10.71-6.49,0-11.2,4.55-12.34,10.71ZM167,70.93c0,7.3,5,14.28,13,14.28,6.33,0,9.74-3.25,12.82-8.44l7,3.9a22.37,22.37,0,0,1-20,11.85c-13.15,0-21.1-9.9-21.1-22.72,0-13.31,7.14-23.21,20.94-23.21S199.8,56.65,199.8,69.47v1.46Z\"></path><path class=\"cls-1\" d=\"M220.58,69.63A14.77,14.77,0,1,0,235.35,54.7a14.86,14.86,0,0,0-14.77,14.93m37.82,0a23,23,0,1,1-23-22.89,22.59,22.59,0,0,1,23,22.89\"></path><path class=\"cls-1\" d=\"M262.3,41h5.55v1.24h-2.16V50.1h-1.22V42.27H262.3Z\"></path><path class=\"cls-1\" d=\"M276.73,40.65l2.48,9.45H278l-1.5-5.77-2.58,6.12-2.59-6.17L269.8,50.1h-1.21l2.48-9.45,2.84,6.76Z\"></path><polygon class=\"cls-2\" points=\"197.04 20.53 161.34 0 161.34 41.06 197.04 20.53\"></polygon></g></g></svg>'},function(e,t){e.exports='<svg alt=\"Powered By Coveo Logo\" focusable=\"false\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 279.21 92.68\"><defs><style>.cls-1{fill:#5d7289;}</style></defs><title>coveo_logo_grey</title><g id=\"Layer_2\" data-name=\"Layer 2\"><g id=\"Layer_1-2\" data-name=\"Layer 1\"><path class=\"cls-1\" d=\"M34.73,60.22A15.78,15.78,0,0,0,22.4,54.37c-8.12,0-14.28,7.14-14.28,15.09,0,8.93,6.17,15.26,14.93,15.26,4.71,0,8.6-2.27,11.85-5.68V89.6A25.1,25.1,0,0,1,23,92.52c-12.66,0-23-9.74-23-22.72C0,56.48,10.39,46.58,23.54,46.58A22.78,22.78,0,0,1,34.9,49.51Z\"></path><path class=\"cls-1\" d=\"M57.46,69.63A14.77,14.77,0,1,0,72.23,54.7,14.86,14.86,0,0,0,57.46,69.63m37.66,0a22.59,22.59,0,0,1-23,22.89,22.89,22.89,0,1,1,0-45.77,22.59,22.59,0,0,1,23,22.89\"></path><polygon class=\"cls-1\" points=\"126.6 74.99 139.1 48.04 148.35 48.04 126.6 92.68 105.02 48.04 114.27 48.04 126.6 74.99\"></polygon><path class=\"cls-1\" d=\"M191.53,64.76c-1-6.49-5.19-10.71-11.85-10.71-6.49,0-11.2,4.55-12.34,10.71ZM167,70.93c0,7.3,5,14.28,13,14.28,6.33,0,9.74-3.25,12.82-8.44l7,3.9a22.37,22.37,0,0,1-20,11.85c-13.15,0-21.1-9.9-21.1-22.72,0-13.31,7.14-23.21,20.94-23.21S199.8,56.65,199.8,69.47v1.46Z\"></path><path class=\"cls-1\" d=\"M220.58,69.63A14.77,14.77,0,1,0,235.35,54.7a14.86,14.86,0,0,0-14.77,14.93m37.82,0a23,23,0,1,1-23-22.89,22.59,22.59,0,0,1,23,22.89\"></path><path class=\"cls-1\" d=\"M262.3,41h5.55v1.24h-2.16V50.1h-1.22V42.27H262.3Z\"></path><path class=\"cls-1\" d=\"M276.73,40.65l2.48,9.45H278l-1.5-5.77-2.58,6.12-2.59-6.17L269.8,50.1h-1.21l2.48-9.45,2.84,6.76Z\"></path><polygon class=\"cls-1\" points=\"197.04 20.53 161.34 0 161.34 41.06 197.04 20.53\"></polygon></g></g></svg>'},function(e,t){e.exports='<svg alt=\"Tagging Ok\" focusable=\"false\" enable-background=\"new 0 0 9 7\" viewBox=\"0 0 9 7\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m8.755.446c-.154-.145-.35-.216-.567-.218-.212.005-.409.093-.555.246l-4.176 4.422-2.117-2.003c-.152-.147-.381-.22-.564-.22-.211.004-.41.092-.556.247-.147.151-.225.352-.22.563.005.213.092.41.246.557l2.627 2.487c.166.158.384.245.611.245h.022.003c.234-.007.452-.103.611-.272l4.66-4.931c.146-.153.225-.354.22-.566-.005-.213-.092-.41-.245-.557z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Edit\" focusable=\"false\" enable-background=\"new 0 0 20 20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m1 4c0-.552.448-1 1-1h7c .552 0 1 .448 1 1v0c0 .552-.448 1-1 1h-6v12h12v-6c0-.552.448-1 1-1h0c .552 0 1 .448 1 1v7c0 .552-.448 1-1 1h-14c-.552 0-1-.448-1-1z\"></path><path d=\"m17.8.8c-.2-.2-.5-.2-.7 0l-1.7 1.7 2 2 1.7-1.7c.2-.2.2-.5 0-.7z\"></path><path d=\"m14.5 3.5-6.9 6.9c-.1.1-.2.2-.2.3l-1.2 2.8c-.1.2.1.4.3.3l2.8-1.2c.1 0 .2-.1.3-.2l6.9-6.9z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Star\" focusable=\"false\" enable-background=\"new 0 0 16 16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m8.683.852 1.558 4.794h5.041c.695 0 .985.889.421 1.298l-4.077 2.963 1.558 4.794c.215.661-.542 1.211-1.104.802l-4.08-2.962-4.077 2.963c-.562.409-1.32-.141-1.104-.802l1.558-4.794-4.079-2.963c-.563-.409-.274-1.298.421-1.298h5.041l1.558-4.794c.214-.662 1.15-.662 1.365-.001z\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"List Layout\" focusable=\"false\" enable-background=\"new 0 0 19 14\" viewBox=\"0 0 19 14\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\"><path d=\"m19 12c0 .552-.397 1-.813 1h-11.375c-.416 0-.813-.448-.813-1s .397-1 .813-1h11.375c.416 0 .813.448.813 1\"></path><path d=\"m19 7c0 .552-.397 1-.813 1h-11.375c-.416 0-.813-.448-.813-1s .397-1 .813-1h11.375c.416 0 .813.448.813 1\"></path><path d=\"m19 2c0 .552-.397 1-.813 1h-11.375c-.416 0-.813-.448-.813-1s .397-1 .813-1h11.375c.416 0 .813.448.813 1\"></path><path d=\"m2 10c1.105 0 2 .895 2 2s-.895 2-2 2-2-.895-2-2 .895-2 2-2\"></path><path d=\"m2 5c1.105 0 2 .895 2 2s-.895 2-2 2-2-.895-2-2 .895-2 2-2\"></path><path d=\"m2 0c1.105 0 2 .895 2 2s-.895 2-2 2-2-.895-2-2 .895-2 2-2\"></path></g></svg>'},function(e,t){e.exports='<svg alt=\"Card Layout\" focusable=\"false\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\" fill-rule=\"evenodd\"><rect x=\"12\" y=\"12\" width=\"4\" height=\"4\" rx=\"1\"></rect><rect x=\"6\" y=\"12\" width=\"4\" height=\"4\" rx=\"1\"></rect><rect y=\"12\" width=\"4\" height=\"4\" rx=\"1\"></rect><rect x=\"12\" y=\"6\" width=\"4\" height=\"4\" rx=\"1\"></rect><rect x=\"6\" y=\"6\" width=\"4\" height=\"4\" rx=\"1\"></rect><rect y=\"6\" width=\"4\" height=\"4\" rx=\"1\"></rect><rect x=\"12\" width=\"4\" height=\"4\" rx=\"1\"></rect><rect x=\"6\" width=\"4\" height=\"4\" rx=\"1\"></rect><rect width=\"4\" height=\"4\" rx=\"1\"></rect></g></svg>'},function(e,t){e.exports='<svg alt=\"Table Layout\" focusable=\"false\" viewBox=\"0 0 18 13\" xmlns=\"http://www.w3.org/2000/svg\"><g fill=\"currentColor\" fill-rule=\"evenodd\"><rect x=\"11\" y=\"10\" width=\"7\" height=\"3\" rx=\"1\"></rect><rect x=\"11\" y=\"5\" width=\"7\" height=\"3\" rx=\"1\"></rect><rect x=\"11\" width=\"7\" height=\"3\" rx=\"1\"></rect><rect y=\"10\" width=\"9\" height=\"3\" rx=\"1\"></rect><rect y=\"5\" width=\"9\" height=\"3\" rx=\"1\"></rect><rect width=\"9\" height=\"3\" rx=\"1\"></rect></g></svg>'},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(9),s=n(4),a=n(46),u=function(){function e(e,t,n,i){this.element=e,this.values=t,this.optionName=n,this.optionDefinition=i,this.logger=new r.Logger(this)}return e.prototype.load=function(){return this.findFirstValidValue(this.loadFromAttribute.bind(this),this.loadFromOptionsDictionnary.bind(this),this.loadFromDefaultValue.bind(this),this.loadFromDefaultFunction.bind(this))},e.prototype.loadFromAttribute=function(){return this.optionDefinition.load?this.optionDefinition.load(this.element,this.optionName,this.optionDefinition):null},e.prototype.loadFromOptionsDictionnary=function(){return this.values[this.optionName]},e.prototype.loadFromDefaultValue=function(){if(this.optionDefinition.type==a.ComponentOptionsType.LOCALIZED_STRING)return this.loadDefaultLocalizedString();if(s.Utils.isNullOrUndefined(this.optionDefinition.defaultValue))return null;switch(this.optionDefinition.type){case a.ComponentOptionsType.LIST:return this.optionDefinition.defaultValue.slice();case a.ComponentOptionsType.OBJECT:return i({},this.optionDefinition.defaultValue);default:return this.optionDefinition.defaultValue}},e.prototype.loadDefaultLocalizedString=function(){if(!s.Utils.isNullOrUndefined(this.optionDefinition.defaultValue))return this.warnDeprecatedLocalizedStringAndReturnDefaultValue();var e=this.optionDefinition;return e.localizedString?e.localizedString():null},e.prototype.loadFromDefaultFunction=function(){return this.optionDefinition.defaultFunction?this.optionDefinition.defaultFunction(this.element):null},e.prototype.warnDeprecatedLocalizedStringAndReturnDefaultValue=function(){return this.logger.warn(\"defaultValue for option \"+this.optionName+\" is deprecated. You should instead use localizedString. Not doing so could cause localization bug in your interface.\"),this.optionDefinition.defaultValue},e.prototype.findFirstValidValue=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=null;return o.find(e,function(e){return n=e(),!s.Utils.isNullOrUndefined(n)}),n},e}();t.ComponentOptionLoader=u},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(6),r=n(4),s=n(46),a=function(){function e(e,t,n){this.optionDefinition=e,this.valueToMerge=t,this.optionsDictionary=n}return e.prototype.merge=function(){var e=this.valueToMerge,t=e.name,n=e.value;if(!r.Utils.isNullOrUndefined(n)){switch(this.optionDefinition.type){case s.ComponentOptionsType.OBJECT:var a=this.optionsDictionary[t]||{};this.optionsDictionary[t]=i({},a,n);break;case s.ComponentOptionsType.LOCALIZED_STRING:this.optionsDictionary[t]=o.l(n);break;default:this.optionsDictionary[t]=n}return this.valueToMerge}},e}();t.ComponentOptionsMerger=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(4),r=n(9),s=function(){function e(e,t,n){this.allOptionsDefinitions=e,this.optionsDictionnary=t,this.componentID=n,this.logger=new r.Logger(this)}return e.prototype.postProcess=function(){var e=this;i.each(this.allOptionsDefinitions,function(t,n){t.required&&o.Utils.isNullOrUndefined(e.optionsDictionnary[n])&&e.logger.warn('Option \"'+n+'\" is *REQUIRED* on the component \"'+e.componentID+'\". The component or the search page might *NOT WORK PROPERLY*.'),t.postProcessing&&(e.optionsDictionnary[n]=t.postProcessing(e.optionsDictionnary[n],e.optionsDictionnary))})},e}();t.ComponentOptionsPostProcessor=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(9),o=function(){function e(e,t,n){this.optionDefinition=e,this.valueToValidate=t,this.optionsDictionnary=n,this.logger=new i.Logger(this)}return e.prototype.validate=function(){var e=this.valueToValidate,t=e.name,n=e.value,i=e.componentID;!this.optionDefinition.validator||this.optionDefinition.validator(n)||(this.logger.warn(i+\" .\"+t+\" has invalid value: \"+n),this.optionDefinition.required&&this.logger.error(i+\" .\"+t+\" is required and has an invalid value: \"+n+\". ***THIS COMPONENT WILL NOT WORK***\"),delete this.optionsDictionnary[t])},e}();t.ComponentOptionsValidator=o},function(e,t,n){var i,o;!function(r,s){i=s,void 0!==(o=\"function\"==typeof i?i.call(t,n,t,e):i)&&(e.exports=o)}(0,function(){function e(t){return\"string\"==typeof t?t.replace(/[^A-Za-z0-9]/g,function(t){return e.characters[t]||t}):t}return e.characters={\"Á\":\"A\",\"Ă\":\"A\",\"Ắ\":\"A\",\"Ặ\":\"A\",\"Ằ\":\"A\",\"Ẳ\":\"A\",\"Ẵ\":\"A\",\"Ǎ\":\"A\",\"Â\":\"A\",\"Ấ\":\"A\",\"Ậ\":\"A\",\"Ầ\":\"A\",\"Ẩ\":\"A\",\"Ẫ\":\"A\",\"Ä\":\"A\",\"Ǟ\":\"A\",\"Ȧ\":\"A\",\"Ǡ\":\"A\",\"Ạ\":\"A\",\"Ȁ\":\"A\",\"À\":\"A\",\"Ả\":\"A\",\"Ȃ\":\"A\",\"Ā\":\"A\",\"Ą\":\"A\",\"Å\":\"A\",\"Ǻ\":\"A\",\"Ḁ\":\"A\",\"Ⱥ\":\"A\",\"Ã\":\"A\",\"Ꜳ\":\"AA\",\"Æ\":\"AE\",\"Ǽ\":\"AE\",\"Ǣ\":\"AE\",\"Ꜵ\":\"AO\",\"Ꜷ\":\"AU\",\"Ꜹ\":\"AV\",\"Ꜻ\":\"AV\",\"Ꜽ\":\"AY\",\"Ḃ\":\"B\",\"Ḅ\":\"B\",\"Ɓ\":\"B\",\"Ḇ\":\"B\",\"Ƀ\":\"B\",\"Ƃ\":\"B\",\"Ć\":\"C\",\"Č\":\"C\",\"Ç\":\"C\",\"Ḉ\":\"C\",\"Ĉ\":\"C\",\"Ċ\":\"C\",\"Ƈ\":\"C\",\"Ȼ\":\"C\",\"Ď\":\"D\",\"Ḑ\":\"D\",\"Ḓ\":\"D\",\"Ḋ\":\"D\",\"Ḍ\":\"D\",\"Ɗ\":\"D\",\"Ḏ\":\"D\",\"Dz\":\"D\",\"Dž\":\"D\",\"Đ\":\"D\",\"Ƌ\":\"D\",\"DZ\":\"DZ\",\"DŽ\":\"DZ\",\"É\":\"E\",\"Ĕ\":\"E\",\"Ě\":\"E\",\"Ȩ\":\"E\",\"Ḝ\":\"E\",\"Ê\":\"E\",\"Ế\":\"E\",\"Ệ\":\"E\",\"Ề\":\"E\",\"Ể\":\"E\",\"Ễ\":\"E\",\"Ḙ\":\"E\",\"Ë\":\"E\",\"Ė\":\"E\",\"Ẹ\":\"E\",\"Ȅ\":\"E\",\"È\":\"E\",\"Ẻ\":\"E\",\"Ȇ\":\"E\",\"Ē\":\"E\",\"Ḗ\":\"E\",\"Ḕ\":\"E\",\"Ę\":\"E\",\"Ɇ\":\"E\",\"Ẽ\":\"E\",\"Ḛ\":\"E\",\"Ꝫ\":\"ET\",\"Ḟ\":\"F\",\"Ƒ\":\"F\",\"Ǵ\":\"G\",\"Ğ\":\"G\",\"Ǧ\":\"G\",\"Ģ\":\"G\",\"Ĝ\":\"G\",\"Ġ\":\"G\",\"Ɠ\":\"G\",\"Ḡ\":\"G\",\"Ǥ\":\"G\",\"Ḫ\":\"H\",\"Ȟ\":\"H\",\"Ḩ\":\"H\",\"Ĥ\":\"H\",\"Ⱨ\":\"H\",\"Ḧ\":\"H\",\"Ḣ\":\"H\",\"Ḥ\":\"H\",\"Ħ\":\"H\",\"Í\":\"I\",\"Ĭ\":\"I\",\"Ǐ\":\"I\",\"Î\":\"I\",\"Ï\":\"I\",\"Ḯ\":\"I\",\"İ\":\"I\",\"Ị\":\"I\",\"Ȉ\":\"I\",\"Ì\":\"I\",\"Ỉ\":\"I\",\"Ȋ\":\"I\",\"Ī\":\"I\",\"Į\":\"I\",\"Ɨ\":\"I\",\"Ĩ\":\"I\",\"Ḭ\":\"I\",\"Ꝺ\":\"D\",\"Ꝼ\":\"F\",\"Ᵹ\":\"G\",\"Ꞃ\":\"R\",\"Ꞅ\":\"S\",\"Ꞇ\":\"T\",\"Ꝭ\":\"IS\",\"Ĵ\":\"J\",\"Ɉ\":\"J\",\"Ḱ\":\"K\",\"Ǩ\":\"K\",\"Ķ\":\"K\",\"Ⱪ\":\"K\",\"Ꝃ\":\"K\",\"Ḳ\":\"K\",\"Ƙ\":\"K\",\"Ḵ\":\"K\",\"Ꝁ\":\"K\",\"Ꝅ\":\"K\",\"Ĺ\":\"L\",\"Ƚ\":\"L\",\"Ľ\":\"L\",\"Ļ\":\"L\",\"Ḽ\":\"L\",\"Ḷ\":\"L\",\"Ḹ\":\"L\",\"Ⱡ\":\"L\",\"Ꝉ\":\"L\",\"Ḻ\":\"L\",\"Ŀ\":\"L\",\"Ɫ\":\"L\",\"Lj\":\"L\",\"Ł\":\"L\",\"LJ\":\"LJ\",\"Ḿ\":\"M\",\"Ṁ\":\"M\",\"Ṃ\":\"M\",\"Ɱ\":\"M\",\"Ń\":\"N\",\"Ň\":\"N\",\"Ņ\":\"N\",\"Ṋ\":\"N\",\"Ṅ\":\"N\",\"Ṇ\":\"N\",\"Ǹ\":\"N\",\"Ɲ\":\"N\",\"Ṉ\":\"N\",\"Ƞ\":\"N\",\"Nj\":\"N\",\"Ñ\":\"N\",\"NJ\":\"NJ\",\"Ó\":\"O\",\"Ŏ\":\"O\",\"Ǒ\":\"O\",\"Ô\":\"O\",\"Ố\":\"O\",\"Ộ\":\"O\",\"Ồ\":\"O\",\"Ổ\":\"O\",\"Ỗ\":\"O\",\"Ö\":\"O\",\"Ȫ\":\"O\",\"Ȯ\":\"O\",\"Ȱ\":\"O\",\"Ọ\":\"O\",\"Ő\":\"O\",\"Ȍ\":\"O\",\"Ò\":\"O\",\"Ỏ\":\"O\",\"Ơ\":\"O\",\"Ớ\":\"O\",\"Ợ\":\"O\",\"Ờ\":\"O\",\"Ở\":\"O\",\"Ỡ\":\"O\",\"Ȏ\":\"O\",\"Ꝋ\":\"O\",\"Ꝍ\":\"O\",\"Ō\":\"O\",\"Ṓ\":\"O\",\"Ṑ\":\"O\",\"Ɵ\":\"O\",\"Ǫ\":\"O\",\"Ǭ\":\"O\",\"Ø\":\"O\",\"Ǿ\":\"O\",\"Õ\":\"O\",\"Ṍ\":\"O\",\"Ṏ\":\"O\",\"Ȭ\":\"O\",\"Ƣ\":\"OI\",\"Ꝏ\":\"OO\",\"Ɛ\":\"E\",\"Ɔ\":\"O\",\"Ȣ\":\"OU\",\"Ṕ\":\"P\",\"Ṗ\":\"P\",\"Ꝓ\":\"P\",\"Ƥ\":\"P\",\"Ꝕ\":\"P\",\"Ᵽ\":\"P\",\"Ꝑ\":\"P\",\"Ꝙ\":\"Q\",\"Ꝗ\":\"Q\",\"Ŕ\":\"R\",\"Ř\":\"R\",\"Ŗ\":\"R\",\"Ṙ\":\"R\",\"Ṛ\":\"R\",\"Ṝ\":\"R\",\"Ȑ\":\"R\",\"Ȓ\":\"R\",\"Ṟ\":\"R\",\"Ɍ\":\"R\",\"Ɽ\":\"R\",\"Ꜿ\":\"C\",\"Ǝ\":\"E\",\"Ś\":\"S\",\"Ṥ\":\"S\",\"Š\":\"S\",\"Ṧ\":\"S\",\"Ş\":\"S\",\"Ŝ\":\"S\",\"Ș\":\"S\",\"Ṡ\":\"S\",\"Ṣ\":\"S\",\"Ṩ\":\"S\",\"ß\":\"ss\",\"Ť\":\"T\",\"Ţ\":\"T\",\"Ṱ\":\"T\",\"Ț\":\"T\",\"Ⱦ\":\"T\",\"Ṫ\":\"T\",\"Ṭ\":\"T\",\"Ƭ\":\"T\",\"Ṯ\":\"T\",\"Ʈ\":\"T\",\"Ŧ\":\"T\",\"Ɐ\":\"A\",\"Ꞁ\":\"L\",\"Ɯ\":\"M\",\"Ʌ\":\"V\",\"Ꜩ\":\"TZ\",\"Ú\":\"U\",\"Ŭ\":\"U\",\"Ǔ\":\"U\",\"Û\":\"U\",\"Ṷ\":\"U\",\"Ü\":\"U\",\"Ǘ\":\"U\",\"Ǚ\":\"U\",\"Ǜ\":\"U\",\"Ǖ\":\"U\",\"Ṳ\":\"U\",\"Ụ\":\"U\",\"Ű\":\"U\",\"Ȕ\":\"U\",\"Ù\":\"U\",\"Ủ\":\"U\",\"Ư\":\"U\",\"Ứ\":\"U\",\"Ự\":\"U\",\"Ừ\":\"U\",\"Ử\":\"U\",\"Ữ\":\"U\",\"Ȗ\":\"U\",\"Ū\":\"U\",\"Ṻ\":\"U\",\"Ų\":\"U\",\"Ů\":\"U\",\"Ũ\":\"U\",\"Ṹ\":\"U\",\"Ṵ\":\"U\",\"Ꝟ\":\"V\",\"Ṿ\":\"V\",\"Ʋ\":\"V\",\"Ṽ\":\"V\",\"Ꝡ\":\"VY\",\"Ẃ\":\"W\",\"Ŵ\":\"W\",\"Ẅ\":\"W\",\"Ẇ\":\"W\",\"Ẉ\":\"W\",\"Ẁ\":\"W\",\"Ⱳ\":\"W\",\"Ẍ\":\"X\",\"Ẋ\":\"X\",\"Ý\":\"Y\",\"Ŷ\":\"Y\",\"Ÿ\":\"Y\",\"Ẏ\":\"Y\",\"Ỵ\":\"Y\",\"Ỳ\":\"Y\",\"Ƴ\":\"Y\",\"Ỷ\":\"Y\",\"Ỿ\":\"Y\",\"Ȳ\":\"Y\",\"Ɏ\":\"Y\",\"Ỹ\":\"Y\",\"Ź\":\"Z\",\"Ž\":\"Z\",\"Ẑ\":\"Z\",\"Ⱬ\":\"Z\",\"Ż\":\"Z\",\"Ẓ\":\"Z\",\"Ȥ\":\"Z\",\"Ẕ\":\"Z\",\"Ƶ\":\"Z\",\"IJ\":\"IJ\",\"Œ\":\"OE\",\"ᴀ\":\"A\",\"ᴁ\":\"AE\",\"ʙ\":\"B\",\"ᴃ\":\"B\",\"ᴄ\":\"C\",\"ᴅ\":\"D\",\"ᴇ\":\"E\",\"ꜰ\":\"F\",\"ɢ\":\"G\",\"ʛ\":\"G\",\"ʜ\":\"H\",\"ɪ\":\"I\",\"ʁ\":\"R\",\"ᴊ\":\"J\",\"ᴋ\":\"K\",\"ʟ\":\"L\",\"ᴌ\":\"L\",\"ᴍ\":\"M\",\"ɴ\":\"N\",\"ᴏ\":\"O\",\"ɶ\":\"OE\",\"ᴐ\":\"O\",\"ᴕ\":\"OU\",\"ᴘ\":\"P\",\"ʀ\":\"R\",\"ᴎ\":\"N\",\"ᴙ\":\"R\",\"ꜱ\":\"S\",\"ᴛ\":\"T\",\"ⱻ\":\"E\",\"ᴚ\":\"R\",\"ᴜ\":\"U\",\"ᴠ\":\"V\",\"ᴡ\":\"W\",\"ʏ\":\"Y\",\"ᴢ\":\"Z\",\"á\":\"a\",\"ă\":\"a\",\"ắ\":\"a\",\"ặ\":\"a\",\"ằ\":\"a\",\"ẳ\":\"a\",\"ẵ\":\"a\",\"ǎ\":\"a\",\"â\":\"a\",\"ấ\":\"a\",\"ậ\":\"a\",\"ầ\":\"a\",\"ẩ\":\"a\",\"ẫ\":\"a\",\"ä\":\"a\",\"ǟ\":\"a\",\"ȧ\":\"a\",\"ǡ\":\"a\",\"ạ\":\"a\",\"ȁ\":\"a\",\"à\":\"a\",\"ả\":\"a\",\"ȃ\":\"a\",\"ā\":\"a\",\"ą\":\"a\",\"ᶏ\":\"a\",\"ẚ\":\"a\",\"å\":\"a\",\"ǻ\":\"a\",\"ḁ\":\"a\",\"ⱥ\":\"a\",\"ã\":\"a\",\"ꜳ\":\"aa\",\"æ\":\"ae\",\"ǽ\":\"ae\",\"ǣ\":\"ae\",\"ꜵ\":\"ao\",\"ꜷ\":\"au\",\"ꜹ\":\"av\",\"ꜻ\":\"av\",\"ꜽ\":\"ay\",\"ḃ\":\"b\",\"ḅ\":\"b\",\"ɓ\":\"b\",\"ḇ\":\"b\",\"ᵬ\":\"b\",\"ᶀ\":\"b\",\"ƀ\":\"b\",\"ƃ\":\"b\",\"ɵ\":\"o\",\"ć\":\"c\",\"č\":\"c\",\"ç\":\"c\",\"ḉ\":\"c\",\"ĉ\":\"c\",\"ɕ\":\"c\",\"ċ\":\"c\",\"ƈ\":\"c\",\"ȼ\":\"c\",\"ď\":\"d\",\"ḑ\":\"d\",\"ḓ\":\"d\",\"ȡ\":\"d\",\"ḋ\":\"d\",\"ḍ\":\"d\",\"ɗ\":\"d\",\"ᶑ\":\"d\",\"ḏ\":\"d\",\"ᵭ\":\"d\",\"ᶁ\":\"d\",\"đ\":\"d\",\"ɖ\":\"d\",\"ƌ\":\"d\",\"ı\":\"i\",\"ȷ\":\"j\",\"ɟ\":\"j\",\"ʄ\":\"j\",\"dz\":\"dz\",\"dž\":\"dz\",\"é\":\"e\",\"ĕ\":\"e\",\"ě\":\"e\",\"ȩ\":\"e\",\"ḝ\":\"e\",\"ê\":\"e\",\"ế\":\"e\",\"ệ\":\"e\",\"ề\":\"e\",\"ể\":\"e\",\"ễ\":\"e\",\"ḙ\":\"e\",\"ë\":\"e\",\"ė\":\"e\",\"ẹ\":\"e\",\"ȅ\":\"e\",\"è\":\"e\",\"ẻ\":\"e\",\"ȇ\":\"e\",\"ē\":\"e\",\"ḗ\":\"e\",\"ḕ\":\"e\",\"ⱸ\":\"e\",\"ę\":\"e\",\"ᶒ\":\"e\",\"ɇ\":\"e\",\"ẽ\":\"e\",\"ḛ\":\"e\",\"ꝫ\":\"et\",\"ḟ\":\"f\",\"ƒ\":\"f\",\"ᵮ\":\"f\",\"ᶂ\":\"f\",\"ǵ\":\"g\",\"ğ\":\"g\",\"ǧ\":\"g\",\"ģ\":\"g\",\"ĝ\":\"g\",\"ġ\":\"g\",\"ɠ\":\"g\",\"ḡ\":\"g\",\"ᶃ\":\"g\",\"ǥ\":\"g\",\"ḫ\":\"h\",\"ȟ\":\"h\",\"ḩ\":\"h\",\"ĥ\":\"h\",\"ⱨ\":\"h\",\"ḧ\":\"h\",\"ḣ\":\"h\",\"ḥ\":\"h\",\"ɦ\":\"h\",\"ẖ\":\"h\",\"ħ\":\"h\",\"ƕ\":\"hv\",\"í\":\"i\",\"ĭ\":\"i\",\"ǐ\":\"i\",\"î\":\"i\",\"ï\":\"i\",\"ḯ\":\"i\",\"ị\":\"i\",\"ȉ\":\"i\",\"ì\":\"i\",\"ỉ\":\"i\",\"ȋ\":\"i\",\"ī\":\"i\",\"į\":\"i\",\"ᶖ\":\"i\",\"ɨ\":\"i\",\"ĩ\":\"i\",\"ḭ\":\"i\",\"ꝺ\":\"d\",\"ꝼ\":\"f\",\"ᵹ\":\"g\",\"ꞃ\":\"r\",\"ꞅ\":\"s\",\"ꞇ\":\"t\",\"ꝭ\":\"is\",\"ǰ\":\"j\",\"ĵ\":\"j\",\"ʝ\":\"j\",\"ɉ\":\"j\",\"ḱ\":\"k\",\"ǩ\":\"k\",\"ķ\":\"k\",\"ⱪ\":\"k\",\"ꝃ\":\"k\",\"ḳ\":\"k\",\"ƙ\":\"k\",\"ḵ\":\"k\",\"ᶄ\":\"k\",\"ꝁ\":\"k\",\"ꝅ\":\"k\",\"ĺ\":\"l\",\"ƚ\":\"l\",\"ɬ\":\"l\",\"ľ\":\"l\",\"ļ\":\"l\",\"ḽ\":\"l\",\"ȴ\":\"l\",\"ḷ\":\"l\",\"ḹ\":\"l\",\"ⱡ\":\"l\",\"ꝉ\":\"l\",\"ḻ\":\"l\",\"ŀ\":\"l\",\"ɫ\":\"l\",\"ᶅ\":\"l\",\"ɭ\":\"l\",\"ł\":\"l\",\"lj\":\"lj\",\"ſ\":\"s\",\"ẜ\":\"s\",\"ẛ\":\"s\",\"ẝ\":\"s\",\"ḿ\":\"m\",\"ṁ\":\"m\",\"ṃ\":\"m\",\"ɱ\":\"m\",\"ᵯ\":\"m\",\"ᶆ\":\"m\",\"ń\":\"n\",\"ň\":\"n\",\"ņ\":\"n\",\"ṋ\":\"n\",\"ȵ\":\"n\",\"ṅ\":\"n\",\"ṇ\":\"n\",\"ǹ\":\"n\",\"ɲ\":\"n\",\"ṉ\":\"n\",\"ƞ\":\"n\",\"ᵰ\":\"n\",\"ᶇ\":\"n\",\"ɳ\":\"n\",\"ñ\":\"n\",\"nj\":\"nj\",\"ó\":\"o\",\"ŏ\":\"o\",\"ǒ\":\"o\",\"ô\":\"o\",\"ố\":\"o\",\"ộ\":\"o\",\"ồ\":\"o\",\"ổ\":\"o\",\"ỗ\":\"o\",\"ö\":\"o\",\"ȫ\":\"o\",\"ȯ\":\"o\",\"ȱ\":\"o\",\"ọ\":\"o\",\"ő\":\"o\",\"ȍ\":\"o\",\"ò\":\"o\",\"ỏ\":\"o\",\"ơ\":\"o\",\"ớ\":\"o\",\"ợ\":\"o\",\"ờ\":\"o\",\"ở\":\"o\",\"ỡ\":\"o\",\"ȏ\":\"o\",\"ꝋ\":\"o\",\"ꝍ\":\"o\",\"ⱺ\":\"o\",\"ō\":\"o\",\"ṓ\":\"o\",\"ṑ\":\"o\",\"ǫ\":\"o\",\"ǭ\":\"o\",\"ø\":\"o\",\"ǿ\":\"o\",\"õ\":\"o\",\"ṍ\":\"o\",\"ṏ\":\"o\",\"ȭ\":\"o\",\"ƣ\":\"oi\",\"ꝏ\":\"oo\",\"ɛ\":\"e\",\"ᶓ\":\"e\",\"ɔ\":\"o\",\"ᶗ\":\"o\",\"ȣ\":\"ou\",\"ṕ\":\"p\",\"ṗ\":\"p\",\"ꝓ\":\"p\",\"ƥ\":\"p\",\"ᵱ\":\"p\",\"ᶈ\":\"p\",\"ꝕ\":\"p\",\"ᵽ\":\"p\",\"ꝑ\":\"p\",\"ꝙ\":\"q\",\"ʠ\":\"q\",\"ɋ\":\"q\",\"ꝗ\":\"q\",\"ŕ\":\"r\",\"ř\":\"r\",\"ŗ\":\"r\",\"ṙ\":\"r\",\"ṛ\":\"r\",\"ṝ\":\"r\",\"ȑ\":\"r\",\"ɾ\":\"r\",\"ᵳ\":\"r\",\"ȓ\":\"r\",\"ṟ\":\"r\",\"ɼ\":\"r\",\"ᵲ\":\"r\",\"ᶉ\":\"r\",\"ɍ\":\"r\",\"ɽ\":\"r\",\"ↄ\":\"c\",\"ꜿ\":\"c\",\"ɘ\":\"e\",\"ɿ\":\"r\",\"ś\":\"s\",\"ṥ\":\"s\",\"š\":\"s\",\"ṧ\":\"s\",\"ş\":\"s\",\"ŝ\":\"s\",\"ș\":\"s\",\"ṡ\":\"s\",\"ṣ\":\"s\",\"ṩ\":\"s\",\"ʂ\":\"s\",\"ᵴ\":\"s\",\"ᶊ\":\"s\",\"ȿ\":\"s\",\"ɡ\":\"g\",\"ᴑ\":\"o\",\"ᴓ\":\"o\",\"ᴝ\":\"u\",\"ť\":\"t\",\"ţ\":\"t\",\"ṱ\":\"t\",\"ț\":\"t\",\"ȶ\":\"t\",\"ẗ\":\"t\",\"ⱦ\":\"t\",\"ṫ\":\"t\",\"ṭ\":\"t\",\"ƭ\":\"t\",\"ṯ\":\"t\",\"ᵵ\":\"t\",\"ƫ\":\"t\",\"ʈ\":\"t\",\"ŧ\":\"t\",\"ᵺ\":\"th\",\"ɐ\":\"a\",\"ᴂ\":\"ae\",\"ǝ\":\"e\",\"ᵷ\":\"g\",\"ɥ\":\"h\",\"ʮ\":\"h\",\"ʯ\":\"h\",\"ᴉ\":\"i\",\"ʞ\":\"k\",\"ꞁ\":\"l\",\"ɯ\":\"m\",\"ɰ\":\"m\",\"ᴔ\":\"oe\",\"ɹ\":\"r\",\"ɻ\":\"r\",\"ɺ\":\"r\",\"ⱹ\":\"r\",\"ʇ\":\"t\",\"ʌ\":\"v\",\"ʍ\":\"w\",\"ʎ\":\"y\",\"ꜩ\":\"tz\",\"ú\":\"u\",\"ŭ\":\"u\",\"ǔ\":\"u\",\"û\":\"u\",\"ṷ\":\"u\",\"ü\":\"u\",\"ǘ\":\"u\",\"ǚ\":\"u\",\"ǜ\":\"u\",\"ǖ\":\"u\",\"ṳ\":\"u\",\"ụ\":\"u\",\"ű\":\"u\",\"ȕ\":\"u\",\"ù\":\"u\",\"ủ\":\"u\",\"ư\":\"u\",\"ứ\":\"u\",\"ự\":\"u\",\"ừ\":\"u\",\"ử\":\"u\",\"ữ\":\"u\",\"ȗ\":\"u\",\"ū\":\"u\",\"ṻ\":\"u\",\"ų\":\"u\",\"ᶙ\":\"u\",\"ů\":\"u\",\"ũ\":\"u\",\"ṹ\":\"u\",\"ṵ\":\"u\",\"ᵫ\":\"ue\",\"ꝸ\":\"um\",\"ⱴ\":\"v\",\"ꝟ\":\"v\",\"ṿ\":\"v\",\"ʋ\":\"v\",\"ᶌ\":\"v\",\"ⱱ\":\"v\",\"ṽ\":\"v\",\"ꝡ\":\"vy\",\"ẃ\":\"w\",\"ŵ\":\"w\",\"ẅ\":\"w\",\"ẇ\":\"w\",\"ẉ\":\"w\",\"ẁ\":\"w\",\"ⱳ\":\"w\",\"ẘ\":\"w\",\"ẍ\":\"x\",\"ẋ\":\"x\",\"ᶍ\":\"x\",\"ý\":\"y\",\"ŷ\":\"y\",\"ÿ\":\"y\",\"ẏ\":\"y\",\"ỵ\":\"y\",\"ỳ\":\"y\",\"ƴ\":\"y\",\"ỷ\":\"y\",\"ỿ\":\"y\",\"ȳ\":\"y\",\"ẙ\":\"y\",\"ɏ\":\"y\",\"ỹ\":\"y\",\"ź\":\"z\",\"ž\":\"z\",\"ẑ\":\"z\",\"ʑ\":\"z\",\"ⱬ\":\"z\",\"ż\":\"z\",\"ẓ\":\"z\",\"ȥ\":\"z\",\"ẕ\":\"z\",\"ᵶ\":\"z\",\"ᶎ\":\"z\",\"ʐ\":\"z\",\"ƶ\":\"z\",\"ɀ\":\"z\",\"ff\":\"ff\",\"ffi\":\"ffi\",\"ffl\":\"ffl\",\"fi\":\"fi\",\"fl\":\"fl\",\"ij\":\"ij\",\"œ\":\"oe\",\"st\":\"st\",\"ₐ\":\"a\",\"ₑ\":\"e\",\"ᵢ\":\"i\",\"ⱼ\":\"j\",\"ₒ\":\"o\",\"ᵣ\":\"r\",\"ᵤ\":\"u\",\"ᵥ\":\"v\",\"ₓ\":\"x\",\"Ё\":\"YO\",\"Й\":\"I\",\"Ц\":\"TS\",\"У\":\"U\",\"К\":\"K\",\"Е\":\"E\",\"Н\":\"N\",\"Г\":\"G\",\"Ш\":\"SH\",\"Щ\":\"SCH\",\"З\":\"Z\",\"Х\":\"H\",\"Ъ\":\"'\",\"ё\":\"yo\",\"й\":\"i\",\"ц\":\"ts\",\"у\":\"u\",\"к\":\"k\",\"е\":\"e\",\"н\":\"n\",\"г\":\"g\",\"ш\":\"sh\",\"щ\":\"sch\",\"з\":\"z\",\"х\":\"h\",\"ъ\":\"'\",\"Ф\":\"F\",\"Ы\":\"I\",\"В\":\"V\",\"А\":\"a\",\"П\":\"P\",\"Р\":\"R\",\"О\":\"O\",\"Л\":\"L\",\"Д\":\"D\",\"Ж\":\"ZH\",\"Э\":\"E\",\"ф\":\"f\",\"ы\":\"i\",\"в\":\"v\",\"а\":\"a\",\"п\":\"p\",\"р\":\"r\",\"о\":\"o\",\"л\":\"l\",\"д\":\"d\",\"ж\":\"zh\",\"э\":\"e\",\"Я\":\"Ya\",\"Ч\":\"CH\",\"С\":\"S\",\"М\":\"M\",\"И\":\"I\",\"Т\":\"T\",\"Ь\":\"'\",\"Б\":\"B\",\"Ю\":\"YU\",\"я\":\"ya\",\"ч\":\"ch\",\"с\":\"s\",\"м\":\"m\",\"и\":\"i\",\"т\":\"t\",\"ь\":\"'\",\"б\":\"b\",\"ю\":\"yu\"},e})},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(11),r=n(31),s=n(27),a=n(1),u=n(61),l=n(52),c=function(){function e(e,t,n,i){var s=this;this.debugInstance=e,this.element=t,this.onSearch=n,this.infoToDebug=i,this.debug=!1,this.enableQuerySyntax=!1,this.highlightRecommendation=!1,this.requestAllFields=!1,this.widgets=[],this.widgets.push(this.buildEnabledHighlightRecommendation()),this.widgets.push(this.buildEnableDebugCheckbox()),this.widgets.push(this.buildEnableQuerySyntaxCheckbox()),this.widgets.push(this.buildRequestAllFieldsCheckbox()),this.widgets.push(this.buildSearch()),this.moveTo(t),a.$$(this.root).on(r.ResultListEvents.newResultDisplayed,function(e,t){return s.handleNewResultDisplayed(t)}),a.$$(this.root).on(o.QueryEvents.doneBuildingQuery,function(e,t){return s.handleDoneBuildingQuery(t)})}return e.prototype.moveTo=function(e){i.each(this.widgets,function(t){return e.appendChild(t)}),this.element=e},e.prototype.setSearch=function(e){this.onSearch=e,this.resetSearchbox()},e.prototype.setNewInfoToDebug=function(e){this.infoToDebug=e},e.prototype.resetSearchbox=function(){this.search&&this.search.reset()},Object.defineProperty(e.prototype,\"bindings\",{get:function(){return this.debugInstance.bindings},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"root\",{get:function(){return this.debugInstance.element},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"queryOptions\",{get:function(){return{closeModalBox:!1,origin:this.debugInstance}},enumerable:!0,configurable:!0}),e.prototype.handleNewResultDisplayed=function(e){null!=e.item&&e.result.isRecommendation&&this.highlightRecommendation&&a.$$(e.item).addClass(\"coveo-is-recommendation\")},e.prototype.handleDoneBuildingQuery=function(e){e.queryBuilder.enableDebug=this.debug||e.queryBuilder.enableDebug,this.requestAllFields&&(e.queryBuilder.fieldsToInclude=void 0,e.queryBuilder.includeRequiredFields=!1)},e.prototype.buildSearch=function(){var e=this;return this.search=new l.TextInput(function(t){var n=t.getValue().toLowerCase();e.onSearch(n)},\"Search in debug\"),this.search.build(),this.search.getElement()},e.prototype.buildEnableDebugCheckbox=function(){var e=this,t=new u.Checkbox(function(t){e.debug=t.isSelected(),e.bindings.queryController.executeQuery(e.queryOptions),e.resetSearchbox()},\"Enable query debug\");return this.debug&&t.select(),t.build()},e.prototype.buildEnableQuerySyntaxCheckbox=function(){var e=this,t=new u.Checkbox(function(t){e.enableQuerySyntax=t.isSelected(),e.bindings.componentOptionsModel.set(s.COMPONENT_OPTIONS_ATTRIBUTES.SEARCH_BOX,{enableQuerySyntax:e.enableQuerySyntax}),e.bindings.queryController.executeQuery(e.queryOptions)},\"Enable query syntax in search box\");return this.enableQuerySyntax&&t.select(),t.build()},e.prototype.buildRequestAllFieldsCheckbox=function(){var e=this,t=new u.Checkbox(function(t){e.requestAllFields=t.isSelected(),e.bindings.queryController.executeQuery(e.queryOptions)},\"Request all fields available\");return this.requestAllFields&&t.select(),t.build()},e.prototype.buildEnabledHighlightRecommendation=function(){var e=this,t=new u.Checkbox(function(t){e.highlightRecommendation=t.isSelected(),e.bindings.queryController.executeQuery(e.queryOptions)},\"Highlight recommendation\");return this.highlightRecommendation&&t.select(),t.build()},e}();t.DebugHeader=c},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(19),o=n(0),r=function(){function e(e){this.bindings=e}return e.prototype.generateDebugInfoForResult=function(e){var t=this;return{result:e,fields:function(){return t.buildFieldsSection(e)},rankingInfo:function(){return t.buildRankingInfoSection(e)}}},e.prototype.fetchFields=function(){var e=this;return null==this.fields?this.bindings.queryController.getEndpoint().listFields().then(function(t){return e.fields={},t.forEach(function(t){e.fields[t.name]=t}),e.fields}):Promise.resolve(this.fields)},e.prototype.buildRankingInfoSection=function(e){return e.rankingInfo&&this.parseRankingInfo(e.rankingInfo)},e.prototype.parseWeights=function(e){var t=e.match(/(\\w+(?:\\s\\w+)*): ([-0-9]+)/g);return o.object(o.map(t,function(e){var t=e.match(/^(\\w+(?:\\s\\w+)*): ([-0-9]+)$/);return[t[1],Number(t[2])]}))},e.prototype.buildFieldsSection=function(e){return this.fetchFields().then(function(t){var n={};return o.each(e.raw,function(e,i){var r=t[\"@\"+i];null==r&&i.match(/^sys/)&&(r=t[\"@\"+i.substr(3)]),null==r?n[\"@\"+i]=e:\"Date\"==r.fieldType?n[\"@\"+i]=new Date(e):r.splitGroupByField&&o.isString(e)?n[\"@\"+i]=e.split(/\\s*;\\s*/):n[\"@\"+i]=e}),n})},e.prototype.parseRankingInfo=function(e){var t=this,n={};if(e){var r=/Document weights:\\n((?:.)*?)\\n+/g.exec(e),s=/Terms weights:\\n((?:.|\\n)*)\\n+/g.exec(e),a=/Total weight: ([0-9]+)/g.exec(e);if(r&&r[1]&&(n[\"Document weights\"]=this.parseWeights(r[1])),a&&a[1]&&(n[\"Total weight\"]=Number(a[1])),s&&s[1]){var u=i.StringUtils.match(s[1],/((?:[^:]+: [0-9]+, [0-9]+; )+)\\n((?:\\w+: [0-9]+; )+)/g);n[\"Terms weights\"]=o.object(o.map(u,function(e){var n=o.object(o.map(i.StringUtils.match(e[1],/([^:]+): ([0-9]+), ([0-9]+); /g),function(e){return[e[1],{Correlation:Number(e[2]),\"TF-IDF\":Number(e[3])}]})),r=t.parseWeights(e[2]);return[o.keys(n).join(\", \"),{terms:n,Weights:r}]}))}}return n},e}();t.DebugForResult=r},function(e,t){},function(e,t,n){\"use strict\";function i(e){var t=!0;try{new RegExp(\"\",e)}catch(e){t=!1}return t}function o(e,t,n,i,o){if(e[T]={captureNames:t},o)return e;if(e.__proto__)e.__proto__=w.prototype;else for(var r in w.prototype)e[r]=w.prototype[r];return e[T].source=n,e[T].flags=i?i.split(\"\").sort().join(\"\"):i,e}function r(e){return F.replace.call(e,/([\\s\\S])(?=[\\s\\S]*\\1)/g,\"\")}function s(e,t){if(!w.isRegExp(e))throw new TypeError(\"Type RegExp expected\");var n=e[T]||{},i=l(e),s=\"\",a=\"\",u=null,p=null;return t=t||{},t.removeG&&(a+=\"g\"),t.removeY&&(a+=\"y\"),a&&(i=F.replace.call(i,new RegExp(\"[\".concat(a,\"]+\"),\"g\"),\"\")),t.addG&&(s+=\"g\"),t.addY&&(s+=\"y\"),s&&(i=r(i+s)),t.isInternalOnly||(void 0!==n.source&&(u=n.source),null!=n.flags&&(p=s?r(n.flags+s):n.flags)),e=o(new RegExp(t.source||e.source,i),c(e)?n.captureNames.slice(0):null,u,p,t.isInternalOnly)}function a(e){return(0,A.default)(e,16)}function u(e,t,n){return\"(\"===e.input[e.index-1]||\")\"===e.input[e.index+e[0].length]||\"|\"===e.input[e.index-1]||\"|\"===e.input[e.index+e[0].length]||e.index<1||e.index+e[0].length>=e.input.length||F.test.call(/^\\(\\?[:=!]/,e.input.substr(e.index-3,3))||h(e.input,e.index+e[0].length,n)?\"\":\"(?:)\"}function l(e){return B?e.flags:F.exec.call(/\\/([a-z]*)$/i,RegExp.prototype.toString.call(e))[1]}function c(e){return!(!e[T]||!e[T].captureNames)}function p(e){return(0,A.default)(e,10).toString(16)}function h(e,t,n){return F.test.call(-1!==n.indexOf(\"x\")?/^(?:\\s|#[^#\\n]*|\\(\\?#[^)]*\\))*(?:[?*+]|{\\d+(?:,\\d*)?})/:/^(?:\\(\\?#[^)]*\\))*(?:[?*+]|{\\d+(?:,\\d*)?})/,e.slice(t))}function d(e,t){return U.call(e)===\"[object \".concat(t,\"]\")}function f(e){for(;e.length<4;)e=\"0\".concat(e);return e}function m(e,t){if(r(t)!==t)throw new SyntaxError(\"Invalid duplicate regex flag \".concat(t));e=F.replace.call(e,/^\\(\\?([\\w$]+)\\)/,function(e,n){if(F.test.call(/[gy]/,n))throw new SyntaxError(\"Cannot use flag g or y in mode modifier \".concat(e));return t=r(t+n),\"\"});var n=!0,i=!1,o=void 0;try{for(var s,a=(0,E.default)(t);!(n=(s=a.next()).done);n=!0){var u=s.value;if(!H[u])throw new SyntaxError(\"Unknown regex flag \".concat(u))}}catch(e){i=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(i)throw o}}return{pattern:e,flags:t}}function y(e){var t={};return d(e,\"String\")?(w.forEach(e,/[^\\s,]+/,function(e){t[e]=!0}),t):e}function g(e){if(!/^[\\w$]$/.test(e))throw new Error(\"Flag must be a single character A-Za-z0-9_$\");H[e]=!0}function v(e,t,n,i,o){for(var r,s,a=D.length,u=e[n],l=null;a--;)if(s=D[a],!(s.leadChar&&s.leadChar!==u||s.scope!==i&&\"all\"!==s.scope||s.flag&&-1===t.indexOf(s.flag))&&(r=w.exec(e,s.regex,n,\"sticky\"))){l={matchLength:r[0].length,output:s.handler.call(o,r,i,t),reparse:s.reparse};break}return l}function b(e){R.astral=e}function C(e){R.namespacing=e}function S(e){if(null==e)throw new TypeError(\"Cannot convert null or undefined to object\");return e}function w(e,t){if(w.isRegExp(e)){if(void 0!==t)throw new TypeError(\"Cannot supply flags when copying a RegExp\");return s(e)}if(e=void 0===e?\"\":String(e),t=void 0===t?\"\":String(t),w.isInstalled(\"astral\")&&-1===t.indexOf(\"A\")&&(t+=\"A\"),P[e]||(P[e]={}),!P[e][t]){for(var n,i={hasNamedCapture:!1,captureNames:[]},r=$,a=\"\",u=0,l=m(e,t),c=l.pattern,p=l.flags;u<c.length;){do{(n=v(c,p,u,r,i))&&n.reparse&&(c=c.slice(0,u)+n.output+c.slice(u+n.matchLength))}while(n&&n.reparse);if(n)a+=n.output,u+=n.matchLength||1;else{var h=w.exec(c,V[r],u,\"sticky\"),d=(0,O.default)(h,1),f=d[0];a+=f,u+=f.length,\"[\"===f&&r===$?r=N:\"]\"===f&&r===N&&(r=$)}}P[e][t]={pattern:F.replace.call(a,/(?:\\(\\?:\\))+/g,\"(?:)\"),flags:F.replace.call(p,/[^gimuy]+/g,\"\"),captures:i.hasNamedCapture?i.captureNames:null}}var y=P[e][t];return o(new RegExp(y.pattern,y.flags),y.captures,e,t)}var x=n(35);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var _=x(n(366)),O=x(n(381)),E=x(n(107)),A=x(n(403)),T=\"xregexp\",R={astral:!1,namespacing:!1},F={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},I={},M={},P={},D=[],$=\"default\",N=\"class\",V={default:/\\\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\\d*|x[\\dA-Fa-f]{2}|u(?:[\\dA-Fa-f]{4}|{[\\dA-Fa-f]+})|c[A-Za-z]|[\\s\\S])|\\(\\?(?:[:=!]|<[=!])|[?*+]\\?|{\\d+(?:,\\d*)?}\\??|[\\s\\S]/,class:/\\\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\\dA-Fa-f]{2}|u(?:[\\dA-Fa-f]{4}|{[\\dA-Fa-f]+})|c[A-Za-z]|[\\s\\S])|[\\s\\S]/},k=/\\$(?:{([\\w$]+)}|<([\\w$]+)>|(\\d\\d?|[\\s\\S]))/g,L=void 0===F.exec.call(/()??/,\"\")[1],B=void 0!==/x/.flags,Q={},U=Q.toString,j=i(\"u\"),q=i(\"y\"),H={g:!0,i:!0,m:!0,u:j,y:q};w.prototype=/(?:)/,w.version=\"4.2.4\",w._clipDuplicates=r,w._hasNativeFlag=i,w._dec=a,w._hex=p,w._pad4=f,w.addToken=function(e,t,n){n=n||{};var i=n,o=i.optionalFlags;if(n.flag&&g(n.flag),o){o=F.split.call(o,\"\");var r=!0,a=!1,u=void 0;try{for(var l,c=(0,E.default)(o);!(r=(l=c.next()).done);r=!0){g(l.value)}}catch(e){a=!0,u=e}finally{try{r||null==c.return||c.return()}finally{if(a)throw u}}}D.push({regex:s(e,{addG:!0,addY:q,isInternalOnly:!0}),handler:t,scope:n.scope||$,flag:n.flag,reparse:n.reparse,leadChar:n.leadChar}),w.cache.flush(\"patterns\")},w.cache=function(e,t){return M[e]||(M[e]={}),M[e][t]||(M[e][t]=w(e,t))},w.cache.flush=function(e){\"patterns\"===e?P={}:M={}},w.escape=function(e){return F.replace.call(S(e),/[-\\[\\]{}()*+?.,\\\\^$|#\\s]/g,\"\\\\$&\")},w.exec=function(e,t,n,i){var o,r=\"g\",a=!1,u=!1;a=q&&!!(i||t.sticky&&!1!==i),a?r+=\"y\":i&&(u=!0,r+=\"FakeY\"),t[T]=t[T]||{};var l=t[T][r]||(t[T][r]=s(t,{addG:!0,addY:a,source:u?\"\".concat(t.source,\"|()\"):void 0,removeY:!1===i,isInternalOnly:!0}));return n=n||0,l.lastIndex=n,o=I.exec.call(l,e),u&&o&&\"\"===o.pop()&&(o=null),t.global&&(t.lastIndex=o?l.lastIndex:0),o},w.forEach=function(e,t,n){for(var i,o=0,r=-1;i=w.exec(e,t,o);)n(i,++r,e,t),o=i.index+(i[0].length||1)},w.globalize=function(e){return s(e,{addG:!0})},w.install=function(e){e=y(e),!R.astral&&e.astral&&b(!0),!R.namespacing&&e.namespacing&&C(!0)},w.isInstalled=function(e){return!!R[e]},w.isRegExp=function(e){return\"[object RegExp]\"===U.call(e)},w.match=function(e,t,n){var i=t.global&&\"one\"!==n||\"all\"===n,o=(i?\"g\":\"\")+(t.sticky?\"y\":\"\")||\"noGY\";t[T]=t[T]||{};var r=t[T][o]||(t[T][o]=s(t,{addG:!!i,removeG:\"one\"===n,isInternalOnly:!0})),a=F.match.call(S(e),r);return t.global&&(t.lastIndex=\"one\"===n&&a?a.index+a[0].length:0),i?a||[]:a&&a[0]},w.matchChain=function(e,t){return function e(n,i){function o(e){if(r.backref){var t=\"Backreference to undefined group: \".concat(r.backref),n=isNaN(r.backref);if(n&&w.isInstalled(\"namespacing\")){if(!(r.backref in e.groups))throw new ReferenceError(t)}else if(!e.hasOwnProperty(r.backref))throw new ReferenceError(t);var i=n&&w.isInstalled(\"namespacing\")?e.groups[r.backref]:e[r.backref];s.push(i||\"\")}else s.push(e[0])}var r=t[i].regex?t[i]:{regex:t[i]},s=[],a=!0,u=!1,l=void 0;try{for(var c,p=(0,E.default)(n);!(a=(c=p.next()).done);a=!0){var h=c.value;w.forEach(h,r.regex,o)}}catch(e){u=!0,l=e}finally{try{a||null==p.return||p.return()}finally{if(u)throw l}}return i!==t.length-1&&s.length?e(s,i+1):s}([e],0)},w.replace=function(e,t,n,i){var o=w.isRegExp(t),r=t.global&&\"one\"!==i||\"all\"===i,a=(r?\"g\":\"\")+(t.sticky?\"y\":\"\")||\"noGY\",u=t;o?(t[T]=t[T]||{},u=t[T][a]||(t[T][a]=s(t,{addG:!!r,removeG:\"one\"===i,isInternalOnly:!0}))):r&&(u=new RegExp(w.escape(String(t)),\"g\"));var l=I.replace.call(S(e),u,n);return o&&t.global&&(t.lastIndex=0),l},w.replaceEach=function(e,t){var n=!0,i=!1,o=void 0;try{for(var r,s=(0,E.default)(t);!(n=(r=s.next()).done);n=!0){var a=r.value;e=w.replace(e,a[0],a[1],a[2])}}catch(e){i=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(i)throw o}}return e},w.split=function(e,t,n){return I.split.call(S(e),t,n)},w.test=function(e,t,n,i){return!!w.exec(e,t,n,i)},w.uninstall=function(e){e=y(e),R.astral&&e.astral&&b(!1),R.namespacing&&e.namespacing&&C(!1)},w.union=function(e,t,n){function i(e,t,n){var i=r[a-o];if(t){if(++a,i)return\"(?<\".concat(i,\">\")}else if(n)return\"\\\\\".concat(+n+o);return e}n=n||{};var o,r,s=n.conjunction||\"or\",a=0;if(!d(e,\"Array\")||!e.length)throw new TypeError(\"Must provide a nonempty array of patterns to merge\");var u=/(\\()(?!\\?)|\\\\([1-9]\\d*)|\\\\[\\s\\S]|\\[(?:[^\\\\\\]]|\\\\[\\s\\S])*\\]/g,l=[],c=!0,p=!1,h=void 0;try{for(var f,m=(0,E.default)(e);!(c=(f=m.next()).done);c=!0){var y=f.value;w.isRegExp(y)?(o=a,r=y[T]&&y[T].captureNames||[],l.push(F.replace.call(w(y.source).source,u,i))):l.push(w.escape(y))}}catch(e){p=!0,h=e}finally{try{c||null==m.return||m.return()}finally{if(p)throw h}}var g=\"none\"===s?\"\":\"|\";return w(l.join(g),t)},I.exec=function(e){var t=this.lastIndex,n=F.exec.apply(this,arguments);if(n){if(!L&&n.length>1&&-1!==n.indexOf(\"\")){var i=s(this,{removeG:!0,isInternalOnly:!0});F.replace.call(String(e).slice(n.index),i,function(){for(var e=arguments.length,t=1;t<e-2;++t)void 0===(t<0||arguments.length<=t?void 0:arguments[t])&&(n[t]=void 0)})}var o=n;if(w.isInstalled(\"namespacing\")&&(n.groups=(0,_.default)(null),o=n.groups),this[T]&&this[T].captureNames)for(var r=1;r<n.length;++r){var a=this[T].captureNames[r-1];a&&(o[a]=n[r])}this.global&&!n[0].length&&this.lastIndex>n.index&&(this.lastIndex=n.index)}return this.global||(this.lastIndex=t),n},I.test=function(e){return!!I.exec.call(this,e)},I.match=function(e){if(w.isRegExp(e)){if(e.global){var t=F.match.apply(this,arguments);return e.lastIndex=0,t}}else e=new RegExp(e);return I.exec.call(e,S(this))},I.replace=function(e,t){var n,i,o,r=w.isRegExp(e);return r?(e[T]&&(i=e[T].captureNames),n=e.lastIndex):e+=\"\",o=d(t,\"Function\")?F.replace.call(String(this),e,function(){for(var n=arguments.length,o=new Array(n),s=0;s<n;s++)o[s]=arguments[s];if(i){var a;w.isInstalled(\"namespacing\")?(a=(0,_.default)(null),o.push(a)):(o[0]=new String(o[0]),a=o[0]);for(var u=0;u<i.length;++u)i[u]&&(a[i[u]]=o[u+1])}return r&&e.global&&(e.lastIndex=o[o.length-2]+o[0].length),t.apply(void 0,o)}):F.replace.call(null==this?this:String(this),e,function(){function e(e,t,n,r){if(t=t||n){var s=+t;if(s<=o.length-3)return o[s]||\"\";if((s=i?i.indexOf(t):-1)<0)throw new SyntaxError(\"Backreference to undefined group \".concat(e));return o[s+1]||\"\"}if(\"$\"===r)return\"$\";if(\"&\"===r||0==+r)return o[0];if(\"`\"===r)return o[o.length-1].slice(0,o[o.length-2]);if(\"'\"===r)return o[o.length-1].slice(o[o.length-2]+o[0].length);if(r=+r,!isNaN(r)){if(r>o.length-3)throw new SyntaxError(\"Backreference to undefined group \".concat(e));return o[r]||\"\"}throw new SyntaxError(\"Invalid token \".concat(e))}for(var n=arguments.length,o=new Array(n),r=0;r<n;r++)o[r]=arguments[r];return F.replace.call(String(t),k,e)}),r&&(e.global?e.lastIndex=0:e.lastIndex=n),o},I.split=function(e,t){if(!w.isRegExp(e))return F.split.apply(this,arguments);var n,i=String(this),o=[],r=e.lastIndex,s=0;return t=(void 0===t?-1:t)>>>0,w.forEach(i,e,function(e){e.index+e[0].length>s&&(o.push(i.slice(s,e.index)),e.length>1&&e.index<i.length&&Array.prototype.push.apply(o,e.slice(1)),n=e[0].length,s=e.index+n)}),s===i.length?F.test.call(e,\"\")&&!n||o.push(\"\"):o.push(i.slice(s)),e.lastIndex=r,o.length>t?o.slice(0,t):o},w.addToken(/\\\\([ABCE-RTUVXYZaeg-mopqyz]|c(?![A-Za-z])|u(?![\\dA-Fa-f]{4}|{[\\dA-Fa-f]+})|x(?![\\dA-Fa-f]{2}))/,function(e,t){if(\"B\"===e[1]&&t===$)return e[0];throw new SyntaxError(\"Invalid escape \".concat(e[0]))},{scope:\"all\",leadChar:\"\\\\\"}),w.addToken(/\\\\u{([\\dA-Fa-f]+)}/,function(e,t,n){var i=a(e[1]);if(i>1114111)throw new SyntaxError(\"Invalid Unicode code point \".concat(e[0]));if(i<=65535)return\"\\\\u\".concat(f(p(i)));if(j&&-1!==n.indexOf(\"u\"))return e[0];throw new SyntaxError(\"Cannot use Unicode code point above \\\\u{FFFF} without flag u\")},{scope:\"all\",leadChar:\"\\\\\"}),w.addToken(/\\[(\\^?)\\]/,function(e){return e[1]?\"[\\\\s\\\\S]\":\"\\\\b\\\\B\"},{leadChar:\"[\"}),w.addToken(/\\(\\?#[^)]*\\)/,u,{leadChar:\"(\"}),w.addToken(/\\s+|#[^\\n]*\\n?/,u,{flag:\"x\"}),w.addToken(/\\./,function(){return\"[\\\\s\\\\S]\"},{flag:\"s\",leadChar:\".\"}),w.addToken(/\\\\k<([\\w$]+)>/,function(e){var t=isNaN(e[1])?this.captureNames.indexOf(e[1])+1:+e[1],n=e.index+e[0].length;if(!t||t>this.captureNames.length)throw new SyntaxError(\"Backreference to undefined group \".concat(e[0]));return\"\\\\\".concat(t).concat(n===e.input.length||isNaN(e.input[n])?\"\":\"(?:)\")},{leadChar:\"\\\\\"}),w.addToken(/\\\\(\\d+)/,function(e,t){if(!(t===$&&/^[1-9]/.test(e[1])&&+e[1]<=this.captureNames.length)&&\"0\"!==e[1])throw new SyntaxError(\"Cannot use octal escape or backreference to undefined group \".concat(e[0]));return e[0]},{scope:\"all\",leadChar:\"\\\\\"}),w.addToken(/\\(\\?P?<([\\w$]+)>/,function(e){if(!isNaN(e[1]))throw new SyntaxError(\"Cannot use integer as capture name \".concat(e[0]));if(!w.isInstalled(\"namespacing\")&&(\"length\"===e[1]||\"__proto__\"===e[1]))throw new SyntaxError(\"Cannot use reserved word as capture name \".concat(e[0]));if(-1!==this.captureNames.indexOf(e[1]))throw new SyntaxError(\"Cannot use same name for multiple groups \".concat(e[0]));return this.captureNames.push(e[1]),this.hasNamedCapture=!0,\"(\"},{leadChar:\"(\"}),w.addToken(/\\((?!\\?)/,function(e,t,n){return-1!==n.indexOf(\"n\")?\"(?:\":(this.captureNames.push(null),\"(\")},{optionalFlags:\"n\",leadChar:\"(\"});var z=w;t.default=z,e.exports=t.default},function(e,t,n){e.exports=n(367)},function(e,t,n){n(368);var i=n(37).Object;e.exports=function(e,t){return i.create(e,t)}},function(e,t,n){var i=n(56);i(i.S,\"Object\",{create:n(156)})},function(e,t,n){var i=n(370);e.exports=function(e,t,n){if(i(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,i){return e.call(t,n,i)};case 3:return function(n,i,o){return e.call(t,n,i,o)}}return function(){return e.apply(t,arguments)}}},function(e,t){e.exports=function(e){if(\"function\"!=typeof e)throw TypeError(e+\" is not a function!\");return e}},function(e,t,n){e.exports=!n(77)&&!n(102)(function(){return 7!=Object.defineProperty(n(154)(\"div\"),\"a\",{get:function(){return 7}}).a})},function(e,t,n){var i=n(101);e.exports=function(e,t){if(!i(e))return e;var n,o;if(t&&\"function\"==typeof(n=e.toString)&&!i(o=n.call(e)))return o;if(\"function\"==typeof(n=e.valueOf)&&!i(o=n.call(e)))return o;if(!t&&\"function\"==typeof(n=e.toString)&&!i(o=n.call(e)))return o;throw TypeError(\"Can't convert object to primitive value\")}},function(e,t,n){var i=n(100),o=n(76),r=n(374);e.exports=n(77)?Object.defineProperties:function(e,t){o(e);for(var n,s=r(t),a=s.length,u=0;a>u;)i.f(e,n=s[u++],t[n]);return e}},function(e,t,n){var i=n(375),o=n(160);e.exports=Object.keys||function(e){return i(e,o)}},function(e,t,n){var i=n(78),o=n(103),r=n(377)(!1),s=n(106)(\"IE_PROTO\");e.exports=function(e,t){var n,a=o(e),u=0,l=[];for(n in a)n!=s&&i(a,n)&&l.push(n);for(;t.length>u;)i(a,n=t[u++])&&(~r(l,n)||l.push(n));return l}},function(e,t,n){var i=n(104);e.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(e){return\"String\"==i(e)?e.split(\"\"):Object(e)}},function(e,t,n){var i=n(103),o=n(378),r=n(379);e.exports=function(e){return function(t,n,s){var a,u=i(t),l=o(u.length),c=r(s,l);if(e&&n!=n){for(;l>c;)if((a=u[c++])!=a)return!0}else for(;l>c;c++)if((e||c in u)&&u[c]===n)return e||c||0;return!e&&-1}}},function(e,t,n){var i=n(105),o=Math.min;e.exports=function(e){return e>0?o(i(e),9007199254740991):0}},function(e,t,n){var i=n(105),o=Math.max,r=Math.min;e.exports=function(e,t){return e=i(e),e<0?o(e+t,0):r(e,t)}},function(e,t,n){var i=n(36).document;e.exports=i&&i.documentElement},function(e,t,n){function i(e,t){return o(e)||r(e,t)||s()}var o=n(382),r=n(387),s=n(402);e.exports=i},function(e,t,n){function i(e){if(o(e))return e}var o=n(383);e.exports=i},function(e,t,n){e.exports=n(384)},function(e,t,n){n(385),e.exports=n(37).Array.isArray},function(e,t,n){var i=n(56);i(i.S,\"Array\",{isArray:n(386)})},function(e,t,n){var i=n(104);e.exports=Array.isArray||function(e){return\"Array\"==i(e)}},function(e,t,n){function i(e,t){var n=[],i=!0,r=!1,s=void 0;try{for(var a,u=o(e);!(i=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);i=!0);}catch(e){r=!0,s=e}finally{try{i||null==u.return||u.return()}finally{if(r)throw s}}return n}var o=n(107);e.exports=i},function(e,t,n){n(389),n(397),e.exports=n(399)},function(e,t,n){n(390);for(var i=n(36),o=n(57),r=n(80),s=n(42)(\"toStringTag\"),a=\"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList\".split(\",\"),u=0;u<a.length;u++){var l=a[u],c=i[l],p=c&&c.prototype;p&&!p[s]&&o(p,s,l),r[l]=r.Array}},function(e,t,n){\"use strict\";var i=n(391),o=n(392),r=n(80),s=n(103);e.exports=n(161)(Array,\"Array\",function(e,t){this._t=s(e),this._i=0,this._k=t},function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,o(1)):\"keys\"==t?o(0,n):\"values\"==t?o(0,e[n]):o(0,[n,e[n]])},\"values\"),r.Arguments=r.Array,i(\"keys\"),i(\"values\"),i(\"entries\")},function(e,t){e.exports=function(){}},function(e,t){e.exports=function(e,t){return{value:t,done:!!e}}},function(e,t,n){e.exports=n(57)},function(e,t,n){\"use strict\";var i=n(156),o=n(155),r=n(162),s={};n(57)(s,n(42)(\"iterator\"),function(){return this}),e.exports=function(e,t,n){e.prototype=i(s,{next:o(1,n)}),r(e,t+\" Iterator\")}},function(e,t,n){var i=n(78),o=n(396),r=n(106)(\"IE_PROTO\"),s=Object.prototype;e.exports=Object.getPrototypeOf||function(e){return e=o(e),i(e,r)?e[r]:\"function\"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?s:null}},function(e,t,n){var i=n(79);e.exports=function(e){return Object(i(e))}},function(e,t,n){\"use strict\";var i=n(398)(!0);n(161)(String,\"String\",function(e){this._t=String(e),this._i=0},function(){var e,t=this._t,n=this._i;return n>=t.length?{value:void 0,done:!0}:(e=i(t,n),this._i+=e.length,{value:e,done:!1})})},function(e,t,n){var i=n(105),o=n(79);e.exports=function(e){return function(t,n){var r,s,a=String(o(t)),u=i(n),l=a.length;return u<0||u>=l?e?\"\":void 0:(r=a.charCodeAt(u),r<55296||r>56319||u+1===l||(s=a.charCodeAt(u+1))<56320||s>57343?e?a.charAt(u):r:e?a.slice(u,u+2):s-56320+(r-55296<<10)+65536)}}},function(e,t,n){var i=n(76),o=n(400);e.exports=n(37).getIterator=function(e){var t=o(e);if(\"function\"!=typeof t)throw TypeError(e+\" is not iterable!\");return i(t.call(e))}},function(e,t,n){var i=n(401),o=n(42)(\"iterator\"),r=n(80);e.exports=n(37).getIteratorMethod=function(e){if(void 0!=e)return e[o]||e[\"@@iterator\"]||r[i(e)]}},function(e,t,n){var i=n(104),o=n(42)(\"toStringTag\"),r=\"Arguments\"==i(function(){return arguments}()),s=function(e,t){try{return e[t]}catch(e){}};e.exports=function(e){var t,n,a;return void 0===e?\"Undefined\":null===e?\"Null\":\"string\"==typeof(n=s(t=Object(e),o))?n:r?i(t):\"Object\"==(a=i(t))&&\"function\"==typeof t.callee?\"Arguments\":a}},function(e,t){function n(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}e.exports=n},function(e,t,n){e.exports=n(404)},function(e,t,n){n(405),e.exports=n(37).parseInt},function(e,t,n){var i=n(56),o=n(406);i(i.G+i.F*(parseInt!=o),{parseInt:o})},function(e,t,n){var i=n(36).parseInt,o=n(407).trim,r=n(163),s=/^[-+]?0[xX]/;e.exports=8!==i(r+\"08\")||22!==i(r+\"0x16\")?function(e,t){var n=o(String(e),3);return i(n,t>>>0||(s.test(n)?16:10))}:i},function(e,t,n){var i=n(56),o=n(79),r=n(102),s=n(163),a=\"[\"+s+\"]\",u=\"​…\",l=RegExp(\"^\"+a+a+\"*\"),c=RegExp(a+a+\"*$\"),p=function(e,t,n){var o={},a=r(function(){return!!s[e]()||u[e]()!=u}),l=o[e]=a?t(h):s[e];n&&(o[n]=l),i(i.P+i.F*a,\"String\",o)},h=p.trim=function(e,t){return e=String(o(e)),1&t&&(e=e.replace(l,\"\")),2&t&&(e=e.replace(c,\"\")),e};e.exports=p},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;/*!\r\n * XRegExp.build 4.2.4\r\n * <xregexp.com>\r\n * Steven Levithan (c) 2012-present MIT License\r\n */\r\nvar i=function(e){function t(e){var t=/^(?:\\(\\?:\\))*\\^/,n=/\\$(?:\\(\\?:\\))*$/;return t.test(e)&&n.test(e)&&n.test(e.replace(/\\\\[\\s\\S]/g,\"\"))?e.replace(t,\"\").replace(n,\"\"):e}function n(t,n){var i=n?\"x\":\"\";return e.isRegExp(t)?t[s]&&t[s].captureNames?t:e(t.source,i):e(t,i)}function i(t){return t instanceof RegExp?t:e.escape(t)}function o(e,t,n){return e[\"subpattern\".concat(n)]=t,e}function r(e,t,n){return e+(t<n.length-1?\"{{subpattern\".concat(t,\"}}\"):\"\")}var s=\"xregexp\",a=/(\\()(?!\\?)|\\\\([1-9]\\d*)|\\\\[\\s\\S]|\\[(?:[^\\\\\\]]|\\\\[\\s\\S])*\\]/g,u=e.union([/\\({{([\\w$]+)}}\\)|{{([\\w$]+)}}/,a],\"g\",{conjunction:\"or\"});e.tag=function(t){return function(n){for(var s=arguments.length,a=new Array(s>1?s-1:0),u=1;u<s;u++)a[u-1]=arguments[u];var l=a.map(i).reduce(o,{}),c=n.raw.map(r).join(\"\");return e.build(c,l,t)}},e.build=function(i,o,r){r=r||\"\";var l=-1!==r.indexOf(\"x\"),c=/^\\(\\?([\\w$]+)\\)/.exec(i);c&&(r=e._clipDuplicates(r+c[1]));var p={};for(var h in o)if(o.hasOwnProperty(h)){var d=n(o[h],l);p[h]={pattern:t(d.source),names:d[s].captureNames||[]}}var f,m=n(i,l),y=0,g=0,v=[0],b=m[s].captureNames||[],C=m.source.replace(u,function(e,t,n,i,o){var r,s,u,l=t||n;if(l){if(!p.hasOwnProperty(l))throw new ReferenceError(\"Undefined property \".concat(e));t?(r=b[g],v[++g]=++y,s=\"(?<\".concat(r||l,\">\")):s=\"(?:\",f=y;var c=p[l].pattern.replace(a,function(e,t,n){if(t){if(r=p[l].names[y-f],++y,r)return\"(?<\".concat(r,\">\")}else if(n)return u=+n-1,p[l].names[u]?\"\\\\k<\".concat(p[l].names[u],\">\"):\"\\\\\".concat(+n+f);return e});return\"\".concat(s).concat(c,\")\")}if(i){if(r=b[g],v[++g]=++y,r)return\"(?<\".concat(r,\">\")}else if(o)return u=+o-1,b[u]?\"\\\\k<\".concat(b[u],\">\"):\"\\\\\".concat(v[+o]);return e});return e(C,r)}};t.default=i,e.exports=t.default},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;/*!\r\n * XRegExp.matchRecursive 4.2.4\r\n * <xregexp.com>\r\n * Steven Levithan (c) 2009-present MIT License\r\n */\r\nvar i=function(e){function t(e,t,n,i){return{name:e,value:t,start:n,end:i}}e.matchRecursive=function(n,i,o,r,s){r=r||\"\",s=s||{};var a,u,l,c,p,h=-1!==r.indexOf(\"g\"),d=-1!==r.indexOf(\"y\"),f=r.replace(/y/g,\"\"),m=s,y=m.escapeChar,g=s.valueNames,v=[],b=0,C=0,S=0,w=0;if(i=e(i,f),o=e(o,f),y){if(y.length>1)throw new Error(\"Cannot use more than one escape character\");y=e.escape(y),p=new RegExp(\"(?:\".concat(y,\"[\\\\S\\\\s]|(?:(?!\").concat(e.union([i,o],\"\",{conjunction:\"or\"}).source,\")[^\").concat(y,\"])+)+\"),r.replace(/[^imu]+/g,\"\"))}for(;;){if(y&&(S+=(e.exec(n,p,S,\"sticky\")||[\"\"])[0].length),l=e.exec(n,i,S),c=e.exec(n,o,S),l&&c&&(l.index<=c.index?c=null:l=null),l||c)C=(l||c).index,S=C+(l||c)[0].length;else if(!b)break;if(d&&!b&&C>w)break;if(l)b||(a=C,u=S),++b;else{if(!c||!b)throw new Error(\"Unbalanced delimiter found in string\");if(!--b&&(g?(g[0]&&a>w&&v.push(t(g[0],n.slice(w,a),w,a)),g[1]&&v.push(t(g[1],n.slice(a,u),a,u)),g[2]&&v.push(t(g[2],n.slice(u,C),u,C)),g[3]&&v.push(t(g[3],n.slice(C,S),C,S))):v.push(n.slice(u,C)),w=S,!h))break}C===S&&++S}return h&&!d&&g&&g[0]&&n.length>w&&v.push(t(g[0],n.slice(w),w,n.length)),v}};t.default=i,e.exports=t.default},function(e,t,n){\"use strict\";var i=n(35);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var o=i(n(107)),r=function(e){function t(e){return e.replace(/[- _]+/g,\"\").toLowerCase()}function n(e){var t=/^\\\\[xu](.+)/.exec(e);return t?l(t[1]):e.charCodeAt(\"\\\\\"===e[0]?1:0)}function i(t){var i=\"\",o=-1;return e.forEach(t,/(\\\\x..|\\\\u....|\\\\?[\\s\\S])(?:-(\\\\x..|\\\\u....|\\\\?[\\s\\S]))?/,function(e){var t=n(e[1]);t>o+1&&(i+=\"\\\\u\".concat(p(c(o+1))),t>o+2&&(i+=\"-\\\\u\".concat(p(c(t-1))))),o=n(e[2]||e[1])}),o<65535&&(i+=\"\\\\u\".concat(p(c(o+1))),o<65534&&(i+=\"-\\\\uFFFF\")),i}function r(e){return u[e][\"b!\"]||(u[e][\"b!\"]=i(u[e].bmp))}function s(e,t){var n=u[e],i=\"\";return n.bmp&&!n.isBmpLast&&(i=\"[\".concat(n.bmp,\"]\").concat(n.astral?\"|\":\"\")),n.astral&&(i+=n.astral),n.isBmpLast&&n.bmp&&(i+=\"\".concat(n.astral?\"|\":\"\",\"[\").concat(n.bmp,\"]\")),t?\"(?:(?!\".concat(i,\")(?:[�-�][�-�]|[\\0-￿]))\"):\"(?:\".concat(i,\")\")}function a(e,t){var n=t?\"a!\":\"a=\";return u[e][n]||(u[e][n]=s(e,t))}var u={},l=e._dec,c=e._hex,p=e._pad4;e.addToken(/\\\\([pP])(?:{(\\^?)([^}]*)}|([A-Za-z]))/,function(e,n,i){var o=\"P\"===e[1]||!!e[2],s=-1!==i.indexOf(\"A\"),l=t(e[4]||e[3]),c=u[l];if(\"P\"===e[1]&&e[2])throw new SyntaxError(\"Invalid double negation \"+e[0]);if(!u.hasOwnProperty(l))throw new SyntaxError(\"Unknown Unicode token \"+e[0]);if(c.inverseOf){if(l=t(c.inverseOf),!u.hasOwnProperty(l))throw new ReferenceError(\"\".concat(\"Unicode token missing data \"+e[0],\" -> \").concat(c.inverseOf));c=u[l],o=!o}if(!c.bmp&&!s)throw new SyntaxError(\"Astral mode required for Unicode token \"+e[0]);if(s){if(\"class\"===n)throw new SyntaxError(\"Astral mode does not support Unicode tokens within character classes\");return a(l,o)}return\"class\"===n?o?r(l):c.bmp:\"\".concat((o?\"[^\":\"[\")+c.bmp,\"]\")},{scope:\"all\",optionalFlags:\"A\",leadChar:\"\\\\\"}),e.addUnicodeData=function(n){var i=!0,r=!1,s=void 0;try{for(var a,l=(0,o.default)(n);!(i=(a=l.next()).done);i=!0){var c=a.value;if(!c.name)throw new Error(\"Unicode token requires name\");if(!(c.inverseOf||c.bmp||c.astral))throw new Error(\"Unicode token has no character data \"+c.name);u[t(c.name)]=c,c.alias&&(u[t(c.alias)]=c)}}catch(e){r=!0,s=e}finally{try{i||null==l.return||l.return()}finally{if(r)throw s}}e.cache.flush(\"patterns\")},e._getUnicodeProperty=function(e){var n=t(e);return u[n]}};t.default=r,e.exports=t.default},function(e,t,n){\"use strict\";var i=n(35);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var o=i(n(412)),r=function(e){if(!e.addUnicodeData)throw new ReferenceError(\"Unicode Base must be loaded before Unicode Blocks\");e.addUnicodeData(o.default)};t.default=r,e.exports=t.default},function(e,t){e.exports=[{name:\"InAdlam\",astral:\"�[�-�]\"},{name:\"InAegean_Numbers\",astral:\"�[�-�]\"},{name:\"InAhom\",astral:\"�[�-�]\"},{name:\"InAlchemical_Symbols\",astral:\"�[�-�]\"},{name:\"InAlphabetic_Presentation_Forms\",bmp:\"ff-ﭏ\"},{name:\"InAnatolian_Hieroglyphs\",astral:\"�[�-�]\"},{name:\"InAncient_Greek_Musical_Notation\",astral:\"�[�-�]\"},{name:\"InAncient_Greek_Numbers\",astral:\"�[�-�]\"},{name:\"InAncient_Symbols\",astral:\"�[�-�]\"},{name:\"InArabic\",bmp:\"؀-ۿ\"},{name:\"InArabic_Extended_A\",bmp:\"ࢠ-ࣿ\"},{name:\"InArabic_Mathematical_Alphabetic_Symbols\",astral:\"�[�-�]\"},{name:\"InArabic_Presentation_Forms_A\",bmp:\"ﭐ-﷿\"},{name:\"InArabic_Presentation_Forms_B\",bmp:\"ﹰ-\\ufeff\"},{name:\"InArabic_Supplement\",bmp:\"ݐ-ݿ\"},{name:\"InArmenian\",bmp:\"԰-֏\"},{name:\"InArrows\",bmp:\"←-⇿\"},{name:\"InAvestan\",astral:\"�[�-�]\"},{name:\"InBalinese\",bmp:\"ᬀ-᭿\"},{name:\"InBamum\",bmp:\"ꚠ-꛿\"},{name:\"InBamum_Supplement\",astral:\"�[�-�]\"},{name:\"InBasic_Latin\",bmp:\"\\0-\"},{name:\"InBassa_Vah\",astral:\"�[�-�]\"},{name:\"InBatak\",bmp:\"ᯀ-᯿\"},{name:\"InBengali\",bmp:\"ঀ-৿\"},{name:\"InBhaiksuki\",astral:\"�[�-�]\"},{name:\"InBlock_Elements\",bmp:\"▀-▟\"},{name:\"InBopomofo\",bmp:\"㄀-ㄯ\"},{name:\"InBopomofo_Extended\",bmp:\"ㆠ-ㆿ\"},{name:\"InBox_Drawing\",bmp:\"─-╿\"},{name:\"InBrahmi\",astral:\"�[�-�]\"},{name:\"InBraille_Patterns\",bmp:\"⠀-⣿\"},{name:\"InBuginese\",bmp:\"ᨀ-᨟\"},{name:\"InBuhid\",bmp:\"ᝀ-᝟\"},{name:\"InByzantine_Musical_Symbols\",astral:\"�[�-�]\"},{name:\"InCJK_Compatibility\",bmp:\"㌀-㏿\"},{name:\"InCJK_Compatibility_Forms\",bmp:\"︰-﹏\"},{name:\"InCJK_Compatibility_Ideographs\",bmp:\"豈-﫿\"},{name:\"InCJK_Compatibility_Ideographs_Supplement\",astral:\"�[�-�]\"},{name:\"InCJK_Radicals_Supplement\",bmp:\"⺀-⻿\"},{name:\"InCJK_Strokes\",bmp:\"㇀-㇯\"},{name:\"InCJK_Symbols_And_Punctuation\",bmp:\" -〿\"},{name:\"InCJK_Unified_Ideographs\",bmp:\"一-鿿\"},{name:\"InCJK_Unified_Ideographs_Extension_A\",bmp:\"㐀-䶿\"},{name:\"InCJK_Unified_Ideographs_Extension_B\",astral:\"[�-�][�-�]|�[�-�]\"},{name:\"InCJK_Unified_Ideographs_Extension_C\",astral:\"�[�-�]|[�-�][�-�]|�[�-�]\"},{name:\"InCJK_Unified_Ideographs_Extension_D\",astral:\"�[�-�]|�[�-�]\"},{name:\"InCJK_Unified_Ideographs_Extension_E\",astral:\"�[�-�]|[�-�][�-�]|�[�-�]\"},{name:\"InCJK_Unified_Ideographs_Extension_F\",astral:\"�[�-�]|[�-�][�-�]|�[�-�]\"},{name:\"InCarian\",astral:\"�[�-�]\"},{name:\"InCaucasian_Albanian\",astral:\"�[�-�]\"},{name:\"InChakma\",astral:\"�[�-�]\"},{name:\"InCham\",bmp:\"ꨀ-꩟\"},{name:\"InCherokee\",bmp:\"Ꭰ-᏿\"},{name:\"InCherokee_Supplement\",bmp:\"ꭰ-ꮿ\"},{name:\"InChess_Symbols\",astral:\"�[�-�]\"},{name:\"InCombining_Diacritical_Marks\",bmp:\"̀-ͯ\"},{name:\"InCombining_Diacritical_Marks_Extended\",bmp:\"᪰-᫿\"},{name:\"InCombining_Diacritical_Marks_For_Symbols\",bmp:\"⃐-⃿\"},{name:\"InCombining_Diacritical_Marks_Supplement\",bmp:\"᷀-᷿\"},{name:\"InCombining_Half_Marks\",bmp:\"︠-︯\"},{name:\"InCommon_Indic_Number_Forms\",bmp:\"꠰-꠿\"},{name:\"InControl_Pictures\",bmp:\"␀-␿\"},{name:\"InCoptic\",bmp:\"Ⲁ-⳿\"},{name:\"InCoptic_Epact_Numbers\",astral:\"�[�-�]\"},{name:\"InCounting_Rod_Numerals\",astral:\"�[�-�]\"},{name:\"InCuneiform\",astral:\"�[�-�]\"},{name:\"InCuneiform_Numbers_And_Punctuation\",astral:\"�[�-�]\"},{name:\"InCurrency_Symbols\",bmp:\"₠-⃏\"},{name:\"InCypriot_Syllabary\",astral:\"�[�-�]\"},{name:\"InCyrillic\",bmp:\"Ѐ-ӿ\"},{name:\"InCyrillic_Extended_A\",bmp:\"ⷠ-ⷿ\"},{name:\"InCyrillic_Extended_B\",bmp:\"Ꙁ-ꚟ\"},{name:\"InCyrillic_Extended_C\",bmp:\"ᲀ-᲏\"},{name:\"InCyrillic_Supplement\",bmp:\"Ԁ-ԯ\"},{name:\"InDeseret\",astral:\"�[�-�]\"},{name:\"InDevanagari\",bmp:\"ऀ-ॿ\"},{name:\"InDevanagari_Extended\",bmp:\"꣠-ꣿ\"},{name:\"InDingbats\",bmp:\"✀-➿\"},{name:\"InDogra\",astral:\"�[�-�]\"},{name:\"InDomino_Tiles\",astral:\"�[�-�]\"},{name:\"InDuployan\",astral:\"�[�-�]\"},{name:\"InEarly_Dynastic_Cuneiform\",astral:\"�[�-�]\"},{name:\"InEgyptian_Hieroglyphs\",astral:\"�[�-�]|�[�-�]\"},{name:\"InElbasan\",astral:\"�[�-�]\"},{name:\"InEmoticons\",astral:\"�[�-�]\"},{name:\"InEnclosed_Alphanumeric_Supplement\",astral:\"�[�-�]\"},{name:\"InEnclosed_Alphanumerics\",bmp:\"①-⓿\"},{name:\"InEnclosed_CJK_Letters_And_Months\",bmp:\"㈀-㋿\"},{name:\"InEnclosed_Ideographic_Supplement\",astral:\"�[�-�]\"},{name:\"InEthiopic\",bmp:\"ሀ-፿\"},{name:\"InEthiopic_Extended\",bmp:\"ⶀ-⷟\"},{name:\"InEthiopic_Extended_A\",bmp:\"꬀-꬯\"},{name:\"InEthiopic_Supplement\",bmp:\"ᎀ-᎟\"},{name:\"InGeneral_Punctuation\",bmp:\" -\"},{name:\"InGeometric_Shapes\",bmp:\"■-◿\"},{name:\"InGeometric_Shapes_Extended\",astral:\"�[�-�]\"},{name:\"InGeorgian\",bmp:\"Ⴀ-ჿ\"},{name:\"InGeorgian_Extended\",bmp:\"Ა-Ჿ\"},{name:\"InGeorgian_Supplement\",bmp:\"ⴀ-⴯\"},{name:\"InGlagolitic\",bmp:\"Ⰰ-ⱟ\"},{name:\"InGlagolitic_Supplement\",astral:\"�[�-�]\"},{name:\"InGothic\",astral:\"�[�-�]\"},{name:\"InGrantha\",astral:\"�[�-�]\"},{name:\"InGreek_And_Coptic\",bmp:\"Ͱ-Ͽ\"},{name:\"InGreek_Extended\",bmp:\"ἀ-῿\"},{name:\"InGujarati\",bmp:\"઀-૿\"},{name:\"InGunjala_Gondi\",astral:\"�[�-�]\"},{name:\"InGurmukhi\",bmp:\"਀-੿\"},{name:\"InHalfwidth_And_Fullwidth_Forms\",bmp:\"＀-￯\"},{name:\"InHangul_Compatibility_Jamo\",bmp:\"㄰-㆏\"},{name:\"InHangul_Jamo\",bmp:\"ᄀ-ᇿ\"},{name:\"InHangul_Jamo_Extended_A\",bmp:\"ꥠ-꥿\"},{name:\"InHangul_Jamo_Extended_B\",bmp:\"ힰ-퟿\"},{name:\"InHangul_Syllables\",bmp:\"가-힯\"},{name:\"InHanifi_Rohingya\",astral:\"�[�-�]\"},{name:\"InHanunoo\",bmp:\"ᜠ-᜿\"},{name:\"InHatran\",astral:\"�[�-�]\"},{name:\"InHebrew\",bmp:\"֐-׿\"},{name:\"InHigh_Private_Use_Surrogates\",bmp:\"�-�\"},{name:\"InHigh_Surrogates\",bmp:\"�-�\"},{name:\"InHiragana\",bmp:\"぀-ゟ\"},{name:\"InIPA_Extensions\",bmp:\"ɐ-ʯ\"},{name:\"InIdeographic_Description_Characters\",bmp:\"⿰-⿿\"},{name:\"InIdeographic_Symbols_And_Punctuation\",astral:\"�[�-�]\"},{name:\"InImperial_Aramaic\",astral:\"�[�-�]\"},{name:\"InIndic_Siyaq_Numbers\",astral:\"�[�-�]\"},{name:\"InInscriptional_Pahlavi\",astral:\"�[�-�]\"},{name:\"InInscriptional_Parthian\",astral:\"�[�-�]\"},{name:\"InJavanese\",bmp:\"ꦀ-꧟\"},{name:\"InKaithi\",astral:\"�[�-�]\"},{name:\"InKana_Extended_A\",astral:\"�[�-�]\"},{name:\"InKana_Supplement\",astral:\"�[�-�]\"},{name:\"InKanbun\",bmp:\"㆐-㆟\"},{name:\"InKangxi_Radicals\",bmp:\"⼀-⿟\"},{name:\"InKannada\",bmp:\"ಀ-೿\"},{name:\"InKatakana\",bmp:\"゠-ヿ\"},{name:\"InKatakana_Phonetic_Extensions\",bmp:\"ㇰ-ㇿ\"},{name:\"InKayah_Li\",bmp:\"꤀-꤯\"},{name:\"InKharoshthi\",astral:\"�[�-�]\"},{name:\"InKhmer\",bmp:\"ក-៿\"},{name:\"InKhmer_Symbols\",bmp:\"᧠-᧿\"},{name:\"InKhojki\",astral:\"�[�-�]\"},{name:\"InKhudawadi\",astral:\"�[�-�]\"},{name:\"InLao\",bmp:\"຀-໿\"},{name:\"InLatin_1_Supplement\",bmp:\"€-ÿ\"},{name:\"InLatin_Extended_A\",bmp:\"Ā-ſ\"},{name:\"InLatin_Extended_Additional\",bmp:\"Ḁ-ỿ\"},{name:\"InLatin_Extended_B\",bmp:\"ƀ-ɏ\"},{name:\"InLatin_Extended_C\",bmp:\"Ⱡ-Ɀ\"},{name:\"InLatin_Extended_D\",bmp:\"꜠-ꟿ\"},{name:\"InLatin_Extended_E\",bmp:\"ꬰ-꭯\"},{name:\"InLepcha\",bmp:\"ᰀ-ᱏ\"},{name:\"InLetterlike_Symbols\",bmp:\"℀-⅏\"},{name:\"InLimbu\",bmp:\"ᤀ-᥏\"},{name:\"InLinear_A\",astral:\"�[�-�]\"},{name:\"InLinear_B_Ideograms\",astral:\"�[�-�]\"},{name:\"InLinear_B_Syllabary\",astral:\"�[�-�]\"},{name:\"InLisu\",bmp:\"ꓐ-꓿\"},{name:\"InLow_Surrogates\",bmp:\"�-�\"},{name:\"InLycian\",astral:\"�[�-�]\"},{name:\"InLydian\",astral:\"�[�-�]\"},{name:\"InMahajani\",astral:\"�[�-�]\"},{name:\"InMahjong_Tiles\",astral:\"�[�-�]\"},{name:\"InMakasar\",astral:\"�[�-�]\"},{name:\"InMalayalam\",bmp:\"ഀ-ൿ\"},{name:\"InMandaic\",bmp:\"ࡀ-࡟\"},{name:\"InManichaean\",astral:\"�[�-�]\"},{name:\"InMarchen\",astral:\"�[�-�]\"},{name:\"InMasaram_Gondi\",astral:\"�[�-�]\"},{name:\"InMathematical_Alphanumeric_Symbols\",astral:\"�[�-�]\"},{name:\"InMathematical_Operators\",bmp:\"∀-⋿\"},{name:\"InMayan_Numerals\",astral:\"�[�-�]\"},{name:\"InMedefaidrin\",astral:\"�[�-�]\"},{name:\"InMeetei_Mayek\",bmp:\"ꯀ-꯿\"},{name:\"InMeetei_Mayek_Extensions\",bmp:\"ꫠ-꫿\"},{name:\"InMende_Kikakui\",astral:\"�[�-�]\"},{name:\"InMeroitic_Cursive\",astral:\"�[�-�]\"},{name:\"InMeroitic_Hieroglyphs\",astral:\"�[�-�]\"},{name:\"InMiao\",astral:\"�[�-�]\"},{name:\"InMiscellaneous_Mathematical_Symbols_A\",bmp:\"⟀-⟯\"},{name:\"InMiscellaneous_Mathematical_Symbols_B\",bmp:\"⦀-⧿\"},{name:\"InMiscellaneous_Symbols\",bmp:\"☀-⛿\"},{name:\"InMiscellaneous_Symbols_And_Arrows\",bmp:\"⬀-⯿\"},{name:\"InMiscellaneous_Symbols_And_Pictographs\",astral:\"�[�-�]|�[�-�]\"},{name:\"InMiscellaneous_Technical\",bmp:\"⌀-⏿\"},{name:\"InModi\",astral:\"�[�-�]\"},{name:\"InModifier_Tone_Letters\",bmp:\"꜀-ꜟ\"},{name:\"InMongolian\",bmp:\"᠀-᢯\"},{name:\"InMongolian_Supplement\",astral:\"�[�-�]\"},{name:\"InMro\",astral:\"�[�-�]\"},{name:\"InMultani\",astral:\"�[�-�]\"},{name:\"InMusical_Symbols\",astral:\"�[�-�]\"},{name:\"InMyanmar\",bmp:\"က-႟\"},{name:\"InMyanmar_Extended_A\",bmp:\"ꩠ-ꩿ\"},{name:\"InMyanmar_Extended_B\",bmp:\"ꧠ-꧿\"},{name:\"InNKo\",bmp:\"߀-߿\"},{name:\"InNabataean\",astral:\"�[�-�]\"},{name:\"InNew_Tai_Lue\",bmp:\"ᦀ-᧟\"},{name:\"InNewa\",astral:\"�[�-�]\"},{name:\"InNumber_Forms\",bmp:\"⅐-↏\"},{name:\"InNushu\",astral:\"�[�-�]\"},{name:\"InOgham\",bmp:\" -᚟\"},{name:\"InOl_Chiki\",bmp:\"᱐-᱿\"},{name:\"InOld_Hungarian\",astral:\"�[�-�]\"},{name:\"InOld_Italic\",astral:\"�[�-�]\"},{name:\"InOld_North_Arabian\",astral:\"�[�-�]\"},{name:\"InOld_Permic\",astral:\"�[�-�]\"},{name:\"InOld_Persian\",astral:\"�[�-�]\"},{name:\"InOld_Sogdian\",astral:\"�[�-�]\"},{name:\"InOld_South_Arabian\",astral:\"�[�-�]\"},{name:\"InOld_Turkic\",astral:\"�[�-�]\"},{name:\"InOptical_Character_Recognition\",bmp:\"⑀-⑟\"},{name:\"InOriya\",bmp:\"଀-୿\"},{name:\"InOrnamental_Dingbats\",astral:\"�[�-�]\"},{name:\"InOsage\",astral:\"�[�-�]\"},{name:\"InOsmanya\",astral:\"�[�-�]\"},{name:\"InPahawh_Hmong\",astral:\"�[�-�]\"},{name:\"InPalmyrene\",astral:\"�[�-�]\"},{name:\"InPau_Cin_Hau\",astral:\"�[�-�]\"},{name:\"InPhags_Pa\",bmp:\"ꡀ-꡿\"},{name:\"InPhaistos_Disc\",astral:\"�[�-�]\"},{name:\"InPhoenician\",astral:\"�[�-�]\"},{name:\"InPhonetic_Extensions\",bmp:\"ᴀ-ᵿ\"},{name:\"InPhonetic_Extensions_Supplement\",bmp:\"ᶀ-ᶿ\"},{name:\"InPlaying_Cards\",astral:\"�[�-�]\"},{name:\"InPrivate_Use_Area\",bmp:\"-\"},{name:\"InPsalter_Pahlavi\",astral:\"�[�-�]\"},{name:\"InRejang\",bmp:\"ꤰ-꥟\"},{name:\"InRumi_Numeral_Symbols\",astral:\"�[�-�]\"},{name:\"InRunic\",bmp:\"ᚠ-᛿\"},{name:\"InSamaritan\",bmp:\"ࠀ-࠿\"},{name:\"InSaurashtra\",bmp:\"ꢀ-꣟\"},{name:\"InSharada\",astral:\"�[�-�]\"},{name:\"InShavian\",astral:\"�[�-�]\"},{name:\"InShorthand_Format_Controls\",astral:\"�[�-�]\"},{name:\"InSiddham\",astral:\"�[�-�]\"},{name:\"InSinhala\",bmp:\"඀-෿\"},{name:\"InSinhala_Archaic_Numbers\",astral:\"�[�-�]\"},{name:\"InSmall_Form_Variants\",bmp:\"﹐-﹯\"},{name:\"InSogdian\",astral:\"�[�-�]\"},{name:\"InSora_Sompeng\",astral:\"�[�-�]\"},{name:\"InSoyombo\",astral:\"�[�-�]\"},{name:\"InSpacing_Modifier_Letters\",bmp:\"ʰ-˿\"},{name:\"InSpecials\",bmp:\"￰-￿\"},{name:\"InSundanese\",bmp:\"ᮀ-ᮿ\"},{name:\"InSundanese_Supplement\",bmp:\"᳀-᳏\"},{name:\"InSuperscripts_And_Subscripts\",bmp:\"⁰-₟\"},{name:\"InSupplemental_Arrows_A\",bmp:\"⟰-⟿\"},{name:\"InSupplemental_Arrows_B\",bmp:\"⤀-⥿\"},{name:\"InSupplemental_Arrows_C\",astral:\"�[�-�]\"},{name:\"InSupplemental_Mathematical_Operators\",bmp:\"⨀-⫿\"},{name:\"InSupplemental_Punctuation\",bmp:\"⸀-⹿\"},{name:\"InSupplemental_Symbols_And_Pictographs\",astral:\"�[�-�]\"},{name:\"InSupplementary_Private_Use_Area_A\",astral:\"[�-�][�-�]\"},{name:\"InSupplementary_Private_Use_Area_B\",astral:\"[�-�][�-�]\"},{name:\"InSutton_SignWriting\",astral:\"�[�-�]\"},{name:\"InSyloti_Nagri\",bmp:\"ꠀ-꠯\"},{name:\"InSyriac\",bmp:\"܀-ݏ\"},{name:\"InSyriac_Supplement\",bmp:\"ࡠ-࡯\"},{name:\"InTagalog\",bmp:\"ᜀ-ᜟ\"},{name:\"InTagbanwa\",bmp:\"ᝠ-᝿\"},{name:\"InTags\",astral:\"�[�-�]\"},{name:\"InTai_Le\",bmp:\"ᥐ-᥿\"},{name:\"InTai_Tham\",bmp:\"ᨠ-᪯\"},{name:\"InTai_Viet\",bmp:\"ꪀ-꫟\"},{name:\"InTai_Xuan_Jing_Symbols\",astral:\"�[�-�]\"},{name:\"InTakri\",astral:\"�[�-�]\"},{name:\"InTamil\",bmp:\"஀-௿\"},{name:\"InTangut\",astral:\"[�-�][�-�]\"},{name:\"InTangut_Components\",astral:\"�[�-�]\"},{name:\"InTelugu\",bmp:\"ఀ-౿\"},{name:\"InThaana\",bmp:\"ހ-޿\"},{name:\"InThai\",bmp:\"฀-๿\"},{name:\"InTibetan\",bmp:\"ༀ-࿿\"},{name:\"InTifinagh\",bmp:\"ⴰ-⵿\"},{name:\"InTirhuta\",astral:\"�[�-�]\"},{name:\"InTransport_And_Map_Symbols\",astral:\"�[�-�]\"},{name:\"InUgaritic\",astral:\"�[�-�]\"},{name:\"InUnified_Canadian_Aboriginal_Syllabics\",bmp:\"᐀-ᙿ\"},{name:\"InUnified_Canadian_Aboriginal_Syllabics_Extended\",bmp:\"ᢰ-᣿\"},{name:\"InVai\",bmp:\"ꔀ-꘿\"},{name:\"InVariation_Selectors\",bmp:\"︀-️\"},{name:\"InVariation_Selectors_Supplement\",astral:\"�[�-�]\"},{name:\"InVedic_Extensions\",bmp:\"᳐-᳿\"},{name:\"InVertical_Forms\",bmp:\"︐-︟\"},{name:\"InWarang_Citi\",astral:\"�[�-�]\"},{name:\"InYi_Radicals\",bmp:\"꒐-꓏\"},{name:\"InYi_Syllables\",bmp:\"ꀀ-꒏\"},{name:\"InYijing_Hexagram_Symbols\",bmp:\"䷀-䷿\"},{name:\"InZanabazar_Square\",astral:\"�[�-�]\"}]},function(e,t,n){\"use strict\";var i=n(35);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var o=i(n(414)),r=function(e){if(!e.addUnicodeData)throw new ReferenceError(\"Unicode Base must be loaded before Unicode Categories\");e.addUnicodeData(o.default)};t.default=r,e.exports=t.default},function(e,t){e.exports=[{name:\"C\",alias:\"Other\",isBmpLast:!0,bmp:\"\\0-\u001f-Ÿ­͸͹΀-΃΋΍΢԰՗՘֋֌֐׈-׏׫-׮׵-؅؜؝۝܎܏݋݌޲-޿߻߼࠮࠯࠿࡜࡝࡟࡫-࢟ࢵࢾ-࣒࣢঄঍঎঑঒঩঱঳-঵঺঻৅৆৉৊৏-৖৘-৛৞৤৥৿਀਄਋-਎਑਒਩਱਴਷਺਻਽੃-੆੉੊੎-੐੒-੘੝੟-੥੷-઀઄઎઒઩઱઴઺઻૆૊૎૏૑-૟૤૥૲-૸଀଄଍଎଑଒଩଱଴଺଻୅୆୉୊୎-୕୘-୛୞୤୥୸-஁஄஋-஍஑஖-஘஛஝஠-஢஥-஧஫-஭஺-஽௃-௅௉௎௏௑-௖௘-௥௻-௿఍఑఩఺-఼౅౉౎-౔౗౛-౟౤౥౰-౷಍಑಩಴಺಻೅೉೎-೔೗-ೝ೟೤೥೰ೳ-೿ഄ഍഑൅൉൐-൓൤൥඀ඁ඄඗-඙඲඼඾඿෇-෉෋-෎෕෗෠-෥෰෱෵-฀฻-฾๜-຀຃຅ຆຉ຋ຌຎ-ຓຘຠ຤຦ຨຩຬ຺຾຿໅໇໎໏໚໛໠-໿཈཭-཰྘྽࿍࿛-࿿჆჈-჌჎჏቉቎቏቗቙቞቟኉኎኏኱኶኷኿዁዆዇዗጑጖጗፛፜፽-፿᎚-᎟᏶᏷᏾᏿᚝-᚟᛹-᛿ᜍ᜕-ᜟ᜷-᜿᝔-᝟᝭᝱᝴-᝿៞៟៪-៯៺-៿᠎᠏᠚-᠟᡹-᡿᢫-᢯᣶-᣿᤟᤬-᤯᤼-᤿᥁-᥃᥮᥯᥵-᥿᦬-᦯᧊-᧏᧛-᧝᨜᨝᩟᩽᩾᪊-᪏᪚-᪟᪮᪯ᪿ-᫿ᭌ-᭏᭽-᭿᯴-᯻᰸-᰺᱊-᱌Ᲊ-᲏᲻᲼᳈-᳏ᳺ-᳿᷺἖἗἞἟὆὇὎὏὘὚὜὞὾὿᾵῅῔῕῜῰῱῵῿​-‏‪-‮⁠-⁲⁳₏₝-₟⃀-⃏⃱-⃿↌-↏␧-␿⑋-⑟⭴⭵⮖⮗⯉⯿Ⱟⱟ⳴-⳸⴦⴨-⴬⴮⴯⵨-⵮⵱-⵾⶗-⶟⶧⶯⶷⶿⷇⷏⷗⷟⹏-⹿⺚⻴-⻿⿖-⿯⿼-⿿぀゗゘㄀-㄄㄰㆏ㆻ-ㆿ㇤-㇯㈟㋿䶶-䶿鿰-鿿꒍-꒏꓇-꓏꘬-꘿꛸-꛿Ꞻ-ꟶ꠬-꠯꠺-꠿꡸-꡿꣆-꣍꣚-꣟꥔-꥞꥽-꥿꧎꧚-꧝꧿꨷-꨿꩎꩏꩚꩛꫃-꫚꫷-꬀꬇꬈꬏꬐꬗-꬟꬧꬯ꭦ-꭯꯮꯯꯺-꯿힤-힯퟇-퟊퟼-﩮﩯﫚-﫿﬇-﬒﬘-﬜﬷﬽﬿﭂﭅﯂-﯒﵀-﵏﶐﶑﷈-﷯﷾﷿︚-︟﹓﹧﹬-﹯﹵﻽-＀﾿-￁￈￉￐￑￘￙￝-￟￧￯-￾￿\",astral:\"�[�������-��-��-��-���-��-��-��-��-��-��-��-��-���-��-�]|�[���-��-��-��-��-��-��-��-��-�]|�[�����-�����-��-���-��-��-��-��-�����-������-��-��-��-��-��-��-����-��-��-��-�]|�[�-��-��-��-��-��-��-��-�]|�[�-��-���-��-��-���-��-�����-���-������-��-��-�����������������-��-����-��-�]|�[���-��-��-����-��-��-��-��-��-����-��-�]|�[�-��-��-��-����-��-�]|�[���-��-�����-����-����-��-������-��-��-�]|�[�-�]|�[��-��-�]|[���-��-��-����-�����-��-��-�][�-�]|�[�-�]|�[�-�]|�[�-���-��-����-��-����-��-�]|�[�-��-��-��-��-��-�]|�[�-�]|�[�-�]|�[�-��-�]|�[�-��-��-����-�]|�[�-����-��-��-��-��-��-�]|�[���������������������-������]|�[�-���-�]|�[������-�]|�[���-��-��-��-�]|�[�-��-�����������-��-�����������������������-����-��-�]|�[�-��-������-��-��-��-��-��-��-��-��-�]|�[�-��-��-��-��-�]|�[�-��-��-��-��-��-�����-���-��-��-��-��-�]|�[�-�]|�[�-�]|�[��]|�[�-�]|�[�-�]|�[�-�]|�[�-��-�]\"},{name:\"Cc\",alias:\"Control\",bmp:\"\\0-\u001f-Ÿ\"},{name:\"Cf\",alias:\"Format\",bmp:\"­؀-؅؜۝܏࣢᠎​-‏‪-‮⁠-⁤⁦-\\ufeff-\",astral:\"�[��]|�[�-�]|�[�-�]|�[��-�]\"},{name:\"Cn\",alias:\"Unassigned\",bmp:\"͸͹΀-΃΋΍΢԰՗՘֋֌֐׈-׏׫-׮׵-׿؝܎݋݌޲-޿߻߼࠮࠯࠿࡜࡝࡟࡫-࢟ࢵࢾ-࣒঄঍঎঑঒঩঱঳-঵঺঻৅৆৉৊৏-৖৘-৛৞৤৥৿਀਄਋-਎਑਒਩਱਴਷਺਻਽੃-੆੉੊੎-੐੒-੘੝੟-੥੷-઀઄઎઒઩઱઴઺઻૆૊૎૏૑-૟૤૥૲-૸଀଄଍଎଑଒଩଱଴଺଻୅୆୉୊୎-୕୘-୛୞୤୥୸-஁஄஋-஍஑஖-஘஛஝஠-஢஥-஧஫-஭஺-஽௃-௅௉௎௏௑-௖௘-௥௻-௿఍఑఩఺-఼౅౉౎-౔౗౛-౟౤౥౰-౷಍಑಩಴಺಻೅೉೎-೔೗-ೝ೟೤೥೰ೳ-೿ഄ഍഑൅൉൐-൓൤൥඀ඁ඄඗-඙඲඼඾඿෇-෉෋-෎෕෗෠-෥෰෱෵-฀฻-฾๜-຀຃຅ຆຉ຋ຌຎ-ຓຘຠ຤຦ຨຩຬ຺຾຿໅໇໎໏໚໛໠-໿཈཭-཰྘྽࿍࿛-࿿჆჈-჌჎჏቉቎቏቗቙቞቟኉኎኏኱኶኷኿዁዆዇዗጑጖጗፛፜፽-፿᎚-᎟᏶᏷᏾᏿᚝-᚟᛹-᛿ᜍ᜕-ᜟ᜷-᜿᝔-᝟᝭᝱᝴-᝿៞៟៪-៯៺-៿᠏᠚-᠟᡹-᡿᢫-᢯᣶-᣿᤟᤬-᤯᤼-᤿᥁-᥃᥮᥯᥵-᥿᦬-᦯᧊-᧏᧛-᧝᨜᨝᩟᩽᩾᪊-᪏᪚-᪟᪮᪯ᪿ-᫿ᭌ-᭏᭽-᭿᯴-᯻᰸-᰺᱊-᱌Ᲊ-᲏᲻᲼᳈-᳏ᳺ-᳿᷺἖἗἞἟὆὇὎὏὘὚὜὞὾὿᾵῅῔῕῜῰῱῵῿⁥⁲⁳₏₝-₟⃀-⃏⃱-⃿↌-↏␧-␿⑋-⑟⭴⭵⮖⮗⯉⯿Ⱟⱟ⳴-⳸⴦⴨-⴬⴮⴯⵨-⵮⵱-⵾⶗-⶟⶧⶯⶷⶿⷇⷏⷗⷟⹏-⹿⺚⻴-⻿⿖-⿯⿼-⿿぀゗゘㄀-㄄㄰㆏ㆻ-ㆿ㇤-㇯㈟㋿䶶-䶿鿰-鿿꒍-꒏꓇-꓏꘬-꘿꛸-꛿Ꞻ-ꟶ꠬-꠯꠺-꠿꡸-꡿꣆-꣍꣚-꣟꥔-꥞꥽-꥿꧎꧚-꧝꧿꨷-꨿꩎꩏꩚꩛꫃-꫚꫷-꬀꬇꬈꬏꬐꬗-꬟꬧꬯ꭦ-꭯꯮꯯꯺-꯿힤-힯퟇-퟊퟼-퟿﩮﩯﫚-﫿﬇-﬒﬘-﬜﬷﬽﬿﭂﭅﯂-﯒﵀-﵏﶐﶑﷈-﷯﷾﷿︚-︟﹓﹧﹬-﹯﹵﻽﻾＀﾿-￁￈￉￐￑￘￙￝-￟￧￯-￸￾￿\",astral:\"�[�������-��-��-��-���-��-��-��-��-��-��-��-��-���-��-�]|�[���-��-��-��-��-��-��-��-��-�]|�[�����-�����-��-���-��-��-��-��-�����-������-��-��-��-��-��-��-����-��-��-��-�]|�[�-��-��-��-��-��-��-��-�]|�[�-��-��-����-��-���-��-�����-���-������-��-��-�����������������-��-����-��-�]|�[���-��-��-����-��-��-��-��-��-����-��-�]|�[�-��-��-��-����-��-�]|�[���-��-�����-����-����-��-������-��-��-�]|�[�-�]|�[��-��-�]|[���-��-��-����-�����-��-��-�][�-�]|�[�-�]|�[�-�]|�[�-���-��-����-��-����-��-�]|�[�-��-��-��-��-��-�]|�[�-�]|�[�-�]|�[�-��-�]|�[�-��-��-����-�]|�[�-����-��-��-��-��-�]|�[���������������������-������]|�[�-���-�]|�[������-�]|�[���-��-��-��-�]|�[�-��-�����������-��-�����������������������-����-��-�]|�[�-��-������-��-��-��-��-��-��-��-��-�]|�[�-��-��-��-��-�]|�[�-��-��-��-��-��-�����-���-��-��-��-��-�]|�[�-�]|�[�-�]|�[��]|�[�-�]|�[�-�]|�[�-�]|�[��-��-��-�]|[��][��]\"},{name:\"Co\",alias:\"Private_Use\",bmp:\"-\",astral:\"[�-��-�][�-�]|[��][�-�]\"},{name:\"Cs\",alias:\"Surrogate\",bmp:\"�-�\"},{name:\"L\",alias:\"Letter\",bmp:\"A-Za-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࢠ-ࢴࢶ-ࢽऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢄᢇ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々〆〱-〵〻〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿯ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛥꜗ-ꜟꜢ-ꞈꞋ-ꞹꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ\",astral:\"�[�-��-��-����-��-��-��-��-��-��-��-��-��-��-��-�]|�[�-��-��-��-��-��-��-��-�]|�[�-���-�����-��-��-��-����-��-��-�����-��-��-��-��-��-��-��-��-��-��-�]|�[�-��-��-��-��-���-�]|�[�-��-��-��-���-���-��-����-��-��-���-��-��-��-��-����-��-����-����-�]|�[�-��-��-�����-��-��-���-��-�]|�[�-��-����-����-��-���-�]|�[�-��-���-��-����-���-����-���-�]|�[�-�]|�[�-�]|[��-��-��-��-��-�][�-�]|�[�-�]|�[�-�]|�[�-��-��-��-��-��-��-�]|�[�-��-���-���]|�[�-�]|�[�-�]|�[�-��-�]|�[�-��-��-��-�]|�[�-��-�������-��-���-��-��-��-��-��-��-��-���-��-��-��-��-��-��-��-��-��-��-��-��-�]|�[�-��-�]|�[�-��-������-��-��������-�������������-��-��-��-���-��-��-��-��-�]|�[�-��-�]|�[�-��-�]|�[�-��-�]|�[�-��-�]|�[�-�]|�[�-�]\"},{name:\"LC\",alias:\"Cased_Letter\",bmp:\"A-Za-zµÀ-ÖØ-öø-ƺƼ-ƿDŽ-ʓʕ-ʯͰ-ͳͶͷͻ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՠ-ֈႠ-ჅჇჍა-ჺჽ-ჿᎠ-Ᏽᏸ-ᏽᲀ-ᲈᲐ-ᲺᲽ-Ჿᴀ-ᴫᵫ-ᵷᵹ-ᶚḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℴℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-Ⱞⰰ-ⱞⱠ-ⱻⱾ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭꙀ-ꙭꚀ-ꚛꜢ-ꝯꝱ-ꞇꞋ-ꞎꞐ-ꞹꟺꬰ-ꭚꭠ-ꭥꭰ-ꮿff-stﬓ-ﬗA-Za-z\",astral:\"�[�-��-��-�]|�[�-��-�]|�[�-�]|�[�-�]|�[�-��-�������-��-���-��-��-��-��-��-��-��-���-��-��-��-��-��-��-��-��-��-��-��-��-�]|�[�-�]\"},{name:\"Ll\",alias:\"Lowercase_Letter\",bmp:\"a-zµß-öø-ÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżž-ƀƃƅƈƌƍƒƕƙ-ƛƞơƣƥƨƪƫƭưƴƶƹƺƽ-ƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳ-ȹȼȿɀɂɇɉɋɍɏ-ʓʕ-ʯͱͳͷͻ-ͽΐά-ώϐϑϕ-ϗϙϛϝϟϡϣϥϧϩϫϭϯ-ϳϵϸϻϼа-џѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӏӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧԩԫԭԯՠ-ֈა-ჺჽ-ჿᏸ-ᏽᲀ-ᲈᴀ-ᴫᵫ-ᵷᵹ-ᶚḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕ-ẝẟạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿ-ἇἐ-ἕἠ-ἧἰ-ἷὀ-ὅὐ-ὗὠ-ὧὰ-ώᾀ-ᾇᾐ-ᾗᾠ-ᾧᾰ-ᾴᾶᾷιῂ-ῄῆῇῐ-ΐῖῗῠ-ῧῲ-ῴῶῷℊℎℏℓℯℴℹℼℽⅆ-ⅉⅎↄⰰ-ⱞⱡⱥⱦⱨⱪⱬⱱⱳⱴⱶ-ⱻⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⳬⳮⳳⴀ-ⴥⴧⴭꙁꙃꙅꙇꙉꙋꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꚙꚛꜣꜥꜧꜩꜫꜭꜯ-ꜱꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯꝱ-ꝸꝺꝼꝿꞁꞃꞅꞇꞌꞎꞑꞓ-ꞕꞗꞙꞛꞝꞟꞡꞣꞥꞧꞩꞯꞵꞷꞹꟺꬰ-ꭚꭠ-ꭥꭰ-ꮿff-stﬓ-ﬗa-z\",astral:\"�[�-��-�]|�[�-�]|�[�-�]|�[�-�]|�[�-��-��-��-��-���-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��]|�[�-�]\"},{name:\"Lm\",alias:\"Modifier_Letter\",bmp:\"ʰ-ˁˆ-ˑˠ-ˤˬˮʹͺՙـۥۦߴߵߺࠚࠤࠨॱๆໆჼៗᡃᪧᱸ-ᱽᴬ-ᵪᵸᶛ-ᶿⁱⁿₐ-ₜⱼⱽⵯⸯ々〱-〵〻ゝゞー-ヾꀕꓸ-ꓽꘌꙿꚜꚝꜗ-ꜟꝰꞈꟸꟹꧏꧦꩰꫝꫳꫴꭜ-ꭟー゙゚\",astral:\"�[�-�]|�[�-���]\"},{name:\"Lo\",alias:\"Other_Letter\",bmp:\"ªºƻǀ-ǃʔא-תׯ-ײؠ-ؿف-يٮٯٱ-ۓەۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪࠀ-ࠕࡀ-ࡘࡠ-ࡪࢠ-ࢴࢶ-ࢽऄ-हऽॐक़-ॡॲ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๅກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎᄀ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៜᠠ-ᡂᡄ-ᡸᢀ-ᢄᢇ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱷᳩ-ᳬᳮ-ᳱᳵᳶℵ-ℸⴰ-ⵧⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ〆〼ぁ-ゖゟァ-ヺヿㄅ-ㄯㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿯ꀀ-ꀔꀖ-ꒌꓐ-ꓷꔀ-ꘋꘐ-ꘟꘪꘫꙮꚠ-ꛥꞏꟷꟻ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧠ-ꧤꧧ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩯꩱ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛꫜꫠ-ꫪꫲꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎יִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼヲ-ッア-ンᅠ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ\",astral:\"�[�-��-��-����-��-��-��-��-��-��-��-��-��-��-��-�]|�[�-��-��-��-��-��-�]|�[�-���-�����-��-��-��-����-��-��-�����-��-��-��-��-��-��-��-��-��-��-�]|�[�-��-��-���-�]|�[�-��-��-��-���-���-��-����-��-��-���-��-��-��-��-����-��-����-����-�]|�[�-��-��-�����-��-��-���-��-�]|�[�-����-����-��-���-�]|�[�-��-���-��-����-���-����-���-�]|�[�-�]|�[�-�]|[��-��-��-��-��-�][�-�]|�[�-�]|�[�-�]|�[�-��-��-��-��-��-�]|�[�-��]|�[�-�]|�[�-�]|�[�-��-�]|�[�-��-��-��-�]|�[�-�]|�[�-��-������-��-��������-�������������-��-��-��-���-��-��-��-��-�]|�[�-��-�]|�[�-��-�]|�[�-��-�]|�[�-��-�]|�[�-�]|�[�-�]\"},{name:\"Lt\",alias:\"Titlecase_Letter\",bmp:\"DžLjNjDzᾈ-ᾏᾘ-ᾟᾨ-ᾯᾼῌῼ\"},{name:\"Lu\",alias:\"Uppercase_Letter\",bmp:\"A-ZÀ-ÖØ-ÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉ-ƋƎ-ƑƓƔƖ-ƘƜƝƟƠƢƤƦƧƩƬƮƯƱ-ƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶ-ǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁɃ-ɆɈɊɌɎͰͲͶͿΆΈ-ΊΌΎΏΑ-ΡΣ-ΫϏϒ-ϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽ-ЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸӺӼӾԀԂԄԆԈԊԌԎԐԒԔԖԘԚԜԞԠԢԤԦԨԪԬԮԱ-ՖႠ-ჅჇჍᎠ-ᏵᲐ-ᲺᲽ-ᲿḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẞẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸỺỼỾἈ-ἏἘ-ἝἨ-ἯἸ-ἿὈ-ὍὙὛὝὟὨ-ὯᾸ-ΆῈ-ΉῘ-ΊῨ-ῬῸ-Ώℂℇℋ-ℍℐ-ℒℕℙ-ℝℤΩℨK-ℭℰ-ℳℾℿⅅↃⰀ-ⰮⱠⱢ-ⱤⱧⱩⱫⱭ-ⱰⱲⱵⱾ-ⲀⲂⲄⲆⲈⲊⲌⲎⲐⲒⲔⲖⲘⲚⲜⲞⲠⲢⲤⲦⲨⲪⲬⲮⲰⲲⲴⲶⲸⲺⲼⲾⳀⳂⳄⳆⳈⳊⳌⳎⳐⳒⳔⳖⳘⳚⳜⳞⳠⳢⳫⳭⳲꙀꙂꙄꙆꙈꙊꙌꙎꙐꙒꙔꙖꙘꙚꙜꙞꙠꙢꙤꙦꙨꙪꙬꚀꚂꚄꚆꚈꚊꚌꚎꚐꚒꚔꚖꚘꚚꜢꜤꜦꜨꜪꜬꜮꜲꜴꜶꜸꜺꜼꜾꝀꝂꝄꝆꝈꝊꝌꝎꝐꝒꝔꝖꝘꝚꝜꝞꝠꝢꝤꝦꝨꝪꝬꝮꝹꝻꝽꝾꞀꞂꞄꞆꞋꞍꞐꞒꞖꞘꞚꞜꞞꞠꞢꞤꞦꞨꞪ-ꞮꞰ-ꞴꞶꞸA-Z\",astral:\"�[�-��-�]|�[�-�]|�[�-�]|�[�-�]|�[�-��-��-��������-��-��-����-��-��-����-��-���-��-��-��-��-��-��-��-��-��-��-��-��]|�[�-�]\"},{name:\"M\",alias:\"Mark\",bmp:\"̀-ͯ҃-҉֑-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࣓-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣঁ-ঃ়া-ৄেৈো-্ৗৢৣ৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑੰੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣஂா-ூெ-ைொ-்ௗఀ-ఄా-ౄె-ైొ-్ౕౖౢౣಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣංඃ්ා-ුූෘ-ෟෲෳัิ-ฺ็-๎ັິ-ູົຼ່-ໍ༹༘༙༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏႚ-ႝ፝-፟ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝᠋-᠍ᢅᢆᢩᤠ-ᤫᤰ-᤻ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼᪰-᪾ᬀ-ᬄ᬴-᭄᭫-᭳ᮀ-ᮂᮡ-ᮭ᯦-᯳ᰤ-᰷᳐-᳔᳒-᳨᳭ᳲ-᳴᳷-᳹᷀-᷹᷻-᷿⃐-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꙯-꙲ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-ꣅ꣠-꣱ꣿꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀ꧥꨩ-ꨶꩃꩌꩍꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭ﬞ︀-️︠-︯\",astral:\"�[���-�]|�[�-����-��-����]|�[�-��-�]|�[�-��-��-��-��-��-�����-��-��-��-���-��-����-����-�����-��-�]|�[�-���-��-��-����-��-��-�]|�[�-��-��-��-���-��-�]|�[�-��-��-��-��-�����-���-����-��-�]|�[�-��-�]|�[�-��-�]|�[��]|�[�-��-��-��-��-��-�]|�[�-��-����-��-�]|�[�-��-��-����-�]|�[�-��-�]|�[�-�]\"},{name:\"Mc\",alias:\"Spacing_Mark\",bmp:\"ःऻा-ीॉ-ौॎॏংঃা-ীেৈোৌৗਃਾ-ੀઃા-ીૉોૌଂଃାୀେୈୋୌୗாிுூெ-ைொ-ௌௗఁ-ఃు-ౄಂಃಾೀ-ೄೇೈೊೋೕೖംഃാ-ീെ-ൈൊ-ൌൗංඃා-ෑෘ-ෟෲෳ༾༿ཿါာေးျြၖၗၢ-ၤၧ-ၭႃႄႇ-ႌႏႚ-ႜាើ-ៅះៈᤣ-ᤦᤩ-ᤫᤰᤱᤳ-ᤸᨙᨚᩕᩗᩡᩣᩤᩭ-ᩲᬄᬵᬻᬽ-ᭁᭃ᭄ᮂᮡᮦᮧ᮪ᯧᯪ-ᯬᯮ᯲᯳ᰤ-ᰫᰴᰵ᳡ᳲᳳ᳷〮〯ꠣꠤꠧꢀꢁꢴ-ꣃꥒ꥓ꦃꦴꦵꦺꦻꦽ-꧀ꨯꨰꨳꨴꩍꩻꩽꫫꫮꫯꫵꯣꯤꯦꯧꯩꯪ꯬\",astral:\"�[����-��������-����-�����-������-����-����]|�[�-�����-���-���-��-���-�����������]|�[�-������]|�[������-������]|�[�-�]|�[���-�]\"},{name:\"Me\",alias:\"Enclosing_Mark\",bmp:\"҈҉᪾⃝-⃠⃢-⃤꙰-꙲\"},{name:\"Mn\",alias:\"Nonspacing_Mark\",bmp:\"̀-ͯ҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࣓-ࣣ࣡-ंऺ़ु-ै्॑-ॗॢॣঁ়ু-ৄ্ৢৣ৾ਁਂ਼ੁੂੇੈੋ-੍ੑੰੱੵઁં઼ુ-ૅેૈ્ૢૣૺ-૿ଁ଼ିୁ-ୄ୍ୖୢୣஂீ்ఀఄా-ీె-ైొ-్ౕౖౢౣಁ಼ಿೆೌ್ೢೣഀഁ഻഼ു-ൄ്ൢൣ්ි-ුූัิ-ฺ็-๎ັິ-ູົຼ່-ໍཱ༹༘༙༵༷-ཾྀ-྄྆྇ྍ-ྗྙ-ྼ࿆ိ-ူဲ-့္်ွှၘၙၞ-ၠၱ-ၴႂႅႆႍႝ፝-፟ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴឵ិ-ួំ៉-៓៝᠋-᠍ᢅᢆᢩᤠ-ᤢᤧᤨᤲ᤹-᤻ᨘᨗᨛᩖᩘ-ᩞ᩠ᩢᩥ-ᩬᩳ-᩿᩼᪰-᪽ᬀ-ᬃ᬴ᬶ-ᬺᬼᭂ᭫-᭳ᮀᮁᮢ-ᮥᮨᮩ᮫-ᮭ᯦ᯨᯩᯭᯯ-ᯱᰬ-ᰳᰶ᰷᳐-᳔᳒-᳢᳠-᳨᳭᳴᳸᳹᷀-᷹᷻-᷿⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〭꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠥꠦ꣄ꣅ꣠-꣱ꣿꤦ-꤭ꥇ-ꥑꦀ-ꦂ꦳ꦶ-ꦹꦼꧥꨩ-ꨮꨱꨲꨵꨶꩃꩌꩼꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫬꫭ꫶ꯥꯨ꯭ﬞ︀-️︠-︯\",astral:\"�[���-�]|�[�-����-��-����]|�[�-��-�]|�[��-��-��-����-��-��-�����-��-��-�������-�������-��-�]|�[�-��-����-�������-��������-�������-���-��-��-�]|�[�-����-��-��-���-��-��-���]|�[�-��-���-��-������-�����-��������]|�[�-��-�]|�[�-�]|�[��]|�[�-��-��-��-��-�]|�[�-��-����-��-�]|�[�-��-��-����-�]|�[�-��-�]|�[�-�]\"},{name:\"N\",alias:\"Number\",bmp:\"0-9²³¹¼-¾٠-٩۰-۹߀-߉०-९০-৯৴-৹੦-੯૦-૯୦-୯୲-୷௦-௲౦-౯౸-౾೦-೯൘-൞൦-൸෦-෯๐-๙໐-໙༠-༳၀-၉႐-႙፩-፼ᛮ-ᛰ០-៩៰-៹᠐-᠙᥆-᥏᧐-᧚᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙⁰⁴-⁹₀-₉⅐-ↂↅ-↉①-⒛⓪-⓿❶-➓⳽〇〡-〩〸-〺㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꘠-꘩ꛦ-ꛯ꠰-꠵꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9\",astral:\"�[�-��-����-��-����-�]|�[�-�]|�[�-��-��-��-��-����-��-��-����-��-��-��-��-�]|�[�-��-��-��-��-�]|�[�-��-��-��-��-��-�]|�[�-��-��-��-��-�]|�[�-�]|�[�-��-��-�]|�[�-�]|�[�-��-��-�]|�[�-�]|�[�-��-�]|�[�-�]|�[�-��-�]|�[�-��-��-�]|�[�-�]\"},{name:\"Nd\",alias:\"Decimal_Number\",bmp:\"0-9٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9\",astral:\"�[�-�]|�[�-�]|�[�-��-��-��-��-�]|�[�-��-��-��-��-�]|�[�-�]|�[�-��-��-�]|�[�-��-�]|�[�-�]|�[�-�]\"},{name:\"Nl\",alias:\"Letter_Number\",bmp:\"ᛮ-ᛰⅠ-ↂↅ-ↈ〇〡-〩〸-〺ꛦ-ꛯ\",astral:\"�[�-����-�]|�[�-�]\"},{name:\"No\",alias:\"Other_Number\",bmp:\"²³¹¼-¾৴-৹୲-୷௰-௲౸-౾൘-൞൰-൸༪-༳፩-፼៰-៹᧚⁰⁴-⁹₀-₉⅐-⅟↉①-⒛⓪-⓿❶-➓⳽㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꠰-꠵\",astral:\"�[�-��-����-��-�]|�[�-��-��-��-��-����-��-��-����-��-��-��-��-�]|�[�-��-��-��-�]|�[�-��-�]|�[��]|�[�-�]|�[�-�]|�[�-�]|�[�-�]|�[�-��-�]|�[�-�]|�[�-��-��-�]|�[�-�]\"},{name:\"P\",alias:\"Punctuation\",bmp:\"!-#%-\\\\*,-\\\\/:;\\\\?@\\\\[-\\\\]_\\\\{\\\\}¡§«¶·»¿;·՚-՟։֊־׀׃׆׳״؉؊،؍؛؞؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰৽੶૰಄෴๏๚๛༄-༒༔༺-༽྅࿐-࿔࿙࿚၊-၏჻፠-፨᐀᙭᙮᚛᚜᛫-᛭᜵᜶។-៖៘-៚᠀-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‐-‧‰-⁃⁅-⁑⁓-⁞⁽⁾₍₎⌈-⌋〈〉❨-❵⟅⟆⟦-⟯⦃-⦘⧘-⧛⧼⧽⳹-⳼⳾⳿⵰⸀-⸮⸰-⹎、-〃〈-】〔-〟〰〽゠・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꣼꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫﴾﴿︐-︙︰-﹒﹔-﹡﹣﹨﹪﹫!-#%-*,-/:;?@[-]_{}⦅-・\",astral:\"�[�-���]|𐕯|�[����-���-��-��-�]|�[�-�]|�[�-����-��-����-����-��-��]|�[�-�����-��-��-��-�]|�[��-��-��-�]|�[�-�����]|�[�-�]|�[����-��]|�[�-�]|𛲟|�[�-�]|�[��]\"},{name:\"Pc\",alias:\"Connector_Punctuation\",bmp:\"_‿⁀⁔︳︴﹍-﹏_\"},{name:\"Pd\",alias:\"Dash_Punctuation\",bmp:\"\\\\-֊־᐀᠆‐-―⸗⸚⸺⸻⹀〜〰゠︱︲﹘﹣-\"},{name:\"Pe\",alias:\"Close_Punctuation\",bmp:\"\\\\)\\\\]\\\\}༻༽᚜⁆⁾₎⌉⌋〉❩❫❭❯❱❳❵⟆⟧⟩⟫⟭⟯⦄⦆⦈⦊⦌⦎⦐⦒⦔⦖⦘⧙⧛⧽⸣⸥⸧⸩〉》」』】〕〗〙〛〞〟﴾︘︶︸︺︼︾﹀﹂﹄﹈﹚﹜﹞)]}⦆」\"},{name:\"Pf\",alias:\"Final_Punctuation\",bmp:\"»’”›⸃⸅⸊⸍⸝⸡\"},{name:\"Pi\",alias:\"Initial_Punctuation\",bmp:\"«‘‛“‟‹⸂⸄⸉⸌⸜⸠\"},{name:\"Po\",alias:\"Other_Punctuation\",bmp:\"!-#%-'\\\\*,\\\\.\\\\/:;\\\\?@\\\\¡§¶·¿;·՚-՟։׀׃׆׳״؉؊،؍؛؞؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰৽੶૰಄෴๏๚๛༄-༒༔྅࿐-࿔࿙࿚၊-၏჻፠-፨᙭᙮᛫-᛭᜵᜶។-៖៘-៚᠀-᠅᠇-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‖‗†-‧‰-‸※-‾⁁-⁃⁇-⁑⁓⁕-⁞⳹-⳼⳾⳿⵰⸀⸁⸆-⸈⸋⸎-⸖⸘⸙⸛⸞⸟⸪-⸮⸰-⸹⸼-⸿⹁⹃-⹎、-〃〽・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꣼꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫︐-︖︙︰﹅﹆﹉-﹌﹐-﹒﹔-﹗﹟-﹡﹨﹪﹫!-#%-'*,./:;?@\。、・\",astral:\"�[�-���]|𐕯|�[����-���-��-��-�]|�[�-�]|�[�-����-��-����-����-��-��]|�[�-�����-��-��-��-�]|�[��-��-��-�]|�[�-�����]|�[�-�]|�[����-��]|�[�-�]|𛲟|�[�-�]|�[��]\"},{name:\"Ps\",alias:\"Open_Punctuation\",bmp:\"\\\\(\\\\[\\\\{༺༼᚛‚„⁅⁽₍⌈⌊〈❨❪❬❮❰❲❴⟅⟦⟨⟪⟬⟮⦃⦅⦇⦉⦋⦍⦏⦑⦓⦕⦗⧘⧚⧼⸢⸤⸦⸨⹂〈《「『【〔〖〘〚〝﴿︗︵︷︹︻︽︿﹁﹃﹇﹙﹛﹝([{⦅「\"},{name:\"S\",alias:\"Symbol\",bmp:\"\\\\$\\\\+<->\\\\^`\\\\|~¢-¦¨©¬®-±´¸×÷˂-˅˒-˟˥-˫˭˯-˿͵΄΅϶҂֍-֏؆-؈؋؎؏۞۩۽۾߶߾߿৲৳৺৻૱୰௳-௺౿൏൹฿༁-༃༓༕-༗༚-༟༴༶༸྾-࿅࿇-࿌࿎࿏࿕-࿘႞႟᎐-᎙៛᥀᧞-᧿᭡-᭪᭴-᭼᾽᾿-῁῍-῏῝-῟῭-`´῾⁄⁒⁺-⁼₊-₌₠-₿℀℁℃-℆℈℉℔№-℘℞-℣℥℧℩℮℺℻⅀-⅄⅊-⅍⅏↊↋←-⌇⌌-⌨⌫-␦⑀-⑊⒜-ⓩ─-❧➔-⟄⟇-⟥⟰-⦂⦙-⧗⧜-⧻⧾-⭳⭶-⮕⮘-⯈⯊-⯾⳥-⳪⺀-⺙⺛-⻳⼀-⿕⿰-⿻〄〒〓〠〶〷〾〿゛゜㆐㆑㆖-㆟㇀-㇣㈀-㈞㈪-㉇㉐㉠-㉿㊊-㊰㋀-㋾㌀-㏿䷀-䷿꒐-꓆꜀-꜖꜠꜡꞉꞊꠨-꠫꠶-꠹꩷-꩹꭛﬩﮲-﯁﷼﷽﹢﹤-﹦﹩$+<->^`|~¢-₩│-○�\",astral:\"�[�-��-��-��-���-�]|�[���]|𑜿|�[�-��]|𛲜|�[�-��-��-��-����-��-��-���-�]|�[����������]|�[�-��-��-��-���]|�[����]|�[�-��-��-��-��-��-��-��-��-��-��-����-��-�]|�[�-��-��-��-��-�]|�[�-��-��-��-��-��-��-��-��-���-��-��-��-��-�]\"},{name:\"Sc\",alias:\"Currency_Symbol\",bmp:\"\\\\$¢-¥֏؋߾߿৲৳৻૱௹฿៛₠-₿꠸﷼﹩$¢£¥₩\",astral:\"𞲰\"},{name:\"Sk\",alias:\"Modifier_Symbol\",bmp:\"\\\\^`¨¯´¸˂-˅˒-˟˥-˫˭˯-˿͵΄΅᾽᾿-῁῍-῏῝-῟῭-`´῾゛゜꜀-꜖꜠꜡꞉꞊꭛﮲-﯁^` ̄\",astral:\"�[�-�]\"},{name:\"Sm\",alias:\"Math_Symbol\",bmp:\"\\\\+<->\\\\|~¬±×÷϶؆-؈⁄⁒⁺-⁼₊-₌℘⅀-⅄⅋←-↔↚↛↠↣↦↮⇎⇏⇒⇔⇴-⋿⌠⌡⍼⎛-⎳⏜-⏡▷◁◸-◿♯⟀-⟄⟇-⟥⟰-⟿⤀-⦂⦙-⧗⧜-⧻⧾-⫿⬰-⭄⭇-⭌﬩﹢﹤-﹦+<->|~¬←-↓\",astral:\"�[����������]|�[��]\"},{name:\"So\",alias:\"Other_Symbol\",bmp:\"¦©®°҂֍֎؎؏۞۩۽۾߶৺୰௳-௸௺౿൏൹༁-༃༓༕-༗༚-༟༴༶༸྾-࿅࿇-࿌࿎࿏࿕-࿘႞႟᎐-᎙᥀᧞-᧿᭡-᭪᭴-᭼℀℁℃-℆℈℉℔№℗℞-℣℥℧℩℮℺℻⅊⅌⅍⅏↊↋↕-↙↜-↟↡↢↤↥↧-↭↯-⇍⇐⇑⇓⇕-⇳⌀-⌇⌌-⌟⌢-⌨⌫-⍻⍽-⎚⎴-⏛⏢-␦⑀-⑊⒜-ⓩ─-▶▸-◀◂-◷☀-♮♰-❧➔-➿⠀-⣿⬀-⬯⭅⭆⭍-⭳⭶-⮕⮘-⯈⯊-⯾⳥-⳪⺀-⺙⺛-⻳⼀-⿕⿰-⿻〄〒〓〠〶〷〾〿㆐㆑㆖-㆟㇀-㇣㈀-㈞㈪-㉇㉐㉠-㉿㊊-㊰㋀-㋾㌀-㏿䷀-䷿꒐-꓆꠨-꠫꠶꠷꠹꩷-꩹﷽¦│■○�\",astral:\"�[�-��-��-��-���-�]|�[���]|𑜿|�[�-��]|𛲜|�[�-��-��-��-����-��-��-���-�]|�[�-��-��-��-���]|𞲬|�[�-��-��-��-��-��-��-��-��-��-��-����-��-�]|�[�-��-��-��-��-�]|�[�-��-��-��-��-��-��-��-��-���-��-��-��-��-�]\"},{name:\"Z\",alias:\"Separator\",bmp:\"    - \\u2028\\u2029   \"},{name:\"Zl\",alias:\"Line_Separator\",bmp:\"\\u2028\"},{name:\"Zp\",alias:\"Paragraph_Separator\",bmp:\"\\u2029\"},{name:\"Zs\",alias:\"Space_Separator\",bmp:\"    -    \"}]},function(e,t,n){\"use strict\";var i=n(35);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var o=i(n(416)),r=function(e){if(!e.addUnicodeData)throw new ReferenceError(\"Unicode Base must be loaded before Unicode Properties\");var t=o.default;t.push({name:\"Assigned\",inverseOf:\"Cn\"}),e.addUnicodeData(t)};t.default=r,e.exports=t.default},function(e,t){e.exports=[{name:\"ASCII\",bmp:\"\\0-\"},{name:\"Alphabetic\",bmp:\"A-Za-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͅͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈְ-ׇֽֿׁׂׅׄא-תׯ-ײؐ-ؚؠ-ٗٙ-ٟٮ-ۓە-ۜۡ-ۭۨ-ۯۺ-ۼۿܐ-ܿݍ-ޱߊ-ߪߴߵߺࠀ-ࠗࠚ-ࠬࡀ-ࡘࡠ-ࡪࢠ-ࢴࢶ-ࢽࣔ-ࣣࣟ-ࣰࣩ-ऻऽ-ौॎ-ॐॕ-ॣॱ-ঃঅ-ঌএঐও-নপ-রলশ-হঽ-ৄেৈোৌৎৗড়ঢ়য়-ৣৰৱৼਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਾ-ੂੇੈੋੌੑਖ਼-ੜਫ਼ੰ-ੵઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽ-ૅે-ૉોૌૐૠ-ૣૹ-ૼଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽ-ୄେୈୋୌୖୗଡ଼ଢ଼ୟ-ୣୱஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-ௌௐௗఀ-ఃఅ-ఌఎ-ఐఒ-నప-హఽ-ౄె-ైొ-ౌౕౖౘ-ౚౠ-ౣಀ-ಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೄೆ-ೈೊ-ೌೕೖೞೠ-ೣೱೲഀ-ഃഅ-ഌഎ-ഐഒ-ഺഽ-ൄെ-ൈൊ-ൌൎൔ-ൗൟ-ൣൺ-ൿංඃඅ-ඖක-නඳ-රලව-ෆා-ුූෘ-ෟෲෳก-ฺเ-ๆํກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ູົ-ຽເ-ໄໆໍໜ-ໟༀཀ-ཇཉ-ཬཱ-ཱྀྈ-ྗྙ-ྼက-ံးျ-ဿၐ-ၢၥ-ၨၮ-ႆႎႜႝႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፟ᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜌᜎ-ᜓᜠ-ᜳᝀ-ᝓᝠ-ᝬᝮ-ᝰᝲᝳក-ឳា-ៈៗៜᠠ-ᡸᢀ-ᢪᢰ-ᣵᤀ-ᤞᤠ-ᤫᤰ-ᤸᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨛᨠ-ᩞᩡ-ᩴᪧᬀ-ᬳᬵ-ᭃᭅ-ᭋᮀ-ᮩᮬ-ᮯᮺ-ᯥᯧ-ᯱᰀ-ᰵᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᴀ-ᶿᷧ-ᷴḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⒶ-ⓩⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⷠ-ⷿⸯ々-〇〡-〩〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿯ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙴ-ꙻꙿ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞹꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠧꡀ-ꡳꢀ-ꣃꣅꣲ-ꣷꣻꣽꣾꤊ-ꤪꤰ-ꥒꥠ-ꥼꦀ-ꦲꦴ-ꦿꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨶꩀ-ꩍꩠ-ꩶꩺꩾ-ꪾꫀꫂꫛ-ꫝꫠ-ꫯꫲ-ꫵꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯪ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ\",astral:\"�[�-��-��-����-��-��-��-��-��-��-��-��-��-��-��-��-�]|�[�-��-��-��-��-��-��-��-�]|�[�-���-�����-��-��-��-����-��-��-����-����-��-��-��-��-��-��-��-��-��-��-�]|�[�-��-��-��-��-���-�]|�[�-��-��-��-��-��-���-��-����-��-����-���-��-��-��-��-��-����-��-����-��-��������-�]|�[�-��-��-��-�����-��-��-��-����-��-��-�]|�[�-��-���-��-��-��-���-�]|�[�-��-��-���-��-��-��-����-�����-�����-����-����-���-�]|�[�-�]|�[�-��-�]|[��-��-��-��-��-�][�-�]|�[�-�]|�[�-�]|�[�-��-��-��-��-��-��-�]|�[�-��-��-��-���]|�[�-�]|�[�-�]|�[�-��-�]|�[�-��-��-��-��]|�[�-��-�������-��-���-��-��-��-��-��-��-��-���-��-��-��-��-��-��-��-��-��-��-��-��-�]|�[�-��-��-����-�]|�[�-��-��]|�[�-��-������-��-��������-�������������-��-��-��-���-��-��-��-��-�]|�[�-��-��-�]|�[�-��-�]|�[�-��-�]|�[�-��-�]|�[�-��-�]|�[�-�]|�[�-�]\"},{name:\"Any\",isBmpLast:!0,bmp:\"\\0-￿\",astral:\"[�-�][�-�]\"},{name:\"Default_Ignorable_Code_Point\",bmp:\"­͏؜ᅟᅠ឴឵᠋-᠎​-‏‪-‮⁠-ㅤ︀-️\\ufeffᅠ￰-￸\",astral:\"�[�-�]|�[�-�]|[�-�][�-�]\"},{name:\"Lowercase\",bmp:\"a-zªµºß-öø-ÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżž-ƀƃƅƈƌƍƒƕƙ-ƛƞơƣƥƨƪƫƭưƴƶƹƺƽ-ƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳ-ȹȼȿɀɂɇɉɋɍɏ-ʓʕ-ʸˀˁˠ-ˤͅͱͳͷͺ-ͽΐά-ώϐϑϕ-ϗϙϛϝϟϡϣϥϧϩϫϭϯ-ϳϵϸϻϼа-џѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӏӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧԩԫԭԯՠ-ֈა-ჺჽ-ჿᏸ-ᏽᲀ-ᲈᴀ-ᶿḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕ-ẝẟạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿ-ἇἐ-ἕἠ-ἧἰ-ἷὀ-ὅὐ-ὗὠ-ὧὰ-ώᾀ-ᾇᾐ-ᾗᾠ-ᾧᾰ-ᾴᾶᾷιῂ-ῄῆῇῐ-ΐῖῗῠ-ῧῲ-ῴῶῷⁱⁿₐ-ₜℊℎℏℓℯℴℹℼℽⅆ-ⅉⅎⅰ-ⅿↄⓐ-ⓩⰰ-ⱞⱡⱥⱦⱨⱪⱬⱱⱳⱴⱶ-ⱽⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⳬⳮⳳⴀ-ⴥⴧⴭꙁꙃꙅꙇꙉꙋꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꚙꚛ-ꚝꜣꜥꜧꜩꜫꜭꜯ-ꜱꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯ-ꝸꝺꝼꝿꞁꞃꞅꞇꞌꞎꞑꞓ-ꞕꞗꞙꞛꞝꞟꞡꞣꞥꞧꞩꞯꞵꞷꞹꟸ-ꟺꬰ-ꭚꭜ-ꭥꭰ-ꮿff-stﬓ-ﬗa-z\",astral:\"�[�-��-�]|�[�-�]|�[�-�]|�[�-�]|�[�-��-��-��-��-���-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��-��]|�[�-�]\"},{name:\"Noncharacter_Code_Point\",bmp:\"﷐-﷯￾￿\",astral:\"[����������������][��]\"},{name:\"Uppercase\",bmp:\"A-ZÀ-ÖØ-ÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉ-ƋƎ-ƑƓƔƖ-ƘƜƝƟƠƢƤƦƧƩƬƮƯƱ-ƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶ-ǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁɃ-ɆɈɊɌɎͰͲͶͿΆΈ-ΊΌΎΏΑ-ΡΣ-ΫϏϒ-ϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽ-ЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸӺӼӾԀԂԄԆԈԊԌԎԐԒԔԖԘԚԜԞԠԢԤԦԨԪԬԮԱ-ՖႠ-ჅჇჍᎠ-ᏵᲐ-ᲺᲽ-ᲿḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẞẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸỺỼỾἈ-ἏἘ-ἝἨ-ἯἸ-ἿὈ-ὍὙὛὝὟὨ-ὯᾸ-ΆῈ-ΉῘ-ΊῨ-ῬῸ-Ώℂℇℋ-ℍℐ-ℒℕℙ-ℝℤΩℨK-ℭℰ-ℳℾℿⅅⅠ-ⅯↃⒶ-ⓏⰀ-ⰮⱠⱢ-ⱤⱧⱩⱫⱭ-ⱰⱲⱵⱾ-ⲀⲂⲄⲆⲈⲊⲌⲎⲐⲒⲔⲖⲘⲚⲜⲞⲠⲢⲤⲦⲨⲪⲬⲮⲰⲲⲴⲶⲸⲺⲼⲾⳀⳂⳄⳆⳈⳊⳌⳎⳐⳒⳔⳖⳘⳚⳜⳞⳠⳢⳫⳭⳲꙀꙂꙄꙆꙈꙊꙌꙎꙐꙒꙔꙖꙘꙚꙜꙞꙠꙢꙤꙦꙨꙪꙬꚀꚂꚄꚆꚈꚊꚌꚎꚐꚒꚔꚖꚘꚚꜢꜤꜦꜨꜪꜬꜮꜲꜴꜶꜸꜺꜼꜾꝀꝂꝄꝆꝈꝊꝌꝎꝐꝒꝔꝖꝘꝚꝜꝞꝠꝢꝤꝦꝨꝪꝬꝮꝹꝻꝽꝾꞀꞂꞄꞆꞋꞍꞐꞒꞖꞘꞚꞜꞞꞠꞢꞤꞦꞨꞪ-ꞮꞰ-ꞴꞶꞸA-Z\",astral:\"�[�-��-�]|�[�-�]|�[�-�]|�[�-�]|�[�-��-��-��������-��-��-����-��-��-����-��-���-��-��-��-��-��-��-��-��-��-��-��-��]|�[�-�]|�[�-��-��-�]\"},{name:\"White_Space\",bmp:\"\\t-\\r …   - \\u2028\\u2029   \"}]},function(e,t,n){\"use strict\";var i=n(35);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var o=i(n(418)),r=function(e){if(!e.addUnicodeData)throw new ReferenceError(\"Unicode Base must be loaded before Unicode Scripts\");e.addUnicodeData(o.default)};t.default=r,e.exports=t.default},function(e,t){e.exports=[{name:\"Adlam\",astral:\"�[�-��-���]\"},{name:\"Ahom\",astral:\"�[�-��-��-�]\"},{name:\"Anatolian_Hieroglyphs\",astral:\"�[�-�]\"},{name:\"Arabic\",bmp:\"؀-؄؆-؋؍-ؚ؜؞ؠ-ؿف-يٖ-ٯٱ-ۜ۞-ۿݐ-ݿࢠ-ࢴࢶ-ࢽ࣓-ࣣ࣡-ࣿﭐ-﯁ﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-﷽ﹰ-ﹴﹶ-ﻼ\",astral:\"�[�-�]|�[�-��-������-��-��������-�������������-��-��-��-���-��-��-��-��-���]\"},{name:\"Armenian\",bmp:\"Ա-Ֆՙ-ֈ֊֍-֏ﬓ-ﬗ\"},{name:\"Avestan\",astral:\"�[�-��-�]\"},{name:\"Balinese\",bmp:\"ᬀ-ᭋ᭐-᭼\"},{name:\"Bamum\",bmp:\"ꚠ-꛷\",astral:\"�[�-�]\"},{name:\"Bassa_Vah\",astral:\"�[�-��-�]\"},{name:\"Batak\",bmp:\"ᯀ-᯳᯼-᯿\"},{name:\"Bengali\",bmp:\"ঀ-ঃঅ-ঌএঐও-নপ-রলশ-হ়-ৄেৈো-ৎৗড়ঢ়য়-ৣ০-৾\"},{name:\"Bhaiksuki\",astral:\"�[�-��-��-��-�]\"},{name:\"Bopomofo\",bmp:\"˪˫ㄅ-ㄯㆠ-ㆺ\"},{name:\"Brahmi\",astral:\"�[�-��-��]\"},{name:\"Braille\",bmp:\"⠀-⣿\"},{name:\"Buginese\",bmp:\"ᨀ-ᨛ᨞᨟\"},{name:\"Buhid\",bmp:\"ᝀ-ᝓ\"},{name:\"Canadian_Aboriginal\",bmp:\"᐀-ᙿᢰ-ᣵ\"},{name:\"Carian\",astral:\"�[�-�]\"},{name:\"Caucasian_Albanian\",astral:\"�[�-��]\"},{name:\"Chakma\",astral:\"�[�-��-�]\"},{name:\"Cham\",bmp:\"ꨀ-ꨶꩀ-ꩍ꩐-꩙꩜-꩟\"},{name:\"Cherokee\",bmp:\"Ꭰ-Ᏽᏸ-ᏽꭰ-ꮿ\"},{name:\"Common\",bmp:\"\\0-@\\\\[-`\\\\{-©«-¹»-¿×÷ʹ-˟˥-˩ˬ-˿ʹ;΅·։؅،؛؟ـ۝࣢।॥฿࿕-࿘჻᛫-᛭᜵᜶᠂᠃᠅᳓᳡ᳩ-ᳬᳮ-ᳳᳵ-᳷ -​‎-⁤⁦-⁰⁴-⁾₀-₎₠-₿℀-℥℧-℩ℬ-ℱℳ-⅍⅏-⅟↉-↋←-␦⑀-⑊①-⟿⤀-⭳⭶-⮕⮘-⯈⯊-⯾⸀-⹎⿰-⿻ -〄〆〈-〠〰-〷〼-〿゛゜゠・ー㆐-㆟㇀-㇣㈠-㉟㉿-㋏㍘-㏿䷀-䷿꜀-꜡ꞈ-꞊꠰-꠹꤮ꧏ꭛﴾﴿︐-︙︰-﹒﹔-﹦﹨-﹫\\ufeff!-@[-`{-・ー゙゚¢-₩│-○-�\",astral:\"�[�-��-��-��-��-��-�]|�[�-�]|�[�-��-��-��-����-��-��-��-��-�]|�[�-��-�������-��-���-��-��-��-��-��-��-��-���-��-��-��-�]|�[�-�]|�[�-��-��-��-��-��-��-��-��-��-����-��-����-��-�]|�[�-��-��-��-��-�]|�[�-��-��-��-��-��-��-��-��-���-��-��-��-��-�]|�[��-�]\"},{name:\"Coptic\",bmp:\"Ϣ-ϯⲀ-ⳳ⳹-⳿\"},{name:\"Cuneiform\",astral:\"�[�-�]|�[�-��-��-�]\"},{name:\"Cypriot\",astral:\"�[�-���-�����]\"},{name:\"Cyrillic\",bmp:\"Ѐ-҄҇-ԯᲀ-ᲈᴫᵸⷠ-ⷿꙀ-ꚟ︮︯\"},{name:\"Deseret\",astral:\"�[�-�]\"},{name:\"Devanagari\",bmp:\"ऀ-ॐ॓-ॣ०-ॿ꣠-ꣿ\"},{name:\"Dogra\",astral:\"�[�-�]\"},{name:\"Duployan\",astral:\"�[�-��-��-��-��-�]\"},{name:\"Egyptian_Hieroglyphs\",astral:\"�[�-�]|�[�-�]\"},{name:\"Elbasan\",astral:\"�[�-�]\"},{name:\"Ethiopic\",bmp:\"ሀ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፝-፼ᎀ-᎙ⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮ\"},{name:\"Georgian\",bmp:\"Ⴀ-ჅჇჍა-ჺჼ-ჿᲐ-ᲺᲽ-Ჿⴀ-ⴥⴧⴭ\"},{name:\"Glagolitic\",bmp:\"Ⰰ-Ⱞⰰ-ⱞ\",astral:\"�[�-��-��-����-�]\"},{name:\"Gothic\",astral:\"�[�-�]\"},{name:\"Grantha\",astral:\"�[�-��-����-��-����-��-����-����-��-��-�]\"},{name:\"Greek\",bmp:\"Ͱ-ͳ͵-ͷͺ-ͽͿ΄ΆΈ-ΊΌΎ-ΡΣ-ϡϰ-Ͽᴦ-ᴪᵝ-ᵡᵦ-ᵪᶿἀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ῄῆ-ΐῖ-Ί῝-`ῲ-ῴῶ-῾Ωꭥ\",astral:\"�[�-��]|�[�-�]\"},{name:\"Gujarati\",bmp:\"ઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હ઼-ૅે-ૉો-્ૐૠ-ૣ૦-૱ૹ-૿\"},{name:\"Gunjala_Gondi\",astral:\"�[�-����-����-��-�]\"},{name:\"Gurmukhi\",bmp:\"ਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹ਼ਾ-ੂੇੈੋ-੍ੑਖ਼-ੜਫ਼੦-੶\"},{name:\"Han\",bmp:\"⺀-⺙⺛-⻳⼀-⿕々〇〡-〩〸-〻㐀-䶵一-鿯豈-舘並-龎\",astral:\"[�-��-��-��-�][�-�]|�[�-��-�]|�[�-��-�]|�[�-��-�]|�[�-��-�]|�[�-�]|�[�-�]\"},{name:\"Hangul\",bmp:\"ᄀ-ᇿ〮〯ㄱ-ㆎ㈀-㈞㉠-㉾ꥠ-ꥼ가-힣ힰ-ퟆퟋ-ퟻᅠ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ\"},{name:\"Hanifi_Rohingya\",astral:\"�[�-��-�]\"},{name:\"Hanunoo\",bmp:\"ᜠ-᜴\"},{name:\"Hatran\",astral:\"�[�-����-�]\"},{name:\"Hebrew\",bmp:\"֑-ׇא-תׯ-״יִ-זּטּ-לּמּנּסּףּפּצּ-ﭏ\"},{name:\"Hiragana\",bmp:\"ぁ-ゖゝ-ゟ\",astral:\"�[�-�]|🈀\"},{name:\"Imperial_Aramaic\",astral:\"�[�-��-�]\"},{name:\"Inherited\",bmp:\"̀-ًͯ҅҆-ٰٕ॒॑᪰-᪾᳐-᳔᳒-᳢᳠-᳨᳭᳴᳸᳹᷀-᷹᷻-᷿‌‍⃐-〪⃰-゙゚〭︀-️︠-︭\",astral:\"�[��]|𑌻|�[�-��-��-��-�]|�[�-�]\"},{name:\"Inscriptional_Pahlavi\",astral:\"�[�-��-�]\"},{name:\"Inscriptional_Parthian\",astral:\"�[�-��-�]\"},{name:\"Javanese\",bmp:\"ꦀ-꧍꧐-꧙꧞꧟\"},{name:\"Kaithi\",astral:\"�[�-��]\"},{name:\"Kannada\",bmp:\"ಀ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹ಼-ೄೆ-ೈೊ-್ೕೖೞೠ-ೣ೦-೯ೱೲ\"},{name:\"Katakana\",bmp:\"ァ-ヺヽ-ヿㇰ-ㇿ㋐-㋾㌀-㍗ヲ-ッア-ン\",astral:\"𛀀\"},{name:\"Kayah_Li\",bmp:\"꤀-꤭꤯\"},{name:\"Kharoshthi\",astral:\"�[�-����-��-��-��-��-��-�]\"},{name:\"Khmer\",bmp:\"ក-៝០-៩៰-៹᧠-᧿\"},{name:\"Khojki\",astral:\"�[�-��-�]\"},{name:\"Khudawadi\",astral:\"�[�-��-�]\"},{name:\"Lao\",bmp:\"ກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ູົ-ຽເ-ໄໆ່-ໍ໐-໙ໜ-ໟ\"},{name:\"Latin\",bmp:\"A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞹꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z\"},{name:\"Lepcha\",bmp:\"ᰀ-᰷᰻-᱉ᱍ-ᱏ\"},{name:\"Limbu\",bmp:\"ᤀ-ᤞᤠ-ᤫᤰ-᤻᥀᥄-᥏\"},{name:\"Linear_A\",astral:\"�[�-��-��-�]\"},{name:\"Linear_B\",astral:\"�[�-��-��-����-��-��-�]\"},{name:\"Lisu\",bmp:\"ꓐ-꓿\"},{name:\"Lycian\",astral:\"�[�-�]\"},{name:\"Lydian\",astral:\"�[�-��]\"},{name:\"Mahajani\",astral:\"�[�-�]\"},{name:\"Makasar\",astral:\"�[�-�]\"},{name:\"Malayalam\",bmp:\"ഀ-ഃഅ-ഌഎ-ഐഒ-ൄെ-ൈൊ-൏ൔ-ൣ൦-ൿ\"},{name:\"Mandaic\",bmp:\"ࡀ-࡛࡞\"},{name:\"Manichaean\",astral:\"�[�-��-�]\"},{name:\"Marchen\",astral:\"�[�-��-��-�]\"},{name:\"Masaram_Gondi\",astral:\"�[�-����-�����-��-�]\"},{name:\"Medefaidrin\",astral:\"�[�-�]\"},{name:\"Meetei_Mayek\",bmp:\"ꫠ-꫶ꯀ-꯭꯰-꯹\"},{name:\"Mende_Kikakui\",astral:\"�[�-��-�]\"},{name:\"Meroitic_Cursive\",astral:\"�[�-��-��-�]\"},{name:\"Meroitic_Hieroglyphs\",astral:\"�[�-�]\"},{name:\"Miao\",astral:\"�[�-��-��-�]\"},{name:\"Modi\",astral:\"�[�-��-�]\"},{name:\"Mongolian\",bmp:\"᠀᠁᠄᠆-᠎᠐-᠙ᠠ-ᡸᢀ-ᢪ\",astral:\"�[�-�]\"},{name:\"Mro\",astral:\"�[�-��-���]\"},{name:\"Multani\",astral:\"�[�-���-��-��-�]\"},{name:\"Myanmar\",bmp:\"က-႟ꧠ-ꧾꩠ-ꩿ\"},{name:\"Nabataean\",astral:\"�[�-��-�]\"},{name:\"New_Tai_Lue\",bmp:\"ᦀ-ᦫᦰ-ᧉ᧐-᧚᧞᧟\"},{name:\"Newa\",astral:\"�[�-����]\"},{name:\"Nko\",bmp:\"߀-ߺ߽-߿\"},{name:\"Nushu\",astral:\"𖿡|�[�-�]\"},{name:\"Ogham\",bmp:\" -᚜\"},{name:\"Ol_Chiki\",bmp:\"᱐-᱿\"},{name:\"Old_Hungarian\",astral:\"�[�-��-��-�]\"},{name:\"Old_Italic\",astral:\"�[�-��-�]\"},{name:\"Old_North_Arabian\",astral:\"�[�-�]\"},{name:\"Old_Permic\",astral:\"�[�-�]\"},{name:\"Old_Persian\",astral:\"�[�-��-�]\"},{name:\"Old_Sogdian\",astral:\"�[�-�]\"},{name:\"Old_South_Arabian\",astral:\"�[�-�]\"},{name:\"Old_Turkic\",astral:\"�[�-�]\"},{name:\"Oriya\",bmp:\"ଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହ଼-ୄେୈୋ-୍ୖୗଡ଼ଢ଼ୟ-ୣ୦-୷\"},{name:\"Osage\",astral:\"�[�-��-�]\"},{name:\"Osmanya\",astral:\"�[�-��-�]\"},{name:\"Pahawh_Hmong\",astral:\"�[�-��-��-��-��-�]\"},{name:\"Palmyrene\",astral:\"�[�-�]\"},{name:\"Pau_Cin_Hau\",astral:\"�[�-�]\"},{name:\"Phags_Pa\",bmp:\"ꡀ-꡷\"},{name:\"Phoenician\",astral:\"�[�-��]\"},{name:\"Psalter_Pahlavi\",astral:\"�[�-��-��-�]\"},{name:\"Rejang\",bmp:\"ꤰ-꥓꥟\"},{name:\"Runic\",bmp:\"ᚠ-ᛪᛮ-ᛸ\"},{name:\"Samaritan\",bmp:\"ࠀ-࠭࠰-࠾\"},{name:\"Saurashtra\",bmp:\"ꢀ-ꣅ꣎-꣙\"},{name:\"Sharada\",astral:\"�[�-��-�]\"},{name:\"Shavian\",astral:\"�[�-�]\"},{name:\"Siddham\",astral:\"�[�-��-�]\"},{name:\"SignWriting\",astral:\"�[�-��-��-�]\"},{name:\"Sinhala\",bmp:\"ංඃඅ-ඖක-නඳ-රලව-ෆ්ා-ුූෘ-ෟ෦-෯ෲ-෴\",astral:\"�[�-�]\"},{name:\"Sogdian\",astral:\"�[�-�]\"},{name:\"Sora_Sompeng\",astral:\"�[�-��-�]\"},{name:\"Soyombo\",astral:\"�[�-��-�]\"},{name:\"Sundanese\",bmp:\"ᮀ-ᮿ᳀-᳇\"},{name:\"Syloti_Nagri\",bmp:\"ꠀ-꠫\"},{name:\"Syriac\",bmp:\"܀-܍܏-݊ݍ-ݏࡠ-ࡪ\"},{name:\"Tagalog\",bmp:\"ᜀ-ᜌᜎ-᜔\"},{name:\"Tagbanwa\",bmp:\"ᝠ-ᝬᝮ-ᝰᝲᝳ\"},{name:\"Tai_Le\",bmp:\"ᥐ-ᥭᥰ-ᥴ\"},{name:\"Tai_Tham\",bmp:\"ᨠ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪠-᪭\"},{name:\"Tai_Viet\",bmp:\"ꪀ-ꫂꫛ-꫟\"},{name:\"Takri\",astral:\"�[�-��-�]\"},{name:\"Tamil\",bmp:\"ஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-்ௐௗ௦-௺\"},{name:\"Tangut\",astral:\"𖿠|[�-�][�-�]|�[�-�]|�[�-�]\"},{name:\"Telugu\",bmp:\"ఀ-ఌఎ-ఐఒ-నప-హఽ-ౄె-ైొ-్ౕౖౘ-ౚౠ-ౣ౦-౯౸-౿\"},{name:\"Thaana\",bmp:\"ހ-ޱ\"},{name:\"Thai\",bmp:\"ก-ฺเ-๛\"},{name:\"Tibetan\",bmp:\"ༀ-ཇཉ-ཬཱ-ྗྙ-ྼ྾-࿌࿎-࿔࿙࿚\"},{name:\"Tifinagh\",bmp:\"ⴰ-ⵧⵯ⵰⵿\"},{name:\"Tirhuta\",astral:\"�[�-��-�]\"},{name:\"Ugaritic\",astral:\"�[�-��]\"},{name:\"Vai\",bmp:\"ꔀ-ꘫ\"},{name:\"Warang_Citi\",astral:\"�[�-��]\"},{name:\"Yi\",bmp:\"ꀀ-ꒌ꒐-꓆\"},{name:\"Zanabazar_Square\",astral:\"�[�-�]\"}]},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(){this.partialQueries=[],this.suggestions=[],this.analyticsLengthLimit=256}return e.prototype.buildCustomDataForPartialQueries=function(){return this.partialQuery=i.last(this.partialQueries),{partialQueries:this.cleanCustomData(this.partialQueries),suggestionRanking:this.suggestionRanking,suggestions:this.cleanCustomData(this.suggestions),partialQuery:this.partialQuery}},e.prototype.cleanCustomData=function(e,t){var n=this;void 0===t&&(t=this.analyticsLengthLimit);var i=this.filterOutConsecutiveValues(e),o=i.map(function(e){return n.removeSemicolons(e)}),r=this.reduceAnalyticsToLengthLimit(o,t),s=r.reverse();return s.join(\";\").length>=this.analyticsLengthLimit?this.cleanCustomData(s,t-10):s.join(\";\")},e.prototype.filterOutConsecutiveValues=function(e){return i.compact(i.filter(e,function(e,t,n){return 0===t||e!==n[t-1]}))},e.prototype.removeSemicolons=function(e){return e.replace(/;/g,\"\")},e.prototype.reduceAnalyticsToLengthLimit=function(e,t){var n=[];return i.reduceRight(e,function(e,i){var o=e+i.length;return o<=t&&n.push(i),o},0),n},e}();t.OmniboxAnalytics=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(9),r=n(11),s=n(0),a=n(28),u=function(){function e(){}return e.isAutoLayoutAdjustable=function(e){return\"isCurrentlyDisplayed\"in e},e.initializeAutoLayoutAdjustment=function(e,t){var n=this;if(this.autoLayoutAdjustmentComponent.has(e)||this.autoLayoutAdjustmentComponent.set(e,[]),this.autoLayoutAdjustmentComponent.get(e).push(t),!this.autoLayoutAdjustmentHandlers.has(e)){var o=function(){return i.$$(e).on(r.QueryEvents.deferredQuerySuccess,function(){var t=n.findColumn(e);n.everyStandardComponentsAreInvisible(e)&&n.columnsDoesNotContainVisibleCustomElement(t)?i.$$(e).addClass(\"coveo-no-visible-facet\"):i.$$(e).removeClass(\"coveo-no-visible-facet\")})};o(),this.autoLayoutAdjustmentHandlers.set(e,o)}},e.columnsDoesNotContainVisibleCustomElement=function(e){var t=this;if(!e)return!0;var n=i.$$(e).children(),o=[\"coveo-facet-header-filter-by-container\",\"coveo-topSpace\",\"coveo-bottomSpace\"];return s.every(n,function(e){if(null!=s.find(o,function(t){return i.$$(e).hasClass(t)}))return!0;try{var n=a.get(e);if(n&&t.isAutoLayoutAdjustable(n))return!0}catch(e){}return!i.$$(e).isVisible()})},e.everyStandardComponentsAreInvisible=function(e){var t=this.autoLayoutAdjustmentComponent.get(e);return s.every(t,function(e){return!e.isCurrentlyDisplayed()})},e.findColumn=function(e){var t=i.$$(e).find(\".coveo-facet-column\");if(!t){new o.Logger(\"ResponsiveFacets\").info(\"No element with class coveo-facet-column. Facet column auto layout adjustment cannot be enabled\")}return t},e.autoLayoutAdjustmentComponent=new Map,e.autoLayoutAdjustmentHandlers=new Map,e}();t.FacetColumnAutoLayoutAdjustment=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(13),o=n(49),r=function(){function e(e){this.root=e}return e.prototype.handleFacetValueState=function(e){var t=o.ComponentsTypes.getAllFacetsInstance(this.root),n=e.fv,i=new s(e,n,t),r=new a(e,n),u=Object.keys(n),l=u.filter(function(e){return n[e]&&n[e].length>0}).filter(function(e){return!i.tryTransform(e,n[e])});r.transform(l)},e}();t.FacetValueStateHandler=r;var s=function(){function e(e,t,n){this.queryState=e,this.facetValueState=t,this.allFacets=n}return e.prototype.tryTransform=function(e,t){var n=this,o=this.allFacets.filter(function(t){return t.options.field==e});return o.length>0&&(delete this.facetValueState[e],o.forEach(function(e){return n.queryState[i.QueryStateModel.getFacetId(e.options.id)]=t}),!0)},e}(),a=function(){function e(e,t){this.queryState=e,this.facetValueState=t}return e.prototype.transform=function(e){var t=this,n=e.map(function(e){return t.facetValueIntoQuery(e)});n.length>0&&(this.queryState[i.QueryStateModel.attributesEnum.hq]=n.join(\" AND \"))},e.prototype.facetValueIntoQuery=function(e){var t=this.facetValueState[e];return delete this.facetValueState[e],e+'==\"'+t+'\"'},e}()},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(7),o=n(1),r=n(0),s=n(2),a=n(121),u=function(){function e(){}return e.findDOMElementsToIgnore=function(e,t){var n=this,i=[];return r.each(t,function(t){var s=n.findDOMElementsMatchingComponentId(e,t);i=a.Utils.concatWithoutDuplicate(i,s),r.each(s,function(e){var t=o.$$(e).findAll(\"*\");i=a.Utils.concatWithoutDuplicate(i,t)})}),i},e.findDOMElementsToInitialize=function(e,t){var n=this,u=[];return r.each(s.Initialization.getListOfRegisteredComponents(),function(l){var c=[];c=a.Utils.concatWithoutDuplicate(c,n.findDOMElementsMatchingComponentId(e,l));var p=s.Initialization.componentAliases[l];r.each(p,function(t){c=a.Utils.concatWithoutDuplicate(c,n.findDOMElementsMatchingComponentId(e,t))}),o.$$(e).hasClass(i.Component.computeCssClassNameForType(\"\"+l))&&!r.contains(t,e)&&c.push(e),u.push({componentClassId:l,htmlElements:r.difference(c,t)})}),u},e.findDOMElementsMatchingComponentId=function(e,t){var n=i.Component.computeCssClassNameForType(\"\"+t);return o.$$(e).findAll(\".\"+n)},e}();t.InitializationHelper=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(e){void 0===e&&(e=[]),this.analyticsClients=e,this.isContextual=!1,this.endpoint=i.first(this.analyticsClients).endpoint}return e.prototype.isActivated=function(){return i.some(this.analyticsClients,function(e){return e.isActivated()})},e.prototype.getCurrentEventCause=function(){return i.find(i.map(this.analyticsClients,function(e){return e.getCurrentEventCause()}),function(e){return null!=e})},e.prototype.getCurrentEventMeta=function(){return i.find(i.map(this.analyticsClients,function(e){return e.getCurrentEventMeta()}),function(e){return null!=e})},e.prototype.logSearchEvent=function(e,t){i.each(this.analyticsClients,function(n){return n.logSearchEvent(e,t)})},e.prototype.logSearchAsYouType=function(e,t){i.each(this.analyticsClients,function(n){return n.logSearchEvent(e,t)})},e.prototype.logClickEvent=function(e,t,n,o){return Promise.all(i.map(this.analyticsClients,function(i){return i.logClickEvent(e,t,n,o)})).then(function(e){return i.first(e)})},e.prototype.logCustomEvent=function(e,t,n){return Promise.all(i.map(this.analyticsClients,function(i){return i.logCustomEvent(e,t,n)})).then(function(e){return i.first(e)})},e.prototype.getTopQueries=function(e){var t=this;return Promise.all(i.map(this.analyticsClients,function(t){return t.getTopQueries(e)})).then(function(n){return t.mergeTopQueries(n,e.pageSize)})},e.prototype.getCurrentVisitIdPromise=function(){return i.first(this.analyticsClients).getCurrentVisitIdPromise()},e.prototype.getCurrentVisitId=function(){return i.first(this.analyticsClients).getCurrentVisitId()},e.prototype.sendAllPendingEvents=function(){i.each(this.analyticsClients,function(e){return e.sendAllPendingEvents()})},e.prototype.warnAboutSearchEvent=function(){i.each(this.analyticsClients,function(e){return e.warnAboutSearchEvent()})},e.prototype.cancelAllPendingEvents=function(){i.each(this.analyticsClients,function(e){return e.cancelAllPendingEvents()})},e.prototype.getPendingSearchEvent=function(){return i.first(this.analyticsClients).getPendingSearchEvent()},e.prototype.setOriginContext=function(e){i.each(this.analyticsClients,function(t){return t.setOriginContext(e)})},e.prototype.mergeTopQueries=function(e,t){return void 0===t&&(t=5),i.chain(e).flatten().first(t).value()},e}();t.MultiAnalyticsClient=o},function(e,t,n){/*!\r\n * Pikaday\r\n *\r\n * Copyright © 2014 David Bushell | BSD & MIT license | https://github.com/dbushell/Pikaday\r\n */\r\n!function(t,i){\"use strict\";var o;try{o=n(123)}catch(e){}e.exports=i(o)}(0,function(e){\"use strict\";var t=\"function\"==typeof e,n=!!window.addEventListener,i=window.document,o=window.setTimeout,r=function(e,t,i,o){n?e.addEventListener(t,i,!!o):e.attachEvent(\"on\"+t,i)},s=function(e,t,i,o){n?e.removeEventListener(t,i,!!o):e.detachEvent(\"on\"+t,i)},a=function(e){return e.trim?e.trim():e.replace(/^\\s+|\\s+$/g,\"\")},u=function(e,t){return-1!==(\" \"+e.className+\" \").indexOf(\" \"+t+\" \")},l=function(e,t){u(e,t)||(e.className=\"\"===e.className?t:e.className+\" \"+t)},c=function(e,t){e.className=a((\" \"+e.className+\" \").replace(\" \"+t+\" \",\" \"))},p=function(e){return/Array/.test(Object.prototype.toString.call(e))},h=function(e){return/Date/.test(Object.prototype.toString.call(e))&&!isNaN(e.getTime())},d=function(e){var t=e.getDay();return 0===t||6===t},f=function(e){return e%4==0&&e%100!=0||e%400==0},m=function(e,t){return[31,f(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]},y=function(e){h(e)&&e.setHours(0,0,0,0)},g=function(e,t){return e.getTime()===t.getTime()},v=function(e,t,n){var i,o;for(i in t)o=void 0!==e[i],o&&\"object\"==typeof t[i]&&null!==t[i]&&void 0===t[i].nodeName?h(t[i])?n&&(e[i]=new Date(t[i].getTime())):p(t[i])?n&&(e[i]=t[i].slice(0)):e[i]=v({},t[i],n):!n&&o||(e[i]=t[i]);return e},b=function(e,t,n){var o;i.createEvent?(o=i.createEvent(\"HTMLEvents\"),o.initEvent(t,!0,!1),o=v(o,n),e.dispatchEvent(o)):i.createEventObject&&(o=i.createEventObject(),o=v(o,n),e.fireEvent(\"on\"+t,o))},C=function(e){return e.month<0&&(e.year-=Math.ceil(Math.abs(e.month)/12),e.month+=12),e.month>11&&(e.year+=Math.floor(Math.abs(e.month)/12),e.month-=12),e},S={field:null,bound:void 0,position:\"bottom left\",reposition:!0,format:\"YYYY-MM-DD\",toString:null,parse:null,defaultDate:null,setDefaultDate:!1,firstDay:0,formatStrict:!1,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,pickWholeWeek:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:\"\",showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,enableSelectionDaysInNextAndPreviousMonths:!1,numberOfMonths:1,mainCalendar:\"left\",container:void 0,blurFieldOnSelect:!0,i18n:{previousMonth:\"Previous Month\",nextMonth:\"Next Month\",months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],weekdays:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],weekdaysShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"]},theme:null,events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null,keyboardInput:!0},w=function(e,t,n){for(t+=e.firstDay;t>=7;)t-=7;return n?e.i18n.weekdaysShort[t]:e.i18n.weekdays[t]},x=function(e){var t=[],n=\"false\";if(e.isEmpty){if(!e.showDaysInNextAndPreviousMonths)return'<td class=\"is-empty\"></td>';t.push(\"is-outside-current-month\"),e.enableSelectionDaysInNextAndPreviousMonths||t.push(\"is-selection-disabled\")}return e.isDisabled&&t.push(\"is-disabled\"),e.isToday&&t.push(\"is-today\"),e.isSelected&&(t.push(\"is-selected\"),n=\"true\"),e.hasEvent&&t.push(\"has-event\"),e.isInRange&&t.push(\"is-inrange\"),e.isStartRange&&t.push(\"is-startrange\"),e.isEndRange&&t.push(\"is-endrange\"),'<td data-day=\"'+e.day+'\" class=\"'+t.join(\" \")+'\" aria-selected=\"'+n+'\"><button class=\"pika-button pika-day\" type=\"button\" data-pika-year=\"'+e.year+'\" data-pika-month=\"'+e.month+'\" data-pika-day=\"'+e.day+'\">'+e.day+\"</button></td>\"},_=function(e,t,n){var i=new Date(n,0,1);return'<td class=\"pika-week\">'+Math.ceil(((new Date(n,t,e)-i)/864e5+i.getDay()+1)/7)+\"</td>\"},O=function(e,t,n,i){return'<tr class=\"pika-row'+(n?\" pick-whole-week\":\"\")+(i?\" is-selected\":\"\")+'\">'+(t?e.reverse():e).join(\"\")+\"</tr>\"},E=function(e){return\"<tbody>\"+e.join(\"\")+\"</tbody>\"},A=function(e){var t,n=[];for(e.showWeekNumber&&n.push(\"<th></th>\"),t=0;t<7;t++)n.push('<th scope=\"col\"><abbr title=\"'+w(e,t)+'\">'+w(e,t,!0)+\"</abbr></th>\");return\"<thead><tr>\"+(e.isRTL?n.reverse():n).join(\"\")+\"</tr></thead>\"},T=function(e,t,n,i,o,r){var s,a,u,l,c,h=e._o,d=n===h.minYear,f=n===h.maxYear,m='<div id=\"'+r+'\" class=\"pika-title\" role=\"heading\" aria-live=\"assertive\">',y=!0,g=!0;for(u=[],s=0;s<12;s++)u.push('<option value=\"'+(n===o?s-t:12+s-t)+'\"'+(s===i?' selected=\"selected\"':\"\")+(d&&s<h.minMonth||f&&s>h.maxMonth?'disabled=\"disabled\"':\"\")+\">\"+h.i18n.months[s]+\"</option>\");for(l='<div class=\"pika-label\">'+h.i18n.months[i]+'<select class=\"pika-select pika-select-month\" tabindex=\"-1\">'+u.join(\"\")+\"</select></div>\",p(h.yearRange)?(s=h.yearRange[0],a=h.yearRange[1]+1):(s=n-h.yearRange,a=1+n+h.yearRange),u=[];s<a&&s<=h.maxYear;s++)s>=h.minYear&&u.push('<option value=\"'+s+'\"'+(s===n?' selected=\"selected\"':\"\")+\">\"+s+\"</option>\");return c='<div class=\"pika-label\">'+n+h.yearSuffix+'<select class=\"pika-select pika-select-year\" tabindex=\"-1\">'+u.join(\"\")+\"</select></div>\",h.showMonthAfterYear?m+=c+l:m+=l+c,d&&(0===i||h.minMonth>=i)&&(y=!1),f&&(11===i||h.maxMonth<=i)&&(g=!1),0===t&&(m+='<button class=\"pika-prev'+(y?\"\":\" is-disabled\")+'\" type=\"button\">'+h.i18n.previousMonth+\"</button>\"),t===e._o.numberOfMonths-1&&(m+='<button class=\"pika-next'+(g?\"\":\" is-disabled\")+'\" type=\"button\">'+h.i18n.nextMonth+\"</button>\"),m+=\"</div>\"},R=function(e,t,n){return'<table cellpadding=\"0\" cellspacing=\"0\" class=\"pika-table\" role=\"grid\" aria-labelledby=\"'+n+'\">'+A(e)+E(t)+\"</table>\"},F=function(s){var a=this,l=a.config(s);a._onMouseDown=function(e){if(a._v){e=e||window.event;var t=e.target||e.srcElement;if(t)if(u(t,\"is-disabled\")||(!u(t,\"pika-button\")||u(t,\"is-empty\")||u(t.parentNode,\"is-disabled\")?u(t,\"pika-prev\")?a.prevMonth():u(t,\"pika-next\")&&a.nextMonth():(a.setDate(new Date(t.getAttribute(\"data-pika-year\"),t.getAttribute(\"data-pika-month\"),t.getAttribute(\"data-pika-day\"))),l.bound&&o(function(){a.hide(),l.blurFieldOnSelect&&l.field&&l.field.blur()},100))),u(t,\"pika-select\"))a._c=!0;else{if(!e.preventDefault)return e.returnValue=!1,!1;e.preventDefault()}}},a._onChange=function(e){e=e||window.event;var t=e.target||e.srcElement;t&&(u(t,\"pika-select-month\")?a.gotoMonth(t.value):u(t,\"pika-select-year\")&&a.gotoYear(t.value))},a._onKeyChange=function(e){if(e=e||window.event,a.isVisible())switch(e.keyCode){case 13:case 27:l.field&&l.field.blur();break;case 37:e.preventDefault(),a.adjustDate(\"subtract\",1);break;case 38:a.adjustDate(\"subtract\",7);break;case 39:a.adjustDate(\"add\",1);break;case 40:a.adjustDate(\"add\",7)}},a._onInputChange=function(n){var i;n.firedBy!==a&&(l.parse?i=l.parse(l.field.value,l.format):t?(i=e(l.field.value,l.format,l.formatStrict),i=i&&i.isValid()?i.toDate():null):i=new Date(Date.parse(l.field.value)),h(i)&&a.setDate(i),a._v||a.show())},a._onInputFocus=function(){a.show()},a._onInputClick=function(){a.show()},a._onInputBlur=function(){var e=i.activeElement;do{if(u(e,\"pika-single\"))return}while(e=e.parentNode);a._c||(a._b=o(function(){a.hide()},50)),a._c=!1},a._onClick=function(e){e=e||window.event;var t=e.target||e.srcElement,i=t;if(t){!n&&u(t,\"pika-select\")&&(t.onchange||(t.setAttribute(\"onchange\",\"return;\"),r(t,\"change\",a._onChange)));do{if(u(i,\"pika-single\")||i===l.trigger)return}while(i=i.parentNode);a._v&&t!==l.trigger&&i!==l.trigger&&a.hide()}},a.el=i.createElement(\"div\"),a.el.className=\"pika-single\"+(l.isRTL?\" is-rtl\":\"\")+(l.theme?\" \"+l.theme:\"\"),r(a.el,\"mousedown\",a._onMouseDown,!0),r(a.el,\"touchend\",a._onMouseDown,!0),r(a.el,\"change\",a._onChange),l.keyboardInput&&r(i,\"keydown\",a._onKeyChange),l.field&&(l.container?l.container.appendChild(a.el):l.bound?i.body.appendChild(a.el):l.field.parentNode.insertBefore(a.el,l.field.nextSibling),r(l.field,\"change\",a._onInputChange),l.defaultDate||(t&&l.field.value?l.defaultDate=e(l.field.value,l.format).toDate():l.defaultDate=new Date(Date.parse(l.field.value)),l.setDefaultDate=!0));var c=l.defaultDate;h(c)?l.setDefaultDate?a.setDate(c,!0):a.gotoDate(c):a.gotoDate(new Date),l.bound?(this.hide(),a.el.className+=\" is-bound\",r(l.trigger,\"click\",a._onInputClick),r(l.trigger,\"focus\",a._onInputFocus),r(l.trigger,\"blur\",a._onInputBlur)):this.show()};return F.prototype={config:function(e){this._o||(this._o=v({},S,!0));var t=v(this._o,e,!0);t.isRTL=!!t.isRTL,t.field=t.field&&t.field.nodeName?t.field:null,t.theme=\"string\"==typeof t.theme&&t.theme?t.theme:null,t.bound=!!(void 0!==t.bound?t.field&&t.bound:t.field),t.trigger=t.trigger&&t.trigger.nodeName?t.trigger:t.field,t.disableWeekends=!!t.disableWeekends,t.disableDayFn=\"function\"==typeof t.disableDayFn?t.disableDayFn:null;var n=parseInt(t.numberOfMonths,10)||1;if(t.numberOfMonths=n>4?4:n,h(t.minDate)||(t.minDate=!1),h(t.maxDate)||(t.maxDate=!1),t.minDate&&t.maxDate&&t.maxDate<t.minDate&&(t.maxDate=t.minDate=!1),t.minDate&&this.setMinDate(t.minDate),t.maxDate&&this.setMaxDate(t.maxDate),p(t.yearRange)){var i=(new Date).getFullYear()-10;t.yearRange[0]=parseInt(t.yearRange[0],10)||i,t.yearRange[1]=parseInt(t.yearRange[1],10)||i}else t.yearRange=Math.abs(parseInt(t.yearRange,10))||S.yearRange,t.yearRange>100&&(t.yearRange=100);return t},toString:function(n){return n=n||this._o.format,h(this._d)?this._o.toString?this._o.toString(this._d,n):t?e(this._d).format(n):this._d.toDateString():\"\"},getMoment:function(){return t?e(this._d):null},setMoment:function(n,i){t&&e.isMoment(n)&&this.setDate(n.toDate(),i)},getDate:function(){return h(this._d)?new Date(this._d.getTime()):null},setDate:function(e,t){if(!e)return this._d=null,this._o.field&&(this._o.field.value=\"\",b(this._o.field,\"change\",{firedBy:this})),this.draw();if(\"string\"==typeof e&&(e=new Date(Date.parse(e))),h(e)){var n=this._o.minDate,i=this._o.maxDate;h(n)&&e<n?e=n:h(i)&&e>i&&(e=i),this._d=new Date(e.getTime()),y(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),b(this._o.field,\"change\",{firedBy:this})),t||\"function\"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},gotoDate:function(e){var t=!0;if(h(e)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),i=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),o=e.getTime();i.setMonth(i.getMonth()+1),i.setDate(i.getDate()-1),t=o<n.getTime()||i.getTime()<o}t&&(this.calendars=[{month:e.getMonth(),year:e.getFullYear()}],\"right\"===this._o.mainCalendar&&(this.calendars[0].month+=1-this._o.numberOfMonths)),this.adjustCalendars()}},adjustDate:function(e,t){var n,i=this.getDate()||new Date,o=24*parseInt(t)*60*60*1e3;\"add\"===e?n=new Date(i.valueOf()+o):\"subtract\"===e&&(n=new Date(i.valueOf()-o)),this.setDate(n)},adjustCalendars:function(){this.calendars[0]=C(this.calendars[0]);for(var e=1;e<this._o.numberOfMonths;e++)this.calendars[e]=C({month:this.calendars[0].month+e,year:this.calendars[0].year});this.draw()},gotoToday:function(){this.gotoDate(new Date)},gotoMonth:function(e){isNaN(e)||(this.calendars[0].month=parseInt(e,10),this.adjustCalendars())},nextMonth:function(){this.calendars[0].month++,this.adjustCalendars()},prevMonth:function(){this.calendars[0].month--,this.adjustCalendars()},gotoYear:function(e){isNaN(e)||(this.calendars[0].year=parseInt(e,10),this.adjustCalendars())},setMinDate:function(e){e instanceof Date?(y(e),this._o.minDate=e,this._o.minYear=e.getFullYear(),this._o.minMonth=e.getMonth()):(this._o.minDate=S.minDate,this._o.minYear=S.minYear,this._o.minMonth=S.minMonth,this._o.startRange=S.startRange),this.draw()},setMaxDate:function(e){e instanceof Date?(y(e),this._o.maxDate=e,this._o.maxYear=e.getFullYear(),this._o.maxMonth=e.getMonth()):(this._o.maxDate=S.maxDate,this._o.maxYear=S.maxYear,this._o.maxMonth=S.maxMonth,this._o.endRange=S.endRange),this.draw()},setStartRange:function(e){this._o.startRange=e},setEndRange:function(e){this._o.endRange=e},draw:function(e){if(this._v||e){var t,n=this._o,i=n.minYear,r=n.maxYear,s=n.minMonth,a=n.maxMonth,u=\"\";this._y<=i&&(this._y=i,!isNaN(s)&&this._m<s&&(this._m=s)),this._y>=r&&(this._y=r,!isNaN(a)&&this._m>a&&(this._m=a)),t=\"pika-title-\"+Math.random().toString(36).replace(/[^a-z]+/g,\"\").substr(0,2);for(var l=0;l<n.numberOfMonths;l++)u+='<div class=\"pika-lendar\">'+T(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year,t)+this.render(this.calendars[l].year,this.calendars[l].month,t)+\"</div>\";this.el.innerHTML=u,n.bound&&\"hidden\"!==n.field.type&&o(function(){n.trigger.focus()},1),\"function\"==typeof this._o.onDraw&&this._o.onDraw(this),n.bound&&n.field.setAttribute(\"aria-label\",\"Use the arrow keys to pick a date\")}},adjustPosition:function(){var e,t,n,o,r,s,a,u,l,c;if(!this._o.container){if(this.el.style.position=\"absolute\",e=this._o.trigger,t=e,n=this.el.offsetWidth,o=this.el.offsetHeight,r=window.innerWidth||i.documentElement.clientWidth,s=window.innerHeight||i.documentElement.clientHeight,a=window.pageYOffset||i.body.scrollTop||i.documentElement.scrollTop,\"function\"==typeof e.getBoundingClientRect)c=e.getBoundingClientRect(),u=c.left+window.pageXOffset,l=c.bottom+window.pageYOffset;else for(u=t.offsetLeft,l=t.offsetTop+t.offsetHeight;t=t.offsetParent;)u+=t.offsetLeft,l+=t.offsetTop;(this._o.reposition&&u+n>r||this._o.position.indexOf(\"right\")>-1&&u-n+e.offsetWidth>0)&&(u=u-n+e.offsetWidth),(this._o.reposition&&l+o>s+a||this._o.position.indexOf(\"top\")>-1&&l-o-e.offsetHeight>0)&&(l=l-o-e.offsetHeight),this.el.style.left=u+\"px\",this.el.style.top=l+\"px\"}},render:function(e,t,n){var i=this._o,o=new Date,r=m(e,t),s=new Date(e,t,1).getDay(),a=[],u=[];y(o),i.firstDay>0&&(s-=i.firstDay)<0&&(s+=7);for(var l=0===t?11:t-1,c=11===t?0:t+1,p=0===t?e-1:e,f=11===t?e+1:e,v=m(p,l),b=r+s,C=b;C>7;)C-=7;b+=7-C;for(var S=!1,w=0,E=0;w<b;w++){var A=new Date(e,t,w-s+1),T=!!h(this._d)&&g(A,this._d),F=g(A,o),I=-1!==i.events.indexOf(A.toDateString()),M=w<s||w>=r+s,P=w-s+1,D=t,$=e,N=i.startRange&&g(i.startRange,A),V=i.endRange&&g(i.endRange,A),k=i.startRange&&i.endRange&&i.startRange<A&&A<i.endRange,L=i.minDate&&A<i.minDate||i.maxDate&&A>i.maxDate||i.disableWeekends&&d(A)||i.disableDayFn&&i.disableDayFn(A);M&&(w<s?(P=v+P,D=l,$=p):(P-=r,D=c,$=f));var B={day:P,month:D,year:$,hasEvent:I,isSelected:T,isToday:F,isDisabled:L,isEmpty:M,isStartRange:N,isEndRange:V,isInRange:k,showDaysInNextAndPreviousMonths:i.showDaysInNextAndPreviousMonths,enableSelectionDaysInNextAndPreviousMonths:i.enableSelectionDaysInNextAndPreviousMonths};i.pickWholeWeek&&T&&(S=!0),u.push(x(B)),7==++E&&(i.showWeekNumber&&u.unshift(_(w-s,t,e)),a.push(O(u,i.isRTL,i.pickWholeWeek,S)),u=[],E=0,S=!1)}return R(i,a,n)},isVisible:function(){return this._v},show:function(){this.isVisible()||(this._v=!0,this.draw(),c(this.el,\"is-hidden\"),this._o.bound&&(r(i,\"click\",this._onClick),this.adjustPosition()),\"function\"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var e=this._v;!1!==e&&(this._o.bound&&s(i,\"click\",this._onClick),this.el.style.position=\"static\",this.el.style.left=\"auto\",this.el.style.top=\"auto\",l(this.el,\"is-hidden\"),this._v=!1,void 0!==e&&\"function\"==typeof this._o.onClose&&this._o.onClose.call(this))},destroy:function(){var e=this._o;this.hide(),s(this.el,\"mousedown\",this._onMouseDown,!0),s(this.el,\"touchend\",this._onMouseDown,!0),s(this.el,\"change\",this._onChange),e.keyboardInput&&s(i,\"keydown\",this._onKeyChange),e.field&&(s(e.field,\"change\",this._onInputChange),e.bound&&(s(e.trigger,\"click\",this._onInputClick),s(e.trigger,\"focus\",this._onInputFocus),s(e.trigger,\"blur\",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},F})},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(113);t.TemplateHelpers=i.TemplateHelpers;var o=n(88);t.TemplateList=o.TemplateList;var r=n(65);t.TemplateCache=r.TemplateCache;var s=n(99);t.HtmlTemplate=s.HtmlTemplate;var a=n(55);t.UnderscoreTemplate=a.UnderscoreTemplate},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"ChatterLikedBy\",r)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=[\"sflikedby\",\"sflikedbyid\",\"clickableuri\",\"sffeeditemid\"];t.registerFields=i},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"ChatterPostAttachment\",r)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=[\"sfcontentversionid\",\"sffeeditemid\",\"sfcontentfilename\",\"sftitle\",\"sf_title\"];t.registerFields=i},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"ChatterPostedBy\",r)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=[\"sfcreatedby\",\"sfcreatedbyid\",\"sffeeditemid\",\"sfuserid\",\"sfinsertedbyid\",\"sfparentid\",\"sfparentname\"];t.registerFields=i},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"ChatterTopic\",r)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=[\"coveochatterfeedtopics\"];t.registerFields=i},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"Icon\",r)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=[\"objecttype\",\"filetype\"];t.registerFields=i},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"PrintableUri\",r)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=[\"parents\"];t.registerFields=i},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"Quickview\",r)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=[\"urihash\",\"collection\",\"source\",\"author\",\"date\"];t.registerFields=i},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"ResultLink\",t.fields)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2);t.fields=[\"outlookformacuri\",\"outlookuri\",\"connectortype\",\"urihash\",\"collection\",\"source\",\"author\"],t.registerFields=i},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"FollowItem\",r)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=[\"urihash\"];t.registerFields=i},function(e,t,n){\"use strict\";function i(){o.Initialization.registerComponentFields(\"Thumbnail\",r)}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(2),r=[\"outlookformacuri\",\"outlookuri\",\"connectortype\",\"urihash\",\"collection\",\"source\"];t.registerFields=i},function(e,t,n){\"use strict\";function i(e){if(void 0==window.Coveo?window.Coveo=e:o.each(o.keys(e),function(t){window.Coveo[t]=e[t]}),void 0==window.__extends){var t=function(e,t){function n(){this.constructor=e}for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i]);e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)};window.__extends=t}}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0);t.swapVar=i},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=n(88),s=n(0),a=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.defaultTemplate='<td><a class=\"CoveoResultLink\"></a></td>\\n                             <td><span class=\"CoveoExcerpt\"></span></td>\\n                             <td><span class=\"CoveoFieldValue\" data-field=\"@date\" data-helper=\"date\"></span></td>',t.defaultRoledTemplates={\"table-header\":'<th style=\"width: 40%\">Link</th>\\n                     <th>Excerpt</th>\\n                     <th style=\"width: 20%\"\\n                         class=\"CoveoSort coveo-table-header-sort\"\\n                         data-sort-criteria=\"date ascending,date descending\"\\n                         data-display-unselected-icon=\"false\">Date</th>',\"table-footer\":\"<th>Link</th>\\n                     <th>Excerpt</th>\\n                     <th>Date</th>\"},t}return i(t,e),t.prototype.instantiateRoleToString=function(e){var t=s.find(this.templates,function(t){return t.role===e});return t?t.instantiateToString(void 0,{}):this.defaultRoledTemplates[e]},t.prototype.instantiateRoleToElement=function(e){var t=this,n=s.find(this.templates,function(t){return t.role===e});if(n)return n.instantiateToElement(void 0,{});var i=new o.Template(function(){return t.defaultRoledTemplates[e]});return i.layout=\"table\",i.instantiateToElement(void 0)},t.prototype.getFallbackTemplate=function(){var e=this;return new o.Template(function(){return e.defaultTemplate})},t.prototype.hasTemplateWithRole=function(e){return s.find(this.templates,function(t){return t.role===e})},t}(r.TemplateList);t.TableTemplate=a},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.prototype.instantiateToString=function(e){return'<div class=\"coveo-result-frame\">\\n        <div class=\"coveo-result-row\">\\n          <div class=\"coveo-result-cell\" style=\"width:40px;text-align:center;vertical-align:middle;\">\\n            <span class=\"CoveoIcon\" data-small=\"true\" data-with-label=\"false\">\\n            </span>\\n          </div>\\n          <div class=\"coveo-result-cell\" style=\"padding:0 0 3px 5px;vertical-align:middle\">\\n            <div class=\"coveo-result-row\">\\n              <div class=\"coveo-result-cell\" style=\"font-size:10pt;\">\\n                <a class=\"CoveoResultLink\" style=\"display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis\">\\n                </a>\\n              </div>\\n            </div>\\n          </div>\\n        </div>\\n      </div>'},t.prototype.instantiateToElement=function(e){var t=this;return new Promise(function(n,i){var o=document.createElement(\"div\");o.innerHTML=t.instantiateToString(e),n(o)})},t}(o.Template);t.DefaultRecommendationTemplate=r},function(e,t,n){\"use strict\";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(23),s=n(87),a=n(0),u=n(1),l=n(9),c=function(){function e(e){this.args=e}return e.prototype.buildResults=function(e,t,n){return i(this,void 0,void 0,function(){var i,r,u=this;return o(this,function(o){return i=[],r=a.map(e.results,function(e,o){return u.buildResult(e,t,n).then(function(e){return null!=e&&i.push({elem:e,idx:o}),s.ResultList.resultCurrentlyBeingRendered=null,e})}),[2,Promise.all(r).then(function(){return a.pluck(a.sortBy(i,\"idx\"),\"elem\")})]})})},e.prototype.buildResult=function(e,t,n){return i(this,void 0,void 0,function(){var i;return o(this,function(o){switch(o.label){case 0:return r.Assert.exists(e),r.QueryUtils.setStateObjectOnQueryResult(this.args.queryStateModel.get(),e),r.QueryUtils.setSearchInterfaceObjectOnQueryResult(this.args.searchInterface,e),s.ResultList.resultCurrentlyBeingRendered=e,[4,this.createHtmlElement(e,t)];case 1:return i=o.sent(),null!=i&&r.Component.bindResultToElement(i,e),n.push(e),[4,this.autoCreateComponentsInsideResult(i,e).initResult];case 2:return o.sent(),this.verifyChildren(i),[2,i]}})})},e.prototype.autoCreateComponentsInsideResult=function(e,t){return r.Assert.exists(e),r.Initialization.automaticallyCreateComponentsInsideResult(e,t)},e.prototype.createHtmlElement=function(e,t){return this.args.resultTemplate.instantiateToElement(e,{wrapInDiv:!0,checkCondition:!0,currentLayout:t,responsiveComponents:this.args.searchInterface.responsiveComponents})},e.prototype.verifyChildren=function(e){u.$$(e).find(\".CoveoResultLink\")||new l.Logger(e).warn('Result does not contain a \"CoveoResultLink\" component, please verify the result template',this.args.resultTemplate)},e}();t.TemplateToHtml=c},function(e,t,n){\"use strict\";function i(){var e,t=O.Component.getComponentRef(\"ResultList\");if(t&&(e=t.resultCurrentlyBeingRendered),!e){var n=O.Component.getComponentRef(\"Quickview\");n&&(e=n.resultCurrentlyBeingRendered)}return e}function o(){var e=i();if(e)return e.termsToHighlight}function r(){var e=i();if(e)return e.phrasesToHighlight}function s(e,t){return d.Utils.isNonEmptyArray(_.keys(e))||d.Utils.isNonEmptyArray(_.keys(t))}var a=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var u=n(113),l=n(66),c=n(29),p=n(129),h=n(174),d=n(4),f=n(19),m=n(68),y=n(173),g=n(21),v=n(22),b=n(1),C=n(50),S=n(112),w=n(43),x=n(20),_=n(0),O=n(7),E=n(65),A=function(){function e(){}return e.exportAllHelpersGlobally=function(e){_.each(u.TemplateHelpers.getHelpers(),function(t,n){void 0==e[n]&&(e[n]=t)})},e}();t.CoreHelpers=A,u.TemplateHelpers.registerFieldHelper(\"javascriptEncode\",function(e){return d.Utils.exists(e)?f.StringUtils.javascriptEncode(e):void 0});var T=function(e,t){var n=l.StringAndHoles.shortenString(e,t.length,\"...\");return d.Utils.exists(t.highlights)?l.HighlightUtils.highlightString(n.value,t.highlights,n.holes,t.cssClass||\"highlight\"):n.value};u.TemplateHelpers.registerTemplateHelper(\"shorten\",function(e,t,n,i){return T(e,{length:t,highlights:n,cssClass:i})}),u.TemplateHelpers.registerTemplateHelper(\"shortenv2\",function(e,t){return T(e,t)});var R=function(e,t){var n=l.StringAndHoles.shortenPath(e,t.length);return d.Utils.exists(t.highlights)?l.HighlightUtils.highlightString(n.value,t.highlights,n.holes,t.cssClass||\"highlight\"):n.value};u.TemplateHelpers.registerTemplateHelper(\"shortenPath\",function(e,t,n,i){return R(e,{length:t,highlights:n,cssClass:i})}),u.TemplateHelpers.registerFieldHelper(\"shortenPathv2\",function(e,t){return R(e,t)});var F=function(e,t){var n=l.StringAndHoles.shortenUri(e,t.length);return d.Utils.exists(t.highlights)?l.HighlightUtils.highlightString(n.value,t.highlights,n.holes,t.cssClass||\"highlight\"):n.value};u.TemplateHelpers.registerTemplateHelper(\"shortenUri\",function(e,t,n,i){return F(e,{length:t,highlights:n,cssClass:i})}),u.TemplateHelpers.registerTemplateHelper(\"shortenUriv2\",function(e,t){return F(e,t)});var I=function(e,t){return d.Utils.exists(e)?d.Utils.exists(t.highlights)?l.HighlightUtils.highlightString(e,t.highlights,null,t.cssClass||\"highlight\"):e:void 0};u.TemplateHelpers.registerTemplateHelper(\"highlight\",function(e,t,n){return I(e,{highlights:t,cssClass:n})}),u.TemplateHelpers.registerTemplateHelper(\"highlightv2\",function(e,t){return I(e,t)});var M=function(e,t){return d.Utils.exists(e)&&d.Utils.exists(t.termsToHighlight)&&d.Utils.exists(t.phrasesToHighlight)?s(t.termsToHighlight,t.phrasesToHighlight)?S.StreamHighlightUtils.highlightStreamText(e,t.termsToHighlight,t.phrasesToHighlight,t.opts):e:void 0};u.TemplateHelpers.registerTemplateHelper(\"highlightStreamText\",function(e,t,n,i){return void 0===t&&(t=o()),void 0===n&&(n=r()),M(e,{termsToHighlight:t,phrasesToHighlight:n,opts:i})}),u.TemplateHelpers.registerTemplateHelper(\"highlightStreamTextv2\",function(e,t){var n=a({termsToHighlight:o(),phrasesToHighlight:r()},t);return M(e,n)});var P=function(e,t){return d.Utils.exists(e)&&d.Utils.exists(t.termsToHighlight)&&d.Utils.exists(t.phrasesToHighlight)?s(t.termsToHighlight,t.phrasesToHighlight)?S.StreamHighlightUtils.highlightStreamHTML(e,t.termsToHighlight,t.phrasesToHighlight,t.opts):e:void 0};u.TemplateHelpers.registerTemplateHelper(\"highlightStreamHTML\",function(e,t,n,i){return void 0===t&&(t=o()),void 0===n&&(n=r()),P(e,{termsToHighlight:t,phrasesToHighlight:n,opts:i})}),u.TemplateHelpers.registerTemplateHelper(\"highlightStreamHTMLv2\",function(e,t){return P(e,t)}),u.TemplateHelpers.registerFieldHelper(\"number\",function(e,t){var n=Number(e);return d.Utils.exists(e)?_.isString(t)?f.StringUtils.htmlEncode(x.format(n,t)):f.StringUtils.htmlEncode(n.toString()):void 0}),u.TemplateHelpers.registerFieldHelper(\"date\",function(e,t){return c.DateUtils.dateToString(c.DateUtils.convertFromJsonDateIfNeeded(e),t)}),u.TemplateHelpers.registerFieldHelper(\"time\",function(e,t){return c.DateUtils.timeToString(c.DateUtils.convertFromJsonDateIfNeeded(e),t)}),u.TemplateHelpers.registerFieldHelper(\"dateTime\",function(e,t){return c.DateUtils.dateTimeToString(c.DateUtils.convertFromJsonDateIfNeeded(e),t)}),u.TemplateHelpers.registerFieldHelper(\"emailDateTime\",function(e,t){var n={};n.includeTimeIfThisWeek=!0;var i=_.extend(t,n);return e?c.DateUtils.dateTimeToString(c.DateUtils.convertFromJsonDateIfNeeded(e),i):void 0}),u.TemplateHelpers.registerFieldHelper(\"currency\",function(e,t){return p.CurrencyUtils.currencyToString(e,t)}),u.TemplateHelpers.registerFieldHelper(\"timeSpan\",function(e,t){return void 0===t&&(t={isMilliseconds:!1}),new m.TimeSpan(e,t.isMilliseconds).getHHMMSS()}),u.TemplateHelpers.registerFieldHelper(\"email\",function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i,o,r,s;if(_.isObject(t[0])?(i=t[0].companyDomain,o=t[0].me,r=t[0].lengthLimit,s=t[0].truncateName):(i=t[0],o=t[1],r=t[2],s=t[3]),void 0==r&&(r=2),void 0==s&&(s=!1),_.isString(e)){var a=y.EmailUtils.splitSemicolonSeparatedListOfEmailAddresses(e);return y.EmailUtils.emailAddressesToHyperlinks(a,i,o,r,s)}return _.isArray(e)?y.EmailUtils.emailAddressesToHyperlinks(e,i,o,r,s):void 0}),u.TemplateHelpers.registerTemplateHelper(\"excessEmailToggle\",function(e){b.$$(e).removeClass(\"coveo-active\"),b.$$(e).hasClass(\"coveo-emails-excess-collapsed\")?_.each(b.$$(e).siblings(\".coveo-emails-excess-expanded\"),function(e){b.$$(e).addClass(\"coveo-active\")}):b.$$(e).hasClass(\"coveo-hide-expanded\")&&(b.$$(e.parentElement).addClass(\"coveo-inactive\"),_.each(b.$$(e.parentElement).siblings(\".coveo-emails-excess-collapsed\"),function(e){b.$$(e).addClass(\"coveo-active\")}))}),u.TemplateHelpers.registerFieldHelper(\"anchor\",function(e,t){return h.AnchorUtils.buildAnchor(e,t)}),u.TemplateHelpers.registerFieldHelper(\"image\",function(e,t,n){return void 0===n&&(n=i()),t&&t.srcTemplate?h.ImageUtils.buildImage(f.StringUtils.buildStringTemplateFromResult(t.srcTemplate,n),{alt:t.alt,height:t.height,width:t.width}):h.ImageUtils.buildImage(e,t)}),u.TemplateHelpers.registerTemplateHelper(\"thumbnail\",function(e,t,n){if(void 0===e&&(e=i()),void 0===t&&(t=\"default\"),g.QueryUtils.hasThumbnail(e))return h.ImageUtils.buildImageFromResult(e,C.SearchEndpoint.endpoints[t],n)}),u.TemplateHelpers.registerTemplateHelper(\"fromFileTypeToIcon\",function(e,t){void 0===e&&(e=i()),void 0===t&&(t={});var n=O.Component.getComponentRef(\"Icon\");if(n)return n.createIcon(e,t).outerHTML}),u.TemplateHelpers.registerTemplateHelper(\"attrEncode\",function(e){return(\"\"+e).replace(/&/g,\"&amp;\").replace(/'/g,\"&apos;\").replace(/'/g,\"&quot;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}),u.TemplateHelpers.registerTemplateHelper(\"loadTemplates\",function(e,t){void 0===t&&(t=!0);var n,o=\"\",r=i(),s=!1,a=e;return _.each(e,function(e,t,i){\"default\"==e&&(n=t)}),void 0!=n&&(a=_.omit(e,n)),_.each(a,function(e,n,i){s&&t||(s=s||e,o+=u.TemplateHelpers.getHelper(\"loadTemplate\")(n,e,r))}),s||void 0==n||(o+=u.TemplateHelpers.getHelper(\"loadTemplate\")(n,!0,r)),o});var D=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\"];u.TemplateHelpers.registerFieldHelper(\"size\",function(e,t){for(var n=parseInt(e,10),i=null!=t&&null!=t.precision?t.precision:2,o=null!=t&&null!=t.base?t.base:0;n>1024&&o+1<D.length;)n/=1024,o++;return(n=Math.floor(n*Math.pow(10,i))/Math.pow(10,i))+\" \"+D[o]}),u.TemplateHelpers.registerFieldHelper(\"translatedCaption\",function(e){return w.FacetUtils.tryToGetTranslatedCaption(\"@filetype\",e)}),u.TemplateHelpers.registerTemplateHelper(\"loadTemplate\",function(e,t,n){return void 0===t&&(t=!0),d.Utils.isNullOrUndefined(n)&&(n=i()),t?E.TemplateCache.getTemplate(e).instantiateToString(n,{checkCondition:!1}):\"\"}),u.TemplateHelpers.registerTemplateHelper(\"encodeCarriageReturn\",function(e){return d.Utils.isNullOrUndefined(e)?void 0:f.StringUtils.encodeCarriageReturn(e)}),u.TemplateHelpers.registerTemplateHelper(\"isMobileDevice\",function(){return v.DeviceUtils.isMobileDevice()?v.DeviceUtils.getDeviceName():null})},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(14),r=function(){function e(e){this.rootOptions=e,this.create()}return e.prototype.create=function(){var e=this.rootOptions.iconSVG&&this.rootOptions.iconClassName;this.button=i.$$(\"button\",{className:(\"coveo-dynamic-facet-header-btn \"+(this.rootOptions.className||\"\")).trim()},e?this.rootOptions.iconSVG:this.rootOptions.label),this.rootOptions.action&&this.button.on(\"click\",this.rootOptions.action),e&&(this.button.setAttribute(\"aria-label\",this.rootOptions.label),this.button.setAttribute(\"title\",this.rootOptions.label),o.SVGDom.addClassToSVGInContainer(this.button.el,this.rootOptions.iconClassName)),this.rootOptions.ariaLabel&&this.button.setAttribute(\"aria-label\",this.rootOptions.ariaLabel),void 0!==this.rootOptions.shouldDisplay&&this.toggle(this.rootOptions.shouldDisplay),this.element=this.button.el},e.prototype.toggle=function(e){this.button.toggle(e)},e}();t.DynamicFacetHeaderButton=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(61),o=n(1),r=function(){function e(e,t){void 0===t&&(t=function(){}),this.facetValue=e,this.checkbox=new i.Checkbox(t.bind(this),this.facetValue.displayValue,this.facetValue.selectAriaLabel,\"(\"+this.facetValue.formattedCount+\")\");var n=o.$$(this.checkbox.getElement()).find(\".coveo-checkbox-span-label\"),r=o.$$(this.checkbox.getElement()).find(\".coveo-checkbox-span-label-suffix\");n&&r&&(n.setAttribute(\"title\",this.facetValue.displayValue),n.setAttribute(\"aria-hidden\",\"true\"),r.setAttribute(\"aria-hidden\",\"true\")),this.facetValue.isSelected&&this.checkbox.select(!1),this.element=this.checkbox.getElement()}return e}();t.DynamicFacetValueCheckbox=r},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(499);var i=n(1),o=n(6),r=n(12),s=n(14),a=n(442),u=n(500),l=function(){function e(e){this.options=e,this.element=i.$$(\"div\",{className:\"coveo-dynamic-facet-header\"}).el,this.title=this.createTitle(),i.$$(this.element).append(this.title.el),i.$$(this.element).append(this.createWaitAnimation()),i.$$(this.element).append(this.createClearButton()),this.options.enableCollapse&&this.enableCollapse()}return e.prototype.createClearButton=function(){var e=this;return this.clearButton=new a.DynamicFacetHeaderButton({label:o.l(\"Clear\"),ariaLabel:o.l(\"Clear\",this.options.title),className:\"coveo-dynamic-facet-header-clear\",shouldDisplay:!1,action:function(){return e.options.clear()}}),this.clearButton.element},e.prototype.createCollapseToggle=function(){return this.collapseToggle=new u.DynamicFacetHeaderCollapseToggle(this.options),this.collapseToggle.element},e.prototype.enableCollapse=function(){var e=this;i.$$(this.element).append(this.createCollapseToggle()),i.$$(this.title).addClass(\"coveo-clickable\"),i.$$(this.title).on(\"click\",function(){return e.options.toggleCollapse()})},e.prototype.toggleCollapse=function(e){this.options.enableCollapse&&this.collapseToggle.toggleButtons(e)},e.prototype.createTitle=function(){return i.$$(\"h2\",{className:\"coveo-dynamic-facet-header-title\",ariaLabel:\"\"+o.l(\"FacetTitle\",this.options.title)},i.$$(\"span\",{ariaHidden:!0,title:this.options.title},this.options.title))},e.prototype.createWaitAnimation=function(){return this.waitAnimation=i.$$(\"div\",{className:\"coveo-dynamic-facet-header-wait-animation\"},r.SVGIcons.icons.loading),s.SVGDom.addClassToSVGInContainer(this.waitAnimation.el,\"coveo-dynamic-facet-header-wait-animation-svg\"),this.waitAnimation.toggle(!1),this.waitAnimation.el},e.prototype.toggleClear=function(e){this.clearButton.toggle(e)},e.prototype.showLoading=function(){var t=this;clearTimeout(this.showLoadingTimeout),this.showLoadingTimeout=window.setTimeout(function(){return t.waitAnimation.toggle(!0)},e.showLoadingDelay)},e.prototype.hideLoading=function(){clearTimeout(this.showLoadingTimeout),this.waitAnimation.toggle(!1)},e.showLoadingDelay=2e3,e}();t.DynamicFacetHeader=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(504);var i=n(1),o=n(0),r=n(64),s=n(6),a=n(207),u=function(){function e(e,t){this.facet=e,this.list=i.$$(\"ul\",{className:\"coveo-dynamic-facet-values\"}).el,this.resetValues(),this.valueCreator=new t(this.facet)}return e.prototype.createFromResponse=function(e){var t=this;this.facetValues=e.values.map(function(e,n){return t.valueCreator.createFromResponse(e,n)})},e.prototype.createFromRanges=function(e){var t=this;this.facetValues=e.map(function(e,n){return t.valueCreator.createFromRange(e,n)}).filter(function(e){return!!e})},e.prototype.resetValues=function(){this.facetValues=[]},Object.defineProperty(e.prototype,\"allFacetValues\",{get:function(){return this.facetValues},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"allValues\",{get:function(){return this.facetValues.map(function(e){return e.value})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"selectedValues\",{get:function(){return this.facetValues.filter(function(e){return e.isSelected}).map(function(e){return e.value})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"activeValues\",{get:function(){return this.facetValues.filter(function(e){return!e.isIdle})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"displayedValues\",{get:function(){return this.facetValues.filter(function(e){return!e.isIdle||e.numberOfResults>0})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"hasSelectedValues\",{get:function(){return!!o.findWhere(this.facetValues,{state:r.FacetValueState.selected})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"hasActiveValues\",{get:function(){return!!this.activeValues.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"hasIdleValues\",{get:function(){return!!o.findWhere(this.facetValues,{state:r.FacetValueState.idle})},enumerable:!0,configurable:!0}),e.prototype.clearAll=function(){this.facetValues.forEach(function(e){return e.deselect()})},Object.defineProperty(e.prototype,\"hasValues\",{get:function(){return!!this.allFacetValues.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"hasDisplayedValues\",{get:function(){return!!this.displayedValues.length},enumerable:!0,configurable:!0}),e.prototype.hasSelectedValue=function(e){var t=\"string\"==typeof e?e:e.value,n=o.find(this.facetValues,function(e){return e.equals(t)});return n&&n.isSelected},e.prototype.get=function(e){var t=\"string\"==typeof e?e:e.value,n=o.find(this.facetValues,function(e){return e.equals(t)});if(n)return n;var i=this.valueCreator.createFromValue(t);return i?(this.facetValues.push(i),i):null},e.prototype.buildShowLess=function(){var e=this;return new a.DynamicFacetValueShowMoreLessButton({className:\"coveo-dynamic-facet-show-less\",ariaLabel:s.l(\"ShowLessFacetResults\",this.facet.options.title),label:s.l(\"ShowLess\"),action:function(){e.facet.enableFreezeFacetOrderFlag(),e.facet.showLessValues()}}).element},e.prototype.buildShowMore=function(){var e=this;return new a.DynamicFacetValueShowMoreLessButton({className:\"coveo-dynamic-facet-show-more\",ariaLabel:s.l(\"ShowMoreFacetResults\",this.facet.options.title),label:s.l(\"ShowMore\"),action:function(){e.facet.enableFreezeFacetOrderFlag(),e.facet.showMoreValues()}}).element},Object.defineProperty(e.prototype,\"shouldEnableShowLess\",{get:function(){return this.facetValues.length>this.facet.options.numberOfValues&&this.hasIdleValues},enumerable:!0,configurable:!0}),e.prototype.appendShowMoreLess=function(e){this.facet.options.enableMoreLess&&(this.shouldEnableShowLess&&e.appendChild(this.buildShowLess()),this.facet.moreValuesAvailable&&e.appendChild(this.buildShowMore()))},e.prototype.render=function(){var e=document.createDocumentFragment();return i.$$(this.list).empty(),this.displayedValues.forEach(function(t){e.appendChild(t.renderedElement)}),this.appendShowMoreLess(e),this.list.appendChild(e),this.list},e}();t.DynamicFacetValues=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=n(11),r=n(0),s=function(){function e(e){this.facet=e,this.freezeCurrentValues=!1,this.freezeFacetOrder=!1,this.resetNumberOfValuesToRequest(),this.resetFreezeCurrentValuesDuringQuery()}return e.prototype.resetFreezeCurrentValuesDuringQuery=function(){var e=this;this.facet.bind.onRootElement(o.QueryEvents.duringQuery,function(){e.freezeCurrentValues=!1,e.freezeFacetOrder=!1})},e.prototype.increaseNumberOfValuesToRequest=function(e){this.numberOfValuesToRequest+=e},e.prototype.resetNumberOfValuesToRequest=function(){this.numberOfValuesToRequest=this.facet.options.numberOfValues},e.prototype.enableFreezeCurrentValuesFlag=function(){this.areValuesIncorrectlyAffectedByDependsOn||(this.freezeCurrentValues=!0)},e.prototype.enableFreezeFacetOrderFlag=function(){this.freezeFacetOrder=!0},Object.defineProperty(e.prototype,\"areValuesIncorrectlyAffectedByDependsOn\",{get:function(){return!!this.facet.dependsOnManager.hasDependentFacets&&(!this.facet.dependsOnManager.dependentFacetsHaveSelectedValues&&this.currentValues.length<this.numberOfValuesToRequest)},enumerable:!0,configurable:!0}),e.prototype.putFacetIntoQueryBuilder=function(e){i.Assert.exists(e),e.facetRequests.push(this.facetRequest),this.freezeFacetOrder&&(e.facetOptions.freezeFacetOrder=!0)},Object.defineProperty(e.prototype,\"facetRequest\",{get:function(){return{facetId:this.facet.options.id,field:this.facet.fieldName,type:this.facet.facetType,sortCriteria:this.facet.options.sortCriteria,currentValues:this.currentValues,numberOfValues:this.numberOfValues,freezeCurrentValues:this.freezeCurrentValues,isFieldExpanded:this.numberOfValuesToRequest>this.facet.options.numberOfValues,injectionDepth:this.facet.options.injectionDepth}},enumerable:!0,configurable:!0}),e.prototype.getQueryResults=function(){var e=this.facet.queryController.getLastQuery();e.numberOfResults=0;var t=r.findIndex(e.facets,{facetId:this.facet.options.id});return-1!==t?e.facets[t]=this.facetRequest:e.facets?e.facets.push(this.facetRequest):e.facets=[this.facetRequest],this.facet.queryController.getEndpoint().search(e)},Object.defineProperty(e.prototype,\"currentValues\",{get:function(){return this.facet.values.allFacetValues.map(function(e){return{value:e.value,state:e.state,preventAutoSelect:e.preventAutoSelect}})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"numberOfValues\",{get:function(){return this.freezeCurrentValues?this.currentValues.length:Math.max(this.numberOfValuesToRequest,this.facet.values.activeValues.length)},enumerable:!0,configurable:!0}),e}();t.DynamicFacetQueryController=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(443),r=function(){function e(e,t){this.facetValue=e,this.facet=t}return e.prototype.render=function(){return this.dom=i.$$(\"li\",{className:\"coveo-dynamic-facet-value\",dataValue:this.facetValue.value}),this.toggleSelectedClass(),this.renderCheckbox(),this.addFocusAndBlurEventListeners(),this.dom.el},e.prototype.toggleSelectedClass=function(){this.dom.toggleClass(\"coveo-selected\",this.facetValue.isSelected)},e.prototype.renderCheckbox=function(){this.valueCheckbox=new o.DynamicFacetValueCheckbox(this.facetValue,this.selectAction.bind(this)),this.dom.append(this.valueCheckbox.element)},e.prototype.addFocusAndBlurEventListeners=function(){var e=this,t=i.$$(this.valueCheckbox.element).find(\"button\");i.$$(t).on(\"focusin\",function(){return e.onFocusIn()}),i.$$(t).on(\"focusout\",function(){return e.onFocusOut()})},e.prototype.onFocusIn=function(){this.dom.addClass(\"coveo-focused\")},e.prototype.onFocusOut=function(){this.dom.removeClass(\"coveo-focused\")},e.prototype.selectAction=function(){var e=this;this.facet.toggleSelectValue(this.facetValue.value),this.toggleSelectedClass(),this.facet.enableFreezeCurrentValuesFlag(),this.facet.enableFreezeFacetOrderFlag(),this.facet.scrollToTop(),this.facet.triggerNewQuery(function(){return e.facetValue.logSelectActionToAnalytics()})},e}();t.DynamicFacetValueRenderer=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});!function(e){e.Legacy=\"legacy\",e.Wildcards=\"wildcards\",e.Regex=\"regex\",e.EditDistance=\"editdistance\",e.Phonetic=\"phonetic\"}(t.AllowedValuesPatternType||(t.AllowedValuesPatternType={}))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(451),o=n(4),r=n(10),s=n(1),a=n(25),u=function(){function e(e,t,n,i){this.facet=e,this.facetValue=t,this.onSelect=n,this.onExclude=i}return e.prototype.build=function(){return this.renderer=new i.ValueElementRenderer(this.facet,this.facetValue).build(),this.bindEvent({displayNextTime:!0,pinFacet:this.facet.options.preservePosition}),this},e.prototype.bindEvent=function(e){o.Utils.isNullOrUndefined(e.omniboxObject)?this.isOmnibox=!1:this.isOmnibox=!0,this.handleEventForCheckboxChange(e),this.facetValue.excluded?this.handleEventForExcludedValueElement(e):this.handleEventForValueElement(e)},e.prototype.select=function(){this.facetValue.selected=!0,this.facetValue.excluded=!1,this.renderer.setCssClassOnListValueElement()},e.prototype.unselect=function(){this.facetValue.selected=!1,this.facetValue.excluded=!1,this.renderer.setCssClassOnListValueElement()},e.prototype.exclude=function(){this.facetValue.selected=!1,this.facetValue.excluded=!0,this.renderer.setCssClassOnListValueElement()},e.prototype.unexclude=function(){this.facetValue.selected=!1,this.facetValue.excluded=!1,this.renderer.setCssClassOnListValueElement()},e.prototype.toggleExcludeWithUA=function(){var e,t=this;e=this.facetValue.excluded?this.isOmnibox?r.analyticsActionCauseList.omniboxFacetUnexclude:r.analyticsActionCauseList.facetUnexclude:this.isOmnibox?r.analyticsActionCauseList.omniboxFacetExclude:r.analyticsActionCauseList.facetExclude,this.facet.toggleExcludeValue(this.facetValue),this.onExclude?this.facet.triggerNewQuery(function(){return t.onExclude(t,e)}):this.facet.triggerNewQuery(function(){return t.facet.usageAnalytics.logSearchEvent(e,t.getAnalyticsFacetMeta())})},e.prototype.handleSelectValue=function(e){var t=this;this.facet.keepDisplayedValuesNextTime=e.displayNextTime&&!this.facet.options.useAnd;var n;this.facetValue.excluded?(n=this.isOmnibox?r.analyticsActionCauseList.omniboxFacetUnexclude:r.analyticsActionCauseList.facetUnexclude,this.facet.unexcludeValue(this.facetValue)):(n=this.facetValue.selected?this.isOmnibox?r.analyticsActionCauseList.omniboxFacetDeselect:r.analyticsActionCauseList.facetDeselect:this.isOmnibox?r.analyticsActionCauseList.omniboxFacetSelect:r.analyticsActionCauseList.facetSelect,this.facet.toggleSelectValue(this.facetValue)),this.onSelect?this.facet.triggerNewQuery(function(){return t.onSelect(t,n)}):this.facet.triggerNewQuery(function(){return t.facet.usageAnalytics.logSearchEvent(n,t.getAnalyticsFacetMeta())})},e.prototype.handleExcludeClick=function(e){this.facet.keepDisplayedValuesNextTime=e.displayNextTime&&!this.facet.options.useAnd,this.toggleExcludeWithUA()},e.prototype.handleEventForExcludedValueElement=function(e){var t=this,n=function(n){return e.pinFacet&&t.facet.pinFacetPosition(),e.omniboxObject&&t.omniboxCloseEvent(e.omniboxObject),t.handleSelectValue(e),!1};s.$$(this.renderer.label).on(\"click\",function(e){e.stopPropagation(),n()}),s.$$(this.renderer.stylishCheckbox).on(\"keydown\",a.KeyboardUtils.keypressAction([a.KEYBOARD.SPACEBAR,a.KEYBOARD.ENTER],n))},e.prototype.handleEventForValueElement=function(e){var t=this,n=function(n){e.omniboxObject&&t.omniboxCloseEvent(e.omniboxObject),t.handleExcludeClick(e),t.facet&&t.facet.facetSearch&&t.facet.facetSearch.dismissSearchResults&&t.facet.facetSearch.dismissSearchResults(),n.stopPropagation(),n.preventDefault()};s.$$(this.renderer.excludeIcon).on(\"click\",n),s.$$(this.renderer.excludeIcon).on(\"keydown\",a.KeyboardUtils.keypressAction([a.KEYBOARD.SPACEBAR,a.KEYBOARD.ENTER],n));var i=function(n){e.pinFacet&&t.facet.pinFacetPosition(),s.$$(t.renderer.checkbox).trigger(\"change\"),n.preventDefault()};s.$$(this.renderer.label).on(\"click\",i),s.$$(this.renderer.stylishCheckbox).on(\"keydown\",a.KeyboardUtils.keypressAction([a.KEYBOARD.SPACEBAR,a.KEYBOARD.ENTER],i))},e.prototype.handleEventForCheckboxChange=function(e){var t=this;s.$$(this.renderer.checkbox).on(\"change\",function(){e.omniboxObject&&t.omniboxCloseEvent(e.omniboxObject),t.handleSelectValue(e)})},e.prototype.omniboxCloseEvent=function(e){e.closeOmnibox(),e.clear()},e.prototype.getAnalyticsFacetMeta=function(){return{facetId:this.facet.options.id,facetField:this.facet.options.field.toString(),facetValue:this.facetValue.value,facetTitle:this.facet.options.title}},e}();t.ValueElement=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(4),r=n(6),s=n(7),a=n(0),u=n(12),l=n(14),c=function(){function e(e,t){this.facet=e,this.facetValue=t}return e.prototype.withNo=function(e){return a.isArray(e)?a.each(e,function(e){e&&i.$$(e).detach()}):e&&i.$$(e).detach(),this},e.prototype.build=function(){return this.buildListItem(),this.initAndAppendLabel(),this.initAndAppendExcludeIcon(),this.setCssClassOnListValueElement(),this.addAccessibilityAttributesToTargetElement(),this},e.prototype.setCssClassOnListValueElement=function(){i.$$(this.listItem).toggleClass(\"coveo-selected\",this.facetValue.selected),i.$$(this.listItem).toggleClass(\"coveo-excluded\",this.facetValue.excluded)},Object.defineProperty(e.prototype,\"accessibleElement\",{get:function(){return this.stylishCheckbox},enumerable:!0,configurable:!0}),e.prototype.buildExcludeIcon=function(){var e=i.$$(\"div\",{title:r.l(\"ExcludeValueWithResultCount\",this.caption,r.l(\"ResultCount\",this.count)),className:\"coveo-facet-value-exclude\",tabindex:0,role:\"button\"}).el;return this.addFocusAndBlurEventListeners(e),e.innerHTML=u.SVGIcons.icons.checkboxHookExclusionMore,l.SVGDom.addClassToSVGInContainer(e,\"coveo-facet-value-exclude-svg\"),e},e.prototype.buildValueComputedField=function(){var e=this.facetValue.getFormattedComputedField(this.facet.options.computedFieldFormat);if(o.Utils.isNonEmptyString(e)){var t=i.$$(\"span\",{className:\"coveo-facet-value-computed-field\"}).el;return i.$$(t).text(e),t}},e.prototype.buildValueCheckbox=function(){var e=i.$$(\"input\",{type:\"checkbox\",\"aria-hidden\":!0,\"aria-label\":this.ariaLabel}).el;return this.facetValue.selected?e.setAttribute(\"checked\",\"checked\"):e.removeAttribute(\"checked\"),this.facetValue.excluded?e.setAttribute(\"disabled\",\"disabled\"):e.removeAttribute(\"disabled\"),s.Component.pointElementsToDummyForm(e),e},e.prototype.buildValueStylishCheckbox=function(){var e=i.$$(\"div\",{className:\"coveo-facet-value-checkbox\",tabindex:0}).el;return e.innerHTML=u.SVGIcons.icons.checkboxHookExclusionMore,l.SVGDom.addClassToSVGInContainer(e,\"coveo-facet-value-checkbox-svg\"),this.addFocusAndBlurEventListeners(e),e},e.prototype.buildValueIcon=function(){var e=this.getValueIcon();return o.Utils.exists(e)?i.$$(\"img\",{className:\"coveo-facet-value-icon coveo-icon\",src:this.getValueIcon()}).el:this.buildValueIconFromSprite()},e.prototype.getValueIcon=function(){return o.Utils.exists(this.facet.options.valueIcon)?this.facet.options.valueIcon(this.facetValue):void 0},e.prototype.buildValueIconFromSprite=function(){return i.$$(\"div\",{className:\"coveo-facet-value-icon coveo-icon \"+this.facet.options.field.substr(1)+\" \"+this.facetValue.value}).el},e.prototype.buildValueCaption=function(){var e=i.$$(\"span\",{className:\"coveo-facet-value-caption\",title:this.caption,\"data-original-value\":this.facetValue.value}).el;return i.$$(e).text(this.caption),e},e.prototype.buildValueCount=function(){if(o.Utils.isNonEmptyString(this.count)){var e=i.$$(\"span\",{className:\"coveo-facet-value-count\"}).el;return i.$$(e).text(this.count),e}},Object.defineProperty(e.prototype,\"caption\",{get:function(){return this.facet.getValueCaption(this.facetValue)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"count\",{get:function(){return this.facetValue.getFormattedCount()},enumerable:!0,configurable:!0}),e.prototype.addFocusAndBlurEventListeners=function(e){var t=this;i.$$(e).on(\"focus\",function(){return i.$$(t.listItem).addClass(\"coveo-focused\")}),i.$$(e).on(\"blur\",function(){return i.$$(t.listItem).removeClass(\"coveo-focused\")})},e.prototype.buildListItem=function(){this.listItem=i.$$(\"li\",{className:\"coveo-facet-value coveo-facet-selectable\"}).el,i.$$(this.listItem).canHandleEvent(\"touchstart\")||i.$$(this.listItem).addClass(\"coveo-with-hover\"),this.listItem.setAttribute(\"data-value\",this.facetValue.value)},e.prototype.initAndAppendLabel=function(){this.label=i.$$(\"label\",{className:\"coveo-facet-value-label\"}).el,this.tryToInitAndAppendComputedField(),this.initAndAppendFacetValueLabelWrapper(),this.listItem.appendChild(this.label)},e.prototype.initAndAppendExcludeIcon=function(){this.excludeIcon=this.buildExcludeIcon(),this.attachExcludeIconEventHandlers(),this.listItem.appendChild(this.excludeIcon)},e.prototype.attachExcludeIconEventHandlers=function(){var e=this;i.$$(this.excludeIcon).on(\"mouseover\",function(){i.$$(e.listItem).addClass(\"coveo-facet-value-will-exclude\")}),i.$$(this.excludeIcon).on(\"mouseout\",function(){i.$$(e.listItem).removeClass(\"coveo-facet-value-will-exclude\")})},e.prototype.tryToInitAndAppendComputedField=function(){o.Utils.exists(this.facetValue.computedField)&&(this.computedField=this.buildValueComputedField(),this.computedField&&(this.label.appendChild(this.computedField),i.$$(this.label).addClass(\"coveo-with-computed-field\")))},e.prototype.initAndAppendFacetValueLabelWrapper=function(){this.facetValueLabelWrapper=i.$$(\"div\",{className:\"coveo-facet-value-label-wrapper\"}).el,this.initAndAppendCheckbox(),this.initAndAppendStylishCheckbox(),this.initAndAppendValueCount(),this.initAndAppendValueCaption(),this.label.appendChild(this.facetValueLabelWrapper)},e.prototype.initAndAppendCheckbox=function(){this.checkbox=this.buildValueCheckbox(),this.facetValueLabelWrapper.appendChild(this.checkbox)},e.prototype.initAndAppendStylishCheckbox=function(){this.stylishCheckbox=this.buildValueStylishCheckbox(),this.facetValueLabelWrapper.appendChild(this.stylishCheckbox)},e.prototype.initAndAppendValueCount=function(){this.valueCount=this.buildValueCount(),this.valueCount&&this.facetValueLabelWrapper.appendChild(this.valueCount)},e.prototype.initAndAppendValueCaption=function(){this.valueCaption=this.buildValueCaption(),this.facetValueLabelWrapper.appendChild(this.valueCaption)},e.prototype.addAccessibilityAttributesToTargetElement=function(){var e=this.accessibleElement;e.setAttribute(\"aria-label\",this.ariaLabel),e.setAttribute(\"role\",\"button\")},Object.defineProperty(e.prototype,\"actionLabel\",{get:function(){return this.facetValue.excluded?\"UnexcludeValueWithResultCount\":this.facetValue.selected?\"UnselectValueWithResultCount\":\"SelectValueWithResultCount\"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"ariaLabel\",{get:function(){var e=r.l(\"ResultCount\",this.count);return\"\"+r.l(this.actionLabel,this.caption,e)},enumerable:!0,configurable:!0}),e}();t.ValueElementRenderer=c},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(12),r=n(14),s=n(7),a=n(6),u=n(133),l=n(132),c=n(520),p=n(0),h=n(521),d=function(){function e(e){this.facetSearch=e,this.searchBarIsAnimating=!1,this.triggeredScroll=!1,this.facetSearchId=p.uniqueId(\"coveo-facet-search-results\"),this.facetSearchUserInputHandler=new c.FacetSearchUserInputHandler(this.facetSearch),this.initSearchResults()}return e.prototype.build=function(e){var t=this;return this.search=document.createElement(\"div\"),i.$$(this.search).addClass(\"coveo-facet-search\"),this.magnifier=this.buildMagnifierIcon(),this.search.appendChild(this.magnifier),this.wait=this.buildWaitIcon(),this.search.appendChild(this.wait),this.hideFacetSearchWaitingAnimation(),this.clear=i.$$(\"div\",{className:\"coveo-facet-search-clear\",title:a.l(\"Clear\",a.l(\"Search\"))},o.SVGIcons.icons.checkboxHookExclusionMore).el,r.SVGDom.addClassToSVGInContainer(this.clear,\"coveo-facet-search-clear-svg\"),this.clear.style.display=\"none\",this.search.appendChild(this.clear),this.combobox=this.buildCombobox(),this.search.appendChild(this.combobox),this.input=this.buildInputElement(),s.Component.pointElementsToDummyForm(this.input),this.combobox.appendChild(this.input),i.$$(this.input).on(\"keyup\",function(e){t.facetSearchUserInputHandler.handleKeyboardEvent(e)}),i.$$(this.clear).on(\"click\",function(t){e&&e()}),i.$$(this.input).on(\"focus\",function(e){t.handleFacetSearchFocus()}),this.detectSearchBarAnimation(),this.initSearchDropdownNavigator(),this.search},e.prototype.initSearchResults=function(){var e=this;this.searchResults=i.$$(\"ul\",{id:this.facetSearchId,className:\"coveo-facet-search-results\",role:\"listbox\"}).el,i.$$(this.searchResults).on(\"scroll\",function(){return e.handleScrollEvent()}),i.$$(this.searchResults).hide()},e.prototype.initSearchDropdownNavigator=function(){var e=this,t={input:this.input,searchResults:this.searchResults,setScrollTrigger:function(t){return e.triggeredScroll=t}};this.searchDropdownNavigator=h.SearchDropdownNavigatorFactory(this.facetSearch,t)},e.prototype.buildCombobox=function(){return i.$$(\"div\",{className:\"coveo-facet-search-middle\",ariaHaspopup:\"listbox\",ariaExpanded:\"true\"}).el},e.prototype.showFacetSearchWaitingAnimation=function(){this.magnifier&&i.$$(this.magnifier).hide(),i.$$(this.wait).show()},e.prototype.getValueInInputForFacetSearch=function(){return this.input.value.trim()},e.prototype.hideFacetSearchWaitingAnimation=function(){i.$$(this.magnifier).show(),i.$$(this.wait).hide()},e.prototype.detectSearchBarAnimation=function(){var e=this;u.EventsUtils.addPrefixedEvent(this.search,\"AnimationStart\",function(t){\"grow\"==t.animationName&&(e.searchBarIsAnimating=!0)}),u.EventsUtils.addPrefixedEvent(this.search,\"AnimationEnd\",function(t){\"grow\"==t.animationName&&(e.searchBarIsAnimating=!1)})},e.prototype.positionSearchResults=function(t,n,o){var r=this;if(null!=this.searchResults){t.appendChild(this.searchResults),i.$$(this.searchResults).show(),this.searchResults.style.width=n-e.FACET_SEARCH_PADDING+\"px\",\"none\"==i.$$(this.searchResults).css(\"display\")&&(this.searchResults.style.display=\"\");\"none\"==i.$$(this.search).css(\"display\")||this.searchBarIsAnimating?(\"none\"==i.$$(this.searchResults).css(\"display\")&&(this.searchResults.style.display=\"\"),u.EventsUtils.addPrefixedEvent(this.search,\"AnimationEnd\",function(){r.positionPopUp(o,t),u.EventsUtils.removePrefixedEvent(r.search,\"AnimationEnd\",r)})):this.positionPopUp(o,t)}},e.prototype.setAsCurrentResult=function(e){this.searchDropdownNavigator.setAsCurrentResult(e)},Object.defineProperty(e.prototype,\"currentResult\",{get:function(){return this.searchDropdownNavigator.currentResult},enumerable:!0,configurable:!0}),e.prototype.moveCurrentResultDown=function(){this.searchDropdownNavigator.focusNextElement()},e.prototype.moveCurrentResultUp=function(){this.searchDropdownNavigator.focusPreviousElement()},e.prototype.highlightCurrentQueryInSearchResults=function(e){this.facetSearch.getCaptions().forEach(function(t){t.innerHTML=i.$$(t).text().replace(e,'<span class=\"coveo-highlight\">$1</span>')})},e.prototype.appendToSearchResults=function(e){this.searchResults.appendChild(e),this.setupFacetSearchResultsEvents(e)},e.prototype.focus=function(){this.input.focus(),this.handleFacetSearchFocus()},e.prototype.handleFacetSearchFocus=function(){null==this.facetSearch.currentlyDisplayedResults&&(this.facetSearch.displayNewValues(),this.addAriaAttributes())},e.prototype.setupFacetSearchResultsEvents=function(e){var t=this;i.$$(e).on(\"mousemove\",function(){t.setAsCurrentResult(i.$$(e))});var n=!1,o=!1;i.$$(e).on(\"mousedown\",function(){return o=!1}),i.$$(e).on(\"mousemove\",function(){return o=!0}),i.$$(e).on(\"touchmove\",function(){return n=!0}),i.$$(e).on(\"mouseup touchend\",function(){n||o||setTimeout(function(){t.facetSearch.dismissSearchResults()},0),n=!1,o=!1})},e.prototype.hideSearchResultsElement=function(){this.removeAriaAttributes(),i.$$(this.searchResults).hide(),i.$$(this.searchResults).remove()},e.prototype.clearSearchInput=function(){this.input&&(this.input.value=\"\")},e.prototype.buildMagnifierIcon=function(){var e=document.createElement(\"div\");return e.innerHTML=o.SVGIcons.icons.search,i.$$(e).addClass(\"coveo-facet-search-magnifier\"),r.SVGDom.addClassToSVGInContainer(e,\"coveo-facet-search-magnifier-svg\"),this.search.appendChild(e),e},e.prototype.buildWaitIcon=function(){var e=document.createElement(\"div\");return e.innerHTML=o.SVGIcons.icons.loading,i.$$(e).addClass(\"coveo-facet-search-wait-animation\"),r.SVGDom.addClassToSVGInContainer(e,\"coveo-facet-search-wait-animation-svg\"),e},e.prototype.buildInputElement=function(){return i.$$(\"input\",{className:\"coveo-facet-search-input\",type:\"text\",autocapitalize:\"off\",autocorrect:\"off\",ariaLabel:a.l(\"Search\"),ariaHaspopup:\"true\",ariaAutocomplete:\"list\"}).el},e.prototype.positionPopUp=function(e,t){l.PopupUtils.positionPopup(this.searchResults,e,t,{horizontal:l.PopupHorizontalAlignment.CENTER,vertical:l.PopupVerticalAlignment.BOTTOM})},e.prototype.handleScrollEvent=function(){this.triggeredScroll?this.triggeredScroll=!1:this.facetSearchUserInputHandler.handleFacetSearchResultsScroll()},e.prototype.addAriaAttributes=function(){this.input&&this.combobox&&(this.combobox.setAttribute(\"role\",\"combobox\"),this.combobox.setAttribute(\"aria-owns\",this.facetSearchId),this.input.setAttribute(\"aria-controls\",this.facetSearchId))},e.prototype.removeAriaAttributes=function(){this.input&&this.combobox&&(this.combobox.removeAttribute(\"role\"),this.combobox.removeAttribute(\"aria-owns\"),this.input.removeAttribute(\"aria-controls\"),this.input.removeAttribute(\"aria-activedescendant\"))},e.FACET_SEARCH_PADDING=40,e}();t.FacetSearchElement=d},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(1),r=function(){function e(e){this.config=e}return e.prototype.setAsCurrentResult=function(e){this.currentResult&&this.currentResult.removeClass(\"coveo-facet-search-current-result\"),this.currentResult=e,e.addClass(\"coveo-facet-search-current-result\"),this.updateSelectedOption(e)},e.prototype.focusNextElement=function(){this.moveCurrentResultDown()},e.prototype.focusPreviousElement=function(){this.moveCurrentResultUp()},e.prototype.moveCurrentResultDown=function(){var e=this.currentResult.el.nextElementSibling;e||(e=i.first(this.searchResults.children)),this.setAsCurrentResult(o.$$(e)),this.highlightAndShowCurrentResultWithKeyboard()},e.prototype.moveCurrentResultUp=function(){var e=this.currentResult.el.previousElementSibling;e||(e=i.last(this.searchResults.children)),this.setAsCurrentResult(o.$$(e)),this.highlightAndShowCurrentResultWithKeyboard()},e.prototype.highlightAndShowCurrentResultWithKeyboard=function(){this.currentResult.addClass(\"coveo-facet-search-current-result\"),this.config.setScrollTrigger(!0),this.searchResults.scrollTop=this.currentResult.el.offsetTop},Object.defineProperty(e.prototype,\"searchResults\",{get:function(){return this.config.searchResults},enumerable:!0,configurable:!0}),e.prototype.updateSelectedOption=function(e){this.config.input.setAttribute(\"aria-activedescendant\",e.getAttribute(\"id\"));var t=o.$$(this.searchResults).find('[aria-selected^=\"true\"]');t&&t.setAttribute(\"aria-selected\",\"false\"),e.setAttribute(\"aria-selected\",\"true\")},e}();t.DefaultSearchDropdownNavigator=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(525),o=n(0),r=function(){function e(e,t,n,i){this.element=e,this.categoryFacetTemplates=t,this.categoryValue=n,this.categoryFacet=i,this.children=[]}return e.prototype.clearChildren=function(){this.element.removeClass(\"coveo-active-category-facet-parent\"),this.children.forEach(function(e){e.clear()}),this.children=[]},e.prototype.renderChildren=function(e){var t=this;o.each(e,function(e){t.renderValue(e,!0).makeSelectable()})},e.prototype.renderAsParent=function(e){return this.renderValue(e,!1)},e.prototype.renderValue=function(e,t){var n=this.categoryValue.path.concat([e.value]),o={value:e.value,count:e.numberOfResults,path:n},r=new i.CategoryValue(this.categoryValue.listRoot,o,this.categoryFacetTemplates,this.categoryFacet);return r.render(t),this.children.push(r),r},e}();t.CategoryChildrenValueRenderer=r},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(91);n(534);var r=n(0),s=n(16),a=n(13),u=n(6),l=n(17),c=n(1),p=n(25),h=n(45),d=n(14),f=n(12),m=n(4),y=n(10),g=n(456),v=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.sorts=t,i.facet=n,i.customSortDirectionChange=!1,i.onDocumentClick=function(){return i.close()},i.enabledSortsIgnoreRenderBecauseOfPairs=[],i.filterDuplicateForRendering(),i}return i(t,e),t.prototype.build=function(){var e=this;this.buildSettingsButton(),this.buildSettingsPopup(),m.Utils.isNonEmptyArray(this.enabledSorts)&&(this.sortSection=this.buildSortSection(),this.enabledSortsAllowDirection()&&(this.directionSection=this.buildDirectionSection())),this.facet.options.enableSettingsFacetState&&(this.saveStateSection=this.buildSaveStateSection(),this.clearStateSection=this.buildClearStateSection()),this.facet.options.enableCollapse&&(this.hideSection=this.buildHideSection(),this.showSection=this.buildShowSection());var t=function(){e.appendIfNotUndefined(e.saveStateSection),e.appendIfNotUndefined(e.clearStateSection),e.appendIfNotUndefined(e.hideSection),e.appendIfNotUndefined(e.showSection)};return this.addOnDocumentClickHandler(),this.addOnNukeHandler(),m.Utils.isNonEmptyArray(this.enabledSorts)?(this.settingsPopup.appendChild(this.sortSection.element),r.each(this.directionSection,function(t){e.appendIfNotUndefined(t)}),t()):t(),this.settingsButton},t.prototype.loadSavedState=function(){if(this.facetStateLocalStorage){var e=this.facetStateLocalStorage.load(),t=this.facet.queryStateModel.get(this.includedStateAttribute),n=this.facet.queryStateModel.get(this.excludedStateAttribute),i=this.facet.queryStateModel.get(this.operatorStateAttribute);if(!m.Utils.isNullOrUndefined(e)&&m.Utils.isEmptyArray(t)&&m.Utils.isEmptyArray(n)&&!m.Utils.isNonEmptyString(i)){var o={};o[this.includedStateAttribute]=e.included,o[this.excludedStateAttribute]=e.excluded,o[this.operatorStateAttribute]=e.operator,this.facet.queryStateModel.setMultiple(o),this.loadedFromSettings=o}}else this.facet.logger.info(\"Facet state local storage not enabled : See Facet.options.enableSettingsFacetState\")},t.prototype.saveState=function(){this.facetStateLocalStorage?this.facetStateLocalStorage.save({included:this.facet.queryStateModel.get(this.includedStateAttribute),excluded:this.facet.queryStateModel.get(this.excludedStateAttribute),operator:this.facet.queryStateModel.get(this.operatorStateAttribute)}):this.facet.logger.info(\"Facet state local storage not enabled : See Facet.options.enableSettingsFacetState\")},t.prototype.close=function(){c.$$(this.settingsPopup).detach()},t.prototype.open=function(){var e=this;c.$$(this.settingsPopup).insertAfter(this.facet.element.parentElement),new o.default(this.settingsButton,this.settingsPopup),this.hideSection&&this.showSection&&(c.$$(this.hideSection).toggle(!c.$$(this.facet.element).hasClass(\"coveo-facet-collapsed\")),c.$$(this.showSection).toggle(c.$$(this.facet.element).hasClass(\"coveo-facet-collapsed\"))),this.facet.options.enableSettingsFacetState&&c.$$(this.clearStateSection).toggle(!m.Utils.isNullOrUndefined(this.facetStateLocalStorage.load())),r.each(this.enabledSorts,function(t,n){e.activeSort.name==t.name.toLowerCase()?e.selectItem(e.getSortItem(t.name)):e.unselectItem(e.getSortItem(t.name))})},t.prototype.getSortItem=function(e){return r.find(this.sortSection.sortItems,function(t){return c.$$(t).getAttribute(\"data-sort-name\").toLowerCase()==e.replace(\"ascending|descending\",\"\").toLowerCase()})},Object.defineProperty(t.prototype,\"button\",{get:function(){return this.settingsButton},enumerable:!0,configurable:!0}),t.prototype.buildSettingsButton=function(){var e=this;this.settingsButton=c.$$(\"div\",{className:\"coveo-facet-header-settings\"}).el,this.settingsButton.innerHTML=f.SVGIcons.icons.more,d.SVGDom.addClassToSVGInContainer(this.settingsButton,\"coveo-facet-settings-more-svg\"),this.hideElementOnMouseEnterLeave(this.settingsButton),(new l.AccessibleButton).withElement(this.settingsButton).withLabel(u.l(\"Settings\")).withClickAction(function(t){return e.handleSettingsButtonClick(t)}).withEnterKeyboardAction(function(t){return e.handleSettingsButtonClick(t)}).build()},t.prototype.hideElementOnMouseEnterLeave=function(e){var t=this,n=function(){return t.closeTimeout=window.setTimeout(function(){return t.close()},300)},i=function(){return clearTimeout(t.closeTimeout)};c.$$(e).on(\"mouseleave\",n),c.$$(e).on(\"mouseenter\",i),c.$$(e).on(\"keyup\",p.KeyboardUtils.keypressAction(p.KEYBOARD.ESCAPE,function(){return t.handleKeyboardClose()}))},t.prototype.handleKeyboardClose=function(){this.close(),this.settingsButton.focus()},t.prototype.buildSettingsPopup=function(){this.settingsPopup=c.$$(\"div\",{className:\"coveo-facet-settings-popup\"}).el,this.hideElementOnMouseEnterLeave(this.settingsPopup)},t.prototype.buildSortSection=function(){var e=this.buildSection(\"coveo-facet-settings-section-sort\"),t=this.buildIcon(\"coveo-facet-settings-section-sort-svg\",f.SVGIcons.icons.sort),n=this.buildItems(),i=document.createElement(\"div\");c.$$(i).addClass(\"coveo-facet-settings-section-sort-title\"),c.$$(i).text(u.l(\"SortBy\")+\" :\"),n.appendChild(i);var o=this.buildSortSectionItems();return r.each(o,function(e){n.appendChild(e)}),e.appendChild(t),e.appendChild(n),{element:e,sortItems:o}},t.prototype.buildSortSectionItems=function(){var e=this,t=r.map(this.enabledSorts,function(t){if(!r.contains(e.enabledSortsIgnoreRenderBecauseOfPairs,t)){var n=e.buildItem(u.l(t.label),t.description);return c.$$(n).setAttribute(\"data-sort-name\",t.name.toLowerCase().replace(\"ascending|descending\",\"\")),(new l.AccessibleButton).withElement(n).withSelectAction(function(n){return e.handleClickSortButton(n,t)}).withLabel(t.label).build(),n}});return t=r.compact(t)},t.prototype.closePopupAndUpdateSort=function(){this.close(),\"custom\"!=this.activeSort.name?this.facet.updateSort(this.activeSort.name):(this.facet.updateSort(\"nosort\"),this.customSortDirectionChange&&(this.customSortDirectionChange=!1,this.facet.queryController.executeQuery()))},t.prototype.enabledSortsAllowDirection=function(){var e=this,t=r.filter(this.enabledSorts,function(e){return e.directionToggle});return r.filter(t,function(t){return void 0!=r.findWhere(e.enabledSorts,{name:t.relatedSort})}).length>0},t.prototype.buildDirectionSection=function(){var e=this,t=this.buildAscendingOrDescendingSection(\"Ascending\"),n=this.buildIcon(\"coveo-facet-settings-section-direction-ascending-svg\",f.SVGIcons.icons.ascending),i=this.buildIcon(\"coveo-facet-settings-section-direction-descending-svg\",f.SVGIcons.icons.descending),o=this.buildItems(),r=this.buildAscendingOrDescending(\"Ascending\");o.appendChild(r),t.appendChild(n),t.appendChild(o),(new l.AccessibleButton).withElement(t).withLabel(u.l(\"Ascending\")).withSelectAction(function(t){return e.handleDirectionClick(t,\"ascending\")}).build();var s=this.buildAscendingOrDescendingSection(\"Descending\"),a=this.buildItems(),p=this.buildAscendingOrDescending(\"Descending\");return a.appendChild(p),s.appendChild(i),s.appendChild(a),(new l.AccessibleButton).withElement(s).withLabel(u.l(\"Descending\")).withSelectAction(function(t){return e.handleDirectionClick(t,\"descending\")}).build(),this.activeSort.directionToggle?this.selectItem(this.getItems(t)[0]):(c.$$(t).addClass(\"coveo-facet-settings-disabled\"),c.$$(s).addClass(\"coveo-facet-settings-disabled\")),[t,s]},t.prototype.buildSaveStateSection=function(){var e=this,t=this.buildSection(\"coveo-facet-settings-section-save-state\"),n=this.buildIcon(\"coveo-facet-settings-section-save-state-svg\",f.SVGIcons.icons.dropdownMore),i=this.buildItems();this.facetStateLocalStorage=new h.LocalStorageUtils(\"facet-state-\"+this.facet.options.id),this.includedStateAttribute=a.QueryStateModel.getFacetId(this.facet.options.id),this.excludedStateAttribute=a.QueryStateModel.getFacetId(this.facet.options.id,!1),this.operatorStateAttribute=a.QueryStateModel.getFacetOperator(this.facet.options.id);var o=document.createElement(\"div\");return c.$$(o).addClass(\"coveo-facet-settings-item\"),o.setAttribute(\"title\",u.l(\"SaveFacetState\")),c.$$(o).text(u.l(\"SaveFacetState\")),i.appendChild(o),t.appendChild(n),t.appendChild(i),(new l.AccessibleButton).withElement(t).withSelectAction(function(){return e.handleSaveStateClick()}).withLabel(u.l(\"SaveFacetState\")).build(),t},t.prototype.buildClearStateSection=function(){var e=this,t=this.buildSection(\"coveo-facet-settings-section-clear-state\"),n=this.buildIcon(\"coveo-facet-settings-section-clear-state-svg\",f.SVGIcons.icons.dropdownLess),i=this.buildItems(),o=this.buildItem(u.l(\"ClearFacetState\"));return i.appendChild(o),t.appendChild(n),t.appendChild(i),(new l.AccessibleButton).withElement(t).withSelectAction(function(){return e.handleClearStateClick()}).withLabel(u.l(\"ClearFacetState\")).build(),t},t.prototype.buildHideSection=function(){var e=this,t=this.buildSection(\"coveo-facet-settings-section-hide\"),n=this.buildIcon(\"coveo-facet-settings-section-hide-svg\",f.SVGIcons.icons.facetCollapse),i=this.buildItems(),o=this.buildItem(u.l(\"Collapse\"));return i.appendChild(o),t.appendChild(n),t.appendChild(i),(new l.AccessibleButton).withElement(t).withSelectAction(function(){e.facet.facetHeader.collapseFacet(),e.close()}).withLabel(u.l(\"CollapseFacet\",this.facet.options.title)).build(),t},t.prototype.buildShowSection=function(){var e=this,t=this.buildSection(\"coveo-facet-settings-section-show\"),n=this.buildIcon(\"coveo-facet-settings-section-show-svg\",f.SVGIcons.icons.facetExpand),i=this.buildItems(),o=this.buildItem(u.l(\"Expand\"));return i.appendChild(o),t.appendChild(n),t.appendChild(i),(new l.AccessibleButton).withElement(t).withSelectAction(function(){e.facet.facetHeader.expandFacet(),e.close()}).withLabel(u.l(\"ExpandFacet\",this.facet.options.title)).build(),t},t.prototype.buildIcon=function(e,t){if(e&&t){var n=c.$$(\"div\",{className:\"coveo-icon-container\"},t);return d.SVGDom.addClassToSVGInContainer(n.el,e),n.el}return c.$$(\"div\",{className:\"coveo-icon\"}).el},t.prototype.buildAscendingOrDescending=function(e){var t=this.buildItem(u.l(e));return t.setAttribute(\"aria-disabled\",\"true\"),t.setAttribute(\"data-direction\",e.toLowerCase()),t},t.prototype.buildAscendingOrDescendingSection=function(e){return this.buildSection(\"coveo-facet-settings-section-direction-\"+e.toLowerCase())},t.prototype.buildItem=function(e,t){return void 0===t&&(t=e),c.$$(\"div\",{className:\"coveo-facet-settings-item\",title:t},r.escape(e)).el},t.prototype.buildItems=function(){var e=document.createElement(\"div\");return c.$$(e).addClass(\"coveo-facet-settings-items\"),e},t.prototype.buildSection=function(e){var t=document.createElement(\"div\");return c.$$(t).addClass([\"coveo-facet-settings-section\",e]),t},t.prototype.handleSettingsButtonClick=function(e){e.stopPropagation(),m.Utils.isNullOrUndefined(this.settingsPopup.parentElement)?this.open():this.close()},t.prototype.handleClickSortButton=function(e,n){this.activeSort!=n&&this.activeSort.relatedSort!=n.name&&(this.activeSort=n,n.directionToggle&&r.contains(this.enabledSorts,t.availableSorts[this.activeSort.relatedSort])?this.activateDirectionSection():this.disableDirectionSection(),this.selectItem(e.target),this.closePopupAndUpdateSort())},t.prototype.handleDirectionClick=function(e,n){var i=this;c.$$(e.target.parentElement.parentElement).hasClass(\"coveo-facet-settings-disabled\")||-1!=this.activeSort.name.indexOf(n)||(this.activeSort=t.availableSorts[this.activeSort.relatedSort],r.each(this.directionSection,function(e){i.unselectSection(e)}),this.selectItem(e.target),\"custom\"==this.activeSort.name&&this.customSortDirection!=n&&(this.customSortDirection=n,this.customSortDirectionChange=!0),this.closePopupAndUpdateSort())},t.prototype.handleSaveStateClick=function(){this.saveState(),this.close()},t.prototype.handleClearStateClick=function(){var e=this;this.facetStateLocalStorage.remove(),this.facet.reset(),this.close(),this.facet.triggerNewQuery(function(){return e.facet.usageAnalytics.logSearchEvent(y.analyticsActionCauseList.facetClearAll,{facetId:e.facet.options.id,facetField:e.facet.options.field.toString(),facetTitle:e.facet.options.title})})},t.prototype.addOnNukeHandler=function(){var e=this;c.$$(this.facet.root).on(s.InitializationEvents.nuke,function(){return e.handleNuke()})},t.prototype.addOnDocumentClickHandler=function(){var e=this;document.addEventListener(\"click\",function(){return e.onDocumentClick()})},t.prototype.getCurrentDirectionItem=function(e){var t=this;void 0===e&&(e=this.directionSection);var n;return r.each(e,function(e){n||(n=r.find(t.getItems(e),function(e){return-1!=t.activeSort.name.indexOf(e.getAttribute(\"data-direction\"))}))}),n||(n=e[0]),n},t.prototype.activateDirectionSection=function(){var e=this;r.each(this.directionSection,function(t){c.$$(t).removeClass(\"coveo-facet-settings-disabled\"),c.$$(t).find(\".coveo-facet-settings-item\").removeAttribute(\"aria-disabled\"),e.unselectSection(t)}),this.selectItem(this.getCurrentDirectionItem())},t.prototype.disableDirectionSection=function(){var e=this;r.each(this.directionSection,function(t){c.$$(t).addClass(\"coveo-facet-settings-disabled\"),c.$$(t).find(\".coveo-facet-settings-item\").setAttribute(\"aria-disabled\",\"true\"),e.unselectSection(t)})},t.prototype.getItems=function(e){return c.$$(e).findAll(\".coveo-facet-settings-item\")},t.prototype.unselectSection=function(e){r.each(this.getItems(e),function(e){c.$$(e).removeClass(\"coveo-selected\")})},t.prototype.selectItem=function(e){e&&c.$$(e).addClass(\"coveo-selected\")},t.prototype.unselectItem=function(e){e&&c.$$(e).removeClass(\"coveo-selected\")},t.prototype.filterDuplicateForRendering=function(){var e=this;r.each(this.enabledSorts,function(t,n){if(null!=t.relatedSort)for(var i=n+1;i<e.enabledSorts.length;i++)if(e.enabledSorts[i].name==t.relatedSort){e.enabledSortsIgnoreRenderBecauseOfPairs.push(e.enabledSorts[i]);break}})},t.prototype.appendIfNotUndefined=function(e){m.Utils.isNullOrUndefined(e)||this.settingsPopup.appendChild(e)},t.prototype.handleNuke=function(){document.removeEventListener(\"click\",this.onDocumentClick)},t}(g.FacetSort);t.FacetSettings=v},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(6),o=n(455),r=n(4),s=n(0),a=function(){function e(e,t){var n=this;this.facet=t,this.enabledSorts=[],this.customSortDirection=\"ascending\",s.each(e,function(e){var t=o.FacetSettings.availableSorts[e.toLowerCase()];void 0!=t&&n.enabledSorts.push(t)}),this.removeEnabledSortsBasedOnFacetType(),r.Utils.isNonEmptyArray(this.enabledSorts)&&(void 0!=this.facet.options.sortCriteria&&(this.activeSort=s.find(this.enabledSorts,function(e){return e.name==n.facet.options.sortCriteria})),this.activeSort||(this.activeSort=this.enabledSorts[0]))}return e.prototype.removeEnabledSortsBasedOnFacetType=function(){if(Coveo.FacetRange&&this.facet instanceof Coveo.FacetRange){this.facet.options.slider&&(this.enabledSorts=[])}},e.availableSorts={score:{label:i.l(\"Score\"),directionToggle:!1,description:i.l(\"ScoreDescription\"),name:\"score\"},occurrences:{label:i.l(\"Occurrences\"),directionToggle:!1,description:i.l(\"OccurrencesDescription\"),name:\"occurrences\"},alphaascending:{label:i.l(\"Label\"),directionToggle:!0,description:i.l(\"LabelDescription\"),name:\"alphaascending\",relatedSort:\"alphadescending\"},alphadescending:{label:i.l(\"Label\"),directionToggle:!0,description:i.l(\"LabelDescription\"),name:\"alphadescending\",relatedSort:\"alphaascending\"},computedfieldascending:{label:i.l(\"Value\"),directionToggle:!0,description:i.l(\"ValueDescription\"),name:\"computedfieldascending\",relatedSort:\"computedfielddescending\"},computedfielddescending:{label:i.l(\"Value\"),directionToggle:!0,description:i.l(\"ValueDescription\"),name:\"computedfielddescending\",relatedSort:\"computedfieldascending\"},chisquare:{label:i.l(\"RelativeFrequency\"),directionToggle:!1,description:i.l(\"RelativeFrequencyDescription\"),name:\"chisquare\"},nosort:{label:i.l(\"Nosort\"),directionToggle:!1,description:i.l(\"NosortDescription\"),name:\"nosort\"},custom:{label:i.l(\"Custom\"),directionToggle:!0,description:i.l(\"CustomDescription\"),name:\"custom\",relatedSort:\"custom\"}},e}();t.FacetSort=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(6),r=n(10);n(515);var s=n(12),a=n(14),u=n(17),l=function(){function e(e){this.options=e,this.element=document.createElement(\"div\"),i.$$(this.element).addClass(\"coveo-facet-header\")}return e.prototype.build=function(){var e=i.$$(\"div\",{className:\"coveo-facet-header-title-section\"});void 0!=this.options.icon&&(this.iconElement=this.buildIcon(),e.append(this.iconElement)),e.append(this.buildTitle()),this.waitElement=this.buildWaitAnimation(),e.append(this.waitElement),this.element.appendChild(e.el);var t=i.$$(\"div\",{className:\"coveo-facet-header-settings-section\"});return this.eraserElement=this.buildEraser(),t.append(this.eraserElement),this.options.facet&&(this.operatorElement=this.buildOperatorToggle(),t.append(this.operatorElement),i.$$(this.operatorElement).toggle(this.options.facet.options.enableTogglingOperator)),this.options.settingsKlass?(this.sort=this.settings=new this.options.settingsKlass(this.options.availableSorts,this.options.facet),t.append(this.settings.build())):this.options.sortKlass&&(this.sort=new this.options.sortKlass(this.options.availableSorts,this.options.facet)),this.element.appendChild(t.el),this.element},e.prototype.switchToAnd=function(){this.options.facet&&(this.options.facet.options.useAnd=!0,this.rebuildOperatorToggle(),this.updateOperatorQueryStateModel())},e.prototype.switchToOr=function(){this.options.facet&&(this.options.facet.options.useAnd=!1,this.rebuildOperatorToggle(),this.updateOperatorQueryStateModel())},e.prototype.collapseFacet=function(){this.collapseElement&&this.expandElement&&(i.$$(this.collapseElement).hide(),i.$$(this.expandElement).show()),i.$$(this.options.facetElement).addClass(\"coveo-facet-collapsed\")},e.prototype.expandFacet=function(){this.collapseElement&&this.expandElement&&(i.$$(this.expandElement).hide(),i.$$(this.collapseElement).show()),i.$$(this.options.facetElement).removeClass(\"coveo-facet-collapsed\")},e.prototype.updateOperatorQueryStateModel=function(){if(this.options.facet&&this.options.facet.options.enableTogglingOperator){var e=\"\";0==this.options.facet.getSelectedValues().length&&0==this.options.facet.getExcludedValues().length||(e=this.options.facet.options.useAnd?\"and\":\"or\"),this.options.facet.queryStateModel.set(this.options.facet.operatorAttributeId,e)}},e.prototype.rebuildOperatorToggle=function(){var e=this.buildOperatorToggle();this.operatorElement&&i.$$(this.operatorElement).replaceWith(e),this.operatorElement=e},e.prototype.buildIcon=function(){var e;return e=this.options.icon?\"coveo-icon-custom \"+this.options.icon:\"coveo-icon \"+this.options.field.substr(1),this.iconElement=document.createElement(\"div\"),i.$$(this.iconElement).addClass(e),this.iconElement},e.prototype.buildWaitAnimation=function(){return this.waitElement=i.$$(\"div\",{className:\"coveo-facet-header-wait-animation\"},s.SVGIcons.icons.loading).el,a.SVGDom.addClassToSVGInContainer(this.waitElement,\"coveo-facet-header-wait-animation-svg\"),this.waitElement.style.visibility=\"hidden\",this.waitElement},e.prototype.buildOperatorToggle=function(){var e=this,t=o.l(\"SwitchTo\",this.options.facet.options.useAnd?o.l(\"Or\"):o.l(\"And\")),n=i.$$(\"span\",{className:\"coveo-\"+(this.options.facet.options.useAnd?\"and\":\"or\")},s.SVGIcons.icons.orAnd);a.SVGDom.addClassToSVGInContainer(n.el,\"coveo-or-and-svg\");var r=i.$$(\"div\",{className:\"coveo-facet-header-operator\",title:t});return r.append(n.el),(new u.AccessibleButton).withElement(r).withLabel(t).withSelectAction(function(){return e.handleOperatorClick()}).build(),r.el},e.prototype.handleOperatorClick=function(){var e=this;if(this.options.facet.options.useAnd?this.options.facet.switchToOr():this.options.facet.switchToAnd(),0!=this.options.facet.getSelectedValues().length){var t=this.options.facet.options.useAnd?\"AND\":\"OR\",n=this.options.facet.options.useAnd?\"OR\":\"AND\";this.options.facet.triggerNewQuery(function(){return e.options.facet.usageAnalytics.logSearchEvent(r.analyticsActionCauseList.facetToggle,{facetId:e.options.facet.options.id,facetField:e.options.field.toString(),facetOperatorBefore:n,facetOperatorAfter:t,facetTitle:e.options.title})})}},e.prototype.buildTitle=function(){var e=i.$$(\"div\",{className:\"coveo-facet-header-title\"});return e.text(this.options.title),e.setAttribute(\"role\",\"heading\"),e.setAttribute(\"aria-level\",\"2\"),e.setAttribute(\"aria-label\",o.l(\"FacetTitle\",this.options.title)+\".\"),e.el},e.prototype.buildEraser=function(){var e=this,t=i.$$(\"div\",{className:\"coveo-facet-header-eraser\"},s.SVGIcons.icons.mainClear);return a.SVGDom.addClassToSVGInContainer(t.el,\"coveo-facet-header-eraser-svg\"),(new u.AccessibleButton).withElement(t.el).withLabel(o.l(\"Clear\",this.options.title)).withClickAction(function(){return e.onEraserClick()}).withEnterKeyboardAction(function(){return e.onEraserClick()}).build(),t.el},e.prototype.onEraserClick=function(){var e=this.options.facet||this.options.facetSlider;e.reset(),e.usageAnalytics.logSearchEvent(r.analyticsActionCauseList.facetClearAll,{facetId:e.options.id,facetField:e.options.field.toString(),facetTitle:e.options.title}),e.queryController.executeQuery()},e}();t.FacetHeader=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(518);var i=n(0),o=n(5),r=n(17),s=n(1),a=n(12),u=n(10),l=n(6),c=function(){function e(e,t){this.facet=e,this.facetValue=t}return e.prototype.build=function(){o.Assert.exists(this.facetValue);var e=this.buildElements(),t=e.container,n=e.caption,i=e.clear;return t.append(n.el),t.append(i.el),t},e.prototype.getBreadcrumbTooltip=function(){var e=[this.facet.getValueCaption(this.facetValue),this.facetValue.getFormattedCount(),this.facetValue.getFormattedComputedField(this.facet.options.computedFieldFormat)];return i.compact(e).join(\" \")},e.prototype.buildElements=function(){return{container:this.buildContainer(),clear:this.buildClear(),caption:this.buildCaption()}},e.prototype.buildContainer=function(){var e=this,t=s.$$(\"div\",{className:\"coveo-facet-breadcrumb-value\"});t.toggleClass(\"coveo-selected\",this.facetValue.selected),t.toggleClass(\"coveo-excluded\",this.facetValue.excluded);var n=this.facetValue.excluded?\"Unexclude\":\"RemoveFilterOn\",i=l.l(n,this.facet.getValueCaption(this.facetValue));return(new r.AccessibleButton).withElement(t).withLabel(i).withSelectAction(function(){return e.selectAction()}).build(),t},e.prototype.buildClear=function(){return s.$$(\"span\",{className:\"coveo-facet-breadcrumb-clear\"},a.SVGIcons.icons.mainClear)},e.prototype.buildCaption=function(){var e=s.$$(\"span\",{className:\"coveo-facet-breadcrumb-caption\"});return e.text(this.facet.getValueCaption(this.facetValue)),e},e.prototype.selectAction=function(){var e=this;this.facetValue.excluded?this.facet.unexcludeValue(this.facetValue.value):this.facet.deselectValue(this.facetValue.value),this.facet.triggerNewQuery(function(){return e.facet.usageAnalytics.logSearchEvent(u.analyticsActionCauseList.breadcrumbFacet,{facetId:e.facet.options.id,facetField:e.facet.options.field.toString(),facetValue:e.facetValue.value,facetTitle:e.facet.options.title})})},e}();t.BreadcrumbValueElement=c},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(20),o=n(0),r=n(5),s=n(6),a=n(1),u=function(){function e(e,t,n){this.facet=e,this.facetValues=t,this.breadcrumbValueElementKlass=n,this.setExpandedAndCollapsed(),this.elem=a.$$(\"div\",{className:\"coveo-facet-breadcrumb\"}).el;var i=a.$$(\"span\");i.addClass(\"coveo-facet-breadcrumb-title\"),i.text(this.facet.options.title+\":\"),this.elem.appendChild(i.el),this.valueContainer=a.$$(\"span\",{className:\"coveo-facet-breadcrumb-values\"}).el,this.elem.appendChild(this.valueContainer)}return e.prototype.build=function(){return this.buildExpanded(),0!=this.collapsed.length&&this.buildCollapsed(),this.elem},e.prototype.buildAsString=function(){return this.build(),this.elem?this.facet.options.title+\": \"+o.map(a.$$(this.elem).findAll(\".coveo-facet-breadcrumb-value\"),function(e){return a.$$(e).text()}).join(\", \"):\"\"},e.prototype.buildExpanded=function(){var e=this;o.each(this.expanded,function(t,n){var i=new e.breadcrumbValueElementKlass(e.facet,t).build();e.valueContainer.appendChild(i.el)})},e.prototype.buildCollapsed=function(){var e=this,t=o.filter(this.collapsed,function(e){return e.selected}).length,n=o.filter(this.collapsed,function(e){return e.excluded}).length;r.Assert.check(t+n==this.collapsed.length);var u=a.$$(\"div\",{className:\"coveo-facet-breadcrumb-value\"}),l=a.$$(\"span\",{className:\"coveo-facet-breadcrumb-multi-count\"});l.text(s.l(\"NMore\",i.format(t+n,\"n0\"))),u.append(l.el);var c=o.map(this.collapsed,function(t){return new e.breadcrumbValueElementKlass(e.facet,t)}),p=o.map(c,function(e){return e.getBreadcrumbTooltip()});u.el.setAttribute(\"title\",p.join(\"\\n\")),u.on(\"click\",function(){var e=[];o.each(c,function(t){e.push(t.build().el)}),o.each(e,function(e){a.$$(e).insertBefore(u.el)}),u.detach()}),this.valueContainer.appendChild(u.el)},e.prototype.setExpandedAndCollapsed=function(){this.facetValues.length>this.facet.options.numberOfValuesInBreadcrumb?(this.collapsed=o.rest(this.facetValues,this.facet.options.numberOfValuesInBreadcrumb),this.expanded=o.first(this.facetValues,this.facet.options.numberOfValuesInBreadcrumb)):(this.collapsed=[],this.expanded=this.facetValues)},e}();t.BreadcrumbValueList=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(67),o=n(1),r=n(4),s=n(16),a=n(170),u=n(10),l=n(6),c=n(5),p=n(125),h=n(19),d=n(126),f=n(26),m=n(18),y=n(124),g=n(205);n(519);var v=n(0),b=n(452),C=function(){function e(e,t,n){var r=this;this.facet=e,this.facetSearchValuesListKlass=t,this.root=n,this.moreValuesToFetch=!0,this.lastSearchWasEmpty=!0,this.facetSearchElement=new b.FacetSearchElement(this),this.onResize=v.debounce(function(){r.facet instanceof i.Facet&&r.facet.searchInterface instanceof m.SearchInterface&&r.shouldPositionSearchResults()&&r.positionSearchResults()},250),this.onDocumentClick=function(e){r.handleClickElsewhere(e)},window.addEventListener(\"resize\",this.onResize),document.addEventListener(\"click\",function(e){return r.onDocumentClick(e)}),o.$$(e.root).on(s.InitializationEvents.nuke,function(){return r.handleNuke()})}return Object.defineProperty(e.prototype,\"facetType\",{get:function(){return i.Facet.ID},enumerable:!0,configurable:!0}),e.prototype.build=function(){return this.buildBaseSearch()},e.prototype.positionSearchResults=function(e){void 0===e&&(e=this.search),this.facetSearchElement.positionSearchResults(this.root,this.facet.element.clientWidth,e)},e.prototype.fetchMoreValues=function(){this.triggerNewFacetSearch(this.buildParamsForFetchingMore())},e.prototype.dismissSearchResults=function(){this.cancelAnyPendingSearchOperation(),this.facet.unfadeInactiveValuesInMainList(),o.$$(this.searchResults).empty(),this.moreValuesToFetch=!0,o.$$(this.search).removeClass(\"coveo-facet-search-no-results\"),o.$$(this.facet.element).removeClass(\"coveo-facet-searching\"),this.facetSearchElement.hideSearchResultsElement(),this.input.value=\"\",o.$$(this.clear).hide(),this.currentlyDisplayedResults=void 0},e.prototype.triggerNewFacetSearch=function(e){var t=this;this.cancelAnyPendingSearchOperation(),this.facetSearchElement.showFacetSearchWaitingAnimation(),this.facet.logger.info(\"Triggering new facet search\"),this.facetSearchPromise=this.facet.facetQueryController.search(e),this.facetSearchPromise&&this.facetSearchPromise.then(function(n){t.facet.usageAnalytics.logCustomEvent(u.analyticsActionCauseList.facetSearch,{facetId:t.facet.options.id,facetField:t.facet.options.field.toString(),facetTitle:t.facet.options.title},t.facet.root),t.facet.logger.debug(\"Received field values\",n),t.processNewFacetSearchResults(n,e),t.facetSearchElement.hideFacetSearchWaitingAnimation(),t.facetSearchPromise=void 0}).catch(function(e){return r.Utils.exists(e)&&(t.facet.logger.error(\"Error while retrieving facet values\",e),t.facetSearchElement.hideFacetSearchWaitingAnimation()),t.facetSearchPromise=void 0,null})},e.prototype.focus=function(){this.facetSearchElement.focus()},Object.defineProperty(e.prototype,\"searchResults\",{get:function(){return this.facetSearchElement.searchResults},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"searchBarIsAnimating\",{get:function(){return this.facetSearchElement.searchBarIsAnimating},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"search\",{get:function(){return this.facetSearchElement.search},enumerable:!0,configurable:!0}),e.prototype.keyboardEventDefaultHandler=function(){this.moreValuesToFetch=!0,this.highlightCurrentQueryWithinSearchResults(),this.inputIsEmpty()?this.lastSearchWasEmpty||(this.currentlyDisplayedResults=void 0,o.$$(this.searchResults).empty(),this.lastSearchWasEmpty=!0,this.displayNewValues(this.buildParamsForFetchingMore())):(this.lastSearchWasEmpty=!1,this.displayNewValues(this.buildParamsForNormalSearch()))},e.prototype.keyboardNavigationEnterPressed=function(e){e.shiftKey?this.triggerNewFacetSearch(this.buildParamsForNormalSearch()):\"none\"!=this.searchResults.style.display?(this.performActionOnCurrentSearchResult(),this.dismissSearchResults()):o.$$(this.search).is(\".coveo-facet-search-no-results\")&&this.selectAllValuesMatchingSearch()},e.prototype.keyboardNavigationDeletePressed=function(e){e.shiftKey&&(this.performExcludeActionOnCurrentSearchResult(),this.dismissSearchResults(),this.input.value=\"\")},e.prototype.displayNewValues=function(e){var t=this;void 0===e&&(e=this.buildParamsForExcludingCurrentlyDisplayedValues()),this.cancelAnyPendingSearchOperation(),this.facetSearchTimeout=window.setTimeout(function(){t.triggerNewFacetSearch(e)},this.facet.options.facetSearchDelay)},e.prototype.getCaptions=function(){return o.$$(this.searchResults).findAll(\".coveo-facet-value-caption\")},e.prototype.getValueInInputForFacetSearch=function(){return this.facetSearchElement.getValueInInputForFacetSearch()},e.prototype.updateAriaLive=function(e){this.facet.searchInterface.ariaLive.updateText(e)},Object.defineProperty(e.prototype,\"input\",{get:function(){return this.facetSearchElement.input},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"clear\",{get:function(){return this.facetSearchElement.clear},enumerable:!0,configurable:!0}),e.prototype.shouldPositionSearchResults=function(){return!y.ResponsiveComponentsUtils.isSmallFacetActivated(o.$$(this.root))&&o.$$(this.facet.element).hasClass(\"coveo-facet-searching\")},e.prototype.buildBaseSearch=function(){var e=this;return this.facetSearchElement.build(function(){return e.handleFacetSearchClear()}),o.$$(this.facetSearchElement.input).on(\"keyup\",function(){return e.showOrHideClearElement()}),this.search},e.prototype.handleNuke=function(){window.removeEventListener(\"resize\",this.onResize),document.removeEventListener(\"click\",this.onDocumentClick)},e.prototype.handleClickElsewhere=function(e){this.currentlyDisplayedResults&&this.search!=e.target&&this.searchResults!=e.target&&this.input!=e.target&&this.dismissSearchResults()},e.prototype.handleFacetSearchClear=function(){this.input.value=\"\",o.$$(this.clear).hide(),this.dismissSearchResults()},e.prototype.showOrHideClearElement=function(){this.inputIsEmpty()?(o.$$(this.clear).hide(),o.$$(this.search).removeClass(\"coveo-facet-search-no-results\")):o.$$(this.clear).show()},e.prototype.cancelAnyPendingSearchOperation=function(){r.Utils.exists(this.facetSearchTimeout)&&(clearTimeout(this.facetSearchTimeout),this.facetSearchTimeout=void 0),r.Utils.exists(this.facetSearchPromise)&&(Promise.reject(this.facetSearchPromise).catch(function(){}),this.facetSearchPromise=void 0),this.facetSearchElement.hideFacetSearchWaitingAnimation()},e.prototype.inputIsEmpty=function(){return\"\"==this.input.value.trim()},e.prototype.processNewFacetSearchResults=function(e,t){c.Assert.exists(e),e=new g.FacetValuesOrder(this.facet,this.facet.facetSort).reorderValues(e),e.length>0?(o.$$(this.search).removeClass(\"coveo-facet-search-no-results\"),this.facet.fadeInactiveValuesInMainList(this.facet.options.facetSearchDelay),this.rebuildSearchResults(e,t),t.fetchMore||this.showSearchResultsElement(),this.highlightCurrentQueryWithinSearchResults(),this.makeFirstSearchResultTheCurrentOne()):t.fetchMore?this.moreValuesToFetch=!1:(this.facetSearchElement.hideSearchResultsElement(),o.$$(this.search).addClass(\"coveo-facet-search-no-results\"))},e.prototype.rebuildSearchResults=function(e,t){var n=this;c.Assert.exists(e),t.fetchMore||o.$$(this.searchResults).empty(),r.Utils.isNonEmptyString(t.valueToSearch)&&this.appendSelectAllResultsButton();var i=v.map(e,function(e){return p.FacetValue.create(e)});v.each(new this.facetSearchValuesListKlass(this.facet,d.FacetValueElement).build(i),function(e){n.facetSearchElement.appendToSearchResults(e)}),this.currentlyDisplayedResults?this.currentlyDisplayedResults=this.currentlyDisplayedResults.concat(v.pluck(i,\"value\")):this.currentlyDisplayedResults=v.pluck(i,\"value\"),v.each(o.$$(this.searchResults).findAll(\".coveo-facet-selectable\"),function(e,t){o.$$(e).setAttribute(\"id\",\"coveo-facet-search-\"+n.facet.options.id+\"-suggestion-\"+t),o.$$(e).setAttribute(\"role\",\"option\"),o.$$(e).setAttribute(\"aria-selected\",\"false\"),o.$$(e).addClass(\"coveo-facet-search-selectable\")})},e.prototype.appendSelectAllResultsButton=function(){var e=this,t=document.createElement(\"li\");o.$$(t).addClass([\"coveo-facet-selectable\",\"coveo-facet-search-selectable\",\"coveo-facet-search-select-all\"]),o.$$(t).text(l.l(\"SelectAll\")),o.$$(t).setAttribute(\"aria-hidden\",\"true\"),o.$$(t).on(\"click\",function(){return e.selectAllValuesMatchingSearch()}),this.facetSearchElement.appendToSearchResults(t)},e.prototype.buildParamsForNormalSearch=function(){var e=new a.FacetSearchParameters(this.facet);return e.setValueToSearch(this.getValueInInputForFacetSearch()),e.fetchMore=!1,e},e.prototype.buildParamsForFetchingMore=function(){var e=this.buildParamsForExcludingCurrentlyDisplayedValues();return e.fetchMore=!0,e},e.prototype.buildParamsForExcludingCurrentlyDisplayedValues=function(){var e=new a.FacetSearchParameters(this.facet);return e.excludeCurrentlyDisplayedValuesInSearch(this.searchResults),e.setValueToSearch(this.getValueInInputForFacetSearch()),e},e.prototype.showSearchResultsElement=function(){this.positionSearchResults()},e.prototype.highlightCurrentQueryWithinSearchResults=function(){var e=this.getValueInInputForFacetSearch(),t=new RegExp(\"(\"+h.StringUtils.wildcardsToRegex(e,this.facet.options.facetSearchIgnoreAccents)+\")\",\"ig\");this.facetSearchElement.highlightCurrentQueryInSearchResults(t)},e.prototype.makeFirstSearchResultTheCurrentOne=function(){this.facetSearchElement.setAsCurrentResult(o.$$(this.getSelectables()[0]))},e.prototype.getSelectables=function(e){return void 0===e&&(e=this.searchResults),o.$$(e).findAll(\".coveo-facet-selectable\")},e.prototype.performActionOnCurrentSearchResult=function(){var e=o.$$(this.searchResults).find(\".coveo-facet-search-current-result\");if(c.Assert.check(void 0!=e),o.$$(e).hasClass(\"coveo-facet-value-will-exclude\"))return void o.$$(e).find(\".coveo-facet-value-exclude\").click();var t=o.$$(e).find('input[type=\"checkbox\"]');t?(t.checked=!0,o.$$(t).trigger(\"change\")):e.click()},e.prototype.performExcludeActionOnCurrentSearchResult=function(){var e=o.$$(this.searchResults).find(\".coveo-facet-search-current-result\");c.Assert.check(null!=e);var t=o.$$(e).find(\".coveo-facet-value-caption\");this.facet.facetValuesList.get(o.$$(t).text()).toggleExcludeWithUA()},e.prototype.selectAllValuesMatchingSearch=function(){var e=this;this.facet.showWaitingAnimation();var t=new a.FacetSearchParameters(this.facet);t.nbResults=1e3,t.setValueToSearch(this.getValueInInputForFacetSearch()),this.facet.facetQueryController.search(t).then(function(t){e.dismissSearchResults(),f.ModalBox.close(!0);var n=v.map(t,function(t){var n=e.facet.values.get(t.value);return r.Utils.exists(n)||(n=p.FacetValue.create(t)),n.selected=!0,n.excluded=!1,n});e.facet.processFacetSearchAllResultsSelected(n)}),this.dismissSearchResults()},e}();t.FacetSearch=C},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(e,t){this.facet=e,this.facetValueElementKlass=t}return e.prototype.build=function(e){var t=this,n=i.map(e,function(e){return i.find(t.facet.values.getAll(),function(t){return t.value==e.value})||e});return i.map(n,function(e){var n=new t.facetValueElementKlass(t.facet,e,t.facet.keepDisplayedValuesNextTime).build();return n.renderer.excludeIcon.setAttribute(\"aria-hidden\",\"true\"),n.renderer.label.setAttribute(\"aria-hidden\",\"true\"),n.renderer.listItem})},e}();t.FacetSearchValuesList=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(126),o=n(1),r=n(125),s=n(4),a=n(43),u=n(205),l=n(0),c=function(){function e(e,t){this.facet=e,this.facetValueElementKlass=t,this.valueList={},this.currentlyDisplayed=[]}return e.prototype.build=function(){return this.valueContainer=document.createElement(\"ul\"),o.$$(this.valueContainer).addClass(\"coveo-facet-values\"),this.valueContainer},e.prototype.getAllCurrentlyDisplayed=function(){return this.currentlyDisplayed},e.prototype.getAll=function(){return l.toArray(this.valueList)},e.prototype.getAllFacetValue=function(){return l.map(this.getAll(),function(e){return e.facetValue})},e.prototype.get=function(e){var t;return e instanceof r.FacetValue?t=e.value:(e=s.Utils.anyTypeToString(e),t=e),this.ensureFacetValueIsInList(e),this.valueList[t.toLowerCase()]},e.prototype.select=function(e){var t=this.get(e);return t.select(),t},e.prototype.unselect=function(e){var t=this.get(e);return t.unselect(),t},e.prototype.exclude=function(e){var t=this.get(e);return t.exclude(),t},e.prototype.unExclude=function(e){var t=this.get(e);return t.unexclude(),t},e.prototype.toggleSelect=function(e){var t=this.get(e);return t.facetValue.selected?t.unselect():t.select(),t},e.prototype.toggleExclude=function(e){var t=this.get(e);return t.facetValue.excluded?t.unexclude():t.exclude(),t},e.prototype.rebuild=function(e){var t=this;o.$$(this.valueContainer).empty(),this.currentlyDisplayed=[];var n=this.getValuesToBuildWith(),i=e,r=document.createDocumentFragment();l.each(n,function(e,n,o){if(t.facetValueShouldBeRemoved(e))t.facet.values.remove(e.value),i+=1;else if(n<i){var s=new t.facetValueElementKlass(t.facet,e,!0);t.valueList[e.value.toLowerCase()]=s;var a=s.build().renderer.listItem;r.appendChild(a),t.currentlyDisplayed.push(s)}}),this.valueContainer.appendChild(r),a.FacetUtils.addNoStateCssClassToFacetValues(this.facet,this.valueContainer)},e.prototype.getValuesToBuildWith=function(){return this.facet.facetSort?new u.FacetValuesOrder(this.facet,this.facet.facetSort).reorderValues(this.facet.values.getAll()):this.facet.values.getAll()},e.prototype.facetValueShouldBeRemoved=function(e){return!(0!=e.occurrences||0!=e.delta&&void 0!=e.delta||e.selected||e.excluded||this.facet.keepDisplayedValuesNextTime)},e.prototype.ensureFacetValueIsInList=function(e){var t;e instanceof r.FacetValue?null==(t=this.facet.values.get(e.value))&&(this.facet.values.add(e),t=e):null==(t=this.facet.values.get(e))&&(t=r.FacetValue.createFromValue(e),this.facet.values.add(t));var n=t.value.toLowerCase(),o=this.valueList[n];void 0==o?(o=this.valueList[n]=new i.FacetValueElement(this.facet,t,!0),o.build()):o.facetValue=t},e}();t.FacetValuesList=c},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(450),r=function(e){function t(t,n,i,o,r){var s=e.call(this,t,n,o,r)||this;return s.facet=t,s.facetValue=n,s.eventArg=i,s}return i(t,e),t.prototype.bindEvent=function(){e.prototype.bindEvent.call(this,{displayNextTime:!1,pinFacet:!1,omniboxObject:this.eventArg})},t}(o.ValueElement);t.OmniboxValueElement=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(1),r=n(4),s=n(43),a=function(){function e(e,t,n,i){this.facet=e,this.facetValues=t,this.omniboxObject=n,this.omniboxValueElementKlass=i}return e.prototype.build=function(){var e=this,t=[];return i.each(this.facetValues,function(n){t.push(e.buildOmniboxForOneRow(n,e.omniboxObject))}),this.buildFinalOmniboxElement(t)},e.prototype.buildOmniboxForOneRow=function(e,t){var n=this,i=function(e,t){return n.logAnalyticsEvent(e,t)},r=function(e,t){return n.logAnalyticsEvent(e,t)},s=new this.omniboxValueElementKlass(this.facet,e,t,i,r),a=s.build().renderer.listItem,u=t.completeQueryExpression.regex,l=t.completeQueryExpression.word;o.$$(a).find(\".coveo-facet-value-caption\").innerHTML=this.highlightOmniboxMatch(this.facet.getValueCaption(e),u,l);var c=o.$$(\"ul\",{className:\"coveo-omnibox-selectable coveo-facet-value coveo-omnibox-facet-value\"}).el;return c.appendChild(a),o.$$(c).on(\"keyboardSelect\",function(){var e=o.$$(a).find(\"input[type=checkbox]\");o.$$(e).trigger(\"change\")}),c[\"no-text-suggestion\"]=!0,c},e.prototype.buildFinalOmniboxElement=function(e){var t=this.buildOmniboxHeader();if(!r.Utils.isEmptyArray(e)){var n=o.$$(\"div\",{className:\"coveo-omnibox-facet-value\"}).el;return n.appendChild(t),i.each(e,function(e){n.appendChild(e)}),s.FacetUtils.addNoStateCssClassToFacetValues(this.facet,n),n}},e.prototype.buildOmniboxHeader=function(){var e=this.facet.options.title,t=o.$$(\"div\",{className:\"coveo-omnibox-facet-header\"}).el;return o.$$(t).text(e),t},e.prototype.highlightOmniboxMatch=function(e,t,n){var i=e.search(t),o=i+n.length;return e.slice(0,i)+'<span class=\"coveo-highlight\">'+e.slice(i,o)+\"</span>\"+e.slice(o)},e.prototype.logAnalyticsEvent=function(e,t){var n=i.pluck(this.facetValues,\"value\");e.facet.usageAnalytics.logSearchEvent(t,{query:this.omniboxObject.completeQueryExpression.word,facetId:e.facet.options.id,facetField:e.facet.options.field.toString(),facetTitle:e.facet.options.title,facetValue:e.facetValue.value,suggestions:n.join(\";\"),suggestionRanking:i.indexOf(n,e.facetValue.value)})},e}();t.OmniboxValuesList=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(48),o=n(466),r=n(209),s=n(0),a=function(){function e(e,t,n,i){this.ref=e,this.occurrence=t,this.id=n,this.grammar=i}return e.prototype.parse=function(e,t){var n=this.grammar.getExpression(this.ref);if(null==n)throw new Error(\"Expression not found:\"+this.ref);return\"?\"==this.occurrence||null==this.occurrence?this.parseOnce(e,t,n):this.parseMany(e,t,n)},e.prototype.parseOnce=function(e,t,n){var a=n.parse(e,t),u=a.isSuccess();return u||\"?\"!=this.occurrence?new o.RefResult([a],this,e,u?null:a):t?0==e.length?new o.RefResult([],this,e,a):s.all(a.getBestExpect(),function(e){return e.expression==r.ExpressionEndOfInput})?new o.RefResult([new i.Result(null,r.ExpressionEndOfInput,e)],this,e,a):a:new o.RefResult([],this,e,null)},e.prototype.parseMany=function(e,t,n){var a,u,l=[],c=e;do{a=n.parse(c,!1),(u=a.isSuccess())&&(l.push(a),c=c.substr(a.getLength()))}while(u&&a.input!=c);var p=s.isNumber(this.occurrence)?this.occurrence:\"+\"==this.occurrence?1:0;if(l.length<p)l.push(a);else if(t)if(l.length>0){var h=s.last(l);a=n.parse(h.input,!0),a.isSuccess()?l[l.length-1]=a:(l.push(new i.Result(null,r.ExpressionEndOfInput,h.input.substr(h.getLength()))),a=n.parse(h.input.substr(h.getLength()),!0))}else if(0!=e.length){var d=new i.Result(null,r.ExpressionEndOfInput,e);return new o.RefResult([d],this,e,a)}return new o.RefResult(l,this,e,a)},e.prototype.toString=function(){return this.id},e}();t.ExpressionRef=a},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(48),r=n(0),s=function(e){function t(t,n,i,o){var s=e.call(this,t,n,i)||this;return s.expression=n,s.input=i,r.last(t)!=o&&(s.failAttempt=o,null!=s.failAttempt&&(s.failAttempt.parent=s)),s}return i(t,e),t.prototype.getExpect=function(){var t=e.prototype.getExpect.call(this);return null!=this.failAttempt?t.concat(this.failAttempt.getExpect()):t},t.prototype.clean=function(t){if(null!=this.failAttempt&&(null!=t||!this.isSuccess())){t=t||r.last(this.getBestExpect()).path(this);var n=r.first(t);if(null!=n&&n==this.failAttempt){var i=r.last(this.subResults),s=r.map(null!=i&&i.isSuccess()?this.subResults:r.initial(this.subResults),function(e){return e.clean()});return s.push(n.clean(r.rest(t))),new o.Result(s,this.expression,this.input)}}return e.prototype.clean.call(this,t)},t}(o.Result);t.RefResult=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(468),o=function(){function e(e,t){this.parts=e,this.id=t}return e.prototype.parse=function(e,t){for(var n=[],o=0;o<this.parts.length;o++){var r=this.parts[o].parse(e,t);if(r.isSuccess())return new i.OptionResult(r,this,e,n);n.push(r)}return new i.OptionResult(null,this,e,n)},e.prototype.toString=function(){return this.id},e}();t.ExpressionOptions=o},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(48),r=n(0),s=function(e){function t(t,n,i,o){var s=e.call(this,null!=t?[t]:null,n,i)||this;return s.result=t,s.expression=n,s.input=i,s.failAttempt=o,r.forEach(s.failAttempt,function(e){e.parent=s}),s}return i(t,e),t.prototype.getExpect=function(){var e=this,t=[];return null!=this.result&&(t=this.result.getExpect()),t=r.reduce(this.failAttempt,function(e,t){return e.concat(t.getExpect())},t),t.length>0&&r.all(t,function(t){return t.input==e.input})?[this]:t},t.prototype.clean=function(e){if(null!=e||!this.isSuccess()){e=r.rest(e||r.last(this.getBestExpect()).path(this));var t=r.first(e);return null==t?new o.Result(null,this.expression,this.input):new o.Result([t.clean(r.rest(e))],this.expression,this.input)}return new o.Result(r.map(this.result.subResults,function(e){return e.clean()}),this.expression,this.input)},t}(o.Result);t.OptionResult=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(48),o=n(48),r=function(){function e(e,t,n){this.value=e,this.id=t}return e.prototype.parse=function(e,t){var n=e.match(this.value);null!=n&&0!=n.index&&(n=null);var r=new i.Result(null!=n?n[0]:null,this,e);return r.isSuccess()&&t&&e.length>r.value.length?new o.EndOfInputResult(r):r},e.prototype.toString=function(){return this.id},e}();t.ExpressionRegExp=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(e,t,n){this.func=e,this.id=t,this.grammar=n}return e.prototype.parse=function(e,t){return this.func(e,t,this)},e.prototype.toString=function(){return this.id},e}();t.ExpressionFunction=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(48),o=function(){function e(e,t){if(this.parts=e,this.id=t,0==e.length)throw new Error(JSON.stringify(t)+\" should have at least 1 parts\")}return e.prototype.parse=function(e,t){for(var n,o=[],r=e,s=0;s<this.parts.length;s++){if(n=this.parts[s].parse(r,t&&s==this.parts.length-1),o.push(n),!n.isSuccess())break;r=r.substr(n.getLength())}return new i.Result(o,this,e)},e.prototype.toString=function(){return this.id},e}();t.ExpressionList=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(211);t.NestedQuery={basicExpressions:[\"NestedQuery\"],grammars:{NestedQuery:\"[[NestedField][OptionalSpaces][Expressions]]\",NestedField:\"[[Field]]\",FieldValue:[\"NestedQuery\"]},include:[i.Field]}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(127);t.Date={grammars:{Date:\"[DateYear]/[DateMonth]/[DateDay]\",DateYear:/([0-9]{4})/,DateMonth:/(1[0-2]|0?[1-9])/,DateDay:/([1-2][0-9]|3[0-1]|0?[1-9])/,DateRange:\"[Date][Spaces?]..[Spaces?][Date]\",DateRelative:[\"DateRelativeNegative\",\"DateRelativeTerm\"],DateRelativeTerm:/now|today|yesterday/,DateRelativeNegative:\"[DateRelativeTerm][DateRelativeNegativeRef]\",DateRelativeNegativeRef:/([\\-\\+][0-9]+(s|m|h|d|mo|y))/},include:[i.Basic]}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(127);t.QueryExtension={basicExpressions:[\"QueryExtension\"],grammars:{QueryExtension:\"$[QueryExtensionName]([QueryExtensionArguments])\",QueryExtensionName:/\\w+/,QueryExtensionArguments:\"[QueryExtensionArgumentList*][QueryExtensionArgument]\",QueryExtensionArgumentList:\"[QueryExtensionArgument][Spaces?],[Spaces?]\",QueryExtensionArgument:\"[QueryExtensionArgumentName]:[Spaces?][QueryExtensionArgumentValue]\",QueryExtensionArgumentName:/\\w+/,QueryExtensionArgumentValue:[\"SingleQuoted\",\"Expressions\"]},include:[i.Basic]}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.SubExpression={basicExpressions:[\"SubExpression\"],grammars:{SubExpression:\"([Expressions])\"}}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(23),r=n(6),s=n(1),a=n(25),u=function(){function e(e,t,n){this.onchange=t,this.magicBox=n,this.hasFocus=!1,this.root=o.Component.resolveRoot(e),this.underlay=document.createElement(\"div\"),this.underlay.className=\"magic-box-underlay\",this.highlightContainer=document.createElement(\"span\"),this.highlightContainer.className=\"magic-box-highlight-container\",this.underlay.appendChild(this.highlightContainer),this.ghostTextContainer=document.createElement(\"span\"),this.ghostTextContainer.className=\"magic-box-ghost-text\",this.underlay.appendChild(this.ghostTextContainer),this.input=s.$$(e).find(\"input\"),this.input?e.insertBefore(this.underlay,this.input):(this.input=document.createElement(\"input\"),e.appendChild(this.underlay),e.appendChild(this.input)),this.setupHandler(),this.addAccessibilitiesProperties()}return e.prototype.updateInput=function(){this.input.value!=this.result.input&&(this.input.value=this.result.input,this.hasFocus&&this.setCursor(this.getValue().length))},e.prototype.updateHighlight=function(){s.$$(this.highlightContainer).empty(),this.highlightContainer.appendChild(this.result.toHtmlElement())},e.prototype.updateWordCompletion=function(){s.$$(this.ghostTextContainer).empty(),this.ghostTextContainer.innerHTML=\"\",null!=this.wordCompletion&&this.ghostTextContainer.appendChild(document.createTextNode(this.wordCompletion.substr(this.result.input.length)))},e.prototype.setResult=function(e,t){this.result=e,this.updateInput(),this.updateHighlight(),i.isUndefined(t)&&null!=this.wordCompletion&&0==this.wordCompletion.indexOf(this.result.input)?this.updateWordCompletion():this.setWordCompletion(t),this.updateScroll()},e.prototype.setWordCompletion=function(e){null!=e&&0!=e.toLowerCase().indexOf(this.result.input.toLowerCase())&&(e=null),this.wordCompletion=e,this.updateWordCompletion(),this.updateScroll()},e.prototype.setCursor=function(e){if(this.input.focus(),this.input.createTextRange){var t=this.input.createTextRange();t.move(\"character\",e),t.select()}else null!=this.input.selectionStart&&(this.input.focus(),this.input.setSelectionRange(e,e))},e.prototype.getCursor=function(){return this.input.selectionStart},e.prototype.updateScroll=function(e){var t=this;void 0===e&&(e=!0);var n=function(){t.underlay.clientWidth<t.underlay.scrollWidth&&(t.underlay.style.visibility=\"hidden\",t.underlay.scrollLeft=t.input.scrollLeft,t.underlay.scrollTop=t.input.scrollTop,t.underlay.style.visibility=\"visible\"),t.updateScrollDefer=null,t.hasFocus&&t.updateScroll()};e?null==this.updateScrollDefer&&(this.updateScrollDefer=requestAnimationFrame(n)):n()},e.prototype.setupHandler=function(){var e=this;this.input.onblur=function(){e.hasFocus=!1,setTimeout(function(){e.hasFocus||e.onblur&&e.onblur()},300),e.updateScroll()},this.input.onfocus=function(){e.hasFocus||(e.hasFocus=!0,e.updateScroll(),e.onfocus&&e.onfocus())},this.input.onkeydown=function(t){e.keydown(t)},this.input.onkeyup=function(t){e.keyup(t)},this.input.oncut=function(){setTimeout(function(){e.onInputChange()})},this.input.onpaste=function(){setTimeout(function(){e.onInputChange()})}},e.prototype.addAccessibilitiesProperties=function(){this.input.setAttribute(\"type\",\"text\"),this.input.setAttribute(\"role\",\"searchbox\"),this.input.setAttribute(\"form\",\"coveo-dummy-form\"),this.input.setAttribute(\"aria-autocomplete\",\"list\"),this.input.setAttribute(\"title\",r.l(\"InsertAQuery\")+\". \"+r.l(\"PressEnterToSend\"))},e.prototype.focus=function(){var e=this;this.hasFocus=!0,setTimeout(function(){e.input.focus(),e.setCursor(e.getValue().length)})},e.prototype.blur=function(){this.hasFocus&&this.input.blur()},e.prototype.keydown=function(e){var t=this;switch(e.keyCode||e.which){case a.KEYBOARD.TAB:this.tabPress(),this.magicBox.clearSuggestion();break;default:e.stopPropagation(),null==this.onkeydown||this.onkeydown(e.keyCode||e.which)?requestAnimationFrame(function(){t.onInputChange()}):e.preventDefault()}},e.prototype.keyup=function(e){switch(e.keyCode||e.which){case a.KEYBOARD.LEFT_ARROW:case a.KEYBOARD.RIGHT_ARROW:this.handleLeftRightArrow(e);break;default:null==this.onkeydown||this.onkeyup(e.keyCode||e.which)?this.onInputChange():e.preventDefault()}},e.prototype.handleLeftRightArrow=function(e){s.$$(this.root).find(\".\"+o.Component.computeCssClassNameForType(\"QuerySuggestPreview\"))||this.onchangecursor(),null==this.onkeydown||this.onkeyup(e.keyCode||e.which)?this.onInputChange():e.preventDefault()},e.prototype.tabPress=function(){this.ontabpress&&this.ontabpress(),this.onblur&&this.onblur()},e.prototype.onInputChange=function(){this.result.input!=this.input.value&&this.onchange(this.input.value,!1)},e.prototype.getValue=function(){return this.input.value},e.prototype.getWordCompletion=function(){return this.wordCompletion},e}();t.InputManager=u},function(e,t,n){\"use strict\";function i(e){return new Promise(function(t,n){return e.forEach(function(e){return Promise.resolve(e).then(t,n)})})}var o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},r=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},s=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var a,u=n(0);!function(e){e[e.Finished=0]=\"Finished\",e[e.TimedOut=1]=\"TimedOut\",e[e.Overriden=2]=\"Overriden\"}(a=t.ProcessingStatus||(t.ProcessingStatus={}));var l=function(){function e(e){void 0===e&&(e={}),this.options=o({timeout:500},e)}return e.prototype.processQueries=function(e){return r(this,void 0,void 0,function(){var t,n=this;return s(this,function(o){return this.overrideIfProcessing(),this.processedResults=new Array(e.length),t=e.map(function(e){return e instanceof Promise?e:Promise.resolve(e)}),[2,i([this.accumulateResultsChronologically(t).then(function(){return n.buildProcessResults(a.Finished)}),this.waitForOverride().then(function(){return n.buildProcessResults(a.Overriden)}),this.waitForTimeout().then(function(){return n.buildProcessResults(a.TimedOut)})])]})})},e.prototype.overrideIfProcessing=function(){return r(this,void 0,void 0,function(){return s(this,function(e){return this.override&&this.override(),[2]})})},Object.defineProperty(e.prototype,\"orderedResults\",{get:function(){return u.flatten(this.processedResults.filter(function(e){return!!e}),!0)},enumerable:!0,configurable:!0}),e.prototype.buildProcessResults=function(e){return{status:e,results:e!==a.Overriden?this.orderedResults:[]}},e.prototype.accumulateResultsChronologically=function(e){return r(this,void 0,void 0,function(){var t;return s(this,function(n){switch(n.label){case 0:return t=this.processedResults,[4,Promise.all(e.map(function(e,n){return e.then(function(e){return t[n]=e})}))];case 1:return n.sent(),[2]}})})},e.prototype.waitForOverride=function(){var e=this;return new Promise(function(t){e.override=function(){e.override=null,t()}})},e.prototype.waitForTimeout=function(){var e=this;return new Promise(function(t){return setTimeout(function(){return t()},e.options.timeout)})},e}();t.QueryProcessor=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(472),o=n(474),r=n(127),s=n(211),a=n(475);t.Complete={include:[i.NestedQuery,o.QueryExtension,a.SubExpression,s.Field,r.Basic]}},function(e,t,n){\"use strict\";function i(e,t,n,i){a.each(i.expressions,function(t){a.contains(e,t)||e.push(t)}),a.each(i.basicExpressions,function(e){a.contains(t,e)||t.push(e)}),a.each(i.grammars,function(e,t){if(t in n){if(!a.isArray(n[t])||!a.isArray(e))throw a.each(e,function(e){n[t].push(e)}),new Error(\"Can not merge \"+t+\"(\"+JSON.stringify(e)+\" => \"+JSON.stringify(n[t])+\")\");a.each(e,function(e){n[t].push(e)})}else n[t]=e})}function o(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=[],o=[],r={Start:[\"Expressions\",\"Empty\"],Expressions:\"[OptionalSpaces][Expression][ExpressionsList*][OptionalSpaces]\",ExpressionsList:\"[Spaces][Expression]\",Expression:n,BasicExpression:o,OptionalSpaces:/ */,Spaces:/ +/,Empty:/(?!.)/},s=0;s<e.length;s++)i(n,o,r,e[s]),a.each(e[s].include,function(t){a.contains(e,t)||e.push(t)});return n.push(\"BasicExpression\"),{start:\"Start\",expressions:r}}function r(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=o.apply(this,e);return new s.Grammar(n.start,n.expressions)}Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(175),a=n(0);t.Expressions=o,t.ExpressionsGrammar=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.updateResultPreviewsManagerOptions=\"updateResultPreviewsManagerOptions\",e.populateSearchResultPreviews=\"populateSearchResultPreviews\",e}();t.ResultPreviewsManagerEvents=i},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(27),r=function(){function e(e){this.owner=e}return Object.defineProperty(e.prototype,\"options\",{get:function(){return this.owner.options},set:function(e){this.owner.options=e},enumerable:!0,configurable:!0}),e.prototype.postProcess=function(){this.options=i({},this.options,this.owner.componentOptionsModel.get(o.ComponentOptionsModel.attributesEnum.searchBox)),this.processQueryOnClearVersusEmptyQuery(),this.processQueryOnClearVersusSearchAsYouType()},e.prototype.processQueryOnClearVersusEmptyQuery=function(){this.options.triggerQueryOnClear&&!1===this.owner.searchInterface.options.allowQueriesWithoutKeywords&&(this.owner.logger.warn('Forcing option triggerQueryOnClear to false, as it is not supported when the search interface is configured to not allow queries without keywords (data-allow-queries-without-keywords=\"false\")',this.owner),this.options.triggerQueryOnClear=!1)},e.prototype.processQueryOnClearVersusSearchAsYouType=function(){!0===this.owner.searchInterface.options.allowQueriesWithoutKeywords&&!1===this.options.triggerQueryOnClear&&!0===this.options.enableSearchAsYouType&&(this.owner.logger.warn(\"Forcing option triggerQueryOnClear to true, since search-as-you-type is enabled\",this.owner),this.options.triggerQueryOnClear=!0)},e}();t.QueryboxOptionsProcessing=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(70),r=function(){function e(e){this.options=e}return e.queryIsBlocked=function(){return!!e.queryIsCurrentlyBlocked||(e.queryIsCurrentlyBlocked=!0,o.Defer.defer(function(){return e.allowDuplicateQuery()}),!1)},e.allowDuplicateQuery=function(){e.queryIsCurrentlyBlocked=!1},e.prototype.addParameters=function(t,n){e.queryIsBlocked()||(this.options.enableWildcards&&(t.enableWildcards=!0),this.options.enableQuestionMarks&&(t.enableQuestionMarks=!0),this.options.enableLowercaseOperators&&(t.enableLowercaseOperators=!0),i.isEmpty(n)||(t.enableQuerySyntax=this.options.enableQuerySyntax,t.expression.add(n),this.options.enablePartialMatch&&(t.enablePartialMatch=this.options.enablePartialMatch,this.options.partialMatchKeywords&&(t.partialMatchKeywords=this.options.partialMatchKeywords),this.options.partialMatchThreshold&&(t.partialMatchThreshold=this.options.partialMatchThreshold))))},e.queryIsCurrentlyBlocked=!1,e}();t.QueryboxQueryParameters=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i,o=n(0),r=n(5);!function(e){e.RELEVANCY=\"relevancy\",e.DATE=\"date\",e.QRE=\"qre\"}(i=t.VALID_SORT||(t.VALID_SORT={}));var s;!function(e){e.ASCENDING=\"ascending\",e.DESCENDING=\"descending\"}(s=t.VALID_DIRECTION||(t.VALID_DIRECTION={}));var a=function(){function e(t,n){void 0===n&&(n=\"\"),this.sort=t,this.direction=n,e.sortIsField(t)||r.Assert.check(this.isValidSort(t),t+\" is not a valid sort criteria. Valid values are \"+o.values(i)+\" or a valid index sortable index field.\"),e.sortNeedsDirection(t)?r.Assert.check(this.isValidDirection(n),n+\" is not a valid sort criteria direction. Valid values are \"+o.values(s)):r.Assert.check(\"\"==n)}return e.prototype.isValidDirection=function(e){return o.chain(s).values().contains(e).value()},e.prototype.isValidSort=function(e){return o.chain(i).values().contains(e).value()},e.sortIsField=function(e){return\"@\"==e.charAt(0)},e.sortNeedsDirection=function(t){return o.contains(e.sortsNeedingDirection,t)||e.sortIsField(t)},e.sortsNeedingDirection=[i.DATE],e}();t.SortCriterion=a;var u=function(){function e(e){var t=this;this.criteria=[],e.split(\";\").forEach(function(e){var n=e.match(/\\S+/g);t.criteria.push(new a(n[0],n[1]))})}return Object.defineProperty(e.prototype,\"direction\",{get:function(){return o.first(this.criteria).direction},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"sort\",{get:function(){return o.first(this.criteria).sort},enumerable:!0,configurable:!0}),e.parse=function(t){return new e(t)},e.prototype.putInQueryBuilder=function(e){r.Assert.exists(e),e.sortCriteria=this.toString().split(\";\").join(\",\")},e.prototype.toString=function(){return this.criteria.map(function(e){return e.direction?e.sort+\" \"+e.direction:\"\"+e.sort}).join(\";\")},e.prototype.equals=function(e){return e.toString()==this.toString()},e}();t.SortCriteria=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.cancelLastAction=\"cancelLastAction\",e}();t.QuerySummaryEvents=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(82),o=n(1),r=n(0),s=function(){function e(e,t,n){this.structure=e,this.onSelect=t,this.onTabPress=n}return e.prototype.buildOmniboxElement=function(e,t){var n;if(0!=e.length){if(n=o.$$(\"div\").el,this.structure.header){var i=this.buildElementHeader();n.appendChild(i)}var s=this.buildRowElements(e,t);r.each(s,function(e){n.appendChild(e)})}return n},e.prototype.buildElementHeader=function(){return o.$$(\"div\",void 0,this.structure.header.template({headerTitle:this.structure.header.title})).el},e.prototype.buildRowElements=function(e,t){var n=this,s=[];return r.each(e,function(e){var r=o.$$(\"div\",void 0,n.structure.row({rawValue:e.value,data:i.DomUtils.highlightElement(e.value,t.completeQueryExpression.word)})).el;o.$$(r).on(\"click\",function(){n.onSelect.call(n,e.value,t)}),o.$$(r).on(\"keyboardSelect\",function(){n.onSelect.call(n,e.value,t)}),o.$$(r).on(\"tabSelect\",function(){n.onTabPress.call(n,e.value,t)}),s.push(r)}),s},e}();t.SuggestionForOmnibox=s},function(e,t){},function(e,t,n){\"use strict\";function i(e){function t(t){var i=t+\"\",s=n.get(i);if(!s){if(r!==B)return r;n.set(i,s=o.push(t))}return e[(s-1)%e.length]}var n=Object(N.c)(),o=[],r=B;return e=null==e?[]:L.call(e),t.domain=function(e){if(!arguments.length)return o.slice();o=[],n=Object(N.c)();for(var i,r,s=-1,a=e.length;++s<a;)n.has(r=(i=e[s])+\"\")||n.set(r,o.push(i));return t},t.range=function(n){return arguments.length?(e=L.call(n),t):e.slice()},t.unknown=function(e){return arguments.length?(r=e,t):r},t.copy=function(){return i().domain(o).range(e).unknown(r)},t}function o(){function e(){var e=s().length,i=u[1]<u[0],o=u[i-0],r=u[1-i];t=(r-o)/Math.max(1,e-c+2*p),l&&(t=Math.floor(t)),o+=(r-o-t*(e-c))*h,n=t*(1-c),l&&(o=Math.round(o),n=Math.round(n));var d=Object($.s)(e).map(function(e){return o+t*e});return a(i?d.reverse():d)}var t,n,r=i().unknown(void 0),s=r.domain,a=r.range,u=[0,1],l=!1,c=0,p=0,h=.5;return delete r.unknown,r.domain=function(t){return arguments.length?(s(t),e()):s()},r.range=function(t){return arguments.length?(u=[+t[0],+t[1]],e()):u.slice()},r.rangeRound=function(t){return u=[+t[0],+t[1]],l=!0,e()},r.bandwidth=function(){return n},r.step=function(){return t},r.round=function(t){return arguments.length?(l=!!t,e()):l},r.padding=function(t){return arguments.length?(c=p=Math.max(0,Math.min(1,t)),e()):c},r.paddingInner=function(t){return arguments.length?(c=Math.max(0,Math.min(1,t)),e()):c},r.paddingOuter=function(t){return arguments.length?(p=Math.max(0,Math.min(1,t)),e()):p},r.align=function(t){return arguments.length?(h=Math.max(0,Math.min(1,t)),e()):h},r.copy=function(){return o().domain(s()).range(u).round(l).paddingInner(c).paddingOuter(p).align(h)},e()}function r(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,delete e.paddingOuter,e.copy=function(){return r(t())},e}function s(){return r(o().paddingInner(1))}function a(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:U(t)}function u(e){return function(t,n){var i=e(t=+t,n=+n);return function(e){return e<=t?0:e>=n?1:i(e)}}}function l(e){return function(t,n){var i=e(t=+t,n=+n);return function(e){return e<=0?t:e>=1?n:i(e)}}}function c(e,t,n,i){var o=e[0],r=e[1],s=t[0],a=t[1];return r<o?(o=n(r,o),s=i(a,s)):(o=n(o,r),s=i(s,a)),function(e){return s(o(e))}}function p(e,t,n,i){var o=Math.min(e.length,t.length)-1,r=new Array(o),s=new Array(o),a=-1;for(e[o]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++a<o;)r[a]=n(e[a],e[a+1]),s[a]=i(t[a],t[a+1]);return function(t){var n=Object($.b)(e,t,1,o)-1;return s[n](r[n](t))}}function h(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp())}function d(e,t){function n(){return o=Math.min(h.length,d.length)>2?p:c,r=s=null,i}function i(t){return(r||(r=o(h,d,m?u(e):e,f)))(+t)}var o,r,s,h=q,d=q,f=Q.a,m=!1;return i.invert=function(e){return(s||(s=o(d,h,a,m?l(t):t)))(+e)},i.domain=function(e){return arguments.length?(h=k.call(e,j),n()):h.slice()},i.range=function(e){return arguments.length?(d=L.call(e),n()):d.slice()},i.rangeRound=function(e){return d=L.call(e),f=Q.r,n()},i.clamp=function(e){return arguments.length?(m=!!e,n()):m},i.interpolate=function(e){return arguments.length?(f=e,n()):f},n()}function f(e){var t=e.domain;return e.ticks=function(e){var n=t();return Object($.B)(n[0],n[n.length-1],null==e?10:e)},e.tickFormat=function(e,n){return z(t(),e,n)},e.nice=function(n){null==n&&(n=10);var i,o=t(),r=0,s=o.length-1,a=o[r],u=o[s];return u<a&&(i=a,a=u,u=i,i=r,r=s,s=i),i=Object($.z)(a,u,n),i>0?(a=Math.floor(a/i)*i,u=Math.ceil(u/i)*i,i=Object($.z)(a,u,n)):i<0&&(a=Math.ceil(a*i)/i,u=Math.floor(u*i)/i,i=Object($.z)(a,u,n)),i>0?(o[r]=Math.floor(a/i)*i,o[s]=Math.ceil(u/i)*i,t(o)):i<0&&(o[r]=Math.ceil(a*i)/i,o[s]=Math.floor(u*i)/i,t(o)),e},e}function m(){var e=d(a,Q.m);return e.copy=function(){return h(e,m())},f(e)}function y(){function e(e){return+e}var t=[0,1];return e.invert=e,e.domain=e.range=function(n){return arguments.length?(t=k.call(n,j),e):t.slice()},e.copy=function(){return y().domain(t)},f(e)}function g(e,t){return(t=Math.log(t/e))?function(n){return Math.log(n/e)/t}:U(t)}function v(e,t){return e<0?function(n){return-Math.pow(-t,n)*Math.pow(-e,1-n)}:function(n){return Math.pow(t,n)*Math.pow(e,1-n)}}function b(e){return isFinite(e)?+(\"1e\"+e):e<0?0:e}function C(e){return 10===e?b:e===Math.E?Math.exp:function(t){return Math.pow(e,t)}}function S(e){return e===Math.E?Math.log:10===e&&Math.log10||2===e&&Math.log2||(e=Math.log(e),function(t){return Math.log(t)/e})}function w(e){return function(t){return-e(-t)}}function x(){function e(){return o=S(i),r=C(i),n()[0]<0&&(o=w(o),r=w(r)),t}var t=d(g,v).domain([1,10]),n=t.domain,i=10,o=S(10),r=C(10);return t.base=function(t){return arguments.length?(i=+t,e()):i},t.domain=function(t){return arguments.length?(n(t),e()):n()},t.ticks=function(e){var t,s=n(),a=s[0],u=s[s.length-1];(t=u<a)&&(h=a,a=u,u=h);var l,c,p,h=o(a),d=o(u),f=null==e?10:+e,m=[];if(!(i%1)&&d-h<f){if(h=Math.round(h)-1,d=Math.round(d)+1,a>0){for(;h<d;++h)for(c=1,l=r(h);c<i;++c)if(!((p=l*c)<a)){if(p>u)break;m.push(p)}}else for(;h<d;++h)for(c=i-1,l=r(h);c>=1;--c)if(!((p=l*c)<a)){if(p>u)break;m.push(p)}}else m=Object($.B)(h,d,Math.min(d-h,f)).map(r);return t?m.reverse():m},t.tickFormat=function(e,n){if(null==n&&(n=10===i?\".0e\":\",\"),\"function\"!=typeof n&&(n=Object(H.a)(n)),e===1/0)return n;null==e&&(e=10);var s=Math.max(1,i*e/t.ticks().length);return function(e){var t=e/r(Math.round(o(e)));return t*i<i-.5&&(t*=i),t<=s?n(e):\"\"}},t.nice=function(){return n(W(n(),{floor:function(e){return r(Math.floor(o(e)))},ceil:function(e){return r(Math.ceil(o(e)))}}))},t.copy=function(){return h(t,x().base(i))},t}function _(e,t){return e<0?-Math.pow(-e,t):Math.pow(e,t)}function O(){function e(e,t){return(t=_(t,n)-(e=_(e,n)))?function(i){return(_(i,n)-e)/t}:U(t)}function t(e,t){return t=_(t,n)-(e=_(e,n)),function(i){return _(e+t*i,1/n)}}var n=1,i=d(e,t),o=i.domain;return i.exponent=function(e){return arguments.length?(n=+e,o(o())):n},i.copy=function(){return h(i,O().exponent(n))},f(i)}function E(){return O().exponent(.5)}function A(){function e(){var e=0,r=Math.max(1,i.length);for(o=new Array(r-1);++e<r;)o[e-1]=Object($.r)(n,e/r);return t}function t(e){if(!isNaN(e=+e))return i[Object($.b)(o,e)]}var n=[],i=[],o=[];return t.invertExtent=function(e){var t=i.indexOf(e);return t<0?[NaN,NaN]:[t>0?o[t-1]:n[0],t<o.length?o[t]:n[n.length-1]]},t.domain=function(t){if(!arguments.length)return n.slice();n=[];for(var i,o=0,r=t.length;o<r;++o)null==(i=t[o])||isNaN(i=+i)||n.push(i);return n.sort($.a),e()},t.range=function(t){return arguments.length?(i=L.call(t),e()):i.slice()},t.quantiles=function(){return o.slice()},t.copy=function(){return A().domain(n).range(i)},t}function T(){function e(e){if(e<=e)return s[Object($.b)(r,e,0,o)]}function t(){var t=-1;for(r=new Array(o);++t<o;)r[t]=((t+1)*i-(t-o)*n)/(o+1);return e}var n=0,i=1,o=1,r=[.5],s=[0,1];return e.domain=function(e){return arguments.length?(n=+e[0],i=+e[1],t()):[n,i]},e.range=function(e){return arguments.length?(o=(s=L.call(e)).length-1,t()):s.slice()},e.invertExtent=function(e){var t=s.indexOf(e);return t<0?[NaN,NaN]:t<1?[n,r[0]]:t>=o?[r[o-1],i]:[r[t-1],r[t]]},e.copy=function(){return T().domain([n,i]).range(s)},f(e)}function R(){function e(e){if(e<=e)return n[Object($.b)(t,e,0,i)]}var t=[.5],n=[0,1],i=1;return e.domain=function(o){return arguments.length?(t=L.call(o),i=Math.min(t.length,n.length-1),e):t.slice()},e.range=function(o){return arguments.length?(n=L.call(o),i=Math.min(t.length,n.length-1),e):n.slice()},e.invertExtent=function(e){var i=n.indexOf(e);return[t[i-1],t[i]]},e.copy=function(){return R().domain(t).range(n)},e}function F(e){return new Date(e)}function I(e){return e instanceof Date?+e:+new Date(+e)}function M(e,t,n,i,o,r,s,u,l){function c(a){return(s(a)<a?g:r(a)<a?v:o(a)<a?b:i(a)<a?C:t(a)<a?n(a)<a?S:w:e(a)<a?x:_)(a)}function p(t,n,i,o){if(null==t&&(t=10),\"number\"==typeof t){var r=Math.abs(i-n)/t,s=Object($.e)(function(e){return e[2]}).right(O,r);s===O.length?(o=Object($.A)(n/ne,i/ne,t),t=e):s?(s=O[r/O[s-1][2]<O[s][2]/r?s-1:s],o=s[1],t=s[0]):(o=Math.max(Object($.A)(n,i,t),1),t=u)}return null==o?t:t.every(o)}var f=d(a,Q.m),m=f.invert,y=f.domain,g=l(\".%L\"),v=l(\":%S\"),b=l(\"%I:%M\"),C=l(\"%I %p\"),S=l(\"%a %d\"),w=l(\"%b %d\"),x=l(\"%B\"),_=l(\"%Y\"),O=[[s,1,K],[s,5,5*K],[s,15,15*K],[s,30,30*K],[r,1,J],[r,5,5*J],[r,15,15*J],[r,30,30*J],[o,1,X],[o,3,3*X],[o,6,6*X],[o,12,12*X],[i,1,Z],[i,2,2*Z],[n,1,ee],[t,1,te],[t,3,3*te],[e,1,ne]];return f.invert=function(e){return new Date(m(e))},f.domain=function(e){return arguments.length?y(k.call(e,I)):y().map(F)},f.ticks=function(e,t){var n,i=y(),o=i[0],r=i[i.length-1],s=r<o;return s&&(n=o,o=r,r=n),n=p(e,o,r,t),n=n?n.range(o,r+1):[],s?n.reverse():n},f.tickFormat=function(e,t){return null==t?c:l(t)},f.nice=function(e,t){var n=y();return(e=p(e,n[0],n[n.length-1],t))?y(W(n,e)):f},f.copy=function(){return h(f,M(e,t,n,i,o,r,s,u,l))},f}function P(e){var t=e.length;return function(n){return e[Math.max(0,Math.min(t-1,Math.floor(n*t)))]}}function D(e){function t(t){var r=(t-n)/(i-n);return e(o?Math.max(0,Math.min(1,r)):r)}var n=0,i=1,o=!1;return t.domain=function(e){return arguments.length?(n=+e[0],i=+e[1],t):[n,i]},t.clamp=function(e){return arguments.length?(o=!!e,t):o},t.interpolator=function(n){return arguments.length?(e=n,t):e},t.copy=function(){return D(e).domain([n,i]).clamp(o)},f(t)}Object.defineProperty(t,\"__esModule\",{value:!0});var $=n(38),N=n(134),V=Array.prototype,k=V.map,L=V.slice,B={name:\"implicit\"},Q=n(53),U=function(e){return function(){return e}},j=function(e){return+e},q=[0,1],H=n(220),z=function(e,t,n){var i,o=e[0],r=e[e.length-1],s=Object($.A)(o,r,null==t?10:t);switch(n=Object(H.e)(null==n?\",f\":n),n.type){case\"s\":var a=Math.max(Math.abs(o),Math.abs(r));return null!=n.precision||isNaN(i=Object(H.g)(s,a))||(n.precision=i),Object(H.d)(n,a);case\"\":case\"e\":case\"g\":case\"p\":case\"r\":null!=n.precision||isNaN(i=Object(H.h)(s,Math.max(Math.abs(o),Math.abs(r))))||(n.precision=i-(\"e\"===n.type));break;case\"f\":case\"%\":null!=n.precision||isNaN(i=Object(H.f)(s))||(n.precision=i-2*(\"%\"===n.type))}return Object(H.a)(n)},W=function(e,t){e=e.slice();var n,i=0,o=e.length-1,r=e[i],s=e[o];return s<r&&(n=i,i=o,o=n,n=r,r=s,s=n),e[i]=t.floor(r),e[o]=t.ceil(s),e},G=n(179),Y=n(221),K=1e3,J=60*K,X=60*J,Z=24*X,ee=7*Z,te=30*Z,ne=365*Z,ie=function(){return M(G.D,G.n,G.B,G.a,G.e,G.j,G.r,G.h,Y.c).domain([new Date(2e3,0,1),new Date(2e3,0,2)])},oe=function(){return M(G._7,G.R,G._5,G.F,G.J,G.N,G.V,G.L,Y.g).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)])},re=function(e){return e.match(/.{6}/g).map(function(e){return\"#\"+e})},se=re(\"1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf\"),ae=re(\"393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad494ad6616be7969c7b4173a55194ce6dbdde9ed6\"),ue=re(\"3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9\"),le=re(\"1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5\"),ce=n(60),pe=Object(Q.f)(Object(ce.b)(300,.5,0),Object(ce.b)(-240,.5,1)),he=Object(Q.f)(Object(ce.b)(-100,.75,.35),Object(ce.b)(80,1.5,.8)),de=Object(Q.f)(Object(ce.b)(260,.75,.35),Object(ce.b)(80,1.5,.8)),fe=Object(ce.b)(),me=function(e){(e<0||e>1)&&(e-=Math.floor(e));var t=Math.abs(e-.5);return fe.h=360*e-100,fe.s=1.5-1.5*t,fe.l=.8-.9*t,fe+\"\"},ye=P(re(\"44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725\")),ge=P(re(\"00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf\")),ve=P(re(\"00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4\")),be=P(re(\"0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921\"));n.d(t,\"scaleBand\",function(){return o}),n.d(t,\"scalePoint\",function(){return s}),n.d(t,\"scaleIdentity\",function(){return y}),n.d(t,\"scaleLinear\",function(){return m}),n.d(t,\"scaleLog\",function(){return x}),n.d(t,\"scaleOrdinal\",function(){return i}),n.d(t,\"scaleImplicit\",function(){return B}),n.d(t,\"scalePow\",function(){return O}),n.d(t,\"scaleSqrt\",function(){return E}),n.d(t,\"scaleQuantile\",function(){return A}),n.d(t,\"scaleQuantize\",function(){return T}),n.d(t,\"scaleThreshold\",function(){return R}),n.d(t,\"scaleTime\",function(){return ie}),n.d(t,\"scaleUtc\",function(){return oe}),n.d(t,\"schemeCategory10\",function(){return se}),n.d(t,\"schemeCategory20b\",function(){return ae}),n.d(t,\"schemeCategory20c\",function(){return ue}),n.d(t,\"schemeCategory20\",function(){return le}),n.d(t,\"interpolateCubehelixDefault\",function(){return pe}),n.d(t,\"interpolateRainbow\",function(){return me}),n.d(t,\"interpolateWarm\",function(){return he}),n.d(t,\"interpolateCool\",function(){return de}),n.d(t,\"interpolateViridis\",function(){return ye}),n.d(t,\"interpolateMagma\",function(){return ge}),n.d(t,\"interpolateInferno\",function(){return ve}),n.d(t,\"interpolatePlasma\",function(){return be}),n.d(t,\"scaleSequential\",function(){return D})},function(e,t){},function(e,t,n){\"use strict\";function i(e){return!!o[e]}Object.defineProperty(t,\"__esModule\",{value:!0});var o;!function(e){e.currency=\"currency\",e.number=\"number\",e.date=\"date\"}(o=t.DynamicFacetRangeValueFormat||(t.DynamicFacetRangeValueFormat={})),t.isFacetRangeValueFormat=i},function(e,t,n){(function(e,i){function o(e,n){var i={seen:[],stylize:s};return arguments.length>=3&&(i.depth=arguments[2]),arguments.length>=4&&(i.colors=arguments[3]),m(n)?i.showHidden=n:n&&t._extend(i,n),S(i.showHidden)&&(i.showHidden=!1),S(i.depth)&&(i.depth=2),S(i.colors)&&(i.colors=!1),S(i.customInspect)&&(i.customInspect=!0),i.colors&&(i.stylize=r),u(i,e,i.depth)}function r(e,t){var n=o.styles[t];return n?\"\u001b[\"+o.colors[n][0]+\"m\"+e+\"\u001b[\"+o.colors[n][1]+\"m\":e}function s(e,t){return e}function a(e){var t={};return e.forEach(function(e,n){t[e]=!0}),t}function u(e,n,i){if(e.customInspect&&n&&E(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(i,e);return b(o)||(o=u(e,o,i)),o}var r=l(e,n);if(r)return r;var s=Object.keys(n),m=a(s);if(e.showHidden&&(s=Object.getOwnPropertyNames(n)),O(n)&&(s.indexOf(\"message\")>=0||s.indexOf(\"description\")>=0))return c(n);if(0===s.length){if(E(n)){var y=n.name?\": \"+n.name:\"\";return e.stylize(\"[Function\"+y+\"]\",\"special\")}if(w(n))return e.stylize(RegExp.prototype.toString.call(n),\"regexp\");if(_(n))return e.stylize(Date.prototype.toString.call(n),\"date\");if(O(n))return c(n)}var g=\"\",v=!1,C=[\"{\",\"}\"];if(f(n)&&(v=!0,C=[\"[\",\"]\"]),E(n)){g=\" [Function\"+(n.name?\": \"+n.name:\"\")+\"]\"}if(w(n)&&(g=\" \"+RegExp.prototype.toString.call(n)),_(n)&&(g=\" \"+Date.prototype.toUTCString.call(n)),O(n)&&(g=\" \"+c(n)),0===s.length&&(!v||0==n.length))return C[0]+g+C[1];if(i<0)return w(n)?e.stylize(RegExp.prototype.toString.call(n),\"regexp\"):e.stylize(\"[Object]\",\"special\");e.seen.push(n);var S;return S=v?p(e,n,i,m,s):s.map(function(t){return h(e,n,i,m,t,v)}),e.seen.pop(),d(S,g,C)}function l(e,t){if(S(t))return e.stylize(\"undefined\",\"undefined\");if(b(t)){var n=\"'\"+JSON.stringify(t).replace(/^\"|\"$/g,\"\").replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"')+\"'\";return e.stylize(n,\"string\")}return v(t)?e.stylize(\"\"+t,\"number\"):m(t)?e.stylize(\"\"+t,\"boolean\"):y(t)?e.stylize(\"null\",\"null\"):void 0}function c(e){return\"[\"+Error.prototype.toString.call(e)+\"]\"}function p(e,t,n,i,o){for(var r=[],s=0,a=t.length;s<a;++s)I(t,String(s))?r.push(h(e,t,n,i,String(s),!0)):r.push(\"\");return o.forEach(function(o){o.match(/^\\d+$/)||r.push(h(e,t,n,i,o,!0))}),r}function h(e,t,n,i,o,r){var s,a,l;if(l=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]},l.get?a=l.set?e.stylize(\"[Getter/Setter]\",\"special\"):e.stylize(\"[Getter]\",\"special\"):l.set&&(a=e.stylize(\"[Setter]\",\"special\")),I(i,o)||(s=\"[\"+o+\"]\"),a||(e.seen.indexOf(l.value)<0?(a=y(n)?u(e,l.value,null):u(e,l.value,n-1),a.indexOf(\"\\n\")>-1&&(a=r?a.split(\"\\n\").map(function(e){return\"  \"+e}).join(\"\\n\").substr(2):\"\\n\"+a.split(\"\\n\").map(function(e){return\"   \"+e}).join(\"\\n\"))):a=e.stylize(\"[Circular]\",\"special\")),S(s)){if(r&&o.match(/^\\d+$/))return a;s=JSON.stringify(\"\"+o),s.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,\"name\")):(s=s.replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"').replace(/(^\"|\"$)/g,\"'\"),s=e.stylize(s,\"string\"))}return s+\": \"+a}function d(e,t,n){var i=0;return e.reduce(function(e,t){return i++,t.indexOf(\"\\n\")>=0&&i++,e+t.replace(/\\u001b\\[\\d\\d?m/g,\"\").length+1},0)>60?n[0]+(\"\"===t?\"\":t+\"\\n \")+\" \"+e.join(\",\\n  \")+\" \"+n[1]:n[0]+t+\" \"+e.join(\", \")+\" \"+n[1]}function f(e){return Array.isArray(e)}function m(e){return\"boolean\"==typeof e}function y(e){return null===e}function g(e){return null==e}function v(e){return\"number\"==typeof e}function b(e){return\"string\"==typeof e}function C(e){return\"symbol\"==typeof e}function S(e){return void 0===e}function w(e){return x(e)&&\"[object RegExp]\"===T(e)}function x(e){return\"object\"==typeof e&&null!==e}function _(e){return x(e)&&\"[object Date]\"===T(e)}function O(e){return x(e)&&(\"[object Error]\"===T(e)||e instanceof Error)}function E(e){return\"function\"==typeof e}function A(e){return null===e||\"boolean\"==typeof e||\"number\"==typeof e||\"string\"==typeof e||\"symbol\"==typeof e||void 0===e}function T(e){return Object.prototype.toString.call(e)}function R(e){return e<10?\"0\"+e.toString(10):e.toString(10)}function F(){var e=new Date,t=[R(e.getHours()),R(e.getMinutes()),R(e.getSeconds())].join(\":\");return[e.getDate(),$[e.getMonth()],t].join(\" \")}function I(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var M=/%[sdj%]/g;t.format=function(e){if(!b(e)){for(var t=[],n=0;n<arguments.length;n++)t.push(o(arguments[n]));return t.join(\" \")}for(var n=1,i=arguments,r=i.length,s=String(e).replace(M,function(e){if(\"%%\"===e)return\"%\";if(n>=r)return e;switch(e){case\"%s\":return String(i[n++]);case\"%d\":return Number(i[n++]);case\"%j\":try{return JSON.stringify(i[n++])}catch(e){return\"[Circular]\"}default:return e}}),a=i[n];n<r;a=i[++n])y(a)||!x(a)?s+=\" \"+a:s+=\" \"+o(a);return s},t.deprecate=function(n,o){function r(){if(!s){if(i.throwDeprecation)throw new Error(o);i.traceDeprecation?console.trace(o):console.error(o),s=!0}return n.apply(this,arguments)}if(S(e.process))return function(){return t.deprecate(n,o).apply(this,arguments)};if(!0===i.noDeprecation)return n;var s=!1;return r};var P,D={};t.debuglog=function(e){if(S(P)&&(P=i.env.NODE_DEBUG||\"\"),e=e.toUpperCase(),!D[e])if(new RegExp(\"\\\\b\"+e+\"\\\\b\",\"i\").test(P)){var n=i.pid;D[e]=function(){var i=t.format.apply(t,arguments);console.error(\"%s %d: %s\",e,n,i)}}else D[e]=function(){};return D[e]},t.inspect=o,o.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},o.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"},t.isArray=f,t.isBoolean=m,t.isNull=y,t.isNullOrUndefined=g,t.isNumber=v,t.isString=b,t.isSymbol=C,t.isUndefined=S,t.isRegExp=w,t.isObject=x,t.isDate=_,t.isError=O,t.isFunction=E,t.isPrimitive=A,t.isBuffer=n(652);var $=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];t.log=function(){console.log(\"%s - %s\",F(),t.format.apply(t,arguments))},t.inherits=n(653),t._extend=function(e,t){if(!t||!x(t))return e;for(var n=Object.keys(t),i=n.length;i--;)e[n[i]]=t[n[i]];return e}}).call(t,n(62),n(192))},function(e,t){},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(58),o=n(18),r=n(87),s=n(1),a=n(7),u=n(9),l=function(){function e(e,t,n,i){this.coveoRoot=e,this.ID=t,this.searchInterface=a.Component.get(this.coveoRoot.el,o.SearchInterface,!1),this.currentMode=\"large\"}return e.init=function(t,n,o){if(!s.$$(t).find(\".\"+a.Component.computeCssClassName(r.ResultList))){return void new u.Logger(\"ResponsiveDefaultResultTemplate\").trace(\"No ResultLayout component found : Cannot instantiate ResponsiveResultLayout\")}i.ResponsiveComponentsManager.register(e,s.$$(t),r.ResultList.ID,n,o)},e.prototype.registerComponent=function(e){return e instanceof r.ResultList&&(this.resultList=e,!0)},e.prototype.handleResizeEvent=function(){var e=this,t=this.resultList.queryController.getLastResults();this.needSmallMode()?(s.$$(this.resultList.options.resultsContainer).addClass(\"coveo-card-layout-container\"),s.$$(this.resultList.options.resultsContainer).removeClass(\"coveo-list-layout-container\"),\"small\"!=this.currentMode&&(t&&this.resultList.buildResults(t).then(function(t){e.resultList.renderResults(t)}),this.currentMode=\"small\")):(s.$$(this.resultList.options.resultsContainer).removeClass(\"coveo-card-layout-container\"),s.$$(this.resultList.options.resultsContainer).addClass(\"coveo-list-layout-container\"),\"large\"!=this.currentMode&&(t&&this.resultList.buildResults(t).then(function(t){e.resultList.renderResults(t)}),this.currentMode=\"large\"))},e.prototype.needSmallMode=function(){return this.coveoRoot.width()<=this.searchInterface.responsiveComponents.getSmallScreenWidth()},e}();t.ResponsiveDefaultResultTemplate=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=function(){function e(e,t){this.searchInterface=t,this.resultContainerElement=i.$$(e)}return e.prototype.empty=function(){this.searchInterface.detachComponentsInside(this.resultContainerElement.el),i.$$(this.resultContainerElement).empty()},e.prototype.addClass=function(e){this.resultContainerElement.addClass(e)},e.prototype.isEmpty=function(){return this.resultContainerElement.isEmpty()},e.prototype.hideChildren=function(){this.resultContainerElement.children().forEach(function(e){return i.$$(e).hide()})},e.prototype.getResultElements=function(){return this.resultContainerElement.findAll(\".CoveoResult\")},Object.defineProperty(e.prototype,\"el\",{get:function(){return this.resultContainerElement.el},enumerable:!0,configurable:!0}),e.resultCurrentlyBeingRendered=null,e}();t.ResultContainer=o},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(202),r=n(1),s=n(0),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.prototype.getEndFragment=function(e){var t=this;return new Promise(function(n){if(!s.isEmpty(e)){if(t.resultListOptions.enableInfiniteScroll){var i=r.$$(t.resultListOptions.resultsContainer).findAll(\".coveo-card-layout-padding\");s.each(i,function(e){return r.$$(e).remove()})}var o=document.createDocumentFragment();s.times(3,function(){return o.appendChild(r.$$(\"div\",{className:\"coveo-card-layout coveo-card-layout-padding\"}).el)}),n(o)}n(null)})},t}(o.ResultListRenderer);t.ResultListCardRenderer=a},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(202),a=n(438),u=n(1),l=n(0),c=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.resultListOptions=t,i.autoCreateComponentsFn=n,i.shouldDisplayHeader=!0,i.shouldDisplayFooter=!1,i.resultListOptions.resultTemplate instanceof a.TableTemplate&&(i.resultListOptions.resultTemplate.hasTemplateWithRole(\"table-footer\")&&(i.shouldDisplayFooter=!0),0===i.resultListOptions.resultTemplate.templates.length||i.resultListOptions.resultTemplate.hasTemplateWithRole(\"table-header\")||(i.shouldDisplayHeader=!1)),i}return i(t,e),t.prototype.getStartFragment=function(e,t){if(!t&&!l.isEmpty(e)&&this.shouldDisplayHeader)return this.renderRoledTemplate(\"table-header\")},t.prototype.getEndFragment=function(e,t){if(!t&&!l.isEmpty(e)&&this.shouldDisplayFooter)return this.renderRoledTemplate(\"table-footer\")},t.prototype.renderRoledTemplate=function(e){return o(this,void 0,void 0,function(){var t,n;return r(this,function(i){switch(i.label){case 0:return[4,this.resultListOptions.resultTemplate.instantiateRoleToElement(e)];case 1:return t=i.sent(),u.$$(t).addClass(\"coveo-result-list-\"+e),this.autoCreateComponentsFn(t,void 0),n=document.createDocumentFragment(),n.appendChild(t),[2,n]}})})},t}(s.ResultListRenderer);t.ResultListTableRenderer=c},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(6),o=n(12),r=n(1),s=n(442),a=function(){function e(e){this.options=e,this.create()}return e.prototype.create=function(){var e=this,t=r.$$(\"div\");this.collapseButton=new s.DynamicFacetHeaderButton({label:i.l(\"CollapseFacet\",this.options.title),iconSVG:o.SVGIcons.icons.arrowUp,iconClassName:\"coveo-dynamic-facet-collapse-toggle-svg\",className:\"coveo-dynamic-facet-header-collapse\",shouldDisplay:!0,action:function(){return e.options.collapse()}}),this.expandButton=new s.DynamicFacetHeaderButton({label:i.l(\"ExpandFacet\",this.options.title),iconSVG:o.SVGIcons.icons.arrowDown,iconClassName:\"coveo-dynamic-facet-collapse-toggle-svg\",className:\"coveo-dynamic-facet-header-expand\",shouldDisplay:!1,action:function(){return e.options.expand()}}),t.append(this.collapseButton.element),t.append(this.expandButton.element),this.element=t.el},e.prototype.toggleButtons=function(e){this.collapseButton.toggle(!e),this.expandButton.toggle(e)},e}();t.DynamicFacetHeaderCollapseToggle=a},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(203),r=n(114),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.init=function(e,n,i){o.ResponsiveFacetColumn.init(t,e,n,i,r.DynamicFacet.ID)},t}(o.ResponsiveFacetColumn);t.ResponsiveDynamicFacets=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(444);var i=n(1),o=n(6),r=n(12),s=n(10),a=function(){function e(e){this.facet=e,this.create()}return e.prototype.create=function(){this.element=i.$$(\"div\",{className:\"coveo-dynamic-facet-breadcrumb coveo-breadcrumb-item\"}).el,this.createAndAppendTitle();var e=this.facet.values.activeValues,t=e.slice(0,this.facet.options.numberOfValuesInBreadcrumb),n=e.slice(this.facet.options.numberOfValuesInBreadcrumb);this.createAndAppendBreadcrumbValues(t),n.length&&this.createAndAppendCollapsedBreadcrumbs(n)},e.prototype.createAndAppendTitle=function(){var e=i.$$(\"h3\",{className:\"coveo-dynamic-facet-breadcrumb-title\"},this.facet.options.title+\":\").el;this.element.appendChild(e)},e.prototype.createAndAppendBreadcrumbValues=function(e){var t=this;e.forEach(function(e){return t.createAndAppendBreadcrumbValue(e)})},e.prototype.createAndAppendBreadcrumbValue=function(e){var t=this,n=i.$$(\"button\",{className:\"coveo-dynamic-facet-breadcrumb-value\",ariaLabel:o.l(\"RemoveFilterOn\",e.displayValue)},e.displayValue).el,s=i.$$(\"span\",{className:\"coveo-dynamic-facet-breadcrumb-value-clear\"},r.SVGIcons.icons.mainClear).el;n.appendChild(s),i.$$(n).on(\"click\",function(){return t.valueSelectAction(e)}),this.element.appendChild(n)},e.prototype.valueSelectAction=function(e){var t=this;this.facet.deselectValue(e.value),this.facet.triggerNewQuery(function(){return t.logActionToAnalytics()})},e.prototype.logActionToAnalytics=function(){this.facet.logAnalyticsEvent(s.analyticsActionCauseList.breadcrumbFacet,this.facet.basicAnalyticsFacetMeta)},e.prototype.createAndAppendCollapsedBreadcrumbs=function(e){var t=this,n=o.l(\"NMore\",\"\"+e.length),r=e.map(function(e){return e.value}).join(\"\\n\"),s=i.$$(\"button\",{className:\"coveo-dynamic-facet-breadcrumb-collapse\",title:r},n).el;i.$$(s).on(\"click\",function(){i.$$(s).remove(),t.createAndAppendBreadcrumbValues(e)}),this.element.appendChild(s)},e}();t.DynamicFacetBreadcrumbs=a},function(e,t){},function(e,t,n){\"use strict\";function i(e){return!!o[e]}Object.defineProperty(t,\"__esModule\",{value:!0});var o;!function(e){e.score=\"score\",e.alphanumeric=\"alphanumeric\",e.occurrences=\"occurrences\"}(o=t.FacetSortCriteria||(t.FacetSortCriteria={})),t.isFacetSortCriteria=i},function(e,t,n){\"use strict\";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(507),s=n(6),a=n(511),u=n(204),l=n(64),c=n(512);n(513);var p=function(){function e(e){var t=this;this.facet=e,this.facetSearchController=new a.FacetSearchController(this.facet),this.combobox=new r.Combobox({label:s.l(\"SearchFacetResults\",this.facet.options.title),searchInterface:this.facet.searchInterface,requestValues:function(e){return t.facetSearch(e)},createValuesFromResponse:function(e){return t.createValuesFromResponse(e)},onSelectValue:this.onSelectValue,placeholderText:s.l(\"Search\"),wrapperClassName:\"coveo-dynamic-facet-search\",clearOnBlur:!0}),this.element=this.combobox.element}return e.prototype.facetSearch=function(e){return i(this,void 0,void 0,function(){return o(this,function(t){return[2,this.facetSearchController.search(e)]})})},e.prototype.createValuesFromResponse=function(e){var t=this;return e.values.map(function(e,n){var i=new u.DynamicFacetValue({value:e.rawValue,displayValue:e.displayValue,numberOfResults:e.count,state:l.FacetValueState.idle,position:n+1},t.facet,c.DynamicFacetSearchValueRenderer);return{value:i,element:i.renderedElement}})},e.prototype.onSelectValue=function(e){e.value.renderer.selectAction()},e}();t.DynamicFacetSearch=p},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(1),a=n(508),u=n(0),l=n(12),c=n(14),p=n(509);n(510);var h=n(4),d=n(6),f=function(){function e(e){this.options=e,this.defaultOptions={wrapperClassName:\"\",noValuesFoundLabel:d.l(\"NoValuesFound\"),clearOnBlur:!1},this.isThrottledRequestCancelled=!1,this.throttlingDelay=600,this.throttledTriggerNewRequest=u.throttle(this.triggerRequest,this.throttlingDelay,{leading:!0,trailing:!0}),this.options=i({},this.defaultOptions,this.options),this.id=u.uniqueId(\"coveo-combobox-\"),this.create()}return e.prototype.create=function(){this.element=s.$$(\"div\",{className:\"coveo-combobox-wrapper \"+this.options.wrapperClassName}).el,this.createAndAppendInput(),this.createAndAppendWaitAnimation(),this.createAndAppendValues()},e.prototype.createAndAppendInput=function(){this.input=new a.ComboboxInput(this),this.element.appendChild(this.input.element)},e.prototype.createAndAppendWaitAnimation=function(){this.waitAnimationElement=s.$$(\"div\",{className:\"coveo-combobox-wait-animation\"},l.SVGIcons.icons.loading).el,c.SVGDom.addClassToSVGInContainer(this.waitAnimationElement,\"coveo-combobox-wait-animation-svg\"),this.toggleWaitAnimation(!1),this.input.element.appendChild(this.waitAnimationElement)},e.prototype.toggleWaitAnimation=function(e){s.$$(this.waitAnimationElement).toggle(e)},e.prototype.createAndAppendValues=function(){this.values=new p.ComboboxValues(this),this.element.appendChild(this.values.element)},e.prototype.clearAll=function(){this.clearValues(),this.input.clearInput()},e.prototype.clearValues=function(){this.values.clearValues(),this.cancelRequest()},e.prototype.cancelRequest=function(){this.toggleWaitAnimation(!1),this.throttledTriggerNewRequest.cancel(),this.isThrottledRequestCancelled=!0},e.prototype.onInputChange=function(e){if(h.Utils.isEmptyString(e))return this.clearValues();this.toggleWaitAnimation(!0),this.throttledTriggerNewRequest(e)},e.prototype.onInputBlur=function(){if(!this.values.mouseIsOverValue)return this.options.clearOnBlur?this.clearAll():void this.clearValues()},e.prototype.updateAccessibilityAttributes=function(e){this.input.updateAccessibilityAttributes(e)},e.prototype.updateAriaLive=function(e){this.options.searchInterface.ariaLive.updateText(e)},e.prototype.triggerRequest=function(e){return o(this,void 0,void 0,function(){var t;return r(this,function(n){switch(n.label){case 0:return this.isThrottledRequestCancelled=!1,[4,this.options.requestValues(e)];case 1:return t=n.sent(),this.toggleWaitAnimation(!1),this.isThrottledRequestCancelled||this.values.renderFromResponse(t),[2]}})})},e}();t.Combobox=f},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(52),o=n(1),r=n(25),s=n(4),a=function(){function e(e){this.combobox=e,this.inputOptions={usePlaceholder:!0,className:\"coveo-combobox-input\",triggerOnChangeAsYouType:!0,isRequired:!1},this.create(),this.element=this.textInput.getElement(),this.inputElement=o.$$(this.element).find(\"input\"),this.addEventListeners(),this.addAccessibilityAttributes()}return e.prototype.create=function(){var e=this;this.textInput=new i.TextInput(function(t){return e.combobox.onInputChange(t.getValue())},this.combobox.options.placeholderText,this.inputOptions)},e.prototype.addEventListeners=function(){var e=this;this.combobox.options.clearOnBlur||o.$$(this.inputElement).on(\"focus\",function(){return e.combobox.onInputChange(e.textInput.getValue())}),o.$$(this.inputElement).on(\"blur\",function(){return e.combobox.onInputBlur()}),o.$$(this.inputElement).on(\"keydown\",function(t){return e.handleKeyboardUpDownArrows(t)}),o.$$(this.inputElement).on(\"keyup\",function(t){return e.handleKeyboardEnterEscape(t)})},e.prototype.addAccessibilityAttributes=function(){var e=this.combobox.id+\"-listbox\";this.element.setAttribute(\"role\",\"combobox\"),this.element.setAttribute(\"aria-owns\",e),this.element.setAttribute(\"aria-haspopup\",\"listbox\"),this.inputElement.setAttribute(\"id\",this.combobox.id+\"-input\"),this.inputElement.setAttribute(\"aria-autocomplete\",\"list\"),this.inputElement.setAttribute(\"aria-controls\",e),this.inputElement.setAttribute(\"aria-label\",this.combobox.options.label),this.updateAccessibilityAttributes({activeDescendant:\"\",expanded:!1})},e.prototype.updateAccessibilityAttributes=function(e){this.element.setAttribute(\"aria-expanded\",e.expanded?\"true\":\"false\"),s.Utils.isEmptyString(e.activeDescendant)?this.inputElement.removeAttribute(\"aria-activedescendant\"):this.inputElement.setAttribute(\"aria-activedescendant\",e.activeDescendant)},e.prototype.clearInput=function(){this.textInput.reset()},e.prototype.handleKeyboardUpDownArrows=function(e){switch(e.which){case r.KEYBOARD.DOWN_ARROW:e.preventDefault(),this.combobox.values.moveActiveValueDown();break;case r.KEYBOARD.UP_ARROW:e.preventDefault(),this.combobox.values.moveActiveValueUp()}},e.prototype.handleKeyboardEnterEscape=function(e){switch(e.which){case r.KEYBOARD.ENTER:this.combobox.values.selectActiveValue();break;case r.KEYBOARD.ESCAPE:s.Utils.isNonEmptyString(this.textInput.getValue())&&e.stopPropagation(),this.combobox.clearAll()}},e}();t.ComboboxInput=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(0),r=function(){function e(e){this.combobox=e,this.mouseIsOverValue=!1,this.values=[],this.element=i.$$(\"ul\",{id:this.combobox.id+\"-listbox\",role:\"listbox\",className:\"coveo-combobox-values\",ariaLabelledby:this.combobox.id+\"-input\"}).el,i.$$(this.element).hide()}return e.prototype.renderFromResponse=function(e){this.clearValues(),this.values=this.combobox.options.createValuesFromResponse(e),this.render()},e.prototype.render=function(){if(i.$$(this.element).show(),!this.hasValues())return this.renderNoValuesFound();this.renderValues(),this.addEventListeners(),this.updateAccessibilityAttributes()},e.prototype.renderValues=function(){var e=this,t=document.createDocumentFragment();this.values.forEach(function(n,o){var r=i.$$(\"li\",{id:e.combobox.id+\"-value-\"+o,className:\"coveo-combobox-value\",role:\"option\"},n.element).el;n.element=r,t.appendChild(n.element)}),this.element.appendChild(t)},e.prototype.hasValues=function(){return!!this.values.length},e.prototype.renderNoValuesFound=function(){var e=this.combobox.options.noValuesFoundLabel,t=i.$$(\"li\",{role:\"option\",className:\"coveo-combobox-value-not-found\"},e).el;this.element.appendChild(t),this.combobox.updateAriaLive(e)},e.prototype.addEventListeners=function(){var e=this;this.values.forEach(function(t){var n=t.element;i.$$(n).on(\"mouseenter\",function(){return e.mouseIsOverValue=!0}),i.$$(n).on(\"mouseleave\",function(){return e.mouseIsOverValue=!1}),i.$$(n).on(\"click\",function(t){return e.onValueClick(t)})})},e.prototype.onValueClick=function(e){var t=e.target,n=i.$$(t).hasClass(\"coveo-combobox-value\")?t:i.$$(t).parent(\"coveo-combobox-value\");if(n){var r=n.getAttribute(\"id\"),s=o.find(this.values,function(e){return e.element.getAttribute(\"id\")===r});s&&this.combobox.options.onSelectValue(s),this.combobox.clearAll()}},e.prototype.updateAccessibilityAttributes=function(){var e=this.keyboardActiveValue?this.keyboardActiveValue.element.getAttribute(\"id\"):\"\";this.combobox.updateAccessibilityAttributes({activeDescendant:e,expanded:this.hasValues()})},e.prototype.clearValues=function(){this.mouseIsOverValue=!1,this.resetKeyboardActiveValue(),i.$$(this.element).empty(),i.$$(this.element).hide(),this.values=[],this.updateAccessibilityAttributes()},e.prototype.setKeyboardActiveValue=function(e){this.keyboardActiveValue=e,this.activateFocusOnValue(this.keyboardActiveValue)},e.prototype.resetKeyboardActiveValue=function(){this.keyboardActiveValue&&(this.deactivateFocusOnValue(this.keyboardActiveValue),this.keyboardActiveValue=null)},e.prototype.activateFocusOnValue=function(e){var t=e.element;i.$$(t).addClass(\"coveo-focused\"),t.setAttribute(\"aria-selected\",\"true\")},e.prototype.deactivateFocusOnValue=function(e){var t=e.element;i.$$(t).removeClass(\"coveo-focused\"),t.setAttribute(\"aria-selected\",\"false\")},e.prototype.selectActiveValue=function(){this.keyboardActiveValue&&(this.combobox.options.onSelectValue(this.keyboardActiveValue),this.combobox.clearAll())},e.prototype.moveActiveValueDown=function(){if(this.hasValues()){var e=this.nextOrFirstValue;this.resetKeyboardActiveValue(),this.setKeyboardActiveValue(e),this.updateAccessibilityAttributes()}},e.prototype.moveActiveValueUp=function(){if(this.hasValues()){var e=this.previousOrLastValue;this.resetKeyboardActiveValue(),this.setKeyboardActiveValue(e),this.updateAccessibilityAttributes()}},Object.defineProperty(e.prototype,\"nextOrFirstValue\",{get:function(){if(!this.keyboardActiveValue)return this.values[0];var e=(this.values.indexOf(this.keyboardActiveValue)+1)%this.values.length;return this.values[e]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"previousOrLastValue\",{get:function(){var e=this.values.length-1;if(!this.keyboardActiveValue)return this.values[e];var t=this.values.indexOf(this.keyboardActiveValue)-1;return t>=0?this.values[t]:this.values[e]},enumerable:!0,configurable:!0}),e}();t.ComboboxValues=r},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(111),r=n(21),s=n(29),a=function(){function e(e){this.facet=e}return e.prototype.getMonthsValueCaptions=function(){for(var e={},t=1;t<=12;t++){e[(\"0\"+t).substr(-2)]=s.DateUtils.monthToString(t-1)}return e},e.prototype.addTypesCaptionsIfNecessary=function(){var e=this.facet.options.field.toLowerCase(),t=r.QueryUtils.isStratusAgnosticField(e,\"@filetype\"),n=r.QueryUtils.isStratusAgnosticField(e,\"@objecttype\"),i=r.QueryUtils.isStratusAgnosticField(e,\"@month\");return t||n?o.FileTypes.getFileTypeCaptions():i?this.getMonthsValueCaptions():{}},Object.defineProperty(e.prototype,\"captions\",{get:function(){return i({},this.addTypesCaptionsIfNecessary(),this.facet.options.valueCaption)},enumerable:!0,configurable:!0}),e.prototype.search=function(e){var t=this.facet.options.useLeadingWildcardInFacetSearch?\"*\":\"\",n={field:this.facet.fieldName,numberOfValues:this.facet.options.numberOfValues,ignoreValues:this.facet.values.allValues,captions:this.captions,searchContext:this.facet.queryController.getLastQuery(),query:\"\"+t+e+\"*\"};return this.facet.queryController.getEndpoint().facetSearch(n)},e}();t.FacetSearchController=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(443),r=function(){function e(e,t){this.facetValue=e,this.facet=t}return e.prototype.render=function(){return this.dom=i.$$(\"div\",{className:\"coveo-dynamic-facet-value\",dataValue:this.facetValue.value}),this.renderCheckbox(),this.dom.el},e.prototype.renderCheckbox=function(){this.valueCheckbox=new o.DynamicFacetValueCheckbox(this.facetValue),i.$$(this.valueCheckbox.element).find(\"button\").setAttribute(\"tabindex\",\"-1\"),this.dom.append(this.valueCheckbox.element)},e.prototype.selectAction=function(){var e=this;this.facet.enableFreezeFacetOrderFlag(),this.facet.toggleSelectValue(this.facetValue.value),this.facet.scrollToTop(),this.facet.triggerNewQuery(function(){return e.facetValue.logSelectActionToAnalytics()})},e}();t.DynamicFacetSearchValueRenderer=r},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(43),o=n(204),r=n(64),s=n(448),a=function(){function e(e){this.facet=e}return e.prototype.getDisplayValue=function(e){return i.FacetUtils.getDisplayValueFromValueCaption(e,this.facet.options.field,this.facet.options.valueCaption)},e.prototype.createFromResponse=function(e,t){return new o.DynamicFacetValue({value:e.value,displayValue:this.getDisplayValue(e.value),numberOfResults:e.numberOfResults,state:e.state,position:t+1},this.facet,s.DynamicFacetValueRenderer)},e.prototype.createFromValue=function(e){var t=this.facet.values.allFacetValues.length+1,n=r.FacetValueState.idle,i=this.getDisplayValue(e);return new o.DynamicFacetValue({value:e,displayValue:i,state:n,numberOfResults:0,position:t},this.facet,s.DynamicFacetValueRenderer)},e.prototype.createFromRange=function(){return null},e}();t.DynamicFacetValueCreator=a},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(25),o=function(){function e(e){this.facetSearch=e}return e.prototype.handleKeyboardEvent=function(e){switch(e.which){case i.KEYBOARD.ENTER:this.facetSearch.keyboardNavigationEnterPressed(e);break;case i.KEYBOARD.DELETE:this.facetSearch.keyboardNavigationDeletePressed&&this.facetSearch.keyboardNavigationDeletePressed(e);break;case i.KEYBOARD.ESCAPE:this.facetSearch.dismissSearchResults();break;case i.KEYBOARD.DOWN_ARROW:this.facetSearch.facetSearchElement.moveCurrentResultDown();break;case i.KEYBOARD.UP_ARROW:this.facetSearch.facetSearchElement.moveCurrentResultUp();break;default:this.facetSearch.keyboardEventDefaultHandler()}},e.prototype.handleFacetSearchResultsScroll=function(){if(!this.facetSearch.facetSearchPromise&&\"\"==this.facetSearch.facetSearchElement.getValueInInputForFacetSearch()&&this.facetSearch.moreValuesToFetch){var e=this.facetSearch.facetSearchElement.searchResults.clientHeight;this.facetSearch.facetSearchElement.searchResults.scrollHeight-(this.facetSearch.facetSearchElement.searchResults.scrollTop+e)<e/2&&this.facetSearch.fetchMoreValues()}},e}();t.FacetSearchUserInputHandler=o},function(e,t,n){\"use strict\";function i(e,t){switch(e.facetType){case u.Facet.ID:return new s.FacetSearchDropdownNavigator(o({},t,{facetSearch:e}));case a.CategoryFacet.ID:default:return new r.DefaultSearchDropdownNavigator(t)}}var o=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(453),s=n(522),a=n(89),u=n(67);t.SearchDropdownNavigatorFactory=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(453),o=n(1),r=n(0),s=function(){function e(e){var t=this;this.config=e,this.debounceAnnounceCurrentResultAction=r.debounce(function(){return t.announceCurrentResultAction()},500),this.defaultDropdownNavigator=new i.DefaultSearchDropdownNavigator(e)}return e.prototype.setAsCurrentResult=function(e){this.defaultDropdownNavigator.setAsCurrentResult(e),this.debounceAnnounceCurrentResultAction()},Object.defineProperty(e.prototype,\"currentResult\",{get:function(){return this.defaultDropdownNavigator.currentResult},enumerable:!0,configurable:!0}),e.prototype.focusNextElement=function(){this.isCurrentResultSelectAllButton?this.moveResultDownAndAnnounce():this.canExcludeCurrentResult?(this.toggleCanExcludeCurrentResult(),this.moveResultDownAndAnnounce()):(this.toggleCanExcludeCurrentResult(),this.announceCurrentResultCanBeExcluded())},e.prototype.focusPreviousElement=function(){this.canExcludeCurrentResult?(this.toggleCanExcludeCurrentResult(),this.announceCurrentResultCanBeSelected()):this.moveResultUpAndAnnounce()},e.prototype.moveResultDownAndAnnounce=function(){this.defaultDropdownNavigator.moveCurrentResultDown(),this.announceCurrentResultCanBeSelected()},e.prototype.moveResultUpAndAnnounce=function(){this.defaultDropdownNavigator.moveCurrentResultUp(),this.isCurrentResultSelectAllButton?this.announceCurrentResultCanBeSelected():(this.toggleCanExcludeCurrentResult(),this.announceCurrentResultCanBeExcluded())},Object.defineProperty(e.prototype,\"isCurrentResultSelectAllButton\",{get:function(){return this.currentResult.hasClass(\"coveo-facet-search-select-all\")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"canExcludeCurrentResult\",{get:function(){return this.currentResult.hasClass(\"coveo-facet-value-will-exclude\")},enumerable:!0,configurable:!0}),e.prototype.toggleCanExcludeCurrentResult=function(){this.currentResult.toggleClass(\"coveo-facet-value-will-exclude\",!this.canExcludeCurrentResult)},e.prototype.announceCurrentResultAction=function(){this.canExcludeCurrentResult?this.announceCurrentResultCanBeExcluded():this.announceCurrentResultCanBeSelected()},e.prototype.announceCurrentResultCanBeExcluded=function(){var e=o.$$(this.currentResult).find(\".coveo-facet-value-exclude\").title;this.config.facetSearch.updateAriaLive(e)},e.prototype.announceCurrentResultCanBeSelected=function(){var e=this.currentResultSelectMessage;this.config.facetSearch.updateAriaLive(e)},Object.defineProperty(e.prototype,\"currentResultSelectMessage\",{get:function(){return this.isCurrentResultSelectAllButton?this.currentResult.text():this.currentResult.find(\".coveo-facet-value-checkbox\").getAttribute(\"aria-label\")},enumerable:!0,configurable:!0}),e}();t.FacetSearchDropdownNavigator=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(12),r=n(14),s=n(0),a=n(6),u=n(20),l=function(){function e(){this.listRoot=i.$$(\"ul\",{className:\"coveo-category-facet-values\"}),this.collapseArrow=i.$$(\"span\",{className:\"coveo-category-facet-collapse-children\"},o.SVGIcons.icons.arrowDown),r.SVGDom.addClassToSVGInContainer(this.collapseArrow.el,\"coveo-category-facet-collapse-children-svg\")}return e.prototype.buildListRoot=function(){return this.listRoot.clone(!0)},e.prototype.buildListElement=function(e){var t=i.$$(\"div\",{},this.createListElement(e));return i.$$(t.el.firstChild)},e.prototype.buildAllCategoriesButton=function(){var e=i.$$(\"span\",{className:\"coveo-category-facet-all-categories-caption\",tabindex:0},a.l(\"AllCategories\"));return i.$$(\"li\",{className:\"coveo-category-facet-value coveo-category-facet-all-categories\"},this.buildCollapseArrow(),e)},e.prototype.buildEllipsis=function(){var e=i.$$(\"span\",{className:\"coveo-category-facet-ellipsis-caption\"},\"[ ... ]\");return i.$$(\"li\",{className:\"coveo-category-facet-ellipsis\"},e)},e.prototype.buildCollapseArrow=function(){return this.collapseArrow.clone(!0)},e.prototype.getFormattedCount=function(e){return u.format(e,\"n0\")},e.prototype.createListElement=function(e){return'<li class=\"coveo-category-facet-value\">\\n        <label class=\"coveo-category-facet-value-label\">\\n          <span title=\"'+s.escape(e.value)+'\" class=\"coveo-category-facet-value-caption\">'+s.escape(e.value)+'</span>\\n          <span class=\"coveo-category-facet-value-count\">'+this.getFormattedCount(e.count)+\"</span>\\n        </label>\\n      </li>\"},e}();t.CategoryFacetTemplates=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(454),o=function(){function e(e,t,n){this.element=e,this.path=[],this.categoryChildrenValueRenderer=new i.CategoryChildrenValueRenderer(e,t,this,n),this.listRoot=t.buildListRoot(),this.appendListRoot()}return e.prototype.renderChildren=function(e){this.appendListRoot(),this.categoryChildrenValueRenderer.renderChildren(e)},e.prototype.renderAsParent=function(e){return this.appendListRoot(),this.categoryChildrenValueRenderer.renderAsParent(e)},Object.defineProperty(e.prototype,\"children\",{get:function(){return this.categoryChildrenValueRenderer.children},enumerable:!0,configurable:!0}),e.prototype.clear=function(){this.listRoot.detach(),this.listRoot.empty(),this.categoryChildrenValueRenderer.clearChildren()},e.prototype.appendListRoot=function(){this.element.append(this.listRoot.el)},e}();t.CategoryValueRoot=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(454),r=n(10),s=n(17),a=n(6),u=function(){function e(e,t,n,i){this.listRoot=e,this.categoryValueDescriptor=t,this.categoryFacetTemplates=n,this.categoryFacet=i,this.isActive=!1,this.element=this.categoryFacetTemplates.buildListElement({value:this.captionedValueDescriptorValue,count:this.categoryValueDescriptor.count}),this.collapseArrow=this.categoryFacetTemplates.buildCollapseArrow(),this.categoryChildrenValueRenderer=new o.CategoryChildrenValueRenderer(this.element,n,this,this.categoryFacet),this.path=this.categoryValueDescriptor.path}return e.prototype.render=function(e){this.pastMaximumDepth()&&this.element.addClass(\"coveo-category-facet-last-value\"),e?this.element.addClass(\"coveo-category-facet-child-value\"):this.element.addClass(\"coveo-category-facet-parent-value\"),this.listRoot.append(this.element.el)},e.prototype.getDescriptor=function(){return{value:this.categoryValueDescriptor.value,count:this.categoryValueDescriptor.count,path:this.path}},e.prototype.clear=function(){this.element.detach(),this.categoryChildrenValueRenderer.clearChildren()},e.prototype.renderChildren=function(e){this.isActive=!0,this.element.addClass(\"coveo-active-category-facet-parent\"),this.categoryChildrenValueRenderer.renderChildren(e)},e.prototype.renderAsParent=function(e){return this.categoryChildrenValueRenderer.renderAsParent(e)},Object.defineProperty(e.prototype,\"children\",{get:function(){return this.categoryChildrenValueRenderer.children},enumerable:!0,configurable:!0}),e.prototype.makeSelectable=function(){var e=this,t=i.$$(this.element.find(\".coveo-category-facet-value-label\"));t.addClass(\"coveo-selectable\");var n=a.l(\"ResultCount\",this.categoryValueDescriptor.count.toString()),o=a.l(\"SelectValueWithResultCount\",this.captionedValueDescriptorValue,n);return(new s.AccessibleButton).withElement(t).withSelectAction(function(){return e.onSelect()}).withLabel(o).build(),this},e.prototype.showCollapseArrow=function(){if(!this.collapseArrow.el.parentElement){var e=this.element.find(\"label\");i.$$(e).prepend(this.collapseArrow.el)}return this},Object.defineProperty(e.prototype,\"captionedValueDescriptorValue\",{get:function(){var e=this.categoryValueDescriptor.value;return this.categoryFacet.getCaption(e)},enumerable:!0,configurable:!0}),e.prototype.onSelect=function(){this.pastMaximumDepth()||(this.categoryFacet.logAnalyticsEvent(r.analyticsActionCauseList.categoryFacetSelect,this.path),this.categoryFacet.scrollToTop(),this.categoryFacet.changeActivePath(this.path),this.categoryFacet.executeQuery())},e.prototype.pastMaximumDepth=function(){return this.path.length-this.categoryFacet.options.basePath.length>=this.categoryFacet.options.maximumDepth},e}();t.CategoryValue=u},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},o=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var s=n(449),a=n(4),u=function(){function e(e){this.categoryFacet=e}return e.prototype.putCategoryFacetInQueryBuilder=function(e,t,n){var i=e.categoryFacets.length;return this.addQueryFilter(e,t),this.addCategoryFacetRequest(e,t,n),i},e.prototype.searchFacetValues=function(e,t){return o(this,void 0,void 0,function(){var n,o,a,u;return r(this,function(r){switch(r.label){case 0:return n=i({},this.categoryFacet.queryController.getLastQuery()),o={allowedValues:[this.getAllowedValuesPattern(e)],allowedValuesPatternType:s.AllowedValuesPatternType.Wildcards,maximumNumberOfValues:t,field:this.categoryFacet.options.field,sortCriteria:\"occurrences\",injectionDepth:this.categoryFacet.options.injectionDepth},n.groupBy=[o],n.categoryFacets.splice(this.categoryFacet.positionInQuery,1),[4,this.categoryFacet.queryController.getEndpoint().search(n)];case 1:return a=r.sent(),u=function(e,t){return e.numberOfResults==t.numberOfResults?e.value.length-t.value.length:t.numberOfResults-e.numberOfResults},[2,a.groupByResults[0].values.sort(u)]}})})},e.prototype.addDebugGroupBy=function(e,t){e.groupByRequests.push({field:this.categoryFacet.options.field,allowedValues:[\".*\"+a.Utils.escapeRegexCharacter(t)+\".*\"],allowedValuesPatternType:s.AllowedValuesPatternType.Regex})},e.prototype.shouldAddFilterToQuery=function(e){return 0!=e.length&&!a.Utils.arrayEqual(e,this.categoryFacet.options.basePath)},e.prototype.addQueryFilter=function(e,t){this.shouldAddFilterToQuery(t)&&e.advancedExpression.addFieldExpression(this.categoryFacet.options.field,\"==\",[t.join(this.categoryFacet.options.delimitingCharacter)])},e.prototype.addCategoryFacetRequest=function(e,t,n){var i={field:this.categoryFacet.options.field,path:t,injectionDepth:this.categoryFacet.options.injectionDepth,maximumNumberOfValues:n,delimitingCharacter:this.categoryFacet.options.delimitingCharacter};e.categoryFacets.push(i)},e.prototype.getAllowedValuesPattern=function(e){var t=this.categoryFacet.options.basePath,n=this.categoryFacet.options.delimitingCharacter;return a.Utils.isNonEmptyArray(t)?\"\"+t.join(n)+n+\"*\"+e+\"*\":\"*\"+e+\"*\"},e}();t.CategoryFacetQueryController=u},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(89),s=n(452),a=n(0),u=n(1),l=n(14),c=n(12),p=n(6);n(529);var h=n(19),d=n(10),f=n(17),m=n(20),y=function(){function e(e){var t=this;this.categoryFacet=e,this.moreValuesToFetch=!0,this.facetSearchElement=new s.FacetSearchElement(this),this.displayNewValues=a.debounce(this.getDisplayNewValuesFunction(),this.categoryFacet.options.facetSearchDelay),this.categoryFacet.root.addEventListener(\"click\",function(e){return t.handleClickElsewhere(e)}),this.numberOfValuesToFetch=this.categoryFacet.options.numberOfResultsInFacetSearch}return Object.defineProperty(e.prototype,\"facetType\",{get:function(){return r.CategoryFacet.ID},enumerable:!0,configurable:!0}),e.prototype.build=function(){var e=this;this.container=u.$$(\"div\",{className:\"coveo-category-facet-search-container\",role:\"heading\",\"aria-level\":3}),(new f.AccessibleButton).withElement(this.container).withSelectAction(function(){u.$$(e.categoryFacet.element).addClass(\"coveo-category-facet-searching\"),e.focus()}).withLabel(p.l(\"Search\")).build();var t=this.facetSearchElement.build(),n=this.buildfacetSearchPlaceholder();return this.container.append(t),this.container.append(n.el),this.container},e.prototype.focus=function(){this.facetSearchElement.focus()},e.prototype.clear=function(){this.dismissSearchResults(),this.container&&this.container.detach()},e.prototype.dismissSearchResults=function(){this.removeNoResultsCssClasses(),u.$$(this.categoryFacet.element).removeClass(\"coveo-category-facet-searching\"),u.$$(this.facetSearchElement.searchResults).empty(),this.facetSearchElement.clearSearchInput(),this.facetSearchElement.hideSearchResultsElement(),this.currentlyDisplayedResults=null,this.numberOfValuesToFetch=this.categoryFacet.options.numberOfResultsInFacetSearch,this.moreValuesToFetch=!0},e.prototype.keyboardEventDefaultHandler=function(){this.moreValuesToFetch=!0,this.displayNewValues()},e.prototype.keyboardNavigationEnterPressed=function(){this.selectCurrentResult()},e.prototype.fetchMoreValues=function(){this.numberOfValuesToFetch+=this.categoryFacet.options.numberOfResultsInFacetSearch,this.displayNewValues()},e.prototype.getCaptions=function(){var e=u.$$(this.facetSearchElement.searchResults);return e.findAll(\".coveo-category-facet-search-value-caption\").concat(e.findAll(\".coveo-category-facet-search-path-parents\")).concat(e.findAll(\".coveo-category-facet-search-path-last-value\"))},e.prototype.updateAriaLive=function(e){this.categoryFacet.searchInterface.ariaLive.updateText(e)},e.prototype.selectCurrentResult=function(){if(this.facetSearchElement.currentResult){var e=this.facetSearchElement.currentResult.el.dataset.path,t=this.categoryFacet.options.delimitingCharacter,n=e.split(t);this.categoryFacet.changeActivePath(n),this.categoryFacet.logAnalyticsEvent(d.analyticsActionCauseList.categoryFacetSelect,n),this.categoryFacet.executeQuery(),this.categoryFacet.scrollToTop()}},e.prototype.handleClickElsewhere=function(e){var t=u.$$(e.target).closest(\".coveo-category-facet-search-container\"),n=this.container&&t===this.container.el;t&&n||this.dismissSearchResults()},e.prototype.buildfacetSearchPlaceholder=function(){var e=u.$$(\"div\",{className:\"coveo-category-facet-search-placeholder\"}),t=u.$$(\"div\",{className:\"coveo-category-facet-search-icon\"},c.SVGIcons.icons.checkboxHookExclusionMore);l.SVGDom.addClassToSVGInContainer(t.el,\"coveo-category-facet-search-icon-svg\");var n=u.$$(\"span\",{className:\"coveo-category-facet-search-label\"},p.l(\"Search\"));return e.append(t.el),e.append(n.el),e},e.prototype.getDisplayNewValuesFunction=function(){var e=this;return function(){return i(e,void 0,void 0,function(){var e;return o(this,function(t){switch(t.label){case 0:return this.facetSearchElement.showFacetSearchWaitingAnimation(),this.categoryFacet.logger.info(\"Triggering new Category Facet search\"),[4,this.categoryFacet.categoryFacetQueryController.searchFacetValues(this.facetSearchElement.input.value,this.numberOfValuesToFetch)];case 1:return e=t.sent(),(this.logAnalyticsEvent(),e.length<this.numberOfValuesToFetch&&(this.moreValuesToFetch=!1),0==e.length)?(this.noFacetSearchResults(),[2]):(this.removeNoResultsCssClasses(),this.setFacetSearchResults(e),this.shouldPositionSearchResults&&this.facetSearchElement.positionSearchResults(this.categoryFacet.root,this.categoryFacet.element.clientWidth,this.facetSearchElement.search),this.facetSearchElement.hideFacetSearchWaitingAnimation(),[2])}})})}},e.prototype.setFacetSearchResults=function(e){u.$$(this.facetSearchElement.searchResults).empty(),this.currentlyDisplayedResults=a.pluck(e,\"value\");for(var t=0;t<e.length;t++){var n=this.buildFacetSearchValue(e[t],t);0==t&&this.facetSearchElement.setAsCurrentResult(n),this.facetSearchElement.appendToSearchResults(n.el)}this.highlightCurrentQueryWithinSearchResults()},e.prototype.getFormattedCount=function(e){return m.format(e,\"n0\")},e.prototype.buildFacetSearchValue=function(e,t){var n=this,i=e.value.split(this.categoryFacet.options.delimitingCharacter),o=0!=i.slice(0,-1).length?i.slice(0,-1).join(\"/\")+\"/\":\"\",r=u.$$(\"span\",{className:\"coveo-category-facet-search-value-caption\"},a.last(i)),s=u.$$(\"span\",{className:\"coveo-category-facet-search-value-number\"},this.getFormattedCount(e.numberOfResults)),l=u.$$(\"span\",{className:\"coveo-category-facet-search-path-parents\"},o),c=u.$$(\"span\",{className:\"coveo-category-facet-search-path\"},l),h=u.$$(\"div\",{className:\"coveo-category-facet-search-first-row\"},r,s),m=u.$$(\"div\",{className:\"coveo-category-facet-search-second-row\"},c),y=u.$$(\"li\",{id:\"coveo-category-facet-search-suggestion-\"+t,role:\"option\",ariaSelected:\"false\",className:\"coveo-category-facet-search-value\",title:i},h,m);y.el.dataset.path=e.value;var g=p.l(\"ResultCount\",this.getFormattedCount(e.numberOfResults)),v=p.l(\"SelectValueWithResultCount\",a.last(i),g);return(new f.AccessibleButton).withElement(y).withSelectAction(function(){n.categoryFacet.changeActivePath(i),n.categoryFacet.scrollToTop(),n.categoryFacet.logAnalyticsEvent(d.analyticsActionCauseList.categoryFacetSelect,i),n.categoryFacet.executeQuery()}).withLabel(v).build(),y},e.prototype.noFacetSearchResults=function(){this.facetSearchElement.hideFacetSearchWaitingAnimation(),this.facetSearchElement.hideSearchResultsElement(),u.$$(this.facetSearchElement.search).addClass(\"coveo-facet-search-no-results\"),u.$$(this.categoryFacet.element).addClass(\"coveo-no-results\")},e.prototype.removeNoResultsCssClasses=function(){this.facetSearchElement.search&&u.$$(this.facetSearchElement.search).removeClass(\"coveo-facet-search-no-results\"),u.$$(this.categoryFacet.element).removeClass(\"coveo-no-results\")},e.prototype.highlightCurrentQueryWithinSearchResults=function(){var e=new RegExp(\"(\"+h.StringUtils.stringToRegex(this.facetSearchElement.input.value,!0)+\")\",\"ig\");this.facetSearchElement.highlightCurrentQueryInSearchResults(e)},e.prototype.logAnalyticsEvent=function(){this.categoryFacet.usageAnalytics.logCustomEvent(d.analyticsActionCauseList.categoryFacetSearch,{categoryFacetId:this.categoryFacet.options.id,categoryFacetField:this.categoryFacet.options.field.toString(),categoryFacetTitle:this.categoryFacet.options.title},this.categoryFacet.root)},Object.defineProperty(e.prototype,\"shouldPositionSearchResults\",{get:function(){var e=this.facetSearchElement.searchResults;return e&&!e.parentElement},enumerable:!0,configurable:!0}),e}();t.CategoryFacetSearch=y},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(12),r=n(17),s=n(6),a=n(0),u=function(){function e(e,t,n){this.categoryFacet=e,this.onClickHandler=t,this.categoryValueDescriptor=n}return e.prototype.build=function(){var e=this,t=i.$$(\"span\",{className:\"coveo-facet-breadcrumb-clear\"},o.SVGIcons.icons.mainClear),n=a.without.apply(void 0,[this.categoryValueDescriptor.path].concat(this.categoryFacet.options.basePath)),u=n.map(function(t){return e.categoryFacet.getCaption(t)}).join(\"/\"),l=i.$$(\"span\",{className:\"coveo-category-facet-breadcrumb-title\"},this.categoryFacet.options.title+\":\"),c=i.$$(\"span\",{className:\"coveo-category-facet-breadcrumb-values\"},u,t);return(new r.AccessibleButton).withElement(c).withLabel(s.l(\"RemoveFilterOn\",u)).withSelectAction(this.onClickHandler).build(),i.$$(\"span\",{className:\"coveo-category-facet-breadcrumb\"},l,c).el},e}();t.CategoryFacetBreadcrumb=u},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(89),o=n(11),r=n(0),s=n(9),a=(function(){function e(){}}(),function(){function e(e){var t=this;this.categoryFacet=e,this.categoryFacet.bind.onRootElement(o.QueryEvents.buildingQuery,function(e){return t.handleBuildingQuery(e)}),this.categoryFacet.bind.onRootElement(o.QueryEvents.querySuccess,function(e){t.handleQuerySuccess(e)})}return e.prototype.handleBuildingQuery=function(e){var t=e.queryBuilder.groupByRequests.length;if(0==this.categoryFacet.activePath.length)this.positionInQuery={start:t,end:t+1},this.addGroupByForEmptyPath(e.queryBuilder);else{var n=this.categoryFacet.activePath;this.positionInQuery={start:t,end:t+n.length},this.addGroupByForEachPathElement(e.queryBuilder,n)}},e.prototype.handleQuerySuccess=function(t){var n=this;t.results.groupByResults.slice(this.positionInQuery.start,this.positionInQuery.end).forEach(function(t){return e.analyzeResults(t,n.categoryFacet.options.delimitingCharacter)})},e.prototype.addGroupByForEmptyPath=function(e){e.groupByRequests.push({field:this.categoryFacet.options.field,injectionDepth:this.categoryFacet.options.injectionDepth})},e.prototype.addGroupByForEachPathElement=function(e,t){var n=this;t.forEach(function(t){n.categoryFacet.categoryFacetQueryController.addDebugGroupBy(e,t)})},e.analyzeResults=function(e,t){var n=this,i=new Map,o=[],s=this.buildPathsFromGroupByValues(e.values,t);return s=r.sortBy(s,function(e){return e.length}),s.forEach(function(e){if(1==e.length)n.addFirstNodeToTree(i,e);else{for(var r=!0,s=e.slice(0,-1),a=i,u=0,l=s;u<l.length;u++){var c=l[u];if(!(a=a.get(c))){n.processOrphan(o,e,t),r=!1;break}}r&&n.addValidNodeToTree(a,e)}}),o},e.buildPathsFromGroupByValues=function(e,t){return r.chain(e).pluck(\"value\").map(function(e){return e.split(t)}).sortBy(function(e){return e.length}).value()},e.addFirstNodeToTree=function(e,t){e.set(t[0],new Map)},e.addValidNodeToTree=function(e,t){e.set(t.slice(-1)[0],new Map)},e.processOrphan=function(e,t,n){var i=t.join(n);e.push(i),this.logger.error(\"Value \"+i+\" has no parent.\")},e.logger=new s.Logger(i.CategoryFacet),e}());t.CategoryFacetDebug=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(89),o=n(1),r=n(6),s=n(12),a=n(14),u=n(17),l=function(){function e(e){this.options=e,this.element=document.createElement(\"div\"),o.$$(this.element).addClass(\"coveo-facet-header\")}return e.prototype.build=function(){var e=this.buildWaitAnimation(),t=o.$$(\"div\",{className:\"coveo-category-facet-title\",role:\"heading\",\"aria-level\":\"2\",\"aria-label\":r.l(\"FacetTitle\",this.options.title)+\".\"},this.options.title);this.element=o.$$(\"div\",{className:\"coveo-category-facet-header\"},t).el,o.$$(this.element).append(e);var n=this.buildEraser();return o.$$(this.element).append(n),this.element},e.prototype.buildWaitAnimation=function(){var e=o.$$(\"div\",{className:i.CategoryFacet.WAIT_ELEMENT_CLASS},s.SVGIcons.icons.loading).el;return a.SVGDom.addClassToSVGInContainer(e,\"coveo-category-facet-header-wait-animation-svg\"),e.style.visibility=\"hidden\",e},e.prototype.buildEraser=function(){var e=this,t=o.$$(\"div\",{className:\"coveo-category-facet-header-eraser coveo-facet-header-eraser\"},s.SVGIcons.icons.mainClear).el;a.SVGDom.addClassToSVGInContainer(t,\"coveo-facet-header-eraser-svg\");var n=function(){e.options.categoryFacet.reset(),e.options.categoryFacet.scrollToTop()};return(new u.AccessibleButton).withElement(t).withLabel(r.l(\"Clear\",this.options.title)).withClickAction(n).withEnterKeyboardAction(n).build(),t},e}();t.CategoryFacetHeader=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=function(){function e(){this.seenValues=[]}return e.prototype.getValueForLastPartInPath=function(e){for(var t,n={value:\"\",numberOfResults:0},i=0,o=e;i<o.length;i++){var r=o[i],s=t?t.children:this.seenValues,a=this.findNodeWithValue(s,r);if(!a)return n;t=a}return t?t.result:n},e.prototype.storeNewValues=function(e){for(var t=this,n=this.seenValues,i=0,o=e.parentValues;i<o.length;i++){var r=o[i];if(!this.findNodeWithValue(n,r.value)){var s={result:r,children:[]};n.push(s)}n=this.findNodeWithValue(n,r.value).children}e.values.filter(function(e){return!t.findNodeWithValue(n,e.value)}).forEach(function(e){return n.push({result:e,children:[]})})},e.prototype.findNodeWithValue=function(e,t){return i.find(e,function(e){return e.result.value===t})},e}();t.CategoryFacetValuesTree=o},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";function i(){o.exportGlobally({MagicBox:{EndOfInputResult:b.EndOfInputResult,ExpressionConstant:r.ExpressionConstant,ExpressionEndOfInput:s.ExpressionEndOfInput,ExpressionFunction:a.ExpressionFunction,ExpressionList:u.ExpressionList,ExpressionOptions:l.ExpressionOptions,ExpressionRef:c.ExpressionRef,ExpressionRegExp:p.ExpressionRegExp,Grammar:h.Grammar,Grammars:d.Grammars,InputManager:f.InputManager,Instance:m.MagicBoxInstance,OptionResult:g.OptionResult,RefResult:v.RefResult,Result:b.Result,SuggestionsManager:C.SuggestionsManager,Utils:y.MagicBoxUtils,create:m.createMagicBox,requestAnimationFrame:m.requestAnimationFrame}})}Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(3),r=n(210),s=n(209),a=n(470),u=n(471),l=n(467),c=n(465),p=n(469),h=n(175),d=n(537),f=n(476),m=n(213),y=n(214),g=n(468),v=n(466),b=n(48),C=n(212);t.GrammarsImportedLocally=d.Grammars,t.doMagicBoxExport=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(127),o=n(478),r=n(473),s=n(479),a=n(211),u=n(472),l=n(474),c=n(475);t.Grammars={Basic:i.Basic,notInWord:i.notInWord,notWordStart:i.notWordStart,Complete:o.Complete,Date:r.Date,Expressions:s.Expressions,ExpressionsGrammar:s.ExpressionsGrammar,Field:a.Field,NestedQuery:u.NestedQuery,QueryExtension:l.QueryExtension,SubExpression:c.SubExpression}},function(e,t,n){\"use strict\";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(1),s=n(6),a=n(0),u=n(7),l=n(212),c=n(480),p=n(477),h=n(4),d=function(){function e(e,t){void 0===t&&(t={}),this.element=e,this.options=a.defaults(t,{previewHeaderText:s.l(\"QuerySuggestPreview\"),previewClass:\"coveo-preview-selectable\",selectedClass:\"magic-box-selected\"}),this.root=u.Component.resolveRoot(e),this.previewsProcessor=new p.QueryProcessor({timeout:this.options.timeout})}return Object.defineProperty(e.prototype,\"previewsOwner\",{get:function(){return this.lastDisplayedSuggestion},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"hasPreviews\",{get:function(){return!!this.suggestionsPreviewContainer},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"focusedPreviewElement\",{get:function(){if(!this.hasPreviews)return null;var e=this.suggestionsPreviewContainer.findClass(this.options.selectedClass)[0];return e&&e.classList.contains(this.options.previewClass)?e:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"previewElements\",{get:function(){return this.hasPreviews?this.suggestionsPreviewContainer.findClass(this.options.previewClass):[]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"suggestionsListbox\",{get:function(){return r.$$(r.$$(this.element).findClass(\"coveo-magicbox-suggestions\")[0])},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"numberOfResultsPerRow\",{get:function(){var e=this.suggestionsPreviewContainer.findClass(this.options.previewClass);if(0===e.length)return 0;var t=e[0].offsetTop,n=a.findIndex(e,function(e){return e.offsetTop!==t});return-1!==n?n:e.length},enumerable:!0,configurable:!0}),e.prototype.displaySearchResultPreviewsForSuggestion=function(e){return i(this,void 0,void 0,function(){var t,n,i,r,s,a,u;return o(this,function(o){switch(o.label){case 0:return t=this.getExternalOptions(),n=this.lastDelay=h.Utils.resolveAfter(h.Utils.isNullOrUndefined(t.displayAfterDuration)?200:t.displayAfterDuration),[4,n];case 1:return o.sent(),n!==this.lastDelay?[2]:(i=e&&this.lastQueriedSuggestion===e)?[2]:(r=this.lastDisplayedSuggestion===e)?(this.previewsProcessor.overrideIfProcessing(),this.lastQueriedSuggestion=null,[2]):(this.lastQueriedSuggestion=e,e?[4,this.getSearchResultPreviewsQuery(e)]:(this.displaySuggestionPreviews(null,[]),[2]));case 2:return s=o.sent(),(a=s.status,u=s.results,a===p.ProcessingStatus.Overriden)?[2]:(this.lastQueriedSuggestion=null,this.displaySuggestionPreviews(e,u),[2])}})})},e.prototype.getElementInDirection=function(e){var t=this.previewElements,n=t.indexOf(this.focusedPreviewElement);return-1===n?null:0===n&&e===l.Direction.Left?null:t[(n+this.getIncrementInDirection(e))%t.length]},e.prototype.getIncrementInDirection=function(e){switch(e){case l.Direction.Left:return-1;case l.Direction.Right:return 1;case l.Direction.Up:return-this.numberOfResultsPerRow;case l.Direction.Down:return this.numberOfResultsPerRow}},e.prototype.setHasPreviews=function(e){this.hasPreviews!==!!e&&(e?this.initPreviewForSuggestions():this.revertPreviewForSuggestions())},e.prototype.initPreviewForSuggestions=function(){this.suggestionsPreviewContainer=r.$$(\"div\",{className:\"coveo-suggestion-container\"},this.suggestionsListbox.el,this.buildPreviewContainer()),this.element.appendChild(this.suggestionsPreviewContainer.el)},e.prototype.revertPreviewForSuggestions=function(){this.element.appendChild(this.suggestionsListbox.el),this.suggestionsPreviewContainer.remove(),this.suggestionsPreviewContainer=null},e.prototype.buildPreviewContainer=function(){return r.$$(\"div\",{className:\"coveo-preview-container\"},this.resultPreviewsHeader=r.$$(\"div\",{className:\"coveo-preview-header\"}),this.resultPreviewsContainer=r.$$(\"div\",{className:\"coveo-preview-results\"})).el},e.prototype.getExternalOptions=function(){var e={};return r.$$(this.root).trigger(c.ResultPreviewsManagerEvents.updateResultPreviewsManagerOptions,e),e},e.prototype.getSearchResultPreviewsQuery=function(e){var t={suggestionText:e.innerText,previewsQueries:[]};return r.$$(this.root).trigger(c.ResultPreviewsManagerEvents.populateSearchResultPreviews,t),this.previewsProcessor.processQueries(t.previewsQueries)},e.prototype.updateSearchResultPreviewsHeader=function(e){this.resultPreviewsHeader.text(this.options.previewHeaderText+' \"'+e+'\"')},e.prototype.appendSearchResultPreview=function(e){this.resultPreviewsContainer.append(e.element);var t=r.$$(e.element);t.on(\"click\",function(){return e.onSelect()}),t.on(\"keyboardSelect\",function(){return e.onSelect()})},e.prototype.appendSearchResultPreviews=function(e){var t=this;this.resultPreviewsContainer.empty(),e.forEach(function(e){return t.appendSearchResultPreview(e)})},e.prototype.displaySuggestionPreviews=function(e,t){this.setHasPreviews(t&&t.length>0),this.element.classList.toggle(\"magic-box-hasPreviews\",this.hasPreviews),this.lastDisplayedSuggestion=e,this.hasPreviews&&(this.appendSearchResultPreviews(t),this.updateSearchResultPreviewsHeader(e.innerText))},e}();t.ResultPreviewsManager=d},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(6),r=n(17),s=function(){function e(e){this.element=i.$$(\"div\",{className:\"magic-box-clear\"});var t=i.$$(\"div\",{className:\"magic-box-icon\"});this.element.append(t.el),this.element.insertAfter(i.$$(e.element).find(\"input\")),(new r.AccessibleButton).withElement(this.element).withLabel(o.l(\"Clear\")).withSelectAction(function(){return e.clear()}).build(),this.toggleTabindexAndAriaHidden(!1)}return e.prototype.toggleTabindexAndAriaHidden=function(e){var t=e?\"0\":\"-1\";this.element.setAttribute(\"tabindex\",t),this.element.setAttribute(\"aria-hidden\",\"\"+!e)},e}();t.MagicBoxClear=s},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(208),r=n(4),s=function(e){function t(t){var n=e.call(this,t)||this;return n.facet=t,n}return i(t,e),t.prototype.createBasicGroupByRequest=function(t,n){void 0===n&&(n=!0);var i=e.prototype.createBasicGroupByRequest.call(this,null,n);return i.allowedValues=void 0,i=r.Utils.isNonEmptyArray(this.facet.options.ranges)?this.buildGroupByQueryForPredefinedRanges(i):this.buildGroupByQueryForAutomaticRanges(i)},t.prototype.createGroupByAllowedValues=function(){},t.prototype.buildGroupByQueryForAutomaticRanges=function(e){return e.generateAutomaticRanges=!0,e},t.prototype.buildGroupByQueryForPredefinedRanges=function(e){return e.rangeValues=this.facet.options.ranges,e.maximumNumberOfValues=this.facet.options.ranges.length,e},t}(o.FacetQueryController);t.FacetRangeQueryController=s},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(33),o=n(0),r=n(214),s=function(){function e(e){var t=this;this.omnibox=e,this.cache={},this.omnibox.bind.on(this.omnibox.element,i.OmniboxEvents.populateOmniboxSuggestions,function(e){e.suggestions.push(t.getSuggestion())})}return e.prototype.getSuggestion=function(){var e=this,t=this.getHash();if(null==t)return null;var n=this.hashToString(t);if(null!=this.cache[n])return this.hashValueToSuggestion(t,this.cache[n]);var i;return\"FieldName\"==t.type&&(i=this.fieldNames(t.current)),\"FieldValue\"==t.type&&(i=this.fieldValues(t.field,t.current)),\"SimpleFieldName\"==t.type&&(i=this.simpleFieldNames(t.current)),this.cache[n]=i,i.catch(function(){delete e.cache[n]}),this.hashValueToSuggestion(t,i)},e.prototype.getHash=function(){var e=o.last(this.omnibox.resultAtCursor(\"FieldName\"));if(null!=e){e=e.findParent(\"Field\")||e;var t=e.toString(),n=e.before(),i=e.after();return{type:\"FieldName\",current:t,before:n,after:i}}var r=o.last(this.omnibox.resultAtCursor(\"FieldValue\"));if(r){var s=r.findParent(\"FieldQuery\")||this.omnibox.options.enableSimpleFieldAddon&&r.findParent(\"FieldSimpleQuery\");if(s){var a=s.find(\"FieldName\").toString();this.omnibox.options.fieldAlias&&a in this.omnibox.options.fieldAlias&&(a=this.omnibox.options.fieldAlias[a]);var u=r.toString(),n=r.before(),i=r.after();return{type:\"FieldValue\",field:a,current:u,before:n,after:i}}}if(this.omnibox.options.enableSimpleFieldAddon){var l=o.last(this.omnibox.resultAtCursor(\"Word\"));if(null!=l){var c=l.toString(),n=l.before(),i=l.after();return{type:\"SimpleFieldName\",current:c,before:n,after:i}}}},e.prototype.hashToString=function(e){return null==e?null:e.type+e.current+(e.field||\"\")},e.prototype.hashValueToSuggestion=function(t,n){return n.then(function(n){return o.map(n,function(i,o){return{text:t.before+(0==t.current.toLowerCase().indexOf(i.toLowerCase())?t.current+i.substr(t.current.length):i)+t.after,html:r.MagicBoxUtils.highlightText(i,t.current,!0),index:e.INDEX-o/n.length}})})},e.prototype.getFields=function(){var e=this;return null==this.fields&&(this.fields=new Promise(function(t,n){if(null!=e.omnibox.options.listOfFields)t(e.omnibox.options.listOfFields);else{e.omnibox.queryController.getEndpoint().listFields().then(function(e){var n=o.chain(e).filter(function(e){return e.includeInQuery&&e.groupByField}).map(function(e){return e.name.substr(1)}).value();t(n)}).catch(function(){n()})}})),this.fields},e.prototype.fieldNames=function(e){var t=e.length>0&&\"@\"==e[0],n=t?e.substr(1):e,i=n.toLowerCase();return this.getFields().then(function(t){var n=o.chain(t).map(function(e){var t=e.length>0&&\"@\"==e[0];return{index:e.toLowerCase().indexOf(i),field:t?e:\"@\"+e}}).filter(function(t){return-1!=t.index&&t.field.length>e.length}).sortBy(\"index\").map(function(e){return e.field}).value();return n=o.first(n,5)})},e.prototype.fieldValues=function(e,t){return this.omnibox.queryController.getEndpoint().listFieldValues({pattern:\".*\"+t+\".*\",patternType:\"RegularExpression\",sortCriteria:\"occurrences\",field:\"@\"+e,maximumNumberOfValues:5}).then(function(e){return o.chain(e).map(function(e){return{index:e.value.toLowerCase().indexOf(t),value:e.value}}).filter(function(e){return e.value.length>t.length}).sortBy(\"index\").map(function(e){return e.value.replace(/ /g,\" \")}).value()})},e.prototype.simpleFieldNames=function(e){var t=e,n=t.toLowerCase();return this.getFields().then(function(t){var i=o.chain(t).map(function(e){return{index:e.toLowerCase().indexOf(n),field:e+\":\"}}).filter(function(t){return-1!=t.index&&t.field.length>e.length}).sortBy(\"index\").map(function(e){return e.field}).value();return i=o.first(i,5)})},e.INDEX=64,e}();t.FieldAddon=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(33),o=n(1),r=n(4),s=n(0),a=function(){function e(e){var t=this;this.omnibox=e,this.omnibox.bind.on(this.omnibox.element,i.OmniboxEvents.populateOmniboxSuggestions,function(e){s.each(t.getSuggestion(),function(t){e.suggestions.push(t)})})}return e.prototype.getSuggestion=function(){if(0==this.omnibox.magicBox.getText().length)return null;var e=this.buildPopulateOmniboxEventArgs();return o.$$(this.omnibox.root).trigger(i.OmniboxEvents.populateOmnibox,e),this.rowsToSuggestions(e.rows)},e.prototype.getCurrentQueryExpression=function(){var e=this.omnibox.getCursor(),t=this.omnibox.getText(),n=t.length,i=e,o=e;for(\" \"==t[i]&&i--;i>0&&\" \"!=t[i];)i--;for(;o<n&&\" \"!=t[o];)o++;return t.substring(i,o)},e.prototype.getRegexToSearch=function(e){return null==e&&(e=this.omnibox.getText()),new RegExp(r.Utils.escapeRegexCharacter(e),\"i\")},e.prototype.getQueryExpressionBreakDown=function(){var e=this,t=[],n=this.omnibox.getText().split(\" \");return s.each(n,function(n){t.push({word:n,regex:e.getRegexToSearch(n)})}),t},e.prototype.replace=function(e,t){this.omnibox.setText(this.omnibox.getText().replace(e,t))},e.prototype.clearCurrentExpression=function(){this.replace(this.getCurrentQueryExpression(),\"\")},e.prototype.insertAt=function(e,t){var n=this.omnibox.getText(),i=[n.slice(0,e),t,n.slice(e)].join(\"\");this.omnibox.setText(i)},e.prototype.replaceCurrentExpression=function(e){this.replace(this.getCurrentQueryExpression(),e)},e.prototype.buildPopulateOmniboxEventArgs=function(){var e=this,t=this.getCurrentQueryExpression();return{rows:[],completeQueryExpression:{word:this.omnibox.getText(),regex:this.getRegexToSearch()},currentQueryExpression:{word:t,regex:this.getRegexToSearch(t)},allQueryExpressions:this.getQueryExpressionBreakDown(),cursorPosition:this.omnibox.getCursor(),clear:function(){e.omnibox.clear()},clearCurrentExpression:function(){e.clearCurrentExpression()},replace:function(t,n){e.replace(t,n)},replaceCurrentExpression:function(t){e.replaceCurrentExpression(t)},insertAt:function(t,n){e.insertAt(t,n)},closeOmnibox:function(){e.omnibox.magicBox.blur()}}},e.prototype.rowsToSuggestions=function(e){return s.map(e,function(e){return r.Utils.isNullOrUndefined(e.element)?r.Utils.isNullOrUndefined(e.deferred)?null:new Promise(function(t){e.deferred.then(function(e){t(null!=e.element?[{dom:e.element,index:e.zIndex}]:null)})}):new Promise(function(t){t([{dom:e.element,index:e.zIndex}])})})},e}();t.OldOmniboxAddon=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(33),o=n(0),r=n(214),s=function(){function e(e){var t=this;this.omnibox=e,this.cache={},this.omnibox.bind.on(this.omnibox.element,i.OmniboxEvents.populateOmniboxSuggestions,function(e){e.suggestions.push(t.getSuggestion())})}return e.prototype.getSuggestion=function(){var e=this,t=this.getHash(this.omnibox.magicBox);if(null==t)return null;var n=this.hashToString(t);if(null!=this.cache[n])return this.hashValueToSuggestion(t,this.cache[n]);var i=\"QueryExtensionName\"==t.type?this.names(t.current):this.attributeNames(t.name,t.current,t.used);return this.cache[n]=i,i.catch(function(){delete e.cache[n]}),this.hashValueToSuggestion(t,i)},e.prototype.getHash=function(e){var t=o.last(e.resultAtCursor(\"QueryExtension\"));if(null!=t){var n=t.findAll(\"QueryExtensionArgument\"),i=o.last(e.resultAtCursor(\"QueryExtensionName\"));if(null!=i)return{type:\"QueryExtensionName\",current:i.toString(),before:i.before(),after:i.after()};if(null!=(i=o.last(e.resultAtCursor(\"QueryExtensionArgumentName\")))){var r=o.chain(n).map(function(e){var t=e.find(\"QueryExtensionArgumentName\");return t&&t.toString()}).compact().value(),s=t.find(\"QueryExtensionName\").toString();return{type:\"QueryExtensionArgumentName\",current:i.toString(),before:i.before(),after:i.after(),name:s,used:r}}}return null},e.prototype.hashToString=function(e){return null==e?null:[e.type,e.current,e.name||\"\",e.used?e.used.join():\"\"].join()},e.prototype.hashValueToSuggestion=function(t,n){return n.then(function(n){return o.map(n,function(i,o){return{html:r.MagicBoxUtils.highlightText(i,t.current,!0),text:t.before+i+t.after,index:e.INDEX-o/n.length}})})},e.prototype.getExtensions=function(){return null==this.extensions&&(this.extensions=this.omnibox.queryController.getEndpoint().extensions()),this.extensions},e.prototype.names=function(e){var t=e.toLowerCase();return this.getExtensions().then(function(e){var n=o.chain(e).map(function(e){return{index:e.name.toLowerCase().indexOf(t),extension:e.name}}).filter(function(e){return-1!=e.index&&e.extension.length>t.length}).sortBy(\"index\").pluck(\"extension\").value();return n=o.first(n,5)})},e.prototype.attributeNames=function(e,t,n){return this.getExtensions().then(function(i){var r=o.find(i,function(t){return t.name==e});return null==r?[]:o.filter(o.difference(r.argumentNames,n),function(e){return 0==e.indexOf(t)})})},e.prototype.hash=function(){},e.INDEX=62,e}();t.QueryExtensionAddon=s},function(e,t,n){\"use strict\";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(1),s=n(27),a=n(33),u=n(19),l=n(0),c=n(13),p=n(94),h=n(72),d=n(4),f=function(){function e(e){var t=this;this.omnibox=e,r.$$(this.omnibox.element).on(a.OmniboxEvents.populateOmniboxSuggestions,function(e,n){n.suggestions.push(t.getSuggestion())})}return e.suggestiontHtml=function(e){return e.highlighted.replace(/\\[(.*?)\\]|\\{(.*?)\\}|\\((.*?)\\)/g,function(e,t,n,i){var o=\"\";n&&(o=\"coveo-omnibox-hightlight\"),i&&(o=\"coveo-omnibox-hightlight2\");var s;return s=o?r.$$(\"span\",{className:o}):r.$$(\"span\"),s.text(t||n||i),s.el.outerHTML})},e.isPartialMatch=function(e){var t=u.StringUtils.match(e.highlighted,/\\[(.*?)\\]|\\{(.*?)\\}|\\((.*?)\\)/g),n=l.find(t,function(e){return null!=e[1]});return null==n||l.every(l.last(t,l.indexOf(t,n)-t.length),function(e){return null!=e[1]})},e.prototype.getSuggestion=function(){var e=this.omnibox.magicBox.getText();return e.length>=this.omnibox.options.querySuggestCharacterThreshold?this.getQuerySuggest(e):Promise.resolve([])},e.prototype.getQuerySuggest=function(t){return i(this,void 0,void 0,function(){var n,i,s,u;return o(this,function(o){switch(o.label){case 0:n={q:t,locale:this.locale,searchHub:this.searchHub,pipeline:this.pipeline,enableWordCompletion:this.enableWordCompletion,context:this.context,count:this.count,tab:this.tab,referrer:document.referrer,actionsHistory:this.actionsHistory,timezone:this.timezone,visitorId:this.visitorId,isGuestUser:this.isGuestUser},r.$$(this.omnibox.getBindings().searchInterface.element).trigger(a.OmniboxEvents.buildingQuerySuggest,{payload:n}),o.label=1;case 1:return o.trys.push([1,3,,4]),[4,this.omnibox.queryController.getEndpoint().getQuerySuggest(n)];case 2:return i=o.sent(),[3,4];case 3:return s=o.sent(),[2,[]];case 4:return u=i.completions,r.$$(this.omnibox.getBindings().searchInterface.element).trigger(a.OmniboxEvents.querySuggestSuccess,{completions:u}),[2,l.map(u,function(t,n){return{html:e.suggestiontHtml(t),text:t.expression,index:e.INDEX-n/u.length,partial:e.isPartialMatch(t),executableConfidence:t.executableConfidence}})]}})})},Object.defineProperty(e.prototype,\"tab\",{get:function(){var e=this.omnibox.getBindings().queryStateModel.get(c.QUERY_STATE_ATTRIBUTES.T);if(d.Utils.isNonEmptyString(e))return e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"locale\",{get:function(){return String.locale},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"searchHub\",{get:function(){return this.omnibox.getBindings().componentOptionsModel.get(s.ComponentOptionsModel.attributesEnum.searchHub)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"pipeline\",{get:function(){return this.omnibox.getBindings().searchInterface.options.pipeline},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"enableWordCompletion\",{get:function(){return this.omnibox.options.enableSearchAsYouType},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"context\",{get:function(){return this.omnibox.getBindings().searchInterface.getQueryContext()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"count\",{get:function(){return this.omnibox.options.numberOfSuggestions},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"actionsHistory\",{get:function(){var e=new p.history.HistoryStore,t=e.getHistory();return null==t?[]:t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"timezone\",{get:function(){return this.omnibox.getBindings().searchInterface.options.timezone},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"visitorId\",{get:function(){return h.Cookie.get(\"visitorId\")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"isGuestUser\",{get:function(){return this.omnibox.getBindings().queryController.getEndpoint().options.isGuestUser},enumerable:!0,configurable:!0}),e.INDEX=60,e}();t.QuerySuggestAddon=f;var m=function(){function e(){}return e.prototype.getSuggestion=function(){return Promise.resolve([])},e}();t.VoidQuerySuggestAddon=m},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(550),o=n(551),r=n(552),s=n(553),a=n(554),u=n(555),l=n(556),c=n(557),p=n(558),h=n(559),d=function(){function e(e,t){this.endpoint=e,this.root=t}return e.prototype.create=function(e,t){switch(e){case\"keywords_all\":return this.createAllKeywordsInput();case\"keywords_exact\":return this.createExactKeywordsInput();case\"keywords_any\":return this.createAnyKeywordsInput();case\"keywords_none\":return this.createNoneKeywordsInput();case\"date_any\":return this.createAnytimeDateInput();case\"date_last\":return this.createInTheLastDateInput();case\"date_between\":return this.createBetweenDateInput();case\"document_field\":return this.createSimpleFieldInput(t.name,t.field);case\"document_advanced_field\":return this.createAdvancedFieldInput(t.name,t.field);case\"document_size\":return this.createSizeInput();default:return null}},e.prototype.createAllKeywordsInput=function(){return new i.AllKeywordsInput(this.root)},e.prototype.createExactKeywordsInput=function(){return new o.ExactKeywordsInput(this.root)},e.prototype.createAnyKeywordsInput=function(){return new r.AnyKeywordsInput(this.root)},e.prototype.createNoneKeywordsInput=function(){return new s.NoneKeywordsInput(this.root)},e.prototype.createAnytimeDateInput=function(){return new a.AnytimeDateInput(this.root)},e.prototype.createInTheLastDateInput=function(){return new u.InTheLastDateInput(this.root)},e.prototype.createBetweenDateInput=function(){return new l.BetweenDateInput(this.root)},e.prototype.createSimpleFieldInput=function(e,t){return new c.SimpleFieldInput(e,t,this.endpoint,this.root)},e.prototype.createAdvancedFieldInput=function(e,t){return new p.AdvancedFieldInput(e,t,this.root)},e.prototype.createSizeInput=function(){return new h.SizeInput(this.root)},e}();t.AdvancedSearchInputFactory=d},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(178),r=n(6),s=function(e){function t(t){var n=e.call(this,r.l(\"AllTheseWords\"),t)||this;return n.root=t,n}return i(t,e),t}(o.KeywordsInput);t.AllKeywordsInput=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(178),r=n(6),s=function(e){function t(t){var n=e.call(this,r.l(\"ExactPhrase\"),t)||this;return n.root=t,n}return i(t,e),t.prototype.getValue=function(){var t=e.prototype.getValue.call(this);return t?'\"'+t+'\"':\"\"},t}(o.KeywordsInput);t.ExactKeywordsInput=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(178),r=n(6),s=n(0),a=function(e){function t(t){var n=e.call(this,r.l(\"AnyOfTheseWords\"),t)||this;return n.root=t,n}return i(t,e),t.prototype.getValue=function(){var t=e.prototype.getValue.call(this),n=t.split(\" \"),i=\"\";return s.each(n,function(e){i+=e+\" OR \"}),i=i.substr(0,i.length-4)},t}(o.KeywordsInput);t.AnyKeywordsInput=a},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(178),r=n(6),s=n(0),a=function(e){function t(t){var n=e.call(this,r.l(\"NoneOfTheseWords\"),t)||this;return n.root=t,n}return i(t,e),t.prototype.getValue=function(){var t=e.prototype.getValue.call(this),n=\"\";if(t){var i=t.split(\" \");s.each(i,function(e){n+=\" NOT \"+e}),n=n.substr(1)}return n},t}(o.KeywordsInput);t.NoneKeywordsInput=a},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(218),r=n(6),s=n(1),a=n(84),u=function(e){function t(t){var n=e.call(this,r.l(\"Anytime\"),t)||this;return n.root=t,n}return i(t,e),t.prototype.getValue=function(){return null},t.prototype.build=function(){var t=this;e.prototype.build.call(this);var n=this.getRadio();return n.checked=!0,s.$$(n).on(\"change\",function(){t.root?s.$$(t.root).trigger(a.AdvancedSearchEvents.executeAdvancedSearch):s.$$(t.element).trigger(a.AdvancedSearchEvents.executeAdvancedSearch)}),this.element},t}(o.DateInput);t.AnytimeDateInput=u},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(218),r=n(1),s=n(6),a=n(69),u=n(119),l=n(29),c=function(e){function t(t){var n=e.call(this,s.l(\"InTheLast\"),t)||this;return n.root=t,n}return i(t,e),t.prototype.reset=function(){this.dropdown.reset(),this.spinner.reset()},t.prototype.build=function(){e.prototype.build.call(this);var t=r.$$(\"fieldset\",{className:\"coveo-advanced-search-date-input\"});return t.el.disabled=!0,this.spinner=new u.NumericSpinner(this.onChange.bind(this),void 0,void 0,s.l(\"InTheLast\")),t.append(this.spinner.getElement()),this.dropdown=new a.Dropdown(this.onChange.bind(this),[\"Days\",\"Months\"],void 0,s.l(\"InTheLast\")),this.dropdown.setId(\"coveo-advanced-search-in-the-last-select\"),t.append(this.dropdown.getElement()),this.element.appendChild(t.el),r.$$(this.getRadio()).on(\"change\",this.onChange.bind(this)),this.element},t.prototype.getValue=function(){var e=new Date,t=this.spinner.getIntValue(),n=this.dropdown.getValue().toLowerCase(),i=new Date;return\"months\"==n?i.setMonth(e.getMonth()-t):i.setDate(e.getDate()-t),this.isSelected()&&t?\"@date>=\"+l.DateUtils.dateForQuery(i):\"\"},t}(o.DateInput);t.InTheLastDateInput=c},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(218),r=n(85),s=n(6),a=n(1),u=n(29),l=n(68),c=function(e){function t(t){var n=e.call(this,s.l(\"Between\"),t)||this;return n.root=t,n.firstDatePicker=new r.DatePicker(n.onChange.bind(n)),n.secondDatePicker=new r.DatePicker(n.onChange.bind(n)),n}return i(t,e),t.prototype.reset=function(){this.firstDatePicker.reset(),this.secondDatePicker.reset()},t.prototype.build=function(){e.prototype.build.call(this);var t=a.$$(\"fieldset\",{className:\"coveo-advanced-search-date-input\"});return t.el.disabled=!0,t.append(this.firstDatePicker.getElement()),t.append(this.buildAnd()),t.append(this.secondDatePicker.getElement()),this.element.appendChild(t.el),this.element},t.prototype.getValue=function(){var e=this.firstDatePicker.getDateValue(),t=this.secondDatePicker.getDateValue(),n=this.firstDatePicker.getValue(),i=this.secondDatePicker.getValue(),o=\"\";if(this.isSelected()){if(e&&t){if(l.TimeSpan.fromDates(u.DateUtils.convertFromJsonDateIfNeeded(e),u.DateUtils.convertFromJsonDateIfNeeded(i)).getMilliseconds()<0)throw s.l(\"QueryExceptionInvalidDate\")}n&&(o+=\"(@date>=\"+n+\")\"),i&&(o+=\"(@date<=\"+i+\")\")}return o},t.prototype.buildAnd=function(){var e=a.$$(\"div\",{className:\"coveo-advanced-search-and\"});return e.text(s.l(\"And\").toLowerCase()),e.el},t}(o.DateInput);t.BetweenDateInput=c},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(43),s=n(1),a=n(44),u=n(69),l=n(219),c=function(e){function t(t,n,i,o){var r=e.call(this,t,o)||this;return r.inputName=t,r.fieldName=n,r.endpoint=i,r.root=o,r}return i(t,e),t.prototype.reset=function(){this.dropDown.reset()},t.prototype.build=function(){var t=this,n=s.$$(e.prototype.build.call(this));return this.buildFieldSelect().then(function(){n.append(t.dropDown.getElement())}),this.element=n.el,this.element},t.prototype.getValue=function(){var e=this.dropDown?this.dropDown.getValue():\"\",t=new a.QueryBuilder;return e?(t.advancedExpression.addFieldExpression(this.fieldName,\"==\",[e]),t.build().aq):\"\"},t.prototype.buildFieldSelect=function(){var e=this;return this.endpoint.listFieldValues({field:this.fieldName,maximumNumberOfValues:50}).then(function(t){var n=[\"\"];o.each(t,function(e){n.push(e.value)}),e.dropDown=new u.Dropdown(e.onChange.bind(e),n,function(t){return r.FacetUtils.tryToGetTranslatedCaption(e.fieldName,t)},e.inputName)})},t}(l.DocumentInput);t.SimpleFieldInput=c},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(69),r=n(52),s=n(1),a=n(219),u=n(44),l=function(e){function t(t,n,i){var o=e.call(this,t,i)||this;return o.inputName=t,o.fieldName=n,o.root=i,o}return i(t,e),t.prototype.reset=function(){this.mode.reset(),this.input.reset()},t.prototype.build=function(){var t=s.$$(e.prototype.build.call(this));return this.mode=new o.Dropdown(this.onChange.bind(this),[\"Contains\",\"DoesNotContain\",\"Matches\"],void 0,this.inputName),t.append(this.mode.getElement()),this.input=new r.TextInput(this.onChange.bind(this),this.inputName),t.append(this.input.getElement()),this.element=t.el,this.element},t.prototype.getValue=function(){var e=this.input.getValue(),t=new u.QueryBuilder;if(e)switch(this.mode.getValue()){case\"Contains\":return t.advancedExpression.addFieldExpression(this.fieldName,\"=\",[e]),t.build().aq;case\"DoesNotContain\":return t.advancedExpression.addFieldExpression(this.fieldName,\"<>\",[e]),t.build().aq;default:return t.advancedExpression.addFieldExpression(this.fieldName,\"==\",[e]),t.build().aq}return\"\"},t}(a.DocumentInput);t.AdvancedFieldInput=l},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(6),r=n(1),s=n(44),a=n(69),u=n(119),l=n(219),c=function(e){function t(t){var n=e.call(this,\"Size\",t)||this;return n.root=t,n}return i(t,e),t.prototype.reset=function(){this.modeSelect.reset(),this.sizeInput.reset()},t.prototype.build=function(){var n=r.$$(e.prototype.build.call(this)),i=r.$$(\"div\",{className:\"coveo-size-input-mode-section\"});return this.modeSelect=new a.Dropdown(this.onChange.bind(this),t.modes,void 0,o.l(\"Size\")),this.modeSelect.setId(\"coveo-size-input-mode\"),i.append(this.modeSelect.getElement()),this.sizeInput=new u.NumericSpinner(this.onChange.bind(this),void 0,void 0,o.l(\"SizeValue\")),i.append(this.sizeInput.getElement()),this.sizeSelect=new a.Dropdown(this.onChange.bind(this),t.sizes,void 0,o.l(\"UnitMeasurement\")),this.sizeSelect.setId(\"coveo-size-input-select\"),i.append(this.sizeSelect.getElement()),n.append(i.el),this.element=n.el,this.element},t.prototype.getValue=function(){var e=this.getSizeInBytes(),t=new s.QueryBuilder;if(e)switch(this.modeSelect.getValue()){case\"AtLeast\":return t.advancedExpression.addFieldExpression(\"@size\",\">=\",[this.getSizeInBytes().toString()]),t.build().aq;default:return t.advancedExpression.addFieldExpression(\"@size\",\"<=\",[this.getSizeInBytes().toString()]),t.build().aq}return\"\"},t.prototype.getSizeInBytes=function(){var e=this.sizeInput.getFloatValue();switch(this.sizeSelect.getValue()){case\"KB\":return 1024*e;case\"MB\":return e*Math.pow(1024,2);default:return e}},t.modes=[\"AtLeast\",\"AtMost\"],t.sizes=[\"KB\",\"MB\",\"Bytes\"],t}(l.DocumentInput);t.SizeInput=c},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.openCardOverlay=\"openCardOverlay\",e.closeCardOverlay=\"closeCardOverlay\",e}();t.CardOverlayEvents=i},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(86),s=function(){function e(e){this.googleApiKey=e}return e.prototype.getPosition=function(){return i(this,void 0,void 0,function(){var e,t;return o(this,function(n){switch(n.label){case 0:return[4,(new r.EndpointCaller).call({errorsAsSuccess:!1,method:\"POST\",queryString:[\"key=\"+this.googleApiKey],requestData:{},responseType:\"json\",url:\"https://www.googleapis.com/geolocation/v1/geolocate\"})];case 1:return e=n.sent(),t=e.data.location,[2,{longitude:t.lng,latitude:t.lat}]}})})},e}();t.GoogleApiPositionProvider=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(){}return e.prototype.getPosition=function(){return new Promise(function(e,t){navigator.geolocation.getCurrentPosition(function(t){e({latitude:t.coords.latitude,longitude:t.coords.longitude})},function(e){t(e)})})},e}();t.NavigatorPositionProvider=i},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=function(){function e(e,t){this.latitude=e,this.longitude=t}return e.prototype.getPosition=function(){return Promise.resolve({longitude:this.longitude,latitude:this.latitude})},e}();t.StaticPositionProvider=i},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(0),r=n(11),s=n(9),a=n(71),u=n(44),l=n(29),c=n(21),p=n(4),h=function(){function e(e){var t=this;this.facet=e,this.facet.bind.onRootElement(r.QueryEvents.querySuccess,function(e){return t.handleQuerySuccess(e)})}return e.prototype.prepareForNewQuery=function(){this.lastGroupByRequestIndex=void 0},e.prototype.putGroupByIntoQueryBuilder=function(e){this.facet.options.graph&&this.putGroupByForGraphIntoQueryBuilder(e),this.putGroupByForSliderIntoQueryBuilder(e)},e.prototype.createBasicGroupByRequest=function(){return{field:this.facet.options.field,completeFacetWithStandardValues:!0,allowedValues:void 0}},e.prototype.computeOurFilterExpression=function(e){void 0===e&&(e=[this.facet.startOfSlider,this.facet.endOfSlider]);var t=new a.ExpressionBuilder;return void 0!=e[0]&&void 0!=e[1]&&(this.facet.options.excludeOuterBounds?this.addFilterExpressionWithOuterBoundsExcluded(e[0],e[1],t):this.addFilterExpressionWithOuterBoundsIncluded(e[0],e[1],t)),t.build()},e.prototype.handleQuerySuccess=function(e){var t=this;if(!this.isAValidRangeResponse(e)){var n=new s.Logger(this);return n.error(\"Cannot instantiate FacetSlider for this field : \"+this.facet.options.field+\". It needs to be configured as a numerical field in the index\"),n.error(\"Disabling the FacetSlider\",this.facet),void this.facet.disable()}if(this.facet.options&&this.facet.options.graph&&void 0==this.rangeValuesForGraphToUse){this.rangeValuesForGraphToUse=[];var i=e.results.groupByResults[this.graphGroupByQueriesIndex],r=i?i.values:[];o.each(r,function(e){var n=e.value.split(\"..\");t.rangeValuesForGraphToUse.push({start:t.facet.options.dateField?t.getISOFormat(n[0].replace(\"@\",\" \")):parseInt(n[0],10),end:t.facet.options.dateField?t.getISOFormat(n[1].replace(\"@\",\" \")):parseInt(n[1],10)})})}},e.prototype.isAValidRangeResponse=function(e){if(void 0!=this.lastGroupByRequestIndex&&e.results.groupByResults[this.lastGroupByRequestIndex]){var t=e.results.groupByResults[this.lastGroupByRequestIndex].values[0];if(t&&!c.QueryUtils.isRangeString(t.value))return!1}return!0},e.prototype.addFilterExpressionWithOuterBoundsIncluded=function(e,t,n){e==this.facet.options.start&&t==this.facet.options.end||(this.facet.options.dateField&&(e=this.getFilterDateFormat(e),t=this.getFilterDateFormat(t)),n.addFieldExpression(this.facet.options.field,\"==\",[e+\"..\"+t]))},e.prototype.addFilterExpressionWithOuterBoundsExcluded=function(e,t,n){var i=this.facet.options.start,o=this.facet.options.end,r=e,s=t;this.facet.options.dateField?(r=this.getFilterDateFormat(e),s=this.getFilterDateFormat(t),i=this.getFilterDateFormat(i),o=this.getFilterDateFormat(o)):(r+=\"\",s+=\"\",i+=\"\",o+=\"\"),r!=i&&s==o?n.addFieldExpression(this.facet.options.field,\">=\",[r]):r==i&&s!=o?n.addFieldExpression(this.facet.options.field,\"<=\",[s]):this.addFilterExpressionWithOuterBoundsIncluded(e,t,n)},e.prototype.putGroupByForGraphIntoQueryBuilder=function(e){this.graphGroupByQueriesIndex=e.groupByRequests.length;var t=this.createBasicGroupByRequest();this.facet.isSimpleSliderConfig?(t.rangeValues=this.createRangeValuesForGraphUsingStartAndEnd(),t.generateAutomaticRanges=!1):t.generateAutomaticRanges=!0,this.addExpressionToExcludeInvalidDates(t);var n=this.computeOurFilterExpression(this.facet.getSliderBoundaryForQuery());this.processQueryOverride(n,t,e),t.sortCriteria=\"nosort\",t.maximumNumberOfValues=this.facet.options.graph.steps,e.groupByRequests.push(t)},e.prototype.putGroupByForSliderIntoQueryBuilder=function(e){this.lastGroupByRequestIndex=e.groupByRequests.length;var t=this.putGroupByBasicSliderIntoQueryBuilder(e);this.putGroupByForFullRangeSliderIntoQueryBuilder(e,t)},e.prototype.processQueryOverride=function(e,t,n){var i;i=void 0!=e?n.computeCompleteExpressionPartsExcept(e):n.computeCompleteExpressionParts();var o=this.facet.options.queryOverride||\"@uri\";t.queryOverride=this.appendOrSetGroupByOverrideParam(t.queryOverride,i.basic),t.advancedQueryOverride=this.appendOrSetGroupByOverrideParam(t.advancedQueryOverride,i.advanced),t.constantQueryOverride=this.appendOrSetGroupByOverrideParam(t.constantQueryOverride,i.constant),t.advancedQueryOverride=this.appendOrSetGroupByOverrideParam(t.advancedQueryOverride,o)},e.prototype.createRangeValuesForGraphUsingStartAndEnd=function(){var e=this.getFormattedStartAndEnd(),t=e.start,n=e.end,i={start:t,end:n,endInclusive:!0,label:\"Slider\"};return void 0==this.facet.options.graph.steps&&(this.facet.options.graph.steps=10),this.facet.options.dateField&&isNaN(this.facet.options.start)&&(this.facet.options.start=new Date(this.facet.options.start).getTime()),this.facet.options.dateField&&isNaN(this.facet.options.end)&&(this.facet.options.end=new Date(this.facet.options.end).getTime()),void 0!=this.rangeValuesForGraphToUse?this.usePrebuiltRange(i):this.buildRange(i)},e.prototype.usePrebuiltRange=function(e){return o.map(this.rangeValuesForGraphToUse,function(t){return{start:t.start,end:t.end,endInclusive:e.endInclusive,label:e.label}})},e.prototype.buildRange=function(e){var t=this,n=this.facet.options.start,i=(this.facet.options.end-this.facet.options.start)/this.facet.options.graph.steps;return o.map(o.range(0,this.facet.options.graph.steps,1),function(o){var r=n+o*i,s=n+(o+1)*i;return t.facet.options.dateField&&(r=t.getISOFormat(r),s=t.getISOFormat(s)),{endInclusive:e.endInclusive,label:e.label,start:r,end:s}})},e.prototype.getFormattedStartAndEnd=function(){var e=this.facet.options.start,t=this.facet.options.end;return this.facet.options.dateField&&(e=this.getISOFormat(e),t=this.getISOFormat(t)),{start:e,end:t}},e.prototype.getISOFormat=function(e){if(e){isNaN(e)||(e=Number(e));var t=new Date(e);return l.DateUtils.isValid(t)||(t=new Date(this.getBrowserCompatibleFormat(e)),l.DateUtils.isValid(t))?t.toISOString():void this.facet.logger.error(\"Cannot parse this date format.\",e,new Date(e))}},e.prototype.getFilterDateFormat=function(e){return e?this.getISOFormat(e).replace(\"T\",\"@\").replace(\".000Z\",\"\").replace(/-/g,\"/\"):void 0},e.prototype.getBrowserCompatibleFormat=function(e){return e.replace(\"@\",\"T\").replace(/\\//g,\"-\")},e.prototype.putGroupByForFullRangeSliderIntoQueryBuilder=function(e,t){this.lastGroupByRequestForFullRangeIndex=e.groupByRequests.length;var n=o.clone(t);delete n.queryOverride,delete n.advancedQueryOverride,this.facet.options.queryOverride&&(n.advancedQueryOverride=this.facet.options.queryOverride),this.addExpressionToExcludeInvalidDates(n),e.groupByRequests.push(n)},e.prototype.putGroupByBasicSliderIntoQueryBuilder=function(e){var t=1;this.facet.hasAGraph()&&(t=this.facet.options.graph.steps);var n;this.facet.isSimpleSliderConfig&&(n=[i({},this.getFormattedStartAndEnd(),{label:\"slider\",endInclusive:!1})]);var o=this.createBasicGroupByRequest();o.maximumNumberOfValues=t,o.sortCriteria=\"nosort\",o.generateAutomaticRanges=!this.facet.isSimpleSliderConfig,o.rangeValues=n;var r=this.computeOurFilterExpression(this.facet.getSliderBoundaryForQuery());return this.processQueryOverride(r,o,e),this.addExpressionToExcludeInvalidDates(o),e.groupByRequests.push(o),o},e.prototype.addExpressionToExcludeInvalidDates=function(e){if(this.facet.options.dateField){var t=new u.QueryBuilder;t.expression.addFieldExpression(this.facet.options.field,\">\",[this.getFilterDateFormat(new Date(0))]),e.constantQueryOverride?e.constantQueryOverride+=\" \"+t.expression.build():e.constantQueryOverride=t.expression.build()}},e.prototype.appendOrSetGroupByOverrideParam=function(e,t){return p.Utils.isNullOrUndefined(t)?e:p.Utils.isNullOrUndefined(e)?t||\"\":e+\" \"+(t||\"\")},e}();t.FacetSliderQueryController=h},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(577),o=n(487),r=n(20),s=n(0),a=n(138),u=n(9),l=n(22),c=n(1),p=n(4);t.MAX_NUMBER_OF_STEPS=100;var h=function(){function e(e,t,n){var i=this;if(this.element=e,this.options=t,this.root=n,this.steps=[],this.options.dateField&&(this.options.start=new Date(this.options.start).getTime(),this.options.end=new Date(this.options.end).getTime()),void 0==this.options.rounded&&(this.options.rounded=0),(this.options.steps||this.options.getSteps)&&this.buildSteps(),this.options.graph&&(this.sliderGraph=new g(this)),this.sliderLine=new d(this),s.each(this.sliderLine.build(),function(e){i.element.appendChild(e)}),this.options.rangeSlider)this.sliderRange=new m(this),s.each(this.sliderRange.build(),function(e){i.element.appendChild(e)});else{this.sliderButton=new f(this,1);var o=this.sliderButton.build();c.$$(o).addClass(\"coveo-no-range-button\"),this.element.appendChild(o),this.sliderLine.setActiveWidth(this.sliderButton)}this.sliderCaption=new y(this),this.element.appendChild(this.sliderCaption.build())}return e.prototype.onMoving=function(){this.options.rangeSlider?(this.sliderRange.setBoundary(),this.sliderLine.setActiveWidth(this.sliderRange.firstButton,this.sliderRange.secondButton)):(this.setButtonBoundary(),this.sliderLine.setActiveWidth(this.sliderButton)),this.options.graph&&this.sliderGraph.draw(),this.displayCaption()},e.prototype.initializeState=function(e){void 0===e&&(e=[this.options.start,this.options.end]),this.currentValues=e,this.options.rangeSlider?(this.sliderRange.initializeSliderRangeState(e),this.sliderLine.setActiveWidth(this.sliderRange.firstButton,this.sliderRange.secondButton)):(void 0==e?this.sliderButton.toEnd():this.sliderButton.setValue(e[1]),this.setButtonBoundary(),this.sliderLine.setActiveWidth(this.sliderButton)),this.displayCaption()},e.prototype.getPosition=function(){return this.options.rangeSlider?this.sliderRange.getPosition():[0,this.sliderButton.getPosition()]},e.prototype.getPercentPosition=function(){return this.options.rangeSlider?this.sliderRange.getPercentPosition():[0,this.sliderButton.getPercent()]},e.prototype.getValues=function(){return void 0!=this.currentValues?this.currentValues:this.options.rangeSlider?this.sliderRange.getValue():[this.options.start,this.sliderButton.getValue()]},e.prototype.getCaptionFromValue=function(e){return this.sliderCaption.getCaptionFromValues(e)},e.prototype.getCaption=function(){return this.sliderCaption.getCaption()},e.prototype.setValues=function(e){void 0!=e&&(e[0]=Math.max(e[0],this.options.start),e[1]=Math.min(e[1],this.options.end)),this.currentValues=e,this.options.rangeSlider?(this.sliderRange.setValue(e),this.sliderLine.setActiveWidth(this.sliderRange.firstButton,this.sliderRange.secondButton)):(this.sliderButton.setValue(e[1]),this.sliderLine.setActiveWidth(this.sliderButton)),this.displayCaption()},e.prototype.drawGraph=function(e){this.sliderGraph&&this.sliderGraph.draw(e)},e.prototype.setButtonBoundary=function(){this.sliderButton.leftBoundary=0,this.sliderButton.rightBoundary=this.element.clientWidth},e.prototype.displayCaption=function(){void 0!=this.options.valueCaption?this.sliderCaption.setFromString(this.options.valueCaption(this.getValues())):void 0!=this.options.percentCaption?this.sliderCaption.setFromString(this.options.percentCaption(this.getPercentPosition())):void 0!=this.options.displayAsPercent&&void 0!=this.options.displayAsPercent.separator&&this.options.displayAsPercent.enable?this.sliderCaption.setAsPercent():this.sliderCaption.setAsValue()},e.prototype.buildSteps=function(){if(this.options.getSteps)this.steps=this.options.getSteps(this.options.start,this.options.end);else{this.options.steps>t.MAX_NUMBER_OF_STEPS&&(new u.Logger(this).warn(\"Maximum number of steps for slider is \"+t.MAX_NUMBER_OF_STEPS+\" for performance reason\"),this.options.steps=t.MAX_NUMBER_OF_STEPS);var e=(this.options.end-this.options.start)/Math.max(1,this.options.steps);if(e>0)for(var n=this.options.start,i=0;n<=this.options.end&&i<=t.MAX_NUMBER_OF_STEPS;)this.steps.push(n),n+=e,i++;else this.steps.push(this.options.start),this.steps.push(this.options.end)}},e}();t.Slider=h;var d=function(){function e(e){this.slider=e}return e.prototype.build=function(){return this.backGround=c.$$(\"div\",{className:\"coveo-slider-line coveo-background\"}).el,this.activePart=c.$$(\"div\",{className:\"coveo-slider-line coveo-active\"}).el,[this.backGround,this.activePart]},e.prototype.setActiveWidth=function(e,t){if(this.slider.options.rangeSlider){var n=100*(t.getPercent()-e.getPercent());this.activePart.style.width=n+\"%\",this.activePart.style.left=100*e.getPercent()+\"%\",this.activePart.style.right=100*t.getPercent()+\"%\"}else{var n=100*e.getPercent();this.activePart.style.width=n+\"%\"}},e}(),f=function(){function e(e,t){this.slider=e,this.which=t,this.eventMouseDown=l.DeviceUtils.isMobileDevice()?\"touchstart\":\"mousedown\",this.eventMouseMove=l.DeviceUtils.isMobileDevice()?\"touchmove\":\"mousemove\",this.eventMouseUp=l.DeviceUtils.isMobileDevice()?\"touchend\":\"mouseup\"}return e.prototype.build=function(){return this.element=c.$$(\"div\",{className:\"coveo-slider-button\"}).el,this.bindEvents(),this.element.CoveoSliderButton=this,this.element},e.prototype.toBeginning=function(){this.element.style.left=\"0%\"},e.prototype.toEnd=function(){this.element.style.left=\"100%\"},e.prototype.setValue=function(e){var t=this.fromValueToPercent(e);this.element.style.left=Math.round(100*t)+\"%\"},e.prototype.getPosition=function(){var e=this.element.style.left;return-1!=e.indexOf(\"%\")?parseFloat(e)/100*this.slider.element.clientWidth:parseFloat(e)},e.prototype.getPercent=function(e){return void 0===e&&(e=this.getPosition()),0==this.slider.element.clientWidth?0:+(e/this.slider.element.clientWidth).toFixed(2)},e.prototype.getValue=function(){return this.getPercent()*(this.slider.options.end-this.slider.options.start)+this.slider.options.start},e.prototype.fromValueToPercent=function(e){return 1-(this.slider.options.end-e)/(this.slider.options.end-this.slider.options.start)},e.prototype.fromPositionToValue=function(e){var t=this.getPercent(e);return this.slider.options.start+t*(this.slider.options.end-this.slider.options.start)},e.prototype.fromValueToPosition=function(e){var t=this.fromValueToPercent(e);return this.slider.element.clientWidth*t},e.prototype.bindEvents=function(){var e=this;c.$$(this.element).on(this.eventMouseDown,function(t){e.handleStartSlide(t)});var t=this.slider.options.document||document;t.addEventListener(this.eventMouseMove,function(t){\"touchmove\"==e.eventMouseMove&&e.isMouseDown&&t.preventDefault(),e.handleMoving(t)}),t.addEventListener(this.eventMouseUp,function(){e.handleEndSlide()})},e.prototype.getUserSelect=function(){return void 0!==document.body.style.msUserSelect?\"msUserSelect\":void 0!==document.body.style.webkitUserSelect?\"webkitUserSelect\":void 0!==document.body.style.MozUserSelect?\"MozUserSelect\":\"userSelect\"},e.prototype.handleStartSlide=function(e){var t=this.getMousePosition(e);this.isMouseDown=!0,this.startPositionX=t.x,this.lastElementLeft=parseInt(this.element.style.left,10)/100*this.slider.element.clientWidth,this.origUserSelect=document.body.style[this.getUserSelect()],this.origCursor=document.body.style.cursor,document.body.style[this.getUserSelect()]=\"none\",document.body.style.cursor=\"pointer\",c.$$(this.element).addClass(\"coveo-active\"),c.$$(this.element).trigger(a.SliderEvents.startSlide,{button:this,slider:this.slider}),e.stopPropagation()},e.prototype.handleMoving=function(e){this.isMouseDown&&(this.slider.onMoving(),this.updatePosition(e),this.handleButtonNearEnd(),c.$$(this.element).trigger(a.SliderEvents.duringSlide,{button:this,slider:this.slider}))},e.prototype.handleEndSlide=function(){this.isMouseDown&&(document.body.style[this.getUserSelect()]=this.origUserSelect,document.body.style.cursor=this.origCursor,c.$$(this.element).removeClass(\"coveo-active\"),c.$$(this.element).trigger(a.SliderEvents.endSlide,{button:this,slider:this.slider})),this.isMouseDown=!1},e.prototype.handleButtonNearEnd=function(){0==this.which&&(void 0==this.origZIndex&&(this.origZIndex=this.element.style.zIndex||\"1\"),this.currentPos>90?this.element.style.zIndex=this.origZIndex+1:this.element.style.zIndex=this.origZIndex)},e.prototype.getMousePosition=function(e){var t=0,n=0;return e.touches&&e.touches[0]?(t=e.touches[0].pageX,n=e.touches[0].pageY):e.pageX&&e.pageY?(t=e.pageX,n=e.pageY):e.clientX&&e.clientY&&(t=e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,n=e.clientY+document.body.scrollTop+document.documentElement.scrollTop),{x:t,y:n}},e.prototype.updatePosition=function(e){var t,n=this.getMousePosition(e),i=n.x-this.startPositionX;if(this.currentPos=this.lastElementLeft+i,this.slider.options.steps||this.slider.options.getSteps){var o=this.snapToStep(i);this.currentPos=o.position,t=o.value}this.currentPos=Math.max(this.leftBoundary,this.currentPos),this.currentPos=Math.min(this.rightBoundary,this.currentPos),this.currentPos=100*this.getPercent(this.currentPos),this.currentPos=Math.min(this.currentPos,100),this.currentPos=Math.max(this.currentPos,0),this.element.style.left=Math.round(this.currentPos)+\"%\",this.slider.options.steps||this.slider.options.getSteps?this.slider.currentValues[this.which]=t:this.slider.currentValues[this.which]=this.getValue()},e.prototype.snapToStep=function(e){var t=this,n=s.map(this.slider.steps,function(e,n){return Math.abs(t.currentPos-t.fromValueToPosition(t.slider.steps[n]))}),i=s.map(this.slider.steps,function(e,n){return Math.abs(t.rightBoundary-t.fromValueToPosition(t.slider.steps[n]))}),o=s.map(this.slider.steps,function(e,n){return Math.abs(t.leftBoundary-t.fromValueToPosition(t.slider.steps[n]))}),r=s.min(n),a=s.min(i),u=s.min(o),l=this.slider.steps[s.indexOf(n,r)],c=this.slider.steps[s.indexOf(i,a)],p=this.slider.steps[s.indexOf(o,u)];return l=Math.min(l,c),l=Math.max(l,p),{position:this.fromValueToPosition(l),value:l}},e}();t.SliderButton=f;var m=function(){function e(e){this.slider=e,this.firstButton=new f(e,0),this.secondButton=new f(e,1)}return e.prototype.build=function(){var e=this.firstButton.build(),t=this.secondButton.build();return c.$$(t).addClass(\"coveo-range-button\"),[e,t]},e.prototype.initializeSliderRangeState=function(e){void 0==e?(this.firstButton.toBeginning(),this.secondButton.toEnd()):(this.firstButton.setValue(e[0]),this.secondButton.setValue(e[1])),this.setBoundary()},e.prototype.setValue=function(e){this.firstButton.setValue(e[0]),this.secondButton.setValue(e[1])},e.prototype.setBoundary=function(){this.firstButton.leftBoundary=0,this.firstButton.rightBoundary=this.secondButton.getPosition(),this.secondButton.leftBoundary=this.firstButton.getPosition(),this.secondButton.rightBoundary=this.slider.element.clientWidth},e.prototype.getPosition=function(){return[this.firstButton.getPosition(),this.secondButton.getPosition()]},e.prototype.getPercentPosition=function(){return[this.firstButton.getPercent(),this.secondButton.getPercent()]},e.prototype.getValue=function(){return[this.firstButton.getValue(),this.secondButton.getValue()]},e}(),y=function(){function e(e){this.slider=e,this.separator=\"-\",this.unitSign=\"\",this.slider.options.displayAsPercent&&this.slider.options.displayAsPercent.enable?this.separator=void 0!=this.slider.options.displayAsPercent.separator?this.slider.options.displayAsPercent.separator:this.separator:this.slider.options.displayAsValue&&this.slider.options.displayAsValue.enable&&(this.separator=void 0!=this.slider.options.displayAsValue.separator?this.slider.options.displayAsValue.separator:this.separator,this.unitSign=void 0!=this.slider.options.displayAsValue.unitSign?this.slider.options.displayAsValue.unitSign:this.unitSign)}return e.prototype.build=function(){return this.caption=c.$$(\"div\",{className:\"coveo-slider-caption\"}).el,this.caption},e.prototype.getCaption=function(){return c.$$(this.caption).text()},e.prototype.getCaptionFromValues=function(e){return this.getValueCaption(e)},e.prototype.getCaptionFromValuesAsPercent=function(e){return this.getValueCaption(e)},e.prototype.setAsValue=function(){c.$$(this.caption).text(this.getValueCaption())},e.prototype.setAsPercent=function(){var e=this.slider.getPercentPosition();c.$$(this.caption).text([(100*e[0]).toFixed(this.slider.options.rounded),\"%\",this.separator,(100*e[1]).toFixed(this.slider.options.rounded),\"%\"].join(\" \"))},e.prototype.setFromString=function(e){c.$$(this.caption).text(e)},e.prototype.getValueCaption=function(e){void 0===e&&(e=this.slider.getValues());var t=e[0],n=e[1];if(this.slider.options.dateField){var i=new Date(t),o=new Date(n);i.setHours(0,0,0,0),o.setHours(0,0,0,0),t=r.format(i,this.slider.options.dateFormat||\"MMM dd, yyyy\"),n=r.format(o,this.slider.options.dateFormat||\"MMM dd, yyyy\"),this.unitSign=\"\"}else t=t.toFixed(this.slider.options.rounded),n=n.toFixed(this.slider.options.rounded);return[t,this.unitSign,this.separator,n,this.unitSign].join(\" \")},e}(),g=function(){function e(e){this.slider=e,this.svg=i.select(e.element).append(\"svg\").append(\"g\"),this.x=o.scaleBand(),this.y=o.scaleLinear(),this.slider.options.graph.margin=p.Utils.extendDeep({top:20,right:0,left:0,bottom:20},this.slider.options.graph.margin||{}),this.slider.options.graph.animationDuration=this.slider.options.graph.animationDuration||500,this.slider.options.graph.steps=this.slider.options.graph.steps||10,this.buildTooltip()}return e.prototype.draw=function(e){if(void 0===e&&(e=this.oldData),e){e!=this.oldData&&(e=this.modifyPossibleSinglePointDataIntoValidRange(e));var t=this.slider.element.offsetWidth,n=this.slider.element.offsetHeight,i=t-this.slider.options.graph.margin.left-this.slider.options.graph.margin.right,o=n-this.slider.options.graph.margin.top-this.slider.options.graph.margin.bottom;if(!isNaN(i)&&i>=0&&!isNaN(o)&&o>=0){this.applyTransformOnSvg(i,o),this.setXAndYRange(i,o),this.setXAndYDomain(e);var r=this.svg.selectAll(\".coveo-bar\").data(e),s=this.slider.getValues();this.renderGraphBars(r,i,o,s),this.setGraphBarsTransition(r,o,s)}this.oldData=e}},e.prototype.buildTooltip=function(){this.tooltip=c.$$(\"div\",{className:\"coveo-slider-tooltip\"}).el,this.tooltipArrow=c.$$(\"div\",{className:\"coveo-slider-tooltip-arrow\"}).el,this.tooltipCaption=c.$$(\"span\",{className:\"coveo-caption\"}).el,this.tooltipCount=c.$$(\"span\",{className:\"coveo-count\"}).el,c.$$(this.tooltip).append(this.tooltipArrow),c.$$(this.tooltip).append(this.tooltipCaption),c.$$(this.tooltip).append(this.tooltipCount),c.$$(this.tooltip).hide(),c.$$(this.slider.element).append(this.tooltip)},e.prototype.modifyPossibleSinglePointDataIntoValidRange=function(e){var t=this;return s.map(e,function(e){if(e.start==e.end){var n=(t.slider.options.end-t.slider.options.start)/t.slider.options.graph.steps;e.start=Math.round(e.start-n/2),e.end=Math.round(e.end+n/2)}return e})},e.prototype.setXAndYRange=function(e,t){this.x.range([0,e]),this.x.padding(.2),this.y.range([t-this.slider.options.graph.margin.top,0])},e.prototype.setXAndYDomain=function(e){this.padGraphWithEmptyData(e),this.x.domain(s.map(e,function(e){return e.start})),this.y.domain([0,i.max(e,function(e){return e.y})])},e.prototype.calculateOneStepOfGraph=function(e){return Math.abs(e[0].end-e[0].start)||1},e.prototype.padGraphWithEmptyData=function(e){var t=this.calculateOneStepOfGraph(e);this.padBeginningOfGraphWithEmptyData(e,t),this.padEndOfGraphWithEmptyData(e,t)},e.prototype.padBeginningOfGraphWithEmptyData=function(e,n){if(e[0].start>this.slider.options.start&&e[0].start>n)for(var i=e[0].start-this.slider.options.start,o=Math.min(t.MAX_NUMBER_OF_STEPS,Math.round(i/n)),r=e[0].start,s=o;s>0;s--)e.unshift({start:r-n,end:r,y:0}),r-=n},e.prototype.padEndOfGraphWithEmptyData=function(e,n){var i=e.length-1;if(e[i].end<this.slider.options.end)for(var o=this.slider.options.end-e[i].end,r=Math.min(t.MAX_NUMBER_OF_STEPS,Math.round(o/n)),s=e[i].end,a=0;a<r;a++)e.push({start:s,end:s+n,y:0}),s+=n},e.prototype.applyTransformOnSvg=function(e,t){var n=c.$$(this.slider.element).find(\"svg\");n.setAttribute(\"width\",e+\"px\"),n.setAttribute(\"height\",t+\"px\"),this.svg.attr(\"transform\",\"translate(\"+this.slider.options.graph.margin.left+\",\"+this.slider.options.graph.margin.top+\")\")},e.prototype.renderGraphBars=function(e,t,n,i){e.enter().append(\"rect\").attr(\"class\",this.getFunctionForClass(i)).attr(\"width\",this.x.bandwidth()).attr(\"height\",this.getFunctionForHeight(n)).attr(\"x\",this.getFunctionForX()).attr(\"y\",this.getFunctionForY()).on(\"click\",this.getFunctionForClick()).on(\"mouseover\",this.getFunctionForMouseOver(n)).on(\"mouseout\",this.getFunctionForMouseOut())},e.prototype.setGraphBarsTransition=function(e,t,n){e.transition().attr(\"x\",this.getFunctionForX()).attr(\"width\",this.x.bandwidth()).attr(\"class\",this.getFunctionForClass(n)).transition().duration(this.slider.options.graph.animationDuration).attr(\"y\",this.getFunctionForY()).attr(\"height\",this.getFunctionForHeight(t))},e.prototype.getBarClass=function(e,t,n){return t.start>=e[0]&&t.end<=e[1]?\"coveo-active\":e[0]==this.slider.options.start&&0==n?\"coveo-active\":e[1]==this.slider.options.end&&n==this.slider.options.graph.steps-1?\"coveo-active\":\"\"},e.prototype.setTooltip=function(e,t){c.$$(this.tooltipCaption).text(this.slider.getCaptionFromValue([e.start,e.end])),c.$$(this.tooltipCount).text(e.y.toString()),c.$$(this.tooltip).show();var n=this.x(e.start)-50,i=this.x.bandwidth()/2,o=50+i-5;this.tooltip.style.left=n+\"px\",this.tooltip.style.top=this.y(e.y)-t+\"px\",this.tooltipArrow.style.left=o+\"px\";var r=this.tooltip.getBoundingClientRect(),s=new c.Win(window).width();if(r.right>s-20){var a=s-r.right-20;this.tooltip.style.left=n+a+\"px\",this.tooltipArrow.style.left=o-a+\"px\"}},e.prototype.getFunctionForX=function(){var e=this;return function(t){return e.x(t.start)}},e.prototype.getFunctionForY=function(){var e=this;return function(t){return e.y(t.y)}},e.prototype.getFunctionForHeight=function(e){var t=this;return function(n){return e-t.y(n.y)}},e.prototype.getFunctionForClass=function(e){var t=this;return function(n,i){return\"coveo-bar \"+t.getBarClass(e,n,i)}},e.prototype.getFunctionForClick=function(){var e=this;return function(t,n){c.$$(e.slider.element).trigger(a.SliderEvents.graphValueSelected,{start:t.start,end:t.end,value:t.y})}},e.prototype.getFunctionForMouseOver=function(e){var t=this;return function(n){return t.setTooltip(n,e)}},e.prototype.getFunctionForMouseOut=function(){var e=this;return function(){return c.$$(e.tooltip).hide()}},e}()},function(e,t,n){\"use strict\";function i(e){return\"translate(\"+(e+.5)+\",0)\"}function o(e){return\"translate(0,\"+(e+.5)+\")\"}function r(e){return function(t){return+e(t)}}function s(e){var t=Math.max(0,e.bandwidth()-1)/2;return e.round()&&(t=Math.round(t)),function(n){return+e(n)+t}}function a(){return!this.__axis}function u(e,t){function n(n){var i=null==l?t.ticks?t.ticks.apply(t,u):t.domain():l,o=null==c?t.tickFormat?t.tickFormat.apply(t,u):Sa:c,g=Math.max(p,0)+d,v=t.range(),b=+v[0]+.5,C=+v[v.length-1]+.5,S=(t.bandwidth?s:r)(t.copy()),w=n.selection?n.selection():n,x=w.selectAll(\".domain\").data([null]),_=w.selectAll(\".tick\").data(i,t).order(),O=_.exit(),E=_.enter().append(\"g\").attr(\"class\",\"tick\"),A=_.select(\"line\"),T=_.select(\"text\");x=x.merge(x.enter().insert(\"path\",\".tick\").attr(\"class\",\"domain\").attr(\"stroke\",\"#000\")),_=_.merge(E),A=A.merge(E.append(\"line\").attr(\"stroke\",\"#000\").attr(m+\"2\",f*p)),T=T.merge(E.append(\"text\").attr(\"fill\",\"#000\").attr(m,f*g).attr(\"dy\",e===wa?\"0em\":e===_a?\"0.71em\":\"0.32em\")),n!==w&&(x=x.transition(n),_=_.transition(n),A=A.transition(n),T=T.transition(n),O=O.transition(n).attr(\"opacity\",Ea).attr(\"transform\",function(e){return isFinite(e=S(e))?y(e):this.getAttribute(\"transform\")}),E.attr(\"opacity\",Ea).attr(\"transform\",function(e){var t=this.parentNode.__axis;return y(t&&isFinite(t=t(e))?t:S(e))})),O.remove(),x.attr(\"d\",e===Oa||e==xa?\"M\"+f*h+\",\"+b+\"H0.5V\"+C+\"H\"+f*h:\"M\"+b+\",\"+f*h+\"V0.5H\"+C+\"V\"+f*h),_.attr(\"opacity\",1).attr(\"transform\",function(e){return y(S(e))}),A.attr(m+\"2\",f*p),T.attr(m,f*g).text(o),w.filter(a).attr(\"fill\",\"none\").attr(\"font-size\",10).attr(\"font-family\",\"sans-serif\").attr(\"text-anchor\",e===xa?\"start\":e===Oa?\"end\":\"middle\"),w.each(function(){this.__axis=S})}var u=[],l=null,c=null,p=6,h=6,d=3,f=e===wa||e===Oa?-1:1,m=e===Oa||e===xa?\"x\":\"y\",y=e===wa||e===_a?i:o;return n.scale=function(e){return arguments.length?(t=e,n):t},n.ticks=function(){return u=Ca.call(arguments),n},n.tickArguments=function(e){return arguments.length?(u=null==e?[]:Ca.call(e),n):u.slice()},n.tickValues=function(e){return arguments.length?(l=null==e?null:Ca.call(e),n):l&&l.slice()},n.tickFormat=function(e){return arguments.length?(c=e,n):c},n.tickSize=function(e){return arguments.length?(p=h=+e,n):p},n.tickSizeInner=function(e){return arguments.length?(p=+e,n):p},n.tickSizeOuter=function(e){return arguments.length?(h=+e,n):h},n.tickPadding=function(e){return arguments.length?(d=+e,n):d},n}function l(e){return u(wa,e)}function c(e){return u(xa,e)}function p(e){return u(_a,e)}function h(e){return u(Oa,e)}function d(){for(var e,t=0,n=arguments.length,i={};t<n;++t){if(!(e=arguments[t]+\"\")||e in i)throw new Error(\"illegal type: \"+e);i[e]=[]}return new f(i)}function f(e){this._=e}function m(e,t){return e.trim().split(/^|\\s+/).map(function(e){var n=\"\",i=e.indexOf(\".\");if(i>=0&&(n=e.slice(i+1),e=e.slice(0,i)),e&&!t.hasOwnProperty(e))throw new Error(\"unknown type: \"+e);return{type:e,name:n}})}function y(e,t){for(var n,i=0,o=e.length;i<o;++i)if((n=e[i]).name===t)return n.value}function g(e,t,n){for(var i=0,o=e.length;i<o;++i)if(e[i].name===t){e[i]=Aa,e=e.slice(0,i).concat(e.slice(i+1));break}return null!=n&&e.push({name:t,value:n}),e}function v(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===Ra&&t.documentElement.namespaceURI===Ra?t.createElement(e):t.createElementNS(n,e)}}function b(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function C(){}function S(){return[]}function w(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function x(e,t,n,i,o,r){for(var s,a=0,u=t.length,l=r.length;a<l;++a)(s=t[a])?(s.__data__=r[a],i[a]=s):n[a]=new w(e,r[a]);for(;a<u;++a)(s=t[a])&&(o[a]=s)}function _(e,t,n,i,o,r,s){var a,u,l,c={},p=t.length,h=r.length,d=new Array(p);for(a=0;a<p;++a)(u=t[a])&&(d[a]=l=Ha+s.call(u,u.__data__,a,t),l in c?o[a]=u:c[l]=u);for(a=0;a<h;++a)l=Ha+s.call(e,r[a],a,r),(u=c[l])?(i[a]=u,u.__data__=r[a],c[l]=null):n[a]=new w(e,r[a]);for(a=0;a<p;++a)(u=t[a])&&c[d[a]]===u&&(o[a]=u)}function O(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function E(e){return function(){this.removeAttribute(e)}}function A(e){return function(){this.removeAttributeNS(e.space,e.local)}}function T(e,t){return function(){this.setAttribute(e,t)}}function R(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function F(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttribute(e):this.setAttribute(e,n)}}function I(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function M(e){return function(){this.style.removeProperty(e)}}function P(e,t,n){return function(){this.style.setProperty(e,t,n)}}function D(e,t,n){return function(){var i=t.apply(this,arguments);null==i?this.style.removeProperty(e):this.style.setProperty(e,i,n)}}function $(e,t){return e.style.getPropertyValue(t)||ou(e).getComputedStyle(e,null).getPropertyValue(t)}function N(e){return function(){delete this[e]}}function V(e,t){return function(){this[e]=t}}function k(e,t){return function(){var n=t.apply(this,arguments);null==n?delete this[e]:this[e]=n}}function L(e){return e.trim().split(/^|\\s+/)}function B(e){return e.classList||new Q(e)}function Q(e){this._node=e,this._names=L(e.getAttribute(\"class\")||\"\")}function U(e,t){for(var n=B(e),i=-1,o=t.length;++i<o;)n.add(t[i])}function j(e,t){for(var n=B(e),i=-1,o=t.length;++i<o;)n.remove(t[i])}function q(e){return function(){U(this,e)}}function H(e){return function(){j(this,e)}}function z(e,t){return function(){(t.apply(this,arguments)?U:j)(this,e)}}function W(){this.textContent=\"\"}function G(e){return function(){this.textContent=e}}function Y(e){return function(){var t=e.apply(this,arguments);this.textContent=null==t?\"\":t}}function K(){this.innerHTML=\"\"}function J(e){return function(){this.innerHTML=e}}function X(e){return function(){var t=e.apply(this,arguments);this.innerHTML=null==t?\"\":t}}function Z(){this.nextSibling&&this.parentNode.appendChild(this)}function ee(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function te(){return null}function ne(){var e=this.parentNode;e&&e.removeChild(this)}function ie(){return this.parentNode.insertBefore(this.cloneNode(!1),this.nextSibling)}function oe(){return this.parentNode.insertBefore(this.cloneNode(!0),this.nextSibling)}function re(e,t,n){return e=se(e,t,n),function(t){var n=t.relatedTarget;n&&(n===this||8&n.compareDocumentPosition(this))||e.call(this,t)}}function se(e,t,n){return function(i){var o=vu;vu=i;try{e.call(this,this.__data__,t,n)}finally{vu=o}}}function ae(e){return e.trim().split(/^|\\s+/).map(function(e){var t=\"\",n=e.indexOf(\".\");return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function ue(e){return function(){var t=this.__on;if(t){for(var n,i=0,o=-1,r=t.length;i<r;++i)n=t[i],e.type&&n.type!==e.type||n.name!==e.name?t[++o]=n:this.removeEventListener(n.type,n.listener,n.capture);++o?t.length=o:delete this.__on}}}function le(e,t,n){var i=gu.hasOwnProperty(e.type)?re:se;return function(o,r,s){var a,u=this.__on,l=i(t,r,s);if(u)for(var c=0,p=u.length;c<p;++c)if((a=u[c]).type===e.type&&a.name===e.name)return this.removeEventListener(a.type,a.listener,a.capture),this.addEventListener(a.type,a.listener=l,a.capture=n),void(a.value=t);this.addEventListener(e.type,l,n),a={type:e.type,name:e.name,value:t,listener:l,capture:n},u?u.push(a):this.__on=[a]}}function ce(e,t,n,i){var o=vu;e.sourceEvent=vu,vu=e;try{return t.apply(n,i)}finally{vu=o}}function pe(e,t,n){var i=ou(e),o=i.CustomEvent;\"function\"==typeof o?o=new o(t,n):(o=i.document.createEvent(\"Event\"),n?(o.initEvent(t,n.bubbles,n.cancelable),o.detail=n.detail):o.initEvent(t,!1,!1)),e.dispatchEvent(o)}function he(e,t){return function(){return pe(this,e,t)}}function de(e,t){return function(){return pe(this,e,t.apply(this,arguments))}}function fe(e,t){this._groups=e,this._parents=t}function me(){return new fe([[document.documentElement]],Su)}function ye(){return new ge}function ge(){this._=\"@\"+(++Ou).toString(36)}function ve(){vu.stopImmediatePropagation()}function be(e,t){var n=e.document.documentElement,i=xu(e).on(\"dragstart.drag\",null);t&&(i.on(\"click.drag\",Mu,!0),setTimeout(function(){i.on(\"click.drag\",null)},0)),\"onselectstart\"in n?i.on(\"selectstart.drag\",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}function Ce(e,t,n,i,o,r,s,a,u,l){this.target=e,this.type=t,this.subject=n,this.identifier=i,this.active=o,this.x=r,this.y=s,this.dx=a,this.dy=u,this._=l}function Se(){return!vu.button}function we(){return this.parentNode}function xe(e){return null==e?{x:vu.x,y:vu.y}:e}function _e(){return\"ontouchstart\"in this}function Oe(){return qu||(Wu(Ee),qu=zu.now()+Hu)}function Ee(){qu=0}function Ae(){this._call=this._time=this._next=null}function Te(e,t,n){var i=new Ae;return i.restart(e,t,n),i}function Re(){Oe(),++Lu;for(var e,t=$u;t;)(e=qu-t._time)>=0&&t._call.call(null,e),t=t._next;--Lu}function Fe(){qu=(ju=zu.now())+Hu,Lu=Bu=0;try{Re()}finally{Lu=0,Me(),qu=0}}function Ie(){var e=zu.now(),t=e-ju;t>Uu&&(Hu-=t,ju=e)}function Me(){for(var e,t,n=$u,i=1/0;n;)n._call?(i>n._time&&(i=n._time),e=n,n=n._next):(t=n._next,n._next=null,n=e?e._next=t:$u=t);Nu=e,Pe(i)}function Pe(e){if(!Lu){Bu&&(Bu=clearTimeout(Bu));e-qu>24?(e<1/0&&(Bu=setTimeout(Fe,e-zu.now()-Hu)),Qu&&(Qu=clearInterval(Qu))):(Qu||(ju=zu.now(),Qu=setInterval(Ie,Uu)),Lu=1,Wu(Fe))}}function De(e,t){var n=Ne(e,t);if(n.state>Xu)throw new Error(\"too late; already scheduled\");return n}function $e(e,t){var n=Ne(e,t);if(n.state>el)throw new Error(\"too late; already started\");return n}function Ne(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error(\"transition not found\");return n}function Ve(e,t,n){function i(e){n.state=Zu,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(i){var l,c,p,h;if(n.state!==Zu)return s();for(l in u)if(h=u[l],h.name===n.name){if(h.state===tl)return Gu(o);h.state===nl?(h.state=ol,h.timer.stop(),h.on.call(\"interrupt\",e,e.__data__,h.index,h.group),delete u[l]):+l<t&&(h.state=ol,h.timer.stop(),delete u[l])}if(Gu(function(){n.state===tl&&(n.state=nl,n.timer.restart(r,n.delay,n.time),r(i))}),n.state=el,n.on.call(\"start\",e,e.__data__,n.index,n.group),n.state===el){for(n.state=tl,a=new Array(p=n.tween.length),l=0,c=-1;l<p;++l)(h=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(a[++c]=h);a.length=c+1}}function r(t){for(var i=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(s),n.state=il,1),o=-1,r=a.length;++o<r;)a[o].call(null,i);n.state===il&&(n.on.call(\"end\",e,e.__data__,n.index,n.group),s())}function s(){n.state=ol,n.timer.stop(),delete u[t];for(var i in u)return;delete e.__transition}var a,u=e.__transition;u[t]=n,n.timer=Te(i,0,n.time)}function ke(e,t){var n,i;return function(){var o=$e(this,e),r=o.tween;if(r!==n){i=n=r;for(var s=0,a=i.length;s<a;++s)if(i[s].name===t){i=i.slice(),i.splice(s,1);break}}o.tween=i}}function Le(e,t,n){var i,o;if(\"function\"!=typeof n)throw new Error;return function(){var r=$e(this,e),s=r.tween;if(s!==i){o=(i=s).slice();for(var a={name:t,value:n},u=0,l=o.length;u<l;++u)if(o[u].name===t){o[u]=a;break}u===l&&o.push(a)}r.tween=o}}function Be(e,t,n){var i=e._id;return e.each(function(){var e=$e(this,i);(e.value||(e.value={}))[t]=n.apply(this,arguments)}),function(e){return Ne(e,i).value[t]}}function Qe(e){return function(){this.removeAttribute(e)}}function Ue(e){return function(){this.removeAttributeNS(e.space,e.local)}}function je(e,t,n){var i,o;return function(){var r=this.getAttribute(e);return r===n?null:r===i?o:o=t(i=r,n)}}function qe(e,t,n){var i,o;return function(){var r=this.getAttributeNS(e.space,e.local);return r===n?null:r===i?o:o=t(i=r,n)}}function He(e,t,n){var i,o,r;return function(){var s,a=n(this);return null==a?void this.removeAttribute(e):(s=this.getAttribute(e),s===a?null:s===i&&a===o?r:r=t(i=s,o=a))}}function ze(e,t,n){var i,o,r;return function(){var s,a=n(this);return null==a?void this.removeAttributeNS(e.space,e.local):(s=this.getAttributeNS(e.space,e.local),s===a?null:s===i&&a===o?r:r=t(i=s,o=a))}}function We(e,t){function n(){var n=this,i=t.apply(n,arguments);return i&&function(t){n.setAttributeNS(e.space,e.local,i(t))}}return n._value=t,n}function Ge(e,t){function n(){var n=this,i=t.apply(n,arguments);return i&&function(t){n.setAttribute(e,i(t))}}return n._value=t,n}function Ye(e,t){return function(){De(this,e).delay=+t.apply(this,arguments)}}function Ke(e,t){return t=+t,function(){De(this,e).delay=t}}function Je(e,t){return function(){$e(this,e).duration=+t.apply(this,arguments)}}function Xe(e,t){return t=+t,function(){$e(this,e).duration=t}}function Ze(e,t){if(\"function\"!=typeof t)throw new Error;return function(){$e(this,e).ease=t}}function et(e){return(e+\"\").trim().split(/^|\\s+/).every(function(e){var t=e.indexOf(\".\");return t>=0&&(e=e.slice(0,t)),!e||\"start\"===e})}function tt(e,t,n){var i,o,r=et(t)?De:$e;return function(){var s=r(this,e),a=s.on;a!==i&&(o=(i=a).copy()).on(t,n),s.on=o}}function nt(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function it(e,t){var n,i,o;return function(){var r=$(this,e),s=(this.style.removeProperty(e),$(this,e));return r===s?null:r===n&&s===i?o:o=t(n=r,i=s)}}function ot(e){return function(){this.style.removeProperty(e)}}function rt(e,t,n){var i,o;return function(){var r=$(this,e);return r===n?null:r===i?o:o=t(i=r,n)}}function st(e,t,n){var i,o,r;return function(){var s=$(this,e),a=n(this);return null==a&&(this.style.removeProperty(e),a=$(this,e)),s===a?null:s===i&&a===o?r:r=t(i=s,o=a)}}function at(e,t,n){function i(){var i=this,o=t.apply(i,arguments);return o&&function(t){i.style.setProperty(e,o(t),n)}}return i._value=t,i}function ut(e){return function(){this.textContent=e}}function lt(e){return function(){var t=e(this);this.textContent=null==t?\"\":t}}function ct(e,t,n,i){this._groups=e,this._parents=t,this._name=n,this._id=i}function pt(e){return wu().transition(e)}function ht(){return++Tl}function dt(e){return+e}function ft(e){return e*e}function mt(e){return e*(2-e)}function yt(e){return((e*=2)<=1?e*e:--e*(2-e)+1)/2}function gt(e){return e*e*e}function vt(e){return--e*e*e+1}function bt(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}function Ct(e){return 1-Math.cos(e*Dl)}function St(e){return Math.sin(e*Dl)}function wt(e){return(1-Math.cos(Pl*e))/2}function xt(e){return Math.pow(2,10*e-10)}function _t(e){return 1-Math.pow(2,-10*e)}function Ot(e){return((e*=2)<=1?Math.pow(2,10*e-10):2-Math.pow(2,10-10*e))/2}function Et(e){return 1-Math.sqrt(1-e*e)}function At(e){return Math.sqrt(1- --e*e)}function Tt(e){return((e*=2)<=1?1-Math.sqrt(1-e*e):Math.sqrt(1-(e-=2)*e)+1)/2}function Rt(e){return 1-Ft(1-e)}function Ft(e){return(e=+e)<$l?ql*e*e:e<Vl?ql*(e-=Nl)*e+kl:e<Bl?ql*(e-=Ll)*e+Ql:ql*(e-=Ul)*e+jl}function It(e){return((e*=2)<=1?1-Ft(1-e):Ft(e-1)+1)/2}function Mt(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))return Xl.time=Oe(),Xl;return n}function Pt(){vu.stopImmediatePropagation()}function Dt(e){return{type:e}}function $t(){return!vu.button}function Nt(){var e=this.ownerSVGElement||this;return[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]}function Vt(e){for(;!e.__brush;)if(!(e=e.parentNode))return;return e.__brush}function kt(e){return e[0][0]===e[1][0]||e[0][1]===e[1][1]}function Lt(e){var t=e.__brush;return t?t.dim.output(t.selection):null}function Bt(){return Ut(lc)}function Qt(){return Ut(cc)}function Ut(e){function t(t){var i=t.property(\"__brush\",s).selectAll(\".overlay\").data([Dt(\"overlay\")]);i.enter().append(\"rect\").attr(\"class\",\"overlay\").attr(\"pointer-events\",\"all\").attr(\"cursor\",hc.overlay).merge(i).each(function(){var e=Vt(this).extent;xu(this).attr(\"x\",e[0][0]).attr(\"y\",e[0][1]).attr(\"width\",e[1][0]-e[0][0]).attr(\"height\",e[1][1]-e[0][1])}),t.selectAll(\".selection\").data([Dt(\"selection\")]).enter().append(\"rect\").attr(\"class\",\"selection\").attr(\"cursor\",hc.selection).attr(\"fill\",\"#777\").attr(\"fill-opacity\",.3).attr(\"stroke\",\"#fff\").attr(\"shape-rendering\",\"crispEdges\");var o=t.selectAll(\".handle\").data(e.handles,function(e){return e.type});o.exit().remove(),o.enter().append(\"rect\").attr(\"class\",function(e){return\"handle handle--\"+e.type}).attr(\"cursor\",function(e){return hc[e.type]}),t.each(n).attr(\"fill\",\"none\").attr(\"pointer-events\",\"all\").style(\"-webkit-tap-highlight-color\",\"rgba(0,0,0,0)\").on(\"mousedown.brush touchstart.brush\",r)}function n(){var e=xu(this),t=Vt(this).selection;t?(e.selectAll(\".selection\").style(\"display\",null).attr(\"x\",t[0][0]).attr(\"y\",t[0][1]).attr(\"width\",t[1][0]-t[0][0]).attr(\"height\",t[1][1]-t[0][1]),e.selectAll(\".handle\").style(\"display\",null).attr(\"x\",function(e){return\"e\"===e.type[e.type.length-1]?t[1][0]-p/2:t[0][0]-p/2}).attr(\"y\",function(e){return\"s\"===e.type[0]?t[1][1]-p/2:t[0][1]-p/2}).attr(\"width\",function(e){return\"n\"===e.type||\"s\"===e.type?t[1][0]-t[0][0]+p:p}).attr(\"height\",function(e){return\"e\"===e.type||\"w\"===e.type?t[1][1]-t[0][1]+p:p})):e.selectAll(\".selection,.handle\").style(\"display\",\"none\").attr(\"x\",null).attr(\"y\",null).attr(\"width\",null).attr(\"height\",null)}function i(e,t){return e.__brush.emitter||new o(e,t)}function o(e,t){this.that=e,this.args=t,this.state=e.__brush,this.active=0}function r(){function t(){var e=Tu(x);!$||S||w||(Math.abs(e[0]-V[0])>Math.abs(e[1]-V[1])?w=!0:S=!0),V=e,C=!0,oc(),o()}function o(){var e;switch(v=V[0]-N[0],b=V[1]-N[1],O){case sc:case rc:E&&(v=Math.max(I-c,Math.min(P-f,v)),p=c+v,m=f+v),A&&(b=Math.max(M-h,Math.min(D-y,b)),d=h+b,g=y+b);break;case ac:E<0?(v=Math.max(I-c,Math.min(P-c,v)),p=c+v,m=f):E>0&&(v=Math.max(I-f,Math.min(P-f,v)),p=c,m=f+v),A<0?(b=Math.max(M-h,Math.min(D-h,b)),d=h+b,g=y):A>0&&(b=Math.max(M-y,Math.min(D-y,b)),d=h,g=y+b);break;case uc:E&&(p=Math.max(I,Math.min(P,c-v*E)),m=Math.max(I,Math.min(P,f+v*E))),A&&(d=Math.max(M,Math.min(D,h-b*A)),g=Math.max(M,Math.min(D,y+b*A)))}m<p&&(E*=-1,e=c,c=f,f=e,e=p,p=m,m=e,_ in dc&&B.attr(\"cursor\",hc[_=dc[_]])),g<d&&(A*=-1,e=h,h=y,y=e,e=d,d=g,g=e,_ in fc&&B.attr(\"cursor\",hc[_=fc[_]])),T.selection&&(F=T.selection),S&&(p=F[0][0],m=F[1][0]),w&&(d=F[0][1],g=F[1][1]),F[0][0]===p&&F[0][1]===d&&F[1][0]===m&&F[1][1]===g||(T.selection=[[p,d],[m,g]],n.call(x),k.brush())}function r(){if(Pt(),vu.touches){if(vu.touches.length)return;a&&clearTimeout(a),a=setTimeout(function(){a=null},500),L.on(\"touchmove.brush touchend.brush touchcancel.brush\",null)}else be(vu.view,C),Q.on(\"keydown.brush keyup.brush mousemove.brush mouseup.brush\",null);L.attr(\"pointer-events\",\"all\"),B.attr(\"cursor\",hc.overlay),T.selection&&(F=T.selection),kt(F)&&(T.selection=null,n.call(x)),k.end()}function s(){switch(vu.keyCode){case 16:$=E&&A;break;case 18:O===ac&&(E&&(f=m-v*E,c=p+v*E),A&&(y=g-b*A,h=d+b*A),O=uc,o());break;case 32:O!==ac&&O!==uc||(E<0?f=m-v:E>0&&(c=p-v),A<0?y=g-b:A>0&&(h=d-b),O=sc,B.attr(\"cursor\",hc.selection),o());break;default:return}oc()}function u(){switch(vu.keyCode){case 16:$&&(S=w=$=!1,o());break;case 18:O===uc&&(E<0?f=m:E>0&&(c=p),A<0?y=g:A>0&&(h=d),O=ac,o());break;case 32:O===sc&&(vu.altKey?(E&&(f=m-v*E,c=p+v*E),A&&(y=g-b*A,h=d+b*A),O=uc):(E<0?f=m:E>0&&(c=p),A<0?y=g:A>0&&(h=d),O=ac),B.attr(\"cursor\",hc[_]),o());break;default:return}oc()}if(vu.touches){if(vu.changedTouches.length<vu.touches.length)return oc()}else if(a)return;if(l.apply(this,arguments)){var c,p,h,d,f,m,y,g,v,b,C,S,w,x=this,_=vu.target.__data__.type,O=\"selection\"===(vu.metaKey?_=\"overlay\":_)?rc:vu.altKey?uc:ac,E=e===cc?null:mc[_],A=e===lc?null:yc[_],T=Vt(x),R=T.extent,F=T.selection,I=R[0][0],M=R[0][1],P=R[1][0],D=R[1][1],$=E&&A&&vu.shiftKey,N=Tu(x),V=N,k=i(x,arguments).beforestart();\"overlay\"===_?T.selection=F=[[c=e===cc?I:N[0],h=e===lc?M:N[1]],[f=e===cc?P:c,y=e===lc?D:h]]:(c=F[0][0],h=F[0][1],f=F[1][0],y=F[1][1]),p=c,d=h,m=f,g=y;var L=xu(x).attr(\"pointer-events\",\"none\"),B=L.selectAll(\".overlay\").attr(\"cursor\",hc[_]);if(vu.touches)L.on(\"touchmove.brush\",t,!0).on(\"touchend.brush touchcancel.brush\",r,!0);else{var Q=xu(vu.view).on(\"keydown.brush\",s,!0).on(\"keyup.brush\",u,!0).on(\"mousemove.brush\",t,!0).on(\"mouseup.brush\",r,!0);Pu(vu.view)}Pt(),sl(x),n.call(x),k.start()}}function s(){var t=this.__brush||{selection:null};return t.extent=u.apply(this,arguments),t.dim=e,t}var a,u=Nt,l=$t,c=Ta(t,\"start\",\"brush\",\"end\"),p=6;return t.move=function(t,o){t.selection?t.on(\"start.brush\",function(){i(this,arguments).beforestart().start()}).on(\"interrupt.brush end.brush\",function(){i(this,arguments).end()}).tween(\"brush\",function(){function t(e){s.selection=1===e&&kt(l)?null:c(e),n.call(r),a.brush()}var r=this,s=r.__brush,a=i(r,arguments),u=s.selection,l=e.input(\"function\"==typeof o?o.apply(this,arguments):o,s.extent),c=Object(ku.a)(u,l);return u&&l?t:t(1)}):t.each(function(){var t=this,r=arguments,s=t.__brush,a=e.input(\"function\"==typeof o?o.apply(t,r):o,s.extent),u=i(t,r).beforestart();sl(t),s.selection=null==a||kt(a)?null:a,n.call(t),u.start().brush().end()})},o.prototype={beforestart:function(){return 1==++this.active&&(this.state.emitter=this,this.starting=!0),this},start:function(){return this.starting&&(this.starting=!1,this.emit(\"start\")),this},brush:function(){return this.emit(\"brush\"),this},end:function(){return 0==--this.active&&(delete this.state.emitter,this.emit(\"end\")),this},emit:function(n){ce(new ic(t,n,e.output(this.state.selection)),c.apply,c,[n,this.that,this.args])}},t.extent=function(e){return arguments.length?(u=\"function\"==typeof e?e:nc([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),t):u},t.filter=function(e){return arguments.length?(l=\"function\"==typeof e?e:nc(!!e),t):l},t.handleSize=function(e){return arguments.length?(p=+e,t):p},t.on=function(){var e=c.on.apply(c,arguments);return e===c?t:e},t}function jt(e){return function(t,n){return e(t.source.value+t.target.value,n.source.value+n.target.value)}}function qt(){this._x0=this._y0=this._x1=this._y1=null,this._=\"\"}function Ht(){return new qt}function zt(e){return e.source}function Wt(e){return e.target}function Gt(e){return e.radius}function Yt(e){return e.startAngle}function Kt(e){return e.endAngle}function Jt(e){return new Function(\"d\",\"return {\"+e.map(function(e,t){return JSON.stringify(e)+\": d[\"+t+\"]\"}).join(\",\")+\"}\")}function Xt(e,t){var n=Jt(e);return function(i,o){return t(n(i),o,e)}}function Zt(e){var t=Object.create(null),n=[];return e.forEach(function(e){for(var i in e)i in t||n.push(t[i]=i)}),n}function en(e,t,n,i){if(isNaN(t)||isNaN(n))return e;var o,r,s,a,u,l,c,p,h,d=e._root,f={data:i},m=e._x0,y=e._y0,g=e._x1,v=e._y1;if(!d)return e._root=f,e;for(;d.length;)if((l=t>=(r=(m+g)/2))?m=r:g=r,(c=n>=(s=(y+v)/2))?y=s:v=s,o=d,!(d=d[p=c<<1|l]))return o[p]=f,e;if(a=+e._x.call(null,d.data),u=+e._y.call(null,d.data),t===a&&n===u)return f.next=d,o?o[p]=f:e._root=f,e;do{o=o?o[p]=new Array(4):e._root=new Array(4),(l=t>=(r=(m+g)/2))?m=r:g=r,(c=n>=(s=(y+v)/2))?y=s:v=s}while((p=c<<1|l)==(h=(u>=s)<<1|a>=r));return o[h]=d,o[p]=f,e}function tn(e){var t,n,i,o,r=e.length,s=new Array(r),a=new Array(r),u=1/0,l=1/0,c=-1/0,p=-1/0;for(n=0;n<r;++n)isNaN(i=+this._x.call(null,t=e[n]))||isNaN(o=+this._y.call(null,t))||(s[n]=i,a[n]=o,i<u&&(u=i),i>c&&(c=i),o<l&&(l=o),o>p&&(p=o));for(c<u&&(u=this._x0,c=this._x1),p<l&&(l=this._y0,p=this._y1),this.cover(u,l).cover(c,p),n=0;n<r;++n)en(this,s[n],a[n],e[n]);return this}function nn(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function on(e){return e[0]}function rn(e){return e[1]}function sn(e,t,n){var i=new an(null==t?on:t,null==n?rn:n,NaN,NaN,NaN,NaN);return null==e?i:i.addAll(e)}function an(e,t,n,i,o,r){this._x=e,this._y=t,this._x0=n,this._y0=i,this._x1=o,this._y1=r,this._root=void 0}function un(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}function ln(e){return e.x+e.vx}function cn(e){return e.y+e.vy}function pn(e){return e.index}function hn(e,t){var n=e.get(t);if(!n)throw new Error(\"missing: \"+t);return n}function dn(e){return e.x}function fn(e){return e.y}function mn(){this.reset()}function yn(e,t,n){var i=e.s=t+n,o=i-t,r=i-o;e.t=t-r+(n-o)}function gn(e){return e>1?0:e<-1?nh:Math.acos(e)}function vn(e){return e>1?ih:e<-1?-ih:Math.asin(e)}function bn(e){return(e=yh(e/2))*e}function Cn(){}function Sn(e,t){e&&Sh.hasOwnProperty(e.type)&&Sh[e.type](e,t)}function wn(e,t,n){var i,o=-1,r=e.length-n;for(t.lineStart();++o<r;)i=e[o],t.point(i[0],i[1],i[2]);t.lineEnd()}function xn(e,t){var n=-1,i=e.length;for(t.polygonStart();++n<i;)wn(e[n],t,1);t.polygonEnd()}function _n(){Oh.point=En}function On(){An(xp,_p)}function En(e,t){Oh.point=An,xp=e,_p=t,e*=ah,t*=ah,Op=e,Ep=ph(t=t/2+oh),Ap=yh(t)}function An(e,t){e*=ah,t*=ah,t=t/2+oh;var n=e-Op,i=n>=0?1:-1,o=i*n,r=ph(t),s=yh(t),a=Ap*s,u=Ep*r+a*ph(o),l=a*i*yh(o);xh.add(ch(l,u)),Op=e,Ep=r,Ap=s}function Tn(e){return[ch(e[1],e[0]),vn(e[2])]}function Rn(e){var t=e[0],n=e[1],i=ph(n);return[i*ph(t),i*yh(t),yh(n)]}function Fn(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function In(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function Mn(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function Pn(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function Dn(e){var t=vh(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}function $n(e,t){Np.push(Vp=[Tp=e,Fp=e]),t<Rp&&(Rp=t),t>Ip&&(Ip=t)}function Nn(e,t){var n=Rn([e*ah,t*ah]);if($p){var i=In($p,n),o=[i[1],-i[0],0],r=In(o,i);Dn(r),r=Tn(r);var s,a=e-Mp,u=a>0?1:-1,l=r[0]*sh*u,c=uh(a)>180;c^(u*Mp<l&&l<u*e)?(s=r[1]*sh)>Ip&&(Ip=s):(l=(l+360)%360-180,c^(u*Mp<l&&l<u*e)?(s=-r[1]*sh)<Rp&&(Rp=s):(t<Rp&&(Rp=t),t>Ip&&(Ip=t))),c?e<Mp?Un(Tp,e)>Un(Tp,Fp)&&(Fp=e):Un(e,Fp)>Un(Tp,Fp)&&(Tp=e):Fp>=Tp?(e<Tp&&(Tp=e),e>Fp&&(Fp=e)):e>Mp?Un(Tp,e)>Un(Tp,Fp)&&(Fp=e):Un(e,Fp)>Un(Tp,Fp)&&(Tp=e)}else Np.push(Vp=[Tp=e,Fp=e]);t<Rp&&(Rp=t),t>Ip&&(Ip=t),$p=n,Mp=e}function Vn(){Th.point=Nn}function kn(){Vp[0]=Tp,Vp[1]=Fp,Th.point=$n,$p=null}function Ln(e,t){if($p){var n=e-Mp;Ah.add(uh(n)>180?n+(n>0?360:-360):n)}else Pp=e,Dp=t;Oh.point(e,t),Nn(e,t)}function Bn(){Oh.lineStart()}function Qn(){Ln(Pp,Dp),Oh.lineEnd(),uh(Ah)>th&&(Tp=-(Fp=180)),Vp[0]=Tp,Vp[1]=Fp,$p=null}function Un(e,t){return(t-=e)<0?t+360:t}function jn(e,t){return e[0]-t[0]}function qn(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:t<e[0]||e[1]<t}function Hn(e,t){e*=ah,t*=ah;var n=ph(t);zn(n*ph(e),n*yh(e),yh(t))}function zn(e,t,n){++kp,Bp+=(e-Bp)/kp,Qp+=(t-Qp)/kp,Up+=(n-Up)/kp}function Wn(){Fh.point=Gn}function Gn(e,t){e*=ah,t*=ah;var n=ph(t);Jp=n*ph(e),Xp=n*yh(e),Zp=yh(t),Fh.point=Yn,zn(Jp,Xp,Zp)}function Yn(e,t){e*=ah,t*=ah;var n=ph(t),i=n*ph(e),o=n*yh(e),r=yh(t),s=ch(vh((s=Xp*r-Zp*o)*s+(s=Zp*i-Jp*r)*s+(s=Jp*o-Xp*i)*s),Jp*i+Xp*o+Zp*r);Lp+=s,jp+=s*(Jp+(Jp=i)),qp+=s*(Xp+(Xp=o)),Hp+=s*(Zp+(Zp=r)),zn(Jp,Xp,Zp)}function Kn(){Fh.point=Hn}function Jn(){Fh.point=Zn}function Xn(){ei(Yp,Kp),Fh.point=Hn}function Zn(e,t){Yp=e,Kp=t,e*=ah,t*=ah,Fh.point=ei;var n=ph(t);Jp=n*ph(e),Xp=n*yh(e),Zp=yh(t),zn(Jp,Xp,Zp)}function ei(e,t){e*=ah,t*=ah;var n=ph(t),i=n*ph(e),o=n*yh(e),r=yh(t),s=Xp*r-Zp*o,a=Zp*i-Jp*r,u=Jp*o-Xp*i,l=vh(s*s+a*a+u*u),c=vn(l),p=l&&-c/l;zp+=p*s,Wp+=p*a,Gp+=p*u,Lp+=c,jp+=c*(Jp+(Jp=i)),qp+=c*(Xp+(Xp=o)),Hp+=c*(Zp+(Zp=r)),zn(Jp,Xp,Zp)}function ti(e,t){return[e>nh?e-rh:e<-nh?e+rh:e,t]}function ni(e,t,n){return(e%=rh)?t||n?Ph(oi(e),ri(t,n)):oi(e):t||n?ri(t,n):ti}function ii(e){return function(t,n){return t+=e,[t>nh?t-rh:t<-nh?t+rh:t,n]}}function oi(e){var t=ii(e);return t.invert=ii(-e),t}function ri(e,t){function n(e,t){var n=ph(t),a=ph(e)*n,u=yh(e)*n,l=yh(t),c=l*i+a*o;return[ch(u*r-c*s,a*i-l*o),vn(c*r+u*s)]}var i=ph(e),o=yh(e),r=ph(t),s=yh(t);return n.invert=function(e,t){var n=ph(t),a=ph(e)*n,u=yh(e)*n,l=yh(t),c=l*r-u*s;return[ch(u*r+l*s,a*i+c*o),vn(c*i-a*o)]},n}function si(e,t,n,i,o,r){if(n){var s=ph(t),a=yh(t),u=i*n;null==o?(o=t+i*rh,r=t-u/2):(o=ai(s,o),r=ai(s,r),(i>0?o<r:o>r)&&(o+=i*rh));for(var l,c=o;i>0?c>r:c<r;c-=u)l=Tn([s,-a*ph(c),-a*yh(c)]),e.point(l[0],l[1])}}function ai(e,t){t=Rn(t),t[0]-=e,Dn(t);var n=gn(-t[1]);return((-t[2]<0?-n:n)+rh-th)%rh}function ui(e,t,n,i){this.x=e,this.z=t,this.o=n,this.e=i,this.v=!1,this.n=this.p=null}function li(e){if(t=e.length){for(var t,n,i=0,o=e[0];++i<t;)o.n=n=e[i],n.p=o,o=n;o.n=n=e[0],n.p=o}}function ci(e){return e.length>1}function pi(e,t){return((e=e.x)[0]<0?e[1]-ih-th:ih-e[1])-((t=t.x)[0]<0?t[1]-ih-th:ih-t[1])}function hi(e){var t,n=NaN,i=NaN,o=NaN;return{lineStart:function(){e.lineStart(),t=1},point:function(r,s){var a=r>0?nh:-nh,u=uh(r-n);uh(u-nh)<th?(e.point(n,i=(i+s)/2>0?ih:-ih),e.point(o,i),e.lineEnd(),e.lineStart(),e.point(a,i),e.point(r,i),t=0):o!==a&&u>=nh&&(uh(n-o)<th&&(n-=o*th),uh(r-a)<th&&(r-=a*th),i=di(n,i,r,s),e.point(o,i),e.lineEnd(),e.lineStart(),e.point(a,i),t=0),e.point(n=r,i=s),o=a},lineEnd:function(){e.lineEnd(),n=i=NaN},clean:function(){return 2-t}}}function di(e,t,n,i){var o,r,s=yh(e-n);return uh(s)>th?lh((yh(t)*(r=ph(i))*yh(n)-yh(i)*(o=ph(t))*yh(e))/(o*r*s)):(t+i)/2}function fi(e,t,n,i){var o;if(null==e)o=n*ih,i.point(-nh,o),i.point(0,o),i.point(nh,o),i.point(nh,0),i.point(nh,-o),i.point(0,-o),i.point(-nh,-o),i.point(-nh,0),i.point(-nh,o);else if(uh(e[0]-t[0])>th){var r=e[0]<t[0]?nh:-nh;o=n*r/2,i.point(-r,o),i.point(0,o),i.point(r,o)}else i.point(t[0],t[1])}function mi(e,t,n,i){function o(o,r){return e<=o&&o<=n&&t<=r&&r<=i}function r(o,r,a,l){var c=0,p=0;if(null==o||(c=s(o,a))!==(p=s(r,a))||u(o,r)<0^a>0)do{l.point(0===c||3===c?e:n,c>1?i:t)}while((c=(c+a+4)%4)!==p);else l.point(r[0],r[1])}function s(i,o){return uh(i[0]-e)<th?o>0?0:3:uh(i[0]-n)<th?o>0?2:1:uh(i[1]-t)<th?o>0?1:0:o>0?3:2}function a(e,t){return u(e.x,t.x)}function u(e,t){var n=s(e,1),i=s(t,1);return n!==i?n-i:0===n?t[1]-e[1]:1===n?e[0]-t[0]:2===n?e[1]-t[1]:t[0]-e[0]}return function(s){function u(e,t){o(e,t)&&E.point(e,t)}function l(){for(var t=0,n=0,o=y.length;n<o;++n)for(var r,s,a=y[n],u=1,l=a.length,c=a[0],p=c[0],h=c[1];u<l;++u)r=p,s=h,c=a[u],p=c[0],h=c[1],s<=i?h>i&&(p-r)*(i-s)>(h-s)*(e-r)&&++t:h<=i&&(p-r)*(i-s)<(h-s)*(e-r)&&--t;return t}function c(){E=A,m=[],y=[],O=!0}function p(){var e=l(),t=O&&e,n=(m=Object(ba.n)(m)).length;(t||n)&&(s.polygonStart(),t&&(s.lineStart(),r(null,null,1,s),s.lineEnd()),n&&Yh(m,a,e,r,s),s.polygonEnd()),E=s,m=y=g=null}function h(){T.point=f,y&&y.push(g=[]),_=!0,x=!1,S=w=NaN}function d(){m&&(f(v,b),C&&x&&A.rejoin(),m.push(A.result())),T.point=u,x&&E.lineEnd()}function f(r,s){var a=o(r,s);if(y&&g.push([r,s]),_)v=r,b=s,C=a,_=!1,a&&(E.lineStart(),E.point(r,s));else if(a&&x)E.point(r,s);else{var u=[S=Math.max(id,Math.min(nd,S)),w=Math.max(id,Math.min(nd,w))],l=[r=Math.max(id,Math.min(nd,r)),s=Math.max(id,Math.min(nd,s))];td(u,l,e,t,n,i)?(x||(E.lineStart(),E.point(u[0],u[1])),E.point(l[0],l[1]),a||E.lineEnd(),O=!1):a&&(E.lineStart(),E.point(r,s),O=!1)}S=r,w=s,x=a}var m,y,g,v,b,C,S,w,x,_,O,E=s,A=Wh(),T={point:u,lineStart:h,lineEnd:d,polygonStart:c,polygonEnd:p};return T}}function yi(){sd.point=vi,sd.lineEnd=gi}function gi(){sd.point=sd.lineEnd=Cn}function vi(e,t){e*=ah,t*=ah,Dh=e,$h=yh(t),Nh=ph(t),sd.point=bi}function bi(e,t){e*=ah,t*=ah;var n=yh(t),i=ph(t),o=uh(e-Dh),r=ph(o),s=yh(o),a=i*s,u=Nh*n-$h*i*r,l=$h*n+Nh*i*r;rd.add(ch(vh(a*a+u*u),l)),Dh=e,$h=n,Nh=i}function Ci(e,t){return!(!e||!hd.hasOwnProperty(e.type))&&hd[e.type](e,t)}function Si(e,t){return 0===cd(e,t)}function wi(e,t){var n=cd(e[0],e[1]);return cd(e[0],t)+cd(t,e[1])<=n+th}function xi(e,t){return!!Jh(e.map(_i),Oi(t))}function _i(e){return e=e.map(Oi),e.pop(),e}function Oi(e){return[e[0]*ah,e[1]*ah]}function Ei(e,t,n){var i=Object(ba.s)(e,t-th,n).concat(t);return function(e){return i.map(function(t){return[e,t]})}}function Ai(e,t,n){var i=Object(ba.s)(e,t-th,n).concat(t);return function(e){return i.map(function(t){return[t,e]})}}function Ti(){function e(){return{type:\"MultiLineString\",coordinates:t()}}function t(){return Object(ba.s)(hh(r/y)*y,o,y).map(h).concat(Object(ba.s)(hh(l/g)*g,u,g).map(d)).concat(Object(ba.s)(hh(i/f)*f,n,f).filter(function(e){return uh(e%y)>th}).map(c)).concat(Object(ba.s)(hh(a/m)*m,s,m).filter(function(e){return uh(e%g)>th}).map(p))}var n,i,o,r,s,a,u,l,c,p,h,d,f=10,m=f,y=90,g=360,v=2.5;return e.lines=function(){return t().map(function(e){return{type:\"LineString\",coordinates:e}})},e.outline=function(){return{type:\"Polygon\",coordinates:[h(r).concat(d(u).slice(1),h(o).reverse().slice(1),d(l).reverse().slice(1))]}},e.extent=function(t){return arguments.length?e.extentMajor(t).extentMinor(t):e.extentMinor()},e.extentMajor=function(t){return arguments.length?(r=+t[0][0],o=+t[1][0],l=+t[0][1],u=+t[1][1],r>o&&(t=r,r=o,o=t),l>u&&(t=l,l=u,u=t),e.precision(v)):[[r,l],[o,u]]},e.extentMinor=function(t){return arguments.length?(i=+t[0][0],n=+t[1][0],a=+t[0][1],s=+t[1][1],i>n&&(t=i,i=n,n=t),a>s&&(t=a,a=s,s=t),e.precision(v)):[[i,a],[n,s]]},e.step=function(t){return arguments.length?e.stepMajor(t).stepMinor(t):e.stepMinor()},e.stepMajor=function(t){return arguments.length?(y=+t[0],g=+t[1],e):[y,g]},e.stepMinor=function(t){return arguments.length?(f=+t[0],m=+t[1],e):[f,m]},e.precision=function(t){return arguments.length?(v=+t,c=Ei(a,s,90),p=Ai(i,n,v),h=Ei(l,u,90),d=Ai(r,o,v),e):v},e.extentMajor([[-180,-90+th],[180,90-th]]).extentMinor([[-180,-80-th],[180,80+th]])}function Ri(){return Ti()()}function Fi(){vd.point=Ii}function Ii(e,t){vd.point=Mi,Vh=Lh=e,kh=Bh=t}function Mi(e,t){gd.add(Bh*e-Lh*t),Lh=e,Bh=t}function Pi(){Mi(Vh,kh)}function Di(e,t){e<Cd&&(Cd=e),e>wd&&(wd=e),t<Sd&&(Sd=t),t>xd&&(xd=t)}function $i(e,t){Ed+=e,Ad+=t,++Td}function Ni(){$d.point=Vi}function Vi(e,t){$d.point=ki,$i(jh=e,qh=t)}function ki(e,t){var n=e-jh,i=t-qh,o=vh(n*n+i*i);Rd+=o*(jh+e)/2,Fd+=o*(qh+t)/2,Id+=o,$i(jh=e,qh=t)}function Li(){$d.point=$i}function Bi(){$d.point=Ui}function Qi(){ji(Qh,Uh)}function Ui(e,t){$d.point=ji,$i(Qh=jh=e,Uh=qh=t)}function ji(e,t){var n=e-jh,i=t-qh,o=vh(n*n+i*i);Rd+=o*(jh+e)/2,Fd+=o*(qh+t)/2,Id+=o,o=qh*e-jh*t,Md+=o*(jh+e),Pd+=o*(qh+t),Dd+=3*o,$i(jh=e,qh=t)}function qi(e){this._context=e}function Hi(e,t){jd.point=zi,kd=Bd=e,Ld=Qd=t}function zi(e,t){Bd-=e,Qd-=t,Ud.add(vh(Bd*Bd+Qd*Qd)),Bd=e,Qd=t}function Wi(){this._string=[]}function Gi(e){return\"m0,\"+e+\"a\"+e+\",\"+e+\" 0 1,1 0,\"+-2*e+\"a\"+e+\",\"+e+\" 0 1,1 0,\"+2*e+\"z\"}function Yi(e){return function(t){var n=new Ki;for(var i in e)n[i]=e[i];return n.stream=t,n}}function Ki(){}function Ji(e,t,n){var i=e.clipExtent&&e.clipExtent();return e.scale(150).translate([0,0]),null!=i&&e.clipExtent(null),wh(n,e.stream(Od)),t(Od.result()),null!=i&&e.clipExtent(i),e}function Xi(e,t,n){return Ji(e,function(n){var i=t[1][0]-t[0][0],o=t[1][1]-t[0][1],r=Math.min(i/(n[1][0]-n[0][0]),o/(n[1][1]-n[0][1])),s=+t[0][0]+(i-r*(n[1][0]+n[0][0]))/2,a=+t[0][1]+(o-r*(n[1][1]+n[0][1]))/2;e.scale(150*r).translate([s,a])},n)}function Zi(e,t,n){return Xi(e,[[0,0],t],n)}function eo(e,t,n){return Ji(e,function(n){var i=+t,o=i/(n[1][0]-n[0][0]),r=(i-o*(n[1][0]+n[0][0]))/2,s=-o*n[0][1];e.scale(150*o).translate([r,s])},n)}function to(e,t,n){return Ji(e,function(n){var i=+t,o=i/(n[1][1]-n[0][1]),r=-o*n[0][0],s=(i-o*(n[1][1]+n[0][1]))/2;e.scale(150*o).translate([r,s])},n)}function no(e){return Yi({point:function(t,n){t=e(t,n),this.stream.point(t[0],t[1])}})}function io(e,t){function n(i,o,r,s,a,u,l,c,p,h,d,f,m,y){var g=l-i,v=c-o,b=g*g+v*v;if(b>4*t&&m--){var C=s+h,S=a+d,w=u+f,x=vh(C*C+S*S+w*w),_=vn(w/=x),O=uh(uh(w)-1)<th||uh(r-p)<th?(r+p)/2:ch(S,C),E=e(O,_),A=E[0],T=E[1],R=A-i,F=T-o,I=v*R-g*F;(I*I/b>t||uh((g*R+v*F)/b-.5)>.3||s*h+a*d+u*f<Gd)&&(n(i,o,r,s,a,u,A,T,O,C/=x,S/=x,w,m,y),y.point(A,T),n(A,T,O,C,S,w,l,c,p,h,d,f,m,y))}}return function(t){function i(n,i){n=e(n,i),t.point(n[0],n[1])}function o(){g=NaN,w.point=r,t.lineStart()}function r(i,o){var r=Rn([i,o]),s=e(i,o);n(g,v,y,b,C,S,g=s[0],v=s[1],y=i,b=r[0],C=r[1],S=r[2],Wd,t),t.point(g,v)}function s(){w.point=i,t.lineEnd()}function a(){o(),w.point=u,w.lineEnd=l}function u(e,t){r(c=e,t),p=g,h=v,d=b,f=C,m=S,w.point=r}function l(){n(g,v,y,b,C,S,p,h,c,d,f,m,Wd,t),w.lineEnd=s,s()}var c,p,h,d,f,m,y,g,v,b,C,S,w={point:i,lineStart:o,lineEnd:s,polygonStart:function(){t.polygonStart(),w.lineStart=a},polygonEnd:function(){t.polygonEnd(),w.lineStart=o}};return w}}function oo(e){return Yi({point:function(t,n){var i=e(t,n);return this.stream.point(i[0],i[1])}})}function ro(e){return so(function(){return e})()}function so(e){function t(e){return e=c(e[0]*ah,e[1]*ah),[e[0]*y+a,u-e[1]*y]}function n(e){return(e=c.invert((e[0]-a)/y,(u-e[1])/y))&&[e[0]*sh,e[1]*sh]}function i(e,t){return e=s(e,t),[e[0]*y+a,u-e[1]*y]}function o(){c=Ph(l=ni(S,w,x),s);var e=s(b,C);return a=g-e[0]*y,u=v+e[1]*y,r()}function r(){return f=m=null,t}var s,a,u,l,c,p,h,d,f,m,y=150,g=480,v=250,b=0,C=0,S=0,w=0,x=0,_=null,O=Zh,E=null,A=md,T=.5,R=Yd(i,T);return t.stream=function(e){return f&&m===e?f:f=Kd(oo(l)(O(R(A(m=e)))))},t.preclip=function(e){return arguments.length?(O=e,_=void 0,r()):O},t.postclip=function(e){return arguments.length?(A=e,E=p=h=d=null,r()):A},t.clipAngle=function(e){return arguments.length?(O=+e?ed(_=e*ah):(_=null,Zh),r()):_*sh},t.clipExtent=function(e){return arguments.length?(A=null==e?(E=p=h=d=null,md):mi(E=+e[0][0],p=+e[0][1],h=+e[1][0],d=+e[1][1]),r()):null==E?null:[[E,p],[h,d]]},t.scale=function(e){return arguments.length?(y=+e,o()):y},t.translate=function(e){return arguments.length?(g=+e[0],v=+e[1],o()):[g,v]},t.center=function(e){return arguments.length?(b=e[0]%360*ah,C=e[1]%360*ah,o()):[b*sh,C*sh]},t.rotate=function(e){return arguments.length?(S=e[0]%360*ah,w=e[1]%360*ah,x=e.length>2?e[2]%360*ah:0,o()):[S*sh,w*sh,x*sh]},t.precision=function(e){return arguments.length?(R=Yd(i,T=e*e),r()):vh(T)},t.fitExtent=function(e,n){return Xi(t,e,n)},t.fitSize=function(e,n){return Zi(t,e,n)},t.fitWidth=function(e,n){return eo(t,e,n)},t.fitHeight=function(e,n){return to(t,e,n)},function(){return s=e.apply(this,arguments),t.invert=s.invert&&n,o()}}function ao(e){var t=0,n=nh/3,i=so(e),o=i(t,n);return o.parallels=function(e){return arguments.length?i(t=e[0]*ah,n=e[1]*ah):[t*sh,n*sh]},o}function uo(e){function t(e,t){return[e*n,yh(t)/n]}var n=ph(e);return t.invert=function(e,t){return[e/n,vn(t*n)]},t}function lo(e,t){function n(e,t){var n=vh(r-2*o*yh(t))/o;return[n*yh(e*=o),s-n*ph(e)]}var i=yh(e),o=(i+yh(t))/2;if(uh(o)<th)return uo(e);var r=1+i*(2*o-i),s=vh(r)/o;return n.invert=function(e,t){var n=s-t;return[ch(e,uh(n))/o*gh(n),vn((r-(e*e+n*n)*o*o)/(2*o))]},n}function co(e){var t=e.length;return{point:function(n,i){for(var o=-1;++o<t;)e[o].point(n,i)},sphere:function(){for(var n=-1;++n<t;)e[n].sphere()},lineStart:function(){for(var n=-1;++n<t;)e[n].lineStart()},lineEnd:function(){for(var n=-1;++n<t;)e[n].lineEnd()},polygonStart:function(){for(var n=-1;++n<t;)e[n].polygonStart()},polygonEnd:function(){for(var n=-1;++n<t;)e[n].polygonEnd()}}}function po(e){return function(t,n){var i=ph(t),o=ph(n),r=e(i*o);return[r*o*yh(t),r*yh(n)]}}function ho(e){return function(t,n){var i=vh(t*t+n*n),o=e(i),r=yh(o),s=ph(o);return[ch(t*r,i*s),vn(i&&n*r/i)]}}function fo(e,t){return[e,fh(bh((ih+t)/2))]}function mo(e){function t(){var t=nh*a(),s=r(Hh(r.rotate()).invert([0,0]));return l(null==c?[[s[0]-t,s[1]-t],[s[0]+t,s[1]+t]]:e===fo?[[Math.max(s[0]-t,c),n],[Math.min(s[0]+t,i),o]]:[[c,Math.max(s[1]-t,n)],[i,Math.min(s[1]+t,o)]])}var n,i,o,r=ro(e),s=r.center,a=r.scale,u=r.translate,l=r.clipExtent,c=null;return r.scale=function(e){return arguments.length?(a(e),t()):a()},r.translate=function(e){return arguments.length?(u(e),t()):u()},r.center=function(e){return arguments.length?(s(e),t()):s()},r.clipExtent=function(e){return arguments.length?(null==e?c=n=i=o=null:(c=+e[0][0],n=+e[0][1],i=+e[1][0],o=+e[1][1]),t()):null==c?null:[[c,n],[i,o]]},t()}function yo(e){return bh((ih+e)/2)}function go(e,t){function n(e,t){r>0?t<-ih+th&&(t=-ih+th):t>ih-th&&(t=ih-th);var n=r/mh(yo(t),o);return[n*yh(o*e),r-n*ph(o*e)]}var i=ph(e),o=e===t?yh(e):fh(i/ph(t))/fh(yo(t)/yo(e)),r=i*mh(yo(e),o)/o;return o?(n.invert=function(e,t){var n=r-t,i=gh(o)*vh(e*e+n*n);return[ch(e,uh(n))/o*gh(n),2*lh(mh(r/i,1/o))-ih]},n):fo}function vo(e,t){return[e,t]}function bo(e,t){function n(e,t){var n=r-t,i=o*e;return[n*yh(i),r-n*ph(i)]}var i=ph(e),o=e===t?yh(e):(i-ph(t))/(t-e),r=i/o+e;return uh(o)<th?vo:(n.invert=function(e,t){var n=r-t;return[ch(e,uh(n))/o*gh(n),r-gh(o)*vh(e*e+n*n)]},n)}function Co(e,t){var n=ph(t),i=ph(e)*n;return[n*yh(e)/i,yh(t)/i]}function So(e,t,n,i){return 1===e&&1===t&&0===n&&0===i?md:Yi({point:function(o,r){this.stream.point(o*e+n,r*t+i)}})}function wo(e,t){var n=t*t,i=n*n;return[e*(.8707-.131979*n+i*(i*(.003971*n-.001529*i)-.013791)),t*(1.007226+n*(.015085+i*(.028874*n-.044475-.005916*i)))]}function xo(e,t){return[ph(t)*yh(e),yh(t)]}function _o(e,t){var n=ph(t),i=1+ph(e)*n;return[n*yh(e)/i,yh(t)/i]}function Oo(e,t){return[fh(bh((ih+t)/2)),-e]}function Eo(e,t){return e.parent===t.parent?1:2}function Ao(e){return e.reduce(To,0)/e.length}function To(e,t){return e+t.x}function Ro(e){return 1+e.reduce(Fo,0)}function Fo(e,t){return Math.max(e,t.y)}function Io(e){for(var t;t=e.children;)e=t[0];return e}function Mo(e){for(var t;t=e.children;)e=t[t.length-1];return e}function Po(e){var t=0,n=e.children,i=n&&n.length;if(i)for(;--i>=0;)t+=n[i].value;else t=1;e.value=t}function Do(e,t){if(e===t)return e;var n=e.ancestors(),i=t.ancestors(),o=null;for(e=n.pop(),t=i.pop();e===t;)o=e,e=n.pop(),t=i.pop();return o}function $o(e,t){var n,i,o,r,s,a=new Bo(e),u=+e.value&&(a.value=e.value),l=[a];for(null==t&&(t=Vo);n=l.pop();)if(u&&(n.value=+n.data.value),(o=t(n.data))&&(s=o.length))for(n.children=new Array(s),r=s-1;r>=0;--r)l.push(i=n.children[r]=new Bo(o[r])),i.parent=n,i.depth=n.depth+1;return a.eachBefore(Lo)}function No(){return $o(this).eachBefore(ko)}function Vo(e){return e.children}function ko(e){e.data=e.data.data}function Lo(e){var t=0;do{e.height=t}while((e=e.parent)&&e.height<++t)}function Bo(e){this.data=e,this.depth=this.height=0,this.parent=null}function Qo(e){for(var t,n,i=e.length;i;)n=Math.random()*i--|0,t=e[i],e[i]=e[n],e[n]=t;return e}function Uo(e,t){var n,i;if(Ho(t,e))return[t];for(n=0;n<e.length;++n)if(jo(t,e[n])&&Ho(Go(e[n],t),e))return[e[n],t];for(n=0;n<e.length-1;++n)for(i=n+1;i<e.length;++i)if(jo(Go(e[n],e[i]),t)&&jo(Go(e[n],t),e[i])&&jo(Go(e[i],t),e[n])&&Ho(Yo(e[n],e[i],t),e))return[e[n],e[i],t];throw new Error}function jo(e,t){var n=e.r-t.r,i=t.x-e.x,o=t.y-e.y;return n<0||n*n<i*i+o*o}function qo(e,t){var n=e.r-t.r+1e-6,i=t.x-e.x,o=t.y-e.y;return n>0&&n*n>i*i+o*o}function Ho(e,t){for(var n=0;n<t.length;++n)if(!qo(e,t[n]))return!1;return!0}function zo(e){switch(e.length){case 1:return Wo(e[0]);case 2:return Go(e[0],e[1]);case 3:return Yo(e[0],e[1],e[2])}}function Wo(e){return{x:e.x,y:e.y,r:e.r}}function Go(e,t){var n=e.x,i=e.y,o=e.r,r=t.x,s=t.y,a=t.r,u=r-n,l=s-i,c=a-o,p=Math.sqrt(u*u+l*l);return{x:(n+r+u/p*c)/2,y:(i+s+l/p*c)/2,r:(p+o+a)/2}}function Yo(e,t,n){var i=e.x,o=e.y,r=e.r,s=t.x,a=t.y,u=t.r,l=n.x,c=n.y,p=n.r,h=i-s,d=i-l,f=o-a,m=o-c,y=u-r,g=p-r,v=i*i+o*o-r*r,b=v-s*s-a*a+u*u,C=v-l*l-c*c+p*p,S=d*f-h*m,w=(f*C-m*b)/(2*S)-i,x=(m*y-f*g)/S,_=(d*b-h*C)/(2*S)-o,O=(h*g-d*y)/S,E=x*x+O*O-1,A=2*(r+w*x+_*O),T=w*w+_*_-r*r,R=-(E?(A+Math.sqrt(A*A-4*E*T))/(2*E):T/A);return{x:i+w+x*R,y:o+_+O*R,r:R}}function Ko(e,t,n){var i=e.x,o=e.y,r=t.r+n.r,s=e.r+n.r,a=t.x-i,u=t.y-o,l=a*a+u*u;if(l){var c=.5+((s*=s)-(r*=r))/(2*l),p=Math.sqrt(Math.max(0,2*r*(s+l)-(s-=l)*s-r*r))/(2*l);n.x=i+c*a+p*u,n.y=o+c*u-p*a}else n.x=i+s,n.y=o}function Jo(e,t){var n=t.x-e.x,i=t.y-e.y,o=e.r+t.r;return o*o-1e-6>n*n+i*i}function Xo(e){var t=e._,n=e.next._,i=t.r+n.r,o=(t.x*n.r+n.x*t.r)/i,r=(t.y*n.r+n.y*t.r)/i;return o*o+r*r}function Zo(e){this._=e,this.next=null,this.previous=null}function er(e){if(!(o=e.length))return 0;var t,n,i,o,r,s,a,u,l,c,p;if(t=e[0],t.x=0,t.y=0,!(o>1))return t.r;if(n=e[1],t.x=-n.r,n.x=t.r,n.y=0,!(o>2))return t.r+n.r;Ko(n,t,i=e[2]),t=new Zo(t),n=new Zo(n),i=new Zo(i),t.next=i.previous=n,n.next=t.previous=i,i.next=n.previous=t;e:for(a=3;a<o;++a){Ko(t._,n._,i=e[a]),i=new Zo(i),u=n.next,l=t.previous,c=n._.r,p=t._.r;do{if(c<=p){if(Jo(u._,i._)){n=u,t.next=n,n.previous=t,--a;continue e}c+=u._.r,u=u.next}else{if(Jo(l._,i._)){t=l,t.next=n,n.previous=t,--a;continue e}p+=l._.r,l=l.previous}}while(u!==l.next);for(i.previous=t,i.next=n,t.next=n.previous=n=i,r=Xo(t);(i=i.next)!==n;)(s=Xo(i))<r&&(t=i,r=s);n=t.next}for(t=[n._],i=n;(i=i.next)!==n;)t.push(i._);for(i=Tf(t),a=0;a<o;++a)t=e[a],t.x-=i.x,t.y-=i.y;return i.r}function tr(e){return null==e?null:nr(e)}function nr(e){if(\"function\"!=typeof e)throw new Error;return e}function ir(){return 0}function or(e){return Math.sqrt(e.value)}function rr(e){return function(t){t.children||(t.r=Math.max(0,+e(t)||0))}}function sr(e,t){return function(n){if(i=n.children){var i,o,r,s=i.length,a=e(n)*t||0;if(a)for(o=0;o<s;++o)i[o].r+=a;if(r=er(i),a)for(o=0;o<s;++o)i[o].r-=a;n.r=r+a}}}function ar(e){return function(t){var n=t.parent;t.r*=e,n&&(t.x=n.x+e*t.x,t.y=n.y+e*t.y)}}function ur(e){return e.id}function lr(e){return e.parentId}function cr(e,t){return e.parent===t.parent?1:2}function pr(e){var t=e.children;return t?t[0]:e.t}function hr(e){var t=e.children;return t?t[t.length-1]:e.t}function dr(e,t,n){var i=n/(t.i-e.i);t.c-=i,t.s+=n,e.c+=i,t.z+=n,t.m+=n}function fr(e){for(var t,n=0,i=0,o=e.children,r=o.length;--r>=0;)t=o[r],t.z+=n,t.m+=n,n+=t.s+(i+=t.c)}function mr(e,t,n){return e.a.parent===t.parent?e.a:n}function yr(e,t){this._=e,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=t}function gr(e){for(var t,n,i,o,r,s=new yr(e,0),a=[s];t=a.pop();)if(i=t._.children)for(t.children=new Array(r=i.length),o=r-1;o>=0;--o)a.push(n=t.children[o]=new yr(i[o],o)),n.parent=t;return(s.parent=new yr(null,0)).children=[s],s}function vr(e,t,n,i,o,r){for(var s,a,u,l,c,p,h,d,f,m,y,g=[],v=t.children,b=0,C=0,S=v.length,w=t.value;b<S;){u=o-n,l=r-i;do{c=v[C++].value}while(!c&&C<S);for(p=h=c,m=Math.max(l/u,u/l)/(w*e),y=c*c*m,f=Math.max(h/y,y/p);C<S;++C){if(c+=a=v[C].value,a<p&&(p=a),a>h&&(h=a),y=c*c*m,(d=Math.max(h/y,y/p))>f){c-=a;break}f=d}g.push(s={value:c,dice:u<l,children:v.slice(b,C)}),s.dice?Pf(s,n,i,o,w?i+=l*c/w:r):Bf(s,n,i,w?n+=u*c/w:o,r),w-=c,b=C}return g}function br(e,t){return e[0]-t[0]||e[1]-t[1]}function Cr(e){for(var t=e.length,n=[0,1],i=2,o=2;o<t;++o){for(;i>1&&Yf(e[n[i-2]],e[n[i-1]],e[o])<=0;)--i;n[i++]=o}return n.slice(0,i)}function Sr(e){this._size=e,this._call=this._error=null,this._tasks=[],this._data=[],this._waiting=this._active=this._ended=this._start=0}function wr(e){if(!e._start)try{xr(e)}catch(t){if(e._tasks[e._ended+e._active-1])Or(e,t);else if(!e._data)throw t}}function xr(e){for(;e._start=e._waiting&&e._active<e._size;){var t=e._ended+e._active,n=e._tasks[t],i=n.length-1,o=n[i];n[i]=_r(e,t),--e._waiting,++e._active,n=o.apply(null,n),e._tasks[t]&&(e._tasks[t]=n||em)}}function _r(e,t){return function(n,i){e._tasks[t]&&(--e._active,++e._ended,e._tasks[t]=null,null==e._error&&(null!=n?Or(e,n):(e._data[t]=i,e._waiting?wr(e):Er(e))))}}function Or(e,t){var n,i=e._tasks.length;for(e._error=t,e._data=void 0,e._waiting=NaN;--i>=0;)if((n=e._tasks[i])&&(e._tasks[i]=null,n.abort))try{n.abort()}catch(t){}e._active=NaN,Er(e)}function Er(e){if(!e._active&&e._call){var t=e._data;e._data=void 0,e._call(e._error,t)}}function Ar(e){if(null==e)e=1/0;else if(!((e=+e)>=1))throw new Error(\"invalid concurrency\");return new Sr(e)}function Tr(e){return function(t,n){e(null==t?n:null)}}function Rr(e){var t=e.responseType;return t&&\"text\"!==t?e.response:e.responseText}function Fr(e,t){return function(n){return e(n.responseText,t)}}function Ir(e){return e>1?0:e<-1?Am:Math.acos(e)}function Mr(e){return e>=1?Tm:e<=-1?-Tm:Math.asin(e)}function Pr(e){return e.innerRadius}function Dr(e){return e.outerRadius}function $r(e){return e.startAngle}function Nr(e){return e.endAngle}function Vr(e){return e&&e.padAngle}function kr(e,t,n,i,o,r,s,a){var u=n-e,l=i-t,c=s-o,p=a-r,h=(c*(t-r)-p*(e-o))/(p*u-c*l);return[e+h*u,t+h*l]}function Lr(e,t,n,i,o,r,s){var a=e-n,u=t-i,l=(s?r:-r)/Om(a*a+u*u),c=l*u,p=-l*a,h=e+c,d=t+p,f=n+c,m=i+p,y=(h+f)/2,g=(d+m)/2,v=f-h,b=m-d,C=v*v+b*b,S=o-r,w=h*m-f*d,x=(b<0?-1:1)*Om(wm(0,S*S*C-w*w)),_=(w*b-v*x)/C,O=(-w*v-b*x)/C,E=(w*b+v*x)/C,A=(-w*v+b*x)/C,T=_-y,R=O-g,F=E-y,I=A-g;return T*T+R*R>F*F+I*I&&(_=E,O=A),{cx:_,cy:O,x01:-c,y01:-p,x11:_*(o/S-1),y11:O*(o/S-1)}}function Br(e){this._context=e}function Qr(e){return e[0]}function Ur(e){return e[1]}function jr(e){this._curve=e}function qr(e){function t(t){return new jr(e(t))}return t._curve=e,t}function Hr(e){var t=e.curve;return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e.curve=function(e){return arguments.length?t(qr(e)):t()._curve},e}function zr(e){return e.source}function Wr(e){return e.target}function Gr(e){function t(){var t,a=Qm.call(arguments),u=n.apply(this,a),l=i.apply(this,a);if(s||(s=t=Fc()),e(s,+o.apply(this,(a[0]=u,a)),+r.apply(this,a),+o.apply(this,(a[0]=l,a)),+r.apply(this,a)),t)return s=null,t+\"\"||null}var n=zr,i=Wr,o=Qr,r=Ur,s=null;return t.source=function(e){return arguments.length?(n=e,t):n},t.target=function(e){return arguments.length?(i=e,t):i},t.x=function(e){return arguments.length?(o=\"function\"==typeof e?e:vm(+e),t):o},t.y=function(e){return arguments.length?(r=\"function\"==typeof e?e:vm(+e),t):r},t.context=function(e){return arguments.length?(s=null==e?null:e,t):s},t}function Yr(e,t,n,i,o){e.moveTo(t,n),e.bezierCurveTo(t=(t+i)/2,n,t,o,i,o)}function Kr(e,t,n,i,o){e.moveTo(t,n),e.bezierCurveTo(t,n=(n+o)/2,i,n,i,o)}function Jr(e,t,n,i,o){var r=Bm(t,n),s=Bm(t,n=(n+o)/2),a=Bm(i,n),u=Bm(i,o);e.moveTo(r[0],r[1]),e.bezierCurveTo(s[0],s[1],a[0],a[1],u[0],u[1])}function Xr(){return Gr(Yr)}function Zr(){return Gr(Kr)}function es(){var e=Gr(Jr);return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e}function ts(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function ns(e){this._context=e}function is(e){this._context=e}function os(e){this._context=e}function rs(e,t){this._basis=new ns(e),this._beta=t}function ss(e,t,n){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-n),e._x2,e._y2)}function as(e,t){this._context=e,this._k=(1-t)/6}function us(e,t){this._context=e,this._k=(1-t)/6}function ls(e,t){this._context=e,this._k=(1-t)/6}function cs(e,t,n){var i=e._x1,o=e._y1,r=e._x2,s=e._y2;if(e._l01_a>Em){var a=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,u=3*e._l01_a*(e._l01_a+e._l12_a);i=(i*a-e._x0*e._l12_2a+e._x2*e._l01_2a)/u,o=(o*a-e._y0*e._l12_2a+e._y2*e._l01_2a)/u}if(e._l23_a>Em){var l=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,c=3*e._l23_a*(e._l23_a+e._l12_a);r=(r*l+e._x1*e._l23_2a-t*e._l12_2a)/c,s=(s*l+e._y1*e._l23_2a-n*e._l12_2a)/c}e._context.bezierCurveTo(i,o,r,s,e._x2,e._y2)}function ps(e,t){this._context=e,this._alpha=t}function hs(e,t){this._context=e,this._alpha=t}function ds(e,t){this._context=e,this._alpha=t}function fs(e){this._context=e}function ms(e){return e<0?-1:1}function ys(e,t,n){var i=e._x1-e._x0,o=t-e._x1,r=(e._y1-e._y0)/(i||o<0&&-0),s=(n-e._y1)/(o||i<0&&-0),a=(r*o+s*i)/(i+o);return(ms(r)+ms(s))*Math.min(Math.abs(r),Math.abs(s),.5*Math.abs(a))||0}function gs(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function vs(e,t,n){var i=e._x0,o=e._y0,r=e._x1,s=e._y1,a=(r-i)/3;e._context.bezierCurveTo(i+a,o+a*t,r-a,s-a*n,r,s)}function bs(e){this._context=e}function Cs(e){this._context=new Ss(e)}function Ss(e){this._context=e}function ws(e){return new bs(e)}function xs(e){return new Cs(e)}function _s(e){this._context=e}function Os(e){var t,n,i=e.length-1,o=new Array(i),r=new Array(i),s=new Array(i);for(o[0]=0,r[0]=2,s[0]=e[0]+2*e[1],t=1;t<i-1;++t)o[t]=1,r[t]=4,s[t]=4*e[t]+2*e[t+1];for(o[i-1]=2,r[i-1]=7,s[i-1]=8*e[i-1]+e[i],t=1;t<i;++t)n=o[t]/r[t-1],r[t]-=n,s[t]-=n*s[t-1];for(o[i-1]=s[i-1]/r[i-1],t=i-2;t>=0;--t)o[t]=(s[t]-o[t+1])/r[t];for(r[i-1]=(e[i]+o[i-1])/2,t=0;t<i-1;++t)r[t]=2*e[t+1]-o[t+1];return[o,r]}function Es(e,t){this._context=e,this._t=t}function As(e){return new Es(e,0)}function Ts(e){return new Es(e,1)}function Rs(e,t){return e[t]}function Fs(e){for(var t,n=0,i=-1,o=e.length;++i<o;)(t=+e[i][1])&&(n+=t);return n}function Is(e){return e[0]}function Ms(e){return e[1]}function Ps(){this._=null}function Ds(e){e.U=e.C=e.L=e.R=e.P=e.N=null}function $s(e,t){var n=t,i=t.R,o=n.U;o?o.L===n?o.L=i:o.R=i:e._=i,i.U=o,n.U=i,n.R=i.L,n.R&&(n.R.U=n),i.L=n}function Ns(e,t){var n=t,i=t.L,o=n.U;o?o.L===n?o.L=i:o.R=i:e._=i,i.U=o,n.U=i,n.L=i.R,n.L&&(n.L.U=n),i.R=n}function Vs(e){for(;e.L;)e=e.L;return e}function ks(e,t,n,i){var o=[null,null],r=ky.push(o)-1;return o.left=e,o.right=t,n&&Bs(o,e,t,n),i&&Bs(o,t,e,i),Ny[e.index].halfedges.push(r),Ny[t.index].halfedges.push(r),o}function Ls(e,t,n){var i=[t,n];return i.left=e,i}function Bs(e,t,n,i){e[0]||e[1]?e.left===n?e[1]=i:e[0]=i:(e[0]=i,e.left=t,e.right=n)}function Qs(e,t,n,i,o){var r,s=e[0],a=e[1],u=s[0],l=s[1],c=a[0],p=a[1],h=0,d=1,f=c-u,m=p-l;if(r=t-u,f||!(r>0)){if(r/=f,f<0){if(r<h)return;r<d&&(d=r)}else if(f>0){if(r>d)return;r>h&&(h=r)}if(r=i-u,f||!(r<0)){if(r/=f,f<0){if(r>d)return;r>h&&(h=r)}else if(f>0){if(r<h)return;r<d&&(d=r)}if(r=n-l,m||!(r>0)){if(r/=m,m<0){if(r<h)return;r<d&&(d=r)}else if(m>0){if(r>d)return;r>h&&(h=r)}if(r=o-l,m||!(r<0)){if(r/=m,m<0){if(r>d)return;r>h&&(h=r)}else if(m>0){if(r<h)return;r<d&&(d=r)}return!(h>0||d<1)||(h>0&&(e[0]=[u+h*f,l+h*m]),d<1&&(e[1]=[u+d*f,l+d*m]),!0)}}}}}function Us(e,t,n,i,o){var r=e[1];if(r)return!0;var s,a,u=e[0],l=e.left,c=e.right,p=l[0],h=l[1],d=c[0],f=c[1],m=(p+d)/2,y=(h+f)/2;if(f===h){if(m<t||m>=i)return;if(p>d){if(u){if(u[1]>=o)return}else u=[m,n];r=[m,o]}else{if(u){if(u[1]<n)return}else u=[m,o];r=[m,n]}}else if(s=(p-d)/(f-h),a=y-s*m,s<-1||s>1)if(p>d){if(u){if(u[1]>=o)return}else u=[(n-a)/s,n];r=[(o-a)/s,o]}else{if(u){if(u[1]<n)return}else u=[(o-a)/s,o];r=[(n-a)/s,n]}else if(h<f){if(u){if(u[0]>=i)return}else u=[t,s*t+a];r=[i,s*i+a]}else{if(u){if(u[0]<t)return}else u=[i,s*i+a];r=[t,s*t+a]}return e[0]=u,e[1]=r,!0}function js(e,t,n,i){for(var o,r=ky.length;r--;)Us(o=ky[r],e,t,n,i)&&Qs(o,e,t,n,i)&&(Math.abs(o[0][0]-o[1][0])>Uy||Math.abs(o[0][1]-o[1][1])>Uy)||delete ky[r]}function qs(e){return Ny[e.index]={site:e,halfedges:[]}}function Hs(e,t){var n=e.site,i=t.left,o=t.right;return n===o&&(o=i,i=n),o?Math.atan2(o[1]-i[1],o[0]-i[0]):(n===i?(i=t[1],o=t[0]):(i=t[0],o=t[1]),Math.atan2(i[0]-o[0],o[1]-i[1]))}function zs(e,t){return t[+(t.left!==e.site)]}function Ws(e,t){return t[+(t.left===e.site)]}function Gs(){for(var e,t,n,i,o=0,r=Ny.length;o<r;++o)if((e=Ny[o])&&(i=(t=e.halfedges).length)){var s=new Array(i),a=new Array(i);for(n=0;n<i;++n)s[n]=n,a[n]=Hs(e,ky[t[n]]);for(s.sort(function(e,t){return a[t]-a[e]}),n=0;n<i;++n)a[n]=t[s[n]];for(n=0;n<i;++n)t[n]=a[n]}}function Ys(e,t,n,i){var o,r,s,a,u,l,c,p,h,d,f,m,y=Ny.length,g=!0;for(o=0;o<y;++o)if(r=Ny[o]){for(s=r.site,u=r.halfedges,a=u.length;a--;)ky[u[a]]||u.splice(a,1);for(a=0,l=u.length;a<l;)d=Ws(r,ky[u[a]]),f=d[0],m=d[1],c=zs(r,ky[u[++a%l]]),p=c[0],h=c[1],(Math.abs(f-p)>Uy||Math.abs(m-h)>Uy)&&(u.splice(a,0,ky.push(Ls(s,d,Math.abs(f-e)<Uy&&i-m>Uy?[e,Math.abs(p-e)<Uy?h:i]:Math.abs(m-i)<Uy&&n-f>Uy?[Math.abs(h-i)<Uy?p:n,i]:Math.abs(f-n)<Uy&&m-t>Uy?[n,Math.abs(p-n)<Uy?h:t]:Math.abs(m-t)<Uy&&f-e>Uy?[Math.abs(h-t)<Uy?p:e,t]:null))-1),++l);l&&(g=!1)}if(g){var v,b,C,S=1/0;for(o=0,g=null;o<y;++o)(r=Ny[o])&&(s=r.site,v=s[0]-e,b=s[1]-t,(C=v*v+b*b)<S&&(S=C,g=r));if(g){var w=[e,t],x=[e,i],_=[n,i],O=[n,t];g.halfedges.push(ky.push(Ls(s=g.site,w,x))-1,ky.push(Ls(s,x,_))-1,ky.push(Ls(s,_,O))-1,ky.push(Ls(s,O,w))-1)}}for(o=0;o<y;++o)(r=Ny[o])&&(r.halfedges.length||delete Ny[o])}function Ks(){Ds(this),this.x=this.y=this.arc=this.site=this.cy=null}function Js(e){var t=e.P,n=e.N;if(t&&n){var i=t.site,o=e.site,r=n.site;if(i!==r){var s=o[0],a=o[1],u=i[0]-s,l=i[1]-a,c=r[0]-s,p=r[1]-a,h=2*(u*p-l*c);if(!(h>=-jy)){var d=u*u+l*l,f=c*c+p*p,m=(p*d-l*f)/h,y=(u*f-c*d)/h,g=By.pop()||new Ks;g.arc=e,g.site=o,g.x=m+s,g.y=(g.cy=y+a)+Math.sqrt(m*m+y*y),e.circle=g;for(var v=null,b=Vy._;b;)if(g.y<b.y||g.y===b.y&&g.x<=b.x){if(!b.L){v=b.P;break}b=b.L}else{if(!b.R){v=b;break}b=b.R}Vy.insert(v,g),v||(Dy=g)}}}}function Xs(e){var t=e.circle;t&&(t.P||(Dy=t.N),Vy.remove(t),By.push(t),Ds(t),e.circle=null)}function Zs(){Ds(this),this.edge=this.site=this.circle=null}function ea(e){var t=Qy.pop()||new Zs;return t.site=e,t}function ta(e){Xs(e),$y.remove(e),Qy.push(e),Ds(e)}function na(e){var t=e.circle,n=t.x,i=t.cy,o=[n,i],r=e.P,s=e.N,a=[e];ta(e);for(var u=r;u.circle&&Math.abs(n-u.circle.x)<Uy&&Math.abs(i-u.circle.cy)<Uy;)r=u.P,a.unshift(u),ta(u),u=r;a.unshift(u),Xs(u);for(var l=s;l.circle&&Math.abs(n-l.circle.x)<Uy&&Math.abs(i-l.circle.cy)<Uy;)s=l.N,a.push(l),ta(l),l=s;a.push(l),Xs(l);var c,p=a.length;for(c=1;c<p;++c)l=a[c],u=a[c-1],Bs(l.edge,u.site,l.site,o);u=a[0],l=a[p-1],l.edge=ks(u.site,l.site,null,o),Js(u),Js(l)}function ia(e){for(var t,n,i,o,r=e[0],s=e[1],a=$y._;a;)if((i=oa(a,s)-r)>Uy)a=a.L;else{if(!((o=r-ra(a,s))>Uy)){i>-Uy?(t=a.P,n=a):o>-Uy?(t=a,n=a.N):t=n=a;break}if(!a.R){t=a;break}a=a.R}qs(e);var u=ea(e);if($y.insert(t,u),t||n){if(t===n)return Xs(t),n=ea(t.site),$y.insert(u,n),u.edge=n.edge=ks(t.site,u.site),Js(t),void Js(n);if(!n)return void(u.edge=ks(t.site,u.site));Xs(t),Xs(n);var l=t.site,c=l[0],p=l[1],h=e[0]-c,d=e[1]-p,f=n.site,m=f[0]-c,y=f[1]-p,g=2*(h*y-d*m),v=h*h+d*d,b=m*m+y*y,C=[(y*v-d*b)/g+c,(h*b-m*v)/g+p];Bs(n.edge,l,f,C),u.edge=ks(l,e,null,C),n.edge=ks(e,f,null,C),Js(t),Js(n)}}function oa(e,t){var n=e.site,i=n[0],o=n[1],r=o-t;if(!r)return i;var s=e.P;if(!s)return-1/0;n=s.site;var a=n[0],u=n[1],l=u-t;if(!l)return a;var c=a-i,p=1/r-1/l,h=c/l;return p?(-h+Math.sqrt(h*h-2*p*(c*c/(-2*l)-u+l/2+o-r/2)))/p+i:(i+a)/2}function ra(e,t){var n=e.N;if(n)return oa(n,t);var i=e.site;return i[1]===t?i[0]:1/0}function sa(e,t,n){return(e[0]-n[0])*(t[1]-e[1])-(e[0]-t[0])*(n[1]-e[1])}function aa(e,t){return t[1]-e[1]||t[0]-e[0]}function ua(e,t){var n,i,o,r=e.sort(aa).pop();for(ky=[],Ny=new Array(e.length),$y=new Ly,Vy=new Ly;;)if(o=Dy,r&&(!o||r[1]<o.y||r[1]===o.y&&r[0]<o.x))r[0]===n&&r[1]===i||(ia(r),n=r[0],i=r[1]),r=e.pop();else{if(!o)break;na(o.arc)}if(Gs(),t){var s=+t[0][0],a=+t[0][1],u=+t[1][0],l=+t[1][1];js(s,a,u,l),Ys(s,a,u,l)}this.edges=ky,this.cells=Ny,$y=Vy=ky=Ny=null}function la(e,t,n){this.target=e,this.type=t,this.transform=n}function ca(e,t,n){this.k=e,this.x=t,this.y=n}function pa(e){return e.__zoom||zy}function ha(){vu.stopImmediatePropagation()}function da(){return!vu.button}function fa(){var e,t,n=this;return n instanceof SVGElement?(n=n.ownerSVGElement||n,e=n.width.baseVal.value,t=n.height.baseVal.value):(e=n.clientWidth,t=n.clientHeight),[[0,0],[e,t]]}function ma(){return this.__zoom||zy}function ya(){return-vu.deltaY*(vu.deltaMode?120:1)/500}function ga(){return\"ontouchstart\"in this}function va(e,t,n){var i=e.invertX(t[0][0])-n[0][0],o=e.invertX(t[1][0])-n[1][0],r=e.invertY(t[0][1])-n[0][1],s=e.invertY(t[1][1])-n[1][1];return e.translate(o>i?(i+o)/2:Math.min(0,i)||Math.max(0,o),s>r?(r+s)/2:Math.min(0,r)||Math.max(0,s))}Object.defineProperty(t,\"__esModule\",{value:!0});var ba=n(38),Ca=Array.prototype.slice,Sa=function(e){return e},wa=1,xa=2,_a=3,Oa=4,Ea=1e-6,Aa={value:function(){}};f.prototype=d.prototype={constructor:f,on:function(e,t){var n,i=this._,o=m(e+\"\",i),r=-1,s=o.length;{if(!(arguments.length<2)){if(null!=t&&\"function\"!=typeof t)throw new Error(\"invalid callback: \"+t);for(;++r<s;)if(n=(e=o[r]).type)i[n]=g(i[n],e.name,t);else if(null==t)for(n in i)i[n]=g(i[n],e.name,null);return this}for(;++r<s;)if((n=(e=o[r]).type)&&(n=y(i[n],e.name)))return n}},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new f(e)},call:function(e,t){if((n=arguments.length-2)>0)for(var n,i,o=new Array(n),r=0;r<n;++r)o[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error(\"unknown type: \"+e);for(i=this._[e],r=0,n=i.length;r<n;++r)i[r].value.apply(t,o)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error(\"unknown type: \"+e);for(var i=this._[e],o=0,r=i.length;o<r;++o)i[o].value.apply(t,n)}};var Ta=d,Ra=\"http://www.w3.org/1999/xhtml\",Fa={svg:\"http://www.w3.org/2000/svg\",xhtml:Ra,xlink:\"http://www.w3.org/1999/xlink\",xml:\"http://www.w3.org/XML/1998/namespace\",xmlns:\"http://www.w3.org/2000/xmlns/\"},Ia=function(e){var t=e+=\"\",n=t.indexOf(\":\");return n>=0&&\"xmlns\"!==(t=e.slice(0,n))&&(e=e.slice(n+1)),Fa.hasOwnProperty(t)?{space:Fa[t],local:e}:e},Ma=function(e){var t=Ia(e);return(t.local?b:v)(t)},Pa=function(e){return null==e?C:function(){return this.querySelector(e)}},Da=function(e){\"function\"!=typeof e&&(e=Pa(e));for(var t=this._groups,n=t.length,i=new Array(n),o=0;o<n;++o)for(var r,s,a=t[o],u=a.length,l=i[o]=new Array(u),c=0;c<u;++c)(r=a[c])&&(s=e.call(r,r.__data__,c,a))&&(\"__data__\"in r&&(s.__data__=r.__data__),l[c]=s);return new fe(i,this._parents)},$a=function(e){return null==e?S:function(){return this.querySelectorAll(e)}},Na=function(e){\"function\"!=typeof e&&(e=$a(e));for(var t=this._groups,n=t.length,i=[],o=[],r=0;r<n;++r)for(var s,a=t[r],u=a.length,l=0;l<u;++l)(s=a[l])&&(i.push(e.call(s,s.__data__,l,a)),o.push(s));return new fe(i,o)},Va=function(e){return function(){return this.matches(e)}};if(\"undefined\"!=typeof document){var ka=document.documentElement;if(!ka.matches){var La=ka.webkitMatchesSelector||ka.msMatchesSelector||ka.mozMatchesSelector||ka.oMatchesSelector;Va=function(e){return function(){return La.call(this,e)}}}}var Ba=Va,Qa=function(e){\"function\"!=typeof e&&(e=Ba(e));for(var t=this._groups,n=t.length,i=new Array(n),o=0;o<n;++o)for(var r,s=t[o],a=s.length,u=i[o]=[],l=0;l<a;++l)(r=s[l])&&e.call(r,r.__data__,l,s)&&u.push(r);return new fe(i,this._parents)},Ua=function(e){return new Array(e.length)},ja=function(){return new fe(this._enter||this._groups.map(Ua),this._parents)};w.prototype={constructor:w,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};var qa=function(e){return function(){return e}},Ha=\"$\",za=function(e,t){if(!e)return d=new Array(this.size()),l=-1,this.each(function(e){d[++l]=e}),d;var n=t?_:x,i=this._parents,o=this._groups;\"function\"!=typeof e&&(e=qa(e));for(var r=o.length,s=new Array(r),a=new Array(r),u=new Array(r),l=0;l<r;++l){var c=i[l],p=o[l],h=p.length,d=e.call(c,c&&c.__data__,l,i),f=d.length,m=a[l]=new Array(f),y=s[l]=new Array(f);n(c,p,m,y,u[l]=new Array(h),d,t);for(var g,v,b=0,C=0;b<f;++b)if(g=m[b]){for(b>=C&&(C=b+1);!(v=y[C])&&++C<f;);g._next=v||null}}return s=new fe(s,i),s._enter=a,s._exit=u,s},Wa=function(){return new fe(this._exit||this._groups.map(Ua),this._parents)},Ga=function(e){for(var t=this._groups,n=e._groups,i=t.length,o=n.length,r=Math.min(i,o),s=new Array(i),a=0;a<r;++a)for(var u,l=t[a],c=n[a],p=l.length,h=s[a]=new Array(p),d=0;d<p;++d)(u=l[d]||c[d])&&(h[d]=u);for(;a<i;++a)s[a]=t[a];return new fe(s,this._parents)},Ya=function(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var i,o=e[t],r=o.length-1,s=o[r];--r>=0;)(i=o[r])&&(s&&s!==i.nextSibling&&s.parentNode.insertBefore(i,s),s=i);return this},Ka=function(e){function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}e||(e=O);for(var n=this._groups,i=n.length,o=new Array(i),r=0;r<i;++r){for(var s,a=n[r],u=a.length,l=o[r]=new Array(u),c=0;c<u;++c)(s=a[c])&&(l[c]=s);l.sort(t)}return new fe(o,this._parents).order()},Ja=function(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this},Xa=function(){var e=new Array(this.size()),t=-1;return this.each(function(){e[++t]=this}),e},Za=function(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var i=e[t],o=0,r=i.length;o<r;++o){var s=i[o];if(s)return s}return null},eu=function(){var e=0;return this.each(function(){++e}),e},tu=function(){return!this.node()},nu=function(e){for(var t=this._groups,n=0,i=t.length;n<i;++n)for(var o,r=t[n],s=0,a=r.length;s<a;++s)(o=r[s])&&e.call(o,o.__data__,s,r);return this},iu=function(e,t){var n=Ia(e);if(arguments.length<2){var i=this.node();return n.local?i.getAttributeNS(n.space,n.local):i.getAttribute(n)}return this.each((null==t?n.local?A:E:\"function\"==typeof t?n.local?I:F:n.local?R:T)(n,t))},ou=function(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView},ru=function(e,t,n){return arguments.length>1?this.each((null==t?M:\"function\"==typeof t?D:P)(e,t,null==n?\"\":n)):$(this.node(),e)},su=function(e,t){return arguments.length>1?this.each((null==t?N:\"function\"==typeof t?k:V)(e,t)):this.node()[e]};Q.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(\"class\",this._names.join(\" \")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(\"class\",this._names.join(\" \")))},contains:function(e){return this._names.indexOf(e)>=0}};var au=function(e,t){var n=L(e+\"\");if(arguments.length<2){for(var i=B(this.node()),o=-1,r=n.length;++o<r;)if(!i.contains(n[o]))return!1;return!0}return this.each((\"function\"==typeof t?z:t?q:H)(n,t))},uu=function(e){return arguments.length?this.each(null==e?W:(\"function\"==typeof e?Y:G)(e)):this.node().textContent},lu=function(e){return arguments.length?this.each(null==e?K:(\"function\"==typeof e?X:J)(e)):this.node().innerHTML},cu=function(){return this.each(Z)},pu=function(){return this.each(ee)},hu=function(e){var t=\"function\"==typeof e?e:Ma(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})},du=function(e,t){var n=\"function\"==typeof e?e:Ma(e),i=null==t?te:\"function\"==typeof t?t:Pa(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),i.apply(this,arguments)||null)})},fu=function(){return this.each(ne)},mu=function(e){return this.select(e?oe:ie)},yu=function(e){return arguments.length?this.property(\"__data__\",e):this.node().__data__},gu={},vu=null;if(\"undefined\"!=typeof document){\"onmouseenter\"in document.documentElement||(gu={mouseenter:\"mouseover\",mouseleave:\"mouseout\"})}var bu=function(e,t,n){var i,o,r=ae(e+\"\"),s=r.length;{if(!(arguments.length<2)){for(a=t?le:ue,null==n&&(n=!1),i=0;i<s;++i)this.each(a(r[i],t,n));return this}var a=this.node().__on;if(a)for(var u,l=0,c=a.length;l<c;++l)for(i=0,u=a[l];i<s;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}},Cu=function(e,t){return this.each((\"function\"==typeof t?de:he)(e,t))},Su=[null];fe.prototype=me.prototype={constructor:fe,select:Da,selectAll:Na,filter:Qa,data:za,enter:ja,exit:Wa,merge:Ga,order:Ya,sort:Ka,call:Ja,nodes:Xa,node:Za,size:eu,empty:tu,each:nu,attr:iu,style:ru,property:su,classed:au,text:uu,html:lu,raise:cu,lower:pu,append:hu,insert:du,remove:fu,clone:mu,datum:yu,on:bu,dispatch:Cu};var wu=me,xu=function(e){return\"string\"==typeof e?new fe([[document.querySelector(e)]],[document.documentElement]):new fe([[e]],Su)},_u=function(e){return xu(Ma(e).call(document.documentElement))},Ou=0;ge.prototype=ye.prototype={constructor:ge,get:function(e){for(var t=this._;!(t in e);)if(!(e=e.parentNode))return;return e[t]},set:function(e,t){return e[this._]=t},remove:function(e){return this._ in e&&delete e[this._]},toString:function(){return this._}};var Eu=function(){for(var e,t=vu;e=t.sourceEvent;)t=e;return t},Au=function(e,t){var n=e.ownerSVGElement||e;if(n.createSVGPoint){var i=n.createSVGPoint();return i.x=t.clientX,i.y=t.clientY,i=i.matrixTransform(e.getScreenCTM().inverse()),[i.x,i.y]}var o=e.getBoundingClientRect();return[t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop]},Tu=function(e){var t=Eu();return t.changedTouches&&(t=t.changedTouches[0]),Au(e,t)},Ru=function(e){return\"string\"==typeof e?new fe([document.querySelectorAll(e)],[document.documentElement]):new fe([null==e?[]:e],Su)},Fu=function(e,t,n){arguments.length<3&&(n=t,t=Eu().changedTouches);for(var i,o=0,r=t?t.length:0;o<r;++o)if((i=t[o]).identifier===n)return Au(e,i);return null},Iu=function(e,t){null==t&&(t=Eu().touches);for(var n=0,i=t?t.length:0,o=new Array(i);n<i;++n)o[n]=Au(e,t[n]);return o},Mu=function(){vu.preventDefault(),vu.stopImmediatePropagation()},Pu=function(e){var t=e.document.documentElement,n=xu(e).on(\"dragstart.drag\",Mu,!0);\"onselectstart\"in t?n.on(\"selectstart.drag\",Mu,!0):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect=\"none\")},Du=function(e){return function(){return e}};Ce.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};var $u,Nu,Vu=function(){function e(e){e.on(\"mousedown.drag\",t).filter(m).on(\"touchstart.drag\",o).on(\"touchmove.drag\",r).on(\"touchend.drag touchcancel.drag\",s).style(\"touch-action\",\"none\").style(\"-webkit-tap-highlight-color\",\"rgba(0,0,0,0)\")}function t(){if(!p&&h.apply(this,arguments)){var e=a(\"mouse\",d.apply(this,arguments),Tu,this,arguments);e&&(xu(vu.view).on(\"mousemove.drag\",n,!0).on(\"mouseup.drag\",i,!0),Pu(vu.view),ve(),c=!1,u=vu.clientX,l=vu.clientY,e(\"start\"))}}function n(){if(Mu(),!c){var e=vu.clientX-u,t=vu.clientY-l;c=e*e+t*t>b}y.mouse(\"drag\")}function i(){xu(vu.view).on(\"mousemove.drag mouseup.drag\",null),be(vu.view,c),Mu(),y.mouse(\"end\")}function o(){if(h.apply(this,arguments)){var e,t,n=vu.changedTouches,i=d.apply(this,arguments),o=n.length;for(e=0;e<o;++e)(t=a(n[e].identifier,i,Fu,this,arguments))&&(ve(),t(\"start\"))}}function r(){var e,t,n=vu.changedTouches,i=n.length;for(e=0;e<i;++e)(t=y[n[e].identifier])&&(Mu(),t(\"drag\"))}function s(){var e,t,n=vu.changedTouches,i=n.length;for(p&&clearTimeout(p),p=setTimeout(function(){p=null},500),e=0;e<i;++e)(t=y[n[e].identifier])&&(ve(),t(\"end\"))}function a(t,n,i,o,r){var s,a,u,l=i(n,t),c=g.copy();if(ce(new Ce(e,\"beforestart\",s,t,v,l[0],l[1],0,0,c),function(){return null!=(vu.subject=s=f.apply(o,r))&&(a=s.x-l[0]||0,u=s.y-l[1]||0,!0)}))return function p(h){var d,f=l;switch(h){case\"start\":y[t]=p,d=v++;break;case\"end\":delete y[t],--v;case\"drag\":l=i(n,t),d=v}ce(new Ce(e,h,s,t,d,l[0]+a,l[1]+u,l[0]-f[0],l[1]-f[1],c),c.apply,c,[h,o,r])}}var u,l,c,p,h=Se,d=we,f=xe,m=_e,y={},g=Ta(\"start\",\"drag\",\"end\"),v=0,b=0;return e.filter=function(t){return arguments.length?(h=\"function\"==typeof t?t:Du(!!t),e):h},e.container=function(t){return arguments.length?(d=\"function\"==typeof t?t:Du(t),e):d},e.subject=function(t){return arguments.length?(f=\"function\"==typeof t?t:Du(t),e):f},e.touchable=function(t){return arguments.length?(m=\"function\"==typeof t?t:Du(!!t),e):m},e.on=function(){var t=g.on.apply(g,arguments);return t===g?e:t},e.clickDistance=function(t){return arguments.length?(b=(t=+t)*t,e):Math.sqrt(b)},e},ku=n(53),Lu=0,Bu=0,Qu=0,Uu=1e3,ju=0,qu=0,Hu=0,zu=\"object\"==typeof performance&&performance.now?performance:Date,Wu=\"object\"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};Ae.prototype=Te.prototype={constructor:Ae,restart:function(e,t,n){if(\"function\"!=typeof e)throw new TypeError(\"callback is not a function\");n=(null==n?Oe():+n)+(null==t?0:+t),this._next||Nu===this||(Nu?Nu._next=this:$u=this,Nu=this),this._call=e,this._time=n,Pe()},stop:function(){this._call&&(this._call=null,this._time=1/0,Pe())}};var Gu=function(e,t,n){var i=new Ae;return t=null==t?0:+t,i.restart(function(n){i.stop(),e(n+t)},t,n),i},Yu=function(e,t,n){var i=new Ae,o=t;return null==t?(i.restart(e,t,n),i):(t=+t,n=null==n?Oe():+n,i.restart(function r(s){s+=o,i.restart(r,o+=t,n),e(s)},t,n),i)},Ku=Ta(\"start\",\"end\",\"interrupt\"),Ju=[],Xu=0,Zu=1,el=2,tl=3,nl=4,il=5,ol=6,rl=function(e,t,n,i,o,r){var s=e.__transition;if(s){if(n in s)return}else e.__transition={};Ve(e,n,{name:t,index:i,group:o,on:Ku,tween:Ju,time:r.time,delay:r.delay,duration:r.duration,ease:r.ease,timer:null,state:Xu})},sl=function(e,t){var n,i,o,r=e.__transition,s=!0;if(r){t=null==t?null:t+\"\";for(o in r)(n=r[o]).name===t?(i=n.state>el&&n.state<il,n.state=ol,n.timer.stop(),i&&n.on.call(\"interrupt\",e,e.__data__,n.index,n.group),delete r[o]):s=!1;s&&delete e.__transition}},al=function(e){return this.each(function(){sl(this,e)})},ul=function(e,t){var n=this._id;if(e+=\"\",arguments.length<2){for(var i,o=Ne(this.node(),n).tween,r=0,s=o.length;r<s;++r)if((i=o[r]).name===e)return i.value;return null}return this.each((null==t?ke:Le)(n,e,t))},ll=n(60),cl=function(e,t){var n;return(\"number\"==typeof t?ku.m:t instanceof ll.a?ku.o:(n=Object(ll.a)(t))?(t=n,ku.o):ku.s)(e,t)},pl=function(e,t){var n=Ia(e),i=\"transform\"===n?ku.u:cl;return this.attrTween(e,\"function\"==typeof t?(n.local?ze:He)(n,i,Be(this,\"attr.\"+e,t)):null==t?(n.local?Ue:Qe)(n):(n.local?qe:je)(n,i,t+\"\"))},hl=function(e,t){var n=\"attr.\"+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==t)return this.tween(n,null);if(\"function\"!=typeof t)throw new Error;var i=Ia(e);return this.tween(n,(i.local?We:Ge)(i,t))},dl=function(e){var t=this._id;return arguments.length?this.each((\"function\"==typeof e?Ye:Ke)(t,e)):Ne(this.node(),t).delay},fl=function(e){var t=this._id;return arguments.length?this.each((\"function\"==typeof e?Je:Xe)(t,e)):Ne(this.node(),t).duration},ml=function(e){var t=this._id;return arguments.length?this.each(Ze(t,e)):Ne(this.node(),t).ease},yl=function(e){\"function\"!=typeof e&&(e=Ba(e));for(var t=this._groups,n=t.length,i=new Array(n),o=0;o<n;++o)for(var r,s=t[o],a=s.length,u=i[o]=[],l=0;l<a;++l)(r=s[l])&&e.call(r,r.__data__,l,s)&&u.push(r);return new ct(i,this._parents,this._name,this._id)},gl=function(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,i=t.length,o=n.length,r=Math.min(i,o),s=new Array(i),a=0;a<r;++a)for(var u,l=t[a],c=n[a],p=l.length,h=s[a]=new Array(p),d=0;d<p;++d)(u=l[d]||c[d])&&(h[d]=u);for(;a<i;++a)s[a]=t[a];return new ct(s,this._parents,this._name,this._id)},vl=function(e,t){var n=this._id;return arguments.length<2?Ne(this.node(),n).on.on(e):this.each(tt(n,e,t))},bl=function(){return this.on(\"end.remove\",nt(this._id))},Cl=function(e){var t=this._name,n=this._id;\"function\"!=typeof e&&(e=Pa(e));for(var i=this._groups,o=i.length,r=new Array(o),s=0;s<o;++s)for(var a,u,l=i[s],c=l.length,p=r[s]=new Array(c),h=0;h<c;++h)(a=l[h])&&(u=e.call(a,a.__data__,h,l))&&(\"__data__\"in a&&(u.__data__=a.__data__),p[h]=u,rl(p[h],t,n,h,p,Ne(a,n)));return new ct(r,this._parents,t,n)},Sl=function(e){var t=this._name,n=this._id;\"function\"!=typeof e&&(e=$a(e));for(var i=this._groups,o=i.length,r=[],s=[],a=0;a<o;++a)for(var u,l=i[a],c=l.length,p=0;p<c;++p)if(u=l[p]){for(var h,d=e.call(u,u.__data__,p,l),f=Ne(u,n),m=0,y=d.length;m<y;++m)(h=d[m])&&rl(h,t,n,m,d,f);r.push(d),s.push(u)}return new ct(r,s,t,n)},wl=wu.prototype.constructor,xl=function(){return new wl(this._groups,this._parents)},_l=function(e,t,n){var i=\"transform\"==(e+=\"\")?ku.t:cl;return null==t?this.styleTween(e,it(e,i)).on(\"end.style.\"+e,ot(e)):this.styleTween(e,\"function\"==typeof t?st(e,i,Be(this,\"style.\"+e,t)):rt(e,i,t+\"\"),n)},Ol=function(e,t,n){var i=\"style.\"+(e+=\"\");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(null==t)return this.tween(i,null);if(\"function\"!=typeof t)throw new Error;return this.tween(i,at(e,t,null==n?\"\":n))},El=function(e){return this.tween(\"text\",\"function\"==typeof e?lt(Be(this,\"text\",e)):ut(null==e?\"\":e+\"\"))},Al=function(){for(var e=this._name,t=this._id,n=ht(),i=this._groups,o=i.length,r=0;r<o;++r)for(var s,a=i[r],u=a.length,l=0;l<u;++l)if(s=a[l]){var c=Ne(s,t);rl(s,e,n,l,a,{time:c.time+c.delay+c.duration,delay:0,duration:c.duration,ease:c.ease})}return new ct(i,this._parents,e,n)},Tl=0,Rl=wu.prototype;ct.prototype=pt.prototype={constructor:ct,select:Cl,selectAll:Sl,filter:yl,merge:gl,selection:xl,transition:Al,call:Rl.call,nodes:Rl.nodes,node:Rl.node,size:Rl.size,empty:Rl.empty,each:Rl.each,on:vl,attr:pl,attrTween:hl,style:_l,styleTween:Ol,text:El,remove:bl,tween:ul,delay:dl,duration:fl,ease:ml};var Fl=function e(t){function n(e){return Math.pow(e,t)}return t=+t,n.exponent=e,n}(3),Il=function e(t){function n(e){return 1-Math.pow(1-e,t)}return t=+t,n.exponent=e,n}(3),Ml=function e(t){function n(e){return((e*=2)<=1?Math.pow(e,t):2-Math.pow(2-e,t))/2}return t=+t,n.exponent=e,n}(3),Pl=Math.PI,Dl=Pl/2,$l=4/11,Nl=6/11,Vl=8/11,kl=.75,Ll=9/11,Bl=10/11,Ql=.9375,Ul=21/22,jl=63/64,ql=1/$l/$l,Hl=function e(t){function n(e){return e*e*((t+1)*e-t)}return t=+t,n.overshoot=e,n}(1.70158),zl=function e(t){function n(e){return--e*e*((t+1)*e+t)+1}return t=+t,n.overshoot=e,n}(1.70158),Wl=function e(t){function n(e){return((e*=2)<1?e*e*((t+1)*e-t):(e-=2)*e*((t+1)*e+t)+2)/2}return t=+t,n.overshoot=e,n}(1.70158),Gl=2*Math.PI,Yl=function e(t,n){function i(e){return t*Math.pow(2,10*--e)*Math.sin((o-e)/n)}var o=Math.asin(1/(t=Math.max(1,t)))*(n/=Gl);return i.amplitude=function(t){return e(t,n*Gl)},i.period=function(n){return e(t,n)},i}(1,.3),Kl=function e(t,n){function i(e){return 1-t*Math.pow(2,-10*(e=+e))*Math.sin((e+o)/n)}var o=Math.asin(1/(t=Math.max(1,t)))*(n/=Gl);return i.amplitude=function(t){return e(t,n*Gl)},i.period=function(n){return e(t,n)},i}(1,.3),Jl=function e(t,n){function i(e){return((e=2*e-1)<0?t*Math.pow(2,10*e)*Math.sin((o-e)/n):2-t*Math.pow(2,-10*e)*Math.sin((o+e)/n))/2}var o=Math.asin(1/(t=Math.max(1,t)))*(n/=Gl);return i.amplitude=function(t){return e(t,n*Gl)},i.period=function(n){return e(t,n)},i}(1,.3),Xl={time:null,delay:0,duration:250,ease:bt},Zl=function(e){var t,n;e instanceof ct?(t=e._id,e=e._name):(t=ht(),(n=Xl).time=Oe(),e=null==e?null:e+\"\");for(var i=this._groups,o=i.length,r=0;r<o;++r)for(var s,a=i[r],u=a.length,l=0;l<u;++l)(s=a[l])&&rl(s,e,t,l,a,n||Mt(s,t));return new ct(i,this._parents,e,t)};wu.prototype.interrupt=al,wu.prototype.transition=Zl;var ec=[null],tc=function(e,t){var n,i,o=e.__transition;if(o){t=null==t?null:t+\"\";for(i in o)if((n=o[i]).state>Zu&&n.name===t)return new ct([[e]],ec,t,+i)}return null},nc=function(e){return function(){return e}},ic=function(e,t,n){this.target=e,this.type=t,this.selection=n},oc=function(){vu.preventDefault(),vu.stopImmediatePropagation()},rc={name:\"drag\"},sc={name:\"space\"},ac={name:\"handle\"},uc={name:\"center\"},lc={name:\"x\",handles:[\"e\",\"w\"].map(Dt),input:function(e,t){return e&&[[e[0],t[0][1]],[e[1],t[1][1]]]},output:function(e){return e&&[e[0][0],e[1][0]]}},cc={name:\"y\",handles:[\"n\",\"s\"].map(Dt),input:function(e,t){return e&&[[t[0][0],e[0]],[t[1][0],e[1]]]},output:function(e){return e&&[e[0][1],e[1][1]]}},pc={name:\"xy\",handles:[\"n\",\"e\",\"s\",\"w\",\"nw\",\"ne\",\"se\",\"sw\"].map(Dt),input:function(e){return e},output:function(e){return e}},hc={overlay:\"crosshair\",selection:\"move\",n:\"ns-resize\",e:\"ew-resize\",s:\"ns-resize\",w:\"ew-resize\",nw:\"nwse-resize\",ne:\"nesw-resize\",se:\"nwse-resize\",sw:\"nesw-resize\"},dc={e:\"w\",w:\"e\",nw:\"ne\",ne:\"nw\",se:\"sw\",sw:\"se\"},fc={n:\"s\",s:\"n\",nw:\"sw\",ne:\"se\",se:\"ne\",sw:\"nw\"},mc={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},yc={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1},gc=function(){return Ut(pc)},vc=Math.cos,bc=Math.sin,Cc=Math.PI,Sc=Cc/2,wc=2*Cc,xc=Math.max,_c=function(){function e(e){var r,s,a,u,l,c,p=e.length,h=[],d=Object(ba.s)(p),f=[],m=[],y=m.groups=new Array(p),g=new Array(p*p);for(r=0,l=-1;++l<p;){for(s=0,c=-1;++c<p;)s+=e[l][c];h.push(s),f.push(Object(ba.s)(p)),r+=s}for(n&&d.sort(function(e,t){return n(h[e],h[t])}),i&&f.forEach(function(t,n){t.sort(function(t,o){return i(e[n][t],e[n][o])})}),r=xc(0,wc-t*p)/r,u=r?t:wc/p,s=0,l=-1;++l<p;){for(a=s,c=-1;++c<p;){var v=d[l],b=f[v][c],C=e[v][b],S=s,w=s+=C*r;g[b*p+v]={index:v,subindex:b,startAngle:S,endAngle:w,value:C}}y[v]={index:v,startAngle:a,endAngle:s,value:h[v]},s+=u}for(l=-1;++l<p;)for(c=l-1;++c<p;){var x=g[c*p+l],_=g[l*p+c];(x.value||_.value)&&m.push(x.value<_.value?{source:_,target:x}:{source:x,target:_})}return o?m.sort(o):m}var t=0,n=null,i=null,o=null;return e.padAngle=function(n){return arguments.length?(t=xc(0,n),e):t},e.sortGroups=function(t){return arguments.length?(n=t,e):n},e.sortSubgroups=function(t){return arguments.length?(i=t,e):i},e.sortChords=function(t){return arguments.length?(null==t?o=null:(o=jt(t))._=t,e):o&&o._},e},Oc=Array.prototype.slice,Ec=function(e){return function(){return e}},Ac=Math.PI,Tc=2*Ac,Rc=Tc-1e-6;qt.prototype=Ht.prototype={constructor:qt,moveTo:function(e,t){this._+=\"M\"+(this._x0=this._x1=+e)+\",\"+(this._y0=this._y1=+t)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+=\"Z\")},lineTo:function(e,t){this._+=\"L\"+(this._x1=+e)+\",\"+(this._y1=+t)},quadraticCurveTo:function(e,t,n,i){this._+=\"Q\"+ +e+\",\"+ +t+\",\"+(this._x1=+n)+\",\"+(this._y1=+i)},bezierCurveTo:function(e,t,n,i,o,r){this._+=\"C\"+ +e+\",\"+ +t+\",\"+ +n+\",\"+ +i+\",\"+(this._x1=+o)+\",\"+(this._y1=+r)},arcTo:function(e,t,n,i,o){e=+e,t=+t,n=+n,i=+i,o=+o;var r=this._x1,s=this._y1,a=n-e,u=i-t,l=r-e,c=s-t,p=l*l+c*c;if(o<0)throw new Error(\"negative radius: \"+o);if(null===this._x1)this._+=\"M\"+(this._x1=e)+\",\"+(this._y1=t);else if(p>1e-6)if(Math.abs(c*a-u*l)>1e-6&&o){var h=n-r,d=i-s,f=a*a+u*u,m=h*h+d*d,y=Math.sqrt(f),g=Math.sqrt(p),v=o*Math.tan((Ac-Math.acos((f+p-m)/(2*y*g)))/2),b=v/g,C=v/y;Math.abs(b-1)>1e-6&&(this._+=\"L\"+(e+b*l)+\",\"+(t+b*c)),this._+=\"A\"+o+\",\"+o+\",0,0,\"+ +(c*h>l*d)+\",\"+(this._x1=e+C*a)+\",\"+(this._y1=t+C*u)}else this._+=\"L\"+(this._x1=e)+\",\"+(this._y1=t);else;},arc:function(e,t,n,i,o,r){e=+e,t=+t,n=+n;var s=n*Math.cos(i),a=n*Math.sin(i),u=e+s,l=t+a,c=1^r,p=r?i-o:o-i;if(n<0)throw new Error(\"negative radius: \"+n);null===this._x1?this._+=\"M\"+u+\",\"+l:(Math.abs(this._x1-u)>1e-6||Math.abs(this._y1-l)>1e-6)&&(this._+=\"L\"+u+\",\"+l),n&&(p<0&&(p=p%Tc+Tc),p>Rc?this._+=\"A\"+n+\",\"+n+\",0,1,\"+c+\",\"+(e-s)+\",\"+(t-a)+\"A\"+n+\",\"+n+\",0,1,\"+c+\",\"+(this._x1=u)+\",\"+(this._y1=l):p>1e-6&&(this._+=\"A\"+n+\",\"+n+\",0,\"+ +(p>=Ac)+\",\"+c+\",\"+(this._x1=e+n*Math.cos(o))+\",\"+(this._y1=t+n*Math.sin(o))))},rect:function(e,t,n,i){this._+=\"M\"+(this._x0=this._x1=+e)+\",\"+(this._y0=this._y1=+t)+\"h\"+ +n+\"v\"+ +i+\"h\"+-n+\"Z\"},toString:function(){return this._}};var Fc=Ht,Ic=function(){function e(){var e,a=Oc.call(arguments),u=t.apply(this,a),l=n.apply(this,a),c=+i.apply(this,(a[0]=u,a)),p=o.apply(this,a)-Sc,h=r.apply(this,a)-Sc,d=c*vc(p),f=c*bc(p),m=+i.apply(this,(a[0]=l,a)),y=o.apply(this,a)-Sc,g=r.apply(this,a)-Sc;if(s||(s=e=Fc()),s.moveTo(d,f),s.arc(0,0,c,p,h),p===y&&h===g||(s.quadraticCurveTo(0,0,m*vc(y),m*bc(y)),s.arc(0,0,m,y,g)),s.quadraticCurveTo(0,0,d,f),s.closePath(),e)return s=null,e+\"\"||null}var t=zt,n=Wt,i=Gt,o=Yt,r=Kt,s=null;return e.radius=function(t){return arguments.length?(i=\"function\"==typeof t?t:Ec(+t),e):i},e.startAngle=function(t){return arguments.length?(o=\"function\"==typeof t?t:Ec(+t),e):o},e.endAngle=function(t){return arguments.length?(r=\"function\"==typeof t?t:Ec(+t),e):r},e.source=function(n){return arguments.length?(t=n,e):t},e.target=function(t){return arguments.length?(n=t,e):n},e.context=function(t){return arguments.length?(s=null==t?null:t,e):s},e},Mc=n(134),Pc={},Dc={},$c=34,Nc=10,Vc=13,kc=function(e){function t(e,t){var i,o,r=n(e,function(e,n){if(i)return i(e,n-1);o=e,i=t?Xt(e,t):Jt(e)});return r.columns=o||[],r}function n(e,t){function n(){if(l)return Dc;if(c)return c=!1,Pc;var t,n,i=s;if(e.charCodeAt(i)===$c){for(;s++<r&&e.charCodeAt(s)!==$c||e.charCodeAt(++s)===$c;);return(t=s)>=r?l=!0:(n=e.charCodeAt(s++))===Nc?c=!0:n===Vc&&(c=!0,e.charCodeAt(s)===Nc&&++s),e.slice(i+1,t-1).replace(/\"\"/g,'\"')}for(;s<r;){if((n=e.charCodeAt(t=s++))===Nc)c=!0;else if(n===Vc)c=!0,e.charCodeAt(s)===Nc&&++s;else if(n!==u)continue;return e.slice(i,t)}return l=!0,e.slice(i,r)}var i,o=[],r=e.length,s=0,a=0,l=r<=0,c=!1;for(e.charCodeAt(r-1)===Nc&&--r,e.charCodeAt(r-1)===Vc&&--r;(i=n())!==Dc;){for(var p=[];i!==Pc&&i!==Dc;)p.push(i),i=n();t&&null==(p=t(p,a++))||o.push(p)}return o}function i(t,n){return null==n&&(n=Zt(t)),[n.map(s).join(e)].concat(t.map(function(t){return n.map(function(e){return s(t[e])}).join(e)})).join(\"\\n\")}function o(e){return e.map(r).join(\"\\n\")}function r(t){return t.map(s).join(e)}function s(e){return null==e?\"\":a.test(e+=\"\")?'\"'+e.replace(/\"/g,'\"\"')+'\"':e}var a=new RegExp('[\"'+e+\"\\n\\r]\"),u=e.charCodeAt(0);return{parse:t,parseRows:n,format:i,formatRows:o}},Lc=kc(\",\"),Bc=Lc.parse,Qc=Lc.parseRows,Uc=Lc.format,jc=Lc.formatRows,qc=kc(\"\\t\"),Hc=qc.parse,zc=qc.parseRows,Wc=qc.format,Gc=qc.formatRows,Yc=function(e,t){function n(){var n,o,r=i.length,s=0,a=0;for(n=0;n<r;++n)o=i[n],s+=o.x,a+=o.y;for(s=s/r-e,a=a/r-t,n=0;n<r;++n)o=i[n],o.x-=s,o.y-=a}var i;return null==e&&(e=0),null==t&&(t=0),n.initialize=function(e){i=e},n.x=function(t){return arguments.length?(e=+t,n):e},n.y=function(e){return arguments.length?(t=+e,n):t},n},Kc=function(e){return function(){return e}},Jc=function(){return 1e-6*(Math.random()-.5)},Xc=function(e){var t=+this._x.call(null,e),n=+this._y.call(null,e);return en(this.cover(t,n),t,n,e)},Zc=function(e,t){if(isNaN(e=+e)||isNaN(t=+t))return this;var n=this._x0,i=this._y0,o=this._x1,r=this._y1;if(isNaN(n))o=(n=Math.floor(e))+1,r=(i=Math.floor(t))+1;else{if(!(n>e||e>o||i>t||t>r))return this;var s,a,u=o-n,l=this._root;switch(a=(t<(i+r)/2)<<1|e<(n+o)/2){case 0:do{s=new Array(4),s[a]=l,l=s}while(u*=2,o=n+u,r=i+u,e>o||t>r);break;case 1:do{s=new Array(4),s[a]=l,l=s}while(u*=2,n=o-u,r=i+u,n>e||t>r);break;case 2:do{s=new Array(4),s[a]=l,l=s}while(u*=2,o=n+u,i=r-u,e>o||i>t);break;case 3:do{s=new Array(4),s[a]=l,l=s}while(u*=2,n=o-u,i=r-u,n>e||i>t)}this._root&&this._root.length&&(this._root=l)}return this._x0=n,this._y0=i,this._x1=o,this._y1=r,this},ep=function(){var e=[];return this.visit(function(t){if(!t.length)do{e.push(t.data)}while(t=t.next)}),e},tp=function(e){return arguments.length?this.cover(+e[0][0],+e[0][1]).cover(+e[1][0],+e[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]},np=function(e,t,n,i,o){this.node=e,this.x0=t,this.y0=n,this.x1=i,this.y1=o},ip=function(e,t,n){var i,o,r,s,a,u,l,c=this._x0,p=this._y0,h=this._x1,d=this._y1,f=[],m=this._root;for(m&&f.push(new np(m,c,p,h,d)),null==n?n=1/0:(c=e-n,p=t-n,h=e+n,d=t+n,n*=n);u=f.pop();)if(!(!(m=u.node)||(o=u.x0)>h||(r=u.y0)>d||(s=u.x1)<c||(a=u.y1)<p))if(m.length){var y=(o+s)/2,g=(r+a)/2;f.push(new np(m[3],y,g,s,a),new np(m[2],o,g,y,a),new np(m[1],y,r,s,g),new np(m[0],o,r,y,g)),(l=(t>=g)<<1|e>=y)&&(u=f[f.length-1],f[f.length-1]=f[f.length-1-l],f[f.length-1-l]=u)}else{var v=e-+this._x.call(null,m.data),b=t-+this._y.call(null,m.data),C=v*v+b*b;if(C<n){var S=Math.sqrt(n=C);c=e-S,p=t-S,h=e+S,d=t+S,i=m.data}}return i},op=function(e){if(isNaN(r=+this._x.call(null,e))||isNaN(s=+this._y.call(null,e)))return this;var t,n,i,o,r,s,a,u,l,c,p,h,d=this._root,f=this._x0,m=this._y0,y=this._x1,g=this._y1;if(!d)return this;if(d.length)for(;;){if((l=r>=(a=(f+y)/2))?f=a:y=a,(c=s>=(u=(m+g)/2))?m=u:g=u,t=d,!(d=d[p=c<<1|l]))return this;if(!d.length)break;(t[p+1&3]||t[p+2&3]||t[p+3&3])&&(n=t,h=p)}for(;d.data!==e;)if(i=d,!(d=d.next))return this;return(o=d.next)&&delete d.next,i?(o?i.next=o:delete i.next,this):t?(o?t[p]=o:delete t[p],(d=t[0]||t[1]||t[2]||t[3])&&d===(t[3]||t[2]||t[1]||t[0])&&!d.length&&(n?n[h]=d:this._root=d),this):(this._root=o,this)},rp=function(){return this._root},sp=function(){var e=0;return this.visit(function(t){if(!t.length)do{++e}while(t=t.next)}),e},ap=function(e){var t,n,i,o,r,s,a=[],u=this._root;for(u&&a.push(new np(u,this._x0,this._y0,this._x1,this._y1));t=a.pop();)if(!e(u=t.node,i=t.x0,o=t.y0,r=t.x1,s=t.y1)&&u.length){var l=(i+r)/2,c=(o+s)/2;(n=u[3])&&a.push(new np(n,l,c,r,s)),(n=u[2])&&a.push(new np(n,i,c,l,s)),(n=u[1])&&a.push(new np(n,l,o,r,c)),(n=u[0])&&a.push(new np(n,i,o,l,c))}return this},up=function(e){var t,n=[],i=[];for(this._root&&n.push(new np(this._root,this._x0,this._y0,this._x1,this._y1));t=n.pop();){var o=t.node;if(o.length){var r,s=t.x0,a=t.y0,u=t.x1,l=t.y1,c=(s+u)/2,p=(a+l)/2;(r=o[0])&&n.push(new np(r,s,a,c,p)),(r=o[1])&&n.push(new np(r,c,a,u,p)),(r=o[2])&&n.push(new np(r,s,p,c,l)),(r=o[3])&&n.push(new np(r,c,p,u,l))}i.push(t)}for(;t=i.pop();)e(t.node,t.x0,t.y0,t.x1,t.y1);return this},lp=function(e){return arguments.length?(this._x=e,this):this._x},cp=function(e){return arguments.length?(this._y=e,this):this._y},pp=sn.prototype=an.prototype;pp.copy=function(){var e,t,n=new an(this._x,this._y,this._x0,this._y0,this._x1,this._y1),i=this._root;if(!i)return n;if(!i.length)return n._root=un(i),n;for(e=[{source:i,target:n._root=new Array(4)}];i=e.pop();)for(var o=0;o<4;++o)(t=i.source[o])&&(t.length?e.push({source:t,target:i.target[o]=new Array(4)}):i.target[o]=un(t));return n},pp.add=Xc,pp.addAll=tn,pp.cover=Zc,pp.data=ep,pp.extent=tp,pp.find=ip,pp.remove=op,pp.removeAll=nn,pp.root=rp,pp.size=sp,pp.visit=ap,pp.visitAfter=up,pp.x=lp,pp.y=cp;var hp=function(e){function t(){function e(e,t,n,i,o){var r=e.data,a=e.r,d=p+a;{if(!r)return t>l+d||i<l-d||n>c+d||o<c-d;if(r.index>u.index){var f=l-r.x-r.vx,m=c-r.y-r.vy,y=f*f+m*m;y<d*d&&(0===f&&(f=Jc(),y+=f*f),0===m&&(m=Jc(),y+=m*m),y=(d-(y=Math.sqrt(y)))/y*s,u.vx+=(f*=y)*(d=(a*=a)/(h+a)),u.vy+=(m*=y)*d,r.vx-=f*(d=1-d),r.vy-=m*d)}}}for(var t,i,u,l,c,p,h,d=o.length,f=0;f<a;++f)for(i=sn(o,ln,cn).visitAfter(n),t=0;t<d;++t)u=o[t],p=r[u.index],h=p*p,l=u.x+u.vx,c=u.y+u.vy,i.visit(e)}function n(e){if(e.data)return e.r=r[e.data.index];for(var t=e.r=0;t<4;++t)e[t]&&e[t].r>e.r&&(e.r=e[t].r)}function i(){if(o){var t,n,i=o.length;for(r=new Array(i),t=0;t<i;++t)n=o[t],r[n.index]=+e(n,t,o)}}var o,r,s=1,a=1;return\"function\"!=typeof e&&(e=Kc(null==e?1:+e)),t.initialize=function(e){o=e,i()},t.iterations=function(e){return arguments.length?(a=+e,t):a},t.strength=function(e){return arguments.length?(s=+e,t):s},t.radius=function(n){return arguments.length?(e=\"function\"==typeof n?n:Kc(+n),i(),t):e},t},dp=function(e){function t(e){return 1/Math.min(l[e.source.index],l[e.target.index])}function n(t){for(var n=0,i=e.length;n<f;++n)for(var o,r,u,l,p,h,d,m=0;m<i;++m)o=e[m],r=o.source,u=o.target,l=u.x+u.vx-r.x-r.vx||Jc(),p=u.y+u.vy-r.y-r.vy||Jc(),h=Math.sqrt(l*l+p*p),h=(h-a[m])/h*t*s[m],l*=h,p*=h,u.vx-=l*(d=c[m]),u.vy-=p*d,r.vx+=l*(d=1-d),r.vy+=p*d}function i(){if(u){var t,n,i=u.length,h=e.length,d=Object(Mc.c)(u,p);for(t=0,l=new Array(i);t<h;++t)n=e[t],n.index=t,\"object\"!=typeof n.source&&(n.source=hn(d,n.source)),\"object\"!=typeof n.target&&(n.target=hn(d,n.target)),l[n.source.index]=(l[n.source.index]||0)+1,l[n.target.index]=(l[n.target.index]||0)+1;for(t=0,c=new Array(h);t<h;++t)n=e[t],c[t]=l[n.source.index]/(l[n.source.index]+l[n.target.index]);s=new Array(h),o(),a=new Array(h),r()}}function o(){if(u)for(var t=0,n=e.length;t<n;++t)s[t]=+h(e[t],t,e)}function r(){if(u)for(var t=0,n=e.length;t<n;++t)a[t]=+d(e[t],t,e)}var s,a,u,l,c,p=pn,h=t,d=Kc(30),f=1;return null==e&&(e=[]),n.initialize=function(e){u=e,i()},n.links=function(t){return arguments.length?(e=t,i(),n):e},n.id=function(e){return arguments.length?(p=e,n):p},n.iterations=function(e){return arguments.length?(f=+e,n):f},n.strength=function(e){return arguments.length?(h=\"function\"==typeof e?e:Kc(+e),o(),n):h},n.distance=function(e){return arguments.length?(d=\"function\"==typeof e?e:Kc(+e),r(),n):d},n},fp=10,mp=Math.PI*(3-Math.sqrt(5)),yp=function(e){function t(){n(),d.call(\"tick\",r),s<a&&(h.stop(),d.call(\"end\",r))}function n(){var t,n,i=e.length;for(s+=(l-s)*u,p.each(function(e){e(s)}),t=0;t<i;++t)n=e[t],null==n.fx?n.x+=n.vx*=c:(n.x=n.fx,n.vx=0),null==n.fy?n.y+=n.vy*=c:(n.y=n.fy,n.vy=0)}function i(){for(var t,n=0,i=e.length;n<i;++n){if(t=e[n],t.index=n,isNaN(t.x)||isNaN(t.y)){var o=fp*Math.sqrt(n),r=n*mp;t.x=o*Math.cos(r),t.y=o*Math.sin(r)}(isNaN(t.vx)||isNaN(t.vy))&&(t.vx=t.vy=0)}}function o(t){return t.initialize&&t.initialize(e),t}var r,s=1,a=.001,u=1-Math.pow(a,1/300),l=0,c=.6,p=Object(Mc.c)(),h=Te(t),d=Ta(\"tick\",\"end\");return null==e&&(e=[]),i(),r={tick:n,restart:function(){return h.restart(t),r},stop:function(){return h.stop(),r},nodes:function(t){return arguments.length?(e=t,i(),p.each(o),r):e},alpha:function(e){return arguments.length?(s=+e,r):s},alphaMin:function(e){return arguments.length?(a=+e,r):a},alphaDecay:function(e){return arguments.length?(u=+e,r):+u},alphaTarget:function(e){return arguments.length?(l=+e,r):l},velocityDecay:function(e){return arguments.length?(c=1-e,r):1-c},force:function(e,t){return arguments.length>1?(null==t?p.remove(e):p.set(e,o(t)),r):p.get(e)},find:function(t,n,i){var o,r,s,a,u,l=0,c=e.length;for(null==i?i=1/0:i*=i,l=0;l<c;++l)a=e[l],o=t-a.x,r=n-a.y,(s=o*o+r*r)<i&&(u=a,i=s);return u},on:function(e,t){return arguments.length>1?(d.on(e,t),r):d.on(e)}}},gp=function(){function e(e){var t,a=o.length,u=sn(o,dn,fn).visitAfter(n);for(s=e,t=0;t<a;++t)r=o[t],u.visit(i)}function t(){if(o){var e,t,n=o.length;for(a=new Array(n),e=0;e<n;++e)t=o[e],a[t.index]=+u(t,e,o)}}function n(e){var t,n,i,o,r,s=0,u=0;if(e.length){for(i=o=r=0;r<4;++r)(t=e[r])&&(n=Math.abs(t.value))&&(s+=t.value,u+=n,i+=n*t.x,o+=n*t.y);e.x=i/u,e.y=o/u}else{t=e,t.x=t.data.x,t.y=t.data.y;do{s+=a[t.data.index]}while(t=t.next)}e.value=s}function i(e,t,n,i){if(!e.value)return!0;var o=e.x-r.x,u=e.y-r.y,h=i-t,d=o*o+u*u;if(h*h/p<d)return d<c&&(0===o&&(o=Jc(),d+=o*o),0===u&&(u=Jc(),d+=u*u),d<l&&(d=Math.sqrt(l*d)),r.vx+=o*e.value*s/d,r.vy+=u*e.value*s/d),!0;if(!(e.length||d>=c)){(e.data!==r||e.next)&&(0===o&&(o=Jc(),d+=o*o),0===u&&(u=Jc(),d+=u*u),d<l&&(d=Math.sqrt(l*d)));do{e.data!==r&&(h=a[e.data.index]*s/d,r.vx+=o*h,r.vy+=u*h)}while(e=e.next)}}var o,r,s,a,u=Kc(-30),l=1,c=1/0,p=.81;return e.initialize=function(e){o=e,t()},e.strength=function(n){return arguments.length?(u=\"function\"==typeof n?n:Kc(+n),t(),e):u},e.distanceMin=function(t){return arguments.length?(l=t*t,e):Math.sqrt(l)},e.distanceMax=function(t){return arguments.length?(c=t*t,e):Math.sqrt(c)},e.theta=function(t){return arguments.length?(p=t*t,e):Math.sqrt(p)},e},vp=function(e,t,n){function i(e){for(var i=0,o=r.length;i<o;++i){var u=r[i],l=u.x-t||1e-6,c=u.y-n||1e-6,p=Math.sqrt(l*l+c*c),h=(a[i]-p)*s[i]*e/p;u.vx+=l*h,u.vy+=c*h}}function o(){if(r){var t,n=r.length;for(s=new Array(n),a=new Array(n),t=0;t<n;++t)a[t]=+e(r[t],t,r),s[t]=isNaN(a[t])?0:+u(r[t],t,r)}}var r,s,a,u=Kc(.1);return\"function\"!=typeof e&&(e=Kc(+e)),null==t&&(t=0),null==n&&(n=0),i.initialize=function(e){r=e,o()},i.strength=function(e){return arguments.length?(u=\"function\"==typeof e?e:Kc(+e),o(),i):u},i.radius=function(t){return arguments.length?(e=\"function\"==typeof t?t:Kc(+t),o(),i):e},i.x=function(e){return arguments.length?(t=+e,i):t},i.y=function(e){return arguments.length?(n=+e,i):n},i},bp=function(e){function t(e){for(var t,n=0,s=i.length;n<s;++n)t=i[n],t.vx+=(r[n]-t.x)*o[n]*e}function n(){if(i){var t,n=i.length;for(o=new Array(n),r=new Array(n),t=0;t<n;++t)o[t]=isNaN(r[t]=+e(i[t],t,i))?0:+s(i[t],t,i)}}var i,o,r,s=Kc(.1);return\"function\"!=typeof e&&(e=Kc(null==e?0:+e)),t.initialize=function(e){i=e,n()},t.strength=function(e){return arguments.length?(s=\"function\"==typeof e?e:Kc(+e),n(),t):s},t.x=function(i){return arguments.length?(e=\"function\"==typeof i?i:Kc(+i),n(),t):e},t},Cp=function(e){function t(e){for(var t,n=0,s=i.length;n<s;++n)t=i[n],t.vy+=(r[n]-t.y)*o[n]*e}function n(){if(i){var t,n=i.length;for(o=new Array(n),r=new Array(n),t=0;t<n;++t)o[t]=isNaN(r[t]=+e(i[t],t,i))?0:+s(i[t],t,i)}}var i,o,r,s=Kc(.1);return\"function\"!=typeof e&&(e=Kc(null==e?0:+e)),t.initialize=function(e){i=e,n()},t.strength=function(e){return arguments.length?(s=\"function\"==typeof e?e:Kc(+e),n(),t):s},t.y=function(i){return arguments.length?(e=\"function\"==typeof i?i:Kc(+i),n(),t):e},t},Sp=n(220),wp=function(){return new mn};mn.prototype={constructor:mn,reset:function(){this.s=this.t=0},add:function(e){yn(eh,e,this.t),yn(this,eh.s,this.s),this.s?this.t+=eh.t:this.s=eh.t},valueOf:function(){return this.s}};var xp,_p,Op,Ep,Ap,Tp,Rp,Fp,Ip,Mp,Pp,Dp,$p,Np,Vp,kp,Lp,Bp,Qp,Up,jp,qp,Hp,zp,Wp,Gp,Yp,Kp,Jp,Xp,Zp,eh=new mn,th=1e-6,nh=Math.PI,ih=nh/2,oh=nh/4,rh=2*nh,sh=180/nh,ah=nh/180,uh=Math.abs,lh=Math.atan,ch=Math.atan2,ph=Math.cos,hh=Math.ceil,dh=Math.exp,fh=(Math.floor,Math.log),mh=Math.pow,yh=Math.sin,gh=Math.sign||function(e){return e>0?1:e<0?-1:0},vh=Math.sqrt,bh=Math.tan,Ch={Feature:function(e,t){Sn(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,i=-1,o=n.length;++i<o;)Sn(n[i].geometry,t)}},Sh={Sphere:function(e,t){t.sphere()},Point:function(e,t){e=e.coordinates,t.point(e[0],e[1],e[2])},MultiPoint:function(e,t){for(var n=e.coordinates,i=-1,o=n.length;++i<o;)e=n[i],t.point(e[0],e[1],e[2])},LineString:function(e,t){wn(e.coordinates,t,0)},MultiLineString:function(e,t){for(var n=e.coordinates,i=-1,o=n.length;++i<o;)wn(n[i],t,0)},Polygon:function(e,t){xn(e.coordinates,t)},MultiPolygon:function(e,t){for(var n=e.coordinates,i=-1,o=n.length;++i<o;)xn(n[i],t)},GeometryCollection:function(e,t){for(var n=e.geometries,i=-1,o=n.length;++i<o;)Sn(n[i],t)}},wh=function(e,t){e&&Ch.hasOwnProperty(e.type)?Ch[e.type](e,t):Sn(e,t)},xh=wp(),_h=wp(),Oh={point:Cn,lineStart:Cn,lineEnd:Cn,polygonStart:function(){xh.reset(),Oh.lineStart=_n,Oh.lineEnd=On},polygonEnd:function(){var e=+xh;_h.add(e<0?rh+e:e),this.lineStart=this.lineEnd=this.point=Cn},sphere:function(){_h.add(rh)}},Eh=function(e){return _h.reset(),wh(e,Oh),2*_h},Ah=wp(),Th={point:$n,lineStart:Vn,lineEnd:kn,polygonStart:function(){Th.point=Ln,Th.lineStart=Bn,Th.lineEnd=Qn,Ah.reset(),Oh.polygonStart()},polygonEnd:function(){Oh.polygonEnd(),Th.point=$n,Th.lineStart=Vn,Th.lineEnd=kn,xh<0?(Tp=-(Fp=180),Rp=-(Ip=90)):Ah>th?Ip=90:Ah<-th&&(Rp=-90),Vp[0]=Tp,Vp[1]=Fp}},Rh=function(e){var t,n,i,o,r,s,a;if(Ip=Fp=-(Tp=Rp=1/0),Np=[],wh(e,Th),n=Np.length){for(Np.sort(jn),t=1,i=Np[0],r=[i];t<n;++t)o=Np[t],qn(i,o[0])||qn(i,o[1])?(Un(i[0],o[1])>Un(i[0],i[1])&&(i[1]=o[1]),Un(o[0],i[1])>Un(i[0],i[1])&&(i[0]=o[0])):r.push(i=o);for(s=-1/0,n=r.length-1,t=0,i=r[n];t<=n;i=o,++t)o=r[t],(a=Un(i[1],o[0]))>s&&(s=a,Tp=o[0],Fp=i[1])}return Np=Vp=null,Tp===1/0||Rp===1/0?[[NaN,NaN],[NaN,NaN]]:[[Tp,Rp],[Fp,Ip]]},Fh={sphere:Cn,point:Hn,lineStart:Wn,lineEnd:Kn,polygonStart:function(){Fh.lineStart=Jn,Fh.lineEnd=Xn},polygonEnd:function(){Fh.lineStart=Wn,Fh.lineEnd=Kn}},Ih=function(e){kp=Lp=Bp=Qp=Up=jp=qp=Hp=zp=Wp=Gp=0,wh(e,Fh);var t=zp,n=Wp,i=Gp,o=t*t+n*n+i*i;return o<1e-12&&(t=jp,n=qp,i=Hp,Lp<th&&(t=Bp,n=Qp,i=Up),(o=t*t+n*n+i*i)<1e-12)?[NaN,NaN]:[ch(n,t)*sh,vn(i/vh(o))*sh]},Mh=function(e){return function(){return e}},Ph=function(e,t){function n(n,i){return n=e(n,i),t(n[0],n[1])}return e.invert&&t.invert&&(n.invert=function(n,i){return(n=t.invert(n,i))&&e.invert(n[0],n[1])}),n};ti.invert=ti;var Dh,$h,Nh,Vh,kh,Lh,Bh,Qh,Uh,jh,qh,Hh=function(e){function t(t){return t=e(t[0]*ah,t[1]*ah),t[0]*=sh,t[1]*=sh,t}return e=ni(e[0]*ah,e[1]*ah,e.length>2?e[2]*ah:0),t.invert=function(t){return t=e.invert(t[0]*ah,t[1]*ah),t[0]*=sh,t[1]*=sh,t},t},zh=function(){function e(e,t){n.push(e=i(e,t)),e[0]*=sh,e[1]*=sh}function t(){var e=o.apply(this,arguments),t=r.apply(this,arguments)*ah,u=s.apply(this,arguments)*ah;return n=[],i=ni(-e[0]*ah,-e[1]*ah,0).invert,si(a,t,u,1),e={type:\"Polygon\",coordinates:[n]},n=i=null,e}var n,i,o=Mh([0,0]),r=Mh(90),s=Mh(6),a={point:e};return t.center=function(e){return arguments.length?(o=\"function\"==typeof e?e:Mh([+e[0],+e[1]]),t):o},t.radius=function(e){return arguments.length?(r=\"function\"==typeof e?e:Mh(+e),t):r},t.precision=function(e){return arguments.length?(s=\"function\"==typeof e?e:Mh(+e),t):s},t},Wh=function(){var e,t=[];return{point:function(t,n){e.push([t,n])},lineStart:function(){t.push(e=[])},lineEnd:Cn,rejoin:function(){t.length>1&&t.push(t.pop().concat(t.shift()))},result:function(){var n=t;return t=[],e=null,n}}},Gh=function(e,t){return uh(e[0]-t[0])<th&&uh(e[1]-t[1])<th},Yh=function(e,t,n,i,o){var r,s,a=[],u=[];if(e.forEach(function(e){if(!((t=e.length-1)<=0)){var t,n,i=e[0],s=e[t];if(Gh(i,s)){for(o.lineStart(),r=0;r<t;++r)o.point((i=e[r])[0],i[1]);return void o.lineEnd()}a.push(n=new ui(i,e,null,!0)),u.push(n.o=new ui(i,null,n,!1)),a.push(n=new ui(s,e,null,!1)),u.push(n.o=new ui(s,null,n,!0))}}),a.length){for(u.sort(t),li(a),li(u),r=0,s=u.length;r<s;++r)u[r].e=n=!n;for(var l,c,p=a[0];;){for(var h=p,d=!0;h.v;)if((h=h.n)===p)return;l=h.z,o.lineStart();do{if(h.v=h.o.v=!0,h.e){if(d)for(r=0,s=l.length;r<s;++r)o.point((c=l[r])[0],c[1]);else i(h.x,h.n.x,1,o);h=h.n}else{if(d)for(l=h.p.z,r=l.length-1;r>=0;--r)o.point((c=l[r])[0],c[1]);else i(h.x,h.p.x,-1,o);h=h.p}h=h.o,l=h.z,d=!d}while(!h.v);o.lineEnd()}}},Kh=wp(),Jh=function(e,t){var n=t[0],i=t[1],o=[yh(n),-ph(n),0],r=0,s=0;Kh.reset();for(var a=0,u=e.length;a<u;++a)if(c=(l=e[a]).length)for(var l,c,p=l[c-1],h=p[0],d=p[1]/2+oh,f=yh(d),m=ph(d),y=0;y<c;++y,h=v,f=C,m=S,p=g){var g=l[y],v=g[0],b=g[1]/2+oh,C=yh(b),S=ph(b),w=v-h,x=w>=0?1:-1,_=x*w,O=_>nh,E=f*C;if(Kh.add(ch(E*x*yh(_),m*S+E*ph(_))),r+=O?w+x*rh:w,O^h>=n^v>=n){var A=In(Rn(p),Rn(g));Dn(A);var T=In(o,A);Dn(T);var R=(O^w>=0?-1:1)*vn(T[2]);(i>R||i===R&&(A[0]||A[1]))&&(s+=O^w>=0?1:-1)}}return(r<-th||r<th&&Kh<-th)^1&s},Xh=function(e,t,n,i){return function(o){function r(t,n){e(t,n)&&o.point(t,n)}function s(e,t){m.point(e,t)}function a(){b.point=s,m.lineStart()}function u(){b.point=r,m.lineEnd()}function l(e,t){f.push([e,t]),g.point(e,t)}function c(){g.lineStart(),f=[]}function p(){l(f[0][0],f[0][1]),g.lineEnd();var e,t,n,i,r=g.clean(),s=y.result(),a=s.length;if(f.pop(),h.push(f),f=null,a)if(1&r){if(n=s[0],(t=n.length-1)>0){for(v||(o.polygonStart(),v=!0),o.lineStart(),e=0;e<t;++e)o.point((i=n[e])[0],i[1]);o.lineEnd()}}else a>1&&2&r&&s.push(s.pop().concat(s.shift())),d.push(s.filter(ci))}var h,d,f,m=t(o),y=Wh(),g=t(y),v=!1,b={point:r,lineStart:a,lineEnd:u,polygonStart:function(){b.point=l,b.lineStart=c,b.lineEnd=p,d=[],h=[]},polygonEnd:function(){b.point=r,b.lineStart=a,b.lineEnd=u,d=Object(ba.n)(d);var e=Jh(h,i);d.length?(v||(o.polygonStart(),v=!0),Yh(d,pi,e,n,o)):e&&(v||(o.polygonStart(),v=!0),o.lineStart(),n(null,null,1,o),o.lineEnd()),v&&(o.polygonEnd(),v=!1),d=h=null},sphere:function(){o.polygonStart(),o.lineStart(),n(null,null,1,o),o.lineEnd(),o.polygonEnd()}};return b}},Zh=Xh(function(){return!0},hi,fi,[-nh,-ih]),ed=function(e){function t(t,n,i,o){si(o,e,a,i,t,n)}function n(e,t){return ph(e)*ph(t)>s}function i(e){var t,i,s,a,c;return{lineStart:function(){a=s=!1,c=1},point:function(p,h){var d,f=[p,h],m=n(p,h),y=u?m?0:r(p,h):m?r(p+(p<0?nh:-nh),h):0;if(!t&&(a=s=m)&&e.lineStart(),m!==s&&(!(d=o(t,f))||Gh(t,d)||Gh(f,d))&&(f[0]+=th,f[1]+=th,m=n(f[0],f[1])),m!==s)c=0,m?(e.lineStart(),d=o(f,t),e.point(d[0],d[1])):(d=o(t,f),e.point(d[0],d[1]),e.lineEnd()),t=d;else if(l&&t&&u^m){var g;y&i||!(g=o(f,t,!0))||(c=0,u?(e.lineStart(),e.point(g[0][0],g[0][1]),e.point(g[1][0],g[1][1]),e.lineEnd()):(e.point(g[1][0],g[1][1]),e.lineEnd(),e.lineStart(),e.point(g[0][0],g[0][1])))}!m||t&&Gh(t,f)||e.point(f[0],f[1]),t=f,s=m,i=y},lineEnd:function(){s&&e.lineEnd(),t=null},clean:function(){return c|(a&&s)<<1}}}function o(e,t,n){var i=Rn(e),o=Rn(t),r=[1,0,0],a=In(i,o),u=Fn(a,a),l=a[0],c=u-l*l;if(!c)return!n&&e;var p=s*u/c,h=-s*l/c,d=In(r,a),f=Pn(r,p);Mn(f,Pn(a,h));var m=d,y=Fn(f,m),g=Fn(m,m),v=y*y-g*(Fn(f,f)-1);if(!(v<0)){var b=vh(v),C=Pn(m,(-y-b)/g);if(Mn(C,f),C=Tn(C),!n)return C;var S,w=e[0],x=t[0],_=e[1],O=t[1];x<w&&(S=w,w=x,x=S);var E=x-w,A=uh(E-nh)<th,T=A||E<th;if(!A&&O<_&&(S=_,_=O,O=S),T?A?_+O>0^C[1]<(uh(C[0]-w)<th?_:O):_<=C[1]&&C[1]<=O:E>nh^(w<=C[0]&&C[0]<=x)){var R=Pn(m,(-y+b)/g);return Mn(R,f),[C,Tn(R)]}}}function r(t,n){var i=u?e:nh-e,o=0;return t<-i?o|=1:t>i&&(o|=2),n<-i?o|=4:n>i&&(o|=8),o}var s=ph(e),a=6*ah,u=s>0,l=uh(s)>th;return Xh(n,i,t,u?[0,-e]:[-nh,e-nh])},td=function(e,t,n,i,o,r){var s,a=e[0],u=e[1],l=t[0],c=t[1],p=0,h=1,d=l-a,f=c-u;if(s=n-a,d||!(s>0)){if(s/=d,d<0){if(s<p)return;s<h&&(h=s)}else if(d>0){if(s>h)return;s>p&&(p=s)}if(s=o-a,d||!(s<0)){if(s/=d,d<0){if(s>h)return;s>p&&(p=s)}else if(d>0){if(s<p)return;s<h&&(h=s)}if(s=i-u,f||!(s>0)){if(s/=f,f<0){if(s<p)return;s<h&&(h=s)}else if(f>0){if(s>h)return;s>p&&(p=s)}if(s=r-u,f||!(s<0)){if(s/=f,f<0){if(s>h)return;s>p&&(p=s)}else if(f>0){if(s<p)return;s<h&&(h=s)}return p>0&&(e[0]=a+p*d,e[1]=u+p*f),h<1&&(t[0]=a+h*d,t[1]=u+h*f),!0}}}}},nd=1e9,id=-nd,od=function(){var e,t,n,i=0,o=0,r=960,s=500;return n={stream:function(n){return e&&t===n?e:e=mi(i,o,r,s)(t=n)},extent:function(a){return arguments.length?(i=+a[0][0],o=+a[0][1],r=+a[1][0],s=+a[1][1],e=t=null,n):[[i,o],[r,s]]}}},rd=wp(),sd={sphere:Cn,point:Cn,lineStart:yi,lineEnd:Cn,polygonStart:Cn,polygonEnd:Cn},ad=function(e){return rd.reset(),wh(e,sd),+rd},ud=[null,null],ld={type:\"LineString\",coordinates:ud},cd=function(e,t){return ud[0]=e,ud[1]=t,ad(ld)},pd={Feature:function(e,t){return Ci(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,i=-1,o=n.length;++i<o;)if(Ci(n[i].geometry,t))return!0;return!1}},hd={Sphere:function(){return!0},Point:function(e,t){return Si(e.coordinates,t)},MultiPoint:function(e,t){for(var n=e.coordinates,i=-1,o=n.length;++i<o;)if(Si(n[i],t))return!0;return!1},LineString:function(e,t){return wi(e.coordinates,t)},MultiLineString:function(e,t){for(var n=e.coordinates,i=-1,o=n.length;++i<o;)if(wi(n[i],t))return!0;return!1},Polygon:function(e,t){return xi(e.coordinates,t)},MultiPolygon:function(e,t){for(var n=e.coordinates,i=-1,o=n.length;++i<o;)if(xi(n[i],t))return!0;return!1},GeometryCollection:function(e,t){for(var n=e.geometries,i=-1,o=n.length;++i<o;)if(Ci(n[i],t))return!0;return!1}},dd=function(e,t){return(e&&pd.hasOwnProperty(e.type)?pd[e.type]:Ci)(e,t)},fd=function(e,t){var n=e[0]*ah,i=e[1]*ah,o=t[0]*ah,r=t[1]*ah,s=ph(i),a=yh(i),u=ph(r),l=yh(r),c=s*ph(n),p=s*yh(n),h=u*ph(o),d=u*yh(o),f=2*vn(vh(bn(r-i)+s*u*bn(o-n))),m=yh(f),y=f?function(e){var t=yh(e*=f)/m,n=yh(f-e)/m,i=n*c+t*h,o=n*p+t*d,r=n*a+t*l;return[ch(o,i)*sh,ch(r,vh(i*i+o*o))*sh]}:function(){return[n*sh,i*sh]};return y.distance=f,y},md=function(e){return e},yd=wp(),gd=wp(),vd={point:Cn,lineStart:Cn,lineEnd:Cn,polygonStart:function(){vd.lineStart=Fi,vd.lineEnd=Pi},polygonEnd:function(){vd.lineStart=vd.lineEnd=vd.point=Cn,yd.add(uh(gd)),gd.reset()},result:function(){var e=yd/2;return yd.reset(),e}},bd=vd,Cd=1/0,Sd=Cd,wd=-Cd,xd=wd,_d={point:Di,lineStart:Cn,lineEnd:Cn,polygonStart:Cn,polygonEnd:Cn,result:function(){var e=[[Cd,Sd],[wd,xd]];return wd=xd=-(Sd=Cd=1/0),e}},Od=_d,Ed=0,Ad=0,Td=0,Rd=0,Fd=0,Id=0,Md=0,Pd=0,Dd=0,$d={point:$i,lineStart:Ni,lineEnd:Li,polygonStart:function(){$d.lineStart=Bi,$d.lineEnd=Qi},polygonEnd:function(){$d.point=$i,$d.lineStart=Ni,$d.lineEnd=Li},result:function(){var e=Dd?[Md/Dd,Pd/Dd]:Id?[Rd/Id,Fd/Id]:Td?[Ed/Td,Ad/Td]:[NaN,NaN];return Ed=Ad=Td=Rd=Fd=Id=Md=Pd=Dd=0,e}},Nd=$d;qi.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,rh)}},result:Cn};var Vd,kd,Ld,Bd,Qd,Ud=wp(),jd={point:Cn,lineStart:function(){jd.point=Hi},lineEnd:function(){Vd&&zi(kd,Ld),jd.point=Cn},polygonStart:function(){Vd=!0},polygonEnd:function(){Vd=null},result:function(){var e=+Ud;return Ud.reset(),e}},qd=jd;Wi.prototype={_radius:4.5,_circle:Gi(4.5),pointRadius:function(e){return(e=+e)!==this._radius&&(this._radius=e,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push(\"Z\"),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._string.push(\"M\",e,\",\",t),this._point=1;break;case 1:this._string.push(\"L\",e,\",\",t);break;default:null==this._circle&&(this._circle=Gi(this._radius)),this._string.push(\"M\",e,\",\",t,this._circle)}},result:function(){if(this._string.length){var e=this._string.join(\"\");return this._string=[],e}return null}};var Hd=function(e,t){function n(e){return e&&(\"function\"==typeof r&&o.pointRadius(+r.apply(this,arguments)),wh(e,i(o))),o.result()}var i,o,r=4.5;return n.area=function(e){return wh(e,i(bd)),bd.result()},n.measure=function(e){return wh(e,i(qd)),qd.result()},n.bounds=function(e){return wh(e,i(Od)),Od.result()},n.centroid=function(e){return wh(e,i(Nd)),Nd.result()},n.projection=function(t){return arguments.length?(i=null==t?(e=null,md):(e=t).stream,n):e},n.context=function(e){return arguments.length?(o=null==e?(t=null,new Wi):new qi(t=e),\"function\"!=typeof r&&o.pointRadius(r),n):t},n.pointRadius=function(e){return arguments.length?(r=\"function\"==typeof e?e:(o.pointRadius(+e),+e),n):r},n.projection(e).context(t)},zd=function(e){return{stream:Yi(e)}};Ki.prototype={constructor:Ki,point:function(e,t){this.stream.point(e,t)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};var Wd=16,Gd=ph(30*ah),Yd=function(e,t){return+t?io(e,t):no(e)},Kd=Yi({point:function(e,t){this.stream.point(e*ah,t*ah)}}),Jd=function(){return ao(lo).scale(155.424).center([0,33.6442])},Xd=function(){return Jd().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])},Zd=function(){function e(e){var t=e[0],n=e[1];return a=null,o.point(t,n),a||(r.point(t,n),a)||(s.point(t,n),a)}function t(){return n=i=null,e}var n,i,o,r,s,a,u=Xd(),l=Jd().rotate([154,0]).center([-2,58.5]).parallels([55,65]),c=Jd().rotate([157,0]).center([-3,19.9]).parallels([8,18]),p={point:function(e,t){a=[e,t]}};return e.invert=function(e){var t=u.scale(),n=u.translate(),i=(e[0]-n[0])/t,o=(e[1]-n[1])/t;return(o>=.12&&o<.234&&i>=-.425&&i<-.214?l:o>=.166&&o<.234&&i>=-.214&&i<-.115?c:u).invert(e)},e.stream=function(e){return n&&i===e?n:n=co([u.stream(i=e),l.stream(e),c.stream(e)])},e.precision=function(e){return arguments.length?(u.precision(e),l.precision(e),c.precision(e),t()):u.precision()},e.scale=function(t){return arguments.length?(u.scale(t),l.scale(.35*t),c.scale(t),e.translate(u.translate())):u.scale()},e.translate=function(e){if(!arguments.length)return u.translate();var n=u.scale(),i=+e[0],a=+e[1];return o=u.translate(e).clipExtent([[i-.455*n,a-.238*n],[i+.455*n,a+.238*n]]).stream(p),r=l.translate([i-.307*n,a+.201*n]).clipExtent([[i-.425*n+th,a+.12*n+th],[i-.214*n-th,a+.234*n-th]]).stream(p),s=c.translate([i-.205*n,a+.212*n]).clipExtent([[i-.214*n+th,a+.166*n+th],[i-.115*n-th,a+.234*n-th]]).stream(p),t()},e.fitExtent=function(t,n){return Xi(e,t,n)},e.fitSize=function(t,n){return Zi(e,t,n)},e.fitWidth=function(t,n){return eo(e,t,n)},e.fitHeight=function(t,n){return to(e,t,n)},e.scale(1070)},ef=po(function(e){return vh(2/(1+e))});ef.invert=ho(function(e){return 2*vn(e/2)});var tf=function(){return ro(ef).scale(124.75).clipAngle(179.999)},nf=po(function(e){return(e=gn(e))&&e/yh(e)});nf.invert=ho(function(e){return e});var of=function(){return ro(nf).scale(79.4188).clipAngle(179.999)};fo.invert=function(e,t){return[e,2*lh(dh(t))-ih]};var rf=function(){return mo(fo).scale(961/rh)},sf=function(){return ao(go).scale(109.5).parallels([30,30])};vo.invert=vo;var af=function(){return ro(vo).scale(152.63)},uf=function(){return ao(bo).scale(131.154).center([0,13.9389])};Co.invert=ho(lh);var lf=function(){return ro(Co).scale(144.049).clipAngle(60)},cf=function(){function e(){return o=r=null,s}var t,n,i,o,r,s,a=1,u=0,l=0,c=1,p=1,h=md,d=null,f=md;return s={stream:function(e){return o&&r===e?o:o=h(f(r=e))},postclip:function(o){return arguments.length?(f=o,d=t=n=i=null,e()):f},clipExtent:function(o){return arguments.length?(f=null==o?(d=t=n=i=null,md):mi(d=+o[0][0],t=+o[0][1],n=+o[1][0],i=+o[1][1]),e()):null==d?null:[[d,t],[n,i]]},scale:function(t){return arguments.length?(h=So((a=+t)*c,a*p,u,l),e()):a},translate:function(t){return arguments.length?(h=So(a*c,a*p,u=+t[0],l=+t[1]),e()):[u,l]},reflectX:function(t){return arguments.length?(h=So(a*(c=t?-1:1),a*p,u,l),e()):c<0},reflectY:function(t){return arguments.length?(h=So(a*c,a*(p=t?-1:1),u,l),e()):p<0},fitExtent:function(e,t){return Xi(s,e,t)},fitSize:function(e,t){return Zi(s,e,t)},fitWidth:function(e,t){return eo(s,e,t)},fitHeight:function(e,t){return to(s,e,t)}}};wo.invert=function(e,t){var n,i=t,o=25;do{var r=i*i,s=r*r;i-=n=(i*(1.007226+r*(.015085+s*(.028874*r-.044475-.005916*s)))-t)/(1.007226+r*(.045255+s*(.259866*r-.311325-.005916*11*s)))}while(uh(n)>th&&--o>0);return[e/(.8707+(r=i*i)*(r*(r*r*r*(.003971-.001529*r)-.013791)-.131979)),i]};var pf=function(){return ro(wo).scale(175.295)};xo.invert=ho(vn);var hf=function(){return ro(xo).scale(249.5).clipAngle(90+th)};_o.invert=ho(function(e){return 2*lh(e)});var df=function(){return ro(_o).scale(250).clipAngle(142)};Oo.invert=function(e,t){return[-t,2*lh(dh(e))-ih]};var ff=function(){var e=mo(Oo),t=e.center,n=e.rotate;return e.center=function(e){return arguments.length?t([-e[1],e[0]]):(e=t(),[e[1],-e[0]])},e.rotate=function(e){return arguments.length?n([e[0],e[1],e.length>2?e[2]+90:90]):(e=n(),[e[0],e[1],e[2]-90])},n([0,0,90]).scale(159.155)},mf=function(){function e(e){var r,s=0;e.eachAfter(function(e){var n=e.children;n?(e.x=Ao(n),e.y=Ro(n)):(e.x=r?s+=t(e,r):0,e.y=0,r=e)});var a=Io(e),u=Mo(e),l=a.x-t(a,u)/2,c=u.x+t(u,a)/2;return e.eachAfter(o?function(t){t.x=(t.x-e.x)*n,t.y=(e.y-t.y)*i}:function(t){t.x=(t.x-l)/(c-l)*n,t.y=(1-(e.y?t.y/e.y:1))*i})}var t=Eo,n=1,i=1,o=!1;return e.separation=function(n){return arguments.length?(t=n,e):t},e.size=function(t){return arguments.length?(o=!1,n=+t[0],i=+t[1],e):o?null:[n,i]},e.nodeSize=function(t){return arguments.length?(o=!0,n=+t[0],i=+t[1],e):o?[n,i]:null},e},yf=function(){return this.eachAfter(Po)},gf=function(e){var t,n,i,o,r=this,s=[r];do{for(t=s.reverse(),s=[];r=t.pop();)if(e(r),n=r.children)for(i=0,o=n.length;i<o;++i)s.push(n[i])}while(s.length);return this},vf=function(e){for(var t,n,i=this,o=[i];i=o.pop();)if(e(i),t=i.children)for(n=t.length-1;n>=0;--n)o.push(t[n]);return this},bf=function(e){for(var t,n,i,o=this,r=[o],s=[];o=r.pop();)if(s.push(o),t=o.children)for(n=0,i=t.length;n<i;++n)r.push(t[n]);for(;o=s.pop();)e(o);return this},Cf=function(e){return this.eachAfter(function(t){for(var n=+e(t.data)||0,i=t.children,o=i&&i.length;--o>=0;)n+=i[o].value;t.value=n})},Sf=function(e){return this.eachBefore(function(t){t.children&&t.children.sort(e)})},wf=function(e){for(var t=this,n=Do(t,e),i=[t];t!==n;)t=t.parent,i.push(t);for(var o=i.length;e!==n;)i.splice(o,0,e),e=e.parent;return i},xf=function(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t},_f=function(){var e=[];return this.each(function(t){e.push(t)}),e},Of=function(){var e=[];return this.eachBefore(function(t){t.children||e.push(t)}),e},Ef=function(){var e=this,t=[];return e.each(function(n){n!==e&&t.push({source:n.parent,target:n})}),t};Bo.prototype=$o.prototype={constructor:Bo,count:yf,each:gf,eachAfter:bf,eachBefore:vf,sum:Cf,sort:Sf,path:wf,ancestors:xf,descendants:_f,leaves:Of,links:Ef,copy:No};var Af=Array.prototype.slice,Tf=function(e){for(var t,n,i=0,o=(e=Qo(Af.call(e))).length,r=[];i<o;)t=e[i],n&&qo(n,t)?++i:(n=zo(r=Uo(r,t)),i=0);return n},Rf=function(e){return er(e),e},Ff=function(e){return function(){return e}},If=function(){function e(e){return e.x=n/2,e.y=i/2,t?e.eachBefore(rr(t)).eachAfter(sr(o,.5)).eachBefore(ar(1)):e.eachBefore(rr(or)).eachAfter(sr(ir,1)).eachAfter(sr(o,e.r/Math.min(n,i))).eachBefore(ar(Math.min(n,i)/(2*e.r))),e}var t=null,n=1,i=1,o=ir;return e.radius=function(n){return arguments.length?(t=tr(n),e):t},e.size=function(t){return arguments.length?(n=+t[0],i=+t[1],e):[n,i]},e.padding=function(t){return arguments.length?(o=\"function\"==typeof t?t:Ff(+t),e):o},e},Mf=function(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)},Pf=function(e,t,n,i,o){for(var r,s=e.children,a=-1,u=s.length,l=e.value&&(i-t)/e.value;++a<u;)r=s[a],r.y0=n,r.y1=o,r.x0=t,r.x1=t+=r.value*l},Df=function(){function e(e){var s=e.height+1;return e.x0=e.y0=o,e.x1=n,e.y1=i/s,e.eachBefore(t(i,s)),r&&e.eachBefore(Mf),e}function t(e,t){return function(n){n.children&&Pf(n,n.x0,e*(n.depth+1)/t,n.x1,e*(n.depth+2)/t);var i=n.x0,r=n.y0,s=n.x1-o,a=n.y1-o;s<i&&(i=s=(i+s)/2),a<r&&(r=a=(r+a)/2),n.x0=i,n.y0=r,n.x1=s,n.y1=a}}var n=1,i=1,o=0,r=!1;return e.round=function(t){return arguments.length?(r=!!t,e):r},e.size=function(t){return arguments.length?(n=+t[0],i=+t[1],e):[n,i]},e.padding=function(t){return arguments.length?(o=+t,e):o},e},$f=\"$\",Nf={depth:-1},Vf={},kf=function(){function e(e){var i,o,r,s,a,u,l,c=e.length,p=new Array(c),h={};for(o=0;o<c;++o)i=e[o],a=p[o]=new Bo(i),null!=(u=t(i,o,e))&&(u+=\"\")&&(l=$f+(a.id=u),h[l]=l in h?Vf:a);for(o=0;o<c;++o)if(a=p[o],null!=(u=n(e[o],o,e))&&(u+=\"\")){if(!(s=h[$f+u]))throw new Error(\"missing: \"+u);if(s===Vf)throw new Error(\"ambiguous: \"+u);s.children?s.children.push(a):s.children=[a],a.parent=s}else{if(r)throw new Error(\"multiple roots\");r=a}if(!r)throw new Error(\"no root\");if(r.parent=Nf,r.eachBefore(function(e){e.depth=e.parent.depth+1,--c}).eachBefore(Lo),r.parent=null,c>0)throw new Error(\"cycle\");return r}var t=ur,n=lr;return e.id=function(n){return arguments.length?(t=nr(n),e):t},e.parentId=function(t){return arguments.length?(n=nr(t),e):n},e};yr.prototype=Object.create(Bo.prototype);var Lf=function(){function e(e){var i=gr(e);if(i.eachAfter(t),i.parent.m=-i.z,i.eachBefore(n),u)e.eachBefore(o);else{var l=e,c=e,p=e;e.eachBefore(function(e){e.x<l.x&&(l=e),e.x>c.x&&(c=e),e.depth>p.depth&&(p=e)});var h=l===c?1:r(l,c)/2,d=h-l.x,f=s/(c.x+h+d),m=a/(p.depth||1);e.eachBefore(function(e){e.x=(e.x+d)*f,e.y=e.depth*m})}return e}function t(e){var t=e.children,n=e.parent.children,o=e.i?n[e.i-1]:null;if(t){fr(e);var s=(t[0].z+t[t.length-1].z)/2;o?(e.z=o.z+r(e._,o._),e.m=e.z-s):e.z=s}else o&&(e.z=o.z+r(e._,o._));e.parent.A=i(e,o,e.parent.A||n[0])}function n(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function i(e,t,n){if(t){for(var i,o=e,s=e,a=t,u=o.parent.children[0],l=o.m,c=s.m,p=a.m,h=u.m;a=hr(a),o=pr(o),a&&o;)u=pr(u),s=hr(s),s.a=e,i=a.z+p-o.z-l+r(a._,o._),i>0&&(dr(mr(a,e,n),e,i),l+=i,c+=i),p+=a.m,l+=o.m,h+=u.m,c+=s.m;a&&!hr(s)&&(s.t=a,s.m+=p-c),o&&!pr(u)&&(u.t=o,u.m+=l-h,n=e)}return n}function o(e){e.x*=s,e.y=e.depth*a}var r=cr,s=1,a=1,u=null;return e.separation=function(t){return arguments.length?(r=t,e):r},e.size=function(t){return arguments.length?(u=!1,s=+t[0],a=+t[1],e):u?null:[s,a]},e.nodeSize=function(t){return arguments.length?(u=!0,s=+t[0],a=+t[1],e):u?[s,a]:null},e},Bf=function(e,t,n,i,o){for(var r,s=e.children,a=-1,u=s.length,l=e.value&&(o-n)/e.value;++a<u;)r=s[a],r.x0=t,r.x1=i,r.y0=n,r.y1=n+=r.value*l},Qf=(1+Math.sqrt(5))/2,Uf=function e(t){function n(e,n,i,o,r){vr(t,e,n,i,o,r)}return n.ratio=function(t){return e((t=+t)>1?t:1)},n}(Qf),jf=function(){function e(e){return e.x0=e.y0=0,e.x1=o,e.y1=r,e.eachBefore(t),s=[0],i&&e.eachBefore(Mf),e}function t(e){var t=s[e.depth],i=e.x0+t,o=e.y0+t,r=e.x1-t,h=e.y1-t;r<i&&(i=r=(i+r)/2),h<o&&(o=h=(o+h)/2),e.x0=i,e.y0=o,e.x1=r,e.y1=h,e.children&&(t=s[e.depth+1]=a(e)/2,i+=p(e)-t,o+=u(e)-t,r-=l(e)-t,h-=c(e)-t,r<i&&(i=r=(i+r)/2),h<o&&(o=h=(o+h)/2),n(e,i,o,r,h))}var n=Uf,i=!1,o=1,r=1,s=[0],a=ir,u=ir,l=ir,c=ir,p=ir;return e.round=function(t){return arguments.length?(i=!!t,e):i},e.size=function(t){return arguments.length?(o=+t[0],r=+t[1],e):[o,r]},e.tile=function(t){return arguments.length?(n=nr(t),e):n},e.padding=function(t){return arguments.length?e.paddingInner(t).paddingOuter(t):e.paddingInner()},e.paddingInner=function(t){return arguments.length?(a=\"function\"==typeof t?t:Ff(+t),e):a},e.paddingOuter=function(t){return arguments.length?e.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):e.paddingTop()},e.paddingTop=function(t){return arguments.length?(u=\"function\"==typeof t?t:Ff(+t),e):u},e.paddingRight=function(t){return arguments.length?(l=\"function\"==typeof t?t:Ff(+t),e):l},e.paddingBottom=function(t){return arguments.length?(c=\"function\"==typeof t?t:Ff(+t),e):c},e.paddingLeft=function(t){return arguments.length?(p=\"function\"==typeof t?t:Ff(+t),e):p},e},qf=function(e,t,n,i,o){function r(e,t,n,i,o,s,a){if(e>=t-1){var l=u[e];return l.x0=i,l.y0=o,l.x1=s,l.y1=a,void 0}for(var p=c[e],h=n/2+p,d=e+1,f=t-1;d<f;){var m=d+f>>>1;c[m]<h?d=m+1:f=m}h-c[d-1]<c[d]-h&&e+1<d&&--d;var y=c[d]-p,g=n-y;if(s-i>a-o){var v=(i*g+s*y)/n;r(e,d,y,i,o,v,a),r(d,t,g,v,o,s,a)}else{var b=(o*g+a*y)/n;r(e,d,y,i,o,s,b),r(d,t,g,i,b,s,a)}}var s,a,u=e.children,l=u.length,c=new Array(l+1);for(c[0]=a=s=0;s<l;++s)c[s+1]=a+=u[s].value;r(0,l,e.value,t,n,i,o)},Hf=function(e,t,n,i,o){(1&e.depth?Bf:Pf)(e,t,n,i,o)},zf=function e(t){function n(e,n,i,o,r){if((s=e._squarify)&&s.ratio===t)for(var s,a,u,l,c,p=-1,h=s.length,d=e.value;++p<h;){for(a=s[p],u=a.children,l=a.value=0,c=u.length;l<c;++l)a.value+=u[l].value;a.dice?Pf(a,n,i,o,i+=(r-i)*a.value/d):Bf(a,n,i,n+=(o-n)*a.value/d,r),d-=a.value}else e._squarify=s=vr(t,e,n,i,o,r),s.ratio=t}return n.ratio=function(t){return e((t=+t)>1?t:1)},n}(Qf),Wf=function(e){for(var t,n=-1,i=e.length,o=e[i-1],r=0;++n<i;)t=o,o=e[n],r+=t[1]*o[0]-t[0]*o[1];return r/2},Gf=function(e){for(var t,n,i=-1,o=e.length,r=0,s=0,a=e[o-1],u=0;++i<o;)t=a,a=e[i],u+=n=t[0]*a[1]-a[0]*t[1],r+=(t[0]+a[0])*n,s+=(t[1]+a[1])*n;return u*=3,[r/u,s/u]},Yf=function(e,t,n){return(t[0]-e[0])*(n[1]-e[1])-(t[1]-e[1])*(n[0]-e[0])},Kf=function(e){if((n=e.length)<3)return null;var t,n,i=new Array(n),o=new Array(n);for(t=0;t<n;++t)i[t]=[+e[t][0],+e[t][1],t];for(i.sort(br),t=0;t<n;++t)o[t]=[i[t][0],-i[t][1]];var r=Cr(i),s=Cr(o),a=s[0]===r[0],u=s[s.length-1]===r[r.length-1],l=[];for(t=r.length-1;t>=0;--t)l.push(e[i[r[t]][2]]);for(t=+a;t<s.length-u;++t)l.push(e[i[s[t]][2]]);return l},Jf=function(e,t){for(var n,i,o=e.length,r=e[o-1],s=t[0],a=t[1],u=r[0],l=r[1],c=!1,p=0;p<o;++p)r=e[p],n=r[0],i=r[1],i>a!=l>a&&s<(u-n)*(a-i)/(l-i)+n&&(c=!c),u=n,l=i;return c},Xf=function(e){for(var t,n,i=-1,o=e.length,r=e[o-1],s=r[0],a=r[1],u=0;++i<o;)t=s,n=a,r=e[i],s=r[0],a=r[1],t-=s,n-=a,u+=Math.sqrt(t*t+n*n);return u},Zf=[].slice,em={};Sr.prototype=Ar.prototype={constructor:Sr,defer:function(e){if(\"function\"!=typeof e)throw new Error(\"invalid callback\");if(this._call)throw new Error(\"defer after await\");if(null!=this._error)return this;var t=Zf.call(arguments,1);return t.push(e),++this._waiting,this._tasks.push(t),wr(this),this},abort:function(){return null==this._error&&Or(this,new Error(\"abort\")),this},await:function(e){if(\"function\"!=typeof e)throw new Error(\"invalid callback\");if(this._call)throw new Error(\"multiple await\");return this._call=function(t,n){e.apply(null,[t].concat(n))},Er(this),this},awaitAll:function(e){if(\"function\"!=typeof e)throw new Error(\"invalid callback\");if(this._call)throw new Error(\"multiple await\");return this._call=e,Er(this),this}};var tm=function(){return Math.random()},nm=function e(t){function n(e,n){return e=null==e?0:+e,n=null==n?1:+n,1===arguments.length?(n=e,e=0):n-=e,function(){return t()*n+e}}return n.source=e,n}(tm),im=function e(t){function n(e,n){var i,o;return e=null==e?0:+e,n=null==n?1:+n,function(){var r;if(null!=i)r=i,i=null;else do{i=2*t()-1,r=2*t()-1,o=i*i+r*r}while(!o||o>1);return e+n*r*Math.sqrt(-2*Math.log(o)/o)}}return n.source=e,n}(tm),om=function e(t){function n(){var e=im.source(t).apply(this,arguments);return function(){return Math.exp(e())}}return n.source=e,n}(tm),rm=function e(t){function n(e){return function(){for(var n=0,i=0;i<e;++i)n+=t();return n}}return n.source=e,n}(tm),sm=function e(t){function n(e){var n=rm.source(t)(e);return function(){return n()/e}}return n.source=e,n}(tm),am=function e(t){function n(e){return function(){return-Math.log(1-t())/e}}return n.source=e,n}(tm),um=function(e,t){function n(e){var t,n=l.status;if(!n&&Rr(l)||n>=200&&n<300||304===n){if(r)try{t=r.call(i,l)}catch(e){return void a.call(\"error\",i,e)}else t=l;a.call(\"load\",i,t)}else a.call(\"error\",i,e)}var i,o,r,s,a=Ta(\"beforesend\",\"progress\",\"load\",\"error\"),u=Object(Mc.c)(),l=new XMLHttpRequest,c=null,p=null,h=0;if(\"undefined\"==typeof XDomainRequest||\"withCredentials\"in l||!/^(http(s)?:)?\\/\\//.test(e)||(l=new XDomainRequest),\"onload\"in l?l.onload=l.onerror=l.ontimeout=n:l.onreadystatechange=function(e){l.readyState>3&&n(e)},l.onprogress=function(e){a.call(\"progress\",i,e)},i={header:function(e,t){return e=(e+\"\").toLowerCase(),arguments.length<2?u.get(e):(null==t?u.remove(e):u.set(e,t+\"\"),i)},mimeType:function(e){return arguments.length?(o=null==e?null:e+\"\",i):o},responseType:function(e){return arguments.length?(s=e,i):s},timeout:function(e){return arguments.length?(h=+e,i):h},user:function(e){return arguments.length<1?c:(c=null==e?null:e+\"\",i)},password:function(e){return arguments.length<1?p:(p=null==e?null:e+\"\",i)},response:function(e){return r=e,i},get:function(e,t){return i.send(\"GET\",e,t)},post:function(e,t){return i.send(\"POST\",e,t)},send:function(t,n,r){return l.open(t,e,!0,c,p),null==o||u.has(\"accept\")||u.set(\"accept\",o+\",*/*\"),l.setRequestHeader&&u.each(function(e,t){l.setRequestHeader(t,e)}),null!=o&&l.overrideMimeType&&l.overrideMimeType(o),null!=s&&(l.responseType=s),h>0&&(l.timeout=h),null==r&&\"function\"==typeof n&&(r=n,n=null),null!=r&&1===r.length&&(r=Tr(r)),null!=r&&i.on(\"error\",r).on(\"load\",function(e){r(null,e)}),a.call(\"beforesend\",i,l),l.send(null==n?null:n),i},abort:function(){return l.abort(),i},on:function(){var e=a.on.apply(a,arguments);return e===a?i:e}},null!=t){if(\"function\"!=typeof t)throw new Error(\"invalid callback: \"+t);return i.get(t)}return i},lm=function(e,t){return function(n,i){var o=um(n).mimeType(e).response(t);if(null!=i){if(\"function\"!=typeof i)throw new Error(\"invalid callback: \"+i);return o.get(i)}return o}},cm=lm(\"text/html\",function(e){return document.createRange().createContextualFragment(e.responseText)}),pm=lm(\"application/json\",function(e){return JSON.parse(e.responseText)}),hm=lm(\"text/plain\",function(e){return e.responseText}),dm=lm(\"application/xml\",function(e){var t=e.responseXML;if(!t)throw new Error(\"parse error\");return t}),fm=function(e,t){return function(n,i,o){arguments.length<3&&(o=i,i=null);var r=um(n).mimeType(e);return r.row=function(e){return arguments.length?r.response(Fr(t,i=e)):i},r.row(i),o?r.get(o):r}},mm=fm(\"text/csv\",Bc),ym=fm(\"text/tab-separated-values\",Hc),gm=n(487),vm=function(e){return function(){return e}},bm=Math.abs,Cm=Math.atan2,Sm=Math.cos,wm=Math.max,xm=Math.min,_m=Math.sin,Om=Math.sqrt,Em=1e-12,Am=Math.PI,Tm=Am/2,Rm=2*Am,Fm=function(){function e(){var e,l,c=+t.apply(this,arguments),p=+n.apply(this,arguments),h=r.apply(this,arguments)-Tm,d=s.apply(this,arguments)-Tm,f=bm(d-h),m=d>h;if(u||(u=e=Fc()),p<c&&(l=p,p=c,c=l),p>Em)if(f>Rm-Em)u.moveTo(p*Sm(h),p*_m(h)),u.arc(0,0,p,h,d,!m),c>Em&&(u.moveTo(c*Sm(d),c*_m(d)),u.arc(0,0,c,d,h,m));else{var y,g,v=h,b=d,C=h,S=d,w=f,x=f,_=a.apply(this,arguments)/2,O=_>Em&&(o?+o.apply(this,arguments):Om(c*c+p*p)),E=xm(bm(p-c)/2,+i.apply(this,arguments)),A=E,T=E;if(O>Em){var R=Mr(O/c*_m(_)),F=Mr(O/p*_m(_));(w-=2*R)>Em?(R*=m?1:-1,C+=R,S-=R):(w=0,C=S=(h+d)/2),(x-=2*F)>Em?(F*=m?1:-1,v+=F,b-=F):(x=0,v=b=(h+d)/2)}var I=p*Sm(v),M=p*_m(v),P=c*Sm(S),D=c*_m(S);if(E>Em){var $=p*Sm(b),N=p*_m(b),V=c*Sm(C),k=c*_m(C);if(f<Am){var L=w>Em?kr(I,M,V,k,$,N,P,D):[P,D],B=I-L[0],Q=M-L[1],U=$-L[0],j=N-L[1],q=1/_m(Ir((B*U+Q*j)/(Om(B*B+Q*Q)*Om(U*U+j*j)))/2),H=Om(L[0]*L[0]+L[1]*L[1]);A=xm(E,(c-H)/(q-1)),T=xm(E,(p-H)/(q+1))}}x>Em?T>Em?(y=Lr(V,k,I,M,p,T,m),g=Lr($,N,P,D,p,T,m),u.moveTo(y.cx+y.x01,y.cy+y.y01),T<E?u.arc(y.cx,y.cy,T,Cm(y.y01,y.x01),Cm(g.y01,g.x01),!m):(u.arc(y.cx,y.cy,T,Cm(y.y01,y.x01),Cm(y.y11,y.x11),!m),u.arc(0,0,p,Cm(y.cy+y.y11,y.cx+y.x11),Cm(g.cy+g.y11,g.cx+g.x11),!m),u.arc(g.cx,g.cy,T,Cm(g.y11,g.x11),Cm(g.y01,g.x01),!m))):(u.moveTo(I,M),u.arc(0,0,p,v,b,!m)):u.moveTo(I,M),c>Em&&w>Em?A>Em?(y=Lr(P,D,$,N,c,-A,m),g=Lr(I,M,V,k,c,-A,m),u.lineTo(y.cx+y.x01,y.cy+y.y01),A<E?u.arc(y.cx,y.cy,A,Cm(y.y01,y.x01),Cm(g.y01,g.x01),!m):(u.arc(y.cx,y.cy,A,Cm(y.y01,y.x01),Cm(y.y11,y.x11),!m),u.arc(0,0,c,Cm(y.cy+y.y11,y.cx+y.x11),Cm(g.cy+g.y11,g.cx+g.x11),m),u.arc(g.cx,g.cy,A,Cm(g.y11,g.x11),Cm(g.y01,g.x01),!m))):u.arc(0,0,c,S,C,m):u.lineTo(P,D)}else u.moveTo(0,0);if(u.closePath(),e)return u=null,e+\"\"||null}var t=Pr,n=Dr,i=vm(0),o=null,r=$r,s=Nr,a=Vr,u=null;return e.centroid=function(){var e=(+t.apply(this,arguments)+ +n.apply(this,arguments))/2,i=(+r.apply(this,arguments)+ +s.apply(this,arguments))/2-Am/2;return[Sm(i)*e,_m(i)*e]},e.innerRadius=function(n){return arguments.length?(t=\"function\"==typeof n?n:vm(+n),e):t},e.outerRadius=function(t){return arguments.length?(n=\"function\"==typeof t?t:vm(+t),e):n},e.cornerRadius=function(t){return arguments.length?(i=\"function\"==typeof t?t:vm(+t),e):i},e.padRadius=function(t){return arguments.length?(o=null==t?null:\"function\"==typeof t?t:vm(+t),e):o},e.startAngle=function(t){return arguments.length?(r=\"function\"==typeof t?t:vm(+t),e):r},e.endAngle=function(t){return arguments.length?(s=\"function\"==typeof t?t:vm(+t),e):s},e.padAngle=function(t){return arguments.length?(a=\"function\"==typeof t?t:vm(+t),e):a},e.context=function(t){return arguments.length?(u=null==t?null:t,e):u},e};Br.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};var Im=function(e){return new Br(e)},Mm=function(){function e(e){var a,u,l,c=e.length,p=!1;for(null==o&&(s=r(l=Fc())),a=0;a<=c;++a)!(a<c&&i(u=e[a],a,e))===p&&((p=!p)?s.lineStart():s.lineEnd()),p&&s.point(+t(u,a,e),+n(u,a,e));if(l)return s=null,l+\"\"||null}var t=Qr,n=Ur,i=vm(!0),o=null,r=Im,s=null;return e.x=function(n){return arguments.length?(t=\"function\"==typeof n?n:vm(+n),e):t},e.y=function(t){return arguments.length?(n=\"function\"==typeof t?t:vm(+t),e):n},e.defined=function(t){return arguments.length?(i=\"function\"==typeof t?t:vm(!!t),e):i},e.curve=function(t){return arguments.length?(r=t,null!=o&&(s=r(o)),e):r},e.context=function(t){return arguments.length?(null==t?o=s=null:s=r(o=t),e):o},e},Pm=function(){function e(e){var t,c,p,h,d,f=e.length,m=!1,y=new Array(f),g=new Array(f);for(null==a&&(l=u(d=Fc())),t=0;t<=f;++t){if(!(t<f&&s(h=e[t],t,e))===m)if(m=!m)c=t,l.areaStart(),l.lineStart();else{for(l.lineEnd(),l.lineStart(),p=t-1;p>=c;--p)l.point(y[p],g[p]);l.lineEnd(),l.areaEnd()}m&&(y[t]=+n(h,t,e),g[t]=+o(h,t,e),l.point(i?+i(h,t,e):y[t],r?+r(h,t,e):g[t]))}if(d)return l=null,d+\"\"||null}function t(){return Mm().defined(s).curve(u).context(a)}var n=Qr,i=null,o=vm(0),r=Ur,s=vm(!0),a=null,u=Im,l=null;return e.x=function(t){return arguments.length?(n=\"function\"==typeof t?t:vm(+t),i=null,e):n},e.x0=function(t){return arguments.length?(n=\"function\"==typeof t?t:vm(+t),e):n},e.x1=function(t){return arguments.length?(i=null==t?null:\"function\"==typeof t?t:vm(+t),e):i},e.y=function(t){return arguments.length?(o=\"function\"==typeof t?t:vm(+t),r=null,e):o},e.y0=function(t){return arguments.length?(o=\"function\"==typeof t?t:vm(+t),e):o},e.y1=function(t){return arguments.length?(r=null==t?null:\"function\"==typeof t?t:vm(+t),e):r},e.lineX0=e.lineY0=function(){return t().x(n).y(o)},e.lineY1=function(){return t().x(n).y(r)},e.lineX1=function(){return t().x(i).y(o)},e.defined=function(t){return arguments.length?(s=\"function\"==typeof t?t:vm(!!t),e):s},e.curve=function(t){return arguments.length?(u=t,null!=a&&(l=u(a)),e):u},e.context=function(t){return arguments.length?(null==t?a=l=null:l=u(a=t),e):a},e},Dm=function(e,t){return t<e?-1:t>e?1:t>=e?0:NaN},$m=function(e){return e},Nm=function(){function e(e){var a,u,l,c,p,h=e.length,d=0,f=new Array(h),m=new Array(h),y=+o.apply(this,arguments),g=Math.min(Rm,Math.max(-Rm,r.apply(this,arguments)-y)),v=Math.min(Math.abs(g)/h,s.apply(this,arguments)),b=v*(g<0?-1:1);for(a=0;a<h;++a)(p=m[f[a]=a]=+t(e[a],a,e))>0&&(d+=p);for(null!=n?f.sort(function(e,t){return n(m[e],m[t])}):null!=i&&f.sort(function(t,n){return i(e[t],e[n])}),a=0,l=d?(g-h*b)/d:0;a<h;++a,y=c)u=f[a],p=m[u],c=y+(p>0?p*l:0)+b,m[u]={data:e[u],index:a,value:p,startAngle:y,endAngle:c,padAngle:v};return m}var t=$m,n=Dm,i=null,o=vm(0),r=vm(Rm),s=vm(0);return e.value=function(n){return arguments.length?(t=\"function\"==typeof n?n:vm(+n),e):t},e.sortValues=function(t){return arguments.length?(n=t,i=null,e):n},e.sort=function(t){return arguments.length?(i=t,n=null,e):i},e.startAngle=function(t){return arguments.length?(o=\"function\"==typeof t?t:vm(+t),e):o},e.endAngle=function(t){return arguments.length?(r=\"function\"==typeof t?t:vm(+t),e):r},e.padAngle=function(t){return arguments.length?(s=\"function\"==typeof t?t:vm(+t),e):s},e},Vm=qr(Im);jr.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(e,t){this._curve.point(t*Math.sin(e),t*-Math.cos(e))}};var km=function(){return Hr(Mm().curve(Vm))},Lm=function(){var e=Pm().curve(Vm),t=e.curve,n=e.lineX0,i=e.lineX1,o=e.lineY0,r=e.lineY1;return e.angle=e.x,delete e.x,e.startAngle=e.x0,delete e.x0,e.endAngle=e.x1,delete e.x1,e.radius=e.y,delete e.y,e.innerRadius=e.y0,delete e.y0,e.outerRadius=e.y1,delete e.y1,e.lineStartAngle=function(){return Hr(n())},delete e.lineX0,e.lineEndAngle=function(){return Hr(i())},delete e.lineX1,e.lineInnerRadius=function(){return Hr(o())},delete e.lineY0,e.lineOuterRadius=function(){return Hr(r())},delete e.lineY1,e.curve=function(e){return arguments.length?t(qr(e)):t()._curve},e},Bm=function(e,t){return[(t=+t)*Math.cos(e-=Math.PI/2),t*Math.sin(e)]},Qm=Array.prototype.slice,Um={draw:function(e,t){var n=Math.sqrt(t/Am);e.moveTo(n,0),e.arc(0,0,n,0,Rm)}},jm={draw:function(e,t){var n=Math.sqrt(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},qm=Math.sqrt(1/3),Hm=2*qm,zm={draw:function(e,t){var n=Math.sqrt(t/Hm),i=n*qm;e.moveTo(0,-n),e.lineTo(i,0),e.lineTo(0,n),e.lineTo(-i,0),e.closePath()}},Wm=Math.sin(Am/10)/Math.sin(7*Am/10),Gm=Math.sin(Rm/10)*Wm,Ym=-Math.cos(Rm/10)*Wm,Km={draw:function(e,t){var n=Math.sqrt(.8908130915292852*t),i=Gm*n,o=Ym*n;e.moveTo(0,-n),e.lineTo(i,o);for(var r=1;r<5;++r){var s=Rm*r/5,a=Math.cos(s),u=Math.sin(s);e.lineTo(u*n,-a*n),e.lineTo(a*i-u*o,u*i+a*o)}e.closePath()}},Jm={draw:function(e,t){var n=Math.sqrt(t),i=-n/2;e.rect(i,i,n,n)}},Xm=Math.sqrt(3),Zm={draw:function(e,t){var n=-Math.sqrt(t/(3*Xm));e.moveTo(0,2*n),e.lineTo(-Xm*n,-n),e.lineTo(Xm*n,-n),e.closePath()}},ey=Math.sqrt(3)/2,ty=1/Math.sqrt(12),ny=3*(ty/2+1),iy={draw:function(e,t){var n=Math.sqrt(t/ny),i=n/2,o=n*ty,r=i,s=n*ty+n,a=-r,u=s;e.moveTo(i,o),e.lineTo(r,s),e.lineTo(a,u),e.lineTo(-.5*i-ey*o,ey*i+-.5*o),e.lineTo(-.5*r-ey*s,ey*r+-.5*s),e.lineTo(-.5*a-ey*u,ey*a+-.5*u),e.lineTo(-.5*i+ey*o,-.5*o-ey*i),e.lineTo(-.5*r+ey*s,-.5*s-ey*r),e.lineTo(-.5*a+ey*u,-.5*u-ey*a),e.closePath()}},oy=[Um,jm,zm,Jm,Km,Zm,iy],ry=function(){function e(){var e;if(i||(i=e=Fc()),t.apply(this,arguments).draw(i,+n.apply(this,arguments)),e)return i=null,e+\"\"||null}var t=vm(Um),n=vm(64),i=null;return e.type=function(n){return arguments.length?(t=\"function\"==typeof n?n:vm(n),e):t},e.size=function(t){return arguments.length?(n=\"function\"==typeof t?t:vm(+t),e):n},e.context=function(t){return arguments.length?(i=null==t?null:t,e):i},e},sy=function(){};ns.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ts(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ts(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};var ay=function(e){return new ns(e)};is.prototype={areaStart:sy,areaEnd:sy,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:ts(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};var uy=function(e){return new is(e)};os.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,i=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,i):this._context.moveTo(n,i);break;case 3:this._point=4;default:ts(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};var ly=function(e){return new os(e)};rs.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,n=e.length-1;if(n>0)for(var i,o=e[0],r=t[0],s=e[n]-o,a=t[n]-r,u=-1;++u<=n;)i=u/n,this._basis.point(this._beta*e[u]+(1-this._beta)*(o+i*s),this._beta*t[u]+(1-this._beta)*(r+i*a));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};var cy=function e(t){function n(e){return 1===t?new ns(e):new rs(e,t)}return n.beta=function(t){return e(+t)},n}(.85);as.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:ss(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:ss(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var py=function e(t){function n(e){return new as(e,t)}return n.tension=function(t){return e(+t)},n}(0);us.prototype={areaStart:sy,areaEnd:sy,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:ss(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var hy=function e(t){function n(e){return new us(e,t)}return n.tension=function(t){return e(+t)},n}(0);ls.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ss(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var dy=function e(t){function n(e){return new ls(e,t)}return n.tension=function(t){return e(+t)},n}(0);ps.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,i=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:cs(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var fy=function e(t){function n(e){return t?new ps(e,t):new as(e,0)}return n.alpha=function(t){return e(+t)},n}(.5);hs.prototype={areaStart:sy,areaEnd:sy,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,i=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:cs(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var my=function e(t){function n(e){return t?new hs(e,t):new us(e,0)}return n.alpha=function(t){return e(+t)},n}(.5);ds.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,i=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:cs(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var yy=function e(t){function n(e){return t?new ds(e,t):new ls(e,0)}return n.alpha=function(t){return e(+t)},n}(.5);fs.prototype={areaStart:sy,areaEnd:sy,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};var gy=function(e){return new fs(e)};bs.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:vs(this,this._t0,gs(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,e!==this._x1||t!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,vs(this,gs(this,n=ys(this,e,t)),n);break;default:vs(this,this._t0,n=ys(this,e,t))}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}},(Cs.prototype=Object.create(bs.prototype)).point=function(e,t){bs.prototype.point.call(this,t,e)},Ss.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,i,o,r){this._context.bezierCurveTo(t,e,i,n,r,o)}},_s.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),2===n)this._context.lineTo(e[1],t[1]);else for(var i=Os(e),o=Os(t),r=0,s=1;s<n;++r,++s)this._context.bezierCurveTo(i[0][r],o[0][r],i[1][r],o[1][r],e[s],t[s]);(this._line||0!==this._line&&1===n)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}};var vy=function(e){return new _s(e)};Es.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&2===this._point&&this._context.lineTo(this._x,this._y),(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}}this._x=e,this._y=t}};var by=function(e){return new Es(e,.5)},Cy=function(e,t){if((o=e.length)>1)for(var n,i,o,r=1,s=e[t[0]],a=s.length;r<o;++r)for(i=s,s=e[t[r]],n=0;n<a;++n)s[n][1]+=s[n][0]=isNaN(i[n][1])?i[n][0]:i[n][1]},Sy=function(e){for(var t=e.length,n=new Array(t);--t>=0;)n[t]=t;return n},wy=function(){function e(e){var r,s,a=t.apply(this,arguments),u=e.length,l=a.length,c=new Array(l);for(r=0;r<l;++r){for(var p,h=a[r],d=c[r]=new Array(u),f=0;f<u;++f)d[f]=p=[0,+o(e[f],h,f,e)],p.data=e[f];d.key=h}for(r=0,s=n(c);r<l;++r)c[s[r]].index=r;return i(c,s),c}var t=vm([]),n=Sy,i=Cy,o=Rs;return e.keys=function(n){return arguments.length?(t=\"function\"==typeof n?n:vm(Qm.call(n)),e):t},e.value=function(t){return arguments.length?(o=\"function\"==typeof t?t:vm(+t),e):o},e.order=function(t){return arguments.length?(n=null==t?Sy:\"function\"==typeof t?t:vm(Qm.call(t)),e):n},e.offset=function(t){return arguments.length?(i=null==t?Cy:t,e):i},e},xy=function(e,t){if((i=e.length)>0){for(var n,i,o,r=0,s=e[0].length;r<s;++r){for(o=n=0;n<i;++n)o+=e[n][r][1]||0;if(o)for(n=0;n<i;++n)e[n][r][1]/=o}Cy(e,t)}},_y=function(e,t){if((a=e.length)>1)for(var n,i,o,r,s,a,u=0,l=e[t[0]].length;u<l;++u)for(r=s=0,n=0;n<a;++n)(o=(i=e[t[n]][u])[1]-i[0])>=0?(i[0]=r,i[1]=r+=o):o<0?(i[1]=s,i[0]=s+=o):i[0]=r},Oy=function(e,t){if((n=e.length)>0){for(var n,i=0,o=e[t[0]],r=o.length;i<r;++i){for(var s=0,a=0;s<n;++s)a+=e[s][i][1]||0;o[i][1]+=o[i][0]=-a/2}Cy(e,t)}},Ey=function(e,t){if((o=e.length)>0&&(i=(n=e[t[0]]).length)>0){for(var n,i,o,r=0,s=1;s<i;++s){for(var a=0,u=0,l=0;a<o;++a){for(var c=e[t[a]],p=c[s][1]||0,h=c[s-1][1]||0,d=(p-h)/2,f=0;f<a;++f){var m=e[t[f]];d+=(m[s][1]||0)-(m[s-1][1]||0)}u+=p,l+=d*p}n[s-1][1]+=n[s-1][0]=r,u&&(r-=l/u)}n[s-1][1]+=n[s-1][0]=r,Cy(e,t)}},Ay=function(e){var t=e.map(Fs);return Sy(e).sort(function(e,n){return t[e]-t[n]})},Ty=function(e){return Ay(e).reverse()},Ry=function(e){var t,n,i=e.length,o=e.map(Fs),r=Sy(e).sort(function(e,t){return o[t]-o[e]}),s=0,a=0,u=[],l=[];for(t=0;t<i;++t)n=r[t],s<a?(s+=o[n],u.push(n)):(a+=o[n],l.push(n));return l.reverse().concat(u)},Fy=function(e){return Sy(e).reverse()},Iy=n(179),My=n(221),Py=function(e){return function(){return e}};Ps.prototype={constructor:Ps,insert:function(e,t){var n,i,o;if(e){if(t.P=e,t.N=e.N,e.N&&(e.N.P=t),e.N=t,e.R){for(e=e.R;e.L;)e=e.L;e.L=t}else e.R=t;n=e}else this._?(e=Vs(this._),t.P=null,t.N=e,e.P=e.L=t,n=e):(t.P=t.N=null,this._=t,n=null);for(t.L=t.R=null,t.U=n,t.C=!0,e=t;n&&n.C;)i=n.U,n===i.L?(o=i.R,o&&o.C?(n.C=o.C=!1,i.C=!0,e=i):(e===n.R&&($s(this,n),e=n,n=e.U),n.C=!1,i.C=!0,Ns(this,i))):(o=i.L,o&&o.C?(n.C=o.C=!1,i.C=!0,e=i):(e===n.L&&(Ns(this,n),e=n,n=e.U),n.C=!1,i.C=!0,$s(this,i))),n=e.U;this._.C=!1},remove:function(e){e.N&&(e.N.P=e.P),e.P&&(e.P.N=e.N),e.N=e.P=null;var t,n,i,o=e.U,r=e.L,s=e.R;if(n=r?s?Vs(s):r:s,o?o.L===e?o.L=n:o.R=n:this._=n,r&&s?(i=n.C,n.C=e.C,n.L=r,r.U=n,n!==s?(o=n.U,n.U=e.U,e=n.R,o.L=e,n.R=s,s.U=n):(n.U=o,o=n,e=n.R)):(i=e.C,e=n),e&&(e.U=o),!i){if(e&&e.C)return void(e.C=!1);do{if(e===this._)break;if(e===o.L){if(t=o.R,t.C&&(t.C=!1,o.C=!0,$s(this,o),t=o.R),t.L&&t.L.C||t.R&&t.R.C){t.R&&t.R.C||(t.L.C=!1,t.C=!0,Ns(this,t),t=o.R),t.C=o.C,o.C=t.R.C=!1,$s(this,o),e=this._;break}}else if(t=o.L,t.C&&(t.C=!1,o.C=!0,Ns(this,o),t=o.L),t.L&&t.L.C||t.R&&t.R.C){t.L&&t.L.C||(t.R.C=!1,t.C=!0,$s(this,t),t=o.L),t.C=o.C,o.C=t.L.C=!1,Ns(this,o),e=this._;break}t.C=!0,e=o,o=o.U}while(!e.C);e&&(e.C=!1)}}};var Dy,$y,Ny,Vy,ky,Ly=Ps,By=[],Qy=[],Uy=1e-6,jy=1e-12;ua.prototype={constructor:ua,polygons:function(){var e=this.edges;return this.cells.map(function(t){var n=t.halfedges.map(function(n){return zs(t,e[n])});return n.data=t.site.data,n})},triangles:function(){var e=[],t=this.edges;return this.cells.forEach(function(n,i){if(r=(o=n.halfedges).length)for(var o,r,s,a=n.site,u=-1,l=t[o[r-1]],c=l.left===a?l.right:l.left;++u<r;)s=c,l=t[o[u]],c=l.left===a?l.right:l.left,s&&c&&i<s.index&&i<c.index&&sa(a,s,c)<0&&e.push([a.data,s.data,c.data])}),e},links:function(){return this.edges.filter(function(e){return e.right}).map(function(e){return{source:e.left.data,target:e.right.data}})},find:function(e,t,n){for(var i,o,r=this,s=r._found||0,a=r.cells.length;!(o=r.cells[s]);)if(++s>=a)return null;var u=e-o.site[0],l=t-o.site[1],c=u*u+l*l;do{o=r.cells[i=s],s=null,o.halfedges.forEach(function(n){var i=r.edges[n],a=i.left;if(a!==o.site&&a||(a=i.right)){var u=e-a[0],l=t-a[1],p=u*u+l*l;p<c&&(c=p,s=a.index)}})}while(null!==s);return r._found=i,null==n||c<=n*n?o.site:null}};var qy=function(){function e(e){return new ua(e.map(function(i,o){var r=[Math.round(t(i,o,e)/Uy)*Uy,Math.round(n(i,o,e)/Uy)*Uy];return r.index=o,r.data=i,r}),i)}var t=Is,n=Ms,i=null;return e.polygons=function(t){return e(t).polygons()},e.links=function(t){return e(t).links()},e.triangles=function(t){return e(t).triangles()},e.x=function(n){return arguments.length?(t=\"function\"==typeof n?n:Py(+n),e):t},e.y=function(t){return arguments.length?(n=\"function\"==typeof t?t:Py(+t),e):n},e.extent=function(t){return arguments.length?(i=null==t?null:[[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]],e):i&&[[i[0][0],i[0][1]],[i[1][0],i[1][1]]]},e.size=function(t){return arguments.length?(i=null==t?null:[[0,0],[+t[0],+t[1]]],e):i&&[i[1][0]-i[0][0],i[1][1]-i[0][1]]},e},Hy=function(e){return function(){return e}};ca.prototype={constructor:ca,scale:function(e){return 1===e?this:new ca(this.k*e,this.x,this.y)},translate:function(e,t){return 0===e&0===t?this:new ca(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return\"translate(\"+this.x+\",\"+this.y+\") scale(\"+this.k+\")\"}};var zy=new ca(1,0,0);pa.prototype=ca.prototype;var Wy=function(){vu.preventDefault(),vu.stopImmediatePropagation()},Gy=function(){function e(e){e.property(\"__zoom\",ma).on(\"wheel.zoom\",a).on(\"mousedown.zoom\",u).on(\"dblclick.zoom\",l).filter(b).on(\"touchstart.zoom\",c).on(\"touchmove.zoom\",p).on(\"touchend.zoom touchcancel.zoom\",h).style(\"touch-action\",\"none\").style(\"-webkit-tap-highlight-color\",\"rgba(0,0,0,0)\")}function t(e,t){return t=Math.max(C[0],Math.min(C[1],t)),t===e.k?e:new ca(t,e.x,e.y)}function n(e,t,n){var i=t[0]-n[0]*e.k,o=t[1]-n[1]*e.k;return i===e.x&&o===e.y?e:new ca(e.k,i,o)}function i(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function o(e,t,n){e.on(\"start.zoom\",function(){r(this,arguments).start()}).on(\"interrupt.zoom end.zoom\",function(){r(this,arguments).end()}).tween(\"zoom\",function(){var e=this,o=arguments,s=r(e,o),a=y.apply(e,o),u=n||i(a),l=Math.max(a[1][0]-a[0][0],a[1][1]-a[0][1]),c=e.__zoom,p=\"function\"==typeof t?t.apply(e,o):t,h=x(c.invert(u).concat(l/c.k),p.invert(u).concat(l/p.k));return function(e){if(1===e)e=p;else{var t=h(e),n=l/t[2];e=new ca(n,u[0]-t[0]*n,u[1]-t[1]*n)}s.zoom(null,e)}})}function r(e,t){for(var n,i=0,o=_.length;i<o;++i)if((n=_[i]).that===e)return n;return new s(e,t)}function s(e,t){this.that=e,this.args=t,this.index=-1,this.active=0,this.extent=y.apply(e,t)}function a(){function e(){i.wheel=null,i.end()}if(m.apply(this,arguments)){var i=r(this,arguments),o=this.__zoom,s=Math.max(C[0],Math.min(C[1],o.k*Math.pow(2,v.apply(this,arguments)))),a=Tu(this);if(i.wheel)i.mouse[0][0]===a[0]&&i.mouse[0][1]===a[1]||(i.mouse[1]=o.invert(i.mouse[0]=a)),clearTimeout(i.wheel);else{if(o.k===s)return;i.mouse=[a,o.invert(a)],sl(this),i.start()}Wy(),i.wheel=setTimeout(e,A),i.zoom(\"mouse\",g(n(t(o,s),i.mouse[0],i.mouse[1]),i.extent,S))}}function u(){function e(){if(Wy(),!i.moved){var e=vu.clientX-a,t=vu.clientY-u;i.moved=e*e+t*t>T}i.zoom(\"mouse\",g(n(i.that.__zoom,i.mouse[0]=Tu(i.that),i.mouse[1]),i.extent,S))}function t(){o.on(\"mousemove.zoom mouseup.zoom\",null),be(vu.view,i.moved),Wy(),i.end()}if(!f&&m.apply(this,arguments)){var i=r(this,arguments),o=xu(vu.view).on(\"mousemove.zoom\",e,!0).on(\"mouseup.zoom\",t,!0),s=Tu(this),a=vu.clientX,u=vu.clientY;Pu(vu.view),ha(),i.mouse=[s,this.__zoom.invert(s)],sl(this),i.start()}}function l(){if(m.apply(this,arguments)){var i=this.__zoom,r=Tu(this),s=i.invert(r),a=i.k*(vu.shiftKey?.5:2),u=g(n(t(i,a),r,s),y.apply(this,arguments),S);Wy(),w>0?xu(this).transition().duration(w).call(o,u,r):xu(this).call(e.transform,u)}}function c(){if(m.apply(this,arguments)){var e,t,n,i,o=r(this,arguments),s=vu.changedTouches,a=s.length;for(ha(),t=0;t<a;++t)n=s[t],i=Fu(this,s,n.identifier),i=[i,this.__zoom.invert(i),n.identifier],o.touch0?o.touch1||(o.touch1=i):(o.touch0=i,e=!0);if(d&&(d=clearTimeout(d),!o.touch1))return o.end(),void((i=xu(this).on(\"dblclick.zoom\"))&&i.apply(this,arguments));e&&(d=setTimeout(function(){d=null},E),sl(this),o.start())}}function p(){var e,i,o,s,a=r(this,arguments),u=vu.changedTouches,l=u.length;for(Wy(),d&&(d=clearTimeout(d)),e=0;e<l;++e)i=u[e],o=Fu(this,u,i.identifier),a.touch0&&a.touch0[2]===i.identifier?a.touch0[0]=o:a.touch1&&a.touch1[2]===i.identifier&&(a.touch1[0]=o);if(i=a.that.__zoom,a.touch1){var c=a.touch0[0],p=a.touch0[1],h=a.touch1[0],f=a.touch1[1],m=(m=h[0]-c[0])*m+(m=h[1]-c[1])*m,y=(y=f[0]-p[0])*y+(y=f[1]-p[1])*y;i=t(i,Math.sqrt(m/y)),o=[(c[0]+h[0])/2,(c[1]+h[1])/2],s=[(p[0]+f[0])/2,(p[1]+f[1])/2]}else{if(!a.touch0)return;o=a.touch0[0],s=a.touch0[1]}a.zoom(\"touch\",g(n(i,o,s),a.extent,S))}function h(){var e,t,n=r(this,arguments),i=vu.changedTouches,o=i.length;for(ha(),f&&clearTimeout(f),f=setTimeout(function(){f=null},E),e=0;e<o;++e)t=i[e],n.touch0&&n.touch0[2]===t.identifier?delete n.touch0:n.touch1&&n.touch1[2]===t.identifier&&delete n.touch1;n.touch1&&!n.touch0&&(n.touch0=n.touch1,delete n.touch1),n.touch0?n.touch0[1]=this.__zoom.invert(n.touch0[0]):n.end()}var d,f,m=da,y=fa,g=va,v=ya,b=ga,C=[0,1/0],S=[[-1/0,-1/0],[1/0,1/0]],w=250,x=ku.v,_=[],O=Ta(\"start\",\"zoom\",\"end\"),E=500,A=150,T=0;return e.transform=function(e,t){var n=e.selection?e.selection():e;n.property(\"__zoom\",ma),e!==n?o(e,t):n.interrupt().each(function(){r(this,arguments).start().zoom(null,\"function\"==typeof t?t.apply(this,arguments):t).end()})},e.scaleBy=function(t,n){e.scaleTo(t,function(){return this.__zoom.k*(\"function\"==typeof n?n.apply(this,arguments):n)})},e.scaleTo=function(o,r){e.transform(o,function(){var e=y.apply(this,arguments),o=this.__zoom,s=i(e),a=o.invert(s),u=\"function\"==typeof r?r.apply(this,arguments):r;return g(n(t(o,u),s,a),e,S)})},e.translateBy=function(t,n,i){e.transform(t,function(){return g(this.__zoom.translate(\"function\"==typeof n?n.apply(this,arguments):n,\"function\"==typeof i?i.apply(this,arguments):i),y.apply(this,arguments),S)})},e.translateTo=function(t,n,o){e.transform(t,function(){var e=y.apply(this,arguments),t=this.__zoom,r=i(e);return g(zy.translate(r[0],r[1]).scale(t.k).translate(\"function\"==typeof n?-n.apply(this,arguments):-n,\"function\"==typeof o?-o.apply(this,arguments):-o),e,S)})},s.prototype={start:function(){return 1==++this.active&&(this.index=_.push(this)-1,this.emit(\"start\")),this},zoom:function(e,t){return this.mouse&&\"mouse\"!==e&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&\"touch\"!==e&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&\"touch\"!==e&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit(\"zoom\"),this},end:function(){return 0==--this.active&&(_.splice(this.index,1),this.index=-1,this.emit(\"end\")),this},emit:function(t){ce(new la(e,t,this.that.__zoom),O.apply,O,[t,this.that,this.args])}},e.wheelDelta=function(t){return arguments.length?(v=\"function\"==typeof t?t:Hy(+t),e):v},e.filter=function(t){return arguments.length?(m=\"function\"==typeof t?t:Hy(!!t),e):m},e.touchable=function(t){return arguments.length?(b=\"function\"==typeof t?t:Hy(!!t),e):b},e.extent=function(t){return arguments.length?(y=\"function\"==typeof t?t:Hy([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),e):y},e.scaleExtent=function(t){return arguments.length?(C[0]=+t[0],C[1]=+t[1],e):[C[0],C[1]]},e.translateExtent=function(t){return arguments.length?(S[0][0]=+t[0][0],S[1][0]=+t[1][0],S[0][1]=+t[0][1],S[1][1]=+t[1][1],e):[[S[0][0],S[0][1]],[S[1][0],S[1][1]]]},e.constrain=function(t){return arguments.length?(g=t,e):g},e.duration=function(t){return arguments.length?(w=+t,e):w},e.interpolate=function(t){return arguments.length?(x=t,e):x},e.on=function(){var t=O.on.apply(O,arguments);return t===O?e:t},e.clickDistance=function(t){return arguments.length?(T=(t=+t)*t,e):Math.sqrt(T)},e};n.d(t,\"version\",function(){return\"4.13.0\"}),n.d(t,\"bisect\",function(){return ba.b}),n.d(t,\"bisectRight\",function(){return ba.d}),n.d(t,\"bisectLeft\",function(){return ba.c}),n.d(t,\"ascending\",function(){return ba.a}),n.d(t,\"bisector\",function(){return ba.e}),n.d(t,\"cross\",function(){return ba.f}),n.d(t,\"descending\",function(){return ba.g}),n.d(t,\"deviation\",function(){return ba.h}),n.d(t,\"extent\",function(){return ba.i}),n.d(t,\"histogram\",function(){return ba.j}),n.d(t,\"thresholdFreedmanDiaconis\",function(){return ba.w}),n.d(t,\"thresholdScott\",function(){return ba.x}),n.d(t,\"thresholdSturges\",function(){return ba.y}),n.d(t,\"max\",function(){return ba.k}),n.d(t,\"mean\",function(){return ba.l}),n.d(t,\"median\",function(){return ba.m}),n.d(t,\"merge\",function(){return ba.n}),n.d(t,\"min\",function(){return ba.o}),n.d(t,\"pairs\",function(){return ba.p}),n.d(t,\"permute\",function(){return ba.q}),n.d(t,\"quantile\",function(){return ba.r}),n.d(t,\"range\",function(){return ba.s}),n.d(t,\"scan\",function(){return ba.t}),n.d(t,\"shuffle\",function(){return ba.u}),n.d(t,\"sum\",function(){return ba.v}),n.d(t,\"ticks\",function(){return ba.B}),n.d(t,\"tickIncrement\",function(){return ba.z}),n.d(t,\"tickStep\",function(){return ba.A}),n.d(t,\"transpose\",function(){return ba.C}),n.d(t,\"variance\",function(){return ba.D}),n.d(t,\"zip\",function(){return ba.E}),n.d(t,\"axisTop\",function(){return l}),n.d(t,\"axisRight\",function(){return c}),n.d(t,\"axisBottom\",function(){return p}),n.d(t,\"axisLeft\",function(){return h}),n.d(t,\"brush\",function(){return gc}),n.d(t,\"brushX\",function(){return Bt}),n.d(t,\"brushY\",function(){return Qt}),n.d(t,\"brushSelection\",function(){return Lt}),n.d(t,\"chord\",function(){return _c}),n.d(t,\"ribbon\",function(){return Ic}),n.d(t,\"nest\",function(){return Mc.d}),n.d(t,\"set\",function(){return Mc.e}),n.d(t,\"map\",function(){return Mc.c}),n.d(t,\"keys\",function(){return Mc.b}),n.d(t,\"values\",function(){return Mc.f}),n.d(t,\"entries\",function(){return Mc.a}),n.d(t,\"color\",function(){return ll.a}),n.d(t,\"rgb\",function(){return ll.f}),n.d(t,\"hsl\",function(){return ll.d}),n.d(t,\"lab\",function(){return ll.e}),n.d(t,\"hcl\",function(){return ll.c}),n.d(t,\"cubehelix\",function(){return ll.b}),n.d(t,\"dispatch\",function(){return Ta}),n.d(t,\"drag\",function(){return Vu}),n.d(t,\"dragDisable\",function(){return Pu}),n.d(t,\"dragEnable\",function(){return be}),n.d(t,\"dsvFormat\",function(){return kc}),n.d(t,\"csvParse\",function(){return Bc}),n.d(t,\"csvParseRows\",function(){return Qc}),n.d(t,\"csvFormat\",function(){return Uc}),n.d(t,\"csvFormatRows\",function(){return jc}),n.d(t,\"tsvParse\",function(){return Hc}),n.d(t,\"tsvParseRows\",function(){return zc}),n.d(t,\"tsvFormat\",function(){return Wc}),n.d(t,\"tsvFormatRows\",function(){return Gc}),n.d(t,\"easeLinear\",function(){return dt}),n.d(t,\"easeQuad\",function(){return yt}),n.d(t,\"easeQuadIn\",function(){return ft}),n.d(t,\"easeQuadOut\",function(){return mt}),n.d(t,\"easeQuadInOut\",function(){return yt}),n.d(t,\"easeCubic\",function(){return bt}),n.d(t,\"easeCubicIn\",function(){return gt}),n.d(t,\"easeCubicOut\",function(){return vt}),n.d(t,\"easeCubicInOut\",function(){return bt}),n.d(t,\"easePoly\",function(){return Ml}),n.d(t,\"easePolyIn\",function(){return Fl}),n.d(t,\"easePolyOut\",function(){return Il}),n.d(t,\"easePolyInOut\",function(){return Ml}),n.d(t,\"easeSin\",function(){return wt}),n.d(t,\"easeSinIn\",function(){return Ct}),n.d(t,\"easeSinOut\",function(){return St}),n.d(t,\"easeSinInOut\",function(){return wt}),n.d(t,\"easeExp\",function(){return Ot}),n.d(t,\"easeExpIn\",function(){return xt}),n.d(t,\"easeExpOut\",function(){return _t}),n.d(t,\"easeExpInOut\",function(){return Ot}),n.d(t,\"easeCircle\",function(){return Tt}),n.d(t,\"easeCircleIn\",function(){return Et}),n.d(t,\"easeCircleOut\",function(){return At}),n.d(t,\"easeCircleInOut\",function(){return Tt}),n.d(t,\"easeBounce\",function(){return Ft}),n.d(t,\"easeBounceIn\",function(){return Rt}),n.d(t,\"easeBounceOut\",function(){return Ft}),n.d(t,\"easeBounceInOut\",function(){return It}),n.d(t,\"easeBack\",function(){return Wl}),n.d(t,\"easeBackIn\",function(){return Hl}),n.d(t,\"easeBackOut\",function(){return zl}),n.d(t,\"easeBackInOut\",function(){return Wl}),n.d(t,\"easeElastic\",function(){return Kl}),n.d(t,\"easeElasticIn\",function(){return Yl}),n.d(t,\"easeElasticOut\",function(){return Kl}),n.d(t,\"easeElasticInOut\",function(){return Jl}),n.d(t,\"forceCenter\",function(){return Yc}),n.d(t,\"forceCollide\",function(){return hp}),n.d(t,\"forceLink\",function(){return dp}),n.d(t,\"forceManyBody\",function(){return gp}),n.d(t,\"forceRadial\",function(){return vp}),n.d(t,\"forceSimulation\",function(){return yp}),n.d(t,\"forceX\",function(){return bp}),n.d(t,\"forceY\",function(){return Cp}),n.d(t,\"formatDefaultLocale\",function(){return Sp.b}),n.d(t,\"format\",function(){return Sp.a}),n.d(t,\"formatPrefix\",function(){return Sp.d}),n.d(t,\"formatLocale\",function(){return Sp.c}),n.d(t,\"formatSpecifier\",function(){return Sp.e}),n.d(t,\"precisionFixed\",function(){return Sp.f}),n.d(t,\"precisionPrefix\",function(){return Sp.g}),n.d(t,\"precisionRound\",function(){return Sp.h}),n.d(t,\"geoArea\",function(){return Eh}),n.d(t,\"geoBounds\",function(){return Rh}),n.d(t,\"geoCentroid\",function(){return Ih}),n.d(t,\"geoCircle\",function(){return zh}),n.d(t,\"geoClipAntimeridian\",function(){return Zh}),n.d(t,\"geoClipCircle\",function(){return ed}),n.d(t,\"geoClipExtent\",function(){return od}),n.d(t,\"geoClipRectangle\",function(){return mi}),n.d(t,\"geoContains\",function(){return dd}),n.d(t,\"geoDistance\",function(){return cd}),n.d(t,\"geoGraticule\",function(){return Ti}),n.d(t,\"geoGraticule10\",function(){return Ri}),n.d(t,\"geoInterpolate\",function(){return fd}),n.d(t,\"geoLength\",function(){return ad}),n.d(t,\"geoPath\",function(){return Hd}),n.d(t,\"geoAlbers\",function(){return Xd}),n.d(t,\"geoAlbersUsa\",function(){return Zd}),n.d(t,\"geoAzimuthalEqualArea\",function(){return tf}),n.d(t,\"geoAzimuthalEqualAreaRaw\",function(){return ef}),n.d(t,\"geoAzimuthalEquidistant\",function(){return of}),n.d(t,\"geoAzimuthalEquidistantRaw\",function(){return nf}),n.d(t,\"geoConicConformal\",function(){return sf}),n.d(t,\"geoConicConformalRaw\",function(){return go}),n.d(t,\"geoConicEqualArea\",function(){return Jd}),n.d(t,\"geoConicEqualAreaRaw\",function(){return lo}),n.d(t,\"geoConicEquidistant\",function(){return uf}),n.d(t,\"geoConicEquidistantRaw\",function(){return bo}),n.d(t,\"geoEquirectangular\",function(){return af}),n.d(t,\"geoEquirectangularRaw\",function(){return vo}),n.d(t,\"geoGnomonic\",function(){return lf}),n.d(t,\"geoGnomonicRaw\",function(){return Co}),n.d(t,\"geoIdentity\",function(){return cf}),n.d(t,\"geoProjection\",function(){return ro}),n.d(t,\"geoProjectionMutator\",function(){return so}),n.d(t,\"geoMercator\",function(){return rf}),n.d(t,\"geoMercatorRaw\",function(){return fo}),n.d(t,\"geoNaturalEarth1\",function(){return pf}),n.d(t,\"geoNaturalEarth1Raw\",function(){return wo}),n.d(t,\"geoOrthographic\",function(){return hf}),n.d(t,\"geoOrthographicRaw\",function(){return xo}),n.d(t,\"geoStereographic\",function(){return df}),n.d(t,\"geoStereographicRaw\",function(){return _o}),n.d(t,\"geoTransverseMercator\",function(){return ff}),n.d(t,\"geoTransverseMercatorRaw\",function(){return Oo}),n.d(t,\"geoRotation\",function(){return Hh}),n.d(t,\"geoStream\",function(){return wh}),n.d(t,\"geoTransform\",function(){return zd}),n.d(t,\"cluster\",function(){return mf}),n.d(t,\"hierarchy\",function(){return $o}),n.d(t,\"pack\",function(){return If}),n.d(t,\"packSiblings\",function(){return Rf}),n.d(t,\"packEnclose\",function(){return Tf}),n.d(t,\"partition\",function(){return Df}),n.d(t,\"stratify\",function(){return kf}),n.d(t,\"tree\",function(){return Lf}),n.d(t,\"treemap\",function(){return jf}),n.d(t,\"treemapBinary\",function(){return qf}),n.d(t,\"treemapDice\",function(){return Pf}),n.d(t,\"treemapSlice\",function(){return Bf}),n.d(t,\"treemapSliceDice\",function(){return Hf}),n.d(t,\"treemapSquarify\",function(){return Uf}),n.d(t,\"treemapResquarify\",function(){return zf}),n.d(t,\"interpolate\",function(){return ku.a}),n.d(t,\"interpolateArray\",function(){return ku.b}),n.d(t,\"interpolateBasis\",function(){return ku.c}),n.d(t,\"interpolateBasisClosed\",function(){return ku.d}),n.d(t,\"interpolateDate\",function(){return ku.g}),n.d(t,\"interpolateNumber\",function(){return ku.m}),n.d(t,\"interpolateObject\",function(){return ku.n}),n.d(t,\"interpolateRound\",function(){return ku.r}),n.d(t,\"interpolateString\",function(){return ku.s}),n.d(t,\"interpolateTransformCss\",function(){return ku.t}),n.d(t,\"interpolateTransformSvg\",function(){return ku.u}),n.d(t,\"interpolateZoom\",function(){return ku.v}),n.d(t,\"interpolateRgb\",function(){return ku.o}),n.d(t,\"interpolateRgbBasis\",function(){return ku.p}),n.d(t,\"interpolateRgbBasisClosed\",function(){return ku.q}),n.d(t,\"interpolateHsl\",function(){return ku.j}),n.d(t,\"interpolateHslLong\",function(){return ku.k}),n.d(t,\"interpolateLab\",function(){return ku.l});n.d(t,\"interpolateHcl\",function(){return ku.h}),n.d(t,\"interpolateHclLong\",function(){return ku.i}),n.d(t,\"interpolateCubehelix\",function(){return ku.e}),n.d(t,\"interpolateCubehelixLong\",function(){return ku.f}),n.d(t,\"quantize\",function(){return ku.w}),n.d(t,\"path\",function(){return Fc}),n.d(t,\"polygonArea\",function(){return Wf}),n.d(t,\"polygonCentroid\",function(){return Gf}),n.d(t,\"polygonHull\",function(){return Kf}),n.d(t,\"polygonContains\",function(){return Jf}),n.d(t,\"polygonLength\",function(){return Xf}),n.d(t,\"quadtree\",function(){return sn}),n.d(t,\"queue\",function(){return Ar}),n.d(t,\"randomUniform\",function(){return nm}),n.d(t,\"randomNormal\",function(){return im}),n.d(t,\"randomLogNormal\",function(){return om}),n.d(t,\"randomBates\",function(){return sm}),n.d(t,\"randomIrwinHall\",function(){return rm}),n.d(t,\"randomExponential\",function(){return am}),n.d(t,\"request\",function(){return um}),n.d(t,\"html\",function(){return cm}),n.d(t,\"json\",function(){return pm}),n.d(t,\"text\",function(){return hm}),n.d(t,\"xml\",function(){return dm}),n.d(t,\"csv\",function(){return mm}),n.d(t,\"tsv\",function(){return ym}),n.d(t,\"scaleBand\",function(){return gm.scaleBand}),n.d(t,\"scalePoint\",function(){return gm.scalePoint}),n.d(t,\"scaleIdentity\",function(){return gm.scaleIdentity}),n.d(t,\"scaleLinear\",function(){return gm.scaleLinear}),n.d(t,\"scaleLog\",function(){return gm.scaleLog}),n.d(t,\"scaleOrdinal\",function(){return gm.scaleOrdinal}),n.d(t,\"scaleImplicit\",function(){return gm.scaleImplicit}),n.d(t,\"scalePow\",function(){return gm.scalePow}),n.d(t,\"scaleSqrt\",function(){return gm.scaleSqrt}),n.d(t,\"scaleQuantile\",function(){return gm.scaleQuantile}),n.d(t,\"scaleQuantize\",function(){return gm.scaleQuantize}),n.d(t,\"scaleThreshold\",function(){return gm.scaleThreshold}),n.d(t,\"scaleTime\",function(){return gm.scaleTime}),n.d(t,\"scaleUtc\",function(){return gm.scaleUtc}),n.d(t,\"schemeCategory10\",function(){return gm.schemeCategory10}),n.d(t,\"schemeCategory20b\",function(){return gm.schemeCategory20b}),n.d(t,\"schemeCategory20c\",function(){return gm.schemeCategory20c}),n.d(t,\"schemeCategory20\",function(){return gm.schemeCategory20}),n.d(t,\"interpolateCubehelixDefault\",function(){return gm.interpolateCubehelixDefault}),n.d(t,\"interpolateRainbow\",function(){return gm.interpolateRainbow}),n.d(t,\"interpolateWarm\",function(){return gm.interpolateWarm}),n.d(t,\"interpolateCool\",function(){return gm.interpolateCool}),n.d(t,\"interpolateViridis\",function(){return gm.interpolateViridis}),n.d(t,\"interpolateMagma\",function(){return gm.interpolateMagma}),n.d(t,\"interpolateInferno\",function(){return gm.interpolateInferno}),n.d(t,\"interpolatePlasma\",function(){return gm.interpolatePlasma}),n.d(t,\"scaleSequential\",function(){return gm.scaleSequential}),n.d(t,\"create\",function(){return _u}),n.d(t,\"creator\",function(){return Ma}),n.d(t,\"local\",function(){return ye}),n.d(t,\"matcher\",function(){return Ba}),n.d(t,\"mouse\",function(){return Tu}),n.d(t,\"namespace\",function(){return Ia}),n.d(t,\"namespaces\",function(){return Fa}),n.d(t,\"clientPoint\",function(){return Au}),n.d(t,\"select\",function(){return xu}),n.d(t,\"selectAll\",function(){return Ru}),n.d(t,\"selection\",function(){return wu}),n.d(t,\"selector\",function(){return Pa}),n.d(t,\"selectorAll\",function(){return $a}),n.d(t,\"style\",function(){return $}),n.d(t,\"touch\",function(){return Fu}),n.d(t,\"touches\",function(){return Iu}),n.d(t,\"window\",function(){return ou}),n.d(t,\"event\",function(){return vu}),n.d(t,\"customEvent\",function(){return ce}),n.d(t,\"arc\",function(){return Fm}),n.d(t,\"area\",function(){return Pm}),n.d(t,\"line\",function(){return Mm}),n.d(t,\"pie\",function(){return Nm}),n.d(t,\"areaRadial\",function(){return Lm}),n.d(t,\"radialArea\",function(){return Lm}),n.d(t,\"lineRadial\",function(){return km}),n.d(t,\"radialLine\",function(){return km}),n.d(t,\"pointRadial\",function(){return Bm}),n.d(t,\"linkHorizontal\",function(){return Xr}),n.d(t,\"linkVertical\",function(){return Zr}),n.d(t,\"linkRadial\",function(){return es}),n.d(t,\"symbol\",function(){return ry}),n.d(t,\"symbols\",function(){return oy}),n.d(t,\"symbolCircle\",function(){return Um}),n.d(t,\"symbolCross\",function(){return jm}),n.d(t,\"symbolDiamond\",function(){return zm}),n.d(t,\"symbolSquare\",function(){return Jm}),n.d(t,\"symbolStar\",function(){return Km}),n.d(t,\"symbolTriangle\",function(){return Zm}),n.d(t,\"symbolWye\",function(){return iy}),n.d(t,\"curveBasisClosed\",function(){return uy}),n.d(t,\"curveBasisOpen\",function(){return ly}),n.d(t,\"curveBasis\",function(){return ay}),n.d(t,\"curveBundle\",function(){return cy}),n.d(t,\"curveCardinalClosed\",function(){return hy}),n.d(t,\"curveCardinalOpen\",function(){return dy}),n.d(t,\"curveCardinal\",function(){return py}),n.d(t,\"curveCatmullRomClosed\",function(){return my}),n.d(t,\"curveCatmullRomOpen\",function(){return yy}),n.d(t,\"curveCatmullRom\",function(){return fy}),n.d(t,\"curveLinearClosed\",function(){return gy}),n.d(t,\"curveLinear\",function(){return Im}),n.d(t,\"curveMonotoneX\",function(){return ws}),n.d(t,\"curveMonotoneY\",function(){return xs}),n.d(t,\"curveNatural\",function(){return vy}),n.d(t,\"curveStep\",function(){return by}),n.d(t,\"curveStepAfter\",function(){return Ts}),n.d(t,\"curveStepBefore\",function(){return As}),n.d(t,\"stack\",function(){return wy}),n.d(t,\"stackOffsetExpand\",function(){return xy}),n.d(t,\"stackOffsetDiverging\",function(){return _y}),n.d(t,\"stackOffsetNone\",function(){return Cy}),n.d(t,\"stackOffsetSilhouette\",function(){return Oy}),n.d(t,\"stackOffsetWiggle\",function(){return Ey}),n.d(t,\"stackOrderAscending\",function(){return Ay}),n.d(t,\"stackOrderDescending\",function(){return Ty}),n.d(t,\"stackOrderInsideOut\",function(){return Ry}),n.d(t,\"stackOrderNone\",function(){return Sy}),n.d(t,\"stackOrderReverse\",function(){return Fy}),n.d(t,\"timeInterval\",function(){return Iy.g}),n.d(t,\"timeMillisecond\",function(){return Iy.h}),n.d(t,\"timeMilliseconds\",function(){return Iy.i}),n.d(t,\"utcMillisecond\",function(){return Iy.L}),n.d(t,\"utcMilliseconds\",function(){return Iy.M}),n.d(t,\"timeSecond\",function(){return Iy.r}),n.d(t,\"timeSeconds\",function(){return Iy.s}),n.d(t,\"utcSecond\",function(){return Iy.V}),n.d(t,\"utcSeconds\",function(){return Iy.W}),n.d(t,\"timeMinute\",function(){return Iy.j}),n.d(t,\"timeMinutes\",function(){return Iy.k}),n.d(t,\"timeHour\",function(){return Iy.e}),n.d(t,\"timeHours\",function(){return Iy.f}),n.d(t,\"timeDay\",function(){return Iy.a}),n.d(t,\"timeDays\",function(){return Iy.b}),n.d(t,\"timeWeek\",function(){return Iy.B}),n.d(t,\"timeWeeks\",function(){return Iy.C}),n.d(t,\"timeSunday\",function(){return Iy.t}),n.d(t,\"timeSundays\",function(){return Iy.u}),n.d(t,\"timeMonday\",function(){return Iy.l}),n.d(t,\"timeMondays\",function(){return Iy.m}),n.d(t,\"timeTuesday\",function(){return Iy.x}),n.d(t,\"timeTuesdays\",function(){return Iy.y}),n.d(t,\"timeWednesday\",function(){return Iy.z}),n.d(t,\"timeWednesdays\",function(){return Iy.A}),n.d(t,\"timeThursday\",function(){return Iy.v}),n.d(t,\"timeThursdays\",function(){return Iy.w}),n.d(t,\"timeFriday\",function(){return Iy.c}),n.d(t,\"timeFridays\",function(){return Iy.d}),n.d(t,\"timeSaturday\",function(){return Iy.p}),n.d(t,\"timeSaturdays\",function(){return Iy.q}),n.d(t,\"timeMonth\",function(){return Iy.n}),n.d(t,\"timeMonths\",function(){return Iy.o}),n.d(t,\"timeYear\",function(){return Iy.D}),n.d(t,\"timeYears\",function(){return Iy.E}),n.d(t,\"utcMinute\",function(){return Iy.N}),n.d(t,\"utcMinutes\",function(){return Iy.O}),n.d(t,\"utcHour\",function(){return Iy.J}),n.d(t,\"utcHours\",function(){return Iy.K}),n.d(t,\"utcDay\",function(){return Iy.F}),n.d(t,\"utcDays\",function(){return Iy.G}),n.d(t,\"utcWeek\",function(){return Iy._5}),n.d(t,\"utcWeeks\",function(){return Iy._6}),n.d(t,\"utcSunday\",function(){return Iy.X}),n.d(t,\"utcSundays\",function(){return Iy.Y}),n.d(t,\"utcMonday\",function(){return Iy.P}),n.d(t,\"utcMondays\",function(){return Iy.Q}),n.d(t,\"utcTuesday\",function(){return Iy._1}),n.d(t,\"utcTuesdays\",function(){return Iy._2}),n.d(t,\"utcWednesday\",function(){return Iy._3}),n.d(t,\"utcWednesdays\",function(){return Iy._4}),n.d(t,\"utcThursday\",function(){return Iy.Z}),n.d(t,\"utcThursdays\",function(){return Iy._0}),n.d(t,\"utcFriday\",function(){return Iy.H}),n.d(t,\"utcFridays\",function(){return Iy.I}),n.d(t,\"utcSaturday\",function(){return Iy.T}),n.d(t,\"utcSaturdays\",function(){return Iy.U}),n.d(t,\"utcMonth\",function(){return Iy.R}),n.d(t,\"utcMonths\",function(){return Iy.S}),n.d(t,\"utcYear\",function(){return Iy._7}),n.d(t,\"utcYears\",function(){return Iy._8}),n.d(t,\"timeFormatDefaultLocale\",function(){return My.d}),n.d(t,\"timeFormat\",function(){return My.c}),n.d(t,\"timeParse\",function(){return My.f}),n.d(t,\"utcFormat\",function(){return My.g}),n.d(t,\"utcParse\",function(){return My.h}),n.d(t,\"timeFormatLocale\",function(){return My.e}),n.d(t,\"isoFormat\",function(){return My.a}),n.d(t,\"isoParse\",function(){return My.b}),n.d(t,\"now\",function(){return Oe}),n.d(t,\"timer\",function(){return Te}),n.d(t,\"timerFlush\",function(){return Re}),n.d(t,\"timeout\",function(){return Gu}),n.d(t,\"interval\",function(){return Yu}),n.d(t,\"transition\",function(){return pt}),n.d(t,\"active\",function(){return tc}),n.d(t,\"interrupt\",function(){return sl}),n.d(t,\"voronoi\",function(){return qy});n.d(t,\"zoom\",function(){return Gy}),n.d(t,\"zoomTransform\",function(){return pa}),n.d(t,\"zoomIdentity\",function(){return zy})},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(203),r=n(188),s=n(0),a=function(e){function t(t,n,i,o){var r=e.call(this,t,n,i,o)||this;return r.coveoRoot=t,r.ID=n,r.facetSliders=[],r.registerOnOpenHandler(),r}return i(t,e),t.init=function(e,n,i){o.ResponsiveFacetColumn.init(t,e,n,i,r.FacetSlider.ID)},t.prototype.registerComponent=function(t){return e.prototype.registerComponent.call(this,t),t instanceof r.FacetSlider&&(this.facetSliders.push(t),!0)},t.prototype.registerOnOpenHandler=function(){this.dropdown.registerOnOpenHandler(this.drawFacetSliderGraphs,this)},t.prototype.drawFacetSliderGraphs=function(){s.each(this.facetSliders,function(e){return e.drawDelayedGraphData()})},t}(o.ResponsiveFacetColumn);t.ResponsiveFacetSlider=a},function(e,t,n){\"use strict\";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(s,a)}u((i=i.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){function n(e){return function(t){return i([e,t])}}function i(n){if(o)throw new TypeError(\"Generator is already executing.\");for(;u;)try{if(o=1,r&&(s=r[2&n[0]?\"return\":n[0]?\"throw\":\"next\"])&&!(s=s.call(r,n[1])).done)return s;switch(r=0,s&&(n=[0,s.value]),n[0]){case 0:case 1:s=n;break;case 4:return u.label++,{value:n[1],done:!1};case 5:u.label++,r=n[1],n=[0];continue;case 7:n=u.ops.pop(),u.trys.pop();continue;default:if(s=u.trys,!(s=s.length>0&&s[s.length-1])&&(6===n[0]||2===n[0])){u=0;continue}if(3===n[0]&&(!s||n[1]>s[0]&&n[1]<s[3])){u.label=n[1];break}if(6===n[0]&&u.label<s[1]){u.label=s[1],s=n;break}if(s&&u.label<s[2]){u.label=s[2],u.ops.push(n);break}s[2]&&u.ops.pop(),u.trys.pop();continue}n=t.call(e,u)}catch(e){n=[6,e],r=0}finally{o=s=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}var o,r,s,a,u={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a};Object.defineProperty(t,\"__esModule\",{value:!0});var r=function(){function e(e,t){this.queryController=e,this.options=t}return e.prototype.getSuggestions=function(e){return i(this,void 0,void 0,function(){var t;return o(this,function(n){switch(n.label){case 0:return[4,this.getFieldValuesToQuery(e)];case 1:return t=n.sent(),[2,this.getAllSuggestionsRows(t.responses,t.reference)]}})})},e.prototype.getAllSuggestionsRows=function(e,t){var n=this;return e.reduce(function(e,i){var o=i.values.map(function(e){return{numberOfResults:e.numberOfResults,keyword:i.keyword,value:e.value,score:n.computeScoreForSuggestionRow(e,t),field:n.options.field}});return e.concat(o)},[])},e.prototype.getFieldValuesToQuery=function(e){return i(this,void 0,void 0,function(){var t,n,i,r,s,a,u,l=this;return o(this,function(o){switch(o.label){case 0:return t=this.buildReferenceFieldValueRequest(),n=this.getQueryToExecuteParts(),i=e.map(function(e){return l.buildListFieldValueRequest(n.concat([e.text]).join(\" \"))}),r=i.concat([t]),[4,this.queryController.getEndpoint().listFieldValuesBatch({batch:r})];case 1:return s=o.sent(),a=this.computeReferenceFromBatch(s.pop()),u=s.map(function(t,n){return{keyword:e[n],values:t}}),[2,{responses:u,reference:a}]}})})},e.prototype.computeScoreForSuggestionRow=function(e,t){var n=t.fieldsTotal[e.value]||t.smallestTotal;return{distanceFromTotalForField:(n-e.numberOfResults)/n*100}},e.prototype.computeReferenceFromBatch=function(e){var t={};return e.forEach(function(e){return t[e.value]=e.numberOfResults}),{fieldsTotal:t,smallestTotal:e[e.length-1].numberOfResults}},e.prototype.buildListFieldValueRequest=function(e){return{field:this.options.field,ignoreAccents:!0,maximumNumberOfValues:3,queryOverride:e}},e.prototype.buildReferenceFieldValueRequest=function(){return{field:this.options.field}},e.prototype.getQueryToExecuteParts=function(){var e=this.queryController.getLastQuery();return[e&&e.aq?this.removeFieldExpressionFromExpression(this.options.field.toString(),e.aq):\"\",e.cq].filter(function(e){return!!e})},e.prototype.removeFieldExpressionFromExpression=function(e,t){return t.replace(new RegExp(e+\"==([^)]*)\",\"gi\"),\"\").replace(new RegExp(e+\"==[^ ]*\",\"gi\"),\"\")},e}();t.FacetValueSuggestionsProvider=r},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(462),r=n(0),s=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.facet=t,i.facetValueElementKlass=n,i}return i(t,e),t.prototype.sortFacetValues=function(e){var t=this;if(void 0===e&&(e=this.hierarchyFacetValues),!this.facet.shouldReshuffleFacetValuesClientSide){var n=r.map(e,function(e,t){return{hierarchy:e,idx:t}});if(0!=this.facet.options.levelStart&&this.facet.options.sortCriteria&&-1!=this.facet.options.sortCriteria.toLowerCase().indexOf(\"alpha\")){var i=-1!=this.facet.options.sortCriteria.toLowerCase().indexOf(\"descending\");n=n.sort(function(e,n){var o=null!=r.find(t.facet.topLevelHierarchy,function(t){return t.facetValue.value.toLowerCase()==e.hierarchy.value.toLowerCase()}),s=null!=r.find(t.facet.topLevelHierarchy,function(t){return t.facetValue.value.toLowerCase()==e.hierarchy.value.toLowerCase()});if(o&&s){var a=t.facet.getValueCaption(e.hierarchy),u=t.facet.getValueCaption(n.hierarchy),l=a.localeCompare(u);return i?-1*l:l}return e.idx-n.idx})}return n=n.sort(function(e,n){if(e.hierarchy.selected===n.hierarchy.selected){var i=t.facet.getValueFromHierarchy(e.hierarchy),o=t.facet.getValueFromHierarchy(n.hierarchy);return i.hasChildSelected===o.hasChildSelected?e.idx-n.idx:i.hasChildSelected?-1:1}return e.hierarchy.selected?-1:1}),r.pluck(n,\"hierarchy\")}return e},t.prototype.getValuesToBuildWith=function(){return this.facet.shouldReshuffleFacetValuesClientSide?this.hierarchyFacetValues:this.sortFacetValues()},t}(o.FacetValuesList);t.HierarchicalFacetValuesList=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(208),r=n(43),s=n(0),a=function(e){function t(t){var n=e.call(this,t)||this;return n.facet=t,n}return i(t,e),t.prototype.search=function(e,t){var n=this;void 0===t&&(t=e.nbResults);var i=r.FacetUtils.getRegexToUseForFacetSearch(this.facet.facetSearch.getValueInInputForFacetSearch(),this.facet.options.facetSearchIgnoreAccents);return new Promise(function(t){var o=s.chain(n.facet.getAllValueHierarchy()).toArray().filter(function(t){return null!=n.facet.getValueCaption(t.facetValue).match(i)&&!s.contains(s.map(e.alwaysExclude,function(e){return e.toLowerCase()}),t.facetValue.value.toLowerCase())}).first(n.facet.options.numberOfValuesInFacetSearch).value();t(s.map(o,function(e){return e.facetValue}))})},t.prototype.getAllowedValuesFromSelected=function(){return[]},t}(o.FacetQueryController);t.HierarchicalFacetQueryController=a},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(461),r=n(585),s=function(e){function t(t){var n=e.call(this,t,r.HierarchicalFacetSearchValueElement)||this;return n.facet=t,n}return i(t,e),t}(o.FacetSearchValuesList);t.HierarchicalFacetSearchValuesList=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(126),r=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.facet=t,o.facetValue=n,o.keepDisplayedValueNextTime=i,o}return i(t,e),t.prototype._handleSelectValue=function(t){this.facet.open(this.facetValue),e.prototype.handleSelectValue.call(this,t)},t.prototype._handleExcludeClick=function(t){this.facet.open(this.facetValue),e.prototype.handleExcludeClick.call(this,t)},t}(o.FacetValueElement);t.HierarchicalFacetSearchValueElement=r},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(460),r=n(170),s=n(125),a=n(4),u=n(26),l=n(0),c=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.facet=t,o.facetSearchValuesListKlass=n,o}return i(t,e),t.prototype.buildParamsForExcludingCurrentlyDisplayedValues=function(){var t=e.prototype.buildParamsForExcludingCurrentlyDisplayedValues.call(this);return t.alwaysExclude=this.facet.getDisplayedValues(),this.facet.facetSearch.currentlyDisplayedResults&&(t.alwaysExclude=t.alwaysExclude.concat(this.facet.facetSearch.currentlyDisplayedResults)),t},t.prototype.selectAllValuesMatchingSearch=function(){var e=this;this.facet.showWaitingAnimation();var t=new r.FacetSearchParameters(this.facet);t.nbResults=this.facet.numberOfValues,t.alwaysInclude=this.facet.getDisplayedValues(),t.setValueToSearch(this.getValueInInputForFacetSearch()),this.facet.facetQueryController.search(t).then(function(t){e.dismissSearchResults(),u.ModalBox.close(!0);var n=e.getFacetValues(t);e.facet.processFacetSearchAllResultsSelected(n)}),this.dismissSearchResults()},t.prototype.getFacetValues=function(e){var t=this,n=[];return l.each(e,function(e){var i=t.facet.getValueFromHierarchy(e.value);n.push(t.createFacetValuesFromHierarchy(i))}),l.flatten(n)},t.prototype.createFacetValuesFromHierarchy=function(e){var t=this,n=[],i=e.facetValue.value,o=this.facet.values.get(i);a.Utils.exists(o)||(o=s.FacetValue.create(i)),o.selected=!0,o.excluded=!1,n.push(o);var r=e.childs;return l.each(r,function(e){var i=t.facet.getValueFromHierarchy(e.facetValue.value);n.push(t.createFacetValuesFromHierarchy(i))}),n},t}(o.FacetSearch);t.HierarchicalFacetSearch=c},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(459),r=n(588),s=n(1),a=n(0),u=function(e){function t(t,n,i){var o=e.call(this,t,n,r.HierarchicalBreadcrumbValueElement)||this;return o.facet=t,o.facetValues=n,o.valueHierarchy=i,o}return i(t,e),t.prototype.buildAsString=function(){if(this.build(),this.elem){return this.facet.options.title+\": \"+a.map(s.$$(this.elem).findAll(\".coveo-facet-breadcrumb-value\"),function(e){return a.each(s.$$(e).findAll(\".coveo-hierarchical-breadcrumb-separator\"),function(e){s.$$(e).text(\"▸\")}),s.$$(e).text()}).join(\", \")}return\"\"},t}(o.BreadcrumbValueList);t.HierarchicalBreadcrumbValuesList=u},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(458),r=n(0),s=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.facet=t,i.facetValue=n,i}return i(t,e),t.prototype.build=function(){var t=e.prototype.build.call(this);t.addClass(\"coveo-hierarchical-facet-value\");var n=t.find(\".coveo-facet-breadcrumb-caption\"),i=this.facetValue.value.split(this.facet.options.delimitingCharacter);return i=r.map(i,function(e){return r.escape(e)}),n.innerHTML=i.join(\"<span class='coveo-hierarchical-breadcrumb-separator'></span>\"),t},t}(o.BreadcrumbValueElement);t.HierarchicalBreadcrumbValueElement=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(464),r=n(590),s=function(e){function t(t,n,i){var o=e.call(this,t,n,i,r.OmniboxHierarchicalValueElement)||this;return o.facet=t,o.facetValues=n,o.omniboxObject=i,o}return i(t,e),t}(o.OmniboxValuesList);t.OmniboxHierarchicalValuesList=s},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(463),r=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.facet=t,o.facetValue=n,o.eventArg=i,o}return i(t,e),t.prototype._handleSelectValue=function(t){this.facet.open(this.facetValue),e.prototype.handleSelectValue.call(this,t)},t.prototype._handleExcludeClick=function(t){this.facet.open(this.facetValue),e.prototype.handleExcludeClick.call(this,t)},t}(o.OmniboxValueElement);t.OmniboxHierarchicalValueElement=r},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(126),r=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.facet=t,o.facetValue=n,o.keepDisplayedValueNextTime=i,o}return i(t,e),t}(o.FacetValueElement);t.HierarchicalFacetValueElement=r},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(0),r=function(){function e(e,t){void 0===e&&(e=0),this.previewActive=!1,this.element=t,this.value=e}return e.prototype.getValue=function(){return this.value},e.prototype.getHTML=function(){return this.element},e.prototype.setValue=function(e){this.value=e},e.prototype.setHTML=function(e){this.element=e},e.prototype.addPreview=function(e,t){this.previewActive=!0;var n=i.$$(\"div\",{className:\"matrix-results-preview-container\"});n.el.style.minWidth=e,n.el.style.maxWidth=t,n.on(\"click\",function(e){e.stopPropagation()}),this.element.appendChild(n.el);var r=i.$$(this.element).findAll(\".matrix-results-preview-container\");o.each(r,function(e){i.$$(e).hide()})},e.prototype.removePreview=function(){this.previewActive=!1;var e=i.$$(this.element).find(\".matrix-results-preview-container\");e&&i.$$(e).detach()},e.prototype.updatePreview=function(e){if(this.previewActive){var t=i.$$(this.element).find(\".matrix-results-preview-container\");t.innerHTML+=e,i.$$(t).show()}},e}();t.Cell=r},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=n(1),s=n(20),a=function(e){function t(t,n){var i=e.call(this)||this;return i.computedField=t,i.format=n,i}return i(t,e),t.prototype.instantiateToString=function(e,t){return\"<div class='coveo-result-frame'><div class='coveo-result-row'><div class='coveo-result-cell' style='width: 40px; padding-right:5px;vertical-align: middle'><a class='CoveoIcon' data-small='true'></a></div><div class='coveo-result-cell' style='font-size:13px;vertical-align: middle'><a class='CoveoResultLink'></a></div><div class='coveo-result-cell' style='width:80px; text-align:right; font-size:13px; padding-right: 5px;vertical-align: middle'>\"+s.format(parseInt(e.raw[this.computedField.slice(1)]),this.format)+\"</div></div></div>\"},t.prototype.instantiateToElement=function(e,t){var n=this;return new Promise(function(t,i){return r.$$(\"div\",void 0,n.instantiateToString(e)).el})},t}(o.Template);t.DefaultMatrixResultPreviewTemplate=a},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=function(e){function t(){return e.call(this)||this}return i(t,e),t.prototype.instantiateToString=function(e){return'<div class=\"coveo-quick-view-full-height\"><div class=\"CoveoQuickviewDocument\"></div></div>'},t}(o.Template);t.DefaultQuickviewTemplate=r},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(23),r=n(1),s=function(){function e(){this.el=this.buildIFrame().el}return Object.defineProperty(e.prototype,\"iframeHTMLElement\",{get:function(){return this.iframeElement},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"document\",{get:function(){return this.iframeElement.contentWindow.document},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"body\",{get:function(){return this.document.body},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"window\",{get:function(){return this.iframeElement.contentWindow},enumerable:!0,configurable:!0}),e.prototype.isNewQuickviewDocument=function(){var e=r.$$(this.document.head).find(\"meta[name='generator']\");return e&&\"pdf2htmlEX\"==e.getAttribute(\"content\")},e.prototype.render=function(e){var t=this;return this.quickviewIsClosedByEndUser()?Promise.reject(null):new Promise(function(n,i){t.iframeElement.onload=function(){n(t.iframeElement)},t.addClientSideTweaksToIFrameStyling(e),t.writeToIFrame(e)})},e.prototype.renderError=function(e){var t=this;return this.quickviewIsClosedByEndUser()?Promise.reject(null):new Promise(function(n,i){var s=\"\";switch(e.status){case 400:s=o.l(\"NoQuickview\");break;default:s=o.l(\"OoopsError\")}var a=document.implementation.createHTMLDocument();a.body.style.fontFamily=\"Arimo, 'Helvetica Neue', Helvetica, Arial, sans-serif\",r.$$(a.body).text(s),t.writeToIFrame(a),n(t.iframeElement)})},e.prototype.quickviewIsClosedByEndUser=function(){return null==this.iframeElement.contentDocument},e.prototype.buildIFrame=function(){var e=r.$$(\"iframe\",{sandbox:\"allow-same-origin allow-top-navigation\",src:\"about:blank\"});this.iframeElement=e.el;var t=r.$$(\"div\",{className:\"coveo-iframeWrapper\"});return t.append(e.el),t},e.prototype.writeToIFrame=function(e){this.allowDocumentLinkToEscapeSandbox(e),this.document.open(),this.document.write(e.getElementsByTagName(\"html\")[0].outerHTML),this.document.close()},e.prototype.allowDocumentLinkToEscapeSandbox=function(e){i.each(r.$$(e.body).findAll(\"a\"),function(e){e.setAttribute(\"target\",\"_top\")})},e.prototype.addClientSideTweaksToIFrameStyling=function(e){var t=r.$$(\"style\",{type:\"text/css\"}).el,n=\"\\n      html pre {\\n        white-space: pre-wrap;\\n        word-wrap: break-word;\\n      }\\n      body, html {\\n        font-family: Arimo, 'Helvetica Neue', Helvetica, Arial, sans-serif; -webkit-text-size-adjust: none;\\n      }\\n      \"+(o.DeviceUtils.isIos()?\"\\n      body, html {\\n        height: 1px !important;\\n        min-height: 100%;\\n        width: 1px !important;\\n        min-width: 100%;\\n        overflow: scroll;\\n        margin: auto\\n      }\\n      \":\"\")+\"\\n      \";o.DeviceUtils.isIos()&&(r.$$(this.iframeElement).setAttribute(\"scrolling\",\"no\"),this.iframeElement.parentElement.style.margin=\"0 0 5px 5px\"),t.appendChild(document.createTextNode(n)),e.head.appendChild(t)},e}();t.QuickviewDocumentIframe=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=function(){function e(){this.el=this.buildHeader().el}return e.prototype.addWord=function(e){this.el.appendChild(e.el)},e.prototype.buildHeader=function(){return i.$$(\"div\",{className:\"coveo-quickview-header\"})},e}();t.QuickviewDocumentHeader=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(0),r=n(607),s=n(222),a=function(){function e(e,t){this.iframe=e,this.result=t,this.words={},this.scanDocument()}return e.prototype.scanDocument=function(){var e=this;o.each(i.$$(this.iframe.body).findAll('[id^=\"'+s.HIGHLIGHT_PREFIX+'\"]'),function(t,n){var i=new r.QuickviewDocumentWord(e.result);i.doCompleteInitialScanForKeywordInDocument(t);var o=e.words[i.indexIdentifier];o?(o.addElement(t),o.occurrence==i.occurrence&&(o.text+=i.text)):e.words[i.indexIdentifier]=i})},e}();t.QuickviewDocumentWords=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(23),r=n(9),s=n(1),a=n(222),u=n(608),l=function(){function e(e){this.result=e,this.count=0,this.elements=[],this.currentNavigationPosition=-1,this.logger=new r.Logger(this)}return e.prototype.addElement=function(e){this.count++,this.elements.push(e)},e.prototype.navigateForward=function(){return this.currentNavigationPosition++,this.currentNavigationPosition>=this.elements.length&&(this.currentNavigationPosition=0),this.highlightNavigation(),this.putElementIntoView(),this.elements[this.currentNavigationPosition]},e.prototype.navigateBackward=function(){return this.currentNavigationPosition--,this.currentNavigationPosition<0&&(this.currentNavigationPosition=this.elements.length-1),this.highlightNavigation(),this.putElementIntoView(),this.elements[this.currentNavigationPosition]},e.prototype.navigateTo=function(e){return this.currentNavigationPosition=e,(this.currentNavigationPosition<0||this.currentNavigationPosition>=this.elements.length)&&(this.currentNavigationPosition=0,this.logger.warn(\"Invalid position in quickview navigation: \"+e)),this.highlightNavigation(),this.elements[this.currentNavigationPosition]},e.prototype.doCompleteInitialScanForKeywordInDocument=function(e){var t=this.parseKeywordIdentifier(e);t&&(this.indexIdentifier=t.keywordIdentifier,this.occurrence=t.keywordOccurrencesInDocument,this.indexTermPart=t.keywordTermPart,this.text=this.getText(e),this.color=new u.QuickviewDocumentWordColor(e.style.backgroundColor),this.addElement(e))},e.prototype.isTaggedWord=function(e){return\"coveotaggedword\"==e.nodeName.toLowerCase()},e.prototype.highlightNavigation=function(){var e=this,t=this.elements[this.currentNavigationPosition],n=i.without(this.elements,t);t.style.color=this.color.htmlColor,t.style.backgroundColor=this.color.invert(),n.forEach(function(t){t.style.color=\"\",t.style.backgroundColor=e.color.htmlColor})},e.prototype.putElementIntoView=function(){this.elements[this.currentNavigationPosition].scrollIntoView()},e.prototype.getText=function(e){var t=this.getHighlightedInnerText(e);return this.resolveOriginalTerm(t)},e.prototype.resolveOriginalTerm=function(e){var t=this;return this.result&&this.result.termsToHighlight?i.find(i.keys(this.result.termsToHighlight),function(n){var r=o.StringUtils.equalsCaseInsensitive(n,e),s=void 0!=i.find(t.result.termsToHighlight[n],function(t){return o.StringUtils.equalsCaseInsensitive(t,e)});return r||s})||e:e},e.prototype.getHighlightedInnerText=function(e){if(!this.isTaggedWord(e))return s.$$(e).text()||\"\";var t=s.$$(e).children();return t.length>=1?s.$$(i.first(t)).text()||\"\":\"\"},e.prototype.parseKeywordIdentifier=function(e){var t=e.id.substr(a.HIGHLIGHT_PREFIX.length+1).match(/^([0-9]+)\\.([0-9]+)\\.([0-9]+)$/);return!t||t.length<=3?null:{keywordIdentifier:t[1],keywordOccurrencesInDocument:parseInt(t[2],10),keywordTermPart:parseInt(t[3],10)}},e}();t.QuickviewDocumentWord=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(139),o=function(){function e(e){this.htmlColor=e;var t=e.match(/\\d+/g);t&&(this.r=parseInt(t[0],10),this.g=parseInt(t[1],10),this.b=parseInt(t[2],10))}return e.prototype.invert=function(){return\"rgb(\"+(255-this.r)+\", \"+(255-this.g)+\", \"+(255-this.b)+\")\"},e.prototype.saturate=function(){var e=i.ColorUtils.rgbToHsv(this.r,this.g,this.b);e[1]*=2,e[1]>1&&(e[1]=1);var t=i.ColorUtils.hsvToRgb(e[0],e[1],e[2]);return\"rgb(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\")\"},e}();t.QuickviewDocumentWordColor=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=function(){function e(e,t,n){this.word=e,this.previewBar=t,this.iframe=n,this.el=this.render()}return e.prototype.render=function(){var e=i.$$(\"span\",{className:\"coveo-term-for-quickview\"});return e.append(this.buildName().el),e.append(this.renderArrow(\"up\").el),e.append(this.renderArrow(\"down\").el),e.el.style.backgroundColor=this.word.color.htmlColor,e.el.style.borderColor=this.word.color.saturate(),e.el},e.prototype.buildName=function(){var e=this,t=i.$$(\"span\",{className:\"coveo-term-for-quickview-name\"},this.word.text+\" (\"+this.word.count+\")\");return t.on(\"click\",function(){return e.navigate(!1)}),t},e.prototype.navigate=function(e){var t;if(e?(t=this.word.navigateBackward(),this.previewBar.navigateBackward(this.word)):(t=this.word.navigateForward(),this.previewBar.navigateForward(this.word)),this.iframe.isNewQuickviewDocument()){var n=i.$$(t).closest(\".pc\");i.$$(n).addClass(\"opened\")}t.scrollIntoView()},e.prototype.renderArrow=function(e){var t=this,n=i.$$(\"span\",{className:\"coveo-term-for-quickview-\"+e+\"-arrow\"}),o=i.$$(\"span\",{className:\"coveo-term-for-quickview-\"+e+\"-arrow-icon\"});return n.append(o.el),n.on(\"click\",function(){return t.navigate(\"up\"==e)}),n},e}();t.QuickviewDocumentWordButton=o},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(0),r=n(9),s=function(){function e(e,t){this.iframe=e,this.words=t,this.wordIndicators=new Map,this.logger=new r.Logger(this),this.renderPreviewBar()}return e.prototype.navigateForward=function(e){var t=this.wordIndicators.get(e);return t?(t.position++,t.position>=t.indicators.length&&(t.position=0),this.highlightNavigation(e),t.indicators[t.position]):(this.logger.warn(\"Invalid navigation for given word.\",e),null)},e.prototype.navigateBackward=function(e){var t=this.wordIndicators.get(e);return t?(t.position--,t.position<0&&(t.position=t.indicators.length-1),this.highlightNavigation(e),t.indicators[t.position]):(this.logger.warn(\"Invalid navigation for the given word.\",e),null)},e.prototype.navigateTo=function(e,t){var n=this.wordIndicators.get(t);return n?(n.position=e,(n.position<0||n.position>=n.indicators.length)&&(this.logger.warn(\"Invalid navigation for the given position: \"+e),n.position=0),this.highlightNavigation(t),n.indicators[n.position]):(this.logger.warn(\"Invalid navigation for the given word\",t),null)},e.prototype.highlightNavigation=function(e){var t=this,n=this.wordIndicators.get(e),i=n.indicators[n.position],r=o.without(n.indicators,i);i.style.backgroundColor=e.color.invert(),i.style.border=\"1px solid \"+e.color.invert(),r.forEach(function(n){return t.defaultStyleColor(n,e)})},e.prototype.renderPreviewBar=function(){var e=this,t=i.$$(\"div\");t.el.style.width=\"15px\",t.el.style.position=\"fixed\",t.el.style.top=\"0\",t.el.style.right=\"0px\",t.el.style.height=\"100%\",this.iframe.body.appendChild(t.el),o.each(this.words.words,function(n){o.each(n.elements,function(i){var o=e.renderWordPositionIndicator(i,n).el;e.wordIndicators.has(n)?e.wordIndicators.get(n).indicators.push(o):e.wordIndicators.set(n,{indicators:[o],position:-1}),t.append(o)}),e.handleOverlappingIndicators(n)})},e.prototype.renderWordPositionIndicator=function(e,t){var n=new i.Doc(this.iframe.document).height(),o=e.getBoundingClientRect().top,r=i.$$(\"div\");return r.el.style.position=\"absolute\",r.el.style.top=o/n*100+\"%\",r.el.style.width=\"100%\",r.el.style.height=\"1px\",this.defaultStyleColor(r.el,t),r},e.prototype.defaultStyleColor=function(e,t){e.style.border=\"1px solid \"+t.color.saturate(),e.style.backgroundColor=t.color.htmlColor},e.prototype.handleOverlappingIndicators=function(e){for(var t=this.wordIndicators.get(e).indicators,n=0;n<t.length;n++)!function(e){var n=o.chain(t).without(t[e]).find(function(n){return n.style.top==t[e].style.top}).value();n&&(i.$$(t[e]).remove(),t[e]=n)}(n)},e}();t.QuickviewDocumentPreviewBar=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(58),o=n(124),r=n(18),s=n(4),a=n(1),u=n(9),l=n(189),c=n(612),p=n(130),h=n(116),d=n(6),f=n(7),m=n(28),y=n(11),g=n(0);n(613);var v=n(70),b=function(){function e(e,t,n,i){this.coveoRoot=e,this.ID=t,this.responsiveDropdown=i,this.recommendationRoot=this.getRecommendationRoot(),this.dropdownHeaderLabel=n.dropdownHeaderLabel,this.breakpoint=this.defineResponsiveBreakpoint(n),this.searchInterface=f.Component.get(this.coveoRoot.el,r.SearchInterface,!1),this.dropdown=this.buildDropdown(i),this.registerOnOpenHandler(),this.registerQueryEvents(),this.handleResizeEvent()}return e.init=function(t,n,o){var r=new u.Logger(\"ResponsiveRecommendation\"),s=this.findParentRootOfRecommendationComponent(t);return s?a.$$(s).find(\".coveo-results-column\")?void i.ResponsiveComponentsManager.register(e,a.$$(s),l.Recommendation.ID,n,g.extend({},o,{initializationEventRoot:a.$$(t)})):void r.info(\"Cannot find element with class coveo-results-column. Disabling responsive mode for this component.\"):void r.info(\"Recommendation component has no parent interface. Disabling responsive mode for this component.\")},e.findParentRootOfRecommendationComponent=function(e){var t=a.$$(e).parents(f.Component.computeCssClassName(r.SearchInterface));return t[0]?a.$$(t[0]):null},e.prototype.handleResizeEvent=function(){this.needSmallMode()&&!o.ResponsiveComponentsUtils.isSmallRecommendationActivated(this.coveoRoot)?this.changeToSmallMode():!this.needSmallMode()&&o.ResponsiveComponentsUtils.isSmallRecommendationActivated(this.coveoRoot)&&this.changeToLargeMode(),this.dropdown.isOpened&&this.dropdown.dropdownContent.positionDropdown()},e.prototype.needDropdownWrapper=function(){return this.needSmallMode()},e.prototype.needSmallMode=function(){var e=this.coveoRoot.width()<=this.breakpoint;if(!this.searchInterface)return e;switch(this.searchInterface.responsiveComponents.getResponsiveMode()){case\"small\":return!0;case\"auto\":return e;default:return!1}},e.prototype.changeToSmallMode=function(){var e=this;this.dropdown.close();var t=this.coveoRoot.find(\".\"+i.ResponsiveComponentsManager.DROPDOWN_HEADER_WRAPPER_CSS_CLASS);t?(a.$$(t).append(this.dropdown.dropdownHeader.element.el),this.disableFacetPreservePosition(),o.ResponsiveComponentsUtils.activateSmallRecommendation(this.coveoRoot),o.ResponsiveComponentsUtils.activateSmallRecommendation(this.recommendationRoot)):v.Defer.defer(function(){return e.handleResizeEvent()})},e.prototype.changeToLargeMode=function(){this.enableFacetPreservePosition(),this.dropdown.cleanUp(),o.ResponsiveComponentsUtils.deactivateSmallRecommendation(this.coveoRoot),o.ResponsiveComponentsUtils.deactivateSmallRecommendation(this.recommendationRoot)},e.prototype.buildDropdown=function(e){var t=this.buildDropdownContent(),n=this.buildDropdownHeader(),i=e||new h.ResponsiveDropdown(t,n,this.coveoRoot);return i.disablePopupBackground(),i},e.prototype.buildDropdownHeader=function(){var e=a.$$(\"a\"),t=a.$$(\"p\");return t.text(d.l(this.dropdownHeaderLabel)),e.el.appendChild(t.el),new p.ResponsiveDropdownHeader(\"recommendation\",e)},e.prototype.buildDropdownContent=function(){var e,t=this.coveoRoot.find(\".coveo-recommendation-column\");return e=t?a.$$(t):a.$$(this.coveoRoot.find(\".\"+f.Component.computeCssClassName(l.Recommendation))),new c.RecommendationDropdownContent(\"recommendation\",e,this.coveoRoot)},e.prototype.defineResponsiveBreakpoint=function(t){return s.Utils.isNullOrUndefined(t.responsiveBreakpoint)?e.RESPONSIVE_BREAKPOINT:t.responsiveBreakpoint},e.prototype.getFacetSliders=function(){var e=[];return this.coveoRoot.findAll(f.Component.computeSelectorForType(\"FacetSlider\")).forEach(function(t){var n=f.Component.get(t);n&&e.push(n)}),e},e.prototype.getFacets=function(){var e=[];return this.coveoRoot.findAll(f.Component.computeSelectorForType(\"Facet\")).forEach(function(t){var n=f.Component.get(t);n&&e.push(n)}),e},e.prototype.enableFacetPreservePosition=function(){this.getFacets().forEach(function(e){return e.options.preservePosition=!0})},e.prototype.disableFacetPreservePosition=function(){this.getFacets().forEach(function(e){return e.options.preservePosition=!1})},e.prototype.drawFacetSliderGraphs=function(){this.getFacetSliders().forEach(function(e){return e.drawDelayedGraphData()})},e.prototype.registerOnOpenHandler=function(){this.dropdown.registerOnOpenHandler(this.drawFacetSliderGraphs,this)},e.prototype.getRecommendationRoot=function(){return a.$$(this.coveoRoot.find(\".\"+f.Component.computeCssClassName(l.Recommendation)))},e.prototype.registerQueryEvents=function(){var e=this,t=m.get(this.recommendationRoot.el,r.SearchInterface);t&&t.options.hideIfNoResults&&(this.coveoRoot.on(y.QueryEvents.querySuccess,function(t,n){return e.handleRecommnendationQuerySucess(n)}),this.coveoRoot.on(y.QueryEvents.noResults,function(t,n){return e.handleRecommendationNoResults()})),this.coveoRoot.on(y.QueryEvents.queryError,function(){return e.handleRecommendationQueryError()})},e.prototype.handleRecommnendationQuerySucess=function(e){0===e.results.totalCount?(this.dropdown.close(),this.dropdown.dropdownHeader.hide()):this.dropdown.dropdownHeader.show()},e.prototype.handleRecommendationNoResults=function(){this.dropdown.close(),this.dropdown.dropdownHeader.hide()},e.prototype.handleRecommendationQueryError=function(){this.dropdown.close(),this.dropdown.dropdownHeader.hide()},e.DROPDOWN_CONTAINER_CSS_CLASS_NAME=\"coveo-recommendation-dropdown-container\",e.RESPONSIVE_BREAKPOINT=1e3,e}();t.ResponsiveRecommendation=b},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(110),o=n(1),r=function(){function e(e,t,n){this.element=t,this.coveoRoot=n,this.cssClassName=\"coveo-\"+e+\"-dropdown-content\",this.element.addClass(this.cssClassName),this.element.addClass(i.ResponsiveDropdownContent.DEFAULT_CSS_CLASS_NAME)}return e.prototype.positionDropdown=function(){this.element.el.style.display=\"\";var t=this.coveoRoot.find(\".coveo-results-column\");o.$$(t).prepend(this.element.el),this.element.addClass(i.ResponsiveDropdownContent.DEFAULT_CSS_CLASS_NAME),this.element.addClass(this.cssClassName),window.getComputedStyle(this.element.el).maxHeight,this.element.addClass(e.OPENED_DROPDOWN_CSS_CLASS_NAME)},e.prototype.hideDropdown=function(){this.element.addClass(i.ResponsiveDropdownContent.DEFAULT_CSS_CLASS_NAME),this.element.addClass(this.cssClassName),this.element.removeClass(e.OPENED_DROPDOWN_CSS_CLASS_NAME)},e.prototype.cleanUp=function(){this.element.removeClass(this.cssClassName),this.element.removeClass(i.ResponsiveDropdownContent.DEFAULT_CSS_CLASS_NAME)},e.OPENED_DROPDOWN_CSS_CLASS_NAME=\"coveo-open-dropdown-content\",e}();t.RecommendationDropdownContent=r},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(4),a=n(11),u=n(2),l=n(1),c=n(0),p=function(e){function t(n,i,o){var u=e.call(this,n,t.ID,o)||this;if(u.element=n,u.options=i,u.options=r.ComponentOptions.initComponentOptions(n,t,i),\"script\"===u.element.tagName.toLowerCase()){try{u.content=s.Utils.decodeHTMLEntities(l.$$(u.element).text())}catch(e){return u}c.isUndefined(u.content)||\"\"==u.content||u.bind.onRootElement(a.QueryEvents.buildingQuery,u.handleBuildingQuery)}return u}return i(t,e),t.prototype.handleBuildingQuery=function(e){e.queryBuilder.advancedExpression.add(this.content)},t.ID=\"RecommendationQuery\",t.options={},t}(o.Component);t.RecommendationQuery=p,u.Initialization.registerAutoCreateComponent(p)},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=function(e){function t(){return e.call(this)||this}return i(t,e),t.prototype.instantiateToString=function(e){return'<div><span class=\"CoveoIcon\"></span> <a class=\"CoveoResultLink\"></a> <span class=\"CoveoQuickview\"></span></div>'},t}(o.Template);t.DefaultResultAttachmentTemplate=r},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(24),r=function(e){function t(){return e.call(this)||this}return i(t,e),t.prototype.instantiateToString=function(e){return'<div class=\"coveo-child-result\"><span class=\"CoveoIcon\" data-small=\"true\"></span> <a class=\"CoveoResultLink\"></a> <span class=\"CoveoQuickview\"></span></div>'},t.prototype.getType=function(){return\"DefaultFoldingTemplate\"},t}(o.Template);t.DefaultFoldingTemplate=r},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),o=n(9),r=n(1),s=n(7),a=n(190),u=n(18),l=n(58),c=function(){function e(e,t,n,i){this.coveoRoot=e,this.ID=t,this.searchInterface=s.Component.get(this.coveoRoot.el,u.SearchInterface,!1)}return e.init=function(t,n,i){if(!r.$$(t).find(\".\"+s.Component.computeCssClassName(a.ResultLayoutSelector))){return void new o.Logger(\"ResponsiveResultLayout\").trace(\"No ResultLayout component found : Cannot instantiate ResponsiveResultLayout\")}l.ResponsiveComponentsManager.register(e,r.$$(t),a.ResultLayoutSelector.ID,n,i)},e.prototype.registerComponent=function(e){return e instanceof a.ResultLayoutSelector&&(this.resultLayout=e,!0)},e.prototype.handleResizeEvent=function(){this.needSmallMode()?this.enableAndDisableLayouts(this.resultLayout.options.mobileLayouts):this.needMediumMode()?this.enableAndDisableLayouts(this.resultLayout.options.tabletLayouts):this.enableAndDisableLayouts(this.resultLayout.options.desktopLayouts)},e.prototype.enableAndDisableLayouts=function(e){var t=i.difference(a.ResultLayoutSelector.validLayouts,e),n=i.intersection(a.ResultLayoutSelector.validLayouts,e);this.resultLayout.disableLayouts(t),this.resultLayout.enableLayouts(n)},e.prototype.needSmallMode=function(){switch(this.searchInterface.responsiveComponents.getResponsiveMode()){case\"small\":return!0;case\"auto\":return this.coveoRoot.width()<=this.searchInterface.responsiveComponents.getSmallScreenWidth();default:return!1}},e.prototype.needMediumMode=function(){switch(this.searchInterface.responsiveComponents.getResponsiveMode()){case\"medium\":return!0;case\"auto\":return this.coveoRoot.width()<=this.searchInterface.responsiveComponents.getMediumScreenWidth();default:return!1}},e}();t.ResponsiveResultLayout=c},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(7),r=n(8),s=n(83),a=n(11),u=n(217),l=n(132),c=n(6),p=n(1),h=n(0),d=n(12),f=n(14),m=function(e){function t(n,i,o){var r=e.call(this,n,t.ID,o)||this;return r.element=n,r.options=i,r.bindings=o,r.bind.onRootElement(s.SearchAlertsEvents.searchAlertsCreated,function(e){return r.handleSubscriptionCreated(e)}),r.bind.oneRootElement(s.SearchAlertsEvents.searchAlertsFail,function(e){return r.handleSearchAlertsFail(e)}),r.bind.oneRootElement(s.SearchAlertsEvents.searchAlertsDeleted,function(){return r.close()}),r.bind.oneRootElement(a.QueryEvents.newQuery,function(){return r.close()}),r}return i(t,e),t.prototype.getCssClass=function(){return\"coveo-subscriptions-messages\"},t.prototype.getFollowQueryMessage=function(e,t){var n=this;void 0===t&&(t=!1);var i={text:[]};p.$$(this.root).trigger(s.SearchAlertsEvents.searchAlertsPopulateMessage,i);var o,r=(t?\"<ul>\":\"\")+function(){return h.map(i.text,function(e){return e=n.formatMessageArgumentsText(e),(t?\"<li>\":\"(\")+e+(t?\"</li>\":\")\")}).join(\" \")}()+(t?\"</ul>\":\"\");return e&&0!=i.text.length&&(o=h.escape(e)+\" \"+r),e&&0==i.text.length&&(o=\"\"+h.escape(e)),e||0==i.text.length||(o=\"\"+r),e||0!=i.text.length||(o=t?c.l(\"EmptyQuery\"):h.unescape(c.l(\"EmptyQuery\"))),o},t.prototype.showMessage=function(e,t,n){var i=this;this.message=p.$$(\"div\",{className:\"coveo-subscriptions-messages\"}),this.message.el.innerHTML=\"\\n      <div class='coveo-subscriptions-messages-message'>\\n        <div class='coveo-subscriptions-messages-content'><span>\"+t+\"</span></div>\\n        <div class='coveo-subscriptions-messages-info-close'>\"+d.SVGIcons.icons.checkboxHookExclusionMore+\"</div>\\n      </div>\",this.message.toggleClass(\"coveo-subscriptions-messages-error\",n);var o=this.message.find(\".coveo-subscriptions-messages-info-close\");f.SVGDom.addClassToSVGInContainer(o,\"coveo-subscript-messages-info-close-svg\"),p.$$(o).on(\"click\",function(){return i.close()}),l.PopupUtils.positionPopup(this.message.el,e.el,this.root,{horizontal:l.PopupHorizontalAlignment.INNERLEFT,vertical:l.PopupVerticalAlignment.BOTTOM,verticalOffset:12,horizontalClip:!0},this.root),this.startCloseDelay(),this.message.on(\"mouseleave\",function(){i.startCloseDelay()}),this.message.on(\"mouseenter\",function(){i.stopCloseDelay()})},t.prototype.formatMessageArgumentsText=function(e){return e=h.isString(e)?h.escape(e):e.lineThrough?'<span style=\"text-decoration:line-through\">'+h.escape(e.value)+\"</span>\":h.escape(e.value)},t.prototype.handleSubscriptionCreated=function(e){if(this.close(),null!=e.dom)if(e.subscription.type==u.SUBSCRIPTION_TYPE.followQuery){var t=e.subscription.typeConfig;this.showMessage(p.$$(e.dom),c.l(\"SubscriptionsMessageFollowQuery\",this.getFollowQueryMessage(t.query.q,!0)),!1)}else this.showMessage(p.$$(e.dom),c.l(\"SubscriptionsMessageFollow\"),!1)},t.prototype.handleSearchAlertsFail=function(e){this.close(),null!=e.dom&&this.showMessage(p.$$(e.dom),c.l(\"SearchAlerts_Fail\"),!0)},t.prototype.startCloseDelay=function(){var e=this;clearTimeout(this.closeTimeout),this.closeTimeout=window.setTimeout(function(){e.close()},this.options.closeDelay)},t.prototype.stopCloseDelay=function(){clearTimeout(this.closeTimeout)},t.prototype.close=function(){null!=this.message&&(clearTimeout(this.closeTimeout),this.message.remove(),this.message=null)},t.ID=\"SubscriptionsMessages\",t.options={closeDelay:r.ComponentOptions.buildNumberOption({defaultValue:2e3,min:0})},t}(o.Component);t.SearchAlertsMessage=m},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=function(){function e(){}return e.resize=function(e,t){var n=this,i=this.getSearchbox(e),o=this.getElementsToResize(e),r=this.getInput(e),s=\"height: \"+t+\"px; line-height: \"+t+\"px;\",a=\"height: \"+t+\"px\",u=\"height: \"+(t-2)+\"px;\";this.applyStyle(i,s),this.applyStyle(r,u),o.forEach(function(e){n.applyStyle(e,a)})},e.applyStyle=function(e,t){e.style.cssText+=t},e.getSearchbox=function(e){return i.$$(e).find(\".CoveoOmnibox\")||i.$$(e).find(\".CoveoQuerybox\")},e.getElementsToResize=function(e){return[i.$$(e).find(\".CoveoSearchButton\"),i.$$(i.$$(e).find(\".magic-box-input\")).find(\"input\"),i.$$(e).find(\".magic-box-icon\"),i.$$(e).find(\".magic-box-clear\"),i.$$(e).find(\".magic-box-underlay\")]},e.getInput=function(e){return i.$$(e).find(\".magic-box-input\")},e}();t.SearchBoxResize=o},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(637);var i=n(0),o=n(16),r=n(9),s=n(6),a=n(1),u=n(133),l=n(14),c=n(12),p=n(4),h=n(7),d=n(18),f=n(191),m=n(51),y=n(58),g=n(124),v=n(17),b=n(91),C=n(25),S=function(){function e(e,t){this.coveoRoot=e,this.ID=t,this.dropdownHeaderLabel=this.getDropdownHeaderLabel(),this.searchInterface=h.Component.get(this.coveoRoot.el,d.SearchInterface,!1),this.dropdownContent=this.buildDropdownContent(),this.dropdownHeader=this.buildDropdownHeader(),this.bindDropdownContentEvents(),this.bindDropdownHeaderEvents(),this.tabSection=a.$$(this.coveoRoot.find(\".coveo-tab-section\")),this.manageTabSwapping(),this.bindNukeEvents(),this.initialTabOrder=this.tabsInTabSection.slice()}return e.init=function(t,n,i){if(this.logger=new r.Logger(\"ResponsiveTabs\"),!a.$$(t).find(\".coveo-tab-section\"))return void this.logger.info(\"No element with class coveo-tab-section. Responsive tabs cannot be enabled.\");y.ResponsiveComponentsManager.register(e,a.$$(t),f.Tab.ID,n,i)},e.prototype.handleResizeEvent=function(){this.needSmallMode()&&!g.ResponsiveComponentsUtils.isSmallTabsActivated(this.coveoRoot)?this.changeToSmallMode():!this.needSmallMode()&&g.ResponsiveComponentsUtils.isSmallTabsActivated(this.coveoRoot)&&this.changeToLargeMode(),this.shouldAddTabsToDropdown()?this.addTabsToDropdown():this.shouldRemoveTabsFromDropdown()&&this.removeTabsFromDropdown(),this.dropdownHeader.hasClass(\"coveo-dropdown-header-active\")&&this.positionPopup()},e.prototype.needSmallMode=function(){if(!this.searchInterface)return this.shouldAutoModeResolveToSmall();switch(this.searchInterface.responsiveComponents.getResponsiveMode()){case\"small\":case\"medium\":return!0;case\"auto\":default:return this.shouldAutoModeResolveToSmall()}},e.prototype.shouldAutoModeResolveToSmall=function(){var e=this.searchInterface?this.searchInterface.responsiveComponents.getMediumScreenWidth():(new m.ResponsiveComponents).getMediumScreenWidth();return this.coveoRoot.width()<=e||(g.ResponsiveComponentsUtils.isSmallTabsActivated(this.coveoRoot)?this.isLargeFormatOverflowing():this.isOverflowing(this.tabSection.el))},e.prototype.changeToSmallMode=function(){g.ResponsiveComponentsUtils.activateSmallTabs(this.coveoRoot)},e.prototype.changeToLargeMode=function(){this.emptyDropdown(),this.cleanUpDropdown(),g.ResponsiveComponentsUtils.deactivateSmallTabs(this.coveoRoot)},e.prototype.shouldAddTabsToDropdown=function(){return(this.isOverflowing(this.tabSection.el)||0===this.tabSection.el.clientWidth)&&g.ResponsiveComponentsUtils.isSmallTabsActivated(this.coveoRoot)},e.prototype.addTabsToDropdown=function(){var t;if(!this.tabSection.find(\".\"+e.TAB_IN_DROPDOWN_HEADER_CSS_CLASS)){var n=this.tabSection.find(\".coveo-facet-dropdown-header\");n?this.dropdownHeader.insertBefore(n):this.tabSection.el.appendChild(this.dropdownHeader.el)}for(var i=this.initialTabOrder.length-1;i>=0&&(t=this.initialTabOrder[i],this.tabIsSelected(t)&&i>0&&(t=this.initialTabOrder[--i]),this.addToDropdownIfNeeded(t),this.isOverflowing(this.tabSection.el));i--);},e.prototype.shouldRemoveTabsFromDropdown=function(){return!this.isOverflowing(this.tabSection.el)&&0!==this.tabSection.el.clientWidth&&g.ResponsiveComponentsUtils.isSmallTabsActivated(this.coveoRoot)&&!this.isDropdownEmpty()},e.prototype.removeTabsFromDropdown=function(){for(var e,t=this,n=this.tabsInTabDropdown;!this.isOverflowing(this.tabSection.el)&&!this.isDropdownEmpty();)e=n.shift(),this.removeFromDropdownIfNeeded(e),this.fromDropdownToTabSection(a.$$(e));if(this.isOverflowing(this.tabSection.el)){var o=i.filter(this.tabsInTabSection,function(e){return!t.tabIsSelected(e)});this.addToDropdownIfNeeded(o.pop())}this.isDropdownEmpty()&&this.cleanUpDropdown()},e.prototype.emptyDropdown=function(){var e=this;if(!this.isDropdownEmpty()){for(var t=this.tabsInTabDropdown;!this.isDropdownEmpty();){var n=t.shift();this.removeFromDropdownIfNeeded(n)}this.initialTabOrder.forEach(function(t){return e.tabSection.append(t)})}},e.prototype.isLargeFormatOverflowing=function(){var t=a.$$(this.tabSection.el.cloneNode(!0)),n=t.find(\".\"+e.TAB_IN_DROPDOWN_HEADER_CSS_CLASS);n&&t.el.removeChild(n),t.el.style.position=\"absolute\",t.el.style.visibility=\"hidden\",this.isDropdownEmpty()||i.each(this.dropdownContent.findAll(\".CoveoTab\"),function(e){t.el.appendChild(e.cloneNode(!0))}),t.insertBefore(this.tabSection.el),g.ResponsiveComponentsUtils.deactivateSmallTabs(this.coveoRoot);var o=this.isOverflowing(this.tabSection.el)||this.isOverflowing(t.el);return g.ResponsiveComponentsUtils.activateSmallTabs(this.coveoRoot),t.detach(),o},e.prototype.isOverflowing=function(e){return e.clientWidth<e.scrollWidth},e.prototype.buildDropdownHeader=function(){var t=a.$$(\"a\",{className:\"coveo-dropdown-header \"+e.TAB_IN_DROPDOWN_HEADER_CSS_CLASS}),n=a.$$(\"p\");n.text(this.dropdownHeaderLabel);var i=a.$$(\"span\",{className:\"coveo-more-tabs\"},c.SVGIcons.icons.arrowDown);return l.SVGDom.addClassToSVGInContainer(i.el,\"coveo-more-tabs-svg\"),n.el.appendChild(i.el),t.el.appendChild(n.el),t},e.prototype.bindDropdownHeaderEvents=function(){var e=this,t=function(){e.dropdownHeader.hasClass(\"coveo-dropdown-header-active\")?e.closeDropdown():(e.positionPopup(),e.dropdownHeader.addClass(\"coveo-dropdown-header-active\"))};(new v.AccessibleButton).withElement(this.dropdownHeader).withSelectAction(t).withLabel(this.getDropdownHeaderLabel()).build()},e.prototype.buildDropdownContent=function(){var e=a.$$(\"div\",{className:\"coveo-tab-list-container \"+d.SearchInterface.SMALL_INTERFACE_CLASS_NAME}),t=a.$$(\"ol\",{className:\"coveo-tab-list\"});return e.el.appendChild(t.el),e},e.prototype.bindDropdownContentEvents=function(){var t=this;this.documentClickListener=function(n){if(p.Utils.isHtmlElement(n.target)){var i=a.$$(n.target);i.closest(\"coveo-tab-list-container\")||i.closest(e.TAB_IN_DROPDOWN_HEADER_CSS_CLASS)||i.closest(e.TAB_IN_DROPDOWN_CSS_CLASS)||t.closeDropdown()}},a.$$(document.documentElement).on(\"click\",this.documentClickListener)},e.prototype.closeDropdown=function(){this.dropdownContent.detach(),this.dropdownHeader.removeClass(\"coveo-dropdown-header-active\")},e.prototype.addToDropdownIfNeeded=function(t){if(this.canAddTabToDropdown(t)){a.$$(t).addClass(e.TAB_IN_DROPDOWN_CSS_CLASS);var n=a.$$(this.dropdownContent.find(\"ol\")),i=a.$$(\"li\",null,t);n.prepend(i.el)}},e.prototype.removeFromDropdownIfNeeded=function(t){this.canRemoveTabFromDropdown(t)&&(a.$$(t).removeClass(e.TAB_IN_DROPDOWN_CSS_CLASS),a.$$(t.parentElement).detach())},e.prototype.canAddTabToDropdown=function(e){return e&&!this.tabIsInDropdown(e)&&this.dropdownHeader},e.prototype.canRemoveTabFromDropdown=function(e){return e&&this.tabIsInDropdown(e)&&this.dropdownContent},e.prototype.cleanUpDropdown=function(){this.dropdownHeader.removeClass(\"coveo-dropdown-header-active\"),this.dropdownHeader.detach(),this.dropdownContent.detach()},e.prototype.isDropdownEmpty=function(){if(this.dropdownContent){return 0==this.dropdownContent.findAll(\".CoveoTab\").length}return!1},e.prototype.manageTabSwapping=function(){var t=this;i.each(this.coveoRoot.findAll(\".\"+h.Component.computeCssClassNameForType(this.ID)),function(n){var i=a.$$(n),o=function(n){var r=t.tabsInTabSection.pop();\"opacity\"==n.propertyName&&(\"0\"==i.el.style.opacity?(a.$$(r).addClass(e.TAB_IN_DROPDOWN_CSS_CLASS),i.replaceWith(r),i.removeClass(e.TAB_IN_DROPDOWN_CSS_CLASS),t.fromDropdownToTabSection(i),window.getComputedStyle(i.el).opacity,window.getComputedStyle(r).opacity,i.el.style.opacity=r.style.opacity=\"1\"):\"1\"==i.el.style.opacity&&(t.closeDropdown(),u.EventsUtils.removePrefixedEvent(i.el,\"TransitionEnd\",o),t.handleResizeEvent()))},r=function(){if(t.tabIsInDropdown(i)){var e=t.tabsInTabSection.pop();e&&(u.EventsUtils.addPrefixedEvent(i.el,\"TransitionEnd\",o),i.el.style.opacity=e.style.opacity=\"0\")}};i.on(\"click\",function(){return r()}),i.on(\"keyup\",C.KeyboardUtils.keypressAction(C.KEYBOARD.ENTER,r)),i.on(\"blur\",function(e){e.relatedTarget&&!t.tabIsInDropdown(e.relatedTarget)&&t.closeDropdown()})})},e.prototype.bindNukeEvents=function(){var e=this;a.$$(this.coveoRoot).on(o.InitializationEvents.nuke,function(){a.$$(document.documentElement).off(\"click\",e.documentClickListener)})},e.prototype.positionPopup=function(){this.dropdownContent.insertAfter(this.dropdownHeader.el),new b.default(this.dropdownHeader.el,this.dropdownContent.el,{modifiers:{preventOverflow:{boundariesElement:this.coveoRoot.el}}})},e.prototype.fromDropdownToTabSection=function(e){var t=i.last(this.tabsInTabSection);if(!t)return void this.tabSection.prepend(e.el);this.initialTabOrder.indexOf(e.el)>this.initialTabOrder.indexOf(t)?e.insertAfter(t):e.insertBefore(t)},e.prototype.getDropdownHeaderLabel=function(){var t;return i.each(a.$$(this.coveoRoot.find(\".coveo-tab-section\")).findAll(\".\"+h.Component.computeCssClassName(f.Tab)),function(e){var n=h.Component.get(e,f.Tab);!t&&n&&n.options.dropdownHeaderLabel&&(t=n.options.dropdownHeaderLabel)}),t||(t=s.l(e.DROPDOWN_HEADER_LABEL_DEFAULT_VALUE)),t},e.prototype.tabIsSelected=function(e){return a.$$(e).hasClass(\"coveo-selected\")},e.prototype.tabIsInDropdown=function(t){return a.$$(t).hasClass(e.TAB_IN_DROPDOWN_CSS_CLASS)},Object.defineProperty(e.prototype,\"tabsInTabSection\",{get:function(){var e=this,t=[];return i.each(this.tabSection.children(),function(n){if(p.Utils.isHtmlElement(n)){var i=a.$$(n),o=i.hasClass(h.Component.computeCssClassNameForType(e.ID));!e.tabIsInDropdown(i)&&o&&t.push(i.el)}}),t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"tabsInTabDropdown\",{get:function(){return this.dropdownContent?this.dropdownContent.findAll(\".\"+e.TAB_IN_DROPDOWN_CSS_CLASS):[]},enumerable:!0,configurable:!0}),e.DROPDOWN_HEADER_LABEL_DEFAULT_VALUE=\"More\",e.TAB_IN_DROPDOWN_CSS_CLASS=\"coveo-tab-dropdown\",e.TAB_IN_DROPDOWN_HEADER_CSS_CLASS=e.TAB_IN_DROPDOWN_CSS_CLASS+\"-header\",e}();t.ResponsiveTabs=S},function(e,t){},function(e,t){},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(488);var i=n(0),o=function(){function e(e,t){this.simpleFilter=e,this.options=t,this.groupByRequestValues=[]}return e.prototype.getValuesFromGroupBy=function(){return this.groupByRequestValues},e.prototype.groupBy=function(e){var t=this;this.groupByRequestValues=[];var n=e.results.groupByResults;n.length>0&&void 0!=this.position&&i.each(n[this.position].values,function(e){t.groupByRequestValues.indexOf(e.lookupValue)<0&&t.groupByRequestValues.push(e.lookupValue)})},e.prototype.handleDoneBuildingQuery=function(e){var t=e.queryBuilder;this.putGroupByIntoQueryBuilder(t)},e.prototype.putGroupByIntoQueryBuilder=function(e){var t=this.createBasicGroupByRequest();e.groupByRequests.push(t),this.position=e.groupByRequests.length-1},e.prototype.createBasicGroupByRequest=function(){return{field:this.options.field,maximumNumberOfValues:this.options.maximumNumberOfValues,injectionDepth:1e3,sortCriteria:this.simpleFilter.options.sortCriteria}},e}();t.SimpleFilterValues=o},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),o=n(11),r=n(64),s=n(0),a=function(){function e(e){this.facet=e,this.freezeFacetOrder=!1,this.resetNumberOfValuesToRequest(),this.resetFreezeCurrentValuesDuringQuery()}return e.prototype.resetFreezeCurrentValuesDuringQuery=function(){var e=this;this.facet.bind.onRootElement(o.QueryEvents.duringQuery,function(){e.freezeFacetOrder=!1})},e.prototype.increaseNumberOfValuesToRequest=function(e){this.numberOfValuesToRequest+=e},e.prototype.resetNumberOfValuesToRequest=function(){this.numberOfValuesToRequest=this.facet.options.numberOfValues},e.prototype.enableFreezeFacetOrderFlag=function(){this.freezeFacetOrder=!0},e.prototype.putFacetIntoQueryBuilder=function(e){i.Assert.exists(e),e.facetRequests.push(this.facetRequest),this.freezeFacetOrder&&(e.facetOptions.freezeFacetOrder=this.freezeFacetOrder)},Object.defineProperty(e.prototype,\"facetRequest\",{get:function(){return{facetId:this.facet.options.id,field:this.facet.fieldName,type:this.facet.facetType,currentValues:this.currentValues,numberOfValues:this.facet.values.hasSelectedValue?1:this.numberOfValuesToRequest,delimitingCharacter:this.facet.options.delimitingCharacter,isFieldExpanded:this.numberOfValuesToRequest>this.facet.options.numberOfValues,injectionDepth:this.facet.options.injectionDepth}},enumerable:!0,configurable:!0}),e.prototype.getQueryResults=function(){var e=this.facet.queryController.getLastQuery();e.numberOfResults=0;var t=s.findIndex(e.facets,{facetId:this.facet.options.id});return-1!==t?e.facets[t]=this.facetRequest:e.facets?e.facets.push(this.facetRequest):e.facets=[this.facetRequest],this.facet.queryController.getEndpoint().search(e)},Object.defineProperty(e.prototype,\"currentValues\",{get:function(){var e=this;return this.facet.values.hasSelectedValue?this.facet.values.allFacetValues.map(function(t){return e.buildRequestValue(t)}):[]},enumerable:!0,configurable:!0}),e.prototype.buildRequestValue=function(e){return{value:e.value,state:e.state,preventAutoSelect:e.preventAutoSelect,children:this.childrenForFacetValue(e),retrieveChildren:this.shouldRetrieveChildren(e),retrieveCount:e.retrieveCount}},e.prototype.childrenForFacetValue=function(e){var t=this;return this.shouldRetrieveChildren(e)?[]:e.children.map(function(e){return t.buildRequestValue(e)})},e.prototype.shouldRetrieveChildren=function(e){return e.state===r.FacetValueState.selected},e}();t.DynamicHierarchicalFacetQueryController=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(444);var i=n(1),o=n(12),r=n(6),s=n(10),a=function(){function e(e){this.facet=e,this.create()}return e.prototype.create=function(){var e=this;this.element=i.$$(\"div\",{className:\"coveo-dynamic-facet-breadcrumb coveo-breadcrumb-item\"}).el;var t=this.facet.values.selectedPath,n=t.map(function(t){return e.facet.getCaption(t)}).join(\" / \");this.createAndAppendTitle(),this.createAndAppendCaption(n)},e.prototype.createAndAppendTitle=function(){var e=i.$$(\"h3\",{className:\"coveo-dynamic-facet-breadcrumb-title\"},this.facet.options.title+\":\").el;this.element.appendChild(e)},e.prototype.createAndAppendCaption=function(e){var t=this,n=i.$$(\"button\",{className:\"coveo-dynamic-facet-breadcrumb-value\",ariaLabel:r.l(\"RemoveFilterOn\",e)},e).el,s=i.$$(\"span\",{className:\"coveo-dynamic-facet-breadcrumb-value-clear\"},o.SVGIcons.icons.mainClear).el;n.appendChild(s),i.$$(n).on(\"click\",function(){return t.valueSelectAction()}),this.element.appendChild(n)},e.prototype.valueSelectAction=function(){var e=this;this.facet.reset(),this.facet.triggerNewQuery(function(){return e.facet.logAnalyticsEvent(s.analyticsActionCauseList.breadcrumbFacet)})},e}();t.DynamicHierarchicalFacetBreadcrumb=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n(645);var i=n(646),o=n(43),r=n(1),s=n(0),a=n(64),u=n(4),l=n(6),c=n(207),p=function(){function e(e){this.facet=e,this.facetValues=[],this._selectedPath=[],this.list=r.$$(\"ul\",{className:\"coveo-dynamic-hierarchical-facet-values\"}).el}return e.prototype.formatDisplayValue=function(e){var t=o.FacetUtils.tryToGetTranslatedCaption(this.facet.options.field,e);return this.facet.options.valueCaption[e]||t},e.prototype.createFromResponse=function(e){var t=this;this.facetValues=e.values.map(function(e){return t.createFacetValueFromResponse(e)})},e.prototype.createFacetValueFromResponse=function(e,t){var n=this;void 0===t&&(t=[]);var r=t.concat([e.value]),s=o.FacetUtils.getDisplayValueFromValueCaption(e.value,this.facet.options.field,this.facet.options.valueCaption),u=e.children?e.children.map(function(e){return n.createFacetValueFromResponse(e,r)}):[];return e.state===a.FacetValueState.selected&&(this._selectedPath=r),new i.DynamicHierarchicalFacetValue({value:e.value,numberOfResults:e.numberOfResults,state:e.state,moreValuesAvailable:e.moreValuesAvailable,preventAutoSelect:!1,path:r,displayValue:s,children:u},this.facet)},Object.defineProperty(e.prototype,\"allFacetValues\",{get:function(){return this.facetValues},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"hasSelectedValue\",{get:function(){return!!this._selectedPath.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"selectedPath\",{get:function(){return this._selectedPath.slice()},enumerable:!0,configurable:!0}),e.prototype.resetValues=function(){this.facetValues=[],this._selectedPath=[]},e.prototype.clearPath=function(){this._selectedPath=[]},e.prototype.findValueWithPath=function(e){var t,n=this.facetValues,i=e.slice();do{var o=function(){var e=i.shift();if(!(t=s.find(n,function(t){return t.value===e})))return{value:null};n=t.children}();if(\"object\"==typeof o)return o.value}while(i.length);return t},e.prototype.createFacetValueWithPath=function(e,t){void 0===t&&(t=[]);var n=e[e.length-1];return new i.DynamicHierarchicalFacetValue({value:n,path:e,displayValue:this.formatDisplayValue(n),numberOfResults:0,state:a.FacetValueState.idle,moreValuesAvailable:!1,preventAutoSelect:!1,children:t},this.facet)},e.prototype.getOrCreateFacetValueWithPath=function(e){var t=this.findValueWithPath(e);if(t)return t;var n=this.createFacetValueWithPath(e);return(1===e.length?this.facetValues:this.getOrCreateFacetValueWithPath(e.slice(0,-1)).children).push(n),n},e.prototype.filterHierarchyAtPathLevel=function(e,t,n){var i=this;void 0===n&&(n=1);var o=e.filter(function(e){var i=t.slice(0,n);return u.Utils.arrayEqual(i,e.path)});return o.forEach(function(e){e.state=a.FacetValueState.idle,e.children=i.filterHierarchyAtPathLevel(e.children,t,n+1)}),o},e.prototype.filterHierarchyWithPath=function(e){this.facetValues=this.filterHierarchyAtPathLevel(this.facetValues,e)},e.prototype.selectPath=function(e){this.filterHierarchyWithPath(e),this.getOrCreateFacetValueWithPath(e).select(),this._selectedPath=e.slice()},e.prototype.prependAllCategories=function(){var e=this,t=r.$$(\"li\",{},r.$$(\"button\",{className:\"coveo-dynamic-hierarchical-facet-all\",title:this.facet.options.clearLabel},this.facet.options.clearLabel));t.on(\"click\",function(){return e.facet.header.options.clear()}),r.$$(this.list).prepend(t.el)},e.prototype.buildShowLess=function(){var e=this;return new c.DynamicFacetValueShowMoreLessButton({className:\"coveo-dynamic-hierarchical-facet-show-less\",ariaLabel:l.l(\"ShowLessFacetResults\",this.facet.options.title),label:l.l(\"ShowLess\"),action:function(){e.facet.enableFreezeFacetOrderFlag(),e.facet.showLessValues()}}).element},e.prototype.buildShowMore=function(){var e=this;return new c.DynamicFacetValueShowMoreLessButton({className:\"coveo-dynamic-hierarchical-facet-show-more\",ariaLabel:l.l(\"ShowMoreFacetResults\",this.facet.options.title),label:l.l(\"ShowMore\"),action:function(){e.facet.enableFreezeFacetOrderFlag(),e.facet.showMoreValues()}}).element},Object.defineProperty(e.prototype,\"shouldEnableShowLess\",{get:function(){return this.facetValues.length>this.facet.options.numberOfValues},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"shouldEnableShowMore\",{get:function(){return this.facet.moreValuesAvailable&&!this.hasSelectedValue},enumerable:!0,configurable:!0}),e.prototype.appendShowMoreLess=function(e){this.facet.options.enableMoreLess&&(this.shouldEnableShowLess&&e.appendChild(this.buildShowLess()),this.shouldEnableShowMore&&e.appendChild(this.buildShowMore()))},e.prototype.render=function(){var e=document.createDocumentFragment();return r.$$(this.list).empty(),this.facetValues.forEach(function(t){t.render(e)}),r.$$(this.list).toggleClass(\"coveo-with-space\",!!this._selectedPath.length),this._selectedPath.length&&this.prependAllCategories(),this.appendShowMoreLess(e),this.list.appendChild(e),this.list},e}();t.DynamicHierarchicalFacetValues=p},function(e,t){},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(20),o=n(64),r=n(647),s=n(6),a=n(207),u=n(10),l=function(){function e(e,t){this.facetValue=e,this.facet=t,this.element=null,this.renderer=new r.DynamicHierarchicalFacetValueRenderer(this,this.facet),this.retrieveCount=Math.max(this.facet.options.numberOfValues,this.facetValue.children.length)}return Object.defineProperty(e.prototype,\"value\",{get:function(){return this.facetValue.value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"path\",{get:function(){return this.facetValue.path},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"state\",{get:function(){return this.facetValue.state},set:function(e){this.facetValue.state=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"moreValuesAvailable\",{get:function(){return this.facetValue.moreValuesAvailable},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"preventAutoSelect\",{get:function(){return this.facetValue.preventAutoSelect},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"numberOfResults\",{get:function(){return this.facetValue.numberOfResults},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"displayValue\",{get:function(){return this.facetValue.displayValue},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"children\",{get:function(){return this.facetValue.children},set:function(e){this.facetValue.children=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"isIdle\",{get:function(){return this.state===o.FacetValueState.idle},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"isSelected\",{get:function(){return this.state===o.FacetValueState.selected},enumerable:!0,configurable:!0}),e.prototype.select=function(){this.state=o.FacetValueState.selected},Object.defineProperty(e.prototype,\"selectAriaLabel\",{get:function(){var e=s.l(\"ResultCount\",this.formattedCount,this.numberOfResults);return\"\"+s.l(\"SelectValueWithResultCount\",this.displayValue,e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"formattedCount\",{get:function(){return i.format(this.numberOfResults,\"n0\")},enumerable:!0,configurable:!0}),e.prototype.buildShowLess=function(){var e=this;return new a.DynamicFacetValueShowMoreLessButton({className:\"coveo-dynamic-hierarchical-facet-show-less coveo-with-space\",ariaLabel:s.l(\"ShowLessHierarchicalResults\",this.displayValue),label:s.l(\"ShowLess\"),action:function(){e.facet.enableFreezeFacetOrderFlag(),e.retrieveCount=e.facet.options.numberOfValues,e.facet.triggerNewIsolatedQuery()}}).element},e.prototype.buildShowMore=function(){var e=this;return new a.DynamicFacetValueShowMoreLessButton({className:\"coveo-dynamic-hierarchical-facet-show-more coveo-with-space\",ariaLabel:s.l(\"ShowMoreHierarchicalResults\",this.displayValue),label:s.l(\"ShowMore\"),action:function(){e.facet.enableFreezeFacetOrderFlag(),e.retrieveCount+=e.facet.options.numberOfValues,e.facet.triggerNewIsolatedQuery()}}).element},Object.defineProperty(e.prototype,\"shouldEnableShowLess\",{get:function(){return this.children.length>this.facet.options.numberOfValues},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"shouldEnableShowMore\",{get:function(){return this.moreValuesAvailable},enumerable:!0,configurable:!0}),e.prototype.appendShowMoreLess=function(e){this.facet.options.enableMoreLess&&(this.shouldEnableShowLess&&e.appendChild(this.buildShowLess()),this.shouldEnableShowMore&&e.appendChild(this.buildShowMore()))},e.prototype.render=function(e){return this.element=this.renderer.render(),e.appendChild(this.element),this.children.forEach(function(t){return t.render(e)}),this.appendShowMoreLess(e),this.element},e.prototype.logSelectActionToAnalytics=function(){this.facet.logAnalyticsEvent(u.analyticsActionCauseList.dynamicFacetSelect)},e}();t.DynamicHierarchicalFacetValue=l},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(1),o=n(12),r=n(14),s=function(){function e(e,t){this.facetValue=e,this.facet=t}return e.prototype.render=function(){var e=this;return this.button=i.$$(\"button\",{className:\"coveo-dynamic-hierarchical-facet-value\",ariaLabel:this.facetValue.selectAriaLabel}),this.button.on(\"click\",function(){return e.selectAction()}),this.renderLabel(),this.renderCount(),this.toggleButtonStates(),i.$$(\"li\",{dataValue:this.facetValue.value},this.button).el},e.prototype.renderLabel=function(){var e=i.$$(\"span\",{className:\"coveo-dynamic-hierarchical-facet-value-label\",title:this.facetValue.displayValue});e.text(this.facetValue.displayValue),this.button.append(e.el)},e.prototype.renderCount=function(){var e=i.$$(\"span\",{className:\"coveo-dynamic-hierarchical-facet-value-count\"},\"(\"+this.facetValue.formattedCount+\")\");this.button.append(e.el)},e.prototype.toggleButtonStates=function(){this.button.toggleClass(\"coveo-selected\",this.facetValue.isSelected),this.button.toggleClass(\"coveo-with-space\",this.shouldHaveMargin),this.facetValue.isSelected&&this.button.setAttribute(\"disabled\",\"true\"),this.shouldHaveArrow&&this.prependArrow()},e.prototype.prependArrow=function(){var e=i.$$(\"div\",{className:\"coveo-dynamic-hierarchical-facet-value-arrow\"},o.SVGIcons.icons.arrowDown);r.SVGDom.addClassToSVGInContainer(e.el,\"coveo-dynamic-hierarchical-facet-value-arrow-svg\"),this.button.prepend(e.el)},Object.defineProperty(e.prototype,\"shouldHaveMargin\",{get:function(){return this.facetValue.path.length>1&&!this.facetValue.children.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"shouldHaveArrow\",{get:function(){return this.facet.values.hasSelectedValue&&!this.facetValue.isSelected&&!!this.facetValue.children.length},enumerable:!0,configurable:!0}),e.prototype.selectAction=function(){var e=this;this.facet.selectPath(this.facetValue.path),this.facet.enableFreezeFacetOrderFlag(),this.facet.scrollToTop(),this.facet.triggerNewQuery(function(){return e.facetValue.logSelectActionToAnalytics()})},e}();t.DynamicHierarchicalFacetValueRenderer=s},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(204),o=n(64),r=n(649),s=n(448),a=function(){function e(e){this.facet=e,this.parser=new r.DynamicFacetRangeValueParser(this.facet)}return e.prototype.createFromRange=function(e,t){var n=this.parser.validate(e);if(!n)return this.facet.logger.error(\"Unvalid range for \"+this.facet.options.valueFormat+\" format\",e),null;var r=n.label?n.label:this.parser.formatDisplayValue(n);return new i.DynamicFacetValue({displayValue:r,value:this.parser.formatValue(n),start:n.start,end:n.end,endInclusive:!!n.endInclusive,numberOfResults:0,state:o.FacetValueState.idle,position:t+1},this.facet,s.DynamicFacetValueRenderer)},e.prototype.createFromResponse=function(e,t){var n=this.parser.formatValue(e),o=this.facet.values.get(n).displayValue;return new i.DynamicFacetValue({state:e.state,numberOfResults:e.numberOfResults,start:e.start,end:e.end,endInclusive:e.endInclusive,value:n,displayValue:o,position:t+1},this.facet,s.DynamicFacetValueRenderer)},e.prototype.createFromValue=function(e){var t=this.parser.parse(e);return t?this.createFromRange(t,this.facet.values.allFacetValues.length):(this.facet.logger.error(\"Facet range value invalid\",e),null)},e}();t.DynamicFacetRangeValueCreator=a},function(e,t,n){\"use strict\";var i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(20),r=n(650),s=n(651),a=n(490),u=n(29),l=n(489),c=n(9),p=n(23),h=function(){function e(e){this.facet=e}return Object.defineProperty(e.prototype,\"valueFormat\",{get:function(){return this.facet.options.valueFormat},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"valueSeparator\",{get:function(){return this.facet.options.valueSeparator},enumerable:!0,configurable:!0}),e.prototype.parseDateFromRangeType=function(e){var t=u.DateUtils.convertToStandardDate(e);return u.DateUtils.isValid(t)?t:(new c.Logger(this).warn(\"Date value is not valid\",e),null)},e.prototype.formatDisplayValueFromLimit=function(e){switch(this.valueFormat){case l.DynamicFacetRangeValueFormat.number:var t=s.NumberUtils.countDecimals(\"\"+e);return o.format(e,\"n\"+t);case l.DynamicFacetRangeValueFormat.currency:return p.CurrencyUtils.currencyToString(parseFloat(\"\"+e),{symbol:this.facet.options.currencySymbol,decimals:s.NumberUtils.countDecimals(\"\"+e)?2:0});case l.DynamicFacetRangeValueFormat.date:return u.DateUtils.dateToString(this.parseDateFromRangeType(e),{alwaysIncludeTime:!1,includeTimeIfThisWeek:!1,includeTimeIfToday:!1,omitYearIfCurrentOne:!1,useTodayYesterdayAndTomorrow:!1,useWeekdayIfThisWeek:!1});default:return\"\"+e}},e.prototype.formatDisplayValue=function(e){var t=this.formatDisplayValueFromLimit(e.start),n=this.formatDisplayValueFromLimit(e.end);return t+\" \"+this.valueSeparator+\" \"+n},e.prototype.validateRangeLimit=function(e){switch(this.valueFormat){case l.DynamicFacetRangeValueFormat.number:case l.DynamicFacetRangeValueFormat.currency:return this.validateNumberValue(e);case l.DynamicFacetRangeValueFormat.date:return this.validateDateValue(e);default:return\"\"+e}},e.prototype.validateNumberValue=function(e){var t=parseFloat(\"\"+e);return isNaN(t)?null:t},e.prototype.validateDateValue=function(e){var t=u.DateUtils.dateTimeForQuery(this.parseDateFromRangeType(e));return\"Invalid date\"===t?null:t},e.prototype.validate=function(e){var t=this.validateRangeLimit(e.start),n=this.validateRangeLimit(e.end);return a.isNull(t)||a.isNull(n)?null:i({},e,{start:t,end:n})},e.prototype.formatValue=function(e){var t=e.endInclusive?r.RangeEndScope.Inclusive:r.RangeEndScope.Exclusive;return e.start+\"..\"+e.end+t},e.prototype.parse=function(e){var t=new RegExp(\"^(.+)\\\\.\\\\.(.+)(\"+r.RangeEndScope.Inclusive+\"|\"+r.RangeEndScope.Exclusive+\")$\"),n=t.exec(e);if(!n)return null;var i=this.validateRangeLimit(n[1]),o=this.validateRangeLimit(n[2]);return a.isNull(i)||a.isNull(o)?null:{start:i,end:o,endInclusive:n[3]===r.RangeEndScope.Inclusive}},e}();t.DynamicFacetRangeValueParser=h},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});!function(e){e.Inclusive=\"inc\",e.Exclusive=\"exc\"}(t.RangeEndScope||(t.RangeEndScope={}))},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(490),o=function(){function e(){}return e.countDecimals=function(e){var t=/^\\d+\\.?([\\d]*)$/.exec(\"\"+e);return i.isNull(t)?0:t[1].length},e}();t.NumberUtils=o},function(e,t){e.exports=function(e){return e&&\"object\"==typeof e&&\"function\"==typeof e.copy&&\"function\"==typeof e.fill&&\"function\"==typeof e.readUInt8}},function(e,t){\"function\"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}},function(e,t,n){\"use strict\";var i=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(447),r=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),Object.defineProperty(t.prototype,\"facetRequest\",{get:function(){return{facetId:this.facet.options.id,field:this.facet.fieldName,type:this.facet.facetType,currentValues:this.currentValues,numberOfValues:this.numberOfValues,freezeCurrentValues:this.facet.values.hasValues,injectionDepth:this.facet.options.injectionDepth}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"numberOfValues\",{get:function(){return this.facet.values.hasValues?this.currentValues.length:this.facet.options.numberOfValues},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"currentValues\",{get:function(){return this.facet.values.allFacetValues.map(function(e){return{start:e.start,end:e.end,endInclusive:e.endInclusive,state:e.state}})},enumerable:!0,configurable:!0}),t}(o.DynamicFacetQueryController);t.DynamicFacetRangeQueryController=r},function(e,t){},function(e,t){},function(e,t){e.exports=function(){var e=[];return e.toString=function(){for(var e=[],t=0;t<this.length;t++){var n=this[t];n[2]?e.push(\"@media \"+n[2]+\"{\"+n[1]+\"}\"):e.push(n[1])}return e.join(\"\")},e.i=function(t,n){\"string\"==typeof t&&(t=[[null,t,\"\"]]);for(var i={},o=0;o<this.length;o++){var r=this[o][0];\"number\"==typeof r&&(i[r]=!0)}for(o=0;o<t.length;o++){var s=t[o];\"number\"==typeof s[0]&&i[s[0]]||(n&&!s[2]?s[2]=n:n&&(s[2]=\"(\"+s[2]+\") and (\"+n+\")\"),e.push(s))}},e}},function(e,t,n){function i(e,t){for(var n=0;n<e.length;n++){var i=e[n],o=f[i.id];if(o){o.refs++;for(var r=0;r<o.parts.length;r++)o.parts[r](i.parts[r]);for(;r<i.parts.length;r++)o.parts.push(c(i.parts[r],t))}else{for(var s=[],r=0;r<i.parts.length;r++)s.push(c(i.parts[r],t));f[i.id]={id:i.id,refs:1,parts:s}}}}function o(e,t){for(var n=[],i={},o=0;o<e.length;o++){var r=e[o],s=t.base?r[0]+t.base:r[0],a=r[1],u=r[2],l=r[3],c={css:a,media:u,sourceMap:l};i[s]?i[s].parts.push(c):n.push(i[s]={id:s,parts:[c]})}return n}function r(e,t){var n=y(e.insertInto);if(!n)throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.\");var i=b[b.length-1];if(\"top\"===e.insertAt)i?i.nextSibling?n.insertBefore(t,i.nextSibling):n.appendChild(t):n.insertBefore(t,n.firstChild),b.push(t);else if(\"bottom\"===e.insertAt)n.appendChild(t);else{if(\"object\"!=typeof e.insertAt||!e.insertAt.before)throw new Error(\"[Style Loader]\\n\\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\\n Must be 'top', 'bottom', or Object.\\n (https://github.com/webpack-contrib/style-loader#insertat)\\n\");var o=y(e.insertInto+\" \"+e.insertAt.before);n.insertBefore(t,o)}}function s(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e);var t=b.indexOf(e);t>=0&&b.splice(t,1)}function a(e){var t=document.createElement(\"style\");return e.attrs.type=\"text/css\",l(t,e.attrs),r(e,t),t}function u(e){var t=document.createElement(\"link\");return e.attrs.type=\"text/css\",e.attrs.rel=\"stylesheet\",l(t,e.attrs),r(e,t),t}function l(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function c(e,t){var n,i,o,r;if(t.transform&&e.css){if(!(r=t.transform(e.css)))return function(){};e.css=r}if(t.singleton){var l=v++;n=g||(g=a(t)),i=p.bind(null,n,l,!1),o=p.bind(null,n,l,!0)}else e.sourceMap&&\"function\"==typeof URL&&\"function\"==typeof URL.createObjectURL&&\"function\"==typeof URL.revokeObjectURL&&\"function\"==typeof Blob&&\"function\"==typeof btoa?(n=u(t),i=d.bind(null,n,t),o=function(){s(n),n.href&&URL.revokeObjectURL(n.href)}):(n=a(t),i=h.bind(null,n),o=function(){s(n)});return i(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;i(e=t)}else o()}}function p(e,t,n,i){var o=n?\"\":i.css;if(e.styleSheet)e.styleSheet.cssText=S(t,o);else{var r=document.createTextNode(o),s=e.childNodes;s[t]&&e.removeChild(s[t]),s.length?e.insertBefore(r,s[t]):e.appendChild(r)}}function h(e,t){var n=t.css,i=t.media;if(i&&e.setAttribute(\"media\",i),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}function d(e,t,n){var i=n.css,o=n.sourceMap,r=void 0===t.convertToAbsoluteUrls&&o;(t.convertToAbsoluteUrls||r)&&(i=C(i)),o&&(i+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+\" */\");var s=new Blob([i],{type:\"text/css\"}),a=e.href;e.href=URL.createObjectURL(s),a&&URL.revokeObjectURL(a)}var f={},m=function(e){var t;return function(){return void 0===t&&(t=e.apply(this,arguments)),t}}(function(){return window&&document&&document.all&&!window.atob}),y=function(e){var t={};return function(n){if(void 0===t[n]){var i=e.call(this,n);if(i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(e){i=null}t[n]=i}return t[n]}}(function(e){return document.querySelector(e)}),g=null,v=0,b=[],C=n(291);e.exports=function(e,t){if(\"undefined\"!=typeof DEBUG&&DEBUG&&\"object\"!=typeof document)throw new Error(\"The style-loader cannot be used in a non-browser environment\");t=t||{},t.attrs=\"object\"==typeof t.attrs?t.attrs:{},t.singleton||\"boolean\"==typeof t.singleton||(t.singleton=m()),t.insertInto||(t.insertInto=\"head\"),t.insertAt||(t.insertAt=\"bottom\");var n=o(e,t);return i(n,t),function(e){for(var r=[],s=0;s<n.length;s++){var a=n[s],u=f[a.id];u.refs--,r.push(u)}if(e){i(o(e,t),t)}for(var s=0;s<r.length;s++){var u=r[s];if(0===u.refs){for(var l=0;l<u.parts.length;l++)u.parts[l]();delete f[u.id]}}}};var S=function(){var e=[];return function(t,n){return e[t]=n,e.filter(Boolean).join(\"\\n\")}}()},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(e,t,n){e.exports=n(750)},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),function(e){for(var n in e)t.hasOwnProperty(n)||(t[n]=e[n])}(n(23));var i=n(441);t.CoreHelpers=i.CoreHelpers;var o=n(18);t.SearchInterface=o.SearchInterface,t.StandaloneSearchInterface=o.StandaloneSearchInterface;var r=n(200);t.$=r.jQueryInstance;var s=n(199);t._=s.underscoreInstance;var a=n(47);t.HashUtils=a.HashUtils;var u=n(22);t.DeviceUtils=u.DeviceUtils;var l=n(139);t.ColorUtils=l.ColorUtils;var c=n(72);t.Cookie=c.Cookie;var p=n(129);t.CurrencyUtils=p.CurrencyUtils;var h=n(29);t.DateUtils=h.DateUtils;var d=n(2);d.Initialization.componentsFactory=d.EagerInitialization.componentsFactory,n(224).AdvancedSearch.doExport(),n(225).Aggregate.doExport(),n(165).Analytics.doExport(),n(226).AnalyticsSuggestions.doExport(),n(7).ComponentEvents.doExport(),n(227).AuthenticationProvider.doExport(),n(228).Backdrop.doExport(),n(229).Badge.doExport(),n(230).Breadcrumb.doExport(),n(231).CardActionBar.doExport(),n(232).CardOverlay.doExport(),n(233).ChatterLikedBy.doExport(),n(427).registerFields(),n(234).ChatterPostAttachment.doExport(),n(428).registerFields(),n(235).ChatterPostedBy.doExport(),n(429).registerFields(),n(236).ChatterTopic.doExport(),n(430).registerFields(),n(237).DidYouMean.doExport(),n(238).DistanceResources.doExport(),n(239).ErrorReport.doExport(),n(240).Excerpt.doExport(),n(241).ExportToExcel.doExport(),n(67).Facet.doExport(),n(181).FacetRange.doExport(),n(188).FacetSlider.doExport(),n(242).FieldSuggestions.doExport(),n(243).FacetValueSuggestions.doExport(),n(244).FieldTable.doExport(),n(117).FieldValue.doExport(),n(182).Folding.doExport(),n(245).FoldingForThread.doExport(),n(267).FollowItem.doExport(),n(435).registerFields(),n(246).HiddenQuery.doExport(),n(247).HierarchicalFacet.doExport(),n(183).Icon.doExport(),n(431).registerFields(),n(248).Logo.doExport(),n(249).Matrix.doExport(),n(184).Omnibox.doExport(),n(250).OmniboxResultList.doExport(),n(251).Pager.doExport(),n(252).PipelineContext.doExport(),n(253).PreferencesPanel.doExport(),n(254).PrintableUri.doExport(),n(432).registerFields(),n(135).Querybox.doExport(),n(255).QueryDuration.doExport(),n(256).QuerySummary.doExport(),n(257).Quickview.doExport(),n(433).registerFields(),n(189).Recommendation.doExport(),n(259).ResultAttachments.doExport(),n(258).ResultActionsMenu.doExport(),n(260).ResultFolding.doExport(),n(190).ResultLayoutSelector.doExport(),n(90).ResultLink.doExport(),n(434).registerFields(),n(87).ResultList.doExport(),n(261).ResultRating.doExport(),n(263).ResultsFiltersPreferences.doExport(),n(264).ResultsPerPage.doExport(),n(265).ResultsPreferences.doExport(),n(266).ResultTagging.doExport(),n(268).SearchAlerts.doExport(),n(269).Searchbox.doExport(),n(186).SearchButton.doExport(),n(270).Settings.doExport(),n(271).ShareQuery.doExport(),n(272).Sort.doExport(),n(262).StarRating.doExport(),n(191).Tab.doExport(),n(273).TemplateLoader.doExport(),n(274).Text.doExport(),n(275).Thumbnail.doExport(),n(436).registerFields(),n(276).Triggers.doExport(),n(180).YouTubeThumbnail.doExport(),n(201).registerFields();var f=n(24);t.Template=f.Template,n(61).Checkbox.doExport(),n(85).DatePicker.doExport(),n(69).Dropdown.doExport(),n(136).FormGroup.doExport(),n(185).MultiSelect.doExport(),n(119).NumericSpinner.doExport(),n(118).RadioButton.doExport(),n(52).TextInput.doExport(),n(277).SimpleFilter.doExport(),n(278).TimespanFacet.doExport(),n(114).DynamicFacet.doExport(),n(281).DynamicFacetRange.doExport(),n(282).DynamicFacetManager.doExport(),n(279).PromotedResultsBadge.doExport(),n(89).CategoryFacet.doExport(),n(280).DynamicHierarchicalFacet.doExport(),n(283).MissingTerms.doExport(),n(284).QuerySuggestPreview.doExport(),n(437).swapVar(this),n(187).ImageFieldValue.doExport()}])});\nreturn root.Coveo = Coveo;\n  }).apply(root, arguments);\n});\n}(this));\n\n",
    "define('MobileMegaMenu',['jquery'], function ($) {\r\n    var scope = $(\".ecolab-main-bar .score-megamenu\"), handlersAttached = false, w = window;\r\n    var hiddenForMobileViewClass = \"hidden-for-mobile-view\";\r\n    var menuReturnMarkup = '<a class=\"ecolab-menu-return\" href=\"#\" data-currentLevel data-level1Text data-level2Text data-level3Text >Return</a>';\r\n        var $menuReturn = $(\".ecolab-menu-return\", scope);\r\n\r\n    function EcolabMegaMenu() {\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.init = function () {\r\n        var emm = this;\r\n\r\n        $(w).resize(function (e) {\r\n            if ($(this).width() <= 1200 && !handlersAttached) {\r\n                emm.attachHandlers(emm);\r\n            } else if ($(this).width() > 1200 && handlersAttached) {\r\n                emm.detachHandlers(emm);\r\n            }\r\n        });\r\n\r\n        $(w).resize();\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.resetStyles = function() {\r\n        var $megaMenuSectionSpider = $(\".mega-menu-section-spider\", scope);\r\n        $megaMenuSectionSpider.removeAttr(\"style\");\r\n\r\n        var $navTabsWrapperOuter = $megaMenuSectionSpider.find(\".nav-tabs-wrapper-outer\").removeAttr(\"style\");\r\n        $navTabsWrapperOuter.removeAttr(\"style\");\r\n\r\n        var $tabContentWrapperOuter = $(\".tab-content-wrapper-outer\", scope);\r\n        $tabContentWrapperOuter.removeAttr(\"style\");\r\n\r\n        var $ecolaTabPaneIndustry = $tabContentWrapperOuter.find(\".ecolab-tab-pane__industry\");\r\n        $ecolaTabPaneIndustry.removeClass(\"active\").removeClass(\"in\");\r\n        $ecolaTabPaneIndustry.find(\".subsection-results\").removeAttr(\"style\");\r\n        $ecolaTabPaneIndustry.find(\".ecolab-section-menu__market\").removeAttr(\"style\");\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.showLevel0 = function (e) {\r\n        $(e.currentTarget).siblings().show();\r\n        $(e.relatedTarget).show();\r\n        if (e.currentTarget) {\r\n            $menuReturn = $($menuReturn.selector);\r\n            if ($menuReturn.length > 0) {\r\n                $menuReturn.data('currentLevel', 0);\r\n                $menuReturn.hide();\r\n            }\r\n        }   \r\n    }\r\n\r\n    EcolabMegaMenu.prototype.showLevel1 = function (e) {\r\n        var $dropdown = $(this);\r\n        $dropdown.siblings().hide();\r\n        $dropdown.children(\"[data-toggle='dropdown']\").hide().addClass(hiddenForMobileViewClass);\r\n\r\n        $menuReturn = $($menuReturn.selector);\r\n        if ($menuReturn.length < 1) {\r\n            $(menuReturnMarkup).prependTo(e.currentTarget);\r\n            $menuReturn = $($menuReturn.selector);\r\n        }\r\n            \r\n        if (e.relatedTarget) {\r\n            $menuReturn.data('currentLevel', 1);\r\n            $menuReturn.data('level1Text', e.relatedTarget.innerText);\r\n            $menuReturn.text(e.relatedTarget.innerText);\r\n            $menuReturn.show();\r\n        }\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.showLevel2 = function (e) {\r\n        if (e.target) {\r\n            $menuReturn = $($menuReturn.selector);\r\n            $menuReturn.data('currentLevel', 2);\r\n            $menuReturn.data('level2Text', e.target.innerText);\r\n            $menuReturn.text(e.target.innerText);\r\n            $menuReturn.show();\r\n        }\r\n\r\n        $('.nav-tabs-wrapper-outer', scope).hide();\r\n        $('.tab-content-wrapper-outer', scope).show();\r\n        $(this.hash, scope).children(\".subsection-results\").hide();\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.showLevel3 = function (e) {\r\n        if (e.target) {\r\n            $menuReturn = $($menuReturn.selector);\r\n            $menuReturn.data('currentLevel', 3);\r\n            $menuReturn.data('level3Text', e.target.innerText);\r\n            $menuReturn.text(e.target.innerText);\r\n            $menuReturn.show();\r\n        }\r\n\r\n        $('.tab-pane.active > ul', scope).closest(\"ul\").hide();\r\n        $('.tab-pane.active > .subsection-results', scope).show();\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.hideLevel0 = function (e) {\r\n        $('.dropdown-menu:visible', scope).prev('.dropdown-toggle').dropdown('toggle');\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.hideLevel1 = function (e) {\r\n        $('.ecolab-nav-tabs__industry > li.active').removeClass('active');\r\n        $('.nav-tabs-wrapper-outer', scope).show();\r\n        $('.tab-content-wrapper-outer', scope).hide();\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.hideLevel2 = function (e) {\r\n        $('.tab-pane.active > ul', scope).closest(\"ul\").show();\r\n        $('.tab-pane.active > .subsection-results', scope).hide();\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.attachHandlers = function (emm) {\r\n        var $hamburgerBtn = $(\".score-hamburger.navbar-toggle\", scope);\r\n        var $hamburgerMenu = $(\".navbar-collapse.collapse\", scope);\r\n        var $navbar = $hamburgerBtn.parent(\".navbar-header.score-navbar-header\");\r\n        var $utilityMenu = $(\".ecolab-utility-nav\");\r\n\r\n        // inject search and utility ICONS for mobile nav\r\n        var $utilityBtn = $navbar.find(\".utility-toggle\");\r\n        if ($utilityBtn.length === 0) {\r\n            $utilityMenu.after('<button type=\"button\" data-toggle=\"collapse\" data-target=\"#mm-utility\" class=\"utility-toggle collapsed\"><span class=\"sr-only\">Toggle navigation</span><span class=\"glyphicon glyphicon-cog\"></span></button>');\r\n            $utilityBtn = $($utilityBtn.selector);\r\n        }\r\n\r\n        var $searchBtn = $navbar.find(\".ecolab-standalone-search__mobile\");\r\n        if ($searchBtn.length === 0) {\r\n            $hamburgerBtn.after($(\".ecolab-standalone-search__mobile\"));\r\n            $searchBtn = $($searchBtn.selector);\r\n        }\r\n\r\n        var $scoreNav = $navbar.parent(\".score-nav\");\r\n        var $utilityMenuMobile = $scoreNav.find(\".utility-nav-container\");\r\n        if ($utilityMenuMobile.length === 0) {\r\n            $utilityMenu.clone().removeClass(\"ecolab-utility-nav\").appendTo('.ecolab-top-bar .score-right').wrap(\"<div id='mm-utility' class='utility-nav-container hidden-lg collapse' aria-expanded='false'></div>\");\r\n\r\n            $utilityMenuMobile = $($utilityMenuMobile.selector);\r\n\r\n            // close one menu if another is opened\r\n            $hamburgerBtn.on('click', function () {\r\n                if ($utilityMenuMobile.hasClass('in')) {\r\n                    $utilityMenuMobile.collapse('hide');\r\n                }\r\n                if ($('.search-box-container').hasClass('in')) {\r\n                    $('.search-box-container').collapse('hide');\r\n                }\r\n            });\r\n            $utilityBtn.on('click', function () {\r\n                if ($hamburgerMenu.hasClass('in')) {\r\n                    $hamburgerMenu.collapse('hide');\r\n                }\r\n                if ($('.search-box-container').hasClass('in')) {\r\n                    $('.search-box-container').collapse('hide');\r\n                }\r\n            });\r\n            $searchBtn.on('click', function () {\r\n                if ($hamburgerMenu.hasClass('in')) {\r\n                    $hamburgerMenu.collapse('hide');\r\n                }\r\n                if ($utilityMenuMobile.hasClass('in')) {\r\n                    $utilityMenuMobile.collapse('hide');\r\n                }\r\n            });\r\n        }\r\n        \r\n        if (!$hamburgerBtn.hasClass(\"collapsed\")) {\r\n            $hamburgerBtn.addClass(\"collapsed\").attr(\"aria-expanded\", \"false\");\r\n            $hamburgerMenu.removeClass(\"in\").attr(\"aria-expanded\", \"false\");\r\n        }\r\n            \r\n        emm.resetStyles();\r\n        //Attach Ecolab Mega Menu handlers\r\n        //Menu Return\r\n        $(document).off('click', '.ecolab-menu-return');\r\n        $(document).on('click', '.ecolab-menu-return', function (e) {\r\n            e.stopPropagation();\r\n            var $this = $(this);\r\n            var currentLevel = $this.data('currentLevel');\r\n            if (1 === currentLevel) {\r\n                $this.data('currentLevel', 0);\r\n                emm.hideLevel0();\r\n            } else if (2 === currentLevel) {\r\n                $this.data('currentLevel', 1);\r\n                $this.text($this.data('level1Text'));\r\n                emm.hideLevel1();\r\n            } else if (3 === currentLevel) {\r\n                $this.data('currentLevel', 2);\r\n                $this.text($this.data('level2Text'));\r\n                emm.hideLevel2();\r\n            }\r\n        });\r\n\r\n        //Level 1\r\n        $('.dropdown-menu', scope).parent()\r\n            .on('show.bs.dropdown', emm.showLevel1)\r\n            //Level 0\r\n            .on('hide.bs.dropdown', emm.showLevel0)\r\n            .on('hide.bs.dropdown', emm.resetStyles);\r\n        //Level 2\r\n        $('a[data-toggle=tab]', scope)\r\n            .on('show.bs.tab', emm.showLevel2);\r\n        //Level 3\r\n        $('.ecolab-tab-pane__industry > ul > li > a', scope)\r\n            .on('click', emm.showLevel3);\r\n\r\n        handlersAttached = true;\r\n    }\r\n\r\n    EcolabMegaMenu.prototype.detachHandlers = function (emm) {\r\n        //Detach Ecolab Mega Menu handlers\r\n        //Level 1\r\n        $('.dropdown-menu', scope).parent()\r\n            .off('show.bs.dropdown', emm.showLevel1)\r\n            //Level 0\r\n            .off('hide.bs.dropdown', emm.showLevel0)\r\n            .off('hide.bs.dropdown', emm.resetStyles);\r\n        //Level 2\r\n        $('a[data-toggle=tab]', scope)\r\n            .off('show.bs.tab', emm.showLevel2);\r\n        //Level 3\r\n        $('.ecolab-tab-pane__industry > ul > li > a', scope)\r\n            .off('click', emm.showLevel3);\r\n\r\n        $(\".score-megamenu-dropdown.dropdown.multi-level\", scope).css(\"display\", \"inherit\");\r\n        $(\".\" + hiddenForMobileViewClass, scope).removeAttr(\"style\");\r\n\r\n        $menuReturn = $($menuReturn.selector);\r\n        if ($menuReturn.length > 0) {\r\n            $menuReturn.hide();\r\n        }\r\n\r\n        emm.resetStyles();\r\n        handlersAttached = false;\r\n    }\r\n\r\n    return new EcolabMegaMenu();\r\n});\n",
    ";define('Lazyframe',[\"underscore\"], function lazyframe(_) {\r\n\r\n        var settings = undefined;\r\n\r\n        var elements = [];\r\n\r\n        var defaults = {\r\n            vendor: undefined,\r\n            id: undefined,\r\n            src: undefined,\r\n            thumbnail: undefined,\r\n            title: undefined,\r\n            apikey: undefined,\r\n            initialized: false,\r\n            parameters: undefined,\r\n            y: undefined,\r\n            debounce: 250,\r\n            lazyload: true,\r\n            initinview: false,\r\n            onLoad: function onLoad(l) {},\r\n            onAppend: function onAppend(l) {},\r\n            onThumbnailLoad: function onThumbnailLoad(img) {}\r\n        };\r\n\r\n        var constants = {\r\n            regex: {\r\n                youtube:\r\n                    /(?:youtube\\.com\\/\\S*(?:(?:\\/e(?:mbed))?\\/|watch\\?(?:\\S*?&?v\\=))|youtu\\.be\\/)([a-zA-Z0-9_-]{6,11})/,\r\n                vimeo: /vimeo\\.com\\/(?:video\\/)?([0-9]*)(?:\\?|)/,\r\n                vine: /vine.co\\/v\\/(.*)/\r\n            },\r\n            condition: {\r\n                youtube: function youtube(m) {\r\n                    return m && m[1].length == 11 ? m[1] : false;\r\n                },\r\n                vimeo: function vimeo(m) {\r\n                    return m && m[1].length === 9 || m[1].length === 8 ? m[1] : false;\r\n                },\r\n                vine: function vine(m) {\r\n                    return m && m[1].length === 11 ? m[1] : false;\r\n                }\r\n            },\r\n            src: {\r\n                youtube: function youtube(s) {\r\n                    //var optonCookieValue = getCookie(\"OptanonConsent\");\r\n\r\n                    //if (optonCookieValue.indexOf(\"C0004:0\") >= 0 || optonCookieValue.indexOf(\"C0005:0\") >= 0 ) {\r\n                    //    return 'https://www.youtube-nocookie.com/embed/' + s.id + '/?' + s.parameters;\r\n                    //} else {\r\n                    //    return 'https://www.youtube.com/embed/' + s.id + '/?' + s.parameters;\r\n                    //}\r\n                    return 'https://www.youtube.com/embed/' + s.id + '/?' + s.parameters;\r\n                },\r\n                vimeo: function vimeo(s) {\r\n                    return 'https://player.vimeo.com/video/' + s.id + '/?' + s.parameters;\r\n                },\r\n                vine: function vine(s) {\r\n                    return 'https://vine.co/v/' + s.id + '/embed/simple';\r\n                }\r\n            },\r\n            endpoints: {\r\n                youtube: function youtube(s) {\r\n                    return 'https://www.googleapis.com/youtube/v3/videos?id=' +\r\n                        s.id +\r\n                        '&key=' +\r\n                        s.apikey +\r\n                        '&fields=items(snippet(title,thumbnails))&part=snippet';\r\n                },\r\n                vimeo: function vimeo(s) {\r\n                    return 'https://vimeo.com/api/oembed.json?url=https%3A//vimeo.com/' + s.id;\r\n                },\r\n                vine: function vine(s) {\r\n                    return 'https://vine.co/oembed.json?url=https%3A%2F%2Fvine.co%2Fv%2F' + s.id;\r\n                }\r\n            },\r\n            response: {\r\n                youtube: {\r\n                    title: function title(r) {\r\n                        if (r.items && r.items.length > 0) {\r\n                            return r.items['0'].snippet.title;\r\n                        } else {\r\n                            return \"\";\r\n                        }\r\n                    },\r\n                    thumbnail: function thumbnail(r) {\r\n                        if (r.items && r.items.length > 0) {\r\n                            var thumbs = r.items[\"0\"].snippet.thumbnails;\r\n                            var thumb = thumbs.maxres ||\r\n                                thumbs.standard ||\r\n                                thumbs.high ||\r\n                                thumbs.medium ||\r\n                                thumbs['default'];\r\n                            return thumb.url;\r\n                        } else {\r\n                            return \"\";\r\n                        }\r\n                    }\r\n                },\r\n                vimeo: {\r\n                    title: function title(r) {\r\n                        return r.title;\r\n                    },\r\n                    thumbnail: function thumbnail(r) {\r\n                        return r.thumbnail_url;\r\n                    }\r\n                },\r\n                vine: {\r\n                    title: function title(r) {\r\n                        return r.title;\r\n                    },\r\n                    thumbnail: function thumbnail(r) {\r\n                        return r.thumbnail_url;\r\n                    }\r\n                }\r\n            }\r\n        };\r\n\r\n        function init(elements) {\r\n            settings = _.extend({}, defaults, arguments[1]);\r\n\r\n            if (typeof elements === 'string') {\r\n\r\n                var selector = document.querySelectorAll(elements);\r\n                for (var i = 0; i < selector.length; i++) {\r\n                    loop(selector[i]);\r\n                }\r\n            } else if (typeof elements.length === 'undefined') {\r\n                loop(elements);\r\n            } else if (elements.length > 1) {\r\n\r\n                for (var i = 0; i < elements.length; i++) {\r\n                    loop(elements[i]);\r\n                }\r\n            } else {\r\n                loop(elements[0]);\r\n            }\r\n\r\n            if (settings.lazyload) {\r\n                scroll();\r\n            }\r\n        }\r\n\r\n        function loop(el) {\r\n            var _this = this;\r\n\r\n            if (el instanceof HTMLElement === false || el.classList.contains('lazyframe--loaded')) return;\r\n\r\n            var lazyframe = {\r\n                el: el,\r\n                settings: setup(el)\r\n            };\r\n\r\n            lazyframe.el.addEventListener('click',\r\n                function() {\r\n                    lazyframe.el.appendChild(lazyframe.iframe);\r\n\r\n                    var iframe = el.querySelectorAll('iframe');\r\n                    lazyframe.settings.onAppend.call(_this, iframe[0]);\r\n                });\r\n\r\n            if (settings.lazyload) {\r\n                build(lazyframe);\r\n            } else {\r\n                api(lazyframe, !!lazyframe.settings.thumbnail);\r\n            }\r\n        }\r\n\r\n        function setup(el) {\r\n\r\n            var attr = Array.prototype.slice.apply(el.attributes).filter(function(att) {\r\n                return att.value !== '';\r\n            }).reduce(function(obj, curr) {\r\n                    var name = curr.name.indexOf('data-') === 0 ? curr.name.split('data-')[1] : curr.name;\r\n                    obj[name] = curr.value;\r\n                    return obj;\r\n                },\r\n                {});\r\n            \r\n            var options = _.extend({}, settings, attr, { y: el.offsetTop, parameters: extractParams(attr.src) });\r\n\r\n            if (options.vendor) {\r\n                var match = options.src.match(constants.regex[options.vendor]);\r\n                options.id = constants.condition[options.vendor](match);\r\n            }\r\n\r\n            return options;\r\n        }\r\n\r\n        function extractParams(url) {\r\n            var params = url.split('?');\r\n\r\n            if (params[1]) {\r\n                params = params[1];\r\n                var hasAutoplay = params.indexOf('autoplay') !== -1;\r\n                return hasAutoplay ? params : params + '&autoplay=1';\r\n            } else {\r\n                return 'autoplay=1';\r\n            }\r\n        }\r\n\r\n        function useApi(settings) {\r\n\r\n            if (!settings.vendor) return false;\r\n\r\n            if (!settings.title || !settings.thumbnail) {\r\n                if (settings.vendor === 'youtube') {\r\n                    return !!settings.apikey;\r\n                } else {\r\n                    return true;\r\n                }\r\n            } else {\r\n                return false;\r\n            }\r\n        }\r\n\r\n        function api(lazyframe) {\r\n            var _this2 = this;\r\n\r\n            if (useApi(lazyframe.settings)) {\r\n                send(lazyframe,\r\n                    function(err, data) {\r\n                        if (err) return;\r\n\r\n                        var response = data[0];\r\n                        var _l = data[1];\r\n\r\n                        if (!_l.settings.title) {\r\n                            _l.settings.title = constants.response[_l.settings.vendor].title(response);\r\n                        }\r\n                        if (!_l.settings.thumbnail) {\r\n                            var url = constants.response[_l.settings.vendor].thumbnail(response);\r\n                            _l.settings.thumbnail = url;\r\n                            lazyframe.settings.onThumbnailLoad.call(_this2, url);\r\n                        }\r\n                        build(_l, true);\r\n                    });\r\n            } else {\r\n                build(lazyframe, true);\r\n            }\r\n        }\r\n\r\n        function send(lazyframe, cb) {\r\n\r\n            var endpoint = constants.endpoints[lazyframe.settings.vendor](lazyframe.settings);\r\n            var request = new XMLHttpRequest();\r\n\r\n            request.open('GET', endpoint, true);\r\n\r\n            request.onload = function() {\r\n                if (request.status >= 200 && request.status < 400) {\r\n                    var data = JSON.parse(request.responseText);\r\n                    cb(null, [data, lazyframe]);\r\n                } else {\r\n                    cb(true);\r\n                }\r\n            };\r\n\r\n            request.onerror = function() {\r\n                cb(true);\r\n            };\r\n\r\n            request.send();\r\n        }\r\n\r\n        function scroll() {\r\n            var _this3 = this;\r\n\r\n            var height = window.innerHeight;\r\n            var count = elements.length;\r\n            var initElement = function initElement(el, i) {\r\n                el.settings.initialized = true;\r\n                el.el.classList.add('lazyframe--loaded');\r\n                count--;\r\n                api(el);\r\n\r\n                if (el.settings.initinview) {\r\n                    el.el.click();\r\n                }\r\n\r\n                el.settings.onLoad.call(_this3, el);\r\n            };\r\n\r\n            elements.filter(function(el) {\r\n                return el.settings.y < height;\r\n            }).forEach(initElement);\r\n\r\n            var onScroll = debounce(function() {\r\n\r\n                    up = lastY < window.pageYOffset;\r\n                    lastY = window.pageYOffset;\r\n\r\n                    if (up) {\r\n                        elements.filter(function(el) {\r\n                            return el.settings.y < height + lastY && el.settings.initialized === false;\r\n                        }).forEach(initElement);\r\n                    }\r\n\r\n                    if (count === 0) {\r\n                        window.removeEventListener('scroll', onScroll, false);\r\n                    }\r\n                },\r\n                settings.debounce);\r\n\r\n            var lastY = 0;\r\n            var t = false,\r\n                up = false;\r\n            window.addEventListener('scroll', onScroll, false);\r\n\r\n            function debounce(func, wait, immediate) {\r\n                var timeout = undefined;\r\n                return function() {\r\n                    var context = this,\r\n                        args = arguments;\r\n                    var later = function later() {\r\n                        timeout = null;\r\n                        if (!immediate) func.apply(context, args);\r\n                    };\r\n                    var callNow = immediate && !timeout;\r\n                    clearTimeout(timeout);\r\n                    timeout = setTimeout(later, wait);\r\n                    if (callNow) func.apply(context, args);\r\n                };\r\n            };\r\n        }\r\n\r\n        function build(lazyframe, loadImage) {\r\n\r\n            lazyframe.iframe = getIframe(lazyframe.settings);\r\n\r\n            if (lazyframe.settings.thumbnail && loadImage) {\r\n                lazyframe.el.style.backgroundImage = 'url(' + lazyframe.settings.thumbnail + ')';\r\n            }\r\n\r\n            if (lazyframe.settings.title && lazyframe.el.children.length === 0) {\r\n                var docfrag = document.createDocumentFragment(),\r\n                    titleNode = document.createElement('span');\r\n\r\n                titleNode.className = 'lazyframe__title';\r\n                titleNode.innerHTML = lazyframe.settings.title;\r\n                docfrag.appendChild(titleNode);\r\n\r\n                lazyframe.el.appendChild(docfrag);\r\n            }\r\n\r\n            if (!settings.lazyload) {\r\n                lazyframe.el.classList.add('lazyframe--loaded');\r\n                lazyframe.settings.onLoad.call(this, lazyframe);\r\n                elements.push(lazyframe);\r\n            }\r\n\r\n            if (!lazyframe.settings.initialized) {\r\n                elements.push(lazyframe);\r\n            }\r\n        }\r\n\r\n        function getIframe(settings) {\r\n\r\n            var docfrag = document.createDocumentFragment(),\r\n                iframeNode = document.createElement('iframe');\r\n\r\n            if (settings.vendor) {\r\n                settings.src = constants.src[settings.vendor](settings);\r\n            }\r\n\r\n            iframeNode.setAttribute('id', 'lazyframe-' + settings.id);\r\n            iframeNode.setAttribute('src', settings.src);\r\n            iframeNode.setAttribute('frameborder', 0);\r\n            iframeNode.setAttribute('allowfullscreen', '');\r\n\r\n            if (settings.vendor === 'vine') {\r\n                var scriptNode = document.createElement('script');\r\n                scriptNode.setAttribute('src', 'https://platform.vine.co/static/scripts/embed.js');\r\n                docfrag.appendChild(scriptNode);\r\n            }\r\n\r\n            docfrag.appendChild(iframeNode);\r\n            return docfrag;\r\n    }\r\n\r\n        //function getCookie(cname) {\r\n        //    let name = cname + \"=\";\r\n        //    let decodedCookie = decodeURIComponent(document.cookie);\r\n        //    let ca = decodedCookie.split(';');\r\n        //    for (let i = 0; i < ca.length; i++) {\r\n        //        let c = ca[i];\r\n        //        while (c.charAt(0) == ' ') {\r\n        //            c = c.substring(1);\r\n        //        }\r\n        //        if (c.indexOf(name) == 0) {\r\n        //            return c.substring(name.length, c.length);\r\n        //        }\r\n        //    }\r\n        //    return \"\";\r\n        //}\r\n\r\n        return init;\r\n    });\n",
    "define('Accessibility',[\"jquery\"],\n    function ($) {\n        var Accessibility = {\n            _formBuilder: function () {\n                $(\"form :input\").each(function () {\n                    var element = $(this).attr('data-val-required');\n                    if (element) {\n                        $(this).attr('aria-required', true);\n                    }\n                });\n            },\n            _modalOpen: function () {\n                $(\".modal\").on('shown.bs.modal', function (e) {\n                    $(this).find(\":button\").first().focus();\n                });\n            },\n            _modalRemoveRole: function () {\n                $('ul[role=\"menu\"]').removeAttr(\"role\");\n                $('li[role=\"menuitem\"]').removeAttr(\"role\");\n            },\n            _sliderDotButtonTuned: function () {\n                $('.ecolab-carousel, .ecolab-slider').on('beforeChange', function (event, slick, currentSlide, nextSlide) {\n                    $(this).find(\".slick-dots li button\").removeAttr(\"aria-current\");\n                });\n                $('.ecolab-carousel, .ecolab-slider').on('afterChange', function (event, slick, currentSlide, nextSlide) {\n                    $(this).find('li[class=\"slick-active\"]').first().find('button').first().attr('aria-current', 'true')\n                });\n            },\n            _alertModal: function () {\n                $(\".ecolab-alert-module .close\").removeAttr('aria-hidden');\n                $(\".ecolab-alert-module .close\").attr('aria-label', 'close');\n                $(\".ecolab-alert-module\").attr('aria-label', 'notification').attr('role', 'region');\n                $(\".score-cookie-disclaimer\").attr('role', 'region').attr('aria-label', 'cookie consent');\n                $(\".score-cookie-disclaimer .close\").attr('role', 'button');\n\n            },\n            _skipToMainContent: function () {\n                var foucsId = \"eco-main-Content\";\n                if ($(\".score-hero.ecolab-welcome-module\").length) {\n                    setMainContentToElement(_addMainContentFocus(\".score-hero.ecolab-welcome-module\"));\n                }\n                else if ($('.item.score-carousel-pane.cover').length === 1) {\n                    setMainContentToElement(_addMainContentFocus(\".item.score-carousel-pane.cover\"));\n                }\n                else if ($('.item.score-carousel-pane.cover').length > 1) {\n                    setMainContentToElement(_addFocusToCarousel('.item.score-carousel-pane.cover'));\n                }\n                else if ($(\".news-headline-with-subtitle\").length) {\n                    setMainContentToElement(_addMainContentFocus(\".news-headline-with-subtitle\"));\n                }\n                else if ($(\".event-welcome-module\").length) {\n                    setMainContentToElement(_addMainContentFocus(\".event-welcome-module\"));\n                }\n                else if ($('.ecolab-story-hero-module')) {\n                    setMainContentToElement(_addMainContentFocus(\".ecolab-story-hero-module\"));\n                }\n                else if ($(\".headline-only-size-small\").length) {\n                    setMainContentToElement(_addMainContentFocus(\".headline-only-size-small\"));;\n                }\n\n\n                function setMainContentToElement(functionNameToCall) {\n                    if (typeof functionNameToCall !== 'undefined') {\n                        setTimeout(function () {\n                            functionNameToCall();\n                        }, 3000);\n                    }\n                }\n\n                function _addMainContentFocus(elementToSetFocus) {\n                    if ($(elementToSetFocus + \" h1\").length) {\n                        $(elementToSetFocus + \" h1\").first().attr('id', foucsId);\n                    }\n                    else if ($(elementToSetFocus + \" h2\").length) {\n                        $(elementToSetFocus + \" h2\").first().attr('id', foucsId);\n                    }\n                    else if ($(elementToSetFocus / + \" h3\").length) {\n                        $(elementToSetFocus + \" h3\").first().attr('id', foucsId);\n                    }\n                    else {\n                        $(elementToSetFocus).first().attr('id', foucsId);\n                    }\n                }\n\n                function _addFocusToCarousel(elementToSetFocus) {\n                    $(elementToSetFocus).each(function (index, val) {\n                        if (index === 0) {\n                            if ($(this).find('h1').length) {\n                                $(this).find('h1').first().attr('id', foucsId);\n                                return false;\n                            }\n                            else if ($(this).find('h2').length) {\n                                $(this).find('h2').first().attr('id', foucsId);\n                                return false;\n                            }\n                            else if ($(this).find('h3').length) {\n                                $(this).find('h3').first().attr('id', foucsId);\n                                return false;\n                            }\n                            else {\n                                $(elementToSetFocus).first().attr('id', foucsId);\n                                return false;\n                            }\n                        }\n                    });\n                }\n            },\n            _navigationTabs: function () {\n\n                //Add required roles\n                $(\".nav-tabs-wrapper-outer\").attr('aria-label', $('.score-megamenu-dropdown.megamenu-full').first().find('a').first().text().trim());\n\n                //$('.nav-tabs-wrapper-inner > ul > li > a').each(function () {\n                //    $($(this).attr('href')).attr('role', 'region').attr('aria-label', $(this).text().trim());\n                //});\n\n\n                $(\".score-megamenu-dropdown > a, .ecolab-nav-tabs__industry li a, #second-tab-content div ul li a\").attr('role', 'button').attr('aria-expanded', 'false');\n\n                $(document).on('click', 'li.score-megamenu-dropdown a[data-toggle=\"dropdown\"]', function (e) {\n                    var widthValu = $(window).width();\n                    if (widthValu > 1199 && widthValu < 1350) {\n                        $('.nav-tabs-wrapper-outer').css('display', 'block');\n                        $('.nav-tabs-wrapper-outer ul li').removeClass('active');\n                    }\n                });\n\n                //Menu Product & Service Click\n                $(document).on('click', 'ul.navbar-nav > li:first-child > a', function (e) {\n                    $('.nav-tabs-wrapper-inner a').attr('tabindex', '0').attr('aria-selected', 'false').attr('aria-expanded', 'false');\n                    $('.ecolab-second-level-link').attr('aria-selected', 'false').attr('aria-expanded', 'false');\n\n\n                });\n\n                //When First child not clicked\n                $(document).on('click', 'ul.navbar-nav > li:not(:first-child) > a', function (e) {\n                    $('.nav-tabs-wrapper-inner a').attr('tabindex', '-1').attr('aria-selected', 'false').attr('aria-expanded', 'false');\n                    $('.ecolab-second-level-link').attr('tabindex', '-1').attr('aria-selected', 'false').attr('aria-expanded', 'false');\n                });\n\n                //choose Industry\n                $(document).on('click', '.nav-tabs-wrapper-inner li', function (e) {\n                    $('.ecolab-second-level-menu li a').removeAttr('tabindex');\n                    $('.nav-tabs-wrapper-inner a').attr('tabindex', '-1').attr('aria-selected', 'false');\n                    $(this).attr('user-test', '3')\n                    $(this).children().attr('tabindex', '0').attr('aria-selected', 'true');\n                    $('.header-breadcrumb__title h2').css('display', 'block');\n                    //$('.tab-content-wrapper-inner .score-tab-panel').attr('tabindex', '-1');\n\n                    var idValue = $(this).children().first().attr('href');\n                    $(idValue).prependTo(\"#second-tab-content\");\n                    $(idValue).attr('aria-labelledby', $(this).children().first().attr('id'));\n                    $(idValue).parent().find('a').attr('tabindex', '-1');\n                    $(idValue).find('a').attr('tabindex', '0');\n                    var widthValu = $(window).width();\n                    if (widthValu > 1199 && widthValu < 1350) {\n                        $('.nav-tabs-wrapper-outer').css('display', 'none');\n                        $(idValue).find('ul').css('display', 'block')\n                    }\n\n                });\n\n                //Choose Market\n                $(document).on('click', '.ecolab-second-level-link', function (e) {\n                    $('.ecolab-second-level-link').attr('aria-selected', 'false').attr('aria-expanded', 'false').attr('tabindex', '-1');\n                    $(this).attr('aria-selected', 'true').attr('aria-expanded', 'true').attr('tabindex', '0');\n                    //$('.tab-content-wrapper-inner .score-tab-panel').attr('tabindex', '-1');\n                    //$(this).parent().closest('.score-tab-panel').attr('tabindex', '0');\n                    var widthValu = $(window).width();\n                    if (widthValu > 1199 && widthValu < 1350) {\n                        $(this).parents('.ecolab-second-level-menu').css('display', 'none');\n                    }\n                    $('.ecolab-second-level-link').removeAttr('aria-expand');\n\n                    $('#' + $(this).attr('aria-controls')).attr('aria-label', $(this).text().trim());\n\n                });\n\n                //Choose Industry Breadcrumb Click\n                $(document).on('click', '.header-breadcrumb__secondary button', function (e) {\n                    $('.ecolab-nav-tabs__industry li a').attr('tabindex', '0');\n                    $('#second-tab-content ul li a').attr('tabindex', '-1');\n\n                    $('.ecolab-nav-tabs__industry li a').first().focus();\n                });\n\n                //Choose Market Breadcrumb Click\n                $(document).on('click', '.header-breadcrumb__title button', function (e) {\n                    $('.ecolab-nav-tabs__industry li a').attr('tabindex', '-1');\n                    $('#second-tab-content ul li a').attr('tabindex', '0');\n\n                    $('#second-tab-content ul li a').first().focus();\n                });\n\n                $(document).on('keyup', '.ecolab-second-level-link, .nav-tabs-wrapper-inner a', function (e) {\n                    if (e.keyCode == 32 || e.which == 32) { //space\n                        e.preventDefault();\n                        $(this).trigger('click');\n                    }\n                    else if (e.keyCode == 37 || e.which == 37) { // left\n                        e.preventDefault();\n                        var keyUpArrowEvent = $.Event(\"keydown\");\n                        keyUpArrowEvent.which = 38;\n\n                        $(this).trigger(keyUpArrowEvent);\n                    }\n                    else if (e.keyCode == 39 || e.which == 39) { // right\n                        e.preventDefault();\n                        var keyDownEvent = $.Event(\"keydown\");\n                        keyDownEvent.which = 40;\n\n                        $(this).trigger(keyDownEvent);\n                    }\n                });\n            },\n            _SearchModal: function () {\n\n                $(document).on('click', '.ecolab-search-button', function (e) {\n                    if ($(this).hasClass('active')) {\n                        $(this).attr('aria-expanded', 'true');\n                    }\n                    else {\n                        $(this).attr('aria-expanded', 'false');\n                    }\n                });\n\n                $(document).on('keydown', '.score-button', function (e) {\n                    if (e.keyCode == 32 || e.which == 32 || e.keyCode === 13 || e.which === 13) { //space\n                        e.preventDefault();\n                        $(this).trigger('click');\n                    }\n                });\n\n                $(document).on('focusin focusout keyup blur keydown', '.CoveoOmnibox input', function (e) {\n                    $('body').on('DOMSubtreeModified', 'header .CoveoSearchbox div', function () {\n                        e.preventDefault();\n                        e.stopPropagation();\n                        $(this).removeAttr('aria-expanded');\n                    });\n                });\n\n            },\n            _loadCoveoComponent: function () {\n\n                var coveoSelectedInsertCount = 0;\n\n                $(document).on('focusin', '.magic-box-input input', function (e) {\n                    ClearSeletecFacetFromAttribute();\n                });\n\n                $(document).on('DOMContentLoaded', '.magic-box-clear', function (e) {\n                    $(this).attr('role', 'button');\n                });\n\n                $(document).on('DOMContentLoaded', '.coveo-facet-value-exclude', function (e) {\n                    removeFacetRemovalCheckBox();\n                });\n\n                $(document).on('DOMContentLoaded', '.score-right .ecolab-lister', function (e) {\n\n                    if ($(this).closest('.score-right').find('aside').length === 0) {\n                        $(this).closest('.score-right').wrapInner(\"<aside />\");\n                    }\n                });\n\n\n                $(document).on('DOMContentLoaded', 'header .CoveoSearchbox div div input', function (e) {\n\n                    setCoveoGlobalSearchValue();\n                });\n\n                $(document).on('DOMContentLoaded', '.coveo-facet-value.coveo-selected', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    setFacetSelectedInsertedCount();\n                    facetFocusOnFacetClick();\n                });\n\n\n                $(document).on('DOMContentLoaded', '.coveo-visible-to-screen-reader-only', function (e) {\n                    adaChangesOnCoveoComponent();\n                });\n\n\n                $(document).on('keydown', '.coveo-facet-value-checkbox', function (e) {\n                    if (e.keyCode === 13 || e.which === 13 || e.keyCode === 32 || e.which === 32) {\n\n                        var facetName = $(this).closest('.coveo-facet-value-label-wrapper').find('.coveo-facet-value-caption').first().text();\n                        setFacetSelectionInAttribute(facetName);\n\n                    }\n                });\n\n                $(document).on('focusout', '.coveo-facet-value, .coveo-facet-value-checkbox', function (e) {\n\n                    ClearSeletecFacetFromAttribute();\n\n                });\n\n\n\n                $(document).on('click', '.coveo-facet-value', function (e) {\n\n                    var facetName = $(this).find('.coveo-facet-value-caption').first().text();\n                    setFacetSelectionInAttribute(facetName);\n                });\n\n                $(document).on('keydown', '.coveo-facet-value-checkbox', function (e) {\n                    if (e.keyCode === 13 || e.which === 13 || e.keyCode === 32 || e.which === 32) {\n\n                        var facetName = $(this).closest('.coveo-facet-value-label-wrapper').find('.coveo-facet-value-caption').first().text();\n                        setFacetSelectionInAttribute(facetName);\n\n                    }\n                });\n\n\n                $(document).on('focusin mouseover', '.coveo-facet-footer .coveo-facet-more', function (e) {\n                    setCurrentFacetCountForContainerFromAtrribure(this);\n                });\n\n                $(document).on('click', '.coveo-facet-footer .coveo-facet-more', function (e) {\n                    removeFacetRemovalCheckBox();\n                    SetFocusForCoveoShowMoreClickByContainer(getContainerNameForFocusInAttribute(this), getCurrentFacetCountForContainerFromAtrribure(this));\n                });\n\n                $(document).on('keydown', '.coveo-facet-footer .coveo-facet-more', function (e) {\n                    if (e.keyCode === 13 || e.which === 13 || e.keyCode === 32 || e.which === 32) {\n                        SetFocusForCoveoShowMoreClickByContainer(getContainerNameForFocusInAttribute(this), getCurrentFacetCountForContainerFromAtrribure(this));\n                    }\n                });\n\n                $(document).on('click', '.coveo-facet-footer .coveo-facet-less', function (e) {\n                    SetFocusForCoveoShowLessClickByContainer(getContainerNameForFocusInAttribute(this));\n                });\n\n                $(document).on('keydown', '.coveo-facet-footer .coveo-facet-less', function (e) {\n                    if (e.keyCode === 13 || e.which === 13 || e.keyCode === 32 || e.which === 32) {\n                        SetFocusForCoveoShowLessClickByContainer(getContainerNameForFocusInAttribute(this));\n                    }\n                });\n\n\n                $(document).on('click', '.coveo-pager-list-item-text', function (e) {\n\n                    setSelectedPageInAttribute(this);\n\n                });\n\n                $(document).on('keydown', '.coveo-pager-list-item', function (e) {\n                    if (e.keyCode === 13 || e.which === 13 || e.keyCode === 32   || e.which === 32) {\n                        setSelectedPageInAttribute(this);\n                    }\n                });\n\n                function setSelectedPageInAttribute(elem) {\n                    $('.ecolab-main-body').attr('selected-page', $(elem).attr('aria-label'));\n                }\n\n\n                function triggerFocusForCoveoShowMoreClickByContainer(containerName, currentFacetCount) {\n                    var loadingFacets = FacetingLoadingStyleValue(containerName);\n                    if (loadingFacets.indexOf('hidden') > -1) {\n                        setCoveoAriaAttributes();\n                        SetFocusForCoveoShowMoreClick(containerName, currentFacetCount);\n\n                    }\n                    else {\n                        SetFocusForCoveoShowMoreClickByContainer(containerName, currentFacetCount, 200);\n                    }\n                }\n\n                function triggerFocusForCoveoShowLessClickByContainer(containerName) {\n                    var loadingFacets = FacetingLoadingStyleValue(containerName);\n                    if (loadingFacets.indexOf('hidden') > -1) {\n                        setCoveoAriaAttributes();\n                        SetFocusForCoveoShowLessClick(containerName);\n\n                    }\n                    else {\n                        SetFocusForCoveoShowLessClickByContainer(containerName, 200);\n                    }\n                }\n\n                function SetFocusForCoveoShowMoreClickByContainer(containerName, currentFacetCount, timeOutFrequency = 500) {\n                    setTimeout(function () {\n                        triggerFocusForCoveoShowMoreClickByContainer(containerName, currentFacetCount);\n                    }, timeOutFrequency);\n                }\n\n\n                function SetFocusForCoveoShowLessClickByContainer(containerName, timeOutFrequency = 500) {\n                    setTimeout(function () {\n                        triggerFocusForCoveoShowLessClickByContainer(containerName);\n                    }, timeOutFrequency);\n                }\n\n                function FacetingLoadingStyleValue(containerName) {\n\n                    return $(\".CoveoFacet[data-title='\" + containerName + \"']\").find('.coveo-facet-header-wait-animation').first().attr('style');\n                }\n\n                function SetFocusForCoveoShowMoreClick(containerName, currentFacetCount) {\n                    $($(\".CoveoFacet[data-title='\" + containerName + \"']\").find('.coveo-facet-value.coveo-facet-selectable.coveo-with-hover').not('.coveo-facet-search-button')[currentFacetCount]).find('.coveo-facet-value-checkbox').first().focus();\n\n                }\n\n                function SetFocusForCoveoShowLessClick(containerName) {\n                    $(\".CoveoFacet[data-title='\" + containerName + \"']\").find('.coveo-facet-value.coveo-facet-selectable.coveo-with-hover').not('.coveo-facet-search-button').last().find('.coveo-facet-value-checkbox').first().focus();\n\n                }\n\n                function setCoveoAriaAttributes() {\n                    removeFacetRemovalCheckBox();\n                    setAriaForCoveoFacetHeaderValue();\n                    SetAriaForCoveoFacetCheckBox();\n                    setAriaForCoveoFacetFooterValue();\n                }\n\n\n                $(document).on('focusout', '.coveo-facet-header-title div[role=\"button\"]', function (e) {\n                    ClearSeletecFacetFromAttribute();\n                });\n\n\n                function focusAfterDataLoaded(functionNameToCall) {\n                    if (typeof functionNameToCall !== 'undefined') {\n                        setTimeout(function () {\n                            functionNameToCall();\n                        }, 500);\n                    }\n                }\n\n                function facetFocusOnFacetClick() {\n\n                    focusAfterDataLoaded(setFocusOnFacetClick);\n\n                }\n\n                function adaChangesOnCoveoComponent() {\n                    //setTimeout(function () {\n                    //setCoveoFacetValue();\n                    setCoveoFacetHeaderValue();\n\n                    setCoveoResultLinkAriaValue();\n                    $('.ecolab-slider > p:first-child.eco-remove-aft-pageload').remove();\n                    //}, 1000);\n                }\n\n\n                function setCoveoResultLinkAriaValue() {\n                    $('.coveo-result-list-container.coveo-list-layout-container .coveo-list-layout a').each(function () {\n                        if (!$(this).closest('.coveo-result-list-container').find('.slick-list').length)\n                            $(this).attr('tabindex', '0');\n                    });\n\n                }\n\n                function setCoveoFacetHeaderValue() {\n\n                    setCoveoGlobalSearchValue();\n\n                }\n\n                function setCoveoGlobalSearchValue() {\n\n                    $('header .CoveoSearchbox > div').removeAttr('aria-expanded').removeAttr('aria-owns').removeAttr(\"role\").removeAttr(\"aria-haspopup\");\n                    $('header .CoveoSearchbox div div input').attr('aria-label', 'search the sites');\n                    $('.magic-box-clear').attr('role', 'button');\n                }\n\n\n                function setAriaForCoveoFacetHeaderValue() {\n                    \n                    $('.coveo-facet-header-title').removeAttr('aria-label');\n\n                    $('.coveo-facet-column .CoveoFacet').find('.coveo-facet-header-title').each(function () {\n                        if ($(this).length == 1) {\n                            var headingText = $(this).text();\n                            $(this).text('');\n                            $(this).append('<div role=\"button\" tabindex=\"0\" aria-expanded=\"true\" aria-controls=\"' + headingText + '-filter\"><legend>' + headingText + '</legend></div>');\n                            $(this).closest('.coveo-facet-header').attr('id', headingText)\n                        }\n                    });\n\n                    $('.coveo-facet-column .CoveoFacet .coveo-facet-header .coveo-facet-header-title-section .coveo-facet-header-title').each(function () {\n                        $(this).attr('aria-expanded', 'false').attr('aria-controls', 'show-more').attr('id', 'show-more-' + $(this).closest('.CoveoFacet').attr('data-title'));\n                    });\n\n                }\n\n\n                function SetAriaForCoveoFacetCheckBox() {\n\n                    $('.coveo-facet-value-checkbox').each(function () {\n                        $(this).attr('role', 'checkbox').attr('aria-checked', \"false\").attr('aria-label', $(this).parent().find(\".coveo-facet-value-caption\").attr('title'));\n                        $(this).removeAttr('aria-pressed');\n                    });\n\n                    $('.coveo-selected  .coveo-facet-value-label .coveo-facet-value-label-wrapper .coveo-facet-value-checkbox').each(function () {\n                        $(this).attr('aria-checked', true);\n                    });\n                }\n\n\n                function setAriaForCoveoFacetFooterValue() {\n\n                    $('.coveo-facet-column').each(function () {\n                        $(this).attr('role', 'region').attr('aria-label', 'filters');\n                    });\n\n                    $('.coveo-facet-column .CoveoFacet .coveo-facet-footer').each(function () {\n                        $(this).attr('aria-expanded', 'false').attr('aria-controls', 'show-more').attr('id', 'show-more-' + $(this).closest('.CoveoFacet').attr('data-title'));\n                    });\n                }\n\n\n                function setCurrentFacetCountForContainerFromAtrribure(currentElement) {\n                    $(currentElement).closest('.CoveoFacet').attr('latest-count', getCurrentFacetCount(currentElement));\n                }\n\n                function getCurrentFacetCountForContainerFromAtrribure(currentElement) {\n                    return $(currentElement).closest('.CoveoFacet').attr('latest-count');\n                }\n\n                function getCurrentFacetCount(currentElement) {\n                    return $(currentElement).closest('.CoveoFacet').find('.coveo-facet-values').first().find('.coveo-facet-value.coveo-facet-selectable').not('.coveo-facet-search-button').length;\n\n                }\n\n                function setFacetSelectionInAttribute(selecteFacetName) {\n                    $('.coveo-facet-column').attr('selected-facet-name', selecteFacetName);\n                }\n\n                function ClearSeletecFacetFromAttribute() {\n                    $('.coveo-facet-column').removeAttr('selected-facet-name');\n                }\n\n                function getContainerNameForFocusInAttribute(currentElement) {\n                    return $(currentElement).closest('.CoveoFacet').attr('data-title');\n                    \n                }\n\n\n                function setFacetSelectedInsertedCount() {\n                    coveoSelectedInsertCount = coveoSelectedInsertCount + 1;\n                }\n\n                function removeFacetRemovalCheckBox() {\n\n                    $('div.coveo-facet-value-exclude').remove();\n                }\n\n                function runAfterCoveoComponentLoad() {\n\n                    adaChangesOnCoveoComponent();\n                }\n\n                setTimeout(function () {\n                    runAfterCoveoComponentLoad();\n                }, 3000);\n            },\n            _checkModalDialogFocus: function () {\n                $(document).on('keydown', function (e) {\n                    var target = e.target;\n                    var shiftPressed = e.shiftKey;\n\n                    if (e.keyCode == 9) {\n                        if ($(target).parents('[role=dialog]').length) {\n                            var element = shiftPressed ?\n                                $(target).closest('[role=dialog]')\n                                    .find('input:visible,select:visible,button:visible,textarea:visible,a:visible')\n                                    .first()\n                                :\n                                $(target).closest('[role=dialog]')\n                                    .find('input:visible,select:visible,button:visible,textarea:visible,a:visible')\n                                    .last();\n                            if ($(element).length) {\n                                if ($(target).is($(element))) {\n                                    return false;\n                                } else {\n                                    return true;\n                                }\n                            }\n                        }\n                    }\n                    return true;\n                });\n            },\n            _formFieldLoad: function () {\n                setTimeout(function () {\n                    $('.radioBtnList-radioLabel').after(\"<br>\");\n                    $('.chexbox-List').after(\"<br>\");\n                    $('.checkBoxList-Label').parent().css(\"font-weight\", \"normal\").css(\"font-size\", \"16px\");\n                    $('.checkBoxList-Label').parent().after(\"<br>\");\n                }, 1000);\n            },\n            _CarouselScreenReaderLoad: function () {\n                $('.carousel.slick-initialized.slick-slider .slick-list.draggable .slick-track').children().each(function () {\n                    if ($(this).hasClass('slick-cloned')) {\n                        $(this).parents('.slick-list.draggable').siblings('.sr-only').removeClass('hide');\n                    }\n                });\n            },\n            _ecolabCustomJS: function () {\n                var currentFocus = 0;\n                $(document).on('keyup', '#sdsSearchText', function (e) {\n\n                    if ($('#sdsSearchText').val() !== '') {\n                        _sdsTextClearIconShow();\n                        if ($('#sdsSearchText').val().length > 1) {\n                            var x = document.getElementById(this.id + \"el-custom-autocomplete-list\");\n                            if (x) x = x.getElementsByTagName(\"div\");\n                            $('#sdsSearchText').attr('lastKeyPress', e.keyCode);\n                            if (e.keyCode == 40 || e.which == 40) { // down arrow\n                                currentFocus++;\n                                addActive(x);\n                            } else if (e.keyCode == 38 || e.which == 38) { //up arrow\n                                currentFocus--;\n                                addActive(x);\n                            } else if (e.keyCode == 13 || e.which == 13) { //enter\n                                e.preventDefault();\n                                if (currentFocus > -1) {\n                                    if (x) x[currentFocus].click();\n                                }\n                                else {\n                                    closeAllLists();\n                                    $('#sdsSearchBtn').trigger('click');\n                                }\n                            }\n                            else if (e.keyCode == 27 || e.which == 27) {\n                                closeAllLists();\n                                $('#sdsSearchText').focus();\n                            }\n                            else if (e.keyCode == 1 || e.which == 1) {\n                                closeAllLists();\n                                $('#sdsSearchText').focus();\n                            }\n                            else {\n                                var triggerUrl = $(\"#sdsSearchText\").attr('autocompleteUrl');\n                                _sdsAutoComplete();\n                            }\n                        }\n                        else {\n                            closeAllLists();\n                        }\n                    }\n                    else {\n                        closeAllLists();\n                        _sdsTextClearIconHide();\n                    }\n                });\n\n                $(document).on('focusin', '#sdsSearchText', function () {\n                    $(this).attr(\"aria-hidden\", \"false\");\n                });\n\n\n                $(document).on('focusout', '#sdsSearchText', function () {\n                    $(this).attr(\"aria-hidden\", \"true\");\n                });\n\n                // To load loaderGif\n\n                $(document).on('click', 'input[type=submit]', function () {\n                    $(this).removeAttr(\"clicked\");\n                    $(this).addClass(\"showLoadergif\");\n                    \n                    setTimeout(() => {\n                        if ($(this).parents('form').first().find('.field-validation-error').length) {\n                            $(this).removeClass(\"showLoadergif\");\n                        }\n                        else {\n                            _setSuccessPageRole($(this).closest('form'));\n                            $(this).attr(\"clicked\", \"true\");\n                        }\n                    }, 100);\n\n                });\n\n\n                //for making coveoresult div clickable\n                $(document).on('click', '.coveo-list-layout.CoveoResult', function () {\n                    location.href = $(this).find('a').first().attr('href');\n                });\n\n                $(document).on('click', '.sdsTextClear svg', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    _sdsTextClearIcon();\n                });\n\n                //On keypress of SDS text clear\n                $(document).on('keypress', '.sdsTextClear svg', function (e) {\n                    if (e.keyCode === 13 || e.which === 13) {\n                        e.preventDefault();\n                        _sdsTextClearIcon();\n                    }\n                });\n\n                //Remove aria-hidden attribute from modal-popups\n                $('.modal.fade.score-modal').each(function () {\n                    $(this).removeAttr('aria-hidden');\n                });\n\n                //Add the role as button to carousel link as per ADA \n                $(\".ecolab-carousel-hero\").children('.score-call-to-action').each(function () {\n                    $(this).children('.score-button').attr('role', 'button');\n                });\n\n                //Making the Footer sub-headings from strong to h2 tag\n                $('.footer-link-lists .score-content-spot p').each(function () {\n                    if (jQuery(this).children('strong') != null) {\n                        $(this).children('strong').replaceWith('<h2>' + $(this).children('strong').html() + '</h2>');\n                        $(this).children('h2').addClass('footer-heading-h2');\n                    }\n                });\n\n                $('.footer-link-lists .be-related-link-container .be-label').attr({ 'role': 'heading', 'aria-level': '1' });\n\n\n                //To bring the focus on the youtube modal pop-up in Home page carousel\n                $(document).on('keyup', '.modal-content .modal-header .close', function (e) {\n                    if (e.key == 'Tab') {\n                        e.preventDefault();\n                        $(this).parent().next().find('.embed-responsive-item').focus();\n                    }\n                });\n\n                $('.pillar-bar .score-highlight').each(function () {\n                    $(this).attr('tabindex', '0')\n                })\n\n                function _ecolabFeatureModule($element) {\n                    if ($element.find('.container.score-page-layout-column1').length == 0 && $element.find('.container.score-page-layout-column2').length == 0) {\n                        if ($element.find('.ecolab-feature') != null && $element.find('.ecolab-feature').length > 1) {\n                            $element.find('.ecolab-feature').each(function (index) {\n                                $(this).prepend(\"<span class='sr-only'>\" + \"ArticleTile \" + (index + 1) + \" of \" + $element.find('.ecolab-feature').length + \"</span>\");\n                            });\n                        }\n                    }\n                }\n\n                // Coveo facet group toggle\n                $(document).on('click', '.coveo-facet-column .CoveoFacet .coveo-facet-header-title-section', function (e) {\n                    coveoFacetToogle(this);\n                });\n\n\n                ///ADA-223 tab user fix\n                $(document).on('keypress', '.coveo-facet-column .CoveoFacet .coveo-facet-header-title', function (e) {\n                    if (e.keyCode == 32 || e.which == 32 || e.keyCode === 13 || e.which === 13) {\n                        e.preventDefault();\n                        coveoFacetToogle(this);\n                    }\n                });\n\n                function coveoFacetToogle(elem) {\n                    if ($(elem).closest('.CoveoFacet').hasClass('coveo-facet-collapsed')) {\n                        $(elem).closest('.CoveoFacet').removeClass('coveo-facet-collapsed')\n                        $(elem).closest('.CoveoFacet').find('.coveo-facet-header-title').find('div[role=\"button\"]').attr('aria-expanded', 'true');\n                    } else {\n                        $(elem).closest('.CoveoFacet').addClass('coveo-facet-collapsed')\n                        $(elem).closest('.CoveoFacet').find('.coveo-facet-header-title').find('div[role=\"button\"]').attr('aria-expanded', 'false');\n                    }\n                }\n\n\n                //Adding article tile count as per ADA\n                $('.container.score-page-layout-column1').each(function () {\n                    _ecolabFeatureModule($(this));\n                });\n                //Adding article tile count as per ADA\n                $('.container.score-page-layout-column2').each(function () {\n                    _ecolabFeatureModule($(this));\n                });\n                //Correcting the Illogical tabbing of the search button in navbar\n                if ($(window).width() > 1349) {\n                    $('nav.score-megamenu').first().prependTo('header > div > div > .score-center:first');\n                }\n                else {\n                    $('.score-hamburger.navbar-toggle').first().insertAfter('a.navbar-brand');\n                    $('.ecolab-standalone-search').first().insertAfter('a.navbar-brand');\n                    $('.score-style-box.ecolab-secondary-nav').first().insertAfter('a.navbar-brand');\n                }\n                //Correcting Illogical tabbing for contact-us(email and call) by moving it to footer\n                if ($('.score-async-contact-us').length) {\n                    if ($('.score-async-contact-us').closest('.container').length) {\n                        var contactUsContainer = $('.score-async-contact-us').closest('.container');\n                        contactUsContainer.clone().insertBefore('footer .score-stripe.ecolab-footer__bottom-bar');\n                        if (contactUsContainer.find('.score-breadcrumb').length) {\n                            contactUsContainer.find('.score-async-contact-us').remove();\n                            $('footer .score-async-contact-us').closest('.container').find('.score-breadcrumb').closest('nav').remove();\n                        }\n                        else {\n                            contactUsContainer.remove();\n                        }\n                    }\n                    else {\n                        var contactUs = $('.score-async-contact-us');\n                        contactUs.clone().insertBefore('footer .score-stripe.ecolab-footer__bottom-bar');\n                        contactUs.remove();\n                    }\n                }\n\n                /*Sign In Modal*/\n\n                $('.signIn-list-item').attr('aria-expanded', 'false');\n                // Toggle login panel visibility on signIn-list-item click\n                $(document).on('click', '.signIn-list-item', function (event) {\n                    event.stopPropagation(); // Prevent event from bubbling up\n                    $(this).toggleClass(\"link-on-pop-up-visible\");\n                    if ($(this).hasClass('link-on-pop-up-visible')) {\n                        $(this).attr('aria-expanded', 'true');\n                        $(\"#mm-utility li a\").attr('tabindex', '-1');\n                    }\n                    else {\n                        $(this).attr('aria-expanded', 'false');\n                        $(\"#mm-utility li a\").removeAttr('tabindex');\n                    }\n                    $('.loginPanel-PopUp').toggleClass(\"show\");\n                    if (jQuery('.utility-nav-container')) {\n                        let elHeight = jQuery('.loginPanel-PopUp')[1].offsetHeight - jQuery('.utility-nav-container')[0].offsetHeight;\n                        jQuery('.utility-nav-container').css(\"margin-bottom\", elHeight);\n                    }\n                });\n                // Close login panel if click occurs outside of it\n                $(document).on('click', function (event) {\n                    if (window.matchMedia(\"(min-width: 1024px)\").matches) {\n                        if (!$(event.target).closest('.loginPanel-PopUp').length && !$(event.target).hasClass('signIn-list-item')) {\n                            $('.loginPanel-PopUp').removeClass(\"show\");\n                            $('.signIn-list-item').removeClass(\"link-on-pop-up-visible\").attr('aria-expanded', 'false');\n                        }\n                    }\n                });\n                // Handle clicks on back-button and utility-toggle within loginPanel-PopUp\n                $(document).on('click', '.loginPanel-PopUp .back-button, .utility-toggle', function (event) {\n                    event.stopPropagation(); // Prevent event from bubbling up\n                    $('.loginPanel-PopUp').removeClass(\"show\");\n                    $('.utility-nav-container').css(\"margin-bottom\", \"auto\");\n                    $('.signIn-list-item').removeClass(\"link-on-pop-up-visible\").attr('aria-expanded', 'false');\n                    $(\"#mm-utility li a\").removeAttr('tabindex');\n                });\n                //Check if we have more than one anchor inside two columns\n                const ctaDivs = document.querySelectorAll('.ecolab-feature__content .score-call-to-action');\n                if (ctaDivs) {\n                    ctaDivs.forEach(div => {\r\n                        const anchorTags = div.querySelectorAll('a');\r\n                        if (anchorTags.length > 1) {\r\n                            div.classList.add('multiple-CTA');\r\n                        }\r\n                    });\r\n                }\n\n                $(document).on('click', '.sds-pgli-item', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    var obj = {\n                        \"query\": $('#sdsSearchText').val(),\n                        \"countryCode\": GetSdsCountryValue(),\n                        \"languageCode\": GetSdsLanguageValue(),\n                        \"pageNumber\": $(this).text(),\n                        \"dataSourceID\": GetSdsDataSourceId(),\n                        \"siteLanguage\": GetSiteLanguage()\n                    };\n                    _callApi(obj, '.sds-Active');\n                });\n\n                $(document).on('click', '.sds-pager-previous-icon-svg, .sds-backArrow-item', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    var currentPage = parseInt($('.sds-Pagination-List').attr('currentPage'));\n                    currentPage = currentPage - 1;\n                    var obj = {\n                        \"query\": $('#sdsSearchText').val(),\n                        \"countryCode\": GetSdsCountryValue(),\n                        \"languageCode\": GetSdsLanguageValue(),\n                        \"pageNumber\": currentPage,\n                        \"dataSourceID\": GetSdsDataSourceId(),\n                        \"siteLanguage\": GetSiteLanguage()\n                    };\n                    _callApi(obj, '.sds-Active');\n                });\n\n                $(document).on('click', '.sds-pager-next-icon-svg, .sds-frontArrow-item', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    var currentPage = parseInt($('.sds-Pagination-List').attr('currentPage'));\n                    currentPage = currentPage + 1;\n                    var obj = {\n                        \"query\": $('#sdsSearchText').val(),\n                        \"countryCode\": GetSdsCountryValue(),\n                        \"languageCode\": GetSdsLanguageValue(),\n                        \"pageNumber\": currentPage,\n                        \"dataSourceID\": GetSdsDataSourceId(),\n                        \"siteLanguage\": GetSiteLanguage()\n                    };\n                    _callApi(obj, '.sds-Active');\n\n                });\n\n                $(document).on('click', '.sds-clear', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    $(\"#selectedCountry\")[0].selectedIndex = 0;\n                    $(\"#selectedlanguage\")[0].selectedIndex = 0;\n                    $('.sds-clear').css('display', 'none');\n\n                    var obj = _getFormData('passDataSource');\n\n                    if ($('#sdsSearchText').val() !== '') {\n                        _callApi(obj, '#selectedlanguage');\n                    }\n                    else {\n                        _callApi(obj, '#sdsSearchText');\n                    }\n                });\n\n                $(document).on('click', '#sdsSearchBtn', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    $('#sdsSearchText').attr('lastKeyPress', '13');\n                    if ($('#sdsSearchText').val() !== '' || ($('#selectedCountry').val() !== '' && typeof $('#selectedCountry').val() !== 'undefined') || ($('#selectedlanguage').val() !== '' && typeof $('#selectedlanguage').val() !== 'undefined')) {\n                        $(document.body).css({ 'cursor': 'wait' });\n                        var obj = _getFormData('passDataSource');\n                        _callApi(obj);\n                    }\n                    closeAllLists();\n                });\n\n                $(document).on('change', '#selectedCountry', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    var obj = _getFormData('passDataSource');\n                    _callApi(obj, '#selectedCountry');\n                    if ($('#selectedCountry').prop('selectedIndex') > 0) {\n                        $('#selectedCountry').attr('aria-selected', 'true');\n                    }\n                    else {\n                        $('#selectedCountry').attr('aria-selected', 'false');\n                    }\n                    _ClearAllFilterDisplayChange();\n                });\n\n                $(document).on('change', '#selectedlanguage', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    var obj = _getFormData('passDataSource');\n                    _callApi(obj, '#selectedlanguage');\n                    if ($('#selectedlanguage').prop('selectedIndex') > 0) {\n                        $('#selectedlanguage').attr('aria-selected', 'true');\n                    }\n                    else {\n                        $('#selectedlanguage').attr('aria-selected', 'false');\n                    }\n                    _ClearAllFilterDisplayChange();\n\n                });\n\n                function _setSuccessPageRole(elem) {\n                    console.log('_setSuccessPageRole triggerd');\n                    if ($(elem) && $(elem).parent()) {\n                        console.log('Element found');\n\n                        $(elem).parent().attr('role', 'status');\n                    }\n                }\n\n                function _sdsAutoCompleteData() {\n                    return {\n                        \"query\": $(\"#sdsSearchText\").val(),\n                        \"countryCode\": GetSdsCountryValue(),\n                        \"LanguageCode\": GetSdsLanguageValue()\n                    };\n\n                }\n\n                function _sdsTextClearIcon() {\n                    $('#sdsSearchText').val('');\n                    _sdsTextClearIconHide();\n                    _AddQueryStringtoUrl();\n                    $(\"#sdsSearchText\").focus();\n                    closeAllLists();\n                }\n\n                function _sdsTextClearIconHide() {\n                    $('.sdsTextClear svg').css('display', 'none');\n                    $('.sdsTextClear').attr('aria-hidden', 'true');\n\n                }\n\n                function _sdsTextClearIconShow() {\n                    $('.sdsTextClear svg').css('display', 'block');\n                    $('.sdsTextClear').attr('aria-hidden', 'false');\n                }\n\n                function _getFormData(changeElement) {\n                    var obj = {};\n                    if ($('#sdsSearchText').val() !== '' || ($('#selectedCountry').val() !== '' && typeof $('#selectedCountry').val() !== 'undefined') || ($('#selectedlanguage').val() !== '' && typeof $('#selectedlanguage').val() !== 'undefined')) {\n                        $(document.body).css({ 'cursor': 'wait' });\n                        obj = {\n                            \"query\": $('#sdsSearchText').val(),\n                            \"countryCode\": GetSdsCountryValue(),\n                            \"languageCode\": GetSdsLanguageValue(),\n                            \"dataSourceID\": GetSdsDataSourceId(),\n                            \"siteLanguage\": GetSiteLanguage()\n                        };\n                    }\n                    else if (changeElement !== '' && changeElement !== 'undefined') {\n                        $(document.body).css({ 'cursor': 'wait' });\n                        obj = {\n                            \"dataSourceID\": $('#sdsSearchText').attr('dataSourceId'),\n                            \"siteLanguage\": $('html').attr('lang')\n                        };\n                    }\n\n                    return obj\n                }\n\n                //// Custom Autocomplete Functionalities Start\n\n                function boldMatchingWord(sentence, matchingWord) {\n                    //var regEx = new RegExp(matchingWord, 'gi');\n                    return sentence.replace(matchingWord, '<strong>$&</strong>')\n                }\n\n                function AddInputDropDownElementsGeneric(inp, arr, elementIdToTriggerOnSelect) {\n\n                    var a, b, i, val = inp.value;\n                    closeAllLists();\n                    if (!val || val.length < 3) { return false; }\n                    currentFocus = -1;\n                    a = document.createElement(\"DIV\");\n                    a.setAttribute(\"id\", inp.id + \"el-custom-autocomplete-list\");\n                    a.setAttribute(\"class\", \"el-custom-autocomplete-items\");\n\n                    inp.parentNode.appendChild(a);\n                    var matchingRegexVal = new RegExp(val, 'gi');\n                    for (i = 0; i < arr.length; i++) {\n                        b = document.createElement(\"DIV\");\n                        b.innerHTML = boldMatchingWord(arr[i], matchingRegexVal);\n                        b.innerHTML += '<input type=\"hidden\" value=\"' + arr[i] + '\">';\n                        b.addEventListener(\"click\", function (e) {\n                            inp.value = this.getElementsByTagName(\"input\")[0].value;// added actual text to input\n                            closeAllLists();\n                            $(elementIdToTriggerOnSelect).trigger('click');\n                        });\n                        a.appendChild(b);\n                    }\n                }\n\n                function AddInputDropDownElements(inp, arr) {\n\n                    var a, b, i, val = inp.value;\n                    closeAllLists();\n                    if (!val || val.length < 3) { return false; }\n                    currentFocus = -1;\n                    a = document.createElement(\"DIV\");\n                    a.setAttribute(\"id\", inp.id + \"el-custom-autocomplete-list\");\n                    a.setAttribute(\"role\", \"listbox\");\n                    a.setAttribute(\"aria-labelledby\", \"sdsSearchText\");\n                    if ($('#sdsSearchText').attr('lastKeyPress') === '13') {\n                        a.setAttribute(\"class\", \"el-custom-autocomplete-items hide\");\n                    } else {\n                        a.setAttribute(\"class\", \"el-custom-autocomplete-items\");\n                    }\n\n                    inp.parentNode.appendChild(a);\n                    var matchingRegexVal = new RegExp(val, 'gi');\n                    for (i = 0; i < arr.length; i++) {\n                        b = document.createElement(\"DIV\");\n                        b.setAttribute('role', 'option');\n                        b.setAttribute('aria-label', arr[i]);\n                        b.setAttribute('id', i + '-' + arr[i]);\n                        b.innerHTML = boldMatchingWord(arr[i], matchingRegexVal);\n                        b.innerHTML += '<input type=\"hidden\" value=\"' + arr[i] + '\">';\n                        b.addEventListener(\"click\", function (e) {\n                            inp.value = this.getElementsByTagName(\"input\")[0].value;// added actual text to input\n                            closeAllLists();\n                            $('#sdsSearchBtn').trigger('click');\n                        });\n                        a.appendChild(b);\n                    }\n                    document.getElementById(\"sdsSearchText\").setAttribute('aria-expanded', true);\n                    document.getElementById(\"sds-autocomplete-results-count\").textContent = 'AutoComplete result count ' + arr.length;\n\n                }\n\n                function autocompleteLinkClickTrigger(e) {\n                    if (e.keyCode == 27 || e.which == 27) {\n                        closeAllLists();\n                        $('#sdsSearchText').focus();\n                    }\n                }\n\n                function addActive(x) {\n                    if (!x) return false;\n                    removeActive(x);\n                    if (currentFocus >= x.length) currentFocus = 0;\n                    if (currentFocus < 0) currentFocus = (x.length - 1);\n                    x[currentFocus].classList.add(\"el-custom-autocomplete-active\");\n                    document.getElementById(\"sdsSearchText\").setAttribute('aria-activedescendant', x[currentFocus].id);\n                    $('#sdsSearchText').attr(\"aria-hidden\", \"true\");\n                }\n                function removeActive(x) {\n                    for (var i = 0; i < x.length; i++) {\n                        x[i].classList.remove(\"el-custom-autocomplete-active\");\n                    }\n                }\n                function closeAllLists() {\n                    var x = document.getElementsByClassName(\"el-custom-autocomplete-items\");\n                    for (var i = 0; i < x.length; i++) {\n                        //if (elmnt != x[i] && elmnt != inp) {\n                        x[i].parentNode.removeChild(x[i]);\n                        //}\n                    }\n                    document.getElementById(\"sdsSearchText\").setAttribute('aria-expanded', false);\n                    document.getElementById(\"sds-autocomplete-results-count\").innerHTML = 'Autocomplete result count 0';\n                }\n\n                //// Custom Autocomplete Functionalities End\n\n                function _sdsAutoComplete() {\n                    var responseResult = [];\n                    $.ajax({\n                        url: $(\"#sdsSearchText\").attr('autocompleteUrl'),\n                        type: 'POST',\n                        data: {\n                            \"query\": $(\"#sdsSearchText\").val(),\n                            \"countryCode\": GetSdsCountryValue(),\n                            \"LanguageCode\": GetSdsLanguageValue()\n                        },\n                        success: function (data) {\n                            responseResult = data.productNames;\n                        },\n                        complete: function (data) {\n                            AddInputDropDownElements(document.getElementById('sdsSearchText'), responseResult)\n                        }\n                    });\n\n                }\n\n\n                function _ecolabCustomAutoComplete(elementId, triggerUrl, inputData, elemtIdToTriggerAfterSelect) {\n                    elementId = '#' + elementId;\n                    elemtIdToTriggerAfterSelect = '#' + elemtIdToTriggerAfterSelect;\n                    var responseResult = [];\n                    $.ajax({\n                        url: triggerUrl,\n                        type: 'POST',\n                        data: inputData,\n                        success: function (data) {\n                            responseResult = data.productNames;\n                        },\n                        complete: function (data) {\n                            AddInputDropDownElementsGeneric(document.getElementById(elementId), responseResult, elemtIdToTriggerAfterSelect)\n                        }\n                    });\n\n                }\n\n                function _callApi(obj, focusElement) {\n                    //console.log('calling api');\n                    $.ajax({\n                        url: $('#sdsSearchBtn').attr('actionUrl'),\n                        type: 'POST',\n                        data: obj,\n                        //dataType: 'json',\n                        success: function (resultData) {\n                            if (resultData.hasOwnProperty('apiCallFail')) {\n                                $('#sdsResultView').html('');\n                            }\n                            else {\n                                $('#sdsResultView').html(resultData);\n                                $('#sdsResultView').css('display', 'block');\n                                $('html, body').animate({\r\n                                    scrollTop: $('.sdsSearch-Section').parent().offset().top\r\n                                }, 'fast');\n                            }\n                        },\n                        complete: function (data) {\n                            $(document.body).css({ 'cursor': 'default' });\n                            _AddQueryStringtoUrl();\n                            if ($('#sds-resultnot-found').length) {\n                                $('#sds-queryText').text($('#sdsSearchText').val());\n                            }\n                            if (focusElement !== null && $(focusElement).length) {\n                                $(focusElement).focus();\n                            }\n                        }\n                    });\n                }\n\n                function _ClearAllFilterDisplayChange() {\n                    if ($('#selectedCountry').prop('selectedIndex') == 0 && $('#selectedlanguage').prop('selectedIndex') == 0) {\n                        $('.sds-clear').css('display', 'none');\n                    }\n                    else {\n                        $('.sds-clear').css('display', 'block');\n                    }\n                }\n\n                function _AddQueryStringtoUrl() {\n                    var sdsQueryString = '';\n                    if ($('#sdsSearchText').val() !== '') {\n                        sdsQueryString = '?query=' + $('#sdsSearchText').val();\n                    }\n                    if ($('#selectedCountry').val() !== '' && typeof $('#selectedCountry').val() !== 'undefined') {\n                        if ($('#selectedCountry').val() == '0') {\n                            sdsQueryString = sdsQueryString;\n                        }\n                        else if ($('#sdsSearchText').val() !== '') {\n                            sdsQueryString = sdsQueryString + '&countryCode=' + $('#selectedCountry').val();\n                        }\n                        else {\n                            sdsQueryString = sdsQueryString + '?countryCode=' + $('#selectedCountry').val();\n                        }\n                    }\n                    if ($('#selectedlanguage').val() !== '' && typeof $('#selectedlanguage').val() !== 'undefined') {\n                        if ($('#selectedlanguage').val() == '0') {\n                            sdsQueryString = sdsQueryString;\n                        }\n                        else if ($('#sdsSearchText').val() !== '') {\n                            sdsQueryString = sdsQueryString + '&languageCode=' + $('#selectedlanguage').val();\n                        }\n                        else {\n                            if ($('#selectedCountry').val() !== '' && $('#selectedCountry').val() !== '0' && typeof $('#selectedCountry').val() !== 'undefined') {\n                                sdsQueryString = sdsQueryString + '&languageCode=' + $('#selectedlanguage').val();\n                            }\n                            else {\n                                sdsQueryString = sdsQueryString + '?languageCode=' + $('#selectedlanguage').val();\n                            }\n                        }\n                    }\n                    var currentPage = parseInt($('.sds-Pagination-List').attr('currentPage'));\n                    if (currentPage > 1) {\n                        var currentPageSize = parseInt($('.sds-Pagination-List').attr('pageSize'));\n                        if (sdsQueryString.trim() === '') {\n                            sdsQueryString = sdsQueryString + '?first=' + ((currentPage * currentPageSize) - currentPageSize);\n                        }\n                        else {\n                            sdsQueryString = sdsQueryString + '&first=' + ((currentPage * currentPageSize) - currentPageSize);\n                        }\n                    }\n\n                    if (sdsQueryString === '?') {\n                        sdsQueryString = '';\n                    }\n                    var loc = location.href;\n                    if (loc.indexOf(\"?\") > 0) {\n                        loc = loc.substring(0, loc.indexOf(\"?\"))\n                    }\n                    if (history.pushState) {\n                        var newurl = loc + sdsQueryString;\n                        window.history.pushState({ path: newurl }, '', newurl);\n                    }\n                }\n\n                function GetSdsDataSourceId() {\n                    return $('#sdsSearchText').attr('dataSourceId');\n                }\n\n                function GetSiteLanguage() {\n                    return $('html').attr('lang');\n                }\n\n                function GetSdsCountryValue() {\n                    if ($('#selectedCountry').val() !== '' && $('#selectedCountry').val() !== '0' && typeof $('#selectedCountry').val() !== 'undefined') {\n                        return $('#selectedCountry').val();\n                    }\n                    return '';\n                }\n\n                function GetSdsLanguageValue() {\n\n                    if ($('#selectedlanguage').val() !== '' && $('#selectedlanguage').val() !== '0' && typeof $('#selectedlanguage').val() !== 'undefined') {\n                        return $('#selectedlanguage').val();\n                    }\n                    return '';\n                }\n\n                var marrketAndPubContainerId = '#marketAndPublicationArea';\n\n                $(document).on('change', '#sfdcSelectedIndustry', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    if ($('#sfdcSelectedIndustry').val() !== '' && typeof $('#sfdcSelectedIndustry').val() !== 'undefined') {\n                        ValidateSfdcIndustryField(true);\n                        var obj = GetInputModelForIndustry();\n                        var url = $(this).attr('actionUrl');\n                        _sfdcApiCall(url, 'POST', obj, marrketAndPubContainerId, '#sfdc-market-area');\n                    }\n\n                });\n\n                $(document).on('focusout', '#sfdcFirstName', function (e) {\n                    if (!GetUnsubscribeData()) {\n                        ValidateSfdcFirstNameField(true);\n                    }\n                });\n\n                $(document).on('focusout', '#sfdcLastName', function (e) {\n                    if (!GetUnsubscribeData()) {\n                        ValidateSfdcLastNameField(true);\n                    }\n                });\n\n                $(document).on('focusout', '#sfdcCompany', function (e) {\n                    if (!GetUnsubscribeData()) {\n                        ValidateSfdcCompanyField(true);\n                    }\n                });\n\n                $(document).on('focusout', '#sfdcSelectedTitle', function (e) {\n                    if (!GetUnsubscribeData()) {\n                        ValidateSfdcTitleField(true);\n                    }\n                });\n\n                $(document).on('change', '#sfdcSelectedTitle', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    if ($('#sfdcSelectedTitle').val() !== '' && typeof $('#sfdcSelectedTitle').val() !== 'undefined') {\n                        ValidateSfdcTitleField(true);\n                    }\n\n                });\n\n                $(document).on('focusout', '#sfdcSelectedCountry', function (e) {\n                    if (!GetUnsubscribeData()) {\n                        ValidateSfdcCountryField(true);\n                    }\n                });\n\n                $(document).on('change', '#sfdcSelectedCountry', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    if ($('#sfdcSelectedCountry').val() !== '' && typeof $('#sfdcSelectedCountry').val() !== 'undefined') {\n                        ValidateSfdcCountryField(true);\n                    }\n                });\n\n                $(document).on('focusout', '#sfdcSelectedLanguage', function (e) {\n                    if (!GetUnsubscribeData()) {\n                        ValidateSfdcLanguageField(true);\n                    }\n                });\n\n                $(document).on('change', '#sfdcSelectedLanguage', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    if ($('#sfdcSelectedLanguage').val() !== '' && typeof $('#sfdcSelectedLanguage').val() !== 'undefined') {\n                        ValidateSfdcLanguageField(true);\n                    }\n\n                });\n\n                $(document).on('focusout', '#sfdcSelectedIndustry', function (e) {\n                    if (!GetUnsubscribeData()) {\n                        ValidateSfdcIndustryField(true);\n                    }\n                });\n\n                $(document).on('click', '#unSubscribeFromAll', function (e) {\n                    if (GetUnsubscribeData()) {\n                        $('.sdfcRequired').removeClass('sfdc-required-field');\n                    }\n                    else {\n                        unSubscribeFromAll\n                        $('.sdfcRequired').addClass('sfdc-required-field');\n                    }\n                });\n\n                $(document).on('click', '#allAvailablePublications', function (e) {\n                    //e.preventDefault();\n                    //e.stopPropagation();\n                    var allPublcationValue = $('#allAvailablePublications').is(':checked');\n                    if (allPublcationValue) {\n                        $('.ecoSfdcPublicationCheckBox, .ecoSfdcPublicationTitleCheckBox').prop('checked', true);\n                    }\n                    else {\n                        $('.ecoSfdcPublicationCheckBox, .ecoSfdcPublicationTitleCheckBox').prop('checked', false);\n                    }\n\n                });\n\n                $(document).on('click', '.ecoSfdcPublicationTitleCheckBox', function (e) {\n                    //e.preventDefault();\n                    //e.stopPropagation();\n                    var allPublcationValue = $(this).is(':checked');\n                    var topicElement = $(this).parents('.eco-sftdTopic').attr('id')\n                    if (allPublcationValue) {\n                        $('#' + topicElement).find(\".ecoSfdcPublicationCheckBox\").prop('checked', true);\n                    }\n                    else {\n                        $('#' + topicElement).find(\".ecoSfdcPublicationCheckBox\").prop('checked', false);\n                    }\n\n                });\n\n                $(document).on('click', '.ecoSfdcPublicationCheckBox', function (e) {\n                    //e.preventDefault();\n                    //e.stopPropagation();\n                    var isCheckChecked = $(this).is(':checked');\n                    var topicElement = $(this).parents('.eco-sftdTopic').attr('id');\n                    if (isCheckChecked) {\n                        $('#' + topicElement).find(\".ecoSfdcPublicationTitleCheckBox\").prop('checked', true);\n                    }\n                    else {\n                        var anyCheckBoxchecked = $(this).parents('.eco-sftdTopic').find('.ecoSfdcPublicationCheckBox').is(':checked')\n                        if (!anyCheckBoxchecked) {\n                            $('#' + topicElement).find(\".ecoSfdcPublicationTitleCheckBox\").prop('checked', false);\n                        }\n                    }\n                });\n\n                $(document).on('click', '#ecoSdfcSubmitButton', function (e) {\n                    e.preventDefault();\n                    e.stopPropagation();\n\n\n                    var checkTokenAvailability = GetTokenValue();\n                    $('.eco-Sfdc-ReCaptcha-Fails').css('display', 'none');\n                    if (checkTokenAvailability === '' || checkTokenAvailability === 'undefined') {\n                        $(document.body).css({ 'cursor': 'wait' });\n                        DisablePreferenceCenterSubmitButton();\n                        setTimeout(\n                            function () {\n                                checkTokenAvailability = GetTokenValue();\n                                if (checkTokenAvailability === '' || checkTokenAvailability === 'undefined') {\n                                    setTimeout(\n                                        function () {\n                                            $(document.body).css({ 'cursor': 'default' });\n                                            SubmitPreferenceData();\n                                        }, 6000);\n                                }\n                                else {\n                                    $(document.body).css({ 'cursor': 'default' });\n                                    SubmitPreferenceData();\n                                }\n                            }, 6000);\n\n                    }\n                    else {\n                        SubmitPreferenceData();\n                    }\n\n\n\n                });\n\n                function SubmitPreferenceData() {\n                    var unSubscribeAll = GetUnsubscribeData();\n                    if (CheckFieldValidation()) {\n                        $('#ecoSdfcSubmitButton').attr(\"disabled\", true);\n                        var subScriptionModel = GetInputModelForSavePreference(unSubscribeAll);\n                        var url = $('#ecoSdfcSubmitButton').attr('actionUrl');\n\n                        _sfdcApiCall(url, 'POST', subScriptionModel, '#ecoSdfcSubmitButton', '#sfdc-market-area');\n\n                    }\n                    else {\n                        $('#ecoSdfcSubmitButton').css('background-color', '#007ac9');\n                    }\n                }\n\n                function EnablePreferenceCenterSubmitButton() {\n\n                    $('#ecoSdfcSubmitButton').attr(\"disabled\", false);\n                    $('#ecoSdfcSubmitButton').css('background-color', '#007ac9');\n                }\n\n                function DisablePreferenceCenterSubmitButton() {\n\n                    $('#ecoSdfcSubmitButton').attr(\"disabled\", true);\n                    $('#ecoSdfcSubmitButton').css('background-color', '#7f7c7c');\n                }\n\n                function GetUnsubscribeData() {\n                    return $('#unSubscribeFromAll').is(\":checked\");\n                }\n\n                function GetSelectedMarkets() {\n\n                    return $('.ecoSfdcMarketCheckBoxInput:checkbox:checked').map(function (i, e) { return e.value }).toArray();\n                }\n\n                function GetSelectedPublications() {\n\n                    return $('.ecoSfdcPublicationCheckBox:checkbox:checked').map(function (i, e) { return e.value }).toArray();\n                }\n\n                function _sfdcApiCall(actionUrl, methodType, obj, affectElement, updatedElament) {\n\n                    DisablePreferenceCenterSubmitButton();\n                    $(document.body).css({ 'cursor': 'wait' });\n                    $.ajax({\n                        url: actionUrl,\n                        type: methodType,\n                        data: obj,\n                        //dataType: 'json',\n                        success: function (resultData) {\n                            $(document.body).css({ 'cursor': 'default' });\n                            if (resultData.hasOwnProperty('recaptchaFail')) {\n                                $('.eco-Sfdc-ReCaptcha-Fails').css('display', 'block');\n                                $('#eco-sfdc-Captcha-Message').focus();\n\n                            }\n                            else if (resultData.hasOwnProperty('apiCallFail')) {\n                                $('.eco-sfdcFormContiner').css('display', 'none');\n                                $('#preferenceErrorPage').css('display', 'block');\n                                $('#errorMessage').css('display', 'block');\n                                $('#preferenceErrorPage').focus();\n\n                            }\n                            else {\n                                if (affectElement == marrketAndPubContainerId) {\n                                    $(marrketAndPubContainerId).html(resultData);\n                                }\n                                else {\n                                    if ('#ecoSdfcSubmitButton' == affectElement) {\n                                        $('#preferenceThankYouPage').css('display', 'block');\n                                        $('.eco-sfdcFormContiner').css('display', 'none');\n                                        $('.eco-Sfdc-ReCaptcha-Fails').attr('gStatus', resultData.gStatus);\n                                        $('#preferenceThankYouPage').focus();\n                                    }\n                                }\n                            }\n                        },\n                        complete: function (data) {\n                            $(document.body).css({ 'cursor': 'default' });\n\n                            if (affectElement !== null && $(affectElement).length) {\n                                $(affectElement).focus();\n                            }\n                            EnablePreferenceCenterSubmitButton();\n                        }\n                    });\n                }\n\n                function GetInputModelForSavePreference(unSubscribeAll) {\n                    var form = $('#preferenceCenterForm');\n                    var token = $('input[name=\"__RequestVerificationToken\"]', form).val();\n\n                    return {\n                        __RequestVerificationToken: token,\n                        nonHashedEmail: $('#sfdcEmailAddress').val(),\n                        firstName: $('#sfdcFirstName').val(),\n                        LastName: $('#sfdcLastName').val(),\n                        company: $('#sfdcCompany').val(),\n                        title: $('#sfdcSelectedTitle').val(),\n                        country: $('#sfdcSelectedCountry').val(),\n                        language: $('#sfdcSelectedLanguage').val(),\n                        industry: $('#sfdcSelectedIndustry').val(),\n                        marketList: GetSelectedMarkets(),\n                        pubList: GetSelectedPublications(),\n                        unsubscribeFromAll: unSubscribeAll,\n                        formToken: GetTokenValue()\n                    };\n                }\n\n                function GetInputModelForIndustry(unSubscribeAll) {\n\n                    return {\n                        'UserEmail': $('#sfdcEmailAddress').val(),\n                        'industryName': $('#sfdcSelectedIndustry').val(),\n                        'dataSourceId': $('#eco-sfdc-dataSource').val(),\n                        'Language': $('html').attr('lang'),\n                        'GetExitingValue': IsExistingIndustry()\n                    };\n                }\n\n                function IsExistingIndustry() {\n\n                    var status = false;\n                    var orginalIndustryForUser = $('#sfdcSelectedIndustry').attr('industryOnPageLoad');\n                    if ($('#sfdcSelectedIndustry').val() !== '' && typeof $('#sfdcSelectedIndustry').val() !== 'undefined' && orginalIndustryForUser !== '') {\n                        if (orginalIndustryForUser.length > 0 && orginalIndustryForUser === $('#sfdcSelectedIndustry').val()) {\n                            return true;\n                        }\n                    }\n\n                    return status;\n                }\n\n                function GetTokenValue() {\n\n                    var tokens = $('.recaptchV3Token').map(function (i, e) { return e.value }).toArray();\n                    if (tokens.length > 0) {\n                        if (tokens[0] !== '' && tokens[0] !== 'undefined') {\n                            return tokens[0];\n                        }\n                    }\n                    return \"\";\n                }\n\n                function IsPubNeedTobeAppend() {\n\n                    var status = false;\n                    var orginalIndustryForUser = $('#sfdcSelectedIndustry').attr('industryOnPageLoad');\n                    if ($('#sfdcSelectedIndustry').val() !== '' && typeof $('#sfdcSelectedIndustry').val() !== 'undefined' && orginalIndustryForUser !== '') {\n                        if (orginalIndustryForUser.length > 0 && orginalIndustryForUser !== $('#sfdcSelectedIndustry').val()) {\n                            return true;\n                        }\n                    }\n\n                    return status;\n                }\n\n                function CheckFieldValidation() {\n\n                    var status = true;\n                    var focusonMarketElement = '';\n                    status = ValidateSfdcEmailField(status);\n                    if (!GetUnsubscribeData()) {\n                        status = ValidateSfdcFirstNameField(status);\n                        if (focusonMarketElement == '' && !status) {\n                            focusonMarketElement = '#sfdcFirstName';\n                            notFocusElement = true;\n                        }\n                        status = ValidateSfdcLastNameField(status);\n                        if (focusonMarketElement == '' && !status) {\n                            focusonMarketElement = '#sfdcLastName';\n                            notFocusElement = true;\n                        }\n                        status = ValidateSfdcCompanyField(status);\n                        if (focusonMarketElement == '' && !status) {\n                            focusonMarketElement = '#sfdcCompany';\n                            notFocusElement = true;\n                        }\n                        status = ValidateSfdcTitleField(status);\n                        if (focusonMarketElement == '' && !status) {\n                            focusonMarketElement = '#sfdcSelectedTitle';\n                            notFocusElement = true;\n                        }\n                        status = ValidateSfdcCountryField(status);\n                        if (focusonMarketElement == '' && !status) {\n                            focusonMarketElement = '#sfdcSelectedCountry';\n                            notFocusElement = true;\n                        }\n                        status = ValidateSfdcLanguageField(status);\n                        if (focusonMarketElement == '' && !status) {\n                            focusonMarketElement = '#sfdcSelectedLanguage';\n                            notFocusElement = true;\n                        }\n                        status = ValidateSfdcIndustryField(status);\n                        if (focusonMarketElement == '' && !status) {\n                            focusonMarketElement = '#sfdcSelectedIndustry';\n                            notFocusElement = true;\n                        }\n\n                        status = ValidateSfdcMarketField(status);\n                        if (focusonMarketElement == '' && !status) {\n                            notFocusElement = true;\n                            focusonMarketElement = '#' + $('#marketBySelectedIndustry input.ecoSfdcCheckBoxInput:checkbox:first').attr('id');\n                        }\n                        if (focusonMarketElement != '') {\n                            $(focusonMarketElement).focus();\n                        }\n                    }\n                    return status;\n                }\n\n                function ValidateSfdcEmailField(sfdcVlidationstatus) {\n\n                    if ($('#sfdcEmailAddress').val() === '') {\n\n                        $('#sfdcEmailAddress').css('border', '1px solid red');\n                        $('#sfdcEmailError').css('display', 'block');\n                        sfdcVlidationstatus = false;\n                    }\n                    else {\n                        $('#sfdcEmailAddress').css('border', '1px solid #ccc');\n                        $('#sfdcEmailError').css('display', 'none');\n                    }\n\n                    return sfdcVlidationstatus;\n                }\n\n                function ValidateSfdcFirstNameField(sfdcVlidationstatus) {\n\n                    if ($('#sfdcFirstName').val() === '') {\n                        $('#sfdcFirstName').css('border', '1px solid red');\n                        $('#sfdcFirstNameError').css('display', 'block');\n                        sfdcVlidationstatus = false;\n                    }\n                    else {\n                        $('#sfdcFirstName').css('border', '1px solid #ccc');\n                        $('#sfdcFirstNameError').css('display', 'none');\n                    }\n\n                    return sfdcVlidationstatus;\n                }\n\n                function ValidateSfdcLastNameField(sfdcVlidationstatus) {\n\n                    if ($('#sfdcLastName').val() === '') {\n                        $('#sfdcLastName').css('border', '1px solid red');\n                        $('#sfdcLastNameError').css('display', 'block');\n                        sfdcVlidationstatus = false;\n                    }\n                    else {\n                        $('#sfdcLastName').css('border', '1px solid #ccc');\n                        $('#sfdcLastNameError').css('display', 'none');\n\n                    }\n\n                    return sfdcVlidationstatus;\n                }\n\n                function ValidateSfdcCompanyField(sfdcVlidationstatus) {\n\n                    if ($('#sfdcCompany').val() === '') {\n                        $('#sfdcCompany').css('border', '1px solid red');\n                        $('#sfdcCompanyError').css('display', 'block');\n                        sfdcVlidationstatus = false;\n                    }\n                    else {\n                        $('#sfdcCompany').css('border', '1px solid #ccc');\n                        $('#sfdcCompanyError').css('display', 'none');\n                    }\n\n                    return sfdcVlidationstatus;\n                }\n\n                function ValidateSfdcTitleField(sfdcVlidationstatus) {\n\n                    if ($('#sfdcSelectedTitle').val() !== '' && typeof $('#sfdcSelectedTitle').val() !== 'undefined') {\n                        $('#sfdcSelectedTitle').css('border', '1px solid #ccc');\n                        $('#sfdcTitleError').css('display', 'none');\n                    }\n                    else {\n                        $('#sfdcSelectedTitle').css('border', '1px solid red');\n                        $('#sfdcTitleError').css('display', 'block');\n                        sfdcVlidationstatus = false;\n                    }\n\n                    return sfdcVlidationstatus;\n                }\n\n                function ValidateSfdcCountryField(sfdcVlidationstatus) {\n\n                    if ($('#sfdcSelectedCountry').val() !== '' && typeof $('#sfdcSelectedCountry').val() !== 'undefined') {\n                        $('#sfdcSelectedCountry').css('border', '1px solid #ccc');\n                        $('#sfdcCountryError').css('display', 'none');\n\n                    }\n                    else {\n                        $('#sfdcSelectedCountry').css('border', '1px solid red');\n                        $('#sfdcCountryError').css('display', 'block');\n                        sfdcVlidationstatus = false;\n                    }\n\n                    return sfdcVlidationstatus;\n                }\n\n                function ValidateSfdcLanguageField(sfdcVlidationstatus) {\n\n                    if ($('#sfdcSelectedLanguage').val() !== '' && typeof $('#sfdcSelectedLanguage').val() !== 'undefined') {\n                        $('#sfdcSelectedLanguage').css('border', '1px solid #ccc');\n                        $('#sfdcLanguageError').css('display', 'none');\n\n                    }\n                    else {\n                        $('#sfdcSelectedLanguage').css('border', '1px solid red');\n                        $('#sfdcLanguageError').css('display', 'block');\n                        sfdcVlidationstatus = false;\n                    }\n\n                    return sfdcVlidationstatus;\n                }\n\n                function ValidateSfdcIndustryField(sfdcVlidationstatus) {\n\n                    if ($('#sfdcSelectedIndustry').val() !== '' && typeof $('#sfdcSelectedIndustry').val() !== 'undefined') {\n                        $('#sfdcSelectedIndustry').css('border', '1px solid #ccc');\n                        $('#sfdcIndustryError').css('display', 'none');\n                    }\n                    else {\n                        $('#sfdcSelectedIndustry').css('border', '1px solid red');\n                        $('#sfdcIndustryError').css('display', 'block');\n                        sfdcVlidationstatus = false;\n                    }\n\n                    return sfdcVlidationstatus;\n                }\n\n                function ValidateSfdcMarketField(sfdcVlidationstatus) {\n\n                    var marketData = GetSelectedMarkets();\n\n                    if (marketData.length === 0) {\n\n                        $('#sfdcMarketError').css('display', 'block');\n                        sfdcVlidationstatus = false;\n                    }\n                    else {\n                        $('#sfdcMarketError').css('display', 'none');\n                    }\n\n                    return sfdcVlidationstatus;\n\n                }\n\n                //Check if OneTrustCookie is enabled in setting then show and hide the button\n                if ($('script#onetrustscript').length !== 1) $(\"#ot-sdk-btn\").hide();\n\n                //Toggle between utility nav & hamburger nav\n                $(document).on('click', '.score-hamburger.navbar-toggle', function () {\n                    $('.utility-toggle').addClass('collapsed').attr(\"aria-expanded\", \"false\");;\n                    $('.utility-nav-container').removeClass('in').attr(\"aria-expanded\", \"false\");;\n                });\n\n                $(document).on('click', '.utility-toggle', function () {\n                    $('.score-hamburger.navbar-toggle').addClass('collapsed').attr(\"aria-expanded\", \"false\");;\n                    $('.navbar-collapse').removeClass('in').attr(\"aria-expanded\", \"false\");;\n                });\n\n                //Add role=button to the magicbox clear \n                $(document).on('keyup', '.CoveoOmnibox.coveo-query-syntax-disabled.magic-box', function () {\r\n                    if ($('.magic-box-input .magic-box-highlight-container').children().find('span').attr('data-value') != '') {\r\n                        $('.magic-box-clear.coveo-accessible-button').attr('role', 'button');\r\n                    }\r\n                });\n\n                //screen reader access for links\n                $(document).on('keyup', '.score-list-group .score-list-group-item .score-button.ecolab-button--numbers', function (e) {\n                    if (e.keyCode == 32 || e.which == 32 || e.keyCode === 13 || e.which === 13) { //space or enter\n                        e.preventDefault();\n                        location.href = $(this).attr('href');\n                    }\n                });\n            },\n            _ecolabLoginPopupCustomJS: function () {\n                // Restricted page modal start\n                if ($('.modal-column').has('.modal-image').length > 0) {\n                    $(\"#medicalModal\").addClass(\"modal-withimage\").removeClass(\"modal-noimage\");\n                    setTimeout(function () {\n                        if ($(window).width() > 991 && $('#medicalModal .modal-title').length) {\n                            let titleHeight = $('#medicalModal .modal-title')[0].offsetHeight;\n                            $('#medicalModal .modal-image img').css(\"margin-top\", titleHeight);\n                        }\n                    }, 500);\n                }\n                else {\n                    $(\"#medicalModal\").addClass(\"modal-noimage\").removeClass(\"modal-withimage\");\n                }\n                if (!sessionStorage[fetchCookieName()]) {\n                    let hrefLink = $(\"#medicalModal .no-btn a\").attr(\"href\");\n                    if (hrefLink == null || hrefLink == '' || hrefLink == undefined) hrefLink = '/';\n                    $(\"#medicalModal .modal-header .close\").attr(\"href\", hrefLink);\n                    $('#medicalModal').modal('show');\n                    showFocus('#medicalModal','medicalClose');\n                }\n                setTimeout(function () {\n                    if ($('#medicalModal').hasClass('in')) {\n                        $('html').addClass('medModal');\n                        $(\"#medicalModal a\").attr('tabindex', '1');\n                    }\n                }, 300);\n\n                $(document).on('click', '#medicalModal .yes-btn', function () {\n                    $('html').removeClass('medModal');\n                    $('#medicalModal').modal('hide');\n                    otCloseFocus();\n                    if (fetchCookieName() != \"undefined\" && fetchCookieName() != \"\" && fetchCookieName() != null) {\n                        sessionStorage.setItem(fetchCookieName(), true);\n                    }\n                    if ($('#progressiveProfileDataCollectionModal').length > -1 && getCookie('ProgressiveProfileTempDisablePopup') != 'true') {\n                        showProgressiveProfilePopUp();\n                    }\n                });\n\n                function fetchCookieName() {\n                    let sessionCookieName = $('#medicalModal').attr('data-cookie');\n                    return sessionCookieName;\n                }\n                // Restricted page modal end\n\n                var localStorageKeyName = \"ProgressiveProfileDisable\";\n                var localStorageValue = \"true\";\n                if ($('#progressiveProfileDataCollectionModal').length > -1 && getCookie('ProgressiveProfileTempDisablePopup') != 'true' && $('#medicalModal').length < 1) {\n                    showProgressiveProfilePopUp();\n                }\n\n                $(document).on('click', '.notNow-button', function () {\n                    setCookie('ProgressiveProfileTempDisablePopup', 'true', '30');\n                    otCloseFocus();\n                });\n\n                $(document).on('click', '#registrationModalCloseButton', function () {\n                    setSessionStorage(localStorageKeyName, localStorageValue);\n                    setLocalStorage(localStorageKeyName, localStorageValue);\n                    otCloseFocus();\n                });\n\n                function setSessionStorage(keyName, value) {\n                    sessionStorage.setItem(keyName, value);\n                }\n\n                function getSessionStorage(keyName) {\n                    return sessionStorage.getItem(keyName)\n                }\n\n                function setLocalStorage(keyName, value) {\n                    localStorage.setItem(keyName, value);\n                }\n\n                function getLocalStorage(keyName) {\n                    return localStorage.getItem(keyName)\n                }\n\n                function showProgressiveProfilePopUp() {\n                    setTimeout(() => {\n\n                        if (getLocalStorage(localStorageKeyName) !== localStorageValue) {\n                            $('#progressiveProfileDataCollectionModal').modal('show');\n                            showFocus('#progressiveProfileDataCollectionModal','registrationModalCloseButton');\n                        }\n                    }, getProgressiveProfilePopUpTimeOut());\n                }\n\n                function showFocus(modalId,closeButtonId) {\n                    setTimeout(function () {\n                        if ($(modalId).hasClass('in')) {\n                            const closeButton = document.getElementById(closeButtonId);\n                            closeButton.focus();\n\n                            if (document.activeElement !== closeButton) {\n                                closeButton.focus();\n\n                            }\n                        }\n                    }, 500);\n                }\n\n                function otCloseFocus() {\n                    var otButtonClose = document.querySelector('#onetrust-close-btn-container .ot-close-icon');\n                    var otDisplay = document.querySelector('.onetrust-pc-dark-filter[style]');\n                    var skipToContentBtn = document.querySelector('.screen-reader-text[href=\"#eco-main-Content\"]');\n                    if (otButtonClose && !otDisplay) {\n                        otButtonClose.focus();\n                    }\n                    else {\n                        skipToContentBtn.focus();\n                    }\n                    \n                }\n\n                function getProgressiveProfilePopUpTimeOut() {\n                    var ProgressiveProfileTimeoutToCall = $('#progressiveProfileDataCollectionModal').attr('data-timeout-to-call');\n                    if (ProgressiveProfileTimeoutToCall != null && ProgressiveProfileTimeoutToCall != 'undefined') {\n                        return ProgressiveProfileTimeoutToCall;\n                    }\n                }\n\n                function setCookie(name, value, days) {\n                    var expires = \"\";\n                    if (days) {\n                        var date = new Date();\n                        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\n                        expires = \"; expires=\" + date.toUTCString();\n                    }\n                    document.cookie = name + \"=\" + (value || \"\") + expires + \"; path=/\";\n                }\n                function getCookie(name) {\n                    var nameEQ = name + \"=\";\n                    var ca = document.cookie.split(';');\n                    for (var i = 0; i < ca.length; i++) {\n                        var c = ca[i];\n                        while (c.charAt(0) == ' ') c = c.substring(1, c.length);\n                        if (c.indexOf(nameEQ) == 0) {\n                            return c.substring(nameEQ.length, c.length);\n                        }\n                    }\n                    return null;\n                }\n                function eraseCookie(name) {\n                    document.cookie = name + '=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';\n                }\n\n\n                window.onbeforeunload = function (e) {\n                    window.onunload = function () {\n                        localStorage.removeItem(\"ProgressiveProfileDisable\");\n                    }\n\n                    return undefined;\n                };\n\n                window.onload = function () {\n                    if (sessionStorage.getItem(localStorageKeyName) === localStorageValue)\n                        localStorage.setItem(localStorageKeyName, localStorageValue);\n                    else if (localStorage.getItem(localStorageKeyName) === localStorageValue)\n                        sessionStorage.setItem(localStorageKeyName, localStorageValue);\n                };\n            }\n        };\n\n\n        return Accessibility;\n    });\n\n\n",
    "define('Components/StandaloneSearch',[\"coveo\"], function (Coveo) {\r\n\r\n    function StandaloneSearch(scope, searchPageUri, searchEndpointOptions) {\r\n        if (scope.dataset.uxState === \"loaded\") {\r\n            return;\r\n        }\r\n\r\n        if (document.querySelector('.ecolab-main-search.ecolab-main-search--site-search') == null) {\r\n            //TODO implement singleton pattern\r\n            //if (!Coveo.SearchEndpoint.endpoints[\"default\"]) {\r\n            //    Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint(searchEndpointOptions);\r\n            //}\r\n\r\n            function afterComponentsInitializationHandler(e) {\r\n                var input = scope.querySelector('.CoveoSearchbox input');\r\n\r\n                if ('placeholder' in input) {\r\n                    if (input.placeholder === \"\") {\r\n                        input.placeholder = \"Search the site\";\r\n                    }\r\n                }\r\n            };\r\n\r\n            scope.addEventListener('afterComponentsInitialization', afterComponentsInitializationHandler);\r\n\r\n            //console.log('Standalonesearch - Coveo -' + Coveo)\r\n            //console.log('Standalonesearch - Coveo.SearchEndpoint - ' + Coveo.SearchEndpoint)\r\n            //console.log('Standalonesearch - Coveo.SearchEndpoint.endpoints -  ' + Coveo.SearchEndpoint.endpoints)\r\n            //console.log('Standalonesearch - Coveo.SearchEndpoint.endpoints[\"default\"] ' + Coveo.SearchEndpoint.endpoints[\"default\"])\r\n            //console.log('stanalonesearch -  Coveo.SearchEndpoint.endpoints.default.options.restUri  ' + Coveo.SearchEndpoint.endpoints.default.options.restUri);\r\n            Coveo.initSearchbox(scope, searchPageUri);\r\n        }\r\n    }\r\n\r\n    return function initStandloneSearch(args) {\r\n        return new StandaloneSearch(args.scope, args.SearchPageUri, args.SearchEndpointOptions);\r\n    };\r\n});\n",
    "(function (global) {\r\n    define('Components/IndustrySection',[\r\n        \"jquery\", \"underscore\"\r\n    ], function ($, _) {\r\n\r\n        function IndustrySection(args) {\r\n            this.activeTab = '.tab-pane.active'\r\n            this.topLinks = $('.ecolab-nav-tabs__industry a', args.scope);\r\n            this.industryTab = $('.nav-tabs-wrapper-outer', args.scope);\r\n            this.secondaryTab = $('.tab-content-wrapper-outer', args.scope);\r\n            this.secondaryBack = $('.header-breadcrumb__secondary .btn', args.scope);\r\n            this.marketLinks = $(\"a.ecolab-second-level-link\", args.scope);\r\n            this.backToMarket = $('.back-to-market', args.scope);\r\n            this.resultsTemplate = $(\"#subsection-template\", args.scope).html();\r\n            this.applicationsUrl = args.applicationsUrl;\r\n            if (!args.isExperienceEditor) {\r\n                this.init();\r\n            }\r\n        }\r\n\r\n        IndustrySection.prototype.init = function () {\r\n            this.topLinks.on('click', function () {\r\n                $(this.secondaryTab).show();\r\n                $(this.industryTab).hide();\r\n            }.bind(this));\r\n\r\n            this.secondaryBack.on('click', function (e) {\r\n                $(this.industryTab).show();\r\n                $(this.secondaryTab).hide();\r\n                this.resetPanels();\r\n            }.bind(this));\r\n\r\n            this.marketLinks.on(\"click\", function (e) {\r\n                e.preventDefault();\r\n                var link = e.currentTarget;\r\n                this.getSubSection(link.dataset.industryid, link.dataset.marketid, link.dataset.marketitemid, link.dataset.industrytname, link.dataset.markettname, $(link));\r\n            }.bind(this));\r\n\r\n            this.backToMarket.on('click', function () {\r\n                $(this.secondaryTab).show();\r\n\r\n                this.resetPanels();\r\n            }.bind(this));\r\n        }\r\n\r\n        IndustrySection.prototype.resetPanels = function () {\r\n            $('.tab-pane.active .ecolab-second-level-menu').show();\r\n\r\n            var tabPanel = $(this.activeTab);\r\n            $('.ecolab-nav-tabs__industry .active').removeClass('active');\r\n            $('.ecolab-second-level-menu .active').removeClass('active');\r\n            $('.subsection-results', tabPanel).hide();\r\n\r\n            var breadcrumb = $('.header-breadcrumb', tabPanel);\r\n            $('.header-breadcrumb__title h2', breadcrumb).removeClass('hidden');\r\n            $('.header-breadcrumb__title .btn', breadcrumb).addClass('hidden');\r\n            $('.solution', breadcrumb).addClass('hidden');\r\n        }\r\n\r\n        IndustrySection.prototype.getSubSection = function (industryId, marketId, marketitemid, industrytname, markettname, selectedLink) {\r\n            if (this.isExpEditor) { return; }\r\n\r\n            $.ajax({\r\n                url: this.applicationsUrl,\r\n                type: \"POST\",\r\n                data: { industryId: industryId, marketId: marketId, marketitemid: marketitemid, industrytname: industrytname, markettname: markettname },\r\n                traditional: true,\r\n                dataType: \"json\"\r\n            })\r\n                .done(function (response) {\r\n                    var tabPanel = $(this.activeTab);\r\n                    var elSubsectionResults = tabPanel.find(\".subsection-results\");\r\n                    var marketLinks = selectedLink.closest(\".ecolab-second-level-menu\").find(\"a\");\r\n                    this.renderTemplate(elSubsectionResults, this.resultsTemplate, { items: response });\r\n                    elSubsectionResults.show();\r\n                    marketLinks.removeClass(\"active\");\r\n                    marketLinks.attr('aria-expand', 'false');\r\n                    marketLinks.attr('aria-expanded', 'false');\r\n                    selectedLink.addClass(\"active\");\r\n                    selectedLink.attr('aria-expand', 'true');\r\n                    selectedLink.attr('aria-expanded', 'true');\r\n\r\n                    $('.ecolab-second-level-menu', tabPanel).hide();\r\n\r\n                    var breadcrumb = $('.header-breadcrumb', tabPanel);\r\n                    $('.hidden', breadcrumb).removeClass('hidden');\r\n                    $('.header-breadcrumb__title h2', breadcrumb).addClass('hidden');\r\n                    $('.header-breadcrumb__title .btn', breadcrumb).text(selectedLink.text()).removeClass('hidden');\r\n                }.bind(this))\r\n                .fail(console.warn);\r\n        }\r\n\r\n        IndustrySection.prototype.renderTemplate = function ($target, $template, data) {\r\n            var tmpl = _.template($template);\r\n            $target.html(tmpl(data));\r\n        }\r\n\r\n        return function init(args) {\r\n            return new IndustrySection(args);\r\n        };\r\n    });\r\n})(this);\n",
    "define('CoveoHelper',[], function () {\r\n    var language, country, isCms = false, syssourcePrefix = 'EcolabDotCom';\r\n\r\n    parseHostname(window.location.hostname);\r\n\r\n    function parseHostname(hostname) {\r\n\r\n\r\n        if ('www.ecolab.com.cn' == hostname || 'itportal.ecolab.com.cn' == hostname) {\r\n            isCms = false;\r\n            language = 'zh';\r\n            country = 'cn';\r\n            return;\r\n        }\r\n        else if (hostname.includes('cds-na') || hostname.includes('cds-eu') || hostname.includes('cds-as')) {\r\n            isCms = false;\r\n            language = 'en';\r\n            country = 'us';\r\n            return;\r\n        }\r\n        else {\r\n            var pattern = /(cms|CMS)?\\.?(?:([A-Za-z]{2})-([A-Za-z]{2})\\.)?(?:ecolab\\.com|sitecoreext93)$/, found = null;\r\n\r\n            found = hostname.toLowerCase().match(pattern);\r\n\r\n            if (found === null) return;\r\n\r\n            isCms = (undefined === found[1]) ? false : true;\r\n            language = (undefined === found[2]) ? 'en' : found[2];\r\n            country = (undefined === found[3]) ? 'us' : found[3];\r\n\r\n        }\r\n\r\n    }\r\n\r\n    function getCookie(cname) {\r\n        let name = cname + \"=\";\r\n        let decodedCookie = decodeURIComponent(document.cookie);\r\n        let ca = decodedCookie.split(';');\r\n        for (let i = 0; i < ca.length; i++) {\r\n            let c = ca[i];\r\n            while (c.charAt(0) == ' ') {\r\n                c = c.substring(1);\r\n            }\r\n            if (c.indexOf(name) == 0) {\r\n                return c.substring(name.length, c.length);\r\n            }\r\n        }\r\n        return \"\";\r\n    }\r\n\r\n    var CoveoHelper = {};\r\n\r\n    CoveoHelper.verifyCookieConsent = function () {\r\n\r\n        var optonCookieVlaue = getCookie(\"OptanonConsent\");\r\n\r\n        //console.log('Cookie value = ' + optonCookieVlaue);\r\n        //console.log('optonValue value = ' + OptanonActiveGroups);\r\n\r\n        if (optonCookieVlaue.indexOf(\"C0002:1\") >= 0) {\r\n            //console.log('Coveo enabled in slider');\r\n            return false;\r\n        }\r\n        else {\r\n\r\n            //console.log('Coveo disabled in slider');\r\n            return true;\r\n        }\r\n    }\r\n\r\n    CoveoHelper.CoveoFixForADA = function () {\r\n\r\n\r\n\r\n\r\n        TriggeFixesForADA(SetFocusOnCoveodFacet, 600);\r\n        TriggeFixesForADA(SetAriaAttribiteForCoveoFacet);\r\n    }\r\n\r\n    function TriggeFixesForADA(functionNameToTrigger, timeoutInterval = 800) {\r\n        setTimeout(function () {\r\n            functionNameToTrigger();\r\n            //MutaionEvent();\r\n        }, timeoutInterval);\r\n    }\r\n\r\n\r\n    function SetFocusOnCoveodFacet() {\r\n        RemoveCoveoExcluedCheckBox();\r\n        SetFocusOnFacet();\r\n    }\r\n\r\n    function MutaionEvent() {\r\n        const mutationObserverForCoveoFacets = new MutationObserver(function (mutations) {\r\n            console.log('trrrigggerees');\r\n\r\n            mutations.forEach(function (mutation) {\r\n                for (var i = 0; i < mutation.addedNodes.length; i++) {\r\n                    SetADSForCoveoFacetHeader();\r\n                    SetADSForCoveoFacetCheckBox();\r\n                    SetADSForCoveoFacetFooter()\r\n                }\r\n            });\r\n\r\n        });\r\n\r\n        const coveoFacetElemnt = document.querySelector(\".coveo-facet-column\");\r\n\r\n        mutationObserverForCoveoFacets.observe(coveoFacetElemnt, { attributes: false, childList: true, subtree: true })\r\n    }\r\n\r\n\r\n\r\n    function SetAriaAttribiteForCoveoFacet() {\r\n        //console.log('C Coveo CheckBox trigger');\r\n\r\n        SetADSForCoveoResultSorting();\r\n        SetADSForCoveoFacetHeader();\r\n        SetADSForCoveoFacetFooter();\r\n        SetAriaAttribiteForCoveoPagination();\r\n        SetAriaAttribiteForCoveoResutList();\r\n        RemoveCoveoExcluedCheckBox();\r\n        SetADSForCoveoFacetCheckBox();\r\n\r\n\r\n    }\r\n\r\n\r\n    function RemoveCoveoExcluedCheckBox() {\r\n        document.querySelectorAll('div.coveo-facet-value-exclude').forEach(el => el.remove());\r\n    }\r\n\r\n\r\n    function SetADSForCoveoFacetCheckBox() {\r\n\r\n        document.querySelectorAll('.coveo-facet-value-checkbox').forEach(elem => {\r\n            elem.setAttribute('role', 'checkbox');\r\n            elem.removeAttribute('aria-pressed');\r\n            elem.setAttribute('aria-checked', \"false\");\r\n            elem.setAttribute('aria-label', elem.parentElement.querySelector(\".coveo-facet-value-caption\").getAttribute('title'));\r\n        });\r\n\r\n        document.querySelectorAll('.coveo-selected > .coveo-facet-value-label > .coveo-facet-value-label-wrapper > .coveo-facet-value-checkbox').forEach(elem => {\r\n            elem.setAttribute('aria-checked', true);\r\n        });\r\n\r\n    }\r\n\r\n    function SetADSForCoveoFacetHeader() {\r\n\r\n        document.querySelectorAll('.coveo-facet-header-title').forEach(elem => {\r\n\r\n            elem.removeAttribute('aria-label');\r\n            let headingText = elem.textContent;\r\n            elem.innerHTML = '';\r\n            const newElement = document.createElement(\"div\");\r\n            newElement.setAttribute('role', 'button');\r\n            newElement.setAttribute('aria-expanded', 'true');\r\n            newElement.setAttribute('aria-label', headingText);\r\n            newElement.setAttribute('aria-controls', headingText + '-filter-me');\r\n            newElement.innerHTML = '<legend>' + headingText + '</legend>';\r\n\r\n            elem.appendChild(newElement);\r\n\r\n            elem.closest('.coveo-facet-header').setAttribute('id', headingText);\r\n        });\r\n\r\n        document.querySelectorAll('.coveo-facet-column > .CoveoFacet > .coveo-facet-header > .coveo-facet-header-title-section > .coveo-facet-header-title').forEach(elem => {\r\n            elem.setAttribute('aria-expanded', 'false');\r\n            elem.setAttribute('aria-controls', 'show-more');\r\n            elem.setAttribute('id', 'show-more-' + elem.closest('.CoveoFacet').getAttribute('data-title'));\r\n        });\r\n\r\n    }\r\n\r\n\r\n    function SetADSForCoveoResultSorting() {\r\n        document.querySelectorAll('.coveo-results-column > .coveo-results-header > .coveo-sort-section > .CoveoSort > .coveo-accessible-button').forEach(elem => {\r\n            elem.removeAttribute('aria-label');\r\n        });\r\n    }\r\n\r\n\r\n    function SetADSForCoveoFacetFooter() {\r\n\r\n        document.querySelectorAll('.coveo-facet-column').forEach(elem => {\r\n            elem.setAttribute('role', 'region');\r\n            elem.setAttribute('aria-label', 'filters');\r\n        });\r\n\r\n        document.querySelectorAll('.coveo-facet-footer').forEach(elem => {\r\n            elem.setAttribute('aria-expanded', 'false');\r\n            elem.setAttribute('aria-controls', 'show-more');\r\n            elem.setAttribute('id', 'show-more-' + elem.closest('.CoveoFacet').getAttribute('data-title'));\r\n        });\r\n    }\r\n\r\n    function getFacetSelectionInAttribute() {\r\n        if (document.querySelector('.coveo-facet-column') != null && document.querySelector('.coveo-facet-column') !== 'undefined')\r\n            return document.querySelector('.coveo-facet-column').getAttribute('selected-facet-name');\r\n\r\n        return '';\r\n    }\r\n\r\n\r\n    function SetAriaAttribiteForCoveoPagination() {\r\n        //console.log('C Pagination trigger');\r\n\r\n        document.querySelectorAll('.coveo-pager-list-item').forEach(elem => {\r\n            elem.removeAttribute('tabindex');\r\n            elem.removeAttribute('aria-label');\r\n            elem.removeAttribute('role');\r\n        });\r\n\r\n        document.querySelectorAll('.CoveoPager').forEach(elem => {\r\n            elem.removeAttribute('aria-label');\r\n            elem.removeAttribute('role');\r\n        });\r\n    }\r\n\r\n    function SetAriaAttribiteForCoveoResutList() {\r\n        //console.log('C coveo list layout');\r\n\r\n        document.querySelectorAll('.coveo-results-column > .CoveoResultList > .coveo-result-list-container > .coveo-list-layout').forEach(elem => {\r\n            elem.setAttribute('role', \"group\");\r\n            elem.setAttribute('aria-label', 'item');\r\n        });\r\n\r\n    }\r\n\r\n    function SetFocusOnFacet() {\r\n        if (getFacetSelectionInAttribute() !== 'undefined' && getFacetSelectionInAttribute() !== '' &&\r\n            document.querySelector(\".coveo-facet-value-caption[title='\" + getFacetSelectionInAttribute() + \"']\") != null &&\r\n            document.querySelector(\".coveo-facet-value-caption[title='\" + getFacetSelectionInAttribute() + \"']\").closest('.coveo-facet-value-label-wrapper') != null &&\r\n            document.querySelector(\".coveo-facet-value-caption[title='\" + getFacetSelectionInAttribute() + \"']\").closest('.coveo-facet-value-label-wrapper').getElementsByClassName(\"coveo-facet-value-checkbox\") != null &&\r\n            document.querySelector(\".coveo-facet-value-caption[title='\" + getFacetSelectionInAttribute() + \"']\").closest('.coveo-facet-value-label-wrapper').getElementsByClassName(\"coveo-facet-value-checkbox\")[0] != null) {\r\n            document.querySelector(\".coveo-facet-value-caption[title='\" + getFacetSelectionInAttribute() + \"']\").closest('.coveo-facet-value-label-wrapper').getElementsByClassName(\"coveo-facet-value-checkbox\")[0].focus({ focusVisible: true });\r\n        }\r\n    }\r\n\r\n\r\n    CoveoHelper.getSyssourceValues = function (enableCDSCoveoSourcesOnCMS) {\r\n        var values = [];\r\n\r\n        if (!enableCDSCoveoSourcesOnCMS) { enableCDSCoveoSourcesOnCMS = false; }\r\n        //console.log(\"enableCDSCoveoSourcesOnCMS \" + enableCDSCoveoSourcesOnCMS);\r\n\r\n        values.push(\"\".concat(syssourcePrefix, ' ', language, '-', country, (!enableCDSCoveoSourcesOnCMS && isCms) ? ' CMS' : ''));\r\n\r\n        return values;\r\n    }\r\n\r\n    CoveoHelper.addTemplateTypesFieldExpression = function (templateTypes, expressionBuilder) {\r\n        var field = \"@webtemplatetype\", operator = \"==\", values = [];\r\n\r\n        if (!templateTypes) {\r\n            return;\r\n\r\n        } else if (templateTypes.constructor === Array && templateTypes.length > 0) {\r\n            values = templateTypes;\r\n\r\n        } else if (templateTypes.length > 0) {\r\n            values.push(templateTypes);\r\n\r\n        }\r\n\r\n        if (values.length === 0) {\r\n            return;\r\n        }\r\n\r\n        expressionBuilder.addFieldExpression(field, operator, values);\r\n    }\r\n\r\n    return CoveoHelper;\r\n});\n",
    "define('Components/Hive/SliderHive',[\"jquery\", \"coveo\", \"CoveoHelper\", \"matchHeight\", \"slick\"], function ($, Coveo, CoveoHelper) {\r\n    function search(args) {\r\n        var scope = args.scope;\r\n\r\n        //if (args.SearchEndpointOptions && args.SearchEndpointOptions.restUri)\r\n        //    Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint(args.SearchEndpointOptions);\r\n\r\n        var sliderHive = scope.querySelector('.CoveoSearchInterface');\r\n        var metaDataExists = args.metaDataExists;\r\n        var numberOfSlidesToShow = args.numberOfSlidesToShow;\r\n        var currentCompany = args.currentCompany;\r\n        var currentCountry = args.currentCountry;\r\n        var applications = args.applications;\r\n        var solutions = args.solutions;\r\n        var industries = args.industries;\r\n        var markets = args.markets;\r\n        var locationRegions = args.locationRegions;\r\n        var locationTypes = args.locationTypes;\r\n        var newsTopics = args.newsTopics;\r\n        var newsTypes = args.newsTypes;\r\n        var pageOwnerGroups = args.pageOwnerGroups;\r\n        var storyTopics = args.storyTopics;\r\n        var storyTypes = args.storyTypes;\r\n        var translationOwners = args.translationOwners;\r\n        var enableCDSCoveoSourcesOnCMS = args.enableCDSCoveoSourcesOnCMS;\r\n        var articleAuthors = args.articleAuthors;\r\n        var articleTopics = args.articleTopics;\r\n        var articleTypes = args.articleTypes;\r\n        var newsletterNames = args.newsletterNames;\r\n        var newsletterYears = args.newsletterYears;\r\n        var newsletterMonths = args.newsletterMonths;\r\n        \r\n        function buildingQueryHandler(e) {\r\n            e.detail.queryBuilder.sortCriteria = '@webpublishedyear descending';\r\n\r\n            //Eliminate current page from results\r\n            e.detail.queryBuilder.constantExpression.add('NOT (@sysuri == http://' + location.hostname + location.pathname + ' OR @sysuri == https://' + location.hostname + location.pathname + ')');\r\n\r\n            if (metaDataExists) {\r\n                if (currentCountry.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@syssource', '==', CoveoHelper.getSyssourceValues(enableCDSCoveoSourcesOnCMS));\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcountry', '=', currentCountry);\r\n                }\r\n\r\n                if (currentCompany.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcompany', '==', currentCompany);\r\n                }\r\n                if (applications.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webapplications', '=', applications);\r\n                }\r\n                if (solutions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@websolutions', '=', solutions);\r\n                }\r\n                if (industries.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webindustries', '=', industries);\r\n                }\r\n                if (markets.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webmarkets', '=', markets);\r\n                }\r\n                if (locationRegions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationregion', '=', locationRegions);\r\n                }\r\n                if (locationTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationtype', '=', locationTypes);\r\n                }\r\n                if (newsTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewscategory', '=', newsTopics);\r\n                }\r\n                if (newsTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewstype', '=', newsTypes);\r\n                }\r\n                if (pageOwnerGroups.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webpageowner', '=', pageOwnerGroups);\r\n                }\r\n                if (storyTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytopic', '=', storyTopics);\r\n                }\r\n                if (storyTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytype', '=', storyTypes);\r\n                }\r\n                if (translationOwners.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webtranslationowner', '=', translationOwners);\r\n                }\r\n                if (articleAuthors.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webarticleauthor', '=', articleAuthors);\r\n                }\r\n                if (articleTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webarticletopic', '=', articleTopics);\r\n                }\r\n                if (articleTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webarticletype', '=', articleTypes);\r\n                }\r\n                if (newsletterNames.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewslettername', '=', newsletterNames);\r\n                }\r\n                if (newsletterYears.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewsletteryear', '=', newsletterYears);\r\n                }\r\n                if (newsletterMonths.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewslettermonth', '=', newsletterMonths);\r\n                }\r\n            }\r\n\r\n            //Add selected Template Types to the query\r\n            CoveoHelper.addTemplateTypesFieldExpression(args.templateTypes, e.detail.queryBuilder.advancedExpression);\r\n        }\r\n\r\n        function newResultsDisplayedHandler(e) {\r\n            if (metaDataExists) {\r\n                var $container = $(\".coveo-result-list-container\", scope);\r\n                if ($container.length === 0) {\r\n                    return;\r\n                }\r\n\r\n                $container.slick({\r\n                    //these settings are needed for the 2020 design\r\n                    infinite: true,\r\n                    arrows: true,\r\n                    dots: true,\r\n                    slidesToShow: 4,\r\n                    responsive: [\r\n                        {\r\n                            breakpoint: 1440,\r\n                            settings: {\r\n                                slidesToShow: 4\r\n                            }\r\n                        },\r\n                        {\r\n                            breakpoint: 992,\r\n                            settings: {\r\n                                slidesToShow: 3\r\n                            }\r\n                        },\r\n                        {\r\n                            breakpoint: 768,\r\n                            settings: {\r\n                                slidesToShow: 1\r\n                                //centerMode: true\r\n                            }\r\n                        }\r\n                    ]\r\n                });\r\n\r\n                var $tiles = $container.find(\".CoveoResult\");\r\n                if ($tiles.length > 0) {\r\n                    $tiles.matchHeight(true);\r\n                }\r\n            }\r\n            CoveoHelper.CoveoFixForADA();\r\n        }\r\n\r\n        sliderHive.addEventListener('buildingQuery', buildingQueryHandler);\r\n        sliderHive.addEventListener('newResultsDisplayed', newResultsDisplayedHandler);\r\n\r\n\r\n        //console.log('Slider - Coveo -' + Coveo);\r\n        //console.log('Slider - Coveo.SearchEndpoint -' + Coveo.SearchEndpoint);\r\n        //console.log('Slider - Coveo.SearchEndpoint.endpoints -  ' + Coveo.SearchEndpoint.endpoints);\r\n        //console.log('Slider - Coveo.SearchEndpoint.endpoints[\"default\"]  ' + Coveo.SearchEndpoint.endpoints[\"default\"]);\r\n        //console.log('Slider - Coveo.SearchEndpoint.endpoints.default.options.restUri  ' + Coveo.SearchEndpoint.endpoints.default.options.restUri);\r\n        \r\n\r\n\r\n        document.addEventListener('afterComponentsInitialization', () => {\r\n            //console.log('Slider Component initialize triggered');\r\n            if (CoveoHelper.verifyCookieConsent()) {\r\n                //console.log('Slider Component initialize triggered');\r\n                Coveo.disableAnalytics();\r\n            }\r\n            else {\r\n                Coveo.enableAnalytics();\r\n            }\r\n        });\r\n\r\n        Coveo.init(sliderHive);\r\n    }\r\n\r\n    function Slider(args) {\r\n\r\n        setTimeout(function () {\r\n            //console.log('Slider log Called');\r\n            search(args);\r\n            //console.log('Page Loaded in Slider Hive');\r\n        }, 2000);\r\n    }\r\n\r\n    \r\n\r\n    return function init(args) {\r\n        return new Slider(args);\r\n    };\r\n});\n",
    "define('Components/Hive/EventSliderHive',[\"jquery\", \"coveo\", \"CoveoHelper\", \"matchHeight\", \"slick\"], function ($, Coveo, CoveoHelper) {\r\n\r\n    function search(args) {\r\n        var scope = args.scope;\r\n\r\n        //if (args.SearchEndpointOptions && args.SearchEndpointOptions.restUri)\r\n        //    Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint(args.SearchEndpointOptions);\r\n\r\n        var eventSliderHive = scope.querySelector('.CoveoSearchInterface');\r\n\r\n        var metaDataExists = args.metaDataExists;\r\n        var numberOfSlidesToShow = args.numberOfSlidesToShow;\r\n        var currentCompany = args.currentCompany;\r\n        var currentCountry = args.currentCountry;\r\n        var applications = args.applications;\r\n        var solutions = args.solutions;\r\n        var industries = args.industries;\r\n        var markets = args.markets;\r\n        var locationRegions = args.locationRegions;\r\n        var locationTypes = args.locationTypes;\r\n        var newsTopics = args.newsTopics;\r\n        var newsTypes = args.newsTypes;\r\n        var pageOwnerGroups = args.pageOwnerGroups;\r\n        var storyTopics = args.storyTopics;\r\n        var storyTypes = args.storyTypes;\r\n        var eventTypes = args.eventTypes;\r\n        var listerType = args.listerType;\r\n        var translationOwners = args.translationOwners;\r\n        var formattedDateTimeNowForCoveoQuery = args.formattedDateTimeNowForCoveoQuery;\r\n        var enableCDSCoveoSourcesOnCMS = args.enableCDSCoveoSourcesOnCMS;\r\n        \r\n        function buildingQueryHandler(e) {\r\n\r\n            if (listerType === 'On-Demand Webinars') {\r\n                e.detail.queryBuilder.sortCriteria = '@webeventstartdatetime descending';\r\n            } else {\r\n                e.detail.queryBuilder.sortCriteria = '@webeventstartdatetime ascending';\r\n                e.detail.queryBuilder.constantExpression.addFieldExpression('@webeventenddatetime', '>', [formattedDateTimeNowForCoveoQuery]);\r\n            }\r\n\r\n            //Eliminate current page from results\r\n            e.detail.queryBuilder.constantExpression.add('NOT (@sysuri == http://' + location.hostname + location.pathname + ' OR @sysuri == https://' + location.hostname + location.pathname + ')');\r\n\r\n            if (metaDataExists) {\r\n                if (currentCountry.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@syssource', '==', CoveoHelper.getSyssourceValues(enableCDSCoveoSourcesOnCMS));\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcountry', '=', currentCountry);\r\n                }\r\n\r\n                if (currentCompany.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcompany', '==', currentCompany);\r\n                }\r\n                if (applications.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webapplications', '=', applications);\r\n                }\r\n                if (solutions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@websolutions', '=', solutions);\r\n                }\r\n                if (industries.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webindustries', '=', industries);\r\n                }\r\n                if (markets.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webmarkets', '=', markets);\r\n                }\r\n                if (locationRegions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationregion', '=', locationRegions);\r\n                }\r\n                if (locationTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationtype', '=', locationTypes);\r\n                }\r\n                if (newsTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewscategory', '=', newsTopics);\r\n                }\r\n                if (newsTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewstype', '=', newsTypes);\r\n                }\r\n                if (pageOwnerGroups.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webpageowner', '=', pageOwnerGroups);\r\n                }\r\n                if (storyTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytopic', '=', storyTopics);\r\n                }\r\n                if (storyTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytype', '=', storyTypes);\r\n                }\r\n                if (eventTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webeventtype', '=', eventTypes);\r\n                }\r\n                if (translationOwners.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webtranslationowner', '=', translationOwners);\r\n                }\r\n            }\r\n\r\n            //Add selected Template Types to the query\r\n            CoveoHelper.addTemplateTypesFieldExpression(args.templateTypes, e.detail.queryBuilder.advancedExpression);\r\n        }\r\n\r\n        function newResultsDisplayedHandler(e) {\r\n            if (metaDataExists) {\r\n                var $container = $(\".coveo-result-list-container\", scope);\r\n                if ($container.length === 0) {\r\n                    return;\r\n                }\r\n\r\n                $container.slick({\r\n                    //these settings are needed for the 2020 design\r\n                    infinite: true,\r\n                    arrows: true,\r\n                    dots: true,\r\n                    slidesToShow: 4,\r\n                    responsive: [\r\n                        {\r\n                            breakpoint: 1440,\r\n                            settings: {\r\n                                slidesToShow: 4\r\n                            }\r\n                        },\r\n                        {\r\n                            breakpoint: 992,\r\n                            settings: {\r\n                                slidesToShow: 3\r\n                            }\r\n                        },\r\n                        {\r\n                            breakpoint: 768,\r\n                            settings: {\r\n                                slidesToShow: 1,\r\n                                centerMode: true\r\n                            }\r\n                        }\r\n                    ]\r\n                });\r\n\r\n                var $tiles = $container.find(\".CoveoResult\");\r\n                if ($tiles.length > 0) {\r\n                    $tiles.matchHeight(true);\r\n                }\r\n            }\r\n            CoveoHelper.CoveoFixForADA();\r\n        }\r\n\r\n        eventSliderHive.addEventListener('buildingQuery', buildingQueryHandler);\r\n        eventSliderHive.addEventListener('newResultsDisplayed', newResultsDisplayedHandler);\r\n\r\n\r\n        //console.log('Eventslider - Coveo - ' + Coveo);\r\n        //console.log('Eventslider - Coveo.SearchEndpoint - ' + Coveo.SearchEndpoint);\r\n        //console.log('Eventslider - Coveo.SearchEndpoint.endpoints -  ' + Coveo.SearchEndpoint.endpoints);\r\n        //console.log('Eventslider - Coveo.SearchEndpoint.endpoints[\"default\"]  ' + Coveo.SearchEndpoint.endpoints[\"default\"]);\r\n        //console.log('Eventslider - Coveo.SearchEndpoint.endpoints.default.options.restUri  ' + Coveo.SearchEndpoint.endpoints.default.options.restUri);\r\n\r\n        document.addEventListener('afterComponentsInitialization', () => {\r\n            //console.log('Slider Component initialize triggered');\r\n            if (CoveoHelper.verifyCookieConsent()) {\r\n                Coveo.disableAnalytics();\r\n            }\r\n            else {\r\n                Coveo.enableAnalytics();\r\n            }\r\n        });\r\n\r\n        Coveo.init(eventSliderHive);\r\n    }\r\n\r\n    function EventSliderHive(args) {\r\n        //search(args);\r\n\r\n        setTimeout(function () {\r\n            //console.log('Event Slider Hive log Called');\r\n            search(args);\r\n            //console.log('Page Loaded in Event Slider Hive');\r\n\r\n        }, 2000);\r\n    }\r\n\r\n    return function init(args) {\r\n        return new EventSliderHive(args);\r\n    };\r\n});\n",
    "define('Components/Hive/CatalogSearchHive',['jquery', 'coveo', 'CoveoHelper'], function ($, Coveo, CoveoHelper) {\r\n\r\n    function CatalogSearch(isExperienceEditorEditing, scope, searchEndpointOptions, metadata, templateTypes) {\r\n\r\n        //if (searchEndpointOptions && searchEndpointOptions.restUri)\r\n        //    Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint(searchEndpointOptions);\r\n\r\n        catalogSearch = scope.querySelector('.CoveoSearchInterface');\r\n        var enableCDSCoveoSourcesOnCMS = metadata.enableCDSCoveoSourcesOnCMS;\r\n\r\n        var initialPageLoad = false;\r\n\r\n        function buildingQueryHandler(e) {\r\n            //set value for query text\r\n            var query = Coveo.state(catalogSearch, 'q');\r\n            $(\"label[for='qryTxt']\").text(query);\r\n\r\n            e.detail.queryBuilder.sortCriteria = '@webcatalogsortorder ascending, @webogtitle ascending';\r\n\r\n            if (metadata.currentCountry.length > 0) {\r\n                e.detail.queryBuilder.constantExpression.addFieldExpression('@syssource', '==', CoveoHelper.getSyssourceValues(enableCDSCoveoSourcesOnCMS));\r\n                e.detail.queryBuilder.constantExpression.addFieldExpression('@webcountry', '=', metadata.currentCountry);\r\n            }\r\n\r\n            if (metadata.pageCategory.length > 0) {\r\n                e.detail.queryBuilder.constantExpression.addFieldExpression('@webpagecategory', '=', metadata.pageCategory);\r\n            } else {\r\n                //Eliminate current page from results\r\n                e.detail.queryBuilder.constantExpression.add('NOT (@sysuri == http://' + location.hostname + location.pathname + ' OR @sysuri == https://' + location.hostname + location.pathname + ')');\r\n            }\r\n\r\n            if (metadata.currentCompany.length > 0) {\r\n                e.detail.queryBuilder.constantExpression.addFieldExpression('@webcompany', '==', metadata.currentCompany);\r\n            }\r\n\r\n            //Add selected Template Types to the query\r\n            CoveoHelper.addTemplateTypesFieldExpression(templateTypes, e.detail.queryBuilder.advancedExpression);\r\n\r\n            //console.log('Page Loaded in Catalog buildingQueryHandler');\r\n\r\n        }\r\n\r\n        function afterInitializationHandler(e) {\r\n            initialPageLoad = true\r\n\r\n            if (metadata.pageCategory.length === 0) {\r\n                if (metadata.offerTypes.length > 0) {\r\n                    Coveo.state(catalogSearch, 'f:@webofferingtype', metadata.offerTypes);\r\n                }\r\n\r\n                if (metadata.solutions.length > 0) {\r\n                    Coveo.state(catalogSearch, 'f:@websolutions', metadata.solutions);\r\n                }\r\n\r\n                if (metadata.applications.length > 0) {\r\n                    Coveo.state(catalogSearch, 'f:@webapplications', metadata.applications);\r\n                }\r\n\r\n                if (metadata.markets.length > 0) {\r\n                    Coveo.state(catalogSearch, 'f:@webmarkets', metadata.markets);\r\n                }\r\n\r\n                if (metadata.industries.length > 0) {\r\n                    Coveo.state(catalogSearch, 'f:@webindustries', metadata.industries);\r\n                }\r\n            }\r\n\r\n            //console.log('Page Loaded in Catalog afterInitializationHandler');\r\n\r\n\r\n        }\r\n\r\n        function noResultsHandler(e) {\r\n            if (initialPageLoad) {\r\n                $('.ecolab-catalog-search__no-tagged-results', scope).removeClass('hidden');\r\n                $('.CoveoSearchInterface', scope).addClass('hidden');\r\n\r\n            } else {\r\n                $('.ecolab-catalog-search__no-tagged-results', scope).addClass('hidden');\r\n                $('.CoveoSearchInterface', scope).removeClass('hidden');\r\n\r\n            }\r\n\r\n            initialPageLoad = false;\r\n\r\n            //console.log('Page Loaded in Catalog noResultsHandler');\r\n\r\n        }\r\n\r\n        function querySuccessHandler(e) {\r\n            initialPageLoad = false;\r\n\r\n            //console.log('Page Loaded in Catalog querySuccessHandler');\r\n\r\n        }\r\n\r\n        function afterComponentsInitializationHandler() {\r\n            var input = catalogSearch.querySelector('.CoveoSearchbox input');\r\n\r\n            if (input && 'placeholder' in input) {\r\n                input.placeholder = 'Search within results';\r\n            }\r\n\r\n            //console.log('Page Loaded in Catalog afterComponentsInitializationHandler');\r\n\r\n        };\r\n\r\n        function newResultsDisplayedHandler(e) {\r\n            $('.coveo-result-list-container .catalog-item').matchHeight(true);\r\n\r\n            CoveoHelper.CoveoFixForADA();\r\n            //console.log('Page Loaded in Catalog newResultsDisplayedHandler');\r\n\r\n\r\n        }\r\n\r\n        function doneBuildingQueryHandler(e) {\r\n            var numberOfResultsvar = 12;\r\n            if (!isNaN(metadata.numberOfResults))\r\n                numberOfResultsvar = parseInt(metadata.numberOfResults);\r\n\r\n            e.detail.queryBuilder.numberOfResults = numberOfResultsvar;\r\n\r\n            //console.log('Page Loaded in Catalog doneBuildingQueryHandler');\r\n\r\n        }\r\n\r\n\r\n        //function updateMoreLessHandleer(e) {\r\n            \r\n        //    console.log('Facet More or less Triggered');\r\n\r\n        //}\r\n\r\n        catalogSearch.addEventListener('buildingQuery', buildingQueryHandler);\r\n        catalogSearch.addEventListener('afterInitialization', afterInitializationHandler);\r\n        catalogSearch.addEventListener('noResults', noResultsHandler);\r\n        catalogSearch.addEventListener('querySuccess', querySuccessHandler);\r\n        catalogSearch.addEventListener('afterComponentsInitialization', afterComponentsInitializationHandler);\r\n        catalogSearch.addEventListener('newResultsDisplayed', newResultsDisplayedHandler);\r\n        catalogSearch.addEventListener('doneBuildingQuery', doneBuildingQueryHandler);\r\n        //catalogSearch.addEventListener('updateMoreLess', updateMoreLessHandleer);\r\n\r\n        //\r\n\r\n\r\n        //console.log('Catalogsearch - Coveo -' + Coveo);\r\n        //console.log('Catalogsearch - Coveo.SearchEndpoint - ' + Coveo.SearchEndpoint);\r\n        //console.log('Catalogsearch - Coveo.SearchEndpoint.endpoints ' + Coveo.SearchEndpoint.endpoints);\r\n        //console.log('Catalogsearch - Coveo.SearchEndpoint.endpoints[\"default\"] ' + Coveo.SearchEndpoint.endpoints[\"default\"]);\r\n        //console.log('Catalogsearch - Coveo.SearchEndpoint.endpoints.default.options.restUri ' + Coveo.SearchEndpoint.endpoints.default.options.restUri);\r\n\r\n\r\n        document.addEventListener('afterComponentsInitialization', () => {\r\n            //console.log('Slider Component initialize triggered');\r\n            if (CoveoHelper.verifyCookieConsent()) {\r\n                Coveo.disableAnalytics();\r\n            }\r\n            else {\r\n                Coveo.enableAnalytics();\r\n            }\r\n        });\r\n\r\n        // Coveo initialization to reference catalogSearch\r\n        Coveo.init(catalogSearch, {\r\n            ResultLink: {\r\n                onClick: function (e, result) {\r\n                    e.preventDefault();\r\n                    location.href = result.clickUri + location.search;\r\n                }\r\n            }\r\n        });\r\n\r\n\r\n\r\n        //console.log('Page Loaded in Catalog after Components');\r\n    }\r\n\r\n\r\n    function callCatalogSearch(isExperienceEditorEditing, scope, SearchEndpointOptions, Metadata, templateTypes) {\r\n        setTimeout(function () {\r\n            //console.log('Catalog Search Hive log Called');\r\n            CatalogSearch(isExperienceEditorEditing, scope, SearchEndpointOptions, Metadata, templateTypes);\r\n            //console.log('Page Loaded in Catalog Search Hive');\r\n\r\n        }, 2000);\r\n\r\n        //var root = Coveo.$$(document).find(\".ecolab-catalog-search\").first();\r\n        //Coveo.$$(root).on(\"state:change:theme\", function (e, data) {\r\n        //    console.log('Coveo');\r\n        //});\r\n    }\r\n\r\n\r\n    return function initCatalogSearch(args) {\r\n        return new callCatalogSearch(args.isExperienceEditorEditing, args.scope, args.SearchEndpointOptions, args.Metadata, args.templateTypes);\r\n\r\n        // return new CatalogSearch(args.isExperienceEditorEditing, args.scope, args.SearchEndpointOptions, args.Metadata, args.templateTypes);\r\n    }\r\n});\n",
    "define('Components/Hive/ListerHive',[\"jquery\", \"coveo\", 'CoveoHelper'], function ($, Coveo, CoveoHelper) {\r\n\r\n    function search(args) {\r\n        var scope = args.scope;\r\n\r\n\r\n        //if (args.SearchEndpointOptions && args.SearchEndpointOptions.restUri)\r\n        //    Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint(args.SearchEndpointOptions);\r\n\r\n        var lister = scope.querySelector('.CoveoSearchInterface');\r\n\r\n        var metaDataExists = args.metaDataExists;\r\n        var currentCompany = args.currentCompany;\r\n        var currentCountry = args.currentCountry;\r\n        var applications = args.applications;\r\n        var solutions = args.solutions;\r\n        var industries = args.industries;\r\n        var markets = args.markets;\r\n        var locationRegions = args.locationRegions;\r\n        var locationTypes = args.locationTypes;\r\n        var newsTopics = args.newsTopics;\r\n        var newsTypes = args.newsTypes;\r\n        var pageOwnerGroups = args.pageOwnerGroups;\r\n        var storyTopics = args.storyTopics;\r\n        var storyTypes = args.storyTypes;\r\n        var translationOwners = args.translationOwners;\r\n        var numberOfResultsvar = 10;\r\n        if (!isNaN(args.numberOfResults))\r\n            numberOfResultsvar = parseInt(args.numberOfResults);\r\n        var enableCDSCoveoSourcesOnCMS = args.enableCDSCoveoSourcesOnCMS;\r\n\r\n\r\n        function buildingQueryHandler(e) {\r\n            e.detail.queryBuilder.sortCriteria = '@webpublishedyear descending';\r\n\r\n            //Eliminate current page from results\r\n            e.detail.queryBuilder.constantExpression.add('NOT (@sysuri == http://' + location.hostname + location.pathname + ' OR @sysuri == https://' + location.hostname + location.pathname + ')');\r\n\r\n            if (metaDataExists) {\r\n                if (currentCountry.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@syssource', '==', CoveoHelper.getSyssourceValues(enableCDSCoveoSourcesOnCMS));\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcountry', '=', currentCountry);\r\n                }\r\n\r\n                if (currentCompany.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcompany', '==', currentCompany);\r\n                }\r\n                if (applications.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webapplications', '=', applications);\r\n                }\r\n                if (solutions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@websolutions', '=', solutions);\r\n                }\r\n                if (industries.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webindustries', '=', industries);\r\n                }\r\n                if (markets.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webmarkets', '=', markets);\r\n                }\r\n                if (locationRegions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationregion', '=', locationRegions);\r\n                }\r\n                if (locationTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationtype', '=', locationTypes);\r\n                }\r\n                if (newsTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewscategory', '=', newsTopics);\r\n                }\r\n                if (newsTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewstype', '=', newsTypes);\r\n                }\r\n                if (pageOwnerGroups.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webpageowner', '=', pageOwnerGroups);\r\n                }\r\n                if (storyTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytopic', '=', storyTopics);\r\n                }\r\n                if (storyTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytype', '=', storyTypes);\r\n                }\r\n                if (translationOwners.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webtranslationowner', '=', translationOwners);\r\n                }\r\n            }\r\n\r\n            //Add selected Template Types to the query\r\n            CoveoHelper.addTemplateTypesFieldExpression(args.templateTypes, e.detail.queryBuilder.advancedExpression);\r\n        }\r\n\r\n        function doneBuildingQueryHandler(e) {\r\n            e.detail.queryBuilder.numberOfResults = numberOfResultsvar;\r\n        }\r\n\r\n\r\n        function newResultsDisplayedHandler(e) {\r\n            CoveoHelper.CoveoFixForADA();\r\n        }\r\n\r\n        lister.addEventListener('buildingQuery', buildingQueryHandler);\r\n        lister.addEventListener('doneBuildingQuery', doneBuildingQueryHandler);\r\n        lister.addEventListener('newResultsDisplayed', newResultsDisplayedHandler);\r\n\r\n\r\n\r\n        //console.log('ListerHive - Coveo - ' + Coveo);\r\n        //console.log('ListerHive - Coveo.SearchEndpoint -  ' + Coveo.SearchEndpoint);\r\n        //console.log('ListerHive - Coveo.SearchEndpoint.endpoints -  ' + Coveo.SearchEndpoint.endpoints);\r\n        //console.log('ListerHive - Coveo.SearchEndpoint.endpoints[\"default\"]  ' + Coveo.SearchEndpoint.endpoints[\"default\"]);\r\n        //console.log('listerhive - Coveo.SearchEndpoint.endpoints.default.options.restUri  ' + Coveo.SearchEndpoint.endpoints.default.options.restUri);\r\n\r\n        document.addEventListener('afterComponentsInitialization', () => {\r\n            //console.log('Slider Component initialize triggered');\r\n            if (CoveoHelper.verifyCookieConsent()) {\r\n                Coveo.disableAnalytics();\r\n            }\r\n            else {\r\n                Coveo.enableAnalytics();\r\n            }\r\n            CoveoHelper.CoveoSortCoveoAccessibleButton();\r\n        });\r\n\r\n        Coveo.init(lister);\r\n    }\r\n\r\n    function Lister(args) {\r\n\r\n        setTimeout(function () {\r\n            //console.log('Lister Hive log Called');\r\n            search(args);\r\n            //console.log('Page Loaded in Lister Hive');\r\n        }, 2000);\r\n\r\n    }\r\n\r\n    return function init(args) {\r\n        return new Lister(args);\r\n    };\r\n});\n",
    "define('Components/Hive/EventListerHive',[\"jquery\", \"coveo\", 'CoveoHelper'], function ($, Coveo, CoveoHelper) {\r\n\r\n    function search(args) {\r\n        var scope = args.scope;\r\n\r\n        //if (args.SearchEndpointOptions && args.SearchEndpointOptions.restUri)\r\n        //    Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint(args.SearchEndpointOptions);\r\n\r\n        var lister = scope.querySelector('.CoveoSearchInterface');\r\n\r\n        var metaDataExists = args.metaDataExists;\r\n        var currentCompany = args.currentCompany;\r\n        var currentCountry = args.currentCountry;\r\n        var applications = args.applications;\r\n        var solutions = args.solutions;\r\n        var industries = args.industries;\r\n        var markets = args.markets;\r\n        var locationRegions = args.locationRegions;\r\n        var locationTypes = args.locationTypes;\r\n        var newsTopics = args.newsTopics;\r\n        var newsTypes = args.newsTypes;\r\n        var pageOwnerGroups = args.pageOwnerGroups;\r\n        var storyTopics = args.storyTopics;\r\n        var storyTypes = args.storyTypes;\r\n        var translationOwners = args.translationOwners;\r\n        var eventTypes = args.eventTypes;\r\n        var formattedDateTimeNowForCoveoQuery = args.formattedDateTimeNowForCoveoQuery;\r\n        var listerType = args.listerType;\r\n        var enableCDSCoveoSourcesOnCMS = args.enableCDSCoveoSourcesOnCMS;\r\n\r\n        function buildingQueryHandler(e) {        \r\n            //set value for query text\r\n            var query = Coveo.state(lister, 'q');\r\n            $(\"label[for='qryTxt']\").text(query);\r\n\r\n            if (listerType === 'Upcoming Events') {\r\n                e.detail.queryBuilder.sortCriteria = '@webeventstartdatetime ascending'; \r\n                e.detail.queryBuilder.constantExpression.addFieldExpression('@webeventenddatetime', '>', [formattedDateTimeNowForCoveoQuery]);\r\n            } else if (listerType === 'On-Demand Webinars') {\r\n                e.detail.queryBuilder.sortCriteria = '@webeventstartdatetime descending';\r\n            }\r\n            \r\n            //Eliminate current page from results\r\n            e.detail.queryBuilder.constantExpression.add('NOT (@sysuri == http://' + location.hostname + location.pathname + ' OR @sysuri == https://' + location.hostname + location.pathname + ')');\r\n\r\n            if (metaDataExists) {\r\n                if (currentCountry.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@syssource', '==', CoveoHelper.getSyssourceValues(enableCDSCoveoSourcesOnCMS));\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcountry', '=', currentCountry);\r\n                }\r\n\r\n                if (currentCompany.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcompany', '==', currentCompany);\r\n                }\r\n                if (applications.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webapplications', '=', applications);\r\n                }\r\n                if (solutions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@websolutions', '=', solutions);\r\n                }\r\n                if (industries.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webindustries', '=', industries);\r\n                }\r\n                if (markets.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webmarkets', '=', markets);\r\n                }\r\n                if (locationRegions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationregion', '=', locationRegions);\r\n                }\r\n                if (locationTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationtype', '=', locationTypes);\r\n                }\r\n                if (newsTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewscategory', '=', newsTopics);\r\n                }\r\n                if (newsTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewstype', '=', newsTypes);\r\n                }\r\n                if (pageOwnerGroups.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webpageowner', '=', pageOwnerGroups);\r\n                }\r\n                if (storyTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytopic', '=', storyTopics);\r\n                }\r\n                if (storyTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytype', '=', storyTypes);\r\n                }\r\n                if (translationOwners.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webtranslationowner', '=', translationOwners);\r\n                }\r\n                if (eventTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webeventtype', '=', eventTypes);\r\n                }\r\n            }\r\n\r\n            //Add selected Template Types to the query\r\n            CoveoHelper.addTemplateTypesFieldExpression(args.templateTypes, e.detail.queryBuilder.advancedExpression);\r\n        }\r\n\r\n        function afterComponentsInitializationHandler() {\r\n            var input = lister.querySelector('.CoveoSearchbox input');\r\n\r\n            if (input &&  'placeholder' in input) {\r\n                input.placeholder = 'Search within results';\r\n            }\r\n        };\r\n\r\n        function newResultsDisplayedHandler(e) {\r\n            CoveoHelper.CoveoFixForADA();\r\n        }\r\n\r\n        lister.addEventListener('buildingQuery', buildingQueryHandler);\r\n        lister.addEventListener('afterComponentsInitialization', afterComponentsInitializationHandler);\r\n        lister.addEventListener('newResultsDisplayed', newResultsDisplayedHandler);\r\n\r\n        //console.log('Eventlister - Coveo- ' + Coveo);\r\n        //console.log('Eventlister - Coveo.SearchEndpoint - ' + Coveo.SearchEndpoint);\r\n        //console.log('Eventlister - Coveo.SearchEndpoint.endpoints - ' + Coveo.SearchEndpoint.endpoints);\r\n        //console.log('Eventlister - Coveo.SearchEndpoint.endpoints[\"default\"]  ' + Coveo.SearchEndpoint.endpoints[\"default\"]);\r\n        //console.log('Eventlister - Coveo.SearchEndpoint.endpoints.default.options.restUri  ' + Coveo.SearchEndpoint.endpoints.default.options.restUri);\r\n\r\n        document.addEventListener('afterComponentsInitialization', () => {\r\n            //console.log('Slider Component initialize triggered');\r\n            if (CoveoHelper.verifyCookieConsent()) {\r\n                Coveo.disableAnalytics();\r\n            }\r\n            else {\r\n                Coveo.enableAnalytics();\r\n            }\r\n        });\r\n\r\n        Coveo.init(lister);\r\n    }\r\n\r\n    function Lister(args) {\r\n        \r\n        setTimeout(function () {\r\n            //console.log('Event Lister hive log Called');\r\n            search(args);\r\n            //console.log('Page Loaded in Event Lister Hive');\r\n\r\n        }, 2000);\r\n    }\r\n\r\n    return function init(args) {\r\n        return new Lister(args);\r\n    };\r\n});\n",
    "define('Components/Hive/ArticleListerHive',[\"jquery\", \"coveo\", 'CoveoHelper'], function ($, Coveo, CoveoHelper) {\r\n\r\n    function articleSearch(args) {\r\n        var scope = args.scope;\r\n\r\n        //if (args.SearchEndpointOptions && args.SearchEndpointOptions.restUri)\r\n        //    Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint(args.SearchEndpointOptions);\r\n\r\n        var articleLister = scope.querySelector('.CoveoSearchInterface');\r\n\r\n        var metaDataExists = args.metaDataExists;\r\n        var currentCompany = args.currentCompany;\r\n        var currentCountry = args.currentCountry;\r\n        var applications = args.applications;\r\n        var solutions = args.solutions;\r\n        var industries = args.industries;\r\n        var markets = args.markets;\r\n        var locationRegions = args.locationRegions;\r\n        var locationTypes = args.locationTypes;\r\n        var newsTopics = args.newsTopics;\r\n        var newsTypes = args.newsTypes;\r\n        var pageOwnerGroups = args.pageOwnerGroups;\r\n        var storyTopics = args.storyTopics;\r\n        var storyTypes = args.storyTypes;\r\n        var translationOwners = args.translationOwners;\r\n        var articleAuthors = args.articleAuthors;\r\n        var articleTopics = args.articleTopics;\r\n        var articleTypes = args.articleTypes;\r\n        var newsletterNames = args.newsletterNames;\r\n        var newsletterYears = args.newsletterYears;\r\n        var newsletterMonths = args.newsletterMonths;\r\n        var formattedDateTimeNowForCoveoQuery = args.formattedDateTimeNowForCoveoQuery;\r\n        var numberOfResultsvar = 10;\r\n        if (!isNaN(args.numberOfResults))\r\n            numberOfResultsvar = parseInt(args.numberOfResults);\r\n        var enableCDSCoveoSourcesOnCMS = args.enableCDSCoveoSourcesOnCMS;\r\n\r\n        function buildingQueryHandler(e) {\r\n\r\n            //set value for query text\r\n            var query = Coveo.state(articleLister, 'q');\r\n            $(\"label[for='qryTxt']\").text(query);\r\n\r\n            e.detail.queryBuilder.sortCriteria = '@webpublishedyear descending';\r\n\r\n            //Eliminate current page from results\r\n            e.detail.queryBuilder.constantExpression.add('NOT (@sysuri == http://' + location.hostname + location.pathname + ' OR @sysuri == https://' + location.hostname + location.pathname + ')');\r\n\r\n            if (metaDataExists) {\r\n                if (currentCountry.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@syssource', '==', CoveoHelper.getSyssourceValues(enableCDSCoveoSourcesOnCMS));\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcountry', '=', currentCountry);\r\n                }\r\n\r\n                if (currentCompany.length > 0) {\r\n                    e.detail.queryBuilder.constantExpression.addFieldExpression('@webcompany', '==', currentCompany);\r\n                }\r\n                if (applications.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webapplications', '=', applications);\r\n                }\r\n                if (solutions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@websolutions', '=', solutions);\r\n                }\r\n                if (industries.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webindustries', '=', industries);\r\n                }\r\n                if (markets.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webmarkets', '=', markets);\r\n                }\r\n                if (locationRegions.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationregion', '=', locationRegions);\r\n                }\r\n                if (locationTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@weblocationtype', '=', locationTypes);\r\n                }\r\n                if (newsTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewscategory', '=', newsTopics);\r\n                }\r\n                if (newsTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewstype', '=', newsTypes);\r\n                }\r\n                if (pageOwnerGroups.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webpageowner', '=', pageOwnerGroups);\r\n                }\r\n                if (storyTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytopic', '=', storyTopics);\r\n                }\r\n                if (storyTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webstorytype', '=', storyTypes);\r\n                }\r\n                if (translationOwners.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webtranslationowner', '=', translationOwners);\r\n                }\r\n                if (articleAuthors.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webarticleauthor', '=', articleAuthors);\r\n                }\r\n                if (articleTopics.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webarticletopic', '=', articleTopics);\r\n                }\r\n                if (articleTypes.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webarticletype', '=', articleTypes);\r\n                }\r\n                if (newsletterNames.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewslettername', '=', newsletterNames);\r\n                }\r\n                if (newsletterYears.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewsletteryear', '=', newsletterYears);\r\n                }\r\n                if (newsletterMonths.length > 0) {\r\n                    e.detail.queryBuilder.advancedExpression.addFieldExpression('@webnewslettermonth', '=', newsletterMonths);\r\n                }\r\n            }\r\n\r\n            //Add selected Template Types to the query\r\n            CoveoHelper.addTemplateTypesFieldExpression(args.templateTypes, e.detail.queryBuilder.advancedExpression);\r\n        }\r\n\r\n        function doneBuildingQueryHandler(e) {\r\n            e.detail.queryBuilder.numberOfResults = numberOfResultsvar;\r\n        }\r\n\r\n        function afterComponentsInitializationHandler() {\r\n            var input = articleLister.querySelector('.CoveoSearchbox input');\r\n\r\n            if (input && 'placeholder' in input) {\r\n                input.placeholder = 'Search within results';\r\n            } \r\n        };\r\n\r\n        function newResultsDisplayedHandler(e) {\r\n            CoveoHelper.CoveoFixForADA();\r\n        }\r\n\r\n        articleLister.addEventListener('buildingQuery', buildingQueryHandler);\r\n        articleLister.addEventListener('afterComponentsInitialization', afterComponentsInitializationHandler);\r\n        articleLister.addEventListener('doneBuildingQuery', doneBuildingQueryHandler); \r\n        articleLister.addEventListener('newResultsDisplayed', newResultsDisplayedHandler);\r\n\r\n        //console.log('Articlelister - Coveo -' + Coveo)\r\n        //console.log('Articlelister -  Coveo.SearchEndpoint -' + Coveo.SearchEndpoint)\r\n        //console.log('Articlelister - Coveo.SearchEndpoint.endpoints - ' + Coveo.SearchEndpoint.endpoints)\r\n        //console.log('Articlelister - Coveo.SearchEndpoint.endpoints[\"default\"] -' + Coveo.SearchEndpoint.endpoints[\"default\"])\r\n        //console.log('Articlelister - Coveo.SearchEndpoint.endpoints.default.options.restUri - ' + Coveo.SearchEndpoint.endpoints.default.options.restUri);\r\n\r\n        document.addEventListener('afterComponentsInitialization', () => {\r\n            //console.log('Slider Component initialize triggered');\r\n            if (CoveoHelper.verifyCookieConsent()) {\r\n                Coveo.disableAnalytics();\r\n            }\r\n            else {\r\n                Coveo.enableAnalytics();\r\n            }\r\n        });\r\n\r\n        Coveo.init(articleLister);\r\n    }\r\n\r\n    function ArticleLister(args) {\r\n        setTimeout(function () {\r\n            //console.log('Article Lister log Called');\r\n            articleSearch(args);\r\n        }, 2000);\r\n    }\r\n\r\n    return function init(args) {\r\n        return new ArticleLister(args);\r\n    };\r\n});\n",
    "define('Components/Carousel',[\"jquery\", \"slick\"], function ($, slick) {\r\n\r\n    function Carousel(args) {\r\n        var scope = args.scope;\r\n        var isExperienceEditorEditing = args.isExperienceEditorEditing;\r\n        var autoPlay = args.autoPlay;\r\n        var autoPlaySpeed = args.autoPlaySpeed < 1000 ? args.autoPlaySpeed * 1000 : args.autoPlaySpeed;\r\n        var showDots = args.showDots;\r\n        var showArrows = args.showArrows;\r\n\r\n        $('.carousel', scope).on('init', function (event, slick) {\r\n            // This is done so the slides so you don't get the flash of unstyled slides\r\n            $(scope).removeClass('hidden');\r\n        }).slick({\r\n            // customizations for arrows and paging which has been moved the slickjs 1.6.0. That is not good practice to make customizations directly in vendors's code\r\n            prevArrow: '<button type=\"button\" data-role=\"none\" class=\"slick-prev\" aria-label=\"Previous\" tabindex=\"0\" role=\"button\"><span class=\"sr-only\" >Previous</span></button>',\r\n            nextArrow: '<button type=\"button\" data-role=\"none\" class=\"slick-next\" aria-label=\"Next\" tabindex=\"0\" role=\"button\"><span class=\"sr-only\" >Next</span></button>',\r\n            customPaging: function (slider, i) {\r\n                return '<button type=\"button\" data-role=\"none\" role=\"button\" tabindex=\"0\" aria-label=\"Go to slide ' + (i + 1) + '\" ><span class=\"sr-only\" >' + (i + 1) + '</span> </button>';\r\n            },\r\n            // mandatory to solve the issues in the Carousel component. Might be helpfull for other components\r\n            rows: 0,\r\n            slide: '.score-carousel-pane',\r\n            lazyLoad: 'ondemand',\r\n            infinite: true,\r\n            autoplay: autoPlay,\r\n            autoplaySpeed: autoPlaySpeed,\r\n            pauseOnHover: true,\r\n            pauseOnFocus: true,\r\n            slidesToShow: 1,\r\n            slidesToScroll: 1,\r\n            arrows: showArrows,\r\n            dots: showDots,\r\n            // Left comment for future thumbnail option\r\n            //customPaging : function(slider, i) {\r\n            //    var thumb = $(slider.$slides[i]).data('thumb');\r\n            //    return '<a><img src=\"'+thumb+'\"></a>';\r\n            //},\r\n            responsive: [{\r\n                breakpoint: 992,\r\n                settings: {\r\n                    lazyLoad: 'ondemand',\r\n                    arrows: showArrows,\r\n                    dots: showDots,\r\n                    infinite: true,\r\n                    slidesToShow: 1,\r\n                    slidesToScroll: 1\r\n                }\r\n            }]\r\n        });\r\n\r\n    }\r\n\r\n    return function init(args) {\r\n        return new Carousel(args);\r\n    };\r\n});\n",
    "define('Components/Hive/MainSearchHive',[\"jquery\", 'coveo', 'CoveoHelper'], function ($, Coveo, CoveoHelper) {\r\n\r\n    function MainSearch(isExperienceEditorEditing, scope, searchEndpointOptions, metadata, templateTypes, defaultSort) {\r\n\r\n        //if (searchEndpointOptions && searchEndpointOptions.restUri)\r\n        //    Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint(searchEndpointOptions);\r\n\r\n        var mainSearch = scope.querySelector('.CoveoSearchInterface');\r\n        var enableCDSCoveoSourcesOnCMS = metadata.enableCDSCoveoSourcesOnCMS;\r\n\r\n        function buildingQueryHandler(e) {\r\n\r\n            //set value for query text\r\n            var query = Coveo.state(mainSearch, 'q');\r\n            $(\"label[for='qryTxt']\").text(query);\r\n\r\n            if (defaultSort === 'Date') {\r\n                e.detail.queryBuilder.sortCriteria = '@@webpublishedyear descending,@@webpublishedyear ascending';\r\n            }\r\n\r\n            if (metadata.currentCountry.length > 0) {\r\n                e.detail.queryBuilder.constantExpression.addFieldExpression('@syssource', '==', CoveoHelper.getSyssourceValues(enableCDSCoveoSourcesOnCMS));\r\n                e.detail.queryBuilder.constantExpression.addFieldExpression('@webcountry', '=', metadata.currentCountry);\r\n            }\r\n            //Eliminate current page from results\r\n            e.detail.queryBuilder.constantExpression.add('NOT (@sysuri == http://' + location.hostname + location.pathname + ' OR @sysuri == https://' + location.hostname + location.pathname + ')');\r\n\r\n            if (metadata.currentCompany.length > 0) {\r\n                e.detail.queryBuilder.constantExpression.addFieldExpression('@webcompany', '==', metadata.currentCompany);\r\n            }\r\n\r\n            //Add selected Template Types to the query\r\n            CoveoHelper.addTemplateTypesFieldExpression(templateTypes, e.detail.queryBuilder.advancedExpression);\r\n        }\r\n\r\n        function afterInitializationHandler(e) {\r\n            if (metadata.offerTypes.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@webofferingtype', metadata.offerTypes);\r\n            }\r\n\r\n            if (metadata.solutions.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@websolutions', metadata.solutions);\r\n            }\r\n\r\n            if (metadata.applications.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@webapplications', metadata.applications);\r\n            }\r\n\r\n            if (metadata.markets.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@webmarkets', metadata.markets);\r\n            }\r\n\r\n            if (metadata.industries.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@webindustries', metadata.industries);\r\n            }\r\n\r\n            if (metadata.newsType.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@webnewstype', metadata.newsType);\r\n            }\r\n\r\n            if (metadata.newsTopic.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@webnewscategory', metadata.newsTopic);\r\n            }\r\n\r\n            if (metadata.storyTopic.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@webstorytopic', metadata.storyTopic);\r\n            }\r\n\r\n            if (metadata.storyType.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@webstorytype', metadata.storyType);\r\n            }\r\n\r\n            if (metadata.locationRegion.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@weblocationregion', metadata.locationRegion);\r\n            }\r\n\r\n            if (metadata.locationType.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@weblocationtype', metadata.locationType);\r\n            }\r\n\r\n            if (metadata.articleTypes.length > 0) {\r\n                Coveo.state(mainSearch, 'f:@webarticletype', metadata.articleTypes);\r\n            }\r\n        }\r\n\r\n        function afterMainSearchComponentsInitializationHandler() {\r\n            if (mainSearch && mainSearch.querySelector('.CoveoSearchbox input')) {\r\n                var input = mainSearch.querySelector('.CoveoSearchbox input');\r\n                if (input && 'placeholder' in input) {\r\n                    input.placeholder = 'Search within results';\r\n                }\r\n            };\r\n        };\r\n\r\n        var standaloneSearch, options = {};\r\n\r\n        if ((scope.classList.contains('ecolab-main-search--site-search')) && (standaloneSearch = document.querySelector('.ecolab-standalone-search > .CoveoSearchbox')) != null) {\r\n            options.externalComponents = [standaloneSearch];\r\n\r\n            function afterComponentsInitializationHandler() {\r\n                var input = standaloneSearch.querySelector('input');\r\n\r\n                if ('placeholder' in input) {\r\n                    input.placeholder = 'Search the site';\r\n                }\r\n            };\r\n\r\n            mainSearch.addEventListener('afterComponentsInitialization', afterComponentsInitializationHandler);\r\n\r\n        }\r\n\r\n        function newResultsDisplayedHandler(e) {\r\n            CoveoHelper.CoveoFixForADA();\r\n        }\r\n\r\n        mainSearch.addEventListener('buildingQuery', buildingQueryHandler);\r\n        mainSearch.addEventListener('afterInitialization', afterInitializationHandler);\r\n        mainSearch.addEventListener('afterComponentsInitialization', afterMainSearchComponentsInitializationHandler);\r\n        mainSearch.addEventListener('newResultsDisplayed', newResultsDisplayedHandler);\r\n\r\n\r\n        //console.log('MainSearchHive - Coveo - ' + Coveo);\r\n        //console.log('MainSearchHive - Coveo.SearchEndpoint - ' + Coveo.SearchEndpoint);\r\n        //console.log('MainSearchHive - Coveo.SearchEndpoint.endpoints -  ' + Coveo.SearchEndpoint.endpoints);\r\n        //console.log('MainSearchHive - Coveo.SearchEndpoint.endpoints[\"default\"]  ' + Coveo.SearchEndpoint.endpoints[\"default\"]);\r\n        //console.log('Mainsearchhive - Coveo.SearchEndpoint.endpoints.default.options.restUri  ' + Coveo.SearchEndpoint.endpoints.default.options.restUri);\r\n\r\n        document.addEventListener('afterComponentsInitialization', () => {\r\n            //console.log('Slider Component initialize triggered');\r\n            if (CoveoHelper.verifyCookieConsent()) {\r\n                Coveo.disableAnalytics();\r\n            }\r\n            else {\r\n                Coveo.enableAnalytics();\r\n            }\r\n        });\r\n\r\n        Coveo.init(mainSearch, options);\r\n    }\r\n\r\n    function callMainSearchFunction(isExperienceEditorEditing, scope, SearchEndpointOptions, Metadata, templateTypes, defaultSort ) {\r\n        setTimeout(function () {\r\n            //console.log('Main Search Hive log Called');\r\n            MainSearch(isExperienceEditorEditing, scope, SearchEndpointOptions, Metadata, templateTypes, defaultSort);\r\n            //console.log('Page Loaded in Main Search');\r\n        }, 2000);\r\n\r\n    }\r\n\r\n    return function initMainSearch(args) {\r\n        return new callMainSearchFunction(args.isExperienceEditorEditing, args.scope, args.SearchEndpointOptions, args.Metadata, args.templateTypes, args.defaultSort);\r\n    }\r\n});\n",
    "(function (global) {\r\n    define('Components/Panels/CookieDisclaimerModal',[\"jquery\"],\r\n        function ($) {\r\n\r\n            function CookieDisclaimerModal(args) {\r\n                this.$el = $(args.scope);\r\n                this.cookieName = args.cookieName;\r\n                this.showPopupTimeout = args.showPopupTimeout;\r\n                this.cookieExpiration = args.cookieExpiration;\r\n                if (!args.isExperienceEditor) {\r\n                    this.init();\r\n                }\r\n            }\r\n\r\n            CookieDisclaimerModal.prototype.init = function () {\r\n                this.$el.fadeIn(this.showPopupTimeout, function (e) {\r\n                    this.$el.modal(\"show\");\r\n                    this.setCookie(this.cookieName, this.cookieExpiration);\r\n                }.bind(this));\r\n                this.$el.attr(\"data-ux-state\", \"loaded\").removeAttr(\"data-ux-args\");\r\n            }\r\n\r\n            CookieDisclaimerModal.prototype.setCookie = function (cname, exdays) {\r\n                var d = new Date();\r\n                d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\r\n                var expires = \"expires=\" + d.toUTCString();\r\n                document.cookie = cname + \"=\" + d.getTime() + \";\" + expires + \";path=/\";\r\n            }\r\n\r\n            return function init(args) {\r\n                return new CookieDisclaimerModal(args);\r\n            };\r\n        });\r\n})(this);\n",
    "(function (global) {\r\n    define('Components/Panels/CookieDisclaimerAlert',[\"jquery\", \"eventManager\"],\r\n        function ($, eventManager) {\r\n\r\n            function CookieDisclaimerAlert(args) {\r\n                this.$el = $(args.scope);\r\n                this.cookieName = args.cookieName;\r\n                this.showPopupTimeout = args.showPopupTimeout;\r\n                this.cookieExpiration = args.cookieExpiration;\r\n                if (!args.isExperienceEditor) {\r\n                    this.init();\r\n                }\r\n            }\r\n\r\n            CookieDisclaimerAlert.prototype.init = function () {\r\n                $(\"body\").append(this.$el);\r\n                this.$el.delay(this.showPopupTimeout).fadeIn(function (e) {\r\n                    this.$el.removeClass(\"hide\").addClass(\"in\");\r\n                    //this.setCookie(this.cookieName, this.cookieExpiration);\r\n                    eventManager.trigger(\"cookie.disclaimer.shown\");\r\n                }.bind(this));\r\n                this.$el.attr(\"data-ux-state\", \"loaded\").removeAttr(\"data-ux-args\");\r\n                this.$el.bind(\"closed.bs.alert\", function() {\r\n                    eventManager.trigger(\"cookie.disclaimer.hidden\");\r\n                    this.setCookie(this.cookieName, this.cookieExpiration);\r\n                }.bind(this));\r\n            }\r\n\r\n            CookieDisclaimerAlert.prototype.setCookie = function (cname, exdays) {\r\n                var d = new Date();\r\n                d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\r\n                var expires = \"expires=\" + d.toUTCString();\r\n                document.cookie = cname + \"=\" + d.getTime() + \";\" + expires + \";path=/\";\r\n            }\r\n\r\n            CookieDisclaimerAlert.prototype.getCookie = function (cname) {\r\n                var name = cname + \"=\";\r\n                var ca = document.cookie.split(';');\r\n                for (var i = 0; i < ca.length; i++) {\r\n                    var c = ca[i];\r\n                    while (c.charAt(0) === \" \") {\r\n                        c = c.substring(1);\r\n                    }\r\n                    if (c.indexOf(name) === 0) {\r\n                        return c.substring(name.length, c.length);\r\n                    }\r\n                }\r\n                return \"\";\r\n            }\r\n\r\n            return function init(args) {\r\n                return new CookieDisclaimerAlert(args);\r\n            };\r\n        });\r\n})(this);\n",
    "(function (global) {define('Components/Panels/SurvicateWidget',[\"jquery\", \"eventManager\", \"underscore\"],\r\n    function ($, eventManager, _) {\r\n\r\n        function SurvicateWidget(scope, delayValue, workspaceKey, closedExpirationValue, finishedExpirationDelayValue, showDelayValue, showDelaySearchPageValue) {\r\n            var $scope = $(scope);\r\n            this.cookieName = \"survi::\" + workspaceKey + \"::\";\r\n            this.closedExpirationValue = closedExpirationValue;\r\n            this.finishedExpirationDelayValue = finishedExpirationDelayValue;\r\n            this.isCookieDisclaimerShown = false;\r\n            this.isShowDelayExpired = false;\r\n\r\n            if ($(\".ecolab-main-search\").length > 0) {\r\n                showDelayValue = showDelaySearchPageValue;\r\n            }\r\n\r\n            setTimeout(function () {\r\n                $scope.appendTo($(\"body\"));\r\n                $scope.removeAttr(\"data-ux-module\").removeAttr(\"data-ux-state\").attr(\"src\", $scope.data(\"src\")).removeAttr(\"data-src\");\r\n            }, delayValue);\r\n\r\n            $scope.on(\"load\", function () {\r\n                var svd = window._svd;\r\n                if (svd) {\r\n                    if (svd.surveys && svd.surveys.length > 0) {\r\n                        _.each(svd.surveys, function (item) {\r\n                            item.presentation_style = item.presentation_style + \" hidden\";\r\n                        });\r\n                    }\r\n                }              \r\n                setTimeout(function () {\r\n                    this.isShowDelayExpired = true;\r\n                    if (!this.isCookieDisclaimerShown) {\r\n                        eventManager.trigger(\"survicate.survey.show.start\");\r\n                    }\r\n                }.bind(this), showDelayValue);\r\n                this.checkForExistance();               \r\n            }.bind(this));\r\n\r\n            $(window).unload(function () {\r\n                this.cleanLocalStorage();\r\n                this.cleanSessionStorage();\r\n            }.bind(this));\r\n\r\n            eventManager.subscribe(\"cookie.disclaimer.shown\", function() {\r\n                this.isCookieDisclaimerShown = true;\r\n                var $survWidget = $(\".survicate-widget\");\r\n                if ($survWidget.length > 0) {\r\n                    $survWidget.addClass(\"hidden\");\r\n                } \r\n            }.bind(this));\r\n\r\n            eventManager.subscribe(\"cookie.disclaimer.hidden\", function () {\r\n                this.isCookieDisclaimerShown = false;\r\n                if (this.isShowDelayExpired) {\r\n                    this.showWidget();\r\n                }             \r\n            }.bind(this));\r\n\r\n            eventManager.subscribe(\"survicate.survey.show.start\", function () {\r\n                this.showWidget();\r\n            }.bind(this));\r\n        }\r\n\r\n        SurvicateWidget.prototype.checkForExistance = function () {\r\n            var $survWidget = $(\".survicate-widget\");\r\n            if ($survWidget.length > 0) {\r\n                this.bindSurvicatePanelEvents($survWidget);\r\n            } else {\r\n                setTimeout(this.checkForExistance.bind(this), 500);\r\n            }\r\n        }\r\n\r\n        SurvicateWidget.prototype.showWidget = function() {\r\n            var $survWidget = $(\".survicate-widget\");\r\n            if ($survWidget.length > 0) {\r\n                $survWidget.removeClass(\"hidden\");\r\n            }\r\n            var svd = window._svd;\r\n            if (svd) {\r\n                if (svd.surveys && svd.surveys.length > 0) {\r\n                    _.each(svd.surveys, function (item) {\r\n                        item.presentation_style = item.presentation_style.replace(\" hidden\", \"\");\r\n                    });\r\n                }\r\n            }\r\n        }\r\n\r\n        SurvicateWidget.prototype.bindSurvicatePanelEvents = function ($survWidget) {\r\n            var $survWindow = $survWidget.find(\".surv-window\");\r\n            var $progress = $survWindow.find(\".surv-progress\");\r\n            var $closeBtn = $survWindow.find(\".surv-close\");\r\n            if ($closeBtn.length > 0) {\r\n                $closeBtn.on(\"click\", function () {\r\n                    this.setCookie(\"surv_closed\", this.closedExpirationValue);\r\n                }.bind(this));\r\n            }\r\n            //var $minimizeBtn = $survWindow.find(\".surv-minimize\");\r\n            //if ($minimizeBtn.length > 0) {\r\n            //    $minimizeBtn.on(\"click\", function () {\r\n            //        this.setCookie(\"surv_minimized\", 30);\r\n            //    }.bind(this));\r\n            //}\r\n            //var $closedDiv = $survWidget.find(\".surv-closed\");\r\n            //if ($closedDiv.length > 0) {\r\n            //    $closedDiv.on(\"click\", function () {\r\n            //        this.removeCookie();\r\n            //    }.bind(this));\r\n            //}\r\n            $survWidget.bind(\"DOMNodeRemoved\", function (e) {\r\n                if (this.getCookie() !== \"surv_finished\") {\r\n                    $progress = $($progress.selector);\r\n                    var progressValue = Number($progress.attr(\"style\").split(\":\")[1].trim().replace(/%;/, \"\"));\r\n                    var stepItemName = this.cookieName + \"step\";\r\n                    var step = Number(localStorage.getItem(stepItemName)) || 0;\r\n                    if (step === 0) {\r\n                        localStorage.setItem(stepItemName, progressValue);\r\n                    }\r\n                    if (progressValue === 100 || progressValue >= 100 - step) {\r\n                        this.setCookie(\"surv_finished\", this.finishedExpirationDelayValue);\r\n                    }\r\n                }\r\n            }.bind(this));\r\n        }\r\n\r\n        SurvicateWidget.prototype.cleanLocalStorage = function () {\r\n            var keyPattern = new RegExp(this.cookieName);\r\n            var i = localStorage.length;\r\n            while (i--) {\r\n                var key = localStorage.key(i);\r\n                if (keyPattern.test(key)) {\r\n                    localStorage.removeItem(key);\r\n                }\r\n            }\r\n        }\r\n\r\n        SurvicateWidget.prototype.cleanSessionStorage = function () {\r\n            var keyPattern = new RegExp(this.cookieName);\r\n            var i = sessionStorage.length;\r\n            while (i--) {\r\n                var key = sessionStorage.key(i);\r\n                if (keyPattern.test(key)) {\r\n                    sessionStorage.removeItem(key);\r\n                }\r\n            }\r\n        }\r\n\r\n        SurvicateWidget.prototype.getCookie = function () {\r\n            var matches = document.cookie.match(new RegExp(\r\n                \"(?:^|; )\" + this.cookieName.replace(/([\\.$?*|{}\\(\\)\\[\\]\\\\\\/\\+^])/g, '\\\\$1') + \"=([^;]*)\"\r\n            ));\r\n            return matches ? decodeURIComponent(matches[1]) : undefined;\r\n        }\r\n\r\n        SurvicateWidget.prototype.setCookie = function (value, exdays) {\r\n            var d = new Date();\r\n            d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\r\n            var expires = \"expires=\" + d.toUTCString();\r\n            document.cookie = this.cookieName + \"=\" + value + \";\" + expires + \";path=/\";\r\n        }\r\n\r\n        SurvicateWidget.prototype.removeCookie = function () {\r\n            var d = new Date();\r\n            d.setSeconds(d.getSeconds() + 1);\r\n            var expires = \"expires=\" + d.toUTCString();\r\n            document.cookie = this.cookieName + \"=;\" + expires + \";path=/\";\r\n        }\r\n\r\n        return function init(args) {\r\n            return new SurvicateWidget(\r\n                args.scope, args.delayValue || 500,\r\n                args.workspaceKey,\r\n                args.closedExpirationValue || 14,\r\n                args.finishedExpirationDelayValue || 30,\r\n                args.showDelayValue || 1000,\r\n                args.showDelaySearchPageValue || 2000);\r\n        };\r\n    });\r\n})(this);\n",
    "(function (global) {\r\n    define('Components/Panels/AsyncContactUs',[\"jquery\"],\r\n        function ($) {\r\n\r\n            function AsyncContactUs(args) {\r\n                this.$scope = $(args.scope);\r\n                //this.timeoutToCall = args.TimeoutToCall;\r\n                //this.searchApiUrl = args.SearchApiUrl;\r\n                //this.snippetId = args.SnippetId;\r\n                // }\r\n\r\n                // TODO: (nm) Need to remember if contact us was opened in session - Maybe use cookie???\r\n                // If Contact Us form has been opened before opening modal then set showNeedHelpModal = false;\r\n                if (sessionStorage.getItem(\"showNeedHelpModal\") == null) {\r\n                    sessionStorage.showNeedHelpModal = true;\r\n                }\r\n\r\n                // Read cookie needHelpModalShownForPages\r\n\r\n                // Close NeedHelpModal when one of buttons on it is clicked\r\n                var needHelpButtons = $(\".help-button\");\r\n                needHelpButtons.on(\"click\",\r\n                    function (e) {\r\n                        e.stopPropagation();\r\n                        e.preventDefault();\r\n\r\n                        //$(\"#needHelpModal\").modal('hide');\r\n                        $(\"#needHelpModalCloseButton\").click();\r\n\r\n                        var modalId = this.getAttribute(\"data-ecolab-modal-target\");\r\n                        $(\"\" + modalId).modal('show');\r\n\r\n                        //$(\"#needHelpModal\").hide();\r\n                        //$(\"body\").toggleClass(\"modal-open\");\r\n                    });\r\n\r\n                // Click hidden button after 90 seconds\r\n                var needHelpModalTimeout = 90000;\r\n\r\n                function openNeedHelpModal() {\r\n                    // Check cookie\r\n                    //if (document.cookie.)\r\n\r\n                    if (sessionStorage.showNeedHelpModal === \"true\") {\r\n                        $(\"#needHelpModal\").modal('show');\r\n                        sessionStorage.showNeedHelpModal = false;\r\n                    }\r\n                }\r\n\r\n                setTimeout(openNeedHelpModal, needHelpModalTimeout);\r\n\r\n                // Hide one panel when other is clicked\r\n                var panelButton0 = $(\"#ecolab-contact-us-modal-button0\");\r\n                var panelButton1 = $(\"#ecolab-contact-us-modal-button1\");\r\n                var currentActiveElement;\r\n                panelButton1.on(\"click\",\r\n                    function (e) {\r\n                        e.stopPropagation();\r\n                        e.preventDefault();\r\n                        if ($('#tab0').hasClass('in')) {\r\n                            $(\"#tab0\").modal('hide');\r\n                        }\r\n                        $(\"#tab1\").modal('show');\r\n                        sessionStorage.showNeedHelpModal = false;\r\n                        currentActiveElement = document.activeElement;\r\n                    });\r\n\r\n                panelButton0.on(\"click\",\r\n                    function (e) {\r\n                        e.stopPropagation();\r\n                        e.preventDefault();\r\n                        if ($('#tab1').hasClass('in')) {\r\n                            $(\"#tab1\").modal('hide');\r\n                        }\r\n                        $(\"#tab0\").modal('show');\r\n                        sessionStorage.showNeedHelpModal = false;\r\n                        currentActiveElement = document.activeElement;\r\n                    });\r\n\r\n\r\n                $(document).on('hidden.bs.modal',\r\n                    function () {\r\n                        if ($('.modal:visible').length) {\r\n                            $('body').addClass('modal-open');\r\n                        }\r\n                        //else {\r\n                        //    if (typeof (currentActiveElement) === 'undefined' || !currentActiveElement.length) {\r\n                        //        currentActiveElement.focus();\r\n                        //    }\r\n                        //}\r\n                    });\r\n\r\n                panelButton1.on(\"keypress\", function (event) {\r\n                    event.preventDefault();\r\n                    if (event.keyCode == 13) {\r\n                        panelButton1.trigger('click')\r\n                    }\r\n                });\r\n\r\n                panelButton0.on(\"keypress\", function (event) {\r\n                    event.preventDefault();\r\n                    if (event.keyCode == 13) {\r\n                        panelButton0.trigger('click')\r\n                    }\r\n                });\r\n            }\r\n\r\n            return function init(args) {\r\n                return new AsyncContactUs(args);\r\n            };\r\n        });\r\n})(this);\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/Accordion',[\"jquery\", \"eventManager\", \"cssEscape\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\"), require(\"cssEscape\")) :\r\n    console && console.error('Accordion does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function Accordion(scope, stateChangeMessages) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n        //#region message transmitter registration\r\n        if (stateChangeMessages.length) {\r\n            this.$scope.on(\"shown.bs.collapse hidden.bs.collapse\", function () {\r\n\r\n                stateChangeMessages.forEach(function (eventName) {\r\n                    window.console && console.info(\"Accordion raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return false;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        this._setupDeepLinking();\r\n    }\r\n\r\n    Accordion.prototype._setupDeepLinking = function () {\r\n        var that = this;\r\n        // make accordion panel with anchors change the URL to make them sticky\r\n        this.$scope.on('shown.bs.collapse',\r\n            function (e) {\r\n                var anchor = '';\r\n                var oldHash = window.location.hash.substring(1);\r\n\r\n                var anchorLink = $(e.target).closest('.panel').find('a[data-toggle=\"collapse\"][href*=\"#collapse-\"][data-anchorable=\"True\"]');\r\n                if (anchorLink.length) {\r\n                    anchor = anchorLink.attr(\"href\").replace(\"#collapse-\", \"\");\r\n                }\r\n\r\n                if (anchor) {\r\n                    window.history && window.history.pushState && window.history.pushState(null, null, '#' + anchor);\r\n                    window.location.hash = anchor;\r\n                } else {\r\n                    // if we open a panel without deep linking, we should release previously selected anchorable panel.\r\n                    if (oldHash && $(e.target).closest('.panel-group').find('a[data-toggle=\"collapse\"][href*=\"#' + CSS.escape('collapse-' + oldHash) + '\"][data-anchorable=\"True\"]').length) {\r\n                        // clear hash without page jump in modern browsers\r\n                        window.history && window.history.pushState && window.history.pushState(null, null, '');\r\n                        window.location.hash = '';\r\n                    }\r\n                    // otherwise we don't care.\r\n                }\r\n            });\r\n\r\n        // make all tabs with anchors to be visible when we walk along the browser history\r\n        $(window).on(\"hashchange\", function () {\r\n            if (!window.location.hash) return !1;\r\n            \r\n            // find a tab which should be activated within current tabset. otherwise keep tabset without any changes.\r\n            var panel = that.$scope.find('a[href=\"#' + CSS.escape('collapse-' + window.location.hash.substring(1)) + '\"]');\r\n            if (panel.length) {\r\n                panel.click();\r\n            }\r\n        });\r\n    }\r\n\r\n\r\n    Accordion.init = function init(args) {\r\n        return args.IsEditorEditing === true ? null : new Accordion(args.scope, args.StateChangeMessagesTransmitting || []);\r\n    };\r\n\r\n    return Accordion;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/AccordionPanel',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('AccordionPanel does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n    function AccordionPanel(scope, stateChangeMessages, onShowMessagesPerformer, onHideMessagePerformer) {\r\n        ///<summary>Initialize a new instance of AccordionPanel. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this;\r\n        Object.defineProperty(this, \"scope\", { enumerable: true, value: scope });\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n        //#region state change message transmitter registration\r\n        if (stateChangeMessages.length) {\r\n            this.$scope.find('.collapse').on(\"shown.bs.collapse hidden.bs.collapse\", function () {\r\n                stateChangeMessages.forEach(function (eventName) {\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region show messages performer\r\n        if (onShowMessagesPerformer.length) {\r\n            onShowMessagesPerformer.forEach(function(messageName) {\r\n                eventManager.subscribe(messageName, self.show, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region hide mesage performer\r\n        if (onHideMessagePerformer.length) {\r\n            onHideMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hide, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        this.$scope.find('.collapse').on('shown.bs.collapse', this._onPanelShowHandler.bind(this));\r\n        this.$scope.find('.collapse').on('hidden.bs.collapse', this._onPanelHideHandler.bind(this));\r\n    }\r\n\r\n    AccordionPanel.prototype._onPanelShowHandler = function (e) {\r\n        $(this).trigger('focus', [this, e]);\r\n    }\r\n\r\n    AccordionPanel.prototype._onPanelHideHandler = function (e) {\r\n        $(this).trigger('blur', [this, e]);\r\n    }\r\n\r\n    /**\r\n     * Unfold current accordion panel\r\n     */\r\n    AccordionPanel.prototype.show = function () {\r\n        this.$scope.find('.collapse').collapse('show');\r\n    }\r\n\r\n    /**\r\n     * Fold current accordion panel\r\n     */\r\n    AccordionPanel.prototype.hide = function () {\r\n        this.$scope.find('.collapse').collapse('hide');\r\n    }\r\n\r\n    AccordionPanel.init = function init(args) {\r\n        if (args.IsEditorEditing) return null;\r\n\r\n        var accordion = new AccordionPanel(args.scope,\r\n            args.StateChangeMessagesTransmitting || [],\r\n            args.ShowActionMessages || [],\r\n            args.HideActionMessages || []);\r\n\r\n        return accordion;\r\n    };\r\n\r\n    return AccordionPanel;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/BackToTop',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('Back To Top does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n    function BackToTop(scope, clickMessagesTransmitting, stateChangeMessages, onShowMessagesPerformer, onHideMessagePerformer, animationDuration, showOnScroll, showOnScrollOffset) {\r\n        ///<summary>Initialize a new instance of Back To Top. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this;\r\n        \r\n        Object.defineProperties(this, {\r\n            scope: { enumerable: true, value: scope },\r\n            $scope: { enumerable: true, value: $(scope) },\r\n            stateChangeMessages: { enumerable: true, value: stateChangeMessages.slice() }\r\n        });\r\n\r\n        BackToTop.prototype.scroll = function () {\r\n            var scrollTop = $(window).scrollTop();\r\n            if (scrollTop > showOnScrollOffset) {\r\n                this.$scope.show();\r\n            } else {\r\n                this.$scope.hide();\r\n            }\r\n        };\r\n\r\n        if (showOnScroll) {\r\n            this.scroll();\r\n\r\n            $(window).on('scroll', function () {\r\n                self.scroll();\r\n            });\r\n        }\r\n      \r\n        this.$scope.on(\"click\", function (e) { \r\n            e.preventDefault();\r\n            $('html,body').animate({\r\n                scrollTop: 0\r\n            }, animationDuration);\r\n        });\r\n\r\n        //#region click messages transmitting registration\r\n        if (clickMessagesTransmitting.length) {\r\n            this.$scope.on(\"click\", function (e) {\r\n                e.preventDefault();\r\n                clickMessagesTransmitting.forEach(function (ev) {\r\n                    eventManager.trigger(ev, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region show messages performer\r\n        if (onShowMessagesPerformer.length) {\r\n            onShowMessagesPerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.show, self);\r\n            });\r\n\r\n        }\r\n        //#endregion\r\n\r\n\r\n        //#region hide mesage performer\r\n        if (onHideMessagePerformer.length) {\r\n            onHideMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hide, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        this.$scope.on('focus', this._onFocusHandler.bind(this));\r\n        this.$scope.on('blur', this._onBlurHandler.bind(this));\r\n    }\r\n\r\n    BackToTop.prototype._onFocusHandler = function (e) {\r\n        $(this).trigger('focus', [this, e]);\r\n    }\r\n\r\n    BackToTop.prototype._onBlurHandler = function (e) {\r\n        $(this).trigger('blur', [this, e]);\r\n    }\r\n\r\n    BackToTop.prototype.show = function () {\r\n        ///<summary>Make panel visible with jQuery.show() method.</summary>\r\n        this.$scope.show();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    BackToTop.prototype.hide = function () {\r\n        ///<summary>Make panel hidden with jQuery.hide() method.</summary>\r\n        this.$scope.hide();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    BackToTop.init = function init(args) {\r\n        if (args.IsEditorEditing) return null;\r\n\r\n        var button = new BackToTop(args.scope,\r\n            args.ClickMessagesTransmitting || [],\r\n            args.StateChangeMessagesTransmitting || [],\r\n            args.ShowActionMessages || [],\r\n            args.HideActionMessages || [],\r\n            args.AnimationDuration || 1000,\r\n            args.ShowOnScroll,\r\n            args.ShowOnScrollOffset || 100);\r\n\r\n        return button;\r\n    };\r\n\r\n    return BackToTop;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/BasicMenuItem',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('BasicMenuItem does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n    function BasicMenuItem(scope, clickMessagesTransmitting) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n\r\n        //#region click messages transmitting registration\r\n        if (clickMessagesTransmitting.length) {\r\n            this.$scope.on(\"click\", \"a\", function (e) {\r\n                e.preventDefault();\r\n\r\n                clickMessagesTransmitting.forEach(function (eventName) {\r\n                    window.console && console.info(\"BasicMenuItem raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n    }\r\n\r\n    BasicMenuItem.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new BasicMenuItem(args.scope,\r\n                                args.ClickMessagesTransmitting || []);\r\n    };\r\n\r\n    return BasicMenuItem;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/BrightcoveVideo',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('TabSet does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function BrightcoveVideo(scope, stateChangeMessages, onPlayMessagesPerformer, onPauseMessagePerformer, id, allowFullScreen, showCaptioning) {\r\n        ///<summary>Initialize a new instance of YoutubeVideo. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this, instance = {};\r\n        instance.stateChangeMessages = stateChangeMessages.slice();\r\n        \r\n        Object.defineProperties(this, {\r\n            $scope: { enumerable: true, value: $(scope) },\r\n            stateChangeMessages: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.stateChangeMessages.slice();\r\n                }\r\n            },\r\n            player: { enumerable: false, value: videojs(id) },\r\n            isInteractedWithUser: { enumerable: true, configurable: true, writable: true, value: false }\r\n        });\r\n\r\n        this.addStateChangeMessage = function addStateChangeMessage(message) {\r\n            if (!message) return;\r\n            if (instance.stateChangeMessages.indexOf(message) > -1) {\r\n                console.log(\"Component is already registered for event \" + message);\r\n                return;\r\n            }\r\n            \r\n            instance.stateChangeMessages.push(String(message));\r\n        };\r\n\r\n        //#region play message performer\r\n        if (onPlayMessagesPerformer.length) {\r\n            onPlayMessagesPerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.play, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region show messages performer\r\n        if (onPauseMessagePerformer.length) {\r\n            onPauseMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.pause, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n\r\n        if (!allowFullScreen) {\r\n            self.$scope.find('.vjs-fullscreen-control').hide();\r\n        }\r\n\r\n        if (showCaptioning) {\r\n            this.player.on(\"loadedmetadata\", this._onLoadedMetadataHandler.bind(this));\r\n        }\r\n\r\n        this.player.on(\"play\", this._onPlayHandler.bind(this));\r\n        this.player.on(\"pause\", this._onPauseHandler.bind(this));\r\n    }\r\n\r\n    BrightcoveVideo.prototype._onPlayHandler = function (e) {\r\n        this.isInteractedWithUser = true;\r\n    }\r\n\r\n    BrightcoveVideo.prototype._onPauseHandler = function (e) {\r\n        this.isInteractedWithUser = true;\r\n    }\r\n\r\n    BrightcoveVideo.prototype._onLoadedMetadataHandler = function () {\r\n        // Get the browser language \r\n        var browserLanguage = navigator.language || navigator.userLanguage; // IE <= 10;\r\n        browserLanguage = browserLanguage.substr(0, 2);\r\n        // Get the captions\r\n        var trackLanguage;\r\n        var tracks = this.player.textTracks();\r\n\r\n        for (var i = 0; i < (tracks.length); i++) {\r\n            trackLanguage = tracks[i].language.substr(0, 2);\r\n            // Set the default caption language\r\n            // When the caption language equals the browser language, then set it as default \r\n            if (trackLanguage) {\r\n                if (trackLanguage === browserLanguage) {\r\n                    tracks[i].mode = \"showing\";\r\n                    return;\r\n                } else {\r\n                    tracks[i].mode = \"disabled\";\r\n                }\r\n            }\r\n        }\r\n    }\r\n\r\n    BrightcoveVideo.prototype.play = function () {\r\n        ///<summary>Start playing the video.</summary>\r\n\r\n        if (this.isInteractedWithUser) {\r\n            this.player.muted(false);\r\n            this.player.volume(1.0);\r\n        }\r\n\r\n        this.player.play();\r\n\r\n        this.transmitStateChange();\r\n    }\r\n\r\n    BrightcoveVideo.prototype.pause = function () {\r\n        ///<summary>Put the video on pause.</summary>\r\n\r\n        this.player.pause();\r\n\r\n        this.transmitStateChange();\r\n    }\r\n\r\n    BrightcoveVideo.prototype.transmitStateChange = function () {\r\n        var messages = this.stateChangeMessages, self = this;\r\n        if (messages.length) {\r\n            messages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self, self.player);\r\n            });\r\n        }\r\n\r\n    }\r\n    // #endregion\r\n\r\n    BrightcoveVideo.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new BrightcoveVideo(args.scope,\r\n                                  args.StateChangeMessagesTransmitting || [],\r\n                                  args.PlayActionMessages || [],\r\n                                  args.PauseActionMessages || [],\r\n                                  args.Id,\r\n                                  args.AllowFullScreen,\r\n                                  args.ShowCaptioning);\r\n    };\r\n\r\n    return BrightcoveVideo;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/Button',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('Button does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n    function Button(scope, clickMessagesTransmitting, stateChangeMessages, onShowMessagesPerformer, onHideMessagePerformer) {\r\n        ///<summary>Initialize a new instance of Button. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this;\r\n        Object.defineProperties(this, {\r\n            scope: { enumerable: true, value: scope },\r\n            $scope: { enumerable: true, value: $(scope) },\r\n            stateChangeMessages: { enumerable: true, value: stateChangeMessages.slice() }\r\n        });\r\n\r\n        //#region click messages transmitting registration\r\n        if (clickMessagesTransmitting.length) {\r\n            this.$scope.on(\"click\", function (e) {\r\n                e.preventDefault();\r\n                clickMessagesTransmitting.forEach(function (ev) {\r\n                    eventManager.trigger(ev, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region show messages performer\r\n        if (onShowMessagesPerformer.length) {\r\n            onShowMessagesPerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.show, self);\r\n            });\r\n\r\n        }\r\n        //#endregion\r\n\r\n\r\n        //#region hide mesage performer\r\n        if (onHideMessagePerformer.length) {\r\n            onHideMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hide, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        this.$scope.on('focus', this._onFocusHandler.bind(this));\r\n        this.$scope.on('blur', this._onBlurHandler.bind(this));\r\n    }\r\n\r\n    Button.prototype._onFocusHandler = function(e) {\r\n        $(this).trigger('focus', [this, e]);\r\n    }\r\n\r\n    Button.prototype._onBlurHandler = function(e) {\r\n        $(this).trigger('blur', [this, e]);\r\n    }\r\n\r\n    Button.prototype.show = function () {\r\n        ///<summary>Make panel visible with jQuery.show() method.</summary>\r\n        this.$scope.show();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Button.prototype.hide = function () {\r\n        ///<summary>Make panel hidden with jQuery.hide() method.</summary>\r\n        this.$scope.hide();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Button.init = function init(args) {\r\n        if (args.IsEditorEditing) return null;\r\n\r\n        var button = new Button(args.scope,\r\n            args.ClickMessagesTransmitting || [],\r\n            args.StateChangeMessagesTransmitting || [],\r\n            args.ShowActionMessages || [],\r\n            args.HideActionMessages || []);\r\n\r\n        return button;\r\n    };\r\n\r\n    return Button;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/ButtonMenuItem',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('ButtonMenuItem does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function ButtonMenuItem(scope, clickMessagesTransmitting) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"scope\", { enumerable: true, value: scope });\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n        Object.defineProperty(this, 'clickMessagesTransmitting', { enumerable: true, value: clickMessagesTransmitting });\r\n\r\n        //#region click messages transmitting registration\r\n        if (clickMessagesTransmitting.length) {\r\n            this.$scope.on(\"click\", \"a\", function (e) {\r\n                e.preventDefault();\r\n\r\n                clickMessagesTransmitting.forEach(function (eventName) {\r\n                    window.console && console.info(\"ButtonMenuItem raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        this.$scope.on('focus', 'a', this._onFocusHandler.bind(this));\r\n        this.$scope.on('blur', 'a', this._onBlurHandler.bind(this));\r\n    }\r\n\r\n    ButtonMenuItem.prototype._onFocusHandler = function (e) {\r\n        $(this).trigger('focus', [this, e]);\r\n    }\r\n\r\n    ButtonMenuItem.prototype._onBlurHandler = function (e) {\r\n        $(this).trigger('blur', [this, e]);\r\n    }\r\n\r\n    ButtonMenuItem.init = function init(args) {\r\n        if (args.IsEditorEditing) return null;\r\n\r\n        var buttonMenuItem = new ButtonMenuItem(args.scope, args.ClickMessagesTransmitting || []);\r\n\r\n        return buttonMenuItem;\r\n    };\r\n\r\n    return ButtonMenuItem;\r\n}));\n",
    "; (function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/Carousel',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('Carousel does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function Carousel(scope, carouselId) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"scope\", { enumerable: true, value: scope, writable: !1 });\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope), writable: !1 });\r\n        Object.defineProperty(this, 'lastDirection', { enumerable: !1, value: void 0, writable: !0 });\r\n\r\n        self.buildIndicator(carouselId);\r\n        self.fallbackIndicators(carouselId);\r\n\r\n        this.$scope.on('slide.bs.carousel', this._onBeforeChangeSlide.bind(this));\r\n        this.$scope.on('slid.bs.carousel', this._onAfterChangeSlide.bind(this));\r\n    }\r\n\r\n\r\n    Carousel.prototype.buildIndicator = function (carouselId) {\r\n        var slides = $('.carousel-inner .item', this.$scope).map(function (i) {\r\n            return \"<li data-target=\\\"#\" + carouselId + \"\\\" data-slide-to=\\\"\" + i + \"\\\"\" + (!i ? \" class=\\\"active\\\"\" : \"\") + \"><!-- --></li>\";\r\n        }).get().join(\"\");\r\n\r\n        if (slides.length > 0) {\r\n            this.$scope.prepend(\"<ol class=\\\"carousel-indicators\\\">\" + slides + \"</ol>\");\r\n        }\r\n    }\r\n\r\n    Carousel.prototype.fallbackIndicators = function (carouselId) {\r\n        var $carousel = this.$scope;\r\n        var id = carouselId;\r\n        var relatedIndicators = $('li[data-target=\"#' + id + '\"]', this.$scope);\r\n        $carousel.on('slid.bs.carousel', function (e) {\r\n            var index = $carousel.find('.carousel-inner .item').index($carousel.find('.carousel-inner .active'));\r\n            relatedIndicators.removeClass('active');\r\n            relatedIndicators.filter('[data-slide-to=\"' + index + '\"]').addClass('active');\r\n        });\r\n    }\r\n\r\n    /**\r\n     * Notify the world about slide is going to be changed\r\n     * @param {jQuery.Event} event from bootstrap carousel \r\n     */\r\n    Carousel.prototype._onBeforeChangeSlide = function (e) {\r\n        this.lastDirection = e.direction;\r\n        $(this).trigger('beforeChange.slider', [this, e.direction]);\r\n    }\r\n\r\n    /**\r\n     * Notify the world about slide was changed\r\n     * @param {jQuery.Event} event from bootstrap carousel \r\n     */\r\n    Carousel.prototype._onAfterChangeSlide = function (e) {\r\n        this.lastDirection = e.direction;\r\n        $(this).trigger('afterChange.slider', [this, e.direction]);\r\n    }\r\n\r\n    Carousel.init = function(args) {\r\n        if (args.IsEditorEditing) return null;\r\n\r\n        var carousel = new Carousel(args.scope, args.CarouselId || []);\r\n\r\n        return carousel;\r\n    }\r\n\r\n    return Carousel;\r\n}));\r\n\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/CarouselPane',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('CarouselPane does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function CarouselPane(scope, selectActionMessages) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n        //#region select on mesage performer\r\n        if (selectActionMessages.length) {\r\n            selectActionMessages.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.makeActive, self);\r\n            });\r\n        }\r\n        //#endregion\r\n    }\r\n\r\n    CarouselPane.prototype.makeActive = function () {\r\n        var carousel = this.$scope.closest('.carousel');\r\n\r\n        if (!carousel) {\r\n            console && console.error(\"Cannot detect carousel element. Carousel panel selection canceled.\");\r\n            return !1;\r\n        }\r\n\r\n        var index = carousel.find('.carousel-inner > .item').index(this.$scope);\r\n        carousel.carousel(index);\r\n    };\r\n\r\n\r\n    CarouselPane.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new CarouselPane(args.scope, args.SelectActionMessages || []);\r\n    };\r\n\r\n    return CarouselPane;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Utils/window',[], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory() :\r\n    console && console.error('Window does not support non-amd script loading.');\r\n}(this/* window */, function() {\r\n    return this; /* window */\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Base/PictureAsBackground',[\"jquery\", \"picturefill\", \"score_bootstrap/Utils/window\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"picturefill\"), require(\"score_bootstrap/Utils/window\")) :\r\n    console && console.error('CarouselPane does not support non-amd script loading.');\r\n}(this/* window */, function ($, picturefill, global) {\r\n\r\n    function PictureAsBackground($scope, picSelector, eePicSelector) {\r\n\r\n        if (!this.$scope) { this.$scope = $scope; }\r\n        this.picSelector = picSelector;\r\n        this.eePicSelector = eePicSelector;\r\n\r\n        // combination of a selector for the Published View HTML and a selector for the Experience Editor   \r\n        this.allPicSelector = this.picSelector + \",\" + this.eePicSelector;\r\n        // default image selector, looks into picture tag and find the default img\r\n        this.defImgSelector = this.picSelector + \" img,\" + this.eePicSelector + \" img\";\r\n\r\n        // init picturefill for an old browser\r\n        if (this.$scope.find(this.allPicSelector).length > 0) {\r\n            picturefill({ context: this.$scope.find(this.allPicSelector).get(0) });\r\n        }\r\n\r\n        $(global).on('resize.score', this._resizeHandler.bind(this));\r\n        this._updateBackgroundWhenImageLoaded();\r\n\r\n        //#region Handle EE field update event.\r\n        if (typeof Sitecore != typeof void 0 && typeof Sitecore.PageModes != typeof void 0 && Sitecore.PageModes != null && Sitecore.PageModes.PageEditor != null) {\r\n            // wrap picture object into sitecore jQuery object, since SCORE use jQuery 3.x and Sitecore is on jQuery 1.x/2.x and they aren't compatable \r\n            var $scPicture = $sc(this.$scope.find(this.allPicSelector).get(0));\r\n\r\n            var cId = Sitecore.PageModes.ChromeManager.getChrome($scPicture).controlId();\r\n            var that = this;\r\n\r\n            var originalHandleMessage = Sitecore.PageModes.ChromeTypes.Field.prototype.handleMessage;\r\n            Sitecore.PageModes.ChromeTypes.Field.prototype.handleMessage = function (message, params, sender) {\r\n                originalHandleMessage.call(this, message, params, sender);\r\n                if (message === \"chrome:field:editcontrolcompleted\" && this.controlId() == cId) {\r\n                    that._updateBackgroundWhenImageLoaded();\r\n                }\r\n            };\r\n        }\r\n        //#endregion EE handling end\r\n    }\r\n\r\n    PictureAsBackground.prototype.update = function () {\r\n        var $img = this.$scope.find(this.defImgSelector);\r\n        if (!$img.length) return;\r\n\r\n        var img = $img.get(0);\r\n        var src = img.currentSrc !== void 0 ? img.currentSrc : img.src;\r\n\r\n        // image is not set, or was cleared.\r\n        if (src.substr(-img.getAttribute('srcset').length) === img.getAttribute('srcset')) { // cannot use img.srcset because of IE11\r\n            // clear background image\r\n            this.$scope.css({ backgroundImage: \"\" });\r\n            return;\r\n        }\r\n\r\n        // update background image for the parent only in case if it was changed, otherwise don't waste our time.\r\n        if (this.$scope.css('backgroundImage') !== \"url(\" + src + \")\") {\r\n            this.$scope.css({ backgroundImage: \"url(\" + src + \")\" });\r\n        }\r\n    }\r\n\r\n    PictureAsBackground.prototype._resizeHandler = function () {\r\n        this._updateBackgroundWhenImageLoaded();\r\n    }\r\n\r\n    PictureAsBackground.prototype._updateBackgroundWhenImageLoaded = function () {\r\n        var $img = this.$scope.find(this.defImgSelector);\r\n        if ($img.get(0).complete && $img.get(0).naturalHeight > 0) {\r\n            // update background if image already loaded\r\n            this.update();\r\n        } else {\r\n            // wait until a real picture image will be loaded, Otherwise we got default image (blank image).\r\n            $img.on('load', this.update.bind(this));\r\n        }\r\n    }\r\n\r\n    \r\n\r\n    return PictureAsBackground;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/CarouselPicturePane',[\"jquery\", \"eventManager\", \"score_bootstrap/Base/PictureAsBackground\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"score_bootstrap/Base/PictureAsBackground\")) :\r\n    console && console.error('CarouselPane does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager, PictureAsBackground) {\r\n\r\n    function CarouselPicturePane(scope, selectActionMessages) {\r\n        var self = this;\r\n\r\n        Object.defineProperty(this, \"$scope\", { enumerable: !0, value: $(scope) });\r\n\r\n        //#region select on mesage performer\r\n        if (selectActionMessages.length) {\r\n            selectActionMessages.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.makeActive, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        PictureAsBackground.call(this, scope, '> .score-carousel-pic-pane-body > picture', '> .score-editField-group > .pic-thumb > picture');\r\n    }\r\n\r\n    CarouselPicturePane.prototype = Object.create(PictureAsBackground.prototype);\r\n\r\n    CarouselPicturePane.prototype.makeActive = function () {\r\n        var carousel = this.$scope.closest('.carousel');\r\n\r\n        if (!carousel) {\r\n            console && console.error(\"Cannot detect carousel element. Carousel panel selection canceled.\");\r\n            return !1;\r\n        }\r\n\r\n        var index = carousel.find('.carousel-inner > .item').index(this.$scope);\r\n        carousel.carousel(index);\r\n    };\r\n\r\n    CarouselPicturePane.init = function init(args) {\r\n        return new CarouselPicturePane(args.scope, args.SelectActionMessages || []);\r\n    };\r\n\r\n    return CarouselPicturePane;\r\n}));\n",
    "define('score_bootstrap/Models/Comments/CommentsRequest',[], function () {\r\n    \"use strict\";\r\n\r\n    function CommentsRequest(componentId, pageNumber, pageSize, pagingEnabled, orderByAscending, cascadedRepliesDepth, userLanguage, rootId) {\r\n        var instance = {\r\n                componentId: componentId,\r\n                pageNumber: pageNumber,\r\n                pageSize: pageSize,\r\n                pagingEnabled: pagingEnabled,\r\n                orderByAscending: orderByAscending,\r\n                cascadedRepliesDepth: cascadedRepliesDepth,\r\n                userLanguage: userLanguage,\r\n                rootId: rootId\r\n            };\r\n\r\n        Object.defineProperties(this, {\r\n            componentId: {\r\n                enumerable: true,\r\n                get: function () { return instance.componentId; },\r\n                set: function (value) {\r\n                    instance.componentId = value;\r\n                }\r\n            },\r\n            pageNumber: {\r\n                enumerable: true,\r\n                get: function () { return instance.pageNumber; },\r\n                set: function (value) {\r\n                    instance.pageNumber = value;\r\n                }\r\n            },\r\n            pageSize: {\r\n                enumerable: true,\r\n                get: function () { return instance.pageSize; },\r\n                set: function (value) {\r\n                    instance.pageSize = value;\r\n                }\r\n            },\r\n            pagingEnabled: {\r\n                enumerable: true,\r\n                get: function () { return instance.pagingEnabled; },\r\n                set: function (value) {\r\n                    instance.pagingEnabled = value;\r\n                }\r\n            },\r\n            orderByAscending: {\r\n                enumerable: true,\r\n                get: function () { return instance.orderByAscending; },\r\n                set: function (value) {\r\n                    instance.orderByAscending = value;\r\n                }\r\n            },\r\n            cascadedRepliesDepth: {\r\n                enumerable: true,\r\n                get: function () { return instance.cascadedRepliesDepth; },\r\n                set: function (value) {\r\n                    instance.cascadedRepliesDepth = value;\r\n                }\r\n            },\r\n            userLanguage: {\r\n                enumerable: true,\r\n                get: function () { return instance.userLanguage; },\r\n                set: function (value) {\r\n                    instance.userLanguage = value;\r\n                }\r\n            },\r\n            rootId: {\r\n                enumerable: true,\r\n                get: function () { return instance.rootId; },\r\n                set: function (value) {\r\n                    instance.rootId = value;\r\n                }\r\n            },\r\n            userLocalTimeNow: {\r\n                enumerable: true,\r\n                get: function() {\r\n                     return new Date().toString();\r\n                }\r\n            }\r\n        });\r\n    }\r\n\r\n    return CommentsRequest;\r\n});\n",
    "define('score_bootstrap/Models/Comments/PostCommentModel',[], function () {\r\n    \"use strict\";\r\n\r\n\r\n\r\n    function PostCommentModel(id, componentId, commentText, postDate, rootId, postCommentAction, userTimeOffset, userLanguage) {\r\n        var instance = {\r\n                id: id,\r\n                componentId: componentId,\r\n                commentText: commentText,\r\n                postDate: postDate,\r\n                rootId: rootId,\r\n                postCommentAction: postCommentAction,\r\n                userTimeOffset: userTimeOffset,\r\n                userLanguage: userLanguage\r\n            };\r\n\r\n        Object.defineProperties(this, {\r\n            id: {\r\n                enumerable: true,\r\n                get: function () { return instance.id; },\r\n                set: function (value) {\r\n                    instance.id = value;\r\n                }\r\n            },\r\n            componentId: {\r\n                enumerable: true,\r\n                get: function () { return instance.componentId; },\r\n                set: function (value) {\r\n                    instance.componentId = value;\r\n                }\r\n            },      \r\n            commentText: {\r\n                enumerable: true,\r\n                get: function () { return instance.commentText; },\r\n                set: function (value) {\r\n                    instance.commentText = value;\r\n                }\r\n            },\r\n            postDate: {\r\n                enumerable: true,\r\n                get: function () { return instance.postDate; },\r\n                set: function (value) {\r\n                    instance.postDate = value;\r\n                }\r\n            },\r\n            rootId: {\r\n                enumerable: true,\r\n                get: function () { return instance.rootId; },\r\n                set: function (value) {\r\n                    instance.rootId = value;\r\n                }\r\n            },\r\n            postCommentAction: {\r\n                enumerable: true,\r\n                get: function () { return instance.postCommentAction; },\r\n                set: function (value) {\r\n                    instance.postCommentAction = value;\r\n                }\r\n            },\r\n            userTimeOffset:  {\r\n                enumerable: true,\r\n                value: userTimeOffset\r\n            },\r\n            userLanguage:  {\r\n                enumerable: true,\r\n                value: userLanguage\r\n            }\r\n        });\r\n    }\r\n\r\n    return PostCommentModel;\r\n});\n",
    "define('score_bootstrap/Models/Comments/CommentsClient',[\r\n    \"jquery\",\r\n    \"errorHandler\",\r\n    \"score_bootstrap/Models/Comments/CommentsRequest\",\r\n    \"score_bootstrap/Models/Comments/PostCommentModel\"\r\n], function ($, errorHandler, CommentsRequest, PostCommentModel) {\r\n\r\n    function CommentsClient(commentsUrl, postCommentUrl) {\r\n\r\n        Object.defineProperties(this, {\r\n            commentsUrl: { value: commentsUrl },\r\n            postCommentUrl: { value: postCommentUrl }\r\n        });\r\n    }\r\n\r\n    CommentsClient.prototype.getComments = function getComments(componentId, pageNumber, pageSize, \r\n        showMoreEnabled, orderByAscending, maximumCascadedReplies, userLanguage, rootId) {\r\n\r\n        var commentsRequest = new CommentsRequest(componentId,\r\n            pageNumber,\r\n            pageSize,\r\n            showMoreEnabled,\r\n            orderByAscending,\r\n            maximumCascadedReplies,\r\n            userLanguage,\r\n            rootId);\r\n\r\n        var jqXHR = $.ajax({\r\n            url: this.commentsUrl,\r\n            data: JSON.stringify(commentsRequest),\r\n            type: \"POST\",\r\n            contentType: \"application/json; charset=utf-8\",\r\n            dataType: \"json\"\r\n        });\r\n\r\n        jqXHR.fail(errorHandler.logError);\r\n\r\n        return jqXHR;\r\n    }\r\n\r\n    CommentsClient.prototype.postComment = function postComment(id, componentId, commentText, postDate, rootId, postCommentAction, userTimeOffset, userLanguage) {\r\n        var postCommentModel =\r\n            new PostCommentModel(id, componentId, commentText, postDate, rootId, postCommentAction, userTimeOffset, userLanguage);\r\n        var jqXHR = $.ajax({\r\n            url: this.postCommentUrl,\r\n            data: JSON.stringify(postCommentModel),\r\n            type: \"POST\",\r\n            contentType: \"application/json; charset=utf-8\",\r\n            dataType: \"json\"\r\n        });\r\n\r\n        jqXHR.fail(errorHandler.logError);\r\n\r\n        return jqXHR;\r\n    }\r\n\r\n    return CommentsClient;\r\n});\n",
    "define('score_bootstrap/Models/Comments/CommentsResult',[], function () {\r\n    \"use strict\";\r\n\r\n    function CommentsResult(comments, pageNumber, totalComments, totalPages, rootId, resultStatus, userTimeOffset) {\r\n\r\n        function intOrNull(value) {\r\n            value = parseInt(value, 10);\r\n            return isNaN(value) ? null : value;\r\n        }\r\n\r\n        Object.defineProperties(this,\r\n            {\r\n                comments: {\r\n                    enumerable: true,\r\n                    value: comments || []\r\n                },\r\n                pageNumber: {\r\n                    enumerable: true,\r\n                    value: intOrNull(pageNumber)\r\n                },\r\n                totalComments: {\r\n                    enumerable: true,\r\n                    value: intOrNull(totalComments)\r\n                },\r\n                totalPages: {\r\n                    enumerable: true,\r\n                    value: intOrNull(totalPages)\r\n                },\r\n                rootId: {\r\n                    enumerable: true,\r\n                    value: intOrNull(rootId)\r\n                },\r\n                resultStatus: {\r\n                    enumerable: false,\r\n                    value: resultStatus\r\n                },\r\n                userTimeOffset:  {\r\n                    enumerable: false,\r\n                    value: userTimeOffset\r\n                }\r\n            });\r\n    }\r\n\r\n    return CommentsResult;\r\n});\n",
    "define('score_bootstrap/Models/Comments/CommentModel',[\r\n    \"jquery\",\r\n    \"knockout\"\r\n], function ($, ko) {\r\n    \"use strict\";\r\n\r\n    function CommentModel(rootId, comment, maxCommentLength, renderLoadMore, allowedCascadedReplies, pageNumber, pageSize, totalPages, orderByAscending) {\r\n\r\n        var self = this;\r\n\r\n        self.rootId = rootId;\r\n        self.allowedCascadedReplies = allowedCascadedReplies;\r\n        self.maxCommentLength = maxCommentLength;\r\n        self.pageNumber = ko.observable(pageNumber);\r\n        self.pageSize = pageSize;\r\n        self.orderByAscending = orderByAscending;\r\n        self.totalPages = ko.observable(totalPages);\r\n        self.showMoreEnabled = renderLoadMore;\r\n        self.id = ko.observable(comment.Id);\r\n        self.commentText = ko.observable(comment.CommentText);\r\n        self.newCommentText = ko.observable('');\r\n        self.createDate = ko.observable(comment.CreateDate || null);\r\n        self.editDate = ko.observable(comment.EditDate || null);\r\n        self.displayName = ko.observable(comment.DisplayName || null);\r\n        self.removeDate = ko.observable(comment.RemoveDate || null);\r\n        self.additionalUserInfo = ko.observable(comment.AdditionalUserInfo || null);\r\n        self.isCommentOwner = ko.observable(comment.IsCommentOwner || false);\r\n        self.isEdited = ko.observable(comment.IsEdited || false);\r\n        self.isRemoved = ko.observable(comment.IsRemoved || false);\r\n        self.isRestored = ko.observable(comment.IsRestored || false);\r\n        self.removedByAdmin = ko.observable(comment.RemovedByAdmin);\r\n        self.replies = ko.observableArray();\r\n        self.canReply = ko.observable(allowedCascadedReplies > 0);\r\n        self.isInFocus = ko.observable(false);\r\n\r\n        self.canShowMore = ko.pureComputed(function () {\r\n            return self.showMoreEnabled ? self.pageNumber() < self.totalPages() : false;\r\n        }, self);\r\n\r\n        self.showEditComment = ko.observable(false);\r\n        self.focusEditComment = ko.pureComputed({\r\n            read: function () {\r\n                return self.showEditComment();\r\n            },\r\n            write: function (value) {\r\n                self.showEditComment(value);                \r\n            },\r\n            owner: self\r\n        }, self).extend({ throttle: 200 });\r\n        self.editComment = function () {            \r\n            self.showEditComment(true);\r\n            if (!self.focusEditComment()) {\r\n                self.focusEditComment(true);\r\n            }\r\n        };\r\n        self.newCommentLength = ko.pureComputed(function () {\r\n            return self.newCommentText() ? self.maxCommentLength - self.newCommentText().length : self.maxCommentLength;\r\n        }, self);\r\n        self.newCommentTooLong = ko.pureComputed(function () {\r\n            var state = self.newCommentLength() < 0;\r\n            \r\n            if (state) {\r\n                self.submitButtonEnabled(false);\r\n            } else {\r\n                self.submitButtonEnabled(self.newCommentLength() !== self.maxCommentLength);\r\n            }\r\n\r\n            return state;\r\n        }, self);\r\n        \r\n        this.submitButtonEnabled = ko.observable(true);\r\n\r\n        if (comment.Replies && (self.allowedCascadedReplies > 0)) {\r\n            var nextLevelAllowedCascadedReplies = self.allowedCascadedReplies - 1;\r\n            comment.Replies.forEach(function (item) {\r\n                if (this.orderByAscending && !this.showMoreEnabled) {\r\n                    this.replies.unshift(new CommentModel(self.id(),\r\n                        item,\r\n                        self.maxCommentLength,\r\n                        false,\r\n                        nextLevelAllowedCascadedReplies,\r\n                        self.pageNumber(),\r\n                        self.pageSize,\r\n                        self.totalPages(),\r\n                        self.orderByAscending));\r\n                } else {\r\n                    this.replies.push(new CommentModel(self.id(),\r\n                        item,\r\n                        self.maxCommentLength,\r\n                        false,\r\n                        nextLevelAllowedCascadedReplies,\r\n                        self.pageNumber(),\r\n                        self.pageSize,\r\n                        self.totalPages(),\r\n                        self.orderByAscending));\r\n                }\r\n                \r\n            }, self);\r\n        }\r\n\r\n        // this stops collapsing text area in IE since IE triggers blur event after clicking on disabled button\r\n        this.stopCollapsingIETextAreaOnDisabledButtonClick = function () {\r\n            if (!self.submitButtonEnabled()) {\r\n                self.focusEditComment(true);\r\n                $(\".score-reply-area\").focus();\r\n            }\r\n        }\r\n    };\r\n\r\n    return CommentModel;\r\n});\n",
    "define('score_bootstrap/Utils/Enums',[], function() {\r\n    \"use strict\";\r\n\r\n    function Enums() {\r\n        \r\n        this.PostCommentActionEnum = {\r\n            Create: 0,\r\n            Edit: 1,\r\n            Delete: 2,\r\n            Restore: 3\r\n        };        \r\n    }\r\n\r\n    return new Enums();\r\n});\n",
    "define('score_bootstrap/Components/Comments',[\r\n    \"jquery\",\r\n    \"knockout\",\r\n    \"eventManager\",\r\n    \"score_bootstrap/Models/Comments/CommentsClient\",\r\n    \"score_bootstrap/Models/Comments/CommentsResult\",\r\n    \"score_bootstrap/Models/Comments/CommentModel\",\r\n    \"score_bootstrap/Utils/Enums\"\r\n], function (\r\n    $,\r\n    ko,\r\n    eventManager,    \r\n    CommentsClient,\r\n    CommentsResult,\r\n    CommentModel,\r\n    Enums\r\n) {\r\n    \"use strict\";\r\n\r\n    function Comments(scope, commentsUrl, postCommentUrl, isEditorEditing, stateChangeTransmitMessages, onShowMessagesPerforming, onHideMessagesPerforming, postCommentMessagesTransmitting, removeCommentMessagesTransmitting,\r\n            componentId, pageSize, showMoreEnabled, orderByAscending, maxCommentLength, maximumCascadedReplies, userLanguage) {\r\n\r\n        var self = this;\r\n\r\n        this.showMessagesPerforming = onShowMessagesPerforming || [];\r\n        this.hideMessagesPerforming = onHideMessagesPerforming || [];\r\n        this.stateChangeTransmitMessages = stateChangeTransmitMessages || [];\r\n        this.postCommentMessagesTransmitting = postCommentMessagesTransmitting || [];\r\n        this.removeCommentMessagesTransmitting = removeCommentMessagesTransmitting || [];\r\n        this.visible = ko.observable(true);\r\n        this.userAuthenticated =  ko.observable(false);\r\n        this.maxCommentLength = maxCommentLength;\r\n        this.maximumCascadedReplies = maximumCascadedReplies;\r\n        this.orderByAscending = orderByAscending;\r\n        this.commentsClient = new CommentsClient(commentsUrl, postCommentUrl);\r\n        this.serviceUnavailable = ko.observable(false);\r\n        this.results = ko.observableArray([]);\r\n        this.pageNumber = 1;\r\n        this.pageSize = pageSize;\r\n        this.componentId = componentId;\r\n        this.userLanguage = userLanguage;\r\n        this.showMoreEnabled = showMoreEnabled;\r\n        this.id = ko.observable(0);\r\n        this.userTimeOffset = 0;\r\n        this.canShowMore = ko.observable(false);\r\n        this.newCommentText = ko.observable('');\r\n        this.editingComment = ko.observable(false).extend({ throttle: 200 });\r\n        this.editModal = $(\"#editModal\");\r\n        this.deleteModal = $(\"#deleteModal\");\r\n        this.restoreModal = $(\"#restoreModal\");\r\n        this.reset = function reset(rootId) {\r\n            if (rootId === 0) {\r\n                self.results.removeAll();\r\n                self.pageNumber = 1;\r\n            } else {\r\n                var rootCommentModel = this.findComment(this.results(), rootId);\r\n\r\n                if (rootCommentModel) {\r\n                    rootCommentModel.replies.removeAll();\r\n                }\r\n            }\r\n        };\r\n\r\n        this.currentCommentLength = ko.pureComputed(function () {            \r\n            return self.maxCommentLength - self.newCommentText().length;\r\n        }, this);\r\n\r\n        this.currentCommentTooLong = ko.pureComputed(function () {\r\n            var state = self.currentCommentLength() < 0;\r\n\r\n            if (state) {\r\n                self.submitButtonEnabled(false);\r\n            } else {\r\n                self.submitButtonEnabled(self.currentCommentLength() !== self.maxCommentLength);\r\n            }\r\n\r\n            return state;\r\n        }, this);\r\n\r\n        this.submitButtonEnabled = ko.observable(true);\r\n        this.modalSubmitEnabled = ko.observable(true);\r\n\r\n        this.commentInFocus = ko.observable(null);\r\n\r\n        this.openEditModal = function(comment) {\r\n            comment.newCommentText(comment.commentText());\r\n            self.commentInFocus(comment);\r\n        };\r\n        this.openDeleteModal = function (comment) {\r\n            self.commentInFocus(comment);\r\n        }\r\n        this.openRestoreModal = function(comment) {\r\n            self.commentInFocus(comment);\r\n        };\r\n\r\n        this.cancelComment = function(comment) {\r\n            comment.newCommentText('');\r\n            console.log('click cancel on comment id' + comment.id());\r\n        };\r\n\r\n        this.submitComment = function(comment) {\r\n            self.editingComment(true);\r\n            self.submitButtonEnabled(false);\r\n            console.log('click submit on comment id' + comment.id());\r\n            self.commentsClient\r\n                .postComment(\r\n                    0, \r\n                    self.componentId,\r\n                    comment.id() ? comment.newCommentText() : self.newCommentText(),\r\n                    Date.now(),\r\n                    comment.id(),\r\n                    Enums.PostCommentActionEnum.Create,\r\n                    self.userTimeOffset,\r\n                    self.userLanguage)\r\n                .done(function(result) {\r\n                    if (result) {\r\n                        self.transmitCommentPosted();\r\n                        self.refreshToPage(1, comment.id(), result.Id, comment.showMoreEnabled);\r\n                    }\r\n                    self.editingComment(false);\r\n                    self.submitButtonEnabled(true);\r\n                    self.newCommentText('');\r\n                    comment.newCommentText('');\r\n                })\r\n                .fail(function(jqXHR, textStatus, errorThrown) {\r\n                    self.submitButtonEnabled(true);\r\n                    self.editingComment(true);\r\n                });\r\n        };\r\n\r\n        this.editComment = function (comment) {\r\n            console.log('click remove on comment id' + comment.id());\r\n            self.modalSubmitEnabled(false);\r\n            self.commentsClient\r\n                .postComment(\r\n                    comment.id(), \r\n                    self.componentId,\r\n                    comment.newCommentText(),\r\n                    Date.now(),\r\n                    comment.rootId,\r\n                    Enums.PostCommentActionEnum.Edit,\r\n                    self.userTimeOffset,\r\n                    self.userLanguage)\r\n                .done(function(result) {\r\n                    if (result) {\r\n                        self.refreshToPage(1, comment.rootId, comment.id(), comment.showMoreEnabled);\r\n                        self.transmitCommentPosted();\r\n                        self.editModal.modal('toggle');\r\n                    }\r\n                    self.modalSubmitEnabled(true);\r\n                })\r\n                .fail(function(jqXHR, textStatus, errorThrown) {\r\n                    self.modalSubmitEnabled(true);\r\n                });\r\n        };\r\n\r\n        this.deleteComment = function(comment) {\r\n            console.log('click remove on comment id' + comment.id());\r\n            self.modalSubmitEnabled(false);\r\n            self.commentsClient\r\n                .postComment(\r\n                    comment.id(), \r\n                    self.componentId,\r\n                    comment.commentText(),\r\n                    Date.now(),\r\n                    comment.rootId,\r\n                    Enums.PostCommentActionEnum.Delete,\r\n                    self.userTimeOffset,\r\n                    self.userLanguage)\r\n                .done(function(result) {\r\n                    if (result) {\r\n                        self.refreshToPage(1, comment.rootId, comment.id(), comment.showMoreEnabled);\r\n                        self.transmitCommentRemoved();\r\n                        self.deleteModal.modal('toggle');\r\n                    }\r\n                    self.modalSubmitEnabled(true);\r\n                })\r\n                .fail(function(jqXHR, textStatus, errorThrown) {\r\n                    self.modalSubmitEnabled(true);\r\n                });\r\n        };\r\n\r\n        this.restoreComment = function(comment) {\r\n            console.log('click restore on comment id' + comment.id());\r\n            self.modalSubmitEnabled(false);\r\n            self.commentsClient\r\n                .postComment(\r\n                    comment.id(), \r\n                    self.componentId,\r\n                    comment.commentText(),\r\n                    Date.now(),\r\n                    comment.rootId,\r\n                    Enums.PostCommentActionEnum.Restore,\r\n                    self.userTimeOffset,\r\n                    self.userLanguage)\r\n                .done(function(result) {\r\n                    if (result) {\r\n                        self.refreshToPage(1, comment.rootId, comment.id(), comment.showMoreEnabled);\r\n                        self.transmitCommentPosted();\r\n                        self.restoreModal.modal('toggle');\r\n                    }\r\n                    self.modalSubmitEnabled(true);\r\n                })\r\n                .fail(function(jqXHR, textStatus, errorThrown) {\r\n                    self.modalSubmitEnabled(true);\r\n                });\r\n        };\r\n\r\n        this.loadMoreComments = function() {\r\n            self.commentsClient\r\n                .getComments(this.componentId,\r\n                    this.pageNumber + 1,\r\n                    this.pageSize,\r\n                    this.showMoreEnabled,\r\n                    this.orderByAscending,\r\n                    this.maximumCascadedReplies,\r\n                    this.userLanguage,\r\n                    0)\r\n                .done(this.appendComments.bind(this));\r\n        };\r\n\r\n        this.loadMoreReplies = function (model) {\r\n            self.commentsClient\r\n                .getComments(self.componentId,\r\n                    model.pageNumber() + 1,\r\n                    self.pageSize,\r\n                    self.showMoreEnabled,\r\n                    self.orderByAscending,\r\n                    self.maximumCascadedReplies,\r\n                    self.userLanguage,\r\n                    model.id())\r\n                .done(self.appendComments.bind(self));\r\n        };\r\n\r\n        // this stops collapsing text area in IE since IE triggers blur event after clicking on disabled button\r\n        this.stopCollapsingIETextAreaOnDisabledButtonClick = function () {\r\n            if (!self.submitButtonEnabled()) {\r\n                self.editingComment(true);\r\n                $(\".score-comment-area\").focus();\r\n            }\r\n        }\r\n\r\n        if (!isEditorEditing) {\r\n            self.commentsClient\r\n                .getComments(\r\n                    this.componentId,\r\n                    this.pageNumber,\r\n                    this.pageSize,\r\n                    this.showMoreEnabled,\r\n                    this.orderByAscending,\r\n                    this.maximumCascadedReplies,\r\n                    this.userLanguage,\r\n                    0)\r\n                .done(this.appendComments.bind(this));\r\n        };\r\n\r\n        if (!isEditorEditing) {\r\n            ko.applyBindings(self, scope);\r\n        };\r\n\r\n        if (this.stateChangeTransmitMessages.length) {\r\n            stateChangeTransmitMessages.forEach(function (msg) {\r\n                eventManager.trigger(msg, self);\r\n            });\r\n        };\r\n\r\n        if (this.showMessagesPerforming.length) {\r\n            this.showMessagesPerforming.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.show, self);\r\n            });\r\n\r\n        };\r\n\r\n        if (this.hideMessagesPerforming.length) {\r\n            this.hideMessagesPerforming.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hide, self);\r\n            });\r\n        };\r\n    }\r\n\r\n    Comments.prototype.transmitCommentPosted = function transmitCommentPosted() {\r\n        if (this.postCommentMessagesTransmitting.length) {\r\n            this.postCommentMessagesTransmitting.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Comments.prototype.transmitCommentRemoved = function transmitCommentRemoved() {\r\n        if (this.removeCommentMessagesTransmitting.length) {\r\n            this.removeCommentMessagesTransmitting.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Comments.prototype.show = function () {\r\n        var self = this;\r\n\r\n        this.visible(true);\r\n\r\n        if (this.stateChangeTransmitMessages.length) {\r\n            this.stateChangeTransmitMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Comments.prototype.hide = function () {\r\n        var self = this;\r\n\r\n        this.visible(false);\r\n        \r\n        if (this.stateChangeTransmitMessages.length) {\r\n            this.stateChangeTransmitMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Comments.prototype.appendComments = function appendComments(response) {\r\n\r\n        var result = new CommentsResult(response.Comments,\r\n            response.PageNumber,\r\n            response.TotalNumberOfComments,\r\n            response.NumberOfPages,\r\n            response.RootId,\r\n            response.ResultStatus);\r\n\r\n        this.userTimeOffset = response.UserTimeOffset;\r\n        this.userAuthenticated(response.UserAuthenticated);\r\n\r\n        if (!result.resultStatus) {\r\n            this.serviceUnavailable(true);\r\n            this.visible(false);\r\n        } else {\r\n            this.serviceUnavailable(false);\r\n            this.visible(true);\r\n        }        \r\n\r\n        if (result.rootId === 0) {\r\n            if (result.pageNumber > this.pageNumber) {\r\n                this.pageNumber = result.pageNumber;    \r\n            }\r\n            if (this.showMoreEnabled) {\r\n                this.canShowMore(this.pageNumber < result.totalPages);\r\n            }\r\n        }\r\n\r\n        this.insertCommentsInOrder(result);\r\n    }\r\n\r\n    Comments.prototype.insertCommentsInOrder = function insertCommentsInOrder(result) {\r\n\r\n        if (result.rootId !== 0) {\r\n\r\n            var rootCommentModel = this.findComment(this.results(), result.rootId, null);\r\n\r\n            var targetReplies = rootCommentModel.replies;\r\n\r\n            var resultRootComment = result.comments.filter(function(comment) {\r\n                return comment.Id === result.rootId ? comment : null;\r\n            });\r\n\r\n            if (resultRootComment) {\r\n                rootCommentModel.pageNumber(resultRootComment[0].RepliesPageNumber);\r\n                rootCommentModel.totalPages(resultRootComment[0].TotalReplyPages);  \r\n\r\n                resultRootComment[0].Replies.forEach(function (item) {\r\n                    if (this.orderByAscending && !this.showMoreEnabled) {\r\n                        targetReplies.unshift(new CommentModel(\r\n                            rootCommentModel.id(),\r\n                            item,\r\n                            this.maxCommentLength,\r\n                            false,\r\n                            rootCommentModel.allowedCascadedReplies - 1,\r\n                            item.RepliesPageNumber,\r\n                            this.pageSize,\r\n                            item.TotalReplyPages,\r\n                            this.orderByAscending));\r\n                    } else {\r\n                        targetReplies.push(new CommentModel(\r\n                            rootCommentModel.id(),\r\n                            item,\r\n                            this.maxCommentLength,\r\n                            false,\r\n                            rootCommentModel.allowedCascadedReplies - 1,\r\n                            item.RepliesPageNumber,\r\n                            this.pageSize,\r\n                            item.TotalReplyPages,\r\n                            this.orderByAscending));\r\n                    }\r\n                }, this);\r\n            }\r\n        } else {\r\n            result.comments.forEach(function (item) {\r\n                if (this.orderByAscending  && !this.showMoreEnabled) {\r\n                    this.results.unshift(new CommentModel(\r\n                        0,\r\n                        item,\r\n                        this.maxCommentLength,\r\n                        this.showMoreEnabled,\r\n                        this.maximumCascadedReplies,\r\n                        item.RepliesPageNumber,\r\n                        this.pageSize,\r\n                        item.TotalReplyPages,\r\n                        this.orderByAscending));\r\n                } else {\r\n                    this.results.push(new CommentModel(\r\n                        0,\r\n                        item,\r\n                        this.maxCommentLength,\r\n                        this.showMoreEnabled,\r\n                        this.maximumCascadedReplies,\r\n                        item.RepliesPageNumber,\r\n                        this.pageSize,\r\n                        item.TotalReplyPages,\r\n                        this.orderByAscending));\r\n                }\r\n            }, this);\r\n        }\r\n    };\r\n\r\n    Comments.prototype.refreshToPage = function refreshToPage(currentPage, rootId, commentId, showMoreEnabled) {\r\n        var self = this;\r\n\r\n        this.commentsClient\r\n            .getComments(this.componentId,\r\n                currentPage,\r\n                this.pageSize,\r\n                showMoreEnabled,\r\n                this.orderByAscending,\r\n                this.maximumCascadedReplies,\r\n                this.userLanguage,\r\n                rootId)\r\n            .done(function(result) {\r\n                self.reset(rootId);    \r\n                self.appendComments(result);\r\n            })\r\n            .then(function() {\r\n                var comment = self.findComment(self.results(), commentId, null);\r\n                \r\n                comment.isInFocus(true);\r\n            });\r\n    };\r\n\r\n    Comments.prototype.findComment = function findComment(comments, commentId, result) {\r\n        var self = this;\r\n\r\n        for (var i = 0; i < comments.length; i++) {\r\n            if (comments[i].id() === commentId) {\r\n                result = comments[i];\r\n                break;\r\n            } else {\r\n                result = self.findComment(comments[i].replies(), commentId, result);\r\n            }\r\n        }\r\n\r\n        return result;\r\n    };\r\n\r\n    Comments.init = function init(args) { \r\n        return new Comments(\r\n            args.scope,\r\n            args.commentsUrl,\r\n            args.postCommentUrl,\r\n            args.IsEditorEditing,\r\n            args.StateChangeMessagesTransmitting,\r\n            args.ShowActionMessages,\r\n            args.HideActionMessages,            \r\n            args.PostCommentMessagesTransmitting,\r\n            args.RemoveCommentMessagesTransmitting,\r\n            args.componentId,\r\n            args.pageSize,\r\n            args.showMoreEnabled,\r\n            args.orderByAscending,\r\n            args.maxCommentLength,\r\n            args.maximumCascadedReplies,\r\n            args.UserLanguage);\r\n    };\r\n\r\n    return Comments;\r\n});\n",
    "define('score_bootstrap/Events/SearchRequestChangeEvent',[\"jquery\"], function ($) {\r\n    \"use strict\";\r\n\r\n    function SearchRequestChangeEvent(value) {\r\n        if (typeof value === \"object\") {\r\n            $.extend(this, value);\r\n        }\r\n    }\r\n\r\n    SearchRequestChangeEvent.eventName     = \"SearchRequestChangeEvent\";\r\n    SearchRequestChangeEvent.queryChange   = SearchRequestChangeEvent.eventName + \":queryChange\";\r\n    SearchRequestChangeEvent.deselectFacet = SearchRequestChangeEvent.eventName + \":deselectFacet\";\r\n    SearchRequestChangeEvent.clearFacets = SearchRequestChangeEvent.eventName + \":clearFacets\";\r\n    SearchRequestChangeEvent.customDataEvent = SearchRequestChangeEvent.eventName + \":customDataEvent\";\r\n    SearchRequestChangeEvent.scrollToTopResults = SearchRequestChangeEvent.eventName + \":scrollToTopResults\";\r\n\r\n    return SearchRequestChangeEvent;\r\n});\n",
    "define('score_bootstrap/Components/ContentSearch/ActiveFacets',[\r\n    \"jquery\",\r\n    \"knockout\",    \r\n    \"underscore\",\r\n    \"eventManager\",\r\n    \"score_bootstrap/Events/SearchRequestChangeEvent\"\r\n], function defineActiveFiltersListingModule(\r\n    $,\r\n    ko,    \r\n    _,\r\n    eventManager,\r\n    SearchRequestChangeEvent\r\n) {\r\n    \"use strict\";\r\n\r\n    function getActiveFacets(searchRequest) {\r\n        var activeFacets = searchRequest.facets.reduce(function(result, facet) {\r\n            var selected = _.where(facet.values, { selected: true });\r\n            if (selected) {\r\n                Array.prototype.push.apply(result, selected);\r\n            }\r\n\r\n            return result;\r\n        }, []);\r\n\r\n        return activeFacets;\r\n    }\r\n\r\n    function getActiveRangeFacets(searchRequest) {\r\n            var activeRangeFacets = searchRequest.rangeFacets.reduce(function(result, facet) {\r\n            \r\n           Array.prototype.push.apply(result, [{\r\n                id: facet.id,\r\n                value: facet.minValue + \"-\" + facet.maxValue\r\n            }]);\r\n\r\n            return result;\r\n        }, []);\r\n\r\n        return activeRangeFacets;\r\n    }\r\n\r\n    function getActiveRatingsFacets(searchRequest) {\r\n\r\n            var activeRatingsFacets = searchRequest.ratingsFacets.reduce(function(result, facet) {\r\n            \r\n            Array.prototype.push.apply(result, [{\r\n                id: facet.id,\r\n                ratings: new Array(parseInt(facet.ratingValue, 10))\r\n            }]);\r\n\r\n            return result;\r\n        }, []);\r\n\r\n        return activeRatingsFacets;\r\n    }\r\n\r\n    function ActiveFacets(scope, refreshEvents) {\r\n        var self = this;\r\n        this.facets = ko.observableArray([]);\r\n        this.rangeFacets = ko.observableArray([]);\r\n        this.ratingsFacets = ko.observableArray([]);\r\n\r\n        this.deselectFacet = function deselectFacet(facet) {\r\n            refreshEvents.forEach(function (ev) {\r\n                eventManager.trigger(SearchRequestChangeEvent.deselectFacet + \":\" + ev, facet);\r\n            });\r\n        };\r\n\r\n        this.clearAll = function clearAll() {\r\n            refreshEvents.forEach(function (ev) {\r\n                eventManager.trigger(SearchRequestChangeEvent.clearFacets + \":\" + ev);\r\n            });\r\n        };\r\n\r\n        refreshEvents.forEach(function (ev) {\r\n            eventManager.subscribe(SearchRequestChangeEvent.eventName + \":\" + ev, function (searchRequest) {\r\n                // Pagination sends a message without facets data, so preserve facets selection\r\n                if (searchRequest.facets) self.facets(getActiveFacets(searchRequest));\r\n                if (searchRequest.rangeFacets) self.rangeFacets(getActiveRangeFacets(searchRequest));\r\n                if (searchRequest.ratingsFacets) self.ratingsFacets(getActiveRatingsFacets(searchRequest));\r\n                var hasActiveFacets = self.facets().length || self.rangeFacets().length || self.ratingsFacets().length;\r\n                $('.clear-all', scope)\r\n                    .toggleClass('disabled', !hasActiveFacets)\r\n                    .attr('aria-disabled', !hasActiveFacets);\r\n            });\r\n        });\r\n\r\n        ko.applyBindings(this, scope);\r\n        $(scope).removeClass(\"js-hide-on-load\");\r\n    }\r\n\r\n    ActiveFacets.init = function init(args) {\r\n        if (args.IsEditorEditing === true) {\r\n            $(args.scope).removeClass(\"js-hide-on-load\");\r\n            return null;\r\n        }\r\n        return new ActiveFacets(args.scope, args.RefreshActionMessages || []);\r\n    };\r\n\r\n    return ActiveFacets;\r\n});\n",
    "define('score_bootstrap/Utils/UrlHelper',[\"jquery\"], function ($) {\r\n    \"use strict\";\r\n\r\n    var defaultHashDelimiter = \"/\";\r\n\r\n    function createSetRegExp(urlParam) {\r\n        /*\r\n        [\\?|&]                      Character set - Match any of these characters: [?|&]\r\n        (urlParam=[^&]+|$)          Capturing parenthesis. (x) matches x and remembers the match.\r\n            urlParam=               Explicit match\r\n            [^&]+                   Negated character set. The + quantifier causes this item to be matched 1 or more times (greedy).\r\n            |                       Or\r\n            $                       Matches end of input.\r\n        */\r\n        return new RegExp(\"([\\?|&])(\" + urlParam + \"=[^&#]+|$)\", \"gi\");\r\n    }\r\n\r\n    function createGetRegExp(urlParam) {\r\n        return new RegExp(\"[\\?|&]\" + urlParam + \"=([^&#]+|$)\", \"gi\");\r\n    }\r\n    \r\n\r\n    function UrlHelper() {\r\n        return undefined;\r\n    }\r\n\r\n    UrlHelper.prototype.getHashAsObject = function getHashAsObject(delimiter) {\r\n        return decodeURI(window.location.hash.slice(1))\r\n            .split(delimiter || defaultHashDelimiter)\r\n            .reduce(function (result, value) {\r\n                value = value.split(\"=\");\r\n                if (value.length === 2) {\r\n                    result[value[0]] = value[1];\r\n                }\r\n\r\n                return result;\r\n            }, {});\r\n    };\r\n\r\n    UrlHelper.prototype.getObjectAsHash = function getObjectAsHash(obj, delimiter) {\r\n        var hash = \"\", del = delimiter || defaultHashDelimiter;\r\n        $.each(obj, function (key, value) {\r\n            hash = hash + key + \"=\" + value + del;\r\n        });\r\n\r\n        return encodeURI(hash.substring(0, hash.length - del.length)); // cut off trailing delimiter\r\n    };\r\n\r\n    UrlHelper.prototype.getHashValue = function getHashValue(paramName, delimiter) {\r\n        return this.getHashAsObject(delimiter || defaultHashDelimiter)[paramName];\r\n    };\r\n\r\n    UrlHelper.prototype.setHashValue = function setHashValue(location, paramName, value, delimiter) {\r\n        /**\r\n         * location    - required, https://developer.mozilla.org/en-US/docs/Web/API/Location item\r\n         * paramName   - required, parameter name\r\n         * value       - required, parameter value\r\n         * delimeter   - optional, character delimiting hash parameters\r\n         */\r\n\r\n        if (typeof(location.hash) !== \"string\") {\r\n            throw new Error(\"location must implement Location\");\r\n        }\r\n\r\n        var hash = this.getHashAsObject(delimiter);\r\n        if (!value) {\r\n            delete hash[paramName];\r\n        } else {\r\n            hash[paramName] = value;\r\n        }\r\n\r\n        location.hash = this.getObjectAsHash(hash, delimiter || defaultHashDelimiter);\r\n    };\r\n\r\n    UrlHelper.prototype.getUrlParameters = function getUrlParameters(location, urlParam) {\r\n        urlParam = decodeURIComponent(urlParam);\r\n        var regExp = createGetRegExp(urlParam), url = location.href, results = [], value = regExp.exec(url);\r\n        while (value) {\r\n            results.push(value[1]);\r\n            value = regExp.exec(url);\r\n        }\r\n\r\n        return results.map(decodeURIComponent);\r\n    };\r\n\r\n    UrlHelper.prototype.setUrlParameters = function setUrlParameter(location, urlParam, value) {\r\n        value = encodeURIComponent(value);\r\n        if (location === undefined || location === null) {\r\n            throw new Error(\"No location URL implemented\");\r\n        }\r\n\r\n        var url = location.href, regExp = createSetRegExp(urlParam);\r\n\r\n        // remove hash from localtion.href, since it can be a window.location.href, as well as a \"a\" HTML element.\r\n        // later on we will restore hash from the window.location.href\r\n        url = url.replace(/\\#.+/, '');\r\n\r\n        // Remove anchor\r\n        var anchor = '';\r\n        var hashPosition = window.location.href.indexOf('#');\r\n\r\n        if (~hashPosition) {\r\n            anchor = window.location.href.substring(hashPosition + 1);\r\n            //url = window.location.href.substring(0, hashPosition);\r\n        }\r\n\r\n        // Clear out all current instances of this param in the query string\r\n        if (regExp.test(url)) {\r\n            url = url.replace(regExp, \"$1\");\r\n            // If query string was something like ?param=value&otherparam=othervalue and ew removed param=value then we would end up with ?&\r\n            if (url.indexOf(\"?&\") > -1) {\r\n                url = url.replace(\"?&\", \"?\");\r\n            }\r\n            if (url.indexOf(\"&&\") > -1) {\r\n                url = url.replace(\"&&\", \"&\");\r\n            }\r\n        }\r\n\r\n        if (value) {\r\n            if (url.indexOf(\"?\") < 0) {\r\n                url += \"?\";\r\n            } else if (new RegExp(\"[\\?&]\").test(url.slice(-1)) === false) {\r\n                url += \"&\";\r\n            }\r\n            url += (urlParam + \"=\" + value);\r\n        }\r\n\r\n        // Search by text query cannot be triggered if filter has preselected values in it\r\n        // In case we press 'Enter' or click on the 'Search' button we redirect without hash\r\n        var buttonConditions = location.classList && location.classList.contains(\"score-button\") || false;\r\n        // If it is a simple anchor - leave the hash part, otherwise erase the hash part because it might have Facet filter\r\n        var isSimpleAnchor = !/[=&]/.test(anchor);\r\n\r\n        // Append anchor back to url\r\n        if (~hashPosition && (!buttonConditions || isSimpleAnchor)) {\r\n            url += '#' + anchor;\r\n        }\r\n\r\n        if (window.location.pathname === location.pathname) {\r\n            window.history.replaceState(null, document.title, url);\r\n        }\r\n        return url;\r\n    };\r\n\r\n    UrlHelper.prototype.removeHash = function() {\r\n        var scrollV, scrollH, loc = window.location;\r\n        if (\"pushState\" in history)\r\n            history.pushState(\"\", document.title, loc.pathname + loc.search);\r\n        else {\r\n            // Prevent scrolling by storing the page's current scroll offset\r\n            scrollV = $(window).scrollTop();\r\n            scrollH = $(window).scrollLeft();\r\n\r\n            loc.hash = \"\";\r\n\r\n            // Restore the scroll offset, should be flicker free\r\n            $(window).scrollTop(scrollV);\r\n            $(window).scrollLeft(scrollH);\r\n        }\r\n    };\r\n\r\n    UrlHelper.prototype.SortDirectionKey = \"direction\";\r\n    UrlHelper.prototype.SortTypeKey = \"sort\";\r\n\r\n    return new UrlHelper(); // singleton\r\n});\n",
    "define('score_bootstrap/Models/SitecoreId',[],function () {\r\n    \"use strict\";\r\n\r\n    var re = /^\\{?[A-Za-z\\d]{8}-(?:[A-Za-z\\d]{4}-){3}[A-Za-z\\d]{12}\\}?$/;\r\n\r\n    function normalize(id) {\r\n        // TODO: need unit tests\r\n        id = id.toLowerCase();\r\n        return id.replace(\"{\", \"\").replace(\"}\", \"\");\r\n    }\r\n\r\n    function SitecoreId(id) {\r\n        var raw = String(id);\r\n        if (re.test(raw) === false) {\r\n            throw new RangeError(\"Invalid Sitecore ID string.\");\r\n        }\r\n\r\n        Object.defineProperty(this, \"guid\", { value: normalize(raw), enumerable: true });\r\n    }\r\n\r\n    SitecoreId.prototype.toString = function () {\r\n        return this.guid;\r\n    };\r\n\r\n    SitecoreId.prototype.equals = function (other) {\r\n        return !!(other) && other.isSitecoreId === true && other.guid === this.guid;\r\n    };\r\n\r\n    Object.defineProperty(SitecoreId.prototype, \"isSitecoreId\", {\r\n        enumerable: false,\r\n        value: true\r\n    });\r\n\r\n    SitecoreId.parse = function (value) {\r\n        if (!value) {\r\n            return null;\r\n        }\r\n\r\n        if (value.isSitecoreId === true) {\r\n            return value;\r\n        }\r\n\r\n        try {\r\n            return new SitecoreId(value);\r\n        }\r\n        catch (e) {\r\n            console.error(e);\r\n            return null;\r\n        }\r\n    };\r\n\r\n    SitecoreId.RegEx = re;\r\n    SitecoreId.RegExGlobal = /\\{?[A-Za-z\\d]{8}-(?:[A-Za-z\\d]{4}-){3}[A-Za-z\\d]{12}\\}?/g;\r\n\r\n    return SitecoreId;\r\n});\n",
    "define('score_bootstrap/Models/Search/IndexableItemBase',[\"jquery\", \"score_bootstrap/Models/SitecoreId\"], function ($, SitecoreId) {\r\n    \"use strict\";\r\n\r\n    function IndexableItemBase(id, title, tiles, url) {\r\n        Object.defineProperties(this, {\r\n            id:    { enumerable: true, value: SitecoreId.parse(id) },\r\n            url:   { enumerable: true, value: url },\r\n            title: { enumerable: true, value: title },\r\n            tiles: {\r\n                enumerable: true,\r\n                value: tiles.reduce(function (result, tile) {\r\n                    result[tile.Name] = tile.Html;\r\n                    return result;\r\n                }, {})\r\n            }\r\n        });\r\n    }\r\n\r\n    Object.defineProperty(IndexableItemBase.prototype, \"isIndexableItemBase\", {\r\n        enumerable: false,\r\n        value: true\r\n    });\r\n\r\n    return IndexableItemBase;\r\n});\n",
    "define('score_bootstrap/Events/SearchResponseEvent',[\r\n    \"jquery\",\r\n    \"score_ccf/extensions\",\r\n    \"../Models/Search/IndexableItemBase\"\r\n], function ($, extensions, IndexableItemBase) {\r\n    \"use strict\";\r\n\r\n    function intOrNull(value) {\r\n        value = parseInt(value, 10);\r\n        return isNaN(value) ? null : value;\r\n    }\r\n\r\n    function SearchResponseEvent(query, items, page, perPage, totalItems, totalPages, facets) {\r\n        if (items && (!$.isArray(items) || !extensions.allOfType(items, IndexableItemBase))) {\r\n            throw new TypeError(\"items should be array of IndexableItemBase\");\r\n        }\r\n\r\n        if (facets && typeof facets !== \"object\") {\r\n            throw new TypeError(\"facets should be object\");\r\n        }\r\n\r\n        Object.defineProperties(this, {\r\n            query:      {enumerable: true, value: query},\r\n            items:      { enumerable: true, value: items || []           },\r\n            facets:     { enumerable: true, value: facets || {}          },\r\n            page:       { enumerable: true, value: intOrNull(page)       },\r\n            perPage:    { enumerable: true, value: intOrNull(perPage)    },\r\n            totalItems: { enumerable: true, value: intOrNull(totalItems) },\r\n            totalPages: { enumerable: true, value: intOrNull(totalPages) }\r\n        });\r\n    }\r\n\r\n    SearchResponseEvent.eventName = \"SearchResponseEvent\";\r\n    SearchResponseEvent.serverError = SearchResponseEvent.eventName + \":serverError\";\r\n\r\n    return SearchResponseEvent;\r\n});\n",
    "define('score_bootstrap/Models/Search/FacetPanel',[\r\n    \"jquery\",\r\n    \"knockout\",\r\n    \"underscore\",\r\n    \"score_bootstrap/Models/SitecoreId\"\r\n], function ($, ko, _, SitecoreId) {\r\n    \"use strict\";\r\n\r\n    var searchLogic = [ \"and\", \"or_total_count\", \"or_incremental_count\" ];\r\n\r\n    function FacetValue(id, value, text, rowElement, isPreselected) {\r\n        var self = this;\r\n\r\n        this.id        = SitecoreId.parse(id);\r\n        this.value = value;\r\n        this.text = text;\r\n        this.selected  = ko.observable(isPreselected);\r\n        this.count     = ko.observable(0);\r\n\r\n        this.disabled = ko.computed(function () {\r\n            return self.count() === 0;\r\n        });\r\n\r\n        this.resetCount = function () {\r\n            this.count(0);\r\n        };\r\n\r\n        ko.applyBindings(this, rowElement);\r\n    }\r\n\r\n    function FacetPanel(panelElement, allPreselected) {\r\n        var $dataEl = $(\".js-facet\", panelElement),\r\n            title = $dataEl.attr(\"data-title\"),\r\n            searchLogicType = $dataEl.attr(\"data-search-logic-type\").toLowerCase(),\r\n            preselectedByTitle = allPreselected[title] || \"\",\r\n            facets = [];\r\n\r\n        $(\".js-row\", panelElement).each(function () {\r\n            var $el = $(this),\r\n                id = $el.attr(\"data-id\"),\r\n                val = $el.attr(\"data-value\"),\r\n                text = $el.find('.score-facet-value').text();\r\n            facets.push(new FacetValue(id, val, text, $el[0], preselectedByTitle.indexOf(val) > -1));\r\n        });\r\n\r\n        Object.defineProperties(this, {\r\n            title:           { value: title },\r\n            searchLogicType: { value: searchLogic.indexOf(searchLogicType) },\r\n            facets:          { get: Array.prototype.slice.bind(facets) },\r\n            asString: {\r\n                get: function () {\r\n                    var result = facets.reduce(function (result, facet) {\r\n                        return facet.selected() ? (result + facet.value + \"|\") : result;\r\n                    }, \"\");\r\n\r\n                    return result ? (this.title + \":\" + result.slice(0, -1)) : null;\r\n                }\r\n            }\r\n        });\r\n\r\n        this.selectedValues = ko.pureComputed(function () {\r\n            return _.filter(facets, function (val) {\r\n                return val.selected();\r\n            });\r\n        });\r\n\r\n        this.unselectAll = function unselectAll() {\r\n            this.selectedValues().forEach(function (value) {\r\n                value.selected(false);\r\n            });\r\n        };\r\n    }\r\n\r\n    return FacetPanel;\r\n});\n",
    "define('score_bootstrap/Models/Search/FacetRangePanel',[\r\n    \"jquery\",\r\n    \"knockout\",\r\n    \"bootstrapslider\"\r\n], function ($, ko, bootstrapslider) {\r\n    \"use strict\";\r\n\r\n    var searchLogic = [ \"and\", \"or\" ];\r\n\r\n    function FacetRangeValue(preselectedValue, rowElement, initValue) {\r\n\r\n        var self = this;\r\n\r\n        preselectedValue =  preselectedValue || initValue;\r\n        this.initValue = ko.observable(\"[\" + preselectedValue + \"]\");\r\n\r\n        this.selectedRange = ko.observable(preselectedValue || initValue);\r\n\r\n        ko.applyBindings(this, rowElement);\r\n\r\n        $(rowElement).show();\r\n        $(rowElement).slider({});\r\n        $(rowElement).on(\"slideStop\", function(slider) {\r\n            self.selectedRange(slider.value.join(\",\"));\r\n        });\r\n    }\r\n\r\n    function FacetRangePanel(panelElement, allPreselected) {\r\n        var $dataEl = $(\".js-facet\", panelElement),\r\n            title = $dataEl.attr(\"data-title\"),\r\n            searchLogicType = $dataEl.attr(\"data-search-logic-type\").toLowerCase(),\r\n            initMinValue = $dataEl.attr(\"data-min-value\"),\r\n            initMaxValue = $dataEl.attr(\"data-max-value\"),\r\n            indexFieldName = $dataEl.attr(\"data-index-field-name\"),\r\n            initValue = initMinValue + \",\" + initMaxValue,\r\n            id = $dataEl.attr(\"data-id\");\r\n\r\n        var $rangeSlider = $(\"input.score-facet-range\", panelElement);\r\n        var preselected = allPreselected && allPreselected[title] ? allPreselected[title][0] : null;\r\n        var rangeValue = new FacetRangeValue(preselected, $rangeSlider[0], initValue);\r\n\r\n        Object.defineProperties(this, {\r\n            id: {\r\n                value: id                \r\n            },\r\n            title: {\r\n                value: title\r\n            },\r\n            searchLogicType: {\r\n                value: searchLogic.indexOf(searchLogicType)\r\n            },\r\n            rangeFacet: {\r\n                get: function() {\r\n                    return rangeValue.selectedRange() !== initValue ? rangeValue.selectedRange() : null;\r\n                }\r\n            },\r\n            indexFieldName: {\r\n                get: function() {\r\n                    return indexFieldName;\r\n                }\r\n            },\r\n            asString: {\r\n                get: function () {\r\n                    var result = rangeValue.selectedRange();\r\n\r\n                    return result && (result !== initValue) ? (this.title + \":\" + result) : null;\r\n                }\r\n            }\r\n        });\r\n\r\n        this.unselectAll = function unselectAll() {\r\n            $rangeSlider.slider('setValue', [parseInt(initMinValue, 10), parseInt(initMaxValue, 10)], true, true);\r\n            rangeValue.selectedRange(initValue);\r\n        };\r\n    }\r\n\r\n    return FacetRangePanel;\r\n});\n",
    "define('score_bootstrap/Models/Search/FacetRatingsPanel',[\r\n    \"jquery\",\r\n    \"knockout\"    \r\n], function ($, ko) {\r\n    \"use strict\";\r\n\r\n    var searchLogic = [ \"and\", \"or\" ];\r\n\r\n    function FacetRatingsPanel(panelElement, allPreselected) {\r\n        var $dataEl = $(\".js-facet\", panelElement),\r\n            title = $dataEl.attr(\"data-title\"),\r\n            indexFieldName = $dataEl.attr(\"data-index-field-name\"),\r\n            searchLogicType = $dataEl.attr(\"data-search-logic-type\").toLowerCase(),\r\n            id = $dataEl.attr(\"data-id\");\r\n\r\n        var preselected = allPreselected && allPreselected[title] ? allPreselected[title][0] : null;\r\n\r\n        this.currentRatingValue = ko.observable(preselected);\r\n\r\n        Object.defineProperties(this, {\r\n            id: {\r\n                value: id\r\n            },\r\n            title: {\r\n                value: title\r\n            },\r\n            searchLogicType: {\r\n                value: searchLogic.indexOf(searchLogicType)\r\n            },\r\n            rating: {\r\n                get: function() {\r\n                    return this.currentRatingValue() && this.currentRatingValue() !== \"0\" ? this.currentRatingValue() : null;\r\n                }\r\n            },\r\n            indexFieldName: {\r\n                get: function() {\r\n                    return indexFieldName;\r\n                }\r\n            },\r\n            asString: {\r\n                get: function () {\r\n                    return this.currentRatingValue() && this.currentRatingValue() !== \"0\" ? this.title + \":\" + this.currentRatingValue() : null;\r\n                }\r\n            }\r\n        });\r\n\r\n        this.unselectAll = function unselectAll() {\r\n            this.currentRatingValue(\"0\");\r\n        };\r\n\r\n        ko.applyBindings(this, panelElement);\r\n    }\r\n\r\n    return FacetRatingsPanel;\r\n});\n",
    "define('score_bootstrap/Components/ContentSearch/FacetContainer',[\r\n   \"jquery\",\r\n   \"knockout\",\r\n   \"underscore\",\r\n   \"eventManager\",   \r\n   \"score_bootstrap/Utils/UrlHelper\",\r\n   \"score_bootstrap/Events/SearchRequestChangeEvent\",\r\n   \"score_bootstrap/Events/SearchResponseEvent\",\r\n   \"score_bootstrap/Models/Search/FacetPanel\",\r\n   \"score_bootstrap/Models/Search/FacetRangePanel\",\r\n   \"score_bootstrap/Models/Search/FacetRatingsPanel\",\r\n   \"score_bootstrap/Models/SitecoreId\"\r\n], function (\r\n   $,\r\n   ko,\r\n   _,\r\n   eventManager,   \r\n   urlHelper,\r\n   SearchRequestChangeEvent,\r\n   SearchResponseEvent,\r\n   FacetPanel,\r\n   FacetRangePanel,\r\n   FacetRatingsPanel,\r\n   SitecoreId\r\n) {\r\n    \"use strict\";\r\n\r\n    function FacetContainer(scope, uniqueId, inputChangeEvents) {\r\n        var self = this,\r\n            urlParam = uniqueId + \"facet\",\r\n            facetRangeUrlParam = urlParam + \"Range\",\r\n            facetRatingsUrlParam = urlParam + \"Ratings\",\r\n            preselected = urlHelper.getHashValue(urlParam),\r\n            rangePreselected = urlHelper.getHashValue(facetRangeUrlParam),\r\n            ratingsPreselected = urlHelper.getHashValue(facetRatingsUrlParam),\r\n            hasPreselected,\r\n            clearAllInProgress = false,\r\n            facetValues;\r\n\r\n        preselected = preselected ? preselected.split(\",\") : [];\r\n        hasPreselected = preselected.length > 0;\r\n        preselected = preselected.reduce(processPreselected, {});\r\n\r\n        rangePreselected = rangePreselected ? rangePreselected.split(\"|\") : [];\r\n        hasPreselected = hasPreselected || rangePreselected.length > 0;\r\n        rangePreselected = rangePreselected.reduce(processPreselected, {});\r\n\r\n        ratingsPreselected = ratingsPreselected ? ratingsPreselected.split(\",\") : [];\r\n        hasPreselected = hasPreselected || ratingsPreselected.length > 0;\r\n        ratingsPreselected = ratingsPreselected.reduce(processPreselected, {});\r\n\r\n        this.facetPanels = $(\".score-facet-panel\", scope).toArray().map(function (el) {\r\n            return new FacetPanel(el, preselected);\r\n        });\r\n\r\n        this.facetRangePanels = $(\".score-facet-range-panel\", scope).toArray().map(function (el) {\r\n            return new FacetRangePanel(el, rangePreselected);\r\n        });\r\n\r\n        this.facetRatingsPanels = $(\".score-facet-ratings-panel\", scope).toArray().map(function (el) {\r\n            return new FacetRatingsPanel(el, ratingsPreselected);\r\n        });\r\n\r\n        facetValues = Array.prototype.concat.apply([], _.pluck(this.facetPanels, \"facets\"));\r\n\r\n        function triggerFacetChange(selectedFacets, selectedFacetRanges, selectedFacetRatings) {\r\n            var data;\r\n            \r\n            if (selectedFacets.length || selectedFacetRanges.length || selectedFacetRatings.length) {\r\n                urlHelper.setHashValue(window.location, urlParam, selectedFacets.length ? selectedFacets.join(\",\") : null);\r\n                urlHelper.setHashValue(window.location, facetRangeUrlParam, selectedFacetRanges.length ? selectedFacetRanges.join(\"|\") : null);\r\n                urlHelper.setHashValue(window.location, facetRatingsUrlParam, selectedFacetRatings.length ? selectedFacetRatings.join(\",\") : null);\r\n            } else {\r\n                urlHelper.removeHash();\r\n            }\r\n          \r\n            if (inputChangeEvents.length) {\r\n                data = new SearchRequestChangeEvent({\r\n                    page: 0,\r\n                    startPage: 0,\r\n                    facets: self.facetPanels.map(function (facetPanel) {\r\n                        return {\r\n                            title: facetPanel.title,\r\n                            logic: facetPanel.searchLogicType,\r\n                            values: facetPanel.facets.map(function (facet) {\r\n                                return {\r\n                                    id: facet.id.toString(),\r\n                                    value: facet.value,\r\n                                    text: facet.text,\r\n                                    selected: facet.selected()\r\n                                };\r\n                            })\r\n                        };\r\n                    }),\r\n                    rangeFacets: self.facetRangePanels.filter(function (f) { return f.rangeFacet; }).map(function (facetPanel) {\r\n                        var selectedValueArray = facetPanel.rangeFacet.split(\",\");\r\n\r\n                        return {\r\n                            id: facetPanel.id,\r\n                            title: facetPanel.title,\r\n                            logic: facetPanel.searchLogicType,\r\n                            indexFieldName: facetPanel.indexFieldName,\r\n                            minValue: selectedValueArray[0], \r\n                            maxValue: selectedValueArray[1]\r\n                        }\r\n                    }),\r\n                    ratingsFacets: self.facetRatingsPanels.filter(function (f) { return f.rating; }).map(function (facetPanel) {\r\n                        return {\r\n                            id: facetPanel.id,\r\n                            title: facetPanel.title,\r\n                            logic: facetPanel.searchLogicType,\r\n                            indexFieldName: facetPanel.indexFieldName,\r\n                            ratingValue: facetPanel.rating ? facetPanel.rating : 0\r\n                        }\r\n                    })\r\n                });\r\n\r\n                inputChangeEvents.forEach(function (ev) {\r\n                    eventManager.trigger(SearchRequestChangeEvent.eventName + \":\" + ev, data);\r\n                });\r\n\r\n                // Enable/disable Clear Facets button\r\n                var hasActiveFacets = selectedFacets.length || selectedFacetRanges.length || selectedFacetRatings.length;\r\n                $('.clear-facets', scope)\r\n                    .toggleClass('disabled', !hasActiveFacets)\r\n                    .attr('aria-disabled', !hasActiveFacets);\r\n            }\r\n        }\r\n\r\n        function clearAll() {\r\n            clearAllInProgress = true;\r\n            self.facetPanels.forEach(function (panel) {\r\n                panel.unselectAll();\r\n            });\r\n            self.facetRangePanels.forEach(function (panel) {\r\n                panel.unselectAll();\r\n            });\r\n            self.facetRatingsPanels.forEach(function (panel) {\r\n                panel.unselectAll();\r\n            });\r\n\r\n            triggerFacetChange([], [], []);\r\n            clearAllInProgress = false;\r\n        }\r\n\r\n        this.selectedFacets = ko.pureComputed(function () {\r\n            return this.facetPanels.reduce(function (result, facetPanel) {\r\n                var asStr = facetPanel.asString;\r\n                if (asStr !== null) {\r\n                    result.push(asStr);\r\n                }\r\n\r\n                return result;\r\n            }, []);\r\n        }, this);\r\n\r\n        this.selectedFacetRanges = ko.pureComputed(function () {\r\n            return this.facetRangePanels.reduce(function (result, facetPanel) {\r\n                var asStr = facetPanel.asString;\r\n                if (asStr !== null) {\r\n                    result.push(asStr);\r\n                }\r\n\r\n                return result;\r\n            }, []);\r\n        }, this);\r\n\r\n        this.selectedFacetRatings = ko.pureComputed(function () {\r\n            return this.facetRatingsPanels.reduce(function (result, facetPanel) {\r\n                var asStr = facetPanel.asString;\r\n                if (asStr !== null) {\r\n                    result.push(asStr);\r\n                }\r\n\r\n                return result;\r\n            }, []);\r\n        }, this);\r\n\r\n        if (hasPreselected) {\r\n            triggerFacetChange(self.selectedFacets(), self.selectedFacetRanges(), self.selectedFacetRatings());\r\n        }\r\n\r\n        this.selectedFacets.subscribe(function (facets) {\r\n            if (clearAllInProgress === false) {\r\n                triggerFacetChange(facets, self.selectedFacetRanges(), self.selectedFacetRatings());\r\n            }\r\n        });\r\n\r\n        this.selectedFacetRanges.subscribe(function (facets) {\r\n            if (clearAllInProgress === false) {\r\n                triggerFacetChange(self.selectedFacets(), facets, self.selectedFacetRatings());\r\n            }\r\n        });\r\n\r\n        this.selectedFacetRatings.subscribe(function (facets) {\r\n            if (clearAllInProgress === false) {\r\n                triggerFacetChange(self.selectedFacets(), self.selectedFacetRanges(), facets);\r\n            }\r\n        });\r\n\r\n        this.clearAll = clearAll;\r\n\r\n        $(scope).on(\"click\", \".panel-heading\", function () {\r\n            var $this = $(this);\r\n            if ($this.hasClass(\"static\")) {\r\n                return;\r\n            }\r\n\r\n            $this.next().slideToggle();\r\n            $this.toggleClass(\"opened\").toggleClass(\"closed\");\r\n            $this.attr(\"aria-expanded\", $this.hasClass(\"opened\"));\r\n        });\r\n\r\n        $(scope).on(\"keydown\", \".panel-heading\", function (e) {\r\n            // toggle expand/collapse on spacebar press\r\n            if (e.keyCode == 32) {\r\n                $(this).click();\r\n                // disable page scrolling\r\n                return false;\r\n            }\r\n        });\r\n\r\n        function refresh(response) {\r\n            // save currently focused element to restore its focus later\r\n            var focusedInput = document.activeElement;\r\n\r\n            _.invoke(facetValues, \"resetCount\");\r\n\r\n            if (typeof (response.facets) !== \"object\") {\r\n                return;\r\n            }\r\n\r\n            $.each(response.facets, function (id, count) {\r\n                var parsed = SitecoreId.parse(id), \r\n                    facet = _.find(facetValues, function (p) {\r\n                        return p.id.equals(parsed);\r\n                    });\r\n\r\n                if (facet) {\r\n                    facet.count(count);\r\n                }\r\n            });\r\n\r\n            // restore lost focus\r\n            focusedInput.focus();\r\n        }\r\n\r\n        function deselectFacet(facet) {\r\n            var deselect = _.find(facetValues, function (fv) {\r\n                return fv.id.toString() === facet.id;\r\n            });\r\n\r\n            if (deselect) {\r\n                deselect.selected(false);\r\n            } else {\r\n                deselect = _.find(self.facetRangePanels, function (fv) {\r\n                    return fv.id.toString() === facet.id;\r\n                });                \r\n\r\n                if (!deselect) {\r\n                    deselect = _.find(self.facetRatingsPanels, function (fv) {\r\n                        return fv.id.toString() === facet.id;\r\n                    });\r\n                }   \r\n                \r\n                if (deselect) {\r\n                    deselect.unselectAll();\r\n                }\r\n            }\r\n        }        \r\n\r\n        if (inputChangeEvents.length) {\r\n            inputChangeEvents.forEach(function (ev) {\r\n                eventManager.subscribe(SearchResponseEvent.eventName + \":\" + ev, refresh);\r\n                eventManager.subscribe(SearchRequestChangeEvent.deselectFacet + \":\" + ev, deselectFacet);\r\n                eventManager.subscribe(SearchRequestChangeEvent.clearFacets + \":\" + ev, clearAll);\r\n            });\r\n        }\r\n\r\n        function processPreselected(result, current) {\r\n            var i = current.indexOf(\":\");\r\n            var facetName = current.substr(0, i);\r\n            var preselectedFacetValues = current.substr(i + 1).split(\"|\");\r\n\r\n            if (result.hasOwnProperty(facetName) === false) {\r\n                result[facetName] = [];\r\n            }\r\n\r\n            result[facetName] = result[facetName].concat(preselectedFacetValues);\r\n            return result;\r\n        }\r\n\r\n        ko.applyBindings(this, scope);\r\n    }\r\n\r\n    FacetContainer.init = function init(args) {\r\n        return args.IsEditorEditing === true ? null : new FacetContainer(\r\n            args.scope,\r\n            args.UniqueId,\r\n            args.InputChangeMessagesTransmitting || []\r\n        );\r\n    };\r\n\r\n    return FacetContainer;\r\n});\n",
    "// defines a base module for a Search Results components that uses Search Client\r\ndefine('score_bootstrap/Components/ContentSearch/SearchResultsBase',[\r\n    \"jquery\",\r\n    \"eventManager\",\r\n    \"score_bootstrap/Events/SearchResponseEvent\",\r\n    \"score_bootstrap/Events/SearchRequestChangeEvent\",\r\n    \"score_bootstrap/Utils/UrlHelper\"\r\n], function ($, eventManager, SearchResponseEvent, SearchRequestChangeEvent, urlHelper) {\r\n\r\n    function SearchResultsBase(scope, uniqueId, isLazy, refreshEvents, showMessages) {\r\n        var onSearchResponseEvent = this.onSearchResponseEvent.bind(this), page = 0, searchClient;\r\n\r\n        Object.defineProperties(this, {\r\n            scope: { enumerable: false, value: scope },\r\n            $scope: { enumerable: false, value: $(scope) },\r\n            $list: { enumerable: false, value: $(\".js-search-results\", scope) },\r\n            id: { enumerable: true, value: uniqueId },\r\n            isLazy: { enumerable: true, value: Boolean(isLazy) }, // lazy search return nothing for empty queries\r\n            refreshEvents: { enumerable: false, value: refreshEvents || [] },\r\n            showMessages: { enumerable: false, value: showMessages || [] },\r\n            searchClient: {\r\n                enumerable: false,\r\n                get: function () {\r\n                    if (!searchClient) {\r\n                        searchClient = $(\".score-search-client\", scope).data(\"ccf_module\");\r\n                    }\r\n                    return searchClient;\r\n                }\r\n            },\r\n            // this 'page' property is used by the appendTiles internals only\r\n            page: {\r\n                enumerable: true,\r\n                get: function () { return page; },\r\n                set: function (val) { page = parseInt(val, 10) || 0; }\r\n            },\r\n            tiles: {\r\n                enumerable: false,\r\n                get: function () {\r\n                    return $(\"li\", this.$list);\r\n                }\r\n            }\r\n        });\r\n\r\n        // Cannot add lister to Search Client's module because it may not be initialized yet. But the DOM element is definitely there.\r\n        $(\".score-search-client\", scope).on(SearchResponseEvent.eventName, function (ignore /*event*/, response) {\r\n            onSearchResponseEvent(response);\r\n        });\r\n\r\n        function serverError() {\r\n            self.serviceUnavailable(true);\r\n        }\r\n\r\n        if (refreshEvents.length) {\r\n            refreshEvents.forEach(function (ev) {\r\n                eventManager.subscribe(SearchResponseEvent.serverError + \":\" + ev, serverError);\r\n                eventManager.subscribe(SearchRequestChangeEvent.scrollToTopResults + \":\" + ev, this.scrollToTopResults.bind(this));\r\n            }.bind(this));\r\n        }\r\n    }\r\n\r\n    SearchResultsBase.prototype.appendTiles = function appendTiles(newTiles) {\r\n        //throw new Error(\"Not implemented function SearchResultsBase.appendTiles must be overriden\");\r\n\r\n        if (this.showMessages.length) {\r\n            this.showMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, this, newTiles);\r\n            }.bind(this));\r\n        }\r\n    };\r\n\r\n    SearchResultsBase.prototype.reset = function reset() {\r\n        throw new Error(\"Not implemented function SearchResultsBase.reset must be overriden\");\r\n    };\r\n\r\n    SearchResultsBase.prototype.onSearchResponseEvent = function onSearchResponseEvent(searchResponse) {\r\n        if (!this.isLazy || searchResponse.query || this.searchClient.searchRequest.firstActiveFacet) {\r\n            this.showLazySearchMessage(false);\r\n            this.reset();\r\n            this.appendTiles(searchResponse);\r\n        } else {\r\n            this.showLazySearchMessage(true);\r\n            this.canShowMore(false);\r\n            if (this.$scope.hasClass(\"js-hide-on-load\")) {\r\n                this.$scope.removeClass(\"js-hide-on-load\");\r\n            }\r\n        }\r\n    };\r\n\r\n    SearchResultsBase.prototype.showMore = function showMore() {\r\n        var searchClient = this.searchClient,\r\n            newPage = this.page + 1;\r\n\r\n        urlHelper.setHashValue(window.location, this.id + \"page\", newPage);\r\n        searchClient.searchRequest.page = newPage;\r\n        searchClient.searchRequest.startPage = newPage;\r\n\r\n        searchClient.search().done(this.appendTiles.bind(this));\r\n    };\r\n\r\n    SearchResultsBase.howManyTilesPerRow = function howManyTilesPerRow($list) {\r\n        var tilesInRow = 0;\r\n        $list.find(\"li\").each(function () {\r\n            var $this = $(this), $prev = $this.prev();\r\n            if ($prev.length && $this.position().top !== $prev.position().top) {\r\n                return false;\r\n            }\r\n\r\n            tilesInRow = tilesInRow + 1;\r\n        });\r\n\r\n        return tilesInRow;\r\n    };\r\n\r\n    SearchResultsBase.injectPromoTiles = function injectPromoTiles(component, originalQuantity) {\r\n        if (!component.hasOwnProperty(\"promoTiles\")) {\r\n            throw new Error(\"component.promoTiles must be defined to use static helper SearchResultsBase.injectPromoTiles\");\r\n        }\r\n\r\n        var newPromoTiles = [];\r\n\r\n        component.promoTiles.forEach(function (promoTile) {\r\n            if (promoTile.index <= originalQuantity || promoTile.index > (component.tiles.length + 1)) {\r\n                return;\r\n            }\r\n\r\n            var insertElement = $(\"<li class='promo-tile-li'></li>\").append(promoTile.tileHtml);\r\n\r\n            if (promoTile.index === 1) {\r\n                $(component.tiles[0]).before(insertElement);\r\n            } else {\r\n                $(component.tiles.get(promoTile.index - 2)).after(insertElement);\r\n            }\r\n\r\n            $(\".score-promo-tile\", insertElement);\r\n            newPromoTiles.push(insertElement[0]);\r\n        });\r\n\r\n        return newPromoTiles;\r\n    };\r\n\r\n    SearchResultsBase.getLastRowTiles = function getLastRowTiles(component) {\r\n        if (!component.hasOwnProperty(\"tiles\") || !component.hasOwnProperty(\"tilesPerRow\")) {\r\n            throw new Error(\"component.tiles and component.tilesPerRow must be defined to use static helper SearchResultsBase.getLastRowTiles\");\r\n        }\r\n\r\n        var tiles = component.tiles.toArray(), tilesPerRow = component.tilesPerRow, mod;\r\n\r\n        // When additional tiles are appended via 'show more', we want to run matchHeight on just\r\n        // the new tiles to avoid changing the tiles already on the screen and causing the scroll\r\n        // position to jump. However, if the math of tiles-per-page works out so that the last row\r\n        // of the old tiles ends up with both, old and new, tiles, then the tiles in that row should\r\n        // be included in matchHeight\r\n\r\n        // Divides total number of elements by number of tiles-per-row, returning remainder. This is\r\n        // how we figure out which elements are in the last row.\r\n        mod = tiles.length % tilesPerRow;\r\n        return tiles.slice(-1 * (mod || tilesPerRow));\r\n    };\r\n\r\n    SearchResultsBase.prototype.scrollToTopResults = function () {\r\n        $(\"html, body\").animate({\r\n            scrollTop: $(this.scope).offset().top\r\n        },\r\n        \"slow\");\r\n    }\r\n\r\n    return SearchResultsBase;\r\n});\n",
    "define('score_bootstrap/Models/Tile',[\"knockout\"], function (ko) {\r\n    \"use strict\";\r\n\r\n    function Tile(item, tileName) {\r\n        if (item && item.isIndexableItemBase !== true) {\r\n            throw new TypeError(\"Tile constructor param 'item' must be IndexableItemBase\");\r\n        }\r\n\r\n        this.id = String(item.id);\r\n        this.element = ko.observable();\r\n        this.tileHtml = item ? item.tiles[tileName] : \"\";\r\n    }\r\n\r\n    return Tile;\r\n});\n",
    "define('score_bootstrap/Models/Search/SearchRequest',[\"jquery\", \"score_bootstrap/Utils/UrlHelper\"], function ($, urlHelper) {\r\n    \"use strict\";\r\n\r\n    // maps to Score.BootstrapUI.Web.Areas.ScoreBootstrapUI.Models.ContentSearch.SearchApiComponent\r\n    var searchApiComponentEnum = [\"SearchResults\", \"SuggestionSection\"];\r\n\r\n    function getFirstActiveFacet(facet) {\r\n        return facet.values.find(function(value) {\r\n            return value.selected;\r\n        });\r\n    }\r\n\r\n    function SearchRequest(selectedFacets, selectedRangeFacets, selectedRatingsFacets) {\r\n\r\n        var urlQueryParam = \"q\",\r\n            queryInUrl = urlHelper.getUrlParameters(window.location, urlQueryParam),\r\n            instance = {\r\n                startPage : 0,\r\n                page: 0,\r\n                perPage: 9,\r\n                query: queryInUrl.length ? queryInUrl[0] : \"\",\r\n                root: \"\",\r\n                indexName: \"\",\r\n                facets: $.isArray(selectedFacets) ? selectedFacets : [],\r\n                rangeFacets: $.isArray(selectedRangeFacets) ? selectedRangeFacets : [],\r\n                ratingsFacets: $.isArray(selectedRatingsFacets) ? selectedRatingsFacets : [],\r\n                templates: [],\r\n                language: \"en\",\r\n                tileNames: [],\r\n                component: 0,\r\n                customData: {}\r\n            };\r\n\r\n        Object.defineProperties(this, {\r\n            startPage: {\r\n                enumerable: true,\r\n                get: function () { return instance.startPage; },\r\n                set: function (value) {\r\n                    var valueAsInt = parseInt(value, 10);\r\n                    if (!isNaN(valueAsInt)) {\r\n                        instance.startPage = valueAsInt;\r\n                    }\r\n                }\r\n            },\r\n            page: {\r\n                enumerable: true,\r\n                get: function () { return instance.page; },\r\n                set: function (value) {\r\n                    var valueAsInt = parseInt(value, 10);\r\n                    if (!isNaN(valueAsInt)) {\r\n                        instance.page = valueAsInt;\r\n                    }\r\n                }\r\n            },\r\n            perPage: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.perPage;\r\n                },\r\n                set: function (value) {\r\n                    var valueAsInt = parseInt(value, 10);\r\n                    if (!isNaN(valueAsInt) && valueAsInt > 0) {\r\n                        instance.perPage = valueAsInt;\r\n                    }\r\n                }\r\n            },\r\n            query: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    var query = urlHelper.getUrlParameters(window.location, urlQueryParam);\r\n                    return query.length ? query[0] : \"\";\r\n                },\r\n                set: function (value) {\r\n                    urlHelper.setUrlParameters(window.location, urlQueryParam, String(value || \"\"));\r\n                }\r\n            },\r\n            root: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.root;\r\n                },\r\n                set: function (value) {\r\n                    instance.root = String(value);\r\n                }\r\n            },\r\n            indexName: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.indexName;\r\n                },\r\n                set: function (value) {\r\n                    instance.indexName = String(value);\r\n                }\r\n            },\r\n            facets: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.facets;\r\n                },\r\n                set: function (value) {\r\n                    if ($.isArray(value)) {\r\n                        instance.facets = value.slice();\r\n                    }\r\n                }\r\n            },\r\n            rangeFacets: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.rangeFacets;\r\n                },\r\n                set: function (value) {\r\n                    if ($.isArray(value)) {\r\n                        instance.rangeFacets = value.slice();\r\n                    }\r\n                }\r\n            },\r\n            ratingsFacets: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.ratingsFacets;\r\n                },\r\n                set: function (value) {\r\n                    if ($.isArray(value)) {\r\n                        instance.ratingsFacets = value.slice();\r\n                    }\r\n                }\r\n            },\r\n            templates: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.templates;\r\n                },\r\n                set: function (value) {\r\n                    if ($.isArray(value)) {\r\n                        instance.templates = value.slice();\r\n                    }\r\n                }\r\n            },\r\n            language: {\r\n                enumerable: true,\r\n                get: function () { return instance.language; },\r\n                set: function (value) {\r\n                    if (value) {\r\n                        instance.language = String(value);\r\n                    }\r\n                }\r\n            },\r\n            tileNames: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.tileNames;\r\n                },\r\n                set: function (value) {\r\n                    instance.tileNames = value.slice(0);\r\n                }\r\n            },\r\n            component: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.component;\r\n                },\r\n                set: function (value) {\r\n                    instance.component = searchApiComponentEnum.indexOf(value);\r\n                }\r\n            },\r\n            customData: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.customData;\r\n                },\r\n                set: function (value) {\r\n                    instance.customData = value;\r\n                }\r\n            },\r\n            firstActiveFacet: {\r\n                enumerable: false,\r\n                get: function () {\r\n                    return instance.facets.length ? instance.facets.find(getFirstActiveFacet) : null;\r\n                }\r\n            }\r\n        });\r\n\r\n        this.addTileRequest = function addTileRequest(tileName) {\r\n            if (tileName && typeof (tileName) === \"string\")\r\n                instance.tileNames.push(tileName);\r\n        };\r\n    }\r\n\r\n    return SearchRequest;\r\n});\n",
    "define('score_bootstrap/Events/MultiViewSearchResultsEvent',[\"jquery\"], function ($) {\r\n    \"use strict\";\r\n\r\n    function MultiViewSearchResultsEvent(value) {\r\n        if (typeof value === \"object\") {\r\n            $.extend(this, value);\r\n        }\r\n    }\r\n\r\n    MultiViewSearchResultsEvent.hasMoreResults = \"has-more-results\";\r\n    MultiViewSearchResultsEvent.noMoreResults = \"no-more-results\";\r\n    \r\n\r\n    return MultiViewSearchResultsEvent;\r\n});\n",
    "define('score_bootstrap/Components/ContentSearch/MultiViewSearchResults',[\r\n    \"jquery\",\r\n    \"knockout\",\r\n    \"eventManager\",\r\n    \"score_bootstrap/Components/ContentSearch/SearchResultsBase\",\r\n    \"score_bootstrap/Models/Tile\",\r\n    \"score_bootstrap/Models/Search/SearchRequest\",\r\n    \"score_bootstrap/Events/SearchResponseEvent\",\r\n    \"score_bootstrap/Events/MultiViewSearchResultsEvent\",\r\n    \"score_bootstrap/Utils/UrlHelper\"\r\n    \r\n], function (\r\n    $,\r\n    ko,\r\n    eventManager,\r\n    SearchResultsBase,\r\n    Tile,\r\n    SearchRequest,\r\n    SearchResponseEvent,\r\n    MultiViewSearchResultsEvent,\r\n    urlHelper\r\n) {\r\n    \"use strict\";\r\n\r\n    function MultiViewSearchResults(scope, uniqueId, refreshEvents, showTransmitMsg, stateChangeTransmitMsg, showMoreActionMsg, showQvActionMsg, lazySearch) {\r\n        var searchViews = null, self = this;\r\n\r\n        this.query = ko.observable(\"\");\r\n        this.serviceUnavailable = ko.observable(false);\r\n        this.numberOfResults = ko.observable(\"\");\r\n        this.canShowMore = ko.observable();\r\n        this.showLazySearchMessage = ko.observable(false);\r\n\r\n        Object.defineProperties(this, {\r\n            searchViews: {\r\n                enumerable: false,\r\n                get: function () {\r\n                    if (searchViews == null) {\r\n                        searchViews = $(\".score-search-results-view\", scope).map(function () {\r\n                            return $(this).data(\"ccf_module\");\r\n                        }).get();\r\n                    }\r\n                    return searchViews;\r\n                }\r\n            },\r\n            activeView: {\r\n                enumerable: false,\r\n                get: function () {\r\n                    var activeViews = $.grep(this.searchViews, function (view) {\r\n                        return view.isActive;\r\n                    });\r\n                    return activeViews.length > 0 ? activeViews[0] : null;\r\n                }\r\n            }\r\n        });\r\n\r\n        // show the first view on page load\r\n        var subscription = eventManager.subscribe(\"ModulesLoadedEvent\", function (ev) {\r\n            // append the initial search load with info from the first view\r\n            var view = this.searchViews[0], self = this;\r\n\r\n            this.searchClient.searchRequest.perPage = view.tilesPerPage;\r\n\r\n            // Change some parameters for initial page loading when the 'switchToClassicPager' is false \r\n            // and the component has selected page of results different from first.\r\n            // Need to have results from first page to defined in url. \r\n            if (!view.switchToClassicPager) {\r\n                var currentPageParameter = urlHelper.getHashValue(this.id + \"page\");\r\n                if (currentPageParameter) {\r\n                    var currentPage = parseInt(currentPageParameter) | 0;\r\n                    this.searchClient.searchRequest.perPage = parseInt(view.tilesPerPage) * (currentPage + 1);\r\n                    this.searchClient.searchRequest.page = 0;\r\n                    this.searchClient.searchRequest.startPage = 0;\r\n                    this.page = 0;\r\n                    // Get back the parameters after initial page loading\r\n                    var pageLoadedSubscription = eventManager.subscribe(\"SearchResponseEvent:pageLoaded\", function (data) {\r\n                        this.searchClient.searchRequest.perPage = view.tilesPerPage;\r\n                        this.searchClient.searchRequest.page = currentPage;\r\n                        this.searchClient.searchRequest.startPage = currentPage;\r\n                        this.page = currentPage;\r\n                        // Ensure that this event handler is called only once\r\n                        eventManager.unsubscribe(pageLoadedSubscription);\r\n                    }.bind(this));\r\n                }\r\n            }\r\n\r\n            this.searchClient.searchRequest.tileNames = [view.tileName, view.quickViewTileName];\r\n            view.show();\r\n\r\n            // subscribe to view's 'show' events\r\n            $(this.searchViews).on(\"SearchResultsView.show\", function (ev) {\r\n                // freeze height while tabs are changing so that elements under the search results don't jump up and down\r\n                self.$scope.css(\"height\", self.$scope.height());\r\n\r\n                self.searchClient.searchRequest.perPage = this.tilesPerPage;\r\n\r\n                // Change some parameters for initial page loading when the 'switchToClassicPager' is false\r\n                // and the component has selected page of results different from first.\r\n                // Need to have results from first page to defined in url. \r\n                if (!this.switchToClassicPager) {\r\n                    var currentPageParameter = urlHelper.getHashValue(self.id + \"page\");\r\n                    if (currentPageParameter /*&& !initialResultLoadedForEachView*/) {\r\n                        var currentPage = parseInt(currentPageParameter) | 0;\r\n                        self.searchClient.searchRequest.perPage = parseInt(this.tilesPerPage) * (currentPage + 1);\r\n                        self.searchClient.searchRequest.page = 0;\r\n                        self.searchClient.searchRequest.startPage = 0;\r\n                        self.page = 0;\r\n                        // Get back the parameters after rendering of search tiles\r\n                        var searchRenderedSubscription = eventManager.subscribe(\"search-rendered\", function (data) {\r\n                            self.searchClient.searchRequest.perPage = this.tilesPerPage;\r\n                            self.searchClient.searchRequest.page = currentPage;\r\n                            self.searchClient.searchRequest.startPage = currentPage;\r\n                            self.page = currentPage;\r\n                            // Ensure that this event handler is called only once\r\n                            eventManager.unsubscribe(searchRenderedSubscription);\r\n                        }.bind(this));\r\n                    }\r\n                }\r\n\r\n                self.searchClient.searchRequest.tileNames = [this.tileName, this.quickViewTileName];\r\n                self.searchClient.search().done(self.appendTiles.bind(self));\r\n            })\r\n            .on(\"SearchResultsView.showPage\", function(ev, newPage) {\r\n                urlHelper.setHashValue(window.location, this.id + \"page\", newPage);\r\n\r\n                self.searchClient.searchRequest.page = newPage;\r\n                self.searchClient.searchRequest.startPage = newPage;\r\n                self.searchClient.searchRequest.perPage = this.tilesPerPage;\r\n                self.searchClient.searchRequest.tileNames = [this.tileName, this.quickViewTileName];\r\n\r\n                var searchProm = self.searchClient.search();\r\n                //searchProm.done((function () { this.results.removeAll(); }).bind(this));\r\n                searchProm.done(self.appendTiles.bind(self));\r\n            });\r\n\r\n            // Ensure that this event handler is called only once\r\n            eventManager.unsubscribe(subscription);\r\n\r\n            //moduleLoader.loadPendingModules(this.activeView.$list);\r\n        }.bind(this));\r\n\r\n        if (showMoreActionMsg.length) {\r\n            showMoreActionMsg.forEach(function (msg) {\r\n                eventManager.subscribe(msg, function () {\r\n                    self.showMore();\r\n                });\r\n            });\r\n        }\r\n\r\n        if (showQvActionMsg.length) {\r\n            showQvActionMsg.forEach(function (msg) {\r\n                eventManager.subscribe(msg, function (component) {\r\n                    var $li = component.$scope.closest(\"li\"),\r\n                        view = self.activeView,\r\n                        tile = view.getQuickViewTileByElement($li);\r\n\r\n                    view.showQuickView(tile, $li);\r\n                });\r\n            });\r\n        }\r\n\r\n        if (stateChangeTransmitMsg.length) {\r\n            this.canShowMore.subscribe(function (canShowMore) {\r\n                stateChangeTransmitMsg.forEach(function (msg) {\r\n                    if ((msg == MultiViewSearchResultsEvent.hasMoreResults && canShowMore) ||\r\n                        (msg == MultiViewSearchResultsEvent.noMoreResults && !canShowMore)) {\r\n                            eventManager.trigger(msg, self);\r\n                    }\r\n                });\r\n            });\r\n        }\r\n\r\n        ko.applyBindings(this, scope);\r\n\r\n        SearchResultsBase.call(this, scope, uniqueId, lazySearch, refreshEvents, showTransmitMsg);\r\n    }\r\n\r\n    MultiViewSearchResults.prototype = Object.create(SearchResultsBase.prototype);\r\n\r\n    MultiViewSearchResults.prototype.reset = function reset() {\r\n        this.page = 0;\r\n        this.searchViews.forEach(function (view) {\r\n            view.reset();\r\n        });\r\n    };\r\n\r\n    MultiViewSearchResults.prototype.appendTiles = function appendTiles(response) {\r\n        var isLoadMore = false;\r\n        this.serviceUnavailable(false);\r\n\r\n        if (response.page !== this.page) {\r\n            urlHelper.setHashValue(window.location, this.id + \"page\", String(response.page));\r\n        }\r\n\r\n        if (response.page <= this.page) {\r\n            // When there is a new search response, current tiles should always be cleared out first,\r\n            // unless the 'page' value has been incremeneted, which means that 'show more' was clicked\r\n            // this.page = 0;\r\n            this.activeView.reset();\r\n        } else {\r\n            // 'show more' was clicked, so page should be incremented\r\n            this.page = response.page;\r\n            isLoadMore = true;\r\n        }\r\n\r\n        this.canShowMore((response.page + 1) < response.totalPages);\r\n        this.numberOfResults(response.totalItems);\r\n        this.query(response.query);\r\n\r\n        var newTiles = this.activeView.appendTiles(response, isLoadMore);\r\n\r\n        if (this.$scope.hasClass(\"js-hide-on-load\")) {\r\n            this.$scope.removeClass(\"js-hide-on-load\");\r\n        }\r\n\r\n        this.$scope.css(\"height\", \"\");\r\n\r\n        // call base class implementation\r\n        SearchResultsBase.prototype.appendTiles.call(this, newTiles);\r\n    };\r\n\r\n    MultiViewSearchResults.init = function init(args) {\r\n        return new MultiViewSearchResults(\r\n            args.scope,\r\n            args.UniqueId,\r\n            args.RefreshActionMessages || [],\r\n            args.ShowMessagesTransmitting || [],\r\n            args.StateChangeMessagesToTransmitOn || [],\r\n            args.ShowMoreMessagesToPerformOn || [],\r\n            args.ShowQuickViewMessagesToPerformOn ||[],\r\n            args.LazySearch);\r\n    };\r\n\r\n    return MultiViewSearchResults;\r\n});\n",
    "define('score_bootstrap/Components/ContentSearch/QuickView',[ \"jquery\"], function ($) {\r\n\r\n    function QuickView(scope) {\r\n        var $scope = $(\"li\", scope).remove();\r\n\r\n        this.index = -1;\r\n\r\n        Object.defineProperties(this, {\r\n            $scope: { enumerable: false, value: $scope },\r\n            $body: { enumerable: false, value: $(\".quick-view-body\", $scope) },\r\n            $prevBtn: { enumerable: false, value: $(\".controls-back\", $scope) },\r\n            $nextBtn: { enumerable: false, value: $(\".controls-forward\", $scope) }\r\n        });\r\n\r\n        // Clicking on \"Quick View\" link inserts quick view element into search results grid and loads quick view tile html\r\n        //$(this.scope).on(\"click\", \".quick-view-link\", function (event) {\r\n        //    event.preventDefault();\r\n        //    event.stopPropagation();\r\n        //    $(\".bj-product-quick-view\").removeClass(\"search-loaded\");\r\n        //\r\n        //    var $anchor = $(event.target), $li = $anchor.closest(\"li\"), url = $anchor.attr(\"href\");\r\n        //\r\n        //    this.quickView.$scope.remove();\r\n        //    toggleQuickViewButtons($li.index(), this.tiles.length, this.quickView.$prevBtn, this.quickView.$nextBtn);\r\n        //    this.showQuickView($li);\r\n        //    this.quickView.showTile($li, url);\r\n        //}.bind(this))\r\n        //.on(\"click\", \".\" + quickViewClass + \" .close\", this.hideQuickView.bind(this))\r\n        //.on(\"click\", \".\" + quickViewClass + \" .controls-back\", function () {\r\n        //    var newIndex = this.quickView.hideTile() - 1, $tile = $(this.tiles.get(newIndex));\r\n        //\r\n        //    // If a promo tile is in the prev position or if prev tile does not have quick\r\n        //    // view link then we need to skip over it.\r\n        //    while ($tile.length && ($tile.hasClass(promoClass) || $tile.find(quickViewLinkClass).length === 0)) {\r\n        //        $tile = $tile.prev();\r\n        //    }\r\n        //\r\n        //    this.quickView.$scope.remove();\r\n        //\r\n        //    // make sure we didn't reach the end of the grid\r\n        //    if ($tile.length === 0) {\r\n        //        return;\r\n        //    }\r\n        //\r\n        //    toggleQuickViewButtons($tile.index(), this.tiles.length, this.quickView.$prevBtn, this.quickView.$nextBtn);\r\n        //    this.showQuickView($tile);\r\n        //    this.quickView.showTile($tile);\r\n        //}.bind(this))\r\n        //.on(\"click\", \".\" + quickViewClass + \" .controls-forward\", function () {\r\n        //    var newIndex = this.quickView.hideTile() + 1, tile = this.tiles.get(newIndex), $tile = $(tile);\r\n        //\r\n        //    // If next index if pointing at quick view then we reached the end of the row and we need to skip over it.\r\n        //    // If a promo tile is in the next position then we also need to skip over it.\r\n        //    // If tile does not have Quick View link then we also need to skip over it\r\n        //    while ($tile.length && ($tile.hasClass(quickViewClass) || $tile.hasClass(promoClass) || $tile.find(quickViewLinkClass).length === 0)) {\r\n        //        $tile = $tile.next();\r\n        //    }\r\n        //\r\n        //    this.quickView.$scope.remove();\r\n        //\r\n        //    // make sure we didn't reach the end of the grid\r\n        //    if (!$tile.length) {\r\n        //        return;\r\n        //    }\r\n        //\r\n        //    toggleQuickViewButtons($tile.index(), this.tiles.length, this.quickView.$prevBtn, this.quickView.$nextBtn);\r\n        //    this.showQuickView($tile);\r\n        //    this.quickView.showTile($tile);\r\n        //}.bind(this));\r\n    }\r\n\r\n    function scrollIntoView(target) {\r\n        var rect = target.getBoundingClientRect();\r\n        if (rect.bottom > window.innerHeight) {\r\n            target.scrollIntoView(false);\r\n        }\r\n\r\n        if (rect.top < 0) {\r\n            target.scrollIntoView();\r\n        }\r\n    }\r\n\r\n    QuickView.prototype.toggleControls = function toggleControls(activeIndex, totalTiles) {\r\n        this.$prevBtn.css(\"display\", activeIndex <= 0 ? \"none\" : \"inline-block\");\r\n        this.$nextBtn.css(\"display\", activeIndex >= (totalTiles - 1) ? \"none\" : \"inline-block\");\r\n    };\r\n\r\n    QuickView.prototype.setTile = function setTile(tile) {\r\n        this.$body.html(tile ? tile.tileHtml : \"\");\r\n    };\r\n\r\n    QuickView.prototype.show = function show(tile, index) {\r\n        this.setTile(tile);\r\n        this.$scope.show();\r\n        this.index = index;\r\n        scrollIntoView(this.$scope[0]);\r\n    };\r\n\r\n    QuickView.prototype.hide = function hide() {\r\n        this.$scope.remove();\r\n        this.index = -1;\r\n        this.setTile(null);\r\n    };\r\n\r\n    QuickView.init = function initQuickView(args) {\r\n        return new QuickView(args.scope);\r\n    };\r\n\r\n    return QuickView;\r\n});\n",
    "define('score_bootstrap/Models/Search/SimpleSearchClient',[\r\n    \"jquery\",\r\n    \"errorHandler\",\r\n    \"score_bootstrap/Models/Search/SearchRequest\"\r\n], function ($, errorHandler, SearchRequest) {\r\n\r\n    function SimpleSearchClient(searchUrl, perPage, language, root, indexName, templates, startPage, page, tileNames, component) {\r\n        var searchRequest = new SearchRequest();\r\n\r\n        if (perPage !== undefined) searchRequest.perPage = perPage;\r\n        if (language) searchRequest.language = language;\r\n        if (root !== undefined) searchRequest.root = root;\r\n        if (indexName !== undefined) searchRequest.indexName = indexName;\r\n        if (templates !== undefined) searchRequest.templates = templates;\r\n        if (page !== undefined) searchRequest.page = page;\r\n        if (startPage !== undefined) searchRequest.startPage = startPage;\r\n        if (component !== undefined) searchRequest.component = component;\r\n\r\n        // we can accept a single string or an array or strings\r\n        if (tileNames) {\r\n            typeof (tileNames) === \"string\"\r\n                ? searchRequest.addTileRequest(tileNames)\r\n                : tileNames.forEach(searchRequest.addTileRequest);\r\n        }\r\n\r\n        Object.defineProperties(this, {\r\n            searchRequest: { value: searchRequest },\r\n            searchUrl: { value: searchUrl }\r\n        });\r\n    }\r\n\r\n    SimpleSearchClient.prototype.search = function search() {\r\n        var jqXHR = $.ajax({\r\n            url: this.searchUrl,\r\n            data: JSON.stringify(this.searchRequest),\r\n            type: \"POST\",\r\n            contentType: \"application/json; charset=utf-8\",\r\n            dataType: \"json\"\r\n        });\r\n        \r\n        jqXHR.fail(errorHandler.logError);\r\n\r\n        return jqXHR;\r\n    }\r\n\r\n    return SimpleSearchClient;\r\n});\n",
    "define('score_bootstrap/Models/Search/SuggestionSection',[\"jquery\", \"./SimpleSearchClient\"], function ($, SimpleSearchClient) {\r\n    \"use strict\";\r\n\r\n    function SuggestionSection(scope, language, indexName, searchApiUrl, flags) {\r\n        Object.defineProperty(this, '$scope', { value: $(scope), enumerable: !0, configurable: !0, writable: !0 });\r\n        this.setup(language, indexName, searchApiUrl, flags);\r\n    }\r\n\r\n    SuggestionSection.prototype.setup = function setup(language, indexName, searchApiUrl, flags) {\r\n        Object.defineProperty(this, 'tileName', { value: this.getTileName(), enumerable: !0, configurable: !0, writable: !0 });\r\n        Object.defineProperty(this, 'searchClient', { value: this.getSearchClient(searchApiUrl, language, indexName, flags), enumerable: !0, configurable: !0, writable: !0 });\r\n        Object.defineProperty(this, 'typeaheadOptions', { value: this.getTypeaheadOptions(), enumerable: !0, configurable: !0, writable: !0 });\r\n    }\r\n\r\n    SuggestionSection.prototype.getSuggestions = function (query, ignore /*syncResult*/, asyncResult) {\r\n        this.doSearch(query)\r\n            .done(asyncResult);\r\n    }\r\n\r\n    SuggestionSection.prototype.getHeader = function getHeader() {\r\n        var headerText = this.$scope.attr('data-header');\r\n        return headerText ? '<div class=\"score-typeahead-header\">' + headerText + '</div>' : '';\r\n    }\r\n\r\n    SuggestionSection.prototype.getPagerSize = function getPagerSize() {\r\n        return (this.$scope.attr('data-count')|0) || 5 /* default value */;\r\n    }\r\n\r\n    SuggestionSection.prototype.getTileName = function getTileName() {\r\n        return this.$scope.attr('data-tile-name');\r\n    }\r\n\r\n    SuggestionSection.prototype.getSearchClient = function getSearchClient(searchApiUrl, language, indexName, flags) {\r\n        var searchClient = new SimpleSearchClient(searchApiUrl, this.getPagerSize(), language, this.$scope.attr(\"data-root\"),\r\n                                                  indexName, this.$scope.attr(\"data-templates\").split(\"|\"), 0, 0, this.tileName, \"SuggestionSection\");\r\n\r\n        if (typeof (flags) === \"object\") {\r\n            searchClient.searchRequest.flags = flags;\r\n        }\r\n\r\n        return searchClient;\r\n    }\r\n\r\n    SuggestionSection.prototype.getTypeaheadOptions = function getTypeaheadOptions() {\r\n        return {\r\n            name: this.$scope.attr(\"data-id\"),\r\n            source: this.getSuggestions.bind(this),\r\n            async: true,\r\n            Key: \"Title\",\r\n            limit: this.getPagerSize(),\r\n            templates: {\r\n                header: this.getHeader(),\r\n                suggestion: this.buildTile.bind(this),\r\n                footer: this.$scope.html()\r\n            },\r\n            display: function(item) {\r\n                return item.Title;\r\n            }\r\n        };\r\n    }\r\n\r\n\r\n    SuggestionSection.prototype.buildTile = function buildTile(data) {\r\n        var tileHtml = '';\r\n        if (data && 'Tiles' in data && data.Tiles instanceof Array) {\r\n            // find the tile which we want to show on the suggestion section\r\n            // we aren't using find method because of beloved IE support :) (just kidding), but we don't see a reason to introduce a dependency with \"find\" polyfill. \r\n            for (var i = 0; i < data.Tiles.length; i++) {\r\n                var tileEn = data.Tiles[i];\r\n                if (tileEn.Name === this.tileName) {\r\n                    tileHtml = tileEn.Html;\r\n                    // since we already found the tile, lets stop our loop\r\n                    break;\r\n                }\r\n            }\r\n        }\r\n\r\n        // short form\r\n        //var tile = data.Tiles.find(function (x) { return x.Name === tileName; }).Html;\r\n        return '<div class=\"score-typeahead-content\">' + tileHtml + '</div>';\r\n    }\r\n\r\n\r\n    SuggestionSection.prototype.doSearch = function doSearch(query) {\r\n        this.searchClient.searchRequest.query = query;\r\n        return this.searchClient.search().then(function (response) {\r\n            return (response.SearchResults || []);\r\n        });\r\n    };\r\n\r\n    return SuggestionSection;\r\n});\n",
    "define('score_bootstrap/Components/ContentSearch/SearchBox',[\r\n    \"jquery\",\r\n    \"knockout\",\r\n    \"eventManager\",\r\n    \"score_bootstrap/Models/Search/SuggestionSection\",\r\n    \"score_bootstrap/Models/Search/SearchRequest\",\r\n    \"score_bootstrap/Utils/UrlHelper\",\r\n    \"score_bootstrap/Events/SearchRequestChangeEvent\",\r\n    \"typeahead\"\r\n], function (\r\n    $,\r\n    ko,\r\n    eventManager,\r\n    SuggestionSection,\r\n    SearchRequest,\r\n    urlHelper,\r\n    SearchRequestChangeEvent\r\n) {\r\n    \"use strict\";\r\n\r\n    function SearchBox(scope, language, indexName, searchApiUrl, flags) {\r\n        var $input = $(\".js-typeahead :text\", scope),\r\n            $clearInputButton = $('.clear-input', scope),\r\n            $button = $(\"a\", scope),\r\n            datasets = [],\r\n            searchRequest = new SearchRequest(),\r\n            timeout;\r\n\r\n        this.$input = $input;\r\n        this.$clearInputButton = $clearInputButton;\r\n\r\n        $(\".score-suggestion-section\", scope).each(function parseSuggestionSection() {\r\n            var suggestion = new SuggestionSection(this, language, indexName, searchApiUrl, flags);\r\n            datasets.push(suggestion.typeaheadOptions);\r\n        });\r\n\r\n        function performSearch() {\r\n            var val = $input.val(),\r\n                url = urlHelper.setUrlParameters($button[0], \"q\", val);\r\n\r\n            // Reload the page in case if enter press and page url was not changed.\r\n            if (window.location.href === url) {\r\n                window.location.reload(!0);\r\n            } else {\r\n                window.location = url;\r\n            }\r\n        }\r\n\r\n\r\n        this.doSearch = performSearch;\r\n\r\n        $input.typeahead(null, datasets);\r\n\r\n        // attach to selections in the typeahead\r\n        $input.on('typeahead:selected', function (ignore /*evt*/, data) {\r\n            $input.on('change').unbind();\r\n            window.location = data.Url;\r\n            return false;\r\n        });\r\n\r\n        // attach to enter key\r\n        $input.keyup(function (e, data) {\r\n            if (e.keyCode === 13 && !data) {\r\n                performSearch();\r\n            }\r\n            return false;\r\n        }.bind(this));\r\n        \r\n        this.query = ko.observable(searchRequest.query);\r\n        $input.typeahead('val', this.query());\r\n\r\n        this.query.subscribe(function onQueryChange(query) {\r\n            searchRequest.query = query;\r\n            if (timeout) {\r\n                clearTimeout(timeout);\r\n            }\r\n\r\n            timeout = setTimeout(function() {\r\n                eventManager.trigger(SearchRequestChangeEvent.queryChange, query);\r\n            }, 400);\r\n        });\r\n        \r\n        ko.applyBindings(this, scope);\r\n    }\r\n\r\n    SearchBox.prototype.resetSearch = function () {\r\n        this.query('');\r\n        this.doSearch();\r\n    }\r\n\r\n    SearchBox.init = function init(args) {\r\n        return args.IsEditorEditing === true ? null :\r\n            new SearchBox(args.scope, args.Language, args.IndexName, args.SearchApiUrl, args.SearchFlags);\r\n    };\r\n\r\n    return SearchBox;\r\n});\n",
    "define('score_bootstrap/Components/ContentSearch/SearchClient',[\r\n    \"jquery\",\r\n    \"eventManager\",\r\n    \"score_ccf/Events/ModulesLoadedEvent\",\r\n    \"score_bootstrap/Events/SearchResponseEvent\",\r\n    \"score_bootstrap/Events/SearchRequestChangeEvent\",\r\n    \"score_bootstrap/Models/Search/IndexableItemBase\",\r\n    \"score_bootstrap/Models/Search/SimpleSearchClient\",\r\n    \"score_bootstrap/Utils/UrlHelper\"\r\n], function (\r\n    $,\r\n    eventManager,\r\n    ModulesLoadedEvent,\r\n    SearchResponseEvent,\r\n    SearchRequestChangeEvent,\r\n    IndexableItemBase,\r\n    SimpleSearchClient,\r\n    UrlHelper\r\n) {\r\n    \"use strict\";\r\n\r\n    function indexMatchToModel(indexMatch) {\r\n        return new IndexableItemBase(\r\n            indexMatch.ID,\r\n            indexMatch.Title,\r\n            indexMatch.Tiles,\r\n            indexMatch.Url\r\n        );\r\n    }\r\n\r\n    function SearchClient(scope, refreshEvents, perPage, language, root, indexName, templates, searchUrl, uniqueId, tileNames, flags, lazySearch) {\r\n        var modulesLoaded = false,\r\n            urlParam = uniqueId + \"page\",\r\n            page = UrlHelper.getHashValue(urlParam),\r\n            startPage = page, // load only current page\r\n            parent = {},\r\n            self = this;\r\n        SimpleSearchClient.call(this, searchUrl, perPage, language, root, indexName, templates, startPage, page, tileNames);\r\n\r\n        if (typeof (flags) === \"object\") {\r\n            this.searchRequest.flags = flags;\r\n        }\r\n\r\n        function handleError(err) {\r\n            refreshEvents.forEach(function (ev) {\r\n                eventManager.trigger(SearchResponseEvent.serverError + \":\" + ev, err);\r\n            });\r\n        }\r\n\r\n        function parseResults(query, results) {\r\n            var indexMatch = results.SearchResults || [];\r\n            return new SearchResponseEvent(\r\n                query,\r\n                indexMatch.map(indexMatchToModel),\r\n                results.PageNumber ? results.PageNumber : 0,\r\n                results.NumberOfResultsPerPage,\r\n                results.TotalNumberOfResults,\r\n                results.NumberOfPages,\r\n                results.FacetCounts\r\n            );\r\n        }\r\n\r\n        function triggerSearchResponseEvent(data) {\r\n            // Search Results component has a reference to its Search Client, so Search Results can\r\n            // add listener directly to Search Client without using Event Manager\r\n            $(scope).triggerHandler(SearchResponseEvent.eventName, data);\r\n\r\n            eventManager.trigger(SearchResponseEvent.eventName + \":pageLoaded\", data);\r\n\r\n            // Other components like Facet Container still rely on Event Manager\r\n            refreshEvents.forEach(function (ev) {\r\n                eventManager.trigger(SearchResponseEvent.eventName + \":\" + ev, data);\r\n            });\r\n        }\r\n\r\n        parent.search = this.search.bind(this);\r\n        this.search = function search() {\r\n            var deferred = $.Deferred();\r\n\r\n            // if lazy search is turned on and query string is empty\r\n            // don't dispatch search request and return empty result set\r\n            if (lazySearch && !this.searchRequest.query) {\r\n                deferred.resolve(parseResults(this.searchRequest.query, {}));\r\n            } else {\r\n                deferred = parent.search().then(parseResults.bind(null, this.searchRequest.query), handleError);\r\n            }\r\n                \r\n            return deferred;\r\n        };\r\n\r\n        // run a search query on page load\r\n        eventManager.subscribe(ModulesLoadedEvent.name, function () {\r\n            if (modulesLoaded === true) return;\r\n            modulesLoaded = true;\r\n            self.search().done(triggerSearchResponseEvent);\r\n        });\r\n\r\n        if (flags && flags[\"Live Search\"] === \"true\") {\r\n            // run a search query when the query in the search box changes\r\n            eventManager.subscribe(SearchRequestChangeEvent.queryChange, function (newQuery) {\r\n                this.searchRequest.query = newQuery;\r\n                this.searchRequest.startPage = 0;\r\n                this.searchRequest.page = 0;\r\n                this.search().done(triggerSearchResponseEvent);\r\n            }.bind(this));\r\n        }\r\n\r\n        function refresh(props) {\r\n            $.each(props, function (key, val) {\r\n                if (self.searchRequest.hasOwnProperty(key)) {\r\n                    self.searchRequest[key] = val;\r\n                }\r\n            });\r\n\r\n            if (modulesLoaded === true) {\r\n                self.search().done(triggerSearchResponseEvent);\r\n            }\r\n        }\r\n\r\n        if (refreshEvents.length) {\r\n            refreshEvents.forEach(function (ev) {\r\n                eventManager.subscribe(SearchRequestChangeEvent.eventName + \":\" + ev, refresh);\r\n            });\r\n        }\r\n\r\n        eventManager.subscribe(SearchRequestChangeEvent.customDataEvent, function (customData) {\r\n\t\t\tthis.searchRequest.customData = $.extend(this.searchRequest.customData, customData);\r\n\t\t\tthis.search().done(triggerSearchResponseEvent);\r\n\t\t}.bind(this));\r\n    }\r\n\r\n    SearchClient.prototype = Object.create(SimpleSearchClient.prototype);\r\n\r\n    SearchClient.init = function init(args) {\r\n        return args.IsEditorEditing === true ? null : new SearchClient(\r\n            args.scope,\r\n            args.RefreshActionMessages || [],\r\n            args.PerPage,\r\n            args.Language,\r\n            args.SearchRoot,\r\n            args.IndexName,\r\n            args.Templates,\r\n            args.SearchApiUrl,\r\n            args.UniqueId,\r\n            args.TileNames,\r\n            args.SearchFlags,\r\n            args.LazySearch\r\n        );\r\n    };\r\n\r\n    return SearchClient;\r\n});\n",
    "define('score_bootstrap/Components/ContentSearch/SearchQueryMessage',[\r\n    \"knockout\",\r\n    \"score_bootstrap/Utils/UrlHelper\"\r\n], function (ko, urlHelper) {\r\n    \"use strict\";\r\n\r\n    function SearchQueryMessage(scope) {\r\n        var query = urlHelper.getUrlParameters(window.location, \"q\");\r\n        query = query.length ? query[0] : \"\";\r\n        this.query = ko.observable(query);\r\n        this.shouldShowMessage = ko.pureComputed(function () {\r\n            return this.query().length > 0;\r\n        }, this);\r\n        ko.applyBindings(this, scope);\r\n    }\r\n\r\n    SearchQueryMessage.init =  function init(args) {\r\n        return new SearchQueryMessage(args.scope);\r\n    };\r\n\r\n    return SearchQueryMessage;\r\n});\n",
    "define('score_bootstrap/Models/Search/PromoTile',[\"jquery\", \"knockout\"], function ($, ko) {\r\n    \"use strict\";\r\n\r\n    function PromoTile(index, element) {\r\n        if (isNaN(index) || index < 1) {\r\n            throw new Error(\"PromoTile index must be positive integer\");\r\n        }\r\n\r\n        if (!element) {\r\n            throw new Error(\"PromoTile index is required\");\r\n        }\r\n\r\n        Object.defineProperties(this,\r\n        {\r\n            index:   { value: index },\r\n            tileHtml: { value: element.outerHTML }\r\n        });\r\n    }\r\n\r\n    PromoTile.fromElement = function fromElement(element) {\r\n        var index = $(element).attr(\"data-grid-position\");\r\n        index = parseInt(index, 10);\r\n        return new PromoTile(index, element);\r\n    };\r\n\r\n    PromoTile.sort = function sort(a, b) {\r\n        return a.index - b.index;\r\n    };\r\n\r\n    return PromoTile;\r\n});\n",
    "define('score_bootstrap/Components/ContentSearch/SearchResults',[\r\n    \"jquery\",\r\n    \"knockout\",\r\n    \"eventManager\",\r\n    \"score_bootstrap/Components/ContentSearch/SearchResultsBase\",\r\n    \"score_bootstrap/Models/Tile\",\r\n    \"score_bootstrap/Models/Search/PromoTile\",\r\n    \"score_bootstrap/Models/Search/SearchRequest\",\r\n    \"score_bootstrap/Events/SearchResponseEvent\",\r\n    \"imagesLoaded\",\r\n    \"score_bootstrap/Utils/UrlHelper\",\r\n    \"matchHeight\"\r\n], function (\r\n    $,\r\n    ko,\r\n    eventManager,\r\n    SearchResultsBase,\r\n    Tile,\r\n    PromoTile,\r\n    SearchRequest,\r\n    SearchResponseEvent,\r\n    imagesLoaded,\r\n    urlHelper\r\n) {\r\n    \"use strict\";\r\n\r\n    var tileCache = {};\r\n\r\n    function SearchResults(scope, uniqueId, refreshEvents, showMessages, isLazySearch, tileName, switchToClassicPager, classicPagesToDisplay, showEllipsisInBetween, scrollToPageTop) {\r\n        var promoTiles = $(\".score-promo-tile\", scope).remove().toArray().map(PromoTile.fromElement).sort(PromoTile.sort),\r\n            includeMatchHeight = true;\r\n\r\n        this.query = ko.observable(\"\");\r\n        this.serviceUnavailable = ko.observable(false);\r\n        this.results = ko.observableArray([]);\r\n        this.numberOfResults = ko.observable(\"\");\r\n        this.canShowMore = ko.observable(false);\r\n        this.currentPage = ko.observable(0);\r\n        this.allPages = ko.observableArray([]);\r\n        this.showLazySearchMessage = ko.observable(isLazySearch);\r\n        this.totalPages = ko.observable(0);\r\n        this.showPager = ko.observable(false);\r\n\r\n        Object.defineProperties(this, {\r\n            promoTiles: { enumerable: false, value: promoTiles },\r\n            tileName: { enumerable: true, value: tileName },\r\n            tilesPerRow: {\r\n                enumerable: false,\r\n                get: function () {\r\n                    return SearchResultsBase.howManyTilesPerRow(this.$list);\r\n                }\r\n            },\r\n            includeMatchHeight: {\r\n                enumerable: false,\r\n                get: function () { return includeMatchHeight; },\r\n                set: function (val) { includeMatchHeight = val; }\r\n            },\r\n            switchToClassicPager: { enumerable: !1, value: !!switchToClassicPager },\r\n            classicPagesToDisplay: { enumerable: !1, value: classicPagesToDisplay | 0 },\r\n            showEllipsisInBetween: { enumerable: !1, value: !!showEllipsisInBetween },\r\n            scrollToPageTop: { enumerable: !1, value: !!scrollToPageTop },\r\n            initialResultLoaded: {enumerable: !1, value: !1, writable: !0}\r\n        });\r\n\r\n        // Append some client logic during the initial search loading\r\n        var subscription = eventManager.subscribe(\"ModulesLoadedEvent\", function (ev) {\r\n            // Change some parameters for initial page loading when the 'switchToClassicPager' is false \r\n            // and the component has selected page of results different from first.\r\n            // Need to have results from first page to defined in url. \r\n            if (!this.switchToClassicPager) {\r\n                var tilesPerPage = this.searchClient.searchRequest.perPage;\r\n                var currentPageParameter = urlHelper.getHashValue(this.id + \"page\");\r\n                if (currentPageParameter) {\r\n                    var currentPage = parseInt(currentPageParameter) | 0;\r\n                    this.searchClient.searchRequest.perPage = parseInt(tilesPerPage) * (currentPage + 1);\r\n                    this.searchClient.searchRequest.page = 0;\r\n                    this.searchClient.searchRequest.startPage = 0;\r\n                    this.page = 0;\r\n                    // Get back the parameters after initial page loading\r\n                    var pageLoadedSubscription = eventManager.subscribe(\"SearchResponseEvent:pageLoaded\", function (data) {\r\n                        this.searchClient.searchRequest.perPage = tilesPerPage;\r\n                        this.searchClient.searchRequest.page = currentPage;\r\n                        this.searchClient.searchRequest.startPage = currentPage;\r\n                        this.page = currentPage;\r\n                        // Ensure that this event handler is called only once\r\n                        eventManager.unsubscribe(pageLoadedSubscription);\r\n                    }.bind(this));\r\n                }\r\n            }\r\n            // Ensure that this event handler is called only once\r\n            eventManager.unsubscribe(subscription);\r\n        }.bind(this));\r\n\r\n        ko.applyBindings(this, scope);\r\n\r\n        SearchResultsBase.call(this, scope, uniqueId, isLazySearch, refreshEvents, showMessages);\r\n        tileCache[this.id] = {};\r\n    }\r\n\r\n    SearchResults.prototype = Object.create(SearchResultsBase.prototype);\r\n\r\n    SearchResults.prototype.resetResults = function resetResults() {\r\n        this.$list.empty();\r\n        this.results.removeAll();\r\n        this.allPages.removeAll();\r\n    }\r\n\r\n    SearchResults.prototype.reset = function reset() {\r\n        this.resetResults();\r\n        this.currentPage(0);\r\n        this.page = 0;\r\n    }\r\n\r\n    SearchResults.prototype.appendTiles = function appendTiles(response) {\r\n        var newTiles = [], lastRowTiles = [], self = this;\r\n\r\n        this.serviceUnavailable(false);\r\n\r\n        if (response.page !== this.page) {\r\n            urlHelper.setHashValue(window.location, this.id + \"page\", String(response.page));\r\n        }\r\n\r\n        if (response.page <= this.page) {\r\n            // When there is a new search response, current tiles should always be cleared out first,\r\n            // unless the 'page' value has been incremeneted, which means that 'show more' was clicked\r\n            this.resetResults();\r\n        } else {\r\n            // 'show more' was clicked, so page should be incremented\r\n            this.page = response.page;\r\n\r\n            lastRowTiles = SearchResultsBase.getLastRowTiles(this);\r\n        }\r\n\r\n        var originalQuantity = this.tiles.length;\r\n\r\n        response.items.forEach(function (item) {\r\n            var id = item.id.toString(), tile, cache = tileCache[this.id];\r\n\r\n            if (!cache.hasOwnProperty(id)) {\r\n                cache[id] = new Tile(item, this.tileName);\r\n            }\r\n\r\n            tile = cache[id];\r\n            this.results.push(tile);\r\n            newTiles.push(tile.element());\r\n        }, this);\r\n\r\n        // store amount pages for a classic pager\r\n        this.totalPages(response.totalPages);\r\n        this.currentPage(response.page);\r\n        this.allPages.removeAll();\r\n        Array.apply(null, { length: response.totalPages }).map((function (v, i) { this.allPages.push(i); }).bind(this));\r\n        this.showPager(response.totalPages > 1 && this.switchToClassicPager);\r\n\r\n\r\n        this.canShowMore((response.page + 1) < response.totalPages);\r\n        this.numberOfResults(response.totalItems);\r\n        this.query(response.query);\r\n\r\n        if (!newTiles.length) {\r\n            if ($(self.scope).hasClass(\"js-hide-on-load\")) {\r\n                $(self.scope).removeClass(\"js-hide-on-load\");\r\n            }\r\n            return;\r\n        }\r\n\r\n        newTiles = $(newTiles).add(SearchResultsBase.injectPromoTiles(this, originalQuantity));\r\n\r\n        if (!this.includeMatchHeight) {\r\n            // Wait to run matchHeight until all the images are loaded since\r\n            // height of images affect the height of the tiles\r\n            imagesLoaded($(\"img\", newTiles), function matchHeightOnNewTiles() {\r\n                var emptySpots = self.tilesPerRow - lastRowTiles.length;\r\n                if (emptySpots > 0) {\r\n                    $(newTiles.slice(0, emptySpots)).add(lastRowTiles).matchHeight(true);\r\n                    newTiles = newTiles.slice(emptySpots);\r\n                }\r\n\r\n                $(newTiles).matchHeight(true);\r\n                if ($(self.scope).hasClass(\"js-hide-on-load\")) {\r\n                    $(self.scope).removeClass(\"js-hide-on-load\");\r\n                }\r\n            });\r\n        }\r\n\r\n        // explicitly providing hook to tenants for search rendering\r\n        eventManager.trigger(\"search-rendered\", this.scope, response.page|0, response.perPage|0, response.totalItems|0, this.tileName);\r\n\r\n        // call base class implementation\r\n        SearchResultsBase.prototype.appendTiles.call(this);\r\n\r\n        if ($(self.scope).hasClass(\"js-hide-on-load\")) {\r\n            $(self.scope).removeClass(\"js-hide-on-load\");\r\n        }\r\n\r\n        if (this.initialResultLoaded && this.scrollToPageTop) {\r\n            this.scrollToTopResults();\r\n        }\r\n\r\n        // setup the initial release was loaded\r\n        this.initialResultLoaded = !0;\r\n    };\r\n\r\n    SearchResults.prototype.getPages = function getPages() {\r\n\r\n        if (this.totalPages() <= this.classicPagesToDisplay || this.classicPagesToDisplay <= 0) {\r\n            return this.allPages();\r\n        } else {\r\n            var first = 0;\r\n\r\n            var upperLimit = this.currentPage() + 1;\r\n            var downLimit = this.currentPage() - 1;\r\n\r\n            while (upperLimit >= this.totalPages()) {\r\n                upperLimit--;\r\n                if (downLimit > first)\r\n                    downLimit--;\r\n            }\r\n\r\n            while (downLimit < first) {\r\n                downLimit++;\r\n                if (upperLimit < this.totalPages())\r\n                    upperLimit++;\r\n            }\r\n\r\n            var pages = [];\r\n            for (var i = downLimit; i <= upperLimit; i++) {\r\n                pages.push(i);\r\n            }\r\n\r\n            return ko.observableArray(pages);\r\n        }\r\n    };\r\n\r\n    SearchResults.prototype.showPage = function showPage(pageNumber) {\r\n        var searchClient = this.searchClient,\r\n            newPage = pageNumber|0;\r\n\r\n        urlHelper.setHashValue(window.location, this.id + \"page\", newPage);\r\n        searchClient.searchRequest.page = newPage;\r\n        searchClient.searchRequest.startPage = newPage;\r\n\r\n        var searchProm = searchClient.search();\r\n        searchProm.done((function() { this.results.removeAll(); }).bind(this));\r\n        searchProm.done(this.appendTiles.bind(this));\r\n    }\r\n\r\n    SearchResults.prototype.showLeftBoundary = function showLeftBoundary() {\r\n        var leftArr = this.getPages().slice(0, 1);\r\n        return leftArr[0] !== 0 && (!this.showEllipsisInBetween || leftArr[0] !== 1);\r\n    }\r\n\r\n    SearchResults.prototype.showRightBoundary = function showRightBoundary() {\r\n        var leftArr = this.getPages().slice(-1);\r\n        return leftArr[0] < (this.totalPages() - 1) && (!this.showEllipsisInBetween || leftArr[0] < (this.totalPages() - 2));\r\n    }\r\n\r\n    SearchResults.prototype.showPrevPage = function showPrevPage() {\r\n        if (this.currentPage() - 1 >= 0) {\r\n            this.showPage(this.currentPage() - 1);\r\n        }\r\n    }\r\n\r\n    SearchResults.prototype.showNextPage = function showNextPage() {\r\n        if (this.currentPage() + 1 < this.totalPages()) {\r\n            this.showPage(this.currentPage() + 1);\r\n        }\r\n    }\r\n\r\n    SearchResults.prototype.showFirstPage = function showFirstPage() {\r\n        return this.getPages().slice(0, 1)[0] !== 0;\r\n    }\r\n\r\n    SearchResults.prototype.showLastPage = function showFirstPage() {\r\n        return this.getPages().slice(-1)[0] < (this.totalPages() - 1);\r\n    }\r\n\r\n    SearchResults.prototype.showLastButOnePage = function showLastButOnePage() {\r\n        return !this.showFirstPage() && this.getPages().slice(-1)[0] < (this.totalPages() - 3);\r\n    }\r\n\r\n    SearchResults.prototype.firstPageText = function firstPageText() {\r\n        return \"1\";\r\n    }\r\n\r\n    SearchResults.prototype.lastPageText = function lastPageText() {\r\n        return this.totalPages();\r\n    }\r\n\r\n    SearchResults.prototype.lastButOnePageText = function lastPageText() {\r\n        return this.totalPages() - 1;\r\n    }\r\n\r\n    SearchResults.init = function init(args) {\r\n        if (args.IsEditorEditing === true) {\r\n            $(args.scope).removeClass(\"js-hide-on-load\");\r\n            return null;\r\n        }\r\n\r\n        return new SearchResults(\r\n            args.scope,\r\n            args.UniqueId,\r\n            args.RefreshActionMessages || [],\r\n            args.ShowMessagesTransmitting || [],\r\n            args.LazySearch,\r\n            args.TileName,\r\n            args.SwitchToClassicPager,\r\n            args.ClassicPagerButtonsToDisplay,\r\n            args.ShowPagerEllipsisInBetween,\r\n            args.ScrollToPageTop);\r\n    };\r\n\r\n    return SearchResults;\r\n});\n",
    "define('score_bootstrap/Components/ContentSearch/SearchResultsView',[\r\n    \"jquery\",\r\n    \"knockout\",\r\n    \"eventManager\",\r\n    \"moduleLoader\",\r\n    \"score_bootstrap/Components/ContentSearch/SearchResultsBase\",\r\n    \"score_bootstrap/Models/Tile\",\r\n    \"score_bootstrap/Models/Search/PromoTile\",\r\n    \"imagesLoaded\",\r\n    \"score_bootstrap/Utils/UrlHelper\",\r\n    \"matchHeight\"\r\n\r\n], function (\r\n    $,\r\n    ko,\r\n    eventManager,\r\n    moduleLoader,\r\n    SearchResultsBase,\r\n    Tile,\r\n    PromoTile,\r\n    imagesLoaded,\r\n    urlHelper\r\n) {\r\n\r\n    var tileCache = {};\r\n\r\n    function SearchResultsView(scope, uniqueId, tilesPerPage, tileName, qvTileName, showEvents, switchToClassicPager, classicPagesToDisplay, showEllipsisInBetween, scrollToPageTop) {\r\n        var promoTiles = $(\".score-promo-tile\", scope).remove().toArray().map(PromoTile.fromElement).sort(PromoTile.sort),\r\n            showMe = this.show.bind(this),\r\n            quickView;\r\n\r\n        this.results = ko.observableArray([]);\r\n        this.currentPage = ko.observable(0);\r\n        this.allPages = ko.observableArray([]);\r\n        this.totalPages = ko.observable(0);\r\n        this.showPager = ko.observable(false);\r\n\r\n        Object.defineProperties(this, {\r\n            id: { enumerable: true, value: uniqueId },\r\n            tilesPerPage: { enumerable: true, value: tilesPerPage },\r\n            tileName: { enumerable: true, value: tileName },\r\n            quickViewTileName: { enumerable: true, value: qvTileName },\r\n            scope: { enumerable: false, value: scope },\r\n            $scope: { enumerable: false, value: $(scope) },\r\n            $list: { enumerable: false, value: $(\".js-search-results\", scope) },\r\n            promoTiles: { enumerable: false, value: promoTiles },\r\n            tiles: {\r\n                get: function () {\r\n                    return $(\"li\", this.$list);\r\n                }\r\n            },\r\n            tilesPerRow: {\r\n                enumerable: false,\r\n                get: function () {\r\n                    return SearchResultsBase.howManyTilesPerRow(this.$list);\r\n                }\r\n            },\r\n            isActive: {\r\n                get:function () {\r\n                    return this.$scope.hasClass(\"active\");\r\n                }\r\n            },\r\n            switchToClassicPager: {enumerable:!1, value: !!switchToClassicPager },\r\n            classicPagesToDisplay: { enumerable: !1, value: classicPagesToDisplay|0 },\r\n            showEllipsisInBetween: { enumerable: !1, value: !!showEllipsisInBetween },\r\n            scrollToPageTop: { enumerable: !1, value: !!scrollToPageTop }\r\n        });\r\n\r\n        tileCache[this.id] = {};\r\n\r\n        if (showEvents.length) {\r\n            showEvents.forEach(function (ev) {\r\n                eventManager.subscribe(ev, showMe);\r\n            });\r\n        }\r\n\r\n        if (this.quickViewTileName) {\r\n            Object.defineProperties(this, {\r\n                quickView: {\r\n                    enumerable: false,\r\n                    get: function () {\r\n                        if (!quickView) {\r\n                            quickView = $(\".js-quick-view\", scope).data(\"ccf_module\");\r\n                        }\r\n                        return quickView;\r\n                    }\r\n                }\r\n            });\r\n        }\r\n\r\n        ko.applyBindings(this, scope);\r\n    }\r\n\r\n    SearchResultsView.prototype.reset = function reset() {\r\n        this.$list.empty();\r\n        this.results.removeAll();\r\n        this.allPages.removeAll();\r\n        this.currentPage(0);\r\n    };\r\n\r\n    SearchResultsView.prototype.appendTiles = function appendTiles(response, isLoadMore) {\r\n        var newTiles = [], originalQuantity = this.tiles.length, lastRowTiles = [];\r\n\r\n        // if the current search result is switched to a classic pager, we should clear results collection \r\n        // which used to render the result results, so it'll have just current page tiles.\r\n        if (this.switchToClassicPager) {\r\n            this.results.removeAll();\r\n        }\r\n\r\n        if (isLoadMore) {\r\n            lastRowTiles = SearchResultsBase.getLastRowTiles(this);\r\n        }\r\n\r\n        response.items.forEach(function (item) {\r\n            var tileId = item.id.toString(), tile, cache = tileCache[this.id];\r\n\r\n            if (!cache.hasOwnProperty(tileId)) {\r\n                cache[tileId] = { item: item };\r\n            }\r\n\r\n            if (!cache[tileId].hasOwnProperty(this.tileName)) {\r\n                cache[tileId][this.tileName] = new Tile(item, this.tileName);\r\n            }\r\n\r\n            tile = cache[tileId][this.tileName];\r\n            this.results.push(tile);\r\n            newTiles.push(tile.element());\r\n        }, this);\r\n\r\n        // store amount pages for a classic pager\r\n        this.totalPages(response.totalPages);\r\n        this.currentPage(response.page);\r\n        this.allPages.removeAll();\r\n        Array.apply(null, { length: response.totalPages }).map((function (v, i) { this.allPages.push(i); }).bind(this));\r\n        this.showPager(response.totalPages > 1 && this.switchToClassicPager);\r\n\r\n        if (!newTiles.length) {\r\n            return [];\r\n        }\r\n\r\n        moduleLoader.loadPendingModules(this.$list);\r\n        newTiles = $(newTiles).add(SearchResultsBase.injectPromoTiles(this, originalQuantity));\r\n        $(lastRowTiles).add(newTiles).matchHeight({ byRow: true });\r\n\r\n        // Wait to run matchHeight until all the images are loaded since\r\n        // height of images affect the height of the tiles\r\n        imagesLoaded($(\"img\", newTiles), function matchHeightOnNewTiles() {\r\n            $.fn.matchHeight._update();\r\n        });\r\n\r\n        if (this.initialResultLoaded && this.scrollToPageTop) {\r\n            this.scrollToTopResults();\r\n        }\r\n\r\n        // setup the initial release was loaded\r\n        this.initialResultLoaded = !0;\r\n\r\n        // explicitly providing hook to tenants for search rendering\r\n        eventManager.trigger(\"search-rendered\", this.scope, response.page | 0, response.perPage | 0, response.totalItems | 0, this.tileName);\r\n\r\n        return newTiles;\r\n    };\r\n\r\n    SearchResultsView.prototype.show = function show() {\r\n        $(this).triggerHandler(\"SearchResultsView.show\");\r\n        this.$scope.siblings().removeClass(\"active in\");\r\n        this.$scope.addClass(\"active in\");\r\n    };\r\n\r\n    SearchResultsView.prototype.getQuickViewTileByElement = function getQuickViewTileByElement($tile) {\r\n        var tileId = $tile.attr(\"data-id\"), cache = tileCache[this.id][tileId];\r\n\r\n        if (!cache.hasOwnProperty(this.quickViewTileName)) {\r\n            cache[this.quickViewTileName] = new Tile(cache.item, this.quickViewTileName);\r\n        }\r\n\r\n        return cache[this.quickViewTileName];\r\n    };\r\n\r\n    SearchResultsView.prototype.showQuickView = function showQuickView(tile, $activeEl) {\r\n        this.tiles.removeClass(\"active\");\r\n        this.quickView.hide();\r\n\r\n        if (!tile) return;\r\n\r\n        // Calculate where to insert the quick view\r\n        var index = $activeEl.addClass(\"active\").index(),\r\n            tilesPerRow = this.tilesPerRow,\r\n            totalTiles = this.tiles.length,\r\n            positionInRow,\r\n            quickViewPos,\r\n            mod = totalTiles % tilesPerRow,\r\n            fullRows = Math.floor(totalTiles / tilesPerRow);\r\n\r\n        // Prev/Next buttons needs to be adjusted before the quick view li is inserted\r\n        this.quickView.toggleControls(index, this.tiles.length);\r\n\r\n        // if the active tile is in the last row and the row is not full, insert the quick view directly after the last tile\r\n        if (mod > 0 && index >= (fullRows * tilesPerRow)) {\r\n            quickViewPos = totalTiles - 1;\r\n        }\r\n            // else insert the quick view after the last tile in the current row\r\n        else {\r\n            positionInRow = (index + 1) % tilesPerRow || tilesPerRow;\r\n            quickViewPos = index + (tilesPerRow - positionInRow);\r\n        }\r\n\r\n        $(this.tiles[quickViewPos]).closest(\"li\").after(this.quickView.$scope);\r\n        this.quickView.show(tile, index);\r\n        moduleLoader.loadPendingModules(this.quickView.$body);\r\n        this.tiles.matchHeight({ byRow: true });\r\n    };\r\n\r\n    SearchResultsView.prototype.getPages = function getPages() {\r\n\r\n        //console.log(\"classicPagesToDisplay\", this.classicPagesToDisplay);\r\n        //console.log('totalPages', this.totalPages());\r\n        if (this.totalPages() <= this.classicPagesToDisplay || this.classicPagesToDisplay <= 0) {\r\n            return this.allPages();\r\n        } else {\r\n            var first = 0;\r\n\r\n            var upperLimit = this.currentPage() + 1;\r\n            var downLimit = this.currentPage() - 1;\r\n\r\n            while (upperLimit >= this.totalPages()) {\r\n                upperLimit--;\r\n                if (downLimit > first)\r\n                    downLimit--;\r\n            }\r\n\r\n            while (downLimit < first) {\r\n                downLimit++;\r\n                if (upperLimit < this.totalPages())\r\n                    upperLimit++;\r\n            }\r\n\r\n            var pages = [];\r\n            for (var i = downLimit; i <= upperLimit; i++) {\r\n                pages.push(i);\r\n            }\r\n\r\n            return ko.observableArray(pages);\r\n        }\r\n    };\r\n\r\n\r\n    SearchResultsView.prototype.showPage = function showPage(pageNumber) {\r\n        $(this).triggerHandler(\"SearchResultsView.showPage\", pageNumber|0);\r\n    }\r\n\r\n    SearchResultsView.prototype.showLeftBoundary = function showLeftBoundary() {\r\n        var leftArr = this.getPages().slice(0, 1);\r\n        return leftArr[0] !== 0 && (!this.showEllipsisInBetween || leftArr[0] !== 1);\r\n    }\r\n\r\n    SearchResultsView.prototype.showRightBoundary = function showRightBoundary() {\r\n        var leftArr = this.getPages().slice(-1);\r\n        return leftArr[0] < (this.totalPages() - 1) && (!this.showEllipsisInBetween || leftArr[0] < (this.totalPages() - 2));\r\n    }\r\n\r\n    SearchResultsView.prototype.showPrevPage = function showPrevPage() {\r\n        if (this.currentPage() - 1 >= 0) {\r\n            this.showPage(this.currentPage() - 1);\r\n        }\r\n    }\r\n\r\n    SearchResultsView.prototype.showNextPage = function showNextPage() {\r\n        if (this.currentPage() + 1 < this.totalPages()) {\r\n            this.showPage(this.currentPage() + 1);\r\n        }\r\n    }\r\n\r\n    SearchResultsView.prototype.showFirstPage = function showFirstPage() {\r\n        return this.getPages().slice(0, 1)[0] !== 0;\r\n    }\r\n\r\n    SearchResultsView.prototype.showLastPage = function showFirstPage() {\r\n        return this.getPages().slice(-1)[0] < (this.totalPages() - 1);\r\n    }\r\n    SearchResultsView.prototype.showLastButOnePage = function showLastButOnePage() {\r\n        return !this.showFirstPage() && this.getPages().slice(-1)[0] < (this.totalPages() - 3);\r\n    }\r\n\r\n    SearchResultsView.prototype.firstPageText = function firstPageText() {\r\n        return \"1\";\r\n    }\r\n\r\n    SearchResultsView.prototype.lastPageText = function lastPageText() {\r\n        return this.totalPages();\r\n    }\r\n\r\n    SearchResultsView.prototype.lastButOnePageText = function lastPageText() {\r\n        return this.totalPages() - 1;\r\n    }\r\n\r\n    SearchResultsView.init = function initSearchResultsView(args) {\r\n        return new SearchResultsView(\r\n            args.scope,\r\n            args.uniqueId,\r\n            args.TilesPerPage,\r\n            args.TileName,\r\n            args.QuickViewTileName,\r\n            args.ShowActionMessages || [],\r\n            args.SwitchToClassicPager,\r\n            args.ClassicPagerButtonsToDisplay,\r\n            args.ShowPagerEllipsisInBetween,\r\n            args.ScrollToPageTop);\r\n    };\r\n\r\n    return SearchResultsView;\r\n});\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/GoogleMap',[\"jquery\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\")) :\r\n    console && console.error('GoogleMap does not support non-amd script loading.');\r\n}(this/* window */, function ($) {\r\n    var defaultLat = 0, defaultLng = 0, defaultZoom = 12;\r\n\r\n    function GoogleMap(scope, lat, lng, zoom, allowZoom, allowPan) {\r\n        var $mapCanvas = $(\".google-map-canvas\", scope), $pinElements, center, map, $panel;\r\n\r\n        if (!$mapCanvas.length) {\r\n            console.warn(\"Skipping GoogleMap initialization, cannot find .google-map-canvas element\");\r\n            return;\r\n        }\r\n        console.log(allowPan);\r\n        $pinElements = $(\".google-map-pin\", $mapCanvas).remove();\r\n        center = new google.maps.LatLng(lat, lng);\r\n        map = new google.maps.Map($mapCanvas[0], {\r\n            center: center,\r\n            zoom: zoom,\r\n            scrollwheel: false,\r\n            zoomControl: allowZoom,\r\n            disableDoubleClickZoom: !allowZoom,\r\n            draggable: allowPan,\r\n            mapTypeId: google.maps.MapTypeId.ROADMAP,\r\n            panControl: allowPan\r\n        });\r\n\r\n        $pinElements.each(function () {\r\n            var $pin = $(this);\r\n            var description = $pin.html().trim();\r\n            var marker = new google.maps.Marker({\r\n                position: new google.maps.LatLng(parseFloat($pin.attr(\"data-lat\")), parseFloat($pin.attr(\"data-lng\"))),\r\n                map: map,\r\n                title: $pin.attr(\"data-title\"),\r\n                cursor: description ? 'pointer' : 'default'\r\n            });\r\n\r\n            if (description) {\r\n                description = new google.maps.InfoWindow({ content: description });\r\n                marker.addListener('click', function () {\r\n                    description.open(map, marker);\r\n                });\r\n            }\r\n        });\r\n\r\n        google.maps.event.addListenerOnce(map, \"idle\", (function ($canvas) {\r\n            var $iframe = $(\"iframe\", $canvas);\r\n            if ($iframe.length > 0) {\r\n                $iframe.attr(\"title\", \"Google Map\");\r\n            }\r\n        }).bind(null, $mapCanvas));\r\n\r\n        $mapCanvas.show();\r\n\r\n        // The map must be visible at the time when it is rendered, otherwise it does not render correctly.\r\n        // In some cases, it is not visible on page load and needs to be rerendered manually.\r\n        function rerender() {\r\n            google.maps.event.trigger(map, 'resize');\r\n            map.setCenter(center);\r\n            map.setZoom(zoom);\r\n        }\r\n\r\n        // If the map is inside a variable column then it needs to be rerendered after it has been\r\n        // initialized, otherwise it looks weird because its initialized while the width is 0.\r\n        if ($mapCanvas.closest(\".score-variable-column\").length) {\r\n            rerender();\r\n        }\r\n\r\n        // If the map is inside a hidden accordion/tab/modal panel, it needs to be rerendered when that panel is made visible.\r\n        $panel = $mapCanvas.closest(\".score-accordion-panel\");\r\n        if ($panel.length) {\r\n            $panel.on(\"shown.bs.collapse\", rerender);\r\n        }\r\n\r\n        $panel = $mapCanvas.closest(\".score-tab\");\r\n        if ($panel.length) {\r\n            $panel.on(\"shown.bs.tab\", rerender);\r\n        }\r\n\r\n        $panel = $mapCanvas.closest(\".score-modal\");\r\n        if ($panel.length) {\r\n            $panel.on(\"shown.bs.modal\", rerender);\r\n        }\r\n\r\n        // If the map is inside a hidden carousel pane it needs to be rerendered when that pane is made visible.\r\n        $panel = $mapCanvas.closest(\".score-carousel\");\r\n        if ($panel.length) {\r\n            $panel.on(\"slid.bs.carousel\", rerender);\r\n        }\r\n    }\r\n\r\n    GoogleMap.init = function init(args) {\r\n        return args.IsEditorEditing === true ? null : new GoogleMap(\r\n            args.scope,\r\n            parseFloat(args.Latitude) || defaultLat,\r\n            parseFloat(args.Longitude) || defaultLng,\r\n            parseInt(args.ZoomLevel || defaultZoom, 10),\r\n            Boolean(args.AllowsZoom),\r\n            Boolean(args.AllowsPan)\r\n        );\r\n    };\r\n\r\n    //requireJS load handler - used for passing google maps key to require module definition\r\n    GoogleMap.load = function (name, req, onLoad) {\r\n        // load google deps with google key\r\n        require([\"https://maps.googleapis.com/maps/api/js?v=3.38&key=\" + name + \"&libraries=places\"], function () {\r\n            onLoad(GoogleMap);\r\n        });\r\n    }\r\n\r\n    return GoogleMap;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/IFrame',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('Iframe does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function Iframe(scope) {\r\n        ///<summary>Initialize a new instance of Iframe. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this;\r\n        Object.defineProperty(this, '$scope', { enumerable: true, value: $(scope) });\r\n\r\n        var iframeComp = $('iframe', this.$scope);\r\n\r\n        // #region calculate the size with 4:3 ratio\r\n        if (iframeComp.data('autosize') !== 'disabled') {\r\n            var iframeHolder = iframeComp.parent();\r\n            var width = iframeHolder.width();\r\n\r\n            //This calculation will set the size to a 4:3 ratio.\r\n            iframeComp.css({\r\n                'height': (width / 1.25 | 0) + 'px', \r\n                'width': width + 'px'\r\n            });\r\n        }\r\n        //#endregion\r\n    }\r\n\r\n    Iframe.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new Iframe(args.scope);\r\n    };\r\n\r\n    return Iframe;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/KalturaVideo',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('Kaltura Video does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function KalturaVideo(scope, targetId, wid, uiconfid, videoId, autoPlay, allowFullScreen, closedCaptions, stateChangeMessages, onPlayMessagesPerformer, onPauseMessagePerformer) {\r\n        ///<summary>Initialize a new instance of KalturaVideo. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this, instance = {};\r\n        instance.stateChangeMessages = stateChangeMessages.slice();\r\n        \r\n        Object.defineProperties(this, {\r\n            scope: { enumerable: true, value: scope },\r\n            $scope: { enumerable: true, value: $(scope) },\r\n            stateChangeMessages: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.stateChangeMessages.slice();\r\n                }\r\n            },\r\n            trackPlayStartTimeout: {\r\n                enumerable: !1,\r\n                value: void 0,\r\n                writable: !0\r\n            },\r\n            trackTimelineInterval: {\r\n                enumerable: !1,\r\n                value: void 0,\r\n                writable: !0,\r\n            },\r\n            currentTime: {\r\n                enumerable: !1,\r\n                get: function() {\r\n                    return this.player ? Math.floor(this.player.evaluate('{video.player.currentTime}')) : void 0;\r\n                }\r\n            }\r\n        });\r\n        \r\n        this.addStateChangeMessage = function addStateChangeMessage(message) {\r\n            if (!message) return;\r\n            if (instance.stateChangeMessages.indexOf(message) > -1) {\r\n                console.log(\"Component is already registered for event \" + message);\r\n                return;\r\n            }\r\n            \r\n            instance.stateChangeMessages.push(String(message));\r\n        };\r\n\r\n        //#region play message performer\r\n        if (onPlayMessagesPerformer.length) {\r\n            onPlayMessagesPerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.play, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region show messages performer\r\n        if (onPauseMessagePerformer.length) {\r\n            onPauseMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.pause, self);\r\n            });\r\n        }\r\n        //#endregion\r\n        \r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n\r\n        Object.defineProperties(this,\r\n            {\r\n                videoId: { enumerable: !1, value: videoId },\r\n                player: { enumerable: !1, value: void 0, writable: !0 }\r\n            });\r\n\r\n        var flashVars = { // flashvars allows you to set runtime uiVar configuration overrides. \r\n            'autoPlay': !!autoPlay,\r\n            'autoMute': !!autoPlay\r\n        }\r\n\r\n        if (!!closedCaptions) {\r\n            flashVars.closedCaptions = {\r\n                'hideWhenEmpty': true\r\n            };\r\n        }\r\n\r\n        kWidget.embed({\r\n            'targetId': targetId,\r\n            'wid': wid,\r\n            'uiconf_id': uiconfid,\r\n            'entry_id' : videoId,\r\n            'flashvars': flashVars,\r\n            'params':{ // params allows you to set flash embed params such as wmode, allowFullScreen etc\r\n                    'wmode': 'transparent'\r\n            },\r\n            'readyCallback' : (function(playerId) {\r\n                var player = document.querySelector('#' + playerId);\r\n                this.player = player;\r\n                //this.player.kBind('playerPlayed', this._onPlayHandler.bind(this));\r\n                this.player.kBind('playerPaused', this._onPauseHandler.bind(this));\r\n                this.player.kBind('playerPlayEnd', this._onEndedHandler.bind(this));\r\n                this.player.kBind('playerStateChange', this._onStateChange.bind(this));\r\n\r\n            }).bind(this)\r\n        });\r\n\r\n        mw.setConfig('EmbedPlayer.EnableFullscreen', !!allowFullScreen);\r\n    }\r\n\r\n    KalturaVideo.prototype._onStateChange = function (playerState) {\r\n        if (playerState === 'playing') {\r\n            this._onPlayHandler();\r\n        }\r\n    }\r\n    KalturaVideo.prototype._onPlayHandler = function () {\r\n        if (this.currentTime === 0) {\r\n            $(this).trigger('start.video', [this.currentTime]);\r\n        }\r\n\r\n        $(this).trigger('update.timeline', [this.currentTime]);\r\n        this.startTrackTimeline();\r\n    }\r\n\r\n    KalturaVideo.prototype._onPauseHandler = function () {\r\n        this.stopTrackTimeline();\r\n        if (Math.floor(this.player.evaluate('{duration}')) != this.currentTime) {\r\n            $(this).trigger('pause.video', [this.currentTime]);\r\n        }\r\n    }\r\n\r\n    KalturaVideo.prototype._onEndedHandler = function () {\r\n        this.stopTrackTimeline();\r\n        $(this).trigger('end.video', [this.currentTime]);\r\n    }\r\n\r\n    KalturaVideo.prototype.startTrackTimeline = function () {\r\n        if (this.trackTimelineInterval) {\r\n            clearInterval(this.trackTimelineInterval);\r\n        }\r\n\r\n        this.trackTimelineInterval = setInterval((function () {\r\n            $(this).trigger('update.timeline', [this.currentTime]);\r\n        }).bind(this), 1000 /* 1 second */);\r\n\r\n        $(this).trigger('update.timeline', [this.currentTime]);\r\n    }\r\n\r\n    KalturaVideo.prototype.stopTrackTimeline = function () {\r\n        if (this.trackTimelineInterval) {\r\n            clearInterval(this.trackTimelineInterval);\r\n        }\r\n    }\r\n\r\n    KalturaVideo.prototype.play = function () {\r\n        ///<summary>Start playing the video.</summary>\r\n        var kdp = this.$scope.find('.kaltura-wrapper')[0];\r\n        kdp.sendNotification(\"doPlay\");\r\n        this.transmitStateChange();\r\n    }\r\n\r\n    KalturaVideo.prototype.pause = function () {\r\n        ///<summary>Put the video on pause.</summary>\r\n        var kdp = this.$scope.find('.kaltura-wrapper')[0];\r\n        kdp.sendNotification(\"doPause\");\r\n        this.transmitStateChange();\r\n    }\r\n\r\n    KalturaVideo.prototype.transmitStateChange = function () {\r\n        var messages = this.stateChangeMessages, self = this;\r\n        if (messages.length) {\r\n            messages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self, self.player);\r\n            });\r\n        }\r\n\r\n    }\r\n    // #endregion\r\n\r\n    KalturaVideo.init = function init(args) {\r\n        if (args.IsEditorEditing) return null;\r\n\r\n        var video = new KalturaVideo(args.scope, args.targetId, args.wid, args.uiconfid, args.videoId, args.autoPlay, args.allowFullScreen, args.closedCaptions,\r\n            args.StateChangeMessagesTransmitting || [],\r\n            args.PlayActionMessages || [],\r\n            args.PauseActionMessages || []);\r\n\r\n        return video;\r\n    };\r\n\r\n    //requireJS load handler - used for passing Kaltura PartnerId and Kaltura UiConf Id kto require module definition\r\n    KalturaVideo.load = function (name, req, onLoad) {\r\n        if (!name || name.length <= 0) {\r\n            console && (console.error || console.info)(\"Cannot load Kaltura API, please specify KalturaParnerId and KalturaUiConfId\");\r\n            return;\r\n        }\r\n\r\n        var nameParts = name.split('|');\r\n\r\n        var partnerId = nameParts[0];\r\n        var uiConfId = nameParts[1];\r\n\r\n        // load kaltura deps with google key\r\n        require([\"//cdnapi.kaltura.com/p/\" + partnerId + \"/sp/\" + partnerId + \"00/embedIframeJs/uiconf_id/\" + uiConfId + \"/partner_id/\" + partnerId], function () {\r\n            onLoad(KalturaVideo);\r\n        });\r\n    }\r\n\r\n    return KalturaVideo;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/MegaMenuButtonMenu',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('MegaMenuButtonMenu does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function MegaMenuButtonMenu(scope, clickMessagesTransmitting, stateChangeMessages, onShowMessagesTransmitter, onHideMessageTransmitter) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n\r\n        //#region click messages transmitting registration\r\n        if (clickMessagesTransmitting.length) {\r\n            this.$scope.on(\"click\", \"button\", function() {\r\n                clickMessagesTransmitting.forEach(function(eventName) {\r\n                    window.console && console.info(\"MegaMenuButtonMenu raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                // don't hide event, otherwise bootstrap dropdown won't ever open.\r\n                return 1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region state change message transmitter registration\r\n        if (stateChangeMessages.length) {\r\n            this.$scope.on(\"shown.bs.dropdown hidden.bs.dropdown\", function () {\r\n                stateChangeMessages.forEach(function (eventName) {\r\n                    window.console && console.info(\"MegaMenuButtonMenu raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region on show message transmitter registration\r\n        if (onShowMessagesTransmitter.length) {\r\n            this.$scope.on(\"shown.bs.dropdown\", function() {\r\n                onShowMessagesTransmitter.forEach(function(eventName) {\r\n                    window.console && console.info(\"MegaMenuButtonMenu raises message: '%s'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region on hide message transmitter registration\r\n        if (onHideMessageTransmitter.length) {\r\n            this.$scope.on(\"hidden.bs.dropdown\", function() {\r\n                onHideMessageTransmitter.forEach(function(eventName) {\r\n                    window.console && console.info(\"MegaMenuButtonMenu raises message: '%s'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n    }\r\n\r\n    MegaMenuButtonMenu.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new MegaMenuButtonMenu(args.scope,\r\n                                  args.ClickMessagesTransmitting || [],\r\n                                  args.StateChangeMessagesTransmitting || [],\r\n                                  args.ShowMessagesTransmitting || [],\r\n                                  args.HideMessagesTransmitting || []);\r\n    };\r\n\r\n    return MegaMenuButtonMenu;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/MegaMenuItem',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('MegaMenuItem does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function MegaMenuItem(scope, clickMessagesTransmitting) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n        //#region click messages transmitting registration\r\n        if (clickMessagesTransmitting.length) {\r\n            this.$scope.on(\"click\", \"a.dropdown-toggle.toggle-caret\", function (e) {\r\n                e.preventDefault();\r\n\r\n                clickMessagesTransmitting.forEach(function (eventName) {\r\n                    window.console && console.info(\"MegaMenuItem raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return 1;\r\n            });\r\n        }\r\n        //#endregion\r\n    }\r\n\r\n    MegaMenuItem.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new MegaMenuItem(args.scope, args.ClickMessagesTransmitting || []);\r\n    };\r\n\r\n    return MegaMenuItem;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/MenuListImageLink',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('MenuListImageLink does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function MenuListImageLink(scope, clickMessagesTransmitting) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n\r\n        //#region click messages transmitting registration\r\n        if (clickMessagesTransmitting.length) {\r\n            this.$scope.on(\"click\", \"a\", function (e) {\r\n                e.preventDefault();\r\n\r\n                clickMessagesTransmitting.forEach(function (eventName) {\r\n                    window.console && console.info(\"MenuListImageLink raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n    }\r\n\r\n    MenuListImageLink.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new MenuListImageLink(args.scope,\r\n                                args.ClickMessagesTransmitting || []);\r\n    };\r\n\r\n    return MenuListImageLink;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/MenuListItem',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('MenuListItem does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function MenuListItem(scope, clickMessagesTransmitting) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n\r\n        //#region click messages transmitting registration\r\n        if (clickMessagesTransmitting.length) {\r\n            this.$scope.on(\"click\", \"a\", function (e) {\r\n                e.preventDefault();\r\n\r\n                clickMessagesTransmitting.forEach(function (eventName) {\r\n                    window.console && console.info(\"MenuListItem raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n    }\r\n\r\n    MenuListItem.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new MenuListItem(args.scope, args.ClickMessagesTransmitting || []);\r\n    };\r\n\r\n    return MenuListItem;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/Modal',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('Modal does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function Modal(scope, stateChangeMessages, onShowMessagePerformer, onHideMessagePerformer, onShowMessagesTransmitter, onHideMessageTransmitter) {\r\n        ///<summary>Initialize a new instance of Panel. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this;\r\n        //Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n        Object.defineProperties(this,\r\n        {\r\n            $scope: { enumerable: true, value: $(scope) },\r\n            onShowMessagesTransmitter: {\r\n                enumerable: true,\r\n                value: onShowMessagesTransmitter.slice()\r\n            },\r\n            onHideMessageTransmitter: {\r\n                enumerable: true,\r\n                value: onHideMessageTransmitter.slice()\r\n            }\r\n        });\r\n\r\n\r\n        function doShow() {\r\n            self.show();\r\n            if (stateChangeMessages.length) {\r\n                stateChangeMessages.forEach(function (ev) {\r\n                    eventManager.trigger(ev, \"shown\");\r\n                });\r\n            }\r\n        }\r\n\r\n        function doHide() {\r\n            self.hide();\r\n            if (stateChangeMessages.length) {\r\n                stateChangeMessages.forEach(function (ev) {\r\n                    eventManager.trigger(ev, \"hidden\");\r\n                });\r\n            }\r\n        }\r\n\r\n        if (onShowMessagePerformer.length) {\r\n            onShowMessagePerformer.forEach(function (ev) {\r\n                eventManager.subscribe(ev, doShow);\r\n            });\r\n        }\r\n\r\n        if (onHideMessagePerformer.length) {\r\n            onHideMessagePerformer.forEach(function (ev) {\r\n                eventManager.subscribe(ev, doHide);\r\n            });\r\n        }\r\n\r\n        //this.$scope.find(\".modal-header button.close\").on(\"click\", doHide);\r\n        this.$scope.on('hidden.bs.modal', doHide);\r\n        this.$scope.on('shown.bs.modal', doShow);\r\n    }\r\n\r\n    Modal.prototype.show =  function show() {\r\n        this.$scope.modal(\"show\");\r\n        this.notifyOnShow();\r\n    };\r\n\r\n    Modal.prototype.notifyOnShow = function () {\r\n        var self = this;\r\n        if (this.onShowMessagesTransmitter.length) {\r\n            this.onShowMessagesTransmitter.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    }\r\n\r\n    Modal.prototype.hide =  function hide() {\r\n        this.$scope.modal(\"hide\");\r\n        this.notifyOnHide();\r\n    };\r\n\r\n    Modal.prototype.notifyOnHide = function() {\r\n        var self = this;\r\n        if (this.onHideMessageTransmitter.length) {\r\n            this.onHideMessageTransmitter.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    }\r\n\r\n    Modal.init = function init(args) {\r\n        return args.IsEditorEditing === true ? null : new Modal(\r\n            args.scope,\r\n            args.StateChangeMessagesTransmitting || [],\r\n            args.ShowActionMessages || [],\r\n            args.HideActionMessages || [],\r\n            args.ShowMessagesTransmitting || [],\r\n            args.HideMessagesTransmitting || []\r\n        );\r\n    };\r\n\r\n    return Modal;\r\n}));\n",
    "define('score_bootstrap/Models/Liking/PageLikingModel',[],function () {\r\n    \"use strict\";\r\n\r\n    function PageLikingModel() {\r\n\r\n        var instance = {\r\n                userName: '',\r\n                dateLiked: null\r\n            };\r\n\r\n        Object.defineProperties(this, {\r\n\r\n            userName: {\r\n                enumerable: true,\r\n                get: function () { return instance.userName; },\r\n                set: function (value) {\r\n                    if (value) {\r\n                        instance.userName = String(value);\r\n                    }\r\n                }\r\n            },\r\n\r\n            isLiked: {\r\n                enumerable: true,\r\n                get: function () { return instance.isLiked; },\r\n                set: function (value) {\r\n                    if (value) {\r\n                        instance.isLiked = true;\r\n                    } else {\r\n                        instance.isLiked = false;\r\n                    }\r\n                }\r\n            },\r\n\r\n            pageId: {\r\n                enumerable: true,\r\n                get: function () { return instance.pageId; },\r\n                set: function (value) {\r\n                    if (value) {\r\n                        instance.pageId = String(value);\r\n                    }\r\n                }\r\n            },\r\n\r\n            siteName: {\r\n                enumerable: true,\r\n                get: function () { return instance.siteName; },\r\n                set: function (value) {\r\n                    if (value) {\r\n                        instance.siteName = String(value);\r\n                    }\r\n                }\r\n            },\r\n\r\n            pageVersion: {\r\n                enumerable: true,\r\n                get: function () { return instance.pageVersion; },\r\n                set: function (value) {\r\n                    if (value) {\r\n                        instance.pageVersion = String(value);\r\n                    }\r\n                }\r\n            },\r\n\r\n            uniqueId: {\r\n                enumerable: true,\r\n                get: function () { return instance.uniqueId; },\r\n                set: function (value) {\r\n                    if (value) {\r\n                        instance.uniqueId = String(value);\r\n                    }\r\n                }\r\n            },\r\n\r\n            language: {\r\n                enumerable: true,\r\n                get: function () { return instance.language; },\r\n                set: function (value) {\r\n                    if (value) {\r\n                        instance.language = String(value);\r\n                    }\r\n                }\r\n            },\r\n            \r\n            dateLiked: {\r\n                enumerable: true,\r\n                get: function () { return instance.dateLiked; },\r\n                set: function (value) {\r\n                    if (value) {\r\n                        instance.dateLiked = Date(value);\r\n                    } else {\r\n                        instance.dateLiked = null;\r\n                    }\r\n                    \r\n                }\r\n            }\r\n        });\r\n    }\r\n\r\n    return PageLikingModel;\r\n});\n",
    "define('score_bootstrap/Components/PageLike',[\r\n    \"jquery\",\r\n    \"knockout\",\r\n    \"score_bootstrap/Models/Liking/PageLikingModel\",\r\n    \"eventManager\"\r\n], function (\r\n    $,\r\n    ko,\r\n    PageLikingModel,\r\n    eventManager\r\n) {\r\n    \"use strict\";\r\n\r\n    function PageLike(scope, renderingParameters, isLiked, likeNumber, dateLiked, userName, pageId, siteName, pageVersion, uniqueId, language, likePageApiUrl) {\r\n        var self = this;\r\n        var instance = {};\r\n        instance.pageLikeMessagesTransmitting = renderingParameters.PageLikeMessagesTransmitting.slice();\r\n        instance.unlikeMessagesTransmitting = renderingParameters.UnlikeMessagesTransmitting.slice();\r\n        instance.showMessagesTransmitting = renderingParameters.ShowMessagesTransmitting.slice();\r\n        instance.hideMessagesTransmitting = renderingParameters.HideMessagesTransmitting.slice();\r\n        instance.clickMessagesTransmitting = renderingParameters.ClickMessagesTransmitting.slice();\r\n\r\n        this.likeNumber = ko.observable(likeNumber);\r\n        this.isLiked = ko.observable(isLiked);\r\n        this.show = ko.observable(true);\r\n\r\n        initializePageLikingModel();\r\n\r\n        var pageLikingModel;\r\n        function initializePageLikingModel() {\r\n            pageLikingModel = new PageLikingModel();\r\n            if (userName !== undefined) pageLikingModel.userName = userName;\r\n            if (pageId !== undefined) pageLikingModel.pageId = pageId;\r\n            if (dateLiked !== undefined) pageLikingModel.dateLiked = dateLiked;\r\n            if (siteName !== undefined) pageLikingModel.siteName = siteName;\r\n            if (pageVersion !== undefined) pageLikingModel.pageVersion = pageVersion;\r\n            if (uniqueId !== undefined) pageLikingModel.uniqueId = uniqueId;\r\n            if (language !== undefined) pageLikingModel.language = language;\r\n            if (isLiked !== undefined) pageLikingModel.isLiked = isLiked;\r\n        }\r\n\r\n        Object.defineProperties(this, {\r\n            pageLikingModel: { value: pageLikingModel },\r\n            likePageApiUrl: { value: likePageApiUrl },\r\n            pageLikeMessagesTransmitting: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.pageLikeMessagesTransmitting.slice();\r\n                }\r\n            },\r\n            unlikeMessagesTransmitting: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.unlikeMessagesTransmitting.slice();\r\n                }\r\n            },\r\n            showMessagesTransmitting: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.showMessagesTransmitting.slice();\r\n                }\r\n            },\r\n            hideMessagesTransmitting: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.hideMessagesTransmitting.slice();\r\n                }\r\n            },\r\n            clickMessagesTransmitting: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.clickMessagesTransmitting.slice();\r\n                }\r\n            }\r\n        });\r\n\r\n        this.clickOnLike = function () {\r\n            if (!self.pageLikingModel.isLiked) {\r\n                self.pageLikeAction();\r\n            } else {\r\n                self.pageUnlikeAction();\r\n            }\r\n        }\r\n\r\n        this.pageLikeAction = function () {\r\n            if (!self.pageLikingModel.isLiked) {\r\n                self.pageLikingModel.isLiked = true;\r\n                self.likePageRequest().then(function (data) {\r\n                    self.likeNumber(data.LikesCount);\r\n                    self.isLiked(data.IsLiked);\r\n                });\r\n\r\n                self.transmitPageLikeMessage();\r\n                self.transmitShowMessage();\r\n                self.transmitClickMessage();\r\n            }\r\n        }\r\n\r\n        this.pageUnlikeAction = function () {\r\n            if (self.pageLikingModel.isLiked) {\r\n                self.pageLikingModel.isLiked = false;\r\n                self.likePageRequest().then(function (data) {\r\n                    self.likeNumber(data.LikesCount);\r\n                    self.isLiked(data.IsLiked);\r\n                });\r\n\r\n                self.transmitResetPageLikeMessage();\r\n                self.transmitHideMessage();\r\n                self.transmitClickMessage();\r\n            }\r\n        }\r\n\r\n        this.showLike = function () {\r\n            self.show(true);\r\n        }\r\n\r\n        this.hideLike = function () {\r\n            self.show(false);\r\n        }\r\n\r\n        if (renderingParameters.PageLikeActionMessage.length) {\r\n            renderingParameters.PageLikeActionMessage.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.pageLikeAction, self);\r\n            });\r\n        }\r\n\r\n        if (renderingParameters.PageUnlikeActionMessage.length) {\r\n            renderingParameters.PageUnlikeActionMessage.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.pageUnlikeAction, self);\r\n            });\r\n        }\r\n\r\n        if (renderingParameters.ShowActionMessages.length) {\r\n            renderingParameters.ShowActionMessages.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.showLike, self);\r\n            });\r\n        }\r\n\r\n        if (renderingParameters.HideActionMessages.length) {\r\n            renderingParameters.HideActionMessages.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hideLike, self);\r\n            });\r\n        }\r\n\r\n        if (this.pageLikeMessagesTransmitting.length) {\r\n            this.pageLikeMessagesTransmitting.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n\r\n        if (this.unlikeMessagesTransmitting.length) {\r\n            this.unlikeMessagesTransmitting.forEach(function(ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n\r\n        ko.applyBindings(this, scope);\r\n    }\r\n\r\n    PageLike.prototype.transmitPageLikeMessage = function () {\r\n        var messages = this.pageLikeMessagesTransmitting, self = this;\r\n        if (messages.length) {\r\n            messages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    }\r\n\r\n    PageLike.prototype.transmitResetPageLikeMessage = function () {\r\n        var messages = this.unlikeMessagesTransmitting, self = this;\r\n        if (messages.length) {\r\n            messages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    }\r\n\r\n    PageLike.prototype.transmitShowMessage = function () {\r\n        var messages = this.showMessagesTransmitting, self = this;\r\n        if (messages.length) {\r\n            messages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    }\r\n\r\n    PageLike.prototype.transmitHideMessage = function () {\r\n        var messages = this.hideMessagesTransmitting, self = this;\r\n        if (messages.length) {\r\n            messages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    }\r\n\r\n    PageLike.prototype.transmitClickMessage = function () {\r\n        var messages = this.clickMessagesTransmitting, self = this;\r\n        if (messages.length) {\r\n            messages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    }\r\n    \r\n    PageLike.prototype.likePageRequest = function likePageRequest() {\r\n        var jqXHR = $.ajax({\r\n            url: this.likePageApiUrl,\r\n            data: JSON.stringify(this.pageLikingModel),\r\n            type: \"POST\",\r\n            contentType: \"application/json; charset=utf-8\",\r\n            dataType: \"json\"\r\n        });\r\n\r\n        return jqXHR;\r\n    }\r\n\r\n    PageLike.init = function init(args) {\r\n        return args.IsExperienceEditorEditing === true ? null :\r\n            new PageLike(args.scope, args.RenderingParameters, args.IsLiked, args.LikeNumber, args.DateLiked, args.UserName, args.PageId, args.SiteName, args.PageVersion, args.UniqueId, args.Language, args.LikePageApiUrl);\r\n    };\r\n\r\n    return PageLike;\r\n});\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/Panel',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('Panel does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function Panel(scope, stateChangeMessages, onShowMessagesPerformer, onHideMessagePerformer) {\r\n        ///<summary>Initialize a new instance of Panel. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this;\r\n        Object.defineProperty(this, \"scope\", { enumerable: true, value: scope });\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n        Object.defineProperty(this, \"stateChangeMessages\", { enumerable: true, value: stateChangeMessages.slice() });\r\n\r\n        //#region show messages performer\r\n        if (onShowMessagesPerformer.length) {\r\n            onShowMessagesPerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.show, self);\r\n            });\r\n\r\n        }\r\n        //#endregion\r\n\r\n\r\n        //#region hide mesage performer\r\n        if (onHideMessagePerformer.length) {\r\n            onHideMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hide, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        // https://brainjocks.atlassian.net/browse/SCORE-1334\r\n        // prevents Alert being removed from DOM, when X button is clicked\r\n        self.$scope.on('close.bs.alert', function () {\r\n            self.$scope.hide();\r\n            return false;\r\n        });\r\n    }\r\n\r\n    Panel.prototype.show = function () {\r\n        ///<summary>Make panel visible with jQuery.show() method.</summary>\r\n        this.$scope.show();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Panel.prototype.hide = function () {\r\n        ///<summary>Make panel hidden with jQuery.hide() method.</summary>\r\n        this.$scope.hide();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Panel.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new Panel(args.scope,\r\n                        args.StateChangeMessagesTransmitting || [],\r\n                        args.ShowActionMessages || [],\r\n                        args.HideActionMessages || []);\r\n    };\r\n\r\n    return Panel;\r\n}));\n",
    "; (function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/Picture',[\"jquery\", \"eventManager\", \"picturefill\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\"), require(\"picturefill\")) :\r\n    console && console.error('Picture does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager, picturefill) {\r\n\r\n    function Picture(scope, stateChangeMessages, onShowMessagesPerformer, onHideMessagePerformer) {\r\n        ///<summary>Initialize a new instance of Picture. </summary>\r\n\r\n        var self = this;\r\n        Object.defineProperty(this, '$scope', { enumerable: true, value: $(scope) });\r\n        Object.defineProperty(this, \"stateChangeMessages\", { enumerable: true, value: stateChangeMessages.slice() });\r\n\r\n        //#region show messages performer\r\n        if (onShowMessagesPerformer.length) {\r\n            onShowMessagesPerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.show, self);\r\n            });\r\n\r\n        }\r\n        //#endregion\r\n\r\n\r\n        //#region hide mesage performer\r\n        if (onHideMessagePerformer.length) {\r\n            onHideMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hide, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        picturefill({ context: this.$scope.get(0) });\r\n    }\r\n\r\n    Picture.prototype.show = function () {\r\n        ///<summary>Make panel visible with jQuery.show() method.</summary>\r\n        this.$scope.show();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Picture.prototype.hide = function () {\r\n        ///<summary>Make panel hidden with jQuery.hide() method.</summary>\r\n        this.$scope.hide();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    Picture.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new Picture(args.scope,\r\n                args.StateChangeMessagesTransmitting || [],\r\n                args.ShowActionMessages || [],\r\n                args.HideActionMessages || []);\r\n    };\r\n\r\n    return Picture;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/PictureHero',[\"jquery\", \"eventManager\", \"score_bootstrap/Base/PictureAsBackground\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\"), require(\"score_bootstrap/Base/PictureAsBackground\")) :\r\n    console && console.error('PictureHero does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager, PictureAsBackground) {\r\n    \r\n    function PictureHero(scope) {\r\n        ///<summary>Initialize a new instance of PictureStripe.</summary>\r\n\r\n        Object.defineProperty(this, \"$scope\", { enumerable: !0, value: $(scope) });\r\n\r\n        PictureAsBackground.call(this, scope, '> picture', '> .score-editField-group > .pic-thumb > picture');\r\n    }\r\n\r\n    PictureHero.prototype = Object.create(PictureAsBackground.prototype);\r\n\r\n    PictureHero.init = function init(args) {\r\n        return new PictureHero(args.scope);\r\n    };\r\n\r\n    return PictureHero;\r\n}));\n",
    "; (function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/PictureHighlight',[\"picturefill\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"picturefill\")) :\r\n    console && console.error('Picture does not support non-amd script loading.');\r\n}(this/* window */, function (picturefill) {\r\n\r\n    // Loads picturefill.js to support <picture> tag in IE\r\n\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/PictureStripe',[\"jquery\", \"eventManager\", \"score_bootstrap/Base/PictureAsBackground\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\"), require(\"score_bootstrap/Base/PictureAsBackground\")) :\r\n    console && console.error('PictureStripe does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager, PictureAsBackground) {\r\n    \r\n    function PictureStripe(scope) {\r\n        ///<summary>Initialize a new instance of PictureStripe.</summary>\r\n\r\n        Object.defineProperty(this, \"$scope\", { enumerable: !0, value: $(scope) });\r\n\r\n        PictureAsBackground.call(this, scope, '> picture', '> .score-editField-group > .pic-thumb > picture');\r\n    }\r\n\r\n    PictureStripe.prototype = Object.create(PictureAsBackground.prototype);\r\n\r\n    PictureStripe.init = function init(args) {\r\n        return new PictureStripe(args.scope);\r\n    };\r\n\r\n    return PictureStripe;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/PictureStyleBox',[\"jquery\", \"eventManager\", \"score_bootstrap/Base/PictureAsBackground\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\"), require(\"score_bootstrap/Base/PictureAsBackground\")) :\r\n    console && console.error('PictureStyleBox does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager, PictureAsBackground) {\r\n    \r\n    function PictureStyleBox(scope, stateChangeMessages, onShowMessagesPerformer, onHideMessagePerformer) {\r\n        ///<summary>Initialize a new instance of StyleBox. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this;\r\n\r\n        Object.defineProperty(this, \"$scope\", { enumerable: !0, value: $(scope) });\r\n        Object.defineProperty(this, \"stateChangeMessages\", { enumerable: !0, value: stateChangeMessages.slice() });\r\n\r\n        //#region show messages performer\r\n        if (onShowMessagesPerformer.length) {\r\n            onShowMessagesPerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.show, self);\r\n            });\r\n\r\n        }\r\n        //#endregion\r\n\r\n\r\n        //#region hide mesage performer\r\n        if (onHideMessagePerformer.length) {\r\n            onHideMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hide, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        PictureAsBackground.call(this, scope, '> picture', '> .score-editField-group > .pic-thumb > picture');\r\n\r\n    }\r\n\r\n    PictureStyleBox.prototype = Object.create(PictureAsBackground.prototype);\r\n\r\n    PictureStyleBox.prototype.show = function () {\r\n        ///<summary>Make StyleBox visible with jQuery.show() method.</summary>\r\n        this.$scope.show();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    PictureStyleBox.prototype.hide = function () {\r\n        ///<summary>Make StyleBox hidden with jQuery.hide() method.</summary>\r\n        this.$scope.hide();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    PictureStyleBox.init = function init(args) {\r\n        return new PictureStyleBox(args.scope,\r\n                                   args.StateChangeMessagesTransmitting || [],\r\n                                   args.ShowActionMessages || [],\r\n                                   args.HideActionMessages || []);\r\n    };\r\n\r\n    return PictureStyleBox;\r\n}));\n",
    "; (function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/SlickSlider',[\"jquery\", \"slick\"], factory) :\r\n        typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"slick\")) :\r\n    console && console.error('Slick Slider does not support non-amd script loading.');\r\n}(this/* window */, function ($) {\r\n\r\n    function SlickSlider(scope, args) {\r\n        Object.defineProperty(this, \"scope\", { enumerable: true, value: scope, writable: !1 });\r\n        Object.defineProperty(this, \"$scope\", { enumerable: !0, value: $(scope) });\r\n        Object.defineProperty(this, 'lastDirection', { enumerable: !1, value: void 0, writable: !0 });\r\n\r\n        var settings = {\r\n            autoplay: args.Speed > 0,\r\n            autoplaySpeed: args.Speed,\r\n            slidesToShow: args.SlidesToShow || 1,\r\n            slidesToScroll: args.SlidesToScroll || 1,\r\n            \r\n            // defaults\r\n            dots: true,\r\n            responsive: []\r\n        };\r\n\r\n        if (args.ResponsiveDisplay) {\r\n            var breakpoints = [];\r\n            args.ResponsiveDisplay\r\n                .split('|')\r\n                .forEach(function (kvp) {\r\n                    var breakpointValue = kvp.split('=')[0];\r\n                    var slidesToShowCount = kvp.split('=')[1];\r\n                    var breakpoint = {\r\n                        breakpoint: breakpointValue,\r\n                        settings: {\r\n                            slidesToShow: slidesToShowCount,\r\n                            slidesToScroll: Math.min(args.SlidesToScroll, slidesToShowCount)\r\n                        }\r\n                    };\r\n                    breakpoints.push(breakpoint);\r\n                });\r\n\r\n            settings.responsive = breakpoints;\r\n        }\r\n\r\n        var slickSlider = this.$scope.slick(settings)[0].slick;\r\n        Object.defineProperty(this, 'slider', { enumerable: !0, value: slickSlider, writable: !1, configurable: !0 });\r\n\r\n        slickSlider.slideHandler = this._captureDirection.bind(this, slickSlider, slickSlider.slideHandler);\r\n        this.$scope.on('afterChange', this._onAfterChangeSlide.bind(this));\r\n        this.$scope.on('beforeChange', this._onBeforeChangeSlide.bind(this));\r\n    }\r\n\r\n    /**\r\n     * Capture slider direction, it can be done only with raw parameters received in slideHandler function.\r\n     * @param {} slider an instance of a slider, to run the original function in a context of it\r\n     * @param {} baseFn a reference to the original slideHandler function\r\n     * @param {} index unmodified index number, to understand direction\r\n     * @returns {} \r\n     */\r\n    SlickSlider.prototype._captureDirection = function (slider, baseFn, index) {\r\n        this.lastDirection = index > slider.currentSlide ? 'left' : 'right';\r\n        baseFn.apply(slider, Array.prototype.slice.call(arguments, 2));\r\n    }\r\n\r\n    /**\r\n     * Notify the world about slide is going to be changed\r\n     */\r\n    SlickSlider.prototype._onBeforeChangeSlide = function () {\r\n        $(this).trigger('beforeChange.slider', [this, this.lastDirection]);\r\n    }\r\n\r\n    /**\r\n     * Notify the world about slide was changed\r\n     * @param {jQuery.Event} event from bootstrap carousel \r\n     */\r\n    SlickSlider.prototype._onAfterChangeSlide = function() {\r\n        $(this).trigger('afterChange.slider', [this, this.lastDirection]);\r\n    };\r\n\r\n    SlickSlider.init = function(args) {\r\n        if (args.IsEditorEditing) return null;\r\n\r\n        var slick = new SlickSlider(args.scope, args);\r\n\r\n        return slick;\r\n    }\r\n\r\n    return SlickSlider;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/SplitButtnMenu',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('SplitButtonMenu does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function SplitButtonMenu(scope, clickMessagesTransmitting, stateChangeMessages, onShowMessagesTransmitter, onHideMessageTransmitter) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n\r\n        //#region click messages transmitting registration\r\n        if (clickMessagesTransmitting.length) {\r\n            this.$scope.on(\"click\", \"button\", function() {\r\n                clickMessagesTransmitting.forEach(function(eventName) {\r\n                    window.console && console.info(\"SplitButtonMenu raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return 1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region state change message transmitter registration\r\n        if (stateChangeMessages.length) {\r\n            this.$scope.on(\"shown.bs.dropdown hidden.bs.dropdown\", function () {\r\n                stateChangeMessages.forEach(function (eventName) {\r\n                    window.console && console.info(\"SplitButtonMenu raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region on show message transmitter registration\r\n        if (onShowMessagesTransmitter.length) {\r\n            this.$scope.on(\"shown.bs.dropdown\", function() {\r\n                onShowMessagesTransmitter.forEach(function(eventName) {\r\n                    window.console && console.info(\"SplitButtonMenu raises message: '%s'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region on hide message transmitter registration\r\n        if (onHideMessageTransmitter.length) {\r\n            this.$scope.on(\"hidden.bs.dropdown\", function() {\r\n                onHideMessageTransmitter.forEach(function(eventName) {\r\n                    window.console && console.info(\"SplitButtonMenu rauses message: '%s'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return !1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n    }\r\n\r\n    SplitButtonMenu.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new SplitButtonMenu(args.scope,\r\n                                  args.ClickMessagesTransmitting || [],\r\n                                  args.StateChangeMessagesTransmitting || [],\r\n                                  args.ShowMessagesTransmitting || [],\r\n                                  args.HideMessagesTransmitting || []);\r\n    };\r\n\r\n    return SplitButtonMenu;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/StyleBox',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('StyleBox does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function StyleBox(scope, stateChangeMessages, onShowMessagesPerformer, onHideMessagePerformer) {\r\n        ///<summary>Initialize a new instance of StyleBox. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n        Object.defineProperty(this, \"stateChangeMessages\", { enumerable: true, value: stateChangeMessages.slice() });\r\n\r\n        //#region show messages performer\r\n        if (onShowMessagesPerformer.length) {\r\n            onShowMessagesPerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.show, self);\r\n            });\r\n\r\n        }\r\n        //#endregion\r\n\r\n\r\n        //#region hide mesage performer\r\n        if (onHideMessagePerformer.length) {\r\n            onHideMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hide, self);\r\n            });\r\n        }\r\n        //#endregion\r\n    }\r\n\r\n    StyleBox.prototype.show = function () {\r\n        ///<summary>Make StyleBox visible with jQuery.show() method.</summary>\r\n        this.$scope.show();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    StyleBox.prototype.hide = function () {\r\n        ///<summary>Make StyleBox hidden with jQuery.hide() method.</summary>\r\n        this.$scope.hide();\r\n\r\n        var self = this;\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n    };\r\n\r\n    StyleBox.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new StyleBox(args.scope,\r\n                        args.StateChangeMessagesTransmitting || [],\r\n                        args.ShowActionMessages || [],\r\n                        args.HideActionMessages || []);\r\n    };\r\n\r\n    return StyleBox;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/TabPanel',[\"jquery\", \"eventManager\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\")) :\r\n    console && console.error('TabPanel does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n\r\n    function TabPanel(scope, stateChangeMessages, onShowMessagesPerformer, onHideMessagePerformer) {\r\n        ///<summary>Initialize a new instance of TabPanel. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this;\r\n        Object.defineProperty(this, \"scope\", { enumerable: true, value: scope });\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n\r\n        //#region state change message transmitter registration\r\n        if (stateChangeMessages.length) {\r\n            $(\"a[href='#\" + this.$scope.attr(\"id\") + \"']\").on(\"shown.bs.tab hidden.bs.tab\", function () {\r\n                stateChangeMessages.forEach(function (eventName) {\r\n                    window.console && window.console.info && window.console.info(\"TabPanel raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return!1;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region show messages performer\r\n        if (onShowMessagesPerformer.length) {\r\n            onShowMessagesPerformer.forEach(function(messageName) {\r\n                eventManager.subscribe(messageName, self.show, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region hide mesage performer\r\n        if (onHideMessagePerformer.length) {\r\n            onHideMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.hide, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        $(\"a[href='#\" + this.$scope.attr(\"id\") + \"']\")\r\n            .on('show.bs.tab', this._onShowHandler.bind(this))\r\n            .on('hide.bs.tab', this._onHideHandler.bind(this));\r\n\r\n    }\r\n\r\n    TabPanel.prototype._onShowHandler = function (e) {\r\n        $(this).trigger('focus', [this, e]);\r\n    }\r\n\r\n    TabPanel.prototype._onHideHandler = function (e) {\r\n        $(this).trigger('blur', [this, e]);\r\n    }\r\n\r\n    /**\r\n     * Make current tab active\r\n     * @returns {} \r\n     */\r\n    TabPanel.prototype.show = function () {\r\n        $(\"a[href='#\" + this.$scope.attr(\"id\") + \"']\").tab(\"show\");\r\n    }\r\n\r\n    /**\r\n     * Activate the first sibling tab in current tabset. To hide current selected tab\r\n     * @returns {} \r\n     */\r\n    TabPanel.prototype.hide = function () {\r\n        var siblingTabs = $(\"a[href='#\" + this.$scope.attr(\"id\") + \"']\")\r\n                            .closest(\".nav.nav-tabs\")\r\n                            .find(\"a[data-toggle=tab][href!='#\" + this.$scope.attr(\"id\") + \"']\");\r\n\r\n        if (siblingTabs.length) {\r\n            siblingTabs[0].tab(\"show\");\r\n        } else {\r\n            console.info(\"There is no sibling tabs which we can activate to hide current tab.\");\r\n        }\r\n\r\n    }\r\n\r\n    TabPanel.init = function init(args) {\r\n\r\n        if (args.IsEditorEditing) return null;\r\n\r\n        var tabPanel = new TabPanel(args.scope,\r\n            args.StateChangeMessagesTransmitting || [],\r\n            args.ShowActionMessages || [],\r\n            args.HideActionMessages || []);\r\n\r\n        return tabPanel;\r\n    };\r\n\r\n    return TabPanel;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/TabSet',[\"jquery\", \"eventManager\", \"cssEscape\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\"), require(\"cssEscape\")) :\r\n    console && console.error('TabSet does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager) {\r\n    \r\n    function TabSet(scope, stateChangeMessages) {\r\n        var self = this;\r\n        Object.defineProperty(this, \"$scope\", { enumerable: true, value: $(scope) });\r\n        \r\n        //#region message transmitter registration\r\n        if (stateChangeMessages.length) {\r\n            this.$scope.on(\"shown.bs.tab\", function () {\r\n\r\n                stateChangeMessages.forEach(function (eventName) {\r\n                    window.console && console.info(\"TabSet raises message: \\'%s\\'\", eventName);\r\n\r\n                    eventManager.trigger(eventName, self);\r\n                });\r\n\r\n                return false;\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        this._setupDeepLinking();\r\n\r\n    }\r\n\r\n    TabSet.prototype._setupDeepLinking = function () {\r\n        var that = this;\r\n        // make tabs with anchors change the URL to make them sticky\r\n        this.$scope.on('shown.bs.tab',\r\n            'a[data-toggle=\"tab\"][href*=\"#tab-\"]',\r\n            function () {\r\n\r\n                var anchor = '';\r\n                var oldHash = window.location.hash.substring(1);\r\n                \r\n                if ($(this).is('a[data-toggle=\"tab\"][href*=\"#tab-\"][data-anchorable=\"true\"]')) {\r\n                    anchor = $(this).attr(\"href\").replace(\"#tab-\", \"\");\r\n                }\r\n\r\n                if (anchor) {\r\n                    window.history && window.history.pushState && window.history.pushState(null, null, '#' + anchor);\r\n                    window.location.hash = anchor;\r\n                    // Manually trigger event \"hashchange\" as it's not triggered automatically when clicking on tab\r\n                    $(window).trigger(\"hashchange\", anchor);\r\n                } else {\r\n                    // if we open a tab without deep linking, we should release previously selected anchorable tab.\r\n                    if (oldHash && $(this).closest('.nav-tabs').find('a[data-toggle=\"tab\"][href*=\"#' + CSS.escape('tab-' + oldHash) + '\"][data-anchorable=\"true\"]').length) {\r\n                        // clear hash without page jump in modern browsers\r\n                        window.history && window.history.pushState && window.history.pushState(null, null, '#');\r\n                        window.location.hash = '';\r\n                    }\r\n                    // otherwise we don't care.\r\n                }\r\n\r\n            });\r\n\r\n        // make all tabs with anchors to be visible when we walk along the browser history\r\n        $(window).on(\"hashchange\", function () {\r\n            if (!window.location.hash) return !1;\r\n\r\n            // find a tab which should be activated within current tabset. otherwise keep tabset without any changes.\r\n            var tab = that.$scope.find('a[href=\"#' + CSS.escape('tab-' + window.location.hash.substring(1)) + '\"]');\r\n            if (tab.length) {\r\n                tab.click();\r\n            }\r\n        });\r\n\r\n        if (window.location.hash) {\r\n            // find a tab which should be activated within current tabset. otherwise keep tabset without any changes.\r\n            var tab1 = this.$scope.find('a[href=\"#' + CSS.escape('tab-' + window.location.hash.substring(1)) + '\"]');\r\n            if (tab1.length) {\r\n                tab1.click();\r\n            }\r\n        }\r\n    }\r\n\r\n    TabSet.init = function init(args) {\r\n        return args.IsEditorEditing === true\r\n            ? null\r\n            : new TabSet(args.scope,\r\n                         args.StateChangeMessagesTransmitting || []);\r\n    };\r\n\r\n    return TabSet;\r\n}));\n",
    ";(function (global, factory) {\r\n    typeof define === 'function' && define.amd ? define('score_bootstrap/Components/VimeoVideo',[\"jquery\", \"eventManager\", \"//player.vimeo.com/api/player.js\"], factory) :\r\n    typeof exports === 'object' && typeof module !== typeof void 0 ? module.exports = factory(require(\"jquery\"), require(\"eventManager\"), require(\"//player.vimeo.com/api/player.js\")) :\r\n    console && console.error('Vimeo does not support non-amd script loading.');\r\n}(this/* window */, function ($, eventManager, vimeoPlayer) {\r\n\r\n    function VimeoVideo(scope, stateChangeMessages, onPlayMessagesPerformer, onPauseMessagePerformer) {\r\n        ///<summary>Initialize a new instance of YoutubeVideo. Subscribe to messages which are passed to current instance.</summary>\r\n\r\n        var self = this, instance = {};\r\n        instance.stateChangeMessages = stateChangeMessages.slice();\r\n        \r\n        Object.defineProperties(this, {\r\n            scope: { enumerable:!1, value: scope },\r\n            $scope: { enumerable: true, value: $(scope) },\r\n            stateChangeMessages: {\r\n                enumerable: true,\r\n                get: function () {\r\n                    return instance.stateChangeMessages.slice();\r\n                }\r\n            },\r\n            trackTimelineInterval: {\r\n                enumerable: !1,\r\n                value: void 0,\r\n                writable: !0,\r\n            },\r\n            currentTime: {\r\n                enumerable: !1,\r\n                value: void 0,\r\n                writable: !0\r\n            },\r\n            isInteractedWithUser: { enumerable: true, configurable: true, writable: true, value: false }\r\n        });\r\n        \r\n        this.addStateChangeMessage = function addStateChangeMessage(message) {\r\n            if (!message) return;\r\n            if (instance.stateChangeMessages.indexOf(message) > -1) {\r\n                console.log(\"Component is already registered for event \" + message);\r\n                return;\r\n            }\r\n            \r\n            instance.stateChangeMessages.push(String(message));\r\n        };\r\n\r\n        //#region play message performer\r\n        if (onPlayMessagesPerformer.length) {\r\n            onPlayMessagesPerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.play, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        //#region show messages performer\r\n        if (onPauseMessagePerformer.length) {\r\n            onPauseMessagePerformer.forEach(function (messageName) {\r\n                eventManager.subscribe(messageName, self.pause, self);\r\n            });\r\n        }\r\n        //#endregion\r\n\r\n        if (this.stateChangeMessages.length) {\r\n            this.stateChangeMessages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self);\r\n            });\r\n        }\r\n        \r\n        var player = new vimeoPlayer(this.$scope.find('iframe'));\r\n        player.ready().then(function() {\r\n            var videoId = self.$scope.find('iframe').attr('id');\r\n\r\n            Object.defineProperties(self,\r\n                {\r\n                    videoId: { enumerable: true, value: videoId },\r\n                    player: { enumerable: false, value: player }\r\n                });\r\n        });\r\n\r\n        player.on('play', this._onPlayHandler.bind(this));\r\n        //player.on('pause.score', this._onPauseHandler.bind(this));\r\n        player.on('ended', this._onEndedHandler.bind(this));\r\n    }\r\n\r\n    VimeoVideo.prototype._onPlayHandler = function (data) {\r\n        this.currentTime = Math.floor(data.seconds);\r\n        this.isInteractedWithUser = true;\r\n\r\n        if (data.seconds === 0) {\r\n            $(this).trigger('start.video', [this.currentTime]);\r\n        }\r\n\r\n        $(this).trigger('update.timeline', [this.currentTime]);\r\n        this.startTrackTimeline();\r\n    }\r\n\r\n    VimeoVideo.prototype._onPauseHandler = function (data) {\r\n        this.stopTrackTimeline();\r\n\r\n        console.log('vimeo video paused');\r\n        var oldValue = this.currentTime;\r\n        this.currentTime = Math.floor(data.seconds);\r\n        this.isInteractedWithUser = true;\r\n        if (oldValue !== this.currentTime) {\r\n            $(this).trigger('update.timeline', [this.currentTime]);\r\n        }\r\n\r\n        $(this).trigger('pause.video', [this.currentTime]);\r\n    }\r\n\r\n    VimeoVideo.prototype._onEndedHandler = function (data) {\r\n        this.stopTrackTimeline();\r\n\r\n        this.currentTime = Math.floor(data.seconds);\r\n        this.isInteractedWithUser = true;\r\n        $(this).trigger('end.video', [this.currentTime]);\r\n    }\r\n\r\n    VimeoVideo.prototype.startTrackTimeline = function () {\r\n        if (this.trackTimelineInterval) {\r\n            clearInterval(this.trackTimelineInterval);\r\n        }\r\n\r\n        this.trackTimelineInterval = setInterval((function () {\r\n            this.player.getCurrentTime().then((function(seconds) {\r\n                this.currentTime = Math.floor(seconds);\r\n                $(this).trigger('update.timeline', [this.currentTime]);\r\n            }).bind(this));\r\n        }).bind(this), 1000 /* 1 second */);\r\n\r\n        $(this).trigger('update.timeline', [this.currentTime]);\r\n\r\n        // some vimeo video keep sending \"pause\" event all the time while pause. That's why we assign a handler when start tracking and remove it when player stopped.\r\n        this.player.on('pause', this._onPauseHandler.bind(this));\r\n    }\r\n\r\n    VimeoVideo.prototype.stopTrackTimeline = function () {\r\n        if (this.trackTimelineInterval) {\r\n            clearInterval(this.trackTimelineInterval);\r\n        }\r\n\r\n        // some vimeo video keep sending \"pause\" event all the time while pause.\r\n        this.player.off('pause');\r\n    }\r\n\r\n    VimeoVideo.prototype.play = function () {\r\n        ///<summary>Start playing the video.</summary>\r\n        var player = new vimeoPlayer(this.$scope.find('iframe'));\r\n\r\n        // On certain mobile devices, including those running iOS, and in certain desktop browsers like Chrome and Safari, \r\n        // you can't programmatically trigger the initial playback of a video.\r\n        // https://developer.vimeo.com/player/sdk/reference#play-a-video\r\n        // We can play embedded media via API in muted state only or when user has already interacted with the player.\r\n        if (!this.isInteractedWithUser) {\r\n            player.setVolume(0);\r\n        }\r\n\r\n        player.play().then((function() {\r\n            this.transmitStateChange();\r\n        }).bind(this)).catch(function (error) {\r\n            switch (error.name) {\r\n                case 'PasswordError':\r\n                    // the video is password-protected and the viewer needs to enter the\r\n                    // password first\r\n                    break;\r\n\r\n                case 'PrivacyError':\r\n                    // the video is private\r\n                    break;\r\n\r\n                case 'NotAllowedError':\r\n                    console && console.error && console.error(error.message);\r\n                    break;\r\n\r\n                default:\r\n                    break;\r\n            }\r\n        });\r\n\r\n    }\r\n\r\n    VimeoVideo.prototype.pause = function () {\r\n        ///<summary>Put the video on pause.</summary>\r\n\r\n        var player = new vimeoPlayer(this.$scope.find('iframe'));\r\n\r\n        player.pause().then((function () {\r\n            this.transmitStateChange();\r\n        }).bind(this)).catch(function (error) {\r\n            switch (error.name) {\r\n            case 'PasswordError':\r\n                // the video is password-protected and the viewer needs to enter the\r\n                // password first\r\n                break;\r\n\r\n            case 'PrivacyError':\r\n                // the video is private\r\n                break;\r\n\r\n            default:\r\n                // some other error occurred\r\n                break;\r\n            }\r\n        });\r\n    }\r\n\r\n    VimeoVideo.prototype.transmitStateChange = function () {\r\n        var messages = this.stateChangeMessages, self = this;\r\n        if (messages.length) {\r\n            messages.forEach(function (ev) {\r\n                eventManager.trigger(ev, self, self.player);\r\n            });\r\n        }\r\n\r\n    }\r\n    // #endregion\r\n\r\n    VimeoVideo.init = function init(args) {\r\n        if (args.IsEditorEditing) return null;\r\n\r\n        var video = new VimeoVideo(args.scope,\r\n            args.StateChangeMessagesTransmitting || [],\r\n            args.PlayActionMessages || [],\r\n            args.PauseActionMessages || []);\r\n\r\n        return video;\r\n    };\r\n\r\n    return VimeoVideo;\r\n}));\n"
  ]
}