{"version":3,"sources":["webpack://ezlunch/./node_modules/@babel/runtime/regenerator/index.js","webpack://ezlunch/./node_modules/classnames/index.js","webpack://ezlunch/./node_modules/enquire.js/src/MediaQuery.js","webpack://ezlunch/./node_modules/enquire.js/src/MediaQueryDispatch.js","webpack://ezlunch/./node_modules/enquire.js/src/QueryHandler.js","webpack://ezlunch/./node_modules/enquire.js/src/Util.js","webpack://ezlunch/./node_modules/enquire.js/src/index.js","webpack://ezlunch/./node_modules/json2mq/index.js","webpack://ezlunch/./node_modules/lodash.debounce/index.js","webpack://ezlunch/./node_modules/react-slick/lib/arrows.js","webpack://ezlunch/./node_modules/react-slick/lib/default-props.js","webpack://ezlunch/./node_modules/react-slick/lib/dots.js","webpack://ezlunch/./node_modules/react-slick/lib/index.js","webpack://ezlunch/./node_modules/react-slick/lib/initial-state.js","webpack://ezlunch/./node_modules/react-slick/lib/inner-slider.js","webpack://ezlunch/./node_modules/react-slick/lib/slider.js","webpack://ezlunch/./node_modules/react-slick/lib/track.js","webpack://ezlunch/./node_modules/react-slick/lib/utils/innerSliderUtils.js","webpack://ezlunch/./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js","webpack://ezlunch/./node_modules/string-convert/camel2hyphen.js","webpack://ezlunch/./node_modules/core-js/es/promise/index.js","webpack://ezlunch/./node_modules/core-js/features/promise/index.js","webpack://ezlunch/./node_modules/core-js/internals/a-possible-prototype.js","webpack://ezlunch/./node_modules/core-js/internals/add-to-unscopables.js","webpack://ezlunch/./node_modules/core-js/internals/an-instance.js","webpack://ezlunch/./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack://ezlunch/./node_modules/core-js/internals/classof.js","webpack://ezlunch/./node_modules/core-js/internals/correct-prototype-getter.js","webpack://ezlunch/./node_modules/core-js/internals/create-iterator-constructor.js","webpack://ezlunch/./node_modules/core-js/internals/define-iterator.js","webpack://ezlunch/./node_modules/core-js/internals/dom-iterables.js","webpack://ezlunch/./node_modules/core-js/internals/engine-is-browser.js","webpack://ezlunch/./node_modules/core-js/internals/engine-is-ios-pebble.js","webpack://ezlunch/./node_modules/core-js/internals/engine-is-ios.js","webpack://ezlunch/./node_modules/core-js/internals/engine-is-node.js","webpack://ezlunch/./node_modules/core-js/internals/engine-is-webos-webkit.js","webpack://ezlunch/./node_modules/core-js/internals/function-bind-context.js","webpack://ezlunch/./node_modules/core-js/internals/get-iterator-method.js","webpack://ezlunch/./node_modules/core-js/internals/host-report-errors.js","webpack://ezlunch/./node_modules/core-js/internals/html.js","webpack://ezlunch/./node_modules/core-js/internals/is-array-iterator-method.js","webpack://ezlunch/./node_modules/core-js/internals/iterate.js","webpack://ezlunch/./node_modules/core-js/internals/iterator-close.js","webpack://ezlunch/./node_modules/core-js/internals/iterators-core.js","webpack://ezlunch/./node_modules/core-js/internals/iterators.js","webpack://ezlunch/./node_modules/core-js/internals/microtask.js","webpack://ezlunch/./node_modules/core-js/internals/object-create.js","webpack://ezlunch/./node_modules/core-js/internals/object-define-properties.js","webpack://ezlunch/./node_modules/core-js/internals/object-get-prototype-of.js","webpack://ezlunch/./node_modules/core-js/internals/object-keys.js","webpack://ezlunch/./node_modules/core-js/internals/object-set-prototype-of.js","webpack://ezlunch/./node_modules/core-js/internals/object-to-string.js","webpack://ezlunch/./node_modules/core-js/internals/path.js","webpack://ezlunch/./node_modules/core-js/internals/perform.js","webpack://ezlunch/./node_modules/core-js/internals/redefine-all.js","webpack://ezlunch/./node_modules/core-js/internals/set-species.js","webpack://ezlunch/./node_modules/core-js/internals/set-to-string-tag.js","webpack://ezlunch/./node_modules/core-js/internals/string-multibyte.js","webpack://ezlunch/./node_modules/core-js/internals/task.js","webpack://ezlunch/./node_modules/core-js/internals/to-string-tag-support.js","webpack://ezlunch/./node_modules/core-js/modules/es.aggregate-error.js","webpack://ezlunch/./node_modules/core-js/modules/es.array.iterator.js","webpack://ezlunch/./node_modules/core-js/modules/es.object.to-string.js","webpack://ezlunch/./node_modules/core-js/modules/es.promise.all-settled.js","webpack://ezlunch/./node_modules/core-js/modules/es.promise.any.js","webpack://ezlunch/./node_modules/core-js/modules/es.promise.js","webpack://ezlunch/./node_modules/core-js/modules/es.string.iterator.js","webpack://ezlunch/./node_modules/core-js/modules/esnext.aggregate-error.js","webpack://ezlunch/./node_modules/core-js/modules/esnext.promise.all-settled.js","webpack://ezlunch/./node_modules/core-js/modules/esnext.promise.any.js","webpack://ezlunch/./node_modules/core-js/modules/esnext.promise.try.js","webpack://ezlunch/./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack://ezlunch/./node_modules/core-js/stable/promise/index.js","webpack://ezlunch/./src/components/ScaleToWindowWidth.tsx","webpack://ezlunch/./src/util/size.ts","webpack://ezlunch/./src/components/SpeechBubble.tsx","webpack://ezlunch/./src/components/SpeechBubble.module.scss","webpack://ezlunch/./src/components/PageButton.tsx","webpack://ezlunch/./src/components/section/TestimonialsSection.tsx","webpack://ezlunch/./src/components/section/TestimonialsSection.module.scss","webpack://ezlunch/./src/components/section/LogoCarouselSection.tsx","webpack://ezlunch/./src/components/section/LogoCarouselSection.module.scss","webpack://ezlunch/./src/components/section/FamiliesSchoolsCafesStatisticsOverviewSection.module.scss","webpack://ezlunch/./src/components/StringParagraph.tsx","webpack://ezlunch/./src/components/section/FamiliesSchoolsCafesStatisticsOverviewSection.tsx","webpack://ezlunch/./src/components/section/two_column_pitch_section/TwoColumnPitchSectionColumn.tsx","webpack://ezlunch/./src/components/section/two_column_pitch_section/TwoColumnPitchSectionColumn.module.scss","webpack://ezlunch/./src/components/section/two_column_pitch_section/TwoColumnPitchSection.tsx","webpack://ezlunch/./src/components/section/two_column_pitch_section/TwoColumnPitchSection.module.scss","webpack://ezlunch/./src/components/FramedPicture.tsx","webpack://ezlunch/./src/components/FramedPicture.module.scss","webpack://ezlunch/./src/components/button/FlatButton.tsx","webpack://ezlunch/./src/components/button/FlatButton.module.scss","webpack://ezlunch/./src/components/SectionHeadingBodyButtonsColumn.tsx","webpack://ezlunch/./src/components/SectionHeadingBodyButtonsColumn.module.scss","webpack://ezlunch/./src/components/section/PicturesAndBody.tsx","webpack://ezlunch/./src/components/section/PicturesAndBody.module.scss","webpack://ezlunch/./src/components/section/QuestionsAndAnswersSection.tsx","webpack://ezlunch/./src/components/section/QuestionsAndAnswersSection.module.scss","webpack://ezlunch/./src/components/section/FourColumnSection.module.scss","webpack://ezlunch/./src/components/section/FourColumnSection.tsx","webpack://ezlunch/./src/components/section/TwoColumnTalkSection.tsx","webpack://ezlunch/./src/components/section/TwoColumnTalkSection.module.scss","webpack://ezlunch/./src/components/section/ContactUsSection.module.scss","webpack://ezlunch/./src/components/DANGEROUS_HtmlAndScript.tsx","webpack://ezlunch/./src/components/section/ContactUsSection.tsx","webpack://ezlunch/./src/components/section/ContactForm.html","webpack://ezlunch/./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack://ezlunch/./node_modules/leven/index.js","webpack://ezlunch/./src/components/section/show_school_menu_section/util.ts","webpack://ezlunch/./src/components/section/show_school_menu_section/SchoolSearchBox.tsx","webpack://ezlunch/./src/util/compat/loadFetchPolyfill.js","webpack://ezlunch/./src/components/section/show_school_menu_section/SchoolSearchBox.module.scss","webpack://ezlunch/./src/components/section/show_school_menu_section/ShowSchoolMenuSection.tsx","webpack://ezlunch/./src/components/section/show_school_menu_section/ShowSchoolMenuSection.module.scss","webpack://ezlunch/./src/components/section/HowItWorksSection.module.scss","webpack://ezlunch/./src/components/section/HowItWorksSection.tsx","webpack://ezlunch/./src/components/section/OurStorySection.tsx","webpack://ezlunch/./src/components/section/OurStorySection.module.scss","webpack://ezlunch/./src/components/section/HomepageHeaderSection.module.scss","webpack://ezlunch/./src/components/section/HomepageHeaderSection.tsx","webpack://ezlunch/./src/components/section/RightPictureAndBodySection.tsx","webpack://ezlunch/./src/components/section/RightPictureAndBodySection.module.scss","webpack://ezlunch/./src/components/section/ThreeColumnCaseShareSection.tsx","webpack://ezlunch/./src/components/section/ThreeColumnCaseShareSection.module.scss","webpack://ezlunch/./src/components/section/NewsSection.module.scss","webpack://ezlunch/./src/components/section/NewsSection.tsx","webpack://ezlunch/./src/components/section/FamiliesSchoolsCafesHeaderSection.module.scss","webpack://ezlunch/./src/components/section/FamiliesSchoolsCafesHeaderSection.tsx","webpack://ezlunch/./src/components/section/SectionMapper.tsx","webpack://ezlunch/./src/components/social/SocialIconsSidebar.tsx","webpack://ezlunch/./src/components/social/SocialIconsSidebar.module.scss","webpack://ezlunch/./src/components/Page.module.scss","webpack://ezlunch/./src/components/page.tsx","webpack://ezlunch/./node_modules/regenerator-runtime/runtime.js","webpack://ezlunch/./src/images/speech_bubble.svg","webpack://ezlunch/./src/images/tick.svg"],"names":["module","exports","hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","key","call","join","default","QueryHandler","each","MediaQuery","query","isUnconditional","this","handlers","mql","window","matchMedia","self","listener","currentTarget","assess","addListener","constuctor","addHandler","handler","qh","matches","on","removeHandler","h","equals","destroy","splice","clear","removeListener","action","Util","isFunction","MediaQueryDispatch","Error","queries","browserIsIncapable","constructor","register","q","options","shouldDegrade","match","unregister","deferSetup","setup","initialised","off","unmatch","target","collection","fn","camel2hyphen","obj2mq","obj","mq","features","keys","forEach","feature","index","value","test","isDimension","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","g","freeSelf","root","Function","objectToString","nativeMax","Math","max","nativeMin","min","now","Date","isObject","type","toNumber","isObjectLike","isSymbol","other","valueOf","replace","isBinary","slice","func","wait","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","leadingEdge","setTimeout","timerExpired","shouldInvoke","timeSinceLastCall","trailingEdge","remainingWait","debounced","isInvoking","cancel","clearTimeout","flush","defineProperty","NextArrow","PrevArrow","_react","_interopRequireDefault","_classnames","_innerSliderUtils","__esModule","_typeof","Symbol","iterator","_extends","assign","source","ownKeys","object","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","configurable","writable","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","_createClass","protoProps","staticProps","_inherits","subClass","superClass","create","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","e","_isNativeReflectConstruct","Super","_getPrototypeOf","NewTarget","_possibleConstructorReturn","ReferenceError","_assertThisInitialized","getPrototypeOf","_React$PureComponent","_super","preventDefault","clickHandler","prevClasses","prevHandler","bind","message","infinite","currentSlide","slideCount","slidesToShow","prevArrowProps","className","style","display","onClick","customProps","prevArrow","cloneElement","createElement","PureComponent","_React$PureComponent2","_super2","nextClasses","nextHandler","canGoNext","nextArrowProps","nextArrow","_default","accessibility","adaptiveHeight","afterChange","appendDots","dots","arrows","autoplay","autoplaySpeed","beforeChange","centerMode","centerPadding","cssEase","customPaging","dotsClass","draggable","easing","edgeFriction","fade","focusOnSelect","initialSlide","lazyLoad","onEdge","onInit","onLazyLoadError","onReInit","pauseOnDotsHover","pauseOnFocus","pauseOnHover","responsive","rows","rtl","slide","slidesPerRow","slidesToScroll","speed","swipe","swipeEvent","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","waitForAnimate","Dots","spec","_this$props","onMouseEnter","onMouseOver","onMouseLeave","dotCount","ceil","mouseEvents","_rightBound","rightBound","clamp","_leftBound","leftBound","dotOptions","concat","animating","autoplaying","currentDirection","currentLeft","direction","dragging","edgeDragged","initialized","lazyLoadedList","listHeight","listWidth","scrolling","slideHeight","slideWidth","swipeLeft","swiped","swiping","touchObject","startX","startY","curX","curY","trackStyle","trackWidth","targetSlide","InnerSlider","_initialState","_lodash","_track","_dots","_arrows","_resizeObserverPolyfill","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_React$Component","_this","ref","list","track","elem","querySelector","state","height","getHeight","slidesToLoad","getOnDemandLazySlides","setState","prevState","onLazyLoad","listRef","trackRef","updateState","adaptHeight","autoPlay","lazyLoadTimer","setInterval","progressiveLazyLoad","ro","onWindowResized","callbackTimers","observe","document","querySelectorAll","onfocus","onSlideFocus","onblur","onSlideBlur","addEventListener","attachEvent","animationEndCallback","clearInterval","timer","removeEventListener","detachEvent","autoplayTimer","disconnect","prevProps","checkImagesLoad","setTrackStyle","didPropsChange","Children","count","children","changeSlide","pause","debouncedResize","resizeWindow","isTrackMounted","Boolean","node","callback","updatedState","initializedState","slideIndex","targetLeft","getTrackLeft","left","getTrackCSS","_trackWidth","_trackLeft","childrenWidths","preClones","getPreClones","postClones","getPostClones","child","width","_i","_i2","_trackStyle","currentWidth","childrenCount","trackLeft","images","imagesCount","loadedCount","image","onclick","prevClickHandler","parentNode","focus","onload","onerror","_index","dontAnimate","asNavFor","_slideHandler","slideHandler","nextState","asNavForIndex","innerSlider","firstBatch","nodes","clickable","stopPropagation","dir","keyHandler","ontouchmove","event","returnValue","verticalSwiping","disableBodyScroll","swipeStart","swipeMove","swipeEnd","triggerSlideHandler","enableBodyScroll","Number","isNaN","nextIndex","playType","play","pauseType","trackProps","extractObject","onTrackOver","onTrackLeave","selectHandler","dotProps","onDotsLeave","onDotsOver","arrowProps","verticalHeightStyle","centerPaddingStyle","padding","listStyle","listProps","onMouseDown","onMouseMove","onMouseUp","onTouchStart","onTouchMove","onTouchEnd","touchEnd","onTouchCancel","onKeyDown","innerSliderProps","unslick","listRefHandler","Track","trackRefHandler","ssrState","ssrInit","_i3","_Object$keys","Component","_innerSlider","_json2mq","_defaultProps","enquire","canUseDOM","Slider","slickPrev","slickNext","slickGoTo","breakpoint","_responsiveMediaHandlers","_this2","breakpoints","map","breakpt","sort","x","y","bQuery","minWidth","maxWidth","media","settings","newProps","_this3","resp","toArray","trim","console","warn","newChildren","newSlide","j","row","k","tabIndex","innerSliderRefHandler","getSlideClasses","slickActive","slickCenter","slickCloned","centerOffset","floor","getKey","fallbackKey","renderSlides","slides","preCloneSlides","postCloneSlides","startIndex","lazyStartIndex","endIndex","lazyEndIndex","childOnClickOptions","childStyle","position","top","opacity","transition","getSlideStyle","slideClass","slideClasses","outline","preCloneNo","reverse","_len","_key","handleRef","slidesOnLeft","slidesOnRight","siblingDirection","getTotalSlides","getTrackAnimateCSS","checkSpecKeys","getSlideCount","checkNavigable","getNavigableIndexes","getSwipeDirection","getWidth","lazySlidesOnRight","lazySlidesOnLeft","getRequiredLazySlides","safePreventDefault","number","lowerBound","upperBound","includes","_reactName","onDemandSlides","requiredSlides","offsetWidth","offsetHeight","xDist","yDist","r","swipeAngle","atan2","round","PI","abs","canGo","newObject","listNode","trackNode","centerPaddingAdj","finalSlide","animationLeft","finalLeft","animationSlide","indexOffset","previousInt","slideOffset","previousTargetSlide","tagName","keyCode","touches","pageX","clientX","pageY","clientY","curLeft","swipeLength","sqrt","pow","verticalSwipeLength","positionOffset","swipeDirection","touchSwipeLength","onSwipe","minSwipe","activeSlide","counter","indexes","navigables","prevNavigable","n","swipedSlide","slickList","from","every","offsetTop","offsetLeft","currentIndex","dataset","keysArray","reduce","error","trackHeight","trackChildren","WebkitTransition","WebkitTransform","transform","msTransform","marginTop","marginLeft","slidesToOffset","targetSlideIndex","trackElem","childNodes","_ref","right","_ref2","MapShim","Map","getIndex","arr","some","entry","class_1","__entries__","get","set","delete","entries","has","ctx","_a","isBrowser","global$1","requestAnimationFrame$1","requestAnimationFrame","transitionKeys","mutationObserverSupported","MutationObserver","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","delay","leadingCall","trailingCall","resolvePending","proxy","timeoutCallback","timeStamp","throttle","addObserver","observer","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","gatherActive","hasActive","broadcastActive","attributes","childList","characterData","subtree","_b","propertyName","getInstance","instance_","defineConfigurable","getWindowOf","ownerDocument","defaultView","emptyRect","createRectInit","toFloat","parseFloat","getBordersSize","styles","positions","size","getHTMLElementContentRect","clientWidth","clientHeight","getComputedStyle","paddings","positions_1","getPaddings","horizPad","vertPad","bottom","boxSizing","documentElement","isDocumentElement","vertScrollbar","horizScrollbar","isSVGGraphicsElement","SVGGraphicsElement","SVGElement","getBBox","getContentRect","bbox","getSVGContentRect","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","isActive","rect","broadcastRect","ResizeObserverEntry","rectInit","Constr","contentRect","DOMRectReadOnly","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","callback_","controller_","callbackCtx_","Element","observations","unobserve","clearActive","observation","WeakMap","ResizeObserver","method","str","toLowerCase","path","Promise","parent","it","String","wellKnownSymbol","definePropertyModule","UNSCOPABLES","ArrayPrototype","f","name","ITERATOR","SAFE_CLOSING","called","iteratorWithReturn","next","done","exec","SKIP_CLOSING","ITERATION_SUPPORT","TO_STRING_TAG_SUPPORT","classofRaw","TO_STRING_TAG","CORRECT_ARGUMENTS","O","tag","tryGet","callee","fails","F","IteratorPrototype","createPropertyDescriptor","setToStringTag","Iterators","returnThis","IteratorConstructor","NAME","$","createIteratorConstructor","createNonEnumerableProperty","redefine","IS_PURE","IteratorsCore","BUGGY_SAFARI_ITERATORS","KEYS","VALUES","ENTRIES","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","values","proto","forced","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","userAgent","global","Pebble","classof","process","aFunction","that","a","b","c","getBuiltIn","anObject","isArrayIteratorMethod","toLength","getIteratorMethod","iteratorClose","Result","stopped","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","returnMethod","PrototypeOfArrayIteratorPrototype","arrayIterator","NEW_ITERATOR_PROTOTYPE","head","last","notify","toggle","promise","then","macrotask","IS_IOS","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","IS_NODE","WebKitMutationObserver","queueMicrotaskDescriptor","queueMicrotask","domain","exit","enter","resolve","nextTick","createTextNode","data","task","activeXDocument","enumBugKeys","hiddenKeys","html","documentCreateElement","sharedKey","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","appendChild","src","contentWindow","open","Properties","DESCRIPTORS","objectKeys","toObject","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","internalObjectKeys","aPossiblePrototype","setter","CORRECT_SETTER","SPECIES","CONSTRUCTOR_NAME","TAG","STATIC","toInteger","requireObjectCoercible","createMethod","CONVERT_TO_STRING","$this","pos","first","second","S","charCodeAt","charAt","codeAt","location","defer","channel","port","setImmediate","clearImmediate","MessageChannel","Dispatch","queue","ONREADYSTATECHANGE","run","id","runner","post","postMessage","protocol","host","argumentsLength","port2","port1","onmessage","importScripts","removeChild","iterate","$AggregateError","errors","errorsArray","AggregateError","toIndexedObject","addToUnscopables","InternalStateModule","defineIterator","ARRAY_ITERATOR","setInternalState","getInternalState","getterFor","iterated","kind","Arguments","unsafe","newPromiseCapabilityModule","perform","stat","allSettled","C","capability","reject","promiseResolve","remaining","alreadyCalled","status","reason","PROMISE_ANY_ERROR","any","alreadyResolved","alreadyRejected","Internal","OwnPromiseCapability","PromiseWrapper","nativeThen","NativePromise","redefineAll","setSpecies","anInstance","inspectSource","checkCorrectnessOfIteration","speciesConstructor","microtask","hostReportErrors","isForced","IS_BROWSER","V8_VERSION","PROMISE","getInternalPromiseState","NativePromisePrototype","PromiseConstructor","PromiseConstructorPrototype","newPromiseCapability","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","NATIVE_REJECTION_EVENT","PromiseRejectionEvent","UNHANDLED_REJECTION","SUBCLASSING","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","INCORRECT_ITERATION","all","isThenable","isReject","notified","chain","reactions","ok","exited","reaction","fail","rejection","onHandleUnhandled","onUnhandled","initEvent","facade","isUnhandled","emit","unwrap","internalReject","internalResolve","wrapper","executor","onFulfilled","onRejected","wrap","$promiseResolve","race","STRING_ITERATOR","string","point","callbackfn","promiseCapability","DOMIterables","ArrayIteratorMethods","ArrayValues","COLLECTION_NAME","Collection","CollectionPrototype","METHOD_NAME","ScaleToWindowWidth","dummyRef","useRef","serverSideRenderable","ScaleToWindowWidthImpl","useState","scale","lastUpdate","consecutiveUpdateCount","useLayoutEffect","el","current","doScale","unscaledWidth","getBoundingClientRect","newScale","innerWidth","timeSinceLastUpdate","getTime","Infinity","localStorage","getItem","log","scaleSize","baseSize","targetSize","largestScaleFactor","BASE_BUBBLE_SIZE","SpeechBubble","ClientOnlyRenderable","SpeechBubbleContent","listenForUpdates","contentWidth","contentHeight","contentRef","updateBoundingRect","scrollHeight","scrollWidth","actualSize","sizes","areas","bestIndexSoFar","bestAreaSoFar","maxSize","mergeClassNames","PageButtonType","TestimonialsSection","heading","testimonials","testimonial","Testimonial","LogoCarouselSection","reducingMotion","setReducingMotion","config","useStaticQuery","strapi","globalConfig","supplierLogos","useEffect","ex","SLIDER_SETTINGS","logosElements","logos","logo","alt","alternativeText","title","urlSharp","staticURL","Section","item","icon","speechBubble","bubbleContent","bubbleContentHighlight","bubbleContentMain","StringParagraph","lines","para","split","line","FamiliesSchoolsCafesStatisticsOverviewSection","currentLocale","useAppContext","to","getPathForLocale","familiesPage","slug","paddingLeft","placeholder","overflow","familiesHighlight","familiesMain","schoolsPage","quality","schoolsHighlight","schoolsMain","cafesPage","paddingRight","cafesHighlight","cafesMain","TwoColumnPitchColumn","headline","body","TwoColumnPitchSection","columns","FramedPicture","picture","G","childImageSharp","gatsbyImageData","FlatButton","PageButton","text","page","pageSlug","Plain","navigate","Raised","RaisedButton","MyKindoLogin","MyKindoButton","triggerGtagEvent","label","MYKINDO_LOGIN_URL","MyKindoJoin","MYKINDO_JOIN_URL","MyKindoAtmy","MYKINDO_ATMY_URL","EmailSchoolSignupPitch","EMAIL_SCHOOL_SIGNUP_PITCH","HowItWorksSection","reachNavigate","AtMySection","SectionHeadingBodyButtonsColumn","actionButtons","RichText","button","PicturesAndBody","frontImage","backImage","middleImage","transformOrigin","QuestionsAndAnswersSection","colour","questionsandanswers","color","question","QuestionAndAnswer","answer","setActive","setActiveState","setHeight","setHeightState","setRotate","setRotateState","maxHeight","columnImage","FourColumnSection","fourColumnHeading","fourColumnSubHeading","fourColumnHeadingColour","fourColumnHeaderPhoto1","fourColumnHeaderPhoto2","card","fourColumnButton","fourColumnHeadingSmallText","CardContent","cardHeading","cardIcon","cardDescription","cardSmallText","TwoColumnTalkSection","talkDescription","talkImage","href","localNumber","callableNumber","userVisible","nationalNumber","contactTitle","contactDescription","contactValue","separator","DANGEROUS_HtmlAndScript","script","eval","dangerouslySetInnerHTML","__html","ContactUsSection","contactHeader","helpdeskEmail","supportLink","asyncGeneratorStep","gen","_next","_throw","info","_asyncToGenerator","err","array","characterCodeCache","leven","swap","firstLength","secondLength","bCharacterCode","temporary","temporary2","start","index2","mkReplaceFn","fnsToApply","SchoolSearchBoxLoadingState","SchoolSearchBoxStateActionType","equivalentSchoolNameGeneratorFunction","strFrom","strTo","reStarts","RegExp","reContains","reEnds","tok","SCHOOL_ALIAS_LIST","pair","fn1","fn2","s0","s1","school_id","equivs","equivOrSame","SchoolSearchBoxReducer","TriggerLoad","loadSchoolListStatus","Pending","LoadFailure","LoadSuccessful","Loaded","schools","SchoolSearchBox","useReducer","Unloaded","dispatch","startLoadingCallback","useCallback","fetch","credentials","res","json","toDispatch","errorContent","SchoolSearchBoxContent","highlightColour","currentText","currentMatches","searchableSchools","useMemo","results","school","school_index","searchable_name","alias","onSearchChange","newSearch","distances","schoolAlias","distance","aliasIndex","firstEl","secondEl","onSearchInputChange","evt","currentMatch","currentMatchSchool","hasCompleteMatch","showSchoolMenu","schoolId","pathify","onChange","backgroundColor","ShowSchoolMenuSection","cloudTextHighlight","cloudTextMain","showSchoolMenuImage","schoolMenuHeader","schoolMenuDescription1","schoolMenuDescription2","schoolMenuDescription3","schoolMenuColour","schoolMenuButtons","setScale","imgRef","onImageResize","imgEntry","imgEl","description","howItWorksHeader","howItWorksHeaderColor","bubbleSteps","rowCard","localMenuCard","bubbleStep","stepNumberColour","stepNumber","stepBold","stepText","headerImg","firstIcon","firstDescription","secondIcon","secondDescription","thirdIcon","thirdDescription","menuHeader","menuImg1","menuImg2","menuImg3","menuImg4","menuDescription","OurStorySection","ourStoryHeader","ourStorySubHeader1","ourStorySubHeader3","ourStorySubHeader2","ourStoryBody","ourStoryImage","inactiveLink","HomepageHeaderSection","bubbleLine1","bubbleLine2","bubbleLine3","bubbleLine4","subTitle","homeBannerImg","promotionImage1","promotionImage2","promotionImage3","promoUrl1","promoUrl2","promoUrl3","sliderSettings","loading","rel","RightPictureAndBodySection","_body","ThreeColumnCaseShareSection","displaySocialIcons","bubbleText","threeColumnHeader","threeColumnSubHeader","threeColumnHeaderColour","threeColumnImage","findOutBtn","defaultMetadata","connectSectionQuery","Metadata","SocialIcons","pageSeo","SectionNews","blogTitle","blogContent","readMore","blogImage","NewsSection","newsHeader","blogs","latestOne","latestTwo","LatestBlogPost","blog","imageSide","format","parseISO","published_at","FamiliesSchoolsCafesHeaderSection","rightSideContent","rightSideSubHeader","headerTextBottom","headerTextTopColour","headerTextTop","leftSideImage","rightSideImage","curvedTextImage","bubbleTextHighlight","bubbleTextMain","speechBubblePosition","headerButtons","zIndex","SectionMapper","section","typeName","SocialIconsSidebar","socialLinks","linkType","SocialIcon","hiddenXs","pages","metadata","locale","appContext","currentSlug","AppContext","context","Layout","SEO","runtime","Op","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","GenStateSuspendedStart","GenStateExecuting","GenStateCompleted","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","record","tryCatch","GenStateSuspendedYield","makeInvokeMethod","GeneratorFunction","GeneratorFunctionPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","AsyncIterator","PromiseImpl","invoke","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iteratorMethod","displayName","isGeneratorFunction","genFun","ctor","mark","awrap","async","iter","pop","skipTempReset","prev","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","regeneratorRuntime","accidentalStrictMode","React","defaultProps","Tick"],"mappings":";275BAAAA,EAAOC,QAAU,EAAjB,O,mBCAA,OAOA,WACE,aAEA,IAAIC,EAAS,GAAGC,eAEhB,SAASC,IAGP,IAFA,IAAIC,EAAU,GAELC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIG,EAAMF,UAAUD,GACpB,GAAKG,EAAL,CACA,IAAIC,SAAiBD,EAErB,GAAgB,WAAZC,GAAoC,WAAZA,EAC1BL,EAAQM,KAAKF,QACR,GAAIG,MAAMC,QAAQJ,IACvB,GAAIA,EAAID,OAAQ,CACd,IAAIM,EAAQV,EAAWW,MAAM,KAAMN,GAE/BK,GACFT,EAAQM,KAAKG,SAGZ,GAAgB,WAAZJ,EACT,GAAID,EAAIO,WAAaC,OAAOC,UAAUF,SACpC,IAAK,IAAIG,KAAOV,EACVP,EAAOkB,KAAKX,EAAKU,IAAQV,EAAIU,IAC/Bd,EAAQM,KAAKQ,QAIjBd,EAAQM,KAAKF,EAAIO,aAKvB,OAAOX,EAAQgB,KAAK,KAGerB,EAAOC,SAC1CG,EAAWkB,QAAUlB,EACrBJ,EAAOC,QAAUG,QAKhB,KAFwB,EAAF,WACrB,OAAOA,GACR,QAFoB,OAEpB,aA9CL,I,qBCPA,IAAImB,EAAe,EAAQ,MAEvBC,EAAO,aAUX,SAASC,EAAWC,EAAOC,GACzBC,KAAKF,MAAQA,EACbE,KAAKD,gBAAkBA,EACvBC,KAAKC,SAAW,GAChBD,KAAKE,IAAMC,OAAOC,WAAWN,GAC7B,IAAIO,EAAOL,KAEXA,KAAKM,SAAW,SAAUJ,GAExBG,EAAKH,IAAMA,EAAIK,eAAiBL,EAChCG,EAAKG,UAGPR,KAAKE,IAAIO,YAAYT,KAAKM,UAG5BT,EAAWP,UAAY,CACrBoB,WAAYb,EAWZc,WAAY,SAAoBC,GAC9B,IAAIC,EAAK,IAAIlB,EAAaiB,GAC1BZ,KAAKC,SAASlB,KAAK8B,GACnBb,KAAKc,WAAaD,EAAGE,MAQvBC,cAAe,SAAuBJ,GACpC,IAAIX,EAAWD,KAAKC,SACpBL,EAAKK,GAAU,SAAUgB,EAAGvC,GAC1B,GAAIuC,EAAEC,OAAON,GAEX,OADAK,EAAEE,WACMlB,EAASmB,OAAO1C,EAAG,OAUjCoC,QAAS,WACP,OAAOd,KAAKE,IAAIY,SAAWd,KAAKD,iBAMlCsB,MAAO,WACLzB,EAAKI,KAAKC,UAAU,SAAUW,GAC5BA,EAAQO,aAEVnB,KAAKE,IAAIoB,eAAetB,KAAKM,UAC7BN,KAAKC,SAASrB,OAAS,GAMzB4B,OAAQ,WACN,IAAIe,EAASvB,KAAKc,UAAY,KAAO,MACrClB,EAAKI,KAAKC,UAAU,SAAUW,GAC5BA,EAAQW,UAIdnD,EAAOC,QAAUwB,G,qBC3FjB,IAAIA,EAAa,EAAQ,MAErB2B,EAAO,EAAQ,MAEf5B,EAAO4B,EAAK5B,KACZ6B,EAAaD,EAAKC,WAClBxC,EAAUuC,EAAKvC,QAQnB,SAASyC,IACP,IAAKvB,OAAOC,WACV,MAAM,IAAIuB,MAAM,8DAGlB3B,KAAK4B,QAAU,GACf5B,KAAK6B,oBAAsB1B,OAAOC,WAAW,YAAYU,QAG3DY,EAAmBpC,UAAY,CAC7BwC,YAAaJ,EAabK,SAAU,SAAkBC,EAAGC,EAASC,GACtC,IAAIN,EAAU5B,KAAK4B,QACf7B,EAAkBmC,GAAiBlC,KAAK6B,mBA0B5C,OAxBKD,EAAQI,KACXJ,EAAQI,GAAK,IAAInC,EAAWmC,EAAGjC,IAI7B0B,EAAWQ,KACbA,EAAU,CACRE,MAAOF,IAINhD,EAAQgD,KACXA,EAAU,CAACA,IAGbrC,EAAKqC,GAAS,SAAUrB,GAClBa,EAAWb,KACbA,EAAU,CACRuB,MAAOvB,IAIXgB,EAAQI,GAAGrB,WAAWC,MAEjBZ,MASToC,WAAY,SAAoBJ,EAAGpB,GACjC,IAAId,EAAQE,KAAK4B,QAAQI,GAWzB,OATIlC,IACEc,EACFd,EAAMkB,cAAcJ,IAEpBd,EAAMuB,eACCrB,KAAK4B,QAAQI,KAIjBhC,OAGX5B,EAAOC,QAAUqD,G,iBC/EjB,SAAS/B,EAAasC,GACpBjC,KAAKiC,QAAUA,GACdA,EAAQI,YAAcrC,KAAKsC,QAG9B3C,EAAaL,UAAY,CACvBwC,YAAanC,EAOb2C,MAAO,WACDtC,KAAKiC,QAAQK,OACftC,KAAKiC,QAAQK,QAGftC,KAAKuC,aAAc,GAQrBxB,GAAI,YACDf,KAAKuC,aAAevC,KAAKsC,QAC1BtC,KAAKiC,QAAQE,OAASnC,KAAKiC,QAAQE,SAQrCK,IAAK,WACHxC,KAAKiC,QAAQQ,SAAWzC,KAAKiC,QAAQQ,WASvCtB,QAAS,WACPnB,KAAKiC,QAAQd,QAAUnB,KAAKiC,QAAQd,UAAYnB,KAAKwC,OAUvDtB,OAAQ,SAAgBwB,GACtB,OAAO1C,KAAKiC,UAAYS,GAAU1C,KAAKiC,QAAQE,QAAUO,IAG7DtE,EAAOC,QAAUsB,G,iBC7BjBvB,EAAOC,QAAU,CACfoD,WALF,SAAoBiB,GAClB,MAAyB,mBAAXA,GAKdzD,QAjBF,SAAiByD,GACf,MAAmD,mBAA5CrD,OAAOC,UAAUF,SAASD,MAAMuD,IAiBvC9C,KAvCF,SAAc+C,EAAYC,GAKxB,IAJA,IAAIlE,EAAI,EACJE,EAAS+D,EAAW/D,OAGhBF,EAAIE,IAGG,IAFNgE,EAAGD,EAAWjE,GAAIA,GADPA,S,qBCXtB,IAAIgD,EAAqB,EAAQ,MAEjCtD,EAAOC,QAAU,IAAIqD,G,qBCFrB,IAAImB,EAAe,EAAQ,MAOvBC,EAAS,SAAgBC,GAC3B,IAAIC,EAAK,GACLC,EAAW5D,OAAO6D,KAAKH,GAqB3B,OApBAE,EAASE,SAAQ,SAAUC,EAASC,GAClC,IAAIC,EAAQP,EAAIK,IATF,SAAqBA,GAErC,MADS,kBACCG,KAAKH,IAUTI,CAFJJ,EAAUP,EAAaO,KAEsB,iBAAVE,IACjCA,GAAgB,MAIhBN,IADY,IAAVM,EACIF,GACa,IAAVE,EACH,OAASF,EAET,IAAMA,EAAU,KAAOE,EAAQ,IAGnCD,EAAQJ,EAASrE,OAAS,IAC5BoE,GAAM,YAGHA,GA0BT5E,EAAOC,QAvBO,SAAiByB,GAC7B,IAAIkD,EAAK,GAET,MAAqB,iBAAVlD,EACFA,EAILA,aAAiBd,OACnBc,EAAMqD,SAAQ,SAAUnB,EAAGqB,GACzBL,GAAMF,EAAOd,GAETqB,EAAQvD,EAAMlB,OAAS,IACzBoE,GAAM,SAGHA,GAIFF,EAAOhD,K,qBC3ChB,IASI2D,EAAS,aAGTC,EAAa,qBAGbC,EAAa,aAGbC,EAAY,cAGZC,EAAeC,SAGfC,EAA8B,iBAAV,EAAAC,GAAsB,EAAAA,GAAU,EAAAA,EAAO3E,SAAWA,QAAU,EAAA2E,EAGhFC,EAA0B,iBAAR5D,MAAoBA,MAAQA,KAAKhB,SAAWA,QAAUgB,KAGxE6D,EAAOH,GAAcE,GAAYE,SAAS,cAATA,GAUjCC,EAPc/E,OAAOC,UAOQF,SAG7BiF,EAAYC,KAAKC,IACjBC,EAAYF,KAAKG,IAkBjBC,EAAM,WACR,OAAOR,EAAKS,KAAKD,OAkNnB,SAASE,EAAStB,GAChB,IAAIuB,SAAcvB,EAClB,QAASA,IAAkB,UAARuB,GAA4B,YAARA,GA8EzC,SAASC,EAASxB,GAChB,GAAoB,iBAATA,EACT,OAAOA,EAGT,GAjCF,SAAkBA,GAChB,MAAuB,iBAATA,GAvBhB,SAAsBA,GACpB,QAASA,GAAyB,iBAATA,EAsBUyB,CAAazB,IAhUlC,mBAgU4Cc,EAAe5E,KAAK8D,GAgC1E0B,CAAS1B,GACX,OApWM,IAuWR,GAAIsB,EAAStB,GAAQ,CACnB,IAAI2B,EAAgC,mBAAjB3B,EAAM4B,QAAwB5B,EAAM4B,UAAY5B,EACnEA,EAAQsB,EAASK,GAASA,EAAQ,GAAKA,EAGzC,GAAoB,iBAAT3B,EACT,OAAiB,IAAVA,EAAcA,GAASA,EAGhCA,EAAQA,EAAM6B,QAAQ1B,EAAQ,IAC9B,IAAI2B,EAAWzB,EAAWJ,KAAKD,GAC/B,OAAO8B,GAAYxB,EAAUL,KAAKD,GAASO,EAAaP,EAAM+B,MAAM,GAAID,EAAW,EAAI,GAAK1B,EAAWH,KAAKD,GAlXpG,KAkXoHA,EAG9HlF,EAAOC,QA/PP,SAAkBiH,EAAMC,EAAMtD,GAC5B,IAAIuD,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAAiB,EACjBC,GAAU,EACVC,GAAS,EACTC,GAAW,EAEf,GAAmB,mBAARX,EACT,MAAM,IAAIY,UAtIQ,uBAkJpB,SAASC,EAAWC,GAClB,IAAIC,EAAOb,EACPc,EAAUb,EAId,OAHAD,EAAWC,OAAWc,EACtBT,EAAiBM,EACjBT,EAASL,EAAKnG,MAAMmH,EAASD,GAI/B,SAASG,EAAYJ,GAMnB,OAJAN,EAAiBM,EAEjBR,EAAUa,WAAWC,EAAcnB,GAE5BQ,EAAUI,EAAWC,GAAQT,EAUtC,SAASgB,EAAaP,GACpB,IAAIQ,EAAoBR,EAAOP,EAK/B,YAAwBU,IAAjBV,GAA8Be,GAAqBrB,GAAQqB,EAAoB,GAAKZ,GAJjEI,EAAON,GAI2FJ,EAG9H,SAASgB,IACP,IAAIN,EAAO1B,IAEX,GAAIiC,EAAaP,GACf,OAAOS,EAAaT,GAItBR,EAAUa,WAAWC,EAxBvB,SAAuBN,GACrB,IAEIT,EAASJ,GAFWa,EAAOP,GAG/B,OAAOG,EAASxB,EAAUmB,EAAQD,GAFRU,EAAON,IAEkCH,EAoBhCmB,CAAcV,IAGnD,SAASS,EAAaT,GAIpB,OAHAR,OAAUW,EAGNN,GAAYT,EACPW,EAAWC,IAGpBZ,EAAWC,OAAWc,EACfZ,GAgBT,SAASoB,IACP,IAAIX,EAAO1B,IACPsC,EAAaL,EAAaP,GAK9B,GAJAZ,EAAW7G,UACX8G,EAAWzF,KACX6F,EAAeO,EAEXY,EAAY,CACd,QAAgBT,IAAZX,EACF,OAAOY,EAAYX,GAGrB,GAAIG,EAGF,OADAJ,EAAUa,WAAWC,EAAcnB,GAC5BY,EAAWN,GAQtB,YAJgBU,IAAZX,IACFA,EAAUa,WAAWC,EAAcnB,IAG9BI,EAKT,OA3GAJ,EAAOT,EAASS,IAAS,EAErBX,EAAS3C,KACX8D,IAAY9D,EAAQ8D,QAEpBL,GADAM,EAAS,YAAa/D,GACHoC,EAAUS,EAAS7C,EAAQyD,UAAY,EAAGH,GAAQG,EACrEO,EAAW,aAAchE,IAAYA,EAAQgE,SAAWA,GAmG1Dc,EAAUE,OAvCV,gBACkBV,IAAZX,GACFsB,aAAatB,GAGfE,EAAiB,EACjBN,EAAWK,EAAeJ,EAAWG,OAAUW,GAkCjDQ,EAAUI,MA/BV,WACE,YAAmBZ,IAAZX,EAAwBD,EAASkB,EAAanC,MA+BhDqC,I,iCC5PT1H,OAAO+H,eAAe/I,EAAS,aAAc,CAC3CiF,OAAO,IAETjF,EAAQgJ,UAAYhJ,EAAQiJ,eAAY,EAExC,IAAIC,EAASC,EAAuB,EAAQ,OAExCC,EAAcD,EAAuB,EAAQ,OAE7CE,EAAoB,EAAQ,MAEhC,SAASF,EAAuBzE,GAC9B,OAAOA,GAAOA,EAAI4E,WAAa5E,EAAM,CACnC,QAAWA,GAIf,SAAS6E,EAAQ7E,GAaf,OATE6E,EADoB,mBAAXC,QAAoD,iBAApBA,OAAOC,SACtC,SAAiB/E,GACzB,cAAcA,GAGN,SAAiBA,GACzB,OAAOA,GAAyB,mBAAX8E,QAAyB9E,EAAIjB,cAAgB+F,QAAU9E,IAAQ8E,OAAOvI,UAAY,gBAAkByD,IAI9GA,GAGjB,SAASgF,IAeP,OAdAA,EAAW1I,OAAO2I,QAAU,SAAUtF,GACpC,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAStJ,UAAUD,GAEvB,IAAK,IAAIa,KAAO0I,EACV5I,OAAOC,UAAUf,eAAeiB,KAAKyI,EAAQ1I,KAC/CmD,EAAOnD,GAAO0I,EAAO1I,IAK3B,OAAOmD,IAGOvD,MAAMa,KAAMrB,WAG9B,SAASuJ,EAAQC,EAAQC,GACvB,IAAIlF,EAAO7D,OAAO6D,KAAKiF,GAEvB,GAAI9I,OAAOgJ,sBAAuB,CAChC,IAAIC,EAAUjJ,OAAOgJ,sBAAsBF,GACvCC,IAAgBE,EAAUA,EAAQC,QAAO,SAAUC,GACrD,OAAOnJ,OAAOoJ,yBAAyBN,EAAQK,GAAKE,eAEtDxF,EAAKnE,KAAKI,MAAM+D,EAAMoF,GAGxB,OAAOpF,EAGT,SAASyF,EAAcjG,GACrB,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAyB,MAAhBtJ,UAAUD,GAAaC,UAAUD,GAAK,GAE/CA,EAAI,EACNwJ,EAAQ7I,OAAO4I,IAAS,GAAM9E,SAAQ,SAAU5D,GAC9CqJ,EAAgBlG,EAAQnD,EAAK0I,EAAO1I,OAE7BF,OAAOwJ,0BAChBxJ,OAAOyJ,iBAAiBpG,EAAQrD,OAAOwJ,0BAA0BZ,IAEjEC,EAAQ7I,OAAO4I,IAAS9E,SAAQ,SAAU5D,GACxCF,OAAO+H,eAAe1E,EAAQnD,EAAKF,OAAOoJ,yBAAyBR,EAAQ1I,OAKjF,OAAOmD,EAGT,SAASkG,EAAgB7F,EAAKxD,EAAK+D,GAYjC,OAXI/D,KAAOwD,EACT1D,OAAO+H,eAAerE,EAAKxD,EAAK,CAC9B+D,MAAOA,EACPoF,YAAY,EACZK,cAAc,EACdC,UAAU,IAGZjG,EAAIxD,GAAO+D,EAGNP,EAGT,SAASkG,EAAgBC,EAAUC,GACjC,KAAMD,aAAoBC,GACxB,MAAM,IAAIjD,UAAU,qCAIxB,SAASkD,EAAkB1G,EAAQ2G,GACjC,IAAK,IAAI3K,EAAI,EAAGA,EAAI2K,EAAMzK,OAAQF,IAAK,CACrC,IAAI4K,EAAaD,EAAM3K,GACvB4K,EAAWZ,WAAaY,EAAWZ,aAAc,EACjDY,EAAWP,cAAe,EACtB,UAAWO,IAAYA,EAAWN,UAAW,GACjD3J,OAAO+H,eAAe1E,EAAQ4G,EAAW/J,IAAK+J,IAIlD,SAASC,EAAaJ,EAAaK,EAAYC,GAG7C,OAFID,GAAYJ,EAAkBD,EAAY7J,UAAWkK,GACrDC,GAAaL,EAAkBD,EAAaM,GACzCN,EAGT,SAASO,EAAUC,EAAUC,GAC3B,GAA0B,mBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAI1D,UAAU,sDAGtByD,EAASrK,UAAYD,OAAOwK,OAAOD,GAAcA,EAAWtK,UAAW,CACrEwC,YAAa,CACXwB,MAAOqG,EACPX,UAAU,EACVD,cAAc,KAGda,GAAYE,EAAgBH,EAAUC,GAG5C,SAASE,EAAgBC,EAAGC,GAM1B,OALAF,EAAkBzK,OAAO4K,gBAAkB,SAAyBF,EAAGC,GAErE,OADAD,EAAEG,UAAYF,EACPD,IAGcA,EAAGC,GAG5B,SAASG,EAAaC,GACpB,IAAIC,EAkCN,WACE,GAAuB,oBAAZC,UAA4BA,QAAQC,UAAW,OAAO,EACjE,GAAID,QAAQC,UAAUC,KAAM,OAAO,EACnC,GAAqB,mBAAVC,MAAsB,OAAO,EAExC,IAEE,OADA9F,KAAKrF,UAAUF,SAASI,KAAK8K,QAAQC,UAAU5F,KAAM,IAAI,iBAClD,EACP,MAAO+F,GACP,OAAO,GA3CuBC,GAEhC,OAAO,WACL,IACIhF,EADAiF,EAAQC,EAAgBT,GAG5B,GAAIC,EAA2B,CAC7B,IAAIS,EAAYD,EAAgB7K,MAAM8B,YAEtC6D,EAAS2E,QAAQC,UAAUK,EAAOjM,UAAWmM,QAE7CnF,EAASiF,EAAMzL,MAAMa,KAAMrB,WAG7B,OAAOoM,EAA2B/K,KAAM2F,IAI5C,SAASoF,EAA2B1K,EAAMb,GACxC,OAAIA,GAA2B,WAAlBoI,EAAQpI,IAAsC,mBAATA,EAOpD,SAAgCa,GAC9B,QAAa,IAATA,EACF,MAAM,IAAI2K,eAAe,6DAG3B,OAAO3K,EARA4K,CAAuB5K,GAHrBb,EA2BX,SAASqL,EAAgBd,GAIvB,OAHAc,EAAkBxL,OAAO4K,eAAiB5K,OAAO6L,eAAiB,SAAyBnB,GACzF,OAAOA,EAAEG,WAAa7K,OAAO6L,eAAenB,KAEvBA,GAGzB,IAAIzC,EAAyB,SAAU6D,GACrCzB,EAAUpC,EAAW6D,GAErB,IAAIC,EAASjB,EAAa7C,GAE1B,SAASA,IAGP,OAFA2B,EAAgBjJ,KAAMsH,GAEf8D,EAAOjM,MAAMa,KAAMrB,WAwD5B,OArDA4K,EAAajC,EAAW,CAAC,CACvB/H,IAAK,eACL+D,MAAO,SAAsBrB,EAASyI,GAChCA,GACFA,EAAEW,iBAGJrL,KAAKqJ,MAAMiC,aAAarJ,EAASyI,KAElC,CACDnL,IAAK,SACL+D,MAAO,WACL,IAAIiI,EAAc,CAChB,eAAe,EACf,cAAc,GAEZC,EAAcxL,KAAKsL,aAAaG,KAAKzL,KAAM,CAC7C0L,QAAS,cAGN1L,KAAKqJ,MAAMsC,WAAyC,IAA5B3L,KAAKqJ,MAAMuC,cAAsB5L,KAAKqJ,MAAMwC,YAAc7L,KAAKqJ,MAAMyC,gBAChGP,EAAY,mBAAoB,EAChCC,EAAc,MAGhB,IAAIO,EAAiB,CACnBxM,IAAK,IACL,YAAa,OACbyM,WAAW,EAAIvE,EAAqB,SAAG8D,GACvCU,MAAO,CACLC,QAAS,SAEXC,QAASX,GAEPY,EAAc,CAChBR,aAAc5L,KAAKqJ,MAAMuC,aACzBC,WAAY7L,KAAKqJ,MAAMwC,YAazB,OATI7L,KAAKqJ,MAAMgD,UACY9E,EAAgB,QAAE+E,aAAatM,KAAKqJ,MAAMgD,UAAW1D,EAAcA,EAAc,GAAIoD,GAAiBK,IAEtG7E,EAAgB,QAAEgF,cAAc,SAAUxE,EAAS,CAC1ExI,IAAK,IACLsF,KAAM,UACLkH,GAAiB,IAAK,gBAOxBzE,EAhEoB,CAiE3BC,EAAgB,QAAEiF,eAEpBnO,EAAQiJ,UAAYA,EAEpB,IAAID,EAAyB,SAAUoF,GACrC/C,EAAUrC,EAAWoF,GAErB,IAAIC,EAAUvC,EAAa9C,GAE3B,SAASA,IAGP,OAFA4B,EAAgBjJ,KAAMqH,GAEfqF,EAAQvN,MAAMa,KAAMrB,WAwD7B,OArDA4K,EAAalC,EAAW,CAAC,CACvB9H,IAAK,eACL+D,MAAO,SAAsBrB,EAASyI,GAChCA,GACFA,EAAEW,iBAGJrL,KAAKqJ,MAAMiC,aAAarJ,EAASyI,KAElC,CACDnL,IAAK,SACL+D,MAAO,WACL,IAAIqJ,EAAc,CAChB,eAAe,EACf,cAAc,GAEZC,EAAc5M,KAAKsL,aAAaG,KAAKzL,KAAM,CAC7C0L,QAAS,UAGN,EAAIhE,EAAkBmF,WAAW7M,KAAKqJ,SACzCsD,EAAY,mBAAoB,EAChCC,EAAc,MAGhB,IAAIE,EAAiB,CACnBvN,IAAK,IACL,YAAa,OACbyM,WAAW,EAAIvE,EAAqB,SAAGkF,GACvCV,MAAO,CACLC,QAAS,SAEXC,QAASS,GAEPR,EAAc,CAChBR,aAAc5L,KAAKqJ,MAAMuC,aACzBC,WAAY7L,KAAKqJ,MAAMwC,YAazB,OATI7L,KAAKqJ,MAAM0D,UACYxF,EAAgB,QAAE+E,aAAatM,KAAKqJ,MAAM0D,UAAWpE,EAAcA,EAAc,GAAImE,GAAiBV,IAEtG7E,EAAgB,QAAEgF,cAAc,SAAUxE,EAAS,CAC1ExI,IAAK,IACLsF,KAAM,UACLiI,GAAiB,IAAK,YAOxBzF,EAhEoB,CAiE3BE,EAAgB,QAAEiF,eAEpBnO,EAAQgJ,UAAYA,G,kCCjVpBhI,OAAO+H,eAAe/I,EAAS,aAAc,CAC3CiF,OAAO,IAETjF,EAAA,aAAqB,EAErB,IAEgC0E,EAF5BwE,GAE4BxE,EAFI,EAAQ,QAG5BA,EAAI4E,WAAa5E,EAAM,CACnC,QAAWA,GAIf,IA4DIiK,EA5De,CACjBC,eAAe,EACfC,gBAAgB,EAChBC,YAAa,KACbC,WAAY,SAAoBC,GAC9B,OAAoB9F,EAAgB,QAAEgF,cAAc,KAAM,CACxDN,MAAO,CACLC,QAAS,UAEVmB,IAELC,QAAQ,EACRC,UAAU,EACVC,cAAe,IACfC,aAAc,KACdC,YAAY,EACZC,cAAe,OACf3B,UAAW,GACX4B,QAAS,OACTC,aAAc,SAAsBnP,GAClC,OAAoB6I,EAAgB,QAAEgF,cAAc,SAAU,KAAM7N,EAAI,IAE1E2O,MAAM,EACNS,UAAW,aACXC,WAAW,EACXC,OAAQ,SACRC,aAAc,IACdC,MAAM,EACNC,eAAe,EACfxC,UAAU,EACVyC,aAAc,EACdC,SAAU,KACVtB,UAAW,KACXuB,OAAQ,KACRC,OAAQ,KACRC,gBAAiB,KACjBC,SAAU,KACVC,kBAAkB,EAClBC,cAAc,EACdC,cAAc,EACdvC,UAAW,KACXwC,WAAY,KACZC,KAAM,EACNC,KAAK,EACLC,MAAO,MACPC,aAAc,EACdC,eAAgB,EAChBpD,aAAc,EACdqD,MAAO,IACPC,OAAO,EACPC,WAAY,KACZC,cAAc,EACdC,WAAW,EACXC,eAAgB,EAChBC,QAAQ,EACRC,cAAc,EACdC,eAAe,EACfC,UAAU,EACVC,gBAAgB,GAGlBxR,EAAA,QAAqB2O,G,kCC1ErB3N,OAAO+H,eAAe/I,EAAS,aAAc,CAC3CiF,OAAO,IAETjF,EAAQyR,UAAO,EAEf,IAAIvI,EAASC,EAAuB,EAAQ,OAExCC,EAAcD,EAAuB,EAAQ,OAE7CE,EAAoB,EAAQ,MAEhC,SAASF,EAAuBzE,GAC9B,OAAOA,GAAOA,EAAI4E,WAAa5E,EAAM,CACnC,QAAWA,GAIf,SAAS6E,EAAQ7E,GAaf,OATE6E,EADoB,mBAAXC,QAAoD,iBAApBA,OAAOC,SACtC,SAAiB/E,GACzB,cAAcA,GAGN,SAAiBA,GACzB,OAAOA,GAAyB,mBAAX8E,QAAyB9E,EAAIjB,cAAgB+F,QAAU9E,IAAQ8E,OAAOvI,UAAY,gBAAkByD,IAI9GA,GAGjB,SAASmF,EAAQC,EAAQC,GACvB,IAAIlF,EAAO7D,OAAO6D,KAAKiF,GAEvB,GAAI9I,OAAOgJ,sBAAuB,CAChC,IAAIC,EAAUjJ,OAAOgJ,sBAAsBF,GACvCC,IAAgBE,EAAUA,EAAQC,QAAO,SAAUC,GACrD,OAAOnJ,OAAOoJ,yBAAyBN,EAAQK,GAAKE,eAEtDxF,EAAKnE,KAAKI,MAAM+D,EAAMoF,GAGxB,OAAOpF,EAuBT,SAAS0F,EAAgB7F,EAAKxD,EAAK+D,GAYjC,OAXI/D,KAAOwD,EACT1D,OAAO+H,eAAerE,EAAKxD,EAAK,CAC9B+D,MAAOA,EACPoF,YAAY,EACZK,cAAc,EACdC,UAAU,IAGZjG,EAAIxD,GAAO+D,EAGNP,EAGT,SAASkG,EAAgBC,EAAUC,GACjC,KAAMD,aAAoBC,GACxB,MAAM,IAAIjD,UAAU,qCAIxB,SAASkD,EAAkB1G,EAAQ2G,GACjC,IAAK,IAAI3K,EAAI,EAAGA,EAAI2K,EAAMzK,OAAQF,IAAK,CACrC,IAAI4K,EAAaD,EAAM3K,GACvB4K,EAAWZ,WAAaY,EAAWZ,aAAc,EACjDY,EAAWP,cAAe,EACtB,UAAWO,IAAYA,EAAWN,UAAW,GACjD3J,OAAO+H,eAAe1E,EAAQ4G,EAAW/J,IAAK+J,IAyBlD,SAASQ,EAAgBC,EAAGC,GAM1B,OALAF,EAAkBzK,OAAO4K,gBAAkB,SAAyBF,EAAGC,GAErE,OADAD,EAAEG,UAAYF,EACPD,IAGcA,EAAGC,GAG5B,SAASG,EAAaC,GACpB,IAAIC,EAkCN,WACE,GAAuB,oBAAZC,UAA4BA,QAAQC,UAAW,OAAO,EACjE,GAAID,QAAQC,UAAUC,KAAM,OAAO,EACnC,GAAqB,mBAAVC,MAAsB,OAAO,EAExC,IAEE,OADA9F,KAAKrF,UAAUF,SAASI,KAAK8K,QAAQC,UAAU5F,KAAM,IAAI,iBAClD,EACP,MAAO+F,GACP,OAAO,GA3CuBC,GAEhC,OAAO,WACL,IACIhF,EADAiF,EAAQC,EAAgBT,GAG5B,GAAIC,EAA2B,CAC7B,IAAIS,EAAYD,EAAgB7K,MAAM8B,YAEtC6D,EAAS2E,QAAQC,UAAUK,EAAOjM,UAAWmM,QAE7CnF,EAASiF,EAAMzL,MAAMa,KAAMrB,WAG7B,OAAOoM,EAA2B/K,KAAM2F,IAI5C,SAASoF,EAA2B1K,EAAMb,GACxC,OAAIA,GAA2B,WAAlBoI,EAAQpI,IAAsC,mBAATA,EAOpD,SAAgCa,GAC9B,QAAa,IAATA,EACF,MAAM,IAAI2K,eAAe,6DAG3B,OAAO3K,EARA4K,CAAuB5K,GAHrBb,EA2BX,SAASqL,EAAgBd,GAIvB,OAHAc,EAAkBxL,OAAO4K,eAAiB5K,OAAO6L,eAAiB,SAAyBnB,GACzF,OAAOA,EAAEG,WAAa7K,OAAO6L,eAAenB,KAEvBA,GAGzB,IAYI+F,EAAoB,SAAU3E,IA3FlC,SAAmBxB,EAAUC,GAC3B,GAA0B,mBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAI1D,UAAU,sDAGtByD,EAASrK,UAAYD,OAAOwK,OAAOD,GAAcA,EAAWtK,UAAW,CACrEwC,YAAa,CACXwB,MAAOqG,EACPX,UAAU,EACVD,cAAc,KAGda,GAAYE,EAAgBH,EAAUC,GAgF1CF,CAAUoG,EAAM3E,GAEhB,IApGoBhC,EAAaK,EAAYC,EAoGzC2B,EAASjB,EAAa2F,GAE1B,SAASA,IAGP,OAFA7G,EAAgBjJ,KAAM8P,GAEf1E,EAAOjM,MAAMa,KAAMrB,WAoE5B,OA7KoBwK,EA4GP2G,GA5GoBtG,EA4Gd,CAAC,CAClBjK,IAAK,eACL+D,MAAO,SAAsBrB,EAASyI,GAGpCA,EAAEW,iBACFrL,KAAKqJ,MAAMiC,aAAarJ,KAEzB,CACD1C,IAAK,SACL+D,MAAO,WAuBL,IAtBA,IAlCiCyM,EAkC7BC,EAAchQ,KAAKqJ,MACnB4G,EAAeD,EAAYC,aAC3BC,EAAcF,EAAYE,YAC1BC,EAAeH,EAAYG,aAC3BxE,EAAWqE,EAAYrE,SACvBuD,EAAiBc,EAAYd,eAC7BpD,EAAekE,EAAYlE,aAC3BD,EAAamE,EAAYnE,WACzBD,EAAeoE,EAAYpE,aAC3BwE,GA3C6BL,EA2CN,CACzBlE,WAAYA,EACZqD,eAAgBA,EAChBpD,aAAcA,EACdH,SAAUA,IA5CPA,SACArH,KAAK+L,KAAKN,EAAKlE,WAAakE,EAAKb,gBAEjC5K,KAAK+L,MAAMN,EAAKlE,WAAakE,EAAKjE,cAAgBiE,EAAKb,gBAAkB,EA2C1EoB,EAAc,CAChBL,aAAcA,EACdC,YAAaA,EACbC,aAAcA,GAEZ9C,EAAO,GAEF3O,EAAI,EAAGA,EAAI0R,EAAU1R,IAAK,CACjC,IAAI6R,GAAe7R,EAAI,GAAKwQ,EAAiB,EAEzCsB,EAAa7E,EAAW4E,GAAc,EAAI7I,EAAkB+I,OAAOF,EAAa,EAAG1E,EAAa,GAEhG6E,EAAaF,GAActB,EAAiB,GAE5CyB,EAAYhF,EAAW+E,GAAa,EAAIhJ,EAAkB+I,OAAOC,EAAY,EAAG7E,EAAa,GAC7FG,GAAY,EAAIvE,EAAqB,SAAG,CAC1C,eAAgBkE,EAAWC,GAAgB+E,GAAa/E,GAAgB4E,EAAa5E,IAAiB+E,IAEpGC,EAAa,CACflF,QAAS,OACTrI,MAAO3E,EACPwQ,eAAgBA,EAChBtD,aAAcA,GAEZO,EAAUnM,KAAKsL,aAAaG,KAAKzL,KAAM4Q,GAC3CvD,EAAOA,EAAKwD,OAAqBtJ,EAAgB,QAAEgF,cAAc,KAAM,CACrEhN,IAAKb,EACLsN,UAAWA,GACGzE,EAAgB,QAAE+E,aAAatM,KAAKqJ,MAAMwE,aAAanP,GAAI,CACzEyN,QAASA,MAIb,OAAoB5E,EAAgB,QAAE+E,aAAatM,KAAKqJ,MAAM+D,WAAWC,GA1N/E,SAAuB3K,GACrB,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAyB,MAAhBtJ,UAAUD,GAAaC,UAAUD,GAAK,GAE/CA,EAAI,EACNwJ,EAAQ7I,OAAO4I,IAAS,GAAM9E,SAAQ,SAAU5D,GAC9CqJ,EAAgBlG,EAAQnD,EAAK0I,EAAO1I,OAE7BF,OAAOwJ,0BAChBxJ,OAAOyJ,iBAAiBpG,EAAQrD,OAAOwJ,0BAA0BZ,IAEjEC,EAAQ7I,OAAO4I,IAAS9E,SAAQ,SAAU5D,GACxCF,OAAO+H,eAAe1E,EAAQnD,EAAKF,OAAOoJ,yBAAyBR,EAAQ1I,OAKjF,OAAOmD,EAyM6EiG,CAAc,CAC5FqD,UAAWhM,KAAKqJ,MAAMyE,WACrBwC,SAxKSlH,EAAkBD,EAAY7J,UAAWkK,GACrDC,GAAaL,EAAkBD,EAAaM,GA2KzCqG,EA5Ee,CA6EtBvI,EAAgB,QAAEiF,eAEpBnO,EAAQyR,KAAOA,G,sCC3QiB/M,EAJhC1E,EAAA,OAAqB,EAUrB,IAAI2O,IAN4BjK,EAFK,EAAQ,QAG7BA,EAAI4E,WAAa5E,EAAM,CACnC,QAAWA,IAIiB,QAChC1E,EAAA,EAAqB2O,G,gCCdrB3N,OAAO+H,eAAe/I,EAAS,aAAc,CAC3CiF,OAAO,IAETjF,EAAA,aAAqB,EACrB,IA+BI2O,EA/Be,CACjB8D,WAAW,EACXC,YAAa,KACbC,iBAAkB,EAClBC,YAAa,KACbrF,aAAc,EACdsF,UAAW,EACXC,UAAU,EACVC,aAAa,EACbC,aAAa,EACbC,eAAgB,GAChBC,WAAY,KACZC,UAAW,KACXC,WAAW,EACX5F,WAAY,KACZ6F,YAAa,KACbC,WAAY,KACZC,UAAW,KACXC,QAAQ,EAERC,SAAS,EACTC,YAAa,CACXC,OAAQ,EACRC,OAAQ,EACRC,KAAM,EACNC,KAAM,GAERC,WAAY,GACZC,WAAY,EACZC,YAAa,GAGfjU,EAAA,QAAqB2O,G,kCCpCrB3N,OAAO+H,eAAe/I,EAAS,aAAc,CAC3CiF,OAAO,IAETjF,EAAQkU,iBAAc,EAEtB,IAAIhL,EAASC,EAAuB,EAAQ,OAExCgL,EAAgBhL,EAAuB,EAAQ,OAE/CiL,EAAUjL,EAAuB,EAAQ,OAEzCC,EAAcD,EAAuB,EAAQ,OAE7CE,EAAoB,EAAQ,MAE5BgL,EAAS,EAAQ,MAEjBC,EAAQ,EAAQ,MAEhBC,EAAU,EAAQ,KAElBC,EAA0BrL,EAAuB,EAAQ,OAE7D,SAASA,EAAuBzE,GAC9B,OAAOA,GAAOA,EAAI4E,WAAa5E,EAAM,CACnC,QAAWA,GAIf,SAAS6E,EAAQ7E,GAaf,OATE6E,EADoB,mBAAXC,QAAoD,iBAApBA,OAAOC,SACtC,SAAiB/E,GACzB,cAAcA,GAGN,SAAiBA,GACzB,OAAOA,GAAyB,mBAAX8E,QAAyB9E,EAAIjB,cAAgB+F,QAAU9E,IAAQ8E,OAAOvI,UAAY,gBAAkByD,IAI9GA,GAGjB,SAASgF,IAeP,OAdAA,EAAW1I,OAAO2I,QAAU,SAAUtF,GACpC,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAStJ,UAAUD,GAEvB,IAAK,IAAIa,KAAO0I,EACV5I,OAAOC,UAAUf,eAAeiB,KAAKyI,EAAQ1I,KAC/CmD,EAAOnD,GAAO0I,EAAO1I,IAK3B,OAAOmD,IAGOvD,MAAMa,KAAMrB,WAG9B,SAASmU,EAAyB7K,EAAQ8K,GACxC,GAAc,MAAV9K,EAAgB,MAAO,GAE3B,IAEI1I,EAAKb,EAFLgE,EAkBN,SAAuCuF,EAAQ8K,GAC7C,GAAc,MAAV9K,EAAgB,MAAO,GAC3B,IAEI1I,EAAKb,EAFLgE,EAAS,GACTsQ,EAAa3T,OAAO6D,KAAK+E,GAG7B,IAAKvJ,EAAI,EAAGA,EAAIsU,EAAWpU,OAAQF,IACjCa,EAAMyT,EAAWtU,GACbqU,EAASE,QAAQ1T,IAAQ,IAC7BmD,EAAOnD,GAAO0I,EAAO1I,IAGvB,OAAOmD,EA9BMwQ,CAA8BjL,EAAQ8K,GAInD,GAAI1T,OAAOgJ,sBAAuB,CAChC,IAAI8K,EAAmB9T,OAAOgJ,sBAAsBJ,GAEpD,IAAKvJ,EAAI,EAAGA,EAAIyU,EAAiBvU,OAAQF,IACvCa,EAAM4T,EAAiBzU,GACnBqU,EAASE,QAAQ1T,IAAQ,GACxBF,OAAOC,UAAU8T,qBAAqB5T,KAAKyI,EAAQ1I,KACxDmD,EAAOnD,GAAO0I,EAAO1I,IAIzB,OAAOmD,EAkBT,SAASwF,EAAQC,EAAQC,GACvB,IAAIlF,EAAO7D,OAAO6D,KAAKiF,GAEvB,GAAI9I,OAAOgJ,sBAAuB,CAChC,IAAIC,EAAUjJ,OAAOgJ,sBAAsBF,GACvCC,IAAgBE,EAAUA,EAAQC,QAAO,SAAUC,GACrD,OAAOnJ,OAAOoJ,yBAAyBN,EAAQK,GAAKE,eAEtDxF,EAAKnE,KAAKI,MAAM+D,EAAMoF,GAGxB,OAAOpF,EAGT,SAASyF,EAAcjG,GACrB,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAyB,MAAhBtJ,UAAUD,GAAaC,UAAUD,GAAK,GAE/CA,EAAI,EACNwJ,EAAQ7I,OAAO4I,IAAS,GAAM9E,SAAQ,SAAU5D,GAC9CqJ,EAAgBlG,EAAQnD,EAAK0I,EAAO1I,OAE7BF,OAAOwJ,0BAChBxJ,OAAOyJ,iBAAiBpG,EAAQrD,OAAOwJ,0BAA0BZ,IAEjEC,EAAQ7I,OAAO4I,IAAS9E,SAAQ,SAAU5D,GACxCF,OAAO+H,eAAe1E,EAAQnD,EAAKF,OAAOoJ,yBAAyBR,EAAQ1I,OAKjF,OAAOmD,EAST,SAAS0G,EAAkB1G,EAAQ2G,GACjC,IAAK,IAAI3K,EAAI,EAAGA,EAAI2K,EAAMzK,OAAQF,IAAK,CACrC,IAAI4K,EAAaD,EAAM3K,GACvB4K,EAAWZ,WAAaY,EAAWZ,aAAc,EACjDY,EAAWP,cAAe,EACtB,UAAWO,IAAYA,EAAWN,UAAW,GACjD3J,OAAO+H,eAAe1E,EAAQ4G,EAAW/J,IAAK+J,IAyBlD,SAASQ,EAAgBC,EAAGC,GAM1B,OALAF,EAAkBzK,OAAO4K,gBAAkB,SAAyBF,EAAGC,GAErE,OADAD,EAAEG,UAAYF,EACPD,IAGcA,EAAGC,GAG5B,SAASG,EAAaC,GACpB,IAAIC,EAkCN,WACE,GAAuB,oBAAZC,UAA4BA,QAAQC,UAAW,OAAO,EACjE,GAAID,QAAQC,UAAUC,KAAM,OAAO,EACnC,GAAqB,mBAAVC,MAAsB,OAAO,EAExC,IAEE,OADA9F,KAAKrF,UAAUF,SAASI,KAAK8K,QAAQC,UAAU5F,KAAM,IAAI,iBAClD,EACP,MAAO+F,GACP,OAAO,GA3CuBC,GAEhC,OAAO,WACL,IACIhF,EADAiF,EAAQC,EAAgBT,GAG5B,GAAIC,EAA2B,CAC7B,IAAIS,EAAYD,EAAgB7K,MAAM8B,YAEtC6D,EAAS2E,QAAQC,UAAUK,EAAOjM,UAAWmM,QAE7CnF,EAASiF,EAAMzL,MAAMa,KAAMrB,WAG7B,OAAOoM,EAA2B/K,KAAM2F,IAI5C,SAASoF,EAA2B1K,EAAMb,GACxC,OAAIA,GAA2B,WAAlBoI,EAAQpI,IAAsC,mBAATA,EAI3CyL,EAAuB5K,GAHrBb,EAMX,SAASyL,EAAuB5K,GAC9B,QAAa,IAATA,EACF,MAAM,IAAI2K,eAAe,6DAG3B,OAAO3K,EAgBT,SAASwK,EAAgBd,GAIvB,OAHAc,EAAkBxL,OAAO4K,eAAiB5K,OAAO6L,eAAiB,SAAyBnB,GACzF,OAAOA,EAAEG,WAAa7K,OAAO6L,eAAenB,KAEvBA,GAGzB,SAASnB,EAAgB7F,EAAKxD,EAAK+D,GAYjC,OAXI/D,KAAOwD,EACT1D,OAAO+H,eAAerE,EAAKxD,EAAK,CAC9B+D,MAAOA,EACPoF,YAAY,EACZK,cAAc,EACdC,UAAU,IAGZjG,EAAIxD,GAAO+D,EAGNP,EAGT,IAAIwP,EAA2B,SAAUc,IA9FzC,SAAmB1J,EAAUC,GAC3B,GAA0B,mBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAI1D,UAAU,sDAGtByD,EAASrK,UAAYD,OAAOwK,OAAOD,GAAcA,EAAWtK,UAAW,CACrEwC,YAAa,CACXwB,MAAOqG,EACPX,UAAU,EACVD,cAAc,KAGda,GAAYE,EAAgBH,EAAUC,GAmF1CF,CAAU6I,EAAac,GAEvB,IAvGoBlK,EAAaK,EAAYC,EAuGzC2B,EAASjB,EAAaoI,GAE1B,SAASA,EAAYlJ,GACnB,IAAIiK,GA1HR,SAAyBpK,EAAUC,GACjC,KAAMD,aAAoBC,GACxB,MAAM,IAAIjD,UAAU,qCA0HpB+C,CAAgBjJ,KAAMuS,GAItB3J,EAAgBqC,EAFhBqI,EAAQlI,EAAO5L,KAAKQ,KAAMqJ,IAEqB,kBAAkB,SAAUkK,GACzE,OAAOD,EAAME,KAAOD,KAGtB3K,EAAgBqC,EAAuBqI,GAAQ,mBAAmB,SAAUC,GAC1E,OAAOD,EAAMG,MAAQF,KAGvB3K,EAAgBqC,EAAuBqI,GAAQ,eAAe,WAC5D,GAAIA,EAAMjK,MAAM6D,gBAAkBoG,EAAME,KAAM,CAC5C,IAAIE,EAAOJ,EAAME,KAAKG,cAAc,gBAAiB9C,OAAOyC,EAAMM,MAAMhI,aAAc,OAEtF0H,EAAME,KAAKvH,MAAM4H,QAAS,EAAInM,EAAkBoM,WAAWJ,GAAQ,SAIvE9K,EAAgBqC,EAAuBqI,GAAQ,qBAAqB,WAGlE,GAFAA,EAAMjK,MAAMkF,QAAU+E,EAAMjK,MAAMkF,SAE9B+E,EAAMjK,MAAMgF,SAAU,CACxB,IAAI0F,GAAe,EAAIrM,EAAkBsM,uBAAuBrL,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,QAEhHG,EAAanV,OAAS,IACxB0U,EAAMW,UAAS,SAAUC,GACvB,MAAO,CACL5C,eAAgB4C,EAAU5C,eAAeT,OAAOkD,OAIhDT,EAAMjK,MAAM8K,YACdb,EAAMjK,MAAM8K,WAAWJ,IAK7B,IAAIhE,EAAOpH,EAAc,CACvByL,QAASd,EAAME,KACfa,SAAUf,EAAMG,OACfH,EAAMjK,OAETiK,EAAMgB,YAAYvE,GAAM,GAAM,WAC5BuD,EAAMiB,cAENjB,EAAMjK,MAAMkE,UAAY+F,EAAMkB,SAAS,aAGZ,gBAAzBlB,EAAMjK,MAAMgF,WACdiF,EAAMmB,cAAgBC,YAAYpB,EAAMqB,oBAAqB,MAG/DrB,EAAMsB,GAAK,IAAI/B,EAAiC,SAAE,WAC5CS,EAAMM,MAAM9C,WACdwC,EAAMuB,iBAAgB,GAGtBvB,EAAMwB,eAAe/V,KAAK0H,YAAW,WACnC,OAAO6M,EAAMuB,oBACZvB,EAAMjK,MAAM8F,SAEfmE,EAAMuB,qBAIVvB,EAAMsB,GAAGG,QAAQzB,EAAME,MAEvBwB,SAASC,kBAAoBjW,MAAMM,UAAU6D,QAAQ3D,KAAKwV,SAASC,iBAAiB,iBAAiB,SAAUjG,GAC7GA,EAAMkG,QAAU5B,EAAMjK,MAAMsF,aAAe2E,EAAM6B,aAAe,KAChEnG,EAAMoG,OAAS9B,EAAMjK,MAAMsF,aAAe2E,EAAM+B,YAAc,QAG5DlV,OAAOmV,iBACTnV,OAAOmV,iBAAiB,SAAUhC,EAAMuB,iBAExC1U,OAAOoV,YAAY,WAAYjC,EAAMuB,oBAIzCjM,EAAgBqC,EAAuBqI,GAAQ,wBAAwB,WACjEA,EAAMkC,sBACRtO,aAAaoM,EAAMkC,sBAGjBlC,EAAMmB,eACRgB,cAAcnC,EAAMmB,eAGlBnB,EAAMwB,eAAelW,SACvB0U,EAAMwB,eAAe3R,SAAQ,SAAUuS,GACrC,OAAOxO,aAAawO,MAGtBpC,EAAMwB,eAAiB,IAGrB3U,OAAOmV,iBACTnV,OAAOwV,oBAAoB,SAAUrC,EAAMuB,iBAE3C1U,OAAOyV,YAAY,WAAYtC,EAAMuB,iBAGnCvB,EAAMuC,eACRJ,cAAcnC,EAAMuC,eAGtBvC,EAAMsB,GAAGkB,gBAGXlN,EAAgBqC,EAAuBqI,GAAQ,sBAAsB,SAAUyC,GAK7E,GAJAzC,EAAM0C,kBAEN1C,EAAMjK,MAAMoF,UAAY6E,EAAMjK,MAAMoF,WAEhC6E,EAAMjK,MAAMgF,SAAU,CACxB,IAAI0F,GAAe,EAAIrM,EAAkBsM,uBAAuBrL,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,QAEhHG,EAAanV,OAAS,IACxB0U,EAAMW,UAAS,SAAUC,GACvB,MAAO,CACL5C,eAAgB4C,EAAU5C,eAAeT,OAAOkD,OAIhDT,EAAMjK,MAAM8K,YACdb,EAAMjK,MAAM8K,WAAWJ,IAQ7BT,EAAMiB,cAEN,IAAIxE,EAAOpH,EAAcA,EAAc,CACrCyL,QAASd,EAAME,KACfa,SAAUf,EAAMG,OACfH,EAAMjK,OAAQiK,EAAMM,OAEnBqC,EAAgB3C,EAAM4C,eAAeH,GAEzCE,GAAiB3C,EAAMgB,YAAYvE,EAAMkG,GAAe,WAClD3C,EAAMM,MAAMhI,cAAgBrE,EAAgB,QAAE4O,SAASC,MAAM9C,EAAMjK,MAAMgN,WAC3E/C,EAAMgD,YAAY,CAChB5K,QAAS,QACTrI,MAAOkE,EAAgB,QAAE4O,SAASC,MAAM9C,EAAMjK,MAAMgN,UAAY/C,EAAMjK,MAAMyC,aAC5EF,aAAc0H,EAAMM,MAAMhI,eAI1B0H,EAAMjK,MAAMkE,SACd+F,EAAMkB,SAAS,UAEflB,EAAMiD,MAAM,gBAKlB3N,EAAgBqC,EAAuBqI,GAAQ,mBAAmB,SAAU2C,GACtE3C,EAAMkD,iBAAiBlD,EAAMkD,gBAAgBvP,SACjDqM,EAAMkD,iBAAkB,EAAI/D,EAAiB,UAAG,WAC9C,OAAOa,EAAMmD,aAAaR,KACzB,IAEH3C,EAAMkD,qBAGR5N,EAAgBqC,EAAuBqI,GAAQ,gBAAgB,WAC7D,IAAI2C,IAAgBtX,UAAUC,OAAS,QAAsB2H,IAAjB5H,UAAU,KAAmBA,UAAU,GAC/E+X,EAAiBC,QAAQrD,EAAMG,OAASH,EAAMG,MAAMmD,MAExD,GAAKF,EAAL,CAEA,IAAI3G,EAAOpH,EAAcA,EAAc,CACrCyL,QAASd,EAAME,KACfa,SAAUf,EAAMG,OACfH,EAAMjK,OAAQiK,EAAMM,OAEvBN,EAAMgB,YAAYvE,EAAMkG,GAAe,WACjC3C,EAAMjK,MAAMkE,SAAU+F,EAAMkB,SAAS,UAAelB,EAAMiD,MAAM,aAItEjD,EAAMW,SAAS,CACbnD,WAAW,IAGb5J,aAAaoM,EAAMkC,6BACZlC,EAAMkC,yBAGf5M,EAAgBqC,EAAuBqI,GAAQ,eAAe,SAAUvD,EAAMkG,EAAeY,GAC3F,IAAIC,GAAe,EAAIpP,EAAkBqP,kBAAkBhH,GAC3DA,EAAOpH,EAAcA,EAAcA,EAAc,GAAIoH,GAAO+G,GAAe,GAAI,CAC7EE,WAAYF,EAAalL,eAE3B,IAAIqL,GAAa,EAAIvP,EAAkBwP,cAAcnH,GACrDA,EAAOpH,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CAChDoH,KAAMF,IAER,IAAI7E,GAAa,EAAI1K,EAAkB0P,aAAarH,IAEhDkG,GAAiB1O,EAAgB,QAAE4O,SAASC,MAAM9C,EAAMjK,MAAMgN,YAAc9O,EAAgB,QAAE4O,SAASC,MAAMrG,EAAKsG,aACpHS,EAAyB,WAAI1E,GAG/BkB,EAAMW,SAAS6C,EAAcD,MAG/BjO,EAAgBqC,EAAuBqI,GAAQ,WAAW,WACxD,GAAIA,EAAMjK,MAAMsG,cAAe,CAC7B,IAAI0H,EAAc,EACdC,EAAa,EACbC,EAAiB,GACjBC,GAAY,EAAI9P,EAAkB+P,cAAc9O,EAAcA,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,OAAQ,GAAI,CAChI/H,WAAYyH,EAAMjK,MAAMgN,SAASzX,UAE/B8Y,GAAa,EAAIhQ,EAAkBiQ,eAAehP,EAAcA,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,OAAQ,GAAI,CAClI/H,WAAYyH,EAAMjK,MAAMgN,SAASzX,UAGnC0U,EAAMjK,MAAMgN,SAASlT,SAAQ,SAAUyU,GACrCL,EAAexY,KAAK6Y,EAAMvO,MAAM4C,MAAM4L,OACtCR,GAAeO,EAAMvO,MAAM4C,MAAM4L,SAGnC,IAAK,IAAInZ,EAAI,EAAGA,EAAI8Y,EAAW9Y,IAC7B4Y,GAAcC,EAAeA,EAAe3Y,OAAS,EAAIF,GACzD2Y,GAAeE,EAAeA,EAAe3Y,OAAS,EAAIF,GAG5D,IAAK,IAAIoZ,EAAK,EAAGA,EAAKJ,EAAYI,IAChCT,GAAeE,EAAeO,GAGhC,IAAK,IAAIC,EAAM,EAAGA,EAAMzE,EAAMM,MAAMhI,aAAcmM,IAChDT,GAAcC,EAAeQ,GAG/B,IAAIC,EAAc,CAChBH,MAAOR,EAAc,KACrBF,MAAOG,EAAa,MAGtB,GAAIhE,EAAMjK,MAAMqE,WAAY,CAC1B,IAAIuK,EAAe,GAAGpH,OAAO0G,EAAejE,EAAMM,MAAMhI,cAAe,MACvEoM,EAAYb,KAAO,QAAQtG,OAAOmH,EAAYb,KAAM,eAAetG,OAAOoH,EAAc,YAG1F,MAAO,CACL7F,WAAY4F,GAIhB,IAAIE,EAAgB3Q,EAAgB,QAAE4O,SAASC,MAAM9C,EAAMjK,MAAMgN,UAE7DtG,EAAOpH,EAAcA,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,OAAQ,GAAI,CACvF/H,WAAYqM,IAGVrM,GAAa,EAAInE,EAAkB+P,cAAc1H,IAAQ,EAAIrI,EAAkBiQ,eAAe5H,GAAQmI,EACtG7F,EAAa,IAAMiB,EAAMjK,MAAMyC,aAAeD,EAC9C8F,EAAa,IAAM9F,EACnBsM,GAAaxG,IAAc,EAAIjK,EAAkB+P,cAAc1H,GAAQuD,EAAMM,MAAMhI,cAAgByG,EAAa,IAUpH,OARIiB,EAAMjK,MAAMqE,aACdyK,IAAc,IAAMxG,EAAaU,EAAa,KAAO,GAOhD,CACLV,WAAYA,EAAa,IACzBS,WANe,CACfyF,MAAOxF,EAAa,IACpB8E,KAAMgB,EAAY,SAQtBvP,EAAgBqC,EAAuBqI,GAAQ,mBAAmB,WAChE,IAAI8E,EAAS9E,EAAME,MAAQF,EAAME,KAAKyB,kBAAoB3B,EAAME,KAAKyB,iBAAiB,qBAAuB,GACzGoD,EAAcD,EAAOxZ,OACrB0Z,EAAc,EAClBtZ,MAAMM,UAAU6D,QAAQ3D,KAAK4Y,GAAQ,SAAUG,GAC7C,IAAI3X,EAAU,WACZ,QAAS0X,GAAeA,GAAeD,GAAe/E,EAAMuB,mBAG9D,GAAK0D,EAAMC,QAIJ,CACL,IAAIC,EAAmBF,EAAMC,QAE7BD,EAAMC,QAAU,WACdC,IACAF,EAAMG,WAAWC,cARnBJ,EAAMC,QAAU,WACd,OAAOD,EAAMG,WAAWC,SAWvBJ,EAAMK,SACLtF,EAAMjK,MAAMgF,SACdkK,EAAMK,OAAS,WACbtF,EAAMiB,cAENjB,EAAMwB,eAAe/V,KAAK0H,WAAW6M,EAAMuB,gBAAiBvB,EAAMjK,MAAM8F,UAG1EoJ,EAAMK,OAAShY,EAEf2X,EAAMM,QAAU,WACdjY,IACA0S,EAAMjK,MAAMmF,iBAAmB8E,EAAMjK,MAAMmF,2BAOrD5F,EAAgBqC,EAAuBqI,GAAQ,uBAAuB,WAKpE,IAJA,IAAIS,EAAe,GAEfhE,EAAOpH,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,OAEtDvQ,EAAQiQ,EAAMM,MAAMhI,aAAcvI,EAAQiQ,EAAMM,MAAM/H,YAAa,EAAInE,EAAkBiQ,eAAe5H,GAAO1M,IACtH,GAAIiQ,EAAMM,MAAMtC,eAAe2B,QAAQ5P,GAAS,EAAG,CACjD0Q,EAAahV,KAAKsE,GAClB,MAIJ,IAAK,IAAIyV,EAASxF,EAAMM,MAAMhI,aAAe,EAAGkN,KAAW,EAAIpR,EAAkB+P,cAAc1H,GAAO+I,IACpG,GAAIxF,EAAMM,MAAMtC,eAAe2B,QAAQ6F,GAAU,EAAG,CAClD/E,EAAahV,KAAK+Z,GAClB,MAIA/E,EAAanV,OAAS,GACxB0U,EAAMW,UAAS,SAAUL,GACvB,MAAO,CACLtC,eAAgBsC,EAAMtC,eAAeT,OAAOkD,OAI5CT,EAAMjK,MAAM8K,YACdb,EAAMjK,MAAM8K,WAAWJ,IAGrBT,EAAMmB,gBACRgB,cAAcnC,EAAMmB,sBACbnB,EAAMmB,kBAKnB7L,EAAgBqC,EAAuBqI,GAAQ,gBAAgB,SAAUjQ,GACvE,IAAI0V,EAAcpa,UAAUC,OAAS,QAAsB2H,IAAjB5H,UAAU,IAAmBA,UAAU,GAC7EqR,EAAcsD,EAAMjK,MACpB2P,EAAWhJ,EAAYgJ,SACvBvL,EAAeuC,EAAYvC,aAC3B0G,EAAanE,EAAYmE,WACzBhF,EAAQa,EAAYb,MACpBhC,EAAc6C,EAAY7C,YAE1BvB,EAAe0H,EAAMM,MAAMhI,aAE3BqN,GAAgB,EAAIvR,EAAkBwR,cAAcvQ,EAAcA,EAAcA,EAAc,CAChGtF,MAAOA,GACNiQ,EAAMjK,OAAQiK,EAAMM,OAAQ,GAAI,CACjCS,SAAUf,EAAMG,MAChBhE,OAAQ6D,EAAMjK,MAAMoG,SAAWsJ,KAE7BnF,EAAQqF,EAAcrF,MACtBuF,EAAYF,EAAcE,UAE9B,GAAKvF,EAAL,CACAnG,GAAgBA,EAAa7B,EAAcgI,EAAMhI,cACjD,IAAImI,EAAeH,EAAMtC,eAAe/I,QAAO,SAAUjF,GACvD,OAAOgQ,EAAMM,MAAMtC,eAAe2B,QAAQ3P,GAAS,KAErD6Q,GAAcJ,EAAanV,OAAS,GAAKuV,EAAWJ,IAE/CT,EAAMjK,MAAMwG,gBAAkByD,EAAMkC,uBACvCtO,aAAaoM,EAAMkC,sBACnBrI,GAAeA,EAAYvB,UACpB0H,EAAMkC,sBAGflC,EAAMW,SAASL,GAAO,WAEhBoF,GAAY1F,EAAM8F,gBAAkB/V,IACtCiQ,EAAM8F,cAAgB/V,EACtB2V,EAASK,YAAYH,aAAa7V,IAG/B8V,IACL7F,EAAMkC,qBAAuB/O,YAAW,WACtC,IAAIqK,EAAYqI,EAAUrI,UACtBwI,EAAaxG,EAAyBqG,EAAW,CAAC,cAEtD7F,EAAMW,SAASqF,GAAY,WACzBhG,EAAMwB,eAAe/V,KAAK0H,YAAW,WACnC,OAAO6M,EAAMW,SAAS,CACpBnD,UAAWA,MAEZ,KAEH3D,GAAeA,EAAYyG,EAAMhI,qBAC1B0H,EAAMkC,0BAEdrG,WAIPvG,EAAgBqC,EAAuBqI,GAAQ,eAAe,SAAUrR,GACtE,IAAI8W,EAAcpa,UAAUC,OAAS,QAAsB2H,IAAjB5H,UAAU,IAAmBA,UAAU,GAE7EoR,EAAOpH,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,OAE3DtB,GAAc,EAAI5K,EAAkB4O,aAAavG,EAAM9N,GAC3D,IAAoB,IAAhBqQ,GAAsBA,MAEN,IAAhByG,EACFzF,EAAM4F,aAAa5G,EAAayG,GAEhCzF,EAAM4F,aAAa5G,GAGrBgB,EAAMjK,MAAMkE,UAAY+F,EAAMkB,SAAS,UAEnClB,EAAMjK,MAAM8E,eAAe,CAC7B,IAAIoL,EAAQjG,EAAME,KAAKyB,iBAAiB,kBAExCsE,EAAM,IAAMA,EAAM,GAAGZ,YAIzB/P,EAAgBqC,EAAuBqI,GAAQ,gBAAgB,SAAU5I,IAC/C,IAApB4I,EAAMkG,YACR9O,EAAE+O,kBACF/O,EAAEW,kBAGJiI,EAAMkG,WAAY,KAGpB5Q,EAAgBqC,EAAuBqI,GAAQ,cAAc,SAAU5I,GACrE,IAAIgP,GAAM,EAAIhS,EAAkBiS,YAAYjP,EAAG4I,EAAMjK,MAAM4D,cAAeqG,EAAMjK,MAAM0F,KAC9E,KAAR2K,GAAcpG,EAAMgD,YAAY,CAC9B5K,QAASgO,OAIb9Q,EAAgBqC,EAAuBqI,GAAQ,iBAAiB,SAAUrR,GACxEqR,EAAMgD,YAAYrU,MAGpB2G,EAAgBqC,EAAuBqI,GAAQ,qBAAqB,WAOlEnT,OAAOyZ,YANc,SAAwBlP,IAC3CA,EAAIA,GAAKvK,OAAO0Z,OACVxO,gBAAgBX,EAAEW,iBACxBX,EAAEoP,aAAc,MAMpBlR,EAAgBqC,EAAuBqI,GAAQ,oBAAoB,WACjEnT,OAAOyZ,YAAc,QAGvBhR,EAAgBqC,EAAuBqI,GAAQ,cAAc,SAAU5I,GACjE4I,EAAMjK,MAAM0Q,iBACdzG,EAAM0G,oBAGR,IAAIpG,GAAQ,EAAIlM,EAAkBuS,YAAYvP,EAAG4I,EAAMjK,MAAM+F,MAAOkE,EAAMjK,MAAM0E,WACtE,KAAV6F,GAAgBN,EAAMW,SAASL,MAGjChL,EAAgBqC,EAAuBqI,GAAQ,aAAa,SAAU5I,GACpE,IAAIkJ,GAAQ,EAAIlM,EAAkBwS,WAAWxP,EAAG/B,EAAcA,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,OAAQ,GAAI,CAC5HS,SAAUf,EAAMG,MAChBW,QAASd,EAAME,KACfwD,WAAY1D,EAAMM,MAAMhI,gBAErBgI,IAEDA,EAAe,UACjBN,EAAMkG,WAAY,GAGpBlG,EAAMW,SAASL,OAGjBhL,EAAgBqC,EAAuBqI,GAAQ,YAAY,SAAU5I,GACnE,IAAIkJ,GAAQ,EAAIlM,EAAkByS,UAAUzP,EAAG/B,EAAcA,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,OAAQ,GAAI,CAC3HS,SAAUf,EAAMG,MAChBW,QAASd,EAAME,KACfwD,WAAY1D,EAAMM,MAAMhI,gBAE1B,GAAKgI,EAAL,CACA,IAAIwG,EAAsBxG,EAA2B,2BAC9CA,EAA2B,oBAElCN,EAAMW,SAASL,QAEarN,IAAxB6T,IAEJ9G,EAAM4F,aAAakB,GAEf9G,EAAMjK,MAAM0Q,iBACdzG,EAAM+G,wBAIVzR,EAAgBqC,EAAuBqI,GAAQ,YAAY,SAAU5I,GACnE4I,EAAM6G,SAASzP,GAEf4I,EAAMkG,WAAY,KAGpB5Q,EAAgBqC,EAAuBqI,GAAQ,aAAa,WAI1DA,EAAMwB,eAAe/V,KAAK0H,YAAW,WACnC,OAAO6M,EAAMgD,YAAY,CACvB5K,QAAS,eAEV,OAGL9C,EAAgBqC,EAAuBqI,GAAQ,aAAa,WAC1DA,EAAMwB,eAAe/V,KAAK0H,YAAW,WACnC,OAAO6M,EAAMgD,YAAY,CACvB5K,QAAS,WAEV,OAGL9C,EAAgBqC,EAAuBqI,GAAQ,aAAa,SAAUtE,GACpE,IAAI+J,EAAcpa,UAAUC,OAAS,QAAsB2H,IAAjB5H,UAAU,IAAmBA,UAAU,GAEjF,GADAqQ,EAAQsL,OAAOtL,GACXuL,MAAMvL,GAAQ,MAAO,GAEzBsE,EAAMwB,eAAe/V,KAAK0H,YAAW,WACnC,OAAO6M,EAAMgD,YAAY,CACvB5K,QAAS,QACTrI,MAAO2L,EACPpD,aAAc0H,EAAMM,MAAMhI,cACzBmN,KACF,OAGLnQ,EAAgBqC,EAAuBqI,GAAQ,QAAQ,WACrD,IAAIkH,EAEJ,GAAIlH,EAAMjK,MAAM0F,IACdyL,EAAYlH,EAAMM,MAAMhI,aAAe0H,EAAMjK,MAAM6F,mBAC9C,CACL,KAAI,EAAIxH,EAAkBmF,WAAWlE,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,QAGvF,OAAO,EAFP4G,EAAYlH,EAAMM,MAAMhI,aAAe0H,EAAMjK,MAAM6F,eAMvDoE,EAAM4F,aAAasB,MAGrB5R,EAAgBqC,EAAuBqI,GAAQ,YAAY,SAAUmH,GAC/DnH,EAAMuC,eACRJ,cAAcnC,EAAMuC,eAGtB,IAAI9E,EAAcuC,EAAMM,MAAM7C,YAE9B,GAAiB,WAAb0J,GACF,GAAoB,YAAhB1J,GAA6C,YAAhBA,GAA6C,WAAhBA,EAC5D,YAEG,GAAiB,UAAb0J,GACT,GAAoB,WAAhB1J,GAA4C,YAAhBA,EAC9B,YAEG,GAAiB,SAAb0J,IACW,WAAhB1J,GAA4C,YAAhBA,GAC9B,OAIJuC,EAAMuC,cAAgBnB,YAAYpB,EAAMoH,KAAMpH,EAAMjK,MAAMmE,cAAgB,IAE1E8F,EAAMW,SAAS,CACblD,YAAa,eAIjBnI,EAAgBqC,EAAuBqI,GAAQ,SAAS,SAAUqH,GAC5DrH,EAAMuC,gBACRJ,cAAcnC,EAAMuC,eACpBvC,EAAMuC,cAAgB,MAGxB,IAAI9E,EAAcuC,EAAMM,MAAM7C,YAEZ,WAAd4J,EACFrH,EAAMW,SAAS,CACblD,YAAa,WAEQ,YAAd4J,EACW,YAAhB5J,GAA6C,YAAhBA,GAC/BuC,EAAMW,SAAS,CACblD,YAAa,YAKG,YAAhBA,GACFuC,EAAMW,SAAS,CACblD,YAAa,eAMrBnI,EAAgBqC,EAAuBqI,GAAQ,cAAc,WAC3D,OAAOA,EAAMjK,MAAMkE,UAAY+F,EAAMiD,MAAM,cAG7C3N,EAAgBqC,EAAuBqI,GAAQ,eAAe,WAC5D,OAAOA,EAAMjK,MAAMkE,UAAwC,YAA5B+F,EAAMM,MAAM7C,aAA6BuC,EAAMkB,SAAS,YAGzF5L,EAAgBqC,EAAuBqI,GAAQ,eAAe,WAC5D,OAAOA,EAAMjK,MAAMkE,UAAY+F,EAAMiD,MAAM,cAG7C3N,EAAgBqC,EAAuBqI,GAAQ,gBAAgB,WAC7D,OAAOA,EAAMjK,MAAMkE,UAAwC,YAA5B+F,EAAMM,MAAM7C,aAA6BuC,EAAMkB,SAAS,YAGzF5L,EAAgBqC,EAAuBqI,GAAQ,gBAAgB,WAC7D,OAAOA,EAAMjK,MAAMkE,UAAY+F,EAAMiD,MAAM,cAG7C3N,EAAgBqC,EAAuBqI,GAAQ,eAAe,WAC5D,OAAOA,EAAMjK,MAAMkE,UAAwC,YAA5B+F,EAAMM,MAAM7C,aAA6BuC,EAAMkB,SAAS,WAGzF5L,EAAgBqC,EAAuBqI,GAAQ,UAAU,WACvD,IAeIjG,EAcAhB,EAAWU,EA7BXf,GAAY,EAAIvE,EAAqB,SAAG,eAAgB6L,EAAMjK,MAAM2C,UAAW,CACjF,iBAAkBsH,EAAMjK,MAAMuG,SAC9B,qBAAqB,IAGnBG,EAAOpH,EAAcA,EAAc,GAAI2K,EAAMjK,OAAQiK,EAAMM,OAE3DgH,GAAa,EAAIlT,EAAkBmT,eAAe9K,EAAM,CAAC,OAAQ,UAAW,QAAS,WAAY,aAAc,gBAAiB,eAAgB,WAAY,iBAAkB,MAAO,aAAc,cAAe,aAAc,WAAY,eAAgB,iBAAkB,aAAc,aAAc,gBAAiB,UAAW,gBAAiB,cAAe,WACtWnB,EAAe0E,EAAMjK,MAAMuF,aAS/B,GARAgM,EAAajS,EAAcA,EAAc,GAAIiS,GAAa,GAAI,CAC5D3K,aAAcrB,EAAe0E,EAAMwH,YAAc,KACjD3K,aAAcvB,EAAe0E,EAAMyH,aAAe,KAClD7K,YAAatB,EAAe0E,EAAMwH,YAAc,KAChD3M,cAAemF,EAAMjK,MAAM8E,eAAiBmF,EAAMkG,UAAYlG,EAAM0H,cAAgB,QAI7D,IAArB1H,EAAMjK,MAAMgE,MAAiBiG,EAAMM,MAAM/H,YAAcyH,EAAMjK,MAAMyC,aAAc,CACnF,IAAImP,GAAW,EAAIvT,EAAkBmT,eAAe9K,EAAM,CAAC,YAAa,aAAc,eAAgB,eAAgB,iBAAkB,eAAgB,WAAY,eAAgB,WAAY,eAC5LrB,EAAmB4E,EAAMjK,MAAMqF,iBACnCuM,EAAWtS,EAAcA,EAAc,GAAIsS,GAAW,GAAI,CACxD3P,aAAcgI,EAAMgD,YACpBrG,aAAcvB,EAAmB4E,EAAM4H,YAAc,KACrDhL,YAAaxB,EAAmB4E,EAAM6H,WAAa,KACnDhL,aAAczB,EAAmB4E,EAAM4H,YAAc,OAEvD7N,EAAoB9F,EAAgB,QAAEgF,cAAcoG,EAAM7C,KAAMmL,GAIlE,IAAIG,GAAa,EAAI1T,EAAkBmT,eAAe9K,EAAM,CAAC,WAAY,aAAc,eAAgB,aAAc,eAAgB,YAAa,cAClJqL,EAAW9P,aAAegI,EAAMgD,YAE5BhD,EAAMjK,MAAMiE,SACdjB,EAAyB9E,EAAgB,QAAEgF,cAAcqG,EAAQtL,UAAW8T,GAC5ErO,EAAyBxF,EAAgB,QAAEgF,cAAcqG,EAAQvL,UAAW+T,IAG9E,IAAIC,EAAsB,KAEtB/H,EAAMjK,MAAMuG,WACdyL,EAAsB,CACpBxH,OAAQP,EAAMM,MAAMrC,aAIxB,IAAI+J,EAAqB,MAEI,IAAzBhI,EAAMjK,MAAMuG,UACiB,IAA3B0D,EAAMjK,MAAMqE,aACd4N,EAAqB,CACnBC,QAAS,OAASjI,EAAMjK,MAAMsE,iBAIH,IAA3B2F,EAAMjK,MAAMqE,aACd4N,EAAqB,CACnBC,QAASjI,EAAMjK,MAAMsE,cAAgB,SAK3C,IAAI6N,EAAY7S,EAAcA,EAAc,GAAI0S,GAAsBC,GAElE/L,EAAY+D,EAAMjK,MAAMkG,UACxBkM,EAAY,CACdzP,UAAW,aACXC,MAAOuP,EACPrP,QAASmH,EAAMhI,aACfoQ,YAAanM,EAAY+D,EAAM2G,WAAa,KAC5C0B,YAAarI,EAAMM,MAAMzC,UAAY5B,EAAY+D,EAAM4G,UAAY,KACnE0B,UAAWrM,EAAY+D,EAAM6G,SAAW,KACxChK,aAAcmD,EAAMM,MAAMzC,UAAY5B,EAAY+D,EAAM6G,SAAW,KACnE0B,aAActM,EAAY+D,EAAM2G,WAAa,KAC7C6B,YAAaxI,EAAMM,MAAMzC,UAAY5B,EAAY+D,EAAM4G,UAAY,KACnE6B,WAAYxM,EAAY+D,EAAM0I,SAAW,KACzCC,cAAe3I,EAAMM,MAAMzC,UAAY5B,EAAY+D,EAAM6G,SAAW,KACpE+B,UAAW5I,EAAMjK,MAAM4D,cAAgBqG,EAAMqG,WAAa,MAExDwC,EAAmB,CACrBnQ,UAAWA,EACX0N,IAAK,MACLzN,MAAOqH,EAAMjK,MAAM4C,OAYrB,OATIqH,EAAMjK,MAAM+S,UACdX,EAAY,CACVzP,UAAW,cAEbmQ,EAAmB,CACjBnQ,UAAWA,IAIKzE,EAAgB,QAAEgF,cAAc,MAAO4P,EAAmB7I,EAAMjK,MAAM+S,QAAsB,GAAZ/P,EAA6B9E,EAAgB,QAAEgF,cAAc,MAAOxE,EAAS,CAC/KwL,IAAKD,EAAM+I,gBACVZ,GAAyBlU,EAAgB,QAAEgF,cAAcmG,EAAO4J,MAAOvU,EAAS,CACjFwL,IAAKD,EAAMiJ,iBACV3B,GAAatH,EAAMjK,MAAMgN,WAAa/C,EAAMjK,MAAM+S,QAAsB,GAAZrP,EAAiBuG,EAAMjK,MAAM+S,QAAiB,GAAP/O,MAGxGiG,EAAME,KAAO,KACbF,EAAMG,MAAQ,KACdH,EAAMM,MAAQjL,EAAcA,EAAc,GAAI6J,EAAuB,SAAI,GAAI,CAC3E5G,aAAc0H,EAAMjK,MAAM+E,aAC1BvC,WAAYtE,EAAgB,QAAE4O,SAASC,MAAM9C,EAAMjK,MAAMgN,YAE3D/C,EAAMwB,eAAiB,GACvBxB,EAAMkG,WAAY,EAClBlG,EAAMkD,gBAAkB,KAExB,IAAIgG,EAAWlJ,EAAMmJ,UAGrB,OADAnJ,EAAMM,MAAQjL,EAAcA,EAAc,GAAI2K,EAAMM,OAAQ4I,GACrDlJ,EA8BT,OA74BoBnK,EAk3BPoJ,GAl3BoB/I,EAk3BP,CAAC,CACzBjK,IAAK,iBACL+D,MAAO,SAAwByS,GAG7B,IAFA,IAAIE,GAAgB,EAEXyG,EAAM,EAAGC,EAAetd,OAAO6D,KAAKlD,KAAKqJ,OAAQqT,EAAMC,EAAa/d,OAAQ8d,IAAO,CAC1F,IAAInd,EAAMod,EAAaD,GAEvB,IAAK3G,EAAUxX,eAAegB,GAAM,CAClC0W,GAAgB,EAChB,MAGF,GAAgC,WAA5BrO,EAAQmO,EAAUxW,KAAgD,mBAAnBwW,EAAUxW,IAIzDwW,EAAUxW,KAASS,KAAKqJ,MAAM9J,GAAM,CACtC0W,GAAgB,EAChB,OAIJ,OAAOA,GAAiB1O,EAAgB,QAAE4O,SAASC,MAAMpW,KAAKqJ,MAAMgN,YAAc9O,EAAgB,QAAE4O,SAASC,MAAML,EAAUM,eAx4BjHjN,EAAkBD,EAAY7J,UAAWkK,GACrDC,GAAaL,EAAkBD,EAAaM,GA24BzC8I,EAzyBsB,CA0yB7BhL,EAAgB,QAAEqV,WAEpBve,EAAQkU,YAAcA,G,kCCriCtBlT,OAAO+H,eAAe/I,EAAS,aAAc,CAC3CiF,OAAO,IAETjF,EAAA,aAAqB,EAErB,IAAIkJ,EAASC,EAAuB,EAAQ,OAExCqV,EAAe,EAAQ,MAEvBC,EAAWtV,EAAuB,EAAQ,OAE1CuV,EAAgBvV,EAAuB,EAAQ,OAE/CE,EAAoB,EAAQ,MAEhC,SAASF,EAAuBzE,GAC9B,OAAOA,GAAOA,EAAI4E,WAAa5E,EAAM,CACnC,QAAWA,GAIf,SAAS6E,EAAQ7E,GAaf,OATE6E,EADoB,mBAAXC,QAAoD,iBAApBA,OAAOC,SACtC,SAAiB/E,GACzB,cAAcA,GAGN,SAAiBA,GACzB,OAAOA,GAAyB,mBAAX8E,QAAyB9E,EAAIjB,cAAgB+F,QAAU9E,IAAQ8E,OAAOvI,UAAY,gBAAkByD,IAI9GA,GAGjB,SAASgF,IAeP,OAdAA,EAAW1I,OAAO2I,QAAU,SAAUtF,GACpC,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAStJ,UAAUD,GAEvB,IAAK,IAAIa,KAAO0I,EACV5I,OAAOC,UAAUf,eAAeiB,KAAKyI,EAAQ1I,KAC/CmD,EAAOnD,GAAO0I,EAAO1I,IAK3B,OAAOmD,IAGOvD,MAAMa,KAAMrB,WAG9B,SAASuJ,EAAQC,EAAQC,GACvB,IAAIlF,EAAO7D,OAAO6D,KAAKiF,GAEvB,GAAI9I,OAAOgJ,sBAAuB,CAChC,IAAIC,EAAUjJ,OAAOgJ,sBAAsBF,GACvCC,IAAgBE,EAAUA,EAAQC,QAAO,SAAUC,GACrD,OAAOnJ,OAAOoJ,yBAAyBN,EAAQK,GAAKE,eAEtDxF,EAAKnE,KAAKI,MAAM+D,EAAMoF,GAGxB,OAAOpF,EAGT,SAASyF,EAAcjG,GACrB,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAyB,MAAhBtJ,UAAUD,GAAaC,UAAUD,GAAK,GAE/CA,EAAI,EACNwJ,EAAQ7I,OAAO4I,IAAS,GAAM9E,SAAQ,SAAU5D,GAC9CqJ,EAAgBlG,EAAQnD,EAAK0I,EAAO1I,OAE7BF,OAAOwJ,0BAChBxJ,OAAOyJ,iBAAiBpG,EAAQrD,OAAOwJ,0BAA0BZ,IAEjEC,EAAQ7I,OAAO4I,IAAS9E,SAAQ,SAAU5D,GACxCF,OAAO+H,eAAe1E,EAAQnD,EAAKF,OAAOoJ,yBAAyBR,EAAQ1I,OAKjF,OAAOmD,EAST,SAAS0G,EAAkB1G,EAAQ2G,GACjC,IAAK,IAAI3K,EAAI,EAAGA,EAAI2K,EAAMzK,OAAQF,IAAK,CACrC,IAAI4K,EAAaD,EAAM3K,GACvB4K,EAAWZ,WAAaY,EAAWZ,aAAc,EACjDY,EAAWP,cAAe,EACtB,UAAWO,IAAYA,EAAWN,UAAW,GACjD3J,OAAO+H,eAAe1E,EAAQ4G,EAAW/J,IAAK+J,IAyBlD,SAASQ,EAAgBC,EAAGC,GAM1B,OALAF,EAAkBzK,OAAO4K,gBAAkB,SAAyBF,EAAGC,GAErE,OADAD,EAAEG,UAAYF,EACPD,IAGcA,EAAGC,GAG5B,SAASG,EAAaC,GACpB,IAAIC,EAkCN,WACE,GAAuB,oBAAZC,UAA4BA,QAAQC,UAAW,OAAO,EACjE,GAAID,QAAQC,UAAUC,KAAM,OAAO,EACnC,GAAqB,mBAAVC,MAAsB,OAAO,EAExC,IAEE,OADA9F,KAAKrF,UAAUF,SAASI,KAAK8K,QAAQC,UAAU5F,KAAM,IAAI,iBAClD,EACP,MAAO+F,GACP,OAAO,GA3CuBC,GAEhC,OAAO,WACL,IACIhF,EADAiF,EAAQC,EAAgBT,GAG5B,GAAIC,EAA2B,CAC7B,IAAIS,EAAYD,EAAgB7K,MAAM8B,YAEtC6D,EAAS2E,QAAQC,UAAUK,EAAOjM,UAAWmM,QAE7CnF,EAASiF,EAAMzL,MAAMa,KAAMrB,WAG7B,OAAOoM,EAA2B/K,KAAM2F,IAI5C,SAASoF,EAA2B1K,EAAMb,GACxC,OAAIA,GAA2B,WAAlBoI,EAAQpI,IAAsC,mBAATA,EAI3CyL,EAAuB5K,GAHrBb,EAMX,SAASyL,EAAuB5K,GAC9B,QAAa,IAATA,EACF,MAAM,IAAI2K,eAAe,6DAG3B,OAAO3K,EAgBT,SAASwK,EAAgBd,GAIvB,OAHAc,EAAkBxL,OAAO4K,eAAiB5K,OAAO6L,eAAiB,SAAyBnB,GACzF,OAAOA,EAAEG,WAAa7K,OAAO6L,eAAenB,KAEvBA,GAGzB,SAASnB,EAAgB7F,EAAKxD,EAAK+D,GAYjC,OAXI/D,KAAOwD,EACT1D,OAAO+H,eAAerE,EAAKxD,EAAK,CAC9B+D,MAAOA,EACPoF,YAAY,EACZK,cAAc,EACdC,UAAU,IAGZjG,EAAIxD,GAAO+D,EAGNP,EAGT,IAAIia,GAAU,EAAItV,EAAkBuV,cAAgB,EAAQ,MAExDC,EAAsB,SAAU7J,IAhGpC,SAAmB1J,EAAUC,GAC3B,GAA0B,mBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAI1D,UAAU,sDAGtByD,EAASrK,UAAYD,OAAOwK,OAAOD,GAAcA,EAAWtK,UAAW,CACrEwC,YAAa,CACXwB,MAAOqG,EACPX,UAAU,EACVD,cAAc,KAGda,GAAYE,EAAgBH,EAAUC,GAqF1CF,CAAUwT,EAAQ7J,GAElB,IAzGoBlK,EAAaK,EAAYC,EAyGzC2B,EAASjB,EAAa+S,GAE1B,SAASA,EAAO7T,GACd,IAAIiK,EAmCJ,OA/JJ,SAAyBpK,EAAUC,GACjC,KAAMD,aAAoBC,GACxB,MAAM,IAAIjD,UAAU,qCA4HpB+C,CAAgBjJ,KAAMkd,GAItBtU,EAAgBqC,EAFhBqI,EAAQlI,EAAO5L,KAAKQ,KAAMqJ,IAEqB,yBAAyB,SAAUkK,GAChF,OAAOD,EAAM+F,YAAc9F,KAG7B3K,EAAgBqC,EAAuBqI,GAAQ,aAAa,WAC1D,OAAOA,EAAM+F,YAAY8D,eAG3BvU,EAAgBqC,EAAuBqI,GAAQ,aAAa,WAC1D,OAAOA,EAAM+F,YAAY+D,eAG3BxU,EAAgBqC,EAAuBqI,GAAQ,aAAa,SAAUtE,GACpE,IAAI+J,EAAcpa,UAAUC,OAAS,QAAsB2H,IAAjB5H,UAAU,IAAmBA,UAAU,GACjF,OAAO2U,EAAM+F,YAAYgE,UAAUrO,EAAO+J,MAG5CnQ,EAAgBqC,EAAuBqI,GAAQ,cAAc,WAC3D,OAAOA,EAAM+F,YAAY9C,MAAM,aAGjC3N,EAAgBqC,EAAuBqI,GAAQ,aAAa,WAC1D,OAAOA,EAAM+F,YAAY7E,SAAS,WAGpClB,EAAMM,MAAQ,CACZ0J,WAAY,MAEdhK,EAAMiK,yBAA2B,GAC1BjK,EAiMT,OAhVoBnK,EAkJP+T,GAlJoB1T,EAkJZ,CAAC,CACpBjK,IAAK,QACL+D,MAAO,SAAexD,EAAOc,GAE3Boc,EAAQjb,SAASjC,EAAOc,GAExBZ,KAAKud,yBAAyBxe,KAAK,CACjCe,MAAOA,EACPc,QAASA,MAIZ,CACDrB,IAAK,oBACL+D,MAAO,WACL,IAAIka,EAASxd,KAOb,GAAIA,KAAKqJ,MAAMwF,WAAY,CACzB,IAAI4O,EAAczd,KAAKqJ,MAAMwF,WAAW6O,KAAI,SAAUC,GACpD,OAAOA,EAAQL,cAGjBG,EAAYG,MAAK,SAAUC,EAAGC,GAC5B,OAAOD,EAAIC,KAEbL,EAAYta,SAAQ,SAAUma,EAAYja,GAExC,IAAI0a,EAGFA,EADY,IAAV1a,GACO,EAAIyZ,EAAkB,SAAG,CAChCkB,SAAU,EACVC,SAAUX,KAGH,EAAIR,EAAkB,SAAG,CAChCkB,SAAUP,EAAYpa,EAAQ,GAAK,EACnC4a,SAAUX,KAKd,EAAI5V,EAAkBuV,cAAgBO,EAAOU,MAAMH,GAAQ,WACzDP,EAAOvJ,SAAS,CACdqJ,WAAYA,UAMlB,IAAIxd,GAAQ,EAAIgd,EAAkB,SAAG,CACnCkB,SAAUP,EAAYpY,OAAO,GAAG,MAElC,EAAIqC,EAAkBuV,cAAgBjd,KAAKke,MAAMpe,GAAO,WACtD0d,EAAOvJ,SAAS,CACdqJ,WAAY,aAKnB,CACD/d,IAAK,uBACL+D,MAAO,WACLtD,KAAKud,yBAAyBpa,SAAQ,SAAUJ,GAC9Cia,EAAQ5a,WAAWW,EAAIjD,MAAOiD,EAAInC,cAGrC,CACDrB,IAAK,SACL+D,MAAO,WACL,IAEI6a,EACAC,EAHAC,EAASre,MASXme,EAJEne,KAAK4T,MAAM0J,WAIuB,aAHpCc,EAAWpe,KAAKqJ,MAAMwF,WAAWtG,QAAO,SAAU+V,GAChD,OAAOA,EAAKhB,aAAee,EAAOzK,MAAM0J,eAEtB,GAAGa,SAAyB,UAAYxV,EAAcA,EAAcA,EAAc,GAAIoU,EAAuB,SAAI/c,KAAKqJ,OAAQ+U,EAAS,GAAGD,UAEnJxV,EAAcA,EAAc,GAAIoU,EAAuB,SAAI/c,KAAKqJ,QAIhEqE,aACPyQ,EAASjP,eAIbiP,EAASjP,eAAiB,GAIxBiP,EAASjQ,OACPiQ,EAASrS,aAITqS,EAASjP,eAIbiP,EAASrS,aAAe,EACxBqS,EAASjP,eAAiB,GAI5B,IAAImH,EAAW9O,EAAgB,QAAE4O,SAASoI,QAAQve,KAAKqJ,MAAMgN,UAI7DA,EAAWA,EAAS9N,QAAO,SAAUqP,GACnC,MAAqB,iBAAVA,IACAA,EAAM4G,SAGR5G,KAGPuG,EAASxO,gBAAkBwO,EAASrP,KAAO,GAAKqP,EAASlP,aAAe,KAC1EwP,QAAQC,KAAK,0EACbP,EAASxO,eAAgB,GAM3B,IAHA,IAAIgP,EAAc,GACd1G,EAAe,KAEVvZ,EAAI,EAAGA,EAAI2X,EAASzX,OAAQF,GAAKyf,EAASrP,KAAOqP,EAASlP,aAAc,CAG/E,IAFA,IAAI2P,EAAW,GAENC,EAAIngB,EAAGmgB,EAAIngB,EAAIyf,EAASrP,KAAOqP,EAASlP,aAAc4P,GAAKV,EAASlP,aAAc,CAGzF,IAFA,IAAI6P,EAAM,GAEDC,EAAIF,EAAGE,EAAIF,EAAIV,EAASlP,eAC3BkP,EAASxO,eAAiB0G,EAAS0I,GAAG1V,MAAM4C,QAC9CgM,EAAe5B,EAAS0I,GAAG1V,MAAM4C,MAAM4L,SAGrCkH,GAAK1I,EAASzX,SAL2BmgB,GAAK,EAMlDD,EAAI/f,KAAmBwI,EAAgB,QAAE+E,aAAa+J,EAAS0I,GAAI,CACjExf,IAAK,IAAMb,EAAI,GAAKmgB,EAAIE,EACxBC,UAAW,EACX/S,MAAO,CACL4L,MAAO,GAAGhH,OAAO,IAAMsN,EAASlP,aAAc,KAC9C/C,QAAS,mBAKf0S,EAAS7f,KAAmBwI,EAAgB,QAAEgF,cAAc,MAAO,CACjEhN,IAAK,GAAKb,EAAImgB,GACbC,IAGDX,EAASxO,cACXgP,EAAY5f,KAAmBwI,EAAgB,QAAEgF,cAAc,MAAO,CACpEhN,IAAKb,EACLuN,MAAO,CACL4L,MAAOI,IAER2G,IAEHD,EAAY5f,KAAmBwI,EAAgB,QAAEgF,cAAc,MAAO,CACpEhN,IAAKb,GACJkgB,IAIP,GAAiB,YAAbT,EAAwB,CAC1B,IAAInS,EAAY,mBAAqBhM,KAAKqJ,MAAM2C,WAAa,IAC7D,OAAoBzE,EAAgB,QAAEgF,cAAc,MAAO,CACzDP,UAAWA,GACVqK,GAKL,OAJWsI,EAAY/f,QAAUuf,EAASrS,eACxCqS,EAAS/B,SAAU,GAGD7U,EAAgB,QAAEgF,cAAcsQ,EAAatK,YAAaxK,EAAS,CACrFkE,MAAOjM,KAAKqJ,MAAM4C,MAClBsH,IAAKvT,KAAKif,uBACTd,GAAWQ,QA3UFvV,EAAkBD,EAAY7J,UAAWkK,GACrDC,GAAaL,EAAkBD,EAAaM,GA8UzCyT,EA1OiB,CA2OxB3V,EAAgB,QAAEqV,WAEpBve,EAAA,QAAqB6e,G,kCC5brB7d,OAAO+H,eAAe/I,EAAS,aAAc,CAC3CiF,OAAO,IAETjF,EAAQie,WAAQ,EAEhB,IAAI/U,EAASC,EAAuB,EAAQ,OAExCC,EAAcD,EAAuB,EAAQ,OAE7CE,EAAoB,EAAQ,MAEhC,SAASF,EAAuBzE,GAC9B,OAAOA,GAAOA,EAAI4E,WAAa5E,EAAM,CACnC,QAAWA,GAIf,SAAS6E,EAAQ7E,GAaf,OATE6E,EADoB,mBAAXC,QAAoD,iBAApBA,OAAOC,SACtC,SAAiB/E,GACzB,cAAcA,GAGN,SAAiBA,GACzB,OAAOA,GAAyB,mBAAX8E,QAAyB9E,EAAIjB,cAAgB+F,QAAU9E,IAAQ8E,OAAOvI,UAAY,gBAAkByD,IAI9GA,GAGjB,SAASgF,IAeP,OAdAA,EAAW1I,OAAO2I,QAAU,SAAUtF,GACpC,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAStJ,UAAUD,GAEvB,IAAK,IAAIa,KAAO0I,EACV5I,OAAOC,UAAUf,eAAeiB,KAAKyI,EAAQ1I,KAC/CmD,EAAOnD,GAAO0I,EAAO1I,IAK3B,OAAOmD,IAGOvD,MAAMa,KAAMrB,WAG9B,SAASsK,EAAgBC,EAAUC,GACjC,KAAMD,aAAoBC,GACxB,MAAM,IAAIjD,UAAU,qCAIxB,SAASkD,EAAkB1G,EAAQ2G,GACjC,IAAK,IAAI3K,EAAI,EAAGA,EAAI2K,EAAMzK,OAAQF,IAAK,CACrC,IAAI4K,EAAaD,EAAM3K,GACvB4K,EAAWZ,WAAaY,EAAWZ,aAAc,EACjDY,EAAWP,cAAe,EACtB,UAAWO,IAAYA,EAAWN,UAAW,GACjD3J,OAAO+H,eAAe1E,EAAQ4G,EAAW/J,IAAK+J,IAyBlD,SAASQ,EAAgBC,EAAGC,GAM1B,OALAF,EAAkBzK,OAAO4K,gBAAkB,SAAyBF,EAAGC,GAErE,OADAD,EAAEG,UAAYF,EACPD,IAGcA,EAAGC,GAG5B,SAASG,EAAaC,GACpB,IAAIC,EAkCN,WACE,GAAuB,oBAAZC,UAA4BA,QAAQC,UAAW,OAAO,EACjE,GAAID,QAAQC,UAAUC,KAAM,OAAO,EACnC,GAAqB,mBAAVC,MAAsB,OAAO,EAExC,IAEE,OADA9F,KAAKrF,UAAUF,SAASI,KAAK8K,QAAQC,UAAU5F,KAAM,IAAI,iBAClD,EACP,MAAO+F,GACP,OAAO,GA3CuBC,GAEhC,OAAO,WACL,IACIhF,EADAiF,EAAQC,EAAgBT,GAG5B,GAAIC,EAA2B,CAC7B,IAAIS,EAAYD,EAAgB7K,MAAM8B,YAEtC6D,EAAS2E,QAAQC,UAAUK,EAAOjM,UAAWmM,QAE7CnF,EAASiF,EAAMzL,MAAMa,KAAMrB,WAG7B,OAAOoM,EAA2B/K,KAAM2F,IAI5C,SAASoF,EAA2B1K,EAAMb,GACxC,OAAIA,GAA2B,WAAlBoI,EAAQpI,IAAsC,mBAATA,EAI3CyL,EAAuB5K,GAHrBb,EAMX,SAASyL,EAAuB5K,GAC9B,QAAa,IAATA,EACF,MAAM,IAAI2K,eAAe,6DAG3B,OAAO3K,EAgBT,SAASwK,EAAgBd,GAIvB,OAHAc,EAAkBxL,OAAO4K,eAAiB5K,OAAO6L,eAAiB,SAAyBnB,GACzF,OAAOA,EAAEG,WAAa7K,OAAO6L,eAAenB,KAEvBA,GAGzB,SAAS7B,EAAQC,EAAQC,GACvB,IAAIlF,EAAO7D,OAAO6D,KAAKiF,GAEvB,GAAI9I,OAAOgJ,sBAAuB,CAChC,IAAIC,EAAUjJ,OAAOgJ,sBAAsBF,GACvCC,IAAgBE,EAAUA,EAAQC,QAAO,SAAUC,GACrD,OAAOnJ,OAAOoJ,yBAAyBN,EAAQK,GAAKE,eAEtDxF,EAAKnE,KAAKI,MAAM+D,EAAMoF,GAGxB,OAAOpF,EAGT,SAASyF,EAAcjG,GACrB,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAyB,MAAhBtJ,UAAUD,GAAaC,UAAUD,GAAK,GAE/CA,EAAI,EACNwJ,EAAQ7I,OAAO4I,IAAS,GAAM9E,SAAQ,SAAU5D,GAC9CqJ,EAAgBlG,EAAQnD,EAAK0I,EAAO1I,OAE7BF,OAAOwJ,0BAChBxJ,OAAOyJ,iBAAiBpG,EAAQrD,OAAOwJ,0BAA0BZ,IAEjEC,EAAQ7I,OAAO4I,IAAS9E,SAAQ,SAAU5D,GACxCF,OAAO+H,eAAe1E,EAAQnD,EAAKF,OAAOoJ,yBAAyBR,EAAQ1I,OAKjF,OAAOmD,EAGT,SAASkG,EAAgB7F,EAAKxD,EAAK+D,GAYjC,OAXI/D,KAAOwD,EACT1D,OAAO+H,eAAerE,EAAKxD,EAAK,CAC9B+D,MAAOA,EACPoF,YAAY,EACZK,cAAc,EACdC,UAAU,IAGZjG,EAAIxD,GAAO+D,EAGNP,EAIT,IAAImc,EAAkB,SAAyBnP,GAC7C,IAAIoP,EAAaC,EAAaC,EAC1BC,EAAcjc,EAgClB,OAxBAgc,GALEhc,EADE0M,EAAKhB,IACCgB,EAAKlE,WAAa,EAAIkE,EAAK1M,MAE3B0M,EAAK1M,OAGO,GAAKA,GAAS0M,EAAKlE,WAErCkE,EAAKrC,YACP4R,EAAehb,KAAKib,MAAMxP,EAAKjE,aAAe,GAC9CsT,GAAe/b,EAAQ0M,EAAKnE,cAAgBmE,EAAKlE,YAAe,EAE5DxI,EAAQ0M,EAAKnE,aAAe0T,EAAe,GAAKjc,GAAS0M,EAAKnE,aAAe0T,IAC/EH,GAAc,IAGhBA,EAAcpP,EAAKnE,cAAgBvI,GAASA,EAAQ0M,EAAKnE,aAAemE,EAAKjE,aAcxE,CACL,eAAe,EACf,eAAgBqT,EAChB,eAAgBC,EAChB,eAAgBC,EAChB,gBANiBhc,KARf0M,EAAKuC,YAAc,EACNvC,EAAKuC,YAAcvC,EAAKlE,WAC9BkE,EAAKuC,aAAevC,EAAKlE,WACnBkE,EAAKuC,YAAcvC,EAAKlE,WAExBkE,EAAKuC,eAwCpBkN,EAAS,SAAgB5H,EAAO6H,GAClC,OAAO7H,EAAMrY,KAAOkgB,GAGlBC,EAAe,SAAsB3P,GACvC,IAAIxQ,EACAogB,EAAS,GACTC,EAAiB,GACjBC,EAAkB,GAElB3H,EAAgB3Q,EAAgB,QAAE4O,SAASC,MAAMrG,EAAKsG,UAEtDyJ,GAAa,EAAIpY,EAAkBqY,gBAAgBhQ,GACnDiQ,GAAW,EAAItY,EAAkBuY,cAAclQ,GAsGnD,OApGAxI,EAAgB,QAAE4O,SAAShT,QAAQ4M,EAAKsG,UAAU,SAAU3C,EAAMrQ,GAChE,IAAIuU,EACAsI,EAAsB,CACxBxU,QAAS,WACTrI,MAAOA,EACP6L,eAAgBa,EAAKb,eACrBtD,aAAcmE,EAAKnE,cAInBgM,GADG7H,EAAK1B,UAAY0B,EAAK1B,UAAY0B,EAAKuB,eAAe2B,QAAQ5P,IAAU,EACnEqQ,EAEanM,EAAgB,QAAEgF,cAAc,MAAO,MAG9D,IAAI4T,EAxDY,SAAuBpQ,GACzC,IAAI9D,EAAQ,GAsBZ,YApB2B1F,IAAvBwJ,EAAKJ,gBAAsD,IAAvBI,EAAKJ,gBAC3C1D,EAAM4L,MAAQ9H,EAAK4B,YAGjB5B,EAAK7B,OACPjC,EAAMmU,SAAW,WAEbrQ,EAAKH,SACP3D,EAAMoU,KAAOtQ,EAAK1M,MAAQS,SAASiM,EAAK2B,aAExCzF,EAAMkL,MAAQpH,EAAK1M,MAAQS,SAASiM,EAAK4B,YAG3C1F,EAAMqU,QAAUvQ,EAAKnE,eAAiBmE,EAAK1M,MAAQ,EAAI,EAEnD0M,EAAKN,SACPxD,EAAMsU,WAAa,WAAaxQ,EAAKZ,MAAQ,MAAQY,EAAKnC,QAAvC,gBAAwEmC,EAAKZ,MAAQ,MAAQY,EAAKnC,UAIlH3B,EAiCYuU,CAAc7X,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CACxE1M,MAAOA,KAELod,EAAa7I,EAAMvO,MAAM2C,WAAa,GACtC0U,EAAexB,EAAgBvW,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CAC5E1M,MAAOA,KAqBT,GAlBAsc,EAAO5gB,KAAmBwI,EAAgB,QAAE+E,aAAasL,EAAO,CAC9DrY,IAAK,WAAaigB,EAAO5H,EAAOvU,GAChC,aAAcA,EACd2I,WAAW,EAAIvE,EAAqB,SAAGiZ,EAAcD,GACrDzB,SAAU,KACV,eAAgB0B,EAAa,gBAC7BzU,MAAOtD,EAAcA,EAAc,CACjCgY,QAAS,QACR/I,EAAMvO,MAAM4C,OAAS,IAAKkU,GAC7BhU,QAAS,SAAiBzB,GACxBkN,EAAMvO,OAASuO,EAAMvO,MAAM8C,SAAWyL,EAAMvO,MAAM8C,QAAQzB,GAEtDqF,EAAK5B,eACP4B,EAAK5B,cAAc+R,OAKrBnQ,EAAKpE,WAA0B,IAAdoE,EAAK7B,KAAgB,CACxC,IAAI0S,EAAa1I,EAAgB7U,EAE7Bud,IAAc,EAAIlZ,EAAkB+P,cAAc1H,IAASmI,IAAkBnI,EAAKjE,gBACpFvM,GAAOqhB,IAEId,IACTlI,EAAQlE,GAGVgN,EAAexB,EAAgBvW,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CACxE1M,MAAO9D,KAETqgB,EAAe7gB,KAAmBwI,EAAgB,QAAE+E,aAAasL,EAAO,CACtErY,IAAK,YAAcigB,EAAO5H,EAAOrY,GACjC,aAAcA,EACdyf,SAAU,KACVhT,WAAW,EAAIvE,EAAqB,SAAGiZ,EAAcD,GACrD,eAAgBC,EAAa,gBAC7BzU,MAAOtD,EAAcA,EAAc,GAAIiP,EAAMvO,MAAM4C,OAAS,IAAKkU,GACjEhU,QAAS,SAAiBzB,GACxBkN,EAAMvO,OAASuO,EAAMvO,MAAM8C,SAAWyL,EAAMvO,MAAM8C,QAAQzB,GAEtDqF,EAAK5B,eACP4B,EAAK5B,cAAc+R,QAMvBhI,IAAkBnI,EAAKjE,gBACzBvM,EAAM2Y,EAAgB7U,GAEZ2c,IACRpI,EAAQlE,GAGVgN,EAAexB,EAAgBvW,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CACxE1M,MAAO9D,KAETsgB,EAAgB9gB,KAAmBwI,EAAgB,QAAE+E,aAAasL,EAAO,CACvErY,IAAK,aAAeigB,EAAO5H,EAAOrY,GAClC,aAAcA,EACdyf,SAAU,KACVhT,WAAW,EAAIvE,EAAqB,SAAGiZ,EAAcD,GACrD,eAAgBC,EAAa,gBAC7BzU,MAAOtD,EAAcA,EAAc,GAAIiP,EAAMvO,MAAM4C,OAAS,IAAKkU,GACjEhU,QAAS,SAAiBzB,GACxBkN,EAAMvO,OAASuO,EAAMvO,MAAM8C,SAAWyL,EAAMvO,MAAM8C,QAAQzB,GAEtDqF,EAAK5B,eACP4B,EAAK5B,cAAc+R,YAQ3BnQ,EAAKhB,IACA6Q,EAAe/O,OAAO8O,EAAQE,GAAiBgB,UAE/CjB,EAAe/O,OAAO8O,EAAQE,IAIrCvD,EAAqB,SAAUnR,IAjUnC,SAAmBxB,EAAUC,GAC3B,GAA0B,mBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAI1D,UAAU,sDAGtByD,EAASrK,UAAYD,OAAOwK,OAAOD,GAAcA,EAAWtK,UAAW,CACrEwC,YAAa,CACXwB,MAAOqG,EACPX,UAAU,EACVD,cAAc,KAGda,GAAYE,EAAgBH,EAAUC,GAsT1CF,CAAU4S,EAAOnR,GAEjB,IA1UoBhC,EAAaK,EAAYC,EA0UzC2B,EAASjB,EAAamS,GAE1B,SAASA,IACP,IAAIhJ,EAEJrK,EAAgBjJ,KAAMsc,GAEtB,IAAK,IAAIwE,EAAOniB,UAAUC,OAAQyH,EAAO,IAAIrH,MAAM8hB,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC/E1a,EAAK0a,GAAQpiB,UAAUoiB,GAWzB,OANAnY,EAAgBqC,EAFhBqI,EAAQlI,EAAO5L,KAAKL,MAAMiM,EAAQ,CAACpL,MAAM6Q,OAAOxK,KAED,OAAQ,MAEvDuC,EAAgBqC,EAAuBqI,GAAQ,aAAa,SAAUC,GACpED,EAAMsD,KAAOrD,KAGRD,EAwBT,OArXoBnK,EAgWPmT,GAhWoB9S,EAgWb,CAAC,CACnBjK,IAAK,SACL+D,MAAO,WACL,IAAIqc,EAASD,EAAa1f,KAAKqJ,OAC3B2G,EAAchQ,KAAKqJ,MAInBiH,EAAc,CAChBL,aAJiBD,EAAYC,aAK7BC,YAJgBF,EAAYE,YAK5BC,aAJiBH,EAAYG,cAM/B,OAAoB5I,EAAgB,QAAEgF,cAAc,MAAOxE,EAAS,CAClEwL,IAAKvT,KAAKghB,UACVhV,UAAW,cACXC,MAAOjM,KAAKqJ,MAAM+I,YACjB9B,GAAcqP,QAhXLvW,EAAkBD,EAAY7J,UAAWkK,GACrDC,GAAaL,EAAkBD,EAAaM,GAmXzC6S,EA9CgB,CA+CvB/U,EAAgB,QAAEiF,eAEpBnO,EAAQie,MAAQA,G,kCC3bhBjd,OAAO+H,eAAe/I,EAAS,aAAc,CAC3CiF,OAAO,IAETjF,EAAQoS,MAAQA,EAChBpS,EAAQ4e,UAAY5e,EAAQ4iB,aAAe5iB,EAAQ6iB,cAAgB7iB,EAAQ8iB,iBAAmB9iB,EAAQ+iB,eAAiB/iB,EAAQsZ,cAAgBtZ,EAAQoZ,aAAepZ,EAAQ6Y,aAAe7Y,EAAQgjB,mBAAqBhjB,EAAQ+Y,YAAc/Y,EAAQijB,cAAgBjjB,EAAQkjB,cAAgBljB,EAAQmjB,eAAiBnjB,EAAQojB,oBAAsBpjB,EAAQ8b,SAAW9b,EAAQ6b,UAAY7b,EAAQ4b,WAAa5b,EAAQsb,WAAatb,EAAQiY,YAAcjY,EAAQ6a,aAAe7a,EAAQ0Y,iBAAmB1Y,EAAQwc,cAAgBxc,EAAQwO,UAAYxO,EAAQqjB,kBAAoBrjB,EAAQyV,UAAYzV,EAAQsjB,SAAWtjB,EAAQujB,kBAAoBvjB,EAAQwjB,iBAAmBxjB,EAAQ4hB,aAAe5hB,EAAQ0hB,eAAiB1hB,EAAQyjB,sBAAwBzjB,EAAQ2V,sBAAwB3V,EAAQ0jB,wBAAqB,EAEnyB,IAEgChf,EAF5BwE,GAE4BxE,EAFI,EAAQ,QAG5BA,EAAI4E,WAAa5E,EAAM,CACnC,QAAWA,GAIf,SAASmF,EAAQC,EAAQC,GACvB,IAAIlF,EAAO7D,OAAO6D,KAAKiF,GAEvB,GAAI9I,OAAOgJ,sBAAuB,CAChC,IAAIC,EAAUjJ,OAAOgJ,sBAAsBF,GACvCC,IAAgBE,EAAUA,EAAQC,QAAO,SAAUC,GACrD,OAAOnJ,OAAOoJ,yBAAyBN,EAAQK,GAAKE,eAEtDxF,EAAKnE,KAAKI,MAAM+D,EAAMoF,GAGxB,OAAOpF,EAGT,SAASyF,EAAcjG,GACrB,IAAK,IAAIhE,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIuJ,EAAyB,MAAhBtJ,UAAUD,GAAaC,UAAUD,GAAK,GAE/CA,EAAI,EACNwJ,EAAQ7I,OAAO4I,IAAS,GAAM9E,SAAQ,SAAU5D,GAC9CqJ,EAAgBlG,EAAQnD,EAAK0I,EAAO1I,OAE7BF,OAAOwJ,0BAChBxJ,OAAOyJ,iBAAiBpG,EAAQrD,OAAOwJ,0BAA0BZ,IAEjEC,EAAQ7I,OAAO4I,IAAS9E,SAAQ,SAAU5D,GACxCF,OAAO+H,eAAe1E,EAAQnD,EAAKF,OAAOoJ,yBAAyBR,EAAQ1I,OAKjF,OAAOmD,EAGT,SAASkG,EAAgB7F,EAAKxD,EAAK+D,GAYjC,OAXI/D,KAAOwD,EACT1D,OAAO+H,eAAerE,EAAKxD,EAAK,CAC9B+D,MAAOA,EACPoF,YAAY,EACZK,cAAc,EACdC,UAAU,IAGZjG,EAAIxD,GAAO+D,EAGNP,EAGT,SAAS0N,EAAMuR,EAAQC,EAAYC,GACjC,OAAO5d,KAAKC,IAAI0d,EAAY3d,KAAKG,IAAIud,EAAQE,IAG/C,IAAIH,EAAqB,SAA4BlI,GAC/B,CAAC,eAAgB,cAAe,WAEjCsI,SAAStI,EAAMuI,aAChCvI,EAAMxO,kBAIVhN,EAAQ0jB,mBAAqBA,EAE7B,IAAI/N,EAAwB,SAA+BjE,GAKzD,IAJA,IAAIsS,EAAiB,GACjBvC,EAAaC,EAAehQ,GAC5BiQ,EAAWC,EAAalQ,GAEnBiH,EAAa8I,EAAY9I,EAAagJ,EAAUhJ,IACnDjH,EAAKuB,eAAe2B,QAAQ+D,GAAc,GAC5CqL,EAAetjB,KAAKiY,GAIxB,OAAOqL,GAIThkB,EAAQ2V,sBAAwBA,EAehC3V,EAAQyjB,sBAboB,SAA+B/R,GAKzD,IAJA,IAAIuS,EAAiB,GACjBxC,EAAaC,EAAehQ,GAC5BiQ,EAAWC,EAAalQ,GAEnBiH,EAAa8I,EAAY9I,EAAagJ,EAAUhJ,IACvDsL,EAAevjB,KAAKiY,GAGtB,OAAOsL,GAMT,IAAIvC,EAAiB,SAAwBhQ,GAC3C,OAAOA,EAAKnE,aAAeiW,EAAiB9R,IAG9C1R,EAAQ0hB,eAAiBA,EAEzB,IAAIE,EAAe,SAAsBlQ,GACvC,OAAOA,EAAKnE,aAAegW,EAAkB7R,IAG/C1R,EAAQ4hB,aAAeA,EAEvB,IAAI4B,EAAmB,SAA0B9R,GAC/C,OAAOA,EAAKrC,WAAapJ,KAAKib,MAAMxP,EAAKjE,aAAe,IAAMhI,SAASiM,EAAKpC,eAAiB,EAAI,EAAI,GAAK,GAG5GtP,EAAQwjB,iBAAmBA,EAE3B,IAAID,EAAoB,SAA2B7R,GACjD,OAAOA,EAAKrC,WAAapJ,KAAKib,OAAOxP,EAAKjE,aAAe,GAAK,GAAK,GAAKhI,SAASiM,EAAKpC,eAAiB,EAAI,EAAI,GAAKoC,EAAKjE,cAI3HzN,EAAQujB,kBAAoBA,EAE5B,IAAID,EAAW,SAAkBjO,GAC/B,OAAOA,GAAQA,EAAK6O,aAAe,GAGrClkB,EAAQsjB,SAAWA,EAEnB,IAAI7N,EAAY,SAAmBJ,GACjC,OAAOA,GAAQA,EAAK8O,cAAgB,GAGtCnkB,EAAQyV,UAAYA,EAEpB,IAAI4N,EAAoB,SAA2B3P,GACjD,IACI0Q,EAAOC,EAAOC,EAAGC,EADjB7I,EAAkBpb,UAAUC,OAAS,QAAsB2H,IAAjB5H,UAAU,IAAmBA,UAAU,GAWrF,OATA8jB,EAAQ1Q,EAAYC,OAASD,EAAYG,KACzCwQ,EAAQ3Q,EAAYE,OAASF,EAAYI,KACzCwQ,EAAIre,KAAKue,MAAMH,EAAOD,IACtBG,EAAate,KAAKwe,MAAU,IAAJH,EAAUre,KAAKye,KAEtB,IACfH,EAAa,IAAMte,KAAK0e,IAAIJ,IAG1BA,GAAc,IAAMA,GAAc,GAAKA,GAAc,KAAOA,GAAc,IACrE,OAGLA,GAAc,KAAOA,GAAc,IAC9B,SAGe,IAApB7I,EACE6I,GAAc,IAAMA,GAAc,IAC7B,KAEA,OAIJ,YAITvkB,EAAQqjB,kBAAoBA,EAE5B,IAAI7U,EAAY,SAAmBkD,GACjC,IAAIkT,GAAQ,EAUZ,OARKlT,EAAKpE,WACJoE,EAAKrC,YAAcqC,EAAKnE,cAAgBmE,EAAKlE,WAAa,GAEnDkE,EAAKlE,YAAckE,EAAKjE,cAAgBiE,EAAKnE,cAAgBmE,EAAKlE,WAAakE,EAAKjE,gBAD7FmX,GAAQ,GAMLA,GAIT5kB,EAAQwO,UAAYA,EAWpBxO,EAAQwc,cATY,SAAuB9K,EAAM7M,GAC/C,IAAIggB,EAAY,GAIhB,OAHAhgB,EAAKC,SAAQ,SAAU5D,GACrB,OAAO2jB,EAAU3jB,GAAOwQ,EAAKxQ,MAExB2jB,GA4DT7kB,EAAQ0Y,iBAtDe,SAA0BhH,GAE/C,IAMI4B,EANA9F,EAAatE,EAAgB,QAAE4O,SAASC,MAAMrG,EAAKsG,UAEnD8M,EAAWpT,EAAKqE,QAChB5C,EAAYlN,KAAK+L,KAAKsR,EAASwB,IAC/BC,EAAYrT,EAAKsE,UAAYtE,EAAKsE,SAASuC,KAC3CvE,EAAa/N,KAAK+L,KAAKsR,EAASyB,IAGpC,GAAKrT,EAAKH,SASR+B,EAAaH,MATK,CAClB,IAAI6R,EAAmBtT,EAAKrC,YAA6C,EAA/B5J,SAASiM,EAAKpC,eAEtB,iBAAvBoC,EAAKpC,eAA+D,MAAjCoC,EAAKpC,cAActI,OAAO,KACtEge,GAAoB7R,EAAY,KAGlCG,EAAarN,KAAK+L,MAAMmB,EAAY6R,GAAoBtT,EAAKjE,cAK/D,IAAI4F,EAAcyR,GAAYrP,EAAUqP,EAASxP,cAAc,qBAC3DpC,EAAaG,EAAc3B,EAAKjE,aAChCF,OAAqCrF,IAAtBwJ,EAAKnE,aAA6BmE,EAAK3B,aAAe2B,EAAKnE,aAE1EmE,EAAKhB,UAA6BxI,IAAtBwJ,EAAKnE,eACnBA,EAAeC,EAAa,EAAIkE,EAAK3B,cAGvC,IAAIkD,EAAiBvB,EAAKuB,gBAAkB,GACxCyC,EAAeC,EAAsBrL,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CAClFnE,aAAcA,EACd0F,eAAgBA,KAGdsC,EAAQ,CACV/H,WAAYA,EACZ8F,WAAYA,EACZH,UAAWA,EACXa,WAAYA,EACZzG,aAAcA,EACd8F,YAAaA,EACbH,WAAYA,EACZD,eATFA,EAAiBA,EAAeT,OAAOkD,IAgBvC,OAJyB,OAArBhE,EAAKgB,aAAwBhB,EAAKxC,WACpCqG,EAAmB,YAAI,WAGlBA,GA8HTvV,EAAQ6a,aAzHW,SAAsBnJ,GACvC,IAAIF,EAAiBE,EAAKF,eACtBiB,EAAYf,EAAKe,UACjB5C,EAAO6B,EAAK7B,KACZvC,EAAWoE,EAAKpE,SAChBtI,EAAQ0M,EAAK1M,MACbwI,EAAakE,EAAKlE,WAClBwC,EAAW0B,EAAK1B,SAChBzC,EAAemE,EAAKnE,aACpB8B,EAAaqC,EAAKrC,WAClBwB,EAAiBa,EAAKb,eACtBpD,EAAeiE,EAAKjE,aACpB2D,EAASM,EAAKN,OACd6B,EAAiBvB,EAAKuB,eAC1B,GAAIzB,GAAkBiB,EAAW,MAAO,GACxC,IACIwS,EACAC,EACAC,EAHAC,EAAiBpgB,EAIjBuQ,EAAQ,GACRuF,EAAY,GACZ7G,EAAc3G,EAAWtI,EAAQoN,EAAMpN,EAAO,EAAGwI,EAAa,GAElE,GAAIqC,EAAM,CACR,IAAKvC,IAAatI,EAAQ,GAAKA,GAASwI,GAAa,MAAO,GAExDxI,EAAQ,EACVogB,EAAiBpgB,EAAQwI,EAChBxI,GAASwI,IAClB4X,EAAiBpgB,EAAQwI,GAGvBwC,GAAYiD,EAAe2B,QAAQwQ,GAAkB,IACvDnS,EAAiBA,EAAeT,OAAO4S,IAGzC7P,EAAQ,CACN9C,WAAW,EACXlF,aAAc6X,EACdnS,eAAgBA,EAChBgB,YAAamR,GAEftK,EAAY,CACVrI,WAAW,EACXwB,YAAamR,QAGfH,EAAaG,EAETA,EAAiB,GACnBH,EAAaG,EAAiB5X,EACzBF,EAAkCE,EAAaqD,GAAmB,IAAGoU,EAAazX,EAAaA,EAAaqD,GAAlGoU,EAAa,IAClBzW,EAAUkD,IAAS0T,EAAiB7X,EAC9C6X,EAAiBH,EAAa1X,EACrB8B,GAAc+V,GAAkB5X,GACzC4X,EAAiB9X,EAAWE,EAAaA,EAAa,EACtDyX,EAAa3X,EAAW,EAAIE,EAAa,GAChC4X,GAAkB5X,IAC3ByX,EAAaG,EAAiB5X,EACzBF,EAA0DE,EAAaqD,GAAmB,IAAGoU,EAAa,GAAhGA,EAAazX,EAAaC,IAGtCH,GAAY8X,EAAiB3X,GAAgBD,IAChDyX,EAAazX,EAAaC,GAG5ByX,EAAgBrM,EAAavO,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CACtEiH,WAAYyM,KAEdD,EAAYtM,EAAavO,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CAClEiH,WAAYsM,KAGT3X,IACC4X,IAAkBC,IAAWC,EAAiBH,GAClDC,EAAgBC,GAGdnV,IACFiD,EAAiBA,EAAeT,OAAOmD,EAAsBrL,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CACtGnE,aAAc6X,OAIbhU,GAUHmE,EAAQ,CACN9C,WAAW,EACXlF,aAAc0X,EACdlR,WAAYiP,EAAmB1Y,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CACxEoH,KAAMoM,KAERjS,eAAgBA,EAChBgB,YAAaA,GAEf6G,EAAY,CACVrI,WAAW,EACXlF,aAAc0X,EACdlR,WAAYgF,EAAYzO,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CACjEoH,KAAMqM,KAER5R,UAAW,KACXU,YAAaA,IAzBfsB,EAAQ,CACNhI,aAAc0X,EACdlR,WAAYgF,EAAYzO,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CACjEoH,KAAMqM,KAERlS,eAAgBA,EAChBgB,YAAaA,GAwBnB,MAAO,CACLsB,MAAOA,EACPuF,UAAWA,IAkEf9a,EAAQiY,YA5DU,SAAqBvG,EAAM9N,GAC3C,IAAIyhB,EAAaC,EAAaC,EAA2BtR,EACrDpD,EAAiBa,EAAKb,eACtBpD,EAAeiE,EAAKjE,aACpBD,EAAakE,EAAKlE,WAClBD,EAAemE,EAAKnE,aACpBiY,EAAsB9T,EAAKuC,YAC3BjE,EAAW0B,EAAK1B,SAChB1C,EAAWoE,EAAKpE,SAIpB,GAFA+X,EADe7X,EAAaqD,GAAmB,EAClB,GAAKrD,EAAaD,GAAgBsD,EAEvC,aAApBjN,EAAQyJ,QAEV4G,EAAc1G,GADdgY,EAA8B,IAAhBF,EAAoBxU,EAAiBpD,EAAe4X,GAG9DrV,IAAa1C,IAEf2G,GAA+B,KAD/BqR,EAAc/X,EAAegY,GACM/X,EAAa,EAAI8X,GAGjDhY,IACH2G,EAAcuR,EAAsB3U,QAEjC,GAAwB,SAApBjN,EAAQyJ,QAEjB4G,EAAc1G,GADdgY,EAA8B,IAAhBF,EAAoBxU,EAAiBwU,GAG/CrV,IAAa1C,IACf2G,GAAe1G,EAAesD,GAAkBrD,EAAa6X,GAG1D/X,IACH2G,EAAcuR,EAAsB3U,QAEjC,GAAwB,SAApBjN,EAAQyJ,QAEjB4G,EAAcrQ,EAAQoB,MAAQpB,EAAQiN,oBACjC,GAAwB,aAApBjN,EAAQyJ,SAIjB,GAFA4G,EAAcrQ,EAAQoB,MAElBsI,EAAU,CACZ,IAAIuF,EAAYiQ,EAAiBxY,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CAC1EuC,YAAaA,KAGXA,EAAcrQ,EAAQ2J,cAA8B,SAAdsF,EACxCoB,GAA4BzG,EACnByG,EAAcrQ,EAAQ2J,cAA8B,UAAdsF,IAC/CoB,GAA4BzG,QAGH,UAApB5J,EAAQyJ,UACjB4G,EAAcgI,OAAOrY,EAAQoB,QAG/B,OAAOiP,GAYTjU,EAAQsb,WAPS,SAAoBjP,EAAGuC,EAAe8B,GACrD,OAAIrE,EAAEhI,OAAOohB,QAAQ3hB,MAAM,2BAA6B8K,EAAsB,GAC5D,KAAdvC,EAAEqZ,QAAuBhV,EAAM,OAAS,WAC1B,KAAdrE,EAAEqZ,QAAuBhV,EAAM,WAAa,OACzC,IAmBT1Q,EAAQ4b,WAdS,SAAoBvP,EAAG0E,EAAOrB,GAE7C,MADqB,QAArBrD,EAAEhI,OAAOohB,SAAqB/B,EAAmBrX,IAC5C0E,IAAUrB,IAA0C,IAA7BrD,EAAE7F,KAAKoO,QAAQ,SAAwB,GAC5D,CACL9B,UAAU,EACVY,YAAa,CACXC,OAAQtH,EAAEsZ,QAAUtZ,EAAEsZ,QAAQ,GAAGC,MAAQvZ,EAAEwZ,QAC3CjS,OAAQvH,EAAEsZ,QAAUtZ,EAAEsZ,QAAQ,GAAGG,MAAQzZ,EAAE0Z,QAC3ClS,KAAMxH,EAAEsZ,QAAUtZ,EAAEsZ,QAAQ,GAAGC,MAAQvZ,EAAEwZ,QACzC/R,KAAMzH,EAAEsZ,QAAUtZ,EAAEsZ,QAAQ,GAAGG,MAAQzZ,EAAE0Z,WAsG/C/lB,EAAQ6b,UA/FQ,SAAmBxP,EAAGqF,GAEpC,IAAI0B,EAAY1B,EAAK0B,UACjBX,EAAYf,EAAKe,UACjBlB,EAAWG,EAAKH,SAChBN,EAAeS,EAAKT,aACpByK,EAAkBhK,EAAKgK,gBACvBhL,EAAMgB,EAAKhB,IACXnD,EAAemE,EAAKnE,aACpBqC,EAAe8B,EAAK9B,aACpBmD,EAAcrB,EAAKqB,YACnB9C,EAASyB,EAAKzB,OACduD,EAAS9B,EAAK8B,OACdC,EAAU/B,EAAK+B,QACfjG,EAAakE,EAAKlE,WAClBqD,EAAiBa,EAAKb,eACtBvD,EAAWoE,EAAKpE,SAChBoG,EAAchC,EAAKgC,YACnB1C,EAAaU,EAAKV,WAClBkC,EAAaxB,EAAKwB,WAClBC,EAAYzB,EAAKyB,UACrB,IAAIC,EAAJ,CACA,GAAIX,EAAW,OAAOiR,EAAmBrX,GACrCkF,GAAYN,GAAgByK,GAAiBgI,EAAmBrX,GACpE,IAAIkH,EACAgC,EAAQ,GACRyQ,EAAUnN,EAAanH,GAC3BgC,EAAYG,KAAOxH,EAAEsZ,QAAUtZ,EAAEsZ,QAAQ,GAAGC,MAAQvZ,EAAEwZ,QACtDnS,EAAYI,KAAOzH,EAAEsZ,QAAUtZ,EAAEsZ,QAAQ,GAAGG,MAAQzZ,EAAE0Z,QACtDrS,EAAYuS,YAAchgB,KAAKwe,MAAMxe,KAAKigB,KAAKjgB,KAAKkgB,IAAIzS,EAAYG,KAAOH,EAAYC,OAAQ,KAC/F,IAAIyS,EAAsBngB,KAAKwe,MAAMxe,KAAKigB,KAAKjgB,KAAKkgB,IAAIzS,EAAYI,KAAOJ,EAAYE,OAAQ,KAE/F,IAAK8H,IAAoBjI,GAAW2S,EAAsB,GACxD,MAAO,CACLhT,WAAW,GAIXsI,IAAiBhI,EAAYuS,YAAcG,GAC/C,IAAIC,GAAmB3V,GAAW,EAAL,IAAWgD,EAAYG,KAAOH,EAAYC,OAAS,GAAK,GACjF+H,IAAiB2K,EAAiB3S,EAAYI,KAAOJ,EAAYE,OAAS,GAAK,GACnF,IAAI7B,EAAW9L,KAAK+L,KAAKxE,EAAaqD,GAClCyV,EAAiBjD,EAAkB3R,EAAKgC,YAAagI,GACrD6K,EAAmB7S,EAAYuS,YAwCnC,OAtCK3Y,IACkB,IAAjBC,IAA0C,UAAnB+Y,GAAiD,SAAnBA,IAA8B/Y,EAAe,GAAKwE,IAAgC,SAAnBuU,GAAgD,OAAnBA,KAA6B9X,EAAUkD,KAA6B,SAAnB4U,GAAgD,OAAnBA,MACjOC,EAAmB7S,EAAYuS,YAAcrW,GAEzB,IAAhBmD,GAAyB9C,IAC3BA,EAAOqW,GACP/Q,EAAmB,aAAI,KAKxB/B,GAAUxC,IACbA,EAAWsV,GACX/Q,EAAc,QAAI,GAUlBhC,EAPGhC,EAOSyU,EAAUO,GAAoBrT,EAAaC,GAAakT,EAN/D3V,EAGSsV,EAAUO,EAAmBF,EAF7BL,EAAUO,EAAmBF,EAQzC3K,IACFnI,EAAYyS,EAAUO,EAAmBF,GAG3C9Q,EAAQjL,EAAcA,EAAc,GAAIiL,GAAQ,GAAI,CAClD7B,YAAaA,EACbH,UAAWA,EACXQ,WAAYgF,EAAYzO,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CACjEoH,KAAMvF,OAINtN,KAAK0e,IAAIjR,EAAYG,KAAOH,EAAYC,QAA4D,GAAlD1N,KAAK0e,IAAIjR,EAAYI,KAAOJ,EAAYE,QACrF2B,GAGL7B,EAAYuS,YAAc,KAC5B1Q,EAAe,SAAI,EACnBmO,EAAmBrX,IAGdkJ,KAuFTvV,EAAQ8b,SAlFO,SAAkBzP,EAAGqF,GAClC,IAAIoB,EAAWpB,EAAKoB,SAChB/B,EAAQW,EAAKX,MACb2C,EAAchC,EAAKgC,YACnBP,EAAYzB,EAAKyB,UACjBhC,EAAiBO,EAAKP,eACtBuK,EAAkBhK,EAAKgK,gBACvBxI,EAAaxB,EAAKwB,WAClBjC,EAAeS,EAAKT,aACpBmC,EAAY1B,EAAK0B,UACjBoT,EAAU9U,EAAK8U,QACfvS,EAAcvC,EAAKuC,YACnB1G,EAAemE,EAAKnE,aACpBD,EAAWoE,EAAKpE,SAEpB,IAAKwF,EAEH,OADI/B,GAAO2S,EAAmBrX,GACvB,GAGT,IAAIoa,EAAW/K,EAAkBxI,EAAa/B,EAAiBgC,EAAYhC,EACvEmV,EAAiBjD,EAAkB3P,EAAagI,GAEhDnG,EAAQ,CACVzC,UAAU,EACVC,aAAa,EACbK,WAAW,EACXK,SAAS,EACTD,QAAQ,EACRD,UAAW,KACXG,YAAa,IAGf,GAAIN,EACF,OAAOmC,EAGT,IAAK7B,EAAYuS,YACf,OAAO1Q,EAGT,GAAI7B,EAAYuS,YAAcQ,EAAU,CAOtC,IAAIjZ,EAAY+S,EANhBmD,EAAmBrX,GAEfma,GACFA,EAAQF,GAIV,IAAII,EAAcpZ,EAAWC,EAAe0G,EAE5C,OAAQqS,GACN,IAAK,OACL,IAAK,KACH/F,EAAWmG,EAAcxD,EAAcxR,GACvClE,EAAayD,EAAekS,EAAezR,EAAM6O,GAAYA,EAC7DhL,EAAwB,iBAAI,EAC5B,MAEF,IAAK,QACL,IAAK,OACHgL,EAAWmG,EAAcxD,EAAcxR,GACvClE,EAAayD,EAAekS,EAAezR,EAAM6O,GAAYA,EAC7DhL,EAAwB,iBAAI,EAC5B,MAEF,QACE/H,EAAakZ,EAGjBnR,EAA2B,oBAAI/H,MAC1B,CAEL,IAAIoF,EAAciG,EAAanH,GAC/B6D,EAAkB,WAAIyN,EAAmB1Y,EAAcA,EAAc,GAAIoH,GAAO,GAAI,CAClFoH,KAAMlG,KAIV,OAAO2C,GAKT,IAAI6N,EAAsB,SAA6B1R,GAMrD,IALA,IAAIxL,EAAMwL,EAAKpE,SAA6B,EAAlBoE,EAAKlE,WAAiBkE,EAAKlE,WACjDyR,EAAavN,EAAKpE,UAAgC,EAArBoE,EAAKjE,aAAoB,EACtDkZ,EAAUjV,EAAKpE,UAAgC,EAArBoE,EAAKjE,aAAoB,EACnDmZ,EAAU,GAEP3H,EAAa/Y,GAClB0gB,EAAQlmB,KAAKue,GACbA,EAAa0H,EAAUjV,EAAKb,eAC5B8V,GAAW1gB,KAAKG,IAAIsL,EAAKb,eAAgBa,EAAKjE,cAGhD,OAAOmZ,GAGT5mB,EAAQojB,oBAAsBA,EAE9B,IAAID,EAAiB,SAAwBzR,EAAM1M,GACjD,IAAI6hB,EAAazD,EAAoB1R,GACjCoV,EAAgB,EAEpB,GAAI9hB,EAAQ6hB,EAAWA,EAAWtmB,OAAS,GACzCyE,EAAQ6hB,EAAWA,EAAWtmB,OAAS,QAEvC,IAAK,IAAIwmB,KAAKF,EAAY,CACxB,GAAI7hB,EAAQ6hB,EAAWE,GAAI,CACzB/hB,EAAQ8hB,EACR,MAGFA,EAAgBD,EAAWE,GAI/B,OAAO/hB,GAGThF,EAAQmjB,eAAiBA,EAEzB,IAAID,EAAgB,SAAuBxR,GACzC,IAAIuP,EAAevP,EAAKrC,WAAaqC,EAAK4B,WAAarN,KAAKib,MAAMxP,EAAKjE,aAAe,GAAK,EAE3F,GAAIiE,EAAKT,aAAc,CACrB,IAAI+V,EACAC,EAAYvV,EAAKqE,QACjBuL,EAAS2F,EAAUrQ,kBAAoBqQ,EAAUrQ,iBAAiB,iBAAmB,GAiBzF,GAhBAjW,MAAMumB,KAAK5F,GAAQ6F,OAAM,SAAUxW,GACjC,GAAKe,EAAKH,UAMR,GAAIZ,EAAMyW,UAAY3R,EAAU9E,GAAS,GAAsB,EAAlBe,EAAK6B,UAEhD,OADAyT,EAAcrW,GACP,OAPT,GAAIA,EAAM0W,WAAapG,EAAeqC,EAAS3S,GAAS,GAAsB,EAAlBe,EAAK6B,UAE/D,OADAyT,EAAcrW,GACP,EASX,OAAO,MAGJqW,EACH,OAAO,EAGT,IAAIM,GAA4B,IAAb5V,EAAKhB,IAAegB,EAAKlE,WAAakE,EAAKnE,aAAemE,EAAKnE,aAElF,OADsBtH,KAAK0e,IAAIqC,EAAYO,QAAQviB,MAAQsiB,IAAiB,EAG5E,OAAO5V,EAAKb,gBAIhB7Q,EAAQkjB,cAAgBA,EAExB,IAAID,EAAgB,SAAuBvR,EAAM8V,GAC/C,OAAOA,EAAUC,QAAO,SAAUxiB,EAAO/D,GACvC,OAAO+D,GAASyM,EAAKxR,eAAegB,MACnC,GAAQ,KAAOkf,QAAQsH,MAAM,gBAAiBhW,IAGnD1R,EAAQijB,cAAgBA,EAExB,IAAIlK,EAAc,SAAqBrH,GAErC,IAAIsC,EAAY2T,EADhB1E,EAAcvR,EAAM,CAAC,OAAQ,gBAAiB,aAAc,eAAgB,eAE5E,IAAIkW,EAAgBlW,EAAKlE,WAAa,EAAIkE,EAAKjE,aAE1CiE,EAAKH,SAGRoW,EAAcC,EAAgBlW,EAAK2B,YAFnCW,EAAa+O,EAAerR,GAAQA,EAAK4B,WAK3C,IAAI1F,EAAQ,CACVqU,QAAS,EACTC,WAAY,GACZ2F,iBAAkB,IAGpB,GAAInW,EAAKL,aAAc,CACrB,IAAIyW,EAAmBpW,EAAKH,SAA0D,oBAAsBG,EAAKoH,KAAO,WAAjF,eAAiBpH,EAAKoH,KAAO,gBAChEiP,EAAarW,EAAKH,SAA0D,oBAAsBG,EAAKoH,KAAO,WAAjF,eAAiBpH,EAAKoH,KAAO,gBAC1DkP,EAAetW,EAAKH,SAA+C,cAAgBG,EAAKoH,KAAO,MAAhE,cAAgBpH,EAAKoH,KAAO,MAC/DlL,EAAQtD,EAAcA,EAAc,GAAIsD,GAAQ,GAAI,CAClDka,gBAAiBA,EACjBC,UAAWA,EACXC,YAAaA,SAGXtW,EAAKH,SACP3D,EAAW,IAAI8D,EAAKoH,KAEpBlL,EAAY,KAAI8D,EAAKoH,KAkBzB,OAdIpH,EAAK7B,OAAMjC,EAAQ,CACrBqU,QAAS,IAEPjO,IAAYpG,EAAM4L,MAAQxF,GAC1B2T,IAAa/Z,EAAM4H,OAASmS,GAE5B7lB,SAAWA,OAAOmV,kBAAoBnV,OAAOoV,cAC1CxF,EAAKH,SAGR3D,EAAMqa,UAAYvW,EAAKoH,KAAO,KAF9BlL,EAAMsa,WAAaxW,EAAKoH,KAAO,MAM5BlL,GAGT5N,EAAQ+Y,YAAcA,EAEtB,IAAIiK,EAAqB,SAA4BtR,GACnDuR,EAAcvR,EAAM,CAAC,OAAQ,gBAAiB,aAAc,eAAgB,aAAc,QAAS,YACnG,IAAI9D,EAAQmL,EAAYrH,GAaxB,OAXIA,EAAKL,cACPzD,EAAMia,iBAAmB,qBAAuBnW,EAAKZ,MAAQ,MAAQY,EAAKnC,QAC1E3B,EAAMsU,WAAa,aAAexQ,EAAKZ,MAAQ,MAAQY,EAAKnC,SAExDmC,EAAKH,SACP3D,EAAMsU,WAAa,OAASxQ,EAAKZ,MAAQ,MAAQY,EAAKnC,QAEtD3B,EAAMsU,WAAa,QAAUxQ,EAAKZ,MAAQ,MAAQY,EAAKnC,QAIpD3B,GAGT5N,EAAQgjB,mBAAqBA,EAE7B,IAAInK,EAAe,SAAsBnH,GACvC,GAAIA,EAAKqM,QACP,OAAO,EAGTkF,EAAcvR,EAAM,CAAC,aAAc,WAAY,WAAY,aAAc,aAAc,eAAgB,iBAAkB,aAAc,YAAa,gBAAiB,gBACrK,IAcIkH,EACA3E,EAfA0E,EAAajH,EAAKiH,WAClB3C,EAAWtE,EAAKsE,SAChB1I,EAAWoE,EAAKpE,SAChB+B,EAAaqC,EAAKrC,WAClB7B,EAAakE,EAAKlE,WAClBC,EAAeiE,EAAKjE,aACpBoD,EAAiBa,EAAKb,eACtByC,EAAa5B,EAAK4B,WAClBH,EAAYzB,EAAKyB,UACjB7B,EAAgBI,EAAKJ,cACrB+B,EAAc3B,EAAK2B,YACnBxD,EAAO6B,EAAK7B,KACZ0B,EAAWG,EAAKH,SAMpB,GAAI1B,GAA4B,IAApB6B,EAAKlE,WACf,OAAO,EAGT,IAAI2a,EAAiB,EAiCrB,GA/BI7a,GACF6a,GAAkB/O,EAAa1H,GAG3BlE,EAAaqD,GAAmB,GAAK8H,EAAa9H,EAAiBrD,IACrE2a,IAAmBxP,EAAanL,EAAaC,GAAgBkL,EAAanL,GAAcA,EAAaqD,IAInGxB,IACF8Y,GAAkB1iB,SAASgI,EAAe,MAGxCD,EAAaqD,GAAmB,GAAK8H,EAAa9H,EAAiBrD,IACrE2a,EAAiB1a,EAAeD,EAAaqD,GAG3CxB,IACF8Y,EAAiB1iB,SAASgI,EAAe,KAU3CmL,EAHGrH,EAGUoH,EAAatF,GAAe,EAL1B8U,EAAiB9U,EAGnBsF,EAAarF,GAAc,EAJ5B6U,EAAiB7U,GAST,IAAlBhC,EAAwB,CAC1B,IAAI8W,EACAC,EAAYrS,GAAYA,EAASuC,KAKrC,GAJA6P,EAAmBzP,EAAaS,EAAa1H,GAE7CkH,GADA3E,EAAcoU,GAAaA,EAAUC,WAAWF,KACK,EAA1BnU,EAAYoT,WAAkB,GAEtC,IAAfhY,EAAqB,CACvB+Y,EAAmB9a,EAAWqL,EAAaS,EAAa1H,GAAQiH,EAChE1E,EAAcoU,GAAaA,EAAUrQ,SAASoQ,GAC9CxP,EAAa,EAEb,IAAK,IAAIjI,EAAQ,EAAGA,EAAQyX,EAAkBzX,IAC5CiI,GAAcyP,GAAaA,EAAUrQ,SAASrH,IAAU0X,EAAUrQ,SAASrH,GAAOuT,YAGpFtL,GAAcnT,SAASiM,EAAKpC,eAC5BsJ,GAAc3E,IAAgBd,EAAYc,EAAYiQ,aAAe,GAIzE,OAAOtL,GAGT5Y,EAAQ6Y,aAAeA,EAEvB,IAAIO,EAAe,SAAsB1H,GACvC,OAAIA,EAAKqM,UAAYrM,EAAKpE,SACjB,EAGLoE,EAAKJ,cACAI,EAAKlE,WAGPkE,EAAKjE,cAAgBiE,EAAKrC,WAAa,EAAI,IAGpDrP,EAAQoZ,aAAeA,EAEvB,IAAIE,EAAgB,SAAuB5H,GACzC,OAAIA,EAAKqM,UAAYrM,EAAKpE,SACjB,EAGFoE,EAAKlE,YAGdxN,EAAQsZ,cAAgBA,EAExB,IAAIyJ,EAAiB,SAAwBrR,GAC3C,OAA2B,IAApBA,EAAKlE,WAAmB,EAAI4L,EAAa1H,GAAQA,EAAKlE,WAAa8L,EAAc5H,IAG1F1R,EAAQ+iB,eAAiBA,EAEzB,IAAID,EAAmB,SAA0BpR,GAC/C,OAAIA,EAAKuC,YAAcvC,EAAKnE,aACtBmE,EAAKuC,YAAcvC,EAAKnE,aAAesV,EAAcnR,GAChD,OAGF,QAEHA,EAAKuC,YAAcvC,EAAKnE,aAAeqV,EAAalR,GAC/C,QAGF,QAIX1R,EAAQ8iB,iBAAmBA,EAE3B,IAAID,EAAgB,SAAuB0F,GACzC,IAAI9a,EAAe8a,EAAK9a,aACpB4B,EAAakZ,EAAKlZ,WAClBqB,EAAM6X,EAAK7X,IACXpB,EAAgBiZ,EAAKjZ,cAEzB,GAAID,EAAY,CACd,IAAImZ,GAAS/a,EAAe,GAAK,EAAI,EAGrC,OAFIhI,SAAS6J,GAAiB,IAAGkZ,GAAS,GACtC9X,GAAOjD,EAAe,GAAM,IAAG+a,GAAS,GACrCA,EAGT,OAAI9X,EACK,EAGFjD,EAAe,GAGxBzN,EAAQ6iB,cAAgBA,EAExB,IAAID,EAAe,SAAsB6F,GACvC,IAAIhb,EAAegb,EAAMhb,aACrB4B,EAAaoZ,EAAMpZ,WACnBqB,EAAM+X,EAAM/X,IACZpB,EAAgBmZ,EAAMnZ,cAE1B,GAAID,EAAY,CACd,IAAIyJ,GAAQrL,EAAe,GAAK,EAAI,EAGpC,OAFIhI,SAAS6J,GAAiB,IAAGwJ,GAAQ,GACpCpI,GAAOjD,EAAe,GAAM,IAAGqL,GAAQ,GACrCA,EAGT,OAAIpI,EACKjD,EAAe,EAGjB,GAGTzN,EAAQ4iB,aAAeA,EAMvB5iB,EAAQ4e,UAJQ,WACd,QAA4B,oBAAX9c,SAA0BA,OAAO6U,WAAY7U,OAAO6U,SAASzI,iB,yCC19BhF,IAAIwa,EAAU,WACZ,GAAmB,oBAARC,IACT,OAAOA,IAWT,SAASC,EAASC,EAAK3nB,GACrB,IAAIoG,GAAU,EASd,OARAuhB,EAAIC,MAAK,SAAUC,EAAO/jB,GACxB,OAAI+jB,EAAM,KAAO7nB,IACfoG,EAAStC,GACF,MAKJsC,EAGT,OAEE,WACE,SAAS0hB,IACPrnB,KAAKsnB,YAAc,GAwFrB,OArFAjoB,OAAO+H,eAAeigB,EAAQ/nB,UAAW,OAAQ,CAI/CioB,IAAK,WACH,OAAOvnB,KAAKsnB,YAAY1oB,QAE1B8J,YAAY,EACZK,cAAc,IAOhBse,EAAQ/nB,UAAUioB,IAAM,SAAUhoB,GAChC,IAAI8D,EAAQ4jB,EAASjnB,KAAKsnB,YAAa/nB,GACnC6nB,EAAQpnB,KAAKsnB,YAAYjkB,GAC7B,OAAO+jB,GAASA,EAAM,IASxBC,EAAQ/nB,UAAUkoB,IAAM,SAAUjoB,EAAK+D,GACrC,IAAID,EAAQ4jB,EAASjnB,KAAKsnB,YAAa/nB,IAElC8D,EACHrD,KAAKsnB,YAAYjkB,GAAO,GAAKC,EAE7BtD,KAAKsnB,YAAYvoB,KAAK,CAACQ,EAAK+D,KAShC+jB,EAAQ/nB,UAAUmoB,OAAS,SAAUloB,GACnC,IAAImoB,EAAU1nB,KAAKsnB,YACfjkB,EAAQ4jB,EAASS,EAASnoB,IAEzB8D,GACHqkB,EAAQtmB,OAAOiC,EAAO,IAS1BgkB,EAAQ/nB,UAAUqoB,IAAM,SAAUpoB,GAChC,SAAU0nB,EAASjnB,KAAKsnB,YAAa/nB,IAOvC8nB,EAAQ/nB,UAAU+B,MAAQ,WACxBrB,KAAKsnB,YAAYlmB,OAAO,IAS1BimB,EAAQ/nB,UAAU6D,QAAU,SAAU0T,EAAU+Q,QAClC,IAARA,IACFA,EAAM,MAGR,IAAK,IAAI9P,EAAK,EAAG+P,EAAK7nB,KAAKsnB,YAAaxP,EAAK+P,EAAGjpB,OAAQkZ,IAAM,CAC5D,IAAIsP,EAAQS,EAAG/P,GACfjB,EAASrX,KAAKooB,EAAKR,EAAM,GAAIA,EAAM,MAIhCC,EA5FJ,GA1BK,GA+HVS,EAA8B,oBAAX3nB,QAA8C,oBAAb6U,UAA4B7U,OAAO6U,WAAaA,SAEpG+S,OACoB,IAAX,EAAA/jB,GAA0B,EAAAA,EAAOM,OAASA,KAC5C,EAAAN,EAGW,oBAAT3D,MAAwBA,KAAKiE,OAASA,KACxCjE,KAGa,oBAAXF,QAA0BA,OAAOmE,OAASA,KAC5CnE,OAIFgE,SAAS,cAATA,GAUL6jB,EACmC,mBAA1BC,sBAIFA,sBAAsBxc,KAAKsc,GAG7B,SAAUlR,GACf,OAAOpQ,YAAW,WAChB,OAAOoQ,EAASlS,KAAKD,SACpB,IAAO,KAkFd,IAGIwjB,EAAiB,CAAC,MAAO,QAAS,SAAU,OAAQ,QAAS,SAAU,OAAQ,UAE/EC,EAAwD,oBAArBC,iBAKnCC,EAEJ,WAME,SAASA,IAMProB,KAAKsoB,YAAa,EAOlBtoB,KAAKuoB,sBAAuB,EAO5BvoB,KAAKwoB,mBAAqB,KAO1BxoB,KAAKyoB,WAAa,GAClBzoB,KAAK0oB,iBAAmB1oB,KAAK0oB,iBAAiBjd,KAAKzL,MACnDA,KAAK2oB,QAlHT,SAAkB9R,EAAU+R,GAC1B,IAAIC,GAAc,EACdC,GAAe,EACfjjB,EAAe,EAQnB,SAASkjB,IACHF,IACFA,GAAc,EACdhS,KAGEiS,GACFE,IAYJ,SAASC,IACPjB,EAAwBe,GAS1B,SAASC,IACP,IAAIE,EAAYvkB,KAAKD,MAErB,GAAImkB,EAAa,CAEf,GAAIK,EAAYrjB,EAvDA,EAwDd,OAOFijB,GAAe,OAEfD,GAAc,EACdC,GAAe,EACfriB,WAAWwiB,EAAiBL,GAG9B/iB,EAAeqjB,EAGjB,OAAOF,EAmDUG,CAASnpB,KAAK2oB,QAAQld,KAAKzL,MA/C1B,IA8OlB,OArLAqoB,EAAyB/oB,UAAU8pB,YAAc,SAAUC,IACnDrpB,KAAKyoB,WAAWxV,QAAQoW,IAC5BrpB,KAAKyoB,WAAW1pB,KAAKsqB,GAIlBrpB,KAAKsoB,YACRtoB,KAAKspB,YAWTjB,EAAyB/oB,UAAUiqB,eAAiB,SAAUF,GAC5D,IAAIG,EAAYxpB,KAAKyoB,WACjBplB,EAAQmmB,EAAUvW,QAAQoW,IAEzBhmB,GACHmmB,EAAUpoB,OAAOiC,EAAO,IAIrBmmB,EAAU5qB,QAAUoB,KAAKsoB,YAC5BtoB,KAAKypB,eAWTpB,EAAyB/oB,UAAUqpB,QAAU,WACrB3oB,KAAK0pB,oBAIzB1pB,KAAK2oB,WAaTN,EAAyB/oB,UAAUoqB,iBAAmB,WAEpD,IAAIC,EAAkB3pB,KAAKyoB,WAAWlgB,QAAO,SAAU8gB,GACrD,OAAOA,EAASO,eAAgBP,EAASQ,eAU3C,OAHAF,EAAgBxmB,SAAQ,SAAUkmB,GAChC,OAAOA,EAASS,qBAEXH,EAAgB/qB,OAAS,GAUlCypB,EAAyB/oB,UAAUgqB,SAAW,WAGvCxB,IAAa9nB,KAAKsoB,aAOvBtT,SAASM,iBAAiB,gBAAiBtV,KAAK0oB,kBAChDvoB,OAAOmV,iBAAiB,SAAUtV,KAAK2oB,SAEnCR,GACFnoB,KAAKwoB,mBAAqB,IAAIJ,iBAAiBpoB,KAAK2oB,SACpD3oB,KAAKwoB,mBAAmBzT,QAAQC,SAAU,CACxC+U,YAAY,EACZC,WAAW,EACXC,eAAe,EACfC,SAAS,MAGXlV,SAASM,iBAAiB,qBAAsBtV,KAAK2oB,SACrD3oB,KAAKuoB,sBAAuB,GAG9BvoB,KAAKsoB,YAAa,IAUpBD,EAAyB/oB,UAAUmqB,YAAc,WAG1C3B,GAAc9nB,KAAKsoB,aAIxBtT,SAASW,oBAAoB,gBAAiB3V,KAAK0oB,kBACnDvoB,OAAOwV,oBAAoB,SAAU3V,KAAK2oB,SAEtC3oB,KAAKwoB,oBACPxoB,KAAKwoB,mBAAmB1S,aAGtB9V,KAAKuoB,sBACPvT,SAASW,oBAAoB,qBAAsB3V,KAAK2oB,SAG1D3oB,KAAKwoB,mBAAqB,KAC1BxoB,KAAKuoB,sBAAuB,EAC5BvoB,KAAKsoB,YAAa,IAWpBD,EAAyB/oB,UAAUopB,iBAAmB,SAAUb,GAC9D,IAAIsC,EAAKtC,EAAGuC,aACRA,OAAsB,IAAPD,EAAgB,GAAKA,EAEjBjC,EAAef,MAAK,SAAU5nB,GACnD,SAAU6qB,EAAanX,QAAQ1T,OAI/BS,KAAK2oB,WAUTN,EAAyBgC,YAAc,WAKrC,OAJKrqB,KAAKsqB,YACRtqB,KAAKsqB,UAAY,IAAIjC,GAGhBroB,KAAKsqB,WASdjC,EAAyBiC,UAAY,KAC9BjC,EAlOT,GA6OIkC,EAAqB,SAA4B7nB,EAAQ2G,GAC3D,IAAK,IAAIyO,EAAK,EAAG+P,EAAKxoB,OAAO6D,KAAKmG,GAAQyO,EAAK+P,EAAGjpB,OAAQkZ,IAAM,CAC9D,IAAIvY,EAAMsoB,EAAG/P,GACbzY,OAAO+H,eAAe1E,EAAQnD,EAAK,CACjC+D,MAAO+F,EAAM9J,GACbmJ,YAAY,EACZM,UAAU,EACVD,cAAc,IAIlB,OAAOrG,GAUL8nB,EAAc,SAAqB9nB,GAOrC,OAHkBA,GAAUA,EAAO+nB,eAAiB/nB,EAAO+nB,cAAcC,aAGnD3C,GAIpB4C,EAAYC,EAAe,EAAG,EAAG,EAAG,GAQxC,SAASC,EAAQvnB,GACf,OAAOwnB,WAAWxnB,IAAU,EAW9B,SAASynB,EAAeC,GAGtB,IAFA,IAAIC,EAAY,GAEPnT,EAAK,EAAGA,EAAKnZ,UAAUC,OAAQkZ,IACtCmT,EAAUnT,EAAK,GAAKnZ,UAAUmZ,GAGhC,OAAOmT,EAAUnF,QAAO,SAAUoF,EAAM9K,GAEtC,OAAO8K,EAAOL,EADFG,EAAO,UAAY5K,EAAW,aAEzC,GA2CL,SAAS+K,EAA0BzoB,GAGjC,IAAI0oB,EAAc1oB,EAAO0oB,YACrBC,EAAe3oB,EAAO2oB,aAS1B,IAAKD,IAAgBC,EACnB,OAAOV,EAGT,IAAIK,EAASR,EAAY9nB,GAAQ4oB,iBAAiB5oB,GAC9C6oB,EAnDN,SAAqBP,GAInB,IAHA,IACIO,EAAW,GAENzT,EAAK,EAAG0T,EAHD,CAAC,MAAO,QAAS,SAAU,QAGD1T,EAAK0T,EAAY5sB,OAAQkZ,IAAM,CACvE,IAAIsI,EAAWoL,EAAY1T,GACvBxU,EAAQ0nB,EAAO,WAAa5K,GAChCmL,EAASnL,GAAYyK,EAAQvnB,GAG/B,OAAOioB,EAyCQE,CAAYT,GACvBU,EAAWH,EAASpU,KAAOoU,EAAS1E,MACpC8E,EAAUJ,EAASlL,IAAMkL,EAASK,OAKlC/T,EAAQgT,EAAQG,EAAOnT,OACvBhE,EAASgX,EAAQG,EAAOnX,QAuB5B,GApByB,eAArBmX,EAAOa,YAOLvnB,KAAKwe,MAAMjL,EAAQ6T,KAAcN,IACnCvT,GAASkT,EAAeC,EAAQ,OAAQ,SAAWU,GAGjDpnB,KAAKwe,MAAMjP,EAAS8X,KAAaN,IACnCxX,GAAUkX,EAAeC,EAAQ,MAAO,UAAYW,KA+D1D,SAA2BjpB,GACzB,OAAOA,IAAW8nB,EAAY9nB,GAAQsS,SAAS8W,gBAxD1CC,CAAkBrpB,GAAS,CAK9B,IAAIspB,EAAgB1nB,KAAKwe,MAAMjL,EAAQ6T,GAAYN,EAC/Ca,EAAiB3nB,KAAKwe,MAAMjP,EAAS8X,GAAWN,EAMpB,IAA5B/mB,KAAK0e,IAAIgJ,KACXnU,GAASmU,GAGsB,IAA7B1nB,KAAK0e,IAAIiJ,KACXpY,GAAUoY,GAId,OAAOrB,EAAeW,EAASpU,KAAMoU,EAASlL,IAAKxI,EAAOhE,GAU5D,IAAIqY,EAGgC,oBAAvBC,mBACF,SAAUzpB,GACf,OAAOA,aAAkB8nB,EAAY9nB,GAAQypB,oBAO1C,SAAUzpB,GACf,OAAOA,aAAkB8nB,EAAY9nB,GAAQ0pB,YAAwC,mBAAnB1pB,EAAO2pB,SAsB7E,SAASC,EAAe5pB,GACtB,OAAKolB,EAIDoE,EAAqBxpB,GApI3B,SAA2BA,GACzB,IAAI6pB,EAAO7pB,EAAO2pB,UAClB,OAAOzB,EAAe,EAAG,EAAG2B,EAAK1U,MAAO0U,EAAK1Y,QAmIpC2Y,CAAkB9pB,GAGpByoB,EAA0BzoB,GAPxBioB,EAmDX,SAASC,EAAe/M,EAAGC,EAAGjG,EAAOhE,GACnC,MAAO,CACLgK,EAAGA,EACHC,EAAGA,EACHjG,MAAOA,EACPhE,OAAQA,GASZ,IAAI4Y,EAEJ,WAME,SAASA,EAAkB/pB,GAMzB1C,KAAK0sB,eAAiB,EAOtB1sB,KAAK2sB,gBAAkB,EAOvB3sB,KAAK4sB,aAAehC,EAAe,EAAG,EAAG,EAAG,GAC5C5qB,KAAK0C,OAASA,EA8BhB,OApBA+pB,EAAkBntB,UAAUutB,SAAW,WACrC,IAAIC,EAAOR,EAAetsB,KAAK0C,QAE/B,OADA1C,KAAK4sB,aAAeE,EACbA,EAAKjV,QAAU7X,KAAK0sB,gBAAkBI,EAAKjZ,SAAW7T,KAAK2sB,iBAUpEF,EAAkBntB,UAAUytB,cAAgB,WAC1C,IAAID,EAAO9sB,KAAK4sB,aAGhB,OAFA5sB,KAAK0sB,eAAiBI,EAAKjV,MAC3B7X,KAAK2sB,gBAAkBG,EAAKjZ,OACrBiZ,GAGFL,EAzDT,GA4DIO,EASF,SAA6BtqB,EAAQuqB,GACnC,IAvHwBpF,EACtBhK,EACAC,EACAjG,EACAhE,EAEAqZ,EACAJ,EAgHEK,GAtHFtP,GADsBgK,EAuHaoF,GAtH5BpP,EACPC,EAAI+J,EAAG/J,EACPjG,EAAQgQ,EAAGhQ,MACXhE,EAASgU,EAAGhU,OAEZqZ,EAAoC,oBAApBE,gBAAkCA,gBAAkB/tB,OACpEytB,EAAOztB,OAAOwK,OAAOqjB,EAAO5tB,WAEhCirB,EAAmBuC,EAAM,CACvBjP,EAAGA,EACHC,EAAGA,EACHjG,MAAOA,EACPhE,OAAQA,EACRwM,IAAKvC,EACL+I,MAAOhJ,EAAIhG,EACX+T,OAAQ/X,EAASiK,EACjB3G,KAAM0G,IAEDiP,GA2GLvC,EAAmBvqB,KAAM,CACvB0C,OAAQA,EACRyqB,YAAaA,KAOfE,EAEJ,WAWE,SAASA,EAAkBxW,EAAUyW,EAAYC,GAgB/C,GATAvtB,KAAKwtB,oBAAsB,GAO3BxtB,KAAKytB,cAAgB,IAAI1G,EAED,mBAAblQ,EACT,MAAM,IAAI3Q,UAAU,2DAGtBlG,KAAK0tB,UAAY7W,EACjB7W,KAAK2tB,YAAcL,EACnBttB,KAAK4tB,aAAeL,EA8ItB,OApIAF,EAAkB/tB,UAAUyV,QAAU,SAAUrS,GAC9C,IAAK/D,UAAUC,OACb,MAAM,IAAIsH,UAAU,4CAItB,GAAuB,oBAAZ2nB,SAA6BA,mBAAmBxuB,OAA3D,CAIA,KAAMqD,aAAkB8nB,EAAY9nB,GAAQmrB,SAC1C,MAAM,IAAI3nB,UAAU,yCAGtB,IAAI4nB,EAAe9tB,KAAKytB,cAEpBK,EAAanG,IAAIjlB,KAIrBorB,EAAatG,IAAI9kB,EAAQ,IAAI+pB,EAAkB/pB,IAC/C1C,KAAK2tB,YAAYvE,YAAYppB,MAE7BA,KAAK2tB,YAAYhF,aAUnB0E,EAAkB/tB,UAAUyuB,UAAY,SAAUrrB,GAChD,IAAK/D,UAAUC,OACb,MAAM,IAAIsH,UAAU,4CAItB,GAAuB,oBAAZ2nB,SAA6BA,mBAAmBxuB,OAA3D,CAIA,KAAMqD,aAAkB8nB,EAAY9nB,GAAQmrB,SAC1C,MAAM,IAAI3nB,UAAU,yCAGtB,IAAI4nB,EAAe9tB,KAAKytB,cAEnBK,EAAanG,IAAIjlB,KAItBorB,EAAarG,OAAO/kB,GAEforB,EAAa5C,MAChBlrB,KAAK2tB,YAAYpE,eAAevpB,SAUpCqtB,EAAkB/tB,UAAUwW,WAAa,WACvC9V,KAAKguB,cACLhuB,KAAKytB,cAAcpsB,QACnBrB,KAAK2tB,YAAYpE,eAAevpB,OAUlCqtB,EAAkB/tB,UAAUsqB,aAAe,WACzC,IAAItW,EAAQtT,KAEZA,KAAKguB,cACLhuB,KAAKytB,cAActqB,SAAQ,SAAU8qB,GAC/BA,EAAYpB,YACdvZ,EAAMka,oBAAoBzuB,KAAKkvB,OAYrCZ,EAAkB/tB,UAAUwqB,gBAAkB,WAE5C,GAAK9pB,KAAK6pB,YAAV,CAIA,IAAIjC,EAAM5nB,KAAK4tB,aAEXlG,EAAU1nB,KAAKwtB,oBAAoB9P,KAAI,SAAUuQ,GACnD,OAAO,IAAIjB,EAAoBiB,EAAYvrB,OAAQurB,EAAYlB,oBAEjE/sB,KAAK0tB,UAAUluB,KAAKooB,EAAKF,EAASE,GAClC5nB,KAAKguB,gBASPX,EAAkB/tB,UAAU0uB,YAAc,WACxChuB,KAAKwtB,oBAAoBpsB,OAAO,IASlCisB,EAAkB/tB,UAAUuqB,UAAY,WACtC,OAAO7pB,KAAKwtB,oBAAoB5uB,OAAS,GAGpCyuB,EA/KT,GAqLI7D,EAA+B,oBAAZ0E,QAA0B,IAAIA,QAAY,IAAInH,EAMjEoH,EASF,SAASA,EAAetX,GACtB,KAAM7W,gBAAgBmuB,GACpB,MAAM,IAAIjoB,UAAU,sCAGtB,IAAKvH,UAAUC,OACb,MAAM,IAAIsH,UAAU,4CAGtB,IAAIonB,EAAajF,EAAyBgC,cACtChB,EAAW,IAAIgE,EAAkBxW,EAAUyW,EAAYttB,MAC3DwpB,EAAUhC,IAAIxnB,KAAMqpB,IAOxB,CAAC,UAAW,YAAa,cAAclmB,SAAQ,SAAUirB,GACvDD,EAAe7uB,UAAU8uB,GAAU,WACjC,IAAIvG,EAEJ,OAAQA,EAAK2B,EAAUjC,IAAIvnB,OAAOouB,GAAQjvB,MAAM0oB,EAAIlpB,eAIxD,IAAI0E,OAEqC,IAA5B0kB,EAASoG,eACXpG,EAASoG,eAGXA,EAGT,a,iBCjlCA/vB,EAAOC,QANY,SAAsBgwB,GACvC,OAAOA,EAAIlpB,QAAQ,UAAU,SAAUhD,GACrC,MAAO,IAAMA,EAAMmsB,iBAClBA,gB,qBCHL,EAAQ,MACR,EAAQ,MACR,EAAQ,MACR,EAAQ,MACR,EAAQ,MACR,EAAQ,MACR,EAAQ,MACR,EAAQ,MACR,IAAIC,EAAO,EAAQ,KAEnBnwB,EAAOC,QAAUkwB,EAAKC,S,qBCVtB,IAAIC,EAAS,EAAQ,MACrB,EAAQ,MAER,EAAQ,MACR,EAAQ,MACR,EAAQ,MAERrwB,EAAOC,QAAUowB,G,qBCPjB,IAAI7pB,EAAW,EAAQ,KAEvBxG,EAAOC,QAAU,SAAUqwB,GACzB,IAAK9pB,EAAS8pB,IAAc,OAAPA,EACnB,MAAMxoB,UAAU,aAAeyoB,OAAOD,GAAM,mBAC5C,OAAOA,I,qBCLX,IAAIE,EAAkB,EAAQ,MAC1B/kB,EAAS,EAAQ,IACjBglB,EAAuB,EAAQ,MAE/BC,EAAcF,EAAgB,eAC9BG,EAAiB/vB,MAAMM,UAIQiH,MAA/BwoB,EAAeD,IACjBD,EAAqBG,EAAED,EAAgBD,EAAa,CAClD/lB,cAAc,EACdzF,MAAOuG,EAAO,QAKlBzL,EAAOC,QAAU,SAAUkB,GACzBwvB,EAAeD,GAAavvB,IAAO,I,iBClBrCnB,EAAOC,QAAU,SAAUqwB,EAAIvlB,EAAa8lB,GAC1C,KAAMP,aAAcvlB,GAClB,MAAMjD,UAAU,cAAgB+oB,EAAOA,EAAO,IAAM,IAAM,cAC1D,OAAOP,I,qBCHX,IAEIQ,EAFkB,EAAQ,KAEfN,CAAgB,YAC3BO,GAAe,EAEnB,IACE,IAAIC,EAAS,EACTC,EAAqB,CACvBC,KAAM,WACJ,MAAO,CAAEC,OAAQH,MAEnB,OAAU,WACRD,GAAe,IAGnBE,EAAmBH,GAAY,WAC7B,OAAOlvB,MAGThB,MAAMumB,KAAK8J,GAAoB,WAAc,MAAM,KACnD,MAAOtJ,IAET3nB,EAAOC,QAAU,SAAUmxB,EAAMC,GAC/B,IAAKA,IAAiBN,EAAc,OAAO,EAC3C,IAAIO,GAAoB,EACxB,IACE,IAAIvnB,EAAS,GACbA,EAAO+mB,GAAY,WACjB,MAAO,CACLI,KAAM,WACJ,MAAO,CAAEC,KAAMG,GAAoB,MAIzCF,EAAKrnB,GACL,MAAO4d,IACT,OAAO2J,I,oBCpCT,IAAIC,EAAwB,EAAQ,MAChCC,EAAa,EAAQ,MAGrBC,EAFkB,EAAQ,KAEVjB,CAAgB,eAEhCkB,EAAuE,aAAnDF,EAAW,WAAc,OAAOjxB,UAArB,IAUnCP,EAAOC,QAAUsxB,EAAwBC,EAAa,SAAUlB,GAC9D,IAAIqB,EAAGC,EAAKrqB,EACZ,YAAcY,IAAPmoB,EAAmB,YAAqB,OAAPA,EAAc,OAEM,iBAAhDsB,EAXD,SAAUtB,EAAInvB,GACzB,IACE,OAAOmvB,EAAGnvB,GACV,MAAOwmB,KAQSkK,CAAOF,EAAI1wB,OAAOqvB,GAAKmB,IAA8BG,EAEnEF,EAAoBF,EAAWG,GAEH,WAA3BpqB,EAASiqB,EAAWG,KAAsC,mBAAZA,EAAEG,OAAuB,YAAcvqB,I,qBCxB5F,IAAIwqB,EAAQ,EAAQ,MAEpB/xB,EAAOC,SAAW8xB,GAAM,WACtB,SAASC,KAGT,OAFAA,EAAE9wB,UAAUwC,YAAc,KAEnBzC,OAAO6L,eAAe,IAAIklB,KAASA,EAAE9wB,c,kCCL9C,IAAI+wB,EAAoB,0BACpBxmB,EAAS,EAAQ,IACjBymB,EAA2B,EAAQ,MACnCC,EAAiB,EAAQ,MACzBC,EAAY,EAAQ,MAEpBC,EAAa,WAAc,OAAOzwB,MAEtC5B,EAAOC,QAAU,SAAUqyB,EAAqBC,EAAMrB,GACpD,IAAIO,EAAgBc,EAAO,YAI3B,OAHAD,EAAoBpxB,UAAYuK,EAAOwmB,EAAmB,CAAEf,KAAMgB,EAAyB,EAAGhB,KAC9FiB,EAAeG,EAAqBb,GAAe,GAAO,GAC1DW,EAAUX,GAAiBY,EACpBC,I,iCCbT,IAAIE,EAAI,EAAQ,MACZC,EAA4B,EAAQ,MACpC3lB,EAAiB,EAAQ,MACzBjB,EAAiB,EAAQ,MACzBsmB,EAAiB,EAAQ,MACzBO,EAA8B,EAAQ,MACtCC,EAAW,EAAQ,MACnBnC,EAAkB,EAAQ,MAC1BoC,EAAU,EAAQ,MAClBR,EAAY,EAAQ,MACpBS,EAAgB,EAAQ,MAExBZ,EAAoBY,EAAcZ,kBAClCa,EAAyBD,EAAcC,uBACvChC,EAAWN,EAAgB,YAC3BuC,EAAO,OACPC,EAAS,SACTC,EAAU,UAEVZ,EAAa,WAAc,OAAOzwB,MAEtC5B,EAAOC,QAAU,SAAUizB,EAAUX,EAAMD,EAAqBpB,EAAMiC,EAASC,EAAQC,GACrFZ,EAA0BH,EAAqBC,EAAMrB,GAErD,IAkBIoC,EAA0BC,EAASC,EAlBnCC,EAAqB,SAAUC,GACjC,GAAIA,IAASP,GAAWQ,EAAiB,OAAOA,EAChD,IAAKb,GAA0BY,KAAQE,EAAmB,OAAOA,EAAkBF,GACnF,OAAQA,GACN,KAAKX,EACL,KAAKC,EACL,KAAKC,EAAS,OAAO,WAAqB,OAAO,IAAIX,EAAoB1wB,KAAM8xB,IAC/E,OAAO,WAAc,OAAO,IAAIpB,EAAoB1wB,QAGpD6vB,EAAgBc,EAAO,YACvBsB,GAAwB,EACxBD,EAAoBV,EAAShyB,UAC7B4yB,EAAiBF,EAAkB9C,IAClC8C,EAAkB,eAClBT,GAAWS,EAAkBT,GAC9BQ,GAAmBb,GAA0BgB,GAAkBL,EAAmBN,GAClFY,EAA4B,SAARxB,GAAkBqB,EAAkBtK,SAA4BwK,EAiCxF,GA7BIC,IACFT,EAA2BxmB,EAAeinB,EAAkB3yB,KAAK,IAAI8xB,IACjEjB,IAAsBhxB,OAAOC,WAAaoyB,EAAyBpC,OAChE0B,GAAW9lB,EAAewmB,KAA8BrB,IACvDpmB,EACFA,EAAeynB,EAA0BrB,GACa,mBAAtCqB,EAAyBxC,IACzC4B,EAA4BY,EAA0BxC,EAAUuB,IAIpEF,EAAemB,EAA0B7B,GAAe,GAAM,GAC1DmB,IAASR,EAAUX,GAAiBY,KAKxCc,GAAWH,GAAUc,GAAkBA,EAAejD,OAASmC,IACjEa,GAAwB,EACxBF,EAAkB,WAAoB,OAAOG,EAAe1yB,KAAKQ,QAI7DgxB,IAAWS,GAAWO,EAAkB9C,KAAc6C,GAC1DjB,EAA4BkB,EAAmB9C,EAAU6C,GAE3DvB,EAAUG,GAAQoB,EAGdR,EAMF,GALAI,EAAU,CACRS,OAAQP,EAAmBT,GAC3BluB,KAAMsuB,EAASO,EAAkBF,EAAmBV,GACpDzJ,QAASmK,EAAmBR,IAE1BI,EAAQ,IAAKG,KAAOD,GAClBT,GAA0Be,KAA2BL,KAAOI,KAC9DjB,EAASiB,EAAmBJ,EAAKD,EAAQC,SAEtChB,EAAE,CAAEluB,OAAQiuB,EAAM0B,OAAO,EAAMC,OAAQpB,GAA0Be,GAAyBN,GAGnG,OAAOA,I,iBCtFTvzB,EAAOC,QAAU,CACfk0B,YAAa,EACbC,oBAAqB,EACrBC,aAAc,EACdC,eAAgB,EAChBC,YAAa,EACbC,cAAe,EACfC,aAAc,EACdC,qBAAsB,EACtBC,SAAU,EACVC,kBAAmB,EACnBC,eAAgB,EAChBC,gBAAiB,EACjBC,kBAAmB,EACnBC,UAAW,EACXC,cAAe,EACfC,aAAc,EACdC,SAAU,EACVC,iBAAkB,EAClBC,OAAQ,EACRC,YAAa,EACbC,cAAe,EACfC,cAAe,EACfC,eAAgB,EAChBC,aAAc,EACdC,cAAe,EACfC,iBAAkB,EAClBC,iBAAkB,EAClBC,eAAgB,EAChBC,iBAAkB,EAClBC,cAAe,EACfC,UAAW,I,iBCjCbj2B,EAAOC,QAA2B,iBAAV8B,Q,qBCAxB,IAAIm0B,EAAY,EAAQ,MACpBC,EAAS,EAAQ,MAErBn2B,EAAOC,QAAU,oBAAoBkF,KAAK+wB,SAAgC/tB,IAAlBguB,EAAOC,Q,qBCH/D,IAAIF,EAAY,EAAQ,MAExBl2B,EAAOC,QAAU,qCAAqCkF,KAAK+wB,I,qBCF3D,IAAIG,EAAU,EAAQ,MAClBF,EAAS,EAAQ,MAErBn2B,EAAOC,QAAqC,WAA3Bo2B,EAAQF,EAAOG,U,qBCHhC,IAAIJ,EAAY,EAAQ,MAExBl2B,EAAOC,QAAU,qBAAqBkF,KAAK+wB,I,qBCF3C,IAAIK,EAAY,EAAQ,MAGxBv2B,EAAOC,QAAU,SAAUuE,EAAIgyB,EAAMh2B,GAEnC,GADA+1B,EAAU/xB,QACG2D,IAATquB,EAAoB,OAAOhyB,EAC/B,OAAQhE,GACN,KAAK,EAAG,OAAO,WACb,OAAOgE,EAAGpD,KAAKo1B,IAEjB,KAAK,EAAG,OAAO,SAAUC,GACvB,OAAOjyB,EAAGpD,KAAKo1B,EAAMC,IAEvB,KAAK,EAAG,OAAO,SAAUA,EAAGC,GAC1B,OAAOlyB,EAAGpD,KAAKo1B,EAAMC,EAAGC,IAE1B,KAAK,EAAG,OAAO,SAAUD,EAAGC,EAAGC,GAC7B,OAAOnyB,EAAGpD,KAAKo1B,EAAMC,EAAGC,EAAGC,IAG/B,OAAO,WACL,OAAOnyB,EAAGzD,MAAMy1B,EAAMj2B,c,qBCrB1B,IAAI81B,EAAU,EAAQ,KAClBjE,EAAY,EAAQ,MAGpBtB,EAFkB,EAAQ,KAEfN,CAAgB,YAE/BxwB,EAAOC,QAAU,SAAUqwB,GACzB,GAAUnoB,MAANmoB,EAAiB,OAAOA,EAAGQ,IAC1BR,EAAG,eACH8B,EAAUiE,EAAQ/F,M,oBCTzB,IAAI6F,EAAS,EAAQ,MAErBn2B,EAAOC,QAAU,SAAUw2B,EAAGC,GAC5B,IAAIrW,EAAU8V,EAAO9V,QACjBA,GAAWA,EAAQsH,QACA,IAArBpnB,UAAUC,OAAe6f,EAAQsH,MAAM8O,GAAKpW,EAAQsH,MAAM8O,EAAGC,M,oBCLjE,IAAIE,EAAa,EAAQ,MAEzB52B,EAAOC,QAAU22B,EAAW,WAAY,oB,qBCFxC,IAAIpG,EAAkB,EAAQ,MAC1B4B,EAAY,EAAQ,MAEpBtB,EAAWN,EAAgB,YAC3BG,EAAiB/vB,MAAMM,UAG3BlB,EAAOC,QAAU,SAAUqwB,GACzB,YAAcnoB,IAAPmoB,IAAqB8B,EAAUxxB,QAAU0vB,GAAMK,EAAeG,KAAcR,K,oBCRrF,IAAIuG,EAAW,EAAQ,MACnBC,EAAwB,EAAQ,MAChCC,EAAW,EAAQ,MACnB1pB,EAAO,EAAQ,MACf2pB,EAAoB,EAAQ,MAC5BC,EAAgB,EAAQ,MAExBC,EAAS,SAAUC,EAAS5vB,GAC9B3F,KAAKu1B,QAAUA,EACfv1B,KAAK2F,OAASA,GAGhBvH,EAAOC,QAAU,SAAUm3B,EAAUC,EAAiBxzB,GACpD,IAKI6F,EAAU4tB,EAAQryB,EAAOzE,EAAQ+G,EAAQ2pB,EAAMqG,EAL/Cf,EAAO3yB,GAAWA,EAAQ2yB,KAC1BgB,KAAgB3zB,IAAWA,EAAQ2zB,YACnCC,KAAiB5zB,IAAWA,EAAQ4zB,aACpCC,KAAiB7zB,IAAWA,EAAQ6zB,aACpClzB,EAAK6I,EAAKgqB,EAAiBb,EAAM,EAAIgB,EAAaE,GAGlDC,EAAO,SAAUC,GAEnB,OADIluB,GAAUutB,EAAcvtB,GACrB,IAAIwtB,GAAO,EAAMU,IAGtBC,EAAS,SAAU3yB,GACrB,OAAIsyB,GACFX,EAAS3xB,GACFwyB,EAAclzB,EAAGU,EAAM,GAAIA,EAAM,GAAIyyB,GAAQnzB,EAAGU,EAAM,GAAIA,EAAM,KAChEwyB,EAAclzB,EAAGU,EAAOyyB,GAAQnzB,EAAGU,IAG9C,GAAIuyB,EACF/tB,EAAW0tB,MACN,CAEL,GAAqB,mBADrBE,EAASN,EAAkBI,IACM,MAAMtvB,UAAU,0BAEjD,GAAIgvB,EAAsBQ,GAAS,CACjC,IAAKryB,EAAQ,EAAGzE,EAASu2B,EAASK,EAAS52B,QAASA,EAASyE,EAAOA,IAElE,IADAsC,EAASswB,EAAOT,EAASnyB,MACXsC,aAAkB2vB,EAAQ,OAAO3vB,EAC/C,OAAO,IAAI2vB,GAAO,GAEtBxtB,EAAW4tB,EAAOl2B,KAAKg2B,GAIzB,IADAlG,EAAOxnB,EAASwnB,OACPqG,EAAOrG,EAAK9vB,KAAKsI,IAAWynB,MAAM,CACzC,IACE5pB,EAASswB,EAAON,EAAKryB,OACrB,MAAOyiB,GAEP,MADAsP,EAAcvtB,GACRie,EAER,GAAqB,iBAAVpgB,GAAsBA,GAAUA,aAAkB2vB,EAAQ,OAAO3vB,EAC5E,OAAO,IAAI2vB,GAAO,K,qBCxDtB,IAAIL,EAAW,EAAQ,MAEvB72B,EAAOC,QAAU,SAAUyJ,GACzB,IAAIouB,EAAepuB,EAAiB,OACpC,QAAqBvB,IAAjB2vB,EACF,OAAOjB,EAASiB,EAAa12B,KAAKsI,IAAWxE,Q,kCCJjD,IAcI+sB,EAAmB8F,EAAmCC,EAdtDjG,EAAQ,EAAQ,MAChBjlB,EAAiB,EAAQ,MACzB4lB,EAA8B,EAAQ,MACtCnJ,EAAM,EAAQ,MACdiH,EAAkB,EAAQ,MAC1BoC,EAAU,EAAQ,MAElB9B,EAAWN,EAAgB,YAC3BsC,GAAyB,EASzB,GAAGhuB,OAGC,SAFNkzB,EAAgB,GAAGlzB,SAIjBizB,EAAoCjrB,EAAeA,EAAekrB,OACxB/2B,OAAOC,YAAW+wB,EAAoB8F,GAHlDjF,GAAyB,GAO3D,IAAImF,EAA8C9vB,MAArB8pB,GAAkCF,GAAM,WACnE,IAAI5sB,EAAO,GAEX,OAAO8sB,EAAkBnB,GAAU1vB,KAAK+D,KAAUA,KAGhD8yB,IAAwBhG,EAAoB,IAI1CW,IAAWqF,GAA4B1O,EAAI0I,EAAmBnB,IAClE4B,EAA4BT,EAAmBnB,GA5BhC,WAAc,OAAOlvB,QA+BtC5B,EAAOC,QAAU,CACfgyB,kBAAmBA,EACnBa,uBAAwBA,I,iBC5C1B9yB,EAAOC,QAAU,I,qBCAjB,IAgBI8I,EAAOmvB,EAAMC,EAAMC,EAAQC,EAAQ7f,EAAM8f,EAASC,EAhBlDpC,EAAS,EAAQ,MACjB9rB,EAA2B,UAC3BmuB,EAAY,WACZC,EAAS,EAAQ,MACjBC,EAAgB,EAAQ,MACxBC,EAAkB,EAAQ,MAC1BC,EAAU,EAAQ,MAElB5O,EAAmBmM,EAAOnM,kBAAoBmM,EAAO0C,uBACrDjiB,EAAWuf,EAAOvf,SAClB0f,EAAUH,EAAOG,QACjBlG,EAAU+F,EAAO/F,QAEjB0I,EAA2BzuB,EAAyB8rB,EAAQ,kBAC5D4C,EAAiBD,GAA4BA,EAAyB5zB,MAKrE6zB,IACHhwB,EAAQ,WACN,IAAIsnB,EAAQ7rB,EAEZ,IADIo0B,IAAYvI,EAASiG,EAAQ0C,SAAS3I,EAAO4I,OAC1Cf,GAAM,CACX1zB,EAAK0zB,EAAK1zB,GACV0zB,EAAOA,EAAKhH,KACZ,IACE1sB,IACA,MAAOmjB,GAGP,MAFIuQ,EAAME,IACLD,OAAOhwB,EACNwf,GAERwQ,OAAOhwB,EACLkoB,GAAQA,EAAO6I,SAKhBT,GAAWG,GAAYD,IAAmB3O,IAAoBpT,GAQvD8hB,GAAiBtI,GAAWA,EAAQ+I,UAE9Cb,EAAUlI,EAAQ+I,aAAQhxB,IAElBzE,YAAc0sB,EACtBmI,EAAOD,EAAQC,KACfH,EAAS,WACPG,EAAKn3B,KAAKk3B,EAASvvB,KAIrBqvB,EADSQ,EACA,WACPtC,EAAQ8C,SAASrwB,IASV,WAEPyvB,EAAUp3B,KAAK+0B,EAAQptB,KA9BzBsvB,GAAS,EACT7f,EAAO5B,EAASyiB,eAAe,IAC/B,IAAIrP,EAAiBjhB,GAAO4N,QAAQ6B,EAAM,CAAEqT,eAAe,IAC3DuM,EAAS,WACP5f,EAAK8gB,KAAOjB,GAAUA,KA+B5Br4B,EAAOC,QAAU84B,GAAkB,SAAUv0B,GAC3C,IAAI+0B,EAAO,CAAE/0B,GAAIA,EAAI0sB,UAAM/oB,GACvBgwB,IAAMA,EAAKjH,KAAOqI,GACjBrB,IACHA,EAAOqB,EACPnB,KACAD,EAAOoB,I,mBChFX,IAmDIC,EAnDA3C,EAAW,EAAQ,MACnBnsB,EAAmB,EAAQ,MAC3B+uB,EAAc,EAAQ,KACtBC,EAAa,EAAQ,MACrBC,EAAO,EAAQ,KACfC,EAAwB,EAAQ,KAChCC,EAAY,EAAQ,MAMpBC,EAAWD,EAAU,YAErBE,EAAmB,aAEnBC,EAAY,SAAUC,GACxB,MAAOC,WAAmBD,EAAnBC,gBAILC,EAA4B,SAAUX,GACxCA,EAAgBY,MAAMJ,EAAU,KAChCR,EAAgBa,QAChB,IAAIC,EAAOd,EAAgBe,aAAat5B,OAExC,OADAu4B,EAAkB,KACXc,GA0BLE,EAAkB,WACpB,IACEhB,EAAkB,IAAIiB,cAAc,YACpC,MAAO9S,IAzBoB,IAIzB+S,EAFAC,EAwBJH,EAAqC,oBAAZ5jB,SACrBA,SAASoiB,QAAUQ,EACjBW,EAA0BX,KA1B5BmB,EAASf,EAAsB,WAG5B/rB,MAAMC,QAAU,OACvB6rB,EAAKiB,YAAYD,GAEjBA,EAAOE,IAAMtK,OALJ,gBAMTmK,EAAiBC,EAAOG,cAAclkB,UACvBmkB,OACfL,EAAeN,MAAMJ,EAAU,sBAC/BU,EAAeL,QACRK,EAAe1I,GAiBlBmI,EAA0BX,GAE9B,IADA,IAAIh5B,EAASi5B,EAAYj5B,OAClBA,YAAiBg6B,EAAyB,UAAEf,EAAYj5B,IAC/D,OAAOg6B,KAGTd,EAAWI,IAAY,EAIvB95B,EAAOC,QAAUgB,OAAOwK,QAAU,SAAgBkmB,EAAGqJ,GACnD,IAAIzzB,EAQJ,OAPU,OAANoqB,GACFoI,EAA0B,UAAIlD,EAASlF,GACvCpqB,EAAS,IAAIwyB,EACbA,EAA0B,UAAI,KAE9BxyB,EAAOuyB,GAAYnI,GACdpqB,EAASizB,SACMryB,IAAf6yB,EAA2BzzB,EAASmD,EAAiBnD,EAAQyzB,K,qBChFtE,IAAIC,EAAc,EAAQ,MACtBxK,EAAuB,EAAQ,MAC/BoG,EAAW,EAAQ,MACnBqE,EAAa,EAAQ,MAKzBl7B,EAAOC,QAAUg7B,EAAch6B,OAAOyJ,iBAAmB,SAA0BinB,EAAGqJ,GACpFnE,EAASlF,GAKT,IAJA,IAGIxwB,EAHA2D,EAAOo2B,EAAWF,GAClBx6B,EAASsE,EAAKtE,OACdyE,EAAQ,EAELzE,EAASyE,GAAOwrB,EAAqBG,EAAEe,EAAGxwB,EAAM2D,EAAKG,KAAU+1B,EAAW75B,IACjF,OAAOwwB,I,qBCfT,IAAIpI,EAAM,EAAQ,MACd4R,EAAW,EAAQ,MACnBtB,EAAY,EAAQ,MACpBuB,EAA2B,EAAQ,MAEnCtB,EAAWD,EAAU,YACrBwB,EAAkBp6B,OAAOC,UAK7BlB,EAAOC,QAAUm7B,EAA2Bn6B,OAAO6L,eAAiB,SAAU6kB,GAE5E,OADAA,EAAIwJ,EAASxJ,GACTpI,EAAIoI,EAAGmI,GAAkBnI,EAAEmI,GACH,mBAAjBnI,EAAEjuB,aAA6BiuB,aAAaA,EAAEjuB,YAChDiuB,EAAEjuB,YAAYxC,UACdywB,aAAa1wB,OAASo6B,EAAkB,O,qBChBnD,IAAIC,EAAqB,EAAQ,MAC7B7B,EAAc,EAAQ,KAK1Bz5B,EAAOC,QAAUgB,OAAO6D,MAAQ,SAAc6sB,GAC5C,OAAO2J,EAAmB3J,EAAG8H,K,qBCN/B,IAAI5C,EAAW,EAAQ,MACnB0E,EAAqB,EAAQ,MAMjCv7B,EAAOC,QAAUgB,OAAO4K,iBAAmB,aAAe,GAAK,WAC7D,IAEI2vB,EAFAC,GAAiB,EACjBt2B,EAAO,GAEX,KAEEq2B,EAASv6B,OAAOoJ,yBAAyBpJ,OAAOC,UAAW,aAAakoB,KACjEhoB,KAAK+D,EAAM,IAClBs2B,EAAiBt2B,aAAgBvE,MACjC,MAAO+mB,IACT,OAAO,SAAwBgK,EAAGsC,GAKhC,OAJA4C,EAASlF,GACT4J,EAAmBtH,GACfwH,EAAgBD,EAAOp6B,KAAKuwB,EAAGsC,GAC9BtC,EAAE7lB,UAAYmoB,EACZtC,GAfoD,QAiBzDxpB,I,iCCxBN,IAAIopB,EAAwB,EAAQ,MAChC8E,EAAU,EAAQ,KAItBr2B,EAAOC,QAAUsxB,EAAwB,GAAGvwB,SAAW,WACrD,MAAO,WAAaq1B,EAAQz0B,MAAQ,M,oBCPtC,IAAIu0B,EAAS,EAAQ,MAErBn2B,EAAOC,QAAUk2B,G,iBCFjBn2B,EAAOC,QAAU,SAAUmxB,GACzB,IACE,MAAO,CAAEzJ,OAAO,EAAOziB,MAAOksB,KAC9B,MAAOzJ,GACP,MAAO,CAAEA,OAAO,EAAMziB,MAAOyiB,M,qBCJjC,IAAIgL,EAAW,EAAQ,MAEvB3yB,EAAOC,QAAU,SAAUqE,EAAQu2B,EAAKh3B,GACtC,IAAK,IAAI1C,KAAO05B,EAAKlI,EAASruB,EAAQnD,EAAK05B,EAAI15B,GAAM0C,GACrD,OAAOS,I,kCCHT,IAAIsyB,EAAa,EAAQ,MACrBnG,EAAuB,EAAQ,MAC/BD,EAAkB,EAAQ,MAC1ByK,EAAc,EAAQ,MAEtBS,EAAUlL,EAAgB,WAE9BxwB,EAAOC,QAAU,SAAU07B,GACzB,IAAI5wB,EAAc6rB,EAAW+E,GACzB3yB,EAAiBynB,EAAqBG,EAEtCqK,GAAelwB,IAAgBA,EAAY2wB,IAC7C1yB,EAAe+B,EAAa2wB,EAAS,CACnC/wB,cAAc,EACdwe,IAAK,WAAc,OAAOvnB,U,qBCfhC,IAAIoH,EAAiB,UACjBugB,EAAM,EAAQ,MAGdkI,EAFkB,EAAQ,KAEVjB,CAAgB,eAEpCxwB,EAAOC,QAAU,SAAUqwB,EAAIsL,EAAKC,GAC9BvL,IAAO/G,EAAI+G,EAAKuL,EAASvL,EAAKA,EAAGpvB,UAAWuwB,IAC9CzoB,EAAesnB,EAAImB,EAAe,CAAE9mB,cAAc,EAAMzF,MAAO02B,M,qBCRnE,IAAIE,EAAY,EAAQ,MACpB96B,EAAW,EAAQ,MACnB+6B,EAAyB,EAAQ,MAGjCC,EAAe,SAAUC,GAC3B,OAAO,SAAUC,EAAOC,GACtB,IAGIC,EAAOC,EAHPC,EAAIt7B,EAAS+6B,EAAuBG,IACpCla,EAAW8Z,EAAUK,GACrBrP,EAAOwP,EAAE97B,OAEb,OAAIwhB,EAAW,GAAKA,GAAY8K,EAAamP,EAAoB,QAAK9zB,GACtEi0B,EAAQE,EAAEC,WAAWva,IACN,OAAUoa,EAAQ,OAAUpa,EAAW,IAAM8K,IACtDuP,EAASC,EAAEC,WAAWva,EAAW,IAAM,OAAUqa,EAAS,MAC1DJ,EAAoBK,EAAEE,OAAOxa,GAAYoa,EACzCH,EAAoBK,EAAEr1B,MAAM+a,EAAUA,EAAW,GAA+Bqa,EAAS,OAAlCD,EAAQ,OAAU,IAA0B,QAI7Gp8B,EAAOC,QAAU,CAGfw8B,OAAQT,GAAa,GAGrBQ,OAAQR,GAAa,K,oBC1BvB,IAgBIU,EAAUC,EAAOC,EAASC,EAhB1B1G,EAAS,EAAQ,MACjBpE,EAAQ,EAAQ,MAChB1kB,EAAO,EAAQ,MACfssB,EAAO,EAAQ,KACfxrB,EAAgB,EAAQ,KACxBsqB,EAAS,EAAQ,MACjBG,EAAU,EAAQ,MAElBxP,EAAM+M,EAAO2G,aACb75B,EAAQkzB,EAAO4G,eACfzG,EAAUH,EAAOG,QACjB0G,EAAiB7G,EAAO6G,eACxBC,EAAW9G,EAAO8G,SAClBrW,EAAU,EACVsW,EAAQ,GACRC,EAAqB,qBAGzB,IAEET,EAAWvG,EAAOuG,SAClB,MAAO/U,IAET,IAAIyV,EAAM,SAAUC,GAElB,GAAIH,EAAM/8B,eAAek9B,GAAK,CAC5B,IAAI74B,EAAK04B,EAAMG,UACRH,EAAMG,GACb74B,MAIA84B,EAAS,SAAUD,GACrB,OAAO,WACLD,EAAIC,KAIJn7B,EAAW,SAAUuZ,GACvB2hB,EAAI3hB,EAAM6d,OAGRiE,EAAO,SAAUF,GAEnBlH,EAAOqH,YAAYjN,OAAO8M,GAAKX,EAASe,SAAW,KAAOf,EAASgB,OAIhEtU,GAAQnmB,IACXmmB,EAAM,SAAsB5kB,GAI1B,IAHA,IAAIyD,EAAO,GACP01B,EAAkBp9B,UAAUC,OAC5BF,EAAI,EACDq9B,EAAkBr9B,GAAG2H,EAAKtH,KAAKJ,UAAUD,MAMhD,OALA48B,IAAQtW,GAAW,YAEH,mBAANpiB,EAAmBA,EAAKuB,SAASvB,IAAKzD,WAAMoH,EAAWF,IAEjE00B,EAAM/V,GACCA,GAET3jB,EAAQ,SAAwBo6B,UACvBH,EAAMG,IAGXzE,EACF+D,EAAQ,SAAUU,GAChB/G,EAAQ8C,SAASkE,EAAOD,KAGjBJ,GAAYA,EAAS32B,IAC9Bq2B,EAAQ,SAAUU,GAChBJ,EAAS32B,IAAIg3B,EAAOD,KAIbL,IAAmBvE,GAE5BoE,GADAD,EAAU,IAAII,GACCY,MACfhB,EAAQiB,MAAMC,UAAY57B,EAC1By6B,EAAQtvB,EAAKwvB,EAAKW,YAAaX,EAAM,IAIrC1G,EAAOjf,kBACe,mBAAfsmB,cACNrH,EAAO4H,eACRrB,GAAkC,UAAtBA,EAASe,WACpB1L,EAAMwL,IAEPZ,EAAQY,EACRpH,EAAOjf,iBAAiB,UAAWhV,GAAU,IAG7Cy6B,EADSQ,KAAsBhvB,EAAc,UACrC,SAAUkvB,GAChB1D,EAAKiB,YAAYzsB,EAAc,WAA6B,mBAAI,WAC9DwrB,EAAKqE,YAAYp8B,MACjBw7B,EAAIC,KAKA,SAAUA,GAChBh1B,WAAWi1B,EAAOD,GAAK,KAK7Br9B,EAAOC,QAAU,CACfmpB,IAAKA,EACLnmB,MAAOA,I,qBC9GT,IAGIkC,EAAO,GAEXA,EALsB,EAAQ,KAEVqrB,CAAgB,gBAGd,IAEtBxwB,EAAOC,QAA2B,eAAjBswB,OAAOprB,I,kCCNxB,IAAIqtB,EAAI,EAAQ,MACZ1lB,EAAiB,EAAQ,MACzBjB,EAAiB,EAAQ,MACzBJ,EAAS,EAAQ,IACjBinB,EAA8B,EAAQ,MACtCR,EAA2B,EAAQ,MACnC+L,EAAU,EAAQ,KAClBj9B,EAAW,EAAQ,MAEnBk9B,EAAkB,SAAwBC,EAAQ7wB,GACpD,IAAIkpB,EAAO50B,KACX,KAAM40B,aAAgB0H,GAAkB,OAAO,IAAIA,EAAgBC,EAAQ7wB,GACvEzB,IAEF2qB,EAAO3qB,EAAe,IAAItI,WAAM4E,GAAY2E,EAAe0pB,UAE7CruB,IAAZmF,GAAuBolB,EAA4B8D,EAAM,UAAWx1B,EAASsM,IACjF,IAAI8wB,EAAc,GAGlB,OAFAH,EAAQE,EAAQC,EAAYz9B,KAAM,CAAE61B,KAAM4H,IAC1C1L,EAA4B8D,EAAM,SAAU4H,GACrC5H,GAGT0H,EAAgBh9B,UAAYuK,EAAOlI,MAAMrC,UAAW,CAClDwC,YAAawuB,EAAyB,EAAGgM,GACzC5wB,QAAS4kB,EAAyB,EAAG,IACrCrB,KAAMqB,EAAyB,EAAG,oBAKpCM,EAAE,CAAE2D,QAAQ,GAAQ,CAClBkI,eAAgBH,K,kCChClB,IAAII,EAAkB,EAAQ,MAC1BC,EAAmB,EAAQ,MAC3BnM,EAAY,EAAQ,MACpBoM,EAAsB,EAAQ,MAC9BC,EAAiB,EAAQ,KAEzBC,EAAiB,iBACjBC,EAAmBH,EAAoBpV,IACvCwV,EAAmBJ,EAAoBK,UAAUH,GAYrD1+B,EAAOC,QAAUw+B,EAAe79B,MAAO,SAAS,SAAUk+B,EAAUC,GAClEJ,EAAiB/8B,KAAM,CACrB6E,KAAMi4B,EACNp6B,OAAQg6B,EAAgBQ,GACxB75B,MAAO,EACP85B,KAAMA,OAIP,WACD,IAAIvpB,EAAQopB,EAAiBh9B,MACzB0C,EAASkR,EAAMlR,OACfy6B,EAAOvpB,EAAMupB,KACb95B,EAAQuQ,EAAMvQ,QAClB,OAAKX,GAAUW,GAASX,EAAO9D,QAC7BgV,EAAMlR,YAAS6D,EACR,CAAEjD,WAAOiD,EAAWgpB,MAAM,IAEvB,QAAR4N,EAAuB,CAAE75B,MAAOD,EAAOksB,MAAM,GACrC,UAAR4N,EAAyB,CAAE75B,MAAOZ,EAAOW,GAAQksB,MAAM,GACpD,CAAEjsB,MAAO,CAACD,EAAOX,EAAOW,IAASksB,MAAM,KAC7C,UAKHiB,EAAU4M,UAAY5M,EAAUxxB,MAGhC29B,EAAiB,QACjBA,EAAiB,UACjBA,EAAiB,Y,qBCpDjB,IAAIhN,EAAwB,EAAQ,MAChCoB,EAAW,EAAQ,MACnB3xB,EAAW,EAAQ,KAIlBuwB,GACHoB,EAAS1xB,OAAOC,UAAW,WAAYF,EAAU,CAAEi+B,QAAQ,K,kCCN7D,IAAIzM,EAAI,EAAQ,MACZ+D,EAAY,EAAQ,MACpB2I,EAA6B,EAAQ,MACrCC,EAAU,EAAQ,MAClBlB,EAAU,EAAQ,KAItBzL,EAAE,CAAEluB,OAAQ,UAAW86B,MAAM,GAAQ,CACnCC,WAAY,SAAoBjI,GAC9B,IAAIkI,EAAI19B,KACJ29B,EAAaL,EAA2BtO,EAAE0O,GAC1CnG,EAAUoG,EAAWpG,QACrBqG,EAASD,EAAWC,OACpBj4B,EAAS43B,GAAQ,WACnB,IAAIM,EAAiBlJ,EAAU+I,EAAEnG,SAC7BnF,EAAS,GACTpN,EAAU,EACV8Y,EAAY,EAChBzB,EAAQ7G,GAAU,SAAUkB,GAC1B,IAAIrzB,EAAQ2hB,IACR+Y,GAAgB,EACpB3L,EAAOrzB,UAAKwH,GACZu3B,IACAD,EAAer+B,KAAKk+B,EAAGhH,GAASC,MAAK,SAAUrzB,GACzCy6B,IACJA,GAAgB,EAChB3L,EAAO/uB,GAAS,CAAE26B,OAAQ,YAAa16B,MAAOA,KAC5Cw6B,GAAavG,EAAQnF,OACtB,SAAUrM,GACPgY,IACJA,GAAgB,EAChB3L,EAAO/uB,GAAS,CAAE26B,OAAQ,WAAYC,OAAQlY,KAC5C+X,GAAavG,EAAQnF,YAGzB0L,GAAavG,EAAQnF,MAGzB,OADIzsB,EAAOogB,OAAO6X,EAAOj4B,EAAOrC,OACzBq6B,EAAWjH,Y,kCCvCtB,IAAI9F,EAAI,EAAQ,MACZ+D,EAAY,EAAQ,MACpBK,EAAa,EAAQ,MACrBsI,EAA6B,EAAQ,MACrCC,EAAU,EAAQ,MAClBlB,EAAU,EAAQ,KAElB6B,EAAoB,0BAIxBtN,EAAE,CAAEluB,OAAQ,UAAW86B,MAAM,GAAQ,CACnCW,IAAK,SAAa3I,GAChB,IAAIkI,EAAI19B,KACJ29B,EAAaL,EAA2BtO,EAAE0O,GAC1CnG,EAAUoG,EAAWpG,QACrBqG,EAASD,EAAWC,OACpBj4B,EAAS43B,GAAQ,WACnB,IAAIM,EAAiBlJ,EAAU+I,EAAEnG,SAC7BgF,EAAS,GACTvX,EAAU,EACV8Y,EAAY,EACZM,GAAkB,EACtB/B,EAAQ7G,GAAU,SAAUkB,GAC1B,IAAIrzB,EAAQ2hB,IACRqZ,GAAkB,EACtB9B,EAAOx9B,UAAKwH,GACZu3B,IACAD,EAAer+B,KAAKk+B,EAAGhH,GAASC,MAAK,SAAUrzB,GACzC+6B,GAAmBD,IACvBA,GAAkB,EAClB7G,EAAQj0B,OACP,SAAUyiB,GACPsY,GAAmBD,IACvBC,GAAkB,EAClB9B,EAAOl5B,GAAS0iB,IACd+X,GAAaF,EAAO,IAAK5I,EAAW,kBAAhB,CAAmCuH,EAAQ2B,aAGnEJ,GAAaF,EAAO,IAAK5I,EAAW,kBAAhB,CAAmCuH,EAAQ2B,OAGnE,OADIv4B,EAAOogB,OAAO6X,EAAOj4B,EAAOrC,OACzBq6B,EAAWjH,Y,kCC1CtB,IAqDI4H,EAAUC,EAAsBC,EAAgBC,EArDhD7N,EAAI,EAAQ,MACZI,EAAU,EAAQ,MAClBuD,EAAS,EAAQ,MACjBS,EAAa,EAAQ,MACrB0J,EAAgB,EAAQ,MACxB3N,EAAW,EAAQ,MACnB4N,EAAc,EAAQ,MACtB10B,EAAiB,EAAQ,MACzBsmB,EAAiB,EAAQ,MACzBqO,EAAa,EAAQ,MACrBh6B,EAAW,EAAQ,KACnB+vB,EAAY,EAAQ,MACpBkK,EAAa,EAAQ,MACrBC,EAAgB,EAAQ,MACxBzC,EAAU,EAAQ,KAClB0C,EAA8B,EAAQ,MACtCC,EAAqB,EAAQ,MAC7BrH,EAAO,WACPsH,EAAY,EAAQ,MACpBpB,EAAiB,EAAQ,MACzBqB,EAAmB,EAAQ,KAC3B5B,EAA6B,EAAQ,MACrCC,EAAU,EAAQ,MAClBX,EAAsB,EAAQ,MAC9BuC,EAAW,EAAQ,MACnBvQ,EAAkB,EAAQ,MAC1BwQ,EAAa,EAAQ,MACrBpI,EAAU,EAAQ,MAClBqI,EAAa,EAAQ,MAErBvF,EAAUlL,EAAgB,WAC1B0Q,EAAU,UACVtC,EAAmBJ,EAAoBrV,IACvCwV,EAAmBH,EAAoBpV,IACvC+X,EAA0B3C,EAAoBK,UAAUqC,GACxDE,EAAyBd,GAAiBA,EAAcp/B,UACxDmgC,EAAqBf,EACrBgB,EAA8BF,EAC9Bt5B,EAAYquB,EAAOruB,UACnB8O,EAAWuf,EAAOvf,SAClB0f,EAAUH,EAAOG,QACjBiL,EAAuBrC,EAA2BtO,EAClD4Q,EAA8BD,EAC9BE,KAAoB7qB,GAAYA,EAAS8qB,aAAevL,EAAOwL,eAC/DC,EAAyD,mBAAzBC,sBAChCC,EAAsB,qBAOtBC,GAAc,EAGd1O,EAAS0N,EAASG,GAAS,WAC7B,IAAIc,EAA6BtB,EAAcW,GAC3CY,EAAyBD,IAA+BzR,OAAO8Q,GAInE,IAAKY,GAAyC,KAAfhB,EAAmB,OAAO,EAEzD,GAAIrO,IAAY0O,EAAqC,QAAG,OAAO,EAI/D,GAAIL,GAAc,IAAM,cAAc97B,KAAK68B,GAA6B,OAAO,EAE/E,IAAI1J,EAAU,IAAI+I,GAAmB,SAAUlI,GAAWA,EAAQ,MAC9D+I,EAAc,SAAU9Q,GAC1BA,GAAK,eAA6B,gBAKpC,OAHkBkH,EAAQ50B,YAAc,IAC5Bg4B,GAAWwG,IACvBH,EAAczJ,EAAQC,MAAK,yBAAwC2J,KAG3DD,GAA0BjB,IAAeY,KAG/CO,GAAsB9O,IAAWsN,GAA4B,SAAUvJ,GACzEiK,EAAmBe,IAAIhL,GAAiB,OAAE,kBAIxCiL,GAAa,SAAU/R,GACzB,IAAIiI,EACJ,SAAO/xB,EAAS8pB,IAAkC,mBAAnBiI,EAAOjI,EAAGiI,QAAsBA,GAG7DH,GAAS,SAAU5iB,EAAO8sB,GAC5B,IAAI9sB,EAAM+sB,SAAV,CACA/sB,EAAM+sB,UAAW,EACjB,IAAIC,EAAQhtB,EAAMitB,UAClB5B,GAAU,WAKR,IAJA,IAAI37B,EAAQsQ,EAAMtQ,MACdw9B,EAjDQ,GAiDHltB,EAAMA,MACXvQ,EAAQ,EAELu9B,EAAMhiC,OAASyE,GAAO,CAC3B,IAKIsC,EAAQgxB,EAAMoK,EALdC,EAAWJ,EAAMv9B,KACjBzC,EAAUkgC,EAAKE,EAASF,GAAKE,EAASC,KACtC1J,EAAUyJ,EAASzJ,QACnBqG,EAASoD,EAASpD,OAClBxG,EAAS4J,EAAS5J,OAEtB,IACMx2B,GACGkgC,IA1DC,IA2DAltB,EAAMstB,WAAyBC,GAAkBvtB,GACrDA,EAAMstB,UA7DJ,IA+DY,IAAZtgC,EAAkB+E,EAASrC,GAEzB8zB,GAAQA,EAAOE,QACnB3xB,EAAS/E,EAAQ0C,GACb8zB,IACFA,EAAOC,OACP0J,GAAS,IAGTp7B,IAAWq7B,EAAStK,QACtBkH,EAAO13B,EAAU,yBACRywB,EAAO8J,GAAW96B,IAC3BgxB,EAAKn3B,KAAKmG,EAAQ4xB,EAASqG,GACtBrG,EAAQ5xB,IACVi4B,EAAOt6B,GACd,MAAOyiB,GACHqR,IAAW2J,GAAQ3J,EAAOC,OAC9BuG,EAAO7X,IAGXnS,EAAMitB,UAAY,GAClBjtB,EAAM+sB,UAAW,EACbD,IAAa9sB,EAAMstB,WAAWE,GAAYxtB,QAI9CmsB,GAAgB,SAAU9Q,EAAMyH,EAASuH,GAC3C,IAAIpkB,EAAOjZ,EACPi/B,IACFhmB,EAAQ7E,EAAS8qB,YAAY,UACvBpJ,QAAUA,EAChB7c,EAAMokB,OAASA,EACfpkB,EAAMwnB,UAAUpS,GAAM,GAAO,GAC7BsF,EAAOwL,cAAclmB,IAChBA,EAAQ,CAAE6c,QAASA,EAASuH,OAAQA,IACtC+B,IAA2Bp/B,EAAU2zB,EAAO,KAAOtF,IAAQruB,EAAQiZ,GAC/DoV,IAASiR,GAAqBhB,EAAiB,8BAA+BjB,IAGrFmD,GAAc,SAAUxtB,GAC1B+jB,EAAKn4B,KAAK+0B,GAAQ,WAChB,IAGI5uB,EAHA+wB,EAAU9iB,EAAM0tB,OAChBh+B,EAAQsQ,EAAMtQ,MAGlB,GAFmBi+B,GAAY3tB,KAG7BjO,EAAS43B,GAAQ,WACXvG,EACFtC,EAAQ8M,KAAK,qBAAsBl+B,EAAOozB,GACrCqJ,GAAcG,EAAqBxJ,EAASpzB,MAGrDsQ,EAAMstB,UAAYlK,GAAWuK,GAAY3tB,GAlH/B,EADF,EAoHJjO,EAAOogB,OAAO,MAAMpgB,EAAOrC,UAKjCi+B,GAAc,SAAU3tB,GAC1B,OA1HY,IA0HLA,EAAMstB,YAA0BttB,EAAM6a,QAG3C0S,GAAoB,SAAUvtB,GAChC+jB,EAAKn4B,KAAK+0B,GAAQ,WAChB,IAAImC,EAAU9iB,EAAM0tB,OAChBtK,EACFtC,EAAQ8M,KAAK,mBAAoB9K,GAC5BqJ,GAtIa,mBAsIoBrJ,EAAS9iB,EAAMtQ,WAIvDmI,GAAO,SAAU7I,EAAIgR,EAAO6tB,GAC9B,OAAO,SAAUn+B,GACfV,EAAGgR,EAAOtQ,EAAOm+B,KAIjBC,GAAiB,SAAU9tB,EAAOtQ,EAAOm+B,GACvC7tB,EAAM2b,OACV3b,EAAM2b,MAAO,EACTkS,IAAQ7tB,EAAQ6tB,GACpB7tB,EAAMtQ,MAAQA,EACdsQ,EAAMA,MAlJO,EAmJb4iB,GAAO5iB,GAAO,KAGZ+tB,GAAkB,SAAU/tB,EAAOtQ,EAAOm+B,GAC5C,IAAI7tB,EAAM2b,KAAV,CACA3b,EAAM2b,MAAO,EACTkS,IAAQ7tB,EAAQ6tB,GACpB,IACE,GAAI7tB,EAAM0tB,SAAWh+B,EAAO,MAAM4C,EAAU,oCAC5C,IAAIywB,EAAO8J,GAAWn9B,GAClBqzB,EACFsI,GAAU,WACR,IAAI2C,EAAU,CAAErS,MAAM,GACtB,IACEoH,EAAKn3B,KAAK8D,EACRmI,GAAKk2B,GAAiBC,EAAShuB,GAC/BnI,GAAKi2B,GAAgBE,EAAShuB,IAEhC,MAAOmS,GACP2b,GAAeE,EAAS7b,EAAOnS,QAInCA,EAAMtQ,MAAQA,EACdsQ,EAAMA,MA5KI,EA6KV4iB,GAAO5iB,GAAO,IAEhB,MAAOmS,GACP2b,GAAe,CAAEnS,MAAM,GAASxJ,EAAOnS,MAK3C,GAAI6d,IAaFiO,GAXAD,EAAqB,SAAiBoC,GACpChD,EAAW7+B,KAAMy/B,EAAoBH,GACrC3K,EAAUkN,GACVvD,EAAS9+B,KAAKQ,MACd,IAAI4T,EAAQopB,EAAiBh9B,MAC7B,IACE6hC,EAASp2B,GAAKk2B,GAAiB/tB,GAAQnI,GAAKi2B,GAAgB9tB,IAC5D,MAAOmS,GACP2b,GAAe9tB,EAAOmS,MAGuBzmB,WAEjDg/B,EAAW,SAAiBuD,GAC1B9E,EAAiB/8B,KAAM,CACrB6E,KAAMy6B,EACN/P,MAAM,EACNoR,UAAU,EACVlS,QAAQ,EACRoS,UAAW,GACXK,WAAW,EACXttB,MA7MQ,EA8MRtQ,WAAOiD,MAGFjH,UAAYq/B,EAAYe,EAA6B,CAG5D/I,KAAM,SAAcmL,EAAaC,GAC/B,IAAInuB,EAAQ2rB,EAAwBv/B,MAChCghC,EAAWrB,EAAqBX,EAAmBh/B,KAAMy/B,IAO7D,OANAuB,EAASF,GAA2B,mBAAfgB,GAA4BA,EACjDd,EAASC,KAA4B,mBAAdc,GAA4BA,EACnDf,EAAS5J,OAASJ,EAAUtC,EAAQ0C,YAAS7wB,EAC7CqN,EAAM6a,QAAS,EACf7a,EAAMitB,UAAU9hC,KAAKiiC,GA3Nb,GA4NJptB,EAAMA,OAAkB4iB,GAAO5iB,GAAO,GACnCotB,EAAStK,SAIlB,MAAS,SAAUqL,GACjB,OAAO/hC,KAAK22B,UAAKpwB,EAAWw7B,MAGhCxD,EAAuB,WACrB,IAAI7H,EAAU,IAAI4H,EACd1qB,EAAQopB,EAAiBtG,GAC7B12B,KAAK02B,QAAUA,EACf12B,KAAKu3B,QAAU9rB,GAAKk2B,GAAiB/tB,GACrC5T,KAAK49B,OAASnyB,GAAKi2B,GAAgB9tB,IAErC0pB,EAA2BtO,EAAI2Q,EAAuB,SAAUjC,GAC9D,OAAOA,IAAM+B,GAAsB/B,IAAMc,EACrC,IAAID,EAAqBb,GACzBkC,EAA4BlC,KAG7B1M,GAAmC,mBAAjB0N,GAA+Bc,IAA2BngC,OAAOC,WAAW,CACjGm/B,EAAae,EAAuB7I,KAE/BwJ,IAEHpP,EAASyO,EAAwB,QAAQ,SAAcsC,EAAaC,GAClE,IAAInN,EAAO50B,KACX,OAAO,IAAIy/B,GAAmB,SAAUlI,EAASqG,GAC/Ca,EAAWj/B,KAAKo1B,EAAM2C,EAASqG,MAC9BjH,KAAKmL,EAAaC,KAEpB,CAAE1E,QAAQ,IAGbtM,EAASyO,EAAwB,QAASE,EAAmC,MAAG,CAAErC,QAAQ,KAI5F,WACSmC,EAAuB19B,YAC9B,MAAOikB,KAGL9b,GACFA,EAAeu1B,EAAwBE,GAK7C9O,EAAE,CAAE2D,QAAQ,EAAMyN,MAAM,EAAM1P,OAAQb,GAAU,CAC9CjD,QAASiR,IAGXlP,EAAekP,EAAoBH,GAAS,GAAO,GACnDV,EAAWU,GAEXd,EAAiBxJ,EAAWsK,GAG5B1O,EAAE,CAAEluB,OAAQ48B,EAAS9B,MAAM,EAAMlL,OAAQb,GAAU,CAGjDmM,OAAQ,SAAgBjb,GACtB,IAAIgb,EAAagC,EAAqB3/B,MAEtC,OADA29B,EAAWC,OAAOp+B,UAAK+G,EAAWoc,GAC3Bgb,EAAWjH,WAItB9F,EAAE,CAAEluB,OAAQ48B,EAAS9B,MAAM,EAAMlL,OAAQtB,GAAWS,GAAU,CAG5D8F,QAAS,SAAiB1Z,GACxB,OAAOggB,EAAe7M,GAAWhxB,OAASw+B,EAAiBiB,EAAqBz/B,KAAM6d,MAI1F+S,EAAE,CAAEluB,OAAQ48B,EAAS9B,MAAM,EAAMlL,OAAQiO,IAAuB,CAG9DC,IAAK,SAAahL,GAChB,IAAIkI,EAAI19B,KACJ29B,EAAagC,EAAqBjC,GAClCnG,EAAUoG,EAAWpG,QACrBqG,EAASD,EAAWC,OACpBj4B,EAAS43B,GAAQ,WACnB,IAAI0E,EAAkBtN,EAAU+I,EAAEnG,SAC9BnF,EAAS,GACTpN,EAAU,EACV8Y,EAAY,EAChBzB,EAAQ7G,GAAU,SAAUkB,GAC1B,IAAIrzB,EAAQ2hB,IACR+Y,GAAgB,EACpB3L,EAAOrzB,UAAKwH,GACZu3B,IACAmE,EAAgBziC,KAAKk+B,EAAGhH,GAASC,MAAK,SAAUrzB,GAC1Cy6B,IACJA,GAAgB,EAChB3L,EAAO/uB,GAASC,IACdw6B,GAAavG,EAAQnF,MACtBwL,QAEHE,GAAavG,EAAQnF,MAGzB,OADIzsB,EAAOogB,OAAO6X,EAAOj4B,EAAOrC,OACzBq6B,EAAWjH,SAIpBwL,KAAM,SAAc1M,GAClB,IAAIkI,EAAI19B,KACJ29B,EAAagC,EAAqBjC,GAClCE,EAASD,EAAWC,OACpBj4B,EAAS43B,GAAQ,WACnB,IAAI0E,EAAkBtN,EAAU+I,EAAEnG,SAClC8E,EAAQ7G,GAAU,SAAUkB,GAC1BuL,EAAgBziC,KAAKk+B,EAAGhH,GAASC,KAAKgH,EAAWpG,QAASqG,SAI9D,OADIj4B,EAAOogB,OAAO6X,EAAOj4B,EAAOrC,OACzBq6B,EAAWjH,Y,kCCrYtB,IAAIkE,EAAS,eACTx7B,EAAW,EAAQ,MACnBw9B,EAAsB,EAAQ,MAC9BC,EAAiB,EAAQ,KAEzBsF,EAAkB,kBAClBpF,EAAmBH,EAAoBpV,IACvCwV,EAAmBJ,EAAoBK,UAAUkF,GAIrDtF,EAAelO,OAAQ,UAAU,SAAUuO,GACzCH,EAAiB/8B,KAAM,CACrB6E,KAAMs9B,EACNC,OAAQhjC,EAAS89B,GACjB75B,MAAO,OAIR,WACD,IAGIg/B,EAHAzuB,EAAQopB,EAAiBh9B,MACzBoiC,EAASxuB,EAAMwuB,OACf/+B,EAAQuQ,EAAMvQ,MAElB,OAAIA,GAAS++B,EAAOxjC,OAAe,CAAE0E,WAAOiD,EAAWgpB,MAAM,IAC7D8S,EAAQzH,EAAOwH,EAAQ/+B,GACvBuQ,EAAMvQ,OAASg/B,EAAMzjC,OACd,CAAE0E,MAAO++B,EAAO9S,MAAM,Q,qBC3B/B,EAAQ,O,qBCAR,EAAQ,O,qBCAR,EAAQ,O,kCCAR,IAAIqB,EAAI,EAAQ,MACZ0M,EAA6B,EAAQ,MACrCC,EAAU,EAAQ,MAItB3M,EAAE,CAAEluB,OAAQ,UAAW86B,MAAM,GAAQ,CACnC,IAAO,SAAU8E,GACf,IAAIC,EAAoBjF,EAA2BtO,EAAEhvB,MACjD2F,EAAS43B,EAAQ+E,GAErB,OADC38B,EAAOogB,MAAQwc,EAAkB3E,OAAS2E,EAAkBhL,SAAS5xB,EAAOrC,OACtEi/B,EAAkB7L,Y,qBCZ7B,IAAInC,EAAS,EAAQ,MACjBiO,EAAe,EAAQ,MACvBC,EAAuB,EAAQ,MAC/B3R,EAA8B,EAAQ,MACtClC,EAAkB,EAAQ,MAE1BM,EAAWN,EAAgB,YAC3BiB,EAAgBjB,EAAgB,eAChC8T,EAAcD,EAAqBrQ,OAEvC,IAAK,IAAIuQ,KAAmBH,EAAc,CACxC,IAAII,EAAarO,EAAOoO,GACpBE,EAAsBD,GAAcA,EAAWtjC,UACnD,GAAIujC,EAAqB,CAEvB,GAAIA,EAAoB3T,KAAcwT,EAAa,IACjD5R,EAA4B+R,EAAqB3T,EAAUwT,GAC3D,MAAO3c,GACP8c,EAAoB3T,GAAYwT,EAKlC,GAHKG,EAAoBhT,IACvBiB,EAA4B+R,EAAqBhT,EAAe8S,GAE9DH,EAAaG,GAAkB,IAAK,IAAIG,KAAeL,EAEzD,GAAII,EAAoBC,KAAiBL,EAAqBK,GAAc,IAC1EhS,EAA4B+R,EAAqBC,EAAaL,EAAqBK,IACnF,MAAO/c,GACP8c,EAAoBC,GAAeL,EAAqBK,O,qBC5BhE,IAAIrU,EAAS,EAAQ,MACrB,EAAQ,MAERrwB,EAAOC,QAAUowB,G,0FCMJsU,EAAwD,SAAC15B,GACpE,IAAM25B,GAAWC,YAA8B,MAE/C,OACE,gBAAC,IAAD,CAAsBC,qBAAsB75B,EAAMgN,SAAS2sB,EAAU,IACnE,gBAACG,EAA2B95B,KAU5B85B,EAA4D,SAAC,GAAgB,IAAf9sB,EAAc,EAAdA,SAClE,GAA0B+sB,cAAsC,CAC9DC,MAAO,EACPC,WAAY,KACZC,uBAAwB,IAHnB3vB,EAAP,KAAcK,EAAd,KAMMV,GAAM0vB,YAA8B,MA0C1C,OAxCAO,sBAAgB,WACd,IAAMC,EAAKlwB,EAAImwB,QACf,GAAW,OAAPD,EAAa,CACf,IAAME,EAAU,WACd,IAAMN,EAAQzvB,EAAMyvB,MAGdO,EADSH,EAAGI,wBACWhsB,MAAQwrB,EAE/BS,EAAYF,GAAiBzjC,OAAO4jC,WAAc5jC,OAAO4jC,WAAaH,EAAgB,EAEtFI,EAA4C,OAArBpwB,EAAM0vB,YAAuB,IAAI3+B,MAAOs/B,UAAYrwB,EAAM0vB,WAAYW,UAAYC,IAC3GJ,IAAaT,IAAUzvB,EAAM2vB,uBAAyB,IAAMS,EAAsB,OACpF/vB,EAAS,CACPovB,MAAOS,EACPR,WAAY,IAAI3+B,KAChB4+B,uBAAyBS,EAAsB,KAAQ,EAAIpwB,EAAM2vB,uBAAyB,IAGhB,SAAxEY,aAAaC,QAAQ,gDACvB3lB,QAAQ4lB,IAAR,UAAsBhB,EAAtB,gBAA2CS,IAG+B,SAAxEK,aAAaC,QAAQ,gDACvB3lB,QAAQ4lB,IAAR,sEAAkFL,EAAlF,6BAAkIpwB,EAAM2vB,uBAAxI,MASN,OAJAE,EAAGnuB,iBAAiB,SAAUquB,GAC9BxjC,OAAOmV,iBAAiB,SAAUquB,GAClCA,IAEO,WACLF,EAAG9tB,oBAAoB,SAAUguB,GACjCxjC,OAAOwV,oBAAoB,SAAUguB,OAGxC,CAACpwB,EAAImwB,QAAS9vB,IAGf,gCACGyC,EAAS9C,EAAKK,EAAMyvB,U,4GCtEdiB,EAAY,SAACC,EAAgBC,GACxC,IAAMC,EAAqBngC,KAAKC,IAC9BigC,EAAW3sB,MAAQ0sB,EAAS1sB,MAC5B2sB,EAAW3wB,OAAS0wB,EAAS1wB,QAG/B,MAAO,CACLgE,MAAO4sB,EAAqBF,EAAS1sB,MACrChE,OAAQ4wB,EAAqBF,EAAS1wB,S,UCNpC6wB,EAAyB,CAC7B7sB,MAAO,IACPhE,OAAQ,KAaG8wB,EAA4C,SAACt7B,GAAW,IAAD,EAClE,OACE,gBAACu7B,EAAA,EAAD,CAAsB1B,qBACpB,uBAAKl3B,UAAW3C,EAAM2C,UAAWC,MAAK,2BAChC5C,EAAM6hB,YAD0B,QAClB,GACf7hB,EAAM4C,QAER5C,EAAMgN,WAGT,gBAACwuB,EAAwBx7B,KAKzBw7B,EAAmD,SAAC,GAAiE,IAAD,IAA/DxuB,EAA+D,EAA/DA,SAAUrK,EAAqD,EAArDA,UAAWC,EAA0C,EAA1CA,MAAOif,EAAmC,EAAnCA,KAAmC,IAA7B4Z,wBAA6B,SACxH,GAA0B1B,mBAA6C78B,IAAT2kB,EAAsB,CAClF6Z,aAAcT,EAAUI,EAAkBxZ,GAAMrT,MAChDmtB,cAAeV,EAAUI,EAAkBxZ,GAAMrX,QAC/C,MAHGD,EAAP,KAAcK,EAAd,KAKMgxB,GAAahC,YAA8B,OAEjDO,sBAAgB,WACd,QAAaj9B,IAAT2kB,EAAJ,CAIA,IAAMuY,EAAKwB,EAAWvB,QACtB,GAAW,OAAPD,EAAa,CACf,IAAMyB,EAAqB,WACzB,IAAMpY,EAAO2W,EAAGI,wBACZhsB,EAAQiV,EAAKjV,MACbhE,EAASiZ,EAAKjZ,OAEd4vB,EAAG0B,aAAetxB,IACpBA,EAAS4vB,EAAG0B,cAEV1B,EAAG2B,YAAcvtB,IACnBA,EAAQ4rB,EAAG2B,aAGbnxB,EAAS,OAAD,UACHL,EADG,CAENmxB,aAAcltB,EACdmtB,cAAenxB,MAKfixB,GACFrB,EAAGnuB,iBAAiB,UAAU,WAC5B4vB,OAGJA,QAED,CAACD,EAAWvB,QAASxY,EAAM4Z,IAE9B,IAAMO,EAA0C,OAAVzxB,EDhEjB,WAA6B,IAAD,uBAAxB0xB,EAAwB,yBAAxBA,EAAwB,gBACjD,GAAqB,IAAjBA,EAAM1mC,OACR,MAAM,IAAI+C,MAAM,uCAOlB,IAJA,IAAM4jC,EAAQD,EAAM5nB,KAAI,SAACwN,GAAD,OAAUA,EAAKrT,MAAQqT,EAAKrX,UAChD2xB,EAAiB,EACjBC,EAAwBF,EAAM,GAEzB7mC,EAAE,EAAGA,EAAG6mC,EAAM3mC,OAAQF,IACzB6mC,EAAM7mC,GAAK+mC,IACbA,EAAgBF,EAAM7mC,GACtB8mC,EAAiB9mC,GAIrB,OAAO4mC,EAAME,GCgD2CE,CACtDpB,EACEI,EACA,CACE7sB,MAAOjE,EAAMmxB,aACblxB,OAAQD,EAAMoxB,gBAGlB,CACEntB,MAAO,IACPhE,OAAQ,UAERtN,EAEJ,OACE,uBAAKyF,WAAW25B,QC/FM,2CD+F+B35B,GAAYC,MAAK,iBACjEo5B,EACCp5B,UAAS,KAEb,wBAAMsH,IAAK0xB,EAAYj5B,UClGR,uCDkGoCqK,GACnD,gBAAC,IAAD,CACErK,UCnGY,qCDoGZC,MAAO,CACL4L,OAAO,UAACwtB,aAAD,EAACA,EAAYxtB,aAAb,QAAsB,GAAK,GAClChE,QAAQ,UAACwxB,aAAD,EAACA,EAAYxxB,cAAb,QAAuB,GAAK,S,oFE/FzC+xB,E,uCCIQC,EAA0D,SAAC,GAA6B,IAA5BC,EAA2B,EAA3BA,QAASC,EAAkB,EAAlBA,aAChF,OACE,uBAAK/5B,UCfwB,0DDgB3B,sBAAIA,UCfW,8CDeiB85B,GAChC,uBAAK95B,UCfwB,4DDgB1B+5B,EAAaroB,KAAI,SAACsoB,GAAD,OAChB,gBAACC,EAAD,eACE1mC,IAAG,eAAiBymC,EAAYvK,IAC5BuK,UAQVC,EAAyC,SAAC,GAAoC,IAAnCH,EAAkC,EAAlCA,QAASE,EAAyB,EAAzBA,YAAa/9B,EAAY,EAAZA,OACrE,OACE,uBAAK+D,UC5BgB,kDD6BjB85B,EACA,sBAAI95B,UC7BoB,yDD6BmB85B,GACzC,KACJ,2BAAME,GACN,uBAAKh6B,UC/BoB,wDD+BkB/D,K,8BEnBpCi+B,EAA0D,WACrE,OAA4C9C,eAAkB,GAAvD+C,EAAP,KAAuBC,EAAvB,KAEMC,GADOC,QAAqExmC,GAC9DymC,OAAOC,aAAaC,eAExCC,gBAAU,WACR,IACEN,EAAkBjmC,OAAOC,WAAW,oCAAoCU,SACxE,MAAO6lC,GACPP,GAAkB,MAEnB,IAEH,IAAMQ,EAAkB,CACtBv5B,MAAM,EACN1B,UAAU,EACVG,aAAc,EACd6D,eAAe,EACfT,eAAgB,EAChB3B,UAAW44B,EACXh3B,MAAQg3B,OAAkB5/B,EAAY,IACtCiH,cAAgB24B,OAAkB5/B,EAAY,IAC9CqH,QAAS,SACTF,YAAY,EACZK,UAAWo4B,EACX/2B,MAAO+2B,EACP52B,UAAW42B,EACXn6B,UCzCwB,qDD4CpB66B,EAAgBR,EAAOS,MAAMppB,KAAI,SAACqpB,EAAM1jC,GAAP,OACrC,uBAAK9D,IAAG,4BAA8BwnC,EAAKtL,GAAnC,IAAyCp4B,EAAS2I,UC5C5C,2CD6CZ,uBACEg7B,IAAKD,EAAKE,gBACVC,MAAOH,EAAKE,gBACZhO,IAAK8N,EAAKI,SAASC,gBAKzB,OACE,gBAACC,EAAA,EAAD,CAASr7B,UC1DoB,0DD2D3B,sBAAIA,UC1DS,4CD0DiBq6B,EAAOa,OACrC,uBAAKl7B,UC1D0B,8DD2D7B,gBAAC,IAAW46B,EACTC,MAOL/mC,EAAK,a,UEnEAwnC,EAAO,oEACPC,EAAO,oEACPC,EAAe,4EACfC,EAAgB,6EAChBC,EAAyB,sFACzBC,EAAoB,iF,SCHlBC,EAAkD,SAAC,GAAY,IACpEC,EADmE,EAAVC,KAC5CC,MAAM,MAEzB,OACE,gCACGF,EAAMnqB,KAAI,SAACsqB,EAAM3kC,GAAP,OACT,gBAAC,WAAD,CAAgB9D,IAAG,wBAA0B8D,GAC1C2kC,EACC3kC,IAAUwkC,EAAMjpC,OAAS,EAAK,gCAAQ2H,Q,oBCgBrC0hC,EAA8G,SAAC5+B,GAC1H,IAAQ6+B,GAAkBC,SAAlBD,cAIR,OACE,gBAACb,EAAA,EAAD,CAASr7B,UFlC8C,8GEmCrD,uBAAKA,UFlCiB,+EEmCpB,gBAAC,KAAD,CAAMo8B,IAAIC,QAAiBH,EAAe7+B,EAAMi/B,aAAaC,OAC3D,uBACEv8B,UAAWgf,EACX/e,MAAO,CACLu8B,YAAa,KAGf,gBAAC,EAAA9N,EAAD,CAAasM,IAAI,WAAW/N,IAAI,wCAAwCjtB,UAAWgf,EAAcyd,YAAY,UAA7G,qBAEA,gBAAC9D,EAAA,EAAD,CACE34B,UAAWgf,EACX/e,MAAO,CACLoU,IAAK,EACLlJ,KAAM,EACNuxB,SAAU,SAEZxd,KAAM,CACJrT,MAAO,IACPhE,OAAQ,KAGZ,wBAAM7H,UAAWgf,GACf,wBAAMhf,UAAWgf,GAA+B,gBAAC4c,EAAD,CAAiBE,KAAMz+B,EAAMs/B,qBAA2B,2BACxG,wBAAM38B,UAAWgf,GAA0B,gBAAC4c,EAAD,CAAiBE,KAAMz+B,EAAMu/B,oBAM9E,gBAAC,KAAD,CAAMR,IAAIC,QAAiBH,EAAe7+B,EAAMw/B,YAAYN,OAC1D,uBACEv8B,UAAWgf,EACX/e,MAAO,CACLu8B,YAAa,MAGf,gBAAC,EAAA9N,EAAD,CAAasM,IAAI,UAAU/N,IAAI,uCAAuCjtB,UAAWgf,EAAa8d,QAAS,IAAKjxB,MAAO,IAAK4wB,YAAY,UAApI,sBAEA,gBAAC9D,EAAA,EAAD,CACE34B,UAAWgf,EACX/e,MAAO,CACLoU,IAAK,EACLlJ,KAAM,EACNuxB,SAAU,SAEZxd,KAAM,CACJrT,MAAO,IACPhE,OAAQ,KAGZ,wBAAM7H,UAAWgf,GACf,wBAAMhf,UAAWgf,GAA+B,gBAAC4c,EAAD,CAAiBE,KAAMz+B,EAAM0/B,oBAA0B,2BACvG,wBAAM/8B,UAAWgf,GAA0B,gBAAC4c,EAAD,CAAiBE,KAAMz+B,EAAM2/B,mBAM9E,gBAAC,KAAD,CAAMZ,IAAIC,QAAiBH,EAAe7+B,EAAM4/B,UAAUV,OACxD,uBACEv8B,UAAWgf,EACX/e,MAAO,CACLi9B,aAAc,KAGhB,gBAAC,EAAAxO,EAAD,CAAasM,IAAI,QAAQ/N,IAAI,qCAAqCjtB,UAAWgf,EAAa8d,QAAS,IAAKjxB,MAAO,IAAK4wB,YAAY,UAAhI,sBAEA,gBAAC9D,EAAA,EAAD,CACE34B,UAAWgf,EACX/e,MAAO,CACLoU,IAAK,EACLwG,MAAO,EACP6hB,SAAU,SAEZxd,KAAM,CACJrT,MAAO,IACPhE,OAAQ,IAGZ,wBAAM7H,UAAWgf,GACf,wBAAMhf,UAAWgf,GAA+B,gBAAC4c,EAAD,CAAiBE,KAAMz+B,EAAM8/B,kBAAwB,2BACrG,wBAAMn9B,UAAWgf,GAA0B,gBAAC4c,EAAD,CAAiBE,KAAMz+B,EAAM+/B,oBClHzEC,EAA2D,SAAC,GAA4B,IAA3BC,EAA0B,EAA1BA,SAAUC,EAAgB,EAAhBA,KAAMhC,EAAU,EAAVA,KACxF,OACE,uBAAKv7B,UCLgC,0EDMnC,uBAAKA,UCFO,kDDEiBg7B,IAAKO,EAAKN,gBAAiBhO,IAAKsO,EAAKJ,SAASC,YAC3E,uBAAKp7B,UCNU,sDDOb,uBAAKA,UCNS,uDDMoBs9B,GAClC,uBAAKt9B,UCNK,mDDMoBu9B,MEOzBC,EAA8D,SAAC,GAAe,IAAdC,EAAa,EAAbA,QAC3E,OACE,gBAACpC,EAAA,EAAD,CAASr7B,UClBsB,8DDmB7B,gBAACq9B,EAAyBI,EAAQ,IAClC,gBAACJ,EAAyBI,EAAQ,MEX3BC,EAA8C,SAAC,GAA0B,IAAzBC,EAAwB,EAAxBA,QAAS39B,EAAe,EAAfA,UACpE,OACE,gBAAC,EAAA49B,EAAD,CACE5C,IAAK2C,EAAQ1C,gBACb1uB,MAAOoxB,EAAQxC,SAAS0C,gBAAgBC,gBACxC99B,WAAW25B,QCdU,6CDc4B35B,M,8BEN1C+9B,EAAwC,SAAC,GAA2C,IAA1C1zB,EAAyC,EAAzCA,SAAUlK,EAA+B,EAA/BA,QAASH,EAAsB,EAAtBA,UAAWC,EAAW,EAAXA,MACnF,OACE,0BACED,WAAW25B,QCXO,uCDW4B35B,GAC9CG,QAASA,EACTF,MAAOA,GACPoK,I,wCdLDuvB,K,cAAAA,E,gBAAAA,E,6BAAAA,E,2BAAAA,E,2BAAAA,E,mDAAAA,E,iCAAAA,E,qBAAAA,M,KAmBE,IAAMoE,EAAoC,SAAC,GAAwB,IAAD,EAAtBC,EAAsB,EAAtBA,KAAMplC,EAAgB,EAAhBA,KAAMqlC,EAAU,EAAVA,KACtDhC,GAAiBC,SAAjBD,cAEDiC,EAAqB,OAATD,EAAiB,MAAlB,UAA2BA,EAAK3B,YAAhC,QAAwC,GAEzD,OAAQ1jC,GACN,KAAK+gC,EAAewE,MAClB,OAAO,gBAACL,EAAD,CAAY59B,QAAS,kBAAMk+B,SAAShC,QAAiBH,EAAeiC,MAAaF,GAC1F,KAAKrE,EAAe0E,OAClB,OAAO,gBAACC,EAAA,EAAD,CAAcp+B,QAAS,kBAAMk+B,SAAShC,QAAiBH,EAAeiC,MAAaF,GAC5F,KAAKrE,EAAe4E,aAClB,OAAO,gBAACC,EAAA,EAAD,CAAet+B,QAAS,YAC7Bu+B,QAAiB,CACfnpC,OAAQ,QACRopC,MAAO,kBAETxqC,OAAOg5B,KAAKyR,KAAmB,WAC7BX,GACN,KAAKrE,EAAeiF,YAClB,OAAO,gBAACJ,EAAA,EAAD,CAAet+B,QAAS,YAC7Bu+B,QAAiB,CACfnpC,OAAQ,QACRopC,MAAO,iBAETxqC,OAAOg5B,KAAK2R,KAAkB,WAC5Bb,GACN,KAAKrE,EAAemF,YAClB,OAAO,gBAAChB,EAAD,CAAY59B,QAAS,YAC1Bu+B,QAAiB,CACfnpC,OAAQ,QACRopC,MAAO,iBAETxqC,OAAOg5B,KAAK6R,KAAkB,WAC5Bf,GACN,KAAKrE,EAAeqF,uBAClB,OAAO,gBAAClB,EAAD,CAAY59B,QAAS,YAC1Bu+B,QAAiB,CACfnpC,OAAQ,QACRopC,MAAO,8BAETxqC,OAAOg5B,KAAK+R,KAA2B,WACrCjB,GACN,KAAKrE,EAAeuF,kBAClB,OAAO,gBAACpB,EAAD,CAAY59B,QAAS,kBAAMi/B,eAAc/C,QAAiBH,EAAeiC,EAAW,kBAAkBF,GAC/G,KAAKrE,EAAeyF,YAClB,OAAO,gBAACtB,EAAD,CAAY59B,QAAS,kBAAMi/B,eAAc/C,QAAiBH,EAAeiC,EAAW,YAAYF,GACzG,QACE,OAAO,gBAACF,EAAD,CAAY59B,QAAS,kBAAMk+B,SAAShC,QAAiBH,EAAeiC,MAAaF,KgBhEjFqB,EAAkF,SAAC,GAA+C,IAA9CxF,EAA6C,EAA7CA,QAASyD,EAAoC,EAApCA,KAAMgC,EAA8B,EAA9BA,cAAev/B,EAAe,EAAfA,UAC7H,OACE,uBAAKA,WAAW25B,QCbyB,iFDa+B35B,IACtE,sBAAIA,UCbW,0DDaiB85B,GAChC,gBAAC0F,EAAA,EAAD,CAAUx/B,UCbE,sDDasBi+B,KAAMV,IAExC,uBAAKv9B,UCdgB,gEDehBu/B,EAAc7tB,KAAI,SAAC+tB,EAAQpoC,GAAT,OACf,gBAAC2mC,EAAD,eAAYzqC,IAAQ8D,EAAL,IAAcooC,EAAOhQ,IAAUgQ,UEQ/CC,EAAkD,SAACriC,GAC9D,IACEy8B,EACEz8B,EADFy8B,QAASyD,EACPlgC,EADOkgC,KAAMgC,EACbliC,EADakiC,cAAevF,EAC5B38B,EAD4B28B,YAAa2F,EACzCtiC,EADyCsiC,WAEvCC,EAA4BviC,EAA5BuiC,UAAWC,EAAiBxiC,EAAjBwiC,YAEjB,GAAoB,OAAhBA,GAAsC,OAAdD,EAAoB,OAEnB,CAACA,EAAWC,GAAtCA,EAF6C,KAEhCD,EAFgC,KAKhD,OACE,gBAACvE,EAAA,EAAD,CAASr7B,UCvCmB,qDDwC1B,gBAAC+2B,EAAA,EAAD,MACG,SAACxvB,EAAK8vB,GAAN,OACC,uBACEr3B,WAAW25B,QC1CD,0CD0CmD,OAAhBkG,OAAwBtlC,ECjC1C,4DDkC3B0F,MAAO,CACL4H,QAA0B,OAAhBg4B,EAAwB,IAAM,KAAOxI,GAA0B,OAAhB2C,EAAwB,EAAI,MAGvF,uBACEzyB,IAAKA,EACLvH,UChDe,iDDiDfC,MAAO,CACLma,UAAU,SAAUid,EAAX,KAAqBA,EAArB,IACTyI,gBAAiB,aAGnB,uBAAK9/B,UCrDI,4CDsDP,gBAAC09B,EAAD,CAAeC,QAASiC,KAER,OAAhBC,OAAwBtlC,EACxB,uBAAKyF,UCjDI,8CDkDP,gBAAC09B,EAAD,CAAeC,QAASkC,KAG5B,uBAAK7/B,UC5DK,6CD6DR,gBAAC09B,EAAD,CAAeC,QAASgC,KAGR,OAAhBE,EACA,uBAAK7/B,UChEF,wCDiED,gBAAC,EAAA0uB,EAAD,CAAazB,IAAI,uCAAuC+N,IAAI,GAA5D,4BAEAzgC,EAEc,OAAhBy/B,OAAwBz/B,EACxB,uBAAKyF,UCrEI,6CDqE2BC,MAAO,CACzCma,UAAU,SAAU,EAAEid,EAAb,KAAuB,EAAEA,EAAzB,IACTyI,gBAAiB,aAEf9F,EAAYF,QACZ,uBAAK95B,UCzEO,qDDyEgCg6B,EAAYF,SACtD,KACJ,uBAAK95B,UC1EM,kDD0E8Bg6B,EAAYA,aACrD,uBAAKh6B,UC1EQ,oDD0E8Bg6B,EAAY/9B,cAQnE,gBAACqjC,EAAD,CAAiCt/B,UC/ElB,yCD+E6C85B,QAASA,EAASyD,KAAMA,EAAMgC,cAAeA,ME3ElGQ,EAAwE,SAAC,GAA4C,IAA3CjG,EAA0C,EAA1CA,QAASkG,EAAiC,EAAjCA,OAAQC,EAAyB,EAAzBA,oBACtG,OACE,uBAAKjgC,UClB+B,wEDmBlC,sBAAIC,MAAO,CAACigC,MAAM,GAAIF,GAAWhgC,UClBlB,qDDkB8C85B,GAC7D,2BACGmG,EAAoBvuB,KAAI,SAACyuB,GAAD,OACvB,gBAACC,EAAD,eACE7sC,IAAG,aAAe4sC,EAAS1Q,IACvB0Q,UAQVC,EAAuD,SAAC,GAAwB,IAAvBD,EAAsB,EAAtBA,SAAUE,EAAY,EAAZA,OACvE,GAAoCjJ,cAAS,IAAtCkJ,EAAP,KAAkBC,EAAlB,KACA,GAAoCnJ,cAAS,OAAtCoJ,EAAP,KAAkBC,EAAlB,KACA,GAAoCrJ,cAAS,mBAAtCsJ,EAAP,KAAkBC,EAAlB,KACMtU,GAAU4K,YAA8B,MAa9C,OACE,2BACE,0BAAQj3B,UAAS,aAAesgC,EAAangC,QAbjD,WAA4B,IAAD,IACzBogC,EAA6B,KAAdD,EAAmB,SAAW,IAC7CG,EACgB,WAAdH,EAAyB,OAAzB,UAAoCjU,SAApC,UAAoCA,EAASqL,eAA7C,aAAoC,EAAkByB,oBAAtD,QAAsE,GAAtE,MAEFwH,EACgB,WAAdL,EAAyB,iBAAmB,kBAQ1C,qBAAGtgC,UClD0B,qEDmD3B,uBAAKA,UClDuB,sEDmD1B,wBAAMC,MAAO,CAACma,UAAU,GAAIsmB,GAAc1gC,UClDzB,+DDoDnB,uBAAKA,UCnDa,4DDmDsBmgC,KAG5C,uBAAK54B,IAAK8kB,EAASpsB,MAAO,CAAC2gC,UAAU,GAAIJ,GAAcxgC,UCrD/B,8DDsDtB,gBAACw/B,EAAA,EAAD,CAAUx/B,UCrDS,0DDqDwBi+B,KAAMoC,KAEnD,2BACE,sBAAIrgC,UCvDe,+DCNhB6gC,EAAc,+CCyBZC,EAAsD,SAAC,GAA4K,IAA3KC,EAA0K,EAA1KA,kBAAmBC,EAAuJ,EAAvJA,qBAAsBC,EAAiI,EAAjIA,wBAAyBC,EAAwG,EAAxGA,uBAAwBC,EAAgF,EAAhFA,uBAAwBC,EAAwD,EAAxDA,KAAMC,EAAkD,EAAlDA,iBAAkBC,EAAgC,EAAhCA,2BAC7M,OACI,gBAACjG,EAAA,EAAD,KACI,uBAAKr7B,UD9Ba,mDC+Bd,uBAAKA,UD9BO,iDC+BR,sBAAIC,MAAO,CAAEigC,MAAM,GAAIe,GAA4BjhC,UD5B/B,6DC4B4E+gC,EAAmBO,EAA6B,wBAAMthC,UD3BhI,+DC2B+KshC,QAAoC/mC,GACzO,uBAAKyF,UD3BmB,iEC2B8BghC,IAE1D,uBAAKhhC,UAAWgf,GACZ,gBAAC,EAAA4e,EAAD,CAAarxB,MAAO20B,EAAuB/F,SAAS0C,gBAAgBC,gBAAiB9C,IAAKkG,EAAuBjG,mBAErH,uBAAKj7B,UDnCK,+CCmCV,KACA,uBAAKA,UAAWgf,GACZ,gBAAC,EAAA4e,EAAD,CAAarxB,MAAO40B,EAAuBhG,SAAS0C,gBAAgBC,gBAAiB9C,IAAKmG,EAAuBlG,oBAGzH,uBAAKj7B,UDnCU,gDCoCdohC,EAAK1vB,KAAI,SAACqX,GAAD,OACF,gBAACwY,EAAD,eACAhuC,IAAG,QAAUw1B,EAAE0G,IACX1G,QAIZ,uBAAK/oB,UD5Ce,qDC6CfqhC,EAAiB3vB,KAAI,SAAC+tB,EAAQpoC,GAAT,OAClB,gBAAC2mC,EAAD,eAAYzqC,IAAQ8D,EAAL,IAAcooC,EAAOhQ,IAAUgQ,UAO1D8B,EAAwC,SAAC,GAA6D,IAA5DC,EAA2D,EAA3DA,YAAaC,EAA8C,EAA9CA,SAAUC,EAAoC,EAApCA,gBAAiBC,EAAmB,EAAnBA,cACtF,OACE,uBAAK3hC,UDrDe,+CCsDhB,uBAAKA,UDrDQ,4CCsDT,uBAAKA,UDrDQ,gDCqDwBwhC,GACrC,uBAAKxhC,UDnDU,kDCoDb,gBAAC,EAAA49B,EAAD,CAAarxB,MAAOk1B,EAAStG,SAAS0C,gBAAgBC,gBAAiB9C,IAAKyG,EAASxG,kBACpF0G,EAAgB,uBAAK3hC,UDtDT,kDCsD2C2hC,GAAuB,KAGrF,uBAAK3hC,UD1DgB,oDC0DoB0hC,KCtDpCE,EAA4D,SAAC,GAAkC,IAAjCC,EAAgC,EAAhCA,gBAAiBC,EAAe,EAAfA,UAEpFzH,GADOC,QAAqExmC,GAC9DymC,OAAOC,aAE3B,OACE,gBAACa,EAAA,EAAD,KACE,uBAAKr7B,UCtBgC,qEDuBnC,uBAAKA,UCnBQ,+CDoBX,2BACE,gBAAC,EAAA49B,EAAD,CAAarxB,MAAOu1B,EAAU3G,SAAS0C,gBAAgBC,gBAAiB9C,IAAK8G,EAAU7G,oBAG3F,uBAAKj7B,UCvBQ,+CDwBX,uBAAKA,UC5BU,mDD6Bb,qBAAG+hC,KAAI,OAAS1H,EAAO2H,YAAYC,gBAAmB5H,EAAO2H,YAAYE,aAD3E,iBACyG,qBAAGH,KAAI,OAAS1H,EAAO8H,eAAeF,gBAAmB5H,EAAO8H,eAAeD,cAExL,sBAAIliC,UC9BsB,8DD+BxB,gBAACw/B,EAAA,EAAD,CAAUx/B,UC9BqB,oED8B4Bi+B,KAAM4D,SAQvE/tC,EAAK,aEvCAsuC,EAAe,+CACfC,EAAqB,qDACrBC,EAAe,+CAIf,EAAO,uCACPC,EAAY,4CCJVC,EAAkE,SAAC,GAAoB,IAAnBzW,EAAkB,EAAlBA,KAAM0W,EAAY,EAAZA,OAMrF,OALA/H,gBAAU,WAERvmC,OAAOuuC,KAAKD,KACX,IAGD,uBAAKE,wBAAyB,CAACC,OAAQ7W,MCiI9B8W,EAAoD,SAAC,GAAuB,IAArBC,EAAoB,EAApBA,cAE5DzI,GADOC,QAAsCxmC,IAC/BymC,OAAOC,aAE3B,OACE,gBAACa,EAAA,EAAD,CAASr7B,UFlJiB,oDEmJxB,sBAAIA,UFlJiB,iDEkJiB8iC,GACtC,gBAAC,EAAApU,EAAD,CAAasM,IAAI,QAAQ/N,IAAI,kDAAkDjtB,UAAWgf,EAAa8d,QAAS,IAAKjxB,MAAO,GAA5H,sBACA,sBAAI7L,UAAWgf,GAAf,aACY,wBAAMhf,UAAWgf,GAAqB,qBAAG+iB,KAAI,OAAS1H,EAAO2H,YAAYC,gBAAmB5H,EAAO2H,YAAYE,aAA/G,iBAA6I,qBAAGH,KAAI,OAAS1H,EAAO8H,eAAeF,gBAAmB5H,EAAO8H,eAAeD,eAExO,uBAAKliC,UAAWgf,GACd,6DAEE,2BACA,+DAGJ,sBAAIhf,UAAWgf,IACf,gBAAC,EAAA0P,EAAD,CAAasM,IAAI,QAAQ/N,IAAI,sCAAsCjtB,UAAWgf,EAAa8d,QAAS,IAAKjxB,MAAO,GAAhH,sBACA,sBAAI7L,UAAWgf,GAAf,UACS,wBAAMhf,UAAWgf,GAAqB,qBAAG+iB,KAAI,UAAY1H,EAAO0I,eAAkB1I,EAAO0I,iBAElG,sBAAI/iC,UAAWgf,IACf,gBAAC,EAAA0P,EAAD,CAAasM,IAAI,MAAM/N,IAAI,oCAAoCjtB,UAAWgf,EAAa8d,QAAS,IAAKjxB,MAAO,GAA5G,sBACA,sBAAI7L,UAAWgf,GAAf,WACU,wBAAMhf,UAAWgf,GAAqB,qBAAG+iB,KAAI,WAAa1H,EAAO2I,YAAetsC,OAAO,SAAS2jC,EAAO2I,eAEjH,uBAAKhjC,UAAWgf,GACd,4FAIF,sBAAIhf,UAAWgf,IACf,uBAAKhf,UFzKc,+CE0KjB,uBAAKA,UAAWgf,GAAhB,yCAGA,uBAAKhf,UF9KgB,mDE+KnB,gDAKJ,gBAACwiC,EAAD,CAAyBzW,KCzLpB,gqcDyLmC0W,OAhLrB,01IAqLnB3uC,GAAK,aE/LX,SAASmvC,GAAmBC,EAAK3X,EAASqG,EAAQuR,EAAOC,EAAQ7vC,EAAKV,GACpE,IACE,IAAIwwC,EAAOH,EAAI3vC,GAAKV,GAChByE,EAAQ+rC,EAAK/rC,MACjB,MAAOyiB,GAEP,YADA6X,EAAO7X,GAILspB,EAAK9f,KACPgI,EAAQj0B,GAERkrB,QAAQ+I,QAAQj0B,GAAOqzB,KAAKwY,EAAOC,GAIxB,SAASE,GAAkB1sC,GACxC,OAAO,WACL,IAAIvC,EAAOL,KACPqG,EAAO1H,UACX,OAAO,IAAI6vB,SAAQ,SAAU+I,EAASqG,GACpC,IAAIsR,EAAMtsC,EAAGzD,MAAMkB,EAAMgG,GAEzB,SAAS8oC,EAAM7rC,GACb2rC,GAAmBC,EAAK3X,EAASqG,EAAQuR,EAAOC,EAAQ,OAAQ9rC,GAGlE,SAAS8rC,EAAOG,GACdN,GAAmBC,EAAK3X,EAASqG,EAAQuR,EAAOC,EAAQ,QAASG,GAGnEJ,OAAM5oC,O,kCC/BZ,IAAIipC,GAAQ,GACRC,GAAqB,GACV,SAASC,GAAMlV,EAAOC,GACnC,GAAID,IAAUC,EACZ,OAAO,EAGT,IAAIkV,EAAOnV,EAGPA,EAAM57B,OAAS67B,EAAO77B,SACxB47B,EAAQC,EACRA,EAASkV,GASX,IANA,IAAIC,EAAcpV,EAAM57B,OACpBixC,EAAepV,EAAO77B,OAKnBgxC,EAAc,GAAKpV,EAAMG,aAAaiV,KAAiBnV,EAAOE,aAAakV,IAChFD,IACAC,IAQF,IAFA,IAaIC,EACAnqC,EACAoqC,EACAC,EAhBAC,EAAQ,EAELA,EAAQL,GAAepV,EAAMG,WAAWsV,KAAWxV,EAAOE,WAAWsV,IAC1EA,IAMF,GAFAJ,GAAgBI,EAEI,KAHpBL,GAAeK,GAIb,OAAOJ,EAUT,IAHA,IAAIxsC,EAAQ,EACR6sC,EAAS,EAEN7sC,EAAQusC,GACbH,GAAmBpsC,GAASm3B,EAAMG,WAAWsV,EAAQ5sC,GACrDmsC,GAAMnsC,KAAWA,EAGnB,KAAO6sC,EAASL,GAKd,IAJAC,EAAiBrV,EAAOE,WAAWsV,EAAQC,GAC3CH,EAAYG,IACZvqC,EAASuqC,EAEJ7sC,EAAQ,EAAGA,EAAQusC,EAAavsC,IACnC2sC,EAAaF,IAAmBL,GAAmBpsC,GAAS0sC,EAAYA,EAAY,EACpFA,EAAYP,GAAMnsC,GAElBsC,EAAS6pC,GAAMnsC,GAAS0sC,EAAYpqC,EAASqqC,EAAarqC,EAASA,EAAS,EAAIqqC,EAAaA,EAAaD,EAAYA,EAAY,EAAIC,EAI1I,OAAOrqC,ECjET,IAEQwqC,GA4BAC,GCZHC,GAMAC,GDmBQC,IAzCLJ,GAAc,SAASK,EAAiBC,GAE5C,IAAMC,EAAW,IAAIC,OAAO,IAAMH,EAAU,KACtCI,EAAa,IAAID,OAAO,IAAMH,EAAU,IAAK,KAC7CK,EAAS,IAAIF,OAAO,IAAMH,EAAU,KAI1C,OAHiB,SAASM,GACxB,OAAOA,EAAI3rC,QAAQurC,EAAUD,EAAQ,KAAKtrC,QAAQyrC,EAAY,IAAMH,EAAQ,KAAKtrC,QAAQ0rC,EAAQ,IAAMJ,KAsBrGL,GAAaW,UAjBM,SAASC,GAIhC,IAAMC,EAAMd,GAAYa,EAAK,GAAGxyB,OAAQwyB,EAAK,GAAGxyB,QAC1C0yB,EAAMf,GAAYa,EAAK,GAAGxyB,OAAQwyB,EAAK,GAAGxyB,QAShD,OARiB,SAAS2yB,GACxB,IAAMC,EAAKH,EAAIE,GACf,OAAIC,IAAOD,EACFC,EAEAF,EAAIE,OAQK,SAASC,GAE7B,IADA,IAAMC,EAAS,GACN5yC,EAAI,EAAGA,EAAI0xC,GAAWxxC,OAAQF,IAAK,CAC1C,IAAM6yC,EAAcnB,GAAW1xC,GAAG2yC,GAC9BA,IAAcE,GAAaD,EAAOvyC,KAAKwyC,GAE7C,OAAOD,I,i1BCpBNjB,O,uBAAAA,I,qBAAAA,I,mBAAAA,I,kBAAAA,Q,cAMAC,O,6BAAAA,I,mCAAAA,I,8BAAAA,Q,KAgBL,IAAMkB,GAA0F,SAAC59B,EAAOrS,GACtG,OAAQA,EAAOsD,MACb,KAAKyrC,GAA+BmB,YAClC,MAAO,CACLC,qBAAsBrB,GAA4BsB,SAEtD,KAAKrB,GAA+BsB,YAClC,MAAO,CACLF,qBAAsBrB,GAA4B1uC,OAEtD,KAAK2uC,GAA+BuB,eAClC,MAAO,CACLH,qBAAsBrB,GAA4ByB,OAClDC,QAAUxwC,EAA4CwwC,SAE1D,QACE,MAAM,IAAIpwC,MAAM,mCAWTqwC,GAAkD,SAAC3oC,GAC9D,OAA0B4oC,gBAAWT,GAAwB,CAC3DE,qBAAsBrB,GAA4B6B,WAD7Ct+B,EAAP,KAAcu+B,EAAd,KAMMC,GAAuBC,iBAAW,cAAC,8FACvCF,EAAS,CACPttC,KAAMyrC,GAA+BmB,cAFA,sCASnBa,MATmB,oBASR,CAC3BC,YAAa,SAVsB,WAS/BC,EAT+B,QAa5B1R,GAb4B,yCAc5BqR,EAAS,CACdttC,KAAMyrC,GAA+BsB,eAfJ,mBAoB7BtB,GAA+BuB,eApBF,UAqBpBW,EAAIC,OArBgB,2BAmB/BC,EAnB+B,CAoBnC7tC,KApBmC,KAqBnCktC,QArBmC,wBAuB9BI,EAASO,IAvBqB,yCA0BrCj0B,QAAQsH,MAAR,MA1BqC,kBA2B9BosB,EAAS,CACdttC,KAAMyrC,GAA+BsB,eA5BF,0DA+BtC,KACHlL,gBAAU,WACR,cAAC,+FC1GI,IAAIlY,SAAQ,SAAC+I,GAElB,GAAI,UAAWp3B,OAAQ,OAAOo3B,IAE9B,mCAAuBZ,MAAK,kBAAMY,UDsGjC,uBAEO6a,IAFP,0CAAD,KAIC,CAACA,IAEJ,IAAMO,EACJ,sDAC0B,gBAAC5I,EAAD,CAAY59B,QAASimC,GAArB,UAI5B,OAAQx+B,EAAM89B,sBACZ,KAAKrB,GAA4ByB,OAC/B,YAAsBvrC,IAAlBqN,EAAMm+B,QACD,gBAACa,GAAD,iBAA4BvpC,EAA5B,CAAmC0oC,QAASn+B,EAAMm+B,WAEpDY,EACT,KAAKtC,GAA4B1uC,MAC/B,OAAOgxC,EACT,QACE,OACE,yDA4BFC,GAAgE,SAAC,GAA2C,IAA1C5mC,EAAyC,EAAzCA,UAAW6mC,EAA8B,EAA9BA,gBAAiBd,EAAa,EAAbA,QAElG,GAA0B3O,cAAsC,CAC9D0P,YAAa,GACbC,eAAgB,KAFXn/B,EAAP,KAAcK,EAAd,KAMM++B,GAAuDC,cAAQ,WAGnE,IAFA,IAAMC,EAA6C,GAE1Cx0C,EAAE,EAAGA,EAAIqzC,EAAQnzC,OAAQF,IAAK,CACrC,IAAMy0C,EAASpB,EAAQrzC,GAEvBw0C,EAAQn0C,KAAK,CACXq0C,aAAc10C,EACd20C,gBAAiBF,EAAO9B,UAAU/iB,gBAGpC,eAAoBiiB,GAAsC4C,EAAO9B,UAAU/iB,kBAA3E,aAA2F,CAAC,IAAjFglB,EAAgF,QACzFJ,EAAQn0C,KAAK,CACXq0C,aAAc10C,EACd20C,gBAAiBC,KAKvB,OAAOJ,IACN,CAACnB,IAGEwB,GAAiBlB,kBAAY,SAACmB,GAClC,GAAI,QAAQjwC,KAAKiwC,GAEfv/B,EAAS,CACP6+B,YAAa,GACbC,eAAgB,SAGf,CAGH,IAFA,IAAMU,EAAY,GAET/0C,EAAE,EAAGA,EAAIs0C,EAAkBp0C,OAAQF,IAAK,CAC/C,IAAMg1C,EAAcV,EAAkBt0C,GAAG20C,gBACzCI,EAAU10C,KAAK,CACb40C,SAAUjE,GAAMgE,EAAaF,EAAUllB,eAAiBolB,EAAY90C,OACpEg1C,WAAYl1C,IAKhB+0C,EAAU71B,MAAK,SAACi2B,EAASC,GACvB,OAAOD,EAAQF,SAAWG,EAASH,YAGrC1/B,EAAS,CACP6+B,YAAaU,EACbT,eAAgBU,OAGnB,CAACT,IACEe,GAAsB1B,kBAAY,SAAC2B,GACvC,OAAOT,EAAeS,EAAItxC,OAAOY,SAChC,CAACiwC,IAGEzyC,GAAUmyC,cAAQ,WAEtB,IADA,IAAMnyC,EAAoB,GACjBpC,EAAE,EAAGA,EAAIkV,EAAMm/B,eAAen0C,OAAQF,IAAK,CAClD,IAAMu1C,EAAergC,EAAMm/B,eAAer0C,GACpCw1C,EAAqBnC,EAAQiB,EAAkBiB,EAAaL,YAAYR,cAAc/B,UAE5F,GAAI4C,EAAaN,SAAW,EAE1B,MAOF,IAJ6C,IAAzC7yC,EAAQmS,QAAQihC,IAClBpzC,EAAQ/B,KAAKm1C,GAGXD,EAAaN,UAhFe,GAkF9B,MAGJ,OAAO7yC,IACN,CAAC8S,EAAMm/B,eAAgBC,EAAmBjB,IACvCoC,GAAmBlB,cAAQ,WAC/B,OAAOr/B,EAAMm/B,eAAen0C,QAAU,GAAKgV,EAAMm/B,eAAe,GAAGY,UAxFjC,KAyFjC,CAAC//B,EAAMm/B,iBAGJqB,GAAiB/B,kBAAY,WACjC,GAAI8B,EAAkB,CACpB,IAAME,EAAWvzC,EAAQ,GAEzBX,OAAOg5B,KAAP,4CAAuDmb,QAAQD,GAA/D,YAAqF,aAEtF,CAACvzC,EAASixC,IAOb,OAJArL,gBAAU,WACR6M,EAAe3/B,EAAMk/B,eACpB,CAACf,IAEmB,IAAnBA,EAAQnzC,OACH,iCAIP,uBAAKoN,WAAW25B,QE5QS,iDF4Q+B35B,IACtD,uBAAKA,UE5QkB,kDF6QrB,yBACEA,UE5Qe,6CF6QfuoC,SAAUR,EACVzwC,MAAOsQ,EAAMk/B,YACbrK,YAAY,sCAGZ0L,GAAuC,IAAnBrzC,EAAQlC,YAAgB2H,EAC5C,uBAAKyF,UEpRgB,oDFqRjBlL,EAAQ4c,KAAI,SAAC2zB,GAAD,OACZ,uBACE9xC,IAAG,yBAA2B8xC,EAC9BrlC,UEtRQ,4CFuRRG,QAAS,kBAAMonC,EAAelC,KAE7BA,QAOX,gBAAC9G,EAAA,EAAD,CACEv+B,WAAW25B,QEhSO,8CFgS+BwO,OAAoB5tC,EE/RvD,2CFgSd4F,QAASioC,EACTnoC,MAAO,CACLuoC,gBAAkBL,EAAoBtB,OAAkBtsC,IAJ5D,sB,WGjROkuC,GAA8D,SAAC,GAA6L,IAA5LC,EAA2L,EAA3LA,mBAAoBC,EAAuK,EAAvKA,cAAeC,EAAwJ,EAAxJA,oBAAqBC,EAAmI,EAAnIA,iBAAkBC,EAAiH,EAAjHA,uBAAwBC,EAAyF,EAAzFA,uBAAwBC,EAAiE,EAAjEA,uBAAwBC,EAAyC,EAAzCA,iBAAkBC,EAAuB,EAAvBA,kBAI/O,GAA0B9R,cAAiB,GAApCC,EAAP,KAAc8R,EAAd,KAEMC,GAASnS,YAAgC,MAEzCoS,GAAgBhD,kBAAY,SAAC3qB,GACjC,IAAM4tB,EAAW5tB,EAAQ,GAEzBytB,EAASG,EAASnoB,YAAYtV,MAVP,OAWtB,CAACu9B,EAAO1R,UAaX,OAXAgD,gBAAU,WACR,IAAM6O,EAAQH,EAAO1R,QACrB,GAAc,OAAV6R,EAAgB,CAClB92B,QAAQ4lB,IAAI,6BACZ,IAAMhb,EAAW,IAAI8E,WAAeknB,GAGpC,OAFAhsB,EAAStU,QAAQwgC,GAEV,kBAAMlsB,EAASvT,iBAEvB,CAACs/B,EAAO1R,UAGT,gBAAC2D,EAAA,EAAD,KACE,uBAAK5L,GAAG,OAAOzvB,UC/CuB,uEDgDpC,uBAAKA,UC/CQ,gDDgDX,uBAAKuH,IAAK6hC,EAAQnpC,MAAO,CAACgS,SA5BT,MA6Bf,gBAAC,EAAA2rB,EAAD,CAAarxB,MAAOq8B,EAAoBzN,SAAS0C,gBAAgBC,gBAAiB9C,IAAK4N,EAAoB3N,mBAE7G,uBACEh7B,MAAO,CACLma,UAAU,SAAUid,EAAX,KAAqBA,EAArB,IACTyI,gBAAiB,WACjBzrB,IAlCU,IAkCWgjB,EACrBlsB,KAlCW,GAkCYksB,EACvBjjB,SAAU,aAGZ,uBAAKpU,UC3Da,yDD2DwB0oC,GAC1C,uBAAK1oC,UC3DQ,oDD2DwB2oC,KAGzC,uBAAK3oC,UC7DQ,gDD8DX,uBAAKC,MAAO,CAAEigC,MAAO+I,GAAmBjpC,UC7DpB,yDD6DyD6oC,GAC7E,uBAAK7oC,UC7DqB,+DD6DsB8oC,GAChD,uBAAK9oC,UC7DqB,+DD6DsB+oC,GAChD,uBAAK/oC,UC7DqB,+DD6DsBgpC,GAChD,gBAAC,GAAD,CAAiBnC,gBAAiBoC,IAClC,uBAAKjpC,UC9De,yDD+DjBkpC,EAAkBx3B,KAAI,SAAC+tB,EAAQpoC,GAAT,OACrB,gBAAC2mC,EAAD,eAAYzqC,IAAQ8D,EAAL,IAAcooC,EAAOhQ,IAAUgQ,YE7DjD5kB,GAAQ,yCAER,GAAO,wCACP2uB,GAAc,+C,sBC6BZrK,GAAsD,SAAC,GAAiG,IAAhGsK,EAA+F,EAA/FA,iBAAkBC,EAA6E,EAA7EA,sBAAuBC,EAAsD,EAAtDA,YAAa9J,EAAyC,EAAzCA,YAAa+J,EAA4B,EAA5BA,QAASC,EAAmB,EAAnBA,cAC/I,OACE,gBAACxO,EAAA,EAAD,KACE,sBAAI5L,GAAG,aAAazvB,UD9CI,oDC8CgCC,MAAO,CAAEigC,MAAOwJ,IAAyBD,GACjG,uBAAKzpC,UDhD6B,+DCiDhC,uBAAKA,UD1CK,yCC2CR,gBAAC24B,EAAA,EAAD,CACE34B,UDjDc,gDCkDdC,MAAO,CACLoU,IAAK,EACLlJ,KAAM,EACNuxB,SAAU,UAEZ,wBAAM18B,UDtDS,kDCuDZ2pC,EAAYj4B,KAAI,SAACo4B,GAAD,OACf,uBAAKv2C,IAAG,cAAgBu2C,EAAWra,IACjC,wBAAMxvB,MAAO,CAAEigC,MAAO4J,EAAWC,kBAAmB/pC,UDxD9C,+CCwD6E8pC,EAAWE,YAC9F,wBAAMhqC,UDxDF,6CCwD+B8pC,EAAWG,UAC9C,wBAAMjqC,UDxDF,6CCwD+B8pC,EAAWI,iBAMxD,uBAAKlqC,UD5DQ,4CC6DX,gBAAC,KAAD,CAAUC,MAAO,CAAE4L,MAAO,GAAIuI,SAAU,cACxC,gBAAC,EAAAwpB,EAAD,CAAa59B,UD7DG,gDC6D6BuM,MAAOszB,EAAY1E,SAAS0C,gBAAgBC,gBAAiB9C,IAAK6E,EAAY5E,mBAE/G,OAAZ2O,OAAoBrvC,EACpB,uBAAKyF,UAAWgf,IACd,uBAAKhf,UD7DM,8CC8DT,gBAAC,EAAA49B,EAAD,CAAa5C,IAAK4O,EAAQO,UAAUlP,gBAAiB1uB,MAAOq9B,EAAQO,UAAUhP,SAAS0C,gBAAgBC,mBAEzG,uBAAK99B,UAAWgf,IACd,uBAAKgc,IAAK4O,EAAQQ,UAAUnP,gBAAiBhO,IAAK2c,EAAQQ,UAAUjP,SAASC,aAE/E,gBAACoE,EAAA,EAAD,CAAUx/B,UAAWgf,GAAoBif,KAAM2L,EAAQS,mBACvD,uBAAKrqC,UAAWgf,IACd,uBAAKgc,IAAK4O,EAAQU,WAAWrP,gBAAiBhO,IAAK2c,EAAQU,WAAWnP,SAASC,aAEjF,gBAACoE,EAAA,EAAD,CAAUx/B,UAAWgf,GAAoBif,KAAM2L,EAAQW,oBAC/B,OAAtBX,EAAQY,eAAsBjwC,EAC9B,gCACE,uBAAKyF,UAAWgf,IACd,uBAAKgc,IAAK4O,EAAQY,UAAUvP,gBAAiBhO,IAAK2c,EAAQY,UAAUrP,SAASC,aAE/E,gBAACoE,EAAA,EAAD,CAAUx/B,UAAWgf,GAAoBif,KAAM2L,EAAQa,qBAK3C,OAAlBZ,OAA0BtvC,EAC1B,uBAAKyF,WAAW25B,QAAgB3a,GDtFT,yDCuFrB,uBAAKhf,UDhFY,oDCiFd6pC,EAAca,YAEjB,uBAAK1qC,UDpFoB,4DCqFvB,gBAAC,EAAA49B,EAAD,CAAa5C,IAAK6O,EAAcc,SAAS1P,gBAAiB1uB,MAAOs9B,EAAcc,SAASxP,SAAS0C,gBAAgBC,kBACjH,gBAAC,EAAAF,EAAD,CAAa5C,IAAK6O,EAAce,SAAS3P,gBAAiB1uB,MAAOs9B,EAAce,SAASzP,SAAS0C,gBAAgBC,kBACjH,gBAAC,EAAAF,EAAD,CAAa5C,IAAK6O,EAAcgB,SAAS5P,gBAAiB1uB,MAAOs9B,EAAcgB,SAAS1P,SAAS0C,gBAAgBC,kBACjH,gBAAC,EAAAF,EAAD,CAAa5C,IAAK6O,EAAciB,SAAS7P,gBAAiB1uB,MAAOs9B,EAAciB,SAAS3P,SAAS0C,gBAAgBC,mBAEnH,uBAAK99B,UDxFiB,yDCyFpB,gBAACw/B,EAAA,EAAD,CAAWvB,KAAM4L,EAAckB,uBCzFhCC,GAA2C,SAAC,GAA+G,IAA9GC,EAA6G,EAA7GA,eAAgBC,EAA6F,EAA7FA,mBAAoBC,EAAyE,EAAzEA,mBAAoBC,EAAqD,EAArDA,mBAAoBC,EAAiC,EAAjCA,aAAcC,EAAmB,EAAnBA,cAC1IpP,GAAkBC,SAAlBD,cAER,OACE,gCACE,gBAACb,EAAA,EAAD,CAASr7B,UCrBgB,oDDsBvB,uBAAKA,UChBmB,qDDiBtB,uBAAKA,UCbM,0CDcT,sBAAIA,UCvBY,iDDuBuBirC,GACvC,sBAAIjrC,UCtBgB,qDDsBuBkrC,GAC3C,uBAAKlrC,UCtBe,qDDsBwBorC,GAC5C,uBAAKprC,UCtBe,qDDsBwBmrC,IAE9C,uBAAKnrC,UClBM,0CDmBT,uBAAKA,UCtBgB,sDDuBnB,gBAAC,EAAA0uB,EAAD,CAAazB,IAAI,+BAA+B+N,IAAI,GAApD,uBAEF,uBAAKh7B,UC1BU,gDD2Bb,gBAAC09B,EAAD,CAAeC,QAAS2N,OAI9B,uBAAKtrC,UCpCa,+CDqChB,gBAACw/B,EAAA,EAAD,CAAUvB,KAAMoN,IAChB,uBAAKrrC,UC/BS,6CD+Bd,SAAyC,qBAAG+hC,KAAK,mDAAmDrrC,OAAO,SAAlE,eAAzC,yCAIJ,gBAAC2kC,EAAA,EAAD,CAASr7B,UC9Cc,kDD+CrB,uBAAKA,UCjCY,8CDiCjB,iCACA,uBAAKA,UC/Ce,iDDgDlB,gBAAC,KAAD,CAAMo8B,IAAIC,QAAiBH,EAAe,cACxC,gBAAC,EAAAxN,EAAD,CAAasM,IAAI,WAAW/N,IAAI,wCAAwCphB,MAAO,IAAK4wB,YAAY,UAAhG,uBAEF,gBAAC,KAAD,CAAML,IAAIC,QAAiBH,EAAe,aACxC,gBAAC,EAAAxN,EAAD,CAAasM,IAAI,UAAU/N,IAAI,uCAAuC6P,QAAS,IAAKjxB,MAAO,IAAK4wB,YAAY,UAA5G,uBAEF,gBAAC,KAAD,CAAML,IAAIC,QAAiBH,EAAe,oBACxC,gBAAC,EAAAxN,EAAD,CAAasM,IAAI,QAAQ/N,IAAI,qCAAqC6P,QAAS,IAAKjxB,MAAO,IAAK4wB,YAAY,UAAxG,yBExDD8O,GAAe,oDCyBbC,GAAuD,SAAC,GAAuK,IAAtKC,EAAqK,EAArKA,YAAaC,EAAwJ,EAAxJA,YAAaC,EAA2I,EAA3IA,YAAaC,EAA8H,EAA9HA,YAAaC,EAAiH,EAAjHA,SAAUC,EAAuG,EAAvGA,cAAeC,EAAwF,EAAxFA,gBAAiBC,EAAuE,EAAvEA,gBAAiBC,EAAsD,EAAtDA,gBAAiBC,EAAqC,EAArCA,UAAWC,EAA0B,EAA1BA,UAAWC,EAAe,EAAfA,UACpNC,EAAkB,CACtB/qC,QAAQ,EACRD,MAAM,EACNE,UAAU,EACVc,UAAU,EACVc,MAAO,IACPrD,aAAc,EACdoD,gBAAiB,GAGnB,OACE,gBAACm4B,EAAA,EAAD,CAASr7B,UDpCiB,yDCqCxB,uBAAKA,UDjCiC,uECkCpC,uBAAKA,UDpCQ,gDCqCX,gBAAC24B,EAAA,EAAD,CAAc34B,UDjCE,qDCkCd,sBAAIA,UDjCW,sDCkCb,wBAAMA,UDjCK,oDCiC2ByrC,GAAmB,2BACzD,wBAAMzrC,UDjCK,oDCiC2B0rC,GAAmB,2BACzD,wBAAM1rC,UDjCK,oDCiC2B2rC,GAAmB,2BACzD,wBAAM3rC,UDjCK,oDCiC2B4rC,MAI5C,uBAAK5rC,UD7CQ,gDC8Cb,gBAAC,IAAYqsC,EACX,gBAAC,EAAAzO,EAAD,CAAa0O,QAAQ,QAAQ//B,MAAOu/B,EAAc3Q,SAAS0C,gBAAgBC,gBAAiB9C,IAAK8Q,EAAc7Q,kBAC7G8Q,EACF,qBAAGhK,KAAMmK,GAAwB,GAAIlsC,UAAYksC,EAAkC,GAAtBltB,GAA0BtoB,OAAQ,SAAU61C,IAAI,cAC3G,gBAAC,EAAA3O,EAAD,CAAa0O,QAAQ,QAAQ//B,MAAOw/B,EAAgB5Q,SAAS0C,gBAAgBC,gBAAiB9C,IAAK+Q,EAAgB9Q,wBAEnH1gC,EACAyxC,EACF,qBAAGjK,KAAMoK,GAAwB,GAAInsC,UAAYmsC,EAAkC,GAAtBntB,GAA0BtoB,OAAQ,SAAU61C,IAAI,cAC3G,gBAAC,EAAA3O,EAAD,CAAa0O,QAAQ,QAAQ//B,MAAOy/B,EAAgB7Q,SAAS0C,gBAAgBC,gBAAiB9C,IAAKgR,EAAgB/Q,wBAEnH1gC,EACA0xC,EACF,qBAAGlK,KAAMqK,GAAwB,GAAIpsC,UAAYosC,EAAkC,GAAtBptB,GAA0BtoB,OAAQ,SAAU61C,IAAI,cAC3G,gBAAC,EAAA3O,EAAD,CAAa0O,QAAQ,QAAQ//B,MAAO0/B,EAAgB9Q,SAAS0C,gBAAgBC,gBAAiB9C,IAAKiR,EAAgBhR,wBAEnH1gC,KAIN,gBAACilC,EAAA,EAAD,CAAUx/B,UDhEM,gDCgEsBi+B,KAAM4N,MCxDrCW,GAAwE,SAAC,GAAoD,IAAnD1S,EAAkD,EAAlDA,QAAgByD,EAAkC,EAAzCkP,MAAalN,EAA4B,EAA5BA,cAAe5B,EAAa,EAAbA,QAC1H,OACE,gBAACtC,EAAA,EAAD,CAASr7B,UChB2B,wEDiBlC,gBAACs/B,EAAD,CAAiCt/B,UChBlB,oDDgB6C85B,QAASA,EAASyD,KAAMA,EAAMgC,cAAeA,IAEzG,uBAAKv/B,UCjBU,qDDkBb,gBAAC,EAAA49B,EAAD,CAAa5C,IAAK2C,EAAQ1C,gBAAiB1uB,MAAOoxB,EAAQxC,SAAS0C,gBAAgBC,qB,WEQ9E4O,GAA0E,SAAC,GAAsI,IAArIC,EAAoI,EAApIA,mBAAoBC,EAAgH,EAAhHA,WAAYC,EAAoG,EAApGA,kBAAmBC,EAAiF,EAAjFA,qBAAsBC,EAA2D,EAA3DA,wBAAyBC,EAAkC,EAAlCA,iBAAkBC,EAAgB,EAAhBA,WAE1LC,GADJ5S,QAAsC6S,IACV5S,OAAOC,aAAzC4S,SAEP,OACE,uBAAKptC,UCjCgC,0EDkCnC,uBAAKA,UCjCO,mDDkCV,gBAAC24B,EAAA,EAAD,CACE34B,UC5BgB,0DD6BhBC,MAAO,CACLoU,IAAK,EACLlJ,KAAM,EACNuxB,SAAU,SAEZxd,KAAM,CACJrT,MAAO,IACPhE,OAAQ,MAGV,wBAAM7H,UCtCW,4DDuCf,wBAAMA,UCtCkB,qEDsCwB,gBAAC47B,EAAD,CAAiBE,KAAM8Q,KAAoB,8BAIjG,uBAAK5sC,UClDS,qDDmDZ,gBAAC,EAAA49B,EAAD,CAAa5C,IAAKgS,EAAiB/R,gBAAiB1uB,MAAOygC,EAAiB7R,SAAS0C,gBAAgBC,mBAEvG,uBAAK99B,UCpDQ,oDDqDX,sBAAIC,MAAO,CAAEigC,MAAM,GAAI6M,GAA4B/sC,UClD5B,gEDkDkE6sC,GACzF,uBAAK7sC,UClDqB,mEDkDoB8sC,GAC9C,uBAAK9sC,UCtDW,yDDuDbitC,EAAWv7B,KAAI,SAAC+tB,EAAQpoC,GAAT,OACd,gBAAC2mC,EAAD,eAAYzqC,IAAQ8D,EAAL,IAAc41C,EAAWxd,IAAUgQ,OAEnDkN,EACC,uBAAK3sC,UC1DU,4DD2Db,gBAACqtC,GAAA,EAAD,CAAaC,QAASJ,UAExB3yC,MAiCN4yC,GAAmB,aEnGdI,GAAc,yCAEdC,GAAY,uCAEZC,GAAc,yCACdC,GAAW,sCACXC,GAAY,uCAKZ,GAAU,qCACV,GAAU,qC,sBCoBRC,GAAmC,SAAC,GAAkB,IAAjBC,EAAgB,EAAhBA,WAE1CC,GADOxT,QAAyBxmC,IACnBymC,OAAOuT,MACpBC,EAAYD,EAAMz0C,MAAM,EAAE,GAAG,GAC7B20C,EAAYF,EAAMz0C,MAAM,EAAE,GAAG,GAE7BgzC,EAAkB,CACtB/qC,QAAQ,EACRD,MAAM,EACN1B,UAAU,EACVwD,MAAO,IACPrD,aAAc,EACdoD,eAAgB,EAChBnB,WAAW,EACXqB,OAAO,EACPP,WAAY,CAAC,CACXyO,WAAY,IACZa,SAAU,CACRrS,aAAc,EACdoD,eAAgB,IAGpB,CACEoO,WAAY,IACZa,SAAU,CACRrS,aAAc,EACdoD,eAAgB,IAGpB,CACEoO,WAAY,KACZa,SAAU,CACRrS,aAAc,EACdoD,eAAgB,MAKtB,OACE,gCACE,gBAACm4B,EAAA,EAAD,CAASr7B,UAAWgf,IAClB,sBAAIhf,UDjEY,yCCiEmB6tC,GACnC,gBAACI,GAAD,CAAgBjuC,UDjED,uCCiE8BkuC,KAAMH,EAAWI,UAAU,WAE1E,gBAAC9S,EAAA,EAAD,CAASr7B,UAAWgf,IAClB,gBAACivB,GAAD,CAAgBjuC,UDnED,uCCmE8BkuC,KAAMF,EAAWG,UAAU,UAE1E,uBAAKnuC,UDlEiB,6CCmEpB,sBAAIA,UDlEa,0CCkEjB,kBACA,gBAAC,IAAYqsC,EACVyB,EAEAp8B,KAAI,SAACw8B,EAAM72C,GAAP,OACH,uBAAK2I,UD9EU,2CC8EuBzM,IAAK8D,GACzC,sBAAI2I,UAAWgf,IAAmBkvB,EAAKV,WACvC,gBAAChO,EAAA,EAAD,CAAUx/B,UAAWgf,GAAoBif,KAAMiQ,EAAKT,cACpD,gBAAC,KAAD,CAAMztC,UAAWgf,GAAiBod,GAAE,SAAW8R,EAAK3R,MAApD,aAGA,gBAAC,EAAAqB,EAAD,CAAa59B,UAAWgf,GAAkBgc,IAAKkT,EAAKP,UAAU1S,gBAAiB1uB,MAAO2hC,EAAKP,UAAUxS,SAAS0C,gBAAgBC,0BActImQ,GAAgD,SAAC,GAAkC,IAAjCjuC,EAAgC,EAAhCA,UAAWkuC,EAAqB,EAArBA,KAAMC,EAAe,EAAfA,UACjElQ,EACF,uBAAKj+B,UAA0B,UAAdmuC,EAAyBnvB,GAAiBA,IACzD,uBAAKhf,UD3GY,0CC4Gf,sBAAIA,UAAWgf,IAAmBkvB,EAAKV,WACvC,wBAAMxtC,UD3GM,wCC2GuBouC,SAAOC,QAASH,EAAKI,cAAe,mBAEzE,gBAAC9O,EAAA,EAAD,CAAUx/B,UAAWgf,GAAoBif,KAAMiQ,EAAKT,cACpD,gBAAC,KAAD,CAAMztC,UAAWgf,GAAiBod,GAAE,SAAW8R,EAAK3R,MAApD,cAMAhwB,EACF,uBAAKvM,UAA0B,UAAdmuC,EAAyBnvB,GAAiBA,IACzD,gBAAC,EAAA4e,EAAD,CAAa59B,UAAWgf,GAAkBgc,IAAKkT,EAAKP,UAAU1S,gBAAiB1uB,MAAO2hC,EAAKP,UAAUxS,SAAS0C,gBAAgBC,mBAIpI,OACE,uBAAK99B,UAAWA,GACE,SAAdmuC,EACE,gCACG5hC,EACA0xB,GAGH,gCACGA,EACA1xB,KAOPzY,GAAK,aC7IA,GAAU,2DACV,GAAU,2DC6BRy6C,GAA+E,SAAC,GAEuB,IADjHC,EACgH,EADhHA,iBAAkBC,EAC8F,EAD9FA,mBAAoBC,EAC0E,EAD1EA,iBAAkBC,EACwD,EADxDA,oBAAqBC,EACmC,EADnCA,cAAeC,EACoB,EADpBA,cAC3FC,EAA+G,EAA/GA,eAAgBC,EAA+F,EAA/FA,gBAAiBC,EAA8E,EAA9EA,oBAAqBC,EAAyD,EAAzDA,eAAgBC,EAAyC,EAAzCA,qBAAsBC,EAAmB,EAAnBA,cAE9F,OACE,gBAAC9T,EAAA,EAAD,CAASr7B,UD9BiB,qEC+BxB,uBAAKA,UDhCqB,uECiCxB,gBAAC,EAAA0uB,EAAD,CAAasM,IAAI,QAAQ/N,IAAI,gCAAgCjtB,UDzBlD,yDCyB2E88B,QAAS,IAAKjxB,MAAO,GAA3G,sBACA,uBAAK7L,UDpCgB,mECoCmBg7B,IAAK+T,EAAgB9T,gBAAiBhO,IAAK8hB,EAAgB5T,SAASC,YAC5G,wBAAMn7B,MAAO,CAAEigC,MAAM,GAAIyO,GAAyB3uC,UD5B/B,kEC4BiE4uC,IAEtF,uBAAK5uC,UD1C6C,+FC2ChD,uBAAKA,UAAWgf,IACd,gBAAC,EAAA4e,EAAD,CAAa59B,UDzBA,6DCyB6BuM,MAAOsiC,EAAc1T,SAAS0C,gBAAgBC,gBAAiB9C,IAAK6T,EAAc5T,mBAE9H,uBAAKj7B,UAAWgf,IACd,uBAAKhf,UDxCQ,8DCyCX,uBAAKA,UAAWgf,IACd,gBAAC2Z,EAAA,EAAD,CACIzZ,KAAM,CACJrT,MAAO,IACPhE,OAAQ,GAEV7H,UDlCQ,gECmCRC,MAAO,CACLmvC,OAAQ,EACR/6B,IAAK66B,aAAF,EAAEA,EAAsB76B,IAC3BlJ,KAAM+jC,aAAF,EAAEA,EAAsB/jC,KAC5B0P,MAAOq0B,aAAF,EAAEA,EAAsBr0B,MAC7B+E,OAAQsvB,aAAF,EAAEA,EAAsBtvB,SAGlC,wBAAM5f,UDvDK,kECwDT,wBAAMA,UDvDY,2ECuD+BgvC,GAA2B,2BAC5E,wBAAMhvC,UDvDO,sECuD+BivC,GAAsB,6BAGtE,gBAAC,EAAArR,EAAD,CAAa39B,MAAO,CAAEmvC,OAAQ,GAAKpvC,UDnDrB,kECmDuDuM,MAAOuiC,EAAe3T,SAAS0C,gBAAgBC,gBAAiB9C,IAAK8T,EAAe7T,mBAE3J,uBAAKj7B,UAAWgf,IACd,0BACE,wBAAM/e,MAAO,CAAEigC,MAAM,GAAIyO,GAAyB3uC,UDtDjC,wECsDyE4uC,GAC1F,uBAAK5uC,UD9DS,qEC8D4B0uC,IAG5C,uBAAK1uC,UD5DiB,2EC6DpB,uBAAKA,UD9DW,uEC8D4ByuC,GAC5C,uBAAKzuC,UDhES,qECgE4BwuC,QAMpD,uBAAKxuC,UDhFgB,kECiFlBmvC,EAAcz9B,KAAI,SAAC+tB,EAAQpoC,GAAT,OACjB,gBAAC2mC,EAAD,eAAYzqC,IAAQ8D,EAAL,IAAcooC,EAAOhQ,IAAUgQ,UC3D3C4P,GAA8C,SAAC,GAAe,IAAdC,EAAa,EAAbA,QAC3D,OAAQA,EAAQC,UACd,IAAK,sCACH,OAAO,gBAAC1V,EAAwByV,GAClC,IAAK,uCACH,OAAO,gBAACpV,EAAwBoV,GAClC,IAAK,gEACH,OAAO,gBAACrT,EAAkDqT,GAC5D,IAAK,wCACH,OAAO,gBAAC9R,EAA0B8R,GACpC,IAAK,4CACH,OAAO,gBAAC5P,EAAoB4P,GAC9B,IAAK,wCACH,OAAO,gBAACxO,EAAsBwO,GAChC,IAAK,6CACH,OAAO,gBAACvP,EAA+BuP,GACzC,IAAK,uCACH,OAAO,gBAAC1N,EAAyB0N,GACnC,IAAK,mCACD,OAAO,gBAACzM,EAAqByM,GACjC,IAAK,wCACH,OAAO,gBAAC7G,GAA0B6G,GACpC,IAAK,oCACH,OAAO,gBAACnQ,GAAsBmQ,GAChC,IAAK,kCACH,OAAO,gBAACtE,GAAoBsE,GAC9B,IAAK,oCACH,OAAO,gBAAC9D,GAA0B8D,GACpC,IAAK,6CACH,OAAO,gBAAC9C,GAA+B8C,GACzC,IAAK,8CACH,OAAO,gBAAC5C,GAAgC4C,GAC1C,IAAK,8BACH,OAAO,gBAAC1B,GAAgB0B,GAC1B,IAAK,oDACH,OAAO,gBAACf,GAAsCe,GAChD,QAEE,OADA78B,QAAQ4lB,IAAIiX,GAEV,2EAAmDA,EAAQC,Y,WClDtDC,GAAiD,SAAC,GAAe,IAAdlC,EAAa,EAAbA,QAEvDmC,GADMnV,QAAgCxmC,IAClBymC,OAAOC,aAA3BiV,YAEP,OACE,uBAAKzvC,UCrBuB,wDDsBxByvC,EAAY/9B,KAAI,WAAmBra,GAAnB,IAAQq4C,EAAR,EAAE72C,KAAF,OAChB,gBAAC82C,GAAA,EAAD,CAAYp8C,IAAG,cAAgBm8C,EAAhB,IAA4Br4C,EAASi2C,QAASA,EAASoC,SAAUA,EAAUxwB,KAAM,UAMlGprB,GAAK,aE7BA87C,GAAW,+BCkEtB,GA5CkC,SAACvyC,GACjC,IAAMk9B,EAASl9B,EAAMquB,KAAK6O,OAE1B,IAAKA,GAAkC,IAAxBA,EAAOsV,MAAMj9C,OAC1B,MAAM,IAAI+C,MAAM,gEAElB,MAA0C4kC,EAAOsV,MAAM,GAAhDC,EAAP,EAAOA,SAAUC,EAAjB,EAAiBA,OAAQxT,EAAzB,EAAyBA,KAAMlQ,EAA/B,EAA+BA,QAEzB2jB,EAAyB,CAC7B9T,cAAe6T,EACfE,YAAa1T,GAGf,OACE,gBAAC2T,EAAA,EAAD,CAAoBC,QAASH,GAG3B,gBAACI,EAAA,EAAD,CAAQ9C,QAASwC,GACf,gBAACO,EAAA,EAAQP,GACT,gBAACN,GAAD,CAAoBlC,QAASwC,IAED,kBAA1BE,EAAWC,YACX,gBAAC,EAAAvhB,EAAD,CAAa1uB,UAAWgf,GAAiB/e,MAAO,CAAEmU,SAAU,QAASyG,MAAO,EAAGu0B,OAAQ,EAAGxvB,OAAQ,SAAUob,IAAI,GAAG/N,IAAI,8BAA8B6P,QAAS,IAAKjxB,MAAO,IAAK4wB,YAAY,UAA3L,2BACAliC,EAE0B,IAA1By1C,EAAWC,YACX,gBAAC,EAAAvhB,EAAD,CAAa1uB,UAAWgf,GAAiB/e,MAAO,CAAEmU,SAAU,QAASjJ,KAAM,EAAGikC,OAAQ,EAAGxvB,OAAQ,SAAUob,IAAI,GAAG/N,IAAI,oCAAoC6P,QAAS,IAAKjxB,MAAO,IAAK4wB,YAAY,UAAhM,2BACAliC,EAE0B,YAA1By1C,EAAWC,YACX,gBAAC,EAAAvhB,EAAD,CAAa1uB,UAAWgf,GAAiB/e,MAAO,CAAEmU,SAAU,QAASyG,MAAO,EAAGu0B,OAAQ,EAAGxvB,OAAQ,SAAUob,IAAI,GAAG/N,IAAI,iCAAiC6P,QAAS,IAAKjxB,MAAO,IAAK4wB,YAAY,UAA9L,yBACAliC,EAE0B,WAA1By1C,EAAWC,YACX,gBAAC,EAAAvhB,EAAD,CAAa1uB,UAAWgf,GAAiB/e,MAAO,CAAEmU,SAAU,QAASjJ,KAAM,EAAGikC,OAAQ,EAAGxvB,OAAQ,SAAUob,IAAI,GAAG/N,IAAI,oCAAoC6P,QAAS,IAAKjxB,MAAO,IAAK4wB,YAAY,UAAhM,2BACAliC,EAED8xB,EAAQ3a,KAAI,SAAC2a,EAASh1B,GAAV,OACX,gBAACg4C,GAAD,CAAeC,QAASjjB,EAAS94B,IAAG,gBAAkB84B,EAAQoD,GAA1B,IAAgCp4B,W,iBCtD9E,IAAIi5C,EAAW,SAAUj+C,GACvB,aAEA,IAEIkI,EAFAg2C,EAAKl9C,OAAOC,UACZhB,EAASi+C,EAAGh+C,eAEZi+C,EAA4B,mBAAX30C,OAAwBA,OAAS,GAClD40C,EAAiBD,EAAQ10C,UAAY,aACrC40C,EAAsBF,EAAQG,eAAiB,kBAC/CC,EAAoBJ,EAAQK,aAAe,gBAE/C,SAASC,EAAO/5C,EAAKxD,EAAK+D,GAOxB,OANAjE,OAAO+H,eAAerE,EAAKxD,EAAK,CAC9B+D,MAAOA,EACPoF,YAAY,EACZK,cAAc,EACdC,UAAU,IAELjG,EAAIxD,GAEb,IAEEu9C,EAAO,GAAI,IACX,MAAOvN,GACPuN,EAAS,SAAS/5C,EAAKxD,EAAK+D,GAC1B,OAAOP,EAAIxD,GAAO+D,GAItB,SAAS0+B,EAAK+a,EAASC,EAAS38C,EAAM48C,GAEpC,IAAIC,EAAiBF,GAAWA,EAAQ19C,qBAAqB69C,EAAYH,EAAUG,EAC/EC,EAAY/9C,OAAOwK,OAAOqzC,EAAe59C,WACzC68C,EAAU,IAAIkB,EAAQJ,GAAe,IAMzC,OAFAG,EAAUE,QAsMZ,SAA0BP,EAAS18C,EAAM87C,GACvC,IAAIvoC,EAAQ2pC,EAEZ,OAAO,SAAgBnvB,EAAQvvB,GAC7B,GAAI+U,IAAU4pC,EACZ,MAAM,IAAI77C,MAAM,gCAGlB,GAAIiS,IAAU6pC,EAAmB,CAC/B,GAAe,UAAXrvB,EACF,MAAMvvB,EAKR,OAAO6+C,IAMT,IAHAvB,EAAQ/tB,OAASA,EACjB+tB,EAAQt9C,IAAMA,IAED,CACX,IAAI8+C,EAAWxB,EAAQwB,SACvB,GAAIA,EAAU,CACZ,IAAIC,EAAiBC,EAAoBF,EAAUxB,GACnD,GAAIyB,EAAgB,CAClB,GAAIA,IAAmBE,EAAkB,SACzC,OAAOF,GAIX,GAAuB,SAAnBzB,EAAQ/tB,OAGV+tB,EAAQ4B,KAAO5B,EAAQ6B,MAAQ7B,EAAQt9C,SAElC,GAAuB,UAAnBs9C,EAAQ/tB,OAAoB,CACrC,GAAIxa,IAAU2pC,EAEZ,MADA3pC,EAAQ6pC,EACFtB,EAAQt9C,IAGhBs9C,EAAQ8B,kBAAkB9B,EAAQt9C,SAEN,WAAnBs9C,EAAQ/tB,QACjB+tB,EAAQ+B,OAAO,SAAU/B,EAAQt9C,KAGnC+U,EAAQ4pC,EAER,IAAIW,EAASC,EAASrB,EAAS18C,EAAM87C,GACrC,GAAoB,WAAhBgC,EAAOt5C,KAAmB,CAO5B,GAJA+O,EAAQuoC,EAAQ5sB,KACZkuB,EACAY,EAEAF,EAAOt/C,MAAQi/C,EACjB,SAGF,MAAO,CACLx6C,MAAO66C,EAAOt/C,IACd0wB,KAAM4sB,EAAQ5sB,MAGS,UAAhB4uB,EAAOt5C,OAChB+O,EAAQ6pC,EAGRtB,EAAQ/tB,OAAS,QACjB+tB,EAAQt9C,IAAMs/C,EAAOt/C,OA9QPy/C,CAAiBvB,EAAS18C,EAAM87C,GAE7CiB,EAcT,SAASgB,EAASx7C,EAAIG,EAAKlE,GACzB,IACE,MAAO,CAAEgG,KAAM,SAAUhG,IAAK+D,EAAGpD,KAAKuD,EAAKlE,IAC3C,MAAO0wC,GACP,MAAO,CAAE1qC,KAAM,QAAShG,IAAK0wC,IAhBjClxC,EAAQ2jC,KAAOA,EAoBf,IAAIub,EAAyB,iBACzBc,EAAyB,iBACzBb,EAAoB,YACpBC,EAAoB,YAIpBK,EAAmB,GAMvB,SAASX,KACT,SAASoB,KACT,SAASC,KAIT,IAAInuB,EAAoB,GACxBA,EAAkBosB,GAAkB,WAClC,OAAOz8C,MAGT,IAAIy+C,EAAWp/C,OAAO6L,eAClBwzC,EAA0BD,GAAYA,EAASA,EAASrsB,EAAO,MAC/DssB,GACAA,IAA4BnC,GAC5Bj+C,EAAOkB,KAAKk/C,EAAyBjC,KAGvCpsB,EAAoBquB,GAGtB,IAAIC,EAAKH,EAA2Bl/C,UAClC69C,EAAU79C,UAAYD,OAAOwK,OAAOwmB,GAWtC,SAASuuB,EAAsBt/C,GAC7B,CAAC,OAAQ,QAAS,UAAU6D,SAAQ,SAASirB,GAC3C0uB,EAAOx9C,EAAW8uB,GAAQ,SAASvvB,GACjC,OAAOmB,KAAKs9C,QAAQlvB,EAAQvvB,SAkClC,SAASggD,EAAczB,EAAW0B,GAChC,SAASC,EAAO3wB,EAAQvvB,EAAK04B,EAASqG,GACpC,IAAIugB,EAASC,EAAShB,EAAUhvB,GAASgvB,EAAWv+C,GACpD,GAAoB,UAAhBs/C,EAAOt5C,KAEJ,CACL,IAAIc,EAASw4C,EAAOt/C,IAChByE,EAAQqC,EAAOrC,MACnB,OAAIA,GACiB,iBAAVA,GACPhF,EAAOkB,KAAK8D,EAAO,WACdw7C,EAAYvnB,QAAQj0B,EAAM07C,SAASroB,MAAK,SAASrzB,GACtDy7C,EAAO,OAAQz7C,EAAOi0B,EAASqG,MAC9B,SAAS2R,GACVwP,EAAO,QAASxP,EAAKhY,EAASqG,MAI3BkhB,EAAYvnB,QAAQj0B,GAAOqzB,MAAK,SAASsoB,GAI9Ct5C,EAAOrC,MAAQ27C,EACf1nB,EAAQ5xB,MACP,SAASogB,GAGV,OAAOg5B,EAAO,QAASh5B,EAAOwR,EAASqG,MAvBzCA,EAAOugB,EAAOt/C,KA4BlB,IAAIqgD,EAgCJl/C,KAAKs9C,QA9BL,SAAiBlvB,EAAQvvB,GACvB,SAASsgD,IACP,OAAO,IAAIL,GAAY,SAASvnB,EAASqG,GACvCmhB,EAAO3wB,EAAQvvB,EAAK04B,EAASqG,MAIjC,OAAOshB,EAaLA,EAAkBA,EAAgBvoB,KAChCwoB,EAGAA,GACEA,KAkHV,SAAStB,EAAoBF,EAAUxB,GACrC,IAAI/tB,EAASuvB,EAAS71C,SAASq0C,EAAQ/tB,QACvC,GAAIA,IAAW7nB,EAAW,CAKxB,GAFA41C,EAAQwB,SAAW,KAEI,UAAnBxB,EAAQ/tB,OAAoB,CAE9B,GAAIuvB,EAAS71C,SAAiB,SAG5Bq0C,EAAQ/tB,OAAS,SACjB+tB,EAAQt9C,IAAM0H,EACds3C,EAAoBF,EAAUxB,GAEP,UAAnBA,EAAQ/tB,QAGV,OAAO0vB,EAIX3B,EAAQ/tB,OAAS,QACjB+tB,EAAQt9C,IAAM,IAAIqH,UAChB,kDAGJ,OAAO43C,EAGT,IAAIK,EAASC,EAAShwB,EAAQuvB,EAAS71C,SAAUq0C,EAAQt9C,KAEzD,GAAoB,UAAhBs/C,EAAOt5C,KAIT,OAHAs3C,EAAQ/tB,OAAS,QACjB+tB,EAAQt9C,IAAMs/C,EAAOt/C,IACrBs9C,EAAQwB,SAAW,KACZG,EAGT,IAAIzO,EAAO8O,EAAOt/C,IAElB,OAAMwwC,EAOFA,EAAK9f,MAGP4sB,EAAQwB,EAASyB,YAAc/P,EAAK/rC,MAGpC64C,EAAQ7sB,KAAOquB,EAAS0B,QAQD,WAAnBlD,EAAQ/tB,SACV+tB,EAAQ/tB,OAAS,OACjB+tB,EAAQt9C,IAAM0H,GAUlB41C,EAAQwB,SAAW,KACZG,GANEzO,GA3BP8M,EAAQ/tB,OAAS,QACjB+tB,EAAQt9C,IAAM,IAAIqH,UAAU,oCAC5Bi2C,EAAQwB,SAAW,KACZG,GAoDX,SAASwB,EAAaC,GACpB,IAAIn4B,EAAQ,CAAEo4B,OAAQD,EAAK,IAEvB,KAAKA,IACPn4B,EAAMq4B,SAAWF,EAAK,IAGpB,KAAKA,IACPn4B,EAAMs4B,WAAaH,EAAK,GACxBn4B,EAAMu4B,SAAWJ,EAAK,IAGxBv/C,KAAK4/C,WAAW7gD,KAAKqoB,GAGvB,SAASy4B,EAAcz4B,GACrB,IAAI+2B,EAAS/2B,EAAM04B,YAAc,GACjC3B,EAAOt5C,KAAO,gBACPs5C,EAAOt/C,IACduoB,EAAM04B,WAAa3B,EAGrB,SAASd,EAAQJ,GAIfj9C,KAAK4/C,WAAa,CAAC,CAAEJ,OAAQ,SAC7BvC,EAAY95C,QAAQm8C,EAAct/C,MAClCA,KAAK+/C,OAAM,GA8Bb,SAAS3tB,EAAOoD,GACd,GAAIA,EAAU,CACZ,IAAIwqB,EAAiBxqB,EAASinB,GAC9B,GAAIuD,EACF,OAAOA,EAAexgD,KAAKg2B,GAG7B,GAA6B,mBAAlBA,EAASlG,KAClB,OAAOkG,EAGT,IAAKjb,MAAMib,EAAS52B,QAAS,CAC3B,IAAIF,GAAK,EAAG4wB,EAAO,SAASA,IAC1B,OAAS5wB,EAAI82B,EAAS52B,QACpB,GAAIN,EAAOkB,KAAKg2B,EAAU92B,GAGxB,OAFA4wB,EAAKhsB,MAAQkyB,EAAS92B,GACtB4wB,EAAKC,MAAO,EACLD,EAOX,OAHAA,EAAKhsB,MAAQiD,EACb+oB,EAAKC,MAAO,EAELD,GAGT,OAAOA,EAAKA,KAAOA,GAKvB,MAAO,CAAEA,KAAMouB,GAIjB,SAASA,IACP,MAAO,CAAEp6C,MAAOiD,EAAWgpB,MAAM,GA+MnC,OA5mBAgvB,EAAkBj/C,UAAYq/C,EAAG78C,YAAc08C,EAC/CA,EAA2B18C,YAAcy8C,EACzCA,EAAkB0B,YAAcnD,EAC9B0B,EACA5B,EACA,qBAaFv+C,EAAQ6hD,oBAAsB,SAASC,GACrC,IAAIC,EAAyB,mBAAXD,GAAyBA,EAAOr+C,YAClD,QAAOs+C,IACHA,IAAS7B,GAG2B,uBAAnC6B,EAAKH,aAAeG,EAAKnxB,QAIhC5wB,EAAQgiD,KAAO,SAASF,GAQtB,OAPI9gD,OAAO4K,eACT5K,OAAO4K,eAAek2C,EAAQ3B,IAE9B2B,EAAOj2C,UAAYs0C,EACnB1B,EAAOqD,EAAQvD,EAAmB,sBAEpCuD,EAAO7gD,UAAYD,OAAOwK,OAAO80C,GAC1BwB,GAOT9hD,EAAQiiD,MAAQ,SAASzhD,GACvB,MAAO,CAAEmgD,QAASngD,IAsEpB+/C,EAAsBC,EAAcv/C,WACpCu/C,EAAcv/C,UAAUo9C,GAAuB,WAC7C,OAAO18C,MAET3B,EAAQwgD,cAAgBA,EAKxBxgD,EAAQkiD,MAAQ,SAASxD,EAASC,EAAS38C,EAAM48C,EAAa6B,QACxC,IAAhBA,IAAwBA,EAActwB,SAE1C,IAAIgyB,EAAO,IAAI3B,EACb7c,EAAK+a,EAASC,EAAS38C,EAAM48C,GAC7B6B,GAGF,OAAOzgD,EAAQ6hD,oBAAoBlD,GAC/BwD,EACAA,EAAKlxB,OAAOqH,MAAK,SAAShxB,GACxB,OAAOA,EAAO4pB,KAAO5pB,EAAOrC,MAAQk9C,EAAKlxB,WAuKjDsvB,EAAsBD,GAEtB7B,EAAO6B,EAAI/B,EAAmB,aAO9B+B,EAAGlC,GAAkB,WACnB,OAAOz8C,MAGT2+C,EAAGv/C,SAAW,WACZ,MAAO,sBAkCTf,EAAQ6E,KAAO,SAASiF,GACtB,IAAIjF,EAAO,GACX,IAAK,IAAI3D,KAAO4I,EACdjF,EAAKnE,KAAKQ,GAMZ,OAJA2D,EAAK2d,UAIE,SAASyO,IACd,KAAOpsB,EAAKtE,QAAQ,CAClB,IAAIW,EAAM2D,EAAKu9C,MACf,GAAIlhD,KAAO4I,EAGT,OAFAmnB,EAAKhsB,MAAQ/D,EACb+vB,EAAKC,MAAO,EACLD,EAQX,OADAA,EAAKC,MAAO,EACLD,IAsCXjxB,EAAQ+zB,OAASA,EAMjBirB,EAAQ/9C,UAAY,CAClBwC,YAAau7C,EAEb0C,MAAO,SAASW,GAcd,GAbA1gD,KAAK2gD,KAAO,EACZ3gD,KAAKsvB,KAAO,EAGZtvB,KAAK+9C,KAAO/9C,KAAKg+C,MAAQz3C,EACzBvG,KAAKuvB,MAAO,EACZvvB,KAAK29C,SAAW,KAEhB39C,KAAKouB,OAAS,OACdpuB,KAAKnB,IAAM0H,EAEXvG,KAAK4/C,WAAWz8C,QAAQ08C,IAEnBa,EACH,IAAK,IAAIzxB,KAAQjvB,KAEQ,MAAnBivB,EAAK2L,OAAO,IACZt8B,EAAOkB,KAAKQ,KAAMivB,KACjB1U,OAAO0U,EAAK5pB,MAAM,MACrBrF,KAAKivB,GAAQ1oB,IAMrBwvB,KAAM,WACJ/1B,KAAKuvB,MAAO,EAEZ,IACIqxB,EADY5gD,KAAK4/C,WAAW,GACLE,WAC3B,GAAwB,UAApBc,EAAW/7C,KACb,MAAM+7C,EAAW/hD,IAGnB,OAAOmB,KAAK6gD,MAGd5C,kBAAmB,SAAS6C,GAC1B,GAAI9gD,KAAKuvB,KACP,MAAMuxB,EAGR,IAAI3E,EAAUn8C,KACd,SAAS+gD,EAAOC,EAAKC,GAYnB,OAXA9C,EAAOt5C,KAAO,QACds5C,EAAOt/C,IAAMiiD,EACb3E,EAAQ7sB,KAAO0xB,EAEXC,IAGF9E,EAAQ/tB,OAAS,OACjB+tB,EAAQt9C,IAAM0H,KAGN06C,EAGZ,IAAK,IAAIviD,EAAIsB,KAAK4/C,WAAWhhD,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAI0oB,EAAQpnB,KAAK4/C,WAAWlhD,GACxBy/C,EAAS/2B,EAAM04B,WAEnB,GAAqB,SAAjB14B,EAAMo4B,OAIR,OAAOuB,EAAO,OAGhB,GAAI35B,EAAMo4B,QAAUx/C,KAAK2gD,KAAM,CAC7B,IAAIO,EAAW5iD,EAAOkB,KAAK4nB,EAAO,YAC9B+5B,EAAa7iD,EAAOkB,KAAK4nB,EAAO,cAEpC,GAAI85B,GAAYC,EAAY,CAC1B,GAAInhD,KAAK2gD,KAAOv5B,EAAMq4B,SACpB,OAAOsB,EAAO35B,EAAMq4B,UAAU,GACzB,GAAIz/C,KAAK2gD,KAAOv5B,EAAMs4B,WAC3B,OAAOqB,EAAO35B,EAAMs4B,iBAGjB,GAAIwB,GACT,GAAIlhD,KAAK2gD,KAAOv5B,EAAMq4B,SACpB,OAAOsB,EAAO35B,EAAMq4B,UAAU,OAG3B,KAAI0B,EAMT,MAAM,IAAIx/C,MAAM,0CALhB,GAAI3B,KAAK2gD,KAAOv5B,EAAMs4B,WACpB,OAAOqB,EAAO35B,EAAMs4B,gBAU9BxB,OAAQ,SAASr5C,EAAMhG,GACrB,IAAK,IAAIH,EAAIsB,KAAK4/C,WAAWhhD,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAI0oB,EAAQpnB,KAAK4/C,WAAWlhD,GAC5B,GAAI0oB,EAAMo4B,QAAUx/C,KAAK2gD,MACrBriD,EAAOkB,KAAK4nB,EAAO,eACnBpnB,KAAK2gD,KAAOv5B,EAAMs4B,WAAY,CAChC,IAAI0B,EAAeh6B,EACnB,OAIAg6B,IACU,UAATv8C,GACS,aAATA,IACDu8C,EAAa5B,QAAU3gD,GACvBA,GAAOuiD,EAAa1B,aAGtB0B,EAAe,MAGjB,IAAIjD,EAASiD,EAAeA,EAAatB,WAAa,GAItD,OAHA3B,EAAOt5C,KAAOA,EACds5C,EAAOt/C,IAAMA,EAETuiD,GACFphD,KAAKouB,OAAS,OACdpuB,KAAKsvB,KAAO8xB,EAAa1B,WAClB5B,GAGF99C,KAAKqhD,SAASlD,IAGvBkD,SAAU,SAASlD,EAAQwB,GACzB,GAAoB,UAAhBxB,EAAOt5C,KACT,MAAMs5C,EAAOt/C,IAcf,MAXoB,UAAhBs/C,EAAOt5C,MACS,aAAhBs5C,EAAOt5C,KACT7E,KAAKsvB,KAAO6uB,EAAOt/C,IACM,WAAhBs/C,EAAOt5C,MAChB7E,KAAK6gD,KAAO7gD,KAAKnB,IAAMs/C,EAAOt/C,IAC9BmB,KAAKouB,OAAS,SACdpuB,KAAKsvB,KAAO,OACa,WAAhB6uB,EAAOt5C,MAAqB86C,IACrC3/C,KAAKsvB,KAAOqwB,GAGP7B,GAGTwD,OAAQ,SAAS5B,GACf,IAAK,IAAIhhD,EAAIsB,KAAK4/C,WAAWhhD,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAI0oB,EAAQpnB,KAAK4/C,WAAWlhD,GAC5B,GAAI0oB,EAAMs4B,aAAeA,EAGvB,OAFA1/C,KAAKqhD,SAASj6B,EAAM04B,WAAY14B,EAAMu4B,UACtCE,EAAcz4B,GACP02B,IAKb,MAAS,SAAS0B,GAChB,IAAK,IAAI9gD,EAAIsB,KAAK4/C,WAAWhhD,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAI0oB,EAAQpnB,KAAK4/C,WAAWlhD,GAC5B,GAAI0oB,EAAMo4B,SAAWA,EAAQ,CAC3B,IAAIrB,EAAS/2B,EAAM04B,WACnB,GAAoB,UAAhB3B,EAAOt5C,KAAkB,CAC3B,IAAI08C,EAASpD,EAAOt/C,IACpBghD,EAAcz4B,GAEhB,OAAOm6B,GAMX,MAAM,IAAI5/C,MAAM,0BAGlB6/C,cAAe,SAAShsB,EAAU4pB,EAAYC,GAa5C,OAZAr/C,KAAK29C,SAAW,CACd71C,SAAUsqB,EAAOoD,GACjB4pB,WAAYA,EACZC,QAASA,GAGS,SAAhBr/C,KAAKouB,SAGPpuB,KAAKnB,IAAM0H,GAGNu3C,IAQJz/C,EA7sBK,CAotBiBD,EAAOC,SAGtC,IACEojD,mBAAqBnF,EACrB,MAAOoF,GAUPv9C,SAAS,IAAK,yBAAdA,CAAwCm4C,K,qBC1uB1C,IAAIqF,EAAQ,EAAQ,MAEpB,SAAShd,EAAct7B,GACnB,OAAOs4C,EAAMp1C,cAAc,MAAMlD,EAAMs4C,EAAMp1C,cAAc,IAAI,KAAK,CAACo1C,EAAMp1C,cAAc,OAAO,CAAC,MAAQ,CAAC,KAAO,WAAW,EAAI,4MAA4M,IAAM,IAAIo1C,EAAMp1C,cAAc,OAAO,CAAC,MAAQ,CAAC,KAAO,WAAW,EAAI,6MAA6M,IAAM,OAGxmBo4B,EAAaid,aAAe,CAAC,QAAU,MAAM,EAAI,MAAM,EAAI,MAAM,QAAU,cAAc,MAAQ,CAAC,iBAAmB,mBAAmB,SAAW,YAEnJxjD,EAAOC,QAAUsmC,EAEjBA,EAAajlC,QAAUilC,G,qBCVvB,IAAIgd,EAAQ,EAAQ,MAEpB,SAASE,EAAMx4C,GACX,OAAOs4C,EAAMp1C,cAAc,MAAMlD,EAAMs4C,EAAMp1C,cAAc,IAAI,CAAC,GAAK,UAAU,YAAY,WAAWo1C,EAAMp1C,cAAc,UAAU,CAAC,MAAQ,CAAC,KAAO,WAAW,OAAS,wFAG7Ks1C,EAAKD,aAAe,CAAC,QAAU,eAE/BxjD,EAAOC,QAAUwjD,EAEjBA,EAAKniD,QAAUmiD","file":"component---src-components-page-tsx-5d6b842818560203c52f.js","sourcesContent":["module.exports = require(\"regenerator-runtime\");\n","/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n\n/* global define */\n(function () {\n 'use strict';\n\n var hasOwn = {}.hasOwnProperty;\n\n function classNames() {\n var classes = [];\n\n for (var i = 0; i < arguments.length; i++) {\n var arg = arguments[i];\n if (!arg) continue;\n var argType = typeof arg;\n\n if (argType === 'string' || argType === 'number') {\n classes.push(arg);\n } else if (Array.isArray(arg)) {\n if (arg.length) {\n var inner = classNames.apply(null, arg);\n\n if (inner) {\n classes.push(inner);\n }\n }\n } else if (argType === 'object') {\n if (arg.toString === Object.prototype.toString) {\n for (var key in arg) {\n if (hasOwn.call(arg, key) && arg[key]) {\n classes.push(key);\n }\n }\n } else {\n classes.push(arg.toString());\n }\n }\n }\n\n return classes.join(' ');\n }\n\n if (typeof module !== 'undefined' && module.exports) {\n classNames.default = classNames;\n module.exports = classNames;\n } else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n // register as 'classnames', consistent with npm package name\n define('classnames', [], function () {\n return classNames;\n });\n } else {\n window.classNames = classNames;\n }\n})();","var QueryHandler = require('./QueryHandler');\n\nvar each = require('./Util').each;\n/**\n * Represents a single media query, manages it's state and registered handlers for this query\n *\n * @constructor\n * @param {string} query the media query string\n * @param {boolean} [isUnconditional=false] whether the media query should run regardless of whether the conditions are met. Primarily for helping older browsers deal with mobile-first design\n */\n\n\nfunction MediaQuery(query, isUnconditional) {\n this.query = query;\n this.isUnconditional = isUnconditional;\n this.handlers = [];\n this.mql = window.matchMedia(query);\n var self = this;\n\n this.listener = function (mql) {\n // Chrome passes an MediaQueryListEvent object, while other browsers pass MediaQueryList directly\n self.mql = mql.currentTarget || mql;\n self.assess();\n };\n\n this.mql.addListener(this.listener);\n}\n\nMediaQuery.prototype = {\n constuctor: MediaQuery,\n\n /**\n * add a handler for this query, triggering if already active\n *\n * @param {object} handler\n * @param {function} handler.match callback for when query is activated\n * @param {function} [handler.unmatch] callback for when query is deactivated\n * @param {function} [handler.setup] callback for immediate execution when a query handler is registered\n * @param {boolean} [handler.deferSetup=false] should the setup callback be deferred until the first time the handler is matched?\n */\n addHandler: function addHandler(handler) {\n var qh = new QueryHandler(handler);\n this.handlers.push(qh);\n this.matches() && qh.on();\n },\n\n /**\n * removes the given handler from the collection, and calls it's destroy methods\n *\n * @param {object || function} handler the handler to remove\n */\n removeHandler: function removeHandler(handler) {\n var handlers = this.handlers;\n each(handlers, function (h, i) {\n if (h.equals(handler)) {\n h.destroy();\n return !handlers.splice(i, 1); //remove from array and exit each early\n }\n });\n },\n\n /**\n * Determine whether the media query should be considered a match\n *\n * @return {Boolean} true if media query can be considered a match, false otherwise\n */\n matches: function matches() {\n return this.mql.matches || this.isUnconditional;\n },\n\n /**\n * Clears all handlers and unbinds events\n */\n clear: function clear() {\n each(this.handlers, function (handler) {\n handler.destroy();\n });\n this.mql.removeListener(this.listener);\n this.handlers.length = 0; //clear array\n },\n\n /*\n * Assesses the query, turning on all handlers if it matches, turning them off if it doesn't match\n */\n assess: function assess() {\n var action = this.matches() ? 'on' : 'off';\n each(this.handlers, function (handler) {\n handler[action]();\n });\n }\n};\nmodule.exports = MediaQuery;","var MediaQuery = require('./MediaQuery');\n\nvar Util = require('./Util');\n\nvar each = Util.each;\nvar isFunction = Util.isFunction;\nvar isArray = Util.isArray;\n/**\n * Allows for registration of query handlers.\n * Manages the query handler's state and is responsible for wiring up browser events\n *\n * @constructor\n */\n\nfunction MediaQueryDispatch() {\n if (!window.matchMedia) {\n throw new Error('matchMedia not present, legacy browsers require a polyfill');\n }\n\n this.queries = {};\n this.browserIsIncapable = !window.matchMedia('only all').matches;\n}\n\nMediaQueryDispatch.prototype = {\n constructor: MediaQueryDispatch,\n\n /**\n * Registers a handler for the given media query\n *\n * @param {string} q the media query\n * @param {object || Array || Function} options either a single query handler object, a function, or an array of query handlers\n * @param {function} options.match fired when query matched\n * @param {function} [options.unmatch] fired when a query is no longer matched\n * @param {function} [options.setup] fired when handler first triggered\n * @param {boolean} [options.deferSetup=false] whether setup should be run immediately or deferred until query is first matched\n * @param {boolean} [shouldDegrade=false] whether this particular media query should always run on incapable browsers\n */\n register: function register(q, options, shouldDegrade) {\n var queries = this.queries,\n isUnconditional = shouldDegrade && this.browserIsIncapable;\n\n if (!queries[q]) {\n queries[q] = new MediaQuery(q, isUnconditional);\n } //normalise to object in an array\n\n\n if (isFunction(options)) {\n options = {\n match: options\n };\n }\n\n if (!isArray(options)) {\n options = [options];\n }\n\n each(options, function (handler) {\n if (isFunction(handler)) {\n handler = {\n match: handler\n };\n }\n\n queries[q].addHandler(handler);\n });\n return this;\n },\n\n /**\n * unregisters a query and all it's handlers, or a specific handler for a query\n *\n * @param {string} q the media query to target\n * @param {object || function} [handler] specific handler to unregister\n */\n unregister: function unregister(q, handler) {\n var query = this.queries[q];\n\n if (query) {\n if (handler) {\n query.removeHandler(handler);\n } else {\n query.clear();\n delete this.queries[q];\n }\n }\n\n return this;\n }\n};\nmodule.exports = MediaQueryDispatch;","/**\n * Delegate to handle a media query being matched and unmatched.\n *\n * @param {object} options\n * @param {function} options.match callback for when the media query is matched\n * @param {function} [options.unmatch] callback for when the media query is unmatched\n * @param {function} [options.setup] one-time callback triggered the first time a query is matched\n * @param {boolean} [options.deferSetup=false] should the setup callback be run immediately, rather than first time query is matched?\n * @constructor\n */\nfunction QueryHandler(options) {\n this.options = options;\n !options.deferSetup && this.setup();\n}\n\nQueryHandler.prototype = {\n constructor: QueryHandler,\n\n /**\n * coordinates setup of the handler\n *\n * @function\n */\n setup: function setup() {\n if (this.options.setup) {\n this.options.setup();\n }\n\n this.initialised = true;\n },\n\n /**\n * coordinates setup and triggering of the handler\n *\n * @function\n */\n on: function on() {\n !this.initialised && this.setup();\n this.options.match && this.options.match();\n },\n\n /**\n * coordinates the unmatch event for the handler\n *\n * @function\n */\n off: function off() {\n this.options.unmatch && this.options.unmatch();\n },\n\n /**\n * called when a handler is to be destroyed.\n * delegates to the destroy or unmatch callbacks, depending on availability.\n *\n * @function\n */\n destroy: function destroy() {\n this.options.destroy ? this.options.destroy() : this.off();\n },\n\n /**\n * determines equality by reference.\n * if object is supplied compare options, if function, compare match callback\n *\n * @function\n * @param {object || function} [target] the target for comparison\n */\n equals: function equals(target) {\n return this.options === target || this.options.match === target;\n }\n};\nmodule.exports = QueryHandler;","/**\n * Helper function for iterating over a collection\n *\n * @param collection\n * @param fn\n */\nfunction each(collection, fn) {\n var i = 0,\n length = collection.length,\n cont;\n\n for (i; i < length; i++) {\n cont = fn(collection[i], i);\n\n if (cont === false) {\n break; //allow early exit\n }\n }\n}\n/**\n * Helper function for determining whether target object is an array\n *\n * @param target the object under test\n * @return {Boolean} true if array, false otherwise\n */\n\n\nfunction isArray(target) {\n return Object.prototype.toString.apply(target) === '[object Array]';\n}\n/**\n * Helper function for determining whether target object is a function\n *\n * @param target the object under test\n * @return {Boolean} true if function, false otherwise\n */\n\n\nfunction isFunction(target) {\n return typeof target === 'function';\n}\n\nmodule.exports = {\n isFunction: isFunction,\n isArray: isArray,\n each: each\n};","var MediaQueryDispatch = require('./MediaQueryDispatch');\n\nmodule.exports = new MediaQueryDispatch();","var camel2hyphen = require('string-convert/camel2hyphen');\n\nvar isDimension = function isDimension(feature) {\n var re = /[height|width]$/;\n return re.test(feature);\n};\n\nvar obj2mq = function obj2mq(obj) {\n var mq = '';\n var features = Object.keys(obj);\n features.forEach(function (feature, index) {\n var value = obj[feature];\n feature = camel2hyphen(feature); // Add px to dimension features\n\n if (isDimension(feature) && typeof value === 'number') {\n value = value + 'px';\n }\n\n if (value === true) {\n mq += feature;\n } else if (value === false) {\n mq += 'not ' + feature;\n } else {\n mq += '(' + feature + ': ' + value + ')';\n }\n\n if (index < features.length - 1) {\n mq += ' and ';\n }\n });\n return mq;\n};\n\nvar json2mq = function json2mq(query) {\n var mq = '';\n\n if (typeof query === 'string') {\n return query;\n } // Handling array of media queries\n\n\n if (query instanceof Array) {\n query.forEach(function (q, index) {\n mq += obj2mq(q);\n\n if (index < query.length - 1) {\n mq += ', ';\n }\n });\n return mq;\n } // Handling single media query\n\n\n return obj2mq(query);\n};\n\nmodule.exports = json2mq;","/**\n * lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n/** Used as references for various `Number` constants. */\n\nvar NAN = 0 / 0;\n/** `Object#toString` result references. */\n\nvar symbolTag = '[object Symbol]';\n/** Used to match leading and trailing whitespace. */\n\nvar reTrim = /^\\s+|\\s+$/g;\n/** Used to detect bad signed hexadecimal string values. */\n\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n/** Used to detect binary string values. */\n\nvar reIsBinary = /^0b[01]+$/i;\n/** Used to detect octal string values. */\n\nvar reIsOctal = /^0o[0-7]+$/i;\n/** Built-in method references without a dependency on `root`. */\n\nvar freeParseInt = parseInt;\n/** Detect free variable `global` from Node.js. */\n\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n/** Detect free variable `self`. */\n\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n/** Used as a reference to the global object. */\n\nvar root = freeGlobal || freeSelf || Function('return this')();\n/** Used for built-in method references. */\n\nvar objectProto = Object.prototype;\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n\nvar objectToString = objectProto.toString;\n/* Built-in method references for those with the same name as other `lodash` methods. */\n\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\n\nvar now = function now() {\n return root.Date.now();\n};\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\n\n\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n\n wait = toNumber(wait) || 0;\n\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time; // Start the timer for the trailing edge.\n\n timerId = setTimeout(timerExpired, wait); // Invoke the leading edge.\n\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime; // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n\n return lastCallTime === undefined || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;\n }\n\n function timerExpired() {\n var time = now();\n\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n } // Restart the timer.\n\n\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined; // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n\n return result;\n }\n\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\n\n\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\n\n\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\n\n\nfunction isSymbol(value) {\n return typeof value == 'symbol' || isObjectLike(value) && objectToString.call(value) == symbolTag;\n}\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\n\n\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n\n if (isSymbol(value)) {\n return NAN;\n }\n\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? other + '' : other;\n }\n\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;\n}\n\nmodule.exports = debounce;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.NextArrow = exports.PrevArrow = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\n\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nvar PrevArrow = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(PrevArrow, _React$PureComponent);\n\n var _super = _createSuper(PrevArrow);\n\n function PrevArrow() {\n _classCallCheck(this, PrevArrow);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(PrevArrow, [{\n key: \"clickHandler\",\n value: function clickHandler(options, e) {\n if (e) {\n e.preventDefault();\n }\n\n this.props.clickHandler(options, e);\n }\n }, {\n key: \"render\",\n value: function render() {\n var prevClasses = {\n \"slick-arrow\": true,\n \"slick-prev\": true\n };\n var prevHandler = this.clickHandler.bind(this, {\n message: \"previous\"\n });\n\n if (!this.props.infinite && (this.props.currentSlide === 0 || this.props.slideCount <= this.props.slidesToShow)) {\n prevClasses[\"slick-disabled\"] = true;\n prevHandler = null;\n }\n\n var prevArrowProps = {\n key: \"0\",\n \"data-role\": \"none\",\n className: (0, _classnames[\"default\"])(prevClasses),\n style: {\n display: \"block\"\n },\n onClick: prevHandler\n };\n var customProps = {\n currentSlide: this.props.currentSlide,\n slideCount: this.props.slideCount\n };\n var prevArrow;\n\n if (this.props.prevArrow) {\n prevArrow = /*#__PURE__*/_react[\"default\"].cloneElement(this.props.prevArrow, _objectSpread(_objectSpread({}, prevArrowProps), customProps));\n } else {\n prevArrow = /*#__PURE__*/_react[\"default\"].createElement(\"button\", _extends({\n key: \"0\",\n type: \"button\"\n }, prevArrowProps), \" \", \"Previous\");\n }\n\n return prevArrow;\n }\n }]);\n\n return PrevArrow;\n}(_react[\"default\"].PureComponent);\n\nexports.PrevArrow = PrevArrow;\n\nvar NextArrow = /*#__PURE__*/function (_React$PureComponent2) {\n _inherits(NextArrow, _React$PureComponent2);\n\n var _super2 = _createSuper(NextArrow);\n\n function NextArrow() {\n _classCallCheck(this, NextArrow);\n\n return _super2.apply(this, arguments);\n }\n\n _createClass(NextArrow, [{\n key: \"clickHandler\",\n value: function clickHandler(options, e) {\n if (e) {\n e.preventDefault();\n }\n\n this.props.clickHandler(options, e);\n }\n }, {\n key: \"render\",\n value: function render() {\n var nextClasses = {\n \"slick-arrow\": true,\n \"slick-next\": true\n };\n var nextHandler = this.clickHandler.bind(this, {\n message: \"next\"\n });\n\n if (!(0, _innerSliderUtils.canGoNext)(this.props)) {\n nextClasses[\"slick-disabled\"] = true;\n nextHandler = null;\n }\n\n var nextArrowProps = {\n key: \"1\",\n \"data-role\": \"none\",\n className: (0, _classnames[\"default\"])(nextClasses),\n style: {\n display: \"block\"\n },\n onClick: nextHandler\n };\n var customProps = {\n currentSlide: this.props.currentSlide,\n slideCount: this.props.slideCount\n };\n var nextArrow;\n\n if (this.props.nextArrow) {\n nextArrow = /*#__PURE__*/_react[\"default\"].cloneElement(this.props.nextArrow, _objectSpread(_objectSpread({}, nextArrowProps), customProps));\n } else {\n nextArrow = /*#__PURE__*/_react[\"default\"].createElement(\"button\", _extends({\n key: \"1\",\n type: \"button\"\n }, nextArrowProps), \" \", \"Next\");\n }\n\n return nextArrow;\n }\n }]);\n\n return NextArrow;\n}(_react[\"default\"].PureComponent);\n\nexports.NextArrow = NextArrow;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nvar defaultProps = {\n accessibility: true,\n adaptiveHeight: false,\n afterChange: null,\n appendDots: function appendDots(dots) {\n return /*#__PURE__*/_react[\"default\"].createElement(\"ul\", {\n style: {\n display: \"block\"\n }\n }, dots);\n },\n arrows: true,\n autoplay: false,\n autoplaySpeed: 3000,\n beforeChange: null,\n centerMode: false,\n centerPadding: \"50px\",\n className: \"\",\n cssEase: \"ease\",\n customPaging: function customPaging(i) {\n return /*#__PURE__*/_react[\"default\"].createElement(\"button\", null, i + 1);\n },\n dots: false,\n dotsClass: \"slick-dots\",\n draggable: true,\n easing: \"linear\",\n edgeFriction: 0.35,\n fade: false,\n focusOnSelect: false,\n infinite: true,\n initialSlide: 0,\n lazyLoad: null,\n nextArrow: null,\n onEdge: null,\n onInit: null,\n onLazyLoadError: null,\n onReInit: null,\n pauseOnDotsHover: false,\n pauseOnFocus: false,\n pauseOnHover: true,\n prevArrow: null,\n responsive: null,\n rows: 1,\n rtl: false,\n slide: \"div\",\n slidesPerRow: 1,\n slidesToScroll: 1,\n slidesToShow: 1,\n speed: 500,\n swipe: true,\n swipeEvent: null,\n swipeToSlide: false,\n touchMove: true,\n touchThreshold: 5,\n useCSS: true,\n useTransform: true,\n variableWidth: false,\n vertical: false,\n waitForAnimate: true\n};\nvar _default = defaultProps;\nexports[\"default\"] = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Dots = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\n\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nvar getDotCount = function getDotCount(spec) {\n var dots;\n\n if (spec.infinite) {\n dots = Math.ceil(spec.slideCount / spec.slidesToScroll);\n } else {\n dots = Math.ceil((spec.slideCount - spec.slidesToShow) / spec.slidesToScroll) + 1;\n }\n\n return dots;\n};\n\nvar Dots = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(Dots, _React$PureComponent);\n\n var _super = _createSuper(Dots);\n\n function Dots() {\n _classCallCheck(this, Dots);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(Dots, [{\n key: \"clickHandler\",\n value: function clickHandler(options, e) {\n // In Autoplay the focus stays on clicked button even after transition\n // to next slide. That only goes away by click somewhere outside\n e.preventDefault();\n this.props.clickHandler(options);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n onMouseEnter = _this$props.onMouseEnter,\n onMouseOver = _this$props.onMouseOver,\n onMouseLeave = _this$props.onMouseLeave,\n infinite = _this$props.infinite,\n slidesToScroll = _this$props.slidesToScroll,\n slidesToShow = _this$props.slidesToShow,\n slideCount = _this$props.slideCount,\n currentSlide = _this$props.currentSlide;\n var dotCount = getDotCount({\n slideCount: slideCount,\n slidesToScroll: slidesToScroll,\n slidesToShow: slidesToShow,\n infinite: infinite\n });\n var mouseEvents = {\n onMouseEnter: onMouseEnter,\n onMouseOver: onMouseOver,\n onMouseLeave: onMouseLeave\n };\n var dots = [];\n\n for (var i = 0; i < dotCount; i++) {\n var _rightBound = (i + 1) * slidesToScroll - 1;\n\n var rightBound = infinite ? _rightBound : (0, _innerSliderUtils.clamp)(_rightBound, 0, slideCount - 1);\n\n var _leftBound = rightBound - (slidesToScroll - 1);\n\n var leftBound = infinite ? _leftBound : (0, _innerSliderUtils.clamp)(_leftBound, 0, slideCount - 1);\n var className = (0, _classnames[\"default\"])({\n \"slick-active\": infinite ? currentSlide >= leftBound && currentSlide <= rightBound : currentSlide === leftBound\n });\n var dotOptions = {\n message: \"dots\",\n index: i,\n slidesToScroll: slidesToScroll,\n currentSlide: currentSlide\n };\n var onClick = this.clickHandler.bind(this, dotOptions);\n dots = dots.concat( /*#__PURE__*/_react[\"default\"].createElement(\"li\", {\n key: i,\n className: className\n }, /*#__PURE__*/_react[\"default\"].cloneElement(this.props.customPaging(i), {\n onClick: onClick\n })));\n }\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(this.props.appendDots(dots), _objectSpread({\n className: this.props.dotsClass\n }, mouseEvents));\n }\n }]);\n\n return Dots;\n}(_react[\"default\"].PureComponent);\n\nexports.Dots = Dots;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slider = _interopRequireDefault(require(\"./slider\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nvar _default = _slider[\"default\"];\nexports[\"default\"] = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\nvar initialState = {\n animating: false,\n autoplaying: null,\n currentDirection: 0,\n currentLeft: null,\n currentSlide: 0,\n direction: 1,\n dragging: false,\n edgeDragged: false,\n initialized: false,\n lazyLoadedList: [],\n listHeight: null,\n listWidth: null,\n scrolling: false,\n slideCount: null,\n slideHeight: null,\n slideWidth: null,\n swipeLeft: null,\n swiped: false,\n // used by swipeEvent. differentites between touch and swipe.\n swiping: false,\n touchObject: {\n startX: 0,\n startY: 0,\n curX: 0,\n curY: 0\n },\n trackStyle: {},\n trackWidth: 0,\n targetSlide: 0\n};\nvar _default = initialState;\nexports[\"default\"] = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.InnerSlider = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _initialState = _interopRequireDefault(require(\"./initial-state\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash.debounce\"));\n\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\n\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\n\nvar _track = require(\"./track\");\n\nvar _dots = require(\"./dots\");\n\nvar _arrows = require(\"./arrows\");\n\nvar _resizeObserverPolyfill = _interopRequireDefault(require(\"resize-observer-polyfill\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar InnerSlider = /*#__PURE__*/function (_React$Component) {\n _inherits(InnerSlider, _React$Component);\n\n var _super = _createSuper(InnerSlider);\n\n function InnerSlider(props) {\n var _this;\n\n _classCallCheck(this, InnerSlider);\n\n _this = _super.call(this, props);\n\n _defineProperty(_assertThisInitialized(_this), \"listRefHandler\", function (ref) {\n return _this.list = ref;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"trackRefHandler\", function (ref) {\n return _this.track = ref;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"adaptHeight\", function () {\n if (_this.props.adaptiveHeight && _this.list) {\n var elem = _this.list.querySelector(\"[data-index=\\\"\".concat(_this.state.currentSlide, \"\\\"]\"));\n\n _this.list.style.height = (0, _innerSliderUtils.getHeight)(elem) + \"px\";\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentDidMount\", function () {\n _this.props.onInit && _this.props.onInit();\n\n if (_this.props.lazyLoad) {\n var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)(_objectSpread(_objectSpread({}, _this.props), _this.state));\n\n if (slidesToLoad.length > 0) {\n _this.setState(function (prevState) {\n return {\n lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)\n };\n });\n\n if (_this.props.onLazyLoad) {\n _this.props.onLazyLoad(slidesToLoad);\n }\n }\n }\n\n var spec = _objectSpread({\n listRef: _this.list,\n trackRef: _this.track\n }, _this.props);\n\n _this.updateState(spec, true, function () {\n _this.adaptHeight();\n\n _this.props.autoplay && _this.autoPlay(\"update\");\n });\n\n if (_this.props.lazyLoad === \"progressive\") {\n _this.lazyLoadTimer = setInterval(_this.progressiveLazyLoad, 1000);\n }\n\n _this.ro = new _resizeObserverPolyfill[\"default\"](function () {\n if (_this.state.animating) {\n _this.onWindowResized(false); // don't set trackStyle hence don't break animation\n\n\n _this.callbackTimers.push(setTimeout(function () {\n return _this.onWindowResized();\n }, _this.props.speed));\n } else {\n _this.onWindowResized();\n }\n });\n\n _this.ro.observe(_this.list);\n\n document.querySelectorAll && Array.prototype.forEach.call(document.querySelectorAll(\".slick-slide\"), function (slide) {\n slide.onfocus = _this.props.pauseOnFocus ? _this.onSlideFocus : null;\n slide.onblur = _this.props.pauseOnFocus ? _this.onSlideBlur : null;\n });\n\n if (window.addEventListener) {\n window.addEventListener(\"resize\", _this.onWindowResized);\n } else {\n window.attachEvent(\"onresize\", _this.onWindowResized);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentWillUnmount\", function () {\n if (_this.animationEndCallback) {\n clearTimeout(_this.animationEndCallback);\n }\n\n if (_this.lazyLoadTimer) {\n clearInterval(_this.lazyLoadTimer);\n }\n\n if (_this.callbackTimers.length) {\n _this.callbackTimers.forEach(function (timer) {\n return clearTimeout(timer);\n });\n\n _this.callbackTimers = [];\n }\n\n if (window.addEventListener) {\n window.removeEventListener(\"resize\", _this.onWindowResized);\n } else {\n window.detachEvent(\"onresize\", _this.onWindowResized);\n }\n\n if (_this.autoplayTimer) {\n clearInterval(_this.autoplayTimer);\n }\n\n _this.ro.disconnect();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentDidUpdate\", function (prevProps) {\n _this.checkImagesLoad();\n\n _this.props.onReInit && _this.props.onReInit();\n\n if (_this.props.lazyLoad) {\n var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)(_objectSpread(_objectSpread({}, _this.props), _this.state));\n\n if (slidesToLoad.length > 0) {\n _this.setState(function (prevState) {\n return {\n lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)\n };\n });\n\n if (_this.props.onLazyLoad) {\n _this.props.onLazyLoad(slidesToLoad);\n }\n }\n } // if (this.props.onLazyLoad) {\n // this.props.onLazyLoad([leftMostSlide])\n // }\n\n\n _this.adaptHeight();\n\n var spec = _objectSpread(_objectSpread({\n listRef: _this.list,\n trackRef: _this.track\n }, _this.props), _this.state);\n\n var setTrackStyle = _this.didPropsChange(prevProps);\n\n setTrackStyle && _this.updateState(spec, setTrackStyle, function () {\n if (_this.state.currentSlide >= _react[\"default\"].Children.count(_this.props.children)) {\n _this.changeSlide({\n message: \"index\",\n index: _react[\"default\"].Children.count(_this.props.children) - _this.props.slidesToShow,\n currentSlide: _this.state.currentSlide\n });\n }\n\n if (_this.props.autoplay) {\n _this.autoPlay(\"update\");\n } else {\n _this.pause(\"paused\");\n }\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onWindowResized\", function (setTrackStyle) {\n if (_this.debouncedResize) _this.debouncedResize.cancel();\n _this.debouncedResize = (0, _lodash[\"default\"])(function () {\n return _this.resizeWindow(setTrackStyle);\n }, 50);\n\n _this.debouncedResize();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"resizeWindow\", function () {\n var setTrackStyle = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n var isTrackMounted = Boolean(_this.track && _this.track.node); // prevent warning: setting state on unmounted component (server side rendering)\n\n if (!isTrackMounted) return;\n\n var spec = _objectSpread(_objectSpread({\n listRef: _this.list,\n trackRef: _this.track\n }, _this.props), _this.state);\n\n _this.updateState(spec, setTrackStyle, function () {\n if (_this.props.autoplay) _this.autoPlay(\"update\");else _this.pause(\"paused\");\n }); // animating state should be cleared while resizing, otherwise autoplay stops working\n\n\n _this.setState({\n animating: false\n });\n\n clearTimeout(_this.animationEndCallback);\n delete _this.animationEndCallback;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"updateState\", function (spec, setTrackStyle, callback) {\n var updatedState = (0, _innerSliderUtils.initializedState)(spec);\n spec = _objectSpread(_objectSpread(_objectSpread({}, spec), updatedState), {}, {\n slideIndex: updatedState.currentSlide\n });\n var targetLeft = (0, _innerSliderUtils.getTrackLeft)(spec);\n spec = _objectSpread(_objectSpread({}, spec), {}, {\n left: targetLeft\n });\n var trackStyle = (0, _innerSliderUtils.getTrackCSS)(spec);\n\n if (setTrackStyle || _react[\"default\"].Children.count(_this.props.children) !== _react[\"default\"].Children.count(spec.children)) {\n updatedState[\"trackStyle\"] = trackStyle;\n }\n\n _this.setState(updatedState, callback);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"ssrInit\", function () {\n if (_this.props.variableWidth) {\n var _trackWidth = 0,\n _trackLeft = 0;\n var childrenWidths = [];\n var preClones = (0, _innerSliderUtils.getPreClones)(_objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n slideCount: _this.props.children.length\n }));\n var postClones = (0, _innerSliderUtils.getPostClones)(_objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n slideCount: _this.props.children.length\n }));\n\n _this.props.children.forEach(function (child) {\n childrenWidths.push(child.props.style.width);\n _trackWidth += child.props.style.width;\n });\n\n for (var i = 0; i < preClones; i++) {\n _trackLeft += childrenWidths[childrenWidths.length - 1 - i];\n _trackWidth += childrenWidths[childrenWidths.length - 1 - i];\n }\n\n for (var _i = 0; _i < postClones; _i++) {\n _trackWidth += childrenWidths[_i];\n }\n\n for (var _i2 = 0; _i2 < _this.state.currentSlide; _i2++) {\n _trackLeft += childrenWidths[_i2];\n }\n\n var _trackStyle = {\n width: _trackWidth + \"px\",\n left: -_trackLeft + \"px\"\n };\n\n if (_this.props.centerMode) {\n var currentWidth = \"\".concat(childrenWidths[_this.state.currentSlide], \"px\");\n _trackStyle.left = \"calc(\".concat(_trackStyle.left, \" + (100% - \").concat(currentWidth, \") / 2 ) \");\n }\n\n return {\n trackStyle: _trackStyle\n };\n }\n\n var childrenCount = _react[\"default\"].Children.count(_this.props.children);\n\n var spec = _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n slideCount: childrenCount\n });\n\n var slideCount = (0, _innerSliderUtils.getPreClones)(spec) + (0, _innerSliderUtils.getPostClones)(spec) + childrenCount;\n var trackWidth = 100 / _this.props.slidesToShow * slideCount;\n var slideWidth = 100 / slideCount;\n var trackLeft = -slideWidth * ((0, _innerSliderUtils.getPreClones)(spec) + _this.state.currentSlide) * trackWidth / 100;\n\n if (_this.props.centerMode) {\n trackLeft += (100 - slideWidth * trackWidth / 100) / 2;\n }\n\n var trackStyle = {\n width: trackWidth + \"%\",\n left: trackLeft + \"%\"\n };\n return {\n slideWidth: slideWidth + \"%\",\n trackStyle: trackStyle\n };\n });\n\n _defineProperty(_assertThisInitialized(_this), \"checkImagesLoad\", function () {\n var images = _this.list && _this.list.querySelectorAll && _this.list.querySelectorAll(\".slick-slide img\") || [];\n var imagesCount = images.length,\n loadedCount = 0;\n Array.prototype.forEach.call(images, function (image) {\n var handler = function handler() {\n return ++loadedCount && loadedCount >= imagesCount && _this.onWindowResized();\n };\n\n if (!image.onclick) {\n image.onclick = function () {\n return image.parentNode.focus();\n };\n } else {\n var prevClickHandler = image.onclick;\n\n image.onclick = function () {\n prevClickHandler();\n image.parentNode.focus();\n };\n }\n\n if (!image.onload) {\n if (_this.props.lazyLoad) {\n image.onload = function () {\n _this.adaptHeight();\n\n _this.callbackTimers.push(setTimeout(_this.onWindowResized, _this.props.speed));\n };\n } else {\n image.onload = handler;\n\n image.onerror = function () {\n handler();\n _this.props.onLazyLoadError && _this.props.onLazyLoadError();\n };\n }\n }\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"progressiveLazyLoad\", function () {\n var slidesToLoad = [];\n\n var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n\n for (var index = _this.state.currentSlide; index < _this.state.slideCount + (0, _innerSliderUtils.getPostClones)(spec); index++) {\n if (_this.state.lazyLoadedList.indexOf(index) < 0) {\n slidesToLoad.push(index);\n break;\n }\n }\n\n for (var _index = _this.state.currentSlide - 1; _index >= -(0, _innerSliderUtils.getPreClones)(spec); _index--) {\n if (_this.state.lazyLoadedList.indexOf(_index) < 0) {\n slidesToLoad.push(_index);\n break;\n }\n }\n\n if (slidesToLoad.length > 0) {\n _this.setState(function (state) {\n return {\n lazyLoadedList: state.lazyLoadedList.concat(slidesToLoad)\n };\n });\n\n if (_this.props.onLazyLoad) {\n _this.props.onLazyLoad(slidesToLoad);\n }\n } else {\n if (_this.lazyLoadTimer) {\n clearInterval(_this.lazyLoadTimer);\n delete _this.lazyLoadTimer;\n }\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slideHandler\", function (index) {\n var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var _this$props = _this.props,\n asNavFor = _this$props.asNavFor,\n beforeChange = _this$props.beforeChange,\n onLazyLoad = _this$props.onLazyLoad,\n speed = _this$props.speed,\n afterChange = _this$props.afterChange; // capture currentslide before state is updated\n\n var currentSlide = _this.state.currentSlide;\n\n var _slideHandler = (0, _innerSliderUtils.slideHandler)(_objectSpread(_objectSpread(_objectSpread({\n index: index\n }, _this.props), _this.state), {}, {\n trackRef: _this.track,\n useCSS: _this.props.useCSS && !dontAnimate\n })),\n state = _slideHandler.state,\n nextState = _slideHandler.nextState;\n\n if (!state) return;\n beforeChange && beforeChange(currentSlide, state.currentSlide);\n var slidesToLoad = state.lazyLoadedList.filter(function (value) {\n return _this.state.lazyLoadedList.indexOf(value) < 0;\n });\n onLazyLoad && slidesToLoad.length > 0 && onLazyLoad(slidesToLoad);\n\n if (!_this.props.waitForAnimate && _this.animationEndCallback) {\n clearTimeout(_this.animationEndCallback);\n afterChange && afterChange(currentSlide);\n delete _this.animationEndCallback;\n }\n\n _this.setState(state, function () {\n // asNavForIndex check is to avoid recursive calls of slideHandler in waitForAnimate=false mode\n if (asNavFor && _this.asNavForIndex !== index) {\n _this.asNavForIndex = index;\n asNavFor.innerSlider.slideHandler(index);\n }\n\n if (!nextState) return;\n _this.animationEndCallback = setTimeout(function () {\n var animating = nextState.animating,\n firstBatch = _objectWithoutProperties(nextState, [\"animating\"]);\n\n _this.setState(firstBatch, function () {\n _this.callbackTimers.push(setTimeout(function () {\n return _this.setState({\n animating: animating\n });\n }, 10));\n\n afterChange && afterChange(state.currentSlide);\n delete _this.animationEndCallback;\n });\n }, speed);\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"changeSlide\", function (options) {\n var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n\n var targetSlide = (0, _innerSliderUtils.changeSlide)(spec, options);\n if (targetSlide !== 0 && !targetSlide) return;\n\n if (dontAnimate === true) {\n _this.slideHandler(targetSlide, dontAnimate);\n } else {\n _this.slideHandler(targetSlide);\n }\n\n _this.props.autoplay && _this.autoPlay(\"update\");\n\n if (_this.props.focusOnSelect) {\n var nodes = _this.list.querySelectorAll(\".slick-current\");\n\n nodes[0] && nodes[0].focus();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"clickHandler\", function (e) {\n if (_this.clickable === false) {\n e.stopPropagation();\n e.preventDefault();\n }\n\n _this.clickable = true;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"keyHandler\", function (e) {\n var dir = (0, _innerSliderUtils.keyHandler)(e, _this.props.accessibility, _this.props.rtl);\n dir !== \"\" && _this.changeSlide({\n message: dir\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"selectHandler\", function (options) {\n _this.changeSlide(options);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"disableBodyScroll\", function () {\n var preventDefault = function preventDefault(e) {\n e = e || window.event;\n if (e.preventDefault) e.preventDefault();\n e.returnValue = false;\n };\n\n window.ontouchmove = preventDefault;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"enableBodyScroll\", function () {\n window.ontouchmove = null;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"swipeStart\", function (e) {\n if (_this.props.verticalSwiping) {\n _this.disableBodyScroll();\n }\n\n var state = (0, _innerSliderUtils.swipeStart)(e, _this.props.swipe, _this.props.draggable);\n state !== \"\" && _this.setState(state);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"swipeMove\", function (e) {\n var state = (0, _innerSliderUtils.swipeMove)(e, _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n trackRef: _this.track,\n listRef: _this.list,\n slideIndex: _this.state.currentSlide\n }));\n if (!state) return;\n\n if (state[\"swiping\"]) {\n _this.clickable = false;\n }\n\n _this.setState(state);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"swipeEnd\", function (e) {\n var state = (0, _innerSliderUtils.swipeEnd)(e, _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n trackRef: _this.track,\n listRef: _this.list,\n slideIndex: _this.state.currentSlide\n }));\n if (!state) return;\n var triggerSlideHandler = state[\"triggerSlideHandler\"];\n delete state[\"triggerSlideHandler\"];\n\n _this.setState(state);\n\n if (triggerSlideHandler === undefined) return;\n\n _this.slideHandler(triggerSlideHandler);\n\n if (_this.props.verticalSwiping) {\n _this.enableBodyScroll();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"touchEnd\", function (e) {\n _this.swipeEnd(e);\n\n _this.clickable = true;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slickPrev\", function () {\n // this and fellow methods are wrapped in setTimeout\n // to make sure initialize setState has happened before\n // any of such methods are called\n _this.callbackTimers.push(setTimeout(function () {\n return _this.changeSlide({\n message: \"previous\"\n });\n }, 0));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slickNext\", function () {\n _this.callbackTimers.push(setTimeout(function () {\n return _this.changeSlide({\n message: \"next\"\n });\n }, 0));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slickGoTo\", function (slide) {\n var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n slide = Number(slide);\n if (isNaN(slide)) return \"\";\n\n _this.callbackTimers.push(setTimeout(function () {\n return _this.changeSlide({\n message: \"index\",\n index: slide,\n currentSlide: _this.state.currentSlide\n }, dontAnimate);\n }, 0));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"play\", function () {\n var nextIndex;\n\n if (_this.props.rtl) {\n nextIndex = _this.state.currentSlide - _this.props.slidesToScroll;\n } else {\n if ((0, _innerSliderUtils.canGoNext)(_objectSpread(_objectSpread({}, _this.props), _this.state))) {\n nextIndex = _this.state.currentSlide + _this.props.slidesToScroll;\n } else {\n return false;\n }\n }\n\n _this.slideHandler(nextIndex);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"autoPlay\", function (playType) {\n if (_this.autoplayTimer) {\n clearInterval(_this.autoplayTimer);\n }\n\n var autoplaying = _this.state.autoplaying;\n\n if (playType === \"update\") {\n if (autoplaying === \"hovered\" || autoplaying === \"focused\" || autoplaying === \"paused\") {\n return;\n }\n } else if (playType === \"leave\") {\n if (autoplaying === \"paused\" || autoplaying === \"focused\") {\n return;\n }\n } else if (playType === \"blur\") {\n if (autoplaying === \"paused\" || autoplaying === \"hovered\") {\n return;\n }\n }\n\n _this.autoplayTimer = setInterval(_this.play, _this.props.autoplaySpeed + 50);\n\n _this.setState({\n autoplaying: \"playing\"\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"pause\", function (pauseType) {\n if (_this.autoplayTimer) {\n clearInterval(_this.autoplayTimer);\n _this.autoplayTimer = null;\n }\n\n var autoplaying = _this.state.autoplaying;\n\n if (pauseType === \"paused\") {\n _this.setState({\n autoplaying: \"paused\"\n });\n } else if (pauseType === \"focused\") {\n if (autoplaying === \"hovered\" || autoplaying === \"playing\") {\n _this.setState({\n autoplaying: \"focused\"\n });\n }\n } else {\n // pauseType is 'hovered'\n if (autoplaying === \"playing\") {\n _this.setState({\n autoplaying: \"hovered\"\n });\n }\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onDotsOver\", function () {\n return _this.props.autoplay && _this.pause(\"hovered\");\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onDotsLeave\", function () {\n return _this.props.autoplay && _this.state.autoplaying === \"hovered\" && _this.autoPlay(\"leave\");\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onTrackOver\", function () {\n return _this.props.autoplay && _this.pause(\"hovered\");\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onTrackLeave\", function () {\n return _this.props.autoplay && _this.state.autoplaying === \"hovered\" && _this.autoPlay(\"leave\");\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSlideFocus\", function () {\n return _this.props.autoplay && _this.pause(\"focused\");\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSlideBlur\", function () {\n return _this.props.autoplay && _this.state.autoplaying === \"focused\" && _this.autoPlay(\"blur\");\n });\n\n _defineProperty(_assertThisInitialized(_this), \"render\", function () {\n var className = (0, _classnames[\"default\"])(\"slick-slider\", _this.props.className, {\n \"slick-vertical\": _this.props.vertical,\n \"slick-initialized\": true\n });\n\n var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n\n var trackProps = (0, _innerSliderUtils.extractObject)(spec, [\"fade\", \"cssEase\", \"speed\", \"infinite\", \"centerMode\", \"focusOnSelect\", \"currentSlide\", \"lazyLoad\", \"lazyLoadedList\", \"rtl\", \"slideWidth\", \"slideHeight\", \"listHeight\", \"vertical\", \"slidesToShow\", \"slidesToScroll\", \"slideCount\", \"trackStyle\", \"variableWidth\", \"unslick\", \"centerPadding\", \"targetSlide\", \"useCSS\"]);\n var pauseOnHover = _this.props.pauseOnHover;\n trackProps = _objectSpread(_objectSpread({}, trackProps), {}, {\n onMouseEnter: pauseOnHover ? _this.onTrackOver : null,\n onMouseLeave: pauseOnHover ? _this.onTrackLeave : null,\n onMouseOver: pauseOnHover ? _this.onTrackOver : null,\n focusOnSelect: _this.props.focusOnSelect && _this.clickable ? _this.selectHandler : null\n });\n var dots;\n\n if (_this.props.dots === true && _this.state.slideCount >= _this.props.slidesToShow) {\n var dotProps = (0, _innerSliderUtils.extractObject)(spec, [\"dotsClass\", \"slideCount\", \"slidesToShow\", \"currentSlide\", \"slidesToScroll\", \"clickHandler\", \"children\", \"customPaging\", \"infinite\", \"appendDots\"]);\n var pauseOnDotsHover = _this.props.pauseOnDotsHover;\n dotProps = _objectSpread(_objectSpread({}, dotProps), {}, {\n clickHandler: _this.changeSlide,\n onMouseEnter: pauseOnDotsHover ? _this.onDotsLeave : null,\n onMouseOver: pauseOnDotsHover ? _this.onDotsOver : null,\n onMouseLeave: pauseOnDotsHover ? _this.onDotsLeave : null\n });\n dots = /*#__PURE__*/_react[\"default\"].createElement(_dots.Dots, dotProps);\n }\n\n var prevArrow, nextArrow;\n var arrowProps = (0, _innerSliderUtils.extractObject)(spec, [\"infinite\", \"centerMode\", \"currentSlide\", \"slideCount\", \"slidesToShow\", \"prevArrow\", \"nextArrow\"]);\n arrowProps.clickHandler = _this.changeSlide;\n\n if (_this.props.arrows) {\n prevArrow = /*#__PURE__*/_react[\"default\"].createElement(_arrows.PrevArrow, arrowProps);\n nextArrow = /*#__PURE__*/_react[\"default\"].createElement(_arrows.NextArrow, arrowProps);\n }\n\n var verticalHeightStyle = null;\n\n if (_this.props.vertical) {\n verticalHeightStyle = {\n height: _this.state.listHeight\n };\n }\n\n var centerPaddingStyle = null;\n\n if (_this.props.vertical === false) {\n if (_this.props.centerMode === true) {\n centerPaddingStyle = {\n padding: \"0px \" + _this.props.centerPadding\n };\n }\n } else {\n if (_this.props.centerMode === true) {\n centerPaddingStyle = {\n padding: _this.props.centerPadding + \" 0px\"\n };\n }\n }\n\n var listStyle = _objectSpread(_objectSpread({}, verticalHeightStyle), centerPaddingStyle);\n\n var touchMove = _this.props.touchMove;\n var listProps = {\n className: \"slick-list\",\n style: listStyle,\n onClick: _this.clickHandler,\n onMouseDown: touchMove ? _this.swipeStart : null,\n onMouseMove: _this.state.dragging && touchMove ? _this.swipeMove : null,\n onMouseUp: touchMove ? _this.swipeEnd : null,\n onMouseLeave: _this.state.dragging && touchMove ? _this.swipeEnd : null,\n onTouchStart: touchMove ? _this.swipeStart : null,\n onTouchMove: _this.state.dragging && touchMove ? _this.swipeMove : null,\n onTouchEnd: touchMove ? _this.touchEnd : null,\n onTouchCancel: _this.state.dragging && touchMove ? _this.swipeEnd : null,\n onKeyDown: _this.props.accessibility ? _this.keyHandler : null\n };\n var innerSliderProps = {\n className: className,\n dir: \"ltr\",\n style: _this.props.style\n };\n\n if (_this.props.unslick) {\n listProps = {\n className: \"slick-list\"\n };\n innerSliderProps = {\n className: className\n };\n }\n\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", innerSliderProps, !_this.props.unslick ? prevArrow : \"\", /*#__PURE__*/_react[\"default\"].createElement(\"div\", _extends({\n ref: _this.listRefHandler\n }, listProps), /*#__PURE__*/_react[\"default\"].createElement(_track.Track, _extends({\n ref: _this.trackRefHandler\n }, trackProps), _this.props.children)), !_this.props.unslick ? nextArrow : \"\", !_this.props.unslick ? dots : \"\");\n });\n\n _this.list = null;\n _this.track = null;\n _this.state = _objectSpread(_objectSpread({}, _initialState[\"default\"]), {}, {\n currentSlide: _this.props.initialSlide,\n slideCount: _react[\"default\"].Children.count(_this.props.children)\n });\n _this.callbackTimers = [];\n _this.clickable = true;\n _this.debouncedResize = null;\n\n var ssrState = _this.ssrInit();\n\n _this.state = _objectSpread(_objectSpread({}, _this.state), ssrState);\n return _this;\n }\n\n _createClass(InnerSlider, [{\n key: \"didPropsChange\",\n value: function didPropsChange(prevProps) {\n var setTrackStyle = false;\n\n for (var _i3 = 0, _Object$keys = Object.keys(this.props); _i3 < _Object$keys.length; _i3++) {\n var key = _Object$keys[_i3];\n\n if (!prevProps.hasOwnProperty(key)) {\n setTrackStyle = true;\n break;\n }\n\n if (_typeof(prevProps[key]) === \"object\" || typeof prevProps[key] === \"function\") {\n continue;\n }\n\n if (prevProps[key] !== this.props[key]) {\n setTrackStyle = true;\n break;\n }\n }\n\n return setTrackStyle || _react[\"default\"].Children.count(this.props.children) !== _react[\"default\"].Children.count(prevProps.children);\n }\n }]);\n\n return InnerSlider;\n}(_react[\"default\"].Component);\n\nexports.InnerSlider = InnerSlider;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _innerSlider = require(\"./inner-slider\");\n\nvar _json2mq = _interopRequireDefault(require(\"json2mq\"));\n\nvar _defaultProps = _interopRequireDefault(require(\"./default-props\"));\n\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar enquire = (0, _innerSliderUtils.canUseDOM)() && require(\"enquire.js\");\n\nvar Slider = /*#__PURE__*/function (_React$Component) {\n _inherits(Slider, _React$Component);\n\n var _super = _createSuper(Slider);\n\n function Slider(props) {\n var _this;\n\n _classCallCheck(this, Slider);\n\n _this = _super.call(this, props);\n\n _defineProperty(_assertThisInitialized(_this), \"innerSliderRefHandler\", function (ref) {\n return _this.innerSlider = ref;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slickPrev\", function () {\n return _this.innerSlider.slickPrev();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slickNext\", function () {\n return _this.innerSlider.slickNext();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slickGoTo\", function (slide) {\n var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return _this.innerSlider.slickGoTo(slide, dontAnimate);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slickPause\", function () {\n return _this.innerSlider.pause(\"paused\");\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slickPlay\", function () {\n return _this.innerSlider.autoPlay(\"play\");\n });\n\n _this.state = {\n breakpoint: null\n };\n _this._responsiveMediaHandlers = [];\n return _this;\n }\n\n _createClass(Slider, [{\n key: \"media\",\n value: function media(query, handler) {\n // javascript handler for css media query\n enquire.register(query, handler);\n\n this._responsiveMediaHandlers.push({\n query: query,\n handler: handler\n });\n } // handles responsive breakpoints\n\n }, {\n key: \"componentDidMount\",\n value: function componentDidMount() {\n var _this2 = this; // performance monitoring\n //if (process.env.NODE_ENV !== 'production') {\n //const { whyDidYouUpdate } = require('why-did-you-update')\n //whyDidYouUpdate(React)\n //}\n\n\n if (this.props.responsive) {\n var breakpoints = this.props.responsive.map(function (breakpt) {\n return breakpt.breakpoint;\n }); // sort them in increasing order of their numerical value\n\n breakpoints.sort(function (x, y) {\n return x - y;\n });\n breakpoints.forEach(function (breakpoint, index) {\n // media query for each breakpoint\n var bQuery;\n\n if (index === 0) {\n bQuery = (0, _json2mq[\"default\"])({\n minWidth: 0,\n maxWidth: breakpoint\n });\n } else {\n bQuery = (0, _json2mq[\"default\"])({\n minWidth: breakpoints[index - 1] + 1,\n maxWidth: breakpoint\n });\n } // when not using server side rendering\n\n\n (0, _innerSliderUtils.canUseDOM)() && _this2.media(bQuery, function () {\n _this2.setState({\n breakpoint: breakpoint\n });\n });\n }); // Register media query for full screen. Need to support resize from small to large\n // convert javascript object to media query string\n\n var query = (0, _json2mq[\"default\"])({\n minWidth: breakpoints.slice(-1)[0]\n });\n (0, _innerSliderUtils.canUseDOM)() && this.media(query, function () {\n _this2.setState({\n breakpoint: null\n });\n });\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this._responsiveMediaHandlers.forEach(function (obj) {\n enquire.unregister(obj.query, obj.handler);\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this3 = this;\n\n var settings;\n var newProps;\n\n if (this.state.breakpoint) {\n newProps = this.props.responsive.filter(function (resp) {\n return resp.breakpoint === _this3.state.breakpoint;\n });\n settings = newProps[0].settings === \"unslick\" ? \"unslick\" : _objectSpread(_objectSpread(_objectSpread({}, _defaultProps[\"default\"]), this.props), newProps[0].settings);\n } else {\n settings = _objectSpread(_objectSpread({}, _defaultProps[\"default\"]), this.props);\n } // force scrolling by one if centerMode is on\n\n\n if (settings.centerMode) {\n if (settings.slidesToScroll > 1 && process.env.NODE_ENV !== \"production\") {\n console.warn(\"slidesToScroll should be equal to 1 in centerMode, you are using \".concat(settings.slidesToScroll));\n }\n\n settings.slidesToScroll = 1;\n } // force showing one slide and scrolling by one if the fade mode is on\n\n\n if (settings.fade) {\n if (settings.slidesToShow > 1 && process.env.NODE_ENV !== \"production\") {\n console.warn(\"slidesToShow should be equal to 1 when fade is true, you're using \".concat(settings.slidesToShow));\n }\n\n if (settings.slidesToScroll > 1 && process.env.NODE_ENV !== \"production\") {\n console.warn(\"slidesToScroll should be equal to 1 when fade is true, you're using \".concat(settings.slidesToScroll));\n }\n\n settings.slidesToShow = 1;\n settings.slidesToScroll = 1;\n } // makes sure that children is an array, even when there is only 1 child\n\n\n var children = _react[\"default\"].Children.toArray(this.props.children); // Children may contain false or null, so we should filter them\n // children may also contain string filled with spaces (in certain cases where we use jsx strings)\n\n\n children = children.filter(function (child) {\n if (typeof child === \"string\") {\n return !!child.trim();\n }\n\n return !!child;\n }); // rows and slidesPerRow logic is handled here\n\n if (settings.variableWidth && (settings.rows > 1 || settings.slidesPerRow > 1)) {\n console.warn(\"variableWidth is not supported in case of rows > 1 or slidesPerRow > 1\");\n settings.variableWidth = false;\n }\n\n var newChildren = [];\n var currentWidth = null;\n\n for (var i = 0; i < children.length; i += settings.rows * settings.slidesPerRow) {\n var newSlide = [];\n\n for (var j = i; j < i + settings.rows * settings.slidesPerRow; j += settings.slidesPerRow) {\n var row = [];\n\n for (var k = j; k < j + settings.slidesPerRow; k += 1) {\n if (settings.variableWidth && children[k].props.style) {\n currentWidth = children[k].props.style.width;\n }\n\n if (k >= children.length) break;\n row.push( /*#__PURE__*/_react[\"default\"].cloneElement(children[k], {\n key: 100 * i + 10 * j + k,\n tabIndex: -1,\n style: {\n width: \"\".concat(100 / settings.slidesPerRow, \"%\"),\n display: \"inline-block\"\n }\n }));\n }\n\n newSlide.push( /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n key: 10 * i + j\n }, row));\n }\n\n if (settings.variableWidth) {\n newChildren.push( /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n key: i,\n style: {\n width: currentWidth\n }\n }, newSlide));\n } else {\n newChildren.push( /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n key: i\n }, newSlide));\n }\n }\n\n if (settings === \"unslick\") {\n var className = \"regular slider \" + (this.props.className || \"\");\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n className: className\n }, children);\n } else if (newChildren.length <= settings.slidesToShow) {\n settings.unslick = true;\n }\n\n return /*#__PURE__*/_react[\"default\"].createElement(_innerSlider.InnerSlider, _extends({\n style: this.props.style,\n ref: this.innerSliderRefHandler\n }, settings), newChildren);\n }\n }]);\n\n return Slider;\n}(_react[\"default\"].Component);\n\nexports[\"default\"] = Slider;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Track = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\n\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n} // given specifications/props for a slide, fetch all the classes that need to be applied to the slide\n\n\nvar getSlideClasses = function getSlideClasses(spec) {\n var slickActive, slickCenter, slickCloned;\n var centerOffset, index;\n\n if (spec.rtl) {\n index = spec.slideCount - 1 - spec.index;\n } else {\n index = spec.index;\n }\n\n slickCloned = index < 0 || index >= spec.slideCount;\n\n if (spec.centerMode) {\n centerOffset = Math.floor(spec.slidesToShow / 2);\n slickCenter = (index - spec.currentSlide) % spec.slideCount === 0;\n\n if (index > spec.currentSlide - centerOffset - 1 && index <= spec.currentSlide + centerOffset) {\n slickActive = true;\n }\n } else {\n slickActive = spec.currentSlide <= index && index < spec.currentSlide + spec.slidesToShow;\n }\n\n var focusedSlide;\n\n if (spec.targetSlide < 0) {\n focusedSlide = spec.targetSlide + spec.slideCount;\n } else if (spec.targetSlide >= spec.slideCount) {\n focusedSlide = spec.targetSlide - spec.slideCount;\n } else {\n focusedSlide = spec.targetSlide;\n }\n\n var slickCurrent = index === focusedSlide;\n return {\n \"slick-slide\": true,\n \"slick-active\": slickActive,\n \"slick-center\": slickCenter,\n \"slick-cloned\": slickCloned,\n \"slick-current\": slickCurrent // dubious in case of RTL\n\n };\n};\n\nvar getSlideStyle = function getSlideStyle(spec) {\n var style = {};\n\n if (spec.variableWidth === undefined || spec.variableWidth === false) {\n style.width = spec.slideWidth;\n }\n\n if (spec.fade) {\n style.position = \"relative\";\n\n if (spec.vertical) {\n style.top = -spec.index * parseInt(spec.slideHeight);\n } else {\n style.left = -spec.index * parseInt(spec.slideWidth);\n }\n\n style.opacity = spec.currentSlide === spec.index ? 1 : 0;\n\n if (spec.useCSS) {\n style.transition = \"opacity \" + spec.speed + \"ms \" + spec.cssEase + \", \" + \"visibility \" + spec.speed + \"ms \" + spec.cssEase;\n }\n }\n\n return style;\n};\n\nvar getKey = function getKey(child, fallbackKey) {\n return child.key || fallbackKey;\n};\n\nvar renderSlides = function renderSlides(spec) {\n var key;\n var slides = [];\n var preCloneSlides = [];\n var postCloneSlides = [];\n\n var childrenCount = _react[\"default\"].Children.count(spec.children);\n\n var startIndex = (0, _innerSliderUtils.lazyStartIndex)(spec);\n var endIndex = (0, _innerSliderUtils.lazyEndIndex)(spec);\n\n _react[\"default\"].Children.forEach(spec.children, function (elem, index) {\n var child;\n var childOnClickOptions = {\n message: \"children\",\n index: index,\n slidesToScroll: spec.slidesToScroll,\n currentSlide: spec.currentSlide\n }; // in case of lazyLoad, whether or not we want to fetch the slide\n\n if (!spec.lazyLoad || spec.lazyLoad && spec.lazyLoadedList.indexOf(index) >= 0) {\n child = elem;\n } else {\n child = /*#__PURE__*/_react[\"default\"].createElement(\"div\", null);\n }\n\n var childStyle = getSlideStyle(_objectSpread(_objectSpread({}, spec), {}, {\n index: index\n }));\n var slideClass = child.props.className || \"\";\n var slideClasses = getSlideClasses(_objectSpread(_objectSpread({}, spec), {}, {\n index: index\n })); // push a cloned element of the desired slide\n\n slides.push( /*#__PURE__*/_react[\"default\"].cloneElement(child, {\n key: \"original\" + getKey(child, index),\n \"data-index\": index,\n className: (0, _classnames[\"default\"])(slideClasses, slideClass),\n tabIndex: \"-1\",\n \"aria-hidden\": !slideClasses[\"slick-active\"],\n style: _objectSpread(_objectSpread({\n outline: \"none\"\n }, child.props.style || {}), childStyle),\n onClick: function onClick(e) {\n child.props && child.props.onClick && child.props.onClick(e);\n\n if (spec.focusOnSelect) {\n spec.focusOnSelect(childOnClickOptions);\n }\n }\n })); // if slide needs to be precloned or postcloned\n\n if (spec.infinite && spec.fade === false) {\n var preCloneNo = childrenCount - index;\n\n if (preCloneNo <= (0, _innerSliderUtils.getPreClones)(spec) && childrenCount !== spec.slidesToShow) {\n key = -preCloneNo;\n\n if (key >= startIndex) {\n child = elem;\n }\n\n slideClasses = getSlideClasses(_objectSpread(_objectSpread({}, spec), {}, {\n index: key\n }));\n preCloneSlides.push( /*#__PURE__*/_react[\"default\"].cloneElement(child, {\n key: \"precloned\" + getKey(child, key),\n \"data-index\": key,\n tabIndex: \"-1\",\n className: (0, _classnames[\"default\"])(slideClasses, slideClass),\n \"aria-hidden\": !slideClasses[\"slick-active\"],\n style: _objectSpread(_objectSpread({}, child.props.style || {}), childStyle),\n onClick: function onClick(e) {\n child.props && child.props.onClick && child.props.onClick(e);\n\n if (spec.focusOnSelect) {\n spec.focusOnSelect(childOnClickOptions);\n }\n }\n }));\n }\n\n if (childrenCount !== spec.slidesToShow) {\n key = childrenCount + index;\n\n if (key < endIndex) {\n child = elem;\n }\n\n slideClasses = getSlideClasses(_objectSpread(_objectSpread({}, spec), {}, {\n index: key\n }));\n postCloneSlides.push( /*#__PURE__*/_react[\"default\"].cloneElement(child, {\n key: \"postcloned\" + getKey(child, key),\n \"data-index\": key,\n tabIndex: \"-1\",\n className: (0, _classnames[\"default\"])(slideClasses, slideClass),\n \"aria-hidden\": !slideClasses[\"slick-active\"],\n style: _objectSpread(_objectSpread({}, child.props.style || {}), childStyle),\n onClick: function onClick(e) {\n child.props && child.props.onClick && child.props.onClick(e);\n\n if (spec.focusOnSelect) {\n spec.focusOnSelect(childOnClickOptions);\n }\n }\n }));\n }\n }\n });\n\n if (spec.rtl) {\n return preCloneSlides.concat(slides, postCloneSlides).reverse();\n } else {\n return preCloneSlides.concat(slides, postCloneSlides);\n }\n};\n\nvar Track = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(Track, _React$PureComponent);\n\n var _super = _createSuper(Track);\n\n function Track() {\n var _this;\n\n _classCallCheck(this, Track);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"node\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"handleRef\", function (ref) {\n _this.node = ref;\n });\n\n return _this;\n }\n\n _createClass(Track, [{\n key: \"render\",\n value: function render() {\n var slides = renderSlides(this.props);\n var _this$props = this.props,\n onMouseEnter = _this$props.onMouseEnter,\n onMouseOver = _this$props.onMouseOver,\n onMouseLeave = _this$props.onMouseLeave;\n var mouseEvents = {\n onMouseEnter: onMouseEnter,\n onMouseOver: onMouseOver,\n onMouseLeave: onMouseLeave\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", _extends({\n ref: this.handleRef,\n className: \"slick-track\",\n style: this.props.trackStyle\n }, mouseEvents), slides);\n }\n }]);\n\n return Track;\n}(_react[\"default\"].PureComponent);\n\nexports.Track = Track;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.clamp = clamp;\nexports.canUseDOM = exports.slidesOnLeft = exports.slidesOnRight = exports.siblingDirection = exports.getTotalSlides = exports.getPostClones = exports.getPreClones = exports.getTrackLeft = exports.getTrackAnimateCSS = exports.getTrackCSS = exports.checkSpecKeys = exports.getSlideCount = exports.checkNavigable = exports.getNavigableIndexes = exports.swipeEnd = exports.swipeMove = exports.swipeStart = exports.keyHandler = exports.changeSlide = exports.slideHandler = exports.initializedState = exports.extractObject = exports.canGoNext = exports.getSwipeDirection = exports.getHeight = exports.getWidth = exports.lazySlidesOnRight = exports.lazySlidesOnLeft = exports.lazyEndIndex = exports.lazyStartIndex = exports.getRequiredLazySlides = exports.getOnDemandLazySlides = exports.safePreventDefault = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction clamp(number, lowerBound, upperBound) {\n return Math.max(lowerBound, Math.min(number, upperBound));\n}\n\nvar safePreventDefault = function safePreventDefault(event) {\n var passiveEvents = [\"onTouchStart\", \"onTouchMove\", \"onWheel\"];\n\n if (!passiveEvents.includes(event._reactName)) {\n event.preventDefault();\n }\n};\n\nexports.safePreventDefault = safePreventDefault;\n\nvar getOnDemandLazySlides = function getOnDemandLazySlides(spec) {\n var onDemandSlides = [];\n var startIndex = lazyStartIndex(spec);\n var endIndex = lazyEndIndex(spec);\n\n for (var slideIndex = startIndex; slideIndex < endIndex; slideIndex++) {\n if (spec.lazyLoadedList.indexOf(slideIndex) < 0) {\n onDemandSlides.push(slideIndex);\n }\n }\n\n return onDemandSlides;\n}; // return list of slides that need to be present\n\n\nexports.getOnDemandLazySlides = getOnDemandLazySlides;\n\nvar getRequiredLazySlides = function getRequiredLazySlides(spec) {\n var requiredSlides = [];\n var startIndex = lazyStartIndex(spec);\n var endIndex = lazyEndIndex(spec);\n\n for (var slideIndex = startIndex; slideIndex < endIndex; slideIndex++) {\n requiredSlides.push(slideIndex);\n }\n\n return requiredSlides;\n}; // startIndex that needs to be present\n\n\nexports.getRequiredLazySlides = getRequiredLazySlides;\n\nvar lazyStartIndex = function lazyStartIndex(spec) {\n return spec.currentSlide - lazySlidesOnLeft(spec);\n};\n\nexports.lazyStartIndex = lazyStartIndex;\n\nvar lazyEndIndex = function lazyEndIndex(spec) {\n return spec.currentSlide + lazySlidesOnRight(spec);\n};\n\nexports.lazyEndIndex = lazyEndIndex;\n\nvar lazySlidesOnLeft = function lazySlidesOnLeft(spec) {\n return spec.centerMode ? Math.floor(spec.slidesToShow / 2) + (parseInt(spec.centerPadding) > 0 ? 1 : 0) : 0;\n};\n\nexports.lazySlidesOnLeft = lazySlidesOnLeft;\n\nvar lazySlidesOnRight = function lazySlidesOnRight(spec) {\n return spec.centerMode ? Math.floor((spec.slidesToShow - 1) / 2) + 1 + (parseInt(spec.centerPadding) > 0 ? 1 : 0) : spec.slidesToShow;\n}; // get width of an element\n\n\nexports.lazySlidesOnRight = lazySlidesOnRight;\n\nvar getWidth = function getWidth(elem) {\n return elem && elem.offsetWidth || 0;\n};\n\nexports.getWidth = getWidth;\n\nvar getHeight = function getHeight(elem) {\n return elem && elem.offsetHeight || 0;\n};\n\nexports.getHeight = getHeight;\n\nvar getSwipeDirection = function getSwipeDirection(touchObject) {\n var verticalSwiping = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var xDist, yDist, r, swipeAngle;\n xDist = touchObject.startX - touchObject.curX;\n yDist = touchObject.startY - touchObject.curY;\n r = Math.atan2(yDist, xDist);\n swipeAngle = Math.round(r * 180 / Math.PI);\n\n if (swipeAngle < 0) {\n swipeAngle = 360 - Math.abs(swipeAngle);\n }\n\n if (swipeAngle <= 45 && swipeAngle >= 0 || swipeAngle <= 360 && swipeAngle >= 315) {\n return \"left\";\n }\n\n if (swipeAngle >= 135 && swipeAngle <= 225) {\n return \"right\";\n }\n\n if (verticalSwiping === true) {\n if (swipeAngle >= 35 && swipeAngle <= 135) {\n return \"up\";\n } else {\n return \"down\";\n }\n }\n\n return \"vertical\";\n}; // whether or not we can go next\n\n\nexports.getSwipeDirection = getSwipeDirection;\n\nvar canGoNext = function canGoNext(spec) {\n var canGo = true;\n\n if (!spec.infinite) {\n if (spec.centerMode && spec.currentSlide >= spec.slideCount - 1) {\n canGo = false;\n } else if (spec.slideCount <= spec.slidesToShow || spec.currentSlide >= spec.slideCount - spec.slidesToShow) {\n canGo = false;\n }\n }\n\n return canGo;\n}; // given an object and a list of keys, return new object with given keys\n\n\nexports.canGoNext = canGoNext;\n\nvar extractObject = function extractObject(spec, keys) {\n var newObject = {};\n keys.forEach(function (key) {\n return newObject[key] = spec[key];\n });\n return newObject;\n}; // get initialized state\n\n\nexports.extractObject = extractObject;\n\nvar initializedState = function initializedState(spec) {\n // spec also contains listRef, trackRef\n var slideCount = _react[\"default\"].Children.count(spec.children);\n\n var listNode = spec.listRef;\n var listWidth = Math.ceil(getWidth(listNode));\n var trackNode = spec.trackRef && spec.trackRef.node;\n var trackWidth = Math.ceil(getWidth(trackNode));\n var slideWidth;\n\n if (!spec.vertical) {\n var centerPaddingAdj = spec.centerMode && parseInt(spec.centerPadding) * 2;\n\n if (typeof spec.centerPadding === \"string\" && spec.centerPadding.slice(-1) === \"%\") {\n centerPaddingAdj *= listWidth / 100;\n }\n\n slideWidth = Math.ceil((listWidth - centerPaddingAdj) / spec.slidesToShow);\n } else {\n slideWidth = listWidth;\n }\n\n var slideHeight = listNode && getHeight(listNode.querySelector('[data-index=\"0\"]'));\n var listHeight = slideHeight * spec.slidesToShow;\n var currentSlide = spec.currentSlide === undefined ? spec.initialSlide : spec.currentSlide;\n\n if (spec.rtl && spec.currentSlide === undefined) {\n currentSlide = slideCount - 1 - spec.initialSlide;\n }\n\n var lazyLoadedList = spec.lazyLoadedList || [];\n var slidesToLoad = getOnDemandLazySlides(_objectSpread(_objectSpread({}, spec), {}, {\n currentSlide: currentSlide,\n lazyLoadedList: lazyLoadedList\n }));\n lazyLoadedList = lazyLoadedList.concat(slidesToLoad);\n var state = {\n slideCount: slideCount,\n slideWidth: slideWidth,\n listWidth: listWidth,\n trackWidth: trackWidth,\n currentSlide: currentSlide,\n slideHeight: slideHeight,\n listHeight: listHeight,\n lazyLoadedList: lazyLoadedList\n };\n\n if (spec.autoplaying === null && spec.autoplay) {\n state[\"autoplaying\"] = \"playing\";\n }\n\n return state;\n};\n\nexports.initializedState = initializedState;\n\nvar slideHandler = function slideHandler(spec) {\n var waitForAnimate = spec.waitForAnimate,\n animating = spec.animating,\n fade = spec.fade,\n infinite = spec.infinite,\n index = spec.index,\n slideCount = spec.slideCount,\n lazyLoad = spec.lazyLoad,\n currentSlide = spec.currentSlide,\n centerMode = spec.centerMode,\n slidesToScroll = spec.slidesToScroll,\n slidesToShow = spec.slidesToShow,\n useCSS = spec.useCSS;\n var lazyLoadedList = spec.lazyLoadedList;\n if (waitForAnimate && animating) return {};\n var animationSlide = index,\n finalSlide,\n animationLeft,\n finalLeft;\n var state = {},\n nextState = {};\n var targetSlide = infinite ? index : clamp(index, 0, slideCount - 1);\n\n if (fade) {\n if (!infinite && (index < 0 || index >= slideCount)) return {};\n\n if (index < 0) {\n animationSlide = index + slideCount;\n } else if (index >= slideCount) {\n animationSlide = index - slideCount;\n }\n\n if (lazyLoad && lazyLoadedList.indexOf(animationSlide) < 0) {\n lazyLoadedList = lazyLoadedList.concat(animationSlide);\n }\n\n state = {\n animating: true,\n currentSlide: animationSlide,\n lazyLoadedList: lazyLoadedList,\n targetSlide: animationSlide\n };\n nextState = {\n animating: false,\n targetSlide: animationSlide\n };\n } else {\n finalSlide = animationSlide;\n\n if (animationSlide < 0) {\n finalSlide = animationSlide + slideCount;\n if (!infinite) finalSlide = 0;else if (slideCount % slidesToScroll !== 0) finalSlide = slideCount - slideCount % slidesToScroll;\n } else if (!canGoNext(spec) && animationSlide > currentSlide) {\n animationSlide = finalSlide = currentSlide;\n } else if (centerMode && animationSlide >= slideCount) {\n animationSlide = infinite ? slideCount : slideCount - 1;\n finalSlide = infinite ? 0 : slideCount - 1;\n } else if (animationSlide >= slideCount) {\n finalSlide = animationSlide - slideCount;\n if (!infinite) finalSlide = slideCount - slidesToShow;else if (slideCount % slidesToScroll !== 0) finalSlide = 0;\n }\n\n if (!infinite && animationSlide + slidesToShow >= slideCount) {\n finalSlide = slideCount - slidesToShow;\n }\n\n animationLeft = getTrackLeft(_objectSpread(_objectSpread({}, spec), {}, {\n slideIndex: animationSlide\n }));\n finalLeft = getTrackLeft(_objectSpread(_objectSpread({}, spec), {}, {\n slideIndex: finalSlide\n }));\n\n if (!infinite) {\n if (animationLeft === finalLeft) animationSlide = finalSlide;\n animationLeft = finalLeft;\n }\n\n if (lazyLoad) {\n lazyLoadedList = lazyLoadedList.concat(getOnDemandLazySlides(_objectSpread(_objectSpread({}, spec), {}, {\n currentSlide: animationSlide\n })));\n }\n\n if (!useCSS) {\n state = {\n currentSlide: finalSlide,\n trackStyle: getTrackCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: finalLeft\n })),\n lazyLoadedList: lazyLoadedList,\n targetSlide: targetSlide\n };\n } else {\n state = {\n animating: true,\n currentSlide: finalSlide,\n trackStyle: getTrackAnimateCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: animationLeft\n })),\n lazyLoadedList: lazyLoadedList,\n targetSlide: targetSlide\n };\n nextState = {\n animating: false,\n currentSlide: finalSlide,\n trackStyle: getTrackCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: finalLeft\n })),\n swipeLeft: null,\n targetSlide: targetSlide\n };\n }\n }\n\n return {\n state: state,\n nextState: nextState\n };\n};\n\nexports.slideHandler = slideHandler;\n\nvar changeSlide = function changeSlide(spec, options) {\n var indexOffset, previousInt, slideOffset, unevenOffset, targetSlide;\n var slidesToScroll = spec.slidesToScroll,\n slidesToShow = spec.slidesToShow,\n slideCount = spec.slideCount,\n currentSlide = spec.currentSlide,\n previousTargetSlide = spec.targetSlide,\n lazyLoad = spec.lazyLoad,\n infinite = spec.infinite;\n unevenOffset = slideCount % slidesToScroll !== 0;\n indexOffset = unevenOffset ? 0 : (slideCount - currentSlide) % slidesToScroll;\n\n if (options.message === \"previous\") {\n slideOffset = indexOffset === 0 ? slidesToScroll : slidesToShow - indexOffset;\n targetSlide = currentSlide - slideOffset;\n\n if (lazyLoad && !infinite) {\n previousInt = currentSlide - slideOffset;\n targetSlide = previousInt === -1 ? slideCount - 1 : previousInt;\n }\n\n if (!infinite) {\n targetSlide = previousTargetSlide - slidesToScroll;\n }\n } else if (options.message === \"next\") {\n slideOffset = indexOffset === 0 ? slidesToScroll : indexOffset;\n targetSlide = currentSlide + slideOffset;\n\n if (lazyLoad && !infinite) {\n targetSlide = (currentSlide + slidesToScroll) % slideCount + indexOffset;\n }\n\n if (!infinite) {\n targetSlide = previousTargetSlide + slidesToScroll;\n }\n } else if (options.message === \"dots\") {\n // Click on dots\n targetSlide = options.index * options.slidesToScroll;\n } else if (options.message === \"children\") {\n // Click on the slides\n targetSlide = options.index;\n\n if (infinite) {\n var direction = siblingDirection(_objectSpread(_objectSpread({}, spec), {}, {\n targetSlide: targetSlide\n }));\n\n if (targetSlide > options.currentSlide && direction === \"left\") {\n targetSlide = targetSlide - slideCount;\n } else if (targetSlide < options.currentSlide && direction === \"right\") {\n targetSlide = targetSlide + slideCount;\n }\n }\n } else if (options.message === \"index\") {\n targetSlide = Number(options.index);\n }\n\n return targetSlide;\n};\n\nexports.changeSlide = changeSlide;\n\nvar keyHandler = function keyHandler(e, accessibility, rtl) {\n if (e.target.tagName.match(\"TEXTAREA|INPUT|SELECT\") || !accessibility) return \"\";\n if (e.keyCode === 37) return rtl ? \"next\" : \"previous\";\n if (e.keyCode === 39) return rtl ? \"previous\" : \"next\";\n return \"\";\n};\n\nexports.keyHandler = keyHandler;\n\nvar swipeStart = function swipeStart(e, swipe, draggable) {\n e.target.tagName === \"IMG\" && safePreventDefault(e);\n if (!swipe || !draggable && e.type.indexOf(\"mouse\") !== -1) return \"\";\n return {\n dragging: true,\n touchObject: {\n startX: e.touches ? e.touches[0].pageX : e.clientX,\n startY: e.touches ? e.touches[0].pageY : e.clientY,\n curX: e.touches ? e.touches[0].pageX : e.clientX,\n curY: e.touches ? e.touches[0].pageY : e.clientY\n }\n };\n};\n\nexports.swipeStart = swipeStart;\n\nvar swipeMove = function swipeMove(e, spec) {\n // spec also contains, trackRef and slideIndex\n var scrolling = spec.scrolling,\n animating = spec.animating,\n vertical = spec.vertical,\n swipeToSlide = spec.swipeToSlide,\n verticalSwiping = spec.verticalSwiping,\n rtl = spec.rtl,\n currentSlide = spec.currentSlide,\n edgeFriction = spec.edgeFriction,\n edgeDragged = spec.edgeDragged,\n onEdge = spec.onEdge,\n swiped = spec.swiped,\n swiping = spec.swiping,\n slideCount = spec.slideCount,\n slidesToScroll = spec.slidesToScroll,\n infinite = spec.infinite,\n touchObject = spec.touchObject,\n swipeEvent = spec.swipeEvent,\n listHeight = spec.listHeight,\n listWidth = spec.listWidth;\n if (scrolling) return;\n if (animating) return safePreventDefault(e);\n if (vertical && swipeToSlide && verticalSwiping) safePreventDefault(e);\n var swipeLeft,\n state = {};\n var curLeft = getTrackLeft(spec);\n touchObject.curX = e.touches ? e.touches[0].pageX : e.clientX;\n touchObject.curY = e.touches ? e.touches[0].pageY : e.clientY;\n touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(touchObject.curX - touchObject.startX, 2)));\n var verticalSwipeLength = Math.round(Math.sqrt(Math.pow(touchObject.curY - touchObject.startY, 2)));\n\n if (!verticalSwiping && !swiping && verticalSwipeLength > 10) {\n return {\n scrolling: true\n };\n }\n\n if (verticalSwiping) touchObject.swipeLength = verticalSwipeLength;\n var positionOffset = (!rtl ? 1 : -1) * (touchObject.curX > touchObject.startX ? 1 : -1);\n if (verticalSwiping) positionOffset = touchObject.curY > touchObject.startY ? 1 : -1;\n var dotCount = Math.ceil(slideCount / slidesToScroll);\n var swipeDirection = getSwipeDirection(spec.touchObject, verticalSwiping);\n var touchSwipeLength = touchObject.swipeLength;\n\n if (!infinite) {\n if (currentSlide === 0 && (swipeDirection === \"right\" || swipeDirection === \"down\") || currentSlide + 1 >= dotCount && (swipeDirection === \"left\" || swipeDirection === \"up\") || !canGoNext(spec) && (swipeDirection === \"left\" || swipeDirection === \"up\")) {\n touchSwipeLength = touchObject.swipeLength * edgeFriction;\n\n if (edgeDragged === false && onEdge) {\n onEdge(swipeDirection);\n state[\"edgeDragged\"] = true;\n }\n }\n }\n\n if (!swiped && swipeEvent) {\n swipeEvent(swipeDirection);\n state[\"swiped\"] = true;\n }\n\n if (!vertical) {\n if (!rtl) {\n swipeLeft = curLeft + touchSwipeLength * positionOffset;\n } else {\n swipeLeft = curLeft - touchSwipeLength * positionOffset;\n }\n } else {\n swipeLeft = curLeft + touchSwipeLength * (listHeight / listWidth) * positionOffset;\n }\n\n if (verticalSwiping) {\n swipeLeft = curLeft + touchSwipeLength * positionOffset;\n }\n\n state = _objectSpread(_objectSpread({}, state), {}, {\n touchObject: touchObject,\n swipeLeft: swipeLeft,\n trackStyle: getTrackCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: swipeLeft\n }))\n });\n\n if (Math.abs(touchObject.curX - touchObject.startX) < Math.abs(touchObject.curY - touchObject.startY) * 0.8) {\n return state;\n }\n\n if (touchObject.swipeLength > 10) {\n state[\"swiping\"] = true;\n safePreventDefault(e);\n }\n\n return state;\n};\n\nexports.swipeMove = swipeMove;\n\nvar swipeEnd = function swipeEnd(e, spec) {\n var dragging = spec.dragging,\n swipe = spec.swipe,\n touchObject = spec.touchObject,\n listWidth = spec.listWidth,\n touchThreshold = spec.touchThreshold,\n verticalSwiping = spec.verticalSwiping,\n listHeight = spec.listHeight,\n swipeToSlide = spec.swipeToSlide,\n scrolling = spec.scrolling,\n onSwipe = spec.onSwipe,\n targetSlide = spec.targetSlide,\n currentSlide = spec.currentSlide,\n infinite = spec.infinite;\n\n if (!dragging) {\n if (swipe) safePreventDefault(e);\n return {};\n }\n\n var minSwipe = verticalSwiping ? listHeight / touchThreshold : listWidth / touchThreshold;\n var swipeDirection = getSwipeDirection(touchObject, verticalSwiping); // reset the state of touch related state variables.\n\n var state = {\n dragging: false,\n edgeDragged: false,\n scrolling: false,\n swiping: false,\n swiped: false,\n swipeLeft: null,\n touchObject: {}\n };\n\n if (scrolling) {\n return state;\n }\n\n if (!touchObject.swipeLength) {\n return state;\n }\n\n if (touchObject.swipeLength > minSwipe) {\n safePreventDefault(e);\n\n if (onSwipe) {\n onSwipe(swipeDirection);\n }\n\n var slideCount, newSlide;\n var activeSlide = infinite ? currentSlide : targetSlide;\n\n switch (swipeDirection) {\n case \"left\":\n case \"up\":\n newSlide = activeSlide + getSlideCount(spec);\n slideCount = swipeToSlide ? checkNavigable(spec, newSlide) : newSlide;\n state[\"currentDirection\"] = 0;\n break;\n\n case \"right\":\n case \"down\":\n newSlide = activeSlide - getSlideCount(spec);\n slideCount = swipeToSlide ? checkNavigable(spec, newSlide) : newSlide;\n state[\"currentDirection\"] = 1;\n break;\n\n default:\n slideCount = activeSlide;\n }\n\n state[\"triggerSlideHandler\"] = slideCount;\n } else {\n // Adjust the track back to it's original position.\n var currentLeft = getTrackLeft(spec);\n state[\"trackStyle\"] = getTrackAnimateCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: currentLeft\n }));\n }\n\n return state;\n};\n\nexports.swipeEnd = swipeEnd;\n\nvar getNavigableIndexes = function getNavigableIndexes(spec) {\n var max = spec.infinite ? spec.slideCount * 2 : spec.slideCount;\n var breakpoint = spec.infinite ? spec.slidesToShow * -1 : 0;\n var counter = spec.infinite ? spec.slidesToShow * -1 : 0;\n var indexes = [];\n\n while (breakpoint < max) {\n indexes.push(breakpoint);\n breakpoint = counter + spec.slidesToScroll;\n counter += Math.min(spec.slidesToScroll, spec.slidesToShow);\n }\n\n return indexes;\n};\n\nexports.getNavigableIndexes = getNavigableIndexes;\n\nvar checkNavigable = function checkNavigable(spec, index) {\n var navigables = getNavigableIndexes(spec);\n var prevNavigable = 0;\n\n if (index > navigables[navigables.length - 1]) {\n index = navigables[navigables.length - 1];\n } else {\n for (var n in navigables) {\n if (index < navigables[n]) {\n index = prevNavigable;\n break;\n }\n\n prevNavigable = navigables[n];\n }\n }\n\n return index;\n};\n\nexports.checkNavigable = checkNavigable;\n\nvar getSlideCount = function getSlideCount(spec) {\n var centerOffset = spec.centerMode ? spec.slideWidth * Math.floor(spec.slidesToShow / 2) : 0;\n\n if (spec.swipeToSlide) {\n var swipedSlide;\n var slickList = spec.listRef;\n var slides = slickList.querySelectorAll && slickList.querySelectorAll(\".slick-slide\") || [];\n Array.from(slides).every(function (slide) {\n if (!spec.vertical) {\n if (slide.offsetLeft - centerOffset + getWidth(slide) / 2 > spec.swipeLeft * -1) {\n swipedSlide = slide;\n return false;\n }\n } else {\n if (slide.offsetTop + getHeight(slide) / 2 > spec.swipeLeft * -1) {\n swipedSlide = slide;\n return false;\n }\n }\n\n return true;\n });\n\n if (!swipedSlide) {\n return 0;\n }\n\n var currentIndex = spec.rtl === true ? spec.slideCount - spec.currentSlide : spec.currentSlide;\n var slidesTraversed = Math.abs(swipedSlide.dataset.index - currentIndex) || 1;\n return slidesTraversed;\n } else {\n return spec.slidesToScroll;\n }\n};\n\nexports.getSlideCount = getSlideCount;\n\nvar checkSpecKeys = function checkSpecKeys(spec, keysArray) {\n return keysArray.reduce(function (value, key) {\n return value && spec.hasOwnProperty(key);\n }, true) ? null : console.error(\"Keys Missing:\", spec);\n};\n\nexports.checkSpecKeys = checkSpecKeys;\n\nvar getTrackCSS = function getTrackCSS(spec) {\n checkSpecKeys(spec, [\"left\", \"variableWidth\", \"slideCount\", \"slidesToShow\", \"slideWidth\"]);\n var trackWidth, trackHeight;\n var trackChildren = spec.slideCount + 2 * spec.slidesToShow;\n\n if (!spec.vertical) {\n trackWidth = getTotalSlides(spec) * spec.slideWidth;\n } else {\n trackHeight = trackChildren * spec.slideHeight;\n }\n\n var style = {\n opacity: 1,\n transition: \"\",\n WebkitTransition: \"\"\n };\n\n if (spec.useTransform) {\n var WebkitTransform = !spec.vertical ? \"translate3d(\" + spec.left + \"px, 0px, 0px)\" : \"translate3d(0px, \" + spec.left + \"px, 0px)\";\n var transform = !spec.vertical ? \"translate3d(\" + spec.left + \"px, 0px, 0px)\" : \"translate3d(0px, \" + spec.left + \"px, 0px)\";\n var msTransform = !spec.vertical ? \"translateX(\" + spec.left + \"px)\" : \"translateY(\" + spec.left + \"px)\";\n style = _objectSpread(_objectSpread({}, style), {}, {\n WebkitTransform: WebkitTransform,\n transform: transform,\n msTransform: msTransform\n });\n } else {\n if (spec.vertical) {\n style[\"top\"] = spec.left;\n } else {\n style[\"left\"] = spec.left;\n }\n }\n\n if (spec.fade) style = {\n opacity: 1\n };\n if (trackWidth) style.width = trackWidth;\n if (trackHeight) style.height = trackHeight; // Fallback for IE8\n\n if (window && !window.addEventListener && window.attachEvent) {\n if (!spec.vertical) {\n style.marginLeft = spec.left + \"px\";\n } else {\n style.marginTop = spec.left + \"px\";\n }\n }\n\n return style;\n};\n\nexports.getTrackCSS = getTrackCSS;\n\nvar getTrackAnimateCSS = function getTrackAnimateCSS(spec) {\n checkSpecKeys(spec, [\"left\", \"variableWidth\", \"slideCount\", \"slidesToShow\", \"slideWidth\", \"speed\", \"cssEase\"]);\n var style = getTrackCSS(spec); // useCSS is true by default so it can be undefined\n\n if (spec.useTransform) {\n style.WebkitTransition = \"-webkit-transform \" + spec.speed + \"ms \" + spec.cssEase;\n style.transition = \"transform \" + spec.speed + \"ms \" + spec.cssEase;\n } else {\n if (spec.vertical) {\n style.transition = \"top \" + spec.speed + \"ms \" + spec.cssEase;\n } else {\n style.transition = \"left \" + spec.speed + \"ms \" + spec.cssEase;\n }\n }\n\n return style;\n};\n\nexports.getTrackAnimateCSS = getTrackAnimateCSS;\n\nvar getTrackLeft = function getTrackLeft(spec) {\n if (spec.unslick) {\n return 0;\n }\n\n checkSpecKeys(spec, [\"slideIndex\", \"trackRef\", \"infinite\", \"centerMode\", \"slideCount\", \"slidesToShow\", \"slidesToScroll\", \"slideWidth\", \"listWidth\", \"variableWidth\", \"slideHeight\"]);\n var slideIndex = spec.slideIndex,\n trackRef = spec.trackRef,\n infinite = spec.infinite,\n centerMode = spec.centerMode,\n slideCount = spec.slideCount,\n slidesToShow = spec.slidesToShow,\n slidesToScroll = spec.slidesToScroll,\n slideWidth = spec.slideWidth,\n listWidth = spec.listWidth,\n variableWidth = spec.variableWidth,\n slideHeight = spec.slideHeight,\n fade = spec.fade,\n vertical = spec.vertical;\n var slideOffset = 0;\n var targetLeft;\n var targetSlide;\n var verticalOffset = 0;\n\n if (fade || spec.slideCount === 1) {\n return 0;\n }\n\n var slidesToOffset = 0;\n\n if (infinite) {\n slidesToOffset = -getPreClones(spec); // bring active slide to the beginning of visual area\n // if next scroll doesn't have enough children, just reach till the end of original slides instead of shifting slidesToScroll children\n\n if (slideCount % slidesToScroll !== 0 && slideIndex + slidesToScroll > slideCount) {\n slidesToOffset = -(slideIndex > slideCount ? slidesToShow - (slideIndex - slideCount) : slideCount % slidesToScroll);\n } // shift current slide to center of the frame\n\n\n if (centerMode) {\n slidesToOffset += parseInt(slidesToShow / 2);\n }\n } else {\n if (slideCount % slidesToScroll !== 0 && slideIndex + slidesToScroll > slideCount) {\n slidesToOffset = slidesToShow - slideCount % slidesToScroll;\n }\n\n if (centerMode) {\n slidesToOffset = parseInt(slidesToShow / 2);\n }\n }\n\n slideOffset = slidesToOffset * slideWidth;\n verticalOffset = slidesToOffset * slideHeight;\n\n if (!vertical) {\n targetLeft = slideIndex * slideWidth * -1 + slideOffset;\n } else {\n targetLeft = slideIndex * slideHeight * -1 + verticalOffset;\n }\n\n if (variableWidth === true) {\n var targetSlideIndex;\n var trackElem = trackRef && trackRef.node;\n targetSlideIndex = slideIndex + getPreClones(spec);\n targetSlide = trackElem && trackElem.childNodes[targetSlideIndex];\n targetLeft = targetSlide ? targetSlide.offsetLeft * -1 : 0;\n\n if (centerMode === true) {\n targetSlideIndex = infinite ? slideIndex + getPreClones(spec) : slideIndex;\n targetSlide = trackElem && trackElem.children[targetSlideIndex];\n targetLeft = 0;\n\n for (var slide = 0; slide < targetSlideIndex; slide++) {\n targetLeft -= trackElem && trackElem.children[slide] && trackElem.children[slide].offsetWidth;\n }\n\n targetLeft -= parseInt(spec.centerPadding);\n targetLeft += targetSlide && (listWidth - targetSlide.offsetWidth) / 2;\n }\n }\n\n return targetLeft;\n};\n\nexports.getTrackLeft = getTrackLeft;\n\nvar getPreClones = function getPreClones(spec) {\n if (spec.unslick || !spec.infinite) {\n return 0;\n }\n\n if (spec.variableWidth) {\n return spec.slideCount;\n }\n\n return spec.slidesToShow + (spec.centerMode ? 1 : 0);\n};\n\nexports.getPreClones = getPreClones;\n\nvar getPostClones = function getPostClones(spec) {\n if (spec.unslick || !spec.infinite) {\n return 0;\n }\n\n return spec.slideCount;\n};\n\nexports.getPostClones = getPostClones;\n\nvar getTotalSlides = function getTotalSlides(spec) {\n return spec.slideCount === 1 ? 1 : getPreClones(spec) + spec.slideCount + getPostClones(spec);\n};\n\nexports.getTotalSlides = getTotalSlides;\n\nvar siblingDirection = function siblingDirection(spec) {\n if (spec.targetSlide > spec.currentSlide) {\n if (spec.targetSlide > spec.currentSlide + slidesOnRight(spec)) {\n return \"left\";\n }\n\n return \"right\";\n } else {\n if (spec.targetSlide < spec.currentSlide - slidesOnLeft(spec)) {\n return \"right\";\n }\n\n return \"left\";\n }\n};\n\nexports.siblingDirection = siblingDirection;\n\nvar slidesOnRight = function slidesOnRight(_ref) {\n var slidesToShow = _ref.slidesToShow,\n centerMode = _ref.centerMode,\n rtl = _ref.rtl,\n centerPadding = _ref.centerPadding; // returns no of slides on the right of active slide\n\n if (centerMode) {\n var right = (slidesToShow - 1) / 2 + 1;\n if (parseInt(centerPadding) > 0) right += 1;\n if (rtl && slidesToShow % 2 === 0) right += 1;\n return right;\n }\n\n if (rtl) {\n return 0;\n }\n\n return slidesToShow - 1;\n};\n\nexports.slidesOnRight = slidesOnRight;\n\nvar slidesOnLeft = function slidesOnLeft(_ref2) {\n var slidesToShow = _ref2.slidesToShow,\n centerMode = _ref2.centerMode,\n rtl = _ref2.rtl,\n centerPadding = _ref2.centerPadding; // returns no of slides on the left of active slide\n\n if (centerMode) {\n var left = (slidesToShow - 1) / 2 + 1;\n if (parseInt(centerPadding) > 0) left += 1;\n if (!rtl && slidesToShow % 2 === 0) left += 1;\n return left;\n }\n\n if (rtl) {\n return slidesToShow - 1;\n }\n\n return 0;\n};\n\nexports.slidesOnLeft = slidesOnLeft;\n\nvar canUseDOM = function canUseDOM() {\n return !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\n};\n\nexports.canUseDOM = canUseDOM;","/**\r\n * A collection of shims that provide minimal functionality of the ES6 collections.\r\n *\r\n * These implementations are not meant to be used outside of the ResizeObserver\r\n * modules as they cover only a limited range of use cases.\r\n */\n\n/* eslint-disable require-jsdoc, valid-jsdoc */\nvar MapShim = function () {\n if (typeof Map !== 'undefined') {\n return Map;\n }\n /**\r\n * Returns index in provided array that matches the specified key.\r\n *\r\n * @param {Array} arr\r\n * @param {*} key\r\n * @returns {number}\r\n */\n\n\n function getIndex(arr, key) {\n var result = -1;\n arr.some(function (entry, index) {\n if (entry[0] === key) {\n result = index;\n return true;\n }\n\n return false;\n });\n return result;\n }\n\n return (\n /** @class */\n function () {\n function class_1() {\n this.__entries__ = [];\n }\n\n Object.defineProperty(class_1.prototype, \"size\", {\n /**\r\n * @returns {boolean}\r\n */\n get: function get() {\n return this.__entries__.length;\n },\n enumerable: true,\n configurable: true\n });\n /**\r\n * @param {*} key\r\n * @returns {*}\r\n */\n\n class_1.prototype.get = function (key) {\n var index = getIndex(this.__entries__, key);\n var entry = this.__entries__[index];\n return entry && entry[1];\n };\n /**\r\n * @param {*} key\r\n * @param {*} value\r\n * @returns {void}\r\n */\n\n\n class_1.prototype.set = function (key, value) {\n var index = getIndex(this.__entries__, key);\n\n if (~index) {\n this.__entries__[index][1] = value;\n } else {\n this.__entries__.push([key, value]);\n }\n };\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\n\n\n class_1.prototype.delete = function (key) {\n var entries = this.__entries__;\n var index = getIndex(entries, key);\n\n if (~index) {\n entries.splice(index, 1);\n }\n };\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\n\n\n class_1.prototype.has = function (key) {\n return !!~getIndex(this.__entries__, key);\n };\n /**\r\n * @returns {void}\r\n */\n\n\n class_1.prototype.clear = function () {\n this.__entries__.splice(0);\n };\n /**\r\n * @param {Function} callback\r\n * @param {*} [ctx=null]\r\n * @returns {void}\r\n */\n\n\n class_1.prototype.forEach = function (callback, ctx) {\n if (ctx === void 0) {\n ctx = null;\n }\n\n for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {\n var entry = _a[_i];\n callback.call(ctx, entry[1], entry[0]);\n }\n };\n\n return class_1;\n }()\n );\n}();\n/**\r\n * Detects whether window and document objects are available in current environment.\r\n */\n\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document; // Returns global object of a current environment.\n\nvar global$1 = function () {\n if (typeof global !== 'undefined' && global.Math === Math) {\n return global;\n }\n\n if (typeof self !== 'undefined' && self.Math === Math) {\n return self;\n }\n\n if (typeof window !== 'undefined' && window.Math === Math) {\n return window;\n } // eslint-disable-next-line no-new-func\n\n\n return Function('return this')();\n}();\n/**\r\n * A shim for the requestAnimationFrame which falls back to the setTimeout if\r\n * first one is not supported.\r\n *\r\n * @returns {number} Requests' identifier.\r\n */\n\n\nvar requestAnimationFrame$1 = function () {\n if (typeof requestAnimationFrame === 'function') {\n // It's required to use a bounded function because IE sometimes throws\n // an \"Invalid calling object\" error if rAF is invoked without the global\n // object on the left hand side.\n return requestAnimationFrame.bind(global$1);\n }\n\n return function (callback) {\n return setTimeout(function () {\n return callback(Date.now());\n }, 1000 / 60);\n };\n}(); // Defines minimum timeout before adding a trailing call.\n\n\nvar trailingTimeout = 2;\n/**\r\n * Creates a wrapper function which ensures that provided callback will be\r\n * invoked only once during the specified delay period.\r\n *\r\n * @param {Function} callback - Function to be invoked after the delay period.\r\n * @param {number} delay - Delay after which to invoke callback.\r\n * @returns {Function}\r\n */\n\nfunction throttle(callback, delay) {\n var leadingCall = false,\n trailingCall = false,\n lastCallTime = 0;\n /**\r\n * Invokes the original callback function and schedules new invocation if\r\n * the \"proxy\" was called during current request.\r\n *\r\n * @returns {void}\r\n */\n\n function resolvePending() {\n if (leadingCall) {\n leadingCall = false;\n callback();\n }\n\n if (trailingCall) {\n proxy();\n }\n }\n /**\r\n * Callback invoked after the specified delay. It will further postpone\r\n * invocation of the original function delegating it to the\r\n * requestAnimationFrame.\r\n *\r\n * @returns {void}\r\n */\n\n\n function timeoutCallback() {\n requestAnimationFrame$1(resolvePending);\n }\n /**\r\n * Schedules invocation of the original function.\r\n *\r\n * @returns {void}\r\n */\n\n\n function proxy() {\n var timeStamp = Date.now();\n\n if (leadingCall) {\n // Reject immediately following calls.\n if (timeStamp - lastCallTime < trailingTimeout) {\n return;\n } // Schedule new call to be in invoked when the pending one is resolved.\n // This is important for \"transitions\" which never actually start\n // immediately so there is a chance that we might miss one if change\n // happens amids the pending invocation.\n\n\n trailingCall = true;\n } else {\n leadingCall = true;\n trailingCall = false;\n setTimeout(timeoutCallback, delay);\n }\n\n lastCallTime = timeStamp;\n }\n\n return proxy;\n} // Minimum delay before invoking the update of observers.\n\n\nvar REFRESH_DELAY = 20; // A list of substrings of CSS properties used to find transition events that\n// might affect dimensions of observed elements.\n\nvar transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight']; // Check if MutationObserver is available.\n\nvar mutationObserverSupported = typeof MutationObserver !== 'undefined';\n/**\r\n * Singleton controller class which handles updates of ResizeObserver instances.\r\n */\n\nvar ResizeObserverController =\n/** @class */\nfunction () {\n /**\r\n * Creates a new instance of ResizeObserverController.\r\n *\r\n * @private\r\n */\n function ResizeObserverController() {\n /**\r\n * Indicates whether DOM listeners have been added.\r\n *\r\n * @private {boolean}\r\n */\n this.connected_ = false;\n /**\r\n * Tells that controller has subscribed for Mutation Events.\r\n *\r\n * @private {boolean}\r\n */\n\n this.mutationEventsAdded_ = false;\n /**\r\n * Keeps reference to the instance of MutationObserver.\r\n *\r\n * @private {MutationObserver}\r\n */\n\n this.mutationsObserver_ = null;\n /**\r\n * A list of connected observers.\r\n *\r\n * @private {Array}\r\n */\n\n this.observers_ = [];\n this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);\n this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);\n }\n /**\r\n * Adds observer to observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be added.\r\n * @returns {void}\r\n */\n\n\n ResizeObserverController.prototype.addObserver = function (observer) {\n if (!~this.observers_.indexOf(observer)) {\n this.observers_.push(observer);\n } // Add listeners if they haven't been added yet.\n\n\n if (!this.connected_) {\n this.connect_();\n }\n };\n /**\r\n * Removes observer from observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be removed.\r\n * @returns {void}\r\n */\n\n\n ResizeObserverController.prototype.removeObserver = function (observer) {\n var observers = this.observers_;\n var index = observers.indexOf(observer); // Remove observer if it's present in registry.\n\n if (~index) {\n observers.splice(index, 1);\n } // Remove listeners if controller has no connected observers.\n\n\n if (!observers.length && this.connected_) {\n this.disconnect_();\n }\n };\n /**\r\n * Invokes the update of observers. It will continue running updates insofar\r\n * it detects changes.\r\n *\r\n * @returns {void}\r\n */\n\n\n ResizeObserverController.prototype.refresh = function () {\n var changesDetected = this.updateObservers_(); // Continue running updates if changes have been detected as there might\n // be future ones caused by CSS transitions.\n\n if (changesDetected) {\n this.refresh();\n }\n };\n /**\r\n * Updates every observer from observers list and notifies them of queued\r\n * entries.\r\n *\r\n * @private\r\n * @returns {boolean} Returns \"true\" if any observer has detected changes in\r\n * dimensions of it's elements.\r\n */\n\n\n ResizeObserverController.prototype.updateObservers_ = function () {\n // Collect observers that have active observations.\n var activeObservers = this.observers_.filter(function (observer) {\n return observer.gatherActive(), observer.hasActive();\n }); // Deliver notifications in a separate cycle in order to avoid any\n // collisions between observers, e.g. when multiple instances of\n // ResizeObserver are tracking the same element and the callback of one\n // of them changes content dimensions of the observed target. Sometimes\n // this may result in notifications being blocked for the rest of observers.\n\n activeObservers.forEach(function (observer) {\n return observer.broadcastActive();\n });\n return activeObservers.length > 0;\n };\n /**\r\n * Initializes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\n\n\n ResizeObserverController.prototype.connect_ = function () {\n // Do nothing if running in a non-browser environment or if listeners\n // have been already added.\n if (!isBrowser || this.connected_) {\n return;\n } // Subscription to the \"Transitionend\" event is used as a workaround for\n // delayed transitions. This way it's possible to capture at least the\n // final state of an element.\n\n\n document.addEventListener('transitionend', this.onTransitionEnd_);\n window.addEventListener('resize', this.refresh);\n\n if (mutationObserverSupported) {\n this.mutationsObserver_ = new MutationObserver(this.refresh);\n this.mutationsObserver_.observe(document, {\n attributes: true,\n childList: true,\n characterData: true,\n subtree: true\n });\n } else {\n document.addEventListener('DOMSubtreeModified', this.refresh);\n this.mutationEventsAdded_ = true;\n }\n\n this.connected_ = true;\n };\n /**\r\n * Removes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\n\n\n ResizeObserverController.prototype.disconnect_ = function () {\n // Do nothing if running in a non-browser environment or if listeners\n // have been already removed.\n if (!isBrowser || !this.connected_) {\n return;\n }\n\n document.removeEventListener('transitionend', this.onTransitionEnd_);\n window.removeEventListener('resize', this.refresh);\n\n if (this.mutationsObserver_) {\n this.mutationsObserver_.disconnect();\n }\n\n if (this.mutationEventsAdded_) {\n document.removeEventListener('DOMSubtreeModified', this.refresh);\n }\n\n this.mutationsObserver_ = null;\n this.mutationEventsAdded_ = false;\n this.connected_ = false;\n };\n /**\r\n * \"Transitionend\" event handler.\r\n *\r\n * @private\r\n * @param {TransitionEvent} event\r\n * @returns {void}\r\n */\n\n\n ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {\n var _b = _a.propertyName,\n propertyName = _b === void 0 ? '' : _b; // Detect whether transition may affect dimensions of an element.\n\n var isReflowProperty = transitionKeys.some(function (key) {\n return !!~propertyName.indexOf(key);\n });\n\n if (isReflowProperty) {\n this.refresh();\n }\n };\n /**\r\n * Returns instance of the ResizeObserverController.\r\n *\r\n * @returns {ResizeObserverController}\r\n */\n\n\n ResizeObserverController.getInstance = function () {\n if (!this.instance_) {\n this.instance_ = new ResizeObserverController();\n }\n\n return this.instance_;\n };\n /**\r\n * Holds reference to the controller's instance.\r\n *\r\n * @private {ResizeObserverController}\r\n */\n\n\n ResizeObserverController.instance_ = null;\n return ResizeObserverController;\n}();\n/**\r\n * Defines non-writable/enumerable properties of the provided target object.\r\n *\r\n * @param {Object} target - Object for which to define properties.\r\n * @param {Object} props - Properties to be defined.\r\n * @returns {Object} Target object.\r\n */\n\n\nvar defineConfigurable = function defineConfigurable(target, props) {\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\n var key = _a[_i];\n Object.defineProperty(target, key, {\n value: props[key],\n enumerable: false,\n writable: false,\n configurable: true\n });\n }\n\n return target;\n};\n/**\r\n * Returns the global object associated with provided element.\r\n *\r\n * @param {Object} target\r\n * @returns {Object}\r\n */\n\n\nvar getWindowOf = function getWindowOf(target) {\n // Assume that the element is an instance of Node, which means that it\n // has the \"ownerDocument\" property from which we can retrieve a\n // corresponding global object.\n var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView; // Return the local global object if it's not possible extract one from\n // provided element.\n\n return ownerGlobal || global$1;\n}; // Placeholder of an empty content rectangle.\n\n\nvar emptyRect = createRectInit(0, 0, 0, 0);\n/**\r\n * Converts provided string to a number.\r\n *\r\n * @param {number|string} value\r\n * @returns {number}\r\n */\n\nfunction toFloat(value) {\n return parseFloat(value) || 0;\n}\n/**\r\n * Extracts borders size from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @param {...string} positions - Borders positions (top, right, ...)\r\n * @returns {number}\r\n */\n\n\nfunction getBordersSize(styles) {\n var positions = [];\n\n for (var _i = 1; _i < arguments.length; _i++) {\n positions[_i - 1] = arguments[_i];\n }\n\n return positions.reduce(function (size, position) {\n var value = styles['border-' + position + '-width'];\n return size + toFloat(value);\n }, 0);\n}\n/**\r\n * Extracts paddings sizes from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @returns {Object} Paddings box.\r\n */\n\n\nfunction getPaddings(styles) {\n var positions = ['top', 'right', 'bottom', 'left'];\n var paddings = {};\n\n for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {\n var position = positions_1[_i];\n var value = styles['padding-' + position];\n paddings[position] = toFloat(value);\n }\n\n return paddings;\n}\n/**\r\n * Calculates content rectangle of provided SVG element.\r\n *\r\n * @param {SVGGraphicsElement} target - Element content rectangle of which needs\r\n * to be calculated.\r\n * @returns {DOMRectInit}\r\n */\n\n\nfunction getSVGContentRect(target) {\n var bbox = target.getBBox();\n return createRectInit(0, 0, bbox.width, bbox.height);\n}\n/**\r\n * Calculates content rectangle of provided HTMLElement.\r\n *\r\n * @param {HTMLElement} target - Element for which to calculate the content rectangle.\r\n * @returns {DOMRectInit}\r\n */\n\n\nfunction getHTMLElementContentRect(target) {\n // Client width & height properties can't be\n // used exclusively as they provide rounded values.\n var clientWidth = target.clientWidth,\n clientHeight = target.clientHeight; // By this condition we can catch all non-replaced inline, hidden and\n // detached elements. Though elements with width & height properties less\n // than 0.5 will be discarded as well.\n //\n // Without it we would need to implement separate methods for each of\n // those cases and it's not possible to perform a precise and performance\n // effective test for hidden elements. E.g. even jQuery's ':visible' filter\n // gives wrong results for elements with width & height less than 0.5.\n\n if (!clientWidth && !clientHeight) {\n return emptyRect;\n }\n\n var styles = getWindowOf(target).getComputedStyle(target);\n var paddings = getPaddings(styles);\n var horizPad = paddings.left + paddings.right;\n var vertPad = paddings.top + paddings.bottom; // Computed styles of width & height are being used because they are the\n // only dimensions available to JS that contain non-rounded values. It could\n // be possible to utilize the getBoundingClientRect if only it's data wasn't\n // affected by CSS transformations let alone paddings, borders and scroll bars.\n\n var width = toFloat(styles.width),\n height = toFloat(styles.height); // Width & height include paddings and borders when the 'border-box' box\n // model is applied (except for IE).\n\n if (styles.boxSizing === 'border-box') {\n // Following conditions are required to handle Internet Explorer which\n // doesn't include paddings and borders to computed CSS dimensions.\n //\n // We can say that if CSS dimensions + paddings are equal to the \"client\"\n // properties then it's either IE, and thus we don't need to subtract\n // anything, or an element merely doesn't have paddings/borders styles.\n if (Math.round(width + horizPad) !== clientWidth) {\n width -= getBordersSize(styles, 'left', 'right') + horizPad;\n }\n\n if (Math.round(height + vertPad) !== clientHeight) {\n height -= getBordersSize(styles, 'top', 'bottom') + vertPad;\n }\n } // Following steps can't be applied to the document's root element as its\n // client[Width/Height] properties represent viewport area of the window.\n // Besides, it's as well not necessary as the itself neither has\n // rendered scroll bars nor it can be clipped.\n\n\n if (!isDocumentElement(target)) {\n // In some browsers (only in Firefox, actually) CSS width & height\n // include scroll bars size which can be removed at this step as scroll\n // bars are the only difference between rounded dimensions + paddings\n // and \"client\" properties, though that is not always true in Chrome.\n var vertScrollbar = Math.round(width + horizPad) - clientWidth;\n var horizScrollbar = Math.round(height + vertPad) - clientHeight; // Chrome has a rather weird rounding of \"client\" properties.\n // E.g. for an element with content width of 314.2px it sometimes gives\n // the client width of 315px and for the width of 314.7px it may give\n // 314px. And it doesn't happen all the time. So just ignore this delta\n // as a non-relevant.\n\n if (Math.abs(vertScrollbar) !== 1) {\n width -= vertScrollbar;\n }\n\n if (Math.abs(horizScrollbar) !== 1) {\n height -= horizScrollbar;\n }\n }\n\n return createRectInit(paddings.left, paddings.top, width, height);\n}\n/**\r\n * Checks whether provided element is an instance of the SVGGraphicsElement.\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\n\n\nvar isSVGGraphicsElement = function () {\n // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement\n // interface.\n if (typeof SVGGraphicsElement !== 'undefined') {\n return function (target) {\n return target instanceof getWindowOf(target).SVGGraphicsElement;\n };\n } // If it's so, then check that element is at least an instance of the\n // SVGElement and that it has the \"getBBox\" method.\n // eslint-disable-next-line no-extra-parens\n\n\n return function (target) {\n return target instanceof getWindowOf(target).SVGElement && typeof target.getBBox === 'function';\n };\n}();\n/**\r\n * Checks whether provided element is a document element ().\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\n\n\nfunction isDocumentElement(target) {\n return target === getWindowOf(target).document.documentElement;\n}\n/**\r\n * Calculates an appropriate content rectangle for provided html or svg element.\r\n *\r\n * @param {Element} target - Element content rectangle of which needs to be calculated.\r\n * @returns {DOMRectInit}\r\n */\n\n\nfunction getContentRect(target) {\n if (!isBrowser) {\n return emptyRect;\n }\n\n if (isSVGGraphicsElement(target)) {\n return getSVGContentRect(target);\n }\n\n return getHTMLElementContentRect(target);\n}\n/**\r\n * Creates rectangle with an interface of the DOMRectReadOnly.\r\n * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly\r\n *\r\n * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.\r\n * @returns {DOMRectReadOnly}\r\n */\n\n\nfunction createReadOnlyRect(_a) {\n var x = _a.x,\n y = _a.y,\n width = _a.width,\n height = _a.height; // If DOMRectReadOnly is available use it as a prototype for the rectangle.\n\n var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;\n var rect = Object.create(Constr.prototype); // Rectangle's properties are not writable and non-enumerable.\n\n defineConfigurable(rect, {\n x: x,\n y: y,\n width: width,\n height: height,\n top: y,\n right: x + width,\n bottom: height + y,\n left: x\n });\n return rect;\n}\n/**\r\n * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.\r\n * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit\r\n *\r\n * @param {number} x - X coordinate.\r\n * @param {number} y - Y coordinate.\r\n * @param {number} width - Rectangle's width.\r\n * @param {number} height - Rectangle's height.\r\n * @returns {DOMRectInit}\r\n */\n\n\nfunction createRectInit(x, y, width, height) {\n return {\n x: x,\n y: y,\n width: width,\n height: height\n };\n}\n/**\r\n * Class that is responsible for computations of the content rectangle of\r\n * provided DOM element and for keeping track of it's changes.\r\n */\n\n\nvar ResizeObservation =\n/** @class */\nfunction () {\n /**\r\n * Creates an instance of ResizeObservation.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n */\n function ResizeObservation(target) {\n /**\r\n * Broadcasted width of content rectangle.\r\n *\r\n * @type {number}\r\n */\n this.broadcastWidth = 0;\n /**\r\n * Broadcasted height of content rectangle.\r\n *\r\n * @type {number}\r\n */\n\n this.broadcastHeight = 0;\n /**\r\n * Reference to the last observed content rectangle.\r\n *\r\n * @private {DOMRectInit}\r\n */\n\n this.contentRect_ = createRectInit(0, 0, 0, 0);\n this.target = target;\n }\n /**\r\n * Updates content rectangle and tells whether it's width or height properties\r\n * have changed since the last broadcast.\r\n *\r\n * @returns {boolean}\r\n */\n\n\n ResizeObservation.prototype.isActive = function () {\n var rect = getContentRect(this.target);\n this.contentRect_ = rect;\n return rect.width !== this.broadcastWidth || rect.height !== this.broadcastHeight;\n };\n /**\r\n * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data\r\n * from the corresponding properties of the last observed content rectangle.\r\n *\r\n * @returns {DOMRectInit} Last observed content rectangle.\r\n */\n\n\n ResizeObservation.prototype.broadcastRect = function () {\n var rect = this.contentRect_;\n this.broadcastWidth = rect.width;\n this.broadcastHeight = rect.height;\n return rect;\n };\n\n return ResizeObservation;\n}();\n\nvar ResizeObserverEntry =\n/** @class */\nfunction () {\n /**\r\n * Creates an instance of ResizeObserverEntry.\r\n *\r\n * @param {Element} target - Element that is being observed.\r\n * @param {DOMRectInit} rectInit - Data of the element's content rectangle.\r\n */\n function ResizeObserverEntry(target, rectInit) {\n var contentRect = createReadOnlyRect(rectInit); // According to the specification following properties are not writable\n // and are also not enumerable in the native implementation.\n //\n // Property accessors are not being used as they'd require to define a\n // private WeakMap storage which may cause memory leaks in browsers that\n // don't support this type of collections.\n\n defineConfigurable(this, {\n target: target,\n contentRect: contentRect\n });\n }\n\n return ResizeObserverEntry;\n}();\n\nvar ResizeObserverSPI =\n/** @class */\nfunction () {\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback function that is invoked\r\n * when one of the observed elements changes it's content dimensions.\r\n * @param {ResizeObserverController} controller - Controller instance which\r\n * is responsible for the updates of observer.\r\n * @param {ResizeObserver} callbackCtx - Reference to the public\r\n * ResizeObserver instance which will be passed to callback function.\r\n */\n function ResizeObserverSPI(callback, controller, callbackCtx) {\n /**\r\n * Collection of resize observations that have detected changes in dimensions\r\n * of elements.\r\n *\r\n * @private {Array}\r\n */\n this.activeObservations_ = [];\n /**\r\n * Registry of the ResizeObservation instances.\r\n *\r\n * @private {Map}\r\n */\n\n this.observations_ = new MapShim();\n\n if (typeof callback !== 'function') {\n throw new TypeError('The callback provided as parameter 1 is not a function.');\n }\n\n this.callback_ = callback;\n this.controller_ = controller;\n this.callbackCtx_ = callbackCtx;\n }\n /**\r\n * Starts observing provided element.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n * @returns {void}\r\n */\n\n\n ResizeObserverSPI.prototype.observe = function (target) {\n if (!arguments.length) {\n throw new TypeError('1 argument required, but only 0 present.');\n } // Do nothing if current environment doesn't have the Element interface.\n\n\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\n return;\n }\n\n if (!(target instanceof getWindowOf(target).Element)) {\n throw new TypeError('parameter 1 is not of type \"Element\".');\n }\n\n var observations = this.observations_; // Do nothing if element is already being observed.\n\n if (observations.has(target)) {\n return;\n }\n\n observations.set(target, new ResizeObservation(target));\n this.controller_.addObserver(this); // Force the update of observations.\n\n this.controller_.refresh();\n };\n /**\r\n * Stops observing provided element.\r\n *\r\n * @param {Element} target - Element to stop observing.\r\n * @returns {void}\r\n */\n\n\n ResizeObserverSPI.prototype.unobserve = function (target) {\n if (!arguments.length) {\n throw new TypeError('1 argument required, but only 0 present.');\n } // Do nothing if current environment doesn't have the Element interface.\n\n\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\n return;\n }\n\n if (!(target instanceof getWindowOf(target).Element)) {\n throw new TypeError('parameter 1 is not of type \"Element\".');\n }\n\n var observations = this.observations_; // Do nothing if element is not being observed.\n\n if (!observations.has(target)) {\n return;\n }\n\n observations.delete(target);\n\n if (!observations.size) {\n this.controller_.removeObserver(this);\n }\n };\n /**\r\n * Stops observing all elements.\r\n *\r\n * @returns {void}\r\n */\n\n\n ResizeObserverSPI.prototype.disconnect = function () {\n this.clearActive();\n this.observations_.clear();\n this.controller_.removeObserver(this);\n };\n /**\r\n * Collects observation instances the associated element of which has changed\r\n * it's content rectangle.\r\n *\r\n * @returns {void}\r\n */\n\n\n ResizeObserverSPI.prototype.gatherActive = function () {\n var _this = this;\n\n this.clearActive();\n this.observations_.forEach(function (observation) {\n if (observation.isActive()) {\n _this.activeObservations_.push(observation);\n }\n });\n };\n /**\r\n * Invokes initial callback function with a list of ResizeObserverEntry\r\n * instances collected from active resize observations.\r\n *\r\n * @returns {void}\r\n */\n\n\n ResizeObserverSPI.prototype.broadcastActive = function () {\n // Do nothing if observer doesn't have active observations.\n if (!this.hasActive()) {\n return;\n }\n\n var ctx = this.callbackCtx_; // Create ResizeObserverEntry instance for every active observation.\n\n var entries = this.activeObservations_.map(function (observation) {\n return new ResizeObserverEntry(observation.target, observation.broadcastRect());\n });\n this.callback_.call(ctx, entries, ctx);\n this.clearActive();\n };\n /**\r\n * Clears the collection of active observations.\r\n *\r\n * @returns {void}\r\n */\n\n\n ResizeObserverSPI.prototype.clearActive = function () {\n this.activeObservations_.splice(0);\n };\n /**\r\n * Tells whether observer has active observations.\r\n *\r\n * @returns {boolean}\r\n */\n\n\n ResizeObserverSPI.prototype.hasActive = function () {\n return this.activeObservations_.length > 0;\n };\n\n return ResizeObserverSPI;\n}(); // Registry of internal observers. If WeakMap is not available use current shim\n// for the Map collection as it has all required methods and because WeakMap\n// can't be fully polyfilled anyway.\n\n\nvar observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();\n/**\r\n * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation\r\n * exposing only those methods and properties that are defined in the spec.\r\n */\n\nvar ResizeObserver =\n/** @class */\nfunction () {\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback that is invoked when\r\n * dimensions of the observed elements change.\r\n */\n function ResizeObserver(callback) {\n if (!(this instanceof ResizeObserver)) {\n throw new TypeError('Cannot call a class as a function.');\n }\n\n if (!arguments.length) {\n throw new TypeError('1 argument required, but only 0 present.');\n }\n\n var controller = ResizeObserverController.getInstance();\n var observer = new ResizeObserverSPI(callback, controller, this);\n observers.set(this, observer);\n }\n\n return ResizeObserver;\n}(); // Expose public methods of ResizeObserver.\n\n\n['observe', 'unobserve', 'disconnect'].forEach(function (method) {\n ResizeObserver.prototype[method] = function () {\n var _a;\n\n return (_a = observers.get(this))[method].apply(_a, arguments);\n };\n});\n\nvar index = function () {\n // Export existing implementation if available.\n if (typeof global$1.ResizeObserver !== 'undefined') {\n return global$1.ResizeObserver;\n }\n\n return ResizeObserver;\n}();\n\nexport default index;","var camel2hyphen = function camel2hyphen(str) {\n return str.replace(/[A-Z]/g, function (match) {\n return '-' + match.toLowerCase();\n }).toLowerCase();\n};\n\nmodule.exports = camel2hyphen;","require('../../modules/es.aggregate-error');\nrequire('../../modules/es.array.iterator');\nrequire('../../modules/es.object.to-string');\nrequire('../../modules/es.promise');\nrequire('../../modules/es.promise.all-settled');\nrequire('../../modules/es.promise.any');\nrequire('../../modules/es.promise.finally');\nrequire('../../modules/es.string.iterator');\nvar path = require('../../internals/path');\n\nmodule.exports = path.Promise;\n","var parent = require('../../stable/promise');\nrequire('../../modules/esnext.aggregate-error');\n// TODO: Remove from `core-js@4`\nrequire('../../modules/esnext.promise.all-settled');\nrequire('../../modules/esnext.promise.try');\nrequire('../../modules/esnext.promise.any');\n\nmodule.exports = parent;\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","module.exports = typeof window == 'object';\n","var userAgent = require('../internals/engine-user-agent');\nvar global = require('../internals/global');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && global.Pebble !== undefined;\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var anObject = require('../internals/an-object');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that, 1 + AS_ENTRIES + INTERRUPTED);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function') throw TypeError('Target is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && result instanceof Result) return result;\n } return new Result(false);\n }\n iterator = iterFn.call(iterable);\n }\n\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator);\n throw error;\n }\n if (typeof result == 'object' && result && result instanceof Result) return result;\n } return new Result(false);\n};\n","var anObject = require('../internals/an-object');\n\nmodule.exports = function (iterator) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) {\n return anObject(returnMethod.call(iterator)).value;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","module.exports = {};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","/* eslint-disable no-proto -- safe */\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","var redefine = require('../internals/redefine');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var toInteger = require('../internals/to-integer');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.codePointAt` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar bind = require('../internals/function-bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar location, defer, channel, port;\n\ntry {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n location = global.location;\n} catch (error) { /* empty */ }\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins -- safe\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var argumentsLength = arguments.length;\n var i = 1;\n while (argumentsLength > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func -- spec requirement\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n typeof postMessage == 'function' &&\n !global.importScripts &&\n location && location.protocol !== 'file:' &&\n !fails(post)\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar $ = require('../internals/export');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar create = require('../internals/object-create');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar iterate = require('../internals/iterate');\nvar toString = require('../internals/to-string');\n\nvar $AggregateError = function AggregateError(errors, message) {\n var that = this;\n if (!(that instanceof $AggregateError)) return new $AggregateError(errors, message);\n if (setPrototypeOf) {\n // eslint-disable-next-line unicorn/error-message -- expected\n that = setPrototypeOf(new Error(undefined), getPrototypeOf(that));\n }\n if (message !== undefined) createNonEnumerableProperty(that, 'message', toString(message));\n var errorsArray = [];\n iterate(errors, errorsArray.push, { that: errorsArray });\n createNonEnumerableProperty(that, 'errors', errorsArray);\n return that;\n};\n\n$AggregateError.prototype = create(Error.prototype, {\n constructor: createPropertyDescriptor(5, $AggregateError),\n message: createPropertyDescriptor(5, ''),\n name: createPropertyDescriptor(5, 'AggregateError')\n});\n\n// `AggregateError` constructor\n// https://tc39.es/ecma262/#sec-aggregate-error-constructor\n$({ global: true }, {\n AggregateError: $AggregateError\n});\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar aFunction = require('../internals/a-function');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\n\n// `Promise.allSettled` method\n// https://tc39.es/ecma262/#sec-promise.allsettled\n$({ target: 'Promise', stat: true }, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'fulfilled', value: value };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'rejected', reason: error };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar aFunction = require('../internals/a-function');\nvar getBuiltIn = require('../internals/get-built-in');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\n\nvar PROMISE_ANY_ERROR = 'No one promise resolved';\n\n// `Promise.any` method\n// https://tc39.es/ecma262/#sec-promise.any\n$({ target: 'Promise', stat: true }, {\n any: function any(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aFunction(C.resolve);\n var errors = [];\n var counter = 0;\n var remaining = 1;\n var alreadyResolved = false;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyRejected = false;\n errors.push(undefined);\n remaining++;\n promiseResolve.call(C, promise).then(function (value) {\n if (alreadyRejected || alreadyResolved) return;\n alreadyResolved = true;\n resolve(value);\n }, function (error) {\n if (alreadyRejected || alreadyResolved) return;\n alreadyRejected = true;\n errors[index] = error;\n --remaining || reject(new (getBuiltIn('AggregateError'))(errors, PROMISE_ANY_ERROR));\n });\n });\n --remaining || reject(new (getBuiltIn('AggregateError'))(errors, PROMISE_ANY_ERROR));\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar NativePromise = require('../internals/native-promise-constructor');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar isObject = require('../internals/is-object');\nvar aFunction = require('../internals/a-function');\nvar anInstance = require('../internals/an-instance');\nvar inspectSource = require('../internals/inspect-source');\nvar iterate = require('../internals/iterate');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar promiseResolve = require('../internals/promise-resolve');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar InternalStateModule = require('../internals/internal-state');\nvar isForced = require('../internals/is-forced');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_NODE = require('../internals/engine-is-node');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar NativePromisePrototype = NativePromise && NativePromise.prototype;\nvar PromiseConstructor = NativePromise;\nvar PromiseConstructorPrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar NATIVE_REJECTION_EVENT = typeof PromiseRejectionEvent == 'function';\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar SUBCLASSING = false;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced(PROMISE, function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(PromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(PromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#finally in the pure version for preventing prototype pollution\n if (IS_PURE && !PromiseConstructorPrototype['finally']) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = new PromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return !GLOBAL_CORE_JS_PROMISE && IS_BROWSER && !NATIVE_REJECTION_EVENT;\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n PromiseConstructorPrototype = PromiseConstructor.prototype;\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructorPrototype, {\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify(state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.es/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && typeof NativePromise == 'function' && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n redefine(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\n redefine(NativePromisePrototype, 'catch', PromiseConstructorPrototype['catch'], { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromiseConstructorPrototype);\n }\n }\n}\n\n$({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n$({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.es/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {\n // `Promise.resolve` method\n // https://tc39.es/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n\n$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.es/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.es/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n iterate(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","// TODO: Remove from `core-js@4`\nrequire('./es.aggregate-error');\n","// TODO: Remove from `core-js@4`\nrequire('./es.promise.all-settled.js');\n","// TODO: Remove from `core-js@4`\nrequire('./es.promise.any');\n","'use strict';\nvar $ = require('../internals/export');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\n\n// `Promise.try` method\n// https://github.com/tc39/proposal-promise-try\n$({ target: 'Promise', stat: true }, {\n 'try': function (callbackfn) {\n var promiseCapability = newPromiseCapabilityModule.f(this);\n var result = perform(callbackfn);\n (result.error ? promiseCapability.reject : promiseCapability.resolve)(result.value);\n return promiseCapability.promise;\n }\n});\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","var parent = require('../../es/promise');\nrequire('../../modules/web.dom-collections.iterator');\n\nmodule.exports = parent;\n","import React, { MutableRefObject, useLayoutEffect, useRef, useState } from \"react\"\r\nimport { ClientOnlyRenderable } from \"./ClientOnlyRenderable\"\r\n\r\ninterface ScaleToWindowWidthProps {\r\n children: (\r\n ref: MutableRefObject,\r\n scaleX: number\r\n ) => React.ReactNode\r\n}\r\nexport const ScaleToWindowWidth: React.FC = (props) => {\r\n const dummyRef = useRef(null)\r\n\r\n return (\r\n \r\n \r\n \r\n )\r\n}\r\n\r\ninterface ScaleToWindowWidthImplState {\r\n scale: number\r\n lastUpdate: Date | null,\r\n consecutiveUpdateCount: number\r\n}\r\nconst ScaleToWindowWidthImpl: React.FC = ({children}) => {\r\n const [state, setState] = useState({\r\n scale: 1,\r\n lastUpdate: null,\r\n consecutiveUpdateCount: 0\r\n })\r\n\r\n const ref = useRef(null)\r\n\r\n useLayoutEffect(() => {\r\n const el = ref.current\r\n if (el !== null) {\r\n const doScale = () => {\r\n const scale = state.scale\r\n\r\n const bounds = el.getBoundingClientRect()\r\n const unscaledWidth = bounds.width / scale\r\n\r\n const newScale = (unscaledWidth >= window.innerWidth) ? window.innerWidth / unscaledWidth : 1\r\n\r\n const timeSinceLastUpdate = (state.lastUpdate !== null) ? new Date().getTime() - state.lastUpdate!.getTime() : Infinity\r\n if (newScale !== scale && (state.consecutiveUpdateCount < 20 || timeSinceLastUpdate > 1200)) {\r\n setState({\r\n scale: newScale,\r\n lastUpdate: new Date(),\r\n consecutiveUpdateCount: (timeSinceLastUpdate > 1200) ? 1 : state.consecutiveUpdateCount + 1\r\n })\r\n\r\n if (localStorage.getItem(\"__kindo_flag_log_ScaleToWindowWidth_updates\") === \"true\") {\r\n console.log(`Scale: ${scale}. New Scale: ${newScale}`)\r\n }\r\n } else {\r\n if (localStorage.getItem(\"__kindo_flag_log_ScaleToWindowWidth_updates\") === \"true\") {\r\n console.log(`Filtered potentially unbounded resizing loop. TimeSinceLastUpdate: ${timeSinceLastUpdate}. ConsecutiveUpdateCount: ${state.consecutiveUpdateCount}.`)\r\n }\r\n }\r\n }\r\n\r\n el.addEventListener('resize', doScale)\r\n window.addEventListener(\"resize\", doScale)\r\n doScale()\r\n\r\n return () => {\r\n el.removeEventListener(\"resize\", doScale)\r\n window.removeEventListener(\"resize\", doScale)\r\n }\r\n }\r\n }, [ref.current, state])\r\n\r\n return (\r\n <>\r\n {children(ref, state.scale)}\r\n \r\n )\r\n}","export interface Size {\r\n width: number,\r\n height: number\r\n}\r\n\r\nexport const scaleSize = (baseSize: Size, targetSize: Size): Size => {\r\n const largestScaleFactor = Math.max(\r\n targetSize.width / baseSize.width,\r\n targetSize.height / baseSize.height\r\n )\r\n\r\n return {\r\n width: largestScaleFactor * baseSize.width,\r\n height: largestScaleFactor * baseSize.height\r\n }\r\n}\r\n\r\nexport const maxSize = (...sizes: Size[]): Size => {\r\n if (sizes.length === 0) {\r\n throw new Error(\"At least one size must be provided.\")\r\n }\r\n\r\n const areas = sizes.map((size) => size.width * size.height)\r\n let bestIndexSoFar = 0\r\n let bestAreaSoFar: number = areas[0]\r\n\r\n for (let i=1; i< areas.length; i++) {\r\n if (areas[i] > bestAreaSoFar) {\r\n bestAreaSoFar = areas[i]\r\n bestIndexSoFar = i\r\n }\r\n }\r\n\r\n return sizes[bestIndexSoFar]\r\n}","import React, { useLayoutEffect, useRef, useState } from \"react\"\r\nimport SpeechBubbleIcon from \"../images/speech_bubble.svg\"\r\nimport { ClientOnlyRenderable } from \"./ClientOnlyRenderable\"\r\nimport * as styles from \"./SpeechBubble.module.scss\"\r\nimport { maxSize, scaleSize, Size } from \"../util/size\"\r\nimport { mergeClassNames } from \"../util/util\"\r\n\r\nconst BASE_BUBBLE_SIZE: Size = {\r\n width: 571,\r\n height: 396\r\n}\r\n\r\ninterface SpeechBubbleProps {\r\n className?: string,\r\n style?: React.CSSProperties,\r\n size?: Size,\r\n listenForUpdates?: boolean\r\n}\r\ninterface SpeechBubbleState {\r\n contentWidth: number,\r\n contentHeight: number\r\n}\r\nexport const SpeechBubble: React.FC = (props) => {\r\n return (\r\n \r\n {props.children}\r\n \r\n )}>\r\n \r\n \r\n )\r\n}\r\n\r\nconst SpeechBubbleContent: React.FC = ({children, className, style, size, listenForUpdates = true}) => {\r\n const [state, setState] = useState((size !== undefined) ? {\r\n contentWidth: scaleSize(BASE_BUBBLE_SIZE, size).width,\r\n contentHeight: scaleSize(BASE_BUBBLE_SIZE, size).height\r\n } : null)\r\n\r\n const contentRef = useRef(null)\r\n\r\n useLayoutEffect(() => {\r\n if (size !== undefined) {\r\n return\r\n }\r\n\r\n const el = contentRef.current\r\n if (el !== null) {\r\n const updateBoundingRect = () => {\r\n const rect = el.getBoundingClientRect()\r\n let width = rect.width\r\n let height = rect.height\r\n\r\n if (el.scrollHeight > height ) {\r\n height = el.scrollHeight\r\n }\r\n if (el.scrollWidth > width) {\r\n width = el.scrollWidth\r\n }\r\n\r\n setState({\r\n ...state,\r\n contentWidth: width,\r\n contentHeight: height\r\n })\r\n }\r\n\r\n\r\n if (listenForUpdates) {\r\n el.addEventListener('resize', () => {\r\n updateBoundingRect()\r\n })\r\n }\r\n updateBoundingRect()\r\n }\r\n }, [contentRef.current, size, listenForUpdates])\r\n\r\n const actualSize: Size | undefined = (state !== null) ? maxSize(\r\n scaleSize(\r\n BASE_BUBBLE_SIZE,\r\n {\r\n width: state.contentWidth,\r\n height: state.contentHeight\r\n }\r\n ),\r\n {\r\n width: 100,\r\n height: 72\r\n }\r\n ) : undefined\r\n\r\n return (\r\n
\r\n {children}\r\n \r\n
\r\n )\r\n}\r\n","// extracted by mini-css-extract-plugin\nexport var SpeechBubble = \"SpeechBubble-module--SpeechBubble--2vUML\";\nexport var content = \"SpeechBubble-module--content--37Bdd\";\nexport var bubble = \"SpeechBubble-module--bubble--H9vvF\";","import React from \"react\"\r\nimport { RaisedButton } from \"./button/RaisedButton\"\r\nimport { graphql, navigate } from \"gatsby\"\r\nimport { getPathForLocale, triggerGtagEvent } from \"../util/util\"\r\nimport { useAppContext } from \"./AppContext\"\r\nimport { FlatButton } from \"./button/FlatButton\"\r\nimport { MyKindoButton } from \"./button/MyKindoButton\"\r\nimport { EMAIL_SCHOOL_SIGNUP_PITCH, MYKINDO_ATMY_URL, MYKINDO_JOIN_URL, MYKINDO_LOGIN_URL } from \"../config\"\r\nimport { navigate as reachNavigate } from '@reach/router';\r\n\r\nenum PageButtonType {\r\n Plain = \"plain\",\r\n Raised = \"raised\",\r\n MyKindoLogin = \"mykindo_login\",\r\n MyKindoJoin = \"mykindo_join\",\r\n MyKindoAtmy = \"mykindo_atmy\",\r\n EmailSchoolSignupPitch = \"email_school_signup_pitch\",\r\n HowItWorksSection = \"how_it_works\",\r\n AtMySection = \"at_my\"\r\n}\r\n\r\nexport interface IPageButton {\r\n id: string,\r\n page: {\r\n slug: string | null\r\n } | null,\r\n text: string,\r\n type: PageButtonType\r\n}\r\nexport const PageButton: React.FC = ({text, type, page}) => {\r\n const {currentLocale} = useAppContext()\r\n\r\n const pageSlug = (page === null) ? \"404\" : (page.slug ?? \"\")\r\n\r\n switch (type) {\r\n case PageButtonType.Plain:\r\n return navigate(getPathForLocale(currentLocale, pageSlug))}>{text}\r\n case PageButtonType.Raised:\r\n return navigate(getPathForLocale(currentLocale, pageSlug))}>{text}\r\n case PageButtonType.MyKindoLogin:\r\n return {\r\n triggerGtagEvent({\r\n action: \"click\",\r\n label: \"mykindo_login\"\r\n })\r\n window.open(MYKINDO_LOGIN_URL, \"_self\")\r\n }}>{text}\r\n case PageButtonType.MyKindoJoin:\r\n return {\r\n triggerGtagEvent({\r\n action: \"click\",\r\n label: \"mykindo_join\"\r\n })\r\n window.open(MYKINDO_JOIN_URL, \"_self\")\r\n }}>{text}\r\n case PageButtonType.MyKindoAtmy:\r\n return {\r\n triggerGtagEvent({\r\n action: \"click\",\r\n label: \"mykindo_atmy\"\r\n })\r\n window.open(MYKINDO_ATMY_URL, \"_self\")\r\n }}>{text}\r\n case PageButtonType.EmailSchoolSignupPitch:\r\n return {\r\n triggerGtagEvent({\r\n action: \"click\",\r\n label: \"email_school_signup_pitch\"\r\n })\r\n window.open(EMAIL_SCHOOL_SIGNUP_PITCH, \"_self\")\r\n }}>{text}\r\n case PageButtonType.HowItWorksSection:\r\n return reachNavigate(getPathForLocale(currentLocale, pageSlug + \"#howItWorks\"))}>{text}\r\n case PageButtonType.AtMySection:\r\n return reachNavigate(getPathForLocale(currentLocale, pageSlug + \"#atMy\"))}>{text}\r\n default:\r\n return navigate(getPathForLocale(currentLocale, pageSlug))}>{text}\r\n }\r\n}\r\n\r\nexport const pageButtonFragment = graphql`\r\n fragment pageButtonFragment on Strapi_ComponentSubcomponentsPageButton {\r\n id\r\n page {\r\n slug\r\n }\r\n type\r\n text\r\n }\r\n`","import { graphql } from \"gatsby\"\r\nimport React from \"react\"\r\nimport * as styles from \"./TestimonialsSection.module.scss\"\r\n\r\ninterface TestimonialType {\r\n id: string,\r\n heading: string | null,\r\n testimonial: string,\r\n source: string\r\n}\r\ninterface TestimonialsSectionProps {\r\n heading: string,\r\n testimonials: TestimonialType[]\r\n}\r\nexport const TestimonialsSection: React.FC = ({heading, testimonials}) => {\r\n return (\r\n
\r\n

{heading}

\r\n
\r\n {testimonials.map((testimonial) => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n\r\nconst Testimonial: React.FC = ({heading, testimonial, source}) => {\r\n return (\r\n
\r\n {(heading) ? (\r\n

{heading}

\r\n ) : null}\r\n
{testimonial}
\r\n
{source}
\r\n
\r\n )\r\n}\r\n\r\nexport const testimonialsSectionFragment = graphql`\r\n fragment testimonialsSectionFragment on Strapi_ComponentSectionTestimonials {\r\n heading\r\n testimonials {\r\n id\r\n heading\r\n testimonial\r\n source\r\n }\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var TestimonialsSection = \"TestimonialsSection-module--TestimonialsSection--tqLEZ\";\nexport var heading = \"TestimonialsSection-module--heading--1IowY\";\nexport var testimonialsContainer = \"TestimonialsSection-module--testimonialsContainer--3Mqvm\";\nexport var Testimonial = \"TestimonialsSection-module--Testimonial--3Uwda\";\nexport var testimonialHeading = \"TestimonialsSection-module--testimonialHeading--2BoUo\";\nexport var testimonialSource = \"TestimonialsSection-module--testimonialSource--2gQyE\";","import React, { useEffect, useState } from \"react\"\r\nimport Section from \"./Section\"\r\nimport { graphql, useStaticQuery } from \"gatsby\"\r\nimport * as styles from \"./LogoCarouselSection.module.scss\"\r\nimport \"slick-carousel/slick/slick.scss\"\r\nimport \"slick-carousel/slick/slick-theme.scss\"\r\nimport Slider from \"react-slick\"\r\nimport { IStrapiImageStaticImage } from \"../../model/IStrapiImageStaticImage\"\r\n\r\ninterface LogoCarouselSectionProps {\r\n supplierLogos: {\r\n logos: (IStrapiImageStaticImage & {\r\n id: string\r\n })[],\r\n title: string\r\n }\r\n}\r\n\r\nexport const LogoCarouselSection: React.FC = () => {\r\n const [reducingMotion, setReducingMotion] = useState(false)\r\n const data = useStaticQuery<{ strapi: {globalConfig: LogoCarouselSectionProps} }>(query)\r\n const config = data.strapi.globalConfig.supplierLogos\r\n\r\n useEffect(() => {\r\n try {\r\n setReducingMotion(window.matchMedia('(prefers-reduced-motion: reduce)').matches)\r\n } catch (ex) {\r\n setReducingMotion(false)\r\n }\r\n }, [])\r\n\r\n const SLIDER_SETTINGS = {\r\n dots: false,\r\n infinite: true,\r\n slidesToShow: 1,\r\n variableWidth: true,\r\n slidesToScroll: 1,\r\n autoplay: !reducingMotion,\r\n speed: (reducingMotion) ? undefined : 4000,\r\n autoplaySpeed: (reducingMotion) ? undefined : 4000,\r\n cssEase: \"linear\",\r\n centerMode: true,\r\n draggable: reducingMotion,\r\n swipe: reducingMotion,\r\n touchMove: reducingMotion,\r\n className: styles.logosContainer\r\n }\r\n\r\n const logosElements = config.logos.map((logo, index) => (\r\n
\r\n \r\n
\r\n ))\r\n\r\n return (\r\n
\r\n

{config.title}

\r\n
\r\n \r\n {logosElements}\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nconst query = graphql`\r\n query {\r\n strapi {\r\n globalConfig {\r\n supplierLogos {\r\n title\r\n logos {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n staticURL\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var LogoCarouselSection = \"LogoCarouselSection-module--LogoCarouselSection--1D_X0\";\nexport var title = \"LogoCarouselSection-module--title--2aIUC\";\nexport var logosContainerContainer = \"LogoCarouselSection-module--logosContainerContainer--m7eG5\";\nexport var logosContainer = \"LogoCarouselSection-module--logosContainer--2_znV\";\nexport var logo = \"LogoCarouselSection-module--logo--1sO98\";","// extracted by mini-css-extract-plugin\nexport var FamiliesSchoolsCafesStatisticsOverviewSection = \"FamiliesSchoolsCafesStatisticsOverviewSection-module--FamiliesSchoolsCafesStatisticsOverviewSection--2eKJm\";\nexport var itemsContainer = \"FamiliesSchoolsCafesStatisticsOverviewSection-module--itemsContainer--2Xllo\";\nexport var item = \"FamiliesSchoolsCafesStatisticsOverviewSection-module--item--2I81Q\";\nexport var icon = \"FamiliesSchoolsCafesStatisticsOverviewSection-module--icon--suQrE\";\nexport var speechBubble = \"FamiliesSchoolsCafesStatisticsOverviewSection-module--speechBubble--2Pdat\";\nexport var bubbleContent = \"FamiliesSchoolsCafesStatisticsOverviewSection-module--bubbleContent--3sioY\";\nexport var bubbleContentHighlight = \"FamiliesSchoolsCafesStatisticsOverviewSection-module--bubbleContentHighlight--FkLk5\";\nexport var bubbleContentMain = \"FamiliesSchoolsCafesStatisticsOverviewSection-module--bubbleContentMain--15zFy\";","import React from \"react\"\r\n\r\ninterface StringParagraphProps {\r\n para: string\r\n}\r\nexport const StringParagraph: React.FC = ({para}) => {\r\n const lines = para.split(/\\n/)\r\n\r\n return (\r\n <>\r\n {lines.map((line, index) => (\r\n \r\n {line}\r\n {(index !== lines.length - 1) ?
: undefined}\r\n
\r\n ))}\r\n \r\n )\r\n}","import React from \"react\"\r\nimport { graphql, Link } from \"gatsby\"\r\nimport Section from \"./Section\"\r\nimport * as styles from \"./FamiliesSchoolsCafesStatisticsOverviewSection.module.scss\"\r\nimport { SpeechBubble } from \"../SpeechBubble\"\r\nimport { StringParagraph } from \"../StringParagraph\"\r\nimport { getPathForLocale } from \"../../util/util\"\r\nimport { useAppContext } from \"../AppContext\"\r\nimport { StaticImage } from \"gatsby-plugin-image\"\r\n\r\ninterface FamiliesSchoolsCafesStatisticsOverviewSectionProps {\r\n familiesHighlight: string,\r\n familiesMain: string,\r\n familiesPage: {\r\n slug: string | null\r\n },\r\n\r\n schoolsHighlight: string,\r\n schoolsMain: string,\r\n schoolsPage: {\r\n slug: string\r\n },\r\n\r\n cafesHighlight: string,\r\n cafesMain: string,\r\n cafesPage: {\r\n slug: string\r\n }\r\n}\r\nexport const FamiliesSchoolsCafesStatisticsOverviewSection: React.FC = (props) => {\r\n const { currentLocale } = useAppContext()\r\n\r\n //const data: FamiliesSchoolsCafesStatisticsOverviewSectionQueryData = useStaticQuery(query)\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport const familiesSchoolsCafesStatisticsOverviewFragment = graphql`\r\n fragment familiesSchoolsCafesStatisticsOverviewFragment on Strapi_ComponentSectionFamiliesSchoolsCafesStatisticsOverview {\r\n familiesHighlight\r\n familiesMain\r\n familiesPage {\r\n slug\r\n }\r\n \r\n schoolsHighlight\r\n schoolsMain\r\n schoolsPage {\r\n slug\r\n }\r\n \r\n cafesHighlight\r\n cafesMain\r\n cafesPage {\r\n slug\r\n }\r\n }\r\n`","import React from \"react\"\r\nimport { TwoColumnPitchColumnType } from \"./TwoColumnPitchSection\"\r\nimport * as styles from \"./TwoColumnPitchSectionColumn.module.scss\"\r\n\r\nexport const TwoColumnPitchColumn: React.FC = ({headline, body, icon}) => {\r\n return (\r\n
\r\n {icon.alternativeText}\r\n
\r\n
{headline}
\r\n
{body}
\r\n
\r\n
\r\n )\r\n}\r\n","// extracted by mini-css-extract-plugin\nexport var TwoColumnPitchSectionColumn = \"TwoColumnPitchSectionColumn-module--TwoColumnPitchSectionColumn--1mux7\";\nexport var content = \"TwoColumnPitchSectionColumn-module--content--20tST\";\nexport var headline = \"TwoColumnPitchSectionColumn-module--headline--2Y7vs\";\nexport var body = \"TwoColumnPitchSectionColumn-module--body--zeD5v\";\nexport var icon = \"TwoColumnPitchSectionColumn-module--icon--2SnIZ\";","import React from \"react\"\r\nimport { graphql } from \"gatsby\"\r\nimport Section from \"../Section\"\r\nimport { TwoColumnPitchColumn } from \"./TwoColumnPitchSectionColumn\"\r\nimport * as styles from \"./TwoColumnPitchSection.module.scss\"\r\nimport { IStrapiImageStaticImage } from \"../../../model/IStrapiImageStaticImage\"\r\n\r\nexport interface TwoColumnPitchColumnType {\r\n headline: string,\r\n body: string,\r\n icon: IStrapiImageStaticImage\r\n}\r\n\r\ninterface TwoColumnPitchSectionProps {\r\n id: string,\r\n columns: TwoColumnPitchColumnType[]\r\n}\r\nexport const TwoColumnPitchSection: React.FC = ({columns}) => {\r\n return (\r\n
\r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport const twoColumnPitchSectionFragment = graphql`\r\n fragment twoColumnPitchSectionFragment on Strapi_ComponentSectionTwoColumnPitch {\r\n columns {\r\n headline\r\n body\r\n icon {\r\n url\r\n alternativeText\r\n urlSharp {\r\n staticURL\r\n }\r\n }\r\n }\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var TwoColumnPitchSection = \"TwoColumnPitchSection-module--TwoColumnPitchSection--2yMCJ\";","import { GatsbyImage } from \"gatsby-plugin-image\"\r\nimport { IStrapiImage } from \"../model/IStrapiImage\"\r\nimport React from \"react\"\r\nimport * as styles from \"./FramedPicture.module.scss\"\r\nimport { mergeClassNames } from \"../util/util\"\r\n\r\ninterface FramedPictureProps {\r\n picture: IStrapiImage,\r\n className?: string\r\n}\r\nexport const FramedPicture: React.FC = ({picture, className}) => {\r\n return (\r\n \r\n )\r\n}","// extracted by mini-css-extract-plugin\nexport var FramedPicture = \"FramedPicture-module--FramedPicture--_6rK-\";","import React from \"react\"\r\nimport { mergeClassNames } from \"../../util/util\"\r\nimport * as styles from \"./FlatButton.module.scss\"\r\n\r\ninterface FlatButtonProps {\r\n onClick: VoidFunction,\r\n className?: string,\r\n style?: React.CSSProperties\r\n}\r\nexport const FlatButton: React.FC = ({children, onClick, className, style}) => {\r\n return (\r\n {children}\r\n )\r\n}","// extracted by mini-css-extract-plugin\nexport var FlatButton = \"FlatButton-module--FlatButton--29i_s\";","import React from \"react\"\r\nimport { RichText } from \"./RichText\"\r\nimport { IPageButton, PageButton } from \"./PageButton\"\r\nimport { mergeClassNames } from \"../util/util\"\r\nimport * as styles from \"./SectionHeadingBodyButtonsColumn.module.scss\"\r\n\r\ninterface SectionHeadingBodyButtonsColumnProps {\r\n heading: string,\r\n body: string,\r\n actionButtons: IPageButton[],\r\n className?: string\r\n}\r\nexport const SectionHeadingBodyButtonsColumn: React.FC = ({heading, body, actionButtons, className}) => {\r\n return (\r\n
\r\n

{heading}

\r\n \r\n\r\n
\r\n {actionButtons.map((button, index) => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}","// extracted by mini-css-extract-plugin\nexport var SectionHeadingBodyButtonsColumn = \"SectionHeadingBodyButtonsColumn-module--SectionHeadingBodyButtonsColumn--1QZPB\";\nexport var heading = \"SectionHeadingBodyButtonsColumn-module--heading--3MidQ\";\nexport var body = \"SectionHeadingBodyButtonsColumn-module--body--1C4ik\";\nexport var actionButtons = \"SectionHeadingBodyButtonsColumn-module--actionButtons--34K4Y\";","import React from \"react\"\r\nimport { graphql } from \"gatsby\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport Section from \"./Section\"\r\nimport * as styles from \"./PicturesAndBody.module.scss\"\r\nimport { mergeClassNames } from \"../../util/util\"\r\nimport { IPageButton } from \"../PageButton\"\r\nimport { FramedPicture } from \"../FramedPicture\"\r\nimport { ScaleToWindowWidth } from \"../ScaleToWindowWidth\"\r\nimport { StaticImage } from \"gatsby-plugin-image\"\r\nimport { SectionHeadingBodyButtonsColumn } from \"../SectionHeadingBodyButtonsColumn\"\r\n\r\ninterface PicturesAndBodyProps {\r\n heading: string,\r\n body: string,\r\n\r\n actionButtons: IPageButton[],\r\n\r\n testimonial: {\r\n heading: string | null,\r\n source: string,\r\n testimonial: string\r\n } | null,\r\n\r\n frontImage: IStrapiImage,\r\n backImage: IStrapiImage,\r\n middleImage: IStrapiImage | null\r\n}\r\nexport const PicturesAndBody: React.FC = (props) => {\r\n const {\r\n heading, body, actionButtons, testimonial, frontImage,\r\n } = props\r\n let { backImage, middleImage } = props\r\n\r\n if (middleImage !== null && backImage === null) {\r\n // If middle image is provided but we're in a two picture layout\r\n [middleImage, backImage] = [backImage, middleImage]\r\n }\r\n\r\n return (\r\n
\r\n \r\n {(ref, scale) => (\r\n \r\n \r\n
\r\n \r\n
\r\n {(middleImage === null) ? undefined : (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n \r\n
\r\n\r\n {(middleImage === null) ? (\r\n
\r\n \r\n
\r\n ) : undefined}\r\n\r\n {(testimonial === null) ? undefined : (\r\n
\r\n {(testimonial.heading) ? (\r\n
{testimonial.heading}
\r\n ) : null}\r\n
{testimonial.testimonial}
\r\n
{testimonial.source}
\r\n
\r\n )}\r\n \r\n \r\n )}\r\n
\r\n\r\n \r\n
\r\n )\r\n}\r\n\r\nexport const picturesAndBodyQueryFragment = graphql`\r\n fragment picturesAndBodyQueryFragment on Strapi_ComponentSectionTwoPicturesAndBody {\r\n heading\r\n body\r\n \r\n actionButtons {\r\n ...pageButtonFragment\r\n }\r\n \r\n testimonial {\r\n heading\r\n source\r\n testimonial\r\n }\r\n \r\n frontImage: picture1 {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 315, quality: 90)\r\n }\r\n }\r\n }\r\n backImage: picture3 {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 250, quality: 90)\r\n }\r\n }\r\n }\r\n \r\n middleImage: picture2 {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 350, quality: 90)\r\n }\r\n }\r\n }\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var TwoPicturesAndBody = \"PicturesAndBody-module--TwoPicturesAndBody--2Oevu\";\nexport var pictures = \"PicturesAndBody-module--pictures--2G5E7\";\nexport var picturesContent = \"PicturesAndBody-module--picturesContent--1Qax1\";\nexport var backImage = \"PicturesAndBody-module--backImage--31LKR\";\nexport var frontImage = \"PicturesAndBody-module--frontImage--3775S\";\nexport var badge = \"PicturesAndBody-module--badge--3dUFg\";\nexport var testimonial = \"PicturesAndBody-module--testimonial--2r1hf\";\nexport var testimonialHeading = \"PicturesAndBody-module--testimonialHeading--1hUMN\";\nexport var testimonialBody = \"PicturesAndBody-module--testimonialBody--3Sa4i\";\nexport var testimonialSource = \"PicturesAndBody-module--testimonialSource--24hSh\";\nexport var picturesWithMiddlePicture = \"PicturesAndBody-module--picturesWithMiddlePicture--3T-2W\";\nexport var middleImage = \"PicturesAndBody-module--middleImage--YMo-P\";\nexport var content = \"PicturesAndBody-module--content--31B90\";","import {graphql} from \"gatsby\"\r\nimport React, {useRef, useState} from \"react\"\r\nimport * as styles from \"./QuestionsAndAnswersSection.module.scss\"\r\nimport {RichText} from \"../RichText\"\r\n\r\ninterface QuestionsAndAnswersType {\r\n id: string,\r\n question: string,\r\n answer: string\r\n}\r\n\r\ninterface QuestionsAndAnswersSectionProps {\r\n heading: string,\r\n colour: string,\r\n questionsandanswers: QuestionsAndAnswersType[],\r\n}\r\n\r\nexport const QuestionsAndAnswersSection: React.FC = ({heading, colour, questionsandanswers}) => {\r\n return (\r\n
\r\n

{heading}

\r\n
\r\n {questionsandanswers.map((question) => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n\r\nconst QuestionAndAnswer: React.FC = ({question, answer}) => {\r\n const [setActive, setActiveState] = useState(\"\");\r\n const [setHeight, setHeightState] = useState(\"0px\");\r\n const [setRotate, setRotateState] = useState(\"accordion__icon\");\r\n const content = useRef(null);\r\n\r\n function toggleAccordion() {\r\n setActiveState(setActive === \"\" ? \"active\" : \"\");\r\n setHeightState(\r\n setActive === \"active\" ? \"0px\" : `${content?.current?.scrollHeight ?? 0}px`\r\n );\r\n setRotateState(\r\n setActive === \"active\" ? \"rotate(-90deg)\" : \"rotate(0deg)\"\r\n );\r\n }\r\n\r\n\r\n return (\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport const questionsAndAnswersSectionFragment = graphql`\r\n fragment questionsAndAnswersSectionFragment on Strapi_ComponentSectionQuestionsAndAnswers {\r\n id\r\n heading\r\n colour\r\n questionsandanswers {\r\n answer\r\n id\r\n question\r\n }\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var QuestionsAndAnswersSection = \"QuestionsAndAnswersSection-module--QuestionsAndAnswersSection--3a2uM\";\nexport var heading = \"QuestionsAndAnswersSection-module--heading--3y5eX\";\nexport var accordionTitleContainer = \"QuestionsAndAnswersSection-module--accordionTitleContainer--36js6\";\nexport var accordionButtonContainer = \"QuestionsAndAnswersSection-module--accordionButtonContainer--hhssv\";\nexport var accordionButton = \"QuestionsAndAnswersSection-module--accordionButton--3BWyD\";\nexport var accordionTitle = \"QuestionsAndAnswersSection-module--accordionTitle--4FY6_\";\nexport var accordionContent = \"QuestionsAndAnswersSection-module--accordionContent--3avi8\";\nexport var accordionText = \"QuestionsAndAnswersSection-module--accordionText--2Mlij\";\nexport var accordionLine = \"QuestionsAndAnswersSection-module--accordionLine--37Gtx\";","// extracted by mini-css-extract-plugin\nexport var headingSection = \"FourColumnSection-module--headingSection--2sIPU\";\nexport var columnHeader = \"FourColumnSection-module--columnHeader--gshTW\";\nexport var columnImage = \"FourColumnSection-module--columnImage--3eLBI\";\nexport var columnPlus = \"FourColumnSection-module--columnPlus--2QdSD\";\nexport var headingSectionHeaderText = \"FourColumnSection-module--headingSectionHeaderText--2w-GD\";\nexport var fourColumnHeadingSmallText = \"FourColumnSection-module--fourColumnHeadingSmallText--2zCn2\";\nexport var headingSectionSubHeadingText = \"FourColumnSection-module--headingSectionSubHeadingText--A3hpa\";\nexport var fourColumnButton = \"FourColumnSection-module--fourColumnButton--2LPx3\";\nexport var cardSection = \"FourColumnSection-module--cardSection--3KlEX\";\nexport var cardColumn = \"FourColumnSection-module--cardColumn--1QcPD\";\nexport var cardBox = \"FourColumnSection-module--cardBox--3ODb_\";\nexport var cardHeading = \"FourColumnSection-module--cardHeading--nnRSM\";\nexport var cardDescription = \"FourColumnSection-module--cardDescription--15Brr\";\nexport var cardSmallText = \"FourColumnSection-module--cardSmallText--2a35e\";\nexport var cardContainer = \"FourColumnSection-module--cardContainer--1JOWb\";","import React from \"react\"\r\nimport { graphql } from \"gatsby\"\r\nimport { IStrapiImage } from \"./../../model/IStrapiImage\"\r\nimport * as styles from \"./FourColumnSection.module.scss\"\r\nimport Section from \"./Section\"\r\nimport { GatsbyImage } from \"gatsby-plugin-image\"\r\nimport { IPageButton, PageButton } from \"../PageButton\"\r\n\r\nexport interface FourColumnCard {\r\n cardHeading: string,\r\n cardIcon: IStrapiImage,\r\n cardDescription: string,\r\n cardSmallText: string,\r\n id: string\r\n}\r\n\r\ninterface FourColumnSectionProps {\r\n id: string,\r\n fourColumnHeading: string,\r\n fourColumnHeadingSmallText: string | null,\r\n fourColumnSubHeading: string,\r\n fourColumnHeadingColour: string,\r\n fourColumnHeaderPhoto1: IStrapiImage,\r\n fourColumnHeaderPhoto2: IStrapiImage,\r\n card: FourColumnCard[],\r\n fourColumnButton: IPageButton[]\r\n}\r\n\r\nexport const FourColumnSection: React.FC = ({fourColumnHeading, fourColumnSubHeading, fourColumnHeadingColour, fourColumnHeaderPhoto1, fourColumnHeaderPhoto2, card, fourColumnButton, fourColumnHeadingSmallText}) => {\r\n return (\r\n
\r\n
\r\n
\r\n

{fourColumnHeading}{fourColumnHeadingSmallText ? {fourColumnHeadingSmallText}: undefined }

\r\n
{fourColumnSubHeading}
\r\n
\r\n
\r\n \r\n
\r\n
+
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {card.map((c) => (\r\n \r\n ))}\r\n
\r\n
\r\n {fourColumnButton.map((button, index) => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n\r\nconst CardContent: React.FC = ({cardHeading, cardIcon, cardDescription, cardSmallText}) => {\r\n return (\r\n
\r\n
\r\n
{cardHeading}
\r\n
\r\n \r\n {cardSmallText ?
{cardSmallText}
: ''}\r\n
\r\n
\r\n
{cardDescription}
\r\n
\r\n )\r\n}\r\n\r\nexport const fourColumnSectionFragment = graphql`\r\n fragment fourColumnSectionFragment on Strapi_ComponentSectionFourColumnCard {\r\n id\r\n fourColumnHeading\r\n fourColumnHeadingSmallText\r\n fourColumnSubHeading\r\n fourColumnHeadingColour\r\n fourColumnHeaderPhoto1 {\r\n url\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 400, quality: 100)\r\n }\r\n }\r\n }\r\n fourColumnHeaderPhoto2 {\r\n url\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 400, quality: 100)\r\n }\r\n }\r\n }\r\n fourColumnButton {\r\n id\r\n page {\r\n slug\r\n }\r\n type\r\n text\r\n }\r\n card {\r\n cardHeading\r\n id\r\n cardDescription\r\n cardSmallText\r\n cardIcon {\r\n url\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 100, quality: 100)\r\n }\r\n }\r\n }\r\n }\r\n }\r\n`","import React from \"react\"\r\nimport { graphql, useStaticQuery } from \"gatsby\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport * as styles from \"./TwoColumnTalkSection.module.scss\"\r\nimport { GatsbyImage } from \"gatsby-plugin-image\"\r\nimport Section from \"./Section\"\r\nimport { IPhoneNumber } from \"../../model/IPhoneNumber\"\r\nimport {RichText} from \"../RichText\";\r\n\r\ninterface TwoColumnTalkSectionProps {\r\n talkDescription: string,\r\n talkImage: IStrapiImage\r\n}\r\ninterface TwoColumnTalkSectionData {\r\n localNumber: IPhoneNumber,\r\n nationalNumber: IPhoneNumber\r\n}\r\nexport const TwoColumnTalkSection: React.FC = ({talkDescription, talkImage}) => {\r\n const data = useStaticQuery<{ strapi: {globalConfig: TwoColumnTalkSectionData} }>(query)\r\n const config = data.strapi.globalConfig\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nconst query = graphql`\r\n query {\r\n strapi {\r\n globalConfig {\r\n localNumber {\r\n ...phoneNumberFields\r\n }\r\n nationalNumber {\r\n ...phoneNumberFields\r\n }\r\n }\r\n }\r\n }\r\n`\r\n\r\nexport const twoColumnTalkSectionFragment = graphql`\r\n fragment twoColumnTalkSectionFragment on Strapi_ComponentSectionTwoColumnTalk {\r\n talkDescription: talkDesciption\r\n talkImage {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 200, quality: 100)\r\n }\r\n }\r\n }\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var twoColumnTalkSectionContainer = \"TwoColumnTalkSection-module--twoColumnTalkSectionContainer--Ug0gZ\";\nexport var talkContact = \"TwoColumnTalkSection-module--talkContact--2MkfU\";\nexport var talkDescriptionHeading = \"TwoColumnTalkSection-module--talkDescriptionHeading--3befQ\";\nexport var talkDescriptionHeadingContent = \"TwoColumnTalkSection-module--talkDescriptionHeadingContent--iMMfE\";\nexport var sidebar = \"TwoColumnTalkSection-module--sidebar--1yicx\";\nexport var content = \"TwoColumnTalkSection-module--content--2xqbb\";","// extracted by mini-css-extract-plugin\nexport var contactUsSection = \"ContactUsSection-module--contactUsSection--26-Xi\";\nexport var contactHeader = \"ContactUsSection-module--contactHeader--2AANE\";\nexport var contactTitle = \"ContactUsSection-module--contactTitle--IfwDw\";\nexport var contactDescription = \"ContactUsSection-module--contactDescription--2TlJW\";\nexport var contactValue = \"ContactUsSection-module--contactValue--W7CPj\";\nexport var contactRequired = \"ContactUsSection-module--contactRequired--CqHja\";\nexport var contactForm = \"ContactUsSection-module--contactForm--xJdz8\";\nexport var contactIcon = \"ContactUsSection-module--contactIcon--1YEhY\";\nexport var icon = \"ContactUsSection-module--icon--2DXdx\";\nexport var separator = \"ContactUsSection-module--separator--7pVrV\";","import React, {useEffect} from \"react\";\r\n\r\ninterface DANGEROUS_HtmlAndScriptProps {\r\n html: string\r\n script: string\r\n}\r\nexport const DANGEROUS_HtmlAndScript: React.FC = ({html, script}) => {\r\n useEffect(() => {\r\n // Evaluate the script after the content is rendered.\r\n window.eval(script)\r\n }, [])\r\n\r\n return (\r\n
\r\n )\r\n}","import React from \"react\"\r\nimport * as styles from \"./ContactUsSection.module.scss\"\r\nimport { graphql, useStaticQuery } from \"gatsby\"\r\nimport { IPhoneNumber } from \"../../model/IPhoneNumber\"\r\nimport { StaticImage } from \"gatsby-plugin-image\"\r\nimport Section from \"./Section\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport Contact from \"./ContactForm.html\"\r\nimport { DANGEROUS_HtmlAndScript } from \"../DANGEROUS_HtmlAndScript\";\r\n\r\nconst CONTACT_FORM_SCRIPT = `\r\n function rccallback428265000039389103() {\r\n if(document.getElementById('recap428265000039389103')!=undefined){\r\n document.getElementById('recap428265000039389103').setAttribute('captcha-verified',true);\r\n }\r\n if(document.getElementById('recapErr428265000039389103')!=undefined && document.getElementById('recapErr428265000039389103').style.visibility == 'visible' ){\r\n document.getElementById('recapErr428265000039389103').style.visibility='hidden';\r\n }\r\n }\r\n function reCaptchaAlert428265000039389103() {\r\n var recap = document.getElementById('recap428265000039389103');\r\n if( recap !=undefined && recap.getAttribute('captcha-verified') == 'false')\r\n {\r\n document.getElementById('recapErr428265000039389103').style.visibility='visible';\r\n return false;\r\n }\r\n return true;\r\n }\r\n function validateEmail428265000039389103() {\r\n var form = document.forms['WebToLeads428265000039389103'];\r\n var emailFld = form.querySelectorAll('[ftype=email]');\r\n var i;\r\n for (i = 0; i < emailFld.length; i++) {\r\n var emailVal = emailFld[i].value;\r\n if((emailVal.replace(/^\\\\s+|\\\\s+$/g, '')).length!=0 ) {\r\n var atpos=emailVal.indexOf('@');\r\n var dotpos=emailVal.lastIndexOf('.');\r\n if (atpos<1 || dotpos=emailVal.length) {\r\n alert('Please enter a valid email address. ');\r\n emailFld[i].focus();\r\n return false;\r\n }\r\n }\r\n }\r\n return true;\r\n }\r\n function checkMandatory428265000039389103() {\r\n var mndFileds = new Array('Company','First Name','Last Name','Email','Phone','Description','LEADCF8','LEADCF9');\r\n\t\tvar fldLangVal = new Array('Organisation','First\\x20Name','Last\\x20Name','Email','Phone','Description','Location','Enquiry\\x20type');\r\n\t\tfor(i=0;i3){ \r\n alert('You can upload a maximum of three files at a time.'); \r\n return false; \r\n } \r\n if ('files' in uploadedFiles) { \r\n if (uploadedFiles.files.length != 0) { \r\n for (var i = 0; i < uploadedFiles.files.length; i++) { \r\n var file = uploadedFiles.files[i]; \r\n if ('size' in file) { \r\n totalFileSize = totalFileSize + file.size; \r\n } \r\n } \r\n if(totalFileSize > 20971520){ \r\n alert('Total file(s) size should not exceed 20MB.'); \r\n return false; \r\n } \r\n } \r\n } \r\n return true; \r\n }\r\n\r\n function tooltipShow428265000039389103(el) {\r\n var tooltip = el.nextElementSibling;\r\n var tooltipDisplay = tooltip.style.display;\r\n if(tooltipDisplay == 'none'){\r\n var allTooltip = document.getElementsByClassName('zcwf_tooltip_over');\r\n for(i=0; i = ({ contactHeader }) => {\r\n const data = useStaticQuery(query)\r\n const config = data.strapi.globalConfig\r\n\r\n return (\r\n
\r\n

{contactHeader}

\r\n \r\n

\r\n Helpdesk: {config.localNumber.userVisible} or call free {config.nationalNumber.userVisible}\r\n

\r\n
\r\n

\r\n Talk to one of our friendly team,\r\n
\r\n Monday to Friday 8:00am - 4:00pm\r\n

\r\n
\r\n
\r\n \r\n

\r\n Email: {config.helpdeskEmail}\r\n

\r\n
\r\n \r\n

\r\n Online: {config.supportLink}\r\n

\r\n
\r\n

\r\n Our online support centre for ezlunch and your myKindo account\r\n

\r\n
\r\n
\r\n
\r\n
\r\n Or you can contact us with this form:\r\n
\r\n
\r\n

\r\n * Required fields\r\n

\r\n
\r\n
\r\n \r\n
\r\n )\r\n}\r\n\r\nconst query = graphql`\r\n query {\r\n strapi {\r\n globalConfig {\r\n localNumber {\r\n ...phoneNumberFields\r\n }\r\n nationalNumber {\r\n ...phoneNumberFields\r\n }\r\n helpdeskEmail\r\n supportLink\r\n }\r\n }\r\n }\r\n`\r\n\r\nexport const contactUsSectionFragment = graphql`\r\n fragment contactUsSectionFragment on Strapi_ComponentSectionContactUs {\r\n contactHeader\r\n contactIcon {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 180, quality: 100)\r\n }\r\n }\r\n }\r\n }\r\n`","// Module\nvar code = \"
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
?\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
?\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Upload a File
\\r\\n
\\r\\n
\\r\\n
?\\r\\n \\r\\n
\\r\\n
\\r\\n

File(s) size limit is 20MB.

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\";\n// Exports\nexport default code;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}","var array = [];\nvar characterCodeCache = [];\nexport default function leven(first, second) {\n if (first === second) {\n return 0;\n }\n\n var swap = first; // Swapping the strings if `a` is longer than `b` so we know which one is the\n // shortest & which one is the longest\n\n if (first.length > second.length) {\n first = second;\n second = swap;\n }\n\n var firstLength = first.length;\n var secondLength = second.length; // Performing suffix trimming:\n // We can linearly drop suffix common to both strings since they\n // don't increase distance at all\n // Note: `~-` is the bitwise way to perform a `- 1` operation\n\n while (firstLength > 0 && first.charCodeAt(~-firstLength) === second.charCodeAt(~-secondLength)) {\n firstLength--;\n secondLength--;\n } // Performing prefix trimming\n // We can linearly drop prefix common to both strings since they\n // don't increase distance at all\n\n\n var start = 0;\n\n while (start < firstLength && first.charCodeAt(start) === second.charCodeAt(start)) {\n start++;\n }\n\n firstLength -= start;\n secondLength -= start;\n\n if (firstLength === 0) {\n return secondLength;\n }\n\n var bCharacterCode;\n var result;\n var temporary;\n var temporary2;\n var index = 0;\n var index2 = 0;\n\n while (index < firstLength) {\n characterCodeCache[index] = first.charCodeAt(start + index);\n array[index] = ++index;\n }\n\n while (index2 < secondLength) {\n bCharacterCode = second.charCodeAt(start + index2);\n temporary = index2++;\n result = index2;\n\n for (index = 0; index < firstLength; index++) {\n temporary2 = bCharacterCode === characterCodeCache[index] ? temporary : temporary + 1;\n temporary = array[index]; // eslint-disable-next-line no-multi-assign\n\n result = array[index] = temporary > result ? temporary2 > result ? result + 1 : temporary2 : temporary2 > temporary ? temporary + 1 : temporary2;\n }\n }\n\n return result;\n}","import { SCHOOL_ALIAS_LIST } from \"../../../config\"\r\n\r\nconst buildEquivalentSchoolNameGeneratorFunction = (): ((schoolId: string) => string[]) => {\r\n /*Returns a function that converts school_ids into an array of 'equivalent' ids based on aliases */\r\n const mkReplaceFn = function(strFrom: string, strTo: string) {\r\n /* return a one-way function for an alias pair*/\r\n const reStarts = new RegExp(\"^\" + strFrom + \" \")\r\n const reContains = new RegExp(\" \" + strFrom + \" \", \"g\")\r\n const reEnds = new RegExp(\" \" + strFrom + \"$\")\r\n const fnOneWay = function(tok: string) {\r\n return tok.replace(reStarts, strTo + \" \").replace(reContains, \" \" + strTo + \" \").replace(reEnds, \" \" + strTo)\r\n }\r\n return fnOneWay\r\n\r\n }\r\n const mkEquivFnForPair = function(pair: [string, string]) { /* given a pair like ['st','saint'] return a function that will do a global replace in both directions*/\r\n /* return a two way function for an alias pair\r\n * the function returned first tries forward, and (only if result of forward is unchanged) tries backward\r\n */\r\n const fn1 = mkReplaceFn(pair[0].trim(), pair[1].trim()) //forward function\r\n const fn2 = mkReplaceFn(pair[1].trim(), pair[0].trim()) //backwards function\r\n const fnTwoWay = function(s0: string) {\r\n const s1 = fn1(s0)\r\n if (s1 !== s0) {\r\n return s1 //string was altered, so return now\r\n } else {\r\n return fn2(s1) //may still return same string as s0\r\n }\r\n }\r\n return fnTwoWay\r\n }\r\n\r\n const fnsToApply = SCHOOL_ALIAS_LIST.map(mkEquivFnForPair)\r\n\r\n const finalFunction = function(school_id: string) {\r\n const equivs = []\r\n for (let i = 0; i < fnsToApply.length; i++) {\r\n const equivOrSame = fnsToApply[i](school_id)\r\n if (school_id !== equivOrSame) equivs.push(equivOrSame)\r\n }\r\n return equivs\r\n }\r\n\r\n return finalFunction\r\n}\r\nexport const equivalentSchoolNameGeneratorFunction = buildEquivalentSchoolNameGeneratorFunction()","import React, { ChangeEvent, useCallback, useEffect, useMemo, useReducer, useState } from \"react\"\r\nimport * as styles from \"./SchoolSearchBox.module.scss\"\r\nimport loadFetchPolyfill from \"../../../util/compat/loadFetchPolyfill\"\r\nimport { mergeClassNames, pathify } from \"../../../util/util\"\r\nimport { RaisedButton } from \"../../button/RaisedButton\"\r\nimport { FlatButton } from \"../../button/FlatButton\"\r\nimport leven from \"leven\"\r\nimport { equivalentSchoolNameGeneratorFunction } from \"./util\"\r\n\r\ninterface SchoolSearchBoxSchool {\r\n school_id: string,\r\n roll_status: {\r\n w_join: boolean,\r\n s_join: boolean\r\n }\r\n}\r\n\r\n/*\r\n* SchoolSearchBox State\r\n*/\r\nenum SchoolSearchBoxLoadingState {\r\n Unloaded,\r\n Pending,\r\n Loaded,\r\n Error\r\n}\r\nenum SchoolSearchBoxStateActionType {\r\n TriggerLoad,\r\n LoadSuccessful,\r\n LoadFailure\r\n}\r\ninterface SchoolSearchBoxState {\r\n loadSchoolListStatus: SchoolSearchBoxLoadingState,\r\n schools?: SchoolSearchBoxSchool[]\r\n}\r\ninterface SchoolSearchBoxStateAction {\r\n type: SchoolSearchBoxStateActionType\r\n}\r\ninterface SchoolSearchBoxStateActionLoaded extends SchoolSearchBoxStateAction {\r\n type: SchoolSearchBoxStateActionType.LoadSuccessful,\r\n schools: SchoolSearchBoxSchool[]\r\n}\r\nconst SchoolSearchBoxReducer: React.Reducer = (state, action) => {\r\n switch (action.type) {\r\n case SchoolSearchBoxStateActionType.TriggerLoad:\r\n return {\r\n loadSchoolListStatus: SchoolSearchBoxLoadingState.Pending\r\n }\r\n case SchoolSearchBoxStateActionType.LoadFailure:\r\n return {\r\n loadSchoolListStatus: SchoolSearchBoxLoadingState.Error\r\n }\r\n case SchoolSearchBoxStateActionType.LoadSuccessful:\r\n return {\r\n loadSchoolListStatus: SchoolSearchBoxLoadingState.Loaded,\r\n schools: (action as SchoolSearchBoxStateActionLoaded).schools\r\n }\r\n default:\r\n throw new Error(\"Unsupported action triggered.\")\r\n }\r\n}\r\n\r\n/*\r\n* SchoolSearchBox\r\n*/\r\ninterface SchoolSearchBoxProps {\r\n className?: string,\r\n highlightColour: string\r\n}\r\nexport const SchoolSearchBox: React.FC = (props) => {\r\n const [state, dispatch] = useReducer(SchoolSearchBoxReducer, {\r\n loadSchoolListStatus: SchoolSearchBoxLoadingState.Unloaded\r\n })\r\n\r\n // Called when we want to reload the school data.\r\n // Warning: Should be called *after* polyfills have been loaded (if necessary)\r\n const startLoadingCallback = useCallback(async () => {\r\n dispatch({\r\n type: SchoolSearchBoxStateActionType.TriggerLoad\r\n })\r\n\r\n // In future this may be a CORS request to shop.tgcl.co.nz or similar.\r\n // For now, assumes that the /school_list.json file is kept up to date.\r\n const url = `/school_list.json`\r\n try {\r\n const res = await fetch(url, {\r\n credentials: 'omit'\r\n })\r\n\r\n if (!res.ok) {\r\n return dispatch({\r\n type: SchoolSearchBoxStateActionType.LoadFailure\r\n })\r\n }\r\n\r\n const toDispatch: SchoolSearchBoxStateActionLoaded = {\r\n type: SchoolSearchBoxStateActionType.LoadSuccessful,\r\n schools: await res.json()\r\n }\r\n return dispatch(toDispatch)\r\n }\r\n catch (ex) {\r\n console.error(ex)\r\n return dispatch({\r\n type: SchoolSearchBoxStateActionType.LoadFailure\r\n })\r\n }\r\n }, [])\r\n useEffect(() => {\r\n (async () => {\r\n await loadFetchPolyfill()\r\n await startLoadingCallback()\r\n })()\r\n }, [startLoadingCallback])\r\n\r\n const errorContent = (\r\n
\r\n Failed to load schools. Retry\r\n
\r\n )\r\n\r\n switch (state.loadSchoolListStatus) {\r\n case SchoolSearchBoxLoadingState.Loaded:\r\n if (state.schools !== undefined) {\r\n return \r\n }\r\n return errorContent\r\n case SchoolSearchBoxLoadingState.Error:\r\n return errorContent\r\n default:\r\n return (\r\n
\r\n Loading school search...\r\n
\r\n )\r\n }\r\n}\r\n\r\n/*\r\n* SchoolSearchBoxContent State\r\n*/\r\ninterface SchoolSearchBoxContentState {\r\n currentText: string,\r\n currentMatches: {\r\n distance: number,\r\n aliasIndex: number\r\n }[]\r\n}\r\ninterface SchoolSearchBoxSearchableSchool {\r\n school_index: number,\r\n searchable_name: string\r\n}\r\n\r\n/*\r\n* SchoolSearchBoxContent\r\n*/\r\ninterface SchoolSearchBoxContentProps extends SchoolSearchBoxProps {\r\n schools: SchoolSearchBoxSchool[]\r\n}\r\nconst SchoolSearchBoxContent: React.FC = ({className, highlightColour, schools}) => {\r\n const COMPLETE_MATCH_MAX_DISTANCE = 0.1\r\n const [state, setState] = useState({\r\n currentText: \"\",\r\n currentMatches: []\r\n })\r\n\r\n // Contains a list of all aliases of all schools\r\n const searchableSchools: SchoolSearchBoxSearchableSchool[] = useMemo(() => {\r\n const results: SchoolSearchBoxSearchableSchool[] = []\r\n\r\n for (let i=0; i < schools.length; i++) {\r\n const school = schools[i]\r\n\r\n results.push({\r\n school_index: i,\r\n searchable_name: school.school_id.toLowerCase()\r\n })\r\n\r\n for (const alias of equivalentSchoolNameGeneratorFunction(school.school_id.toLowerCase())) {\r\n results.push({\r\n school_index: i,\r\n searchable_name: alias\r\n })\r\n }\r\n }\r\n\r\n return results\r\n }, [schools])\r\n\r\n // Updates state when the search string changes\r\n const onSearchChange = useCallback((newSearch: string) => {\r\n if (/^\\s*$/.test(newSearch)) {\r\n // Is empty or entirely whitespace\r\n setState({\r\n currentText: '',\r\n currentMatches: []\r\n })\r\n }\r\n else {\r\n const distances = []\r\n\r\n for (let i=0; i < searchableSchools.length; i++) {\r\n const schoolAlias = searchableSchools[i].searchable_name;\r\n distances.push({\r\n distance: leven(schoolAlias, newSearch.toLowerCase()) / schoolAlias.length,\r\n aliasIndex: i\r\n })\r\n }\r\n\r\n // Sort the distances in ascending order\r\n distances.sort((firstEl, secondEl) => {\r\n return firstEl.distance - secondEl.distance\r\n })\r\n\r\n setState({\r\n currentText: newSearch,\r\n currentMatches: distances\r\n })\r\n }\r\n }, [searchableSchools])\r\n const onSearchInputChange = useCallback((evt: ChangeEvent) => {\r\n return onSearchChange(evt.target.value)\r\n }, [onSearchChange])\r\n\r\n // Computes the current matches based on the current state\r\n const matches = useMemo(() => {\r\n const matches: string[] = []\r\n for (let i=0; i < state.currentMatches.length; i++) {\r\n const currentMatch = state.currentMatches[i]\r\n const currentMatchSchool = schools[searchableSchools[currentMatch.aliasIndex].school_index].school_id\r\n\r\n if (currentMatch.distance > 1) {\r\n // this is far from a match. No need to look further.\r\n break\r\n }\r\n\r\n if (matches.indexOf(currentMatchSchool) === -1) {\r\n matches.push(currentMatchSchool)\r\n }\r\n\r\n if (currentMatch.distance <= COMPLETE_MATCH_MAX_DISTANCE) {\r\n // This is practically a complete match. No need to look further.\r\n break\r\n }\r\n }\r\n return matches\r\n }, [state.currentMatches, searchableSchools, schools])\r\n const hasCompleteMatch = useMemo(() => {\r\n return state.currentMatches.length >= 1 && state.currentMatches[0].distance <= COMPLETE_MATCH_MAX_DISTANCE\r\n }, [state.currentMatches])\r\n\r\n // Called when the user clicks to view the menu for the current school\r\n const showSchoolMenu = useCallback(() => {\r\n if (hasCompleteMatch) {\r\n const schoolId = matches[0]\r\n\r\n window.open(`https://shop.tgcl.co.nz/shop/pdf/school/${pathify(schoolId)}/Menu.pdf`, '_blank')\r\n }\r\n }, [matches, schools])\r\n\r\n // Triggers a re-search if the schools props ever changes\r\n useEffect(() => {\r\n onSearchChange(state.currentText)\r\n }, [schools])\r\n\r\n if (schools.length === 0) {\r\n return <>\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n\r\n {(hasCompleteMatch || matches.length === 0) ? undefined : (\r\n
\r\n {(matches.map((school_id) => (\r\n onSearchChange(school_id)}\r\n >\r\n {school_id}\r\n
\r\n )))}\r\n
\r\n )}\r\n
\r\n\r\n Show school menu\r\n
\r\n )\r\n}","import \"core-js/features/promise\"\r\n\r\nexport default function loadFetchPolyfill() {\r\n return new Promise((resolve) => {\r\n // eslint-disable-next-line\r\n if ('fetch' in window) return resolve();\r\n\r\n import('whatwg-fetch').then(() => resolve());\r\n })\r\n}","// extracted by mini-css-extract-plugin\nexport var RoundedShadowInput = \"SchoolSearchBox-module--RoundedShadowInput--3MBfH\";\nexport var SchoolSearchBox = \"SchoolSearchBox-module--SchoolSearchBox--3YyMd\";\nexport var searchContainer = \"SchoolSearchBox-module--searchContainer--1yXxQ\";\nexport var searchSuggestions = \"SchoolSearchBox-module--searchSuggestions--2swLa\";\nexport var searchInput = \"SchoolSearchBox-module--searchInput--3_bhb\";\nexport var suggestion = \"SchoolSearchBox-module--suggestion--2erY-\";\nexport var searchButton = \"SchoolSearchBox-module--searchButton--Sdtos\";\nexport var disabled = \"SchoolSearchBox-module--disabled--ti46N\";","import React, { useCallback, useEffect, useRef, useState } from \"react\"\r\nimport { graphql } from \"gatsby\"\r\nimport { IStrapiImage } from \"../../../model/IStrapiImage\"\r\nimport * as styles from \"./ShowSchoolMenuSection.module.scss\"\r\nimport Section from \"../Section\"\r\nimport { GatsbyImage } from \"gatsby-plugin-image\"\r\nimport { IPageButton, PageButton } from \"../../PageButton\"\r\nimport { SchoolSearchBox } from \"./SchoolSearchBox\"\r\nimport ResizeObserver from \"resize-observer-polyfill\"\r\n\r\ninterface ShowSchoolMenuSectionProps {\r\n cloudTextHighlight: string,\r\n cloudTextMain: string,\r\n schoolMenuHeader: string,\r\n schoolMenuDescription1: string,\r\n schoolMenuDescription2: string,\r\n schoolMenuDescription3: string,\r\n schoolMenuColour: string,\r\n showSchoolMenuImage: IStrapiImage,\r\n schoolMenuButtons: IPageButton[]\r\n}\r\nexport const ShowSchoolMenuSection: React.FC = ({cloudTextHighlight, cloudTextMain, showSchoolMenuImage, schoolMenuHeader, schoolMenuDescription1, schoolMenuDescription2, schoolMenuDescription3, schoolMenuColour, schoolMenuButtons}) => {\r\n const BASE_IMAGE_WIDTH = 520\r\n const BASE_TEXT_TOP = 100\r\n const BASE_TEXT_LEFT = 53\r\n const [scale, setScale] = useState(1)\r\n\r\n const imgRef = useRef(null)\r\n\r\n const onImageResize = useCallback((entries: ResizeObserverEntry[]) => {\r\n const imgEntry = entries[0]\r\n\r\n setScale(imgEntry.contentRect.width / BASE_IMAGE_WIDTH)\r\n }, [imgRef.current])\r\n\r\n useEffect(() => {\r\n const imgEl = imgRef.current\r\n if (imgEl !== null) {\r\n console.log(\"Binding ResizeObserver...\")\r\n const observer = new ResizeObserver(onImageResize)\r\n observer.observe(imgEl)\r\n\r\n return () => observer.disconnect()\r\n }\r\n }, [imgRef.current])\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
{cloudTextHighlight}
\r\n
{cloudTextMain}
\r\n
\r\n
\r\n
\r\n
{schoolMenuHeader}
\r\n
{schoolMenuDescription1}
\r\n
{schoolMenuDescription2}
\r\n
{schoolMenuDescription3}
\r\n \r\n
\r\n {schoolMenuButtons.map((button, index) => (\r\n \r\n ))}\r\n
\r\n
\r\n \r\n
\r\n )\r\n}\r\n\r\nexport const twoColumnTalkSectionFragment = graphql`\r\n fragment showSchoolMenuSectionFragment on Strapi_ComponentSectionShowSchoolMenu {\r\n cloudTextHighlight\r\n cloudTextMain\r\n schoolMenuHeader\r\n schoolMenuDescription1\r\n schoolMenuDescription2\r\n schoolMenuDescription3\r\n schoolMenuColour\r\n schoolMenuButtons {\r\n id\r\n page {\r\n slug\r\n }\r\n type\r\n text\r\n }\r\n showSchoolMenuImage {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n staticURL\r\n childImageSharp {\r\n gatsbyImageData(width: 520, quality: 100)\r\n }\r\n }\r\n }\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var showSchoolMenuSectionContainer = \"ShowSchoolMenuSection-module--showSchoolMenuSectionContainer--1YfEv\";\nexport var sidebar = \"ShowSchoolMenuSection-module--sidebar--1YqK_\";\nexport var sidebarHighlight = \"ShowSchoolMenuSection-module--sidebarHighlight--2sxX8\";\nexport var sidebarMain = \"ShowSchoolMenuSection-module--sidebarMain--3oqlK\";\nexport var content = \"ShowSchoolMenuSection-module--content--3Xyez\";\nexport var schoolMenuHeader = \"ShowSchoolMenuSection-module--schoolMenuHeader--3rPLw\";\nexport var schoolMenuDescription1 = \"ShowSchoolMenuSection-module--schoolMenuDescription1--1oM4H\";\nexport var schoolMenuDescription2 = \"ShowSchoolMenuSection-module--schoolMenuDescription2--2SVeb\";\nexport var schoolMenuDescription3 = \"ShowSchoolMenuSection-module--schoolMenuDescription3--3Umfn\";\nexport var schoolMenuButton = \"ShowSchoolMenuSection-module--schoolMenuButton--AtbLR\";","// extracted by mini-css-extract-plugin\nexport var howItWorksSectionContainer = \"HowItWorksSection-module--howItWorksSectionContainer--2A8jX\";\nexport var howItWorksHeader = \"HowItWorksSection-module--howItWorksHeader--2crXA\";\nexport var speechBubble = \"HowItWorksSection-module--speechBubble--3TUNM\";\nexport var bubbleContent = \"HowItWorksSection-module--bubbleContent--2LxRh\";\nexport var stepNumber = \"HowItWorksSection-module--stepNumber--2oJr0\";\nexport var stepBold = \"HowItWorksSection-module--stepBold--_afmW\";\nexport var stepText = \"HowItWorksSection-module--stepText--3WxMd\";\nexport var left = \"HowItWorksSection-module--left--39GFk\";\nexport var content = \"HowItWorksSection-module--content--3kbJm\";\nexport var contentImage = \"HowItWorksSection-module--contentImage--2Jnyg\";\nexport var localMenuBackground = \"HowItWorksSection-module--localMenuBackground--31Tga\";\nexport var twoRowCardContainer = \"HowItWorksSection-module--twoRowCardContainer--1sslv\";\nexport var right = \"HowItWorksSection-module--right--3OOPm\";\nexport var headerImg = \"HowItWorksSection-module--headerImg--1UucT\";\nexport var icon = \"HowItWorksSection-module--icon--37bCZ\";\nexport var description = \"HowItWorksSection-module--description--SM1ND\";\nexport var localMenuImageContainer = \"HowItWorksSection-module--localMenuImageContainer--2R9Gq\";\nexport var localMenuHeader = \"HowItWorksSection-module--localMenuHeader--2IA4l\";\nexport var localMenuDescription = \"HowItWorksSection-module--localMenuDescription---TWNJ\";","import React from \"react\"\r\nimport { graphql } from \"gatsby\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport { IStrapiImageStaticImage } from \"../../model/IStrapiImageStaticImage\"\r\nimport * as styles from \"./HowItWorksSection.module.scss\"\r\nimport { GatsbyImage } from \"gatsby-plugin-image\"\r\nimport Section from \"./Section\"\r\nimport { SpeechBubble } from \"../SpeechBubble\"\r\nimport { RichText } from \"../RichText\"\r\nimport { mergeClassNames } from \"../../util/util\"\r\nimport TickIcon from \"../../images/tick.svg\"\r\n\r\ninterface BubbleSteps {\r\n id: string,\r\n stepBold: string,\r\n stepNumber: string,\r\n stepNumberColour: string,\r\n stepText: string\r\n}\r\n\r\ninterface HowItWorksSectionProps {\r\n howItWorksHeader: string,\r\n howItWorksHeaderColor: string,\r\n bubbleSteps: BubbleSteps[],\r\n middleImage: IStrapiImage,\r\n rowCard: {\r\n id: string,\r\n firstDescription: string,\r\n secondDescription: string,\r\n thirdDescription: string,\r\n headerImg: IStrapiImage,\r\n firstIcon: IStrapiImageStaticImage,\r\n secondIcon: IStrapiImageStaticImage,\r\n thirdIcon: IStrapiImageStaticImage\r\n },\r\n localMenuCard: {\r\n menuDescription: string,\r\n menuHeader: string,\r\n menuImg1: IStrapiImage,\r\n menuImg2: IStrapiImage,\r\n menuImg3: IStrapiImage,\r\n menuImg4: IStrapiImage\r\n }\r\n}\r\n\r\nexport const HowItWorksSection: React.FC = ({howItWorksHeader, howItWorksHeaderColor, bubbleSteps, middleImage, rowCard, localMenuCard}) => {\r\n return (\r\n
\r\n

{howItWorksHeader}

\r\n
\r\n
\r\n \r\n \r\n {bubbleSteps.map((bubbleStep) => (\r\n
\r\n {bubbleStep.stepNumber}\r\n {bubbleStep.stepBold}\r\n {bubbleStep.stepText}\r\n
\r\n ))}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n {(rowCard === null) ? undefined : (\r\n
\r\n
\r\n \r\n
\r\n
\r\n {rowCard.firstIcon.alternativeText}\r\n
\r\n \r\n
\r\n {rowCard.secondIcon.alternativeText}\r\n
\r\n \r\n {(rowCard.thirdIcon === null) ? undefined : (\r\n <>\r\n
\r\n {rowCard.thirdIcon.alternativeText}\r\n
\r\n \r\n \r\n )}\r\n
\r\n )}\r\n {(localMenuCard === null) ? undefined : (\r\n
\r\n
\r\n {localMenuCard.menuHeader}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n )}\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport const howItWorksSectionFragment = graphql`\r\n fragment howItWorksSectionFragment on Strapi_ComponentSectionHowItWorks {\r\n howItWorksHeader\r\n howItWorksHeaderColor\r\n rowCard {\r\n id\r\n firstDescription\r\n secondDescription\r\n thirdDescription\r\n firstIcon {\r\n url\r\n alternativeText\r\n urlSharp {\r\n staticURL\r\n }\r\n }\r\n headerImg {\r\n url\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 184, quality: 100)\r\n }\r\n }\r\n }\r\n secondIcon {\r\n url\r\n alternativeText\r\n urlSharp {\r\n staticURL\r\n }\r\n }\r\n thirdIcon {\r\n url\r\n alternativeText\r\n urlSharp {\r\n staticURL\r\n }\r\n }\r\n }\r\n bubbleSteps {\r\n id\r\n stepBold\r\n stepNumber\r\n stepNumberColour\r\n stepText\r\n }\r\n middleImage {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 260, quality: 100)\r\n }\r\n }\r\n }\r\n localMenuCard {\r\n menuDescription\r\n menuHeader\r\n menuImg1 {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 80, quality: 100)\r\n }\r\n }\r\n }\r\n menuImg2 {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 80, quality: 100)\r\n }\r\n }\r\n }\r\n menuImg3 {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 80, quality: 100)\r\n }\r\n }\r\n }\r\n menuImg4 {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 80, quality: 100)\r\n }\r\n }\r\n }\r\n }\r\n }\r\n`","import React from \"react\"\r\nimport { graphql, Link } from \"gatsby\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport Section from \"./Section\"\r\nimport * as styles from \"./OurStorySection.module.scss\"\r\nimport { FramedPicture } from \"../FramedPicture\"\r\nimport { StaticImage } from \"gatsby-plugin-image\"\r\nimport { RichText } from \"../RichText\"\r\nimport { getPathForLocale } from \"../../util/util\"\r\nimport { useAppContext } from \"../AppContext\"\r\n\r\ninterface OurStoryProps {\r\n ourStoryHeader: string,\r\n ourStorySubHeader1: string,\r\n ourStorySubHeader2: string,\r\n ourStorySubHeader3: string,\r\n ourStoryBody: string,\r\n ourStoryImage: IStrapiImage\r\n}\r\nexport const OurStorySection: React.FC = ({ourStoryHeader, ourStorySubHeader1, ourStorySubHeader3, ourStorySubHeader2, ourStoryBody, ourStoryImage}) => {\r\n const { currentLocale } = useAppContext()\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n

{ourStoryHeader}

\r\n

{ourStorySubHeader1}

\r\n
{ourStorySubHeader2}
\r\n
{ourStorySubHeader3}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
Visit kindo.co.nz to find out more about what we do.
\r\n
\r\n
\r\n\r\n
\r\n
Find out how we can help you:
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n )\r\n}\r\n\r\nexport const ourStoryFragment = graphql`\r\n fragment ourStoryFragment on Strapi_ComponentSectionOurStory {\r\n ourStoryHeader\r\n ourStorySubHeader1\r\n ourStorySubHeader2\r\n ourStorySubHeader3\r\n ourStoryBody\r\n ourStoryImage {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 200, quality: 100)\r\n }\r\n }\r\n }\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var overviewSection = \"OurStorySection-module--overviewSection--19kVO\";\nexport var itemsContainer = \"OurStorySection-module--itemsContainer--1X18b\";\nexport var ourStoryContainer = \"OurStorySection-module--ourStoryContainer--2dqHr\";\nexport var ourStoryHeader = \"OurStorySection-module--ourStoryHeader--J7_Q1\";\nexport var ourStoryBody = \"OurStorySection-module--ourStoryBody--16x9G\";\nexport var ourStorySubHeader1 = \"OurStorySection-module--ourStorySubHeader1--2OTZ4\";\nexport var ourStorySubHeader2 = \"OurStorySection-module--ourStorySubHeader2--3eBfv\";\nexport var ourStorySubHeader3 = \"OurStorySection-module--ourStorySubHeader3--1d1sK\";\nexport var ourStoryHeaderBody = \"OurStorySection-module--ourStoryHeaderBody--2xC2V\";\nexport var ourStoryImage = \"OurStorySection-module--ourStoryImage--3GTa3\";\nexport var ourStoryCircleImage = \"OurStorySection-module--ourStoryCircleImage--1pF9V\";\nexport var bottomLink = \"OurStorySection-module--bottomLink--3fewU\";\nexport var sidebar = \"OurStorySection-module--sidebar--epaQh\";\nexport var content = \"OurStorySection-module--content--2JM0Z\";\nexport var findOutText = \"OurStorySection-module--findOutText--34UEW\";","// extracted by mini-css-extract-plugin\nexport var inactiveLink = \"HomepageHeaderSection-module--inactiveLink--mnDJf\";\nexport var sectionContainer = \"HomepageHeaderSection-module--sectionContainer--yM80X\";\nexport var promotionContainer = \"HomepageHeaderSection-module--promotionContainer--vV_C8\";\nexport var sidebar = \"HomepageHeaderSection-module--sidebar--12YJP\";\nexport var content = \"HomepageHeaderSection-module--content--2NPVM\";\nexport var homepageHeaderSectionContainer = \"HomepageHeaderSection-module--homepageHeaderSectionContainer--3eQEs\";\nexport var subTitle = \"HomepageHeaderSection-module--subTitle--2YywU\";\nexport var speechBubble = \"HomepageHeaderSection-module--speechBubble--1nM_m\";\nexport var bubbleContent = \"HomepageHeaderSection-module--bubbleContent--30Fyw\";\nexport var bubbleLine1 = \"HomepageHeaderSection-module--bubbleLine1--2fcez\";\nexport var bubbleLine2 = \"HomepageHeaderSection-module--bubbleLine2--2nDmZ\";\nexport var bubbleLine3 = \"HomepageHeaderSection-module--bubbleLine3--3ewjj\";\nexport var bubbleLine4 = \"HomepageHeaderSection-module--bubbleLine4--3Q5lx\";","import React from \"react\"\r\nimport Section from \"./Section\"\r\nimport { GatsbyImage } from \"gatsby-plugin-image\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport { graphql } from \"gatsby\"\r\nimport { SpeechBubble } from \"../SpeechBubble\"\r\nimport \"slick-carousel/slick/slick.scss\"\r\nimport \"slick-carousel/slick/slick-theme.scss\"\r\nimport Slider from \"react-slick\"\r\nimport * as styles from \"./HomepageHeaderSection.module.scss\"\r\nimport { RichText } from \"../RichText\"\r\n\r\nexport interface HomepageHeaderProps {\r\n bubbleLine1: string,\r\n bubbleLine2: string,\r\n bubbleLine3: string,\r\n bubbleLine4: string,\r\n subTitle: string,\r\n homeBannerImg: IStrapiImage,\r\n promotionImage1: IStrapiImage,\r\n promotionImage2: IStrapiImage,\r\n promotionImage3: IStrapiImage,\r\n promoUrl1: string,\r\n promoUrl2: string,\r\n promoUrl3: string\r\n}\r\nexport const HomepageHeaderSection: React.FC = ({bubbleLine1, bubbleLine2, bubbleLine3, bubbleLine4, subTitle, homeBannerImg, promotionImage1, promotionImage2, promotionImage3, promoUrl1, promoUrl2, promoUrl3}) => {\r\n const sliderSettings = {\r\n arrows: false,\r\n dots: false,\r\n autoplay: true,\r\n lazyLoad: true,\r\n speed: 2000,\r\n slidesToShow: 1,\r\n slidesToScroll: -1\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n

\r\n {bubbleLine1}
\r\n {bubbleLine2}
\r\n {bubbleLine3}
\r\n {bubbleLine4}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n { promotionImage1 ? \r\n \r\n \r\n \r\n : undefined }\r\n { promotionImage2 ? \r\n \r\n \r\n \r\n : undefined }\r\n { promotionImage3 ? \r\n \r\n \r\n \r\n : undefined }\r\n \r\n
\r\n
\r\n \r\n
\r\n )\r\n}\r\n\r\nexport default HomepageHeaderSection;\r\n\r\nexport const homepageHeaderSectionFragment = graphql`\r\n fragment homepageHeaderSectionFragment on Strapi_ComponentSectionHomeHeader {\r\n bubbleLine1\r\n bubbleLine2\r\n bubbleLine3\r\n bubbleLine4\r\n subTitle\r\n homeBannerImg {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 750, quality: 100)\r\n }\r\n }\r\n }\r\n promotionImage1 {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 2000, quality: 100)\r\n }\r\n }\r\n }\r\n promotionImage2 {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 2000, quality: 100)\r\n }\r\n }\r\n }\r\n promotionImage3 {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 2000, quality: 100)\r\n }\r\n }\r\n }\r\n promoUrl1\r\n promoUrl2\r\n promoUrl3\r\n }\r\n`","import React from \"react\"\r\nimport { graphql } from \"gatsby\"\r\nimport { IPageButton } from \"../PageButton\"\r\nimport Section from \"./Section\"\r\nimport * as styles from \"./RightPictureAndBodySection.module.scss\"\r\nimport { GatsbyImage } from \"gatsby-plugin-image\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport { SectionHeadingBodyButtonsColumn } from \"../SectionHeadingBodyButtonsColumn\"\r\n\r\ninterface RightPictureAndBodySectionProps {\r\n heading: string,\r\n _body: string,\r\n actionButtons: IPageButton[],\r\n picture: IStrapiImage\r\n}\r\nexport const RightPictureAndBodySection: React.FC = ({heading, _body: body, actionButtons, picture}) => {\r\n return (\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nexport const rightPictureAndBodySectionFragment = graphql`\r\n fragment rightPictureAndBodySectionFragment on Strapi_ComponentSectionRightPictureAndBody {\r\n heading\r\n _body: body\r\n picture {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 765, quality: 90)\r\n }\r\n }\r\n }\r\n actionButtons {\r\n ...pageButtonFragment\r\n }\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var RightPictureAndBodySection = \"RightPictureAndBodySection-module--RightPictureAndBodySection--1wx5N\";\nexport var content = \"RightPictureAndBodySection-module--content--cghAE\";\nexport var picture = \"RightPictureAndBodySection-module--picture--2xNyO\";","import React from \"react\"\r\nimport { graphql, useStaticQuery } from \"gatsby\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport * as styles from \"./ThreeColumnCaseShareSection.module.scss\"\r\nimport { GatsbyImage } from \"gatsby-plugin-image\"\r\nimport { IPageButton, PageButton } from \"../PageButton\"\r\nimport { SpeechBubble } from \"../SpeechBubble\"\r\nimport { StringParagraph } from \"../StringParagraph\"\r\nimport { IMetadata } from \"../../model/IMetadata\"\r\nimport { SocialIcons } from \"../social/SocialIcons\"\r\n\r\ninterface ThreeColumnCaseShareSectionProps {\r\n bubbleText: string,\r\n threeColumnHeader: string,\r\n threeColumnSubHeader: string,\r\n threeColumnHeaderColour: string,\r\n threeColumnImage: IStrapiImage,\r\n findOutBtn: IPageButton[],\r\n displaySocialIcons: boolean\r\n}\r\n\r\ninterface ConnectionSectionData {\r\n strapi: {\r\n globalConfig: {\r\n Metadata: IMetadata\r\n }\r\n }\r\n}\r\n\r\nexport const ThreeColumnCaseShareSection: React.FC = ({displaySocialIcons, bubbleText, threeColumnHeader, threeColumnSubHeader, threeColumnHeaderColour, threeColumnImage, findOutBtn}) => {\r\n const data = useStaticQuery(connectSectionQuery)\r\n const {Metadata: defaultMetadata} = data.strapi.globalConfig\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n

{threeColumnHeader}

\r\n
{threeColumnSubHeader}
\r\n
\r\n {findOutBtn.map((button, index) => (\r\n \r\n ))}\r\n {displaySocialIcons ? \r\n
\r\n \r\n
\r\n : undefined}\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport const threeColumnCaseShareSectionFragment = graphql`\r\n fragment threeColumnCaseShareSectionFragment on Strapi_ComponentSectionThreeColumnCaseShare {\r\n bubbleText\r\n threeColumnHeader\r\n threeColumnSubHeader\r\n threeColumnHeaderColour\r\n displaySocialIcons\r\n findOutBtn {\r\n id\r\n page {\r\n slug\r\n }\r\n type\r\n text\r\n }\r\n threeColumnImage {\r\n url\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 204, quality: 100)\r\n }\r\n }\r\n }\r\n }\r\n`\r\n\r\nconst connectSectionQuery = graphql`\r\nquery {\r\n strapi {\r\n globalConfig {\r\n titleSuffix\r\n Metadata {\r\n metaTitle\r\n metaDescription\r\n shareImage {\r\n url\r\n urlSharp {\r\n staticURL\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n`","// extracted by mini-css-extract-plugin\nexport var threeColumnCaseShareSection = \"ThreeColumnCaseShareSection-module--threeColumnCaseShareSection--11Xnw\";\nexport var left = \"ThreeColumnCaseShareSection-module--left--3CUkw\";\nexport var middle = \"ThreeColumnCaseShareSection-module--middle--fRi3D\";\nexport var right = \"ThreeColumnCaseShareSection-module--right--3nCNx\";\nexport var findOutBtn = \"ThreeColumnCaseShareSection-module--findOutBtn--2OAOt\";\nexport var socialSection = \"ThreeColumnCaseShareSection-module--socialSection--1Yz0N\";\nexport var threeColumnHeader = \"ThreeColumnCaseShareSection-module--threeColumnHeader--2A0kC\";\nexport var threeColumnSubHeader = \"ThreeColumnCaseShareSection-module--threeColumnSubHeader--319_U\";\nexport var speechBubble = \"ThreeColumnCaseShareSection-module--speechBubble--3QtS0\";\nexport var bubbleContent = \"ThreeColumnCaseShareSection-module--bubbleContent--3qkgA\";\nexport var bubbleContentHighlight = \"ThreeColumnCaseShareSection-module--bubbleContentHighlight--WKcvy\";","// extracted by mini-css-extract-plugin\nexport var SectionNews = \"NewsSection-module--SectionNews--3QOh-\";\nexport var blogHeading = \"NewsSection-module--blogHeading--1i96X\";\nexport var blogTitle = \"NewsSection-module--blogTitle--3LRzI\";\nexport var blogDate = \"NewsSection-module--blogDate--y8EA1\";\nexport var blogContent = \"NewsSection-module--blogContent--3z-Ug\";\nexport var readMore = \"NewsSection-module--readMore--1cZjB\";\nexport var blogImage = \"NewsSection-module--blogImage--cV1-G\";\nexport var sliderContent = \"NewsSection-module--sliderContent--1nwqD\";\nexport var newsHeader = \"NewsSection-module--newsHeader--3NrjD\";\nexport var latestOne = \"NewsSection-module--latestOne--d4klg\";\nexport var latestTwo = \"NewsSection-module--latestTwo--2plIE\";\nexport var sidebar = \"NewsSection-module--sidebar--2QV_0\";\nexport var content = \"NewsSection-module--content--1Usz2\";\nexport var blogsContainer = \"NewsSection-module--blogsContainer--3-zhH\";\nexport var blogsHeader = \"NewsSection-module--blogsHeader--3brmi\";","import React from \"react\"\r\nimport Section from \"./Section\"\r\nimport { graphql, Link, useStaticQuery } from \"gatsby\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport * as styles from \"./NewsSection.module.scss\"\r\nimport { RichText } from \"../RichText\"\r\nimport { GatsbyImage } from \"gatsby-plugin-image\"\r\nimport \"slick-carousel/slick/slick.scss\"\r\nimport \"slick-carousel/slick/slick-theme.scss\"\r\nimport Slider from \"react-slick\"\r\nimport { format, parseISO } from \"date-fns\"\r\n\r\ninterface NewsBlog {\r\n blogTitle: string,\r\n blogContent: string,\r\n slug: string,\r\n id: string,\r\n published_at: string,\r\n blogImage: IStrapiImage,\r\n locale: string\r\n}\r\n\r\ninterface NewsData {\r\n strapi: {\r\n blogs: NewsBlog[]\r\n }\r\n}\r\n\r\nexport interface NewsProps {\r\n newsHeader: string\r\n}\r\n\r\n\r\nexport const NewsSection: React.FC = ({newsHeader}) => {\r\n const data = useStaticQuery(query)\r\n const blogs = data.strapi.blogs\r\n const latestOne = blogs.slice(0,1)[0]\r\n const latestTwo = blogs.slice(1,2)[0]\r\n\r\n const sliderSettings = {\r\n arrows: false,\r\n dots: true,\r\n infinite: true,\r\n speed: 500,\r\n slidesToShow: 4,\r\n slidesToScroll: 4,\r\n draggable: true,\r\n swipe: true,\r\n responsive: [{\r\n breakpoint: 480,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1\r\n }\r\n },\r\n {\r\n breakpoint: 800,\r\n settings: {\r\n slidesToShow: 2,\r\n slidesToScroll: 1\r\n }\r\n },\r\n {\r\n breakpoint: 1026,\r\n settings: {\r\n slidesToShow: 2,\r\n slidesToScroll: 1\r\n }\r\n }]\r\n };\r\n\r\n return (\r\n <>\r\n
\r\n

{newsHeader}

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n

Previous posts

\r\n \r\n {blogs\r\n // .sort((a, b) => b.id - a.id)\r\n .map((blog, index) => (\r\n
\r\n

{blog.blogTitle}

\r\n \r\n \r\n Read more\r\n \r\n \r\n
\r\n ))}\r\n
\r\n
\r\n \r\n )\r\n}\r\n\r\ninterface LatestBlogPostProps {\r\n className?: string,\r\n blog: NewsBlog,\r\n imageSide: \"left\" | \"right\"\r\n}\r\nconst LatestBlogPost: React.FC = ({className, blog, imageSide}) => {\r\n const text = (\r\n
\r\n
\r\n

{blog.blogTitle}

\r\n {format(parseISO(blog.published_at), \"dd MMMM, yyyy\")}\r\n
\r\n \r\n \r\n Read more\r\n \r\n
\r\n )\r\n\r\n const image = (\r\n
\r\n \r\n
\r\n )\r\n\r\n return (\r\n
\r\n {(imageSide === \"left\") ? (\r\n <>\r\n {image}\r\n {text}\r\n \r\n ) : (\r\n <>\r\n {text}\r\n {image}\r\n \r\n )}\r\n
\r\n )\r\n}\r\n\r\nconst query = graphql`\r\nquery {\r\n strapi {\r\n blogs(sort: \"id:desc\") {\r\n blogTitle\r\n blogContent\r\n id\r\n slug\r\n published_at\r\n locale\r\n blogImage {\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 300, quality: 100)\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n`\r\n\r\nexport const twoColumnTalkSectionFragment = graphql`\r\n fragment newsSectionFragment on Strapi_ComponentSectionNews {\r\n newsHeader\r\n }\r\n`","// extracted by mini-css-extract-plugin\nexport var familiesSchoolsCafesHeaderSectionContainer = \"FamiliesSchoolsCafesHeaderSection-module--familiesSchoolsCafesHeaderSectionContainer--1zmCS\";\nexport var sidebar = \"FamiliesSchoolsCafesHeaderSection-module--sidebar--3Ciiu\";\nexport var content = \"FamiliesSchoolsCafesHeaderSection-module--content--1FC0-\";\nexport var curvedTextImage = \"FamiliesSchoolsCafesHeaderSection-module--curvedTextImage--1_Bvn\";\nexport var headerButtons = \"FamiliesSchoolsCafesHeaderSection-module--headerButtons--2uToE\";\nexport var topHeaderContainer = \"FamiliesSchoolsCafesHeaderSection-module--topHeaderContainer--3yhvf\";\nexport var sectionContainer = \"FamiliesSchoolsCafesHeaderSection-module--sectionContainer--1g8zT\";\nexport var headerBox = \"FamiliesSchoolsCafesHeaderSection-module--headerBox--2_oS-\";\nexport var bubbleContent = \"FamiliesSchoolsCafesHeaderSection-module--bubbleContent--3tG85\";\nexport var bubbleContentHighlight = \"FamiliesSchoolsCafesHeaderSection-module--bubbleContentHighlight--YErVv\";\nexport var bubbleContentMain = \"FamiliesSchoolsCafesHeaderSection-module--bubbleContentMain--2qkW-\";\nexport var headerTextBottom = \"FamiliesSchoolsCafesHeaderSection-module--headerTextBottom--2BtEV\";\nexport var headerTextTop = \"FamiliesSchoolsCafesHeaderSection-module--headerTextTop--1aDNY\";\nexport var cloud = \"FamiliesSchoolsCafesHeaderSection-module--cloud--LlVVU\";\nexport var rightSideContent = \"FamiliesSchoolsCafesHeaderSection-module--rightSideContent--k5h3G\";\nexport var rightSideSubHeader = \"FamiliesSchoolsCafesHeaderSection-module--rightSideSubHeader--2WQXl\";\nexport var rightSideTextContainer = \"FamiliesSchoolsCafesHeaderSection-module--rightSideTextContainer--2rCjq\";\nexport var rightSideImage = \"FamiliesSchoolsCafesHeaderSection-module--rightSideImage--1nuXM\";\nexport var headerTextTopMobile = \"FamiliesSchoolsCafesHeaderSection-module--headerTextTopMobile--3bwUm\";\nexport var iconImage = \"FamiliesSchoolsCafesHeaderSection-module--iconImage--1qmz7\";\nexport var speechBubble = \"FamiliesSchoolsCafesHeaderSection-module--speechBubble--2VZXY\";","import React from \"react\"\r\nimport Section from \"./Section\"\r\nimport { GatsbyImage, StaticImage } from \"gatsby-plugin-image\"\r\nimport { IStrapiImage } from \"../../model/IStrapiImage\"\r\nimport { graphql } from \"gatsby\"\r\nimport { SpeechBubble } from \"../SpeechBubble\"\r\nimport * as styles from \"./FamiliesSchoolsCafesHeaderSection.module.scss\"\r\nimport { IStrapiImageStaticImage } from \"../../model/IStrapiImageStaticImage\"\r\nimport { IPageButton, PageButton } from \"./../PageButton\"\r\n\r\nexport interface FamiliesSchoolsCafesHeaderProps {\r\n headerTextTop: string,\r\n headerTextBottom: string,\r\n headerTextTopColour: string,\r\n bubbleTextHighlight: string,\r\n bubbleTextMain: string,\r\n rightSideSubHeader: string,\r\n rightSideContent: string,\r\n curvedTextImage: IStrapiImageStaticImage,\r\n leftSideImage: IStrapiImage,\r\n rightSideImage: IStrapiImage,\r\n speechBubblePosition: SpeechBubblePosition | null,\r\n headerButtons: IPageButton[]\r\n}\r\n\r\nexport interface SpeechBubblePosition {\r\n top: string,\r\n bottom: string,\r\n right: string,\r\n left: string\r\n}\r\n\r\nexport const FamiliesSchoolsCafesHeaderSection: React.FC = (\r\n {rightSideContent, rightSideSubHeader, headerTextBottom, headerTextTopColour, headerTextTop, leftSideImage,\r\n rightSideImage, curvedTextImage, bubbleTextHighlight, bubbleTextMain, speechBubblePosition, headerButtons}) => {\r\n\r\n return (\r\n
\r\n
\r\n \r\n {curvedTextImage.alternativeText}\r\n {headerTextTop}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {bubbleTextHighlight}
\r\n {bubbleTextMain}
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n {headerTextTop}\r\n
{headerTextBottom}
\r\n

\r\n\r\n
\r\n
{rightSideSubHeader}
\r\n
{rightSideContent}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {headerButtons.map((button, index) => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default FamiliesSchoolsCafesHeaderSection;\r\n\r\nexport const familiesSchoolsCafesHeaderSectionFragment = graphql`\r\n fragment familiesSchoolsCafesHeaderSectionFragment on Strapi_ComponentSectionFamiliesSchoolsCafesHeader {\r\n headerTextTop\r\n headerTextBottom\r\n headerTextTopColour\r\n bubbleTextHighlight\r\n bubbleTextMain\r\n rightSideSubHeader\r\n rightSideContent\r\n headerButtons {\r\n id\r\n page {\r\n slug\r\n }\r\n type\r\n text\r\n }\r\n curvedTextImage {\r\n url\r\n alternativeText\r\n urlSharp {\r\n staticURL\r\n }\r\n }\r\n leftSideImage {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 306, quality: 100)\r\n }\r\n }\r\n }\r\n rightSideImage {\r\n id\r\n url\r\n alternativeText\r\n urlSharp {\r\n childImageSharp {\r\n gatsbyImageData(width: 250, quality: 100)\r\n }\r\n }\r\n }\r\n speechBubblePosition {\r\n bottom\r\n left\r\n right\r\n top\r\n }\r\n }\r\n`","import React from \"react\"\r\nimport { TestimonialsSection } from \"./TestimonialsSection\"\r\nimport { LogoCarouselSection } from \"./LogoCarouselSection\"\r\nimport { FamiliesSchoolsCafesStatisticsOverviewSection } from \"./FamiliesSchoolsCafesStatisticsOverviewSection\"\r\nimport { TwoColumnPitchSection } from \"./two_column_pitch_section/TwoColumnPitchSection\"\r\nimport { PicturesAndBody } from \"./PicturesAndBody\"\r\nimport { QuestionsAndAnswersSection } from \"./QuestionsAndAnswersSection\"\r\nimport { FourColumnSection } from \"./FourColumnSection\"\r\nimport { TwoColumnTalkSection } from \"./TwoColumnTalkSection\"\r\nimport { ContactUsSection } from \"./ContactUsSection\"\r\nimport { ShowSchoolMenuSection } from \"./show_school_menu_section/ShowSchoolMenuSection\"\r\nimport { HowItWorksSection } from \"./HowItWorksSection\"\r\nimport { OurStorySection } from \"./OurStorySection\"\r\nimport { HomepageHeaderSection } from \"./HomepageHeaderSection\"\r\nimport { RightPictureAndBodySection } from \"./RightPictureAndBodySection\"\r\nimport { ThreeColumnCaseShareSection } from \"./ThreeColumnCaseShareSection\"\r\nimport { NewsSection } from \"./NewsSection\"\r\nimport { FamiliesSchoolsCafesHeaderSection } from \"./FamiliesSchoolsCafesHeaderSection\"\r\n\r\ninterface RequiredSectionProps {\r\n id: string,\r\n typeName: string\r\n}\r\nexport type SectionProps = RequiredSectionProps & any\r\n\r\ninterface SectionMapperProps {\r\n section: SectionProps\r\n}\r\nexport const SectionMapper: React.FC = ({section}) => {\r\n switch (section.typeName) {\r\n case \"Strapi_ComponentSectionTestimonials\":\r\n return \r\n case \"Strapi_ComponentSectionLogoSlideshow\":\r\n return \r\n case \"Strapi_ComponentSectionFamiliesSchoolsCafesStatisticsOverview\":\r\n return \r\n case \"Strapi_ComponentSectionTwoColumnPitch\":\r\n return \r\n case \"Strapi_ComponentSectionTwoPicturesAndBody\":\r\n return \r\n case \"Strapi_ComponentSectionFourColumnCard\":\r\n return \r\n case \"Strapi_ComponentSectionQuestionsAndAnswers\":\r\n return \r\n case \"Strapi_ComponentSectionTwoColumnTalk\":\r\n return \r\n case \"Strapi_ComponentSectionContactUs\":\r\n return \r\n case \"Strapi_ComponentSectionShowSchoolMenu\":\r\n return \r\n case \"Strapi_ComponentSectionHowItWorks\":\r\n return \r\n case \"Strapi_ComponentSectionOurStory\":\r\n return \r\n case \"Strapi_ComponentSectionHomeHeader\":\r\n return \r\n case \"Strapi_ComponentSectionRightPictureAndBody\":\r\n return \r\n case \"Strapi_ComponentSectionThreeColumnCaseShare\":\r\n return \r\n case \"Strapi_ComponentSectionNews\":\r\n return \r\n case \"Strapi_ComponentSectionFamiliesSchoolsCafesHeader\":\r\n return \r\n default:\r\n console.log(section)\r\n return (\r\n
ERROR: Failed to load section with typeName: {section.typeName}
\r\n )\r\n }\r\n}","import React from \"react\"\r\nimport { ShareIconType } from \"./ShareIconType\"\r\nimport { IMetadata } from \"../../model/IMetadata\"\r\nimport { graphql, useStaticQuery } from \"gatsby\"\r\nimport { SocialIcon } from \"./SocialIcon\"\r\nimport * as styles from \"./SocialIconsSidebar.module.scss\"\r\n\r\ninterface SocialIconsProps {\r\n pageSeo: IMetadata,\r\n}\r\ninterface SocialIconsData {\r\n strapi: {\r\n globalConfig: {\r\n socialLinks: { type: ShareIconType }[]\r\n }\r\n }\r\n}\r\nexport const SocialIconsSidebar: React.FC = ({pageSeo}) => {\r\n const data = useStaticQuery(query)\r\n const {socialLinks} = data.strapi.globalConfig\r\n\r\n return (\r\n
\r\n {(socialLinks.map(({type: linkType}, index) => (\r\n \r\n )))}\r\n
\r\n )\r\n}\r\n\r\nconst query = graphql`\r\n query {\r\n strapi {\r\n globalConfig {\r\n socialLinks {\r\n type\r\n }\r\n }\r\n }\r\n } \r\n`","// extracted by mini-css-extract-plugin\nexport var SocialIconsSidebar = \"SocialIconsSidebar-module--SocialIconsSidebar--1Xi6I\";","// extracted by mini-css-extract-plugin\nexport var hiddenXs = \"Page-module--hiddenXs--PwMys\";","import React from \"react\"\r\nimport Layout from \"./layout/Layout\"\r\nimport { graphql } from \"gatsby\"\r\nimport SEO from \"./seo_analytics/SEO\"\r\nimport { IMetadata } from \"../model/IMetadata\"\r\nimport { AppContext, AppContextProvider } from \"./AppContext\"\r\nimport { SectionMapper, SectionProps } from \"./section/SectionMapper\"\r\nimport { SocialIconsSidebar } from \"./social/SocialIconsSidebar\"\r\nimport { StaticImage } from \"gatsby-plugin-image\"\r\nimport * as styles from './Page.module.scss'\r\n\r\ninterface PageProps {\r\n data: {\r\n strapi: {\r\n pages: {\r\n locale: string,\r\n slug: string,\r\n metadata: IMetadata,\r\n content: SectionProps[]\r\n }[]\r\n }\r\n }\r\n}\r\nconst page: React.FC = (props) => {\r\n const strapi = props.data.strapi\r\n\r\n if (!strapi || strapi.pages.length !== 1) {\r\n throw new Error(\"Failed to load exactly one page with the same locale and id.\")\r\n }\r\n const {metadata, locale, slug, content} = strapi.pages[0]\r\n\r\n const appContext: AppContext = {\r\n currentLocale: locale,\r\n currentSlug: slug\r\n }\r\n\r\n return (\r\n \r\n {/* USE FOR NOTICE */}\r\n {/*
NOTICE: Auckland, Northland and Bay of Plenty ezlunch services are cancelled for Tuesday. Pre-orders in those areas have been cancelled. Go to My Orders to view.
*/}\r\n \r\n \r\n \r\n\r\n { appContext.currentSlug == 'cafes-caterers' ?\r\n \r\n : undefined\r\n }\r\n { appContext.currentSlug == '' ?\r\n \r\n : undefined\r\n }\r\n { appContext.currentSlug == 'families' ?\r\n \r\n : undefined\r\n }\r\n { appContext.currentSlug == 'schools' ?\r\n \r\n : undefined\r\n }\r\n {content.map((content, index) => (\r\n \r\n ))}\r\n \r\n
\r\n )\r\n}\r\nexport default page\r\n\r\nexport const query = graphql`\r\n query($pageId: ID!, $locale: String!) {\r\n strapi {\r\n pages(where: {id: $pageId, _locale: $locale}) {\r\n id\r\n locale\r\n slug\r\n metadata {\r\n ...metadataFields\r\n }\r\n content {\r\n ...pageContentFragment\r\n }\r\n }\r\n }\r\n }\r\n`\r\n\r\nexport const pageContentFragment = graphql`\r\n fragment pageContentFragment on Strapi_PageContentDynamicZone {\r\n typeName: __typename\r\n\r\n ... on Strapi_ComponentSectionTestimonials {\r\n id\r\n ...testimonialsSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionLogoSlideshow {\r\n id\r\n }\r\n ... on Strapi_ComponentSectionFamiliesSchoolsCafesStatisticsOverview {\r\n id\r\n ...familiesSchoolsCafesStatisticsOverviewFragment\r\n }\r\n ... on Strapi_ComponentSectionTwoColumnPitch {\r\n id\r\n ...twoColumnPitchSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionTwoPicturesAndBody {\r\n id\r\n ...picturesAndBodyQueryFragment\r\n }\r\n ... on Strapi_ComponentSectionFourColumnCard {\r\n id\r\n ...fourColumnSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionQuestionsAndAnswers {\r\n id\r\n ...questionsAndAnswersSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionTwoColumnTalk {\r\n id\r\n ...twoColumnTalkSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionContactUs {\r\n typeName: __typename\r\n id\r\n ...contactUsSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionShowSchoolMenu {\r\n typeName: __typename\r\n id\r\n ...showSchoolMenuSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionHowItWorks {\r\n typeName: __typename\r\n id\r\n ...howItWorksSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionHomeHeader {\r\n typeName: __typename\r\n id\r\n ...homepageHeaderSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionOurStory {\r\n typeName: __typename\r\n id\r\n ...ourStoryFragment\r\n }\r\n ... on Strapi_ComponentSectionRightPictureAndBody {\r\n id\r\n ...rightPictureAndBodySectionFragment\r\n }\r\n ... on Strapi_ComponentSectionThreeColumnCaseShare {\r\n typeName: __typename\r\n id\r\n ...threeColumnCaseShareSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionNews {\r\n typeName: __typename\r\n id\r\n ...newsSectionFragment\r\n }\r\n ... on Strapi_ComponentSectionFamiliesSchoolsCafesHeader {\r\n typeName: __typename\r\n id\r\n ...familiesSchoolsCafesHeaderSectionFragment\r\n }\r\n }\r\n`\r\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","var React = require('react');\n\nfunction SpeechBubble (props) {\n return React.createElement(\"svg\",props,React.createElement(\"g\",null,[React.createElement(\"path\",{\"style\":{\"fill\":\"#D5DC74\"},\"d\":\"M404.1,428c0,0-23.6-58.3-136.5-49.2c-225.4,18-294.2-89.6-257-213.3C54.9,18.1,357.8-36.8,522.3,73.3\\r\\n\\t\\tc87.6,58.6,100,183.9,27.3,257.9c-23.5,23.9-55.2,41.5-74.2,53.6C451.2,400.3,404.1,428,404.1,428z\",\"key\":0}),React.createElement(\"path\",{\"style\":{\"fill\":\"#FFFFFF\"},\"d\":\"M404.1,413.8c0,0-23.6-58.3-136.5-49.2C42.1,382.7-26.7,275,10.6,151.3C54.9,4,357.8-51,522.3,59.2\\r\\n\\t\\tc87.6,58.6,100,183.9,27.3,257.9c-23.5,23.9-55.2,41.5-74.2,53.6C451.2,386.1,404.1,413.8,404.1,413.8z\",\"key\":1})]));\n}\n\nSpeechBubble.defaultProps = {\"version\":\"1.1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 598 429\",\"style\":{\"enableBackground\":\"new 0 0 598 429\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = SpeechBubble;\n\nSpeechBubble.default = SpeechBubble;\n","var React = require('react');\n\nfunction Tick (props) {\n return React.createElement(\"svg\",props,React.createElement(\"g\",{\"id\":\"Layer_1\",\"data-name\":\"Layer 1\"},React.createElement(\"polygon\",{\"style\":{\"fill\":\"#c7d046\"},\"points\":\"3.48 64.94 17.7 54.78 46.14 85.94 112.5 2.64 140.95 12.12 53.59 114.38 3.48 64.94\"})));\n}\n\nTick.defaultProps = {\"viewBox\":\"0 0 144 118\"};\n\nmodule.exports = Tick;\n\nTick.default = Tick;\n"],"sourceRoot":""}