@magicfeedback/popup-sdk 1.6.0 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../node_modules/@magicfeedback/native/dist/magicfeedback-sdk.browser.js","../src/ui/logo.ts","../src/ui/renderPopup.ts"],"sourcesContent":["!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.magicfeedback=t():e.magicfeedback=t()}(self,(()=>{return e={326:function(e,t){var i=\"undefined\"!=typeof self?self:this,n=function(){function e(){this.fetch=!1,this.DOMException=i.DOMException}return e.prototype=i,new e}();!function(e){!function(t){var i=\"URLSearchParams\"in e,n=\"Symbol\"in e&&\"iterator\"in Symbol,r=\"FileReader\"in e&&\"Blob\"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),s=\"FormData\"in e,o=\"ArrayBuffer\"in e;if(o)var a=[\"[object Int8Array]\",\"[object Uint8Array]\",\"[object Uint8ClampedArray]\",\"[object Int16Array]\",\"[object Uint16Array]\",\"[object Int32Array]\",\"[object Uint32Array]\",\"[object Float32Array]\",\"[object Float64Array]\"],l=ArrayBuffer.isView||function(e){return e&&a.indexOf(Object.prototype.toString.call(e))>-1};function d(e){if(\"string\"!=typeof e&&(e=String(e)),/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError(\"Invalid character in header field name\");return e.toLowerCase()}function c(e){return\"string\"!=typeof e&&(e=String(e)),e}function u(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function p(e){this.map={},e instanceof p?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function h(e){if(e.bodyUsed)return Promise.reject(new TypeError(\"Already read\"));e.bodyUsed=!0}function m(e){return new Promise((function(t,i){e.onload=function(){t(e.result)},e.onerror=function(){i(e.error)}}))}function f(e){var t=new FileReader,i=m(t);return t.readAsArrayBuffer(e),i}function g(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function v(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?\"string\"==typeof e?this._bodyText=e:r&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:s&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:i&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&r&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=g(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||l(e))?this._bodyArrayBuffer=g(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText=\"\",this.headers.get(\"content-type\")||(\"string\"==typeof e?this.headers.set(\"content-type\",\"text/plain;charset=UTF-8\"):this._bodyBlob&&this._bodyBlob.type?this.headers.set(\"content-type\",this._bodyBlob.type):i&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set(\"content-type\",\"application/x-www-form-urlencoded;charset=UTF-8\"))},r&&(this.blob=function(){var e=h(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error(\"could not read FormData body as blob\");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?h(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(f)}),this.text=function(){var e,t,i,n=h(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,i=m(t=new FileReader),t.readAsText(e),i;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),i=new Array(t.length),n=0;n<t.length;n++)i[n]=String.fromCharCode(t[n]);return i.join(\"\")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error(\"could not read FormData body as text\");return Promise.resolve(this._bodyText)},s&&(this.formData=function(){return this.text().then(E)}),this.json=function(){return this.text().then(JSON.parse)},this}p.prototype.append=function(e,t){e=d(e),t=c(t);var i=this.map[e];this.map[e]=i?i+\", \"+t:t},p.prototype.delete=function(e){delete this.map[d(e)]},p.prototype.get=function(e){return e=d(e),this.has(e)?this.map[e]:null},p.prototype.has=function(e){return this.map.hasOwnProperty(d(e))},p.prototype.set=function(e,t){this.map[d(e)]=c(t)},p.prototype.forEach=function(e,t){for(var i in this.map)this.map.hasOwnProperty(i)&&e.call(t,this.map[i],i,this)},p.prototype.keys=function(){var e=[];return this.forEach((function(t,i){e.push(i)})),u(e)},p.prototype.values=function(){var e=[];return this.forEach((function(t){e.push(t)})),u(e)},p.prototype.entries=function(){var e=[];return this.forEach((function(t,i){e.push([i,t])})),u(e)},n&&(p.prototype[Symbol.iterator]=p.prototype.entries);var y=[\"DELETE\",\"GET\",\"HEAD\",\"OPTIONS\",\"POST\",\"PUT\"];function b(e,t){var i,n,r=(t=t||{}).body;if(e instanceof b){if(e.bodyUsed)throw new TypeError(\"Already read\");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new p(e.headers)),this.method=e.method,this.mode=e.mode,this.signal=e.signal,r||null==e._bodyInit||(r=e._bodyInit,e.bodyUsed=!0)}else this.url=String(e);if(this.credentials=t.credentials||this.credentials||\"same-origin\",!t.headers&&this.headers||(this.headers=new p(t.headers)),this.method=(n=(i=t.method||this.method||\"GET\").toUpperCase(),y.indexOf(n)>-1?n:i),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,(\"GET\"===this.method||\"HEAD\"===this.method)&&r)throw new TypeError(\"Body not allowed for GET or HEAD requests\");this._initBody(r)}function E(e){var t=new FormData;return e.trim().split(\"&\").forEach((function(e){if(e){var i=e.split(\"=\"),n=i.shift().replace(/\\+/g,\" \"),r=i.join(\"=\").replace(/\\+/g,\" \");t.append(decodeURIComponent(n),decodeURIComponent(r))}})),t}function A(e,t){t||(t={}),this.type=\"default\",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText=\"statusText\"in t?t.statusText:\"OK\",this.headers=new p(t.headers),this.url=t.url||\"\",this._initBody(e)}b.prototype.clone=function(){return new b(this,{body:this._bodyInit})},v.call(b.prototype),v.call(A.prototype),A.prototype.clone=function(){return new A(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new p(this.headers),url:this.url})},A.error=function(){var e=new A(null,{status:0,statusText:\"\"});return e.type=\"error\",e};var k=[301,302,303,307,308];A.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError(\"Invalid status code\");return new A(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var i=Error(e);this.stack=i.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function C(e,i){return new Promise((function(n,s){var o=new b(e,i);if(o.signal&&o.signal.aborted)return s(new t.DOMException(\"Aborted\",\"AbortError\"));var a=new XMLHttpRequest;function l(){a.abort()}a.onload=function(){var e,t,i={status:a.status,statusText:a.statusText,headers:(e=a.getAllResponseHeaders()||\"\",t=new p,e.replace(/\\r?\\n[\\t ]+/g,\" \").split(/\\r?\\n/).forEach((function(e){var i=e.split(\":\"),n=i.shift().trim();if(n){var r=i.join(\":\").trim();t.append(n,r)}})),t)};i.url=\"responseURL\"in a?a.responseURL:i.headers.get(\"X-Request-URL\");var r=\"response\"in a?a.response:a.responseText;n(new A(r,i))},a.onerror=function(){s(new TypeError(\"Network request failed\"))},a.ontimeout=function(){s(new TypeError(\"Network request failed\"))},a.onabort=function(){s(new t.DOMException(\"Aborted\",\"AbortError\"))},a.open(o.method,o.url,!0),\"include\"===o.credentials?a.withCredentials=!0:\"omit\"===o.credentials&&(a.withCredentials=!1),\"responseType\"in a&&r&&(a.responseType=\"blob\"),o.headers.forEach((function(e,t){a.setRequestHeader(t,e)})),o.signal&&(o.signal.addEventListener(\"abort\",l),a.onreadystatechange=function(){4===a.readyState&&o.signal.removeEventListener(\"abort\",l)}),a.send(void 0===o._bodyInit?null:o._bodyInit)}))}C.polyfill=!0,e.fetch||(e.fetch=C,e.Headers=p,e.Request=b,e.Response=A),t.Headers=p,t.Request=b,t.Response=A,t.fetch=C,Object.defineProperty(t,\"__esModule\",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var r=n;(t=r.fetch).default=r.fetch,t.fetch=r.fetch,t.Headers=r.Headers,t.Request=r.Request,t.Response=r.Response,e.exports=t},317:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.HOST_API_URL_DEV=t.HOST_API_URL=void 0,t.HOST_API_URL=\"https://api.deepdots.com/\",t.HOST_API_URL_DEV=\"https://api-dev.deepdots.com/\"},156:function(e,t,i){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});const r=n(i(927));let s=null;s||(s=(0,r.default)()),t.default=s},927:function(e,t,i){\"use strict\";var n=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,\"__esModule\",{value:!0});const r=i(57),s=i(544),o=i(665),a=i(256),l=i(313),d=i(317);t.default=function(){const e=new o.Config;let t=new a.Log(e);return{init:function(i){\"boolean\"==typeof(null==i?void 0:i.debug)&&e.set(\"debug\",i.debug),\"boolean\"==typeof(null==i?void 0:i.dryRun)&&e.set(\"dryRun\",i.dryRun),e.set(\"url\",(null==i?void 0:i.env)&&\"dev\"===(null==i?void 0:i.env)?d.HOST_API_URL_DEV:d.HOST_API_URL),e.set(\"env\",null==i?void 0:i.env),t.log(\"Initialized Magicfeedback\",e)},send:function(i,r,s,o=!0,a,d){return n(this,void 0,void 0,(function*(){i||t.err(\"No appID provided\"),r||t.err(\"No publicKey provided\"),s||t.err(\"No feedback provided\"),s.answers||s.profile||s.metrics||s.metadata||t.err(\"No feedback data provided\");const n=e.get(\"url\"),c={integration:i,publicKey:r,privateKey:d,completed:o,id:a,feedback:s};try{if(e.get(\"dryRun\"))return t.log(\"Dry run enabled: skipping native feedback submit\"),`dry-run-${Date.now()}`;const i=yield(0,l.sendFeedback)(n,c,t);return t.log(\"sent native feedback\"),i}catch(e){return t.err(\"error native feedback\",e),!1}}))},form:function(i,n,s,o){return i||t.err(\"No appID provided\"),n||t.err(\"No publicKey provided\"),new r.Form(e,i,n,s,o)},agentForm:function(i,n,r){return i||t.err(\"No integrationId provided\"),n||t.err(\"No publicKey provided\"),new s.AgentForm(e,i,n,r)},session:function(i){return i||t.err(\"No sessionId provided\"),new r.Form(e,i)},previewPage:function(i,s,o){return n(this,void 0,void 0,(function*(){i||t.err(\"No selector provided\"),s&&s.page||t.err(\"No page provided for preview\");const n=(null==s?void 0:s.appId)||`preview-${Date.now()}`,a=new r.Form(e,n);return yield a.previewPage(i,s,o),a}))}}}},79:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.History=void 0,t.History=class{constructor(){this.items=[]}enqueue(e){this.items.push(e)}dequeue(){return this.items.shift()}rollback(){return this.items.pop()}front(){return this.items[0]}back(){return this.items[this.items.length-1]}isEmpty(){return 0===this.items.length}size(){return this.items.length}get(e){return this.items[e]}}},544:function(e,t,i){\"use strict\";var n=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,\"__esModule\",{value:!0}),t.AgentForm=void 0;const r=i(256),s=i(279),o=i(945),a=i(177),l=i(107),d=i(565),c=i(571),u=i(213);t.AgentForm=class{constructor(e,t,i,n){this.config=e,this.log=new r.Log(e),this.url=e.get(\"url\"),this.integrationId=t,this.publicKey=i,this.privateKey=n,this.formOptionsConfig={addButton:!0,sendButtonText:\"Send\",backButtonText:\"Back\",nextButtonText:\"Next\",addSuccessScreen:!0,questionFormat:\"standard\",answerDelimiter:a.DEFAULT_ANSWER_DELIMITER,resume:!0,allowBack:!1,emptyAnswerText:\"\"},this.selector=\"\",this.language=\"en\",this.product={customIcons:!1},this.sessionId=\"\",this.conversation=[],this.askedRefs=[],this.currentTurn=1,this.maxTurns=0,this.currentQuestion=null,this.questionHistory=[],this.busy=!1,this.rateLimitTimer=null,this.progress=0,this.total=0,this.completed=!1,this.timeToCompleted=0}generate(e,t={}){var i;return n(this,void 0,void 0,(function*(){this.formOptionsConfig=Object.assign(Object.assign({},this.formOptionsConfig),t),this.selector=e,t.lang&&(this.language=t.lang),t.primaryColor&&(this.primaryColor=t.primaryColor),this.config.get(\"dryRun\")&&this.log.log(\"dryRun has no effect in agent mode: the server drives the conversation\");try{const e=!1!==this.formOptionsConfig.resume?this.restore():null;if(e)this.log.log(`Resuming agent session ${e.sessionId} at turn ${e.currentTurn}`),this.mountForm(),this.renderStep();else{const e=yield this.startWithRetry();this.sessionId=e.sessionId,this.maxTurns=e.maxTurns,this.currentTurn=null!==(i=e.currentTurn)&&void 0!==i?i:1,this.total=Math.max(this.maxTurns-1,0);const t=(0,a.toAgentStep)(e,this.adapterContext());if(this.mountForm(),\"END\"===t.kind)return yield this.renderEnd(t),void(this.formOptionsConfig.onLoadedEvent&&(yield this.formOptionsConfig.onLoadedEvent({loading:!1,progress:this.progress,total:this.total,sessionId:this.sessionId,completed:!0})));this.acceptQuestion(t),this.renderStep(),this.persist()}this.timeToCompleted=Date.now(),this.formOptionsConfig.onLoadedEvent&&(yield this.formOptionsConfig.onLoadedEvent({loading:!1,progress:this.progress,total:this.total,sessionId:this.sessionId,formOptionsConfig:this.formOptionsConfig}))}catch(e){this.log.err(`Could not start the agent survey ${this.integrationId}:`,e),this.renderFatal(e),this.formOptionsConfig.onLoadedEvent&&(yield this.formOptionsConfig.onLoadedEvent({loading:!1,error:e}))}}))}next(){return n(this,void 0,void 0,(function*(){return this.runTurn()}))}answer(){const e=document.getElementById(this.formId());return e?(0,l.scrapeInputs)(e):[]}getConversation(){return[...this.conversation]}getSessionId(){return this.sessionId}reset(){this.sessionId=\"\",this.conversation=[],this.askedRefs=[],this.currentTurn=1,this.maxTurns=0,this.currentQuestion=null,this.questionHistory=[],this.busy=!1,this.completed=!1,this.progress=0,this.clearRateLimitTimer(),this.clearPersisted()}runTurn(){var e;return n(this,void 0,void 0,(function*(){if(this.busy||this.completed||!this.currentQuestion)return;this.busy=!0,this.setSubmitDisabled(!0),this.clearError();const t=this.currentQuestion;try{const i=document.getElementById(this.formId()),n=document.getElementById(this.questionsId());if(!i)throw new Error(\"Agent form not found\");yield(0,c.awaitUploadReady)(n);const r=(0,l.scrapeInputs)(i);let s=(0,a.encodeAnswer)(r,t,this.formOptionsConfig.answerDelimiter);if(\"\"===s){if(t.require)return void this.showError(this.formOptionsConfig.requiredMessage||\"Please answer before continuing.\");s=this.formOptionsConfig.emptyAnswerText||\"\"}this.formOptionsConfig.beforeSubmitEvent&&(yield this.formOptionsConfig.beforeSubmitEvent({loading:!0,progress:this.progress,total:this.total}));const d={role:\"user\",content:s,questionType:t.type,questionRef:t.ref},u=this.currentTurn+1,p=yield(0,o.nextAgentTurn)(this.url,{publicKey:this.publicKey,privateKey:this.privateKey,integrationId:this.integrationId,sessionId:this.sessionId,conversation:[...this.conversation],currentTurn:u,lastAnswer:s,lastQuestionRef:t.ref,askedRefs:[...this.askedRefs]},this.log);this.conversation.push(d),this.currentTurn=null!==(e=p.currentTurn)&&void 0!==e?e:u,p.maxTurns&&(this.maxTurns=p.maxTurns),this.total=Math.max(this.maxTurns-1,0);const h=(0,a.toAgentStep)(p,this.adapterContext());if(\"END\"===h.kind)return void(yield this.renderEnd(h));if(this.maxTurns>0&&this.currentTurn>this.maxTurns+1)return void(yield this.renderEnd({kind:\"END\",reason:\"MAX_TURNS\",currentTurn:this.currentTurn,maxTurns:this.maxTurns}));this.acceptQuestion(h),this.renderStep(),this.persist(),this.formOptionsConfig.onAgentTurnEvent&&(yield this.formOptionsConfig.onAgentTurnEvent({turn:this.currentTurn,maxTurns:this.maxTurns,question:h.question,isFromBase:h.isFromBase,topic:h.topic,coverageGaps:h.coverageGaps,coverageSummary:h.coverageSummary,conversation:this.getConversation()})),this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({response:this.sessionId,loading:!1,progress:this.progress,total:this.total,completed:!1,error:null}))}catch(e){yield this.handleTurnError(e)}finally{this.completed||(this.busy=!1,this.rateLimitTimer||this.setSubmitDisabled(!1))}}))}handleTurnError(e){return n(this,void 0,void 0,(function*(){this.log.err(`An error occurred during the agent turn ${this.integrationId}:`,e),e instanceof s.AgentApiError&&\"RATE_LIMITED\"===e.kind?this.startRateLimitCountdown(e.retryAfterMs||6e4):this.showError(this.errorMessageFor(e)),this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({loading:!1,progress:this.progress,total:this.total,completed:!1,error:e}))}))}acceptQuestion(e){const t=e.question;e.isFromBase&&t.ref&&!this.askedRefs.includes(t.ref)&&this.askedRefs.push(t.ref),this.conversation.push({role:\"agent\",content:t.title,questionType:t.type,questionRef:t.ref}),this.currentQuestion=t,this.questionHistory.push(t),this.progress=Math.max(this.currentTurn-1,0)}formId(){return\"magicfeedback-agent-\"+this.integrationId}questionsId(){return\"magicfeedback-agent-questions-\"+this.integrationId}mountForm(){const e=(0,d.generateContainer)(this.selector,this.integrationId);this.primaryColor&&(0,d.applyPrimaryColor)(e,this.primaryColor);const t=document.createElement(\"form\");t.classList.add(\"magicfeedback-form\"),t.classList.add(\"magicfeedback-agent-form\"),t.id=this.formId(),t.addEventListener(\"submit\",(e=>{e.preventDefault(),this.runTurn()}));const i=document.createElement(\"div\");i.classList.add(\"magicfeedback-questions\"),i.id=this.questionsId(),t.appendChild(i),this.formOptionsConfig.addButton&&t.appendChild((0,u.renderActions)(this.formOptionsConfig.allowBack?\"MAGICSURVEY\":\"MAGICFORM\",(()=>this.back()),this.formOptionsConfig.sendButtonText,this.formOptionsConfig.backButtonText,this.formOptionsConfig.nextButtonText)),e.appendChild(t)}renderStep(){const e=document.getElementById(this.questionsId());e&&this.currentQuestion&&(e.innerHTML=\"\",(0,u.renderQuestions)([this.currentQuestion],this.formOptionsConfig.questionFormat,this.language,this.product,(()=>this.runTurn())).forEach((t=>e.appendChild(t))))}renderEnd(e){return n(this,void 0,void 0,(function*(){this.completed=!0,this.currentQuestion=null,this.busy=!1,this.timeToCompleted=this.timeToCompleted?Date.now()-this.timeToCompleted:0,this.clearRateLimitTimer(),this.clearPersisted();const t=document.getElementById(\"magicfeedback-container-\"+this.integrationId);if(t&&!1!==this.formOptionsConfig.addSuccessScreen){t.innerHTML=\"\";const i=\"BLOCKED\"===e.reason?this.formOptionsConfig.blockedMessage||\"Thanks for your time — we'll end the conversation here.\":this.formOptionsConfig.successMessage||\"Thank you for your feedback!\",n=(0,u.renderSuccess)(i);n.classList.add(\"magicfeedback-success-message\"),n.classList.add(\"magicfeedback-agent-end\"),\"BLOCKED\"===e.reason&&n.classList.add(\"magicfeedback-agent-end--blocked\"),t.appendChild(n)}this.formOptionsConfig.onFinishEvent&&(yield this.formOptionsConfig.onFinishEvent({sessionId:this.sessionId,reason:e.reason,turns:this.currentTurn,maxTurns:this.maxTurns,conversation:this.getConversation(),coverageSummary:e.coverageSummary,timeToCompleted:this.timeToCompleted})),this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({response:this.sessionId,loading:!1,progress:this.progress,total:this.total,completed:!0,error:null}))}))}back(){return n(this,void 0,void 0,(function*(){this.busy||this.completed||this.formOptionsConfig.allowBack&&(this.questionHistory.length<2||(this.questionHistory.pop(),this.conversation.pop(),this.conversation.pop(),this.currentQuestion=this.questionHistory[this.questionHistory.length-1],this.currentTurn=Math.max(this.currentTurn-1,1),this.progress=Math.max(this.currentTurn-1,0),this.clearError(),this.renderStep(),this.persist(),this.formOptionsConfig.onBackEvent&&(yield this.formOptionsConfig.onBackEvent({progress:this.progress,total:this.total}))))}))}renderFatal(e){try{(0,d.generateContainer)(this.selector,this.integrationId).appendChild((0,u.renderError)(this.errorMessageFor(e)))}catch(e){}}errorMessageFor(e){if(!(e instanceof s.AgentApiError))return\"Something went wrong. Please try again.\";switch(e.kind){case\"AUTH\":case\"NOT_FOUND\":case\"BAD_CONFIG\":return\"This survey is not available right now.\";case\"AI_UNAVAILABLE\":return\"We couldn't start the survey. Please try again in a moment.\";default:return\"Something went wrong. Please try again.\"}}adapterContext(){return{integrationId:this.integrationId,sessionId:this.sessionId,language:this.language,log:this.log}}startWithRetry(){return n(this,void 0,void 0,(function*(){const e={publicKey:this.publicKey,privateKey:this.privateKey,integrationId:this.integrationId};try{return yield(0,o.startAgentSurvey)(this.url,e,this.log)}catch(t){if(t instanceof s.AgentApiError&&\"AI_UNAVAILABLE\"===t.kind)return this.log.log(\"Retrying /start after a transient AI failure\"),yield new Promise((e=>setTimeout(e,1500))),yield(0,o.startAgentSurvey)(this.url,e,this.log);throw t}}))}setSubmitDisabled(e){const t=document.getElementById(\"magicfeedback-submit\");t&&(t.disabled=e)}clearError(){const e=document.getElementById(this.questionsId());null==e||e.querySelectorAll(\".magicfeedback-error\").forEach((e=>e.remove()))}showError(e){const t=document.getElementById(this.questionsId());t&&(this.clearError(),t.insertBefore((0,u.renderError)(e),t.firstChild))}startRateLimitCountdown(e){this.clearRateLimitTimer(),this.setSubmitDisabled(!0);let t=Math.ceil(e/1e3);const i=this.formOptionsConfig.rateLimitMessage||\"Too many requests. Retrying in {seconds}s…\",n=()=>{if(t<=0)return this.clearRateLimitTimer(),this.clearError(),void this.setSubmitDisabled(!1);this.showError(i.replace(\"{seconds}\",String(t))),t-=1};n(),this.rateLimitTimer=setInterval(n,1e3)}clearRateLimitTimer(){this.rateLimitTimer&&(clearInterval(this.rateLimitTimer),this.rateLimitTimer=null)}storageKey(){return`magicfeedback-agent-${this.integrationId}`}persist(){if(!1!==this.formOptionsConfig.resume)try{const e={sessionId:this.sessionId,conversation:this.conversation,currentTurn:this.currentTurn,maxTurns:this.maxTurns,askedRefs:this.askedRefs,questionHistory:this.questionHistory,savedAt:Date.now()};localStorage.setItem(this.storageKey(),JSON.stringify(e))}catch(e){this.log.log(\"Could not persist the agent session\",e)}}restore(){var e;try{const t=localStorage.getItem(this.storageKey());if(!t)return null;const i=JSON.parse(t);return(null==i?void 0:i.sessionId)&&(null===(e=i.questionHistory)||void 0===e?void 0:e.length)?Date.now()-(i.savedAt||0)>18e5?(this.clearPersisted(),null):(this.sessionId=i.sessionId,this.conversation=i.conversation||[],this.currentTurn=i.currentTurn||1,this.maxTurns=i.maxTurns||0,this.askedRefs=i.askedRefs||[],this.questionHistory=i.questionHistory,this.currentQuestion=this.questionHistory[this.questionHistory.length-1],this.total=Math.max(this.maxTurns-1,0),this.progress=Math.max(this.currentTurn-1,0),i):null}catch(e){return this.log.log(\"Could not restore the agent session\",e),null}}clearPersisted(){try{localStorage.removeItem(this.storageKey())}catch(e){}}applyIntegrationContext(e){var t,i;(null===(t=null==e?void 0:e.lang)||void 0===t?void 0:t.length)&&(this.language=e.lang[0]),(null==e?void 0:e.product)&&(this.product=e.product),(null===(i=null==e?void 0:e.style)||void 0===i?void 0:i.primaryColor)&&(this.primaryColor=e.style.primaryColor)}}},665:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.Config=void 0,t.Config=class{constructor(){this.variables={},this.variables.env=\"prod\",this.variables.debug=!1,this.variables.dryRun=!1}get(e){return this.variables[e]}set(e,t){this.variables[e]=t}}},57:function(e,t,i){\"use strict\";var n=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Form=void 0;const r=i(558),s=i(544),o=i(256),a=i(313),l=i(213),d=i(571),c=i(565),u=i(107),p=i(989),h=i(700),m=i(591),f=i(79),g=i(636);t.Form=class{constructor(e,t,i,n,r){this.config=e,this.log=new o.Log(e),this.formOptionsConfig={addButton:!0,sendButtonText:\"Send\",backButtonText:\"Back\",nextButtonText:\"Next\",addSuccessScreen:!0,getMetaData:!0,customMetaData:[],questionFormat:\"standard\"},this.selector=\"\",this.appId=t,this.publicKey=i||\"\",this.url=e.get(\"url\"),this.id=\"\",this.formData=null,this.feedback={text:\"\",answers:[],profile:null!=n?n:[],metrics:[],metadata:null!=r?r:[]},this.history=new f.History,this.agentForm=null,this.graph=new p.PageGraph([]),this.progress=0,this.total=0,this.completed=!1,this.timeToCompleted=0}generate(e,t){var i,r,o,l,d,c,u;return n(this,void 0,void 0,(function*(){try{this.formOptionsConfig=Object.assign(Object.assign({},this.formOptionsConfig),t),this.selector=e;let n=this.formData;if(void 0!==this.formData&&this.formData||(n=\"\"!==this.publicKey?yield(0,a.getForm)(this.url,this.appId,this.publicKey,this.log):yield(0,a.getSessionForm)(this.url,this.appId,this.log)),void 0===n||!n)throw new Error(`No data for app ${this.appId}`);if(null===(i=n.error)||void 0===i?void 0:i.message)throw new Error(n.error.message);if(\"AGENT\"===n.mode)return this.agentForm=new s.AgentForm(this.config,this.appId,this.publicKey),this.agentForm.applyIntegrationContext(n),void(yield this.agentForm.generate(e,t));if(n.questions=(null===(r=n.questions)||void 0===r?void 0:r.filter((e=>\"ACTIVE\"===e.status)))||[],n.pages=(null===(o=n.pages)||void 0===o?void 0:o.filter((e=>\"ACTIVE\"===e.status)))||[],null===(l=n.pages)||void 0===l||l.forEach((e=>{var t;return e.integrationQuestions=null===(t=e.integrationQuestions)||void 0===t?void 0:t.filter((e=>\"ACTIVE\"===e.status))})),this.formData=n,this.formData.savedAt||(this.formData.savedAt=new Date,localStorage.setItem(`magicfeedback-${this.appId}`,JSON.stringify(this.formData))),void 0===this.formData.questions||!this.formData.questions)throw new Error(`No questions for app ${this.appId}`);this.formData.pages&&0!==(null===(d=this.formData.pages)||void 0===d?void 0:d.length)||this.formatPages(),null===(c=this.formData.questions)||void 0===c||c.sort(((e,t)=>e.position-t.position)),this.formData.pages=this.formData.pages.filter((e=>{var t;return(null===(t=e.integrationQuestions)||void 0===t?void 0:t.length)>0})),this.formOptionsConfig.getMetaData&&this.getMetaData(),(null===(u=this.formData.style)||void 0===u?void 0:u.startMessage)?yield this.generateWelcomeMessage(this.formData.style.startMessage):this.startForm()}catch(e){return this.log.err(e),void(this.formOptionsConfig.onLoadedEvent&&(yield this.formOptionsConfig.onLoadedEvent({loading:!1,error:e})))}}))}previewPage(e,t,i={}){var r,s,o,a,l,d,c,u,p;return n(this,void 0,void 0,(function*(){try{if(!t||!t.page)throw new Error(\"[MagicFeedback] No page provided for preview\");if(!t.page.integrationQuestions||0===t.page.integrationQuestions.length)throw new Error(\"[MagicFeedback] No questions provided for preview\");this.config.set(\"dryRun\",!0),this.formOptionsConfig=Object.assign(Object.assign(Object.assign({},this.formOptionsConfig),{getMetaData:!1}),i),this.selector=e;const n=(t.page.integrationQuestions||[]).filter((e=>!e.status||\"ACTIVE\"===e.status)).sort(((e,t)=>e.position-t.position)),m=new h.Page(null!==(r=t.page.id)&&void 0!==r?r:\"1\",null!==(s=t.page.position)&&void 0!==s?s:1,null!==(o=t.appId)&&void 0!==o?o:this.appId,n,null!==(a=t.page.integrationPageRoutes)&&void 0!==a?a:[]);this.formData={id:null!==(l=t.appId)&&void 0!==l?l:this.appId,identity:null!==(d=t.identity)&&void 0!==d?d:\"MAGICFORM\",lang:[null!==(c=t.lang)&&void 0!==c?c:\"en\"],product:null!==(u=t.product)&&void 0!==u?u:{customIcons:!1},style:null!==(p=t.style)&&void 0!==p?p:{},questions:n,pages:[m]},yield this.generateForm()}catch(e){return this.log.err(e),void(this.formOptionsConfig.onLoadedEvent&&(yield this.formOptionsConfig.onLoadedEvent({loading:!1,error:e})))}}))}formatPages(){var e;if(this.formData)switch(this.formData.identity){case\"MAGICSURVEY\":this.formData.pages=[],null===(e=this.formData.questions)||void 0===e||e.forEach((e=>{var t,i;const n=new m.PageRoute(e.id,e.ref,m.OperatorType.NOEQUAL,[],m.TransitionType.PAGE,(e.position+1).toString(),e.position.toString()),r=new h.Page(e.position.toString(),e.position,this.appId,[e],[n]);null===(i=null===(t=this.formData)||void 0===t?void 0:t.pages)||void 0===i||i.push(r)}));break;case\"MAGICFORM\":const t=new h.Page(\"1\",1,this.appId,this.formData.questions,[]);this.formData.pages=[t]}}generateContainer(){var e,t;const i=(0,c.generateContainer)(this.selector,this.appId),n=null===(t=null===(e=this.formData)||void 0===e?void 0:e.style)||void 0===t?void 0:t.primaryColor;return n&&(0,c.applyPrimaryColor)(i,n),i}generateForm(){var e,t,i,r;return n(this,void 0,void 0,(function*(){try{if(!this.formData||!this.formData.pages||0===this.formData.pages.length)throw new Error(\"No form data\");this.graph=new p.PageGraph(this.formData.pages.sort(((e,t)=>e.position-t.position)));let n=this.generateContainer();const s=document.createElement(\"form\");s.classList.add(\"magicfeedback-form\"),s.id=\"magicfeedback-\"+this.appId,s.addEventListener(\"submit\",(e=>e.preventDefault()));const o=document.createElement(\"div\");o.classList.add(\"magicfeedback-questions\"),o.id=\"magicfeedback-questions-\"+this.appId;const a=this.graph.getFirstPage();if(!a)throw new Error(\"No page found\");if(this.total=this.graph.findMaxDepth(),a.elements=(0,l.renderQuestions)(a.questions,this.formOptionsConfig.questionFormat,null===(e=this.formData)||void 0===e?void 0:e.lang[0],null===(t=this.formData)||void 0===t?void 0:t.product,(()=>this.send())),null===(i=a.elements)||void 0===i||i.forEach((e=>o.appendChild(e))),s.appendChild(o),this.history.enqueue(a),n.appendChild(s),this.progress=this.total-this.graph.findMaxDepth(a),this.formOptionsConfig.addButton){const e=(0,l.renderActions)(null===(r=this.formData)||void 0===r?void 0:r.identity,(()=>this.back()),this.formOptionsConfig.sendButtonText,this.formOptionsConfig.backButtonText,this.formOptionsConfig.nextButtonText);s.appendChild(e)}this.formOptionsConfig.addButton&&s.addEventListener(\"submit\",(e=>{e.preventDefault(),this.send()})),this.timeToCompleted=Date.now(),this.formOptionsConfig.onLoadedEvent&&(yield this.formOptionsConfig.onLoadedEvent({loading:!1,progress:this.progress,total:this.total,formData:this.formData,formOptionsConfig:this.formOptionsConfig}))}catch(e){return this.log.err(e),void(this.formOptionsConfig.onLoadedEvent&&this.formOptionsConfig.onLoadedEvent({loading:!1,error:e}))}}))}startForm(){this.generateForm()}generateWelcomeMessage(e){return n(this,void 0,void 0,(function*(){try{const t=this.generateContainer(),i=(0,l.renderStartMessage)(e,this.formOptionsConfig.addButton,this.formOptionsConfig.startButtonText,(()=>this.startForm()));t.appendChild(i),this.formOptionsConfig.onLoadedEvent&&(yield this.formOptionsConfig.onLoadedEvent({loading:!1,formData:this.formData}))}catch(e){return this.log.err(e),void(this.formOptionsConfig.onLoadedEvent&&this.formOptionsConfig.onLoadedEvent({loading:!1,error:e}))}}))}getMetaData(){this.formOptionsConfig.customMetaData&&(this.feedback.metadata=[...this.feedback.metadata,...this.formOptionsConfig.customMetaData]),this.feedback.metadata.push({key:\"navigator-url\",value:[window.location.href]}),this.feedback.metadata.push({key:\"navigator-origin\",value:[window.location.origin]}),this.feedback.metadata.push({key:\"navigator-pathname\",value:[window.location.pathname]}),this.feedback.metadata.push({key:\"navigator-search\",value:[window.location.search]});const e=new URLSearchParams(window.location.search);Array.from(new Set(e.keys())).forEach((t=>{const i=e.getAll(t);i.length>0&&this.feedback.metadata.push({key:`query-${t}`,value:i})})),this.feedback.metadata.push({key:\"navigator-user\",value:[navigator.userAgent]}),this.feedback.metadata.push({key:\"navigator-language\",value:[navigator.language]}),this.feedback.metadata.push({key:\"navigator-platform\",value:[navigator.platform]}),this.feedback.metadata.push({key:\"navigator-appVersion\",value:[navigator.appVersion]}),this.feedback.metadata.push({key:\"navigator-appName\",value:[navigator.appName]}),this.feedback.metadata.push({key:\"navigator-product\",value:[navigator.product]}),this.feedback.metadata.push({key:\"screen-width\",value:[window.screen.width.toString()]}),this.feedback.metadata.push({key:\"screen-height\",value:[window.screen.height.toString()]}),this.appId&&\"\"===this.publicKey&&this.feedback.metadata.push({key:\"MAGICFEEDBACK_SESSION\",value:[this.appId]})}send(e,t,i,s){return n(this,void 0,void 0,(function*(){if(this.agentForm)return this.agentForm.next();const n=document.getElementById(\"magicfeedback-questions-\"+this.appId);try{if(i&&(this.feedback.profile=[...this.feedback.profile,...i]),t&&(this.feedback.metrics=[...this.feedback.metrics,...t]),e&&(this.feedback.metadata=[...this.feedback.metadata,...e]),s){this.feedback.answers=[...this.feedback.answers,...s],this.formOptionsConfig.beforeSubmitEvent&&(yield this.formOptionsConfig.beforeSubmitEvent({loading:!0,progress:this.progress,total:this.total}));const e=yield this.pushAnswers(!1);if(!e)throw new Error(\"No response\");return this.id=e,void(this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({loading:!1,progress:this.progress,total:this.total})))}yield(0,d.awaitUploadReady)(n),this.answer(),this.formOptionsConfig.beforeSubmitEvent&&(yield this.formOptionsConfig.beforeSubmitEvent({loading:!0,progress:this.progress,total:this.total}));const o=this.history.back();if(!o)throw new Error(\"No page found\");for(const e of o.questions.filter((e=>e.require&&![r.FEEDBACKAPPANSWERTYPE.CONSENT,r.FEEDBACKAPPANSWERTYPE.INFO_PAGE].includes(e.type)))){const t=e.assets,i=this.feedback.answers.filter((t=>t.key.includes(e.ref)&&!t.key.includes(\"extra-option\")));if(0===i.length||i.find((e=>0===e.value.length)))throw this.log.err(`The question ${e.ref} is required`),new Error(\"No response\");if(null==t?void 0:t.minOptions){let n=[];if((null==t?void 0:t.exclusiveAnswers)&&(n=null==t?void 0:t.exclusiveAnswers),!i[0].value.find((e=>n.includes(e)))&&i[0].value.length<(null==t?void 0:t.minOptions))throw this.log.err(`The question ${e.ref} requires at least ${null==t?void 0:t.minOptions} options`),new Error(\"No response\")}if(e.type===r.FEEDBACKAPPANSWERTYPE.MULTI_QUESTION_MATRIX){const i=this.feedback.answers.find((t=>t.key===e.ref));if(!i)throw this.log.err(`The matrix question ${e.ref} is required`),new Error(\"No response\");const n=this.parseMatrixAnswerPre(i),r=Array.isArray(null==t?void 0:t.options)?t.options:[];if(r.length>0){if(r.find((e=>{const t=n.find((t=>t.key===e));return!t||!Array.isArray(t.value)||0===t.value.length})))throw this.log.err(`The matrix question ${e.ref} requires an answer in every row`),new Error(\"No response\")}else if(0===n.length||n.some((e=>!Array.isArray(e.value)||0===e.value.length)))throw this.log.err(`The matrix question ${e.ref} requires an answer in every row`),new Error(\"No response\")}}const a=yield this.pushAnswers(!1);if(!a)throw new Error(\"No response\");this.id=a,yield this.processNextQuestion(n)}catch(e){this.log.err(`An error occurred while submitting the form ${this.appId}:`,e),this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({loading:!1,progress:this.progress,total:this.total,error:e}))}}))}answer(){const e=document.getElementById(\"magicfeedback-\"+this.appId);if(!e)return this.log.err(`Form \"${e}\" not found.`),this.feedback.answers=[],[];const t=this.history.back();if(!t)return this.feedback.answers=(0,u.scrapeInputs)(e),this.feedback.answers;const i=[];let n=!1;const s=e.querySelectorAll(\".magicfeedback-input\"),o={},l={},c={};if(s.forEach((e=>{const s=e,u=t.questions.find((e=>{var t;return null===(t=s.name)||void 0===t?void 0:t.includes(e.ref)})),p=s.type,h=s.classList[0],m={key:s.name,value:[]},f=\"magicfeedback-consent\"===h?s.checked.toString():s.value;if(m.key&&\"\"!==m.key)if(m.key.startsWith(\"extra-option-\"))\"\"!==f&&(m.value.push(f),i.push(m));else switch(null==u?void 0:u.type){case r.FEEDBACKAPPANSWERTYPE.EMAIL:case r.FEEDBACKAPPANSWERTYPE.TEXT:case r.FEEDBACKAPPANSWERTYPE.LONGTEXT:case r.FEEDBACKAPPANSWERTYPE.NUMBER:case r.FEEDBACKAPPANSWERTYPE.DATE:case r.FEEDBACKAPPANSWERTYPE.CONTACT:case r.FEEDBACKAPPANSWERTYPE.PASSWORD:\"\"!==f&&(\"email\"===p?(0,a.validateEmail)(f)?(this.feedback.profile.push({key:\"email\",value:[f]}),m.value.push(f),i.push(m)):(this.log.err(\"Invalid email\"),n=!0):(m.value.push(f),i.push(m)));break;case r.FEEDBACKAPPANSWERTYPE.RADIO:s.checked&&(m.value.push(f),i.push(m));break;case r.FEEDBACKAPPANSWERTYPE.MULTIPLECHOICE:case r.FEEDBACKAPPANSWERTYPE.MULTIPLECHOISE_IMAGE:s.checked&&(l[m.key]||(l[m.key]=[]),l[m.key].push(f));break;case r.FEEDBACKAPPANSWERTYPE.BOOLEAN:s.checked&&(m.value.push(f),i.push(m));break;case r.FEEDBACKAPPANSWERTYPE.CONSENT:m.value.push(s.checked.toString()),i.push(m);break;case r.FEEDBACKAPPANSWERTYPE.RATING_EMOJI:case r.FEEDBACKAPPANSWERTYPE.RATING_NUMBER:case r.FEEDBACKAPPANSWERTYPE.RATING_STAR:s.checked&&(m.value.push(f),i.push(m));break;case r.FEEDBACKAPPANSWERTYPE.SELECT:\"\"!==f&&(m.value.push(f),i.push(m));break;case r.FEEDBACKAPPANSWERTYPE.POINT_SYSTEM:\"number\"===p&&s.id&&(c[m.key]||(c[m.key]=[]),\"\"!==f&&c[m.key].push(`${s.id}:${f}%`));break;case r.FEEDBACKAPPANSWERTYPE.PRIORITY_LIST:\"hidden\"===p&&(o[m.key]||(o[m.key]=[]),o[m.key].push(f));break;case r.FEEDBACKAPPANSWERTYPE.MULTI_QUESTION_MATRIX:e.checked&&(m.value.push(f),i.push(m));break;case r.FEEDBACKAPPANSWERTYPE.UPLOAD_IMAGE:case r.FEEDBACKAPPANSWERTYPE.UPLOAD_FILE:{const e=(0,d.getUploadValues)(s);e.length&&(m.value.push(...e),i.push(m));break}}})),n)return[];Object.entries(l).forEach((([e,t])=>{t&&0!==t.length&&i.push({key:e,value:t})})),Object.entries(c).forEach((([e,t])=>{t&&0!==t.length&&i.push({key:e,value:t})})),Object.entries(o).forEach((([e,t])=>{if(!t||0===t.length)return;const n=t.slice().sort(((e,t)=>Number(e.split(\".\")[0])-Number(t.split(\".\")[0])));i.push({key:e,value:n})}));try{t.questions.filter((e=>e.type===r.FEEDBACKAPPANSWERTYPE.MULTI_QUESTION_MATRIX)).forEach((e=>{const t=e.ref+\"-\",n=i.filter((e=>e.key.startsWith(t)));if(0===n.length)return;const r=n.map((e=>({key:e.key.substring(t.length),value:e.value}))),s={key:e.ref,value:[JSON.stringify(r)]};for(const e of n){const t=i.findIndex((t=>t.key===e.key));-1!==t&&i.splice(t,1)}const o=i.findIndex((t=>t.key===e.ref));-1!==o?i[o]=s:i.push(s)}))}catch(e){this.log.err(\"Error agrupando MULTI_QUESTION_MATRIX\",e)}return this.feedback.answers=i,t.setAnswer(i),i}finish(){return n(this,void 0,void 0,(function*(){if(this.completed=!0,this.timeToCompleted=Date.now()-this.timeToCompleted,this.feedback.metadata.push({key:\"time-to-complete\",value:[this.timeToCompleted.toString()]}),this.formOptionsConfig.addSuccessScreen){const e=document.getElementById(\"magicfeedback-container-\"+this.appId);e.childNodes.length>0&&e.removeChild(e.childNodes[0]);const t=(0,l.renderSuccess)(this.formOptionsConfig.successMessage||\"Thank you for your feedback!\");e.appendChild(t)}this.answer();try{const e=yield this.pushAnswers(!0);if(!e)throw this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({loading:!1,progress:this.progress,total:this.total,completed:this.completed,error:`An error occurred while submitting the form ${this.appId}:`})),new Error(\"An error occurred while submitting the form ${this.appId}:\");this.id=e,this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({response:this.id,loading:!1,progress:this.progress,total:this.total,completed:this.completed,error:null}))}catch(e){this.log.err(`An error occurred while submitting the form ${this.appId}:`,e),this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({loading:!1,progress:this.progress,total:this.total,completed:this.completed,error:e}))}}))}pushAnswers(e=!1){return n(this,void 0,void 0,(function*(){try{if(this.config.get(\"dryRun\")){const e=this.id||`dry-run-${this.appId}-${Date.now()}`;return this.log.log(`Dry run enabled: skipping feedback submit for form ${this.appId}`),e}const t=this.config.get(\"url\"),i={integration:this.appId,publicKey:this.publicKey,feedback:this.feedback,completed:e};return yield(0,a.sendFeedback)(t,this.id?Object.assign(Object.assign({},i),{sessionId:this.id}):i,this.log)}catch(e){return this.log.err(`An error occurred while submitting the form ${this.appId}:`,e),\"\"}}))}callFollowUpQuestion(e){var t;return n(this,void 0,void 0,(function*(){if(!(null==e?void 0:e.followup))return null;try{if(0===this.feedback.answers.length)throw new Error(\"No answers provided\");const i=this.config.get(\"url\"),n=Object.assign(Object.assign(Object.assign({answer:null===(t=this.feedback.answers.find((t=>t.key===e.ref)))||void 0===t?void 0:t.value[0]},\"\"!==this.publicKey&&{publicKey:this.publicKey}),\"\"===this.publicKey&&{campaignSessionId:this.appId}),{sessionId:this.id,question:e});return yield(0,a.getFollowUpQuestion)(i,n,this.log)}catch(e){throw this.log.err(`An error occurred while submitting the form ${this.appId}:`,e),e}}))}processNextQuestion(e){var t,i,r;return n(this,void 0,void 0,(function*(){const n=this.history.back();if(!n)throw new Error(\"No page found\");const s=n.getFollowupQuestions();if(0===(null==s?void 0:s.length))return void(yield this.renderNextQuestion(e,n));const o=[];for(const e of s){const t=n.questions.find((t=>t.ref===e));if(t){const e=yield this.callFollowUpQuestion(t);e&&o.push(e)}}if(0===o.length)return void(yield this.renderNextQuestion(e,n));const a=new h.Page(n.id,n.position,this.appId,o,n.edges),d=new g.PageNode(n.id,n.position,n.edges,a,o,!0);d.elements=(0,l.renderQuestions)(o,this.formOptionsConfig.questionFormat,null===(t=this.formData)||void 0===t?void 0:t.lang[0],null===(i=this.formData)||void 0===i?void 0:i.product,(()=>this.send())),this.history.enqueue(d),this.progress+=.5,e.innerHTML=\"\",null===(r=d.elements)||void 0===r||r.forEach((t=>e.appendChild(t))),this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({response:this.id,loading:!1,progress:this.progress,total:this.total,followup:d.isFollowup,completed:this.completed,error:null}))}))}renderNextQuestion(e,t){var i,s,o,a,d;return n(this,void 0,void 0,(function*(){let n=this.graph.getNextPage(t,this.feedback.answers);if(!n)return void this.finish();const c=n.edges.filter((e=>\"PRECONDITIONAL\"===e.typeCondition)).sort(((e,t)=>e.position<t.position?-1:e.position>t.position?1:0));if((null==c?void 0:c.length)>0){const t=c.some((e=>e.transition===m.TransitionType.ALLOW));let o=t;for(const t of c){let a;for(let e=this.history.size()-1;e>=0;e--){const n=this.history.get(e);if(n&&(a=null===(i=n.answers)||void 0===i?void 0:i.find((e=>e.key===t.questionRef)),a))break}let l=!1;if(a){const e=null===(s=this.formData)||void 0===s?void 0:s.questions.find((e=>e.ref===t.questionRef)),i=Array.isArray(a.value)?a.value:[a.value],n=Array.isArray(t.value)?t.value:[t.value];if((null==e?void 0:e.type)===r.FEEDBACKAPPANSWERTYPE.MULTI_QUESTION_MATRIX)l=this.evaluateMatrixPreconditional(t,a);else switch(t.typeOperator){case\"EQUAL\":case\"INQ\":l=i.some((e=>n.includes(e)));break;case\"NOEQUAL\":case\"NINQ\":l=i.every((e=>!n.includes(e)));break;case\"GREATER\":l=i.some((e=>Number(e)>Number(n[0])));break;case\"LESS\":l=i.some((e=>Number(e)<Number(n[0])));break;case\"GREATEREQUAL\":l=i.some((e=>Number(e)>=Number(n[0])));break;case\"LESSEQUAL\":l=i.some((e=>Number(e)<=Number(n[0])))}}if(t.transition===m.TransitionType.ALLOW)l||(o=!1);else if(t.transition===m.TransitionType.NEXT&&l)return this.feedback.answers=[],void(n&&(yield this.renderNextQuestion(e,n)))}if(t&&!o)return this.feedback.answers=[],void(n&&(yield this.renderNextQuestion(e,n)))}n.elements=(0,l.renderQuestions)(n.questions,this.formOptionsConfig.questionFormat,null===(o=this.formData)||void 0===o?void 0:o.lang[0],null===(a=this.formData)||void 0===a?void 0:a.product,(()=>this.send())),e.innerHTML=\"\",null===(d=n.elements)||void 0===d||d.forEach((t=>e.appendChild(t))),this.history.enqueue(n),this.progress=this.total-this.graph.findMaxDepth(n),this.formOptionsConfig.afterSubmitEvent&&(yield this.formOptionsConfig.afterSubmitEvent({response:this.id,loading:!1,progress:this.progress,total:this.total,followup:n.isFollowup,completed:this.completed,error:null}))}))}back(){var e;return n(this,void 0,void 0,(function*(){if(0===this.history.size())return;const t=document.getElementById(\"magicfeedback-questions-\"+this.appId);t&&t.childNodes.length>0&&(t.innerHTML=\"\"),this.history.rollback();const i=this.history.back();i?(null===(e=i.elements)||void 0===e||e.forEach((e=>t.appendChild(e))),this.progress=this.total-this.graph.findMaxDepth(i)):this.progress=this.history.size(),this.formOptionsConfig.onBackEvent&&(yield this.formOptionsConfig.onBackEvent({loading:!1,progress:this.progress,followup:(null==i?void 0:i.isFollowup)||!1,error:i?null:\"No page found\"}))}))}previewQuestion(e,t,i){var n,r,s;const o=Array.isArray(t)?t:[t];if(!o||0===o.length)throw new Error(\"[MagicFeedback] No question provided for preview\");const a=document.getElementById(e);if(!a)throw new Error(`[MagicFeedback] Element with ID '${e}' not found.`);const{format:d=this.formOptionsConfig.questionFormat||\"standard\",language:u=(null===(n=this.formData)||void 0===n?void 0:n.lang)&&this.formData.lang[0]||\"en\",product:p=(null===(r=this.formData)||void 0===r?void 0:r.product)||{customIcons:!1},style:h=(null===(s=this.formData)||void 0===s?void 0:s.style)||{},clearContainer:m=!0,wrap:f=!0}=i||{};m&&(a.innerHTML=\"\"),(null==h?void 0:h.primaryColor)&&(0,c.applyPrimaryColor)(a,h.primaryColor);let g=[];try{g=(0,l.renderQuestions)(o,d,u,p)}catch(e){throw this.log.err(e),e}let v=a;if(f){const e=document.createElement(\"div\");e.classList.add(\"magicfeedback-preview-question\"),v.appendChild(e),v=e}return g.forEach((e=>v.appendChild(e))),a}parseMatrixAnswerPre(e){if(!e||!e.value)return[];if(1===e.value.length&&\"string\"==typeof e.value[0]&&e.value[0].trim().startsWith(\"[\"))try{const t=JSON.parse(e.value[0]);if(Array.isArray(t))return t}catch(e){return[]}return Array.isArray(e.value)&&e.value.length>0&&\"object\"==typeof e.value[0]&&null!==e.value[0]&&\"key\"in e.value[0]?e.value:[]}evaluateMatrixPreconditional(e,t){const i=Array.isArray(e.value)?e.value:[e.value],n=new Set(e.option||[]),r=this.parseMatrixAnswerPre(t);if(!r.length)return!1;const s=n.size>0?r.filter((e=>n.has(e.key))):r;if(!s.length)return!1;switch(e.typeOperator){case\"EQUAL\":case\"INQ\":return s.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.includes(e)))));case\"NOEQUAL\":case\"NINQ\":return s.every((e=>(Array.isArray(e.value)?e.value:[e.value]).every((e=>!i.includes(e)))));case\"GREATER\":return s.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.some((t=>Number(e)>Number(t)))))));case\"LESS\":return s.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.some((t=>Number(e)<Number(t)))))));case\"GREATEREQUAL\":return s.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.some((t=>Number(e)>=Number(t)))))));case\"LESSEQUAL\":return s.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.some((t=>Number(e)<=Number(t)))))));default:return!1}}}},700:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.Page=void 0,t.Page=class{constructor(e,t,i,n,r){this.id=e,this.position=t,this.generatedAt=(new Date).toISOString(),this.updatedAt=(new Date).toISOString(),this.status=\"ACTIVE\",this.integrationId=i,this.integrationQuestions=n,this.integrationPageRoutes=r}}},989:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.PageGraph=void 0;const n=i(636),r=i(558),s=i(591);t.PageGraph=class{constructor(e){this.nodes=new Map,this.buildGraph(e)}buildGraph(e){e.forEach((e=>{var t;e.integrationPageRoutes&&(e.integrationPageRoutes=(null===(t=e.integrationPageRoutes)||void 0===t?void 0:t.sort(((e,t)=>{const i=new Date((null==e?void 0:e.generatedAt)||0).getTime(),n=new Date((null==t?void 0:t.generatedAt)||0).getTime();return i!==n?i-n:\"DIRECT\"===e.typeCondition&&\"DIRECT\"!==t.typeCondition?1:\"DIRECT\"!==e.typeCondition&&\"DIRECT\"===t.typeCondition?-1:0})))||[]);const i=new n.PageNode(e.id,e.position,e.integrationPageRoutes||[],e,e.integrationQuestions);this.nodes.set(i.id,i)}))}getNodeById(e){return this.nodes.get(e)}getNextEdgeByDefault(e){if(!e)return;const t=e.edges.find((e=>e.typeCondition===s.ConditionType.DIRECT));if(!t||![s.TransitionType.FINISH,s.TransitionType.REDIRECT].includes(t.transition)){if(t&&t.transitionDestiny)return t.transitionDestiny;for(const t of this.nodes.values())if(t.position===e.position+1)return t.id}}getFirstPage(){let e,t=Number.MAX_VALUE;for(const i of this.nodes.values())i.position<t&&(t=i.position,e=i);return e}getNextPage(e,t){var i;if(!e)return;e.edges.sort(((e,t)=>\"DIRECT\"===e.typeCondition?1:\"DIRECT\"===t.typeCondition?-1:0));const n=e.edges.find((i=>{const n=e.questions.find((e=>e.ref===i.questionRef)),o=null==t?void 0:t.filter((e=>e.key===i.questionRef));if(\"DIRECT\"===i.typeCondition)return!0;if(!o||0===o.length)return!1;if((null==n?void 0:n.type)===r.FEEDBACKAPPANSWERTYPE.MULTI_QUESTION_MATRIX)return this.evaluateMatrixCondition(i,o);const a=Array.isArray(i.value)?i.value:[i.value];switch(i.typeOperator){case s.OperatorType.EQUAL:return o.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>a.includes(e)))));case s.OperatorType.NOEQUAL:return o.every((e=>(Array.isArray(e.value)?e.value:[e.value]).every((e=>!a.includes(e)))));case s.OperatorType.GREATER:return o.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>a.some((t=>Number(e)>Number(t)))))));case s.OperatorType.LESS:return o.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>a.some((t=>Number(e)<Number(t)))))));case s.OperatorType.GREATEREQUAL:return o.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>a.some((t=>Number(e)>=Number(t)))))));case s.OperatorType.LESSEQUAL:return o.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>a.some((t=>Number(e)<=Number(t)))))));case s.OperatorType.INQ:return o.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>a.includes(e)))));case s.OperatorType.NINQ:return o.every((e=>(Array.isArray(e.value)?e.value:[e.value]).every((e=>!a.includes(e)))));default:return!1}}));if(!n){const t=this.getNextEdgeByDefault(e);if(!t)return;return this.getNodeById(t)}switch(n.transition){case s.TransitionType.PAGE:if(!n.transitionDestiny)return;return this.getNodeById(n.transitionDestiny);case s.TransitionType.FINISH:return;case s.TransitionType.REDIRECT:return void(window.location.href=(null===(i=n.transitionDestiny)||void 0===i?void 0:i.includes(\"?\"))?`${n.transitionDestiny}&${window.location.search.slice(1)}`:`${n.transitionDestiny}${window.location.search}`);default:return}}findDepth(e){const t=this.getNodeById(e);if(!t)return 0;const i=new Set;return this.DFSUtil(t,i,0)}findMaxDepth(e){if(e||(e=this.getFirstPage()),!e)return 0;const t=new Set;let i=1;return i=Math.max(i,this.DFSUtil(e,t,i)),i}DFSUtil(e,t,i){t.add(e);let n=i;const r=[...e.edges.filter((e=>e.typeCondition!==s.ConditionType.PRECONDITIONAL))||[]],o=this.getNextEdgeByDefault(e);if(o){const i=this.getNodeById(o);i&&!t.has(i)&&r.push(new s.PageRoute(i.id,\"\",s.OperatorType.DEFAULT,[\"\"],s.TransitionType.PAGE,i.id,e.id))}for(const e of r){if(!e.transitionDestiny)continue;const r=this.getNodeById(e.transitionDestiny);if(r&&!t.has(r)){const e=i+1,s=new Set(t),o=this.DFSUtil(r,s,e);n=Math.max(n,o)}}return n}parseMatrixAnswer(e){if(!e||!e.value)return[];if(1===e.value.length&&\"string\"==typeof e.value[0]&&e.value[0].trim().startsWith(\"[\"))try{const t=JSON.parse(e.value[0]);if(Array.isArray(t))return t}catch(e){return[]}return Array.isArray(e.value)&&e.value.length>0&&\"object\"==typeof e.value[0]&&null!==e.value[0]&&\"key\"in e.value[0]?e.value:[]}evaluateMatrixCondition(e,t){const i=Array.isArray(e.value)?e.value:[e.value],n=new Set(e.option||[]),r=t[0],o=this.parseMatrixAnswer(r);if(!o.length)return!1;const a=n.size>0?o.filter((e=>n.has(e.key))):o;if(!a.length)return!1;switch(e.typeOperator){case s.OperatorType.EQUAL:case s.OperatorType.INQ:return a.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.includes(e)))));case s.OperatorType.NOEQUAL:case s.OperatorType.NINQ:return a.every((e=>(Array.isArray(e.value)?e.value:[e.value]).every((e=>!i.includes(e)))));case s.OperatorType.GREATER:return a.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.some((t=>Number(e)>Number(t)))))));case s.OperatorType.LESS:return a.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.some((t=>Number(e)<Number(t)))))));case s.OperatorType.GREATEREQUAL:return a.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.some((t=>Number(e)>=Number(t)))))));case s.OperatorType.LESSEQUAL:return a.some((e=>(Array.isArray(e.value)?e.value:[e.value]).some((e=>i.some((t=>Number(e)<=Number(t)))))));default:return!1}}}},636:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.PageNode=void 0,t.PageNode=class{constructor(e,t,i,n,r,s=!1){this.answers=[],this.id=e,this.position=t,this.edges=i,this.data=n,this.questions=r.sort(((e,t)=>e.position-t.position)),this.elements=[],this.isFollowup=s}getFollowupQuestions(){return this.questions.filter((e=>e.followup)).map((e=>e.ref))}getRequiredQuestions(){return this.questions.filter((e=>e.require)).map((e=>e.ref))}setAnswer(e){this.answers=e}}},591:(e,t)=>{\"use strict\";var i,n,r,s;Object.defineProperty(t,\"__esModule\",{value:!0}),t.PageRoute=t.StatusType=t.OperatorType=t.ConditionType=t.TransitionType=void 0,(s=t.TransitionType||(t.TransitionType={})).PAGE=\"PAGE\",s.FINISH=\"FINISH\",s.REDIRECT=\"REDIRECT\",s.NEXT=\"NEXT\",s.ALLOW=\"ALLOW\",function(e){e.LOGICAL=\"LOGICAL\",e.DIRECT=\"DIRECT\",e.PRECONDITIONAL=\"PRECONDITIONAL\"}(i=t.ConditionType||(t.ConditionType={})),(r=t.OperatorType||(t.OperatorType={})).EQUAL=\"EQUAL\",r.NOEQUAL=\"NOEQUAL\",r.GREATER=\"GREATER\",r.LESS=\"LESS\",r.GREATEREQUAL=\"GREATEREQUAL\",r.LESSEQUAL=\"LESSEQUAL\",r.INQ=\"INQ\",r.NINQ=\"NINQ\",r.DEFAULT=\"DEFAULT\",function(e){e.ACTIVE=\"ACTIVE\",e.DEPRECATED=\"DEPRECATED\",e.DELETE=\"DELETE\"}(n=t.StatusType||(t.StatusType={})),t.PageRoute=class{constructor(e,t,r,s,o,a,l,d,c,u){this.id=e,this.questionRef=t,this.typeCondition=d||i.LOGICAL,this.typeOperator=r,this.value=s||[],this.transition=o,this.transitionDestiny=a,this.status=n.ACTIVE,this.generatedAt=new Date,this.updatedAt=new Date,this.integrationPageId=l,this.position=c||0,this.option=u||[]}}},558:(e,t)=>{\"use strict\";var i,n;Object.defineProperty(t,\"__esModule\",{value:!0}),t.AGENT_ANSWER_TYPE_BLOCKED=t.QuestionType=t.FEEDBACKAPPANSWERTYPE=void 0,(n=t.FEEDBACKAPPANSWERTYPE||(t.FEEDBACKAPPANSWERTYPE={})).CONTACT=\"CONTACT\",n.MULTIPLECHOISE_IMAGE=\"MULTIPLECHOISE_IMAGE\",n.EMAIL=\"EMAIL\",n.RATING_STAR=\"RATING_STAR\",n.RADIO=\"RADIO\",n.MULTIPLECHOICE=\"MULTIPLECHOICE\",n.SELECT=\"SELECT\",n.TEXT=\"TEXT\",n.LONGTEXT=\"LONGTEXT\",n.NUMBER=\"NUMBER\",n.RATING_EMOJI=\"RATING_EMOJI\",n.RATING_NUMBER=\"RATING_NUMBER\",n.DATE=\"DATE\",n.BOOLEAN=\"BOOLEAN\",n.PASSWORD=\"PASSWORD\",n.CONSENT=\"CONSENT\",n.MULTI_QUESTION_MATRIX=\"MULTI_QUESTION_MATRIX\",n.POINT_SYSTEM=\"POINT_SYSTEM\",n.PRIORITY_LIST=\"PRIORITY_LIST\",n.INFO_PAGE=\"INFO_PAGE\",n.UPLOAD_FILE=\"UPLOAD_FILE\",n.UPLOAD_IMAGE=\"UPLOAD_IMAGE\",t.QuestionType=class{},t.AGENT_ANSWER_TYPE_BLOCKED=\"ABUSIVE_OR_OFFENSIVE\",function(e){e.FORM=\"form\",e.DIV=\"div\"}(i||(i={}))},565:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.applyPrimaryColor=t.generateContainer=void 0,t.generateContainer=function(e,t){let i=document.getElementById(e);if(!i&&(i=document.getElementById(\"magicfeedback-container-\"+t),!i))throw new Error(`Element with ID '${e}' not found.`);return i.classList.add(\"magicfeedback-container\"),i.id=\"magicfeedback-container-\"+t,i.innerHTML=\"\",i},t.applyPrimaryColor=function(e,t){e.style.setProperty(\"--mf-primary\",t),e.style.setProperty(\"--mf-primary-hover\",`color-mix(in srgb, ${t} 85%, black)`),e.style.setProperty(\"--mf-primary-light\",`color-mix(in srgb, ${t} 15%, white)`),e.style.setProperty(\"--mf-primary-border\",`color-mix(in srgb, ${t} 35%, transparent)`),e.style.setProperty(\"--mf-border-focus\",t)}},516:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.getUrlParam=t.getBooleanOptions=t.parseTitle=void 0,t.parseTitle=function(e,t){return e?\"object\"==typeof e?e[t]||e.en:e:\"\"},t.getBooleanOptions=function(e){switch(e){case\"es\":return[\"Sí\",\"No\"];case\"fr\":return[\"Oui\",\"Non\"];case\"de\":return[\"Ja\",\"Nein\"];case\"it\":return[\"Sì\",\"No\"];case\"pt\":return[\"Sim\",\"Não\"];case\"nl\":return[\"Ja\",\"Nee\"];case\"pl\":return[\"Tak\",\"Nie\"];case\"ru\":return[\"Да\",\"Нет\"];case\"ja\":return[\"はい\",\"いいえ\"];case\"zh\":return[\"是\",\"不\"];case\"ko\":return[\"예\",\"아니\"];case\"da\":case\"sv\":return[\"Ja\",\"Nej\"];case\"fi\":return[\"Kyllä\",\"Ei\"];case\"no\":return[\"Ja\",\"Nei\"];case\"ar\":return[\"نعم\",\"لا\"];case\"bn\":return[\"হ্যাঁ\",\"না\"];default:return[\"Yes\",\"No\"]}},t.getUrlParam=function(e){return new URLSearchParams(window.location.search).get(e)}},559:(e,t)=>{\"use strict\";function i(e,t,i=\"ltr\"){const n=document.createElement(\"div\");n.classList.add(\"magicfeedback-rating-placeholder\");const r=document.createElement(\"span\");r.textContent=null!=e?e:\"\",r.classList.add(\"magicfeedback-rating-placeholder-value\");const s=document.createElement(\"span\");return s.textContent=null!=t?t:\"\",s.classList.add(\"magicfeedback-rating-placeholder-value\"),\"ltr\"===i?(e&&n.appendChild(r),t&&n.appendChild(s)):(t&&n.appendChild(s),e&&n.appendChild(r)),n}Object.defineProperty(t,\"__esModule\",{value:!0}),t.createRatingNumberElement=t.createStarRating=t.createRatingPlaceholder=void 0,t.createRatingPlaceholder=i,t.createStarRating=function(e,t,n,r=()=>{},s){const o=\"magicfeedback-rating-star-selected\",a=document.createElement(\"div\");a.classList.add(\"magicfeedback-rating-star-container\"),a.style.maxWidth=\"300px\",a.style.margin=\"auto\",a.dataset.originalSelection=\"0\";for(let t=1;t<=5;t++){const i=document.createElement(\"label\");i.classList.add(\"magicfeedback-rating-star-option\");const n=document.createElement(\"input\");n.id=`rating-${e}-${t}`,n.type=\"radio\",n.name=e,n.value=t.toString(),n.style.position=\"absolute\",n.style.opacity=\"0\",n.style.width=\"0\",n.style.height=\"0\",n.classList.add(\"magicfeedback-input\"),s&&s===n.value&&(n.checked=!0),n.addEventListener(\"change\",(()=>{const e=a.querySelectorAll(\".rating__star\");for(let t=0;t<e.length;t++)t+1<=Number(n.value)?e[t].classList.contains(o)||e[t].classList.add(o):e[t].classList.contains(o)&&e[t].classList.remove(o);a.dataset.originalSelection=n.value,r&&r()})),i.appendChild(n);const l=document.createElement(\"label\");l.htmlFor=`rating-${e}-${t}`,l.classList.add(\"rating__star\"),l.textContent=\"★\",l.style.fontSize=\"40px\",l.style.color=\"#CCCCCC\",l.style.cursor=\"pointer\",l.addEventListener(\"mouseenter\",(()=>{const e=a.querySelectorAll(\".rating__star\"),i=t-1;e.forEach(((e,t)=>{t<=i?e.classList.contains(o)||e.classList.add(o):e.classList.contains(o)&&e.classList.remove(o)}))})),l.addEventListener(\"mouseleave\",(()=>{const e=Number(a.dataset.originalSelection||\"0\");a.querySelectorAll(\".rating__star\").forEach(((t,i)=>{i<e?t.classList.contains(o)||t.classList.add(o):t.classList.contains(o)&&t.classList.remove(o)}))})),i.appendChild(l),a.appendChild(i)}const l=i(t,n);return l.childElementCount>0&&a.appendChild(l),a},t.createRatingNumberElement=function(e,t,i,n,r,s,o){var a,l;const d=document.createElement(\"div\");d.classList.add(\"magicfeedback-rating-number\");const c=\"column\"===n,u=\"ltr\"===i?n:`${n}-reverse`,p=document.createElement(\"div\");p.classList.add(\"magicfeedback-rating-number-container\"),p.classList.add(`magicfeedback-rating-number-container-${i}`),p.classList.add(`magicfeedback-rating-number-container-${n}`),p.style.display=\"flex\",p.style.flexDirection=u,p.setAttribute(\"role\",\"radiogroup\"),p.setAttribute(\"aria-label\",(null==t?void 0:t.ariaLabel)||\"Rating\");const h=(null==t?void 0:t.max)?Number(null==t?void 0:t.max):10,m=(null==t?void 0:t.min)?Number(null==t?void 0:t.min):0;!c&&h-m+1>6&&p.classList.add(\"magicfeedback-rating-number-container-row--dense\");const f=(null==t?void 0:t.numberPlaceholders)||null,g=!(!f||!Object.keys(f).length);let v=null;if(!c&&((null==t?void 0:t.minPlaceholder)||(null==t?void 0:t.maxPlaceholder))){v=document.createElement(\"div\"),v.classList.add(\"magicfeedback-rating-number-scale-labels\");const e=document.createElement(\"span\");e.classList.add(\"magicfeedback-rating-number-scale-label\"),e.textContent=null!==(a=null==t?void 0:t.minPlaceholder)&&void 0!==a?a:\"\";const n=document.createElement(\"span\");n.classList.add(\"magicfeedback-rating-number-scale-label\"),n.textContent=null!==(l=null==t?void 0:t.maxPlaceholder)&&void 0!==l?l:\"\",\"ltr\"===i?(v.appendChild(e),v.appendChild(n)):(v.appendChild(n),v.appendChild(e))}let y=null;if(c&&!g&&(p.classList.add(\"magicfeedback-rating-number-container-column--bare\"),(null==t?void 0:t.minPlaceholder)||(null==t?void 0:t.maxPlaceholder))){const e=\"ltr\"===i?null==t?void 0:t.minPlaceholder:null==t?void 0:t.maxPlaceholder,n=\"ltr\"===i?null==t?void 0:t.maxPlaceholder:null==t?void 0:t.minPlaceholder;if(e){const t=document.createElement(\"div\");t.classList.add(\"magicfeedback-rating-number-scale-label-block\"),t.textContent=e,d.appendChild(t)}n&&(y=document.createElement(\"div\"),y.classList.add(\"magicfeedback-rating-number-scale-label-block\"),y.textContent=n)}for(let i=m;i<=h;i++){const a=document.createElement(\"div\");a.classList.add(\"magicfeedback-rating-number-option\"),a.classList.add(`magicfeedback-rating-number-option-${n}`);const l=document.createElement(\"label\");l.htmlFor=`rating-${e}-${i}`,l.classList.add(\"magicfeedback-rating-number-option-label-container\");const d=g&&(f[i]||(i===m?null==t?void 0:t.minPlaceholder:void 0)||(i===h?null==t?void 0:t.maxPlaceholder:void 0)),u=document.createElement(\"input\");u.id=`rating-${e}-${i}`,u.type=\"radio\",u.name=e,u.value=i.toString(),u.classList.add(r),u.classList.add(\"magicfeedback-input\"),u.setAttribute(\"aria-label\",d?`${i} — ${d}`:`${i}`),s&&u.addEventListener(\"change\",(()=>s())),o&&o===u.value&&(u.checked=!0),l.appendChild(u);const v=document.createElement(\"span\");v.classList.add(\"magicfeedback-rating-number-value\");const y=document.createElement(\"span\");if(y.textContent=i.toString(),y.classList.add(\"magicfeedback-rating-number-value-num\"),v.appendChild(y),c){if(d){const e=document.createElement(\"span\");e.textContent=d,e.classList.add(\"magicfeedback-rating-number-value-label\"),v.appendChild(e)}}else f&&f[i]&&(l.title=f[i]);l.appendChild(v),a.appendChild(l),p.appendChild(a)}if(d.appendChild(p),v&&d.appendChild(v),y&&d.appendChild(y),(null==t?void 0:t.extraOption)&&(null==t?void 0:t.extraOptionText)){const i=document.createElement(\"div\");i.classList.add(\"magicfeedback-rating-number-extra-row\");const n=document.createElement(\"div\");n.classList.add(\"magicfeedback-rating-number-option\"),n.classList.add(\"magicfeedback-rating-number-option--extra\");const o=document.createElement(\"label\");o.htmlFor=`rating-${e}-extra`,o.classList.add(\"magicfeedback-rating-number-option-label-container\");const a=document.createElement(\"input\");a.id=`rating-${e}-extra`,a.type=\"radio\",a.name=e,a.value=\"-\",a.classList.add(r),a.classList.add(\"magicfeedback-input\"),a.setAttribute(\"aria-label\",null==t?void 0:t.extraOptionText),s&&a.addEventListener(\"change\",(()=>s()));const l=document.createElement(\"span\");l.classList.add(\"magicfeedback-rating-number-value\");const c=document.createElement(\"span\");c.textContent=null==t?void 0:t.extraOptionText,c.classList.add(\"magicfeedback-rating-number-value-label\"),l.appendChild(c),o.appendChild(a),o.appendChild(l),n.appendChild(o),i.appendChild(n),d.appendChild(i)}return d}},42:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.getQuestionRenderer=void 0;const n=i(558),r=i(998),s=i(72),o=i(732),a=i(90),l=i(65),d=i(85),c=i(817),u=i(965),p=i(180),h=i(991),m=i(152),f=i(917),g=i(452),v=i(644),y=i(773),b=i(66),E=i(843),A=i(250),k=i(409),C=i(282),T=new Map([[n.FEEDBACKAPPANSWERTYPE.TEXT,a.renderText],[n.FEEDBACKAPPANSWERTYPE.LONGTEXT,s.renderLongText],[n.FEEDBACKAPPANSWERTYPE.NUMBER,o.renderNumber],[n.FEEDBACKAPPANSWERTYPE.RADIO,r.renderChoice],[n.FEEDBACKAPPANSWERTYPE.MULTIPLECHOICE,r.renderChoice],[n.FEEDBACKAPPANSWERTYPE.BOOLEAN,l.renderBoolean],[n.FEEDBACKAPPANSWERTYPE.SELECT,d.renderSelect],[n.FEEDBACKAPPANSWERTYPE.DATE,c.renderDate],[n.FEEDBACKAPPANSWERTYPE.EMAIL,u.renderEmail],[n.FEEDBACKAPPANSWERTYPE.PASSWORD,p.renderPassword],[n.FEEDBACKAPPANSWERTYPE.CONSENT,h.renderConsent],[n.FEEDBACKAPPANSWERTYPE.RATING_EMOJI,m.renderRatingEmoji],[n.FEEDBACKAPPANSWERTYPE.RATING_NUMBER,f.renderRatingNumber],[n.FEEDBACKAPPANSWERTYPE.RATING_STAR,g.renderRatingStar],[n.FEEDBACKAPPANSWERTYPE.MULTI_QUESTION_MATRIX,v.renderMatrix],[n.FEEDBACKAPPANSWERTYPE.PRIORITY_LIST,y.renderPriorityList],[n.FEEDBACKAPPANSWERTYPE.POINT_SYSTEM,b.renderPointSystem],[n.FEEDBACKAPPANSWERTYPE.UPLOAD_IMAGE,E.renderUploadImage],[n.FEEDBACKAPPANSWERTYPE.UPLOAD_FILE,A.renderUploadFile],[n.FEEDBACKAPPANSWERTYPE.MULTIPLECHOISE_IMAGE,k.renderMultipleChoiceImage],[n.FEEDBACKAPPANSWERTYPE.INFO_PAGE,C.renderInfoPage]]);t.getQuestionRenderer=function(e){return T.get(e)}},65:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderBoolean=void 0;const n=i(516);t.renderBoolean=({question:e,language:t,urlParamValue:i,send:r})=>{const{ref:s,assets:o}=e,a=document.createElement(\"div\"),l=\"magicfeedback-radio\",d=document.createElement(\"div\");return d.classList.add(\"magicfeedback-boolean-container\"),d.style.display=\"flex\",d.style.flexDirection=\"row\",d.style.justifyContent=\"space-between\",d.style.width=\"70%\",d.style.margin=\"auto\",((null==o?void 0:o.addIcon)?[\"👍\",\"👎\"]:(0,n.getBooleanOptions)(t)).forEach(((e,t)=>{const n=document.createElement(\"label\");n.classList.add(\"magicfeedback-boolean-option\"),n.htmlFor=`rating-${s}-${t}`,n.style.cursor=\"pointer\",n.style.display=\"flex\",n.style.justifyContent=\"center\",n.style.alignItems=\"center\",n.style.margin=\"auto\",n.style.padding=\"0\",n.style.width=\"45%\",n.style.height=\"38px\";const o=document.createElement(\"label\");o.htmlFor=`rating-${s}-${t}`,o.textContent=e,o.style.margin=\"0\",o.style.padding=\"0\";const a=document.createElement(\"input\");a.id=`rating-${s}-${t}`,a.type=\"radio\",a.name=s,a.value=[\"Yes\",\"No\"][t],a.classList.add(l),a.classList.add(\"magicfeedback-input\"),a.style.position=\"absolute\",a.style.opacity=\"0\",a.style.width=\"0\",a.style.height=\"0\",a.style.margin=\"0\",a.addEventListener(\"change\",(()=>{r&&r()})),i&&i.toLowerCase()===a.value.toLowerCase()&&(a.checked=!0),n.appendChild(a),n.appendChild(o),d.appendChild(n)})),a.appendChild(d),{element:a,elementTypeClass:l}}},998:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderChoice=void 0;const n=i(558),r=i(784);t.renderChoice=({question:e,language:t,urlParamValue:i,randomPosition:s,send:o})=>{const{type:a,ref:l,value:d,defaultValue:c,assets:u}=e,p=document.createElement(\"div\"),h=\"magicfeedback-\"+(\"MULTIPLECHOICE\"===a?\"checkbox\":\"radio\");let m=d||[];s&&(m=m.sort((()=>Math.random()-.5)));let f=(null==u?void 0:u.exclusiveAnswers)||[];(null==u?void 0:u.extraOption)&&(f=f.filter((e=>e!==u.extraOptionText))),f.length>0&&(null==f||f.forEach((e=>{m.includes(e)||m.push(e)})));const g=null==u?void 0:u.extraOptionText;return(null==u?void 0:u.extraOption)&&g&&!m.includes(g)&&m.push(g),m.forEach(((e,s)=>{const d=document.createElement(\"div\");d.classList.add(`magicfeedback-${\"MULTIPLECHOICE\"===a?\"checkbox\":\"radio\"}-container`);const g=document.createElement(\"label\"),v=document.createElement(\"input\");if(v.id=`rating-${l}-${s}`,v.type=\"MULTIPLECHOICE\"===a?\"checkbox\":\"radio\",v.name=l,v.value=e,v.classList.add(h),v.classList.add(\"magicfeedback-input\"),a===n.FEEDBACKAPPANSWERTYPE.MULTIPLECHOICE&&(null==u?void 0:u.maxOptions)&&(null==u?void 0:u.maxOptions)>0&&v.addEventListener(\"change\",(()=>{document.querySelectorAll(`input[name=\"${l}\"]:checked`).length>(null==u?void 0:u.maxOptions)&&(v.checked=!1)})),a===n.FEEDBACKAPPANSWERTYPE.RADIO&&o&&(!(null==u?void 0:u.extraOptionText)||(null==u?void 0:u.extraOptionText)&&e!==(null==u?void 0:u.extraOptionText))&&v.addEventListener(\"change\",(()=>{o()})),e!==c&&e!==i||(v.checked=!0),g.textContent=e,g.htmlFor=`rating-${l}-${s}`,v.addEventListener(\"change\",(t=>{const i=document.getElementById(`extra-option-${l}`);t.target.checked&&f.includes(e)?(m.forEach((t=>{t!==e&&(document.querySelector(`input[value=\"${t}\"]`).checked=!1)})),i&&(i.style.display=\"none\")):f.forEach((t=>{t!==e&&(document.querySelector(`input[value=\"${t}\"]`).checked=!1)})),(null==u?void 0:u.extraOption)&&e===(null==u?void 0:u.extraOptionText)&&i&&(i.style.display=t.target.checked?\"block\":\"none\")})),d.appendChild(v),d.appendChild(g),p.appendChild(d),(null==u?void 0:u.extraOption)&&e===(null==u?void 0:u.extraOptionText)){const e=document.createElement(\"input\");e.type=\"text\",e.placeholder=(null==u?void 0:u.extraOptionPlaceholder)||r.placeholder.answer(t||\"en\"),e.classList.add(\"magicfeedback-extra-option\"),e.classList.add(\"magicfeedback-input\"),e.id=`extra-option-${l}`,e.name=`extra-option-${l}`,e.style.display=\"none\",p.appendChild(e)}})),{element:p,elementTypeClass:h}}},991:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderConsent=void 0,t.renderConsent=({question:e,urlParamValue:t,send:i})=>{const{id:n,ref:r,value:s,require:o}=e,a=document.createElement(\"input\");return a.type=\"checkbox\",a.id=`magicfeedback-${n}`,a.name=r,a.value=\"true\",a.required=o,a.classList.add(\"magicfeedback-consent\"),a.classList.add(\"magicfeedback-input\"),t&&s.includes(t)&&(a.checked=!0),i&&a.addEventListener(\"change\",(()=>{i()})),{element:a,elementTypeClass:\"magicfeedback-consent\"}}},817:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderDate=void 0;const n=i(784);t.renderDate=({language:e,placeholderText:t,urlParamValue:i})=>{const r=document.createElement(\"input\");return r.type=\"date\",r.placeholder=t||n.placeholder.date(e||\"en\"),i&&(r.value=i),{element:r,elementTypeClass:\"magicfeedback-date\"}}},965:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderEmail=void 0,t.renderEmail=({placeholderText:e,urlParamValue:t})=>{const i=document.createElement(\"input\");return i.type=\"email\",i.placeholder=e||\"you@example.com\",t&&(i.value=t),{element:i,elementTypeClass:\"magicfeedback-email\"}}},282:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderInfoPage=void 0,t.renderInfoPage=({question:e,placeholderText:t})=>{var i,n;const r=document.createElement(\"div\");if(\"string\"==typeof(null===(i=e.assets)||void 0===i?void 0:i.placeholder)?\"\"!==e.assets.placeholder.trim():Boolean(null===(n=e.assets)||void 0===n?void 0:n.placeholder)){const e=document.createElement(\"div\");e.classList.add(\"magicfeedback-info-message\"),e.innerHTML=t||\"\",r.appendChild(e)}return{element:r,elementTypeClass:\"magicfeedback-info-page\"}}},72:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderLongText=void 0;const n=i(784);t.renderLongText=({language:e,placeholderText:t,urlParamValue:i,maxCharacters:r})=>{const s=document.createElement(\"textarea\");return s.rows=3,r>0&&(s.maxLength=r),s.placeholder=t||n.placeholder.answer(e||\"en\"),i&&(s.value=i),{element:s,elementTypeClass:\"magicfeedback-longtext\"}}},644:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderMatrix=void 0,t.renderMatrix=({question:e,isPhone:t,randomPosition:i})=>{const{ref:n,value:r,assets:s}=e,o=document.createElement(\"div\"),a=document.createElement(\"div\");a.classList.add(\"magicfeedback-multi-question-matrix-container\");let l=(null==s?void 0:s.options)||[],d=[...r],c=[];if(i&&(l=null==l?void 0:l.sort((()=>Math.random()-.5)),d=[...d].sort((()=>Math.random()-.5))),(null==s?void 0:s.exclusiveAnswers)&&(c=null==s?void 0:s.exclusiveAnswers,null==c||c.forEach((e=>{d.includes(e)||d.push(e)}))),t){const e=document.createElement(\"div\");e.classList.add(\"magicfeedback-multi-question-matrix-list\"),null==l||l.forEach((t=>{const i=document.createElement(\"div\");i.classList.add(\"magicfeedback-multi-question-matrix-list-item\"),i.style.display=\"flex\",i.style.flexDirection=\"column\",i.style.alignItems=\"flex-start\",i.style.marginBottom=\"10px\";const r=document.createElement(\"label\");r.classList.add(\"magicfeedback-multi-question-matrix-label\"),r.style.paddingBottom=\"10px\",r.textContent=t,i.appendChild(r),d.forEach((e=>{const r=document.createElement(\"div\");r.classList.add(\"magicfeedback-radio-container\"),r.style.display=\"flex\",r.style.alignItems=\"center\",r.style.justifyContent=\"flex-start\",r.style.width=\"99%\",r.style.margin=\"5px auto\";const s=document.createElement(\"label\"),o=document.createElement(\"input\");o.id=`${n}-${t}-${e}`,o.type=\"radio\",o.name=`${n}-${t}`,o.value=e,o.classList.add(\"magicfeedback-input\"),s.textContent=e,s.htmlFor=`${n}-${t}-${e}`,r.appendChild(o),r.appendChild(s),i.appendChild(r)})),e.appendChild(i)})),a.appendChild(e)}else{const e=document.createElement(\"table\");e.classList.add(\"magicfeedback-multi-question-matrix-table\");const t=document.createElement(\"thead\");t.classList.add(\"magicfeedback-multi-question-matrix-header\"),t.style.paddingBottom=\"15px\";const i=document.createElement(\"tr\"),r=document.createElement(\"th\");i.appendChild(r),d.forEach((e=>{const t=document.createElement(\"th\");t.textContent=e,i.appendChild(t)})),t.appendChild(i),e.appendChild(t);const s=document.createElement(\"tbody\");null==l||l.forEach((e=>{const t=document.createElement(\"tr\");t.classList.add(\"magicfeedback-multi-question-matrix-row-tr\");const i=document.createElement(\"td\");i.style.minWidth=\"200px\",i.style.padding=\"10px\";const r=document.createElement(\"label\");r.classList.add(\"magicfeedback-multi-question-matrix-label\"),r.textContent=e,i.appendChild(r),t.appendChild(i),d.forEach((i=>{const r=document.createElement(\"td\"),s=document.createElement(\"input\");s.type=\"radio\",s.name=`${n}-${e}`,s.value=i,s.id=`${n}-${e}-${i}`,s.classList.add(\"magicfeedback-input\"),r.appendChild(s),t.appendChild(r)})),s.appendChild(t)})),e.appendChild(s),a.appendChild(e)}return o.appendChild(a),{element:o,elementTypeClass:\"magicfeedback-multi-question-matrix\"}}},409:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderMultipleChoiceImage=void 0,t.renderMultipleChoiceImage=({question:e,randomPosition:t,urlParamValue:i,send:n})=>{const r=document.createElement(\"div\"),{ref:s,assets:o}=e;let a=[...e.value];const l=document.createElement(\"div\");l.classList.add(\"magicfeedback-multiple-choice-image-container\"),l.style.display=\"flex\",l.style.flexDirection=\"row\",l.style.flexWrap=\"wrap\",l.style.justifyContent=\"center\";const d=a.length;let c=1,u=1;if(window.innerWidth<600)c=1,u=d;else switch(d){case 1:case 2:case 3:c=d,u=1;break;case 4:case 5:case 6:u=2,c=Math.ceil(d/u);break;case 7:case 8:case 9:u=3,c=Math.ceil(d/u);break;default:u=4,c=Math.ceil(d/u)}const p=void 0!==(null==o?void 0:o.addTitle)&&(null==o?void 0:o.addTitle),h=void 0!==(null==o?void 0:o.multiOption)&&(null==o?void 0:o.multiOption),m=void 0!==(null==o?void 0:o.extraOption)&&(null==o?void 0:o.extraOption);function f(e){try{const{position:t,url:r,value:o}=e,a=document.createElement(\"div\");a.classList.add(\"magicfeedback-multiple-choice-image-option\"),a.style.width=`calc(100% / ${c} - 2px)`,a.style.height=`calc(100% / ${u} - 2px)`,a.style.padding=\"8px\",a.style.margin=\"0\";const d=document.createElement(\"label\");d.classList.add(\"magicfeedback-image-option-label-container\"),d.htmlFor=`rating-${s}-${t}`,d.style.cursor=\"pointer\",d.addEventListener(\"click\",(()=>{d.style.border=\"2px solid #000\"}));const m=document.createElement(\"label\");m.textContent=o,m.classList.add(\"magicfeedback-multiple-choice-image-label\");const f=document.createElement(\"input\");f.id=`rating-${s}-${t}`,f.type=h?\"checkbox\":\"radio\",f.name=s,f.value=o,f.style.position=\"absolute\",f.style.opacity=\"0\",f.style.width=\"0\",f.style.height=\"0\",f.classList.add(\"magicfeedback-input\"),i&&i===f.value&&(f.checked=!0),!h&&n&&f.addEventListener(\"change\",(()=>{n()}));const g=document.createElement(\"img\");g.classList.add(\"magicfeedback-multiple-choice-image-image\"),g.src=r,g.style.cursor=\"pointer\",g.style.backgroundSize=\"cover\",g.style.backgroundPosition=\"center\",g.style.width=\"100%\",g.style.height=\"100%\",g.style.objectFit=\"cover\",g.style.margin=\"auto\",d.appendChild(f),d.appendChild(g),p&&d.appendChild(m),a.appendChild(d),l.appendChild(a)}catch(e){console.error(e)}}return t&&(a=a.sort((()=>Math.random()-.5))),a.forEach((e=>f(JSON.parse(e)))),m&&(null==o?void 0:o.extraOptionValue)&&(null==o?void 0:o.extraOptionValue.length)>0&&f(null==o?void 0:o.extraOptionValue[0]),r.appendChild(l),{element:r,elementTypeClass:\"magicfeedback-multiple-choice-image\"}}},732:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderNumber=void 0;const n=i(784),r=i(516);t.renderNumber=({question:e,format:t,language:i,urlParamValue:s})=>{const o=document.createElement(\"input\");o.type=\"number\",o.placeholder=\"slim\"===t?(0,r.parseTitle)(e.title,i):n.placeholder.number(i||\"en\");const{value:a}=e;return a.length&&(a.sort(((e,t)=>Number(e)-Number(t))),o.max=a[a.length-1],o.min=a[0],o.value=a[0]),s&&!isNaN(Number(s))&&(o.value=s),{element:o,elementTypeClass:\"magicfeedback-number\"}}},180:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderPassword=void 0;const n=i(784);t.renderPassword=({language:e,placeholderText:t,urlParamValue:i})=>{const r=document.createElement(\"input\");return r.type=\"password\",r.placeholder=t||n.placeholder.password(e||\"en\"),i&&(r.value=i),{element:r,elementTypeClass:\"magicfeedback-password\"}}},66:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderPointSystem=void 0;const n=i(784);t.renderPointSystem=({question:e,language:t})=>{const{ref:i,value:r}=e,s=document.createElement(\"div\"),o=document.createElement(\"div\");o.classList.add(\"magicfeedback-point-system-container\");const a=document.createElement(\"ul\");a.classList.add(\"magicfeedback-point-system-list\"),a.style.padding=\"0\";const l=100/r.length,d=document.createElement(\"div\");d.classList.add(\"magicfeedback-error\"),d.textContent=n.placeholder.pointsystemerror(t||\"en\"),d.style.color=\"#C70039\",d.style.fontSize=\"14px\",d.style.textAlign=\"right\",d.style.width=\"100%\",d.style.display=\"none\";const c=document.createElement(\"div\");return c.classList.add(\"magicfeedback-point-system-total\"),c.textContent=\"0 / 100 %\",c.style.textAlign=\"right\",c.style.fontSize=\"15px\",c.style.marginTop=\"5px\",r.forEach(((e,t)=>{const n=document.createElement(\"li\");n.classList.add(\"magicfeedback-point-system-item\"),n.style.display=\"flex\",n.style.justifyContent=\"space-between\",n.style.alignItems=\"center\",n.style.margin=\"5px\";const r=document.createElement(\"label\");r.textContent=e,r.style.fontSize=\"15px\",n.appendChild(r);const s=document.createElement(\"span\");s.classList.add(\"magicfeedback-point-system-input-container\");const o=document.createElement(\"input\");o.name=i,o.id=`${e}`,o.type=\"number\",o.min=\"0\",o.max=\"100\",o.value=\"0\",o.classList.add(\"magicfeedback-input\"),o.style.width=\"40px\",o.style.border=\"0\",o.style.textAlign=\"center\",o.style.margin=\"0 5px\",o.autofocus=0===t;const u=document.createElement(\"span\");u.textContent=\"%\",u.style.color=\"#000\",o.addEventListener(\"input\",(()=>{const e=a.querySelectorAll(\"input\");let t=0;e.forEach((e=>{t+=Number(e.value)})),t>100&&(o.value=`${l}%`,t-=Number(o.value));const i=document.getElementById(\"magicfeedback-submit\");i&&(t<100?(c.style.color=\"orange\",i.setAttribute(\"disabled\",\"true\")):(d.style.display=\"none\",c.style.color=\"green\",i.removeAttribute(\"disabled\"))),c.textContent=`${t} / 100 %`})),o.addEventListener(\"focus\",(()=>{const e=document.getElementById(\"magicfeedback-submit\");e&&(e.setAttribute(\"disabled\",\"true\"),e.addEventListener(\"pointerover\",(()=>{const e=a.querySelectorAll(\"input\");let t=0;e.forEach((e=>{t+=Number(e.value)})),t<100&&(d.style.display=\"block\")})))})),s.appendChild(o),s.appendChild(u),n.appendChild(s),a.appendChild(n)})),o.appendChild(a),o.appendChild(c),o.appendChild(d),s.appendChild(o),{element:s,elementTypeClass:\"magicfeedback-point-system\"}}},773:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderPriorityList=void 0,t.renderPriorityList=({question:e,randomPosition:t,language:i})=>{var n,r,s;const o=document.createElement(\"div\"),a=function(e){const{value:t,ref:i,randomPosition:n=!1,limitPriority:r=!1,maxPriority:s=0,language:o=\"en\",placeholder:a=\"\"}=e,l=e=>{const t={en:{selectUpTo:\"Select up to\",options:\"options\",thenOrder:\"and then order them\",selectOptions:\"Select options\",cancel:\"Cancel\",confirm:\"Confirm\",selectOptionNumber:\"Select option #\",prioritized:\"Prioritized\",of:\"of\",instruction:\"Your priority list can be seen below. If you wish, you can rearrange your choices using the arrows. Click 'Next' to confirm your selection and proceed.\"},es:{selectUpTo:\"Selecciona hasta\",options:\"opciones\",thenOrder:\"y luego ordénalas\",selectOptions:\"Seleccionar opciones\",cancel:\"Cancelar\",confirm:\"Confirmar\",selectOptionNumber:\"Selecciona la opción #\",prioritized:\"Priorizadas\",of:\"de\",instruction:'Tu lista priorizada se muestra abajo. Si deseas, puedes reordenar las opciones con las flechas. Haz clic en \"Siguiente\" para confirmar y continuar.'},pt:{selectUpTo:\"Selecione até\",options:\"opções\",thenOrder:\"e depois ordene-as\",selectOptions:\"Selecionar opções\",cancel:\"Cancelar\",confirm:\"Confirmar\",selectOptionNumber:\"Selecione a opção #\",prioritized:\"Priorizadas\",of:\"de\",instruction:'Sua lista de prioridades pode ser vista abaixo. Se quiser, você pode reorganizar suas escolhas usando as setas. Clique em \"Próximo\" para confirmar sua seleção e continuar.'},fr:{selectUpTo:\"Sélectionnez jusqu'à\",options:\"options\",thenOrder:\"puis classez-les\",selectOptions:\"Sélectionner des options\",cancel:\"Annuler\",confirm:\"Confirmer\",selectOptionNumber:\"Sélectionnez l'option #\",prioritized:\"Priorisées\",of:\"sur\",instruction:'Votre liste de priorités est affichée ci-dessous. Si vous le souhaitez, vous pouvez réorganiser vos choix à l\\'aide des flèches. Cliquez sur \"Suivant\" pour confirmer votre sélection et continuer.'},de:{selectUpTo:\"Wählen Sie bis zu\",options:\"Optionen\",thenOrder:\"und ordnen Sie sie dann\",selectOptions:\"Optionen auswählen\",cancel:\"Abbrechen\",confirm:\"Bestätigen\",selectOptionNumber:\"Wählen Sie Option #\",prioritized:\"Priorisiert\",of:\"von\",instruction:'Ihre Prioritätenliste wird unten angezeigt. Wenn Sie möchten, können Sie Ihre Auswahl mit den Pfeilen neu anordnen. Klicken Sie auf \"Weiter\", um Ihre Auswahl zu bestätigen und fortzufahren.'},it:{selectUpTo:\"Seleziona fino a\",options:\"opzioni\",thenOrder:\"e poi ordinali\",selectOptions:\"Seleziona opzioni\",cancel:\"Annulla\",confirm:\"Conferma\",selectOptionNumber:\"Seleziona opzione #\",prioritized:\"Prioritizzate\",of:\"di\",instruction:'La tua lista di priorità è mostrata qui sotto. Se vuoi, puoi riordinare le tue scelte usando le frecce. Clicca su \"Avanti\" per confermare la selezione e continuare.'},nl:{selectUpTo:\"Selecteer tot\",options:\"opties\",thenOrder:\"en rangschik ze vervolgens\",selectOptions:\"Selecteer opties\",cancel:\"Annuleren\",confirm:\"Bevestigen\",selectOptionNumber:\"Selecteer optie #\",prioritized:\"Geprioriteerd\",of:\"van\",instruction:'Je prioriteitenlijst wordt hieronder weergegeven. Als je wilt, kun je je keuzes herschikken met behulp van de pijlen. Klik op \"Volgende\" om je selectie te bevestigen en door te gaan.'},pl:{selectUpTo:\"Wybierz do\",options:\"opcje\",thenOrder:\"a następnie je uporządkuj\",selectOptions:\"Wybierz opcje\",cancel:\"Anuluj\",confirm:\"Potwierdź\",selectOptionNumber:\"Wybierz opcję #\",prioritized:\"Priorytetowe\",of:\"z\",instruction:'Twoja lista priorytetów jest pokazana poniżej. Jeśli chcesz, możesz zmienić kolejność swoich wyborów za pomocą strzałek. Kliknij \"Dalej\", aby potwierdzić wybór i kontynuować.'},ru:{selectUpTo:\"Выберите до\",options:\"вариантов\",thenOrder:\"а затем упорядочьте их\",selectOptions:\"Выбрать варианты\",cancel:\"Отмена\",confirm:\"Подтвердить\",selectOptionNumber:\"Выберите вариант #\",prioritized:\"Приоритеты\",of:\"из\",instruction:'Ваш список приоритетов отображается ниже. Если хотите, вы можете изменить порядок вариантов с помощью стрелок. Нажмите \"Далее\", чтобы подтвердить выбор и продолжить.'},ja:{selectUpTo:\"最大\",options:\"個のオプションを選択\",thenOrder:\"その後並べ替えてください\",selectOptions:\"オプションを選択\",cancel:\"キャンセル\",confirm:\"確認\",selectOptionNumber:\"オプション # を選択\",prioritized:\"優先順位\",of:\"のうち\",instruction:\"優先順位リストは以下に表示されます。必要に応じて、矢印を使って選択肢を並べ替えることができます。「次へ」をクリックして選択を確定し、続行してください。\"},zh:{selectUpTo:\"最多选择\",options:\"个选项\",thenOrder:\"然后排序它们\",selectOptions:\"选择选项\",cancel:\"取消\",confirm:\"确认\",selectOptionNumber:\"选择选项 #\",prioritized:\"已优先\",of:\"共\",instruction:\"你的优先列表如下所示。如有需要,可以使用箭头重新排序选项。点击“下一步”确认选择并继续。\"},ko:{selectUpTo:\"최대\",options:\"개의 옵션 선택\",thenOrder:\"그런 다음 정렬하세요\",selectOptions:\"옵션 선택\",cancel:\"취소\",confirm:\"확인\",selectOptionNumber:\"옵션 # 선택\",prioritized:\"우선순위\",of:\"중\",instruction:'우선순위 목록은 아래에 표시됩니다. 원한다면 화살표를 사용해 선택 항목을 재정렬할 수 있습니다. \"다음\"을 클릭하여 선택을 확인하고 계속하세요.'},ar:{selectUpTo:\"اختر حتى\",options:\"خيارات\",thenOrder:\"ثم رتبها\",selectOptions:\"اختر الخيارات\",cancel:\"إلغاء\",confirm:\"تأكيد\",selectOptionNumber:\"اختر الخيار #\",prioritized:\"تم الترتيب\",of:\"من\",instruction:'تظهر قائمة الأولويات الخاصة بك أدناه. إذا رغبت، يمكنك إعادة ترتيب اختياراتك باستخدام الأسهم. انقر على \"التالي\" لتأكيد اختيارك والمتابعة.'},bn:{selectUpTo:\"সর্বোচ্চ নির্বাচন করুন\",options:\"টি বিকল্প\",thenOrder:\"তারপর সেগুলো সাজান\",selectOptions:\"বিকল্প নির্বাচন করুন\",cancel:\"বাতিল\",confirm:\"নিশ্চিত করুন\",selectOptionNumber:\"বিকল্প # নির্বাচন করুন\",prioritized:\"অগ্রাধিকারপ্রাপ্ত\",of:\"এর মধ্যে\",instruction:\"আপনার অগ্রাধিকার তালিকা নিচে দেখানো হয়েছে। চাইলে তীর চিহ্ন ব্যবহার করে আপনার পছন্দগুলো পুনরায় সাজাতে পারেন। “পরবর্তী” ক্লিক করে আপনার নির্বাচন নিশ্চিত করুন এবং এগিয়ে যান।\"},da:{selectUpTo:\"Vælg op til\",options:\"muligheder\",thenOrder:\"og sorter dem derefter\",selectOptions:\"Vælg muligheder\",cancel:\"Annuller\",confirm:\"Bekræft\",selectOptionNumber:\"Vælg mulighed #\",prioritized:\"Prioriteret\",of:\"af\",instruction:'Din prioritetsliste vises nedenfor. Hvis du ønsker det, kan du omarrangere dine valg ved hjælp af pilene. Klik på \"Næste\" for at bekræfte dit valg og fortsætte.'},fi:{selectUpTo:\"Valitse enintään\",options:\"vaihtoehtoa\",thenOrder:\"ja järjestä ne sitten\",selectOptions:\"Valitse vaihtoehdot\",cancel:\"Peruuta\",confirm:\"Vahvista\",selectOptionNumber:\"Valitse vaihtoehto #\",prioritized:\"Priorisoitu\",of:\" / \",instruction:'Prioriteettilistasi näkyy alla. Voit halutessasi järjestää valinnat uudelleen nuolien avulla. Napsauta \"Seuraava\" vahvistaaksesi valinnan ja jatkaaksesi.'},sv:{selectUpTo:\"Välj upp till\",options:\"alternativ\",thenOrder:\"och ordna dem sedan\",selectOptions:\"Välj alternativ\",cancel:\"Avbryt\",confirm:\"Bekräfta\",selectOptionNumber:\"Välj alternativ #\",prioritized:\"Prioriterat\",of:\"av\",instruction:'Din prioriteringslista visas nedan. Om du vill kan du ordna om dina val med hjälp av pilarna. Klicka på \"Nästa\" för att bekräfta ditt val och fortsätta.'},no:{selectUpTo:\"Velg opptil\",options:\"alternativer\",thenOrder:\"og ordne dem deretter\",selectOptions:\"Velg alternativer\",cancel:\"Avbryt\",confirm:\"Bekreft\",selectOptionNumber:\"Velg alternativ #\",prioritized:\"Prioritert\",of:\"av\",instruction:'Prioriteringslisten din vises nedenfor. Hvis du ønsker det, kan du ordne valgene dine ved hjelp av pilene. Klikk på \"Neste\" for å bekrefte valget ditt og fortsette.'}};return t[t[o]?o:\"en\"][e]},d=document.createElement(\"div\");if(d.classList.add(\"magicfeedback-priority-list-container\"),r&&s&&s>0){const e=[],r=document.createElement(\"div\");r.classList.add(\"magicfeedback-priority-list-header\");const o=document.createElement(\"div\");o.classList.add(\"magicfeedback-priority-list-instruction\"),o.textContent=\"\"!==a?a:`${l(\"instruction\")}`,o.style.display=\"none\";const c=document.createElement(\"button\");c.type=\"button\",c.textContent=l(\"selectOptions\"),c.classList.add(\"magicfeedback-button\"),c.classList.add(\"magicfeedback-priority-list-open-btn\"),r.appendChild(c),r.appendChild(o);const u=document.createElement(\"div\");u.classList.add(\"magicfeedback-priority-list-reorder\");const p=document.createElement(\"ul\");p.classList.add(\"magicfeedback-priority-list-list\"),u.appendChild(p);const h=()=>{p.innerHTML=\"\",e.forEach(((t,n)=>{const r=document.createElement(\"li\");r.classList.add(\"magicfeedback-priority-list-item\");const s=document.createElement(\"input\");s.classList.add(\"magicfeedback-input-magicfeedback-priority-list\"),s.classList.add(\"magicfeedback-input\"),s.type=\"hidden\",s.id=`priority-list-${i}`,s.name=i,s.value=`${n+1}. ${t}`,r.appendChild(s);const o=document.createElement(\"label\");o.classList.add(\"magicfeedback-priority-list-item-label\"),o.textContent=`${n+1}. ${t}`,r.appendChild(o);const a=document.createElement(\"div\");a.classList.add(\"magicfeedback-priority-list-arrows\");const l=document.createElement(\"img\");l.classList.add(\"magicfeedback-priority-list-arrow-up\"),l.src=\"https://magicfeedback-c6458-dev.web.app/assets/arrow.svg\",l.style.visibility=0===n?\"hidden\":\"visible\";const d=document.createElement(\"img\");d.classList.add(\"magicfeedback-priority-list-arrow-down\"),d.src=\"https://magicfeedback-c6458-dev.web.app/assets/arrow.svg\",d.style.transform=\"rotate(180deg)\",d.style.visibility=n===e.length-1?\"hidden\":\"visible\",l.addEventListener(\"click\",(()=>{var i,n,a,c;const u=r.previousElementSibling;if(u){const h=Number(null===(i=s.value)||void 0===i?void 0:i.split(\".\")[0])-1;s.value=`${h}. ${t}`,o.textContent=`${h}. ${t}`,l.style.visibility=1===h?\"hidden\":\"visible\",d.style.visibility=h===e.length?\"hidden\":\"visible\";const m=u.querySelector(\".magicfeedback-input-magicfeedback-priority-list\"),f=u.querySelector(\".magicfeedback-priority-list-item-label\"),g=u.querySelector(\".magicfeedback-priority-list-arrow-up\"),v=u.querySelector(\".magicfeedback-priority-list-arrow-down\");if(m&&f&&g&&v){const t=Number(null===(n=m.value)||void 0===n?void 0:n.split(\".\")[0])+1;m.value=`${t}.${null===(a=f.textContent)||void 0===a?void 0:a.split(\".\")[1]}`,f.textContent=`${t}.${null===(c=f.textContent)||void 0===c?void 0:c.split(\".\")[1]}`,g.style.visibility=1===t?\"hidden\":\"visible\",v.style.visibility=t===e.length?\"hidden\":\"visible\"}p.insertBefore(r,u)}})),d.addEventListener(\"click\",(()=>{var i,n,a;const c=r.nextElementSibling;if(c){const u=Number(null===(i=s.value)||void 0===i?void 0:i.split(\".\")[0])+1;s.value=`${u}. ${t}`,o.textContent=`${u}. ${t}`,l.style.visibility=1===u?\"hidden\":\"visible\",d.style.visibility=u===e.length?\"hidden\":\"visible\";const h=c.querySelector(\".magicfeedback-input-magicfeedback-priority-list\"),m=c.querySelector(\".magicfeedback-priority-list-item-label\"),f=c.querySelector(\".magicfeedback-priority-list-arrow-up\"),g=c.querySelector(\".magicfeedback-priority-list-arrow-down\");if(h&&m&&f&&g){const t=Number(h.value.split(\".\")[0])-1;h.value=`${t}.${null===(n=m.textContent)||void 0===n?void 0:n.split(\".\")[1]}`,m.textContent=`${t}.${null===(a=m.textContent)||void 0===a?void 0:a.split(\".\")[1]}`,f.style.visibility=1===t?\"hidden\":\"visible\",g.style.visibility=t===e.length?\"hidden\":\"visible\"}p.insertBefore(c,r)}})),a.appendChild(l),a.appendChild(d),r.appendChild(a),p.appendChild(r)}))},m=document.createElement(\"div\");m.classList.add(\"magicfeedback-modal-backdrop\"),m.style.position=\"fixed\",m.style.top=\"0\",m.style.left=\"0\",m.style.width=\"100vw\",m.style.height=\"100vh\",m.style.background=\"rgba(0,0,0,0.4)\",m.style.display=\"none\",m.style.alignItems=\"center\",m.style.justifyContent=\"center\",m.style.zIndex=\"9999\";const f=document.createElement(\"div\");f.classList.add(\"magicfeedback-modal\"),f.style.background=\"#fff\",f.style.borderRadius=\"8px\",f.style.boxShadow=\"0 8px 24px rgba(0,0,0,0.2)\",f.style.maxWidth=\"520px\",f.style.width=\"90%\",f.style.maxHeight=\"80vh\",f.style.display=\"flex\",f.style.flexDirection=\"column\",f.style.overflow=\"hidden\",f.style.padding=\"16px\",f.style.position=\"relative\";const g=document.createElement(\"h5\");g.classList.add(\"magicfeedback-modal-title\"),g.style.flexShrink=\"0\",g.style.marginTop=\"0\";const v=()=>Math.min(e.length+1,s),y=()=>{g.textContent=`${l(\"selectOptionNumber\")}${v()}`};y();const b=document.createElement(\"div\");b.classList.add(\"magicfeedback-modal-list\"),b.style.flex=\"1 1 auto\",b.style.overflowY=\"auto\",b.style.minHeight=\"0\",(n?[...t].sort((()=>Math.random()-.5)):[...t]).forEach((t=>{const n=document.createElement(\"label\");n.classList.add(\"magicfeedback-modal-row\");const r=document.createElement(\"input\");r.type=\"checkbox\",r.classList.add(\"magicfeedback-input\"),r.name=`${i}-selection`,r.value=t;const o=document.createElement(\"span\");o.textContent=t,r.addEventListener(\"change\",(()=>{if(r.checked){if(e.length>=s)return r.checked=!1,n.classList.add(\"magicfeedback-warning\"),void setTimeout((()=>{n.classList.remove(\"magicfeedback-warning\")}),800);e.push(t)}else{const i=e.indexOf(t);-1!==i&&e.splice(i,1)}y(),k()})),n.appendChild(r),n.appendChild(o),b.appendChild(n)}));const E=document.createElement(\"div\");E.classList.add(\"magicfeedback-modal-actions\"),E.style.flexShrink=\"0\";const A=document.createElement(\"div\");A.classList.add(\"magicfeedback-modal-counter\");const k=()=>{const t=l(\"of\");A.textContent=`${l(\"prioritized\")} ${e.length} ${t} ${s}`,o.style.display=e.length>0?\"block\":\"none\"};k();const C=document.createElement(\"button\");C.type=\"button\",C.classList.add(\"magicfeedback-modal-close\"),C.setAttribute(\"aria-label\",l(\"cancel\")),C.title=l(\"cancel\"),C.textContent=\"×\",C.style.position=\"absolute\",C.style.top=\"8px\",C.style.right=\"8px\",C.style.border=\"none\",C.style.background=\"transparent\",C.style.fontSize=\"24px\",C.style.cursor=\"pointer\";const T=()=>{document.body.appendChild(m),m.style.display=\"flex\",y(),k()},P=()=>{m.style.display=\"none\",d.appendChild(m)};C.addEventListener(\"click\",(()=>{P()}));const O=document.createElement(\"button\");return O.type=\"button\",O.textContent=l(\"confirm\"),O.classList.add(\"magicfeedback-button\"),O.classList.add(\"magicfeedback-button-primary\"),O.addEventListener(\"click\",(()=>{P(),h()})),E.appendChild(A),E.appendChild(O),f.appendChild(C),f.appendChild(g),f.appendChild(b),f.appendChild(E),m.appendChild(f),c.addEventListener(\"click\",(()=>{T()})),m.addEventListener(\"click\",(e=>{e.target===m&&P()})),d.appendChild(r),d.appendChild(u),d.appendChild(m),h(),d}const c=document.createElement(\"ul\");c.classList.add(\"magicfeedback-priority-list-list\");const u=n?[...t].sort((()=>Math.random()-.5)):[...t];return u.forEach(((e,t)=>{const n=document.createElement(\"li\");n.classList.add(\"magicfeedback-priority-list-item\"),n.style.display=\"flex\",n.style.justifyContent=\"space-between\",n.style.alignItems=\"center\",n.style.margin=\"5px\";const r=document.createElement(\"input\");r.classList.add(\"magicfeedback-input-magicfeedback-priority-list\"),r.classList.add(\"magicfeedback-input\"),r.type=\"hidden\",r.id=`priority-list-${i}`,r.name=i,r.value=`${t+1}. ${e}`,n.appendChild(r);const s=document.createElement(\"label\");s.classList.add(\"magicfeedback-priority-list-item-label\"),s.textContent=`${t+1}. ${e}`,n.appendChild(s);const o=document.createElement(\"div\");o.style.display=\"flex\",o.style.alignItems=\"center\",o.style.justifyContent=\"space-between\";const a=document.createElement(\"img\");a.classList.add(\"magicfeedback-priority-list-arrow-up\"),a.src=\"https://magicfeedback-c6458-dev.web.app/assets/arrow.svg\",a.style.width=\"20px\",a.style.height=\"20px\",a.style.cursor=\"pointer\",a.style.margin=\"0 5px\",a.style.color=\"#000\",a.style.visibility=0===t?\"hidden\":\"visible\",a.addEventListener(\"click\",(()=>{var t,i,o,d;const p=n.previousElementSibling;if(p){const h=Number(null===(t=r.value)||void 0===t?void 0:t.split(\".\")[0])-1;r.value=`${h}. ${e}`,s.textContent=`${h}. ${e}`,a.style.visibility=1===h?\"hidden\":\"visible\",l.style.visibility=h===u.length?\"hidden\":\"visible\";const m=p.querySelector(\".magicfeedback-input-magicfeedback-priority-list\"),f=p.querySelector(\".magicfeedback-priority-list-item-label\"),g=p.querySelector(\".magicfeedback-priority-list-arrow-up\"),v=p.querySelector(\".magicfeedback-priority-list-arrow-down\");if(m&&f&&g&&v){const e=Number(null===(i=m.value)||void 0===i?void 0:i.split(\".\")[0])+1;m.value=`${e}.${null===(o=f.textContent)||void 0===o?void 0:o.split(\".\")[1]}`,f.textContent=`${e}.${null===(d=f.textContent)||void 0===d?void 0:d.split(\".\")[1]}`,g.style.visibility=1===e?\"hidden\":\"visible\",v.style.visibility=e===u.length?\"hidden\":\"visible\"}c.insertBefore(n,p)}}));const l=document.createElement(\"img\");l.classList.add(\"magicfeedback-priority-list-arrow-down\"),l.src=\"https://magicfeedback-c6458-dev.web.app/assets/arrow.svg\",l.style.width=\"20px\",l.style.height=\"20px\",l.style.cursor=\"pointer\",l.style.margin=\"0 5px\",l.style.color=\"#000\",l.style.transform=\"rotate(180deg)\",l.style.visibility=t===u.length-1?\"hidden\":\"visible\",l.addEventListener(\"click\",(()=>{var t,i,o;const d=n.nextElementSibling;if(d){const p=Number(null===(t=r.value)||void 0===t?void 0:t.split(\".\")[0])+1;r.value=`${p}. ${e}`,s.textContent=`${p}. ${e}`,a.style.visibility=1===p?\"hidden\":\"visible\",l.style.visibility=p===u.length?\"hidden\":\"visible\";const h=d.querySelector(\".magicfeedback-input-magicfeedback-priority-list\"),m=d.querySelector(\".magicfeedback-priority-list-item-label\"),f=d.querySelector(\".magicfeedback-priority-list-arrow-up\"),g=d.querySelector(\".magicfeedback-priority-list-arrow-down\");if(h&&m&&f&&g){const e=Number(h.value.split(\".\")[0])-1;h.value=`${e}.${null===(i=m.textContent)||void 0===i?void 0:i.split(\".\")[1]}`,m.textContent=`${e}.${null===(o=m.textContent)||void 0===o?void 0:o.split(\".\")[1]}`,f.style.visibility=1===e?\"hidden\":\"visible\",g.style.visibility=e===u.length?\"hidden\":\"visible\"}c.insertBefore(d,n)}})),o.appendChild(a),o.appendChild(l),n.appendChild(o),c.appendChild(n)})),d.appendChild(c),d}({value:e.value,ref:e.ref,randomPosition:t,limitPriority:(null===(n=e.assets)||void 0===n?void 0:n.limitPriority)||!1,maxPriority:(null===(r=e.assets)||void 0===r?void 0:r.maxPriority)||0,placeholder:(null===(s=e.assets)||void 0===s?void 0:s.placeholder)||\"\",language:i||\"en\"});return o.appendChild(a),{element:o,elementTypeClass:\"magicfeedback-priority-list\"}}},152:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderRatingEmoji=void 0;const n=i(559),r=\"https://survey-dev.magicfeedback.io/assets/emojis\";t.renderRatingEmoji=({question:e,url:t,send:i,urlParamValue:s})=>{const{ref:o,assets:a}=e,l=document.createElement(\"div\"),d=\"magicfeedback-rating\",c=document.createElement(\"div\");c.classList.add(\"magicfeedback-rating-container\");const u=(null==a?void 0:a.max)?Number(null==a?void 0:a.max):5,p=(null==a?void 0:a.min)?Number(null==a?void 0:a.min):1,h=(0,n.createRatingPlaceholder)(null==a?void 0:a.minPlaceholder,null==a?void 0:a.maxPlaceholder);for(let e=p;e<=u;e++){const n=document.createElement(\"div\");n.classList.add(\"magicfeedback-rating-option\");const a=document.createElement(\"label\");a.htmlFor=`rating-${o}-${e}`,a.classList.add(\"magicfeedback-rating-option-label-container\");const l=document.createElement(\"label\");l.htmlFor=`rating-${o}-${e}`,l.textContent=e.toString();const h=document.createElement(\"img\");if(h.alt=`face-${o}-${e}`,h.className=`rating-image${e}`,0===p&&10===u)h.src=`${t}/${e}.svg`,h.onerror=()=>h.src=`${r}/${e}.svg`;else if(1===p&&5===u)switch(e){case 1:h.src=`${t}/1.svg`,h.onerror=()=>h.src=`${r}/1.svg`;break;case 2:h.src=`${t}/2.svg`,h.onerror=()=>h.src=`${r}/2.svg`;break;case 3:h.src=`${t}/6.svg`,h.onerror=()=>h.src=`${r}/6.svg`;break;case 4:h.src=`${t}/9.svg`,h.onerror=()=>h.src=`${r}/9.svg`;break;case 5:h.src=`${t}/10.svg`,h.onerror=()=>h.src=`${r}/10.svg`}else{const i=Math.round(10/(u-p)*(e-p));h.src=`${t}/${i}.svg`,h.onerror=()=>h.src=`${r}/${i}.svg`}const m=document.createElement(\"input\");m.id=`rating-${o}-${e}`,m.type=\"radio\",m.name=o,m.value=e.toString(),m.classList.add(d),m.classList.add(\"magicfeedback-input\"),i&&m.addEventListener(\"change\",(()=>{i()})),s&&s===m.value&&(m.checked=!0),a.appendChild(m),a.appendChild(h),a.appendChild(l),n.appendChild(a),c.appendChild(n)}if((null==a?void 0:a.extraOption)&&(null==a?void 0:a.extraOptionText)){const e=document.createElement(\"div\");e.classList.add(\"magicfeedback-rating-option\");const t=document.createElement(\"label\");t.htmlFor=`rating-${o}-extra`,t.classList.add(\"magicfeedback-rating-option-label-container\");const n=document.createElement(\"label\");n.htmlFor=`rating-${o}-extra`,n.textContent=null==a?void 0:a.extraOptionText;const r=document.createElement(\"img\");r.src=\"https://magicfeedback-c6458-dev.web.app/assets/question.svg\",r.alt=`face-${o}-extra`,r.className=\"magicfeedback-rating-image-extra\";const s=document.createElement(\"input\");s.id=`rating-${o}-extra`,s.type=\"radio\",s.name=o,s.value=\"-\",s.classList.add(d),s.classList.add(\"magicfeedback-input\"),i&&s.addEventListener(\"change\",(()=>{i()})),t.appendChild(s),t.appendChild(r),t.appendChild(n),e.appendChild(t),c.appendChild(e)}return h.childElementCount>0&&c.appendChild(h),l.appendChild(c),{element:l,elementTypeClass:d}}},917:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderRatingNumber=void 0;const n=i(559);t.renderRatingNumber=({question:e,order:t,direction:i,send:r,urlParamValue:s})=>{const o=\"magicfeedback-rating-number\";return{element:(0,n.createRatingNumberElement)(e.ref,e.assets,t,i,o,r,s),elementTypeClass:o}}},452:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderRatingStar=void 0;const n=i(559);t.renderRatingStar=({question:e,send:t,urlParamValue:i})=>{var r,s;const o=document.createElement(\"div\"),a=(0,n.createStarRating)(e.ref,null===(r=e.assets)||void 0===r?void 0:r.minPlaceholder,null===(s=e.assets)||void 0===s?void 0:s.maxPlaceholder,t,i);return o.appendChild(a),{element:o,elementTypeClass:\"magicfeedback-rating-star\"}}},85:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderSelect=void 0;const n=i(516);t.renderSelect=({question:e,format:t,language:i,urlParamValue:r})=>{const{title:s,value:o,defaultValue:a}=e,l=document.createElement(\"select\"),d=document.createElement(\"option\");return d.value=\"\",d.text=\"slim\"===t?(0,n.parseTitle)(s,i):a||\"Select an option\",d.disabled=!0,d.selected=!0,l.appendChild(d),o.forEach((e=>{const t=document.createElement(\"option\");t.value=e,t.text=e,l.appendChild(t)})),r&&o.includes(r)&&(l.value=r),{element:l,elementTypeClass:\"magicfeedback-select\"}}},90:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderText=void 0;const n=i(784);t.renderText=({language:e,placeholderText:t,urlParamValue:i,send:r})=>{const s=document.createElement(\"input\");return s.type=\"text\",s.placeholder=t||n.placeholder.answer(e||\"en\"),i&&(s.value=i),s.addEventListener(\"keyup\",(e=>{e.preventDefault(),\"Enter\"===e.key&&r&&r()})),{element:s,elementTypeClass:\"magicfeedback-text\"}}},250:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderUploadFile=void 0;const n=i(571);t.renderUploadFile=({question:e,language:t})=>(0,n.createUploadControl)(e,t,\"file\")},843:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderUploadImage=void 0;const n=i(571);t.renderUploadImage=({question:e,language:t})=>(0,n.createUploadControl)(e,t,\"image\")},571:function(e,t,i){\"use strict\";var n=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createUploadControl=t.awaitUploadReady=t.getUploadValues=t.formatFileSize=void 0;const r=i(784),s=i(516),o=\"__mfUploadValues\",a=\"__mfUploadReady\";function l(e){if(\"number\"!=typeof e||isNaN(e))return\"\";if(e<1024)return`${e} B`;const t=e/1024;if(t<1024)return`${t<10?t.toFixed(1):Math.round(t)} KB`;const i=t/1024;return`${i<10?i.toFixed(1):Math.round(i)} MB`}t.formatFileSize=l,t.getUploadValues=function(e){const t=e[o];return Array.isArray(t)?t:[]},t.awaitUploadReady=function(e){return n(this,void 0,void 0,(function*(){if(!e)return;const t=Array.from(e.querySelectorAll(\".magicfeedback-upload-native\"));yield Promise.all(t.map((e=>e[a])).filter(Boolean))}))},t.createUploadControl=function(e,t,i){const{ref:n,require:d,title:c,assets:u}=e,p=\"image\"===i?\"magicfeedback-upload-image\":\"magicfeedback-upload-file\",h=(null==u?void 0:u.multiple)||!1,m=h?(null==u?void 0:u.maxFiles)||0:1,f=Number(null==u?void 0:u.maxFileSize)>0?Number(null==u?void 0:u.maxFileSize):0,g=1024*f*1024,v=document.createElement(\"div\");v.classList.add(\"magicfeedback-upload\");const y=document.createElement(\"input\");y.type=\"file\",\"image\"===i&&(y.accept=\"image/*\"),y.multiple=h,y.required=d,y.name=n,y.id=`magicfeedback-upload-input-${n}`,y.classList.add(p),y.classList.add(\"magicfeedback-input\"),y.classList.add(\"magicfeedback-upload-native\"),y[o]=[],y[a]=Promise.resolve();const b=(0,s.parseTitle)(c,t);b&&y.setAttribute(\"aria-label\",b);const E=document.createElement(\"div\");E.classList.add(\"magicfeedback-upload-dropzone\");const A=document.createElement(\"span\");A.classList.add(\"magicfeedback-upload-icon\"),A.innerHTML=\"image\"===i?'<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"/><path d=\"M21 15l-5-5L5 21\"/></svg>':'<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M16 16l-4-4-4 4\"/><path d=\"M12 12v9\"/><path d=\"M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3\"/></svg>';const k=document.createElement(\"span\");k.classList.add(\"magicfeedback-upload-cta\"),k.textContent=r.placeholder.upload.cta(t);const C=document.createElement(\"span\");C.classList.add(\"magicfeedback-upload-hint\"),C.textContent=function(e,t,i,n,s){const o=[r.placeholder.upload.formats(e,t)];return i&&n>0&&o.push(r.placeholder.upload.maxFiles(e,n)),s>0&&o.push(r.placeholder.upload.maxSize(e,s)),o.filter(Boolean).join(\" · \")}(t,i,h,m,f),E.appendChild(y),E.appendChild(A),E.appendChild(k),E.appendChild(C);const T=document.createElement(\"div\");T.classList.add(\"magicfeedback-upload-error\");const P=document.createElement(\"ul\");P.classList.add(\"magicfeedback-upload-list\"),v.appendChild(E),v.appendChild(T),v.appendChild(P);const O=new WeakMap,x=e=>{const t=O.get(e);return t?Promise.resolve(t):new Promise((t=>{const i=new FileReader,n=i=>{const n=JSON.stringify({name:e.name,type:e.type,size:e.size,content:i});O.set(e,n),t(n)};i.onload=()=>n(\"string\"==typeof i.result?i.result:\"\"),i.onerror=()=>n(\"\"),i.readAsDataURL(e)}))},w=[],L=e=>{try{const t=m>0?e.slice(0,m):e,i=new DataTransfer;t.forEach((e=>i.items.add(e))),y.files=i.files}catch(e){}!function(){w.forEach((e=>URL.revokeObjectURL(e))),w.length=0,P.innerHTML=\"\";const e=Array.from(y.files||[]);v.classList.toggle(\"magicfeedback-upload--has-files\",e.length>0),e.forEach(((e,n)=>{const s=document.createElement(\"li\");s.classList.add(\"magicfeedback-upload-file-item\");const o=document.createElement(\"span\");if(o.classList.add(\"magicfeedback-upload-thumb\"),\"image\"===i&&e.type.startsWith(\"image/\")){const t=URL.createObjectURL(e);w.push(t);const i=document.createElement(\"img\");i.src=t,i.alt=e.name,o.appendChild(i)}else o.innerHTML='<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"/><path d=\"M14 2v6h6\"/></svg>';const a=document.createElement(\"span\");a.classList.add(\"magicfeedback-upload-file-info\");const d=document.createElement(\"span\");d.classList.add(\"magicfeedback-upload-file-name\"),d.textContent=e.name,d.title=e.name;const c=document.createElement(\"span\");c.classList.add(\"magicfeedback-upload-file-size\"),c.textContent=l(e.size),a.appendChild(d),a.appendChild(c);const u=document.createElement(\"button\");u.type=\"button\",u.classList.add(\"magicfeedback-upload-remove\"),u.setAttribute(\"aria-label\",`${r.placeholder.upload.remove(t)}: ${e.name}`),u.innerHTML='<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M18 6 6 18\"/><path d=\"m6 6 12 12\"/></svg>',u.addEventListener(\"click\",(e=>{e.preventDefault(),e.stopPropagation(),L(Array.from(y.files||[]).filter(((e,t)=>t!==n)))})),s.appendChild(o),s.appendChild(a),s.appendChild(u),P.appendChild(s)}))}(),(()=>{const e=Array.from(y.files||[]),t=Promise.all(e.map(x)).then((e=>{y[o]=e}));y[a]=t})()},S=e=>{if(!e.length)return T.textContent=\"\",void T.classList.remove(\"is-visible\");const i=e.map((e=>e.name)).join(\", \");T.textContent=`${r.placeholder.upload.tooLarge(t,f)}: ${i}`,T.classList.add(\"is-visible\")},N=e=>{if(!g)return{accepted:e,rejected:[]};const t=[],i=[];return e.forEach((e=>(e.size<=g?t:i).push(e))),{accepted:t,rejected:i}};y.addEventListener(\"change\",(()=>{const{accepted:e,rejected:t}=N(Array.from(y.files||[]));S(t),L(e)}));const I=e=>{e.preventDefault(),e.stopPropagation()};return[\"dragenter\",\"dragover\"].forEach((e=>E.addEventListener(e,(e=>{I(e),E.classList.add(\"is-dragover\")})))),[\"dragleave\",\"dragend\"].forEach((e=>E.addEventListener(e,(e=>{I(e),E.classList.remove(\"is-dragover\")})))),E.addEventListener(\"drop\",(e=>{I(e),E.classList.remove(\"is-dragover\");const t=e.dataTransfer;let n=t?Array.from(t.files):[];if(\"image\"===i&&(n=n.filter((e=>e.type.startsWith(\"image/\")))),!n.length)return;const{accepted:r,rejected:s}=N(n);if(S(s),!r.length)return;const o=h?Array.from(y.files||[]):[];L(o.concat(r))})),{element:v,elementTypeClass:p}}},945:function(e,t,i){\"use strict\";var n=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.nextAgentTurn=t.startAgentSurvey=void 0;const s=r(i(326)),o=i(313),a=i(857),l=i(279);function d(e,t,i,r,a){var d;return n(this,void 0,void 0,(function*(){let n;try{n=yield(0,s.default)(e+t,{method:\"POST\",headers:Object.assign({\"Content-Type\":\"application/json\"},o.header),body:JSON.stringify(i)})}catch(e){throw r.err(`[agentSurvey/${a}] network error`,e),new l.AgentApiError(\"NETWORK\",(null==e?void 0:e.message)||\"Network error\")}if(!n.ok){let e=null;try{e=yield n.json()}catch(e){}const t=(0,l.mapAgentStatus)(n.status,a);throw r.err(`[agentSurvey/${a}] ${n.status}`,e),new l.AgentApiError(t,(null===(d=null==e?void 0:e.error)||void 0===d?void 0:d.message)||(null==e?void 0:e.message)||n.statusText,n.status,\"RATE_LIMITED\"===t?function(e){var t,i;const n=null===(i=null===(t=null==e?void 0:e.headers)||void 0===t?void 0:t.get)||void 0===i?void 0:i.call(t,\"Retry-After\"),r=n?Number(n):NaN;return Number.isFinite(r)&&r>0?1e3*r:6e4}(n):void 0,e)}try{const e=yield n.json();return r.log(`[agentSurvey/${a}] ok`,e),e}catch(e){throw new l.AgentApiError(\"MALFORMED\",\"Unreadable response body\",n.status)}}))}t.startAgentSurvey=function(e,t,i){return d(e,a.endpoints.sdk.agentSurveyStart,t,i,\"start\")},t.nextAgentTurn=function(e,t,i){return d(e,a.endpoints.sdk.agentSurveyNext,t,i,\"next\")}},279:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.mapAgentStatus=t.AgentApiError=void 0;class i extends Error{constructor(e,t,n,r,s){super(t),this.kind=e,this.status=n,this.retryAfterMs=r,this.body=s,this.name=\"AgentApiError\",Object.setPrototypeOf(this,i.prototype)}get retryable(){return\"RATE_LIMITED\"===this.kind||\"AI_UNAVAILABLE\"===this.kind||\"NETWORK\"===this.kind}}t.AgentApiError=i,t.mapAgentStatus=function(e,t){return 429===e?\"RATE_LIMITED\":406===e||401===e||403===e?\"AUTH\":404===e?\"NOT_FOUND\":400===e||422===e?\"BAD_CONFIG\":e>=500?\"start\"===t?\"AI_UNAVAILABLE\":\"NETWORK\":\"MALFORMED\"}},177:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.encodeAnswer=t.toAgentStep=t.ratingBounds=t.mapAgentType=t.DEFAULT_ANSWER_DELIMITER=void 0;const n=i(558),r=i(516);t.DEFAULT_ANSWER_DELIMITER=\", \";const s=[n.FEEDBACKAPPANSWERTYPE.RADIO,n.FEEDBACKAPPANSWERTYPE.MULTIPLECHOICE,n.FEEDBACKAPPANSWERTYPE.SELECT,n.FEEDBACKAPPANSWERTYPE.MULTIPLECHOISE_IMAGE],o=Object.values(n.FEEDBACKAPPANSWERTYPE);function a(e,t,i){var a,l,d;const c=String(e||\"\").trim().toUpperCase();return\"RATING\"===c?n.FEEDBACKAPPANSWERTYPE.RATING_NUMBER:c===n.FEEDBACKAPPANSWERTYPE.CONTACT?(null===(a=i.log)||void 0===a||a.log(\"[agentSurvey] CONTACT has no renderer, falling back to TEXT\"),n.FEEDBACKAPPANSWERTYPE.TEXT):o.includes(c)?s.includes(c)&&0===t.length?(null===(d=i.log)||void 0===d||d.err(`[agentSurvey] ${c} arrived with no options, falling back to TEXT`),n.FEEDBACKAPPANSWERTYPE.TEXT):c!==n.FEEDBACKAPPANSWERTYPE.BOOLEAN||2!==t.length||function(e,t){if(2!==e.length)return!1;const i=e.map((e=>String(e).trim().toLowerCase())),n=(0,r.getBooleanOptions)(t).map((e=>e.toLowerCase())),s=[\"yes\",\"no\"];return i[0]===s[0]&&i[1]===s[1]||i[0]===n[0]&&i[1]===n[1]}(t,i.language)?c:n.FEEDBACKAPPANSWERTYPE.RADIO:(null===(l=i.log)||void 0===l||l.err(`[agentSurvey] unknown question type \"${e}\", falling back to TEXT`),n.FEEDBACKAPPANSWERTYPE.TEXT)}function l(e){const t=e.map(Number).filter((e=>Number.isFinite(e)));return t.length>=2?{min:Math.min(...t),max:Math.max(...t)}:{min:1,max:5}}function d(e,t,i){const r={randomPosition:!1,direction:\"row\",order:\"ltr\"};return e!==n.FEEDBACKAPPANSWERTYPE.RATING_NUMBER&&e!==n.FEEDBACKAPPANSWERTYPE.RATING_EMOJI||Object.assign(r,l(t)),e===n.FEEDBACKAPPANSWERTYPE.LONGTEXT&&(r.maxCharacters=0),Object.assign(Object.assign({},r),(null==i?void 0:i.assets)||{})}function c(e,t,i){var n,r,s,o;const{full:l,title:c}=t,u=[...null!==(r=null!==(n=e.questionValues)&&void 0!==n?n:null==l?void 0:l.value)&&void 0!==r?r:[]],p=a(null!==(s=null==l?void 0:l.type)&&void 0!==s?s:e.questionType,u,i),h=e.questionRef||(null==l?void 0:l.ref)||`agent-q-${e.currentTurn}`;return{id:(null==l?void 0:l.id)||`agent-${i.sessionId}-${e.currentTurn}`,title:c||\"\",type:p,questionType:{conf:null},ref:h,require:null===(o=null==l?void 0:l.require)||void 0===o||o,external_id:(null==l?void 0:l.external_id)||\"\",value:u,defaultValue:(null==l?void 0:l.defaultValue)||\"\",followup:!1,position:e.currentTurn,assets:d(p,u,l),refMetric:(null==l?void 0:l.refMetric)||\"\",integrationId:i.integrationId,integrationPageId:\"\",status:\"ACTIVE\"}}t.mapAgentType=a,t.ratingBounds=l,t.toAgentStep=function(e,t){var i,r,s;const o=e,a=e.currentTurn,l=e.maxTurns,d=o.coverageSummary,u=e=>({kind:\"END\",reason:e,currentTurn:a,maxTurns:l,coverageSummary:d});if(o.answerType===n.AGENT_ANSWER_TYPE_BLOCKED)return u(\"BLOCKED\");if(!0===o.shouldEnd)return u(\"SHOULD_END\");const p=function(e){const t=e.question&&\"object\"==typeof e.question?e.question:e.nextQuestion&&\"object\"==typeof e.nextQuestion?e.nextQuestion:null;if(t){const e=t,i=e.title;return{full:e,title:\"string\"==typeof i?i:i?JSON.stringify(i):null}}return{full:null,title:\"string\"==typeof e.nextQuestion?e.nextQuestion:null}}(e);return\"NONE\"===String(null!==(s=null!==(r=null===(i=p.full)||void 0===i?void 0:i.type)&&void 0!==r?r:e.questionType)&&void 0!==s?s:\"\").trim().toUpperCase()?u(\"TYPE_NONE\"):p.title&&p.title.trim()?{kind:\"QUESTION\",question:c(e,p,t),isFromBase:!0===e.isFromBase,currentTurn:a,maxTurns:l,topic:o.topic,coverageGaps:e.coverageGaps,coverageSummary:d}:u(\"NO_QUESTION\")},t.encodeAnswer=function(e,i,n=t.DEFAULT_ANSWER_DELIMITER){const r=i.ref,s=e=>e.flatMap((e=>Array.isArray(e.value)?e.value:[e.value])).map((e=>\"string\"==typeof e?e:JSON.stringify(e))).map((e=>(e||\"\").trim())).filter((e=>\"\"!==e)),o=s(e.filter((e=>e.key===r))),a=s(e.filter((e=>e.key===`extra-option-${r}`)));return[o.filter(((e,t)=>o.indexOf(e)===t)).join(n),a.join(n)].filter((e=>\"\"!==e)).join(n)}},107:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.scrapeInputs=void 0;const n=i(571);t.scrapeInputs=function(e){const t=e.querySelectorAll(\".magicfeedback-input\"),i=[],r={};return t.forEach((e=>{var t;const s=e,o=s.name;if(!o)return;const a=s.type;if((\"radio\"===a||\"checkbox\"===a)&&!s.checked)return;const l=s.value,d=s.classList[0];if((null==d?void 0:d.includes(\"magicfeedback-priority-list\"))||(null===(t=s.id)||void 0===t?void 0:t.startsWith(\"priority-list-\")))return r[o]||(r[o]=[]),void r[o].push(l);if(null==d?void 0:d.includes(\"magicfeedback-upload\")){const e=(0,n.getUploadValues)(s);return void(e.length&&i.push({key:o,value:e}))}const c=\"magicfeedback-consent\"===d?s.checked.toString():l;null!=c&&i.push({key:o,value:[c]})})),Object.entries(r).forEach((([e,t])=>{const n=t.slice().sort(((e,t)=>Number(e.split(\".\")[0])-Number(t.split(\".\")[0])));i.push({key:e,value:n})})),i}},857:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.endpoints=void 0,t.endpoints={sdk:{app:(e,t)=>`sdk/app/${e}/${t}`,app_info:(e,t)=>`sdk/app/${e}/${t}/info`,session:e=>`sdk/app/session/${e}/info`,feedback:\"sdk/feedback\",followUpQuestion:\"sdk/followUpQuestion\",agentSurveyStart:\"sdk/agentSurvey/start\",agentSurveyNext:\"sdk/agentSurvey/next\"}}},784:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.placeholder=void 0,t.placeholder={answer:e=>{switch(e){case\"en\":default:return\"Write your answer here...\";case\"es\":return\"Escribe tu respuesta aquí...\";case\"da\":return\"Skriv dit svar her...\";case\"fi\":return\"Kirjoita vastauksesi tähän...\";case\"sv\":return\"Skriv ditt svar här...\";case\"no\":return\"Skriv svaret ditt her...\";case\"ar\":return\"اكتب إجابتك هنا...\";case\"bn\":return\"এখানে আপনার\"}},number:e=>{switch(e){case\"en\":default:return\"Write your number here...\";case\"es\":return\"Escribe tu número aquí...\";case\"da\":return\"Skriv dit nummer her...\";case\"fi\":return\"Kirjoita numerosi tähän...\";case\"sv\":return\"Skriv ditt nummer här...\";case\"no\":return\"Skriv nummeret ditt her...\";case\"ar\":return\"اكتب رقمك هنا...\";case\"bn\":return\"এখানে আপনার\"}},email:e=>{switch(e){case\"en\":default:return\"Write your email here...\";case\"es\":return\"Escribe tu correo electrónico aquí...\";case\"da\":return\"Skriv din e-mail her...\";case\"fi\":return\"Kirjoita sähköpostiosoitteesi tähän...\";case\"sv\":return\"Skriv din e-post här...\";case\"no\":return\"Skriv e-posten din her...\";case\"ar\":return\"اكتب بريدك الإلكتروني هنا...\";case\"bn\":return\"এখানে আপনার\"}},date:e=>{switch(e){case\"en\":default:return\"Write your date here...\";case\"es\":return\"Escribe tu fecha aquí...\";case\"da\":return\"Skriv din dato her...\";case\"fi\":return\"Kirjoita päivämääräsi tähän...\";case\"sv\":return\"Skriv ditt datum här...\";case\"no\":return\"Skriv datoen din her...\";case\"ar\":return\"اكتب تاريخك هنا...\";case\"bn\":return\"এখানে আপনার\"}},password:e=>{switch(e){case\"en\":default:return\"Write your password here...\";case\"es\":return\"Escribe tu contraseña aquí...\";case\"da\":return\"Skriv dit kodeord her...\";case\"fi\":return\"Kirjoita salasanasi tähän...\";case\"sv\":return\"Skriv ditt lösenord här...\";case\"no\":return\"Skriv passordet ditt her...\";case\"ar\":return\"اكتب كلمة المرور الخاصة بك هنا...\";case\"bn\":return\"এখানে আপনার\"}},pointsystemerror:e=>{switch(e){case\"en\":default:return\"The total points must be 100 %\";case\"es\":return\"El total de puntos debe ser 100 %\";case\"da\":return\"Samlet antal point skal være 100 %\";case\"fi\":return\"Kokonaispisteiden on oltava 100 %\";case\"sv\":return\"Totala poäng måste vara 100 %\";case\"no\":return\"Totalt antall poeng må være 100 %\";case\"ar\":return\"يجب أن تكون النقاط الإجمالية 100 %\";case\"bn\":return\"মোট পয়েন্ট 100 % হতে হবে\"}},upload:{cta:e=>{switch(e){case\"es\":return\"Arrastra y suelta o haz clic para subir\";case\"da\":return\"Træk og slip eller klik for at uploade\";case\"fi\":return\"Vedä ja pudota tai napsauta ladataksesi\";case\"sv\":return\"Dra och släpp eller klicka för att ladda upp\";case\"no\":return\"Dra og slipp eller klikk for å laste opp\";case\"ar\":return\"اسحب وأفلت أو انقر للتحميل\";case\"bn\":return\"টেনে আনুন বা আপলোড করতে ক্লিক করুন\";default:return\"Drag & drop or click to upload\"}},formats:(e,t)=>{if(\"image\"===t)switch(e){case\"es\":return\"Solo imágenes\";case\"da\":return\"Kun billeder\";case\"fi\":return\"Vain kuvat\";case\"sv\":return\"Endast bilder\";case\"no\":return\"Kun bilder\";case\"ar\":return\"الصور فقط\";case\"bn\":return\"শুধুমাত্র ছবি\";default:return\"Images only\"}switch(e){case\"es\":return\"Cualquier tipo de archivo\";case\"da\":return\"Enhver filtype\";case\"fi\":return\"Mikä tahansa tiedostotyyppi\";case\"sv\":return\"Alla filtyper\";case\"no\":return\"Alle filtyper\";case\"ar\":return\"أي نوع من الملفات\";case\"bn\":return\"যেকোনো ধরনের ফাইল\";default:return\"Any file type\"}},maxFiles:(e,t)=>{switch(e){case\"es\":return`Máx. ${t} archivos`;case\"da\":return`Maks. ${t} filer`;case\"fi\":return`Enintään ${t} tiedostoa`;case\"sv\":return`Max ${t} filer`;case\"no\":return`Maks ${t} filer`;case\"ar\":return`${t} ملفات كحد أقصى`;case\"bn\":return`সর্বোচ্চ ${t}টি ফাইল`;default:return`Max ${t} files`}},maxSize:(e,t)=>{switch(e){case\"es\":return`Máx. ${t} MB`;case\"da\":return`Maks. ${t} MB`;case\"fi\":return`Enintään ${t} MB`;case\"sv\":case\"en\":default:return`Max ${t} MB`;case\"no\":return`Maks ${t} MB`;case\"ar\":return`${t} ميغابايت كحد أقصى`;case\"bn\":return`সর্বোচ্চ ${t} MB`}},tooLarge:(e,t)=>{switch(e){case\"es\":return`Archivo demasiado grande (máx. ${t} MB)`;case\"da\":return`Filen er for stor (maks. ${t} MB)`;case\"fi\":return`Tiedosto on liian suuri (enintään ${t} MB)`;case\"sv\":return`Filen är för stor (max ${t} MB)`;case\"no\":return`Filen er for stor (maks ${t} MB)`;case\"ar\":return`الملف كبير جدًا (الحد الأقصى ${t} ميغابايت)`;case\"bn\":return`ফাইলটি খুব বড় (সর্বোচ্চ ${t} MB)`;default:return`File is too large (max ${t} MB)`}},remove:e=>{switch(e){case\"es\":return\"Eliminar\";case\"da\":case\"no\":return\"Fjern\";case\"fi\":return\"Poista\";case\"sv\":return\"Ta bort\";case\"ar\":return\"إزالة\";case\"bn\":return\"সরান\";default:return\"Remove\"}}}}},213:(e,t,i)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.renderStartMessage=t.renderSuccess=t.renderError=t.renderActions=t.renderQuestions=void 0;const n=i(42),r=i(516),s={small:\"1rem\",medium:\"1.2rem\",large:\"1.5rem\"};t.renderQuestions=function e(t,i=\"standard\",o=\"en\",a={customIcons:!1},l){if(!t)throw new Error(\"[MagicFeedback] No questions provided\");const d=[],{customIcons:c,id:u}=a;return t.forEach((p=>{var h,m;if((null===(m=null===(h=null==p?void 0:p.questionType)||void 0===h?void 0:h.conf)||void 0===m?void 0:m.length)>0){let t=document.createElement(\"div\");t.classList.add(\"magicfeedback-div\");const n=document.createElement(\"label\");n.setAttribute(\"for\",`magicfeedback-${p.id}`),n.textContent=(0,r.parseTitle)(p.title,o),n.classList.add(\"magicfeedback-label\"),t.appendChild(n),p.questionType.conf.forEach((e=>{e.ref=p.ref,p.assets[e.id]&&(e.assets={placeholder:p.assets[e.id]})})),e(p.questionType.conf,i,o,a,l).forEach((e=>{t.appendChild(e)})),d.push(t)}else{const e=function(e,t,i,o,a){var l,d,c;let u,p,{id:h,title:m,type:f,ref:g,require:v,defaultValue:y,assets:b}=e,E=document.createElement(\"div\");E.classList.add(\"magicfeedback-div\");const A=window.innerWidth<600,k=\"slim\"===t?(0,r.parseTitle)(m,i):null==b?void 0:b.placeholder,C=(0,r.getUrlParam)(g),T=(null==b?void 0:b.maxCharacters)||0,P=void 0!==(null==b?void 0:b.randomPosition)&&(null==b?void 0:b.randomPosition),O=(null==b?void 0:b.direction)||\"row\",x=(null==b?void 0:b.order)||\"ltr\",w=(0,n.getQuestionRenderer)(f);if(!w)return E;{const n=w({question:e,format:t,language:i,url:o,send:a,isPhone:A,urlParamValue:C,placeholderText:k,maxCharacters:T,randomPosition:P,direction:O,order:x});u=n.element,p=n.elementTypeClass}u.id=`magicfeedback-${h}`,u.setAttribute(\"name\",g),u.classList.add(p),(void 0!==y||null!==C)&&(u.value=C||y),[\"RADIO\",\"MULTIPLECHOICE\",\"UPLOAD_IMAGE\",\"UPLOAD_FILE\"].includes(f)||(u.classList.add(\"magicfeedback-input\"),u.required=v);const L=document.createElement(\"label\");L.setAttribute(\"for\",`magicfeedback-${h}`),L.textContent=(0,r.parseTitle)(m,i),L.classList.add(\"magicfeedback-label\"),function(e,t){if(\"INFO_PAGE\"!==t.type)return;const{assets:i}=t,n=function(e){if(e)return s[e]||e}(null==i?void 0:i.titleSize),r=(o=null==i?void 0:i.titleStyle,Array.isArray(o)?o:o?[o]:[]);var o;n&&e.style.setProperty(\"font-size\",n,\"important\"),(null==i?void 0:i.titleAlign)&&(e.style.setProperty(\"width\",\"100%\",\"important\"),e.style.setProperty(\"align-self\",\"stretch\",\"important\"),e.style.setProperty(\"text-align\",i.titleAlign,\"important\")),r.includes(\"italic\")&&e.style.setProperty(\"font-style\",\"italic\",\"important\"),r.includes(\"bold\")&&e.style.setProperty(\"font-weight\",\"bold\",\"important\"),r.includes(\"underline\")&&e.style.setProperty(\"text-decoration\",\"underline\",\"important\")}(L,e);const S=document.createElement(\"label\");if(S.textContent=(0,r.parseTitle)(null==b?void 0:b.subtitle,i),S.classList.add(\"magicfeedback-sublabel\"),(null===(l=null==b?void 0:b.subtitleStyle)||void 0===l?void 0:l.includes(\"italic\"))&&(S.style.fontStyle=\"italic\"),(null===(d=null==b?void 0:b.subtitleStyle)||void 0===d?void 0:d.includes(\"bold\"))&&(S.style.fontWeight=\"bold\"),(null===(c=null==b?void 0:b.subtitleStyle)||void 0===c?void 0:c.includes(\"underline\"))&&(S.style.textDecoration=\"underline\"),[\"CONSENT\"].includes(f))E.classList.add(\"magicfeedback-consent-container\"),E.appendChild(u),E.appendChild(L),(null==b?void 0:b.subtitle)&&E.appendChild(S);else{if(\"slim\"!==t&&(E.appendChild(L),(null==b?void 0:b.subtitle)&&E.appendChild(S),void 0!==(null==b?void 0:b.general)&&\"\"!==(null==b?void 0:b.general))){const e=document.createElement(\"img\");e.src=null==b?void 0:b.general,e.classList.add(\"magicfeedback-image\"),e.style.maxWidth=\"auto\",e.style.height=\"400px\",e.style.margin=\"10px 0\",E.appendChild(e)}if(\"LONGTEXT\"===f&&T>0){const e=document.createElement(\"div\");if(e.classList.add(\"magicfeedback-counter\"),e.textContent=`${u.value.length}/${T}`,e.style.textAlign=\"right\",e.style.fontSize=\"15px\",e.style.marginTop=\"5px\",u.addEventListener(\"input\",(()=>{e.textContent=`${u.value.length}/${T}`})),E.appendChild(u),E.appendChild(e),(null==b?void 0:b.extraOption)&&(null==b?void 0:b.extraOptionText)){const e=document.createElement(\"div\");e.classList.add(\"magicfeedback-skip-container\"),e.classList.add(\"magicfeedback-checkbox-container\"),e.style.display=\"flex\",e.style.justifyContent=\"flex-start\";const t=document.createElement(\"input\");t.classList.add(\"magicfeedback-skip\"),t.type=\"checkbox\",t.id=`skip-${g}`,t.name=g,t.value=\"-\",t.style.cursor=\"pointer\";const i=document.createElement(\"label\");i.htmlFor=`skip-${g}`,i.textContent=null==b?void 0:b.extraOptionText,i.style.fontSize=\"15px\",i.style.cursor=\"pointer\",i.style.margin=\"0 5px\",t.addEventListener(\"click\",(()=>{u.value=\"-\",a&&a()})),e.appendChild(t),e.appendChild(i),E.appendChild(e)}}else E.appendChild(u)}return E}(p,i,o,\"https://survey-dev.magicfeedback.io/assets/emojis\"+(c?`/${u}`:\"\"),1===t.length?l:void 0);d.push(e)}})),d},t.renderActions=function(e=\"\",t,i=\"Submit\",n=\"Back\",r=\"Next\"){const s=document.createElement(\"div\");s.classList.add(\"magicfeedback-action-container\");const o=document.createElement(\"button\");o.id=\"magicfeedback-submit\",o.type=\"submit\",o.classList.add(\"magicfeedback-submit\"),o.textContent=\"MAGICSURVEY\"===e?r||\"Next\":i||\"Submit\";const a=document.createElement(\"button\");return a.id=\"magicfeedback-back\",a.type=\"button\",a.classList.add(\"magicfeedback-back\"),a.textContent=n||\"Back\",a.addEventListener(\"click\",t),a.addEventListener(\"click\",(()=>{o.removeAttribute(\"disabled\")})),\"MAGICSURVEY\"===e&&s.appendChild(a),s.appendChild(o),s},t.renderError=function(e){const t=document.createElement(\"div\");return t.classList.add(\"magicfeedback-error\"),t.textContent=e,t},t.renderSuccess=function(e){const t=document.createElement(\"div\");return t.classList.add(\"magicfeedback-success\"),t.textContent=e,t},t.renderStartMessage=function(e,t=!1,i=\"Go!\",n=()=>{}){const r=document.createElement(\"div\");r.classList.add(\"magicfeedback-start-message-container\");const s=document.createElement(\"div\");if(s.classList.add(\"magicfeedback-start-message\"),s.innerHTML=e,r.appendChild(s),t){const e=document.createElement(\"button\");e.id=\"magicfeedback-start-message-button\",e.classList.add(\"magicfeedback-start-message-button\"),e.textContent=i,e.addEventListener(\"click\",(()=>n())),r.appendChild(e)}return r}},313:function(e,t,i){\"use strict\";var n=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.getFollowUpQuestion=t.sendFeedback=t.getQuestions=t.getSessionForm=t.getForm=t.validateEmail=t.header=void 0;const s=r(i(326)),o=r(i(330)),a=i(857);t.header={Accept:\"application/json\",\"Magicfeedback-Sdk-Version\":o.default.version,\"x-magicfeedback-parameters\":window.location.search||\"\"},t.validateEmail=function(e){return/\\S+@\\S+\\.\\S+/.test(e)},t.getForm=function(e,i,r,o){return n(this,void 0,void 0,(function*(){try{const n=yield(0,s.default)(e+a.endpoints.sdk.app_info(i,r),{method:\"GET\",headers:t.header});return yield n.json()}catch(e){o.err(e)}}))},t.getSessionForm=function(e,i,r){return n(this,void 0,void 0,(function*(){try{const n=yield(0,s.default)(e+a.endpoints.sdk.session(i),{method:\"GET\",headers:t.header});return yield n.json()}catch(e){r.err(e)}}))},t.getQuestions=function(e,i,r,o){return n(this,void 0,void 0,(function*(){try{const n=yield(0,s.default)(e+a.endpoints.sdk.app(i,r),{method:\"GET\",headers:t.header});if(n.ok){const e=yield n.json();return o.log(`Received questions for app ${i}`,e),e}throw o.err(`Failed to get questions for app ${i}:`,n.status,n.statusText),new Error(\"[MagicFeedback] Bad response from server\")}catch(e){return o.err(e),[]}}))},t.sendFeedback=function(e,i,r){return n(this,void 0,void 0,(function*(){try{const n=yield(0,s.default)(e+a.endpoints.sdk.feedback,{method:\"POST\",headers:Object.assign({\"Content-Type\":\"application/json\"},t.header),body:JSON.stringify(i)});if(n.ok)return r.log(`Form ${i.integration} submitted successfully!`),(yield n.json()).sessionId;throw r.err(`Failed to submit form ${i.integration}:`,n.status,n.statusText),new Error(n.statusText)}catch(e){return r.err(e),\"\"}}))},t.getFollowUpQuestion=function(e,i,r){return n(this,void 0,void 0,(function*(){try{const n=yield(0,s.default)(e+a.endpoints.sdk.followUpQuestion,{method:\"POST\",headers:Object.assign({\"Content-Type\":\"application/json\"},t.header),body:JSON.stringify(i)});if(n.ok)return r.log(`Received follow up question for form ${i.integration}`),(yield n.json())||\"\";throw r.err(`Failed to get follow up question for form ${i.integration}:`,n.status,n.statusText),new Error(n.statusText)}catch(e){return r.err(e),\"\"}}))}},256:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.Log=void 0,t.Log=class{constructor(e){this.config=e}log(...e){this.config.get(\"debug\")&&console.log(\"[MagicFeedback]:\",...e)}err(...e){console.error(\"[MagicFeedback]:\",...e)}}},330:e=>{\"use strict\";e.exports=JSON.parse('{\"name\":\"@magicfeedback/native\",\"version\":\"2.2.8\",\"main\":\"./dist/magicfeedback-sdk.node.js\",\"browser\":\"./dist/magicfeedback-sdk.browser.js\",\"types\":\"./dist/types/src/index.d.ts\",\"repository\":{\"type\":\"git\",\"url\":\"git+ssh://git@github.com/MagicFeedback/magicfeedback-sdk.git\"},\"author\":\"farias@magicfeedback.io\",\"license\":\"MIT\",\"private\":false,\"scripts\":{\"dev\":\"vite\",\"build\":\"webpack\",\"build:watch\":\"webpack --watch --mode development\",\"release\":\"npm publish --access public\",\"release:beta\":\"npm publish --access public --tag beta\",\"release:alpha\":\"npm publish --access public --tag alpha\",\"test\":\"jest\",\"test:watch\":\"jest --watchAll\",\"coverage\":\"vitest run --coverage\",\"publish:sdk\":\"bash publish.sh\",\"publish:sdk:dry-run\":\"NPM_DRY_RUN=1 bash publish.sh\"},\"files\":[\"dist\"],\"devDependencies\":{\"@babel/preset-typescript\":\"^7.22.5\",\"@types/node\":\"^17.0.21\",\"@types/webpack\":\"^5.28.0\",\"@types/webpack-node-externals\":\"^2.5.3\",\"c8\":\"^7.11.0\",\"copy-webpack-plugin\":\"^11.0.0\",\"jest\":\"^29.5.0\",\"jest-environment-jsdom\":\"^29.5.0\",\"jest-fetch-mock\":\"^3.0.3\",\"nock\":\"^13.2.4\",\"ts-jest\":\"^29.1.0\",\"ts-loader\":\"^9.2.7\",\"ts-node\":\"^10.7.0\",\"typescript\":\"^4.6.2\",\"vite\":\"^2.8.0\",\"vite-plugin-dts\":\"^0.9.9\",\"vitest\":\"^0.5.9\",\"webpack\":\"^5.70.0\",\"webpack-cli\":\"^4.9.2\",\"webpack-node-externals\":\"^3.0.0\"},\"dependencies\":{\"cross-fetch\":\"^3.1.5\",\"is-bundling-for-browser-or-node\":\"^1.1.1\"},\"description\":\"MagicFeedbackAI JavaScript Library for [MagicFeedback.io](https://magicfeedback.io/)\",\"bugs\":{\"url\":\"https://github.com/MagicFeedback/magicfeedback-sdk/issues\"},\"homepage\":\"https://github.com/MagicFeedback/magicfeedback-sdk#readme\",\"directories\":{\"example\":\"examples\",\"test\":\"test\"},\"style\":\"./dist/styles/magicfeedback-default.css\"}')}},t={},function i(n){var r=t[n];if(void 0!==r)return r.exports;var s=t[n]={exports:{}};return e[n].call(s.exports,s,s.exports,i),s.exports}(156).default;var e,t}));","/**\n * Logo del popup (viene en `formData.style` del survey, no del `init`).\n *\n * Vive encima de la barra de progreso, como hermano del header: la marca abre la tarjeta y el\n * progreso queda pegado a la pregunta. Antes se insertaba DENTRO del contenido (web) o del área\n * scrollable (WebView de RN), así que la barra quedaba por encima del logo y en RN el logo se\n * iba con el scroll.\n *\n * El hueco inferior lo pone el bloque siguiente (`.deepdots-progress` cuando se ve, o el\n * `padding-top` del contenido cuando no), así que aquí solo se separa del header.\n */\nexport interface PopupLogoStyle {\n logo?: string;\n logoSize?: string;\n logoPosition?: string;\n}\n\nconst BASE_CSS = 'max-height:40px; max-width:100%; object-fit:contain; display:block; margin:12px 0 0 0;';\n\nconst MAX_HEIGHT: Record<string, string> = {\n small: '30px',\n medium: '50px',\n large: '70px',\n};\n\n/**\n * Inserta el logo en `parent`, justo antes de `anchor` (la barra de progreso).\n * No-op si el estilo no trae logo o si ya existe uno con ese `id`.\n */\nexport function insertPopupLogo(\n parent: HTMLElement,\n anchor: HTMLElement | null,\n style: PopupLogoStyle | undefined,\n id: string,\n): HTMLImageElement | null {\n if (!style?.logo) return null;\n if (parent.ownerDocument.getElementById(id)) return null;\n\n const img = parent.ownerDocument.createElement('img');\n img.id = id;\n img.src = style.logo;\n img.alt = 'Logo';\n img.style.cssText = BASE_CSS;\n\n if (style.logoSize && MAX_HEIGHT[style.logoSize]) {\n img.style.maxHeight = MAX_HEIGHT[style.logoSize];\n }\n switch (style.logoPosition) {\n case 'left':\n img.style.margin = '12px 16px 0 0';\n img.style.marginLeft = '0';\n break;\n case 'right':\n img.style.margin = '12px 0 0 16px';\n img.style.marginLeft = 'auto';\n break;\n case 'center':\n img.style.margin = '12px auto 0 auto';\n break;\n }\n\n parent.insertBefore(img, anchor);\n return img;\n}\n","import {DeepdotsEventType, PopupActions, PopupStyle, FormData} from '../types';\nimport { buildSurveyIdentity } from '../tracking/tracking-manager';\nimport type { PopupRenderOptions } from '../platform/renderer';\nimport { buildFontFaceCss, buildFontFamilyValue } from './font';\nimport { insertPopupLogo } from './logo';\nimport { sdkLog, sdkWarn, sdkError } from '../util/logger';\nimport magicfeedback from \"@magicfeedback/native\";\nimport magicfeedbackCss from '../assets/style.css';\n\n// Inserta la hoja de estilos de MagicFeedback directamente en el popup para garantizar estilos incluso si el bundler no la inyecta globalmente.\nfunction ensureMagicFeedbackStyles(_popup: HTMLElement) {\n const STYLE_ID = 'magicfeedback-sdk-styles';\n if (document.getElementById(STYLE_ID)) return;\n const style = document.createElement('style');\n style.id = STYLE_ID;\n style.textContent = magicfeedbackCss;\n document.head.appendChild(style);\n}\n\n// Añade estilos de spinner si no existen\nfunction ensureSpinnerStyles(_popup: HTMLElement) {\n if (document.getElementById('deepdots-spinner-styles')) return;\n const style = document.createElement('style');\n style.id = 'deepdots-spinner-styles';\n style.textContent = `\n /* El enunciado trae margin-top:20px del CSS de surveys, que sumaba al hueco de la barra\n de progreso y descompensaba la simetría. Solo se anula en el primero: entre preguntas\n de la misma página sigue separando. */\n .deepdots-popup .magicfeedback-questions .magicfeedback-div:first-child .magicfeedback-label { margin-top: 0; }\n @keyframes ddspin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }\n .mf-spinner { display:flex; justify-content:center; align-items:center; padding:8px 0; }\n .mf-spinner-circle { width:28px; height:28px; border:3px solid #e0e6ed; border-top-color:#1E293B; border-radius:50%; animation: ddspin 0.9s linear infinite; }\n `;\n document.head.appendChild(style);\n}\n\nfunction ensureResponsiveStyles(_popup: HTMLElement) {\n if (document.getElementById('deepdots-responsive-styles')) return;\n const style = document.createElement('style');\n style.id = 'deepdots-responsive-styles';\n style.textContent = `\n /* Responsive adjustments */\n @media (max-width: 640px) {\n .deepdots-popup {\n width: calc(100% - 24px) !important;\n max-width: calc(100% - 24px) !important;\n height: auto !important;\n max-height: 90vh !important;\n border-radius: 12px !important;\n padding: calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom)) 16px !important;\n box-sizing: border-box;\n }\n .deepdots-popup .mf-spinner-circle { width: 32px; height: 32px; border-width: 4px; }\n .deepdots-popup button { font-size: 16px !important; }\n .deepdots-popup-header button { width:48px; height:48px; }\n .deepdots-popup-header button svg { width:26px; height:26px; }\n /* Apilados en el orden del DOM: la acción principal (Send/Start/Complete) arriba y\n Back debajo. */\n .deepdots-popup-footer { flex-direction: column !important; gap: 4px !important; }\n .deepdots-popup-footer button { width: 100%; }\n }\n @media (max-width: 400px) {\n .deepdots-popup { padding: calc(12px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom)) 12px !important; }\n .deepdots-popup-header button { width:48px; height:48px; }\n .deepdots-popup-header button svg { width:26px; height:26px; }\n }\n @media (orientation: landscape) and (max-height: 480px) {\n .deepdots-popup {\n height: 100vh !important;\n max-height: 100vh !important;\n overflow-y: auto !important;\n }\n }\n `;\n document.head.appendChild(style);\n}\n\n/**\n * CSS del host, en un <style> propio añadido DESPUÉS de los del SDK y de\n * `@magicfeedback/native` para que gane en cascada sin tocar ninguno de los dos.\n * Se reemplaza en cada render por si cambia entre popups.\n */\nfunction ensureCustomCss(css?: string) {\n const STYLE_ID = 'deepdots-custom-css';\n const existing = document.getElementById(STYLE_ID);\n if (!css) {\n existing?.remove();\n return;\n }\n const el = (existing as HTMLStyleElement | null) ?? document.createElement('style');\n el.id = STYLE_ID;\n if (el.textContent !== css) el.textContent = css;\n // Reanexar mueve el nodo al final del head: garantiza que va tras las hojas del SDK.\n document.head.appendChild(el);\n}\n\n// Inyecta (una sola vez) el @font-face de la fuente personalizada.\nfunction ensureFontFace(family: string, url: string) {\n const css = buildFontFaceCss(family, url);\n if (!css) return;\n const STYLE_ID = 'deepdots-font-face';\n let el = document.getElementById(STYLE_ID) as HTMLStyleElement | null;\n if (!el) {\n el = document.createElement('style');\n el.id = STYLE_ID;\n document.head.appendChild(el);\n }\n if (el.textContent !== css) el.textContent = css;\n}\n\n/**\n * Renderiza el popup dentro del contenedor dado usando MagicFeedback para la encuesta.\n */\nexport async function renderPopup(\n container: HTMLElement,\n surveyId: string,\n productId: string,\n actions: PopupActions | undefined,\n emit: (type: DeepdotsEventType, surveyId: string, data?: Record<string, unknown>) => void,\n onClose: () => void,\n env: string = 'production',\n userId?: string,\n style?: PopupStyle,\n sessionId?: string,\n miniService?: string,\n analyticsFeedbackSessionId?: string,\n options?: PopupRenderOptions,\n): Promise<void> {\n let surveyCompletedEmitted = false;\n let stylesInjected = false;\n // Profundidad de navegación dentro del survey: +1 al avanzar, -1 al volver. Sustituye a\n // `total > 1 && progress > 0 && progress < total`, que escondía el Back cuando la pantalla\n // siguiente era una follow-up dinámica (no entran en el grafo: suman +0.5 al progress y\n // dejan el total igual, así que un survey de una pregunta con follow-up nunca lo mostraba).\n let pageDepth = 0;\n let onStartPage = false;\n\n const isDark = style?.theme === 'dark';\n const theme = {\n popupBg: isDark ? '#1e1e1e' : '#fff',\n // El popup fija su propio fondo, así que debe fijar también el esquema de color.\n // Sin esto los controles de formulario (input/textarea/select) caen al estilo por\n // defecto del navegador: en un host con `prefers-color-scheme: dark` se pintan\n // oscuros con texto blanco sobre el fondo claro del popup.\n colorScheme: isDark ? 'dark' : 'light',\n textPrimary: isDark ? '#f0f0f0' : '#111',\n closeBtnHoverColor: isDark ? '#fff' : '#000000',\n textMuted: isDark ? '#9ca3af' : '#6b7280',\n progressTrack: isDark ? '#3f3f46' : '#e5e7eb',\n };\n\n const positionMap: Record<string, { justifyContent: string; alignItems: string; padding?: string; background: string }> = {\n 'center': { justifyContent: 'center', alignItems: 'center', background: 'rgba(0,0,0,0.5)' },\n 'bottom': { justifyContent: 'center', alignItems: 'flex-end', padding: '16px', background: 'transparent' },\n 'bottom-right': { justifyContent: 'flex-end', alignItems: 'flex-end', padding: '16px', background: 'transparent' },\n 'bottom-left': { justifyContent: 'flex-start', alignItems: 'flex-end', padding: '16px', background: 'transparent' },\n 'top': { justifyContent: 'center', alignItems: 'flex-start', padding: '16px', background: 'transparent' },\n 'top-right': { justifyContent: 'flex-end', alignItems: 'flex-start', padding: '16px', background: 'transparent' },\n 'top-left': { justifyContent: 'flex-start', alignItems: 'flex-start', padding: '16px', background: 'transparent' },\n };\n const pos = positionMap[style?.position ?? 'center'] ?? positionMap['center'];\n\n // Crear popup base\n const popup = document.createElement('div');\n popup.id = 'dd-popup';\n popup.className = 'deepdots-popup';\n popup.style.cssText = `\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n background: ${theme.popupBg};\n color-scheme: ${theme.colorScheme};\n border-radius: 8px;\n padding: 24px;\n box-shadow: 0 4px 6px rgba(0,0,0,0.1);\n max-width: 600px;\n width: 90%;\n max-height: 90vh;\n min-height: 200px;\n `;\n\n const font = style?.font;\n if (font?.family) {\n const familyValue = buildFontFamilyValue(font.family);\n // El survey vive dentro del contenedor y hereda esta fuente.\n popup.style.fontFamily = familyValue;\n // La variable habilita que el <h2> (Montserrat por defecto) también la use.\n popup.style.setProperty('--deepdots-font', familyValue);\n // Los controles de formulario (button/input/textarea/select) NO heredan\n // font-family por defecto; esta clase activa la regla que los fuerza a heredar.\n popup.classList.add('deepdots-has-font');\n if (font.url) ensureFontFace(font.family, font.url);\n }\n\n // Sección header (título + botón cerrar)\n const header = document.createElement('div');\n header.className = 'deepdots-popup-header';\n header.style.cssText = 'display:flex; justify-content:space-between; align-items:center; gap:12px; width:100%; flex:0 0 auto;';\n\n // Título: `textContent`, nunca innerHTML — el valor viene de la API.\n const titleEl = document.createElement('h2');\n titleEl.id = 'dd-title';\n titleEl.className = 'deepdots-popup-title';\n // text-transform/text-align/margin neutralizan la regla `.deepdots-popup h2` del CSS del\n // survey (uppercase, centrado, margin-bottom 40px), pensada para los enunciados.\n titleEl.style.cssText = `margin:0; font-size:17px; font-weight:600; line-height:1.3; color:${theme.textPrimary}; text-transform:none; text-align:left; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;`;\n titleEl.hidden = true;\n const setTitle = (value?: string) => {\n if (!value) return;\n titleEl.textContent = value;\n titleEl.hidden = false;\n };\n setTitle(options?.title);\n header.appendChild(titleEl);\n\n // Botón de cierre (X)\n const closeBtn = document.createElement('button');\n closeBtn.id = 'dd-close';\n closeBtn.type = 'button';\n closeBtn.setAttribute('aria-label', 'Close popup');\n closeBtn.innerHTML = `\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5 5L19 19M5 19L19 5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"butt\"/>\n </svg>\n `;\n closeBtn.style.cssText = `\n background:transparent;\n border:none;\n width:32px;\n height:32px;\n display:flex;\n align-items:center;\n justify-content:center;\n border-radius: 8px;\n cursor:pointer;\n color:${theme.textPrimary};\n padding:4px;\n transition: color .15s ease, transform .15s ease;\n box-shadow: none !important;\n `;\n closeBtn.onmouseenter = () => {\n closeBtn.style.color = theme.closeBtnHoverColor;\n closeBtn.style.transform = 'scale(1.06)';\n };\n closeBtn.onmouseleave = () => {\n closeBtn.style.color = theme.textPrimary;\n closeBtn.style.transform = 'scale(1)';\n };\n closeBtn.onclick = () => {\n emit('popup_clicked', surveyId, {action: 'close_icon'});\n onClose();\n };\n closeBtn.style.flex = '0 0 auto';\n closeBtn.style.marginLeft = 'auto';\n header.appendChild(closeBtn);\n\n // Barra de progreso (\"Question X of Y\" + barra), espejo de LineProgressQuestion (MagicSurvey).\n // `undefined` en el init deja decidir a la plataforma (style.showProgressBar).\n let progressEnabled = options?.showProgressBar === true;\n let progressShowUnit = true;\n let progressUnit: 'percentage' | 'fraction' = 'fraction';\n\n const progressEl = document.createElement('div');\n progressEl.id = 'dd-progress';\n progressEl.className = 'deepdots-progress';\n // Sin padding horizontal propio: se alinea con el título y con el contenido. El vertical es\n // el mismo arriba y abajo, y del mismo valor que el padding de la tarjeta.\n progressEl.style.cssText = 'display:none; flex-direction:column; gap:8px; width:100%; flex:0 0 auto; padding:16px 0; box-sizing:border-box;';\n const progressHead = document.createElement('div');\n progressHead.className = 'deepdots-progress-head';\n progressHead.style.cssText = 'display:flex; flex-direction:row; justify-content:space-between; align-items:center; width:100%; gap:8px;';\n const progressLabel = document.createElement('span');\n progressLabel.id = 'dd-progress-label';\n progressLabel.style.cssText = 'font-size:13px; line-height:1.2;';\n // \"Question 1\" en negrita y \"of 3\" en regular gris, como el mockup.\n const progressCurrent = document.createElement('span');\n progressCurrent.id = 'dd-progress-current';\n progressCurrent.style.cssText = `font-weight:700; color:${theme.textPrimary};`;\n const progressTotal = document.createElement('span');\n progressTotal.id = 'dd-progress-total';\n progressTotal.style.cssText = `font-weight:400; color:${theme.textMuted};`;\n progressLabel.appendChild(progressCurrent);\n progressLabel.appendChild(progressTotal);\n const progressFollowUp = document.createElement('span');\n progressFollowUp.id = 'dd-progress-followup';\n progressFollowUp.textContent = 'Follow-up';\n progressFollowUp.style.cssText = 'display:none; font-size:12px; font-weight:600; color:#fff; background:rgba(59,130,246,0.44); border-radius:999px; padding:2px 10px;';\n progressHead.appendChild(progressLabel);\n progressHead.appendChild(progressFollowUp);\n const progressTrack = document.createElement('div');\n progressTrack.className = 'deepdots-progress-track';\n progressTrack.style.cssText = `width:100%; height:4px; border-radius:999px; background:${theme.progressTrack}; overflow:hidden;`;\n const progressBar = document.createElement('div');\n progressBar.id = 'dd-progress-bar';\n progressBar.style.cssText = 'height:100%; width:0%; background:#22C55E; border-radius:999px; transition:width 450ms ease;';\n progressTrack.appendChild(progressBar);\n progressEl.appendChild(progressHead);\n progressEl.appendChild(progressTrack);\n\n function updateProgress(p: { progress?: number; total?: number; completed?: boolean; followup?: boolean }) {\n const total = typeof p.total === 'number' ? p.total : 0;\n const progress = typeof p.progress === 'number' ? p.progress : 0;\n if (!progressEnabled || onStartPage || p.completed || total <= 1) {\n progressEl.style.display = 'none';\n // Sin barra, el hueco cabecera→pregunta lo pone el contenido.\n containerContent.style.paddingTop = '16px';\n return;\n }\n progressEl.style.display = 'flex';\n // Con barra, el hueco inferior ya lo pone el bloque de progreso: no duplicarlo.\n containerContent.style.paddingTop = '0';\n // La barra usa el valor real (las follow-up suman +0.5 y avanzan media casilla); la\n // etiqueta redondea hacia abajo, porque una follow-up es un paso DENTRO de la misma\n // pregunta y no la siguiente.\n const current = Math.min(total, Math.max(1, progress + 1));\n const pct = Math.min(100, Math.max(0, (current / total) * 100));\n progressBar.style.width = `${pct}%`;\n const label = Math.min(total, Math.max(1, Math.floor(progress) + 1));\n progressLabel.style.display = progressShowUnit ? 'block' : 'none';\n if (progressUnit === 'percentage') {\n progressCurrent.textContent = `${Math.round(pct)}%`;\n progressTotal.textContent = '';\n } else {\n progressCurrent.textContent = `Question ${label}`;\n progressTotal.textContent = ` of ${total}`;\n }\n progressFollowUp.style.display = p.followup ? 'inline-block' : 'none';\n }\n\n ensureMagicFeedbackStyles(popup);\n ensureSpinnerStyles(popup);\n ensureResponsiveStyles(popup);\n // El último en entrar: el CSS del host gana sobre todo lo anterior.\n ensureCustomCss(options?.surveyCss);\n\n const containerContent = document.createElement('div');\n containerContent.id = 'dd-content';\n // Estaba escrito 'conetent'; el HTML del WebView siempre usó la forma correcta. Con\n // `surveyCss` esta clase pasa a ser superficie pública, así que las dos rutas deben coincidir.\n containerContent.className = 'deepdots-popup-container-content';\n // El popup es una columna: solo el bloque de preguntas hace scroll, para que el footer con\n // las acciones quede siempre pegado al borde inferior (antes vivía dentro del área\n // scrollable y en un survey largo había que bajar hasta el final para ver \"Send\").\n // Sin sangrado extra: el contenido se alinea con el título y con la barra de progreso\n // (antes sumaba 20px a los lados sobre el padding de la tarjeta). `overflow:hidden` deja\n // el scroll en `main`, no en el contenedor.\n containerContent.style.cssText = 'display:flex; flex-direction:column; flex:1 1 auto; min-height:0; padding:16px 0 0 0; overflow:hidden;'\n\n // Sección principal (main) - Contenedor formulario + spinner\n const main = document.createElement('div');\n main.id = 'dd-main';\n main.className = 'deepdots-popup-main';\n main.style.cssText = 'display:flex; flex-direction:column; width:100%; flex:1 1 auto; min-height:0; overflow-y:auto;';\n\n const formWrapper = document.createElement('div');\n formWrapper.id = 'dd-form-wrapper';\n formWrapper.style.cssText = 'width:100%; flex: 1 1 auto;';\n\n // Contenedor de aviso de error de validación\n const errorHint = document.createElement('div');\n errorHint.id = 'dd-error';\n errorHint.className = 'deepdots-error-hint';\n errorHint.style.cssText = `\n display: none;\n margin: 12px 0 0 0;\n padding: 10px 12px;\n border-radius: 6px;\n background: #FEF3C7; /* amber-100 */\n color: #92400E; /* amber-700 */\n border: 1px solid #FCD34D; /* amber-300 */\n font-size: 13px;\n `;\n errorHint.setAttribute('role', 'alert');\n errorHint.setAttribute('aria-live', 'polite');\n\n const spinnerEl = document.createElement('div');\n spinnerEl.className = 'mf-spinner';\n spinnerEl.setAttribute('role', 'status');\n spinnerEl.setAttribute('aria-label', 'Loading survey');\n spinnerEl.innerHTML = '<div class=\"mf-spinner-circle\"></div>';\n spinnerEl.style.cssText = 'position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);';\n\n const formDivId = `magicfeedback-form-${surveyId}`;\n const formHost = document.createElement('div');\n formHost.id = formDivId;\n formHost.style.cssText = 'width:100%; visibility:hidden;';\n\n formWrapper.appendChild(spinnerEl);\n formWrapper.appendChild(formHost);\n main.appendChild(formWrapper);\n // Insertar el hint justo antes del footer\n main.appendChild(errorHint);\n\n // Sección footer (acciones) - botones en extremos\n const footer = document.createElement('div');\n footer.id = 'dd-footer';\n footer.className = 'deepdots-popup-footer';\n footer.setAttribute('data-actions-wrapper', 'true');\n footer.style.cssText = 'display:flex; flex-direction: row-reverse ;justify-content:space-between; align-items:center; gap:4px; margin-top:auto; width:100%; padding-top:12px;';\n\n // Botones\n const backButton = document.createElement('button');\n backButton.id = 'dd-back';\n backButton.className = 'dd-nav-btn';\n backButton.textContent = actions?.back ? actions.back.label : 'Back';\n // Secundario como botón de texto: sin borde, fondo ni sombra, para que el primario sea\n // la única CTA con peso visual.\n backButton.style.cssText = `\n background: transparent;\n color: ${theme.textMuted};\n border: none;\n min-height: 44px;\n padding: 12px 24px;\n border-radius: 6px;\n cursor: pointer;\n font-size: 15px;\n font-weight: 600;\n transition: filter .15s ease;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n `;\n backButton.onmouseenter = () => {\n backButton.style.filter = 'brightness(0.9)';\n }\n backButton.onmouseleave = () => {\n backButton.style.filter = 'brightness(1)';\n }\n backButton.onclick = () => {\n emit('popup_clicked', surveyId, {action: 'back'});\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (formInstance as any)?.back?.();\n };\n\n // Boton start survyes, solo aprece cuando la encuesta empieza con mensaje de inicio\n // Width de 100% para que ocupe todo el espacio disponible\n const startButton = document.createElement('button');\n startButton.id = 'dd-start';\n startButton.className = 'dd-nav-btn';\n startButton.textContent = actions?.start ? actions.start.label : 'Start survey';\n startButton.style.cssText = `\n background: #1E293B;\n color: #fff;\n border: none;\n min-height: 44px;\n padding: 12px 24px;\n border-radius: 6px;\n cursor: pointer;\n font-size: 15px;\n font-weight: 600;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n transition: filter .15s ease;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n `;\n startButton.onclick = () => {\n emit('popup_clicked', surveyId, {action: 'start_survey'});\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (formInstance as any)?.startForm?.();\n onStartPage = false;\n updateProgress({progress: formInstance?.progress, total: formInstance?.total});\n };\n\n // Botón cerrar popup, solo aparece al terminar la encuesta\n // Width de 100% para que ocupe todo el espacio disponible\n const closeButton = document.createElement('button');\n closeButton.id = 'dd-complete';\n closeButton.className = 'dd-nav-btn';\n closeButton.textContent = actions?.complete ? actions.complete.label : 'Complete survey';\n closeButton.style.cssText = `\n background: #1E293B;\n color: #fff;\n border: none;\n min-height: 44px;\n padding: 12px 24px;\n border-radius: 6px;\n cursor: pointer;\n font-size: 15px;\n font-weight: 600;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n transition: filter .15s ease;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n `;\n closeButton.onmouseenter = () => {\n closeButton.style.filter = 'brightness(0.9)';\n }\n closeButton.onmouseleave = () => {\n closeButton.style.filter = 'brightness(1)';\n }\n closeButton.onclick = () => {\n emit('popup_clicked', surveyId, {action: 'complete'});\n onClose();\n };\n\n // Botón send, si es primera pagina ocupara el espacio completo pero si no estara al lado derecho\n const submitButton = document.createElement('button');\n submitButton.id = 'dd-submit';\n submitButton.className = 'dd-nav-btn';\n submitButton.textContent = actions?.accept ? actions.accept.label : 'Send';\n submitButton.style.cssText = `\n background: #1E293B;\n color: #fff;\n border: none;\n min-height: 44px;\n padding: 12px 24px;\n border-radius: 6px;\n cursor: pointer;\n font-size: 15px;\n font-weight: 600;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n transition: filter .15s ease;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n `;\n submitButton.onclick = () => {\n if (!surveyCompletedEmitted) {\n emit('popup_clicked', surveyId, {action: 'manual_send'});\n // Dispara envío nativo si existe\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (formInstance as any)?.send?.();\n }\n };\n\n backButton.style.display = 'none';\n startButton.style.display = 'none';\n submitButton.style.display = 'none';\n closeButton.style.display = 'none';\n\n // Insertar botones dentro del footer en orden visual (row-reverse deja primario a la derecha)\n footer.appendChild(submitButton);\n footer.appendChild(backButton);\n footer.appendChild(closeButton);\n footer.appendChild(startButton);\n\n // Añadir footer al main y main al containerContent\n containerContent.appendChild(main);\n // El footer va fuera del área scrollable, como hermano de `main`.\n footer.style.flex = '0 0 auto';\n containerContent.appendChild(footer);\n\n // Helper para controlar visibilidad de botones según estado\n type ViewState = 'loading' | 'start' | 'in_progress_first' | 'in_progress_next' | 'completed' | 'error';\n\n function updateButtons(state: ViewState) {\n // Por defecto, ocultar todos\n backButton.style.display = 'none';\n startButton.style.display = 'none';\n submitButton.style.display = 'none';\n closeButton.style.display = 'none';\n // Reset widths por estado\n backButton.style.width = '';\n startButton.style.width = '';\n submitButton.style.width = '';\n closeButton.style.width = '';\n\n switch (state) {\n case 'loading':\n // Footer se ocultará desde setLoading\n break;\n case 'start':\n // Solo botón Start a ancho completo\n startButton.style.display = 'inline-flex';\n startButton.style.width = '100%';\n break;\n case 'in_progress_first':\n // Solo botón Send (lado derecho), ancho auto\n submitButton.style.display = 'inline-flex';\n submitButton.style.width = '';\n setLoading(false);\n break;\n case 'in_progress_next':\n // Mostrar Back (izquierda) + Send (derecha)\n backButton.style.display = 'inline-flex';\n submitButton.style.display = 'inline-flex';\n setLoading(false);\n break;\n case 'completed':\n // Mostrar Close/Complete a ancho completo como acción principal\n closeButton.style.display = 'inline-flex';\n closeButton.style.width = '100%';\n setLoading(false);\n break;\n case 'error':\n // En error, permitir cerrar (ancho auto)\n // closeButton.style.display = 'inline-flex';\n setLoading(false);\n break;\n }\n }\n\n /** Estado de navegación según la profundidad recorrida (no según `total`). */\n function updateNavButtons() {\n updateButtons(pageDepth > 0 ? 'in_progress_next' : 'in_progress_first');\n }\n\n /**\n * Pantalla final con el `successMessage` configurado en la plataforma. La pinta el popup y\n * no `@magicfeedback/native`, cuyo `renderSuccess` usa `textContent` (el mensaje es HTML del\n * editor: imagen + texto) y cuyo fallback es un literal que ignora el estilo del survey.\n * Va por innerHTML igual que `renderStartMessage` con el mensaje de inicio.\n */\n let successMessageHtml = '';\n function showSuccessScreen() {\n progressEl.style.display = 'none';\n formWrapper.style.display = 'none';\n let done = main.querySelector('.deepdots-success') as HTMLElement | null;\n if (!done) {\n done = document.createElement('div');\n done.className = 'deepdots-success';\n done.style.cssText = `width:100%; text-align:center; padding:24px 0; color:${theme.textPrimary};`;\n main.insertBefore(done, errorHint);\n }\n done.innerHTML = successMessageHtml || '<p>Thank you for your feedback!</p>';\n done.querySelectorAll('img').forEach((img) => {\n img.style.cssText = 'max-width:100%; height:auto; margin:0 auto 16px auto; display:block;';\n });\n }\n\n // Ensamblar popup\n popup.appendChild(header);\n popup.appendChild(progressEl);\n popup.appendChild(containerContent);\n\n container.innerHTML = '';\n container.appendChild(popup);\n container.style.display = 'flex';\n container.style.justifyContent = pos.justifyContent;\n container.style.alignItems = pos.alignItems;\n container.style.background = pos.background;\n if (pos.padding) container.style.padding = pos.padding;\n\n // Gestión dinámica de loading\n function setLoading(isLoading: boolean) {\n spinnerEl.style.display = isLoading ? 'flex' : 'none';\n if (!isLoading) {\n formHost.style.visibility = 'visible';\n }\n // Ocultar totalmente los botones cuando está cargando\n footer.style.display = isLoading ? 'none' : 'flex';\n // Ajustar estados de los botones por si se muestran\n backButton.disabled = isLoading;\n startButton.disabled = isLoading;\n closeButton.disabled = isLoading;\n submitButton.disabled = isLoading;\n submitButton.style.opacity = isLoading ? '0.6' : '1';\n submitButton.style.cursor = isLoading ? 'not-allowed' : 'pointer';\n // No sobrescribir el estado de botones al finalizar la carga.\n if (isLoading) {\n updateButtons('loading');\n }\n }\n\n // Estado inicial\n setLoading(true);\n\n // Entorno navegador\n if (typeof window === 'undefined' || typeof document === 'undefined') {\n return;\n }\n\n // Referencia instancia formulario\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let formInstance: any = null;\n\n try {\n if (!magicfeedback || typeof magicfeedback.form !== 'function') {\n sdkWarn('[MagicFeedback] form() no disponible. Fallback manual.');\n setLoading(false);\n return;\n }\n magicfeedback.init({\n debug: true,\n env: env === 'production' ? 'prod' : 'dev'}\n );\n // Contrato Fase 1 §5: profile = identidad del usuario; metadata = contexto de tracking (session_id + user_id)\n const { profile, metadata } = buildSurveyIdentity(userId ?? null, sessionId ?? null, miniService ?? null, analyticsFeedbackSessionId ?? null);\n formInstance = magicfeedback.form(surveyId, productId, profile, metadata);\n\n interface TypedGenerateOptions {\n addButton: boolean;\n getMetaData: boolean;\n addSuccessScreen: boolean;\n onLoadedEvent?: (args: {\n formData: FormData,\n progress?: number, total?: number\n }) => void;\n beforeSubmitEvent?: () => void;\n afterSubmitEvent?: (args: { error?: string, completed: boolean, progress: number, total: number, followup?: boolean }) => void;\n onBackEvent?: (args: { error?: string, progress: number, total: number, followup: boolean }) => void;\n }\n\n const generateOptions: TypedGenerateOptions = {\n addButton: false,\n getMetaData: true,\n // La pantalla final la pinta el popup: `renderSuccess` de @magicfeedback/native usa\n // textContent, así que el mensaje de la plataforma (HTML con imagen) no se vería, y\n // su fallback es un literal genérico que ignora `style.successMessage`.\n addSuccessScreen: false,\n };\n generateOptions.onLoadedEvent = ({formData}) => {\n // Calcular altura disponible y aplicarla al main (restando header + footer + paddings)\n try {\n /*\n const headerHeight = header.getBoundingClientRect().height;\n const footerHeight = footer.getBoundingClientRect().height;\n const paddingY = 48; // 24px top + 24px bottom\n const viewportLimit = window.innerHeight * 0.8; // coincide con max-height del popup\n const available = viewportLimit - headerHeight - footerHeight - paddingY;\n if (available > 120) { // asegurar un mínimo razonable\n main.style.maxHeight = available + 'px';\n } */\n } catch {\n // silencioso\n }\n // Personalización del popup basada en formData.style\n const s = formData?.style;\n if (s && !stylesInjected) {\n stylesInjected = true;\n if (s.successMessage) successMessageHtml = s.successMessage;\n // La barra de progreso la decide el host (init) y, si no se pronuncia, la plataforma.\n if (options?.showProgressBar === undefined) progressEnabled = s.showProgressBar === true;\n if (s.showProgressUnit !== undefined) progressShowUnit = s.showProgressUnit !== false;\n if (s.progressUnit) progressUnit = s.progressUnit;\n if (s.loadingBarColor) {\n progressBar.style.background = s.loadingBarColor;\n progressFollowUp.style.background = s.loadingBarColor;\n }\n // Fondo del contenedor popup\n if (s.boxBackgroundColor) {\n popup.style.background = s.boxBackgroundColor;\n }\n // Alineación del contenido principal\n if (s.contentAlign) {\n // 'top' => start, 'center' => center\n main.style.justifyContent = s.contentAlign === 'center' ? 'center' : 'flex-start';\n }\n // Botón primario (submit, start)\n if (s.buttonPrimaryColor) {\n submitButton.style.background = s.buttonPrimaryColor;\n submitButton.style.border = 'none';\n submitButton.style.color = '#fff';\n\n startButton.style.background = s.buttonPrimaryColor;\n startButton.style.border = 'none';\n startButton.style.color = '#fff';\n\n closeButton.style.background = s.buttonPrimaryColor;\n closeButton.style.border = 'none';\n closeButton.style.color = '#fff';\n }\n // Botón secundario (back) — outlined: fondo blanco, letra y borde del color secundario\n if (s.buttonSecondaryColor) {\n // Botón de texto: solo tiñe la etiqueta, sin recuperar fondo ni borde.\n backButton.style.background = 'transparent';\n backButton.style.color = s.buttonSecondaryColor;\n backButton.style.border = 'none';\n }\n // El logo va encima de la barra de progreso, como hermano del header.\n insertPopupLogo(popup, progressEl, s, 'deepdots-popup-logo');\n\n if (s.startMessage && s.startMessage !== '') {\n // Si hay mensaje de inicio, mostrar botón Start inicialmente\n sdkLog(s.startMessage);\n onStartPage = true;\n updateButtons('start');\n } else {\n // Si no hay mensaje de inicio, mostrar estado de primera página (solo Send)\n updateButtons('in_progress_first');\n }\n } else {\n // Sin estilos, asumir primera página normal\n updateButtons('in_progress_first');\n }\n\n // El total solo se conoce con el form ya montado.\n updateProgress({progress: formInstance.progress, total: formInstance.total});\n emit('popup_clicked', surveyId, {action: 'loaded'});\n setLoading(false); // hace visible el formulario y oculta el spinner\n };\n generateOptions.beforeSubmitEvent = () => {\n setLoading(true);\n emit('popup_clicked', surveyId, {action: 'before_submit'});\n };\n generateOptions.afterSubmitEvent = ({error, completed, total, progress, followup}) => {\n // No cambiar estado de loading aquí; lo gestiona cada transición\n // Normalizar el error a texto seguro\n const errText = error ? (typeof error === 'string' ? error : ((error as unknown as {message?: string}).message ?? String(error))) : '';\n if (errText) {\n // Desactivar loading para que se vean los botones\n setLoading(false);\n // Caso específico: error de pregunta obligatoria\n if (errText.toLowerCase().includes('no response')) {\n errorHint.textContent = 'Please answer the required question to continue.';\n errorHint.style.display = 'block';\n emit('popup_clicked', surveyId, {action: 'validation_error_required'});\n // La página no ha cambiado: el estado de navegación se queda como estaba.\n updateNavButtons();\n return;\n }\n // Otros errores: mostrar mensaje genérico y permitir cerrar\n errorHint.textContent = 'An error occurred while submitting. Please try again or close the popup.';\n errorHint.style.display = 'block';\n emit('popup_clicked', surveyId, {action: 'submit_error', error: errText});\n // updateButtons('error');\n return;\n }\n // Limpiar hint si no hay error\n errorHint.style.display = 'none';\n setLoading(false);\n if (completed) {\n emit('survey_completed', surveyId, {action: 'completed'});\n surveyCompletedEmitted = true;\n showSuccessScreen();\n updateButtons('completed');\n updateProgress({progress, total, completed: true});\n return;\n }\n emit('popup_clicked', surveyId, {action: 'partial'});\n pageDepth++;\n updateNavButtons();\n updateProgress({progress, total, followup});\n };\n generateOptions.onBackEvent = ({progress, error, followup}) => {\n emit('popup_clicked', surveyId, {action: 'back'});\n // Con error (\"No page found\") no hubo navegación: la profundidad no se toca.\n if (!error) pageDepth = Math.max(0, pageDepth - 1);\n updateNavButtons();\n // onBackEvent no trae `total`: se lee del form, que es su dueño.\n updateProgress({progress, total: formInstance.total, followup});\n };\n\n // Ejecutar generación con opciones tipadas\n formInstance.generate(formDivId, generateOptions)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .catch((err: any) => {\n sdkError('[MagicFeedback] Error generating form:', err);\n setLoading(false);\n });\n } catch (e) {\n sdkError('[MagicFeedback] Exception initializing form:', e);\n setLoading(false);\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA,MAAC,SAAS,GAAE,GAAE;AAAC,kBAAU,OAAO,WAAS,YAAU,OAAO,SAAO,OAAO,UAAQ,EAAE,IAAE,cAAY,OAAO,UAAQ,OAAO,MAAI,OAAO,CAAC,GAAE,CAAC,IAAE,YAAU,OAAO,UAAQ,QAAQ,gBAAc,EAAE,IAAE,EAAE,gBAAc,EAAE;AAAA,IAAC,GAAE,OAAM,MAAI;AAAC,aAAO,IAAE,EAAC,KAAI,SAASA,IAAEC,IAAE;AAAC,YAAI,IAAE,eAAa,OAAO,OAAK,OAAK,MAAK,KAAE,WAAU;AAAC,mBAASD,KAAG;AAAC,iBAAK,QAAM,OAAG,KAAK,eAAa,EAAE;AAAA,UAAY;AAAC,iBAAOA,GAAE,YAAU,GAAE,IAAIA;AAAA,QAAC,GAAE;AAAE,UAAC,SAASA,IAAE;AAAC,YAAC,SAASC,IAAE;AAAC,gBAAIC,KAAE,qBAAoBF,IAAEG,KAAE,YAAWH,MAAG,cAAa,QAAOI,KAAE,gBAAeJ,MAAG,UAASA,OAAG,WAAU;AAAC,kBAAG;AAAC,uBAAO,IAAI,QAAK;AAAA,cAAE,SAAOA,IAAE;AAAC,uBAAM;AAAA,cAAE;AAAA,YAAC,GAAE,GAAE,IAAE,cAAaA,IAAE,IAAE,iBAAgBA;AAAE,gBAAG,EAAE,KAAI,IAAE,CAAC,sBAAqB,uBAAsB,8BAA6B,uBAAsB,wBAAuB,uBAAsB,wBAAuB,yBAAwB,uBAAuB,GAAE,IAAE,YAAY,UAAQ,SAASA,IAAE;AAAC,qBAAOA,MAAG,EAAE,QAAQ,OAAO,UAAU,SAAS,KAAKA,EAAC,CAAC,IAAE;AAAA,YAAE;AAAE,qBAAS,EAAEA,IAAE;AAAC,kBAAG,YAAU,OAAOA,OAAIA,KAAE,OAAOA,EAAC,IAAG,4BAA4B,KAAKA,EAAC,EAAE,OAAM,IAAI,UAAU,wCAAwC;AAAE,qBAAOA,GAAE,YAAY;AAAA,YAAC;AAAC,qBAAS,EAAEA,IAAE;AAAC,qBAAM,YAAU,OAAOA,OAAIA,KAAE,OAAOA,EAAC,IAAGA;AAAA,YAAC;AAAC,qBAAS,EAAEA,IAAE;AAAC,kBAAIC,KAAE,EAAC,MAAK,WAAU;AAAC,oBAAIA,KAAED,GAAE,MAAM;AAAE,uBAAM,EAAC,MAAK,WAASC,IAAE,OAAMA,GAAC;AAAA,cAAC,EAAC;AAAE,qBAAOE,OAAIF,GAAE,OAAO,QAAQ,IAAE,WAAU;AAAC,uBAAOA;AAAA,cAAC,IAAGA;AAAA,YAAC;AAAC,qBAAS,EAAED,IAAE;AAAC,mBAAK,MAAI,CAAC,GAAEA,cAAa,IAAEA,GAAE,SAAS,SAASA,IAAEC,IAAE;AAAC,qBAAK,OAAOA,IAAED,EAAC;AAAA,cAAC,IAAG,IAAI,IAAE,MAAM,QAAQA,EAAC,IAAEA,GAAE,SAAS,SAASA,IAAE;AAAC,qBAAK,OAAOA,GAAE,CAAC,GAAEA,GAAE,CAAC,CAAC;AAAA,cAAC,IAAG,IAAI,IAAEA,MAAG,OAAO,oBAAoBA,EAAC,EAAE,SAAS,SAASC,IAAE;AAAC,qBAAK,OAAOA,IAAED,GAAEC,EAAC,CAAC;AAAA,cAAC,IAAG,IAAI;AAAA,YAAC;AAAC,qBAAS,EAAED,IAAE;AAAC,kBAAGA,GAAE,SAAS,QAAO,QAAQ,OAAO,IAAI,UAAU,cAAc,CAAC;AAAE,cAAAA,GAAE,WAAS;AAAA,YAAE;AAAC,qBAAS,EAAEA,IAAE;AAAC,qBAAO,IAAI,SAAS,SAASC,IAAEC,IAAE;AAAC,gBAAAF,GAAE,SAAO,WAAU;AAAC,kBAAAC,GAAED,GAAE,MAAM;AAAA,gBAAC,GAAEA,GAAE,UAAQ,WAAU;AAAC,kBAAAE,GAAEF,GAAE,KAAK;AAAA,gBAAC;AAAA,cAAC,EAAE;AAAA,YAAC;AAAC,qBAAS,EAAEA,IAAE;AAAC,kBAAIC,KAAE,IAAI,cAAWC,KAAE,EAAED,EAAC;AAAE,qBAAOA,GAAE,kBAAkBD,EAAC,GAAEE;AAAA,YAAC;AAAC,qBAAS,EAAEF,IAAE;AAAC,kBAAGA,GAAE,MAAM,QAAOA,GAAE,MAAM,CAAC;AAAE,kBAAIC,KAAE,IAAI,WAAWD,GAAE,UAAU;AAAE,qBAAOC,GAAE,IAAI,IAAI,WAAWD,EAAC,CAAC,GAAEC,GAAE;AAAA,YAAM;AAAC,qBAAS,IAAG;AAAC,qBAAO,KAAK,WAAS,OAAG,KAAK,YAAU,SAASD,IAAE;AAAC,oBAAIC;AAAE,qBAAK,YAAUD,IAAEA,KAAE,YAAU,OAAOA,KAAE,KAAK,YAAUA,KAAEI,MAAG,KAAK,UAAU,cAAcJ,EAAC,IAAE,KAAK,YAAUA,KAAE,KAAG,SAAS,UAAU,cAAcA,EAAC,IAAE,KAAK,gBAAcA,KAAEE,MAAG,gBAAgB,UAAU,cAAcF,EAAC,IAAE,KAAK,YAAUA,GAAE,SAAS,IAAE,KAAGI,OAAIH,KAAED,OAAI,SAAS,UAAU,cAAcC,EAAC,KAAG,KAAK,mBAAiB,EAAED,GAAE,MAAM,GAAE,KAAK,YAAU,IAAI,KAAK,CAAC,KAAK,gBAAgB,CAAC,KAAG,MAAI,YAAY,UAAU,cAAcA,EAAC,KAAG,EAAEA,EAAC,KAAG,KAAK,mBAAiB,EAAEA,EAAC,IAAE,KAAK,YAAUA,KAAE,OAAO,UAAU,SAAS,KAAKA,EAAC,IAAE,KAAK,YAAU,IAAG,KAAK,QAAQ,IAAI,cAAc,MAAI,YAAU,OAAOA,KAAE,KAAK,QAAQ,IAAI,gBAAe,0BAA0B,IAAE,KAAK,aAAW,KAAK,UAAU,OAAK,KAAK,QAAQ,IAAI,gBAAe,KAAK,UAAU,IAAI,IAAEE,MAAG,gBAAgB,UAAU,cAAcF,EAAC,KAAG,KAAK,QAAQ,IAAI,gBAAe,iDAAiD;AAAA,cAAE,GAAEI,OAAI,KAAK,OAAK,WAAU;AAAC,oBAAIJ,KAAE,EAAE,IAAI;AAAE,oBAAGA,GAAE,QAAOA;AAAE,oBAAG,KAAK,UAAU,QAAO,QAAQ,QAAQ,KAAK,SAAS;AAAE,oBAAG,KAAK,iBAAiB,QAAO,QAAQ,QAAQ,IAAI,KAAK,CAAC,KAAK,gBAAgB,CAAC,CAAC;AAAE,oBAAG,KAAK,cAAc,OAAM,IAAI,MAAM,sCAAsC;AAAE,uBAAO,QAAQ,QAAQ,IAAI,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC;AAAA,cAAC,GAAE,KAAK,cAAY,WAAU;AAAC,uBAAO,KAAK,mBAAiB,EAAE,IAAI,KAAG,QAAQ,QAAQ,KAAK,gBAAgB,IAAE,KAAK,KAAK,EAAE,KAAK,CAAC;AAAA,cAAC,IAAG,KAAK,OAAK,WAAU;AAAC,oBAAIA,IAAEC,IAAEC,IAAEC,KAAE,EAAE,IAAI;AAAE,oBAAGA,GAAE,QAAOA;AAAE,oBAAG,KAAK,UAAU,QAAOH,KAAE,KAAK,WAAUE,KAAE,EAAED,KAAE,IAAI,YAAU,GAAEA,GAAE,WAAWD,EAAC,GAAEE;AAAE,oBAAG,KAAK,iBAAiB,QAAO,QAAQ,SAAQ,SAASF,IAAE;AAAC,2BAAQC,KAAE,IAAI,WAAWD,EAAC,GAAEE,KAAE,IAAI,MAAMD,GAAE,MAAM,GAAEE,KAAE,GAAEA,KAAEF,GAAE,QAAOE,KAAI,CAAAD,GAAEC,EAAC,IAAE,OAAO,aAAaF,GAAEE,EAAC,CAAC;AAAE,yBAAOD,GAAE,KAAK,EAAE;AAAA,gBAAC,GAAE,KAAK,gBAAgB,CAAC;AAAE,oBAAG,KAAK,cAAc,OAAM,IAAI,MAAM,sCAAsC;AAAE,uBAAO,QAAQ,QAAQ,KAAK,SAAS;AAAA,cAAC,GAAE,MAAI,KAAK,WAAS,WAAU;AAAC,uBAAO,KAAK,KAAK,EAAE,KAAK,CAAC;AAAA,cAAC,IAAG,KAAK,OAAK,WAAU;AAAC,uBAAO,KAAK,KAAK,EAAE,KAAK,KAAK,KAAK;AAAA,cAAC,GAAE;AAAA,YAAI;AAAC,cAAE,UAAU,SAAO,SAASF,IAAEC,IAAE;AAAC,cAAAD,KAAE,EAAEA,EAAC,GAAEC,KAAE,EAAEA,EAAC;AAAE,kBAAIC,KAAE,KAAK,IAAIF,EAAC;AAAE,mBAAK,IAAIA,EAAC,IAAEE,KAAEA,KAAE,OAAKD,KAAEA;AAAA,YAAC,GAAE,EAAE,UAAU,SAAO,SAASD,IAAE;AAAC,qBAAO,KAAK,IAAI,EAAEA,EAAC,CAAC;AAAA,YAAC,GAAE,EAAE,UAAU,MAAI,SAASA,IAAE;AAAC,qBAAOA,KAAE,EAAEA,EAAC,GAAE,KAAK,IAAIA,EAAC,IAAE,KAAK,IAAIA,EAAC,IAAE;AAAA,YAAI,GAAE,EAAE,UAAU,MAAI,SAASA,IAAE;AAAC,qBAAO,KAAK,IAAI,eAAe,EAAEA,EAAC,CAAC;AAAA,YAAC,GAAE,EAAE,UAAU,MAAI,SAASA,IAAEC,IAAE;AAAC,mBAAK,IAAI,EAAED,EAAC,CAAC,IAAE,EAAEC,EAAC;AAAA,YAAC,GAAE,EAAE,UAAU,UAAQ,SAASD,IAAEC,IAAE;AAAC,uBAAQC,MAAK,KAAK,IAAI,MAAK,IAAI,eAAeA,EAAC,KAAGF,GAAE,KAAKC,IAAE,KAAK,IAAIC,EAAC,GAAEA,IAAE,IAAI;AAAA,YAAC,GAAE,EAAE,UAAU,OAAK,WAAU;AAAC,kBAAIF,KAAE,CAAC;AAAE,qBAAO,KAAK,SAAS,SAASC,IAAEC,IAAE;AAAC,gBAAAF,GAAE,KAAKE,EAAC;AAAA,cAAC,EAAE,GAAE,EAAEF,EAAC;AAAA,YAAC,GAAE,EAAE,UAAU,SAAO,WAAU;AAAC,kBAAIA,KAAE,CAAC;AAAE,qBAAO,KAAK,SAAS,SAASC,IAAE;AAAC,gBAAAD,GAAE,KAAKC,EAAC;AAAA,cAAC,EAAE,GAAE,EAAED,EAAC;AAAA,YAAC,GAAE,EAAE,UAAU,UAAQ,WAAU;AAAC,kBAAIA,KAAE,CAAC;AAAE,qBAAO,KAAK,SAAS,SAASC,IAAEC,IAAE;AAAC,gBAAAF,GAAE,KAAK,CAACE,IAAED,EAAC,CAAC;AAAA,cAAC,EAAE,GAAE,EAAED,EAAC;AAAA,YAAC,GAAEG,OAAI,EAAE,UAAU,OAAO,QAAQ,IAAE,EAAE,UAAU;AAAS,gBAAI,IAAE,CAAC,UAAS,OAAM,QAAO,WAAU,QAAO,KAAK;AAAE,qBAAS,EAAEH,IAAEC,IAAE;AAAC,kBAAIC,IAAEC,IAAEC,MAAGH,KAAEA,MAAG,CAAC,GAAG;AAAK,kBAAGD,cAAa,GAAE;AAAC,oBAAGA,GAAE,SAAS,OAAM,IAAI,UAAU,cAAc;AAAE,qBAAK,MAAIA,GAAE,KAAI,KAAK,cAAYA,GAAE,aAAYC,GAAE,YAAU,KAAK,UAAQ,IAAI,EAAED,GAAE,OAAO,IAAG,KAAK,SAAOA,GAAE,QAAO,KAAK,OAAKA,GAAE,MAAK,KAAK,SAAOA,GAAE,QAAOI,MAAG,QAAMJ,GAAE,cAAYI,KAAEJ,GAAE,WAAUA,GAAE,WAAS;AAAA,cAAG,MAAM,MAAK,MAAI,OAAOA,EAAC;AAAE,kBAAG,KAAK,cAAYC,GAAE,eAAa,KAAK,eAAa,eAAc,CAACA,GAAE,WAAS,KAAK,YAAU,KAAK,UAAQ,IAAI,EAAEA,GAAE,OAAO,IAAG,KAAK,UAAQE,MAAGD,KAAED,GAAE,UAAQ,KAAK,UAAQ,OAAO,YAAY,GAAE,EAAE,QAAQE,EAAC,IAAE,KAAGA,KAAED,KAAG,KAAK,OAAKD,GAAE,QAAM,KAAK,QAAM,MAAK,KAAK,SAAOA,GAAE,UAAQ,KAAK,QAAO,KAAK,WAAS,OAAM,UAAQ,KAAK,UAAQ,WAAS,KAAK,WAASG,GAAE,OAAM,IAAI,UAAU,2CAA2C;AAAE,mBAAK,UAAUA,EAAC;AAAA,YAAC;AAAC,qBAAS,EAAEJ,IAAE;AAAC,kBAAIC,KAAE,IAAI;AAAS,qBAAOD,GAAE,KAAK,EAAE,MAAM,GAAG,EAAE,SAAS,SAASA,IAAE;AAAC,oBAAGA,IAAE;AAAC,sBAAIE,KAAEF,GAAE,MAAM,GAAG,GAAEG,KAAED,GAAE,MAAM,EAAE,QAAQ,OAAM,GAAG,GAAEE,KAAEF,GAAE,KAAK,GAAG,EAAE,QAAQ,OAAM,GAAG;AAAE,kBAAAD,GAAE,OAAO,mBAAmBE,EAAC,GAAE,mBAAmBC,EAAC,CAAC;AAAA,gBAAC;AAAA,cAAC,EAAE,GAAEH;AAAA,YAAC;AAAC,qBAAS,EAAED,IAAEC,IAAE;AAAC,cAAAA,OAAIA,KAAE,CAAC,IAAG,KAAK,OAAK,WAAU,KAAK,SAAO,WAASA,GAAE,SAAO,MAAIA,GAAE,QAAO,KAAK,KAAG,KAAK,UAAQ,OAAK,KAAK,SAAO,KAAI,KAAK,aAAW,gBAAeA,KAAEA,GAAE,aAAW,MAAK,KAAK,UAAQ,IAAI,EAAEA,GAAE,OAAO,GAAE,KAAK,MAAIA,GAAE,OAAK,IAAG,KAAK,UAAUD,EAAC;AAAA,YAAC;AAAC,cAAE,UAAU,QAAM,WAAU;AAAC,qBAAO,IAAI,EAAE,MAAK,EAAC,MAAK,KAAK,UAAS,CAAC;AAAA,YAAC,GAAE,EAAE,KAAK,EAAE,SAAS,GAAE,EAAE,KAAK,EAAE,SAAS,GAAE,EAAE,UAAU,QAAM,WAAU;AAAC,qBAAO,IAAI,EAAE,KAAK,WAAU,EAAC,QAAO,KAAK,QAAO,YAAW,KAAK,YAAW,SAAQ,IAAI,EAAE,KAAK,OAAO,GAAE,KAAI,KAAK,IAAG,CAAC;AAAA,YAAC,GAAE,EAAE,QAAM,WAAU;AAAC,kBAAIA,KAAE,IAAI,EAAE,MAAK,EAAC,QAAO,GAAE,YAAW,GAAE,CAAC;AAAE,qBAAOA,GAAE,OAAK,SAAQA;AAAA,YAAC;AAAE,gBAAI,IAAE,CAAC,KAAI,KAAI,KAAI,KAAI,GAAG;AAAE,cAAE,WAAS,SAASA,IAAEC,IAAE;AAAC,kBAAG,OAAK,EAAE,QAAQA,EAAC,EAAE,OAAM,IAAI,WAAW,qBAAqB;AAAE,qBAAO,IAAI,EAAE,MAAK,EAAC,QAAOA,IAAE,SAAQ,EAAC,UAASD,GAAC,EAAC,CAAC;AAAA,YAAC,GAAEC,GAAE,eAAaD,GAAE;AAAa,gBAAG;AAAC,kBAAIC,GAAE;AAAA,YAAY,SAAOD,IAAE;AAAC,cAAAC,GAAE,eAAa,SAASD,IAAEC,IAAE;AAAC,qBAAK,UAAQD,IAAE,KAAK,OAAKC;AAAE,oBAAIC,KAAE,MAAMF,EAAC;AAAE,qBAAK,QAAME,GAAE;AAAA,cAAK,GAAED,GAAE,aAAa,YAAU,OAAO,OAAO,MAAM,SAAS,GAAEA,GAAE,aAAa,UAAU,cAAYA,GAAE;AAAA,YAAY;AAAC,qBAAS,EAAED,IAAEE,IAAE;AAAC,qBAAO,IAAI,SAAS,SAASC,IAAEE,IAAE;AAAC,oBAAIC,KAAE,IAAI,EAAEN,IAAEE,EAAC;AAAE,oBAAGI,GAAE,UAAQA,GAAE,OAAO,QAAQ,QAAOD,GAAE,IAAIJ,GAAE,aAAa,WAAU,YAAY,CAAC;AAAE,oBAAIM,KAAE,IAAI;AAAe,yBAASC,KAAG;AAAC,kBAAAD,GAAE,MAAM;AAAA,gBAAC;AAAC,gBAAAA,GAAE,SAAO,WAAU;AAAC,sBAAIP,IAAEC,IAAEC,KAAE,EAAC,QAAOK,GAAE,QAAO,YAAWA,GAAE,YAAW,UAASP,KAAEO,GAAE,sBAAsB,KAAG,IAAGN,KAAE,IAAI,KAAED,GAAE,QAAQ,gBAAe,GAAG,EAAE,MAAM,OAAO,EAAE,SAAS,SAASA,IAAE;AAAC,wBAAIE,KAAEF,GAAE,MAAM,GAAG,GAAEG,KAAED,GAAE,MAAM,EAAE,KAAK;AAAE,wBAAGC,IAAE;AAAC,0BAAIC,KAAEF,GAAE,KAAK,GAAG,EAAE,KAAK;AAAE,sBAAAD,GAAE,OAAOE,IAAEC,EAAC;AAAA,oBAAC;AAAA,kBAAC,EAAE,GAAEH,IAAE;AAAE,kBAAAC,GAAE,MAAI,iBAAgBK,KAAEA,GAAE,cAAYL,GAAE,QAAQ,IAAI,eAAe;AAAE,sBAAIE,KAAE,cAAaG,KAAEA,GAAE,WAASA,GAAE;AAAa,kBAAAJ,GAAE,IAAI,EAAEC,IAAEF,EAAC,CAAC;AAAA,gBAAC,GAAEK,GAAE,UAAQ,WAAU;AAAC,kBAAAF,GAAE,IAAI,UAAU,wBAAwB,CAAC;AAAA,gBAAC,GAAEE,GAAE,YAAU,WAAU;AAAC,kBAAAF,GAAE,IAAI,UAAU,wBAAwB,CAAC;AAAA,gBAAC,GAAEE,GAAE,UAAQ,WAAU;AAAC,kBAAAF,GAAE,IAAIJ,GAAE,aAAa,WAAU,YAAY,CAAC;AAAA,gBAAC,GAAEM,GAAE,KAAKD,GAAE,QAAOA,GAAE,KAAI,IAAE,GAAE,cAAYA,GAAE,cAAYC,GAAE,kBAAgB,OAAG,WAASD,GAAE,gBAAcC,GAAE,kBAAgB,QAAI,kBAAiBA,MAAGH,OAAIG,GAAE,eAAa,SAAQD,GAAE,QAAQ,SAAS,SAASN,IAAEC,IAAE;AAAC,kBAAAM,GAAE,iBAAiBN,IAAED,EAAC;AAAA,gBAAC,EAAE,GAAEM,GAAE,WAASA,GAAE,OAAO,iBAAiB,SAAQE,EAAC,GAAED,GAAE,qBAAmB,WAAU;AAAC,wBAAIA,GAAE,cAAYD,GAAE,OAAO,oBAAoB,SAAQE,EAAC;AAAA,gBAAC,IAAGD,GAAE,KAAK,WAASD,GAAE,YAAU,OAAKA,GAAE,SAAS;AAAA,cAAC,EAAE;AAAA,YAAC;AAAC,cAAE,WAAS,MAAGN,GAAE,UAAQA,GAAE,QAAM,GAAEA,GAAE,UAAQ,GAAEA,GAAE,UAAQ,GAAEA,GAAE,WAAS,IAAGC,GAAE,UAAQ,GAAEA,GAAE,UAAQ,GAAEA,GAAE,WAAS,GAAEA,GAAE,QAAM,GAAE,OAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC;AAAA,UAAC,GAAE,CAAC,CAAC;AAAA,QAAC,GAAE,CAAC,GAAE,EAAE,MAAM,WAAS,MAAG,OAAO,EAAE,MAAM;AAAS,YAAI,IAAE;AAAE,SAACA,KAAE,EAAE,OAAO,UAAQ,EAAE,OAAMA,GAAE,QAAM,EAAE,OAAMA,GAAE,UAAQ,EAAE,SAAQA,GAAE,UAAQ,EAAE,SAAQA,GAAE,WAAS,EAAE,UAASD,GAAE,UAAQC;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,mBAAiBA,GAAE,eAAa,QAAOA,GAAE,eAAa,6BAA4BA,GAAE,mBAAiB;AAAA,MAA+B,GAAE,KAAI,SAASD,IAAEC,IAAE,GAAE;AAAC;AAAa,YAAI,IAAE,QAAM,KAAK,mBAAiB,SAASD,IAAE;AAAC,iBAAOA,MAAGA,GAAE,aAAWA,KAAE,EAAC,SAAQA,GAAC;AAAA,QAAC;AAAE,eAAO,eAAeC,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC;AAAE,cAAM,IAAE,EAAE,EAAE,GAAG,CAAC;AAAE,YAAI,IAAE;AAAK,cAAI,KAAG,GAAE,EAAE,SAAS,IAAGA,GAAE,UAAQ;AAAA,MAAC,GAAE,KAAI,SAASD,IAAEC,IAAE,GAAE;AAAC;AAAa,YAAI,IAAE,QAAM,KAAK,aAAW,SAASD,IAAEC,IAAEC,IAAEC,IAAE;AAAC,iBAAO,KAAID,OAAIA,KAAE,WAAW,SAASE,IAAEC,IAAE;AAAC,qBAASC,GAAEN,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,KAAKH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASO,GAAEP,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,MAAMH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASQ,GAAER,IAAE;AAAC,kBAAIC;AAAE,cAAAD,GAAE,OAAKI,GAAEJ,GAAE,KAAK,KAAGC,KAAED,GAAE,OAAMC,cAAaC,KAAED,KAAE,IAAIC,IAAG,SAASF,IAAE;AAAC,gBAAAA,GAAEC,EAAC;AAAA,cAAC,EAAE,GAAG,KAAKK,IAAEC,EAAC;AAAA,YAAC;AAAC,YAAAC,IAAGL,KAAEA,GAAE,MAAMH,IAAEC,MAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AAAA,UAAC,EAAE;AAAA,QAAC;AAAE,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC;AAAE,cAAM,IAAE,EAAE,EAAE,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,UAAQ,WAAU;AAAC,gBAAMD,KAAE,IAAI,EAAE;AAAO,cAAIC,KAAE,IAAI,EAAE,IAAID,EAAC;AAAE,iBAAM,EAAC,MAAK,SAASE,IAAE;AAAC,yBAAW,QAAO,QAAMA,KAAE,SAAOA,GAAE,UAAQF,GAAE,IAAI,SAAQE,GAAE,KAAK,GAAE,aAAW,QAAO,QAAMA,KAAE,SAAOA,GAAE,WAASF,GAAE,IAAI,UAASE,GAAE,MAAM,GAAEF,GAAE,IAAI,QAAO,QAAME,KAAE,SAAOA,GAAE,QAAM,WAAS,QAAMA,KAAE,SAAOA,GAAE,OAAK,EAAE,mBAAiB,EAAE,YAAY,GAAEF,GAAE,IAAI,OAAM,QAAME,KAAE,SAAOA,GAAE,GAAG,GAAED,GAAE,IAAI,6BAA4BD,EAAC;AAAA,UAAC,GAAE,MAAK,SAASE,IAAEE,IAAEC,IAAEC,KAAE,MAAGC,IAAEE,IAAE;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,cAAAP,MAAGD,GAAE,IAAI,mBAAmB,GAAEG,MAAGH,GAAE,IAAI,uBAAuB,GAAEI,MAAGJ,GAAE,IAAI,sBAAsB,GAAEI,GAAE,WAASA,GAAE,WAASA,GAAE,WAASA,GAAE,YAAUJ,GAAE,IAAI,2BAA2B;AAAE,oBAAME,KAAEH,GAAE,IAAI,KAAK,GAAE,IAAE,EAAC,aAAYE,IAAE,WAAUE,IAAE,YAAWK,IAAE,WAAUH,IAAE,IAAGC,IAAE,UAASF,GAAC;AAAE,kBAAG;AAAC,oBAAGL,GAAE,IAAI,QAAQ,EAAE,QAAOC,GAAE,IAAI,kDAAkD,GAAE,WAAW,KAAK,IAAI,CAAC;AAAG,sBAAMC,KAAE,OAAM,GAAE,EAAE,cAAcC,IAAE,GAAEF,EAAC;AAAE,uBAAOA,GAAE,IAAI,sBAAsB,GAAEC;AAAA,cAAC,SAAOF,IAAE;AAAC,uBAAOC,GAAE,IAAI,yBAAwBD,EAAC,GAAE;AAAA,cAAE;AAAA,YAAC,EAAE;AAAA,UAAC,GAAE,MAAK,SAASE,IAAEC,IAAEE,IAAEC,IAAE;AAAC,mBAAOJ,MAAGD,GAAE,IAAI,mBAAmB,GAAEE,MAAGF,GAAE,IAAI,uBAAuB,GAAE,IAAI,EAAE,KAAKD,IAAEE,IAAEC,IAAEE,IAAEC,EAAC;AAAA,UAAC,GAAE,WAAU,SAASJ,IAAEC,IAAEC,IAAE;AAAC,mBAAOF,MAAGD,GAAE,IAAI,2BAA2B,GAAEE,MAAGF,GAAE,IAAI,uBAAuB,GAAE,IAAI,EAAE,UAAUD,IAAEE,IAAEC,IAAEC,EAAC;AAAA,UAAC,GAAE,SAAQ,SAASF,IAAE;AAAC,mBAAOA,MAAGD,GAAE,IAAI,uBAAuB,GAAE,IAAI,EAAE,KAAKD,IAAEE,EAAC;AAAA,UAAC,GAAE,aAAY,SAASA,IAAEG,IAAEC,IAAE;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,cAAAJ,MAAGD,GAAE,IAAI,sBAAsB,GAAEI,MAAGA,GAAE,QAAMJ,GAAE,IAAI,8BAA8B;AAAE,oBAAME,MAAG,QAAME,KAAE,SAAOA,GAAE,UAAQ,WAAW,KAAK,IAAI,CAAC,IAAGE,KAAE,IAAI,EAAE,KAAKP,IAAEG,EAAC;AAAE,qBAAO,MAAMI,GAAE,YAAYL,IAAEG,IAAEC,EAAC,GAAEC;AAAA,YAAC,EAAE;AAAA,UAAC,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,IAAG,CAACP,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,UAAQ,QAAOA,GAAE,UAAQ,MAAK;AAAA,UAAC,cAAa;AAAC,iBAAK,QAAM,CAAC;AAAA,UAAC;AAAA,UAAC,QAAQD,IAAE;AAAC,iBAAK,MAAM,KAAKA,EAAC;AAAA,UAAC;AAAA,UAAC,UAAS;AAAC,mBAAO,KAAK,MAAM,MAAM;AAAA,UAAC;AAAA,UAAC,WAAU;AAAC,mBAAO,KAAK,MAAM,IAAI;AAAA,UAAC;AAAA,UAAC,QAAO;AAAC,mBAAO,KAAK,MAAM,CAAC;AAAA,UAAC;AAAA,UAAC,OAAM;AAAC,mBAAO,KAAK,MAAM,KAAK,MAAM,SAAO,CAAC;AAAA,UAAC;AAAA,UAAC,UAAS;AAAC,mBAAO,MAAI,KAAK,MAAM;AAAA,UAAM;AAAA,UAAC,OAAM;AAAC,mBAAO,KAAK,MAAM;AAAA,UAAM;AAAA,UAAC,IAAIA,IAAE;AAAC,mBAAO,KAAK,MAAMA,EAAC;AAAA,UAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,SAASA,IAAEC,IAAE,GAAE;AAAC;AAAa,YAAI,IAAE,QAAM,KAAK,aAAW,SAASD,IAAEC,IAAEC,IAAEC,IAAE;AAAC,iBAAO,KAAID,OAAIA,KAAE,WAAW,SAASE,IAAEC,IAAE;AAAC,qBAASC,GAAEN,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,KAAKH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASO,GAAEP,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,MAAMH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASQ,GAAER,IAAE;AAAC,kBAAIC;AAAE,cAAAD,GAAE,OAAKI,GAAEJ,GAAE,KAAK,KAAGC,KAAED,GAAE,OAAMC,cAAaC,KAAED,KAAE,IAAIC,IAAG,SAASF,IAAE;AAAC,gBAAAA,GAAEC,EAAC;AAAA,cAAC,EAAE,GAAG,KAAKK,IAAEC,EAAC;AAAA,YAAC;AAAC,YAAAC,IAAGL,KAAEA,GAAE,MAAMH,IAAEC,MAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AAAA,UAAC,EAAE;AAAA,QAAC;AAAE,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,YAAU;AAAO,cAAM,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,YAAU,MAAK;AAAA,UAAC,YAAYD,IAAEC,IAAEC,IAAEC,IAAE;AAAC,iBAAK,SAAOH,IAAE,KAAK,MAAI,IAAI,EAAE,IAAIA,EAAC,GAAE,KAAK,MAAIA,GAAE,IAAI,KAAK,GAAE,KAAK,gBAAcC,IAAE,KAAK,YAAUC,IAAE,KAAK,aAAWC,IAAE,KAAK,oBAAkB,EAAC,WAAU,MAAG,gBAAe,QAAO,gBAAe,QAAO,gBAAe,QAAO,kBAAiB,MAAG,gBAAe,YAAW,iBAAgB,EAAE,0BAAyB,QAAO,MAAG,WAAU,OAAG,iBAAgB,GAAE,GAAE,KAAK,WAAS,IAAG,KAAK,WAAS,MAAK,KAAK,UAAQ,EAAC,aAAY,MAAE,GAAE,KAAK,YAAU,IAAG,KAAK,eAAa,CAAC,GAAE,KAAK,YAAU,CAAC,GAAE,KAAK,cAAY,GAAE,KAAK,WAAS,GAAE,KAAK,kBAAgB,MAAK,KAAK,kBAAgB,CAAC,GAAE,KAAK,OAAK,OAAG,KAAK,iBAAe,MAAK,KAAK,WAAS,GAAE,KAAK,QAAM,GAAE,KAAK,YAAU,OAAG,KAAK,kBAAgB;AAAA,UAAC;AAAA,UAAC,SAASH,IAAEC,KAAE,CAAC,GAAE;AAAC,gBAAIC;AAAE,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,mBAAK,oBAAkB,OAAO,OAAO,OAAO,OAAO,CAAC,GAAE,KAAK,iBAAiB,GAAED,EAAC,GAAE,KAAK,WAASD,IAAEC,GAAE,SAAO,KAAK,WAASA,GAAE,OAAMA,GAAE,iBAAe,KAAK,eAAaA,GAAE,eAAc,KAAK,OAAO,IAAI,QAAQ,KAAG,KAAK,IAAI,IAAI,wEAAwE;AAAE,kBAAG;AAAC,sBAAMD,KAAE,UAAK,KAAK,kBAAkB,SAAO,KAAK,QAAQ,IAAE;AAAK,oBAAGA,GAAE,MAAK,IAAI,IAAI,0BAA0BA,GAAE,SAAS,YAAYA,GAAE,WAAW,EAAE,GAAE,KAAK,UAAU,GAAE,KAAK,WAAW;AAAA,qBAAM;AAAC,wBAAMA,KAAE,MAAM,KAAK,eAAe;AAAE,uBAAK,YAAUA,GAAE,WAAU,KAAK,WAASA,GAAE,UAAS,KAAK,cAAY,UAAQE,KAAEF,GAAE,gBAAc,WAASE,KAAEA,KAAE,GAAE,KAAK,QAAM,KAAK,IAAI,KAAK,WAAS,GAAE,CAAC;AAAE,wBAAMD,MAAG,GAAE,EAAE,aAAaD,IAAE,KAAK,eAAe,CAAC;AAAE,sBAAG,KAAK,UAAU,GAAE,UAAQC,GAAE,KAAK,QAAO,MAAM,KAAK,UAAUA,EAAC,GAAE,MAAK,KAAK,kBAAkB,kBAAgB,MAAM,KAAK,kBAAkB,cAAc,EAAC,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,WAAU,KAAK,WAAU,WAAU,KAAE,CAAC;AAAI,uBAAK,eAAeA,EAAC,GAAE,KAAK,WAAW,GAAE,KAAK,QAAQ;AAAA,gBAAC;AAAC,qBAAK,kBAAgB,KAAK,IAAI,GAAE,KAAK,kBAAkB,kBAAgB,MAAM,KAAK,kBAAkB,cAAc,EAAC,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,WAAU,KAAK,WAAU,mBAAkB,KAAK,kBAAiB,CAAC;AAAA,cAAE,SAAOD,IAAE;AAAC,qBAAK,IAAI,IAAI,oCAAoC,KAAK,aAAa,KAAIA,EAAC,GAAE,KAAK,YAAYA,EAAC,GAAE,KAAK,kBAAkB,kBAAgB,MAAM,KAAK,kBAAkB,cAAc,EAAC,SAAQ,OAAG,OAAMA,GAAC,CAAC;AAAA,cAAE;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,OAAM;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,qBAAO,KAAK,QAAQ;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,SAAQ;AAAC,kBAAMA,KAAE,SAAS,eAAe,KAAK,OAAO,CAAC;AAAE,mBAAOA,MAAG,GAAE,EAAE,cAAcA,EAAC,IAAE,CAAC;AAAA,UAAC;AAAA,UAAC,kBAAiB;AAAC,mBAAM,CAAC,GAAG,KAAK,YAAY;AAAA,UAAC;AAAA,UAAC,eAAc;AAAC,mBAAO,KAAK;AAAA,UAAS;AAAA,UAAC,QAAO;AAAC,iBAAK,YAAU,IAAG,KAAK,eAAa,CAAC,GAAE,KAAK,YAAU,CAAC,GAAE,KAAK,cAAY,GAAE,KAAK,WAAS,GAAE,KAAK,kBAAgB,MAAK,KAAK,kBAAgB,CAAC,GAAE,KAAK,OAAK,OAAG,KAAK,YAAU,OAAG,KAAK,WAAS,GAAE,KAAK,oBAAoB,GAAE,KAAK,eAAe;AAAA,UAAC;AAAA,UAAC,UAAS;AAAC,gBAAIA;AAAE,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG,KAAK,QAAM,KAAK,aAAW,CAAC,KAAK,gBAAgB;AAAO,mBAAK,OAAK,MAAG,KAAK,kBAAkB,IAAE,GAAE,KAAK,WAAW;AAAE,oBAAMC,KAAE,KAAK;AAAgB,kBAAG;AAAC,sBAAMC,KAAE,SAAS,eAAe,KAAK,OAAO,CAAC,GAAEC,KAAE,SAAS,eAAe,KAAK,YAAY,CAAC;AAAE,oBAAG,CAACD,GAAE,OAAM,IAAI,MAAM,sBAAsB;AAAE,uBAAM,GAAE,EAAE,kBAAkBC,EAAC;AAAE,sBAAMC,MAAG,GAAE,EAAE,cAAcF,EAAC;AAAE,oBAAIG,MAAG,GAAE,EAAE,cAAcD,IAAEH,IAAE,KAAK,kBAAkB,eAAe;AAAE,oBAAG,OAAKI,IAAE;AAAC,sBAAGJ,GAAE,QAAQ,QAAO,KAAK,KAAK,UAAU,KAAK,kBAAkB,mBAAiB,kCAAkC;AAAE,kBAAAI,KAAE,KAAK,kBAAkB,mBAAiB;AAAA,gBAAE;AAAC,qBAAK,kBAAkB,sBAAoB,MAAM,KAAK,kBAAkB,kBAAkB,EAAC,SAAQ,MAAG,UAAS,KAAK,UAAS,OAAM,KAAK,MAAK,CAAC;AAAG,sBAAMI,KAAE,EAAC,MAAK,QAAO,SAAQJ,IAAE,cAAaJ,GAAE,MAAK,aAAYA,GAAE,IAAG,GAAES,KAAE,KAAK,cAAY,GAAE,IAAE,OAAM,GAAE,EAAE,eAAe,KAAK,KAAI,EAAC,WAAU,KAAK,WAAU,YAAW,KAAK,YAAW,eAAc,KAAK,eAAc,WAAU,KAAK,WAAU,cAAa,CAAC,GAAG,KAAK,YAAY,GAAE,aAAYA,IAAE,YAAWL,IAAE,iBAAgBJ,GAAE,KAAI,WAAU,CAAC,GAAG,KAAK,SAAS,EAAC,GAAE,KAAK,GAAG;AAAE,qBAAK,aAAa,KAAKQ,EAAC,GAAE,KAAK,cAAY,UAAQT,KAAE,EAAE,gBAAc,WAASA,KAAEA,KAAEU,IAAE,EAAE,aAAW,KAAK,WAAS,EAAE,WAAU,KAAK,QAAM,KAAK,IAAI,KAAK,WAAS,GAAE,CAAC;AAAE,sBAAM,KAAG,GAAE,EAAE,aAAa,GAAE,KAAK,eAAe,CAAC;AAAE,oBAAG,UAAQ,EAAE,KAAK,QAAO,MAAK,MAAM,KAAK,UAAU,CAAC;AAAG,oBAAG,KAAK,WAAS,KAAG,KAAK,cAAY,KAAK,WAAS,EAAE,QAAO,MAAK,MAAM,KAAK,UAAU,EAAC,MAAK,OAAM,QAAO,aAAY,aAAY,KAAK,aAAY,UAAS,KAAK,SAAQ,CAAC;AAAG,qBAAK,eAAe,CAAC,GAAE,KAAK,WAAW,GAAE,KAAK,QAAQ,GAAE,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,MAAK,KAAK,aAAY,UAAS,KAAK,UAAS,UAAS,EAAE,UAAS,YAAW,EAAE,YAAW,OAAM,EAAE,OAAM,cAAa,EAAE,cAAa,iBAAgB,EAAE,iBAAgB,cAAa,KAAK,gBAAgB,EAAC,CAAC,IAAG,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,UAAS,KAAK,WAAU,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,WAAU,OAAG,OAAM,KAAI,CAAC;AAAA,cAAE,SAAOV,IAAE;AAAC,sBAAM,KAAK,gBAAgBA,EAAC;AAAA,cAAC,UAAC;AAAQ,qBAAK,cAAY,KAAK,OAAK,OAAG,KAAK,kBAAgB,KAAK,kBAAkB,KAAE;AAAA,cAAE;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,gBAAgBA,IAAE;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,mBAAK,IAAI,IAAI,2CAA2C,KAAK,aAAa,KAAIA,EAAC,GAAEA,cAAa,EAAE,iBAAe,mBAAiBA,GAAE,OAAK,KAAK,wBAAwBA,GAAE,gBAAc,GAAG,IAAE,KAAK,UAAU,KAAK,gBAAgBA,EAAC,CAAC,GAAE,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,WAAU,OAAG,OAAMA,GAAC,CAAC;AAAA,YAAE,EAAE;AAAA,UAAC;AAAA,UAAC,eAAeA,IAAE;AAAC,kBAAMC,KAAED,GAAE;AAAS,YAAAA,GAAE,cAAYC,GAAE,OAAK,CAAC,KAAK,UAAU,SAASA,GAAE,GAAG,KAAG,KAAK,UAAU,KAAKA,GAAE,GAAG,GAAE,KAAK,aAAa,KAAK,EAAC,MAAK,SAAQ,SAAQA,GAAE,OAAM,cAAaA,GAAE,MAAK,aAAYA,GAAE,IAAG,CAAC,GAAE,KAAK,kBAAgBA,IAAE,KAAK,gBAAgB,KAAKA,EAAC,GAAE,KAAK,WAAS,KAAK,IAAI,KAAK,cAAY,GAAE,CAAC;AAAA,UAAC;AAAA,UAAC,SAAQ;AAAC,mBAAM,yBAAuB,KAAK;AAAA,UAAa;AAAA,UAAC,cAAa;AAAC,mBAAM,mCAAiC,KAAK;AAAA,UAAa;AAAA,UAAC,YAAW;AAAC,kBAAMD,MAAG,GAAE,EAAE,mBAAmB,KAAK,UAAS,KAAK,aAAa;AAAE,iBAAK,iBAAe,GAAE,EAAE,mBAAmBA,IAAE,KAAK,YAAY;AAAE,kBAAMC,KAAE,SAAS,cAAc,MAAM;AAAE,YAAAA,GAAE,UAAU,IAAI,oBAAoB,GAAEA,GAAE,UAAU,IAAI,0BAA0B,GAAEA,GAAE,KAAG,KAAK,OAAO,GAAEA,GAAE,iBAAiB,WAAU,CAAAD,OAAG;AAAC,cAAAA,GAAE,eAAe,GAAE,KAAK,QAAQ;AAAA,YAAC,EAAE;AAAE,kBAAME,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,UAAU,IAAI,yBAAyB,GAAEA,GAAE,KAAG,KAAK,YAAY,GAAED,GAAE,YAAYC,EAAC,GAAE,KAAK,kBAAkB,aAAWD,GAAE,aAAa,GAAE,EAAE,eAAe,KAAK,kBAAkB,YAAU,gBAAc,cAAa,MAAI,KAAK,KAAK,IAAG,KAAK,kBAAkB,gBAAe,KAAK,kBAAkB,gBAAe,KAAK,kBAAkB,cAAc,CAAC,GAAED,GAAE,YAAYC,EAAC;AAAA,UAAC;AAAA,UAAC,aAAY;AAAC,kBAAMD,KAAE,SAAS,eAAe,KAAK,YAAY,CAAC;AAAE,YAAAA,MAAG,KAAK,oBAAkBA,GAAE,YAAU,KAAI,GAAE,EAAE,iBAAiB,CAAC,KAAK,eAAe,GAAE,KAAK,kBAAkB,gBAAe,KAAK,UAAS,KAAK,UAAS,MAAI,KAAK,QAAQ,EAAE,EAAE,SAAS,CAAAC,OAAGD,GAAE,YAAYC,EAAC,EAAE;AAAA,UAAE;AAAA,UAAC,UAAUD,IAAE;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,mBAAK,YAAU,MAAG,KAAK,kBAAgB,MAAK,KAAK,OAAK,OAAG,KAAK,kBAAgB,KAAK,kBAAgB,KAAK,IAAI,IAAE,KAAK,kBAAgB,GAAE,KAAK,oBAAoB,GAAE,KAAK,eAAe;AAAE,oBAAMC,KAAE,SAAS,eAAe,6BAA2B,KAAK,aAAa;AAAE,kBAAGA,MAAG,UAAK,KAAK,kBAAkB,kBAAiB;AAAC,gBAAAA,GAAE,YAAU;AAAG,sBAAMC,KAAE,cAAYF,GAAE,SAAO,KAAK,kBAAkB,kBAAgB,iEAA0D,KAAK,kBAAkB,kBAAgB,gCAA+BG,MAAG,GAAE,EAAE,eAAeD,EAAC;AAAE,gBAAAC,GAAE,UAAU,IAAI,+BAA+B,GAAEA,GAAE,UAAU,IAAI,yBAAyB,GAAE,cAAYH,GAAE,UAAQG,GAAE,UAAU,IAAI,kCAAkC,GAAEF,GAAE,YAAYE,EAAC;AAAA,cAAC;AAAC,mBAAK,kBAAkB,kBAAgB,MAAM,KAAK,kBAAkB,cAAc,EAAC,WAAU,KAAK,WAAU,QAAOH,GAAE,QAAO,OAAM,KAAK,aAAY,UAAS,KAAK,UAAS,cAAa,KAAK,gBAAgB,GAAE,iBAAgBA,GAAE,iBAAgB,iBAAgB,KAAK,gBAAe,CAAC,IAAG,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,UAAS,KAAK,WAAU,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,WAAU,MAAG,OAAM,KAAI,CAAC;AAAA,YAAE,EAAE;AAAA,UAAC;AAAA,UAAC,OAAM;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,mBAAK,QAAM,KAAK,aAAW,KAAK,kBAAkB,cAAY,KAAK,gBAAgB,SAAO,MAAI,KAAK,gBAAgB,IAAI,GAAE,KAAK,aAAa,IAAI,GAAE,KAAK,aAAa,IAAI,GAAE,KAAK,kBAAgB,KAAK,gBAAgB,KAAK,gBAAgB,SAAO,CAAC,GAAE,KAAK,cAAY,KAAK,IAAI,KAAK,cAAY,GAAE,CAAC,GAAE,KAAK,WAAS,KAAK,IAAI,KAAK,cAAY,GAAE,CAAC,GAAE,KAAK,WAAW,GAAE,KAAK,WAAW,GAAE,KAAK,QAAQ,GAAE,KAAK,kBAAkB,gBAAc,MAAM,KAAK,kBAAkB,YAAY,EAAC,UAAS,KAAK,UAAS,OAAM,KAAK,MAAK,CAAC;AAAA,YAAI,EAAE;AAAA,UAAC;AAAA,UAAC,YAAYA,IAAE;AAAC,gBAAG;AAAC,eAAC,GAAE,EAAE,mBAAmB,KAAK,UAAS,KAAK,aAAa,EAAE,aAAa,GAAE,EAAE,aAAa,KAAK,gBAAgBA,EAAC,CAAC,CAAC;AAAA,YAAC,SAAOA,IAAE;AAAA,YAAC;AAAA,UAAC;AAAA,UAAC,gBAAgBA,IAAE;AAAC,gBAAG,EAAEA,cAAa,EAAE,eAAe,QAAM;AAA0C,oBAAOA,GAAE,MAAK;AAAA,cAAC,KAAI;AAAA,cAAO,KAAI;AAAA,cAAY,KAAI;AAAa,uBAAM;AAAA,cAA0C,KAAI;AAAiB,uBAAM;AAAA,cAA8D;AAAQ,uBAAM;AAAA,YAAyC;AAAA,UAAC;AAAA,UAAC,iBAAgB;AAAC,mBAAM,EAAC,eAAc,KAAK,eAAc,WAAU,KAAK,WAAU,UAAS,KAAK,UAAS,KAAI,KAAK,IAAG;AAAA,UAAC;AAAA,UAAC,iBAAgB;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,oBAAMA,KAAE,EAAC,WAAU,KAAK,WAAU,YAAW,KAAK,YAAW,eAAc,KAAK,cAAa;AAAE,kBAAG;AAAC,uBAAO,OAAM,GAAE,EAAE,kBAAkB,KAAK,KAAIA,IAAE,KAAK,GAAG;AAAA,cAAC,SAAOC,IAAE;AAAC,oBAAGA,cAAa,EAAE,iBAAe,qBAAmBA,GAAE,KAAK,QAAO,KAAK,IAAI,IAAI,8CAA8C,GAAE,MAAM,IAAI,SAAS,CAAAD,OAAG,WAAWA,IAAE,IAAI,EAAE,GAAE,OAAM,GAAE,EAAE,kBAAkB,KAAK,KAAIA,IAAE,KAAK,GAAG;AAAE,sBAAMC;AAAA,cAAC;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,kBAAkBD,IAAE;AAAC,kBAAMC,KAAE,SAAS,eAAe,sBAAsB;AAAE,YAAAA,OAAIA,GAAE,WAASD;AAAA,UAAE;AAAA,UAAC,aAAY;AAAC,kBAAMA,KAAE,SAAS,eAAe,KAAK,YAAY,CAAC;AAAE,oBAAMA,MAAGA,GAAE,iBAAiB,sBAAsB,EAAE,SAAS,CAAAA,OAAGA,GAAE,OAAO,EAAE;AAAA,UAAC;AAAA,UAAC,UAAUA,IAAE;AAAC,kBAAMC,KAAE,SAAS,eAAe,KAAK,YAAY,CAAC;AAAE,YAAAA,OAAI,KAAK,WAAW,GAAEA,GAAE,cAAc,GAAE,EAAE,aAAaD,EAAC,GAAEC,GAAE,UAAU;AAAA,UAAE;AAAA,UAAC,wBAAwBD,IAAE;AAAC,iBAAK,oBAAoB,GAAE,KAAK,kBAAkB,IAAE;AAAE,gBAAIC,KAAE,KAAK,KAAKD,KAAE,GAAG;AAAE,kBAAME,KAAE,KAAK,kBAAkB,oBAAkB,mDAA6CC,KAAE,MAAI;AAAC,kBAAGF,MAAG,EAAE,QAAO,KAAK,oBAAoB,GAAE,KAAK,WAAW,GAAE,KAAK,KAAK,kBAAkB,KAAE;AAAE,mBAAK,UAAUC,GAAE,QAAQ,aAAY,OAAOD,EAAC,CAAC,CAAC,GAAEA,MAAG;AAAA,YAAC;AAAE,YAAAE,GAAE,GAAE,KAAK,iBAAe,YAAYA,IAAE,GAAG;AAAA,UAAC;AAAA,UAAC,sBAAqB;AAAC,iBAAK,mBAAiB,cAAc,KAAK,cAAc,GAAE,KAAK,iBAAe;AAAA,UAAK;AAAA,UAAC,aAAY;AAAC,mBAAM,uBAAuB,KAAK,aAAa;AAAA,UAAE;AAAA,UAAC,UAAS;AAAC,gBAAG,UAAK,KAAK,kBAAkB,OAAO,KAAG;AAAC,oBAAMH,KAAE,EAAC,WAAU,KAAK,WAAU,cAAa,KAAK,cAAa,aAAY,KAAK,aAAY,UAAS,KAAK,UAAS,WAAU,KAAK,WAAU,iBAAgB,KAAK,iBAAgB,SAAQ,KAAK,IAAI,EAAC;AAAE,2BAAa,QAAQ,KAAK,WAAW,GAAE,KAAK,UAAUA,EAAC,CAAC;AAAA,YAAC,SAAOA,IAAE;AAAC,mBAAK,IAAI,IAAI,uCAAsCA,EAAC;AAAA,YAAC;AAAA,UAAC;AAAA,UAAC,UAAS;AAAC,gBAAIA;AAAE,gBAAG;AAAC,oBAAMC,KAAE,aAAa,QAAQ,KAAK,WAAW,CAAC;AAAE,kBAAG,CAACA,GAAE,QAAO;AAAK,oBAAMC,KAAE,KAAK,MAAMD,EAAC;AAAE,sBAAO,QAAMC,KAAE,SAAOA,GAAE,eAAa,UAAQF,KAAEE,GAAE,oBAAkB,WAASF,KAAE,SAAOA,GAAE,UAAQ,KAAK,IAAI,KAAGE,GAAE,WAAS,KAAG,QAAM,KAAK,eAAe,GAAE,SAAO,KAAK,YAAUA,GAAE,WAAU,KAAK,eAAaA,GAAE,gBAAc,CAAC,GAAE,KAAK,cAAYA,GAAE,eAAa,GAAE,KAAK,WAASA,GAAE,YAAU,GAAE,KAAK,YAAUA,GAAE,aAAW,CAAC,GAAE,KAAK,kBAAgBA,GAAE,iBAAgB,KAAK,kBAAgB,KAAK,gBAAgB,KAAK,gBAAgB,SAAO,CAAC,GAAE,KAAK,QAAM,KAAK,IAAI,KAAK,WAAS,GAAE,CAAC,GAAE,KAAK,WAAS,KAAK,IAAI,KAAK,cAAY,GAAE,CAAC,GAAEA,MAAG;AAAA,YAAI,SAAOF,IAAE;AAAC,qBAAO,KAAK,IAAI,IAAI,uCAAsCA,EAAC,GAAE;AAAA,YAAI;AAAA,UAAC;AAAA,UAAC,iBAAgB;AAAC,gBAAG;AAAC,2BAAa,WAAW,KAAK,WAAW,CAAC;AAAA,YAAC,SAAOA,IAAE;AAAA,YAAC;AAAA,UAAC;AAAA,UAAC,wBAAwBA,IAAE;AAAC,gBAAIC,IAAEC;AAAE,aAAC,UAAQD,KAAE,QAAMD,KAAE,SAAOA,GAAE,SAAO,WAASC,KAAE,SAAOA,GAAE,YAAU,KAAK,WAASD,GAAE,KAAK,CAAC,KAAI,QAAMA,KAAE,SAAOA,GAAE,aAAW,KAAK,UAAQA,GAAE,WAAU,UAAQE,KAAE,QAAMF,KAAE,SAAOA,GAAE,UAAQ,WAASE,KAAE,SAAOA,GAAE,kBAAgB,KAAK,eAAaF,GAAE,MAAM;AAAA,UAAa;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,SAAO,QAAOA,GAAE,SAAO,MAAK;AAAA,UAAC,cAAa;AAAC,iBAAK,YAAU,CAAC,GAAE,KAAK,UAAU,MAAI,QAAO,KAAK,UAAU,QAAM,OAAG,KAAK,UAAU,SAAO;AAAA,UAAE;AAAA,UAAC,IAAID,IAAE;AAAC,mBAAO,KAAK,UAAUA,EAAC;AAAA,UAAC;AAAA,UAAC,IAAIA,IAAEC,IAAE;AAAC,iBAAK,UAAUD,EAAC,IAAEC;AAAA,UAAC;AAAA,QAAC;AAAA,MAAC,GAAE,IAAG,SAASD,IAAEC,IAAE,GAAE;AAAC;AAAa,YAAI,IAAE,QAAM,KAAK,aAAW,SAASD,IAAEC,IAAEC,IAAEC,IAAE;AAAC,iBAAO,KAAID,OAAIA,KAAE,WAAW,SAASE,IAAEC,IAAE;AAAC,qBAASC,GAAEN,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,KAAKH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASO,GAAEP,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,MAAMH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASQ,GAAER,IAAE;AAAC,kBAAIC;AAAE,cAAAD,GAAE,OAAKI,GAAEJ,GAAE,KAAK,KAAGC,KAAED,GAAE,OAAMC,cAAaC,KAAED,KAAE,IAAIC,IAAG,SAASF,IAAE;AAAC,gBAAAA,GAAEC,EAAC;AAAA,cAAC,EAAE,GAAG,KAAKK,IAAEC,EAAC;AAAA,YAAC;AAAC,YAAAC,IAAGL,KAAEA,GAAE,MAAMH,IAAEC,MAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AAAA,UAAC,EAAE;AAAA,QAAC;AAAE,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,OAAK;AAAO,cAAM,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,EAAE,GAAE,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,OAAK,MAAK;AAAA,UAAC,YAAYD,IAAEC,IAAEC,IAAEC,IAAEC,IAAE;AAAC,iBAAK,SAAOJ,IAAE,KAAK,MAAI,IAAI,EAAE,IAAIA,EAAC,GAAE,KAAK,oBAAkB,EAAC,WAAU,MAAG,gBAAe,QAAO,gBAAe,QAAO,gBAAe,QAAO,kBAAiB,MAAG,aAAY,MAAG,gBAAe,CAAC,GAAE,gBAAe,WAAU,GAAE,KAAK,WAAS,IAAG,KAAK,QAAMC,IAAE,KAAK,YAAUC,MAAG,IAAG,KAAK,MAAIF,GAAE,IAAI,KAAK,GAAE,KAAK,KAAG,IAAG,KAAK,WAAS,MAAK,KAAK,WAAS,EAAC,MAAK,IAAG,SAAQ,CAAC,GAAE,SAAQ,QAAMG,KAAEA,KAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,UAAS,QAAMC,KAAEA,KAAE,CAAC,EAAC,GAAE,KAAK,UAAQ,IAAI,EAAE,WAAQ,KAAK,YAAU,MAAK,KAAK,QAAM,IAAI,EAAE,UAAU,CAAC,CAAC,GAAE,KAAK,WAAS,GAAE,KAAK,QAAM,GAAE,KAAK,YAAU,OAAG,KAAK,kBAAgB;AAAA,UAAC;AAAA,UAAC,SAASJ,IAAEC,IAAE;AAAC,gBAAIC,IAAEE,IAAEE,IAAEE,IAAEC,IAAEE,IAAED;AAAE,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG;AAAC,qBAAK,oBAAkB,OAAO,OAAO,OAAO,OAAO,CAAC,GAAE,KAAK,iBAAiB,GAAET,EAAC,GAAE,KAAK,WAASD;AAAE,oBAAIG,KAAE,KAAK;AAAS,oBAAG,WAAS,KAAK,YAAU,KAAK,aAAWA,KAAE,OAAK,KAAK,YAAU,OAAM,GAAE,EAAE,SAAS,KAAK,KAAI,KAAK,OAAM,KAAK,WAAU,KAAK,GAAG,IAAE,OAAM,GAAE,EAAE,gBAAgB,KAAK,KAAI,KAAK,OAAM,KAAK,GAAG,IAAG,WAASA,MAAG,CAACA,GAAE,OAAM,IAAI,MAAM,mBAAmB,KAAK,KAAK,EAAE;AAAE,oBAAG,UAAQD,KAAEC,GAAE,UAAQ,WAASD,KAAE,SAAOA,GAAE,QAAQ,OAAM,IAAI,MAAMC,GAAE,MAAM,OAAO;AAAE,oBAAG,YAAUA,GAAE,KAAK,QAAO,KAAK,YAAU,IAAI,EAAE,UAAU,KAAK,QAAO,KAAK,OAAM,KAAK,SAAS,GAAE,KAAK,UAAU,wBAAwBA,EAAC,GAAE,MAAK,MAAM,KAAK,UAAU,SAASH,IAAEC,EAAC;AAAG,oBAAGE,GAAE,aAAW,UAAQC,KAAED,GAAE,cAAY,WAASC,KAAE,SAAOA,GAAE,QAAQ,CAAAJ,OAAG,aAAWA,GAAE,OAAO,MAAI,CAAC,GAAEG,GAAE,SAAO,UAAQG,KAAEH,GAAE,UAAQ,WAASG,KAAE,SAAOA,GAAE,QAAQ,CAAAN,OAAG,aAAWA,GAAE,OAAO,MAAI,CAAC,GAAE,UAAQQ,KAAEL,GAAE,UAAQ,WAASK,MAAGA,GAAE,SAAS,CAAAR,OAAG;AAAC,sBAAIC;AAAE,yBAAOD,GAAE,uBAAqB,UAAQC,KAAED,GAAE,yBAAuB,WAASC,KAAE,SAAOA,GAAE,QAAQ,CAAAD,OAAG,aAAWA,GAAE,OAAO;AAAA,gBAAC,EAAE,GAAE,KAAK,WAASG,IAAE,KAAK,SAAS,YAAU,KAAK,SAAS,UAAQ,oBAAI,QAAK,aAAa,QAAQ,iBAAiB,KAAK,KAAK,IAAG,KAAK,UAAU,KAAK,QAAQ,CAAC,IAAG,WAAS,KAAK,SAAS,aAAW,CAAC,KAAK,SAAS,UAAU,OAAM,IAAI,MAAM,wBAAwB,KAAK,KAAK,EAAE;AAAE,qBAAK,SAAS,SAAO,OAAK,UAAQM,KAAE,KAAK,SAAS,UAAQ,WAASA,KAAE,SAAOA,GAAE,WAAS,KAAK,YAAY,GAAE,UAAQE,KAAE,KAAK,SAAS,cAAY,WAASA,MAAGA,GAAE,MAAM,CAACX,IAAEC,OAAID,GAAE,WAASC,GAAE,SAAS,GAAE,KAAK,SAAS,QAAM,KAAK,SAAS,MAAM,QAAQ,CAAAD,OAAG;AAAC,sBAAIC;AAAE,0BAAO,UAAQA,KAAED,GAAE,yBAAuB,WAASC,KAAE,SAAOA,GAAE,UAAQ;AAAA,gBAAC,EAAE,GAAE,KAAK,kBAAkB,eAAa,KAAK,YAAY,IAAG,UAAQS,KAAE,KAAK,SAAS,UAAQ,WAASA,KAAE,SAAOA,GAAE,gBAAc,MAAM,KAAK,uBAAuB,KAAK,SAAS,MAAM,YAAY,IAAE,KAAK,UAAU;AAAA,cAAC,SAAOV,IAAE;AAAC,uBAAO,KAAK,IAAI,IAAIA,EAAC,GAAE,MAAK,KAAK,kBAAkB,kBAAgB,MAAM,KAAK,kBAAkB,cAAc,EAAC,SAAQ,OAAG,OAAMA,GAAC,CAAC;AAAA,cAAG;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,YAAYA,IAAEC,IAAEC,KAAE,CAAC,GAAE;AAAC,gBAAIE,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEE,IAAED,IAAEE;AAAE,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG;AAAC,oBAAG,CAACX,MAAG,CAACA,GAAE,KAAK,OAAM,IAAI,MAAM,8CAA8C;AAAE,oBAAG,CAACA,GAAE,KAAK,wBAAsB,MAAIA,GAAE,KAAK,qBAAqB,OAAO,OAAM,IAAI,MAAM,mDAAmD;AAAE,qBAAK,OAAO,IAAI,UAAS,IAAE,GAAE,KAAK,oBAAkB,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,CAAC,GAAE,KAAK,iBAAiB,GAAE,EAAC,aAAY,MAAE,CAAC,GAAEC,EAAC,GAAE,KAAK,WAASF;AAAE,sBAAMG,MAAGF,GAAE,KAAK,wBAAsB,CAAC,GAAG,QAAQ,CAAAD,OAAG,CAACA,GAAE,UAAQ,aAAWA,GAAE,OAAO,EAAE,MAAM,CAACA,IAAEC,OAAID,GAAE,WAASC,GAAE,SAAS,GAAEY,KAAE,IAAI,EAAE,KAAK,UAAQT,KAAEH,GAAE,KAAK,OAAK,WAASG,KAAEA,KAAE,KAAI,UAAQC,KAAEJ,GAAE,KAAK,aAAW,WAASI,KAAEA,KAAE,GAAE,UAAQC,KAAEL,GAAE,UAAQ,WAASK,KAAEA,KAAE,KAAK,OAAMH,IAAE,UAAQI,KAAEN,GAAE,KAAK,0BAAwB,WAASM,KAAEA,KAAE,CAAC,CAAC;AAAE,qBAAK,WAAS,EAAC,IAAG,UAAQC,KAAEP,GAAE,UAAQ,WAASO,KAAEA,KAAE,KAAK,OAAM,UAAS,UAAQC,KAAER,GAAE,aAAW,WAASQ,KAAEA,KAAE,aAAY,MAAK,CAAC,UAAQE,KAAEV,GAAE,SAAO,WAASU,KAAEA,KAAE,IAAI,GAAE,SAAQ,UAAQD,KAAET,GAAE,YAAU,WAASS,KAAEA,KAAE,EAAC,aAAY,MAAE,GAAE,OAAM,UAAQE,KAAEX,GAAE,UAAQ,WAASW,KAAEA,KAAE,CAAC,GAAE,WAAUT,IAAE,OAAM,CAACU,EAAC,EAAC,GAAE,MAAM,KAAK,aAAa;AAAA,cAAC,SAAOb,IAAE;AAAC,uBAAO,KAAK,IAAI,IAAIA,EAAC,GAAE,MAAK,KAAK,kBAAkB,kBAAgB,MAAM,KAAK,kBAAkB,cAAc,EAAC,SAAQ,OAAG,OAAMA,GAAC,CAAC;AAAA,cAAG;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,cAAa;AAAC,gBAAIA;AAAE,gBAAG,KAAK,SAAS,SAAO,KAAK,SAAS,UAAS;AAAA,cAAC,KAAI;AAAc,qBAAK,SAAS,QAAM,CAAC,GAAE,UAAQA,KAAE,KAAK,SAAS,cAAY,WAASA,MAAGA,GAAE,SAAS,CAAAA,OAAG;AAAC,sBAAIC,IAAEC;AAAE,wBAAMC,KAAE,IAAI,EAAE,UAAUH,GAAE,IAAGA,GAAE,KAAI,EAAE,aAAa,SAAQ,CAAC,GAAE,EAAE,eAAe,OAAMA,GAAE,WAAS,GAAG,SAAS,GAAEA,GAAE,SAAS,SAAS,CAAC,GAAEI,KAAE,IAAI,EAAE,KAAKJ,GAAE,SAAS,SAAS,GAAEA,GAAE,UAAS,KAAK,OAAM,CAACA,EAAC,GAAE,CAACG,EAAC,CAAC;AAAE,4BAAQD,KAAE,UAAQD,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,UAAQ,WAASC,MAAGA,GAAE,KAAKE,EAAC;AAAA,gBAAC,EAAE;AAAE;AAAA,cAAM,KAAI;AAAY,sBAAMH,KAAE,IAAI,EAAE,KAAK,KAAI,GAAE,KAAK,OAAM,KAAK,SAAS,WAAU,CAAC,CAAC;AAAE,qBAAK,SAAS,QAAM,CAACA,EAAC;AAAA,YAAC;AAAA,UAAC;AAAA,UAAC,oBAAmB;AAAC,gBAAID,IAAEC;AAAE,kBAAMC,MAAG,GAAE,EAAE,mBAAmB,KAAK,UAAS,KAAK,KAAK,GAAEC,KAAE,UAAQF,KAAE,UAAQD,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,UAAQ,WAASC,KAAE,SAAOA,GAAE;AAAa,mBAAOE,OAAI,GAAE,EAAE,mBAAmBD,IAAEC,EAAC,GAAED;AAAA,UAAC;AAAA,UAAC,eAAc;AAAC,gBAAIF,IAAEC,IAAEC,IAAEE;AAAE,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG;AAAC,oBAAG,CAAC,KAAK,YAAU,CAAC,KAAK,SAAS,SAAO,MAAI,KAAK,SAAS,MAAM,OAAO,OAAM,IAAI,MAAM,cAAc;AAAE,qBAAK,QAAM,IAAI,EAAE,UAAU,KAAK,SAAS,MAAM,MAAM,CAACJ,IAAEC,OAAID,GAAE,WAASC,GAAE,SAAS,CAAC;AAAE,oBAAIE,KAAE,KAAK,kBAAkB;AAAE,sBAAME,KAAE,SAAS,cAAc,MAAM;AAAE,gBAAAA,GAAE,UAAU,IAAI,oBAAoB,GAAEA,GAAE,KAAG,mBAAiB,KAAK,OAAMA,GAAE,iBAAiB,WAAU,CAAAL,OAAGA,GAAE,eAAe,EAAE;AAAE,sBAAMM,KAAE,SAAS,cAAc,KAAK;AAAE,gBAAAA,GAAE,UAAU,IAAI,yBAAyB,GAAEA,GAAE,KAAG,6BAA2B,KAAK;AAAM,sBAAMC,KAAE,KAAK,MAAM,aAAa;AAAE,oBAAG,CAACA,GAAE,OAAM,IAAI,MAAM,eAAe;AAAE,oBAAG,KAAK,QAAM,KAAK,MAAM,aAAa,GAAEA,GAAE,YAAU,GAAE,EAAE,iBAAiBA,GAAE,WAAU,KAAK,kBAAkB,gBAAe,UAAQP,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,KAAK,CAAC,GAAE,UAAQC,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,UAAS,MAAI,KAAK,KAAK,EAAE,GAAE,UAAQC,KAAEK,GAAE,aAAW,WAASL,MAAGA,GAAE,SAAS,CAAAF,OAAGM,GAAE,YAAYN,EAAC,EAAE,GAAEK,GAAE,YAAYC,EAAC,GAAE,KAAK,QAAQ,QAAQC,EAAC,GAAEJ,GAAE,YAAYE,EAAC,GAAE,KAAK,WAAS,KAAK,QAAM,KAAK,MAAM,aAAaE,EAAC,GAAE,KAAK,kBAAkB,WAAU;AAAC,wBAAMP,MAAG,GAAE,EAAE,eAAe,UAAQI,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,WAAU,MAAI,KAAK,KAAK,IAAG,KAAK,kBAAkB,gBAAe,KAAK,kBAAkB,gBAAe,KAAK,kBAAkB,cAAc;AAAE,kBAAAC,GAAE,YAAYL,EAAC;AAAA,gBAAC;AAAC,qBAAK,kBAAkB,aAAWK,GAAE,iBAAiB,WAAU,CAAAL,OAAG;AAAC,kBAAAA,GAAE,eAAe,GAAE,KAAK,KAAK;AAAA,gBAAC,EAAE,GAAE,KAAK,kBAAgB,KAAK,IAAI,GAAE,KAAK,kBAAkB,kBAAgB,MAAM,KAAK,kBAAkB,cAAc,EAAC,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,UAAS,KAAK,UAAS,mBAAkB,KAAK,kBAAiB,CAAC;AAAA,cAAE,SAAOA,IAAE;AAAC,uBAAO,KAAK,IAAI,IAAIA,EAAC,GAAE,MAAK,KAAK,kBAAkB,iBAAe,KAAK,kBAAkB,cAAc,EAAC,SAAQ,OAAG,OAAMA,GAAC,CAAC;AAAA,cAAE;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,YAAW;AAAC,iBAAK,aAAa;AAAA,UAAC;AAAA,UAAC,uBAAuBA,IAAE;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG;AAAC,sBAAMC,KAAE,KAAK,kBAAkB,GAAEC,MAAG,GAAE,EAAE,oBAAoBF,IAAE,KAAK,kBAAkB,WAAU,KAAK,kBAAkB,kBAAiB,MAAI,KAAK,UAAU,EAAE;AAAE,gBAAAC,GAAE,YAAYC,EAAC,GAAE,KAAK,kBAAkB,kBAAgB,MAAM,KAAK,kBAAkB,cAAc,EAAC,SAAQ,OAAG,UAAS,KAAK,SAAQ,CAAC;AAAA,cAAE,SAAOF,IAAE;AAAC,uBAAO,KAAK,IAAI,IAAIA,EAAC,GAAE,MAAK,KAAK,kBAAkB,iBAAe,KAAK,kBAAkB,cAAc,EAAC,SAAQ,OAAG,OAAMA,GAAC,CAAC;AAAA,cAAE;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,cAAa;AAAC,iBAAK,kBAAkB,mBAAiB,KAAK,SAAS,WAAS,CAAC,GAAG,KAAK,SAAS,UAAS,GAAG,KAAK,kBAAkB,cAAc,IAAG,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,iBAAgB,OAAM,CAAC,OAAO,SAAS,IAAI,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,oBAAmB,OAAM,CAAC,OAAO,SAAS,MAAM,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,sBAAqB,OAAM,CAAC,OAAO,SAAS,QAAQ,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,oBAAmB,OAAM,CAAC,OAAO,SAAS,MAAM,EAAC,CAAC;AAAE,kBAAMA,KAAE,IAAI,gBAAgB,OAAO,SAAS,MAAM;AAAE,kBAAM,KAAK,IAAI,IAAIA,GAAE,KAAK,CAAC,CAAC,EAAE,SAAS,CAAAC,OAAG;AAAC,oBAAMC,KAAEF,GAAE,OAAOC,EAAC;AAAE,cAAAC,GAAE,SAAO,KAAG,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,SAASD,EAAC,IAAG,OAAMC,GAAC,CAAC;AAAA,YAAC,EAAE,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,kBAAiB,OAAM,CAAC,UAAU,SAAS,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,sBAAqB,OAAM,CAAC,UAAU,QAAQ,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,sBAAqB,OAAM,CAAC,UAAU,QAAQ,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,wBAAuB,OAAM,CAAC,UAAU,UAAU,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,qBAAoB,OAAM,CAAC,UAAU,OAAO,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,qBAAoB,OAAM,CAAC,UAAU,OAAO,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,gBAAe,OAAM,CAAC,OAAO,OAAO,MAAM,SAAS,CAAC,EAAC,CAAC,GAAE,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,iBAAgB,OAAM,CAAC,OAAO,OAAO,OAAO,SAAS,CAAC,EAAC,CAAC,GAAE,KAAK,SAAO,OAAK,KAAK,aAAW,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,yBAAwB,OAAM,CAAC,KAAK,KAAK,EAAC,CAAC;AAAA,UAAC;AAAA,UAAC,KAAKF,IAAEC,IAAEC,IAAEG,IAAE;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG,KAAK,UAAU,QAAO,KAAK,UAAU,KAAK;AAAE,oBAAMF,KAAE,SAAS,eAAe,6BAA2B,KAAK,KAAK;AAAE,kBAAG;AAAC,oBAAGD,OAAI,KAAK,SAAS,UAAQ,CAAC,GAAG,KAAK,SAAS,SAAQ,GAAGA,EAAC,IAAGD,OAAI,KAAK,SAAS,UAAQ,CAAC,GAAG,KAAK,SAAS,SAAQ,GAAGA,EAAC,IAAGD,OAAI,KAAK,SAAS,WAAS,CAAC,GAAG,KAAK,SAAS,UAAS,GAAGA,EAAC,IAAGK,IAAE;AAAC,uBAAK,SAAS,UAAQ,CAAC,GAAG,KAAK,SAAS,SAAQ,GAAGA,EAAC,GAAE,KAAK,kBAAkB,sBAAoB,MAAM,KAAK,kBAAkB,kBAAkB,EAAC,SAAQ,MAAG,UAAS,KAAK,UAAS,OAAM,KAAK,MAAK,CAAC;AAAG,wBAAML,KAAE,MAAM,KAAK,YAAY,KAAE;AAAE,sBAAG,CAACA,GAAE,OAAM,IAAI,MAAM,aAAa;AAAE,yBAAO,KAAK,KAAGA,IAAE,MAAK,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,MAAK,CAAC;AAAA,gBAAG;AAAC,uBAAM,GAAE,EAAE,kBAAkBG,EAAC,GAAE,KAAK,OAAO,GAAE,KAAK,kBAAkB,sBAAoB,MAAM,KAAK,kBAAkB,kBAAkB,EAAC,SAAQ,MAAG,UAAS,KAAK,UAAS,OAAM,KAAK,MAAK,CAAC;AAAG,sBAAMG,KAAE,KAAK,QAAQ,KAAK;AAAE,oBAAG,CAACA,GAAE,OAAM,IAAI,MAAM,eAAe;AAAE,2BAAUN,MAAKM,GAAE,UAAU,QAAQ,CAAAN,OAAGA,GAAE,WAAS,CAAC,CAAC,EAAE,sBAAsB,SAAQ,EAAE,sBAAsB,SAAS,EAAE,SAASA,GAAE,IAAI,EAAE,GAAE;AAAC,wBAAMC,KAAED,GAAE,QAAOE,KAAE,KAAK,SAAS,QAAQ,QAAQ,CAAAD,OAAGA,GAAE,IAAI,SAASD,GAAE,GAAG,KAAG,CAACC,GAAE,IAAI,SAAS,cAAc,EAAE;AAAE,sBAAG,MAAIC,GAAE,UAAQA,GAAE,MAAM,CAAAF,OAAG,MAAIA,GAAE,MAAM,OAAO,EAAE,OAAM,KAAK,IAAI,IAAI,gBAAgBA,GAAE,GAAG,cAAc,GAAE,IAAI,MAAM,aAAa;AAAE,sBAAG,QAAMC,KAAE,SAAOA,GAAE,YAAW;AAAC,wBAAIE,KAAE,CAAC;AAAE,yBAAI,QAAMF,KAAE,SAAOA,GAAE,sBAAoBE,KAAE,QAAMF,KAAE,SAAOA,GAAE,mBAAkB,CAACC,GAAE,CAAC,EAAE,MAAM,MAAM,CAAAF,OAAGG,GAAE,SAASH,EAAC,EAAE,KAAGE,GAAE,CAAC,EAAE,MAAM,UAAQ,QAAMD,KAAE,SAAOA,GAAE,YAAY,OAAM,KAAK,IAAI,IAAI,gBAAgBD,GAAE,GAAG,sBAAsB,QAAMC,KAAE,SAAOA,GAAE,UAAU,UAAU,GAAE,IAAI,MAAM,aAAa;AAAA,kBAAC;AAAC,sBAAGD,GAAE,SAAO,EAAE,sBAAsB,uBAAsB;AAAC,0BAAME,KAAE,KAAK,SAAS,QAAQ,MAAM,CAAAD,OAAGA,GAAE,QAAMD,GAAE,IAAI;AAAE,wBAAG,CAACE,GAAE,OAAM,KAAK,IAAI,IAAI,uBAAuBF,GAAE,GAAG,cAAc,GAAE,IAAI,MAAM,aAAa;AAAE,0BAAMG,KAAE,KAAK,qBAAqBD,EAAC,GAAEE,KAAE,MAAM,QAAQ,QAAMH,KAAE,SAAOA,GAAE,OAAO,IAAEA,GAAE,UAAQ,CAAC;AAAE,wBAAGG,GAAE,SAAO,GAAE;AAAC,0BAAGA,GAAE,MAAM,CAAAJ,OAAG;AAAC,8BAAMC,KAAEE,GAAE,MAAM,CAAAF,OAAGA,GAAE,QAAMD,GAAE;AAAE,+BAAM,CAACC,MAAG,CAAC,MAAM,QAAQA,GAAE,KAAK,KAAG,MAAIA,GAAE,MAAM;AAAA,sBAAM,EAAE,EAAE,OAAM,KAAK,IAAI,IAAI,uBAAuBD,GAAE,GAAG,kCAAkC,GAAE,IAAI,MAAM,aAAa;AAAA,oBAAC,WAAS,MAAIG,GAAE,UAAQA,GAAE,MAAM,CAAAH,OAAG,CAAC,MAAM,QAAQA,GAAE,KAAK,KAAG,MAAIA,GAAE,MAAM,OAAO,EAAE,OAAM,KAAK,IAAI,IAAI,uBAAuBA,GAAE,GAAG,kCAAkC,GAAE,IAAI,MAAM,aAAa;AAAA,kBAAC;AAAA,gBAAC;AAAC,sBAAMO,KAAE,MAAM,KAAK,YAAY,KAAE;AAAE,oBAAG,CAACA,GAAE,OAAM,IAAI,MAAM,aAAa;AAAE,qBAAK,KAAGA,IAAE,MAAM,KAAK,oBAAoBJ,EAAC;AAAA,cAAC,SAAOH,IAAE;AAAC,qBAAK,IAAI,IAAI,+CAA+C,KAAK,KAAK,KAAIA,EAAC,GAAE,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,OAAMA,GAAC,CAAC;AAAA,cAAE;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,SAAQ;AAAC,kBAAMA,KAAE,SAAS,eAAe,mBAAiB,KAAK,KAAK;AAAE,gBAAG,CAACA,GAAE,QAAO,KAAK,IAAI,IAAI,SAASA,EAAC,cAAc,GAAE,KAAK,SAAS,UAAQ,CAAC,GAAE,CAAC;AAAE,kBAAMC,KAAE,KAAK,QAAQ,KAAK;AAAE,gBAAG,CAACA,GAAE,QAAO,KAAK,SAAS,WAAS,GAAE,EAAE,cAAcD,EAAC,GAAE,KAAK,SAAS;AAAQ,kBAAME,KAAE,CAAC;AAAE,gBAAIC,KAAE;AAAG,kBAAME,KAAEL,GAAE,iBAAiB,sBAAsB,GAAEM,KAAE,CAAC,GAAEE,KAAE,CAAC,GAAEG,KAAE,CAAC;AAAE,gBAAGN,GAAE,SAAS,CAAAL,OAAG;AAAC,oBAAMK,KAAEL,IAAEU,KAAET,GAAE,UAAU,MAAM,CAAAD,OAAG;AAAC,oBAAIC;AAAE,uBAAO,UAAQA,KAAEI,GAAE,SAAO,WAASJ,KAAE,SAAOA,GAAE,SAASD,GAAE,GAAG;AAAA,cAAC,EAAE,GAAEY,KAAEP,GAAE,MAAKS,KAAET,GAAE,UAAU,CAAC,GAAEQ,KAAE,EAAC,KAAIR,GAAE,MAAK,OAAM,CAAC,EAAC,GAAEU,KAAE,4BAA0BD,KAAET,GAAE,QAAQ,SAAS,IAAEA,GAAE;AAAM,kBAAGQ,GAAE,OAAK,OAAKA,GAAE,IAAI,KAAGA,GAAE,IAAI,WAAW,eAAe,EAAE,QAAKE,OAAIF,GAAE,MAAM,KAAKE,EAAC,GAAEb,GAAE,KAAKW,EAAC;AAAA,kBAAQ,SAAO,QAAMH,KAAE,SAAOA,GAAE,MAAK;AAAA,gBAAC,KAAK,EAAE,sBAAsB;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAA,gBAAK,KAAK,EAAE,sBAAsB;AAAA,gBAAS,KAAK,EAAE,sBAAsB;AAAA,gBAAO,KAAK,EAAE,sBAAsB;AAAA,gBAAK,KAAK,EAAE,sBAAsB;AAAA,gBAAQ,KAAK,EAAE,sBAAsB;AAAS,yBAAKK,OAAI,YAAUH,MAAG,GAAE,EAAE,eAAeG,EAAC,KAAG,KAAK,SAAS,QAAQ,KAAK,EAAC,KAAI,SAAQ,OAAM,CAACA,EAAC,EAAC,CAAC,GAAEF,GAAE,MAAM,KAAKE,EAAC,GAAEb,GAAE,KAAKW,EAAC,MAAI,KAAK,IAAI,IAAI,eAAe,GAAEV,KAAE,SAAKU,GAAE,MAAM,KAAKE,EAAC,GAAEb,GAAE,KAAKW,EAAC;AAAI;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAM,kBAAAR,GAAE,YAAUQ,GAAE,MAAM,KAAKE,EAAC,GAAEb,GAAE,KAAKW,EAAC;AAAG;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAA,gBAAe,KAAK,EAAE,sBAAsB;AAAqB,kBAAAR,GAAE,YAAUG,GAAEK,GAAE,GAAG,MAAIL,GAAEK,GAAE,GAAG,IAAE,CAAC,IAAGL,GAAEK,GAAE,GAAG,EAAE,KAAKE,EAAC;AAAG;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAQ,kBAAAV,GAAE,YAAUQ,GAAE,MAAM,KAAKE,EAAC,GAAEb,GAAE,KAAKW,EAAC;AAAG;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAQ,kBAAAA,GAAE,MAAM,KAAKR,GAAE,QAAQ,SAAS,CAAC,GAAEH,GAAE,KAAKW,EAAC;AAAE;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAA,gBAAa,KAAK,EAAE,sBAAsB;AAAA,gBAAc,KAAK,EAAE,sBAAsB;AAAY,kBAAAR,GAAE,YAAUQ,GAAE,MAAM,KAAKE,EAAC,GAAEb,GAAE,KAAKW,EAAC;AAAG;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAO,yBAAKE,OAAIF,GAAE,MAAM,KAAKE,EAAC,GAAEb,GAAE,KAAKW,EAAC;AAAG;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAa,+BAAWD,MAAGP,GAAE,OAAKM,GAAEE,GAAE,GAAG,MAAIF,GAAEE,GAAE,GAAG,IAAE,CAAC,IAAG,OAAKE,MAAGJ,GAAEE,GAAE,GAAG,EAAE,KAAK,GAAGR,GAAE,EAAE,IAAIU,EAAC,GAAG;AAAG;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAc,+BAAWH,OAAIN,GAAEO,GAAE,GAAG,MAAIP,GAAEO,GAAE,GAAG,IAAE,CAAC,IAAGP,GAAEO,GAAE,GAAG,EAAE,KAAKE,EAAC;AAAG;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAsB,kBAAAf,GAAE,YAAUa,GAAE,MAAM,KAAKE,EAAC,GAAEb,GAAE,KAAKW,EAAC;AAAG;AAAA,gBAAM,KAAK,EAAE,sBAAsB;AAAA,gBAAa,KAAK,EAAE,sBAAsB,aAAY;AAAC,wBAAMb,MAAG,GAAE,EAAE,iBAAiBK,EAAC;AAAE,kBAAAL,GAAE,WAASa,GAAE,MAAM,KAAK,GAAGb,EAAC,GAAEE,GAAE,KAAKW,EAAC;AAAG;AAAA,gBAAK;AAAA,cAAC;AAAA,YAAC,EAAE,GAAEV,GAAE,QAAM,CAAC;AAAE,mBAAO,QAAQK,EAAC,EAAE,SAAS,CAAC,CAACR,IAAEC,EAAC,MAAI;AAAC,cAAAA,MAAG,MAAIA,GAAE,UAAQC,GAAE,KAAK,EAAC,KAAIF,IAAE,OAAMC,GAAC,CAAC;AAAA,YAAC,EAAE,GAAE,OAAO,QAAQU,EAAC,EAAE,SAAS,CAAC,CAACX,IAAEC,EAAC,MAAI;AAAC,cAAAA,MAAG,MAAIA,GAAE,UAAQC,GAAE,KAAK,EAAC,KAAIF,IAAE,OAAMC,GAAC,CAAC;AAAA,YAAC,EAAE,GAAE,OAAO,QAAQK,EAAC,EAAE,SAAS,CAAC,CAACN,IAAEC,EAAC,MAAI;AAAC,kBAAG,CAACA,MAAG,MAAIA,GAAE,OAAO;AAAO,oBAAME,KAAEF,GAAE,MAAM,EAAE,MAAM,CAACD,IAAEC,OAAI,OAAOD,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE,OAAOC,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,EAAE;AAAE,cAAAC,GAAE,KAAK,EAAC,KAAIF,IAAE,OAAMG,GAAC,CAAC;AAAA,YAAC,EAAE;AAAE,gBAAG;AAAC,cAAAF,GAAE,UAAU,QAAQ,CAAAD,OAAGA,GAAE,SAAO,EAAE,sBAAsB,sBAAsB,EAAE,SAAS,CAAAA,OAAG;AAAC,sBAAMC,KAAED,GAAE,MAAI,KAAIG,KAAED,GAAE,QAAQ,CAAAF,OAAGA,GAAE,IAAI,WAAWC,EAAC,EAAE;AAAE,oBAAG,MAAIE,GAAE,OAAO;AAAO,sBAAMC,KAAED,GAAE,KAAK,CAAAH,QAAI,EAAC,KAAIA,GAAE,IAAI,UAAUC,GAAE,MAAM,GAAE,OAAMD,GAAE,MAAK,GAAG,GAAEK,KAAE,EAAC,KAAIL,GAAE,KAAI,OAAM,CAAC,KAAK,UAAUI,EAAC,CAAC,EAAC;AAAE,2BAAUJ,MAAKG,IAAE;AAAC,wBAAMF,KAAEC,GAAE,WAAW,CAAAD,OAAGA,GAAE,QAAMD,GAAE,IAAI;AAAE,yBAAKC,MAAGC,GAAE,OAAOD,IAAE,CAAC;AAAA,gBAAC;AAAC,sBAAMK,KAAEJ,GAAE,WAAW,CAAAD,OAAGA,GAAE,QAAMD,GAAE,IAAI;AAAE,uBAAKM,KAAEJ,GAAEI,EAAC,IAAED,KAAEH,GAAE,KAAKG,EAAC;AAAA,cAAC,EAAE;AAAA,YAAC,SAAOL,IAAE;AAAC,mBAAK,IAAI,IAAI,yCAAwCA,EAAC;AAAA,YAAC;AAAC,mBAAO,KAAK,SAAS,UAAQE,IAAED,GAAE,UAAUC,EAAC,GAAEA;AAAA,UAAC;AAAA,UAAC,SAAQ;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG,KAAK,YAAU,MAAG,KAAK,kBAAgB,KAAK,IAAI,IAAE,KAAK,iBAAgB,KAAK,SAAS,SAAS,KAAK,EAAC,KAAI,oBAAmB,OAAM,CAAC,KAAK,gBAAgB,SAAS,CAAC,EAAC,CAAC,GAAE,KAAK,kBAAkB,kBAAiB;AAAC,sBAAMF,KAAE,SAAS,eAAe,6BAA2B,KAAK,KAAK;AAAE,gBAAAA,GAAE,WAAW,SAAO,KAAGA,GAAE,YAAYA,GAAE,WAAW,CAAC,CAAC;AAAE,sBAAMC,MAAG,GAAE,EAAE,eAAe,KAAK,kBAAkB,kBAAgB,8BAA8B;AAAE,gBAAAD,GAAE,YAAYC,EAAC;AAAA,cAAC;AAAC,mBAAK,OAAO;AAAE,kBAAG;AAAC,sBAAMD,KAAE,MAAM,KAAK,YAAY,IAAE;AAAE,oBAAG,CAACA,GAAE,OAAM,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,WAAU,KAAK,WAAU,OAAM,+CAA+C,KAAK,KAAK,IAAG,CAAC,IAAG,IAAI,MAAM,4DAA4D;AAAE,qBAAK,KAAGA,IAAE,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,UAAS,KAAK,IAAG,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,WAAU,KAAK,WAAU,OAAM,KAAI,CAAC;AAAA,cAAE,SAAOA,IAAE;AAAC,qBAAK,IAAI,IAAI,+CAA+C,KAAK,KAAK,KAAIA,EAAC,GAAE,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,WAAU,KAAK,WAAU,OAAMA,GAAC,CAAC;AAAA,cAAE;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,YAAYA,KAAE,OAAG;AAAC,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG;AAAC,oBAAG,KAAK,OAAO,IAAI,QAAQ,GAAE;AAAC,wBAAMA,KAAE,KAAK,MAAI,WAAW,KAAK,KAAK,IAAI,KAAK,IAAI,CAAC;AAAG,yBAAO,KAAK,IAAI,IAAI,sDAAsD,KAAK,KAAK,EAAE,GAAEA;AAAA,gBAAC;AAAC,sBAAMC,KAAE,KAAK,OAAO,IAAI,KAAK,GAAEC,KAAE,EAAC,aAAY,KAAK,OAAM,WAAU,KAAK,WAAU,UAAS,KAAK,UAAS,WAAUF,GAAC;AAAE,uBAAO,OAAM,GAAE,EAAE,cAAcC,IAAE,KAAK,KAAG,OAAO,OAAO,OAAO,OAAO,CAAC,GAAEC,EAAC,GAAE,EAAC,WAAU,KAAK,GAAE,CAAC,IAAEA,IAAE,KAAK,GAAG;AAAA,cAAC,SAAOF,IAAE;AAAC,uBAAO,KAAK,IAAI,IAAI,+CAA+C,KAAK,KAAK,KAAIA,EAAC,GAAE;AAAA,cAAE;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,qBAAqBA,IAAE;AAAC,gBAAIC;AAAE,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG,EAAE,QAAMD,KAAE,SAAOA,GAAE,UAAU,QAAO;AAAK,kBAAG;AAAC,oBAAG,MAAI,KAAK,SAAS,QAAQ,OAAO,OAAM,IAAI,MAAM,qBAAqB;AAAE,sBAAME,KAAE,KAAK,OAAO,IAAI,KAAK,GAAEC,KAAE,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,EAAC,QAAO,UAAQF,KAAE,KAAK,SAAS,QAAQ,MAAM,CAAAA,OAAGA,GAAE,QAAMD,GAAE,IAAI,MAAI,WAASC,KAAE,SAAOA,GAAE,MAAM,CAAC,EAAC,GAAE,OAAK,KAAK,aAAW,EAAC,WAAU,KAAK,UAAS,CAAC,GAAE,OAAK,KAAK,aAAW,EAAC,mBAAkB,KAAK,MAAK,CAAC,GAAE,EAAC,WAAU,KAAK,IAAG,UAASD,GAAC,CAAC;AAAE,uBAAO,OAAM,GAAE,EAAE,qBAAqBE,IAAEC,IAAE,KAAK,GAAG;AAAA,cAAC,SAAOH,IAAE;AAAC,sBAAM,KAAK,IAAI,IAAI,+CAA+C,KAAK,KAAK,KAAIA,EAAC,GAAEA;AAAA,cAAC;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,oBAAoBA,IAAE;AAAC,gBAAIC,IAAEC,IAAEE;AAAE,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,oBAAMD,KAAE,KAAK,QAAQ,KAAK;AAAE,kBAAG,CAACA,GAAE,OAAM,IAAI,MAAM,eAAe;AAAE,oBAAME,KAAEF,GAAE,qBAAqB;AAAE,kBAAG,OAAK,QAAME,KAAE,SAAOA,GAAE,QAAQ,QAAO,MAAK,MAAM,KAAK,mBAAmBL,IAAEG,EAAC;AAAG,oBAAMG,KAAE,CAAC;AAAE,yBAAUN,MAAKK,IAAE;AAAC,sBAAMJ,KAAEE,GAAE,UAAU,MAAM,CAAAF,OAAGA,GAAE,QAAMD,GAAE;AAAE,oBAAGC,IAAE;AAAC,wBAAMD,KAAE,MAAM,KAAK,qBAAqBC,EAAC;AAAE,kBAAAD,MAAGM,GAAE,KAAKN,EAAC;AAAA,gBAAC;AAAA,cAAC;AAAC,kBAAG,MAAIM,GAAE,OAAO,QAAO,MAAK,MAAM,KAAK,mBAAmBN,IAAEG,EAAC;AAAG,oBAAMI,KAAE,IAAI,EAAE,KAAKJ,GAAE,IAAGA,GAAE,UAAS,KAAK,OAAMG,IAAEH,GAAE,KAAK,GAAEM,KAAE,IAAI,EAAE,SAASN,GAAE,IAAGA,GAAE,UAASA,GAAE,OAAMI,IAAED,IAAE,IAAE;AAAE,cAAAG,GAAE,YAAU,GAAE,EAAE,iBAAiBH,IAAE,KAAK,kBAAkB,gBAAe,UAAQL,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,KAAK,CAAC,GAAE,UAAQC,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,UAAS,MAAI,KAAK,KAAK,EAAE,GAAE,KAAK,QAAQ,QAAQO,EAAC,GAAE,KAAK,YAAU,KAAGT,GAAE,YAAU,IAAG,UAAQI,KAAEK,GAAE,aAAW,WAASL,MAAGA,GAAE,SAAS,CAAAH,OAAGD,GAAE,YAAYC,EAAC,EAAE,GAAE,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,UAAS,KAAK,IAAG,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,UAASQ,GAAE,YAAW,WAAU,KAAK,WAAU,OAAM,KAAI,CAAC;AAAA,YAAE,EAAE;AAAA,UAAC;AAAA,UAAC,mBAAmBT,IAAEC,IAAE;AAAC,gBAAIC,IAAEG,IAAEC,IAAEC,IAAEE;AAAE,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAIN,KAAE,KAAK,MAAM,YAAYF,IAAE,KAAK,SAAS,OAAO;AAAE,kBAAG,CAACE,GAAE,QAAO,KAAK,KAAK,OAAO;AAAE,oBAAMQ,KAAER,GAAE,MAAM,QAAQ,CAAAH,OAAG,qBAAmBA,GAAE,cAAc,EAAE,MAAM,CAACA,IAAEC,OAAID,GAAE,WAASC,GAAE,WAAS,KAAGD,GAAE,WAASC,GAAE,WAAS,IAAE,EAAE;AAAE,mBAAI,QAAMU,KAAE,SAAOA,GAAE,UAAQ,GAAE;AAAC,sBAAMV,KAAEU,GAAE,MAAM,CAAAX,OAAGA,GAAE,eAAa,EAAE,eAAe,MAAM;AAAE,oBAAIM,KAAEL;AAAE,2BAAUA,MAAKU,IAAE;AAAC,sBAAIJ;AAAE,2BAAQP,KAAE,KAAK,QAAQ,KAAK,IAAE,GAAEA,MAAG,GAAEA,MAAI;AAAC,0BAAMG,KAAE,KAAK,QAAQ,IAAIH,EAAC;AAAE,wBAAGG,OAAII,KAAE,UAAQL,KAAEC,GAAE,YAAU,WAASD,KAAE,SAAOA,GAAE,MAAM,CAAAF,OAAGA,GAAE,QAAMC,GAAE,YAAY,GAAEM,IAAG;AAAA,kBAAK;AAAC,sBAAIC,KAAE;AAAG,sBAAGD,IAAE;AAAC,0BAAMP,KAAE,UAAQK,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,UAAU,MAAM,CAAAL,OAAGA,GAAE,QAAMC,GAAE,YAAY,GAAEC,KAAE,MAAM,QAAQK,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAEJ,KAAE,MAAM,QAAQF,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK;AAAE,yBAAI,QAAMD,KAAE,SAAOA,GAAE,UAAQ,EAAE,sBAAsB,sBAAsB,CAAAQ,KAAE,KAAK,6BAA6BP,IAAEM,EAAC;AAAA,wBAAO,SAAON,GAAE,cAAa;AAAA,sBAAC,KAAI;AAAA,sBAAQ,KAAI;AAAM,wBAAAO,KAAEN,GAAE,MAAM,CAAAF,OAAGG,GAAE,SAASH,EAAC,EAAE;AAAE;AAAA,sBAAM,KAAI;AAAA,sBAAU,KAAI;AAAO,wBAAAQ,KAAEN,GAAE,OAAO,CAAAF,OAAG,CAACG,GAAE,SAASH,EAAC,EAAE;AAAE;AAAA,sBAAM,KAAI;AAAU,wBAAAQ,KAAEN,GAAE,MAAM,CAAAF,OAAG,OAAOA,EAAC,IAAE,OAAOG,GAAE,CAAC,CAAC,EAAE;AAAE;AAAA,sBAAM,KAAI;AAAO,wBAAAK,KAAEN,GAAE,MAAM,CAAAF,OAAG,OAAOA,EAAC,IAAE,OAAOG,GAAE,CAAC,CAAC,EAAE;AAAE;AAAA,sBAAM,KAAI;AAAe,wBAAAK,KAAEN,GAAE,MAAM,CAAAF,OAAG,OAAOA,EAAC,KAAG,OAAOG,GAAE,CAAC,CAAC,EAAE;AAAE;AAAA,sBAAM,KAAI;AAAY,wBAAAK,KAAEN,GAAE,MAAM,CAAAF,OAAG,OAAOA,EAAC,KAAG,OAAOG,GAAE,CAAC,CAAC,EAAE;AAAA,oBAAC;AAAA,kBAAC;AAAC,sBAAGF,GAAE,eAAa,EAAE,eAAe,MAAM,CAAAO,OAAIF,KAAE;AAAA,2BAAYL,GAAE,eAAa,EAAE,eAAe,QAAMO,GAAE,QAAO,KAAK,SAAS,UAAQ,CAAC,GAAE,MAAKL,OAAI,MAAM,KAAK,mBAAmBH,IAAEG,EAAC;AAAA,gBAAG;AAAC,oBAAGF,MAAG,CAACK,GAAE,QAAO,KAAK,SAAS,UAAQ,CAAC,GAAE,MAAKH,OAAI,MAAM,KAAK,mBAAmBH,IAAEG,EAAC;AAAA,cAAG;AAAC,cAAAA,GAAE,YAAU,GAAE,EAAE,iBAAiBA,GAAE,WAAU,KAAK,kBAAkB,gBAAe,UAAQG,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,KAAK,CAAC,GAAE,UAAQC,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,UAAS,MAAI,KAAK,KAAK,EAAE,GAAEP,GAAE,YAAU,IAAG,UAAQS,KAAEN,GAAE,aAAW,WAASM,MAAGA,GAAE,SAAS,CAAAR,OAAGD,GAAE,YAAYC,EAAC,EAAE,GAAE,KAAK,QAAQ,QAAQE,EAAC,GAAE,KAAK,WAAS,KAAK,QAAM,KAAK,MAAM,aAAaA,EAAC,GAAE,KAAK,kBAAkB,qBAAmB,MAAM,KAAK,kBAAkB,iBAAiB,EAAC,UAAS,KAAK,IAAG,SAAQ,OAAG,UAAS,KAAK,UAAS,OAAM,KAAK,OAAM,UAASA,GAAE,YAAW,WAAU,KAAK,WAAU,OAAM,KAAI,CAAC;AAAA,YAAE,EAAE;AAAA,UAAC;AAAA,UAAC,OAAM;AAAC,gBAAIH;AAAE,mBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,kBAAG,MAAI,KAAK,QAAQ,KAAK,EAAE;AAAO,oBAAMC,KAAE,SAAS,eAAe,6BAA2B,KAAK,KAAK;AAAE,cAAAA,MAAGA,GAAE,WAAW,SAAO,MAAIA,GAAE,YAAU,KAAI,KAAK,QAAQ,SAAS;AAAE,oBAAMC,KAAE,KAAK,QAAQ,KAAK;AAAE,cAAAA,MAAG,UAAQF,KAAEE,GAAE,aAAW,WAASF,MAAGA,GAAE,SAAS,CAAAA,OAAGC,GAAE,YAAYD,EAAC,EAAE,GAAE,KAAK,WAAS,KAAK,QAAM,KAAK,MAAM,aAAaE,EAAC,KAAG,KAAK,WAAS,KAAK,QAAQ,KAAK,GAAE,KAAK,kBAAkB,gBAAc,MAAM,KAAK,kBAAkB,YAAY,EAAC,SAAQ,OAAG,UAAS,KAAK,UAAS,WAAU,QAAMA,KAAE,SAAOA,GAAE,eAAa,OAAG,OAAMA,KAAE,OAAK,gBAAe,CAAC;AAAA,YAAE,EAAE;AAAA,UAAC;AAAA,UAAC,gBAAgBF,IAAEC,IAAEC,IAAE;AAAC,gBAAIC,IAAEC,IAAEC;AAAE,kBAAMC,KAAE,MAAM,QAAQL,EAAC,IAAEA,KAAE,CAACA,EAAC;AAAE,gBAAG,CAACK,MAAG,MAAIA,GAAE,OAAO,OAAM,IAAI,MAAM,kDAAkD;AAAE,kBAAMC,KAAE,SAAS,eAAeP,EAAC;AAAE,gBAAG,CAACO,GAAE,OAAM,IAAI,MAAM,oCAAoCP,EAAC,cAAc;AAAE,kBAAK,EAAC,QAAOS,KAAE,KAAK,kBAAkB,kBAAgB,YAAW,UAASC,MAAG,UAAQP,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,SAAO,KAAK,SAAS,KAAK,CAAC,KAAG,MAAK,SAAQS,MAAG,UAAQR,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,YAAU,EAAC,aAAY,MAAE,GAAE,OAAMU,MAAG,UAAQT,KAAE,KAAK,aAAW,WAASA,KAAE,SAAOA,GAAE,UAAQ,CAAC,GAAE,gBAAeQ,KAAE,MAAG,MAAKE,KAAE,KAAE,IAAEb,MAAG,CAAC;AAAE,YAAAW,OAAIN,GAAE,YAAU,MAAK,QAAMO,KAAE,SAAOA,GAAE,kBAAgB,GAAE,EAAE,mBAAmBP,IAAEO,GAAE,YAAY;AAAE,gBAAIE,KAAE,CAAC;AAAE,gBAAG;AAAC,cAAAA,MAAG,GAAE,EAAE,iBAAiBV,IAAEG,IAAEC,IAAEE,EAAC;AAAA,YAAC,SAAOZ,IAAE;AAAC,oBAAM,KAAK,IAAI,IAAIA,EAAC,GAAEA;AAAA,YAAC;AAAC,gBAAI,IAAEO;AAAE,gBAAGQ,IAAE;AAAC,oBAAMf,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,gCAAgC,GAAE,EAAE,YAAYA,EAAC,GAAE,IAAEA;AAAA,YAAC;AAAC,mBAAOgB,GAAE,SAAS,CAAAhB,OAAG,EAAE,YAAYA,EAAC,EAAE,GAAEO;AAAA,UAAC;AAAA,UAAC,qBAAqBP,IAAE;AAAC,gBAAG,CAACA,MAAG,CAACA,GAAE,MAAM,QAAM,CAAC;AAAE,gBAAG,MAAIA,GAAE,MAAM,UAAQ,YAAU,OAAOA,GAAE,MAAM,CAAC,KAAGA,GAAE,MAAM,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,EAAE,KAAG;AAAC,oBAAMC,KAAE,KAAK,MAAMD,GAAE,MAAM,CAAC,CAAC;AAAE,kBAAG,MAAM,QAAQC,EAAC,EAAE,QAAOA;AAAA,YAAC,SAAOD,IAAE;AAAC,qBAAM,CAAC;AAAA,YAAC;AAAC,mBAAO,MAAM,QAAQA,GAAE,KAAK,KAAGA,GAAE,MAAM,SAAO,KAAG,YAAU,OAAOA,GAAE,MAAM,CAAC,KAAG,SAAOA,GAAE,MAAM,CAAC,KAAG,SAAQA,GAAE,MAAM,CAAC,IAAEA,GAAE,QAAM,CAAC;AAAA,UAAC;AAAA,UAAC,6BAA6BA,IAAEC,IAAE;AAAC,kBAAMC,KAAE,MAAM,QAAQF,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAEG,KAAE,IAAI,IAAIH,GAAE,UAAQ,CAAC,CAAC,GAAEI,KAAE,KAAK,qBAAqBH,EAAC;AAAE,gBAAG,CAACG,GAAE,OAAO,QAAM;AAAG,kBAAMC,KAAEF,GAAE,OAAK,IAAEC,GAAE,QAAQ,CAAAJ,OAAGG,GAAE,IAAIH,GAAE,GAAG,EAAE,IAAEI;AAAE,gBAAG,CAACC,GAAE,OAAO,QAAM;AAAG,oBAAOL,GAAE,cAAa;AAAA,cAAC,KAAI;AAAA,cAAQ,KAAI;AAAM,uBAAOK,GAAE,MAAM,CAAAL,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,SAASF,EAAC,EAAE,EAAE;AAAA,cAAE,KAAI;AAAA,cAAU,KAAI;AAAO,uBAAOK,GAAE,OAAO,CAAAL,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,OAAO,CAAAA,OAAG,CAACE,GAAE,SAASF,EAAC,EAAE,EAAE;AAAA,cAAE,KAAI;AAAU,uBAAOK,GAAE,MAAM,CAAAL,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,MAAM,CAAAD,OAAG,OAAOD,EAAC,IAAE,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,cAAE,KAAI;AAAO,uBAAOI,GAAE,MAAM,CAAAL,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,MAAM,CAAAD,OAAG,OAAOD,EAAC,IAAE,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,cAAE,KAAI;AAAe,uBAAOI,GAAE,MAAM,CAAAL,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,MAAM,CAAAD,OAAG,OAAOD,EAAC,KAAG,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,cAAE,KAAI;AAAY,uBAAOI,GAAE,MAAM,CAAAL,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,MAAM,CAAAD,OAAG,OAAOD,EAAC,KAAG,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,cAAE;AAAQ,uBAAM;AAAA,YAAE;AAAA,UAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,OAAK,QAAOA,GAAE,OAAK,MAAK;AAAA,UAAC,YAAYD,IAAEC,IAAE,GAAE,GAAE,GAAE;AAAC,iBAAK,KAAGD,IAAE,KAAK,WAASC,IAAE,KAAK,eAAa,oBAAI,QAAM,YAAY,GAAE,KAAK,aAAW,oBAAI,QAAM,YAAY,GAAE,KAAK,SAAO,UAAS,KAAK,gBAAc,GAAE,KAAK,uBAAqB,GAAE,KAAK,wBAAsB;AAAA,UAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,YAAU;AAAO,cAAM,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,YAAU,MAAK;AAAA,UAAC,YAAYD,IAAE;AAAC,iBAAK,QAAM,oBAAI,OAAI,KAAK,WAAWA,EAAC;AAAA,UAAC;AAAA,UAAC,WAAWA,IAAE;AAAC,YAAAA,GAAE,SAAS,CAAAA,OAAG;AAAC,kBAAIC;AAAE,cAAAD,GAAE,0BAAwBA,GAAE,yBAAuB,UAAQC,KAAED,GAAE,0BAAwB,WAASC,KAAE,SAAOA,GAAE,MAAM,CAACD,IAAEC,OAAI;AAAC,sBAAMC,KAAE,IAAI,MAAM,QAAMF,KAAE,SAAOA,GAAE,gBAAc,CAAC,EAAE,QAAQ,GAAEG,KAAE,IAAI,MAAM,QAAMF,KAAE,SAAOA,GAAE,gBAAc,CAAC,EAAE,QAAQ;AAAE,uBAAOC,OAAIC,KAAED,KAAEC,KAAE,aAAWH,GAAE,iBAAe,aAAWC,GAAE,gBAAc,IAAE,aAAWD,GAAE,iBAAe,aAAWC,GAAE,gBAAc,KAAG;AAAA,cAAC,EAAE,MAAI,CAAC;AAAG,oBAAMC,KAAE,IAAI,EAAE,SAASF,GAAE,IAAGA,GAAE,UAASA,GAAE,yBAAuB,CAAC,GAAEA,IAAEA,GAAE,oBAAoB;AAAE,mBAAK,MAAM,IAAIE,GAAE,IAAGA,EAAC;AAAA,YAAC,EAAE;AAAA,UAAC;AAAA,UAAC,YAAYF,IAAE;AAAC,mBAAO,KAAK,MAAM,IAAIA,EAAC;AAAA,UAAC;AAAA,UAAC,qBAAqBA,IAAE;AAAC,gBAAG,CAACA,GAAE;AAAO,kBAAMC,KAAED,GAAE,MAAM,MAAM,CAAAA,OAAGA,GAAE,kBAAgB,EAAE,cAAc,OAAO;AAAE,gBAAG,CAACC,MAAG,CAAC,CAAC,EAAE,eAAe,QAAO,EAAE,eAAe,QAAQ,EAAE,SAASA,GAAE,UAAU,GAAE;AAAC,kBAAGA,MAAGA,GAAE,kBAAkB,QAAOA,GAAE;AAAkB,yBAAUA,MAAK,KAAK,MAAM,OAAO,EAAE,KAAGA,GAAE,aAAWD,GAAE,WAAS,EAAE,QAAOC,GAAE;AAAA,YAAE;AAAA,UAAC;AAAA,UAAC,eAAc;AAAC,gBAAID,IAAEC,KAAE,OAAO;AAAU,uBAAUC,MAAK,KAAK,MAAM,OAAO,EAAE,CAAAA,GAAE,WAASD,OAAIA,KAAEC,GAAE,UAASF,KAAEE;AAAG,mBAAOF;AAAA,UAAC;AAAA,UAAC,YAAYA,IAAEC,IAAE;AAAC,gBAAIC;AAAE,gBAAG,CAACF,GAAE;AAAO,YAAAA,GAAE,MAAM,MAAM,CAACA,IAAEC,OAAI,aAAWD,GAAE,gBAAc,IAAE,aAAWC,GAAE,gBAAc,KAAG,EAAE;AAAE,kBAAME,KAAEH,GAAE,MAAM,MAAM,CAAAE,OAAG;AAAC,oBAAMC,KAAEH,GAAE,UAAU,MAAM,CAAAA,OAAGA,GAAE,QAAME,GAAE,YAAY,GAAE,IAAE,QAAMD,KAAE,SAAOA,GAAE,QAAQ,CAAAD,OAAGA,GAAE,QAAME,GAAE,YAAY;AAAE,kBAAG,aAAWA,GAAE,cAAc,QAAM;AAAG,kBAAG,CAAC,KAAG,MAAI,EAAE,OAAO,QAAM;AAAG,mBAAI,QAAMC,KAAE,SAAOA,GAAE,UAAQ,EAAE,sBAAsB,sBAAsB,QAAO,KAAK,wBAAwBD,IAAE,CAAC;AAAE,oBAAM,IAAE,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK;AAAE,sBAAOA,GAAE,cAAa;AAAA,gBAAC,KAAK,EAAE,aAAa;AAAM,yBAAO,EAAE,MAAM,CAAAF,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAG,EAAE,SAASA,EAAC,EAAE,EAAE;AAAA,gBAAE,KAAK,EAAE,aAAa;AAAQ,yBAAO,EAAE,OAAO,CAAAA,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,OAAO,CAAAA,OAAG,CAAC,EAAE,SAASA,EAAC,EAAE,EAAE;AAAA,gBAAE,KAAK,EAAE,aAAa;AAAQ,yBAAO,EAAE,MAAM,CAAAA,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAG,EAAE,MAAM,CAAAC,OAAG,OAAOD,EAAC,IAAE,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,gBAAE,KAAK,EAAE,aAAa;AAAK,yBAAO,EAAE,MAAM,CAAAD,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAG,EAAE,MAAM,CAAAC,OAAG,OAAOD,EAAC,IAAE,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,gBAAE,KAAK,EAAE,aAAa;AAAa,yBAAO,EAAE,MAAM,CAAAD,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAG,EAAE,MAAM,CAAAC,OAAG,OAAOD,EAAC,KAAG,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,gBAAE,KAAK,EAAE,aAAa;AAAU,yBAAO,EAAE,MAAM,CAAAD,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAG,EAAE,MAAM,CAAAC,OAAG,OAAOD,EAAC,KAAG,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,gBAAE,KAAK,EAAE,aAAa;AAAI,yBAAO,EAAE,MAAM,CAAAD,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAG,EAAE,SAASA,EAAC,EAAE,EAAE;AAAA,gBAAE,KAAK,EAAE,aAAa;AAAK,yBAAO,EAAE,OAAO,CAAAA,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,OAAO,CAAAA,OAAG,CAAC,EAAE,SAASA,EAAC,EAAE,EAAE;AAAA,gBAAE;AAAQ,yBAAM;AAAA,cAAE;AAAA,YAAC,EAAE;AAAE,gBAAG,CAACG,IAAE;AAAC,oBAAMF,KAAE,KAAK,qBAAqBD,EAAC;AAAE,kBAAG,CAACC,GAAE;AAAO,qBAAO,KAAK,YAAYA,EAAC;AAAA,YAAC;AAAC,oBAAOE,GAAE,YAAW;AAAA,cAAC,KAAK,EAAE,eAAe;AAAK,oBAAG,CAACA,GAAE,kBAAkB;AAAO,uBAAO,KAAK,YAAYA,GAAE,iBAAiB;AAAA,cAAE,KAAK,EAAE,eAAe;AAAO;AAAA,cAAO,KAAK,EAAE,eAAe;AAAS,uBAAO,MAAK,OAAO,SAAS,QAAM,UAAQD,KAAEC,GAAE,sBAAoB,WAASD,KAAE,SAAOA,GAAE,SAAS,GAAG,KAAG,GAAGC,GAAE,iBAAiB,IAAI,OAAO,SAAS,OAAO,MAAM,CAAC,CAAC,KAAG,GAAGA,GAAE,iBAAiB,GAAG,OAAO,SAAS,MAAM;AAAA,cAAI;AAAQ;AAAA,YAAM;AAAA,UAAC;AAAA,UAAC,UAAUH,IAAE;AAAC,kBAAMC,KAAE,KAAK,YAAYD,EAAC;AAAE,gBAAG,CAACC,GAAE,QAAO;AAAE,kBAAMC,KAAE,oBAAI;AAAI,mBAAO,KAAK,QAAQD,IAAEC,IAAE,CAAC;AAAA,UAAC;AAAA,UAAC,aAAaF,IAAE;AAAC,gBAAGA,OAAIA,KAAE,KAAK,aAAa,IAAG,CAACA,GAAE,QAAO;AAAE,kBAAMC,KAAE,oBAAI;AAAI,gBAAIC,KAAE;AAAE,mBAAOA,KAAE,KAAK,IAAIA,IAAE,KAAK,QAAQF,IAAEC,IAAEC,EAAC,CAAC,GAAEA;AAAA,UAAC;AAAA,UAAC,QAAQF,IAAEC,IAAEC,IAAE;AAAC,YAAAD,GAAE,IAAID,EAAC;AAAE,gBAAIG,KAAED;AAAE,kBAAME,KAAE,CAAC,GAAGJ,GAAE,MAAM,QAAQ,CAAAA,OAAGA,GAAE,kBAAgB,EAAE,cAAc,eAAe,KAAG,CAAC,CAAC,GAAE,IAAE,KAAK,qBAAqBA,EAAC;AAAE,gBAAG,GAAE;AAAC,oBAAME,KAAE,KAAK,YAAY,CAAC;AAAE,cAAAA,MAAG,CAACD,GAAE,IAAIC,EAAC,KAAGE,GAAE,KAAK,IAAI,EAAE,UAAUF,GAAE,IAAG,IAAG,EAAE,aAAa,SAAQ,CAAC,EAAE,GAAE,EAAE,eAAe,MAAKA,GAAE,IAAGF,GAAE,EAAE,CAAC;AAAA,YAAC;AAAC,uBAAUA,MAAKI,IAAE;AAAC,kBAAG,CAACJ,GAAE,kBAAkB;AAAS,oBAAMI,KAAE,KAAK,YAAYJ,GAAE,iBAAiB;AAAE,kBAAGI,MAAG,CAACH,GAAE,IAAIG,EAAC,GAAE;AAAC,sBAAMJ,KAAEE,KAAE,GAAEG,KAAE,IAAI,IAAIJ,EAAC,GAAEK,KAAE,KAAK,QAAQF,IAAEC,IAAEL,EAAC;AAAE,gBAAAG,KAAE,KAAK,IAAIA,IAAEG,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,mBAAOH;AAAA,UAAC;AAAA,UAAC,kBAAkBH,IAAE;AAAC,gBAAG,CAACA,MAAG,CAACA,GAAE,MAAM,QAAM,CAAC;AAAE,gBAAG,MAAIA,GAAE,MAAM,UAAQ,YAAU,OAAOA,GAAE,MAAM,CAAC,KAAGA,GAAE,MAAM,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,EAAE,KAAG;AAAC,oBAAMC,KAAE,KAAK,MAAMD,GAAE,MAAM,CAAC,CAAC;AAAE,kBAAG,MAAM,QAAQC,EAAC,EAAE,QAAOA;AAAA,YAAC,SAAOD,IAAE;AAAC,qBAAM,CAAC;AAAA,YAAC;AAAC,mBAAO,MAAM,QAAQA,GAAE,KAAK,KAAGA,GAAE,MAAM,SAAO,KAAG,YAAU,OAAOA,GAAE,MAAM,CAAC,KAAG,SAAOA,GAAE,MAAM,CAAC,KAAG,SAAQA,GAAE,MAAM,CAAC,IAAEA,GAAE,QAAM,CAAC;AAAA,UAAC;AAAA,UAAC,wBAAwBA,IAAEC,IAAE;AAAC,kBAAMC,KAAE,MAAM,QAAQF,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAEG,KAAE,IAAI,IAAIH,GAAE,UAAQ,CAAC,CAAC,GAAEI,KAAEH,GAAE,CAAC,GAAE,IAAE,KAAK,kBAAkBG,EAAC;AAAE,gBAAG,CAAC,EAAE,OAAO,QAAM;AAAG,kBAAM,IAAED,GAAE,OAAK,IAAE,EAAE,QAAQ,CAAAH,OAAGG,GAAE,IAAIH,GAAE,GAAG,EAAE,IAAE;AAAE,gBAAG,CAAC,EAAE,OAAO,QAAM;AAAG,oBAAOA,GAAE,cAAa;AAAA,cAAC,KAAK,EAAE,aAAa;AAAA,cAAM,KAAK,EAAE,aAAa;AAAI,uBAAO,EAAE,MAAM,CAAAA,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,SAASF,EAAC,EAAE,EAAE;AAAA,cAAE,KAAK,EAAE,aAAa;AAAA,cAAQ,KAAK,EAAE,aAAa;AAAK,uBAAO,EAAE,OAAO,CAAAA,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,OAAO,CAAAA,OAAG,CAACE,GAAE,SAASF,EAAC,EAAE,EAAE;AAAA,cAAE,KAAK,EAAE,aAAa;AAAQ,uBAAO,EAAE,MAAM,CAAAA,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,MAAM,CAAAD,OAAG,OAAOD,EAAC,IAAE,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,cAAE,KAAK,EAAE,aAAa;AAAK,uBAAO,EAAE,MAAM,CAAAD,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,MAAM,CAAAD,OAAG,OAAOD,EAAC,IAAE,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,cAAE,KAAK,EAAE,aAAa;AAAa,uBAAO,EAAE,MAAM,CAAAD,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,MAAM,CAAAD,OAAG,OAAOD,EAAC,KAAG,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,cAAE,KAAK,EAAE,aAAa;AAAU,uBAAO,EAAE,MAAM,CAAAD,QAAI,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,GAAG,MAAM,CAAAA,OAAGE,GAAE,MAAM,CAAAD,OAAG,OAAOD,EAAC,KAAG,OAAOC,EAAC,EAAE,EAAE,EAAE;AAAA,cAAE;AAAQ,uBAAM;AAAA,YAAE;AAAA,UAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,WAAS,QAAOA,GAAE,WAAS,MAAK;AAAA,UAAC,YAAYD,IAAEC,IAAE,GAAE,GAAE,GAAE,IAAE,OAAG;AAAC,iBAAK,UAAQ,CAAC,GAAE,KAAK,KAAGD,IAAE,KAAK,WAASC,IAAE,KAAK,QAAM,GAAE,KAAK,OAAK,GAAE,KAAK,YAAU,EAAE,MAAM,CAACD,IAAEC,OAAID,GAAE,WAASC,GAAE,SAAS,GAAE,KAAK,WAAS,CAAC,GAAE,KAAK,aAAW;AAAA,UAAC;AAAA,UAAC,uBAAsB;AAAC,mBAAO,KAAK,UAAU,QAAQ,CAAAD,OAAGA,GAAE,SAAS,EAAE,KAAK,CAAAA,OAAGA,GAAE,IAAI;AAAA,UAAC;AAAA,UAAC,uBAAsB;AAAC,mBAAO,KAAK,UAAU,QAAQ,CAAAA,OAAGA,GAAE,QAAQ,EAAE,KAAK,CAAAA,OAAGA,GAAE,IAAI;AAAA,UAAC;AAAA,UAAC,UAAUA,IAAE;AAAC,iBAAK,UAAQA;AAAA,UAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,OAAI;AAAC;AAAa,YAAI,GAAE,GAAE,GAAE;AAAE,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,YAAUA,GAAE,aAAWA,GAAE,eAAaA,GAAE,gBAAcA,GAAE,iBAAe,SAAQ,IAAEA,GAAE,mBAAiBA,GAAE,iBAAe,CAAC,IAAI,OAAK,QAAO,EAAE,SAAO,UAAS,EAAE,WAAS,YAAW,EAAE,OAAK,QAAO,EAAE,QAAM,UAAQ,SAASD,IAAE;AAAC,UAAAA,GAAE,UAAQ,WAAUA,GAAE,SAAO,UAASA,GAAE,iBAAe;AAAA,QAAgB,GAAE,IAAEC,GAAE,kBAAgBA,GAAE,gBAAc,CAAC,EAAE,IAAG,IAAEA,GAAE,iBAAeA,GAAE,eAAa,CAAC,IAAI,QAAM,SAAQ,EAAE,UAAQ,WAAU,EAAE,UAAQ,WAAU,EAAE,OAAK,QAAO,EAAE,eAAa,gBAAe,EAAE,YAAU,aAAY,EAAE,MAAI,OAAM,EAAE,OAAK,QAAO,EAAE,UAAQ,YAAU,SAASD,IAAE;AAAC,UAAAA,GAAE,SAAO,UAASA,GAAE,aAAW,cAAaA,GAAE,SAAO;AAAA,QAAQ,GAAE,IAAEC,GAAE,eAAaA,GAAE,aAAW,CAAC,EAAE,GAAEA,GAAE,YAAU,MAAK;AAAA,UAAC,YAAYD,IAAEC,IAAEG,IAAEC,IAAE,GAAE,GAAE,GAAE,GAAE,GAAE,GAAE;AAAC,iBAAK,KAAGL,IAAE,KAAK,cAAYC,IAAE,KAAK,gBAAc,KAAG,EAAE,SAAQ,KAAK,eAAaG,IAAE,KAAK,QAAMC,MAAG,CAAC,GAAE,KAAK,aAAW,GAAE,KAAK,oBAAkB,GAAE,KAAK,SAAO,EAAE,QAAO,KAAK,cAAY,oBAAI,QAAK,KAAK,YAAU,oBAAI,QAAK,KAAK,oBAAkB,GAAE,KAAK,WAAS,KAAG,GAAE,KAAK,SAAO,KAAG,CAAC;AAAA,UAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACL,IAAEC,OAAI;AAAC;AAAa,YAAI,GAAE;AAAE,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,4BAA0BA,GAAE,eAAaA,GAAE,wBAAsB,SAAQ,IAAEA,GAAE,0BAAwBA,GAAE,wBAAsB,CAAC,IAAI,UAAQ,WAAU,EAAE,uBAAqB,wBAAuB,EAAE,QAAM,SAAQ,EAAE,cAAY,eAAc,EAAE,QAAM,SAAQ,EAAE,iBAAe,kBAAiB,EAAE,SAAO,UAAS,EAAE,OAAK,QAAO,EAAE,WAAS,YAAW,EAAE,SAAO,UAAS,EAAE,eAAa,gBAAe,EAAE,gBAAc,iBAAgB,EAAE,OAAK,QAAO,EAAE,UAAQ,WAAU,EAAE,WAAS,YAAW,EAAE,UAAQ,WAAU,EAAE,wBAAsB,yBAAwB,EAAE,eAAa,gBAAe,EAAE,gBAAc,iBAAgB,EAAE,YAAU,aAAY,EAAE,cAAY,eAAc,EAAE,eAAa,gBAAeA,GAAE,eAAa,MAAK;AAAA,QAAC,GAAEA,GAAE,4BAA0B,yBAAuB,SAASD,IAAE;AAAC,UAAAA,GAAE,OAAK,QAAOA,GAAE,MAAI;AAAA,QAAK,GAAE,MAAI,IAAE,CAAC,EAAE;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,oBAAkBA,GAAE,oBAAkB,QAAOA,GAAE,oBAAkB,SAASD,IAAEC,IAAE;AAAC,cAAI,IAAE,SAAS,eAAeD,EAAC;AAAE,cAAG,CAAC,MAAI,IAAE,SAAS,eAAe,6BAA2BC,EAAC,GAAE,CAAC,GAAG,OAAM,IAAI,MAAM,oBAAoBD,EAAC,cAAc;AAAE,iBAAO,EAAE,UAAU,IAAI,yBAAyB,GAAE,EAAE,KAAG,6BAA2BC,IAAE,EAAE,YAAU,IAAG;AAAA,QAAC,GAAEA,GAAE,oBAAkB,SAASD,IAAEC,IAAE;AAAC,UAAAD,GAAE,MAAM,YAAY,gBAAeC,EAAC,GAAED,GAAE,MAAM,YAAY,sBAAqB,sBAAsBC,EAAC,cAAc,GAAED,GAAE,MAAM,YAAY,sBAAqB,sBAAsBC,EAAC,cAAc,GAAED,GAAE,MAAM,YAAY,uBAAsB,sBAAsBC,EAAC,oBAAoB,GAAED,GAAE,MAAM,YAAY,qBAAoBC,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,cAAYA,GAAE,oBAAkBA,GAAE,aAAW,QAAOA,GAAE,aAAW,SAASD,IAAEC,IAAE;AAAC,iBAAOD,KAAE,YAAU,OAAOA,KAAEA,GAAEC,EAAC,KAAGD,GAAE,KAAGA,KAAE;AAAA,QAAE,GAAEC,GAAE,oBAAkB,SAASD,IAAE;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAK,qBAAM,CAAC,SAAK,IAAI;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,OAAM,KAAK;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,MAAK,MAAM;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,SAAK,IAAI;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,OAAM,QAAK;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,MAAK,KAAK;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,OAAM,KAAK;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,gBAAK,oBAAK;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,gBAAK,oBAAK;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,UAAI,QAAG;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,UAAI,cAAI;AAAA,YAAE,KAAI;AAAA,YAAK,KAAI;AAAK,qBAAM,CAAC,MAAK,KAAK;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,YAAQ,IAAI;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,MAAK,KAAK;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,sBAAM,cAAI;AAAA,YAAE,KAAI;AAAK,qBAAM,CAAC,kCAAQ,cAAI;AAAA,YAAE;AAAQ,qBAAM,CAAC,OAAM,IAAI;AAAA,UAAC;AAAA,QAAC,GAAEC,GAAE,cAAY,SAASD,IAAE;AAAC,iBAAO,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAAE,IAAIA,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,OAAI;AAAC;AAAa,iBAAS,EAAED,IAAEC,IAAEC,KAAE,OAAM;AAAC,gBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,kCAAkC;AAAE,gBAAM,IAAE,SAAS,cAAc,MAAM;AAAE,YAAE,cAAY,QAAMF,KAAEA,KAAE,IAAG,EAAE,UAAU,IAAI,wCAAwC;AAAE,gBAAM,IAAE,SAAS,cAAc,MAAM;AAAE,iBAAO,EAAE,cAAY,QAAMC,KAAEA,KAAE,IAAG,EAAE,UAAU,IAAI,wCAAwC,GAAE,UAAQC,MAAGF,MAAG,EAAE,YAAY,CAAC,GAAEC,MAAG,EAAE,YAAY,CAAC,MAAIA,MAAG,EAAE,YAAY,CAAC,GAAED,MAAG,EAAE,YAAY,CAAC,IAAG;AAAA,QAAC;AAAC,eAAO,eAAeC,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,4BAA0BA,GAAE,mBAAiBA,GAAE,0BAAwB,QAAOA,GAAE,0BAAwB,GAAEA,GAAE,mBAAiB,SAASD,IAAEC,IAAE,GAAE,IAAE,MAAI;AAAA,QAAC,GAAE,GAAE;AAAC,gBAAM,IAAE,sCAAqC,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,qCAAqC,GAAE,EAAE,MAAM,WAAS,SAAQ,EAAE,MAAM,SAAO,QAAO,EAAE,QAAQ,oBAAkB;AAAI,mBAAQA,KAAE,GAAEA,MAAG,GAAEA,MAAI;AAAC,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAU,IAAI,kCAAkC;AAAE,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,KAAG,UAAUH,EAAC,IAAIC,EAAC,IAAGE,GAAE,OAAK,SAAQA,GAAE,OAAKH,IAAEG,GAAE,QAAMF,GAAE,SAAS,GAAEE,GAAE,MAAM,WAAS,YAAWA,GAAE,MAAM,UAAQ,KAAIA,GAAE,MAAM,QAAM,KAAIA,GAAE,MAAM,SAAO,KAAIA,GAAE,UAAU,IAAI,qBAAqB,GAAE,KAAG,MAAIA,GAAE,UAAQA,GAAE,UAAQ,OAAIA,GAAE,iBAAiB,WAAU,MAAI;AAAC,oBAAMH,KAAE,EAAE,iBAAiB,eAAe;AAAE,uBAAQC,KAAE,GAAEA,KAAED,GAAE,QAAOC,KAAI,CAAAA,KAAE,KAAG,OAAOE,GAAE,KAAK,IAAEH,GAAEC,EAAC,EAAE,UAAU,SAAS,CAAC,KAAGD,GAAEC,EAAC,EAAE,UAAU,IAAI,CAAC,IAAED,GAAEC,EAAC,EAAE,UAAU,SAAS,CAAC,KAAGD,GAAEC,EAAC,EAAE,UAAU,OAAO,CAAC;AAAE,gBAAE,QAAQ,oBAAkBE,GAAE,OAAM,KAAG,EAAE;AAAA,YAAC,EAAE,GAAED,GAAE,YAAYC,EAAC;AAAE,kBAAMK,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAQ,UAAUR,EAAC,IAAIC,EAAC,IAAGO,GAAE,UAAU,IAAI,cAAc,GAAEA,GAAE,cAAY,UAAIA,GAAE,MAAM,WAAS,QAAOA,GAAE,MAAM,QAAM,WAAUA,GAAE,MAAM,SAAO,WAAUA,GAAE,iBAAiB,eAAc,MAAI;AAAC,oBAAMR,KAAE,EAAE,iBAAiB,eAAe,GAAEE,KAAED,KAAE;AAAE,cAAAD,GAAE,SAAS,CAACA,IAAEC,OAAI;AAAC,gBAAAA,MAAGC,KAAEF,GAAE,UAAU,SAAS,CAAC,KAAGA,GAAE,UAAU,IAAI,CAAC,IAAEA,GAAE,UAAU,SAAS,CAAC,KAAGA,GAAE,UAAU,OAAO,CAAC;AAAA,cAAC,EAAE;AAAA,YAAC,EAAE,GAAEQ,GAAE,iBAAiB,eAAc,MAAI;AAAC,oBAAMR,KAAE,OAAO,EAAE,QAAQ,qBAAmB,GAAG;AAAE,gBAAE,iBAAiB,eAAe,EAAE,SAAS,CAACC,IAAEC,OAAI;AAAC,gBAAAA,KAAEF,KAAEC,GAAE,UAAU,SAAS,CAAC,KAAGA,GAAE,UAAU,IAAI,CAAC,IAAEA,GAAE,UAAU,SAAS,CAAC,KAAGA,GAAE,UAAU,OAAO,CAAC;AAAA,cAAC,EAAE;AAAA,YAAC,EAAE,GAAEC,GAAE,YAAYM,EAAC,GAAE,EAAE,YAAYN,EAAC;AAAA,UAAC;AAAC,gBAAM,IAAE,EAAED,IAAE,CAAC;AAAE,iBAAO,EAAE,oBAAkB,KAAG,EAAE,YAAY,CAAC,GAAE;AAAA,QAAC,GAAEA,GAAE,4BAA0B,SAASD,IAAEC,IAAEC,IAAE,GAAE,GAAE,GAAE,GAAE;AAAC,cAAI,GAAE;AAAE,gBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,6BAA6B;AAAE,gBAAM,IAAE,aAAW,GAAE,IAAE,UAAQA,KAAE,IAAE,GAAG,CAAC,YAAW,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,uCAAuC,GAAE,EAAE,UAAU,IAAI,yCAAyCA,EAAC,EAAE,GAAE,EAAE,UAAU,IAAI,yCAAyC,CAAC,EAAE,GAAE,EAAE,MAAM,UAAQ,QAAO,EAAE,MAAM,gBAAc,GAAE,EAAE,aAAa,QAAO,YAAY,GAAE,EAAE,aAAa,eAAc,QAAMD,KAAE,SAAOA,GAAE,cAAY,QAAQ;AAAE,gBAAM,KAAG,QAAMA,KAAE,SAAOA,GAAE,OAAK,OAAO,QAAMA,KAAE,SAAOA,GAAE,GAAG,IAAE,IAAG,KAAG,QAAMA,KAAE,SAAOA,GAAE,OAAK,OAAO,QAAMA,KAAE,SAAOA,GAAE,GAAG,IAAE;AAAE,WAAC,KAAG,IAAE,IAAE,IAAE,KAAG,EAAE,UAAU,IAAI,kDAAkD;AAAE,gBAAM,KAAG,QAAMA,KAAE,SAAOA,GAAE,uBAAqB,MAAK,IAAE,EAAE,CAAC,KAAG,CAAC,OAAO,KAAK,CAAC,EAAE;AAAQ,cAAI,IAAE;AAAK,cAAG,CAAC,OAAK,QAAMA,KAAE,SAAOA,GAAE,oBAAkB,QAAMA,KAAE,SAAOA,GAAE,kBAAiB;AAAC,gBAAE,SAAS,cAAc,KAAK,GAAE,EAAE,UAAU,IAAI,0CAA0C;AAAE,kBAAMD,KAAE,SAAS,cAAc,MAAM;AAAE,YAAAA,GAAE,UAAU,IAAI,yCAAyC,GAAEA,GAAE,cAAY,UAAQ,IAAE,QAAMC,KAAE,SAAOA,GAAE,mBAAiB,WAAS,IAAE,IAAE;AAAG,kBAAME,KAAE,SAAS,cAAc,MAAM;AAAE,YAAAA,GAAE,UAAU,IAAI,yCAAyC,GAAEA,GAAE,cAAY,UAAQ,IAAE,QAAMF,KAAE,SAAOA,GAAE,mBAAiB,WAAS,IAAE,IAAE,IAAG,UAAQC,MAAG,EAAE,YAAYF,EAAC,GAAE,EAAE,YAAYG,EAAC,MAAI,EAAE,YAAYA,EAAC,GAAE,EAAE,YAAYH,EAAC;AAAA,UAAE;AAAC,cAAI,IAAE;AAAK,cAAG,KAAG,CAAC,MAAI,EAAE,UAAU,IAAI,oDAAoD,IAAG,QAAMC,KAAE,SAAOA,GAAE,oBAAkB,QAAMA,KAAE,SAAOA,GAAE,kBAAiB;AAAC,kBAAMD,KAAE,UAAQE,KAAE,QAAMD,KAAE,SAAOA,GAAE,iBAAe,QAAMA,KAAE,SAAOA,GAAE,gBAAeE,KAAE,UAAQD,KAAE,QAAMD,KAAE,SAAOA,GAAE,iBAAe,QAAMA,KAAE,SAAOA,GAAE;AAAe,gBAAGD,IAAE;AAAC,oBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,+CAA+C,GAAEA,GAAE,cAAYD,IAAE,EAAE,YAAYC,EAAC;AAAA,YAAC;AAAC,YAAAE,OAAI,IAAE,SAAS,cAAc,KAAK,GAAE,EAAE,UAAU,IAAI,+CAA+C,GAAE,EAAE,cAAYA;AAAA,UAAE;AAAC,mBAAQD,KAAE,GAAEA,MAAG,GAAEA,MAAI;AAAC,kBAAMK,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,UAAU,IAAI,oCAAoC,GAAEA,GAAE,UAAU,IAAI,sCAAsC,CAAC,EAAE;AAAE,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAQ,UAAUR,EAAC,IAAIE,EAAC,IAAGM,GAAE,UAAU,IAAI,oDAAoD;AAAE,kBAAMC,KAAE,MAAI,EAAEP,EAAC,MAAIA,OAAI,IAAE,QAAMD,KAAE,SAAOA,GAAE,iBAAe,YAAUC,OAAI,IAAE,QAAMD,KAAE,SAAOA,GAAE,iBAAe,UAASS,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,KAAG,UAAUV,EAAC,IAAIE,EAAC,IAAGQ,GAAE,OAAK,SAAQA,GAAE,OAAKV,IAAEU,GAAE,QAAMR,GAAE,SAAS,GAAEQ,GAAE,UAAU,IAAI,CAAC,GAAEA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,aAAa,cAAaD,KAAE,GAAGP,EAAC,WAAMO,EAAC,KAAG,GAAGP,EAAC,EAAE,GAAE,KAAGQ,GAAE,iBAAiB,WAAU,MAAI,EAAE,EAAE,GAAE,KAAG,MAAIA,GAAE,UAAQA,GAAE,UAAQ,OAAIF,GAAE,YAAYE,EAAC;AAAE,kBAAMO,KAAE,SAAS,cAAc,MAAM;AAAE,YAAAA,GAAE,UAAU,IAAI,mCAAmC;AAAE,kBAAMC,KAAE,SAAS,cAAc,MAAM;AAAE,gBAAGA,GAAE,cAAYhB,GAAE,SAAS,GAAEgB,GAAE,UAAU,IAAI,uCAAuC,GAAED,GAAE,YAAYC,EAAC,GAAE,GAAE;AAAC,kBAAGT,IAAE;AAAC,sBAAMT,KAAE,SAAS,cAAc,MAAM;AAAE,gBAAAA,GAAE,cAAYS,IAAET,GAAE,UAAU,IAAI,yCAAyC,GAAEiB,GAAE,YAAYjB,EAAC;AAAA,cAAC;AAAA,YAAC,MAAM,MAAG,EAAEE,EAAC,MAAIM,GAAE,QAAM,EAAEN,EAAC;AAAG,YAAAM,GAAE,YAAYS,EAAC,GAAEV,GAAE,YAAYC,EAAC,GAAE,EAAE,YAAYD,EAAC;AAAA,UAAC;AAAC,cAAG,EAAE,YAAY,CAAC,GAAE,KAAG,EAAE,YAAY,CAAC,GAAE,KAAG,EAAE,YAAY,CAAC,IAAG,QAAMN,KAAE,SAAOA,GAAE,iBAAe,QAAMA,KAAE,SAAOA,GAAE,kBAAiB;AAAC,kBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,UAAU,IAAI,uCAAuC;AAAE,kBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,UAAU,IAAI,oCAAoC,GAAEA,GAAE,UAAU,IAAI,2CAA2C;AAAE,kBAAMG,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAQ,UAAUN,EAAC,UAASM,GAAE,UAAU,IAAI,oDAAoD;AAAE,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,KAAG,UAAUP,EAAC,UAASO,GAAE,OAAK,SAAQA,GAAE,OAAKP,IAAEO,GAAE,QAAM,KAAIA,GAAE,UAAU,IAAI,CAAC,GAAEA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,aAAa,cAAa,QAAMN,KAAE,SAAOA,GAAE,eAAe,GAAE,KAAGM,GAAE,iBAAiB,WAAU,MAAI,EAAE,EAAE;AAAE,kBAAMC,KAAE,SAAS,cAAc,MAAM;AAAE,YAAAA,GAAE,UAAU,IAAI,mCAAmC;AAAE,kBAAMG,KAAE,SAAS,cAAc,MAAM;AAAE,YAAAA,GAAE,cAAY,QAAMV,KAAE,SAAOA,GAAE,iBAAgBU,GAAE,UAAU,IAAI,yCAAyC,GAAEH,GAAE,YAAYG,EAAC,GAAEL,GAAE,YAAYC,EAAC,GAAED,GAAE,YAAYE,EAAC,GAAEL,GAAE,YAAYG,EAAC,GAAEJ,GAAE,YAAYC,EAAC,GAAE,EAAE,YAAYD,EAAC;AAAA,UAAC;AAAC,iBAAO;AAAA,QAAC;AAAA,MAAC,GAAE,IAAG,CAACF,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,sBAAoB;AAAO,cAAM,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,EAAE,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,EAAE,GAAE,IAAE,EAAE,EAAE,GAAE,IAAE,EAAE,EAAE,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,EAAE,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,oBAAI,IAAI,CAAC,CAAC,EAAE,sBAAsB,MAAK,EAAE,UAAU,GAAE,CAAC,EAAE,sBAAsB,UAAS,EAAE,cAAc,GAAE,CAAC,EAAE,sBAAsB,QAAO,EAAE,YAAY,GAAE,CAAC,EAAE,sBAAsB,OAAM,EAAE,YAAY,GAAE,CAAC,EAAE,sBAAsB,gBAAe,EAAE,YAAY,GAAE,CAAC,EAAE,sBAAsB,SAAQ,EAAE,aAAa,GAAE,CAAC,EAAE,sBAAsB,QAAO,EAAE,YAAY,GAAE,CAAC,EAAE,sBAAsB,MAAK,EAAE,UAAU,GAAE,CAAC,EAAE,sBAAsB,OAAM,EAAE,WAAW,GAAE,CAAC,EAAE,sBAAsB,UAAS,EAAE,cAAc,GAAE,CAAC,EAAE,sBAAsB,SAAQ,EAAE,aAAa,GAAE,CAAC,EAAE,sBAAsB,cAAa,EAAE,iBAAiB,GAAE,CAAC,EAAE,sBAAsB,eAAc,EAAE,kBAAkB,GAAE,CAAC,EAAE,sBAAsB,aAAY,EAAE,gBAAgB,GAAE,CAAC,EAAE,sBAAsB,uBAAsB,EAAE,YAAY,GAAE,CAAC,EAAE,sBAAsB,eAAc,EAAE,kBAAkB,GAAE,CAAC,EAAE,sBAAsB,cAAa,EAAE,iBAAiB,GAAE,CAAC,EAAE,sBAAsB,cAAa,EAAE,iBAAiB,GAAE,CAAC,EAAE,sBAAsB,aAAY,EAAE,gBAAgB,GAAE,CAAC,EAAE,sBAAsB,sBAAqB,EAAE,yBAAyB,GAAE,CAAC,EAAE,sBAAsB,WAAU,EAAE,cAAc,CAAC,CAAC;AAAE,QAAAA,GAAE,sBAAoB,SAASD,IAAE;AAAC,iBAAO,EAAE,IAAIA,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,IAAG,CAACA,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,gBAAc;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,gBAAc,CAAC,EAAC,UAASD,IAAE,UAASC,IAAE,eAAcC,IAAE,MAAK,EAAC,MAAI;AAAC,gBAAK,EAAC,KAAI,GAAE,QAAO,EAAC,IAAEF,IAAE,IAAE,SAAS,cAAc,KAAK,GAAE,IAAE,uBAAsB,IAAE,SAAS,cAAc,KAAK;AAAE,iBAAO,EAAE,UAAU,IAAI,iCAAiC,GAAE,EAAE,MAAM,UAAQ,QAAO,EAAE,MAAM,gBAAc,OAAM,EAAE,MAAM,iBAAe,iBAAgB,EAAE,MAAM,QAAM,OAAM,EAAE,MAAM,SAAO,UAAS,QAAM,IAAE,SAAO,EAAE,WAAS,CAAC,aAAK,WAAI,KAAG,GAAE,EAAE,mBAAmBC,EAAC,GAAG,SAAS,CAACD,IAAEC,OAAI;AAAC,kBAAME,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAU,IAAI,8BAA8B,GAAEA,GAAE,UAAQ,UAAU,CAAC,IAAIF,EAAC,IAAGE,GAAE,MAAM,SAAO,WAAUA,GAAE,MAAM,UAAQ,QAAOA,GAAE,MAAM,iBAAe,UAASA,GAAE,MAAM,aAAW,UAASA,GAAE,MAAM,SAAO,QAAOA,GAAE,MAAM,UAAQ,KAAIA,GAAE,MAAM,QAAM,OAAMA,GAAE,MAAM,SAAO;AAAO,kBAAMG,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAQ,UAAU,CAAC,IAAIL,EAAC,IAAGK,GAAE,cAAYN,IAAEM,GAAE,MAAM,SAAO,KAAIA,GAAE,MAAM,UAAQ;AAAI,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,KAAG,UAAU,CAAC,IAAIN,EAAC,IAAGM,GAAE,OAAK,SAAQA,GAAE,OAAK,GAAEA,GAAE,QAAM,CAAC,OAAM,IAAI,EAAEN,EAAC,GAAEM,GAAE,UAAU,IAAI,CAAC,GAAEA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,MAAM,WAAS,YAAWA,GAAE,MAAM,UAAQ,KAAIA,GAAE,MAAM,QAAM,KAAIA,GAAE,MAAM,SAAO,KAAIA,GAAE,MAAM,SAAO,KAAIA,GAAE,iBAAiB,WAAU,MAAI;AAAC,mBAAG,EAAE;AAAA,YAAC,EAAE,GAAEL,MAAGA,GAAE,YAAY,MAAIK,GAAE,MAAM,YAAY,MAAIA,GAAE,UAAQ,OAAIJ,GAAE,YAAYI,EAAC,GAAEJ,GAAE,YAAYG,EAAC,GAAE,EAAE,YAAYH,EAAC;AAAA,UAAC,EAAE,GAAE,EAAE,YAAY,CAAC,GAAE,EAAC,SAAQ,GAAE,kBAAiB,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACH,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,eAAa;AAAO,cAAM,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,eAAa,CAAC,EAAC,UAASD,IAAE,UAASC,IAAE,eAAcC,IAAE,gBAAe,GAAE,MAAK,EAAC,MAAI;AAAC,gBAAK,EAAC,MAAK,GAAE,KAAI,GAAE,OAAM,GAAE,cAAa,GAAE,QAAO,EAAC,IAAEF,IAAE,IAAE,SAAS,cAAc,KAAK,GAAE,IAAE,oBAAkB,qBAAmB,IAAE,aAAW;AAAS,cAAI,IAAE,KAAG,CAAC;AAAE,gBAAI,IAAE,EAAE,MAAM,MAAI,KAAK,OAAO,IAAE,IAAG;AAAG,cAAI,KAAG,QAAM,IAAE,SAAO,EAAE,qBAAmB,CAAC;AAAE,WAAC,QAAM,IAAE,SAAO,EAAE,iBAAe,IAAE,EAAE,QAAQ,CAAAA,OAAGA,OAAI,EAAE,gBAAgB,IAAG,EAAE,SAAO,MAAI,QAAM,KAAG,EAAE,SAAS,CAAAA,OAAG;AAAC,cAAE,SAASA,EAAC,KAAG,EAAE,KAAKA,EAAC;AAAA,UAAC,EAAE;AAAG,gBAAM,IAAE,QAAM,IAAE,SAAO,EAAE;AAAgB,kBAAO,QAAM,IAAE,SAAO,EAAE,gBAAc,KAAG,CAAC,EAAE,SAAS,CAAC,KAAG,EAAE,KAAK,CAAC,GAAE,EAAE,SAAS,CAACA,IAAEK,OAAI;AAAC,kBAAMI,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,UAAU,IAAI,iBAAiB,qBAAmB,IAAE,aAAW,OAAO,YAAY;AAAE,kBAAMO,KAAE,SAAS,cAAc,OAAO,GAAE,IAAE,SAAS,cAAc,OAAO;AAAE,gBAAG,EAAE,KAAG,UAAU,CAAC,IAAIX,EAAC,IAAG,EAAE,OAAK,qBAAmB,IAAE,aAAW,SAAQ,EAAE,OAAK,GAAE,EAAE,QAAML,IAAE,EAAE,UAAU,IAAI,CAAC,GAAE,EAAE,UAAU,IAAI,qBAAqB,GAAE,MAAI,EAAE,sBAAsB,mBAAiB,QAAM,IAAE,SAAO,EAAE,gBAAc,QAAM,IAAE,SAAO,EAAE,cAAY,KAAG,EAAE,iBAAiB,WAAU,MAAI;AAAC,uBAAS,iBAAiB,eAAe,CAAC,YAAY,EAAE,UAAQ,QAAM,IAAE,SAAO,EAAE,gBAAc,EAAE,UAAQ;AAAA,YAAG,EAAE,GAAE,MAAI,EAAE,sBAAsB,SAAO,MAAI,EAAE,QAAM,IAAE,SAAO,EAAE,qBAAmB,QAAM,IAAE,SAAO,EAAE,oBAAkBA,QAAK,QAAM,IAAE,SAAO,EAAE,qBAAmB,EAAE,iBAAiB,WAAU,MAAI;AAAC,gBAAE;AAAA,YAAC,EAAE,GAAEA,OAAI,KAAGA,OAAIE,OAAI,EAAE,UAAQ,OAAIc,GAAE,cAAYhB,IAAEgB,GAAE,UAAQ,UAAU,CAAC,IAAIX,EAAC,IAAG,EAAE,iBAAiB,WAAU,CAAAJ,OAAG;AAAC,oBAAMC,KAAE,SAAS,eAAe,gBAAgB,CAAC,EAAE;AAAE,cAAAD,GAAE,OAAO,WAAS,EAAE,SAASD,EAAC,KAAG,EAAE,SAAS,CAAAC,OAAG;AAAC,gBAAAA,OAAID,OAAI,SAAS,cAAc,gBAAgBC,EAAC,IAAI,EAAE,UAAQ;AAAA,cAAG,EAAE,GAAEC,OAAIA,GAAE,MAAM,UAAQ,WAAS,EAAE,SAAS,CAAAD,OAAG;AAAC,gBAAAA,OAAID,OAAI,SAAS,cAAc,gBAAgBC,EAAC,IAAI,EAAE,UAAQ;AAAA,cAAG,EAAE,IAAG,QAAM,IAAE,SAAO,EAAE,gBAAcD,QAAK,QAAM,IAAE,SAAO,EAAE,oBAAkBE,OAAIA,GAAE,MAAM,UAAQD,GAAE,OAAO,UAAQ,UAAQ;AAAA,YAAO,EAAE,GAAEQ,GAAE,YAAY,CAAC,GAAEA,GAAE,YAAYO,EAAC,GAAE,EAAE,YAAYP,EAAC,IAAG,QAAM,IAAE,SAAO,EAAE,gBAAcT,QAAK,QAAM,IAAE,SAAO,EAAE,kBAAiB;AAAC,oBAAMA,KAAE,SAAS,cAAc,OAAO;AAAE,cAAAA,GAAE,OAAK,QAAOA,GAAE,eAAa,QAAM,IAAE,SAAO,EAAE,2BAAyB,EAAE,YAAY,OAAOC,MAAG,IAAI,GAAED,GAAE,UAAU,IAAI,4BAA4B,GAAEA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,KAAG,gBAAgB,CAAC,IAAGA,GAAE,OAAK,gBAAgB,CAAC,IAAGA,GAAE,MAAM,UAAQ,QAAO,EAAE,YAAYA,EAAC;AAAA,YAAC;AAAA,UAAC,EAAE,GAAE,EAAC,SAAQ,GAAE,kBAAiB,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,gBAAc,QAAOA,GAAE,gBAAc,CAAC,EAAC,UAASD,IAAE,eAAcC,IAAE,MAAK,EAAC,MAAI;AAAC,gBAAK,EAAC,IAAG,GAAE,KAAI,GAAE,OAAM,GAAE,SAAQ,EAAC,IAAED,IAAE,IAAE,SAAS,cAAc,OAAO;AAAE,iBAAO,EAAE,OAAK,YAAW,EAAE,KAAG,iBAAiB,CAAC,IAAG,EAAE,OAAK,GAAE,EAAE,QAAM,QAAO,EAAE,WAAS,GAAE,EAAE,UAAU,IAAI,uBAAuB,GAAE,EAAE,UAAU,IAAI,qBAAqB,GAAEC,MAAG,EAAE,SAASA,EAAC,MAAI,EAAE,UAAQ,OAAI,KAAG,EAAE,iBAAiB,WAAU,MAAI;AAAC,cAAE;AAAA,UAAC,EAAE,GAAE,EAAC,SAAQ,GAAE,kBAAiB,wBAAuB;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,aAAW;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,aAAW,CAAC,EAAC,UAASD,IAAE,iBAAgBC,IAAE,eAAcC,GAAC,MAAI;AAAC,gBAAM,IAAE,SAAS,cAAc,OAAO;AAAE,iBAAO,EAAE,OAAK,QAAO,EAAE,cAAYD,MAAG,EAAE,YAAY,KAAKD,MAAG,IAAI,GAAEE,OAAI,EAAE,QAAMA,KAAG,EAAC,SAAQ,GAAE,kBAAiB,qBAAoB;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACF,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,cAAY,QAAOA,GAAE,cAAY,CAAC,EAAC,iBAAgBD,IAAE,eAAcC,GAAC,MAAI;AAAC,gBAAM,IAAE,SAAS,cAAc,OAAO;AAAE,iBAAO,EAAE,OAAK,SAAQ,EAAE,cAAYD,MAAG,mBAAkBC,OAAI,EAAE,QAAMA,KAAG,EAAC,SAAQ,GAAE,kBAAiB,sBAAqB;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,iBAAe,QAAOA,GAAE,iBAAe,CAAC,EAAC,UAASD,IAAE,iBAAgBC,GAAC,MAAI;AAAC,cAAI,GAAE;AAAE,gBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,cAAG,YAAU,QAAO,UAAQ,IAAED,GAAE,WAAS,WAAS,IAAE,SAAO,EAAE,eAAa,OAAKA,GAAE,OAAO,YAAY,KAAK,IAAE,QAAQ,UAAQ,IAAEA,GAAE,WAAS,WAAS,IAAE,SAAO,EAAE,WAAW,GAAE;AAAC,kBAAMA,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,UAAU,IAAI,4BAA4B,GAAEA,GAAE,YAAUC,MAAG,IAAG,EAAE,YAAYD,EAAC;AAAA,UAAC;AAAC,iBAAM,EAAC,SAAQ,GAAE,kBAAiB,0BAAyB;AAAA,QAAC;AAAA,MAAC,GAAE,IAAG,CAACA,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,iBAAe;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,iBAAe,CAAC,EAAC,UAASD,IAAE,iBAAgBC,IAAE,eAAcC,IAAE,eAAc,EAAC,MAAI;AAAC,gBAAM,IAAE,SAAS,cAAc,UAAU;AAAE,iBAAO,EAAE,OAAK,GAAE,IAAE,MAAI,EAAE,YAAU,IAAG,EAAE,cAAYD,MAAG,EAAE,YAAY,OAAOD,MAAG,IAAI,GAAEE,OAAI,EAAE,QAAMA,KAAG,EAAC,SAAQ,GAAE,kBAAiB,yBAAwB;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACF,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,eAAa,QAAOA,GAAE,eAAa,CAAC,EAAC,UAASD,IAAE,SAAQC,IAAE,gBAAe,EAAC,MAAI;AAAC,gBAAK,EAAC,KAAI,GAAE,OAAM,GAAE,QAAO,EAAC,IAAED,IAAE,IAAE,SAAS,cAAc,KAAK,GAAE,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,+CAA+C;AAAE,cAAI,KAAG,QAAM,IAAE,SAAO,EAAE,YAAU,CAAC,GAAE,IAAE,CAAC,GAAG,CAAC,GAAE,IAAE,CAAC;AAAE,cAAG,MAAI,IAAE,QAAM,IAAE,SAAO,EAAE,MAAM,MAAI,KAAK,OAAO,IAAE,IAAG,GAAE,IAAE,CAAC,GAAG,CAAC,EAAE,MAAM,MAAI,KAAK,OAAO,IAAE,IAAG,KAAI,QAAM,IAAE,SAAO,EAAE,sBAAoB,IAAE,QAAM,IAAE,SAAO,EAAE,kBAAiB,QAAM,KAAG,EAAE,SAAS,CAAAA,OAAG;AAAC,cAAE,SAASA,EAAC,KAAG,EAAE,KAAKA,EAAC;AAAA,UAAC,EAAE,IAAGC,IAAE;AAAC,kBAAMD,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,UAAU,IAAI,0CAA0C,GAAE,QAAM,KAAG,EAAE,SAAS,CAAAC,OAAG;AAAC,oBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,+CAA+C,GAAEA,GAAE,MAAM,UAAQ,QAAOA,GAAE,MAAM,gBAAc,UAASA,GAAE,MAAM,aAAW,cAAaA,GAAE,MAAM,eAAa;AAAO,oBAAME,KAAE,SAAS,cAAc,OAAO;AAAE,cAAAA,GAAE,UAAU,IAAI,2CAA2C,GAAEA,GAAE,MAAM,gBAAc,QAAOA,GAAE,cAAYH,IAAEC,GAAE,YAAYE,EAAC,GAAE,EAAE,SAAS,CAAAJ,OAAG;AAAC,sBAAMI,KAAE,SAAS,cAAc,KAAK;AAAE,gBAAAA,GAAE,UAAU,IAAI,+BAA+B,GAAEA,GAAE,MAAM,UAAQ,QAAOA,GAAE,MAAM,aAAW,UAASA,GAAE,MAAM,iBAAe,cAAaA,GAAE,MAAM,QAAM,OAAMA,GAAE,MAAM,SAAO;AAAW,sBAAMC,KAAE,SAAS,cAAc,OAAO,GAAEC,KAAE,SAAS,cAAc,OAAO;AAAE,gBAAAA,GAAE,KAAG,GAAG,CAAC,IAAIL,EAAC,IAAID,EAAC,IAAGM,GAAE,OAAK,SAAQA,GAAE,OAAK,GAAG,CAAC,IAAIL,EAAC,IAAGK,GAAE,QAAMN,IAAEM,GAAE,UAAU,IAAI,qBAAqB,GAAED,GAAE,cAAYL,IAAEK,GAAE,UAAQ,GAAG,CAAC,IAAIJ,EAAC,IAAID,EAAC,IAAGI,GAAE,YAAYE,EAAC,GAAEF,GAAE,YAAYC,EAAC,GAAEH,GAAE,YAAYE,EAAC;AAAA,cAAC,EAAE,GAAEJ,GAAE,YAAYE,EAAC;AAAA,YAAC,EAAE,GAAE,EAAE,YAAYF,EAAC;AAAA,UAAC,OAAK;AAAC,kBAAMA,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAU,IAAI,2CAA2C;AAAE,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAU,IAAI,4CAA4C,GAAEA,GAAE,MAAM,gBAAc;AAAO,kBAAMC,KAAE,SAAS,cAAc,IAAI,GAAEE,KAAE,SAAS,cAAc,IAAI;AAAE,YAAAF,GAAE,YAAYE,EAAC,GAAE,EAAE,SAAS,CAAAJ,OAAG;AAAC,oBAAMC,KAAE,SAAS,cAAc,IAAI;AAAE,cAAAA,GAAE,cAAYD,IAAEE,GAAE,YAAYD,EAAC;AAAA,YAAC,EAAE,GAAEA,GAAE,YAAYC,EAAC,GAAEF,GAAE,YAAYC,EAAC;AAAE,kBAAMI,KAAE,SAAS,cAAc,OAAO;AAAE,oBAAM,KAAG,EAAE,SAAS,CAAAL,OAAG;AAAC,oBAAMC,KAAE,SAAS,cAAc,IAAI;AAAE,cAAAA,GAAE,UAAU,IAAI,4CAA4C;AAAE,oBAAMC,KAAE,SAAS,cAAc,IAAI;AAAE,cAAAA,GAAE,MAAM,WAAS,SAAQA,GAAE,MAAM,UAAQ;AAAO,oBAAME,KAAE,SAAS,cAAc,OAAO;AAAE,cAAAA,GAAE,UAAU,IAAI,2CAA2C,GAAEA,GAAE,cAAYJ,IAAEE,GAAE,YAAYE,EAAC,GAAEH,GAAE,YAAYC,EAAC,GAAE,EAAE,SAAS,CAAAA,OAAG;AAAC,sBAAME,KAAE,SAAS,cAAc,IAAI,GAAEC,KAAE,SAAS,cAAc,OAAO;AAAE,gBAAAA,GAAE,OAAK,SAAQA,GAAE,OAAK,GAAG,CAAC,IAAIL,EAAC,IAAGK,GAAE,QAAMH,IAAEG,GAAE,KAAG,GAAG,CAAC,IAAIL,EAAC,IAAIE,EAAC,IAAGG,GAAE,UAAU,IAAI,qBAAqB,GAAED,GAAE,YAAYC,EAAC,GAAEJ,GAAE,YAAYG,EAAC;AAAA,cAAC,EAAE,GAAEC,GAAE,YAAYJ,EAAC;AAAA,YAAC,EAAE,GAAED,GAAE,YAAYK,EAAC,GAAE,EAAE,YAAYL,EAAC;AAAA,UAAC;AAAC,iBAAO,EAAE,YAAY,CAAC,GAAE,EAAC,SAAQ,GAAE,kBAAiB,sCAAqC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,4BAA0B,QAAOA,GAAE,4BAA0B,CAAC,EAAC,UAASD,IAAE,gBAAeC,IAAE,eAAc,GAAE,MAAK,EAAC,MAAI;AAAC,gBAAM,IAAE,SAAS,cAAc,KAAK,GAAE,EAAC,KAAI,GAAE,QAAO,EAAC,IAAED;AAAE,cAAI,IAAE,CAAC,GAAGA,GAAE,KAAK;AAAE,gBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,+CAA+C,GAAE,EAAE,MAAM,UAAQ,QAAO,EAAE,MAAM,gBAAc,OAAM,EAAE,MAAM,WAAS,QAAO,EAAE,MAAM,iBAAe;AAAS,gBAAM,IAAE,EAAE;AAAO,cAAI,IAAE,GAAE,IAAE;AAAE,cAAG,OAAO,aAAW,IAAI,KAAE,GAAE,IAAE;AAAA,cAAO,SAAO,GAAE;AAAA,YAAC,KAAK;AAAA,YAAE,KAAK;AAAA,YAAE,KAAK;AAAE,kBAAE,GAAE,IAAE;AAAE;AAAA,YAAM,KAAK;AAAA,YAAE,KAAK;AAAA,YAAE,KAAK;AAAE,kBAAE,GAAE,IAAE,KAAK,KAAK,IAAE,CAAC;AAAE;AAAA,YAAM,KAAK;AAAA,YAAE,KAAK;AAAA,YAAE,KAAK;AAAE,kBAAE,GAAE,IAAE,KAAK,KAAK,IAAE,CAAC;AAAE;AAAA,YAAM;AAAQ,kBAAE,GAAE,IAAE,KAAK,KAAK,IAAE,CAAC;AAAA,UAAC;AAAC,gBAAM,IAAE,YAAU,QAAM,IAAE,SAAO,EAAE,cAAY,QAAM,IAAE,SAAO,EAAE,WAAU,IAAE,YAAU,QAAM,IAAE,SAAO,EAAE,iBAAe,QAAM,IAAE,SAAO,EAAE,cAAa,IAAE,YAAU,QAAM,IAAE,SAAO,EAAE,iBAAe,QAAM,IAAE,SAAO,EAAE;AAAa,mBAAS,EAAEA,IAAE;AAAC,gBAAG;AAAC,oBAAK,EAAC,UAASC,IAAE,KAAIG,IAAE,OAAME,GAAC,IAAEN,IAAEO,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,4CAA4C,GAAEA,GAAE,MAAM,QAAM,eAAe,CAAC,WAAUA,GAAE,MAAM,SAAO,eAAe,CAAC,WAAUA,GAAE,MAAM,UAAQ,OAAMA,GAAE,MAAM,SAAO;AAAI,oBAAME,KAAE,SAAS,cAAc,OAAO;AAAE,cAAAA,GAAE,UAAU,IAAI,4CAA4C,GAAEA,GAAE,UAAQ,UAAU,CAAC,IAAIR,EAAC,IAAGQ,GAAE,MAAM,SAAO,WAAUA,GAAE,iBAAiB,UAAS,MAAI;AAAC,gBAAAA,GAAE,MAAM,SAAO;AAAA,cAAgB,EAAE;AAAE,oBAAMI,KAAE,SAAS,cAAc,OAAO;AAAE,cAAAA,GAAE,cAAYP,IAAEO,GAAE,UAAU,IAAI,2CAA2C;AAAE,oBAAME,KAAE,SAAS,cAAc,OAAO;AAAE,cAAAA,GAAE,KAAG,UAAU,CAAC,IAAId,EAAC,IAAGc,GAAE,OAAK,IAAE,aAAW,SAAQA,GAAE,OAAK,GAAEA,GAAE,QAAMT,IAAES,GAAE,MAAM,WAAS,YAAWA,GAAE,MAAM,UAAQ,KAAIA,GAAE,MAAM,QAAM,KAAIA,GAAE,MAAM,SAAO,KAAIA,GAAE,UAAU,IAAI,qBAAqB,GAAE,KAAG,MAAIA,GAAE,UAAQA,GAAE,UAAQ,OAAI,CAAC,KAAG,KAAGA,GAAE,iBAAiB,WAAU,MAAI;AAAC,kBAAE;AAAA,cAAC,EAAE;AAAE,oBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,gBAAE,UAAU,IAAI,2CAA2C,GAAE,EAAE,MAAIX,IAAE,EAAE,MAAM,SAAO,WAAU,EAAE,MAAM,iBAAe,SAAQ,EAAE,MAAM,qBAAmB,UAAS,EAAE,MAAM,QAAM,QAAO,EAAE,MAAM,SAAO,QAAO,EAAE,MAAM,YAAU,SAAQ,EAAE,MAAM,SAAO,QAAOK,GAAE,YAAYM,EAAC,GAAEN,GAAE,YAAY,CAAC,GAAE,KAAGA,GAAE,YAAYI,EAAC,GAAEN,GAAE,YAAYE,EAAC,GAAE,EAAE,YAAYF,EAAC;AAAA,YAAC,SAAOP,IAAE;AAAC,sBAAQ,MAAMA,EAAC;AAAA,YAAC;AAAA,UAAC;AAAC,iBAAOC,OAAI,IAAE,EAAE,MAAM,MAAI,KAAK,OAAO,IAAE,IAAG,IAAG,EAAE,SAAS,CAAAD,OAAG,EAAE,KAAK,MAAMA,EAAC,CAAC,EAAE,GAAE,MAAI,QAAM,IAAE,SAAO,EAAE,sBAAoB,QAAM,IAAE,SAAO,EAAE,iBAAiB,UAAQ,KAAG,EAAE,QAAM,IAAE,SAAO,EAAE,iBAAiB,CAAC,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAC,SAAQ,GAAE,kBAAiB,sCAAqC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,eAAa;AAAO,cAAM,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,eAAa,CAAC,EAAC,UAASD,IAAE,QAAOC,IAAE,UAASC,IAAE,eAAc,EAAC,MAAI;AAAC,gBAAM,IAAE,SAAS,cAAc,OAAO;AAAE,YAAE,OAAK,UAAS,EAAE,cAAY,WAASD,MAAG,GAAE,EAAE,YAAYD,GAAE,OAAME,EAAC,IAAE,EAAE,YAAY,OAAOA,MAAG,IAAI;AAAE,gBAAK,EAAC,OAAM,EAAC,IAAEF;AAAE,iBAAO,EAAE,WAAS,EAAE,MAAM,CAACA,IAAEC,OAAI,OAAOD,EAAC,IAAE,OAAOC,EAAC,EAAE,GAAE,EAAE,MAAI,EAAE,EAAE,SAAO,CAAC,GAAE,EAAE,MAAI,EAAE,CAAC,GAAE,EAAE,QAAM,EAAE,CAAC,IAAG,KAAG,CAAC,MAAM,OAAO,CAAC,CAAC,MAAI,EAAE,QAAM,IAAG,EAAC,SAAQ,GAAE,kBAAiB,uBAAsB;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,iBAAe;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,iBAAe,CAAC,EAAC,UAASD,IAAE,iBAAgBC,IAAE,eAAcC,GAAC,MAAI;AAAC,gBAAM,IAAE,SAAS,cAAc,OAAO;AAAE,iBAAO,EAAE,OAAK,YAAW,EAAE,cAAYD,MAAG,EAAE,YAAY,SAASD,MAAG,IAAI,GAAEE,OAAI,EAAE,QAAMA,KAAG,EAAC,SAAQ,GAAE,kBAAiB,yBAAwB;AAAA,QAAC;AAAA,MAAC,GAAE,IAAG,CAACF,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,oBAAkB;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,oBAAkB,CAAC,EAAC,UAASD,IAAE,UAASC,GAAC,MAAI;AAAC,gBAAK,EAAC,KAAIC,IAAE,OAAM,EAAC,IAAEF,IAAE,IAAE,SAAS,cAAc,KAAK,GAAE,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,sCAAsC;AAAE,gBAAM,IAAE,SAAS,cAAc,IAAI;AAAE,YAAE,UAAU,IAAI,iCAAiC,GAAE,EAAE,MAAM,UAAQ;AAAI,gBAAM,IAAE,MAAI,EAAE,QAAO,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,qBAAqB,GAAE,EAAE,cAAY,EAAE,YAAY,iBAAiBC,MAAG,IAAI,GAAE,EAAE,MAAM,QAAM,WAAU,EAAE,MAAM,WAAS,QAAO,EAAE,MAAM,YAAU,SAAQ,EAAE,MAAM,QAAM,QAAO,EAAE,MAAM,UAAQ;AAAO,gBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,iBAAO,EAAE,UAAU,IAAI,kCAAkC,GAAE,EAAE,cAAY,aAAY,EAAE,MAAM,YAAU,SAAQ,EAAE,MAAM,WAAS,QAAO,EAAE,MAAM,YAAU,OAAM,EAAE,SAAS,CAACD,IAAEC,OAAI;AAAC,kBAAME,KAAE,SAAS,cAAc,IAAI;AAAE,YAAAA,GAAE,UAAU,IAAI,iCAAiC,GAAEA,GAAE,MAAM,UAAQ,QAAOA,GAAE,MAAM,iBAAe,iBAAgBA,GAAE,MAAM,aAAW,UAASA,GAAE,MAAM,SAAO;AAAM,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,cAAYJ,IAAEI,GAAE,MAAM,WAAS,QAAOD,GAAE,YAAYC,EAAC;AAAE,kBAAMC,KAAE,SAAS,cAAc,MAAM;AAAE,YAAAA,GAAE,UAAU,IAAI,4CAA4C;AAAE,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,OAAKJ,IAAEI,GAAE,KAAG,GAAGN,EAAC,IAAGM,GAAE,OAAK,UAASA,GAAE,MAAI,KAAIA,GAAE,MAAI,OAAMA,GAAE,QAAM,KAAIA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,MAAM,QAAM,QAAOA,GAAE,MAAM,SAAO,KAAIA,GAAE,MAAM,YAAU,UAASA,GAAE,MAAM,SAAO,SAAQA,GAAE,YAAU,MAAIL;AAAE,kBAAM,IAAE,SAAS,cAAc,MAAM;AAAE,cAAE,cAAY,KAAI,EAAE,MAAM,QAAM,QAAOK,GAAE,iBAAiB,UAAS,MAAI;AAAC,oBAAMN,KAAE,EAAE,iBAAiB,OAAO;AAAE,kBAAIC,KAAE;AAAE,cAAAD,GAAE,SAAS,CAAAA,OAAG;AAAC,gBAAAC,MAAG,OAAOD,GAAE,KAAK;AAAA,cAAC,EAAE,GAAEC,KAAE,QAAMK,GAAE,QAAM,GAAG,CAAC,KAAIL,MAAG,OAAOK,GAAE,KAAK;AAAG,oBAAMJ,KAAE,SAAS,eAAe,sBAAsB;AAAE,cAAAA,OAAID,KAAE,OAAK,EAAE,MAAM,QAAM,UAASC,GAAE,aAAa,YAAW,MAAM,MAAI,EAAE,MAAM,UAAQ,QAAO,EAAE,MAAM,QAAM,SAAQA,GAAE,gBAAgB,UAAU,KAAI,EAAE,cAAY,GAAGD,EAAC;AAAA,YAAU,EAAE,GAAEK,GAAE,iBAAiB,UAAS,MAAI;AAAC,oBAAMN,KAAE,SAAS,eAAe,sBAAsB;AAAE,cAAAA,OAAIA,GAAE,aAAa,YAAW,MAAM,GAAEA,GAAE,iBAAiB,gBAAe,MAAI;AAAC,sBAAMA,KAAE,EAAE,iBAAiB,OAAO;AAAE,oBAAIC,KAAE;AAAE,gBAAAD,GAAE,SAAS,CAAAA,OAAG;AAAC,kBAAAC,MAAG,OAAOD,GAAE,KAAK;AAAA,gBAAC,EAAE,GAAEC,KAAE,QAAM,EAAE,MAAM,UAAQ;AAAA,cAAQ,EAAE;AAAA,YAAE,EAAE,GAAEI,GAAE,YAAYC,EAAC,GAAED,GAAE,YAAY,CAAC,GAAEF,GAAE,YAAYE,EAAC,GAAE,EAAE,YAAYF,EAAC;AAAA,UAAC,EAAE,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAC,SAAQ,GAAE,kBAAiB,6BAA4B;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACH,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,qBAAmB,QAAOA,GAAE,qBAAmB,CAAC,EAAC,UAASD,IAAE,gBAAeC,IAAE,UAAS,EAAC,MAAI;AAAC,cAAI,GAAE,GAAE;AAAE,gBAAM,IAAE,SAAS,cAAc,KAAK,GAAE,KAAE,SAASD,IAAE;AAAC,kBAAK,EAAC,OAAMC,IAAE,KAAIC,IAAE,gBAAeC,KAAE,OAAG,eAAcC,KAAE,OAAG,aAAYC,KAAE,GAAE,UAASC,KAAE,MAAK,aAAYC,KAAE,GAAE,IAAEP,IAAE,IAAE,CAAAA,OAAG;AAAC,oBAAMC,KAAE,EAAC,IAAG,EAAC,YAAW,gBAAe,SAAQ,WAAU,WAAU,uBAAsB,eAAc,kBAAiB,QAAO,UAAS,SAAQ,WAAU,oBAAmB,mBAAkB,aAAY,eAAc,IAAG,MAAK,aAAY,0JAAyJ,GAAE,IAAG,EAAC,YAAW,oBAAmB,SAAQ,YAAW,WAAU,wBAAoB,eAAc,wBAAuB,QAAO,YAAW,SAAQ,aAAY,oBAAmB,6BAAyB,aAAY,eAAc,IAAG,MAAK,aAAY,sJAAqJ,GAAE,IAAG,EAAC,YAAW,oBAAgB,SAAQ,gBAAS,WAAU,sBAAqB,eAAc,2BAAoB,QAAO,YAAW,SAAQ,aAAY,oBAAmB,6BAAsB,aAAY,eAAc,IAAG,MAAK,aAAY,0LAA6K,GAAE,IAAG,EAAC,YAAW,8BAAuB,SAAQ,WAAU,WAAU,oBAAmB,eAAc,+BAA2B,QAAO,WAAU,SAAQ,aAAY,oBAAmB,8BAA0B,aAAY,iBAAa,IAAG,OAAM,aAAY,uNAAqM,GAAE,IAAG,EAAC,YAAW,wBAAoB,SAAQ,YAAW,WAAU,2BAA0B,eAAc,yBAAqB,QAAO,aAAY,SAAQ,iBAAa,oBAAmB,0BAAsB,aAAY,eAAc,IAAG,OAAM,aAAY,4MAA+L,GAAE,IAAG,EAAC,YAAW,oBAAmB,SAAQ,WAAU,WAAU,kBAAiB,eAAc,qBAAoB,QAAO,WAAU,SAAQ,YAAW,oBAAmB,uBAAsB,aAAY,iBAAgB,IAAG,MAAK,aAAY,6KAAsK,GAAE,IAAG,EAAC,YAAW,iBAAgB,SAAQ,UAAS,WAAU,8BAA6B,eAAc,oBAAmB,QAAO,aAAY,SAAQ,cAAa,oBAAmB,qBAAoB,aAAY,iBAAgB,IAAG,OAAM,aAAY,yLAAwL,GAAE,IAAG,EAAC,YAAW,cAAa,SAAQ,SAAQ,WAAU,uCAA4B,eAAc,iBAAgB,QAAO,UAAS,SAAQ,kBAAY,oBAAmB,wBAAkB,aAAY,gBAAe,IAAG,KAAI,aAAY,4OAAgL,GAAE,IAAG,EAAC,YAAW,iEAAc,SAAQ,0DAAY,WAAU,yHAAyB,eAAc,+FAAmB,QAAO,wCAAS,SAAQ,sEAAc,oBAAmB,iGAAqB,aAAY,gEAAa,IAAG,gBAAK,aAAY,q1BAAuK,GAAE,IAAG,EAAC,YAAW,gBAAK,SAAQ,gEAAa,WAAU,4EAAe,eAAc,oDAAW,QAAO,kCAAQ,SAAQ,gBAAK,oBAAmB,uDAAc,aAAY,4BAAO,IAAG,sBAAM,aAAY,qcAA6E,GAAE,IAAG,EAAC,YAAW,4BAAO,SAAQ,sBAAM,WAAU,wCAAS,eAAc,4BAAO,QAAO,gBAAK,SAAQ,gBAAK,oBAAmB,8BAAS,aAAY,sBAAM,IAAG,UAAI,aAAY,2QAA8C,GAAE,IAAG,EAAC,YAAW,gBAAK,SAAQ,0CAAW,WAAU,4DAAc,eAAc,6BAAQ,QAAO,gBAAK,SAAQ,gBAAK,oBAAmB,+BAAU,aAAY,4BAAO,IAAG,UAAI,aAAY,0XAAkF,GAAE,IAAG,EAAC,YAAW,+CAAW,SAAQ,wCAAS,WAAU,+CAAW,eAAc,6EAAgB,QAAO,kCAAQ,SAAQ,kCAAQ,oBAAmB,mEAAgB,aAAY,2DAAa,IAAG,gBAAK,aAAY,2rBAA0I,GAAE,IAAG,EAAC,YAAW,8HAAyB,SAAQ,qDAAY,WAAU,sGAAqB,eAAc,kHAAuB,QAAO,kCAAQ,SAAQ,uEAAe,oBAAmB,oHAAyB,aAAY,0GAAoB,IAAG,+CAAW,aAAY,o5BAA+K,GAAE,IAAG,EAAC,YAAW,kBAAc,SAAQ,cAAa,WAAU,0BAAyB,eAAc,sBAAkB,QAAO,YAAW,SAAQ,cAAU,oBAAmB,sBAAkB,aAAY,eAAc,IAAG,MAAK,aAAY,qLAAkK,GAAE,IAAG,EAAC,YAAW,0BAAmB,SAAQ,eAAc,WAAU,+BAAwB,eAAc,uBAAsB,QAAO,WAAU,SAAQ,YAAW,oBAAmB,wBAAuB,aAAY,eAAc,IAAG,OAAM,aAAY,wKAA2J,GAAE,IAAG,EAAC,YAAW,oBAAgB,SAAQ,cAAa,WAAU,uBAAsB,eAAc,sBAAkB,QAAO,UAAS,SAAQ,eAAW,oBAAmB,wBAAoB,aAAY,eAAc,IAAG,MAAK,aAAY,6KAA0J,GAAE,IAAG,EAAC,YAAW,eAAc,SAAQ,gBAAe,WAAU,yBAAwB,eAAc,qBAAoB,QAAO,UAAS,SAAQ,WAAU,oBAAmB,qBAAoB,aAAY,cAAa,IAAG,MAAK,aAAY,gLAAsK,EAAC;AAAE,qBAAOA,GAAEA,GAAEK,EAAC,IAAEA,KAAE,IAAI,EAAEN,EAAC;AAAA,YAAC,GAAE,IAAE,SAAS,cAAc,KAAK;AAAE,gBAAG,EAAE,UAAU,IAAI,uCAAuC,GAAEI,MAAGC,MAAGA,KAAE,GAAE;AAAC,oBAAML,KAAE,CAAC,GAAEI,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,oCAAoC;AAAE,oBAAME,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,yCAAyC,GAAEA,GAAE,cAAY,OAAKC,KAAEA,KAAE,GAAG,EAAE,aAAa,CAAC,IAAGD,GAAE,MAAM,UAAQ;AAAO,oBAAMK,KAAE,SAAS,cAAc,QAAQ;AAAE,cAAAA,GAAE,OAAK,UAASA,GAAE,cAAY,EAAE,eAAe,GAAEA,GAAE,UAAU,IAAI,sBAAsB,GAAEA,GAAE,UAAU,IAAI,sCAAsC,GAAEP,GAAE,YAAYO,EAAC,GAAEP,GAAE,YAAYE,EAAC;AAAE,oBAAMI,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,qCAAqC;AAAE,oBAAM,IAAE,SAAS,cAAc,IAAI;AAAE,gBAAE,UAAU,IAAI,kCAAkC,GAAEA,GAAE,YAAY,CAAC;AAAE,oBAAM,IAAE,MAAI;AAAC,kBAAE,YAAU,IAAGV,GAAE,SAAS,CAACC,IAAEE,OAAI;AAAC,wBAAMC,KAAE,SAAS,cAAc,IAAI;AAAE,kBAAAA,GAAE,UAAU,IAAI,kCAAkC;AAAE,wBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,kBAAAA,GAAE,UAAU,IAAI,iDAAiD,GAAEA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,OAAK,UAASA,GAAE,KAAG,iBAAiBH,EAAC,IAAGG,GAAE,OAAKH,IAAEG,GAAE,QAAM,GAAGF,KAAE,CAAC,KAAKF,EAAC,IAAGG,GAAE,YAAYC,EAAC;AAAE,wBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,kBAAAA,GAAE,UAAU,IAAI,wCAAwC,GAAEA,GAAE,cAAY,GAAGH,KAAE,CAAC,KAAKF,EAAC,IAAGG,GAAE,YAAYE,EAAC;AAAE,wBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,kBAAAA,GAAE,UAAU,IAAI,oCAAoC;AAAE,wBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,kBAAAA,GAAE,UAAU,IAAI,sCAAsC,GAAEA,GAAE,MAAI,4DAA2DA,GAAE,MAAM,aAAW,MAAIL,KAAE,WAAS;AAAU,wBAAMM,KAAE,SAAS,cAAc,KAAK;AAAE,kBAAAA,GAAE,UAAU,IAAI,wCAAwC,GAAEA,GAAE,MAAI,4DAA2DA,GAAE,MAAM,YAAU,kBAAiBA,GAAE,MAAM,aAAWN,OAAIH,GAAE,SAAO,IAAE,WAAS,WAAUQ,GAAE,iBAAiB,UAAS,MAAI;AAAC,wBAAIN,IAAEC,IAAEI,IAAEI;AAAE,0BAAMD,KAAEN,GAAE;AAAuB,wBAAGM,IAAE;AAAC,4BAAMI,KAAE,OAAO,UAAQZ,KAAEG,GAAE,UAAQ,WAASH,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE;AAAE,sBAAAG,GAAE,QAAM,GAAGS,EAAC,KAAKb,EAAC,IAAGK,GAAE,cAAY,GAAGQ,EAAC,KAAKb,EAAC,IAAGO,GAAE,MAAM,aAAW,MAAIM,KAAE,WAAS,WAAUL,GAAE,MAAM,aAAWK,OAAId,GAAE,SAAO,WAAS;AAAU,4BAAMa,KAAEH,GAAE,cAAc,kDAAkD,GAAEK,KAAEL,GAAE,cAAc,yCAAyC,GAAEM,KAAEN,GAAE,cAAc,uCAAuC,GAAEO,KAAEP,GAAE,cAAc,yCAAyC;AAAE,0BAAGG,MAAGE,MAAGC,MAAGC,IAAE;AAAC,8BAAMhB,KAAE,OAAO,UAAQE,KAAEU,GAAE,UAAQ,WAASV,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE;AAAE,wBAAAU,GAAE,QAAM,GAAGZ,EAAC,IAAI,UAAQM,KAAEQ,GAAE,gBAAc,WAASR,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAGQ,GAAE,cAAY,GAAGd,EAAC,IAAI,UAAQU,KAAEI,GAAE,gBAAc,WAASJ,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAGK,GAAE,MAAM,aAAW,MAAIf,KAAE,WAAS,WAAUgB,GAAE,MAAM,aAAWhB,OAAID,GAAE,SAAO,WAAS;AAAA,sBAAS;AAAC,wBAAE,aAAaI,IAAEM,EAAC;AAAA,oBAAC;AAAA,kBAAC,EAAE,GAAED,GAAE,iBAAiB,UAAS,MAAI;AAAC,wBAAIP,IAAEC,IAAEI;AAAE,0BAAMI,KAAEP,GAAE;AAAmB,wBAAGO,IAAE;AAAC,4BAAMD,KAAE,OAAO,UAAQR,KAAEG,GAAE,UAAQ,WAASH,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE;AAAE,sBAAAG,GAAE,QAAM,GAAGK,EAAC,KAAKT,EAAC,IAAGK,GAAE,cAAY,GAAGI,EAAC,KAAKT,EAAC,IAAGO,GAAE,MAAM,aAAW,MAAIE,KAAE,WAAS,WAAUD,GAAE,MAAM,aAAWC,OAAIV,GAAE,SAAO,WAAS;AAAU,4BAAMc,KAAEH,GAAE,cAAc,kDAAkD,GAAEE,KAAEF,GAAE,cAAc,yCAAyC,GAAEI,KAAEJ,GAAE,cAAc,uCAAuC,GAAEK,KAAEL,GAAE,cAAc,yCAAyC;AAAE,0BAAGG,MAAGD,MAAGE,MAAGC,IAAE;AAAC,8BAAMf,KAAE,OAAOa,GAAE,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE;AAAE,wBAAAA,GAAE,QAAM,GAAGb,EAAC,IAAI,UAAQE,KAAEU,GAAE,gBAAc,WAASV,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAGU,GAAE,cAAY,GAAGZ,EAAC,IAAI,UAAQM,KAAEM,GAAE,gBAAc,WAASN,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAGQ,GAAE,MAAM,aAAW,MAAId,KAAE,WAAS,WAAUe,GAAE,MAAM,aAAWf,OAAID,GAAE,SAAO,WAAS;AAAA,sBAAS;AAAC,wBAAE,aAAaW,IAAEP,EAAC;AAAA,oBAAC;AAAA,kBAAC,EAAE,GAAEG,GAAE,YAAYC,EAAC,GAAED,GAAE,YAAYE,EAAC,GAAEL,GAAE,YAAYG,EAAC,GAAE,EAAE,YAAYH,EAAC;AAAA,gBAAC,EAAE;AAAA,cAAC,GAAE,IAAE,SAAS,cAAc,KAAK;AAAE,gBAAE,UAAU,IAAI,8BAA8B,GAAE,EAAE,MAAM,WAAS,SAAQ,EAAE,MAAM,MAAI,KAAI,EAAE,MAAM,OAAK,KAAI,EAAE,MAAM,QAAM,SAAQ,EAAE,MAAM,SAAO,SAAQ,EAAE,MAAM,aAAW,mBAAkB,EAAE,MAAM,UAAQ,QAAO,EAAE,MAAM,aAAW,UAAS,EAAE,MAAM,iBAAe,UAAS,EAAE,MAAM,SAAO;AAAO,oBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,gBAAE,UAAU,IAAI,qBAAqB,GAAE,EAAE,MAAM,aAAW,QAAO,EAAE,MAAM,eAAa,OAAM,EAAE,MAAM,YAAU,8BAA6B,EAAE,MAAM,WAAS,SAAQ,EAAE,MAAM,QAAM,OAAM,EAAE,MAAM,YAAU,QAAO,EAAE,MAAM,UAAQ,QAAO,EAAE,MAAM,gBAAc,UAAS,EAAE,MAAM,WAAS,UAAS,EAAE,MAAM,UAAQ,QAAO,EAAE,MAAM,WAAS;AAAW,oBAAM,IAAE,SAAS,cAAc,IAAI;AAAE,gBAAE,UAAU,IAAI,2BAA2B,GAAE,EAAE,MAAM,aAAW,KAAI,EAAE,MAAM,YAAU;AAAI,oBAAM,IAAE,MAAI,KAAK,IAAIJ,GAAE,SAAO,GAAEK,EAAC,GAAE,IAAE,MAAI;AAAC,kBAAE,cAAY,GAAG,EAAE,oBAAoB,CAAC,GAAG,EAAE,CAAC;AAAA,cAAE;AAAE,gBAAE;AAAE,oBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,gBAAE,UAAU,IAAI,0BAA0B,GAAE,EAAE,MAAM,OAAK,YAAW,EAAE,MAAM,YAAU,QAAO,EAAE,MAAM,YAAU,MAAKF,KAAE,CAAC,GAAGF,EAAC,EAAE,MAAM,MAAI,KAAK,OAAO,IAAE,IAAG,IAAE,CAAC,GAAGA,EAAC,GAAG,SAAS,CAAAA,OAAG;AAAC,sBAAME,KAAE,SAAS,cAAc,OAAO;AAAE,gBAAAA,GAAE,UAAU,IAAI,yBAAyB;AAAE,sBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,gBAAAA,GAAE,OAAK,YAAWA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,OAAK,GAAGF,EAAC,cAAaE,GAAE,QAAMH;AAAE,sBAAMK,KAAE,SAAS,cAAc,MAAM;AAAE,gBAAAA,GAAE,cAAYL,IAAEG,GAAE,iBAAiB,WAAU,MAAI;AAAC,sBAAGA,GAAE,SAAQ;AAAC,wBAAGJ,GAAE,UAAQK,GAAE,QAAOD,GAAE,UAAQ,OAAGD,GAAE,UAAU,IAAI,uBAAuB,GAAE,KAAK,YAAY,MAAI;AAAC,sBAAAA,GAAE,UAAU,OAAO,uBAAuB;AAAA,oBAAC,IAAG,GAAG;AAAE,oBAAAH,GAAE,KAAKC,EAAC;AAAA,kBAAC,OAAK;AAAC,0BAAMC,KAAEF,GAAE,QAAQC,EAAC;AAAE,2BAAKC,MAAGF,GAAE,OAAOE,IAAE,CAAC;AAAA,kBAAC;AAAC,oBAAE,GAAE,EAAE;AAAA,gBAAC,EAAE,GAAEC,GAAE,YAAYC,EAAC,GAAED,GAAE,YAAYG,EAAC,GAAE,EAAE,YAAYH,EAAC;AAAA,cAAC,EAAE;AAAE,oBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,gBAAE,UAAU,IAAI,6BAA6B,GAAE,EAAE,MAAM,aAAW;AAAI,oBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,gBAAE,UAAU,IAAI,6BAA6B;AAAE,oBAAM,IAAE,MAAI;AAAC,sBAAMF,KAAE,EAAE,IAAI;AAAE,kBAAE,cAAY,GAAG,EAAE,aAAa,CAAC,IAAID,GAAE,MAAM,IAAIC,EAAC,IAAII,EAAC,IAAGC,GAAE,MAAM,UAAQN,GAAE,SAAO,IAAE,UAAQ;AAAA,cAAM;AAAE,gBAAE;AAAE,oBAAM,IAAE,SAAS,cAAc,QAAQ;AAAE,gBAAE,OAAK,UAAS,EAAE,UAAU,IAAI,2BAA2B,GAAE,EAAE,aAAa,cAAa,EAAE,QAAQ,CAAC,GAAE,EAAE,QAAM,EAAE,QAAQ,GAAE,EAAE,cAAY,QAAI,EAAE,MAAM,WAAS,YAAW,EAAE,MAAM,MAAI,OAAM,EAAE,MAAM,QAAM,OAAM,EAAE,MAAM,SAAO,QAAO,EAAE,MAAM,aAAW,eAAc,EAAE,MAAM,WAAS,QAAO,EAAE,MAAM,SAAO;AAAU,oBAAM,IAAE,MAAI;AAAC,yBAAS,KAAK,YAAY,CAAC,GAAE,EAAE,MAAM,UAAQ,QAAO,EAAE,GAAE,EAAE;AAAA,cAAC,GAAE,IAAE,MAAI;AAAC,kBAAE,MAAM,UAAQ,QAAO,EAAE,YAAY,CAAC;AAAA,cAAC;AAAE,gBAAE,iBAAiB,UAAS,MAAI;AAAC,kBAAE;AAAA,cAAC,EAAE;AAAE,oBAAM,IAAE,SAAS,cAAc,QAAQ;AAAE,qBAAO,EAAE,OAAK,UAAS,EAAE,cAAY,EAAE,SAAS,GAAE,EAAE,UAAU,IAAI,sBAAsB,GAAE,EAAE,UAAU,IAAI,8BAA8B,GAAE,EAAE,iBAAiB,UAAS,MAAI;AAAC,kBAAE,GAAE,EAAE;AAAA,cAAC,EAAE,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAEW,GAAE,iBAAiB,UAAS,MAAI;AAAC,kBAAE;AAAA,cAAC,EAAE,GAAE,EAAE,iBAAiB,UAAS,CAAAX,OAAG;AAAC,gBAAAA,GAAE,WAAS,KAAG,EAAE;AAAA,cAAC,EAAE,GAAE,EAAE,YAAYI,EAAC,GAAE,EAAE,YAAYM,EAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,GAAE;AAAA,YAAC;AAAC,kBAAM,IAAE,SAAS,cAAc,IAAI;AAAE,cAAE,UAAU,IAAI,kCAAkC;AAAE,kBAAM,IAAEP,KAAE,CAAC,GAAGF,EAAC,EAAE,MAAM,MAAI,KAAK,OAAO,IAAE,IAAG,IAAE,CAAC,GAAGA,EAAC;AAAE,mBAAO,EAAE,SAAS,CAACD,IAAEC,OAAI;AAAC,oBAAME,KAAE,SAAS,cAAc,IAAI;AAAE,cAAAA,GAAE,UAAU,IAAI,kCAAkC,GAAEA,GAAE,MAAM,UAAQ,QAAOA,GAAE,MAAM,iBAAe,iBAAgBA,GAAE,MAAM,aAAW,UAASA,GAAE,MAAM,SAAO;AAAM,oBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,cAAAA,GAAE,UAAU,IAAI,iDAAiD,GAAEA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,OAAK,UAASA,GAAE,KAAG,iBAAiBF,EAAC,IAAGE,GAAE,OAAKF,IAAEE,GAAE,QAAM,GAAGH,KAAE,CAAC,KAAKD,EAAC,IAAGG,GAAE,YAAYC,EAAC;AAAE,oBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,cAAAA,GAAE,UAAU,IAAI,wCAAwC,GAAEA,GAAE,cAAY,GAAGJ,KAAE,CAAC,KAAKD,EAAC,IAAGG,GAAE,YAAYE,EAAC;AAAE,oBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,MAAM,UAAQ,QAAOA,GAAE,MAAM,aAAW,UAASA,GAAE,MAAM,iBAAe;AAAgB,oBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,sCAAsC,GAAEA,GAAE,MAAI,4DAA2DA,GAAE,MAAM,QAAM,QAAOA,GAAE,MAAM,SAAO,QAAOA,GAAE,MAAM,SAAO,WAAUA,GAAE,MAAM,SAAO,SAAQA,GAAE,MAAM,QAAM,QAAOA,GAAE,MAAM,aAAW,MAAIN,KAAE,WAAS,WAAUM,GAAE,iBAAiB,UAAS,MAAI;AAAC,oBAAIN,IAAEC,IAAEI,IAAEG;AAAE,sBAAM,IAAEN,GAAE;AAAuB,oBAAG,GAAE;AAAC,wBAAM,IAAE,OAAO,UAAQF,KAAEG,GAAE,UAAQ,WAASH,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE;AAAE,kBAAAG,GAAE,QAAM,GAAG,CAAC,KAAKJ,EAAC,IAAGK,GAAE,cAAY,GAAG,CAAC,KAAKL,EAAC,IAAGO,GAAE,MAAM,aAAW,MAAI,IAAE,WAAS,WAAUC,GAAE,MAAM,aAAW,MAAI,EAAE,SAAO,WAAS;AAAU,wBAAM,IAAE,EAAE,cAAc,kDAAkD,GAAE,IAAE,EAAE,cAAc,yCAAyC,GAAE,IAAE,EAAE,cAAc,uCAAuC,GAAE,IAAE,EAAE,cAAc,yCAAyC;AAAE,sBAAG,KAAG,KAAG,KAAG,GAAE;AAAC,0BAAMR,KAAE,OAAO,UAAQE,KAAE,EAAE,UAAQ,WAASA,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE;AAAE,sBAAE,QAAM,GAAGF,EAAC,IAAI,UAAQM,KAAE,EAAE,gBAAc,WAASA,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAG,EAAE,cAAY,GAAGN,EAAC,IAAI,UAAQS,KAAE,EAAE,gBAAc,WAASA,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAG,EAAE,MAAM,aAAW,MAAIT,KAAE,WAAS,WAAU,EAAE,MAAM,aAAWA,OAAI,EAAE,SAAO,WAAS;AAAA,kBAAS;AAAC,oBAAE,aAAaG,IAAE,CAAC;AAAA,gBAAC;AAAA,cAAC,EAAE;AAAE,oBAAMK,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,wCAAwC,GAAEA,GAAE,MAAI,4DAA2DA,GAAE,MAAM,QAAM,QAAOA,GAAE,MAAM,SAAO,QAAOA,GAAE,MAAM,SAAO,WAAUA,GAAE,MAAM,SAAO,SAAQA,GAAE,MAAM,QAAM,QAAOA,GAAE,MAAM,YAAU,kBAAiBA,GAAE,MAAM,aAAWP,OAAI,EAAE,SAAO,IAAE,WAAS,WAAUO,GAAE,iBAAiB,UAAS,MAAI;AAAC,oBAAIP,IAAEC,IAAEI;AAAE,sBAAMG,KAAEN,GAAE;AAAmB,oBAAGM,IAAE;AAAC,wBAAM,IAAE,OAAO,UAAQR,KAAEG,GAAE,UAAQ,WAASH,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE;AAAE,kBAAAG,GAAE,QAAM,GAAG,CAAC,KAAKJ,EAAC,IAAGK,GAAE,cAAY,GAAG,CAAC,KAAKL,EAAC,IAAGO,GAAE,MAAM,aAAW,MAAI,IAAE,WAAS,WAAUC,GAAE,MAAM,aAAW,MAAI,EAAE,SAAO,WAAS;AAAU,wBAAM,IAAEC,GAAE,cAAc,kDAAkD,GAAE,IAAEA,GAAE,cAAc,yCAAyC,GAAE,IAAEA,GAAE,cAAc,uCAAuC,GAAE,IAAEA,GAAE,cAAc,yCAAyC;AAAE,sBAAG,KAAG,KAAG,KAAG,GAAE;AAAC,0BAAMT,KAAE,OAAO,EAAE,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE;AAAE,sBAAE,QAAM,GAAGA,EAAC,IAAI,UAAQE,KAAE,EAAE,gBAAc,WAASA,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAG,EAAE,cAAY,GAAGF,EAAC,IAAI,UAAQM,KAAE,EAAE,gBAAc,WAASA,KAAE,SAAOA,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAG,EAAE,MAAM,aAAW,MAAIN,KAAE,WAAS,WAAU,EAAE,MAAM,aAAWA,OAAI,EAAE,SAAO,WAAS;AAAA,kBAAS;AAAC,oBAAE,aAAaS,IAAEN,EAAC;AAAA,gBAAC;AAAA,cAAC,EAAE,GAAEG,GAAE,YAAYC,EAAC,GAAED,GAAE,YAAYE,EAAC,GAAEL,GAAE,YAAYG,EAAC,GAAE,EAAE,YAAYH,EAAC;AAAA,YAAC,EAAE,GAAE,EAAE,YAAY,CAAC,GAAE;AAAA,UAAC,GAAE,EAAC,OAAMH,GAAE,OAAM,KAAIA,GAAE,KAAI,gBAAeC,IAAE,gBAAe,UAAQ,IAAED,GAAE,WAAS,WAAS,IAAE,SAAO,EAAE,kBAAgB,OAAG,cAAa,UAAQ,IAAEA,GAAE,WAAS,WAAS,IAAE,SAAO,EAAE,gBAAc,GAAE,cAAa,UAAQ,IAAEA,GAAE,WAAS,WAAS,IAAE,SAAO,EAAE,gBAAc,IAAG,UAAS,KAAG,KAAI,CAAC;AAAE,iBAAO,EAAE,YAAY,CAAC,GAAE,EAAC,SAAQ,GAAE,kBAAiB,8BAA6B;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,oBAAkB;AAAO,cAAM,IAAE,EAAE,GAAG,GAAE,IAAE;AAAoD,QAAAA,GAAE,oBAAkB,CAAC,EAAC,UAASD,IAAE,KAAIC,IAAE,MAAKC,IAAE,eAAc,EAAC,MAAI;AAAC,gBAAK,EAAC,KAAI,GAAE,QAAO,EAAC,IAAEF,IAAE,IAAE,SAAS,cAAc,KAAK,GAAE,IAAE,wBAAuB,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,gCAAgC;AAAE,gBAAM,KAAG,QAAM,IAAE,SAAO,EAAE,OAAK,OAAO,QAAM,IAAE,SAAO,EAAE,GAAG,IAAE,GAAE,KAAG,QAAM,IAAE,SAAO,EAAE,OAAK,OAAO,QAAM,IAAE,SAAO,EAAE,GAAG,IAAE,GAAE,KAAG,GAAE,EAAE,yBAAyB,QAAM,IAAE,SAAO,EAAE,gBAAe,QAAM,IAAE,SAAO,EAAE,cAAc;AAAE,mBAAQA,KAAE,GAAEA,MAAG,GAAEA,MAAI;AAAC,kBAAMG,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,UAAU,IAAI,6BAA6B;AAAE,kBAAMI,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAQ,UAAU,CAAC,IAAIP,EAAC,IAAGO,GAAE,UAAU,IAAI,6CAA6C;AAAE,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAQ,UAAU,CAAC,IAAIR,EAAC,IAAGQ,GAAE,cAAYR,GAAE,SAAS;AAAE,kBAAMc,KAAE,SAAS,cAAc,KAAK;AAAE,gBAAGA,GAAE,MAAI,QAAQ,CAAC,IAAId,EAAC,IAAGc,GAAE,YAAU,eAAed,EAAC,IAAG,MAAI,KAAG,OAAK,EAAE,CAAAc,GAAE,MAAI,GAAGb,EAAC,IAAID,EAAC,QAAOc,GAAE,UAAQ,MAAIA,GAAE,MAAI,GAAG,CAAC,IAAId,EAAC;AAAA,qBAAe,MAAI,KAAG,MAAI,EAAE,SAAOA,IAAE;AAAA,cAAC,KAAK;AAAE,gBAAAc,GAAE,MAAI,GAAGb,EAAC,UAASa,GAAE,UAAQ,MAAIA,GAAE,MAAI,GAAG,CAAC;AAAS;AAAA,cAAM,KAAK;AAAE,gBAAAA,GAAE,MAAI,GAAGb,EAAC,UAASa,GAAE,UAAQ,MAAIA,GAAE,MAAI,GAAG,CAAC;AAAS;AAAA,cAAM,KAAK;AAAE,gBAAAA,GAAE,MAAI,GAAGb,EAAC,UAASa,GAAE,UAAQ,MAAIA,GAAE,MAAI,GAAG,CAAC;AAAS;AAAA,cAAM,KAAK;AAAE,gBAAAA,GAAE,MAAI,GAAGb,EAAC,UAASa,GAAE,UAAQ,MAAIA,GAAE,MAAI,GAAG,CAAC;AAAS;AAAA,cAAM,KAAK;AAAE,gBAAAA,GAAE,MAAI,GAAGb,EAAC,WAAUa,GAAE,UAAQ,MAAIA,GAAE,MAAI,GAAG,CAAC;AAAA,YAAS;AAAA,iBAAK;AAAC,oBAAMZ,KAAE,KAAK,MAAM,MAAI,IAAE,MAAIF,KAAE,EAAE;AAAE,cAAAc,GAAE,MAAI,GAAGb,EAAC,IAAIC,EAAC,QAAOY,GAAE,UAAQ,MAAIA,GAAE,MAAI,GAAG,CAAC,IAAIZ,EAAC;AAAA,YAAM;AAAC,kBAAM,IAAE,SAAS,cAAc,OAAO;AAAE,cAAE,KAAG,UAAU,CAAC,IAAIF,EAAC,IAAG,EAAE,OAAK,SAAQ,EAAE,OAAK,GAAE,EAAE,QAAMA,GAAE,SAAS,GAAE,EAAE,UAAU,IAAI,CAAC,GAAE,EAAE,UAAU,IAAI,qBAAqB,GAAEE,MAAG,EAAE,iBAAiB,WAAU,MAAI;AAAC,cAAAA,GAAE;AAAA,YAAC,EAAE,GAAE,KAAG,MAAI,EAAE,UAAQ,EAAE,UAAQ,OAAIK,GAAE,YAAY,CAAC,GAAEA,GAAE,YAAYO,EAAC,GAAEP,GAAE,YAAYC,EAAC,GAAEL,GAAE,YAAYI,EAAC,GAAE,EAAE,YAAYJ,EAAC;AAAA,UAAC;AAAC,eAAI,QAAM,IAAE,SAAO,EAAE,iBAAe,QAAM,IAAE,SAAO,EAAE,kBAAiB;AAAC,kBAAMH,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,UAAU,IAAI,6BAA6B;AAAE,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAQ,UAAU,CAAC,UAASA,GAAE,UAAU,IAAI,6CAA6C;AAAE,kBAAME,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,UAAQ,UAAU,CAAC,UAASA,GAAE,cAAY,QAAM,IAAE,SAAO,EAAE;AAAgB,kBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,YAAAA,GAAE,MAAI,+DAA8DA,GAAE,MAAI,QAAQ,CAAC,UAASA,GAAE,YAAU;AAAmC,kBAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,YAAAA,GAAE,KAAG,UAAU,CAAC,UAASA,GAAE,OAAK,SAAQA,GAAE,OAAK,GAAEA,GAAE,QAAM,KAAIA,GAAE,UAAU,IAAI,CAAC,GAAEA,GAAE,UAAU,IAAI,qBAAqB,GAAEH,MAAGG,GAAE,iBAAiB,WAAU,MAAI;AAAC,cAAAH,GAAE;AAAA,YAAC,EAAE,GAAED,GAAE,YAAYI,EAAC,GAAEJ,GAAE,YAAYG,EAAC,GAAEH,GAAE,YAAYE,EAAC,GAAEH,GAAE,YAAYC,EAAC,GAAE,EAAE,YAAYD,EAAC;AAAA,UAAC;AAAC,iBAAO,EAAE,oBAAkB,KAAG,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAC,SAAQ,GAAE,kBAAiB,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,qBAAmB;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,qBAAmB,CAAC,EAAC,UAASD,IAAE,OAAMC,IAAE,WAAUC,IAAE,MAAK,GAAE,eAAc,EAAC,MAAI;AAAC,gBAAM,IAAE;AAA8B,iBAAM,EAAC,UAAS,GAAE,EAAE,2BAA2BF,GAAE,KAAIA,GAAE,QAAOC,IAAEC,IAAE,GAAE,GAAE,CAAC,GAAE,kBAAiB,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACF,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,mBAAiB;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,mBAAiB,CAAC,EAAC,UAASD,IAAE,MAAKC,IAAE,eAAcC,GAAC,MAAI;AAAC,cAAI,GAAE;AAAE,gBAAM,IAAE,SAAS,cAAc,KAAK,GAAE,KAAG,GAAE,EAAE,kBAAkBF,GAAE,KAAI,UAAQ,IAAEA,GAAE,WAAS,WAAS,IAAE,SAAO,EAAE,gBAAe,UAAQ,IAAEA,GAAE,WAAS,WAAS,IAAE,SAAO,EAAE,gBAAeC,IAAEC,EAAC;AAAE,iBAAO,EAAE,YAAY,CAAC,GAAE,EAAC,SAAQ,GAAE,kBAAiB,4BAA2B;AAAA,QAAC;AAAA,MAAC,GAAE,IAAG,CAACF,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,eAAa;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,eAAa,CAAC,EAAC,UAASD,IAAE,QAAOC,IAAE,UAASC,IAAE,eAAc,EAAC,MAAI;AAAC,gBAAK,EAAC,OAAM,GAAE,OAAM,GAAE,cAAa,EAAC,IAAEF,IAAE,IAAE,SAAS,cAAc,QAAQ,GAAE,IAAE,SAAS,cAAc,QAAQ;AAAE,iBAAO,EAAE,QAAM,IAAG,EAAE,OAAK,WAASC,MAAG,GAAE,EAAE,YAAY,GAAEC,EAAC,IAAE,KAAG,oBAAmB,EAAE,WAAS,MAAG,EAAE,WAAS,MAAG,EAAE,YAAY,CAAC,GAAE,EAAE,SAAS,CAAAF,OAAG;AAAC,kBAAMC,KAAE,SAAS,cAAc,QAAQ;AAAE,YAAAA,GAAE,QAAMD,IAAEC,GAAE,OAAKD,IAAE,EAAE,YAAYC,EAAC;AAAA,UAAC,EAAE,GAAE,KAAG,EAAE,SAAS,CAAC,MAAI,EAAE,QAAM,IAAG,EAAC,SAAQ,GAAE,kBAAiB,uBAAsB;AAAA,QAAC;AAAA,MAAC,GAAE,IAAG,CAACD,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,aAAW;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,aAAW,CAAC,EAAC,UAASD,IAAE,iBAAgBC,IAAE,eAAcC,IAAE,MAAK,EAAC,MAAI;AAAC,gBAAM,IAAE,SAAS,cAAc,OAAO;AAAE,iBAAO,EAAE,OAAK,QAAO,EAAE,cAAYD,MAAG,EAAE,YAAY,OAAOD,MAAG,IAAI,GAAEE,OAAI,EAAE,QAAMA,KAAG,EAAE,iBAAiB,UAAS,CAAAF,OAAG;AAAC,YAAAA,GAAE,eAAe,GAAE,YAAUA,GAAE,OAAK,KAAG,EAAE;AAAA,UAAC,EAAE,GAAE,EAAC,SAAQ,GAAE,kBAAiB,qBAAoB;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,mBAAiB;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,mBAAiB,CAAC,EAAC,UAASD,IAAE,UAASC,GAAC,OAAK,GAAE,EAAE,qBAAqBD,IAAEC,IAAE,MAAM;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,oBAAkB;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,oBAAkB,CAAC,EAAC,UAASD,IAAE,UAASC,GAAC,OAAK,GAAE,EAAE,qBAAqBD,IAAEC,IAAE,OAAO;AAAA,MAAC,GAAE,KAAI,SAASD,IAAEC,IAAE,GAAE;AAAC;AAAa,YAAI,IAAE,QAAM,KAAK,aAAW,SAASD,IAAEC,IAAEC,IAAEC,IAAE;AAAC,iBAAO,KAAID,OAAIA,KAAE,WAAW,SAASE,IAAEC,IAAE;AAAC,qBAASC,GAAEN,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,KAAKH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASO,GAAEP,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,MAAMH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASQ,GAAER,IAAE;AAAC,kBAAIC;AAAE,cAAAD,GAAE,OAAKI,GAAEJ,GAAE,KAAK,KAAGC,KAAED,GAAE,OAAMC,cAAaC,KAAED,KAAE,IAAIC,IAAG,SAASF,IAAE;AAAC,gBAAAA,GAAEC,EAAC;AAAA,cAAC,EAAE,GAAG,KAAKK,IAAEC,EAAC;AAAA,YAAC;AAAC,YAAAC,IAAGL,KAAEA,GAAE,MAAMH,IAAEC,MAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AAAA,UAAC,EAAE;AAAA,QAAC;AAAE,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,sBAAoBA,GAAE,mBAAiBA,GAAE,kBAAgBA,GAAE,iBAAe;AAAO,cAAM,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,oBAAmB,IAAE;AAAkB,iBAAS,EAAED,IAAE;AAAC,cAAG,YAAU,OAAOA,MAAG,MAAMA,EAAC,EAAE,QAAM;AAAG,cAAGA,KAAE,KAAK,QAAM,GAAGA,EAAC;AAAK,gBAAMC,KAAED,KAAE;AAAK,cAAGC,KAAE,KAAK,QAAM,GAAGA,KAAE,KAAGA,GAAE,QAAQ,CAAC,IAAE,KAAK,MAAMA,EAAC,CAAC;AAAM,gBAAMC,KAAED,KAAE;AAAK,iBAAM,GAAGC,KAAE,KAAGA,GAAE,QAAQ,CAAC,IAAE,KAAK,MAAMA,EAAC,CAAC;AAAA,QAAK;AAAC,QAAAD,GAAE,iBAAe,GAAEA,GAAE,kBAAgB,SAASD,IAAE;AAAC,gBAAMC,KAAED,GAAE,CAAC;AAAE,iBAAO,MAAM,QAAQC,EAAC,IAAEA,KAAE,CAAC;AAAA,QAAC,GAAEA,GAAE,mBAAiB,SAASD,IAAE;AAAC,iBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,gBAAG,CAACA,GAAE;AAAO,kBAAMC,KAAE,MAAM,KAAKD,GAAE,iBAAiB,8BAA8B,CAAC;AAAE,kBAAM,QAAQ,IAAIC,GAAE,KAAK,CAAAD,OAAGA,GAAE,CAAC,EAAE,EAAE,OAAO,OAAO,CAAC;AAAA,UAAC,EAAE;AAAA,QAAC,GAAEC,GAAE,sBAAoB,SAASD,IAAEC,IAAEC,IAAE;AAAC,gBAAK,EAAC,KAAIC,IAAE,SAAQ,GAAE,OAAM,GAAE,QAAO,EAAC,IAAEH,IAAE,IAAE,YAAUE,KAAE,+BAA6B,6BAA4B,KAAG,QAAM,IAAE,SAAO,EAAE,aAAW,OAAG,IAAE,KAAG,QAAM,IAAE,SAAO,EAAE,aAAW,IAAE,GAAE,IAAE,OAAO,QAAM,IAAE,SAAO,EAAE,WAAW,IAAE,IAAE,OAAO,QAAM,IAAE,SAAO,EAAE,WAAW,IAAE,GAAE,IAAE,OAAK,IAAE,MAAK,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,sBAAsB;AAAE,gBAAM,IAAE,SAAS,cAAc,OAAO;AAAE,YAAE,OAAK,QAAO,YAAUA,OAAI,EAAE,SAAO,YAAW,EAAE,WAAS,GAAE,EAAE,WAAS,GAAE,EAAE,OAAKC,IAAE,EAAE,KAAG,8BAA8BA,EAAC,IAAG,EAAE,UAAU,IAAI,CAAC,GAAE,EAAE,UAAU,IAAI,qBAAqB,GAAE,EAAE,UAAU,IAAI,6BAA6B,GAAE,EAAE,CAAC,IAAE,CAAC,GAAE,EAAE,CAAC,IAAE,QAAQ,QAAQ;AAAE,gBAAM,KAAG,GAAE,EAAE,YAAY,GAAEF,EAAC;AAAE,eAAG,EAAE,aAAa,cAAa,CAAC;AAAE,gBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,+BAA+B;AAAE,gBAAM,IAAE,SAAS,cAAc,MAAM;AAAE,YAAE,UAAU,IAAI,2BAA2B,GAAE,EAAE,YAAU,YAAUC,KAAE,kRAAgR;AAAsQ,gBAAM,IAAE,SAAS,cAAc,MAAM;AAAE,YAAE,UAAU,IAAI,0BAA0B,GAAE,EAAE,cAAY,EAAE,YAAY,OAAO,IAAID,EAAC;AAAE,gBAAM,IAAE,SAAS,cAAc,MAAM;AAAE,YAAE,UAAU,IAAI,2BAA2B,GAAE,EAAE,eAAY,SAASD,IAAEC,IAAEC,IAAEC,IAAEE,IAAE;AAAC,kBAAMC,KAAE,CAAC,EAAE,YAAY,OAAO,QAAQN,IAAEC,EAAC,CAAC;AAAE,mBAAOC,MAAGC,KAAE,KAAGG,GAAE,KAAK,EAAE,YAAY,OAAO,SAASN,IAAEG,EAAC,CAAC,GAAEE,KAAE,KAAGC,GAAE,KAAK,EAAE,YAAY,OAAO,QAAQN,IAAEK,EAAC,CAAC,GAAEC,GAAE,OAAO,OAAO,EAAE,KAAK,QAAK;AAAA,UAAC,GAAEL,IAAEC,IAAE,GAAE,GAAE,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC;AAAE,gBAAM,IAAE,SAAS,cAAc,KAAK;AAAE,YAAE,UAAU,IAAI,4BAA4B;AAAE,gBAAM,IAAE,SAAS,cAAc,IAAI;AAAE,YAAE,UAAU,IAAI,2BAA2B,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC,GAAE,EAAE,YAAY,CAAC;AAAE,gBAAM,IAAE,oBAAI,WAAQ,IAAE,CAAAF,OAAG;AAAC,kBAAMC,KAAE,EAAE,IAAID,EAAC;AAAE,mBAAOC,KAAE,QAAQ,QAAQA,EAAC,IAAE,IAAI,SAAS,CAAAA,OAAG;AAAC,oBAAMC,KAAE,IAAI,cAAWC,KAAE,CAAAD,OAAG;AAAC,sBAAMC,KAAE,KAAK,UAAU,EAAC,MAAKH,GAAE,MAAK,MAAKA,GAAE,MAAK,MAAKA,GAAE,MAAK,SAAQE,GAAC,CAAC;AAAE,kBAAE,IAAIF,IAAEG,EAAC,GAAEF,GAAEE,EAAC;AAAA,cAAC;AAAE,cAAAD,GAAE,SAAO,MAAIC,GAAE,YAAU,OAAOD,GAAE,SAAOA,GAAE,SAAO,EAAE,GAAEA,GAAE,UAAQ,MAAIC,GAAE,EAAE,GAAED,GAAE,cAAcF,EAAC;AAAA,YAAC,EAAE;AAAA,UAAC,GAAE,IAAE,CAAC,GAAE,IAAE,CAAAA,OAAG;AAAC,gBAAG;AAAC,oBAAMC,KAAE,IAAE,IAAED,GAAE,MAAM,GAAE,CAAC,IAAEA,IAAEE,KAAE,IAAI;AAAa,cAAAD,GAAE,SAAS,CAAAD,OAAGE,GAAE,MAAM,IAAIF,EAAC,EAAE,GAAE,EAAE,QAAME,GAAE;AAAA,YAAK,SAAOF,IAAE;AAAA,YAAC;AAAC,cAAC,WAAU;AAAC,gBAAE,SAAS,CAAAA,OAAG,IAAI,gBAAgBA,EAAC,EAAE,GAAE,EAAE,SAAO,GAAE,EAAE,YAAU;AAAG,oBAAMA,KAAE,MAAM,KAAK,EAAE,SAAO,CAAC,CAAC;AAAE,gBAAE,UAAU,OAAO,mCAAkCA,GAAE,SAAO,CAAC,GAAEA,GAAE,SAAS,CAACA,IAAEG,OAAI;AAAC,sBAAME,KAAE,SAAS,cAAc,IAAI;AAAE,gBAAAA,GAAE,UAAU,IAAI,gCAAgC;AAAE,sBAAMC,KAAE,SAAS,cAAc,MAAM;AAAE,oBAAGA,GAAE,UAAU,IAAI,4BAA4B,GAAE,YAAUJ,MAAGF,GAAE,KAAK,WAAW,QAAQ,GAAE;AAAC,wBAAMC,KAAE,IAAI,gBAAgBD,EAAC;AAAE,oBAAE,KAAKC,EAAC;AAAE,wBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,kBAAAA,GAAE,MAAID,IAAEC,GAAE,MAAIF,GAAE,MAAKM,GAAE,YAAYJ,EAAC;AAAA,gBAAC,MAAM,CAAAI,GAAE,YAAU;AAAoP,sBAAMC,KAAE,SAAS,cAAc,MAAM;AAAE,gBAAAA,GAAE,UAAU,IAAI,gCAAgC;AAAE,sBAAME,KAAE,SAAS,cAAc,MAAM;AAAE,gBAAAA,GAAE,UAAU,IAAI,gCAAgC,GAAEA,GAAE,cAAYT,GAAE,MAAKS,GAAE,QAAMT,GAAE;AAAK,sBAAMW,KAAE,SAAS,cAAc,MAAM;AAAE,gBAAAA,GAAE,UAAU,IAAI,gCAAgC,GAAEA,GAAE,cAAY,EAAEX,GAAE,IAAI,GAAEO,GAAE,YAAYE,EAAC,GAAEF,GAAE,YAAYI,EAAC;AAAE,sBAAMD,KAAE,SAAS,cAAc,QAAQ;AAAE,gBAAAA,GAAE,OAAK,UAASA,GAAE,UAAU,IAAI,6BAA6B,GAAEA,GAAE,aAAa,cAAa,GAAG,EAAE,YAAY,OAAO,OAAOT,EAAC,CAAC,KAAKD,GAAE,IAAI,EAAE,GAAEU,GAAE,YAAU,oMAAmMA,GAAE,iBAAiB,UAAS,CAAAV,OAAG;AAAC,kBAAAA,GAAE,eAAe,GAAEA,GAAE,gBAAgB,GAAE,EAAE,MAAM,KAAK,EAAE,SAAO,CAAC,CAAC,EAAE,QAAQ,CAACA,IAAEC,OAAIA,OAAIE,GAAE,CAAC;AAAA,gBAAC,EAAE,GAAEE,GAAE,YAAYC,EAAC,GAAED,GAAE,YAAYE,EAAC,GAAEF,GAAE,YAAYK,EAAC,GAAE,EAAE,YAAYL,EAAC;AAAA,cAAC,EAAE;AAAA,YAAC,GAAE,IAAG,MAAI;AAAC,oBAAML,KAAE,MAAM,KAAK,EAAE,SAAO,CAAC,CAAC,GAAEC,KAAE,QAAQ,IAAID,GAAE,IAAI,CAAC,CAAC,EAAE,MAAM,CAAAA,OAAG;AAAC,kBAAE,CAAC,IAAEA;AAAA,cAAC,EAAE;AAAE,gBAAE,CAAC,IAAEC;AAAA,YAAC,GAAG;AAAA,UAAC,GAAE,IAAE,CAAAD,OAAG;AAAC,gBAAG,CAACA,GAAE,OAAO,QAAO,EAAE,cAAY,IAAG,KAAK,EAAE,UAAU,OAAO,YAAY;AAAE,kBAAME,KAAEF,GAAE,KAAK,CAAAA,OAAGA,GAAE,KAAK,EAAE,KAAK,IAAI;AAAE,cAAE,cAAY,GAAG,EAAE,YAAY,OAAO,SAASC,IAAE,CAAC,CAAC,KAAKC,EAAC,IAAG,EAAE,UAAU,IAAI,YAAY;AAAA,UAAC,GAAE,IAAE,CAAAF,OAAG;AAAC,gBAAG,CAAC,EAAE,QAAM,EAAC,UAASA,IAAE,UAAS,CAAC,EAAC;AAAE,kBAAMC,KAAE,CAAC,GAAEC,KAAE,CAAC;AAAE,mBAAOF,GAAE,SAAS,CAAAA,QAAIA,GAAE,QAAM,IAAEC,KAAEC,IAAG,KAAKF,EAAC,EAAE,GAAE,EAAC,UAASC,IAAE,UAASC,GAAC;AAAA,UAAC;AAAE,YAAE,iBAAiB,WAAU,MAAI;AAAC,kBAAK,EAAC,UAASF,IAAE,UAASC,GAAC,IAAE,EAAE,MAAM,KAAK,EAAE,SAAO,CAAC,CAAC,CAAC;AAAE,cAAEA,EAAC,GAAE,EAAED,EAAC;AAAA,UAAC,EAAE;AAAE,gBAAM,IAAE,CAAAA,OAAG;AAAC,YAAAA,GAAE,eAAe,GAAEA,GAAE,gBAAgB;AAAA,UAAC;AAAE,iBAAM,CAAC,aAAY,UAAU,EAAE,SAAS,CAAAA,OAAG,EAAE,iBAAiBA,KAAG,CAAAA,OAAG;AAAC,cAAEA,EAAC,GAAE,EAAE,UAAU,IAAI,aAAa;AAAA,UAAC,EAAE,EAAE,GAAE,CAAC,aAAY,SAAS,EAAE,SAAS,CAAAA,OAAG,EAAE,iBAAiBA,KAAG,CAAAA,OAAG;AAAC,cAAEA,EAAC,GAAE,EAAE,UAAU,OAAO,aAAa;AAAA,UAAC,EAAE,EAAE,GAAE,EAAE,iBAAiB,SAAQ,CAAAA,OAAG;AAAC,cAAEA,EAAC,GAAE,EAAE,UAAU,OAAO,aAAa;AAAE,kBAAMC,KAAED,GAAE;AAAa,gBAAIG,KAAEF,KAAE,MAAM,KAAKA,GAAE,KAAK,IAAE,CAAC;AAAE,gBAAG,YAAUC,OAAIC,KAAEA,GAAE,QAAQ,CAAAH,OAAGA,GAAE,KAAK,WAAW,QAAQ,EAAE,IAAG,CAACG,GAAE,OAAO;AAAO,kBAAK,EAAC,UAASC,IAAE,UAASC,GAAC,IAAE,EAAEF,EAAC;AAAE,gBAAG,EAAEE,EAAC,GAAE,CAACD,GAAE,OAAO;AAAO,kBAAME,KAAE,IAAE,MAAM,KAAK,EAAE,SAAO,CAAC,CAAC,IAAE,CAAC;AAAE,cAAEA,GAAE,OAAOF,EAAC,CAAC;AAAA,UAAC,EAAE,GAAE,EAAC,SAAQ,GAAE,kBAAiB,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,SAASJ,IAAEC,IAAE,GAAE;AAAC;AAAa,YAAI,IAAE,QAAM,KAAK,aAAW,SAASD,IAAEC,IAAEC,IAAEC,IAAE;AAAC,iBAAO,KAAID,OAAIA,KAAE,WAAW,SAASE,IAAEC,IAAE;AAAC,qBAASC,GAAEN,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,KAAKH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASO,GAAEP,IAAE;AAAC,kBAAG;AAAC,gBAAAQ,GAAEL,GAAE,MAAMH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASQ,GAAER,IAAE;AAAC,kBAAIC;AAAE,cAAAD,GAAE,OAAKI,GAAEJ,GAAE,KAAK,KAAGC,KAAED,GAAE,OAAMC,cAAaC,KAAED,KAAE,IAAIC,IAAG,SAASF,IAAE;AAAC,gBAAAA,GAAEC,EAAC;AAAA,cAAC,EAAE,GAAG,KAAKK,IAAEC,EAAC;AAAA,YAAC;AAAC,YAAAC,IAAGL,KAAEA,GAAE,MAAMH,IAAEC,MAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AAAA,UAAC,EAAE;AAAA,QAAC,GAAE,IAAE,QAAM,KAAK,mBAAiB,SAASD,IAAE;AAAC,iBAAOA,MAAGA,GAAE,aAAWA,KAAE,EAAC,SAAQA,GAAC;AAAA,QAAC;AAAE,eAAO,eAAeC,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,gBAAcA,GAAE,mBAAiB;AAAO,cAAM,IAAE,EAAE,EAAE,GAAG,CAAC,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG;AAAE,iBAAS,EAAED,IAAEC,IAAEC,IAAEE,IAAEG,IAAE;AAAC,cAAIE;AAAE,iBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,gBAAIN;AAAE,gBAAG;AAAC,cAAAA,KAAE,OAAM,GAAE,EAAE,SAASH,KAAEC,IAAE,EAAC,QAAO,QAAO,SAAQ,OAAO,OAAO,EAAC,gBAAe,mBAAkB,GAAE,EAAE,MAAM,GAAE,MAAK,KAAK,UAAUC,EAAC,EAAC,CAAC;AAAA,YAAC,SAAOF,IAAE;AAAC,oBAAMI,GAAE,IAAI,gBAAgBG,EAAC,mBAAkBP,EAAC,GAAE,IAAI,EAAE,cAAc,YAAW,QAAMA,KAAE,SAAOA,GAAE,YAAU,eAAe;AAAA,YAAC;AAAC,gBAAG,CAACG,GAAE,IAAG;AAAC,kBAAIH,KAAE;AAAK,kBAAG;AAAC,gBAAAA,KAAE,MAAMG,GAAE,KAAK;AAAA,cAAC,SAAOH,IAAE;AAAA,cAAC;AAAC,oBAAMC,MAAG,GAAE,EAAE,gBAAgBE,GAAE,QAAOI,EAAC;AAAE,oBAAMH,GAAE,IAAI,gBAAgBG,EAAC,KAAKJ,GAAE,MAAM,IAAGH,EAAC,GAAE,IAAI,EAAE,cAAcC,KAAG,UAAQQ,KAAE,QAAMT,KAAE,SAAOA,GAAE,UAAQ,WAASS,KAAE,SAAOA,GAAE,aAAW,QAAMT,KAAE,SAAOA,GAAE,YAAUG,GAAE,YAAWA,GAAE,QAAO,mBAAiBF,MAAE,SAASD,IAAE;AAAC,oBAAIC,IAAEC;AAAE,sBAAMC,KAAE,UAAQD,KAAE,UAAQD,KAAE,QAAMD,KAAE,SAAOA,GAAE,YAAU,WAASC,KAAE,SAAOA,GAAE,QAAM,WAASC,KAAE,SAAOA,GAAE,KAAKD,IAAE,aAAa,GAAEG,KAAED,KAAE,OAAOA,EAAC,IAAE;AAAI,uBAAO,OAAO,SAASC,EAAC,KAAGA,KAAE,IAAE,MAAIA,KAAE;AAAA,cAAG,GAAED,EAAC,IAAE,QAAOH,EAAC;AAAA,YAAC;AAAC,gBAAG;AAAC,oBAAMA,KAAE,MAAMG,GAAE,KAAK;AAAE,qBAAOC,GAAE,IAAI,gBAAgBG,EAAC,QAAOP,EAAC,GAAEA;AAAA,YAAC,SAAOA,IAAE;AAAC,oBAAM,IAAI,EAAE,cAAc,aAAY,4BAA2BG,GAAE,MAAM;AAAA,YAAC;AAAA,UAAC,EAAE;AAAA,QAAC;AAAC,QAAAF,GAAE,mBAAiB,SAASD,IAAEC,IAAEC,IAAE;AAAC,iBAAO,EAAEF,IAAE,EAAE,UAAU,IAAI,kBAAiBC,IAAEC,IAAE,OAAO;AAAA,QAAC,GAAED,GAAE,gBAAc,SAASD,IAAEC,IAAEC,IAAE;AAAC,iBAAO,EAAEF,IAAE,EAAE,UAAU,IAAI,iBAAgBC,IAAEC,IAAE,MAAM;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACF,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,iBAAeA,GAAE,gBAAc;AAAA,QAAO,MAAM,UAAU,MAAK;AAAA,UAAC,YAAYD,IAAEC,IAAE,GAAE,GAAE,GAAE;AAAC,kBAAMA,EAAC,GAAE,KAAK,OAAKD,IAAE,KAAK,SAAO,GAAE,KAAK,eAAa,GAAE,KAAK,OAAK,GAAE,KAAK,OAAK,iBAAgB,OAAO,eAAe,MAAK,EAAE,SAAS;AAAA,UAAC;AAAA,UAAC,IAAI,YAAW;AAAC,mBAAM,mBAAiB,KAAK,QAAM,qBAAmB,KAAK,QAAM,cAAY,KAAK;AAAA,UAAI;AAAA,QAAC;AAAC,QAAAC,GAAE,gBAAc,GAAEA,GAAE,iBAAe,SAASD,IAAEC,IAAE;AAAC,iBAAO,QAAMD,KAAE,iBAAe,QAAMA,MAAG,QAAMA,MAAG,QAAMA,KAAE,SAAO,QAAMA,KAAE,cAAY,QAAMA,MAAG,QAAMA,KAAE,eAAaA,MAAG,MAAI,YAAUC,KAAE,mBAAiB,YAAU;AAAA,QAAW;AAAA,MAAC,GAAE,KAAI,CAACD,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,eAAaA,GAAE,cAAYA,GAAE,eAAaA,GAAE,eAAaA,GAAE,2BAAyB;AAAO,cAAM,IAAE,EAAE,GAAG,GAAE,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,2BAAyB;AAAK,cAAM,IAAE,CAAC,EAAE,sBAAsB,OAAM,EAAE,sBAAsB,gBAAe,EAAE,sBAAsB,QAAO,EAAE,sBAAsB,oBAAoB,GAAE,IAAE,OAAO,OAAO,EAAE,qBAAqB;AAAE,iBAAS,EAAED,IAAEC,IAAEC,IAAE;AAAC,cAAIK,IAAEC,IAAEC;AAAE,gBAAME,KAAE,OAAOX,MAAG,EAAE,EAAE,KAAK,EAAE,YAAY;AAAE,iBAAM,aAAWW,KAAE,EAAE,sBAAsB,gBAAcA,OAAI,EAAE,sBAAsB,WAAS,UAAQJ,KAAEL,GAAE,QAAM,WAASK,MAAGA,GAAE,IAAI,6DAA6D,GAAE,EAAE,sBAAsB,QAAM,EAAE,SAASI,EAAC,IAAE,EAAE,SAASA,EAAC,KAAG,MAAIV,GAAE,UAAQ,UAAQQ,KAAEP,GAAE,QAAM,WAASO,MAAGA,GAAE,IAAI,iBAAiBE,EAAC,gDAAgD,GAAE,EAAE,sBAAsB,QAAMA,OAAI,EAAE,sBAAsB,WAAS,MAAIV,GAAE,WAAQ,SAASD,IAAEC,IAAE;AAAC,gBAAG,MAAID,GAAE,OAAO,QAAM;AAAG,kBAAME,KAAEF,GAAE,KAAK,CAAAA,OAAG,OAAOA,EAAC,EAAE,KAAK,EAAE,YAAY,EAAE,GAAEG,MAAG,GAAE,EAAE,mBAAmBF,EAAC,EAAE,KAAK,CAAAD,OAAGA,GAAE,YAAY,EAAE,GAAEK,KAAE,CAAC,OAAM,IAAI;AAAE,mBAAOH,GAAE,CAAC,MAAIG,GAAE,CAAC,KAAGH,GAAE,CAAC,MAAIG,GAAE,CAAC,KAAGH,GAAE,CAAC,MAAIC,GAAE,CAAC,KAAGD,GAAE,CAAC,MAAIC,GAAE,CAAC;AAAA,UAAC,GAAEF,IAAEC,GAAE,QAAQ,IAAES,KAAE,EAAE,sBAAsB,SAAO,UAAQH,KAAEN,GAAE,QAAM,WAASM,MAAGA,GAAE,IAAI,wCAAwCR,EAAC,yBAAyB,GAAE,EAAE,sBAAsB;AAAA,QAAK;AAAC,iBAAS,EAAEA,IAAE;AAAC,gBAAMC,KAAED,GAAE,IAAI,MAAM,EAAE,QAAQ,CAAAA,OAAG,OAAO,SAASA,EAAC,EAAE;AAAE,iBAAOC,GAAE,UAAQ,IAAE,EAAC,KAAI,KAAK,IAAI,GAAGA,EAAC,GAAE,KAAI,KAAK,IAAI,GAAGA,EAAC,EAAC,IAAE,EAAC,KAAI,GAAE,KAAI,EAAC;AAAA,QAAC;AAAC,iBAAS,EAAED,IAAEC,IAAEC,IAAE;AAAC,gBAAME,KAAE,EAAC,gBAAe,OAAG,WAAU,OAAM,OAAM,MAAK;AAAE,iBAAOJ,OAAI,EAAE,sBAAsB,iBAAeA,OAAI,EAAE,sBAAsB,gBAAc,OAAO,OAAOI,IAAE,EAAEH,EAAC,CAAC,GAAED,OAAI,EAAE,sBAAsB,aAAWI,GAAE,gBAAc,IAAG,OAAO,OAAO,OAAO,OAAO,CAAC,GAAEA,EAAC,IAAG,QAAMF,KAAE,SAAOA,GAAE,WAAS,CAAC,CAAC;AAAA,QAAC;AAAC,iBAAS,EAAEF,IAAEC,IAAEC,IAAE;AAAC,cAAIC,IAAEC,IAAEC,IAAEC;AAAE,gBAAK,EAAC,MAAKE,IAAE,OAAMG,GAAC,IAAEV,IAAE,IAAE,CAAC,GAAG,UAAQG,KAAE,UAAQD,KAAEH,GAAE,mBAAiB,WAASG,KAAEA,KAAE,QAAMK,KAAE,SAAOA,GAAE,UAAQ,WAASJ,KAAEA,KAAE,CAAC,CAAC,GAAE,IAAE,EAAE,UAAQC,KAAE,QAAMG,KAAE,SAAOA,GAAE,SAAO,WAASH,KAAEA,KAAEL,GAAE,cAAa,GAAEE,EAAC,GAAE,IAAEF,GAAE,gBAAc,QAAMQ,KAAE,SAAOA,GAAE,QAAM,WAAWR,GAAE,WAAW;AAAG,iBAAM,EAAC,KAAI,QAAMQ,KAAE,SAAOA,GAAE,OAAK,SAASN,GAAE,SAAS,IAAIF,GAAE,WAAW,IAAG,OAAMW,MAAG,IAAG,MAAK,GAAE,cAAa,EAAC,MAAK,KAAI,GAAE,KAAI,GAAE,SAAQ,UAAQL,KAAE,QAAME,KAAE,SAAOA,GAAE,YAAU,WAASF,MAAGA,IAAE,cAAa,QAAME,KAAE,SAAOA,GAAE,gBAAc,IAAG,OAAM,GAAE,eAAc,QAAMA,KAAE,SAAOA,GAAE,iBAAe,IAAG,UAAS,OAAG,UAASR,GAAE,aAAY,QAAO,EAAE,GAAE,GAAEQ,EAAC,GAAE,YAAW,QAAMA,KAAE,SAAOA,GAAE,cAAY,IAAG,eAAcN,GAAE,eAAc,mBAAkB,IAAG,QAAO,SAAQ;AAAA,QAAC;AAAC,QAAAD,GAAE,eAAa,GAAEA,GAAE,eAAa,GAAEA,GAAE,cAAY,SAASD,IAAEC,IAAE;AAAC,cAAIC,IAAEE,IAAEC;AAAE,gBAAMC,KAAEN,IAAEO,KAAEP,GAAE,aAAYQ,KAAER,GAAE,UAASS,KAAEH,GAAE,iBAAgB,IAAE,CAAAN,QAAI,EAAC,MAAK,OAAM,QAAOA,IAAE,aAAYO,IAAE,UAASC,IAAE,iBAAgBC,GAAC;AAAG,cAAGH,GAAE,eAAa,EAAE,0BAA0B,QAAO,EAAE,SAAS;AAAE,cAAG,SAAKA,GAAE,UAAU,QAAO,EAAE,YAAY;AAAE,gBAAM,KAAE,SAASN,IAAE;AAAC,kBAAMC,KAAED,GAAE,YAAU,YAAU,OAAOA,GAAE,WAASA,GAAE,WAASA,GAAE,gBAAc,YAAU,OAAOA,GAAE,eAAaA,GAAE,eAAa;AAAK,gBAAGC,IAAE;AAAC,oBAAMD,KAAEC,IAAEC,KAAEF,GAAE;AAAM,qBAAM,EAAC,MAAKA,IAAE,OAAM,YAAU,OAAOE,KAAEA,KAAEA,KAAE,KAAK,UAAUA,EAAC,IAAE,KAAI;AAAA,YAAC;AAAC,mBAAM,EAAC,MAAK,MAAK,OAAM,YAAU,OAAOF,GAAE,eAAaA,GAAE,eAAa,KAAI;AAAA,UAAC,GAAEA,EAAC;AAAE,iBAAM,WAAS,OAAO,UAAQK,KAAE,UAAQD,KAAE,UAAQF,KAAE,EAAE,SAAO,WAASA,KAAE,SAAOA,GAAE,SAAO,WAASE,KAAEA,KAAEJ,GAAE,iBAAe,WAASK,KAAEA,KAAE,EAAE,EAAE,KAAK,EAAE,YAAY,IAAE,EAAE,WAAW,IAAE,EAAE,SAAO,EAAE,MAAM,KAAK,IAAE,EAAC,MAAK,YAAW,UAAS,EAAEL,IAAE,GAAEC,EAAC,GAAE,YAAW,SAAKD,GAAE,YAAW,aAAYO,IAAE,UAASC,IAAE,OAAMF,GAAE,OAAM,cAAaN,GAAE,cAAa,iBAAgBS,GAAC,IAAE,EAAE,aAAa;AAAA,QAAC,GAAER,GAAE,eAAa,SAASD,IAAEE,IAAEC,KAAEF,GAAE,0BAAyB;AAAC,gBAAMG,KAAEF,GAAE,KAAIG,KAAE,CAAAL,OAAGA,GAAE,SAAS,CAAAA,OAAG,MAAM,QAAQA,GAAE,KAAK,IAAEA,GAAE,QAAM,CAACA,GAAE,KAAK,EAAE,EAAE,KAAK,CAAAA,OAAG,YAAU,OAAOA,KAAEA,KAAE,KAAK,UAAUA,EAAC,EAAE,EAAE,KAAK,CAAAA,QAAIA,MAAG,IAAI,KAAK,EAAE,EAAE,QAAQ,CAAAA,OAAG,OAAKA,GAAE,GAAEM,KAAED,GAAEL,GAAE,QAAQ,CAAAA,OAAGA,GAAE,QAAMI,GAAE,CAAC,GAAEG,KAAEF,GAAEL,GAAE,QAAQ,CAAAA,OAAGA,GAAE,QAAM,gBAAgBI,EAAC,GAAG,CAAC;AAAE,iBAAM,CAACE,GAAE,QAAQ,CAACN,IAAEC,OAAIK,GAAE,QAAQN,EAAC,MAAIC,GAAE,EAAE,KAAKE,EAAC,GAAEI,GAAE,KAAKJ,EAAC,CAAC,EAAE,QAAQ,CAAAH,OAAG,OAAKA,GAAE,EAAE,KAAKG,EAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACH,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,eAAa;AAAO,cAAM,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,eAAa,SAASD,IAAE;AAAC,gBAAMC,KAAED,GAAE,iBAAiB,sBAAsB,GAAEE,KAAE,CAAC,GAAE,IAAE,CAAC;AAAE,iBAAOD,GAAE,SAAS,CAAAD,OAAG;AAAC,gBAAIC;AAAE,kBAAM,IAAED,IAAE,IAAE,EAAE;AAAK,gBAAG,CAAC,EAAE;AAAO,kBAAM,IAAE,EAAE;AAAK,iBAAI,YAAU,KAAG,eAAa,MAAI,CAAC,EAAE,QAAQ;AAAO,kBAAM,IAAE,EAAE,OAAM,IAAE,EAAE,UAAU,CAAC;AAAE,iBAAI,QAAM,IAAE,SAAO,EAAE,SAAS,6BAA6B,OAAK,UAAQC,KAAE,EAAE,OAAK,WAASA,KAAE,SAAOA,GAAE,WAAW,gBAAgB,GAAG,QAAO,EAAE,CAAC,MAAI,EAAE,CAAC,IAAE,CAAC,IAAG,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC;AAAE,gBAAG,QAAM,IAAE,SAAO,EAAE,SAAS,sBAAsB,GAAE;AAAC,oBAAMD,MAAG,GAAE,EAAE,iBAAiB,CAAC;AAAE,qBAAO,MAAKA,GAAE,UAAQE,GAAE,KAAK,EAAC,KAAI,GAAE,OAAMF,GAAC,CAAC;AAAA,YAAE;AAAC,kBAAM,IAAE,4BAA0B,IAAE,EAAE,QAAQ,SAAS,IAAE;AAAE,oBAAM,KAAGE,GAAE,KAAK,EAAC,KAAI,GAAE,OAAM,CAAC,CAAC,EAAC,CAAC;AAAA,UAAC,EAAE,GAAE,OAAO,QAAQ,CAAC,EAAE,SAAS,CAAC,CAACF,IAAEC,EAAC,MAAI;AAAC,kBAAME,KAAEF,GAAE,MAAM,EAAE,MAAM,CAACD,IAAEC,OAAI,OAAOD,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,IAAE,OAAOC,GAAE,MAAM,GAAG,EAAE,CAAC,CAAC,EAAE;AAAE,YAAAC,GAAE,KAAK,EAAC,KAAIF,IAAE,OAAMG,GAAC,CAAC;AAAA,UAAC,EAAE,GAAED;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACF,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,YAAU,QAAOA,GAAE,YAAU,EAAC,KAAI,EAAC,KAAI,CAACD,IAAEC,OAAI,WAAWD,EAAC,IAAIC,EAAC,IAAG,UAAS,CAACD,IAAEC,OAAI,WAAWD,EAAC,IAAIC,EAAC,SAAQ,SAAQ,CAAAD,OAAG,mBAAmBA,EAAC,SAAQ,UAAS,gBAAe,kBAAiB,wBAAuB,kBAAiB,yBAAwB,iBAAgB,uBAAsB,EAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,cAAY,QAAOA,GAAE,cAAY,EAAC,QAAO,CAAAD,OAAG;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAA,YAAK;AAAQ,qBAAM;AAAA,YAA4B,KAAI;AAAK,qBAAM;AAAA,YAA+B,KAAI;AAAK,qBAAM;AAAA,YAAwB,KAAI;AAAK,qBAAM;AAAA,YAAgC,KAAI;AAAK,qBAAM;AAAA,YAAyB,KAAI;AAAK,qBAAM;AAAA,YAA2B,KAAI;AAAK,qBAAM;AAAA,YAAqB,KAAI;AAAK,qBAAM;AAAA,UAAa;AAAA,QAAC,GAAE,QAAO,CAAAA,OAAG;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAA,YAAK;AAAQ,qBAAM;AAAA,YAA4B,KAAI;AAAK,qBAAM;AAAA,YAA4B,KAAI;AAAK,qBAAM;AAAA,YAA0B,KAAI;AAAK,qBAAM;AAAA,YAA6B,KAAI;AAAK,qBAAM;AAAA,YAA2B,KAAI;AAAK,qBAAM;AAAA,YAA6B,KAAI;AAAK,qBAAM;AAAA,YAAmB,KAAI;AAAK,qBAAM;AAAA,UAAa;AAAA,QAAC,GAAE,OAAM,CAAAA,OAAG;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAA,YAAK;AAAQ,qBAAM;AAAA,YAA2B,KAAI;AAAK,qBAAM;AAAA,YAAwC,KAAI;AAAK,qBAAM;AAAA,YAA0B,KAAI;AAAK,qBAAM;AAAA,YAAyC,KAAI;AAAK,qBAAM;AAAA,YAA0B,KAAI;AAAK,qBAAM;AAAA,YAA4B,KAAI;AAAK,qBAAM;AAAA,YAA+B,KAAI;AAAK,qBAAM;AAAA,UAAa;AAAA,QAAC,GAAE,MAAK,CAAAA,OAAG;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAA,YAAK;AAAQ,qBAAM;AAAA,YAA0B,KAAI;AAAK,qBAAM;AAAA,YAA2B,KAAI;AAAK,qBAAM;AAAA,YAAwB,KAAI;AAAK,qBAAM;AAAA,YAAiC,KAAI;AAAK,qBAAM;AAAA,YAA0B,KAAI;AAAK,qBAAM;AAAA,YAA0B,KAAI;AAAK,qBAAM;AAAA,YAAqB,KAAI;AAAK,qBAAM;AAAA,UAAa;AAAA,QAAC,GAAE,UAAS,CAAAA,OAAG;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAA,YAAK;AAAQ,qBAAM;AAAA,YAA8B,KAAI;AAAK,qBAAM;AAAA,YAAgC,KAAI;AAAK,qBAAM;AAAA,YAA2B,KAAI;AAAK,qBAAM;AAAA,YAA+B,KAAI;AAAK,qBAAM;AAAA,YAA6B,KAAI;AAAK,qBAAM;AAAA,YAA8B,KAAI;AAAK,qBAAM;AAAA,YAAoC,KAAI;AAAK,qBAAM;AAAA,UAAa;AAAA,QAAC,GAAE,kBAAiB,CAAAA,OAAG;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAA,YAAK;AAAQ,qBAAM;AAAA,YAAiC,KAAI;AAAK,qBAAM;AAAA,YAAoC,KAAI;AAAK,qBAAM;AAAA,YAAqC,KAAI;AAAK,qBAAM;AAAA,YAAoC,KAAI;AAAK,qBAAM;AAAA,YAAgC,KAAI;AAAK,qBAAM;AAAA,YAAoC,KAAI;AAAK,qBAAM;AAAA,YAAqC,KAAI;AAAK,qBAAM;AAAA,UAA2B;AAAA,QAAC,GAAE,QAAO,EAAC,KAAI,CAAAA,OAAG;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAK,qBAAM;AAAA,YAA0C,KAAI;AAAK,qBAAM;AAAA,YAAyC,KAAI;AAAK,qBAAM;AAAA,YAA0C,KAAI;AAAK,qBAAM;AAAA,YAA+C,KAAI;AAAK,qBAAM;AAAA,YAA2C,KAAI;AAAK,qBAAM;AAAA,YAA6B,KAAI;AAAK,qBAAM;AAAA,YAAqC;AAAQ,qBAAM;AAAA,UAAgC;AAAA,QAAC,GAAE,SAAQ,CAACA,IAAEC,OAAI;AAAC,cAAG,YAAUA,GAAE,SAAOD,IAAE;AAAA,YAAC,KAAI;AAAK,qBAAM;AAAA,YAAgB,KAAI;AAAK,qBAAM;AAAA,YAAe,KAAI;AAAK,qBAAM;AAAA,YAAa,KAAI;AAAK,qBAAM;AAAA,YAAgB,KAAI;AAAK,qBAAM;AAAA,YAAa,KAAI;AAAK,qBAAM;AAAA,YAAY,KAAI;AAAK,qBAAM;AAAA,YAAgB;AAAQ,qBAAM;AAAA,UAAa;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAK,qBAAM;AAAA,YAA4B,KAAI;AAAK,qBAAM;AAAA,YAAiB,KAAI;AAAK,qBAAM;AAAA,YAA8B,KAAI;AAAK,qBAAM;AAAA,YAAgB,KAAI;AAAK,qBAAM;AAAA,YAAgB,KAAI;AAAK,qBAAM;AAAA,YAAoB,KAAI;AAAK,qBAAM;AAAA,YAAoB;AAAQ,qBAAM;AAAA,UAAe;AAAA,QAAC,GAAE,UAAS,CAACA,IAAEC,OAAI;AAAC,kBAAOD,IAAE;AAAA,YAAC,KAAI;AAAK,qBAAM,WAAQC,EAAC;AAAA,YAAY,KAAI;AAAK,qBAAM,SAASA,EAAC;AAAA,YAAS,KAAI;AAAK,qBAAM,kBAAYA,EAAC;AAAA,YAAa,KAAI;AAAK,qBAAM,OAAOA,EAAC;AAAA,YAAS,KAAI;AAAK,qBAAM,QAAQA,EAAC;AAAA,YAAS,KAAI;AAAK,qBAAM,GAAGA,EAAC;AAAA,YAAkB,KAAI;AAAK,qBAAM,oDAAYA,EAAC;AAAA,YAAU;AAAQ,qBAAM,OAAOA,EAAC;AAAA,UAAQ;AAAA,QAAC,GAAE,SAAQ,CAACD,IAAEC,OAAI;AAAC,kBAAOD,IAAE;AAAA,YAAC,KAAI;AAAK,qBAAM,WAAQC,EAAC;AAAA,YAAM,KAAI;AAAK,qBAAM,SAASA,EAAC;AAAA,YAAM,KAAI;AAAK,qBAAM,kBAAYA,EAAC;AAAA,YAAM,KAAI;AAAA,YAAK,KAAI;AAAA,YAAK;AAAQ,qBAAM,OAAOA,EAAC;AAAA,YAAM,KAAI;AAAK,qBAAM,QAAQA,EAAC;AAAA,YAAM,KAAI;AAAK,qBAAM,GAAGA,EAAC;AAAA,YAAqB,KAAI;AAAK,qBAAM,oDAAYA,EAAC;AAAA,UAAK;AAAA,QAAC,GAAE,UAAS,CAACD,IAAEC,OAAI;AAAC,kBAAOD,IAAE;AAAA,YAAC,KAAI;AAAK,qBAAM,qCAAkCC,EAAC;AAAA,YAAO,KAAI;AAAK,qBAAM,4BAA4BA,EAAC;AAAA,YAAO,KAAI;AAAK,qBAAM,2CAAqCA,EAAC;AAAA,YAAO,KAAI;AAAK,qBAAM,gCAA0BA,EAAC;AAAA,YAAO,KAAI;AAAK,qBAAM,2BAA2BA,EAAC;AAAA,YAAO,KAAI;AAAK,qBAAM,mJAAgCA,EAAC;AAAA,YAAa,KAAI;AAAK,qBAAM,gIAA4BA,EAAC;AAAA,YAAO;AAAQ,qBAAM,0BAA0BA,EAAC;AAAA,UAAM;AAAA,QAAC,GAAE,QAAO,CAAAD,OAAG;AAAC,kBAAOA,IAAE;AAAA,YAAC,KAAI;AAAK,qBAAM;AAAA,YAAW,KAAI;AAAA,YAAK,KAAI;AAAK,qBAAM;AAAA,YAAQ,KAAI;AAAK,qBAAM;AAAA,YAAS,KAAI;AAAK,qBAAM;AAAA,YAAU,KAAI;AAAK,qBAAM;AAAA,YAAQ,KAAI;AAAK,qBAAM;AAAA,YAAO;AAAQ,qBAAM;AAAA,UAAQ;AAAA,QAAC,EAAC,EAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,IAAE,MAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,qBAAmBA,GAAE,gBAAcA,GAAE,cAAYA,GAAE,gBAAcA,GAAE,kBAAgB;AAAO,cAAM,IAAE,EAAE,EAAE,GAAE,IAAE,EAAE,GAAG,GAAE,IAAE,EAAC,OAAM,QAAO,QAAO,UAAS,OAAM,SAAQ;AAAE,QAAAA,GAAE,kBAAgB,SAASD,GAAEC,IAAEC,KAAE,YAAW,IAAE,MAAK,IAAE,EAAC,aAAY,MAAE,GAAE,GAAE;AAAC,cAAG,CAACD,GAAE,OAAM,IAAI,MAAM,uCAAuC;AAAE,gBAAM,IAAE,CAAC,GAAE,EAAC,aAAY,GAAE,IAAG,EAAC,IAAE;AAAE,iBAAOA,GAAE,SAAS,OAAG;AAAC,gBAAI,GAAE;AAAE,iBAAI,UAAQ,IAAE,UAAQ,IAAE,QAAM,IAAE,SAAO,EAAE,iBAAe,WAAS,IAAE,SAAO,EAAE,SAAO,WAAS,IAAE,SAAO,EAAE,UAAQ,GAAE;AAAC,kBAAIA,KAAE,SAAS,cAAc,KAAK;AAAE,cAAAA,GAAE,UAAU,IAAI,mBAAmB;AAAE,oBAAME,KAAE,SAAS,cAAc,OAAO;AAAE,cAAAA,GAAE,aAAa,OAAM,iBAAiB,EAAE,EAAE,EAAE,GAAEA,GAAE,eAAa,GAAE,EAAE,YAAY,EAAE,OAAM,CAAC,GAAEA,GAAE,UAAU,IAAI,qBAAqB,GAAEF,GAAE,YAAYE,EAAC,GAAE,EAAE,aAAa,KAAK,SAAS,CAAAH,OAAG;AAAC,gBAAAA,GAAE,MAAI,EAAE,KAAI,EAAE,OAAOA,GAAE,EAAE,MAAIA,GAAE,SAAO,EAAC,aAAY,EAAE,OAAOA,GAAE,EAAE,EAAC;AAAA,cAAE,EAAE,GAAEA,GAAE,EAAE,aAAa,MAAKE,IAAE,GAAE,GAAE,CAAC,EAAE,SAAS,CAAAF,OAAG;AAAC,gBAAAC,GAAE,YAAYD,EAAC;AAAA,cAAC,EAAE,GAAE,EAAE,KAAKC,EAAC;AAAA,YAAC,OAAK;AAAC,oBAAMD,MAAE,SAASA,IAAEC,IAAEC,IAAEI,IAAEC,IAAE;AAAC,oBAAIC,IAAEC,IAAEE;AAAE,oBAAID,IAAEE,IAAE,EAAC,IAAGE,IAAE,OAAMD,IAAE,MAAK,GAAE,KAAI,GAAE,SAAQ,GAAE,cAAa,GAAE,QAAO,EAAC,IAAEb,IAAE,IAAE,SAAS,cAAc,KAAK;AAAE,kBAAE,UAAU,IAAI,mBAAmB;AAAE,sBAAM,IAAE,OAAO,aAAW,KAAI,IAAE,WAASC,MAAG,GAAE,EAAE,YAAYY,IAAEX,EAAC,IAAE,QAAM,IAAE,SAAO,EAAE,aAAY,KAAG,GAAE,EAAE,aAAa,CAAC,GAAE,KAAG,QAAM,IAAE,SAAO,EAAE,kBAAgB,GAAE,IAAE,YAAU,QAAM,IAAE,SAAO,EAAE,oBAAkB,QAAM,IAAE,SAAO,EAAE,iBAAgB,KAAG,QAAM,IAAE,SAAO,EAAE,cAAY,OAAM,KAAG,QAAM,IAAE,SAAO,EAAE,UAAQ,OAAM,KAAG,GAAE,EAAE,qBAAqB,CAAC;AAAE,oBAAG,CAAC,EAAE,QAAO;AAAE;AAAC,wBAAMC,KAAE,EAAE,EAAC,UAASH,IAAE,QAAOC,IAAE,UAASC,IAAE,KAAII,IAAE,MAAKC,IAAE,SAAQ,GAAE,eAAc,GAAE,iBAAgB,GAAE,eAAc,GAAE,gBAAe,GAAE,WAAU,GAAE,OAAM,EAAC,CAAC;AAAE,kBAAAG,KAAEP,GAAE,SAAQS,KAAET,GAAE;AAAA,gBAAgB;AAAC,gBAAAO,GAAE,KAAG,iBAAiBI,EAAC,IAAGJ,GAAE,aAAa,QAAO,CAAC,GAAEA,GAAE,UAAU,IAAIE,EAAC,IAAG,WAAS,KAAG,SAAO,OAAKF,GAAE,QAAM,KAAG,IAAG,CAAC,SAAQ,kBAAiB,gBAAe,aAAa,EAAE,SAAS,CAAC,MAAIA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,WAAS;AAAG,sBAAM,IAAE,SAAS,cAAc,OAAO;AAAE,kBAAE,aAAa,OAAM,iBAAiBI,EAAC,EAAE,GAAE,EAAE,eAAa,GAAE,EAAE,YAAYD,IAAEX,EAAC,GAAE,EAAE,UAAU,IAAI,qBAAqB,IAAE,SAASF,IAAEC,IAAE;AAAC,sBAAG,gBAAcA,GAAE,KAAK;AAAO,wBAAK,EAAC,QAAOC,GAAC,IAAED,IAAEE,MAAE,SAASH,IAAE;AAAC,wBAAGA,GAAE,QAAO,EAAEA,EAAC,KAAGA;AAAA,kBAAC,GAAE,QAAME,KAAE,SAAOA,GAAE,SAAS,GAAEE,MAAGE,KAAE,QAAMJ,KAAE,SAAOA,GAAE,YAAW,MAAM,QAAQI,EAAC,IAAEA,KAAEA,KAAE,CAACA,EAAC,IAAE,CAAC;AAAG,sBAAIA;AAAE,kBAAAH,MAAGH,GAAE,MAAM,YAAY,aAAYG,IAAE,WAAW,IAAG,QAAMD,KAAE,SAAOA,GAAE,gBAAcF,GAAE,MAAM,YAAY,SAAQ,QAAO,WAAW,GAAEA,GAAE,MAAM,YAAY,cAAa,WAAU,WAAW,GAAEA,GAAE,MAAM,YAAY,cAAaE,GAAE,YAAW,WAAW,IAAGE,GAAE,SAAS,QAAQ,KAAGJ,GAAE,MAAM,YAAY,cAAa,UAAS,WAAW,GAAEI,GAAE,SAAS,MAAM,KAAGJ,GAAE,MAAM,YAAY,eAAc,QAAO,WAAW,GAAEI,GAAE,SAAS,WAAW,KAAGJ,GAAE,MAAM,YAAY,mBAAkB,aAAY,WAAW;AAAA,gBAAC,GAAE,GAAEA,EAAC;AAAE,sBAAM,IAAE,SAAS,cAAc,OAAO;AAAE,oBAAG,EAAE,eAAa,GAAE,EAAE,YAAY,QAAM,IAAE,SAAO,EAAE,UAASE,EAAC,GAAE,EAAE,UAAU,IAAI,wBAAwB,IAAG,UAAQM,KAAE,QAAM,IAAE,SAAO,EAAE,kBAAgB,WAASA,KAAE,SAAOA,GAAE,SAAS,QAAQ,OAAK,EAAE,MAAM,YAAU,YAAW,UAAQC,KAAE,QAAM,IAAE,SAAO,EAAE,kBAAgB,WAASA,KAAE,SAAOA,GAAE,SAAS,MAAM,OAAK,EAAE,MAAM,aAAW,UAAS,UAAQE,KAAE,QAAM,IAAE,SAAO,EAAE,kBAAgB,WAASA,KAAE,SAAOA,GAAE,SAAS,WAAW,OAAK,EAAE,MAAM,iBAAe,cAAa,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,GAAE,UAAU,IAAI,iCAAiC,GAAE,EAAE,YAAYD,EAAC,GAAE,EAAE,YAAY,CAAC,IAAG,QAAM,IAAE,SAAO,EAAE,aAAW,EAAE,YAAY,CAAC;AAAA,qBAAM;AAAC,sBAAG,WAAST,OAAI,EAAE,YAAY,CAAC,IAAG,QAAM,IAAE,SAAO,EAAE,aAAW,EAAE,YAAY,CAAC,GAAE,YAAU,QAAM,IAAE,SAAO,EAAE,YAAU,QAAM,QAAM,IAAE,SAAO,EAAE,WAAU;AAAC,0BAAMD,KAAE,SAAS,cAAc,KAAK;AAAE,oBAAAA,GAAE,MAAI,QAAM,IAAE,SAAO,EAAE,SAAQA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,MAAM,WAAS,QAAOA,GAAE,MAAM,SAAO,SAAQA,GAAE,MAAM,SAAO,UAAS,EAAE,YAAYA,EAAC;AAAA,kBAAC;AAAC,sBAAG,eAAa,KAAG,IAAE,GAAE;AAAC,0BAAMA,KAAE,SAAS,cAAc,KAAK;AAAE,wBAAGA,GAAE,UAAU,IAAI,uBAAuB,GAAEA,GAAE,cAAY,GAAGU,GAAE,MAAM,MAAM,IAAI,CAAC,IAAGV,GAAE,MAAM,YAAU,SAAQA,GAAE,MAAM,WAAS,QAAOA,GAAE,MAAM,YAAU,OAAMU,GAAE,iBAAiB,UAAS,MAAI;AAAC,sBAAAV,GAAE,cAAY,GAAGU,GAAE,MAAM,MAAM,IAAI,CAAC;AAAA,oBAAE,EAAE,GAAE,EAAE,YAAYA,EAAC,GAAE,EAAE,YAAYV,EAAC,IAAG,QAAM,IAAE,SAAO,EAAE,iBAAe,QAAM,IAAE,SAAO,EAAE,kBAAiB;AAAC,4BAAMA,KAAE,SAAS,cAAc,KAAK;AAAE,sBAAAA,GAAE,UAAU,IAAI,8BAA8B,GAAEA,GAAE,UAAU,IAAI,kCAAkC,GAAEA,GAAE,MAAM,UAAQ,QAAOA,GAAE,MAAM,iBAAe;AAAa,4BAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,sBAAAA,GAAE,UAAU,IAAI,oBAAoB,GAAEA,GAAE,OAAK,YAAWA,GAAE,KAAG,QAAQ,CAAC,IAAGA,GAAE,OAAK,GAAEA,GAAE,QAAM,KAAIA,GAAE,MAAM,SAAO;AAAU,4BAAMC,KAAE,SAAS,cAAc,OAAO;AAAE,sBAAAA,GAAE,UAAQ,QAAQ,CAAC,IAAGA,GAAE,cAAY,QAAM,IAAE,SAAO,EAAE,iBAAgBA,GAAE,MAAM,WAAS,QAAOA,GAAE,MAAM,SAAO,WAAUA,GAAE,MAAM,SAAO,SAAQD,GAAE,iBAAiB,UAAS,MAAI;AAAC,wBAAAS,GAAE,QAAM,KAAIH,MAAGA,GAAE;AAAA,sBAAC,EAAE,GAAEP,GAAE,YAAYC,EAAC,GAAED,GAAE,YAAYE,EAAC,GAAE,EAAE,YAAYF,EAAC;AAAA,oBAAC;AAAA,kBAAC,MAAM,GAAE,YAAYU,EAAC;AAAA,gBAAC;AAAC,uBAAO;AAAA,cAAC,GAAE,GAAER,IAAE,GAAE,uDAAqD,IAAE,IAAI,CAAC,KAAG,KAAI,MAAID,GAAE,SAAO,IAAE,MAAM;AAAE,gBAAE,KAAKD,EAAC;AAAA,YAAC;AAAA,UAAC,EAAE,GAAE;AAAA,QAAC,GAAEC,GAAE,gBAAc,SAASD,KAAE,IAAGC,IAAEC,KAAE,UAASC,KAAE,QAAOC,KAAE,QAAO;AAAC,gBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,UAAAA,GAAE,UAAU,IAAI,gCAAgC;AAAE,gBAAM,IAAE,SAAS,cAAc,QAAQ;AAAE,YAAE,KAAG,wBAAuB,EAAE,OAAK,UAAS,EAAE,UAAU,IAAI,sBAAsB,GAAE,EAAE,cAAY,kBAAgBL,KAAEI,MAAG,SAAOF,MAAG;AAAS,gBAAM,IAAE,SAAS,cAAc,QAAQ;AAAE,iBAAO,EAAE,KAAG,sBAAqB,EAAE,OAAK,UAAS,EAAE,UAAU,IAAI,oBAAoB,GAAE,EAAE,cAAYC,MAAG,QAAO,EAAE,iBAAiB,SAAQF,EAAC,GAAE,EAAE,iBAAiB,UAAS,MAAI;AAAC,cAAE,gBAAgB,UAAU;AAAA,UAAC,EAAE,GAAE,kBAAgBD,MAAGK,GAAE,YAAY,CAAC,GAAEA,GAAE,YAAY,CAAC,GAAEA;AAAA,QAAC,GAAEJ,GAAE,cAAY,SAASD,IAAE;AAAC,gBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,iBAAOA,GAAE,UAAU,IAAI,qBAAqB,GAAEA,GAAE,cAAYD,IAAEC;AAAA,QAAC,GAAEA,GAAE,gBAAc,SAASD,IAAE;AAAC,gBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,iBAAOA,GAAE,UAAU,IAAI,uBAAuB,GAAEA,GAAE,cAAYD,IAAEC;AAAA,QAAC,GAAEA,GAAE,qBAAmB,SAASD,IAAEC,KAAE,OAAGC,KAAE,OAAMC,KAAE,MAAI;AAAA,QAAC,GAAE;AAAC,gBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,UAAAA,GAAE,UAAU,IAAI,uCAAuC;AAAE,gBAAMC,KAAE,SAAS,cAAc,KAAK;AAAE,cAAGA,GAAE,UAAU,IAAI,6BAA6B,GAAEA,GAAE,YAAUL,IAAEI,GAAE,YAAYC,EAAC,GAAEJ,IAAE;AAAC,kBAAMD,KAAE,SAAS,cAAc,QAAQ;AAAE,YAAAA,GAAE,KAAG,sCAAqCA,GAAE,UAAU,IAAI,oCAAoC,GAAEA,GAAE,cAAYE,IAAEF,GAAE,iBAAiB,UAAS,MAAIG,GAAE,EAAE,GAAEC,GAAE,YAAYJ,EAAC;AAAA,UAAC;AAAC,iBAAOI;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,SAASJ,IAAEC,IAAE,GAAE;AAAC;AAAa,YAAI,IAAE,QAAM,KAAK,aAAW,SAASD,IAAEC,IAAEC,IAAEC,IAAE;AAAC,iBAAO,KAAID,OAAIA,KAAE,WAAW,SAASE,IAAEC,IAAE;AAAC,qBAASC,GAAEN,IAAE;AAAC,kBAAG;AAAC,kBAAEG,GAAE,KAAKH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAASO,GAAEP,IAAE;AAAC,kBAAG;AAAC,kBAAEG,GAAE,MAAMH,EAAC,CAAC;AAAA,cAAC,SAAOA,IAAE;AAAC,gBAAAK,GAAEL,EAAC;AAAA,cAAC;AAAA,YAAC;AAAC,qBAAS,EAAEA,IAAE;AAAC,kBAAIC;AAAE,cAAAD,GAAE,OAAKI,GAAEJ,GAAE,KAAK,KAAGC,KAAED,GAAE,OAAMC,cAAaC,KAAED,KAAE,IAAIC,IAAG,SAASF,IAAE;AAAC,gBAAAA,GAAEC,EAAC;AAAA,cAAC,EAAE,GAAG,KAAKK,IAAEC,EAAC;AAAA,YAAC;AAAC,eAAGJ,KAAEA,GAAE,MAAMH,IAAEC,MAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AAAA,UAAC,EAAE;AAAA,QAAC,GAAE,IAAE,QAAM,KAAK,mBAAiB,SAASD,IAAE;AAAC,iBAAOA,MAAGA,GAAE,aAAWA,KAAE,EAAC,SAAQA,GAAC;AAAA,QAAC;AAAE,eAAO,eAAeC,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,sBAAoBA,GAAE,eAAaA,GAAE,eAAaA,GAAE,iBAAeA,GAAE,UAAQA,GAAE,gBAAcA,GAAE,SAAO;AAAO,cAAM,IAAE,EAAE,EAAE,GAAG,CAAC,GAAE,IAAE,EAAE,EAAE,GAAG,CAAC,GAAE,IAAE,EAAE,GAAG;AAAE,QAAAA,GAAE,SAAO,EAAC,QAAO,oBAAmB,6BAA4B,EAAE,QAAQ,SAAQ,8BAA6B,OAAO,SAAS,UAAQ,GAAE,GAAEA,GAAE,gBAAc,SAASD,IAAE;AAAC,iBAAM,eAAe,KAAKA,EAAC;AAAA,QAAC,GAAEC,GAAE,UAAQ,SAASD,IAAEE,IAAEE,IAAEE,IAAE;AAAC,iBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,gBAAG;AAAC,oBAAMH,KAAE,OAAM,GAAE,EAAE,SAASH,KAAE,EAAE,UAAU,IAAI,SAASE,IAAEE,EAAC,GAAE,EAAC,QAAO,OAAM,SAAQH,GAAE,OAAM,CAAC;AAAE,qBAAO,MAAME,GAAE,KAAK;AAAA,YAAC,SAAOH,IAAE;AAAC,cAAAM,GAAE,IAAIN,EAAC;AAAA,YAAC;AAAA,UAAC,EAAE;AAAA,QAAC,GAAEC,GAAE,iBAAe,SAASD,IAAEE,IAAEE,IAAE;AAAC,iBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,gBAAG;AAAC,oBAAMD,KAAE,OAAM,GAAE,EAAE,SAASH,KAAE,EAAE,UAAU,IAAI,QAAQE,EAAC,GAAE,EAAC,QAAO,OAAM,SAAQD,GAAE,OAAM,CAAC;AAAE,qBAAO,MAAME,GAAE,KAAK;AAAA,YAAC,SAAOH,IAAE;AAAC,cAAAI,GAAE,IAAIJ,EAAC;AAAA,YAAC;AAAA,UAAC,EAAE;AAAA,QAAC,GAAEC,GAAE,eAAa,SAASD,IAAEE,IAAEE,IAAEE,IAAE;AAAC,iBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,gBAAG;AAAC,oBAAMH,KAAE,OAAM,GAAE,EAAE,SAASH,KAAE,EAAE,UAAU,IAAI,IAAIE,IAAEE,EAAC,GAAE,EAAC,QAAO,OAAM,SAAQH,GAAE,OAAM,CAAC;AAAE,kBAAGE,GAAE,IAAG;AAAC,sBAAMH,KAAE,MAAMG,GAAE,KAAK;AAAE,uBAAOG,GAAE,IAAI,8BAA8BJ,EAAC,IAAGF,EAAC,GAAEA;AAAA,cAAC;AAAC,oBAAMM,GAAE,IAAI,mCAAmCJ,EAAC,KAAIC,GAAE,QAAOA,GAAE,UAAU,GAAE,IAAI,MAAM,0CAA0C;AAAA,YAAC,SAAOH,IAAE;AAAC,qBAAOM,GAAE,IAAIN,EAAC,GAAE,CAAC;AAAA,YAAC;AAAA,UAAC,EAAE;AAAA,QAAC,GAAEC,GAAE,eAAa,SAASD,IAAEE,IAAEE,IAAE;AAAC,iBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,gBAAG;AAAC,oBAAMD,KAAE,OAAM,GAAE,EAAE,SAASH,KAAE,EAAE,UAAU,IAAI,UAAS,EAAC,QAAO,QAAO,SAAQ,OAAO,OAAO,EAAC,gBAAe,mBAAkB,GAAEC,GAAE,MAAM,GAAE,MAAK,KAAK,UAAUC,EAAC,EAAC,CAAC;AAAE,kBAAGC,GAAE,GAAG,QAAOC,GAAE,IAAI,QAAQF,GAAE,WAAW,0BAA0B,IAAG,MAAMC,GAAE,KAAK,GAAG;AAAU,oBAAMC,GAAE,IAAI,yBAAyBF,GAAE,WAAW,KAAIC,GAAE,QAAOA,GAAE,UAAU,GAAE,IAAI,MAAMA,GAAE,UAAU;AAAA,YAAC,SAAOH,IAAE;AAAC,qBAAOI,GAAE,IAAIJ,EAAC,GAAE;AAAA,YAAE;AAAA,UAAC,EAAE;AAAA,QAAC,GAAEC,GAAE,sBAAoB,SAASD,IAAEE,IAAEE,IAAE;AAAC,iBAAO,EAAE,MAAK,QAAO,SAAQ,aAAW;AAAC,gBAAG;AAAC,oBAAMD,KAAE,OAAM,GAAE,EAAE,SAASH,KAAE,EAAE,UAAU,IAAI,kBAAiB,EAAC,QAAO,QAAO,SAAQ,OAAO,OAAO,EAAC,gBAAe,mBAAkB,GAAEC,GAAE,MAAM,GAAE,MAAK,KAAK,UAAUC,EAAC,EAAC,CAAC;AAAE,kBAAGC,GAAE,GAAG,QAAOC,GAAE,IAAI,wCAAwCF,GAAE,WAAW,EAAE,IAAG,MAAMC,GAAE,KAAK,MAAI;AAAG,oBAAMC,GAAE,IAAI,6CAA6CF,GAAE,WAAW,KAAIC,GAAE,QAAOA,GAAE,UAAU,GAAE,IAAI,MAAMA,GAAE,UAAU;AAAA,YAAC,SAAOH,IAAE;AAAC,qBAAOI,GAAE,IAAIJ,EAAC,GAAE;AAAA,YAAE;AAAA,UAAC,EAAE;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAACA,IAAEC,OAAI;AAAC;AAAa,eAAO,eAAeA,IAAE,cAAa,EAAC,OAAM,KAAE,CAAC,GAAEA,GAAE,MAAI,QAAOA,GAAE,MAAI,MAAK;AAAA,UAAC,YAAYD,IAAE;AAAC,iBAAK,SAAOA;AAAA,UAAC;AAAA,UAAC,OAAOA,IAAE;AAAC,iBAAK,OAAO,IAAI,OAAO,KAAG,QAAQ,IAAI,oBAAmB,GAAGA,EAAC;AAAA,UAAC;AAAA,UAAC,OAAOA,IAAE;AAAC,oBAAQ,MAAM,oBAAmB,GAAGA,EAAC;AAAA,UAAC;AAAA,QAAC;AAAA,MAAC,GAAE,KAAI,CAAAA,OAAG;AAAC;AAAa,QAAAA,GAAE,UAAQ,KAAK,MAAM,wrDAAwrD;AAAA,MAAC,EAAC,GAAE,IAAE,CAAC,IAAE,SAAS,EAAE,GAAE;AAAC,YAAI,IAAE,EAAE,CAAC;AAAE,YAAG,WAAS,EAAE,QAAO,EAAE;AAAQ,YAAI,IAAE,EAAE,CAAC,IAAE,EAAC,SAAQ,CAAC,EAAC;AAAE,eAAO,EAAE,CAAC,EAAE,KAAK,EAAE,SAAQ,GAAE,EAAE,SAAQ,CAAC,GAAE,EAAE;AAAA,MAAO,GAAE,GAAG,EAAE;AAAQ,UAAI,GAAE;AAAA,IAAC,EAAE;AAAA;AAAA;;;ACiB1klI,IAAM,WAAW;AAEjB,IAAM,aAAqC;AAAA,EACvC,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACX;AAMO,SAAS,gBACZ,QACA,QACA,OACA,IACuB;AACvB,MAAI,CAAC,OAAO,KAAM,QAAO;AACzB,MAAI,OAAO,cAAc,eAAe,EAAE,EAAG,QAAO;AAEpD,QAAM,MAAM,OAAO,cAAc,cAAc,KAAK;AACpD,MAAI,KAAK;AACT,MAAI,MAAM,MAAM;AAChB,MAAI,MAAM;AACV,MAAI,MAAM,UAAU;AAEpB,MAAI,MAAM,YAAY,WAAW,MAAM,QAAQ,GAAG;AAC9C,QAAI,MAAM,YAAY,WAAW,MAAM,QAAQ;AAAA,EACnD;AACA,UAAQ,MAAM,cAAc;AAAA,IACxB,KAAK;AACD,UAAI,MAAM,SAAS;AACnB,UAAI,MAAM,aAAa;AACvB;AAAA,IACJ,KAAK;AACD,UAAI,MAAM,SAAS;AACnB,UAAI,MAAM,aAAa;AACvB;AAAA,IACJ,KAAK;AACD,UAAI,MAAM,SAAS;AACnB;AAAA,EACR;AAEA,SAAO,aAAa,KAAK,MAAM;AAC/B,SAAO;AACX;;;ACzDA,oBAA0B;AAI1B,SAAS,0BAA0B,QAAqB;AACpD,QAAM,WAAW;AACjB,MAAI,SAAS,eAAe,QAAQ,EAAG;AACvC,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,KAAK;AACX,QAAM,cAAc;AACpB,WAAS,KAAK,YAAY,KAAK;AACnC;AAGA,SAAS,oBAAoB,QAAqB;AAC9C,MAAI,SAAS,eAAe,yBAAyB,EAAG;AACxD,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,KAAK;AACX,QAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASpB,WAAS,KAAK,YAAY,KAAK;AACnC;AAEA,SAAS,uBAAuB,QAAqB;AACjD,MAAI,SAAS,eAAe,4BAA4B,EAAG;AAC3D,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,KAAK;AACX,QAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkCpB,WAAS,KAAK,YAAY,KAAK;AACnC;AAOA,SAAS,gBAAgB,KAAc;AACnC,QAAM,WAAW;AACjB,QAAM,WAAW,SAAS,eAAe,QAAQ;AACjD,MAAI,CAAC,KAAK;AACN,cAAU,OAAO;AACjB;AAAA,EACJ;AACA,QAAM,KAAM,YAAwC,SAAS,cAAc,OAAO;AAClF,KAAG,KAAK;AACR,MAAI,GAAG,gBAAgB,IAAK,IAAG,cAAc;AAE7C,WAAS,KAAK,YAAY,EAAE;AAChC;AAGA,SAAS,eAAe,QAAgB,KAAa;AACjD,QAAM,MAAM,iBAAiB,QAAQ,GAAG;AACxC,MAAI,CAAC,IAAK;AACV,QAAM,WAAW;AACjB,MAAI,KAAK,SAAS,eAAe,QAAQ;AACzC,MAAI,CAAC,IAAI;AACL,SAAK,SAAS,cAAc,OAAO;AACnC,OAAG,KAAK;AACR,aAAS,KAAK,YAAY,EAAE;AAAA,EAChC;AACA,MAAI,GAAG,gBAAgB,IAAK,IAAG,cAAc;AACjD;AAKA,eAAsB,YAClB,WACA,UACA,WACA,SACA,MACA,SACA,MAAc,cACd,QACA,OACA,WACA,aACA,4BACA,SACa;AACb,MAAI,yBAAyB;AAC7B,MAAI,iBAAiB;AAKrB,MAAI,YAAY;AAChB,MAAI,cAAc;AAElB,QAAM,SAAS,OAAO,UAAU;AAChC,QAAM,QAAQ;AAAA,IACV,SAAkB,SAAS,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,IAKvC,aAAkB,SAAS,SAAS;AAAA,IACpC,aAAkB,SAAS,YAAY;AAAA,IACvC,oBAAoB,SAAS,SAAS;AAAA,IACtC,WAAkB,SAAS,YAAY;AAAA,IACvC,eAAkB,SAAS,YAAY;AAAA,EAC3C;AAEA,QAAM,cAAoH;AAAA,IACtH,UAAgB,EAAE,gBAAgB,UAAc,YAAY,UAAiC,YAAY,kBAAkB;AAAA,IAC3H,UAAgB,EAAE,gBAAgB,UAAc,YAAY,YAAc,SAAS,QAAU,YAAY,cAAc;AAAA,IACvH,gBAAgB,EAAE,gBAAgB,YAAc,YAAY,YAAc,SAAS,QAAU,YAAY,cAAc;AAAA,IACvH,eAAgB,EAAE,gBAAgB,cAAc,YAAY,YAAc,SAAS,QAAU,YAAY,cAAc;AAAA,IACvH,OAAgB,EAAE,gBAAgB,UAAc,YAAY,cAAc,SAAS,QAAU,YAAY,cAAc;AAAA,IACvH,aAAgB,EAAE,gBAAgB,YAAc,YAAY,cAAc,SAAS,QAAU,YAAY,cAAc;AAAA,IACvH,YAAgB,EAAE,gBAAgB,cAAc,YAAY,cAAc,SAAS,QAAU,YAAY,cAAc;AAAA,EAC3H;AACA,QAAM,MAAM,YAAY,OAAO,YAAY,QAAQ,KAAK,YAAY,QAAQ;AAG5E,QAAM,QAAQ,SAAS,cAAc,KAAK;AAC1C,QAAM,KAAK;AACX,QAAM,YAAY;AAClB,QAAM,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,oBAKN,MAAM,OAAO;AAAA,sBACX,MAAM,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUnC,QAAM,OAAO,OAAO;AACpB,MAAI,MAAM,QAAQ;AACd,UAAM,cAAc,qBAAqB,KAAK,MAAM;AAEpD,UAAM,MAAM,aAAa;AAEzB,UAAM,MAAM,YAAY,mBAAmB,WAAW;AAGtD,UAAM,UAAU,IAAI,mBAAmB;AACvC,QAAI,KAAK,IAAK,gBAAe,KAAK,QAAQ,KAAK,GAAG;AAAA,EACtD;AAGA,QAAM,SAAS,SAAS,cAAc,KAAK;AAC3C,SAAO,YAAY;AACnB,SAAO,MAAM,UAAU;AAGvB,QAAM,UAAU,SAAS,cAAc,IAAI;AAC3C,UAAQ,KAAK;AACb,UAAQ,YAAY;AAGpB,UAAQ,MAAM,UAAU,qEAAqE,MAAM,WAAW;AAC9G,UAAQ,SAAS;AACjB,QAAM,WAAW,CAAC,UAAmB;AACjC,QAAI,CAAC,MAAO;AACZ,YAAQ,cAAc;AACtB,YAAQ,SAAS;AAAA,EACrB;AACA,WAAS,SAAS,KAAK;AACvB,SAAO,YAAY,OAAO;AAG1B,QAAM,WAAW,SAAS,cAAc,QAAQ;AAChD,WAAS,KAAK;AACd,WAAS,OAAO;AAChB,WAAS,aAAa,cAAc,aAAa;AACjD,WAAS,YAAY;AAAA;AAAA;AAAA;AAAA;AAKrB,WAAS,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAUf,MAAM,WAAW;AAAA;AAAA;AAAA;AAAA;AAK3B,WAAS,eAAe,MAAM;AAC1B,aAAS,MAAM,QAAQ,MAAM;AAC7B,aAAS,MAAM,YAAY;AAAA,EAC/B;AACA,WAAS,eAAe,MAAM;AAC1B,aAAS,MAAM,QAAQ,MAAM;AAC7B,aAAS,MAAM,YAAY;AAAA,EAC/B;AACA,WAAS,UAAU,MAAM;AACrB,SAAK,iBAAiB,UAAU,EAAC,QAAQ,aAAY,CAAC;AACtD,YAAQ;AAAA,EACZ;AACA,WAAS,MAAM,OAAO;AACtB,WAAS,MAAM,aAAa;AAC5B,SAAO,YAAY,QAAQ;AAI3B,MAAI,kBAAkB,SAAS,oBAAoB;AACnD,MAAI,mBAAmB;AACvB,MAAI,eAA0C;AAE9C,QAAM,aAAa,SAAS,cAAc,KAAK;AAC/C,aAAW,KAAK;AAChB,aAAW,YAAY;AAGvB,aAAW,MAAM,UAAU;AAC3B,QAAM,eAAe,SAAS,cAAc,KAAK;AACjD,eAAa,YAAY;AACzB,eAAa,MAAM,UAAU;AAC7B,QAAM,gBAAgB,SAAS,cAAc,MAAM;AACnD,gBAAc,KAAK;AACnB,gBAAc,MAAM,UAAU;AAE9B,QAAM,kBAAkB,SAAS,cAAc,MAAM;AACrD,kBAAgB,KAAK;AACrB,kBAAgB,MAAM,UAAU,0BAA0B,MAAM,WAAW;AAC3E,QAAM,gBAAgB,SAAS,cAAc,MAAM;AACnD,gBAAc,KAAK;AACnB,gBAAc,MAAM,UAAU,0BAA0B,MAAM,SAAS;AACvE,gBAAc,YAAY,eAAe;AACzC,gBAAc,YAAY,aAAa;AACvC,QAAM,mBAAmB,SAAS,cAAc,MAAM;AACtD,mBAAiB,KAAK;AACtB,mBAAiB,cAAc;AAC/B,mBAAiB,MAAM,UAAU;AACjC,eAAa,YAAY,aAAa;AACtC,eAAa,YAAY,gBAAgB;AACzC,QAAM,gBAAgB,SAAS,cAAc,KAAK;AAClD,gBAAc,YAAY;AAC1B,gBAAc,MAAM,UAAU,2DAA2D,MAAM,aAAa;AAC5G,QAAM,cAAc,SAAS,cAAc,KAAK;AAChD,cAAY,KAAK;AACjB,cAAY,MAAM,UAAU;AAC5B,gBAAc,YAAY,WAAW;AACrC,aAAW,YAAY,YAAY;AACnC,aAAW,YAAY,aAAa;AAEpC,WAAS,eAAe,GAAmF;AACvG,UAAM,QAAQ,OAAO,EAAE,UAAU,WAAW,EAAE,QAAQ;AACtD,UAAM,WAAW,OAAO,EAAE,aAAa,WAAW,EAAE,WAAW;AAC/D,QAAI,CAAC,mBAAmB,eAAe,EAAE,aAAa,SAAS,GAAG;AAC9D,iBAAW,MAAM,UAAU;AAE3B,uBAAiB,MAAM,aAAa;AACpC;AAAA,IACJ;AACA,eAAW,MAAM,UAAU;AAE3B,qBAAiB,MAAM,aAAa;AAIpC,UAAM,UAAU,KAAK,IAAI,OAAO,KAAK,IAAI,GAAG,WAAW,CAAC,CAAC;AACzD,UAAM,MAAM,KAAK,IAAI,KAAK,KAAK,IAAI,GAAI,UAAU,QAAS,GAAG,CAAC;AAC9D,gBAAY,MAAM,QAAQ,GAAG,GAAG;AAChC,UAAM,QAAQ,KAAK,IAAI,OAAO,KAAK,IAAI,GAAG,KAAK,MAAM,QAAQ,IAAI,CAAC,CAAC;AACnE,kBAAc,MAAM,UAAU,mBAAmB,UAAU;AAC3D,QAAI,iBAAiB,cAAc;AAC/B,sBAAgB,cAAc,GAAG,KAAK,MAAM,GAAG,CAAC;AAChD,oBAAc,cAAc;AAAA,IAChC,OAAO;AACH,sBAAgB,cAAc,YAAY,KAAK;AAC/C,oBAAc,cAAc,OAAO,KAAK;AAAA,IAC5C;AACA,qBAAiB,MAAM,UAAU,EAAE,WAAW,iBAAiB;AAAA,EACnE;AAEA,4BAA0B,KAAK;AAC/B,sBAAoB,KAAK;AACzB,yBAAuB,KAAK;AAE5B,kBAAgB,SAAS,SAAS;AAElC,QAAM,mBAAmB,SAAS,cAAc,KAAK;AACrD,mBAAiB,KAAK;AAGtB,mBAAiB,YAAY;AAO7B,mBAAiB,MAAM,UAAU;AAGjC,QAAM,OAAO,SAAS,cAAc,KAAK;AACzC,OAAK,KAAK;AACV,OAAK,YAAY;AACjB,OAAK,MAAM,UAAU;AAErB,QAAM,cAAc,SAAS,cAAc,KAAK;AAChD,cAAY,KAAK;AACjB,cAAY,MAAM,UAAU;AAG5B,QAAM,YAAY,SAAS,cAAc,KAAK;AAC9C,YAAU,KAAK;AACf,YAAU,YAAY;AACtB,YAAU,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAU1B,YAAU,aAAa,QAAQ,OAAO;AACtC,YAAU,aAAa,aAAa,QAAQ;AAE5C,QAAM,YAAY,SAAS,cAAc,KAAK;AAC9C,YAAU,YAAY;AACtB,YAAU,aAAa,QAAQ,QAAQ;AACvC,YAAU,aAAa,cAAc,gBAAgB;AACrD,YAAU,YAAY;AACtB,YAAU,MAAM,UAAU;AAE1B,QAAM,YAAY,sBAAsB,QAAQ;AAChD,QAAM,WAAW,SAAS,cAAc,KAAK;AAC7C,WAAS,KAAK;AACd,WAAS,MAAM,UAAU;AAEzB,cAAY,YAAY,SAAS;AACjC,cAAY,YAAY,QAAQ;AAChC,OAAK,YAAY,WAAW;AAE5B,OAAK,YAAY,SAAS;AAG1B,QAAM,SAAS,SAAS,cAAc,KAAK;AAC3C,SAAO,KAAK;AACZ,SAAO,YAAY;AACnB,SAAO,aAAa,wBAAwB,MAAM;AAClD,SAAO,MAAM,UAAU;AAGvB,QAAM,aAAa,SAAS,cAAc,QAAQ;AAClD,aAAW,KAAK;AAChB,aAAW,YAAY;AACvB,aAAW,cAAc,SAAS,OAAO,QAAQ,KAAK,QAAQ;AAG9D,aAAW,MAAM,UAAU;AAAA;AAAA,eAEhB,MAAM,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAc1B,aAAW,eAAe,MAAM;AAC5B,eAAW,MAAM,SAAS;AAAA,EAC9B;AACA,aAAW,eAAe,MAAM;AAC5B,eAAW,MAAM,SAAS;AAAA,EAC9B;AACA,aAAW,UAAU,MAAM;AACvB,SAAK,iBAAiB,UAAU,EAAC,QAAQ,OAAM,CAAC;AAEhD,IAAC,cAAsB,OAAO;AAAA,EAClC;AAIA,QAAM,cAAc,SAAS,cAAc,QAAQ;AACnD,cAAY,KAAK;AACjB,cAAY,YAAY;AACxB,cAAY,cAAc,SAAS,QAAQ,QAAQ,MAAM,QAAQ;AACjE,cAAY,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiB5B,cAAY,UAAU,MAAM;AACxB,SAAK,iBAAiB,UAAU,EAAC,QAAQ,eAAc,CAAC;AAExD,IAAC,cAAsB,YAAY;AACnC,kBAAc;AACd,mBAAe,EAAC,UAAU,cAAc,UAAU,OAAO,cAAc,MAAK,CAAC;AAAA,EACjF;AAIA,QAAM,cAAc,SAAS,cAAc,QAAQ;AACnD,cAAY,KAAK;AACjB,cAAY,YAAY;AACxB,cAAY,cAAc,SAAS,WAAW,QAAQ,SAAS,QAAQ;AACvE,cAAY,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiB5B,cAAY,eAAe,MAAM;AAC7B,gBAAY,MAAM,SAAS;AAAA,EAC/B;AACA,cAAY,eAAe,MAAM;AAC7B,gBAAY,MAAM,SAAS;AAAA,EAC/B;AACA,cAAY,UAAU,MAAM;AACxB,SAAK,iBAAiB,UAAU,EAAC,QAAQ,WAAU,CAAC;AACpD,YAAQ;AAAA,EACZ;AAGA,QAAM,eAAe,SAAS,cAAc,QAAQ;AACpD,eAAa,KAAK;AAClB,eAAa,YAAY;AACzB,eAAa,cAAc,SAAS,SAAS,QAAQ,OAAO,QAAQ;AACpE,eAAa,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiB7B,eAAa,UAAU,MAAM;AACzB,QAAI,CAAC,wBAAwB;AACzB,WAAK,iBAAiB,UAAU,EAAC,QAAQ,cAAa,CAAC;AAGvD,MAAC,cAAsB,OAAO;AAAA,IAClC;AAAA,EACJ;AAEA,aAAW,MAAM,UAAU;AAC3B,cAAY,MAAM,UAAU;AAC5B,eAAa,MAAM,UAAU;AAC7B,cAAY,MAAM,UAAU;AAG5B,SAAO,YAAY,YAAY;AAC/B,SAAO,YAAY,UAAU;AAC7B,SAAO,YAAY,WAAW;AAC9B,SAAO,YAAY,WAAW;AAG9B,mBAAiB,YAAY,IAAI;AAEjC,SAAO,MAAM,OAAO;AACpB,mBAAiB,YAAY,MAAM;AAKnC,WAAS,cAAc,OAAkB;AAErC,eAAW,MAAM,UAAU;AAC3B,gBAAY,MAAM,UAAU;AAC5B,iBAAa,MAAM,UAAU;AAC7B,gBAAY,MAAM,UAAU;AAE5B,eAAW,MAAM,QAAQ;AACzB,gBAAY,MAAM,QAAQ;AAC1B,iBAAa,MAAM,QAAQ;AAC3B,gBAAY,MAAM,QAAQ;AAE1B,YAAQ,OAAO;AAAA,MACX,KAAK;AAED;AAAA,MACJ,KAAK;AAED,oBAAY,MAAM,UAAU;AAC5B,oBAAY,MAAM,QAAQ;AAC1B;AAAA,MACJ,KAAK;AAED,qBAAa,MAAM,UAAU;AAC7B,qBAAa,MAAM,QAAQ;AAC3B,mBAAW,KAAK;AAChB;AAAA,MACJ,KAAK;AAED,mBAAW,MAAM,UAAU;AAC3B,qBAAa,MAAM,UAAU;AAC7B,mBAAW,KAAK;AAChB;AAAA,MACJ,KAAK;AAED,oBAAY,MAAM,UAAU;AAC5B,oBAAY,MAAM,QAAQ;AAC1B,mBAAW,KAAK;AAChB;AAAA,MACJ,KAAK;AAGD,mBAAW,KAAK;AAChB;AAAA,IACR;AAAA,EACJ;AAGA,WAAS,mBAAmB;AACxB,kBAAc,YAAY,IAAI,qBAAqB,mBAAmB;AAAA,EAC1E;AAQA,MAAI,qBAAqB;AACzB,WAAS,oBAAoB;AACzB,eAAW,MAAM,UAAU;AAC3B,gBAAY,MAAM,UAAU;AAC5B,QAAI,OAAO,KAAK,cAAc,mBAAmB;AACjD,QAAI,CAAC,MAAM;AACP,aAAO,SAAS,cAAc,KAAK;AACnC,WAAK,YAAY;AACjB,WAAK,MAAM,UAAU,wDAAwD,MAAM,WAAW;AAC9F,WAAK,aAAa,MAAM,SAAS;AAAA,IACrC;AACA,SAAK,YAAY,sBAAsB;AACvC,SAAK,iBAAiB,KAAK,EAAE,QAAQ,CAAC,QAAQ;AAC1C,UAAI,MAAM,UAAU;AAAA,IACxB,CAAC;AAAA,EACL;AAGA,QAAM,YAAY,MAAM;AACxB,QAAM,YAAY,UAAU;AAC5B,QAAM,YAAY,gBAAgB;AAElC,YAAU,YAAY;AACtB,YAAU,YAAY,KAAK;AAC3B,YAAU,MAAM,UAAU;AAC1B,YAAU,MAAM,iBAAiB,IAAI;AACrC,YAAU,MAAM,aAAa,IAAI;AACjC,YAAU,MAAM,aAAa,IAAI;AACjC,MAAI,IAAI,QAAS,WAAU,MAAM,UAAU,IAAI;AAG/C,WAAS,WAAW,WAAoB;AACpC,cAAU,MAAM,UAAU,YAAY,SAAS;AAC/C,QAAI,CAAC,WAAW;AACZ,eAAS,MAAM,aAAa;AAAA,IAChC;AAEA,WAAO,MAAM,UAAU,YAAY,SAAS;AAE5C,eAAW,WAAW;AACtB,gBAAY,WAAW;AACvB,gBAAY,WAAW;AACvB,iBAAa,WAAW;AACxB,iBAAa,MAAM,UAAU,YAAY,QAAQ;AACjD,iBAAa,MAAM,SAAS,YAAY,gBAAgB;AAExD,QAAI,WAAW;AACX,oBAAc,SAAS;AAAA,IAC3B;AAAA,EACJ;AAGA,aAAW,IAAI;AAGf,MAAI,OAAO,WAAW,eAAe,OAAO,aAAa,aAAa;AAClE;AAAA,EACJ;AAIA,MAAI,eAAoB;AAExB,MAAI;AACA,QAAI,CAAC,cAAAmB,WAAiB,OAAO,cAAAA,QAAc,SAAS,YAAY;AAC5D,cAAQ,wDAAwD;AAChE,iBAAW,KAAK;AAChB;AAAA,IACJ;AACA,kBAAAA,QAAc;AAAA,MAAK;AAAA,QACf,OAAO;AAAA,QACP,KAAK,QAAQ,eAAe,SAAS;AAAA,MAAK;AAAA,IAC9C;AAEA,UAAM,EAAE,SAAS,SAAS,IAAI,oBAAoB,UAAU,MAAM,aAAa,MAAM,eAAe,MAAM,8BAA8B,IAAI;AAC5I,mBAAe,cAAAA,QAAc,KAAK,UAAU,WAAW,SAAS,QAAQ;AAexE,UAAM,kBAAwC;AAAA,MAC1C,WAAW;AAAA,MACX,aAAa;AAAA;AAAA;AAAA;AAAA,MAIb,kBAAkB;AAAA,IACtB;AACA,oBAAgB,gBAAgB,CAAC,EAAC,SAAQ,MAAM;AAE5C,UAAI;AAAA,MAUJ,QAAQ;AAAA,MAER;AAEA,YAAM,IAAI,UAAU;AACpB,UAAI,KAAK,CAAC,gBAAgB;AACtB,yBAAiB;AACjB,YAAI,EAAE,eAAgB,sBAAqB,EAAE;AAE7C,YAAI,SAAS,oBAAoB,OAAW,mBAAkB,EAAE,oBAAoB;AACpF,YAAI,EAAE,qBAAqB,OAAW,oBAAmB,EAAE,qBAAqB;AAChF,YAAI,EAAE,aAAc,gBAAe,EAAE;AACrC,YAAI,EAAE,iBAAiB;AACnB,sBAAY,MAAM,aAAa,EAAE;AACjC,2BAAiB,MAAM,aAAa,EAAE;AAAA,QAC1C;AAEA,YAAI,EAAE,oBAAoB;AACtB,gBAAM,MAAM,aAAa,EAAE;AAAA,QAC/B;AAEA,YAAI,EAAE,cAAc;AAEhB,eAAK,MAAM,iBAAiB,EAAE,iBAAiB,WAAW,WAAW;AAAA,QACzE;AAEA,YAAI,EAAE,oBAAoB;AACtB,uBAAa,MAAM,aAAa,EAAE;AAClC,uBAAa,MAAM,SAAS;AAC5B,uBAAa,MAAM,QAAQ;AAE3B,sBAAY,MAAM,aAAa,EAAE;AACjC,sBAAY,MAAM,SAAS;AAC3B,sBAAY,MAAM,QAAQ;AAE1B,sBAAY,MAAM,aAAa,EAAE;AACjC,sBAAY,MAAM,SAAS;AAC3B,sBAAY,MAAM,QAAQ;AAAA,QAC9B;AAEA,YAAI,EAAE,sBAAsB;AAExB,qBAAW,MAAM,aAAa;AAC9B,qBAAW,MAAM,QAAQ,EAAE;AAC3B,qBAAW,MAAM,SAAS;AAAA,QAC9B;AAEA,wBAAgB,OAAO,YAAY,GAAG,qBAAqB;AAE3D,YAAI,EAAE,gBAAgB,EAAE,iBAAiB,IAAI;AAEzC,iBAAO,EAAE,YAAY;AACrB,wBAAc;AACd,wBAAc,OAAO;AAAA,QACzB,OAAO;AAEH,wBAAc,mBAAmB;AAAA,QACrC;AAAA,MACJ,OAAO;AAEH,sBAAc,mBAAmB;AAAA,MACrC;AAGA,qBAAe,EAAC,UAAU,aAAa,UAAU,OAAO,aAAa,MAAK,CAAC;AAC3E,WAAK,iBAAiB,UAAU,EAAC,QAAQ,SAAQ,CAAC;AAClD,iBAAW,KAAK;AAAA,IACpB;AACA,oBAAgB,oBAAoB,MAAM;AACtC,iBAAW,IAAI;AACf,WAAK,iBAAiB,UAAU,EAAC,QAAQ,gBAAe,CAAC;AAAA,IAC7D;AACA,oBAAgB,mBAAmB,CAAC,EAAC,OAAO,WAAW,OAAO,UAAU,SAAQ,MAAM;AAGlF,YAAM,UAAU,QAAS,OAAO,UAAU,WAAW,QAAU,MAAwC,WAAW,OAAO,KAAK,IAAM;AACpI,UAAI,SAAS;AAET,mBAAW,KAAK;AAEhB,YAAI,QAAQ,YAAY,EAAE,SAAS,aAAa,GAAG;AAC/C,oBAAU,cAAc;AACxB,oBAAU,MAAM,UAAU;AAC1B,eAAK,iBAAiB,UAAU,EAAC,QAAQ,4BAA2B,CAAC;AAErE,2BAAiB;AACjB;AAAA,QACJ;AAEA,kBAAU,cAAc;AACxB,kBAAU,MAAM,UAAU;AAC1B,aAAK,iBAAiB,UAAU,EAAC,QAAQ,gBAAgB,OAAO,QAAO,CAAC;AAExE;AAAA,MACJ;AAEA,gBAAU,MAAM,UAAU;AAC1B,iBAAW,KAAK;AAChB,UAAI,WAAW;AACX,aAAK,oBAAoB,UAAU,EAAC,QAAQ,YAAW,CAAC;AACxD,iCAAyB;AACzB,0BAAkB;AAClB,sBAAc,WAAW;AACzB,uBAAe,EAAC,UAAU,OAAO,WAAW,KAAI,CAAC;AACjD;AAAA,MACJ;AACA,WAAK,iBAAiB,UAAU,EAAC,QAAQ,UAAS,CAAC;AACnD;AACA,uBAAiB;AACjB,qBAAe,EAAC,UAAU,OAAO,SAAQ,CAAC;AAAA,IAC9C;AACA,oBAAgB,cAAc,CAAC,EAAC,UAAU,OAAO,SAAQ,MAAM;AAC3D,WAAK,iBAAiB,UAAU,EAAC,QAAQ,OAAM,CAAC;AAEhD,UAAI,CAAC,MAAO,aAAY,KAAK,IAAI,GAAG,YAAY,CAAC;AACjD,uBAAiB;AAEjB,qBAAe,EAAC,UAAU,OAAO,aAAa,OAAO,SAAQ,CAAC;AAAA,IAClE;AAGA,iBAAa,SAAS,WAAW,eAAe,EAE3C,MAAM,CAAC,QAAa;AACjB,eAAS,0CAA0C,GAAG;AACtD,iBAAW,KAAK;AAAA,IACpB,CAAC;AAAA,EACT,SAAS,GAAG;AACR,aAAS,gDAAgD,CAAC;AAC1D,eAAW,KAAK;AAAA,EACpB;AACJ;","names":["e","t","i","n","r","s","o","a","l","d","u","c","p","m","h","f","g","v","y","magicfeedback"]}