{"version":3,"file":"modal-oLdNONXB.js","sources":["../../../app/frontend/entrypoints/marketing/bootstrap/mdb-prefix/modal.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.3): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig,\n} from './util/index';\nimport EventHandler from './dom/event-handler';\nimport Manipulator from './dom/manipulator';\nimport SelectorEngine from './dom/selector-engine';\nimport ScrollBarHelper from './util/scrollbar';\nimport BaseComponent from './base-component';\nimport Backdrop from './util/backdrop';\nimport FocusTrap from './util/focustrap';\nimport { enableDismissTrigger } from './util/component-functions';\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal';\nconst DATA_KEY = 'bs.modal';\nconst EVENT_KEY = `.${DATA_KEY}`;\nconst DATA_API_KEY = '.data-api';\nconst ESCAPE_KEY = 'Escape';\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true,\n};\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean',\n};\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`;\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`;\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`;\nconst EVENT_SHOW = `show${EVENT_KEY}`;\nconst EVENT_SHOWN = `shown${EVENT_KEY}`;\nconst EVENT_RESIZE = `resize${EVENT_KEY}`;\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`;\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`;\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`;\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`;\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`;\n\nconst CLASS_NAME_OPEN = 'modal-open';\nconst CLASS_NAME_FADE = 'fade';\nconst CLASS_NAME_SHOW = 'show';\nconst CLASS_NAME_STATIC = 'modal-static';\n\nconst OPEN_SELECTOR = '.modal.show';\nconst SELECTOR_DIALOG = '.modal-dialog';\nconst SELECTOR_MODAL_BODY = '.modal-body';\nconst SELECTOR_DATA_TOGGLE = '[data-mdb-toggle=\"modal\"]';\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element);\n\n this._config = this._getConfig(config);\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element);\n this._backdrop = this._initializeBackDrop();\n this._focustrap = this._initializeFocusTrap();\n this._isShown = false;\n this._ignoreBackdropClick = false;\n this._isTransitioning = false;\n this._scrollBar = new ScrollBarHelper();\n }\n\n // Getters\n\n static get Default() {\n return Default;\n }\n\n static get NAME() {\n return NAME;\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget);\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return;\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget,\n });\n\n if (showEvent.defaultPrevented) {\n return;\n }\n\n this._isShown = true;\n\n if (this._isAnimated()) {\n this._isTransitioning = true;\n }\n\n this._scrollBar.hide();\n\n document.body.classList.add(CLASS_NAME_OPEN);\n\n this._adjustDialog();\n\n this._setEscapeEvent();\n this._setResizeEvent();\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, (event) => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true;\n }\n });\n });\n\n this._showBackdrop(() => this._showElement(relatedTarget));\n }\n\n hide() {\n if (!this._isShown || this._isTransitioning) {\n return;\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE);\n\n if (hideEvent.defaultPrevented) {\n return;\n }\n\n this._isShown = false;\n const isAnimated = this._isAnimated();\n\n if (isAnimated) {\n this._isTransitioning = true;\n }\n\n this._setEscapeEvent();\n this._setResizeEvent();\n\n this._focustrap.deactivate();\n\n this._element.classList.remove(CLASS_NAME_SHOW);\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS);\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS);\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated);\n }\n\n dispose() {\n [window, this._dialog].forEach((htmlElement) => EventHandler.off(htmlElement, EVENT_KEY));\n\n this._backdrop.dispose();\n this._focustrap.deactivate();\n super.dispose();\n }\n\n handleUpdate() {\n this._adjustDialog();\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated(),\n });\n }\n\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element,\n });\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {}),\n };\n typeCheckConfig(NAME, config, DefaultType);\n return config;\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated();\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog);\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.append(this._element);\n }\n\n this._element.style.display = 'block';\n this._element.removeAttribute('aria-hidden');\n this._element.setAttribute('aria-modal', true);\n this._element.setAttribute('role', 'dialog');\n this._element.scrollTop = 0;\n\n if (modalBody) {\n modalBody.scrollTop = 0;\n }\n\n if (isAnimated) {\n reflow(this._element);\n }\n\n this._element.classList.add(CLASS_NAME_SHOW);\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._focustrap.activate();\n }\n\n this._isTransitioning = false;\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget,\n });\n };\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated);\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, (event) => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault();\n this.hide();\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition();\n }\n });\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS);\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog());\n } else {\n EventHandler.off(window, EVENT_RESIZE);\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none';\n this._element.setAttribute('aria-hidden', true);\n this._element.removeAttribute('aria-modal');\n this._element.removeAttribute('role');\n this._isTransitioning = false;\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN);\n this._resetAdjustments();\n this._scrollBar.reset();\n EventHandler.trigger(this._element, EVENT_HIDDEN);\n });\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, (event) => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false;\n return;\n }\n\n if (event.target !== event.currentTarget) {\n return;\n }\n\n if (this._config.backdrop === true) {\n this.hide();\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition();\n }\n });\n\n this._backdrop.show(callback);\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE);\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);\n if (hideEvent.defaultPrevented) {\n return;\n }\n\n const { classList, scrollHeight, style } = this._element;\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight;\n\n // return if the following background transition hasn't yet completed\n if (\n (!isModalOverflowing && style.overflowY === 'hidden') ||\n classList.contains(CLASS_NAME_STATIC)\n ) {\n return;\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden';\n }\n\n classList.add(CLASS_NAME_STATIC);\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC);\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = '';\n }, this._dialog);\n }\n }, this._dialog);\n\n this._element.focus();\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n const scrollbarWidth = this._scrollBar.getWidth();\n const isBodyOverflowing = scrollbarWidth > 0;\n\n if (\n (!isBodyOverflowing && isModalOverflowing && !isRTL()) ||\n (isBodyOverflowing && !isModalOverflowing && isRTL())\n ) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`;\n }\n\n if (\n (isBodyOverflowing && !isModalOverflowing && !isRTL()) ||\n (!isBodyOverflowing && isModalOverflowing && isRTL())\n ) {\n this._element.style.paddingRight = `${scrollbarWidth}px`;\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = '';\n this._element.style.paddingRight = '';\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config);\n\n if (typeof config !== 'string') {\n return;\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n\n data[config](relatedTarget);\n });\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this);\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n\n EventHandler.one(target, EVENT_SHOW, (showEvent) => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return;\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus();\n }\n });\n });\n\n // avoid conflict when clicking moddal toggler while another one is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR);\n if (allReadyOpen) {\n Modal.getInstance(allReadyOpen).hide();\n }\n\n const data = Modal.getOrCreateInstance(target);\n\n data.toggle(this);\n});\n\nenableDismissTrigger(Modal);\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal);\n\nexport default Modal;\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","ESCAPE_KEY","Default","DefaultType","EVENT_HIDE","EVENT_HIDE_PREVENTED","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","EVENT_CLICK_DATA_API","CLASS_NAME_OPEN","CLASS_NAME_FADE","CLASS_NAME_SHOW","CLASS_NAME_STATIC","OPEN_SELECTOR","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_TOGGLE","Modal","BaseComponent","element","config","SelectorEngine","ScrollBarHelper","relatedTarget","EventHandler","event","isAnimated","htmlElement","Backdrop","FocusTrap","Manipulator","typeCheckConfig","modalBody","reflow","transitionComplete","callback","classList","scrollHeight","style","isModalOverflowing","scrollbarWidth","isBodyOverflowing","isRTL","data","target","getElementFromSelector","showEvent","isVisible","allReadyOpen","enableDismissTrigger","defineJQueryPlugin"],"mappings":"2dA8BA,MAAMA,EAAO,QACPC,EAAW,WACXC,EAAY,IAAID,CAAQ,GACxBE,EAAe,YACfC,EAAa,SAEbC,EAAU,CACd,SAAU,GACV,SAAU,GACV,MAAO,EACT,EAEMC,EAAc,CAClB,SAAU,mBACV,SAAU,UACV,MAAO,SACT,EAEMC,EAAa,OAAOL,CAAS,GAC7BM,EAAuB,gBAAgBN,CAAS,GAChDO,EAAe,SAASP,CAAS,GACjCQ,EAAa,OAAOR,CAAS,GAC7BS,EAAc,QAAQT,CAAS,GAC/BU,EAAe,SAASV,CAAS,GACjCW,EAAsB,gBAAgBX,CAAS,GAC/CY,EAAwB,kBAAkBZ,CAAS,GACnDa,EAAwB,kBAAkBb,CAAS,GACnDc,EAA0B,oBAAoBd,CAAS,GACvDe,EAAuB,QAAQf,CAAS,GAAGC,CAAY,GAEvDe,EAAkB,aAClBC,EAAkB,OAClBC,EAAkB,OAClBC,EAAoB,eAEpBC,EAAgB,cAChBC,EAAkB,gBAClBC,EAAsB,cACtBC,EAAuB,kCAQ7B,MAAMC,UAAcC,CAAc,CAChC,YAAYC,EAASC,EAAQ,CAC3B,MAAMD,CAAO,EAEb,KAAK,QAAU,KAAK,WAAWC,CAAM,EACrC,KAAK,QAAUC,EAAe,QAAQP,EAAiB,KAAK,QAAQ,EACpE,KAAK,UAAY,KAAK,sBACtB,KAAK,WAAa,KAAK,uBACvB,KAAK,SAAW,GAChB,KAAK,qBAAuB,GAC5B,KAAK,iBAAmB,GACxB,KAAK,WAAa,IAAIQ,CACvB,CAID,WAAW,SAAU,CACnB,OAAO1B,CACR,CAED,WAAW,MAAO,CAChB,OAAOL,CACR,CAID,OAAOgC,EAAe,CACpB,OAAO,KAAK,SAAW,KAAK,KAAM,EAAG,KAAK,KAAKA,CAAa,CAC7D,CAED,KAAKA,EAAe,CACd,KAAK,UAAY,KAAK,kBAIRC,EAAa,QAAQ,KAAK,SAAUvB,EAAY,CAChE,cAAAsB,CACN,CAAK,EAEa,mBAId,KAAK,SAAW,GAEZ,KAAK,gBACP,KAAK,iBAAmB,IAG1B,KAAK,WAAW,OAEhB,SAAS,KAAK,UAAU,IAAId,CAAe,EAE3C,KAAK,cAAa,EAElB,KAAK,gBAAe,EACpB,KAAK,gBAAe,EAEpBe,EAAa,GAAG,KAAK,QAASjB,EAAyB,IAAM,CAC3DiB,EAAa,IAAI,KAAK,SAAUlB,EAAwBmB,GAAU,CAC5DA,EAAM,SAAW,KAAK,WACxB,KAAK,qBAAuB,GAEtC,CAAO,CACP,CAAK,EAED,KAAK,cAAc,IAAM,KAAK,aAAaF,CAAa,CAAC,EAC1D,CAED,MAAO,CAOL,GANI,CAAC,KAAK,UAAY,KAAK,kBAITC,EAAa,QAAQ,KAAK,SAAU1B,CAAU,EAElD,iBACZ,OAGF,KAAK,SAAW,GAChB,MAAM4B,EAAa,KAAK,cAEpBA,IACF,KAAK,iBAAmB,IAG1B,KAAK,gBAAe,EACpB,KAAK,gBAAe,EAEpB,KAAK,WAAW,aAEhB,KAAK,SAAS,UAAU,OAAOf,CAAe,EAE9Ca,EAAa,IAAI,KAAK,SAAUpB,CAAmB,EACnDoB,EAAa,IAAI,KAAK,QAASjB,CAAuB,EAEtD,KAAK,eAAe,IAAM,KAAK,WAAY,EAAE,KAAK,SAAUmB,CAAU,CACvE,CAED,SAAU,CACR,CAAC,OAAQ,KAAK,OAAO,EAAE,QAASC,GAAgBH,EAAa,IAAIG,EAAalC,CAAS,CAAC,EAExF,KAAK,UAAU,UACf,KAAK,WAAW,aAChB,MAAM,QAAO,CACd,CAED,cAAe,CACb,KAAK,cAAa,CACnB,CAID,qBAAsB,CACpB,OAAO,IAAImC,EAAS,CAClB,UAAW,EAAQ,KAAK,QAAQ,SAChC,WAAY,KAAK,YAAa,CACpC,CAAK,CACF,CAED,sBAAuB,CACrB,OAAO,IAAIC,EAAU,CACnB,YAAa,KAAK,QACxB,CAAK,CACF,CAED,WAAWT,EAAQ,CACjB,OAAAA,EAAS,CACP,GAAGxB,EACH,GAAGkC,EAAY,kBAAkB,KAAK,QAAQ,EAC9C,GAAI,OAAOV,GAAW,SAAWA,EAAS,CAAE,CAClD,EACIW,EAAgBxC,EAAM6B,EAAQvB,CAAW,EAClCuB,CACR,CAED,aAAaG,EAAe,CAC1B,MAAMG,EAAa,KAAK,cAClBM,EAAYX,EAAe,QAAQN,EAAqB,KAAK,OAAO,GAEtE,CAAC,KAAK,SAAS,YAAc,KAAK,SAAS,WAAW,WAAa,KAAK,eAE1E,SAAS,KAAK,OAAO,KAAK,QAAQ,EAGpC,KAAK,SAAS,MAAM,QAAU,QAC9B,KAAK,SAAS,gBAAgB,aAAa,EAC3C,KAAK,SAAS,aAAa,aAAc,EAAI,EAC7C,KAAK,SAAS,aAAa,OAAQ,QAAQ,EAC3C,KAAK,SAAS,UAAY,EAEtBiB,IACFA,EAAU,UAAY,GAGpBN,GACFO,EAAO,KAAK,QAAQ,EAGtB,KAAK,SAAS,UAAU,IAAItB,CAAe,EAE3C,MAAMuB,EAAqB,IAAM,CAC3B,KAAK,QAAQ,OACf,KAAK,WAAW,WAGlB,KAAK,iBAAmB,GACxBV,EAAa,QAAQ,KAAK,SAAUtB,EAAa,CAC/C,cAAAqB,CACR,CAAO,CACP,EAEI,KAAK,eAAeW,EAAoB,KAAK,QAASR,CAAU,CACjE,CAED,iBAAkB,CACZ,KAAK,SACPF,EAAa,GAAG,KAAK,SAAUnB,EAAwBoB,GAAU,CAC3D,KAAK,QAAQ,UAAYA,EAAM,MAAQ9B,GACzC8B,EAAM,eAAc,EACpB,KAAK,KAAI,GACA,CAAC,KAAK,QAAQ,UAAYA,EAAM,MAAQ9B,GACjD,KAAK,2BAA0B,CAEzC,CAAO,EAED6B,EAAa,IAAI,KAAK,SAAUnB,CAAqB,CAExD,CAED,iBAAkB,CACZ,KAAK,SACPmB,EAAa,GAAG,OAAQrB,EAAc,IAAM,KAAK,cAAa,CAAE,EAEhEqB,EAAa,IAAI,OAAQrB,CAAY,CAExC,CAED,YAAa,CACX,KAAK,SAAS,MAAM,QAAU,OAC9B,KAAK,SAAS,aAAa,cAAe,EAAI,EAC9C,KAAK,SAAS,gBAAgB,YAAY,EAC1C,KAAK,SAAS,gBAAgB,MAAM,EACpC,KAAK,iBAAmB,GACxB,KAAK,UAAU,KAAK,IAAM,CACxB,SAAS,KAAK,UAAU,OAAOM,CAAe,EAC9C,KAAK,kBAAiB,EACtB,KAAK,WAAW,QAChBe,EAAa,QAAQ,KAAK,SAAUxB,CAAY,CACtD,CAAK,CACF,CAED,cAAcmC,EAAU,CACtBX,EAAa,GAAG,KAAK,SAAUpB,EAAsBqB,GAAU,CAC7D,GAAI,KAAK,qBAAsB,CAC7B,KAAK,qBAAuB,GAC5B,MACD,CAEGA,EAAM,SAAWA,EAAM,gBAIvB,KAAK,QAAQ,WAAa,GAC5B,KAAK,KAAI,EACA,KAAK,QAAQ,WAAa,UACnC,KAAK,2BAA0B,EAEvC,CAAK,EAED,KAAK,UAAU,KAAKU,CAAQ,CAC7B,CAED,aAAc,CACZ,OAAO,KAAK,SAAS,UAAU,SAASzB,CAAe,CACxD,CAED,4BAA6B,CAE3B,GADkBc,EAAa,QAAQ,KAAK,SAAUzB,CAAoB,EAC5D,iBACZ,OAGF,KAAM,CAAE,UAAAqC,EAAW,aAAAC,EAAc,MAAAC,CAAK,EAAK,KAAK,SAC1CC,EAAqBF,EAAe,SAAS,gBAAgB,aAIhE,CAACE,GAAsBD,EAAM,YAAc,UAC5CF,EAAU,SAASxB,CAAiB,IAKjC2B,IACHD,EAAM,UAAY,UAGpBF,EAAU,IAAIxB,CAAiB,EAC/B,KAAK,eAAe,IAAM,CACxBwB,EAAU,OAAOxB,CAAiB,EAC7B2B,GACH,KAAK,eAAe,IAAM,CACxBD,EAAM,UAAY,EAC5B,EAAW,KAAK,OAAO,CAEvB,EAAO,KAAK,OAAO,EAEf,KAAK,SAAS,QACf,CAMD,eAAgB,CACd,MAAMC,EAAqB,KAAK,SAAS,aAAe,SAAS,gBAAgB,aAC3EC,EAAiB,KAAK,WAAW,SAAQ,EACzCC,EAAoBD,EAAiB,GAGxC,CAACC,GAAqBF,GAAsB,CAACG,EAAO,GACpDD,GAAqB,CAACF,GAAsBG,OAE7C,KAAK,SAAS,MAAM,YAAc,GAAGF,CAAc,OAIlDC,GAAqB,CAACF,GAAsB,CAACG,EAAO,GACpD,CAACD,GAAqBF,GAAsBG,OAE7C,KAAK,SAAS,MAAM,aAAe,GAAGF,CAAc,KAEvD,CAED,mBAAoB,CAClB,KAAK,SAAS,MAAM,YAAc,GAClC,KAAK,SAAS,MAAM,aAAe,EACpC,CAID,OAAO,gBAAgBpB,EAAQG,EAAe,CAC5C,OAAO,KAAK,KAAK,UAAY,CAC3B,MAAMoB,EAAO1B,EAAM,oBAAoB,KAAMG,CAAM,EAEnD,GAAI,OAAOA,GAAW,SAItB,IAAI,OAAOuB,EAAKvB,CAAM,EAAM,IAC1B,MAAM,IAAI,UAAU,oBAAoBA,CAAM,GAAG,EAGnDuB,EAAKvB,CAAM,EAAEG,CAAa,EAChC,CAAK,CACF,CACH,EAQAC,EAAa,GAAG,SAAUhB,EAAsBQ,EAAsB,SAAUS,EAAO,CACrF,MAAMmB,EAASC,EAAuB,IAAI,EAEtC,CAAC,IAAK,MAAM,EAAE,SAAS,KAAK,OAAO,GACrCpB,EAAM,eAAc,EAGtBD,EAAa,IAAIoB,EAAQ3C,EAAa6C,GAAc,CAC9CA,EAAU,kBAKdtB,EAAa,IAAIoB,EAAQ5C,EAAc,IAAM,CACvC+C,EAAU,IAAI,GAChB,KAAK,MAAK,CAElB,CAAK,CACL,CAAG,EAGD,MAAMC,EAAe3B,EAAe,QAAQR,CAAa,EACrDmC,GACF/B,EAAM,YAAY+B,CAAY,EAAE,KAAI,EAGzB/B,EAAM,oBAAoB2B,CAAM,EAExC,OAAO,IAAI,CAClB,CAAC,EAEDK,EAAqBhC,CAAK,EAS1BiC,EAAmBjC,CAAK"}