@reservi/calendar 1.4.0
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.
- package/LICENSE +21 -0
- package/README.md +58 -0
- package/dist/index.cjs +21 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +1383 -0
- package/dist/index.js +17977 -0
- package/dist/index.js.map +1 -0
- package/dist/styles.css +1118 -0
- package/dist/themes.css +314 -0
- package/package.json +69 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../node_modules/.pnpm/preact@10.29.2/node_modules/preact/dist/preact.module.js","../../../node_modules/.pnpm/@bereasoftware+time-guard@2.7.2_react@19.2.7_rxjs@7.8.2_solid-js@1.9.13_svelte@5.56.3_@_72289e6487b345b6a8172974aef23d17/node_modules/@bereasoftware/time-guard/dist/core-DWPXk3rz.js","../../../node_modules/.pnpm/@bereasoftware+time-guard@2.7.2_react@19.2.7_rxjs@7.8.2_solid-js@1.9.13_svelte@5.56.3_@_72289e6487b345b6a8172974aef23d17/node_modules/@bereasoftware/time-guard/dist/locales-BUE_aq8K.js","../../../node_modules/.pnpm/@bereasoftware+time-guard@2.7.2_react@19.2.7_rxjs@7.8.2_solid-js@1.9.13_svelte@5.56.3_@_72289e6487b345b6a8172974aef23d17/node_modules/@bereasoftware/time-guard/dist/time-guard.es.js","../../../node_modules/.pnpm/@preact+signals-core@1.14.3/node_modules/@preact/signals-core/dist/signals-core.module.js","../../core/dist/index.js","../../../node_modules/.pnpm/preact@10.29.2/node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js","../../../node_modules/.pnpm/preact@10.29.2/node_modules/preact/hooks/dist/hooks.module.js","../../../node_modules/.pnpm/@preact+signals@2.9.2_preact@10.29.2/node_modules/@preact/signals/dist/signals.module.js","../../preact/dist/index.js","../../react/dist/index.js","../../../node_modules/.pnpm/@bereasoftware+nexa@1.7.0/node_modules/@bereasoftware/nexa/dist/nexa.es.js","../../core/dist/http.js"],"sourcesContent":["var n,l,u,t,i,r,o,e,f,c,a,s,h,p,v,y,d={},w=[],_=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,g=Array.isArray;function m(n,l){for(var u in l)n[u]=l[u];return n}function b(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function k(l,u,t){var i,r,o,e={};for(o in u)\"key\"==o?i=u[o]:\"ref\"==o?r=u[o]:e[o]=u[o];if(arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):t),\"function\"==typeof l&&null!=l.defaultProps)for(o in l.defaultProps)void 0===e[o]&&(e[o]=l.defaultProps[o]);return x(l,e,i,r,null)}function x(n,t,i,r,o){var e={type:n,props:t,key:i,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==o?++u:o,__i:-1,__u:0};return null==o&&null!=l.vnode&&l.vnode(e),e}function M(){return{current:null}}function S(n){return n.children}function C(n,l){this.props=n,this.context=l}function $(n,l){if(null==l)return n.__?$(n.__,n.__i+1):null;for(var u;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e)return u.__e;return\"function\"==typeof n.type?$(n):null}function I(n){if(n.__P&&n.__d){var u=n.__v,t=u.__e,i=[],r=[],o=m({},u);o.__v=u.__v+1,l.vnode&&l.vnode(o),q(n.__P,o,u,n.__n,n.__P.namespaceURI,32&u.__u?[t]:null,i,null==t?$(u):t,!!(32&u.__u),r),o.__v=u.__v,o.__.__k[o.__i]=o,D(i,o,r),u.__e=u.__=null,o.__e!=t&&P(o)}}function P(n){if(null!=(n=n.__)&&null!=n.__c)return n.__e=n.__c.base=null,n.__k.some(function(l){if(null!=l&&null!=l.__e)return n.__e=n.__c.base=l.__e}),P(n)}function A(n){(!n.__d&&(n.__d=!0)&&i.push(n)&&!H.__r++||r!=l.debounceRendering)&&((r=l.debounceRendering)||o)(H)}function H(){try{for(var n,l=1;i.length;)i.length>l&&i.sort(e),n=i.shift(),l=i.length,I(n)}finally{i.length=H.__r=0}}function L(n,l,u,t,i,r,o,e,f,c,a){var s,h,p,v,y,_,g,m=t&&t.__k||w,b=l.length;for(f=T(u,l,m,f,b),s=0;s<b;s++)null!=(p=u.__k[s])&&(h=-1!=p.__i&&m[p.__i]||d,p.__i=s,_=q(n,p,h,i,r,o,e,f,c,a),v=p.__e,p.ref&&h.ref!=p.ref&&(h.ref&&J(h.ref,null,p),a.push(p.ref,p.__c||v,p)),null==y&&null!=v&&(y=v),(g=!!(4&p.__u))||h.__k===p.__k?(f=j(p,f,n,g),g&&h.__e&&(h.__e=null)):\"function\"==typeof p.type&&void 0!==_?f=_:v&&(f=v.nextSibling),p.__u&=-7);return u.__e=y,f}function T(n,l,u,t,i){var r,o,e,f,c,a=u.length,s=a,h=0;for(n.__k=new Array(i),r=0;r<i;r++)null!=(o=l[r])&&\"boolean\"!=typeof o&&\"function\"!=typeof o?(\"string\"==typeof o||\"number\"==typeof o||\"bigint\"==typeof o||o.constructor==String?o=n.__k[r]=x(null,o,null,null,null):g(o)?o=n.__k[r]=x(S,{children:o},null,null,null):void 0===o.constructor&&o.__b>0?o=n.__k[r]=x(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):n.__k[r]=o,f=r+h,o.__=n,o.__b=n.__b+1,e=null,-1!=(c=o.__i=O(o,u,f,s))&&(s--,(e=u[c])&&(e.__u|=2)),null==e||null==e.__v?(-1==c&&(i>a?h--:i<a&&h++),\"function\"!=typeof o.type&&(o.__u|=4)):c!=f&&(c==f-1?h--:c==f+1?h++:(c>f?h--:h++,o.__u|=4))):n.__k[r]=null;if(s)for(r=0;r<a;r++)null!=(e=u[r])&&0==(2&e.__u)&&(e.__e==t&&(t=$(e)),K(e,e));return t}function j(n,l,u,t){var i,r;if(\"function\"==typeof n.type){for(i=n.__k,r=0;i&&r<i.length;r++)i[r]&&(i[r].__=n,l=j(i[r],l,u,t));return l}n.__e!=l&&(t&&(l&&n.type&&!l.parentNode&&(l=$(n)),u.insertBefore(n.__e,l||null)),l=n.__e);do{l=l&&l.nextSibling}while(null!=l&&8==l.nodeType);return l}function F(n,l){return l=l||[],null==n||\"boolean\"==typeof n||(g(n)?n.some(function(n){F(n,l)}):l.push(n)),l}function O(n,l,u,t){var i,r,o,e=n.key,f=n.type,c=l[u],a=null!=c&&0==(2&c.__u);if(null===c&&null==e||a&&e==c.key&&f==c.type)return u;if(t>(a?1:0))for(i=u-1,r=u+1;i>=0||r<l.length;)if(null!=(c=l[o=i>=0?i--:r++])&&0==(2&c.__u)&&e==c.key&&f==c.type)return o;return-1}function z(n,l,u){\"-\"==l[0]?n.setProperty(l,null==u?\"\":u):n[l]=null==u?\"\":\"number\"!=typeof u||_.test(l)?u:u+\"px\"}function N(n,l,u,t,i){var r,o;n:if(\"style\"==l)if(\"string\"==typeof u)n.style.cssText=u;else{if(\"string\"==typeof t&&(n.style.cssText=t=\"\"),t)for(l in t)u&&l in u||z(n.style,l,\"\");if(u)for(l in u)t&&u[l]==t[l]||z(n.style,l,u[l])}else if(\"o\"==l[0]&&\"n\"==l[1])r=l!=(l=l.replace(s,\"$1\")),o=l.toLowerCase(),l=o in n||\"onFocusOut\"==l||\"onFocusIn\"==l?o.slice(2):l.slice(2),n.l||(n.l={}),n.l[l+r]=u,u?t?u[a]=t[a]:(u[a]=h,n.addEventListener(l,r?v:p,r)):n.removeEventListener(l,r?v:p,r);else{if(\"http://www.w3.org/2000/svg\"==i)l=l.replace(/xlink(H|:h)/,\"h\").replace(/sName$/,\"s\");else if(\"width\"!=l&&\"height\"!=l&&\"href\"!=l&&\"list\"!=l&&\"form\"!=l&&\"tabIndex\"!=l&&\"download\"!=l&&\"rowSpan\"!=l&&\"colSpan\"!=l&&\"role\"!=l&&\"popover\"!=l&&l in n)try{n[l]=null==u?\"\":u;break n}catch(n){}\"function\"==typeof u||(null==u||!1===u&&\"-\"!=l[4]?n.removeAttribute(l):n.setAttribute(l,\"popover\"==l&&1==u?\"\":u))}}function V(n){return function(u){if(this.l){var t=this.l[u.type+n];if(null==u[c])u[c]=h++;else if(u[c]<t[a])return;return t(l.event?l.event(u):u)}}}function q(n,u,t,i,r,o,e,f,c,a){var s,h,p,v,y,d,_,k,x,M,$,I,P,A,H,T=u.type;if(void 0!==u.constructor)return null;128&t.__u&&(c=!!(32&t.__u),o=[f=u.__e=t.__e]),(s=l.__b)&&s(u);n:if(\"function\"==typeof T)try{if(k=u.props,x=T.prototype&&T.prototype.render,M=(s=T.contextType)&&i[s.__c],$=s?M?M.props.value:s.__:i,t.__c?_=(h=u.__c=t.__c).__=h.__E:(x?u.__c=h=new T(k,$):(u.__c=h=new C(k,$),h.constructor=T,h.render=Q),M&&M.sub(h),h.state||(h.state={}),h.__n=i,p=h.__d=!0,h.__h=[],h._sb=[]),x&&null==h.__s&&(h.__s=h.state),x&&null!=T.getDerivedStateFromProps&&(h.__s==h.state&&(h.__s=m({},h.__s)),m(h.__s,T.getDerivedStateFromProps(k,h.__s))),v=h.props,y=h.state,h.__v=u,p)x&&null==T.getDerivedStateFromProps&&null!=h.componentWillMount&&h.componentWillMount(),x&&null!=h.componentDidMount&&h.__h.push(h.componentDidMount);else{if(x&&null==T.getDerivedStateFromProps&&k!==v&&null!=h.componentWillReceiveProps&&h.componentWillReceiveProps(k,$),u.__v==t.__v||!h.__e&&null!=h.shouldComponentUpdate&&!1===h.shouldComponentUpdate(k,h.__s,$)){u.__v!=t.__v&&(h.props=k,h.state=h.__s,h.__d=!1),u.__e=t.__e,u.__k=t.__k,u.__k.some(function(n){n&&(n.__=u)}),w.push.apply(h.__h,h._sb),h._sb=[],h.__h.length&&e.push(h);break n}null!=h.componentWillUpdate&&h.componentWillUpdate(k,h.__s,$),x&&null!=h.componentDidUpdate&&h.__h.push(function(){h.componentDidUpdate(v,y,d)})}if(h.context=$,h.props=k,h.__P=n,h.__e=!1,I=l.__r,P=0,x)h.state=h.__s,h.__d=!1,I&&I(u),s=h.render(h.props,h.state,h.context),w.push.apply(h.__h,h._sb),h._sb=[];else do{h.__d=!1,I&&I(u),s=h.render(h.props,h.state,h.context),h.state=h.__s}while(h.__d&&++P<25);h.state=h.__s,null!=h.getChildContext&&(i=m(m({},i),h.getChildContext())),x&&!p&&null!=h.getSnapshotBeforeUpdate&&(d=h.getSnapshotBeforeUpdate(v,y)),A=null!=s&&s.type===S&&null==s.key?E(s.props.children):s,f=L(n,g(A)?A:[A],u,t,i,r,o,e,f,c,a),h.base=u.__e,u.__u&=-161,h.__h.length&&e.push(h),_&&(h.__E=h.__=null)}catch(n){if(u.__v=null,c||null!=o)if(n.then){for(u.__u|=c?160:128;f&&8==f.nodeType&&f.nextSibling;)f=f.nextSibling;o[o.indexOf(f)]=null,u.__e=f}else{for(H=o.length;H--;)b(o[H]);B(u)}else u.__e=t.__e,u.__k=t.__k,n.then||B(u);l.__e(n,u,t)}else null==o&&u.__v==t.__v?(u.__k=t.__k,u.__e=t.__e):f=u.__e=G(t.__e,u,t,i,r,o,e,c,a);return(s=l.diffed)&&s(u),128&u.__u?void 0:f}function B(n){n&&(n.__c&&(n.__c.__e=!0),n.__k&&n.__k.some(B))}function D(n,u,t){for(var i=0;i<t.length;i++)J(t[i],t[++i],t[++i]);l.__c&&l.__c(u,n),n.some(function(u){try{n=u.__h,u.__h=[],n.some(function(n){n.call(u)})}catch(n){l.__e(n,u.__v)}})}function E(n){return\"object\"!=typeof n||null==n||n.__b>0?n:g(n)?n.map(E):void 0!==n.constructor?null:m({},n)}function G(u,t,i,r,o,e,f,c,a){var s,h,p,v,y,w,_,m=i.props||d,k=t.props,x=t.type;if(\"svg\"==x?o=\"http://www.w3.org/2000/svg\":\"math\"==x?o=\"http://www.w3.org/1998/Math/MathML\":o||(o=\"http://www.w3.org/1999/xhtml\"),null!=e)for(s=0;s<e.length;s++)if((y=e[s])&&\"setAttribute\"in y==!!x&&(x?y.localName==x:3==y.nodeType)){u=y,e[s]=null;break}if(null==u){if(null==x)return document.createTextNode(k);u=document.createElementNS(o,x,k.is&&k),c&&(l.__m&&l.__m(t,e),c=!1),e=null}if(null==x)m===k||c&&u.data==k||(u.data=k);else{if(e=\"textarea\"==x&&null!=k.defaultValue?null:e&&n.call(u.childNodes),!c&&null!=e)for(m={},s=0;s<u.attributes.length;s++)m[(y=u.attributes[s]).name]=y.value;for(s in m)y=m[s],\"dangerouslySetInnerHTML\"==s?p=y:\"children\"==s||s in k||\"value\"==s&&\"defaultValue\"in k||\"checked\"==s&&\"defaultChecked\"in k||N(u,s,null,y,o);for(s in k)y=k[s],\"children\"==s?v=y:\"dangerouslySetInnerHTML\"==s?h=y:\"value\"==s?w=y:\"checked\"==s?_=y:c&&\"function\"!=typeof y||m[s]===y||N(u,s,y,m[s],o);if(h)c||p&&(h.__html==p.__html||h.__html==u.innerHTML)||(u.innerHTML=h.__html),t.__k=[];else if(p&&(u.innerHTML=\"\"),L(\"template\"==t.type?u.content:u,g(v)?v:[v],t,i,r,\"foreignObject\"==x?\"http://www.w3.org/1999/xhtml\":o,e,f,e?e[0]:i.__k&&$(i,0),c,a),null!=e)for(s=e.length;s--;)b(e[s]);c&&\"textarea\"!=x||(s=\"value\",\"progress\"==x&&null==w?u.removeAttribute(\"value\"):null!=w&&(w!==u[s]||\"progress\"==x&&!w||\"option\"==x&&w!=m[s])&&N(u,s,w,m[s],o),s=\"checked\",null!=_&&_!=u[s]&&N(u,s,_,m[s],o))}return u}function J(n,u,t){try{if(\"function\"==typeof n){var i=\"function\"==typeof n.__u;i&&n.__u(),i&&null==u||(n.__u=n(u))}else n.current=u}catch(n){l.__e(n,t)}}function K(n,u,t){var i,r;if(l.unmount&&l.unmount(n),(i=n.ref)&&(i.current&&i.current!=n.__e||J(i,null,u)),null!=(i=n.__c)){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(n){l.__e(n,u)}i.base=i.__P=null}if(i=n.__k)for(r=0;r<i.length;r++)i[r]&&K(i[r],u,t||\"function\"!=typeof n.type);t||b(n.__e),n.__c=n.__=n.__e=void 0}function Q(n,l,u){return this.constructor(n,u)}function R(u,t,i){var r,o,e,f;t==document&&(t=document.documentElement),l.__&&l.__(u,t),o=(r=\"function\"==typeof i)?null:i&&i.__k||t.__k,e=[],f=[],q(t,u=(!r&&i||t).__k=k(S,null,[u]),o||d,d,t.namespaceURI,!r&&i?[i]:o?null:t.firstChild?n.call(t.childNodes):null,e,!r&&i?i:o?o.__e:t.firstChild,r,f),D(e,u,f)}function U(n,l){R(n,l,U)}function W(l,u,t){var i,r,o,e,f=m({},l.props);for(o in l.type&&l.type.defaultProps&&(e=l.type.defaultProps),u)\"key\"==o?i=u[o]:\"ref\"==o?r=u[o]:f[o]=void 0===u[o]&&null!=e?e[o]:u[o];return arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):t),x(l.type,f,i||l.key,r||l.ref,null)}function X(n){function l(n){var u,t;return this.getChildContext||(u=new Set,(t={})[l.__c]=this,this.getChildContext=function(){return t},this.componentWillUnmount=function(){u=null},this.shouldComponentUpdate=function(n){this.props.value!=n.value&&u.forEach(function(n){n.__e=!0,A(n)})},this.sub=function(n){u.add(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u&&u.delete(n),l&&l.call(n)}}),n.children}return l.__c=\"__cC\"+y++,l.__=n,l.Provider=l.__l=(l.Consumer=function(n,l){return n.children(l)}).contextType=l,l}n=w.slice,l={__e:function(n,l,u,t){for(var i,r,o;l=l.__;)if((i=l.__c)&&!i.__)try{if((r=i.constructor)&&null!=r.getDerivedStateFromError&&(i.setState(r.getDerivedStateFromError(n)),o=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),o=i.__d),o)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&void 0===n.constructor},C.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!=this.state?this.__s:this.__s=m({},this.state),\"function\"==typeof n&&(n=n(m({},u),this.props)),n&&m(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),A(this))},C.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),A(this))},C.prototype.render=S,i=[],o=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,e=function(n,l){return n.__v.__b-l.__v.__b},H.__r=0,f=Math.random().toString(8),c=\"__d\"+f,a=\"__a\"+f,s=/(PointerCapture)$|Capture$/i,h=0,p=V(!1),v=V(!0),y=0;export{C as Component,S as Fragment,W as cloneElement,X as createContext,k as createElement,M as createRef,k as h,U as hydrate,t as isValidElement,l as options,R as render,F as toChildArray};\n//# sourceMappingURL=preact.module.js.map\n","/*! time-guard v2.7.2 | (c) 2026 Berea-Soft | MIT License | https://github.com/Berea-Soft/time-guard */\n//#region src/locales/locale.manager.ts\n/**\n* English locale data\n*/\nvar EN_LOCALE = {\n\tname: \"en\",\n\tmonths: [\n\t\t\"January\",\n\t\t\"February\",\n\t\t\"March\",\n\t\t\"April\",\n\t\t\"May\",\n\t\t\"June\",\n\t\t\"July\",\n\t\t\"August\",\n\t\t\"September\",\n\t\t\"October\",\n\t\t\"November\",\n\t\t\"December\"\n\t],\n\tmonthsShort: [\n\t\t\"Jan\",\n\t\t\"Feb\",\n\t\t\"Mar\",\n\t\t\"Apr\",\n\t\t\"May\",\n\t\t\"Jun\",\n\t\t\"Jul\",\n\t\t\"Aug\",\n\t\t\"Sep\",\n\t\t\"Oct\",\n\t\t\"Nov\",\n\t\t\"Dec\"\n\t],\n\tweekdays: [\n\t\t\"Sunday\",\n\t\t\"Monday\",\n\t\t\"Tuesday\",\n\t\t\"Wednesday\",\n\t\t\"Thursday\",\n\t\t\"Friday\",\n\t\t\"Saturday\"\n\t],\n\tweekdaysShort: [\n\t\t\"Sun\",\n\t\t\"Mon\",\n\t\t\"Tue\",\n\t\t\"Wed\",\n\t\t\"Thu\",\n\t\t\"Fri\",\n\t\t\"Sat\"\n\t],\n\tweekdaysMin: [\n\t\t\"Su\",\n\t\t\"Mo\",\n\t\t\"Tu\",\n\t\t\"We\",\n\t\t\"Th\",\n\t\t\"Fr\",\n\t\t\"Sa\"\n\t],\n\tmeridiem: {\n\t\tam: \"AM\",\n\t\tpm: \"PM\"\n\t},\n\tformats: {\n\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\tdate: \"YYYY-MM-DD\",\n\t\ttime: \"HH:mm:ss\",\n\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t}\n};\n/**\n* Spanish locale data (sample for i18n support)\n*/\nvar ES_LOCALE = {\n\tname: \"es\",\n\tmonths: [\n\t\t\"Enero\",\n\t\t\"Febrero\",\n\t\t\"Marzo\",\n\t\t\"Abril\",\n\t\t\"Mayo\",\n\t\t\"Junio\",\n\t\t\"Julio\",\n\t\t\"Agosto\",\n\t\t\"Septiembre\",\n\t\t\"Octubre\",\n\t\t\"Noviembre\",\n\t\t\"Diciembre\"\n\t],\n\tmonthsShort: [\n\t\t\"Ene\",\n\t\t\"Feb\",\n\t\t\"Mar\",\n\t\t\"Abr\",\n\t\t\"May\",\n\t\t\"Jun\",\n\t\t\"Jul\",\n\t\t\"Ago\",\n\t\t\"Sep\",\n\t\t\"Oct\",\n\t\t\"Nov\",\n\t\t\"Dic\"\n\t],\n\tweekdays: [\n\t\t\"Domingo\",\n\t\t\"Lunes\",\n\t\t\"Martes\",\n\t\t\"Miércoles\",\n\t\t\"Jueves\",\n\t\t\"Viernes\",\n\t\t\"Sábado\"\n\t],\n\tweekdaysShort: [\n\t\t\"Dom\",\n\t\t\"Lun\",\n\t\t\"Mar\",\n\t\t\"Mié\",\n\t\t\"Jue\",\n\t\t\"Vie\",\n\t\t\"Sáb\"\n\t],\n\tweekdaysMin: [\n\t\t\"Do\",\n\t\t\"Lu\",\n\t\t\"Ma\",\n\t\t\"Mi\",\n\t\t\"Ju\",\n\t\t\"Vi\",\n\t\t\"Sa\"\n\t],\n\tmeridiem: {\n\t\tam: \"AM\",\n\t\tpm: \"PM\"\n\t},\n\tformats: {\n\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\tdate: \"DD/MM/YYYY\",\n\t\ttime: \"HH:mm:ss\",\n\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t}\n};\n/**\n* Locale Manager - implements ILocaleManager\n*/\nvar LocaleManager = class LocaleManager {\n\tstatic instance;\n\tlocales = /* @__PURE__ */ new Map();\n\tcurrentLocale = \"en\";\n\t/**\n\t* Singleton pattern\n\t*/\n\tstatic getInstance() {\n\t\tif (!LocaleManager.instance) LocaleManager.instance = new LocaleManager();\n\t\treturn LocaleManager.instance;\n\t}\n\tconstructor() {\n\t\tthis.locales.set(\"en\", EN_LOCALE);\n\t\tthis.locales.set(\"es\", ES_LOCALE);\n\t}\n\t/**\n\t* Set or register a locale\n\t*/\n\tsetLocale(locale, data) {\n\t\tif (data) this.locales.set(locale.toLowerCase(), data);\n\t\tthis.currentLocale = locale.toLowerCase();\n\t}\n\t/**\n\t* Get locale information\n\t*/\n\tgetLocale(locale) {\n\t\tconst target = (locale || this.currentLocale).toLowerCase();\n\t\tconst result = this.locales.get(target);\n\t\tif (!result) return this.locales.get(\"en\") || EN_LOCALE;\n\t\treturn result;\n\t}\n\t/**\n\t* List all registered locales\n\t*/\n\tlistLocales() {\n\t\treturn Array.from(this.locales.keys());\n\t}\n\t/**\n\t* Get current locale\n\t*/\n\tgetCurrentLocale() {\n\t\treturn this.currentLocale;\n\t}\n\t/**\n\t* Load multiple locales\n\t*/\n\tloadLocales(locales) {\n\t\tObject.entries(locales).forEach(([name, data]) => {\n\t\t\tthis.locales.set(name.toLowerCase(), data);\n\t\t});\n\t}\n};\n//#endregion\n//#region src/adapters/temporal.adapter.ts\nvar temporalCache = null;\n/**\n* Get Temporal from globalThis or imported module\n*/\nfunction useTemporal() {\n\tif (temporalCache) return temporalCache;\n\tconst TemporalLoaded = globalThis.Temporal;\n\tif (!TemporalLoaded) throw new Error(\"Temporal API not loaded. Make sure @js-temporal/polyfill is imported in your app.\");\n\ttemporalCache = TemporalLoaded;\n\treturn TemporalLoaded;\n}\n/**\n* Adapter for Temporal date/time operations\n*/\nvar TemporalAdapter = class {\n\t/**\n\t* Parse various input formats to Temporal.PlainDateTime\n\t*/\n\tstatic parseToPlainDateTime(input) {\n\t\tconst Temporal = useTemporal();\n\t\tif (this.isPlainDateTime(input)) return input;\n\t\tif (this.isZonedDateTime(input)) return input.toPlainDateTime();\n\t\tif (this.isPlainDate(input)) return input.toPlainDateTime({\n\t\t\thour: 0,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0\n\t\t});\n\t\tif (this.isPlainTime(input)) return Temporal.Now.plainDateTimeISO().with(input);\n\t\tif (input !== null && typeof input === \"object\" && \"getTime\" in input && typeof input.getTime === \"function\") return this.fromDate(input);\n\t\tif (typeof input === \"number\") return this.fromUnix(input);\n\t\tif (typeof input === \"string\") return this.parseISOString(input);\n\t\tif (typeof input === \"object\" && input !== null) return this.fromObject(input);\n\t\treturn Temporal.Now.plainDateTimeISO();\n\t}\n\t/**\n\t* Convert JavaScript Date to Temporal.PlainDateTime\n\t*/\n\tstatic fromDate(date) {\n\t\tconst Temporal = useTemporal();\n\t\tconst [datePart, timePart] = date.toISOString().split(\"T\");\n\t\treturn Temporal.PlainDateTime.from(datePart + \"T\" + timePart.slice(0, -1));\n\t}\n\t/**\n\t* Convert Unix timestamp (milliseconds) to Temporal.PlainDateTime\n\t*/\n\tstatic fromUnix(timestamp) {\n\t\treturn this.fromDate(new Date(timestamp));\n\t}\n\t/**\n\t* Parse ISO string to Temporal.PlainDateTime\n\t*/\n\tstatic parseISOString(iso) {\n\t\tconst Temporal = useTemporal();\n\t\ttry {\n\t\t\tif (iso.includes(\"T\") || / \\d{2}:\\d{2}/.test(iso)) {\n\t\t\t\tconst normalized = iso.replace(\" \", \"T\");\n\t\t\t\treturn Temporal.PlainDateTime.from(normalized);\n\t\t\t}\n\t\t\treturn Temporal.PlainDate.from(iso).toPlainDateTime({ hour: 0 });\n\t\t} catch {\n\t\t\treturn Temporal.Now.plainDateTimeISO();\n\t\t}\n\t}\n\t/**\n\t* Create from object with date components\n\t*/\n\tstatic fromObject(obj) {\n\t\tconst Temporal = useTemporal();\n\t\tconst year = obj.year || Temporal.Now.plainDateISO().year;\n\t\tconst month = obj.month || 1;\n\t\tconst day = obj.day || 1;\n\t\tconst hour = obj.hour || 0;\n\t\tconst minute = obj.minute || 0;\n\t\tconst second = obj.second || 0;\n\t\tconst millisecond = obj.millisecond || 0;\n\t\treturn Temporal.PlainDateTime.from({\n\t\t\tyear: this.toFiniteInteger(year),\n\t\t\tmonth: this.toFiniteInteger(month),\n\t\t\tday: this.toFiniteInteger(day),\n\t\t\thour: this.toFiniteInteger(hour),\n\t\t\tminute: this.toFiniteInteger(minute),\n\t\t\tsecond: this.toFiniteInteger(second),\n\t\t\tmillisecond: this.toFiniteInteger(millisecond)\n\t\t});\n\t}\n\t/**\n\t* Convert Temporal.PlainDateTime to JavaScript Date\n\t*/\n\tstatic toDate(temporal) {\n\t\tconst plainDT = this.toPlainDateTime(temporal);\n\t\treturn new Date(plainDT.toString());\n\t}\n\t/**\n\t* Convert to Unix timestamp (milliseconds)\n\t*/\n\tstatic toUnix(temporal) {\n\t\tconst plainDT = this.toPlainDateTime(temporal);\n\t\treturn Date.UTC(plainDT.year, plainDT.month - 1, plainDT.day, plainDT.hour, plainDT.minute, plainDT.second, plainDT.millisecond);\n\t}\n\t/**\n\t* Convert to ISO string\n\t*/\n\tstatic toISOString(temporal) {\n\t\treturn this.toPlainDateTime(temporal).toString() + \"Z\";\n\t}\n\t/**\n\t* Ensure we have a PlainDateTime\n\t*/\n\tstatic toPlainDateTime(temporal) {\n\t\tif (this.isPlainDateTime(temporal)) return temporal;\n\t\treturn temporal.toPlainDateTime();\n\t}\n\t/**\n\t* Type guards\n\t*/\n\tstatic isPlainDateTime(obj) {\n\t\treturn obj !== null && typeof obj === \"object\" && \"year\" in obj && \"month\" in obj && \"day\" in obj && \"hour\" in obj;\n\t}\n\tstatic isZonedDateTime(obj) {\n\t\treturn obj !== null && typeof obj === \"object\" && \"timeZone\" in obj;\n\t}\n\tstatic isPlainDate(obj) {\n\t\treturn obj !== null && typeof obj === \"object\" && \"year\" in obj && \"month\" in obj && \"day\" in obj && !(\"hour\" in obj) && \"toPlainDateTime\" in obj;\n\t}\n\tstatic isPlainTime(obj) {\n\t\treturn obj !== null && typeof obj === \"object\" && \"hour\" in obj && !(\"year\" in obj);\n\t}\n\tstatic toFiniteInteger(value) {\n\t\tconst num = Number(value);\n\t\tif (!Number.isFinite(num)) throw new Error(`Temporal error: Expected finite integer, got ${value}`);\n\t\treturn Math.trunc(num);\n\t}\n\t/**\n\t* Validate that a PlainDateTime has finite integer components\n\t*/\n\tstatic validatePlainDateTime(dt) {\n\t\tfor (const field of [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"day\",\n\t\t\t\"hour\",\n\t\t\t\"minute\",\n\t\t\t\"second\",\n\t\t\t\"millisecond\"\n\t\t]) {\n\t\t\tconst value = dt[field];\n\t\t\tif (typeof value !== \"number\" || !Number.isFinite(value) || !Number.isInteger(value)) {\n\t\t\t\tif (typeof console !== \"undefined\" && typeof console.error === \"function\") console.error(\"TemporalAdapter.validatePlainDateTime: campo inválido\", field, value, dt);\n\t\t\t\tthrow new Error(`Temporal error: Expected finite integer for ${field}, got ${value}`);\n\t\t\t}\n\t\t}\n\t}\n\t/**\n\t* Get current time as PlainDateTime\n\t*/\n\tstatic now() {\n\t\treturn useTemporal().Now.plainDateTimeISO();\n\t}\n\t/**\n\t* Get current time as ZonedDateTime with timezone\n\t*/\n\tstatic nowInTimezone(timezone) {\n\t\treturn useTemporal().Now.zonedDateTimeISO(timezone);\n\t}\n\t/**\n\t* Compare two Temporal.PlainDateTime objects\n\t* Returns: -1 if dt1 < dt2, 0 if equal, 1 if dt1 > dt2\n\t* Uses ISO string comparison as fallback for polyfills that don't have Temporal.PlainDateTime.compare\n\t*/\n\tstatic compare(dt1, dt2) {\n\t\tconst Temporal = useTemporal();\n\t\tthis.validatePlainDateTime(dt1);\n\t\tthis.validatePlainDateTime(dt2);\n\t\tif (Temporal.PlainDateTime && typeof Temporal.PlainDateTime.compare === \"function\") return Temporal.PlainDateTime.compare(dt1, dt2);\n\t\tconst iso1 = dt1.toString();\n\t\tconst iso2 = dt2.toString();\n\t\tif (iso1 < iso2) return -1;\n\t\tif (iso1 > iso2) return 1;\n\t\treturn 0;\n\t}\n};\n//#endregion\n//#region src/formatters/date.formatter.ts\n/**\n* Date Formatter implementation\n*/\nvar DateFormatter = class {\n\tlocaleManager;\n\tconstructor() {\n\t\tthis.localeManager = LocaleManager.getInstance();\n\t}\n\t/**\n\t* Format date with pattern and locale\n\t*/\n\tformat(date, pattern, locale) {\n\t\tconst localeData = this.localeManager.getLocale(locale);\n\t\tconst escapedParts = [];\n\t\tlet escapedPattern = pattern.replace(/\\[([^\\]]+)\\]/g, (_match, content) => {\n\t\t\tescapedParts.push(content);\n\t\t\treturn `~${escapedParts.length - 1}~`;\n\t\t});\n\t\tescapedPattern = escapedPattern.replace(/\"([^\"]*)\"/g, (_match, content) => {\n\t\t\tescapedParts.push(content);\n\t\t\treturn `~${escapedParts.length - 1}~`;\n\t\t});\n\t\tlet result = escapedPattern.replace(/Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|SSS/g, (match) => {\n\t\t\tswitch (match) {\n\t\t\t\tcase \"YYYY\": return String(date.year).padStart(4, \"0\");\n\t\t\t\tcase \"YY\": return String(date.year).slice(-2);\n\t\t\t\tcase \"Y\": return String(date.year);\n\t\t\t\tcase \"MMMM\": return localeData.months[date.month - 1];\n\t\t\t\tcase \"MMM\": return localeData.monthsShort[date.month - 1];\n\t\t\t\tcase \"MM\": return String(date.month).padStart(2, \"0\");\n\t\t\t\tcase \"M\": return String(date.month);\n\t\t\t\tcase \"DD\": return String(date.day).padStart(2, \"0\");\n\t\t\t\tcase \"D\": return String(date.day);\n\t\t\t\tcase \"dddd\": return localeData.weekdays[date.dayOfWeek % 7];\n\t\t\t\tcase \"ddd\": return localeData.weekdaysShort[date.dayOfWeek % 7];\n\t\t\t\tcase \"dd\": return localeData.weekdaysMin[date.dayOfWeek % 7];\n\t\t\t\tcase \"d\": return String(date.dayOfWeek);\n\t\t\t\tcase \"HH\": return String(date.hour).padStart(2, \"0\");\n\t\t\t\tcase \"H\": return String(date.hour);\n\t\t\t\tcase \"hh\": return String(date.hour % 12 || 12).padStart(2, \"0\");\n\t\t\t\tcase \"h\": return String(date.hour % 12 || 12);\n\t\t\t\tcase \"mm\": return String(date.minute).padStart(2, \"0\");\n\t\t\t\tcase \"m\": return String(date.minute);\n\t\t\t\tcase \"ss\": return String(date.second).padStart(2, \"0\");\n\t\t\t\tcase \"s\": return String(date.second);\n\t\t\t\tcase \"SSS\": return String(date.millisecond).padStart(3, \"0\");\n\t\t\t\tcase \"a\":\n\t\t\t\tcase \"A\":\n\t\t\t\t\tconst meridiem = localeData.meridiem || {\n\t\t\t\t\t\tam: \"am\",\n\t\t\t\t\t\tpm: \"pm\"\n\t\t\t\t\t};\n\t\t\t\t\tconst value = date.hour >= 12 ? meridiem.pm : meridiem.am;\n\t\t\t\t\treturn match === \"a\" ? value.toLowerCase() : value.toUpperCase();\n\t\t\t\tdefault: return match;\n\t\t\t}\n\t\t});\n\t\tescapedParts.forEach((content, index) => {\n\t\t\tresult = result.replace(`~${index}~`, content);\n\t\t});\n\t\treturn result;\n\t}\n\t/**\n\t* Get format pattern for preset\n\t*/\n\tgetPreset(preset) {\n\t\tconst presets = {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY-MM-DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\",\n\t\t\trfc3339: \"YYYY-MM-DDTHH:mm:ssZ\",\n\t\t\tutc: \"YYYY-MM-DDTHH:mm:ss[Z]\"\n\t\t};\n\t\treturn presets[preset] || presets.iso;\n\t}\n\t/**\n\t* Format with preset\n\t*/\n\tformatPreset(date, preset, locale) {\n\t\tconst pattern = this.getPreset(preset);\n\t\treturn this.format(date, pattern, locale);\n\t}\n};\n//#endregion\n//#region src/utils/duration-locale.ts\n/**\n* Shared locale utilities for duration formatting\n* Extracted from DiffResult and DurationResult to avoid duplication\n*/\n/**\n* Duration unit labels for different locales\n* Format: [singular, plural]\n*/\nvar DURATION_UNIT_LABELS = {\n\ten: {\n\t\tyear: [\"year\", \"years\"],\n\t\tmonth: [\"month\", \"months\"],\n\t\tweek: [\"week\", \"weeks\"],\n\t\tday: [\"day\", \"days\"],\n\t\thour: [\"hour\", \"hours\"],\n\t\tminute: [\"minute\", \"minutes\"],\n\t\tsecond: [\"second\", \"seconds\"],\n\t\tmillisecond: [\"millisecond\", \"milliseconds\"]\n\t},\n\tes: {\n\t\tyear: [\"año\", \"años\"],\n\t\tmonth: [\"mes\", \"meses\"],\n\t\tweek: [\"semana\", \"semanas\"],\n\t\tday: [\"día\", \"días\"],\n\t\thour: [\"hora\", \"horas\"],\n\t\tminute: [\"minuto\", \"minutos\"],\n\t\tsecond: [\"segundo\", \"segundos\"],\n\t\tmillisecond: [\"milisegundo\", \"milisegundos\"]\n\t},\n\tfr: {\n\t\tyear: [\"année\", \"années\"],\n\t\tmonth: [\"mois\", \"mois\"],\n\t\tweek: [\"semaine\", \"semaines\"],\n\t\tday: [\"jour\", \"jours\"],\n\t\thour: [\"heure\", \"heures\"],\n\t\tminute: [\"minute\", \"minutes\"],\n\t\tsecond: [\"seconde\", \"secondes\"],\n\t\tmillisecond: [\"milliseconde\", \"millisecondes\"]\n\t}\n};\n/**\n* Conjunction words for joining duration parts\n*/\nvar CONJUNCTION_LABELS = {\n\ten: \"and\",\n\tes: \"y\",\n\tfr: \"et\",\n\tde: \"und\",\n\tit: \"e\",\n\tpt: \"e\"\n};\n/**\n* Get duration unit label for a specific locale\n*/\nfunction getDurationUnitLabel(unit, locale, value) {\n\treturn ((DURATION_UNIT_LABELS[locale] || DURATION_UNIT_LABELS.en)[unit] || [unit, unit + \"s\"])[value === 1 ? 0 : 1];\n}\n/**\n* Get conjunction word for a specific locale\n*/\nfunction getConjunctionLabel(locale) {\n\treturn CONJUNCTION_LABELS[locale] || \"and\";\n}\n/**\n* Join formatted duration parts with locale-appropriate conjunctions\n*/\nfunction joinDurationParts(parts, locale) {\n\tif (parts.length === 0) return \"\";\n\tif (parts.length === 1) return parts[0];\n\tconst conjunction = getConjunctionLabel(locale);\n\tif (parts.length === 2) return `${parts[0]} ${conjunction} ${parts[1]}`;\n\treturn parts.slice(0, -1).join(\", \") + ` ${conjunction} ${parts[parts.length - 1]}`;\n}\n/**\n* Format a zero duration for display\n*/\nfunction formatZeroDuration(locale) {\n\treturn {\n\t\ten: \"0 seconds\",\n\t\tes: \"0 segundos\",\n\t\tfr: \"0 secondes\"\n\t}[locale] || \"0 seconds\";\n}\n//#endregion\n//#region src/calendars/calendar.manager.ts\n/**\n* Gregorian Calendar System (ISO 8601 default)\n*/\nvar GregorianCalendar = class {\n\tid = \"gregory\";\n\tname = \"Gregorian Calendar\";\n\tlocale = \"en\";\n\tmonthNames = [\n\t\t\"January\",\n\t\t\"February\",\n\t\t\"March\",\n\t\t\"April\",\n\t\t\"May\",\n\t\t\"June\",\n\t\t\"July\",\n\t\t\"August\",\n\t\t\"September\",\n\t\t\"October\",\n\t\t\"November\",\n\t\t\"December\"\n\t];\n\tmonthNamesShort = [\n\t\t\"Jan\",\n\t\t\"Feb\",\n\t\t\"Mar\",\n\t\t\"Apr\",\n\t\t\"May\",\n\t\t\"Jun\",\n\t\t\"Jul\",\n\t\t\"Aug\",\n\t\t\"Sep\",\n\t\t\"Oct\",\n\t\t\"Nov\",\n\t\t\"Dec\"\n\t];\n\tweekdayNames = [\n\t\t\"Sunday\",\n\t\t\"Monday\",\n\t\t\"Tuesday\",\n\t\t\"Wednesday\",\n\t\t\"Thursday\",\n\t\t\"Friday\",\n\t\t\"Saturday\"\n\t];\n\tweekdayNamesShort = [\n\t\t\"Sun\",\n\t\t\"Mon\",\n\t\t\"Tue\",\n\t\t\"Wed\",\n\t\t\"Thu\",\n\t\t\"Fri\",\n\t\t\"Sat\"\n\t];\n\tgetMonthName(month, short = false) {\n\t\treturn (short ? this.monthNamesShort : this.monthNames)[Math.max(0, Math.min(11, month - 1))];\n\t}\n\tgetWeekdayName(day, short = false) {\n\t\treturn (short ? this.weekdayNamesShort : this.weekdayNames)[Math.max(0, Math.min(6, day - 1))];\n\t}\n\tisLeapYear(year) {\n\t\treturn year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;\n\t}\n\tdaysInMonth(year, month) {\n\t\tconst daysPerMonth = [\n\t\t\t31,\n\t\t\t28,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31\n\t\t];\n\t\tif (month === 2 && this.isLeapYear(year)) return 29;\n\t\treturn daysPerMonth[Math.max(0, Math.min(11, month - 1))];\n\t}\n\tdaysInYear(year) {\n\t\treturn this.isLeapYear(year) ? 366 : 365;\n\t}\n};\n/**\n* Calendar Manager - Singleton for managing calendar systems\n*/\nvar CalendarManager = class CalendarManager {\n\tstatic instance;\n\tcalendars = /* @__PURE__ */ new Map();\n\tdefaultCalendar = \"gregory\";\n\tconstructor() {\n\t\tthis.register(new GregorianCalendar());\n\t}\n\t/**\n\t* Get singleton instance\n\t*/\n\tstatic getInstance() {\n\t\tif (!CalendarManager.instance) CalendarManager.instance = new CalendarManager();\n\t\treturn CalendarManager.instance;\n\t}\n\t/**\n\t* Register a new calendar system\n\t*/\n\tregister(calendar) {\n\t\tthis.calendars.set(calendar.id, calendar);\n\t}\n\t/**\n\t* Get calendar by ID\n\t*/\n\tget(id) {\n\t\treturn this.calendars.get(id);\n\t}\n\t/**\n\t* List all available calendars\n\t*/\n\tlist() {\n\t\treturn Array.from(this.calendars.keys());\n\t}\n\t/**\n\t* Set default calendar\n\t*/\n\tsetDefault(id) {\n\t\tif (this.calendars.has(id)) this.defaultCalendar = id;\n\t}\n\t/**\n\t* Get default calendar\n\t*/\n\tgetDefault() {\n\t\tconst calendar = this.calendars.get(this.defaultCalendar);\n\t\tif (!calendar) throw new Error(`Default calendar '${this.defaultCalendar}' not found`);\n\t\treturn calendar;\n\t}\n};\nvar calendarManager = CalendarManager.getInstance();\n//#endregion\n//#region src/plugins/manager.ts\n/**\n* Plugin Manager - handles plugin registration and initialization\n* Uses Singleton pattern to ensure single instance across application\n*/\nvar PluginManager = class PluginManager {\n\tstatic instance;\n\tplugins = /* @__PURE__ */ new Map();\n\t/**\n\t* Get singleton instance\n\t*/\n\tstatic getInstance() {\n\t\tif (!PluginManager.instance) PluginManager.instance = new PluginManager();\n\t\treturn PluginManager.instance;\n\t}\n\t/**\n\t* Register a plugin\n\t* @param plugin - The plugin to register\n\t* @param timeGuardClass - Reference to TimeGuard class\n\t* @param config - Optional plugin configuration\n\t*/\n\tstatic use(plugin, timeGuardClass, config) {\n\t\tPluginManager.getInstance().register(plugin, timeGuardClass, config);\n\t}\n\t/**\n\t* Register multiple plugins at once\n\t* @param plugins - Array of plugins to register\n\t* @param timeGuardClass - Reference to TimeGuard class\n\t* @param config - Optional plugin configuration\n\t*/\n\tstatic useMultiple(plugins, timeGuardClass, config) {\n\t\tconst manager = PluginManager.getInstance();\n\t\tplugins.forEach((plugin) => manager.register(plugin, timeGuardClass, config));\n\t}\n\t/**\n\t* Get registered plugin by name\n\t* @param name - Plugin name\n\t* @returns Plugin instance or undefined\n\t*/\n\tstatic getPlugin(name) {\n\t\treturn PluginManager.getInstance().plugins.get(name);\n\t}\n\t/**\n\t* Check if plugin is registered\n\t* @param name - Plugin name\n\t* @returns True if plugin is registered\n\t*/\n\tstatic hasPlugin(name) {\n\t\treturn PluginManager.getInstance().plugins.has(name);\n\t}\n\t/**\n\t* Get all registered plugins\n\t* @returns Array of registered plugin names\n\t*/\n\tstatic listPlugins() {\n\t\tconst manager = PluginManager.getInstance();\n\t\treturn Array.from(manager.plugins.keys());\n\t}\n\t/**\n\t* Unregister a plugin\n\t* @param name - Plugin name\n\t*/\n\tstatic unuse(name) {\n\t\treturn PluginManager.getInstance().plugins.delete(name);\n\t}\n\t/**\n\t* Clear all plugins\n\t*/\n\tstatic clear() {\n\t\tPluginManager.getInstance().plugins.clear();\n\t}\n\t/**\n\t* Internal register method\n\t*/\n\tregister(plugin, timeGuardClass, config) {\n\t\tif (this.plugins.has(plugin.name)) {\n\t\t\tconsole.warn(`Plugin \"${plugin.name}\" is already registered. Skipping...`);\n\t\t\treturn;\n\t\t}\n\t\ttry {\n\t\t\tplugin.install(timeGuardClass, config);\n\t\t\tthis.plugins.set(plugin.name, plugin);\n\t\t\tif (process.env.NODE_ENV !== \"production\") console.warn(`Plugin \"${plugin.name}\" v${plugin.version} registered successfully`);\n\t\t} catch (error) {\n\t\t\tconsole.error(`Failed to register plugin \"${plugin.name}\":`, error);\n\t\t\tthrow new Error(`Failed to register plugin \"${plugin.name}\": ${error instanceof Error ? error.message : String(error)}`);\n\t\t}\n\t}\n};\n//#endregion\n//#region src/core.ts\n/**\n* TimeGuard - Modern date/time library using Temporal API\n* Core Implementation (zero-dependency, polyfill-erased type-space)\n*\n* @author Berea-Soft\n* @license MIT\n*/\nvar MS_PER_SECOND = 1e3;\nvar MS_PER_MINUTE = MS_PER_SECOND * 60;\nvar MS_PER_HOUR = MS_PER_MINUTE * 60;\nvar MS_PER_DAY = MS_PER_HOUR * 24;\nvar MS_PER_WEEK = MS_PER_DAY * 7;\nvar DAYS_PER_YEAR = 365.25;\nvar MS_PER_MONTH = DAYS_PER_YEAR / 12 * MS_PER_DAY;\nvar MS_PER_YEAR = DAYS_PER_YEAR * MS_PER_DAY;\nvar ZERO_DIFF_DAYS = \" days\";\n/**\n* Calculate total milliseconds from duration parts using hoisted constants\n*/\nfunction calculateTotalMs(duration) {\n\treturn (duration.years || 0) * MS_PER_YEAR + (duration.months || 0) * MS_PER_MONTH + (duration.weeks || 0) * MS_PER_WEEK + (duration.days || 0) * MS_PER_DAY + (duration.hours || 0) * MS_PER_HOUR + (duration.minutes || 0) * MS_PER_MINUTE + (duration.seconds || 0) * MS_PER_SECOND + (duration.milliseconds || 0);\n}\n/**\n* Diff result object that allows chaining with .as()\n*\n* Supports two modes:\n* - 'exact': Returns precise time differences\n* - 'calendar': Returns calendar-aware breakdown\n*/\nvar DiffResult = class {\n\t_value;\n\t_tg1;\n\t_tg2;\n\t_mode;\n\t_breakdownData;\n\t_locale;\n\tconstructor(value, tg1, tg2, mode = \"exact\", breakdownData, locale) {\n\t\tthis._value = value;\n\t\tthis._tg1 = tg1;\n\t\tthis._tg2 = tg2;\n\t\tthis._mode = mode;\n\t\tthis._breakdownData = breakdownData || null;\n\t\tthis._locale = locale || \"en\";\n\t}\n\tas(unit) {\n\t\treturn this._tg1.diff(this._tg2, unit);\n\t}\n\tbreakdown() {\n\t\treturn this._breakdownData;\n\t}\n\tformat(locale) {\n\t\tconst l = locale || this._locale;\n\t\tif (!this._breakdownData) return `${Math.abs(this._tg1.diff(this._tg2, \"day\"))}${ZERO_DIFF_DAYS}`;\n\t\tconst parts = [];\n\t\tconst bd = this._breakdownData;\n\t\tif (bd.years !== 0) parts.push(`${bd.years} ${getDurationUnitLabel(\"year\", l, bd.years)}`);\n\t\tif (bd.months !== 0) parts.push(`${bd.months} ${getDurationUnitLabel(\"month\", l, bd.months)}`);\n\t\tif (bd.weeks !== 0) parts.push(`${bd.weeks} ${getDurationUnitLabel(\"week\", l, bd.weeks)}`);\n\t\tif (bd.days !== 0) parts.push(`${bd.days} ${getDurationUnitLabel(\"day\", l, bd.days)}`);\n\t\tif (bd.hours !== 0) parts.push(`${bd.hours} ${getDurationUnitLabel(\"hour\", l, bd.hours)}`);\n\t\tif (bd.minutes !== 0) parts.push(`${bd.minutes} ${getDurationUnitLabel(\"minute\", l, bd.minutes)}`);\n\t\tif (bd.seconds !== 0) parts.push(`${bd.seconds} ${getDurationUnitLabel(\"second\", l, bd.seconds)}`);\n\t\tif (parts.length === 0) return formatZeroDuration(l);\n\t\treturn joinDurationParts(parts, l);\n\t}\n\tgetMode() {\n\t\treturn this._mode;\n\t}\n\tvalueOf() {\n\t\treturn this._value;\n\t}\n\ttoString() {\n\t\tif (this._mode === \"calendar\" && this._breakdownData) return this.format();\n\t\treturn this._value.toString();\n\t}\n\ttoJSON() {\n\t\treturn this._value;\n\t}\n};\n/**\n* DurationResult class - Represents a duration breakdown with humanize support\n* Returned by until(), since(), and between() methods\n*/\nvar DurationResult = class {\n\tyears;\n\tmonths;\n\tweeks;\n\tdays;\n\thours;\n\tminutes;\n\tseconds;\n\tmilliseconds;\n\t_locale;\n\t_startDate;\n\t_endDate;\n\t_steps = [];\n\t_mode = \"exact\";\n\t_leapYearFlags = [];\n\t_calculationTimeMs = 0;\n\tconstructor(parts, locale = \"en\", metadata) {\n\t\tthis.years = parts.years;\n\t\tthis.months = parts.months;\n\t\tthis.weeks = parts.weeks;\n\t\tthis.days = parts.days;\n\t\tthis.hours = parts.hours;\n\t\tthis.minutes = parts.minutes;\n\t\tthis.seconds = parts.seconds;\n\t\tthis.milliseconds = parts.milliseconds;\n\t\tthis._locale = locale;\n\t\tif (metadata) {\n\t\t\tthis._startDate = metadata.startDate;\n\t\t\tthis._endDate = metadata.endDate;\n\t\t\tthis._steps = metadata.steps || [];\n\t\t\tthis._mode = metadata.mode || \"exact\";\n\t\t\tthis._leapYearFlags = metadata.leapYearFlags || [];\n\t\t\tthis._calculationTimeMs = metadata.calculationTimeMs || 0;\n\t\t}\n\t}\n\thumanize(options) {\n\t\tconst locale = options?.locale || this._locale;\n\t\tconst fullBreakdown = options?.fullBreakdown ?? false;\n\t\tconst numeric = options?.numeric ?? \"always\";\n\t\tconst nonZeroParts = [\n\t\t\t{\n\t\t\t\tunit: \"year\",\n\t\t\t\tvalue: this.years\n\t\t\t},\n\t\t\t{\n\t\t\t\tunit: \"month\",\n\t\t\t\tvalue: this.months\n\t\t\t},\n\t\t\t{\n\t\t\t\tunit: \"week\",\n\t\t\t\tvalue: this.weeks\n\t\t\t},\n\t\t\t{\n\t\t\t\tunit: \"day\",\n\t\t\t\tvalue: this.days\n\t\t\t},\n\t\t\t{\n\t\t\t\tunit: \"hour\",\n\t\t\t\tvalue: this.hours\n\t\t\t},\n\t\t\t{\n\t\t\t\tunit: \"minute\",\n\t\t\t\tvalue: this.minutes\n\t\t\t},\n\t\t\t{\n\t\t\t\tunit: \"second\",\n\t\t\t\tvalue: this.seconds\n\t\t\t},\n\t\t\t{\n\t\t\t\tunit: \"millisecond\",\n\t\t\t\tvalue: this.milliseconds\n\t\t\t}\n\t\t].filter((p) => p.value > 0);\n\t\tif (nonZeroParts.length === 0) return \"0 seconds\";\n\t\tif (!fullBreakdown || nonZeroParts.length === 1) {\n\t\t\tconst largest = nonZeroParts[0];\n\t\t\ttry {\n\t\t\t\treturn new Intl.RelativeTimeFormat(locale, {\n\t\t\t\t\tnumeric,\n\t\t\t\t\tstyle: \"long\"\n\t\t\t\t}).format(largest.value, largest.unit);\n\t\t\t} catch {\n\t\t\t\treturn `${largest.value} ${this.pluralizeUnit(largest.unit, largest.value, locale)}`;\n\t\t\t}\n\t\t}\n\t\treturn joinDurationParts(nonZeroParts.map((p) => {\n\t\t\tconst label = getDurationUnitLabel(p.unit, locale, p.value);\n\t\t\treturn `${p.value} ${label}`;\n\t\t}), locale);\n\t}\n\ttotal(unit) {\n\t\tlet totalMs = 0;\n\t\ttotalMs += this.years * MS_PER_YEAR;\n\t\ttotalMs += this.months * MS_PER_MONTH;\n\t\ttotalMs += this.weeks * MS_PER_WEEK;\n\t\ttotalMs += this.days * MS_PER_DAY;\n\t\ttotalMs += this.hours * MS_PER_HOUR;\n\t\ttotalMs += this.minutes * MS_PER_MINUTE;\n\t\ttotalMs += this.seconds * MS_PER_SECOND;\n\t\ttotalMs += this.milliseconds;\n\t\tswitch (unit) {\n\t\t\tcase \"millisecond\": return totalMs;\n\t\t\tcase \"second\": return totalMs / MS_PER_SECOND;\n\t\t\tcase \"minute\": return totalMs / MS_PER_MINUTE;\n\t\t\tcase \"hour\": return totalMs / MS_PER_HOUR;\n\t\t\tcase \"day\": return totalMs / MS_PER_DAY;\n\t\t\tcase \"week\": return totalMs / MS_PER_WEEK;\n\t\t\tcase \"month\": return totalMs / MS_PER_MONTH;\n\t\t\tcase \"year\": return totalMs / MS_PER_YEAR;\n\t\t\tcase \"microsecond\": return totalMs * 1e3;\n\t\t\tcase \"nanosecond\": return totalMs * 1e6;\n\t\t\tdefault: throw new Error(`Unsupported unit: ${unit}`);\n\t\t}\n\t}\n\ttoString() {\n\t\treturn this.humanize({ fullBreakdown: true });\n\t}\n\ttoJSON() {\n\t\treturn {\n\t\t\tyears: this.years,\n\t\t\tmonths: this.months,\n\t\t\tweeks: this.weeks,\n\t\t\tdays: this.days,\n\t\t\thours: this.hours,\n\t\t\tminutes: this.minutes,\n\t\t\tseconds: this.seconds,\n\t\t\tmilliseconds: this.milliseconds\n\t\t};\n\t}\n\texplain() {\n\t\tlet steps = [...this._steps];\n\t\tif (steps.length === 0) steps = this.generateExplanationSteps();\n\t\tconst explanationParts = [];\n\t\tif (this._startDate && this._endDate) explanationParts.push(`Calculated duration from ${this._startDate} to ${this._endDate}`);\n\t\tif (this._leapYearFlags && this._leapYearFlags.length > 0) {\n\t\t\tconst leapYears = this._leapYearFlags.filter((f) => f.isLeap).map((f) => f.year);\n\t\t\tif (leapYears.length > 0) explanationParts.push(`Leap year(s) detected: ${leapYears.join(\", \")}`);\n\t\t}\n\t\texplanationParts.push(`Breakdown: ${this.years} year(s), ${this.months} month(s), ${this.days} day(s)`);\n\t\texplanationParts.push(`Mode: ${this._mode} calculation`);\n\t\treturn {\n\t\t\tinput: this._startDate && this._endDate ? [this._startDate, this._endDate] : [],\n\t\t\tsteps,\n\t\t\tbreakdown: {\n\t\t\t\tyears: this.years,\n\t\t\t\tmonths: this.months,\n\t\t\t\tweeks: this.weeks,\n\t\t\t\tdays: this.days,\n\t\t\t\thours: this.hours,\n\t\t\t\tminutes: this.minutes,\n\t\t\t\tseconds: this.seconds,\n\t\t\t\tmilliseconds: this.milliseconds\n\t\t\t},\n\t\t\tmode: this._mode,\n\t\t\texplanation: explanationParts.join(\". \"),\n\t\t\tlocale: this._locale,\n\t\t\tleapYearFlags: this._leapYearFlags.length > 0 ? this._leapYearFlags : void 0,\n\t\t\tmetadata: {\n\t\t\t\tcalculationTimeMs: this._calculationTimeMs,\n\t\t\t\tprecision: \"day\"\n\t\t\t}\n\t\t};\n\t}\n\tgenerateExplanationSteps() {\n\t\tconst steps = [];\n\t\tif (this._startDate && this._endDate) steps.push(`Input: ${this._startDate} to ${this._endDate}`);\n\t\telse steps.push(\"Duration calculation started\");\n\t\tif (this.years > 0) steps.push(`Years: ${this.years}`);\n\t\tif (this.months > 0) steps.push(`Months: ${this.months}`);\n\t\tif (this.weeks > 0) steps.push(`Weeks: ${this.weeks}`);\n\t\tif (this.days > 0) steps.push(`Days: ${this.days}`);\n\t\tif (this.hours > 0) steps.push(`Hours: ${this.hours}`);\n\t\tif (this.minutes > 0) steps.push(`Minutes: ${this.minutes}`);\n\t\tif (this.seconds > 0) steps.push(`Seconds: ${this.seconds}`);\n\t\tif (this.milliseconds > 0) steps.push(`Milliseconds: ${this.milliseconds}`);\n\t\tif (this._leapYearFlags && this._leapYearFlags.length > 0) {\n\t\t\tfor (const flag of this._leapYearFlags) if (flag.isLeap) steps.push(`${flag.year} is a leap year (February has ${flag.daysInFebruary} days)`);\n\t\t}\n\t\tconst totalParts = [\n\t\t\tthis.years > 0 ? `${this.years}y` : \"\",\n\t\t\tthis.months > 0 ? `${this.months}m` : \"\",\n\t\t\tthis.days > 0 ? `${this.days}d` : \"\",\n\t\t\tthis.hours > 0 ? `${this.hours}h` : \"\",\n\t\t\tthis.minutes > 0 ? `${this.minutes}min` : \"\",\n\t\t\tthis.seconds > 0 ? `${this.seconds}s` : \"\"\n\t\t].filter((p) => p.length > 0).join(\" \");\n\t\tsteps.push(`Total: ${totalParts || \"0\"}`);\n\t\treturn steps;\n\t}\n\tpluralizeUnit(unit, count, locale) {\n\t\treturn getDurationUnitLabel(unit, locale, count);\n\t}\n};\n/**\n* TimeRange - Fluent API for date range operations\n*\n* @example\n* TimeGuard.range('2024-01-15', '2024-03-20')\n* .toDuration().humanize() // \"2 months and 5 days\"\n* .inMonths() // 2.1355 (precise decimal)\n*/\nvar TimeRange = class TimeRange {\n\t_start;\n\t_end;\n\tconstructor(start, end) {\n\t\tthis._start = start;\n\t\tthis._end = end;\n\t}\n\tget start() {\n\t\treturn this._start;\n\t}\n\tget end() {\n\t\treturn this._end;\n\t}\n\tgetOrdered() {\n\t\tconst t1 = TemporalAdapter.toPlainDateTime(this._start.toTemporal());\n\t\tconst t2 = TemporalAdapter.toPlainDateTime(this._end.toTemporal());\n\t\treturn TemporalAdapter.compare(t1, t2) <= 0 ? [t1, t2] : [t2, t1];\n\t}\n\ttoDuration() {\n\t\treturn TimeGuard.between(this._start, this._end);\n\t}\n\tinMonths() {\n\t\treturn this.toDuration().total(\"month\");\n\t}\n\thumanize(options) {\n\t\treturn this.toDuration().humanize(options);\n\t}\n\tin(unit) {\n\t\treturn this.toDuration().total(unit);\n\t}\n\tcontains(date) {\n\t\tconst tg = date instanceof TimeGuard ? date : new TimeGuard(date);\n\t\tconst t = TemporalAdapter.toPlainDateTime(tg.toTemporal());\n\t\tconst [startT, endT] = this.getOrdered();\n\t\treturn TemporalAdapter.compare(t, startT) >= 0 && TemporalAdapter.compare(t, endT) <= 0;\n\t}\n\toverlaps(other) {\n\t\tconst [s1, e1] = this.getOrdered();\n\t\tconst [s2, e2] = other.getOrdered();\n\t\treturn TemporalAdapter.compare(s1, e2) <= 0 && TemporalAdapter.compare(s2, e1) <= 0;\n\t}\n\tintersect(other) {\n\t\tif (!this.overlaps(other)) return null;\n\t\tconst [s1, e1] = this.getOrdered();\n\t\tconst [s2, e2] = other.getOrdered();\n\t\tconst startT = TemporalAdapter.compare(s1, s2) >= 0 ? s1 : s2;\n\t\tconst endT = TemporalAdapter.compare(e1, e2) <= 0 ? e1 : e2;\n\t\treturn new TimeRange(TimeGuard.fromTemporal(startT, { locale: this._start.locale() }), TimeGuard.fromTemporal(endT, { locale: this._end.locale() }));\n\t}\n\tunion(other) {\n\t\tconst [s1, e1] = this.getOrdered();\n\t\tconst [s2, e2] = other.getOrdered();\n\t\tconst startT = TemporalAdapter.compare(s1, s2) <= 0 ? s1 : s2;\n\t\tconst endT = TemporalAdapter.compare(e1, e2) >= 0 ? e1 : e2;\n\t\treturn new TimeRange(TimeGuard.fromTemporal(startT, { locale: this._start.locale() }), TimeGuard.fromTemporal(endT, { locale: this._end.locale() }));\n\t}\n};\n/**\n* TimeGuard implementation - Main facade class\n*/\nvar TimeGuard = class TimeGuard {\n\ttemporal;\n\tconfig;\n\tformatterInstance;\n\tstatic holidays = /* @__PURE__ */ new Set();\n\tstatic registerHolidays(dates) {\n\t\tdates.forEach((d) => {\n\t\t\ttry {\n\t\t\t\tconst tg = new TimeGuard(d);\n\t\t\t\tthis.holidays.add(tg.format(\"YYYY-MM-DD\"));\n\t\t\t} catch {}\n\t\t});\n\t}\n\tstatic clearHolidays() {\n\t\tthis.holidays.clear();\n\t}\n\tstatic getRegisteredHolidays() {\n\t\treturn Array.from(this.holidays).sort();\n\t}\n\tstatic ZERO_DURATION = {\n\t\tyears: 0,\n\t\tmonths: 0,\n\t\tweeks: 0,\n\t\tdays: 0,\n\t\thours: 0,\n\t\tminutes: 0,\n\t\tseconds: 0,\n\t\tmilliseconds: 0\n\t};\n\tstatic isLeapYearValue(year) {\n\t\treturn year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;\n\t}\n\tstatic toDurationParts(duration) {\n\t\treturn {\n\t\t\tyears: Math.floor(duration.years || 0),\n\t\t\tmonths: Math.floor(duration.months || 0),\n\t\t\tweeks: Math.floor(duration.weeks || 0),\n\t\t\tdays: Math.floor(duration.days || 0),\n\t\t\thours: Math.floor(duration.hours || 0),\n\t\t\tminutes: Math.floor(duration.minutes || 0),\n\t\t\tseconds: Math.floor(duration.seconds || 0),\n\t\t\tmilliseconds: Math.floor(duration.milliseconds || 0)\n\t\t};\n\t}\n\tconstructor(input, config) {\n\t\tthis.formatterInstance = new DateFormatter();\n\t\tthis.config = {\n\t\t\tlocale: config?.locale || \"en\",\n\t\t\ttimezone: config?.timezone || \"UTC\",\n\t\t\tstrict: config?.strict ?? false\n\t\t};\n\t\tthis.temporal = TemporalAdapter.parseToPlainDateTime(input);\n\t\tif (this.config.timezone && this.config.timezone !== \"UTC\") try {\n\t\t\tconst zoned = this.temporal.toZonedDateTime(this.config.timezone);\n\t\t\tthis.temporal = zoned;\n\t\t} catch {}\n\t}\n\tstatic now(config) {\n\t\treturn new TimeGuard(void 0, config);\n\t}\n\tstatic from(input, config) {\n\t\treturn new TimeGuard(input, config);\n\t}\n\tstatic fromTemporal(temporal, config) {\n\t\tconst instance = new TimeGuard(void 0, config);\n\t\tinstance.temporal = temporal;\n\t\treturn instance;\n\t}\n\t/**\n\t* Calculate duration between two dates - always returns positive duration\n\t*\n\t* @example\n\t* TimeGuard.between(start, end).humanize() // \"2 months and 5 days\"\n\t* TimeGuard.between(end, start).humanize() // \"2 months and 5 days\" (still positive)\n\t*/\n\tstatic between(date1, date2) {\n\t\tconst t1 = TemporalAdapter.toPlainDateTime(date1.temporal);\n\t\tconst t2 = TemporalAdapter.toPlainDateTime(date2.temporal);\n\t\tconst [earlier, later] = TemporalAdapter.compare(t1, t2) <= 0 ? [date1, date2] : [date2, date1];\n\t\treturn earlier.until(later);\n\t}\n\t/**\n\t* Create a TimeRange for fluent duration calculations\n\t*\n\t* @example\n\t* TimeGuard.range(\"2024-01-15\", \"2024-03-20\").humanize() // \"2 months and 5 days\"\n\t*/\n\tstatic range(start, end) {\n\t\treturn new TimeRange(start instanceof TimeGuard ? start : new TimeGuard(start), end instanceof TimeGuard ? end : new TimeGuard(end));\n\t}\n\ttoTemporal() {\n\t\treturn this.temporal;\n\t}\n\ttoDate() {\n\t\treturn TemporalAdapter.toDate(this.temporal);\n\t}\n\ttoISOString() {\n\t\treturn TemporalAdapter.toISOString(this.temporal);\n\t}\n\tvalueOf() {\n\t\treturn TemporalAdapter.toUnix(this.temporal);\n\t}\n\tunix() {\n\t\treturn Math.floor(this.valueOf() / 1e3);\n\t}\n\ttoJSON() {\n\t\treturn this.toISOString();\n\t}\n\t[Symbol.toPrimitive](hint) {\n\t\tif (hint === \"number\") return this.valueOf();\n\t\tif (hint === \"string\") return this.toISOString();\n\t\treturn this.toISOString();\n\t}\n\ttoString() {\n\t\treturn this.format(\"YYYY-MM-DD HH:mm:ss\");\n\t}\n\tlocale(locale) {\n\t\tif (locale === void 0) return this.config.locale;\n\t\tconst cloned = this.clone();\n\t\tcloned.config.locale = locale;\n\t\treturn cloned;\n\t}\n\ttimezone(timezone) {\n\t\tif (timezone === void 0) return this.config.timezone;\n\t\tconst cloned = this.clone();\n\t\tcloned.config.timezone = timezone;\n\t\ttry {\n\t\t\tcloned.temporal = TemporalAdapter.toPlainDateTime(cloned.temporal).toZonedDateTime(timezone);\n\t\t} catch {}\n\t\treturn cloned;\n\t}\n\tformat(pattern) {\n\t\tconst plainDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst formatPattern = [\n\t\t\t\"iso\",\n\t\t\t\"date\",\n\t\t\t\"time\",\n\t\t\t\"datetime\",\n\t\t\t\"rfc2822\",\n\t\t\t\"rfc3339\",\n\t\t\t\"utc\"\n\t\t].includes(pattern) ? this.formatterInstance.getPreset(pattern) : pattern;\n\t\treturn this.formatterInstance.format(plainDT, formatPattern, this.config.locale);\n\t}\n\tget(component) {\n\t\tconst plainDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst unitMap = {\n\t\t\tyear: \"year\",\n\t\t\tmonth: \"month\",\n\t\t\tweek: \"year\",\n\t\t\tday: \"day\",\n\t\t\thour: \"hour\",\n\t\t\tminute: \"minute\",\n\t\t\tsecond: \"second\",\n\t\t\tmillisecond: \"millisecond\",\n\t\t\tmicrosecond: \"microsecond\",\n\t\t\tnanosecond: \"nanosecond\"\n\t\t};\n\t\tif (component === \"week\") return plainDT.weekOfYear;\n\t\treturn plainDT[unitMap[component]];\n\t}\n\t/** Map from singular Unit to plural Temporal polyfill key */\n\tstatic UNIT_TO_PLURAL = {\n\t\tyear: \"years\",\n\t\tmonth: \"months\",\n\t\tweek: \"weeks\",\n\t\tday: \"days\",\n\t\thour: \"hours\",\n\t\tminute: \"minutes\",\n\t\tsecond: \"seconds\",\n\t\tmillisecond: \"milliseconds\",\n\t\tmicrosecond: \"microseconds\",\n\t\tnanosecond: \"nanoseconds\",\n\t\tyears: \"years\",\n\t\tmonths: \"months\",\n\t\tweeks: \"weeks\",\n\t\tdays: \"days\",\n\t\thours: \"hours\",\n\t\tminutes: \"minutes\",\n\t\tseconds: \"seconds\",\n\t\tmilliseconds: \"milliseconds\",\n\t\tmicroseconds: \"microseconds\",\n\t\tnanoseconds: \"nanoseconds\"\n\t};\n\tadd(units) {\n\t\tlet plainDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst duration = {\n\t\t\tyears: 0,\n\t\t\tmonths: 0,\n\t\t\tweeks: 0,\n\t\t\tdays: 0,\n\t\t\thours: 0,\n\t\t\tminutes: 0,\n\t\t\tseconds: 0,\n\t\t\tmilliseconds: 0,\n\t\t\tmicroseconds: 0,\n\t\t\tnanoseconds: 0\n\t\t};\n\t\tlet hasValidFields = false;\n\t\tObject.entries(units).forEach(([unit, value]) => {\n\t\t\tif (value !== void 0 && value !== 0) {\n\t\t\t\tconst num = Number(value);\n\t\t\t\tif (Number.isFinite(num)) {\n\t\t\t\t\tconst targetKey = TimeGuard.UNIT_TO_PLURAL[unit] || unit;\n\t\t\t\t\tduration[targetKey] = Math.trunc(num);\n\t\t\t\t\thasValidFields = true;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tif (!hasValidFields) return this;\n\t\tplainDT = plainDT.add(duration);\n\t\treturn TimeGuard.fromTemporal(plainDT, this.config);\n\t}\n\tsubtract(units) {\n\t\tconst negated = {};\n\t\tObject.entries(units).forEach(([unit, value]) => {\n\t\t\tnegated[unit] = value ? -value : 0;\n\t\t});\n\t\treturn this.add(negated);\n\t}\n\tdiff(other, unitOrOptions) {\n\t\tconst plainDT1 = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst plainDT2 = TemporalAdapter.toPlainDateTime(other.temporal);\n\t\tconst unitMap = {\n\t\t\tyear: \"years\",\n\t\t\tmonth: \"months\",\n\t\t\tweek: \"weeks\",\n\t\t\tday: \"days\",\n\t\t\thour: \"hours\",\n\t\t\tminute: \"minutes\",\n\t\t\tsecond: \"seconds\",\n\t\t\tmillisecond: \"milliseconds\",\n\t\t\tmicrosecond: \"microseconds\",\n\t\t\tnanosecond: \"nanoseconds\"\n\t\t};\n\t\tif (typeof unitOrOptions === \"string\") {\n\t\t\tconst unit = unitOrOptions;\n\t\t\tconst mappedUnit = unitMap[unit];\n\t\t\tconst durationObj = plainDT1.since(plainDT2, { smallestUnit: unit });\n\t\t\treturn Math.round(durationObj[mappedUnit] || 0);\n\t\t}\n\t\tconst options = unitOrOptions || {};\n\t\tconst mode = options.mode || \"exact\";\n\t\tconst unit = options.unit || \"millisecond\";\n\t\tconst locale = options.locale || this.config.locale;\n\t\tif (mode === \"exact\") {\n\t\t\tconst mappedUnit = unitMap[unit];\n\t\t\tconst duration = plainDT1.since(plainDT2, { smallestUnit: unit });\n\t\t\tconst result = Math.round(duration[mappedUnit] || 0);\n\t\t\tif (unitOrOptions === void 0 || typeof unitOrOptions === \"object\") {\n\t\t\t\tconst totalMs = calculateTotalMs(duration);\n\t\t\t\treturn new DiffResult(Math.round(totalMs), this, other, mode, void 0, locale);\n\t\t\t}\n\t\t\treturn result;\n\t\t}\n\t\tif (mode === \"calendar\") {\n\t\t\tconst duration = plainDT1.since(plainDT2, {\n\t\t\t\tlargestUnit: \"month\",\n\t\t\t\tsmallestUnit: \"millisecond\"\n\t\t\t});\n\t\t\tconst breakdownData = {\n\t\t\t\tyears: Math.floor(duration.years || 0),\n\t\t\t\tmonths: Math.floor(duration.months || 0),\n\t\t\t\tweeks: Math.floor(duration.weeks || 0),\n\t\t\t\tdays: Math.floor(duration.days || 0),\n\t\t\t\thours: Math.floor(duration.hours || 0),\n\t\t\t\tminutes: Math.floor(duration.minutes || 0),\n\t\t\t\tseconds: Math.floor(duration.seconds || 0),\n\t\t\t\tmilliseconds: Math.floor(duration.milliseconds || 0)\n\t\t\t};\n\t\t\tconst totalMs = calculateTotalMs(duration);\n\t\t\treturn new DiffResult(Math.round(totalMs), this, other, mode, breakdownData, locale);\n\t\t}\n\t\tconst totalMs = calculateTotalMs(plainDT1.since(plainDT2, { smallestUnit: \"millisecond\" }));\n\t\treturn new DiffResult(Math.round(totalMs), this, other, mode, void 0, locale);\n\t}\n\tisBefore(other) {\n\t\tconst plainDT1 = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst plainDT2 = TemporalAdapter.toPlainDateTime(other.temporal);\n\t\treturn TemporalAdapter.compare(plainDT1, plainDT2) < 0;\n\t}\n\tisAfter(other) {\n\t\tconst plainDT1 = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst plainDT2 = TemporalAdapter.toPlainDateTime(other.temporal);\n\t\treturn TemporalAdapter.compare(plainDT1, plainDT2) > 0;\n\t}\n\tisSame(other, unit) {\n\t\tif (!unit) return TemporalAdapter.compare(TemporalAdapter.toPlainDateTime(this.temporal), TemporalAdapter.toPlainDateTime(other.temporal)) === 0;\n\t\tconst plainDT1 = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst plainDT2 = TemporalAdapter.toPlainDateTime(other.temporal);\n\t\tswitch (unit) {\n\t\t\tcase \"year\": return plainDT1.year === plainDT2.year;\n\t\t\tcase \"month\": return plainDT1.year === plainDT2.year && plainDT1.month === plainDT2.month;\n\t\t\tcase \"day\": return plainDT1.year === plainDT2.year && plainDT1.month === plainDT2.month && plainDT1.day === plainDT2.day;\n\t\t\tcase \"hour\": return plainDT1.year === plainDT2.year && plainDT1.month === plainDT2.month && plainDT1.day === plainDT2.day && plainDT1.hour === plainDT2.hour;\n\t\t\tcase \"minute\": return plainDT1.year === plainDT2.year && plainDT1.month === plainDT2.month && plainDT1.day === plainDT2.day && plainDT1.hour === plainDT2.hour && plainDT1.minute === plainDT2.minute;\n\t\t\tcase \"second\": return plainDT1.year === plainDT2.year && plainDT1.month === plainDT2.month && plainDT1.day === plainDT2.day && plainDT1.hour === plainDT2.hour && plainDT1.minute === plainDT2.minute && plainDT1.second === plainDT2.second;\n\t\t\tdefault: return false;\n\t\t}\n\t}\n\tisBetween(start, end, unit, inclusivity = \"[]\") {\n\t\tconst plainDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst plainStart = TemporalAdapter.toPlainDateTime(start.temporal);\n\t\tconst plainEnd = TemporalAdapter.toPlainDateTime(end.temporal);\n\t\tlet afterStart = true;\n\t\tlet beforeEnd = true;\n\t\tif (unit) {\n\t\t\tconst startCopy = this.clone().startOf(unit);\n\t\t\tconst endCopy = this.clone().endOf(unit);\n\t\t\tconst plainCopy = TemporalAdapter.toPlainDateTime(startCopy.temporal);\n\t\t\tconst plainEndCopy = TemporalAdapter.toPlainDateTime(endCopy.temporal);\n\t\t\tafterStart = TemporalAdapter.compare(plainCopy, plainStart) >= 0;\n\t\t\tbeforeEnd = TemporalAdapter.compare(plainEndCopy, plainEnd) <= 0;\n\t\t} else {\n\t\t\tafterStart = TemporalAdapter.compare(plainDT, plainStart) >= 0;\n\t\t\tbeforeEnd = TemporalAdapter.compare(plainDT, plainEnd) <= 0;\n\t\t}\n\t\tconst hasStartBracket = inclusivity[0] === \"[\";\n\t\tconst hasEndBracket = inclusivity[1] === \"]\";\n\t\treturn (hasStartBracket ? afterStart : TemporalAdapter.compare(plainDT, plainStart) > 0) && (hasEndBracket ? beforeEnd : TemporalAdapter.compare(plainDT, plainEnd) < 0);\n\t}\n\tclone() {\n\t\treturn new TimeGuard(this.toDate(), this.config);\n\t}\n\tstartOf(unit) {\n\t\tconst plainDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst values = {};\n\t\tswitch (unit) {\n\t\t\tcase \"year\":\n\t\t\t\tvalues.month = 1;\n\t\t\t\tvalues.day = 1;\n\t\t\t\tvalues.hour = 0;\n\t\t\t\tvalues.minute = 0;\n\t\t\t\tvalues.second = 0;\n\t\t\t\tvalues.millisecond = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"month\":\n\t\t\t\tvalues.day = 1;\n\t\t\t\tvalues.hour = 0;\n\t\t\t\tvalues.minute = 0;\n\t\t\t\tvalues.second = 0;\n\t\t\t\tvalues.millisecond = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"week\":\n\t\t\tcase \"day\":\n\t\t\t\tvalues.hour = 0;\n\t\t\t\tvalues.minute = 0;\n\t\t\t\tvalues.second = 0;\n\t\t\t\tvalues.millisecond = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"hour\":\n\t\t\t\tvalues.minute = 0;\n\t\t\t\tvalues.second = 0;\n\t\t\t\tvalues.millisecond = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"minute\":\n\t\t\t\tvalues.second = 0;\n\t\t\t\tvalues.millisecond = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"second\":\n\t\t\t\tvalues.millisecond = 0;\n\t\t\t\tbreak;\n\t\t}\n\t\tconst updated = plainDT.with(values);\n\t\treturn TimeGuard.fromTemporal(updated, this.config);\n\t}\n\tendOf(unit) {\n\t\treturn this.startOf(unit).add({ [unit]: 1 }).subtract({ millisecond: 1 });\n\t}\n\tset(values) {\n\t\tconst updated = TemporalAdapter.toPlainDateTime(this.temporal).with(values);\n\t\treturn TimeGuard.fromTemporal(updated, this.config);\n\t}\n\tyear() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).year;\n\t}\n\tmonth() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).month;\n\t}\n\tday() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).day;\n\t}\n\thour() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).hour;\n\t}\n\tminute() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).minute;\n\t}\n\tsecond() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).second;\n\t}\n\tmillisecond() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).millisecond;\n\t}\n\tdayOfWeek() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).dayOfWeek;\n\t}\n\tdayOfYear() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).dayOfYear;\n\t}\n\tweekOfYear() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).weekOfYear;\n\t}\n\tdaysInMonth() {\n\t\treturn TemporalAdapter.toPlainDateTime(this.temporal).add({ months: 1 }).with({ day: 1 }).subtract({ days: 1 }).day;\n\t}\n\tdaysInYear() {\n\t\tconst year = this.year();\n\t\treturn TimeGuard.isLeapYearValue(year) ? 366 : 365;\n\t}\n\tinLeapYear() {\n\t\tconst plainDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\treturn TimeGuard.isLeapYearValue(plainDT.year);\n\t}\n\tuntil(other, options) {\n\t\tconst plainDT1 = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst plainDT2 = TemporalAdapter.toPlainDateTime(other.temporal);\n\t\tconst startTime = performance.now();\n\t\ttry {\n\t\t\tconst temporalOptions = {};\n\t\t\tif (options?.largestUnit) temporalOptions.largestUnit = options.largestUnit;\n\t\t\tif (options?.smallestUnit) temporalOptions.smallestUnit = options.smallestUnit;\n\t\t\tconst duration = plainDT2.since(plainDT1, Object.keys(temporalOptions).length > 0 ? temporalOptions : void 0);\n\t\t\tconst parts = TimeGuard.toDurationParts(duration);\n\t\t\tconst startYear = plainDT1.year;\n\t\t\tconst endYear = plainDT2.year;\n\t\t\tconst leapYearFlags = [];\n\t\t\tfor (let year = startYear; year <= endYear; year++) {\n\t\t\t\tconst isLeap = TimeGuard.isLeapYearValue(year);\n\t\t\t\tleapYearFlags.push({\n\t\t\t\t\tyear,\n\t\t\t\t\tisLeap,\n\t\t\t\t\tdaysInFebruary: isLeap ? 29 : 28\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst steps = this.generateUntilSteps(plainDT1, plainDT2, parts, leapYearFlags);\n\t\t\tconst calculationTimeMs = performance.now() - startTime;\n\t\t\treturn new DurationResult(parts, this.config.locale, {\n\t\t\t\tstartDate: plainDT1.toString(),\n\t\t\t\tendDate: plainDT2.toString(),\n\t\t\t\tsteps,\n\t\t\t\tmode: \"exact\",\n\t\t\t\tleapYearFlags: leapYearFlags.filter((f) => f.isLeap),\n\t\t\t\tcalculationTimeMs\n\t\t\t});\n\t\t} catch {\n\t\t\treturn new DurationResult(TimeGuard.ZERO_DURATION, this.config.locale, {\n\t\t\t\tstartDate: plainDT1.toString(),\n\t\t\t\tendDate: plainDT2.toString(),\n\t\t\t\tsteps: [\"Calculation failed, returning zero duration\"],\n\t\t\t\tmode: \"estimated\"\n\t\t\t});\n\t\t}\n\t}\n\tgenerateUntilSteps(start, end, parts, leapYearFlags) {\n\t\tconst steps = [];\n\t\tsteps.push(`Parsed dates: ${start.year}-${String(start.month).padStart(2, \"0\")}-${String(start.day).padStart(2, \"0\")} (day ${start.dayOfYear} of ${TimeGuard.isLeapYearValue(start.year) ? 366 : 365})`);\n\t\tsteps.push(`to ${end.year}-${String(end.month).padStart(2, \"0\")}-${String(end.day).padStart(2, \"0\")} (day ${end.dayOfYear} of ${TimeGuard.isLeapYearValue(end.year) ? 366 : 365})`);\n\t\tconst leapYearsInRange = leapYearFlags.filter((f) => f.isLeap);\n\t\tif (leapYearsInRange.length > 0) for (const flag of leapYearsInRange) steps.push(`${flag.year} is a leap year (February has ${flag.daysInFebruary} days)`);\n\t\tif (parts.years > 0) steps.push(`Years: ${parts.years}`);\n\t\tif (parts.months > 0) steps.push(`Months: ${parts.months}`);\n\t\tif (parts.days > 0) steps.push(`Days: ${parts.days}`);\n\t\tif (parts.hours > 0 || parts.minutes > 0 || parts.seconds > 0) {\n\t\t\tconst timeComponents = [];\n\t\t\tif (parts.hours > 0) timeComponents.push(`${parts.hours}h`);\n\t\t\tif (parts.minutes > 0) timeComponents.push(`${parts.minutes}m`);\n\t\t\tif (parts.seconds > 0) timeComponents.push(`${parts.seconds}s`);\n\t\t\tsteps.push(`Time: ${timeComponents.join(\" \")}`);\n\t\t}\n\t\tconst totalDays = parts.years * 365.25 + parts.months * 30.4375 + parts.days + parts.hours / 24;\n\t\tsteps.push(`Total: approximately ${totalDays.toFixed(2)} days`);\n\t\treturn steps;\n\t}\n\tround(options = {}) {\n\t\tconst { smallestUnit = \"millisecond\", roundingMode = \"halfExpand\" } = options;\n\t\tconst polyfillDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst unitValues = {\n\t\t\tyear: polyfillDT.year,\n\t\t\tmonth: polyfillDT.month,\n\t\t\tday: polyfillDT.day,\n\t\t\thour: polyfillDT.hour,\n\t\t\tminute: polyfillDT.minute,\n\t\t\tsecond: polyfillDT.second,\n\t\t\tmillisecond: polyfillDT.millisecond,\n\t\t\tmicrosecond: polyfillDT.microsecond || 0,\n\t\t\tnanosecond: polyfillDT.nanosecond || 0,\n\t\t\tweek: 0\n\t\t};\n\t\tconst unitOrder = [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"day\",\n\t\t\t\"hour\",\n\t\t\t\"minute\",\n\t\t\t\"second\",\n\t\t\t\"millisecond\",\n\t\t\t\"microsecond\",\n\t\t\t\"nanosecond\"\n\t\t];\n\t\tconst smallestIndex = unitOrder.indexOf(smallestUnit);\n\t\tif (smallestIndex === -1) return this.clone();\n\t\tconst roundedValues = {};\n\t\tfor (let i = 0; i < smallestIndex; i++) {\n\t\t\tconst unit = unitOrder[i];\n\t\t\troundedValues[unit] = unitValues[unit];\n\t\t}\n\t\tconst unit = unitOrder[smallestIndex];\n\t\tlet value = unitValues[unit];\n\t\tif (smallestIndex + 1 < unitOrder.length) {\n\t\t\tconst nextUnitValue = unitValues[unitOrder[smallestIndex + 1]];\n\t\t\tconst shouldRoundUp = (mode, nextVal) => {\n\t\t\t\tswitch (mode) {\n\t\t\t\t\tcase \"ceil\": return nextVal > 0;\n\t\t\t\t\tcase \"floor\":\n\t\t\t\t\tcase \"trunc\": return false;\n\t\t\t\t\tcase \"halfExpand\":\n\t\t\t\t\tcase \"halfFloor\":\n\t\t\t\t\tcase \"halfCeil\": return nextVal >= 5;\n\t\t\t\t\tcase \"expand\": return nextVal > 0;\n\t\t\t\t\tdefault: return nextVal >= 5;\n\t\t\t\t}\n\t\t\t};\n\t\t\tif (shouldRoundUp(roundingMode, nextUnitValue)) value += 1;\n\t\t}\n\t\troundedValues[unit] = value;\n\t\tfor (let i = smallestIndex + 1; i < unitOrder.length; i++) roundedValues[unitOrder[i]] = 0;\n\t\treturn this.set(roundedValues);\n\t}\n\ttoPlainDate() {\n\t\tconst plainDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\treturn {\n\t\t\tyear: plainDT.year,\n\t\t\tmonth: plainDT.month,\n\t\t\tday: plainDT.day,\n\t\t\tdayOfWeek: plainDT.dayOfWeek\n\t\t};\n\t}\n\ttoPlainTime() {\n\t\tconst plainDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\treturn {\n\t\t\thour: plainDT.hour,\n\t\t\tminute: plainDT.minute,\n\t\t\tsecond: plainDT.second,\n\t\t\tmillisecond: plainDT.millisecond\n\t\t};\n\t}\n\twithDate(year, month, day) {\n\t\treturn this.set({\n\t\t\tyear,\n\t\t\tmonth,\n\t\t\tday\n\t\t});\n\t}\n\twithTime(hour, minute = 0, second = 0, millisecond = 0) {\n\t\treturn this.set({\n\t\t\thour,\n\t\t\tminute,\n\t\t\tsecond,\n\t\t\tmillisecond\n\t\t});\n\t}\n\tgetOffset() {\n\t\treturn this.temporal?.offset || \"Z\";\n\t}\n\tgetOffsetNanoseconds() {\n\t\treturn this.temporal?.offsetNanoseconds || 0;\n\t}\n\tgetTimeZoneId() {\n\t\treturn this.temporal?.timeZoneId || null;\n\t}\n\tstartOfDay() {\n\t\treturn this.startOf(\"day\");\n\t}\n\tendOfDay() {\n\t\treturn this.endOf(\"day\");\n\t}\n\tsince(other, options) {\n\t\tconst plainDT1 = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\tconst plainDT2 = TemporalAdapter.toPlainDateTime(other.temporal);\n\t\tconst startTime = performance.now();\n\t\ttry {\n\t\t\tconst temporalOptions = {};\n\t\t\tif (options?.largestUnit) temporalOptions.largestUnit = options.largestUnit;\n\t\t\tif (options?.smallestUnit) temporalOptions.smallestUnit = options.smallestUnit;\n\t\t\tconst duration = plainDT1.since(plainDT2, Object.keys(temporalOptions).length > 0 ? temporalOptions : void 0);\n\t\t\tconst parts = TimeGuard.toDurationParts(duration);\n\t\t\tconst startYear = plainDT2.year;\n\t\t\tconst endYear = plainDT1.year;\n\t\t\tconst leapYearFlags = [];\n\t\t\tfor (let year = startYear; year <= endYear; year++) {\n\t\t\t\tconst isLeap = TimeGuard.isLeapYearValue(year);\n\t\t\t\tleapYearFlags.push({\n\t\t\t\t\tyear,\n\t\t\t\t\tisLeap,\n\t\t\t\t\tdaysInFebruary: isLeap ? 29 : 28\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst steps = this.generateUntilSteps(plainDT2, plainDT1, parts, leapYearFlags);\n\t\t\tconst calculationTimeMs = performance.now() - startTime;\n\t\t\treturn new DurationResult(parts, this.config.locale, {\n\t\t\t\tstartDate: plainDT2.toString(),\n\t\t\t\tendDate: plainDT1.toString(),\n\t\t\t\tsteps,\n\t\t\t\tmode: \"exact\",\n\t\t\t\tleapYearFlags: leapYearFlags.filter((f) => f.isLeap),\n\t\t\t\tcalculationTimeMs\n\t\t\t});\n\t\t} catch {\n\t\t\treturn new DurationResult(TimeGuard.ZERO_DURATION, this.config.locale, {\n\t\t\t\tstartDate: plainDT2.toString(),\n\t\t\t\tendDate: plainDT1.toString(),\n\t\t\t\tsteps: [\"Calculation failed, returning zero duration\"],\n\t\t\t\tmode: \"estimated\"\n\t\t\t});\n\t\t}\n\t}\n\ttoDurationString(other) {\n\t\tconst duration = other ? this.until(other) : this.until(TimeGuard.now());\n\t\tconst parts = [];\n\t\tif (duration.years) parts.push(`${duration.years}Y`);\n\t\tif (duration.months) parts.push(`${duration.months}M`);\n\t\tif (duration.days) parts.push(`${duration.days}D`);\n\t\tconst timeParts = [];\n\t\tif (duration.hours) timeParts.push(`${duration.hours}H`);\n\t\tif (duration.minutes) timeParts.push(`${duration.minutes}M`);\n\t\tif (duration.seconds) timeParts.push(`${duration.seconds}S`);\n\t\tconst result = `P${parts.join(\"\")}${timeParts.length > 0 ? \"T\" + timeParts.join(\"\") : \"\"}`;\n\t\treturn result === \"P\" ? \"PT0S\" : result;\n\t}\n\tisPast() {\n\t\treturn this.isBefore(TimeGuard.now());\n\t}\n\tisFuture() {\n\t\treturn this.isAfter(TimeGuard.now());\n\t}\n\tisToday() {\n\t\treturn this.isSame(TimeGuard.now(), \"day\");\n\t}\n\tisTomorrow() {\n\t\treturn this.isSame(TimeGuard.now().add({ day: 1 }), \"day\");\n\t}\n\tisYesterday() {\n\t\treturn this.isSame(TimeGuard.now().subtract({ day: 1 }), \"day\");\n\t}\n\tisWeekend() {\n\t\tconst plainDT = TemporalAdapter.toPlainDateTime(this.temporal);\n\t\treturn plainDT.dayOfWeek === 6 || plainDT.dayOfWeek === 7;\n\t}\n\tisHoliday() {\n\t\tconst dateStr = this.format(\"YYYY-MM-DD\");\n\t\treturn TimeGuard.holidays.has(dateStr);\n\t}\n\tisBusinessDay() {\n\t\treturn !this.isWeekend() && !this.isHoliday();\n\t}\n\taddBusinessDays(days) {\n\t\tconst num = Math.trunc(days);\n\t\tif (!Number.isFinite(num) || num === 0) return this;\n\t\tlet cloned = this.clone();\n\t\tlet remaining = Math.abs(num);\n\t\tconst step = num > 0 ? 1 : -1;\n\t\twhile (remaining > 0) {\n\t\t\tcloned = cloned.add({ day: step });\n\t\t\tif (cloned.isBusinessDay()) remaining--;\n\t\t}\n\t\treturn cloned;\n\t}\n\tsubtractBusinessDays(days) {\n\t\treturn this.addBusinessDays(-days);\n\t}\n};\nfunction timeGuard(input, config) {\n\treturn new TimeGuard(input, config);\n}\n/** The current version of TimeGuard */\nvar version = \"2.7.2\";\n//#endregion\nexport { version as a, GregorianCalendar as c, TemporalAdapter as d, EN_LOCALE as f, timeGuard as i, calendarManager as l, LocaleManager as m, TimeGuard as n, PluginManager as o, ES_LOCALE as p, TimeRange as r, CalendarManager as s, DurationResult as t, DateFormatter as u };\n","/*! time-guard v2.7.2 | (c) 2026 Berea-Soft | MIT License | https://github.com/Berea-Soft/time-guard */\nvar ENGLISH_LOCALES = {\n\ten: {\n\t\tname: \"en\",\n\t\tmonths: [\n\t\t\t\"January\",\n\t\t\t\"February\",\n\t\t\t\"March\",\n\t\t\t\"April\",\n\t\t\t\"May\",\n\t\t\t\"June\",\n\t\t\t\"July\",\n\t\t\t\"August\",\n\t\t\t\"September\",\n\t\t\t\"October\",\n\t\t\t\"November\",\n\t\t\t\"December\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jan\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Apr\",\n\t\t\t\"May\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Aug\",\n\t\t\t\"Sep\",\n\t\t\t\"Oct\",\n\t\t\t\"Nov\",\n\t\t\t\"Dec\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Sunday\",\n\t\t\t\"Monday\",\n\t\t\t\"Tuesday\",\n\t\t\t\"Wednesday\",\n\t\t\t\"Thursday\",\n\t\t\t\"Friday\",\n\t\t\t\"Saturday\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Sun\",\n\t\t\t\"Mon\",\n\t\t\t\"Tue\",\n\t\t\t\"Wed\",\n\t\t\t\"Thu\",\n\t\t\t\"Fri\",\n\t\t\t\"Sat\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Su\",\n\t\t\t\"Mo\",\n\t\t\t\"Tu\",\n\t\t\t\"We\",\n\t\t\t\"Th\",\n\t\t\t\"Fr\",\n\t\t\t\"Sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY-MM-DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\t\"en-au\": {\n\t\tname: \"en-au\",\n\t\tmonths: [\n\t\t\t\"January\",\n\t\t\t\"February\",\n\t\t\t\"March\",\n\t\t\t\"April\",\n\t\t\t\"May\",\n\t\t\t\"June\",\n\t\t\t\"July\",\n\t\t\t\"August\",\n\t\t\t\"September\",\n\t\t\t\"October\",\n\t\t\t\"November\",\n\t\t\t\"December\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jan\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Apr\",\n\t\t\t\"May\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Aug\",\n\t\t\t\"Sep\",\n\t\t\t\"Oct\",\n\t\t\t\"Nov\",\n\t\t\t\"Dec\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Sunday\",\n\t\t\t\"Monday\",\n\t\t\t\"Tuesday\",\n\t\t\t\"Wednesday\",\n\t\t\t\"Thursday\",\n\t\t\t\"Friday\",\n\t\t\t\"Saturday\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Sun\",\n\t\t\t\"Mon\",\n\t\t\t\"Tue\",\n\t\t\t\"Wed\",\n\t\t\t\"Thu\",\n\t\t\t\"Fri\",\n\t\t\t\"Sat\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Su\",\n\t\t\t\"Mo\",\n\t\t\t\"Tu\",\n\t\t\t\"We\",\n\t\t\t\"Th\",\n\t\t\t\"Fr\",\n\t\t\t\"Sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\t\"en-gb\": {\n\t\tname: \"en-gb\",\n\t\tmonths: [\n\t\t\t\"January\",\n\t\t\t\"February\",\n\t\t\t\"March\",\n\t\t\t\"April\",\n\t\t\t\"May\",\n\t\t\t\"June\",\n\t\t\t\"July\",\n\t\t\t\"August\",\n\t\t\t\"September\",\n\t\t\t\"October\",\n\t\t\t\"November\",\n\t\t\t\"December\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jan\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Apr\",\n\t\t\t\"May\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Aug\",\n\t\t\t\"Sep\",\n\t\t\t\"Oct\",\n\t\t\t\"Nov\",\n\t\t\t\"Dec\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Sunday\",\n\t\t\t\"Monday\",\n\t\t\t\"Tuesday\",\n\t\t\t\"Wednesday\",\n\t\t\t\"Thursday\",\n\t\t\t\"Friday\",\n\t\t\t\"Saturday\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Sun\",\n\t\t\t\"Mon\",\n\t\t\t\"Tue\",\n\t\t\t\"Wed\",\n\t\t\t\"Thu\",\n\t\t\t\"Fri\",\n\t\t\t\"Sat\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Su\",\n\t\t\t\"Mo\",\n\t\t\t\"Tu\",\n\t\t\t\"We\",\n\t\t\t\"Th\",\n\t\t\t\"Fr\",\n\t\t\t\"Sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\t\"en-ca\": {\n\t\tname: \"en-ca\",\n\t\tmonths: [\n\t\t\t\"January\",\n\t\t\t\"February\",\n\t\t\t\"March\",\n\t\t\t\"April\",\n\t\t\t\"May\",\n\t\t\t\"June\",\n\t\t\t\"July\",\n\t\t\t\"August\",\n\t\t\t\"September\",\n\t\t\t\"October\",\n\t\t\t\"November\",\n\t\t\t\"December\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jan\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Apr\",\n\t\t\t\"May\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Aug\",\n\t\t\t\"Sep\",\n\t\t\t\"Oct\",\n\t\t\t\"Nov\",\n\t\t\t\"Dec\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Sunday\",\n\t\t\t\"Monday\",\n\t\t\t\"Tuesday\",\n\t\t\t\"Wednesday\",\n\t\t\t\"Thursday\",\n\t\t\t\"Friday\",\n\t\t\t\"Saturday\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Sun\",\n\t\t\t\"Mon\",\n\t\t\t\"Tue\",\n\t\t\t\"Wed\",\n\t\t\t\"Thu\",\n\t\t\t\"Fri\",\n\t\t\t\"Sat\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Su\",\n\t\t\t\"Mo\",\n\t\t\t\"Tu\",\n\t\t\t\"We\",\n\t\t\t\"Th\",\n\t\t\t\"Fr\",\n\t\t\t\"Sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY-MM-DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar SPANISH_LOCALES = {\n\tes: {\n\t\tname: \"es\",\n\t\tmonths: [\n\t\t\t\"Enero\",\n\t\t\t\"Febrero\",\n\t\t\t\"Marzo\",\n\t\t\t\"Abril\",\n\t\t\t\"Mayo\",\n\t\t\t\"Junio\",\n\t\t\t\"Julio\",\n\t\t\t\"Agosto\",\n\t\t\t\"Septiembre\",\n\t\t\t\"Octubre\",\n\t\t\t\"Noviembre\",\n\t\t\t\"Diciembre\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Ene\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Abr\",\n\t\t\t\"May\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Ago\",\n\t\t\t\"Sep\",\n\t\t\t\"Oct\",\n\t\t\t\"Nov\",\n\t\t\t\"Dic\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Domingo\",\n\t\t\t\"Lunes\",\n\t\t\t\"Martes\",\n\t\t\t\"Miércoles\",\n\t\t\t\"Jueves\",\n\t\t\t\"Viernes\",\n\t\t\t\"Sábado\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Dom\",\n\t\t\t\"Lun\",\n\t\t\t\"Mar\",\n\t\t\t\"Mié\",\n\t\t\t\"Jue\",\n\t\t\t\"Vie\",\n\t\t\t\"Sáb\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Do\",\n\t\t\t\"Lu\",\n\t\t\t\"Ma\",\n\t\t\t\"Mi\",\n\t\t\t\"Ju\",\n\t\t\t\"Vi\",\n\t\t\t\"Sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\t\"es-mx\": {\n\t\tname: \"es-mx\",\n\t\tmonths: [\n\t\t\t\"Enero\",\n\t\t\t\"Febrero\",\n\t\t\t\"Marzo\",\n\t\t\t\"Abril\",\n\t\t\t\"Mayo\",\n\t\t\t\"Junio\",\n\t\t\t\"Julio\",\n\t\t\t\"Agosto\",\n\t\t\t\"Septiembre\",\n\t\t\t\"Octubre\",\n\t\t\t\"Noviembre\",\n\t\t\t\"Diciembre\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Ene\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Abr\",\n\t\t\t\"May\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Ago\",\n\t\t\t\"Sep\",\n\t\t\t\"Oct\",\n\t\t\t\"Nov\",\n\t\t\t\"Dic\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Domingo\",\n\t\t\t\"Lunes\",\n\t\t\t\"Martes\",\n\t\t\t\"Miércoles\",\n\t\t\t\"Jueves\",\n\t\t\t\"Viernes\",\n\t\t\t\"Sábado\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Dom\",\n\t\t\t\"Lun\",\n\t\t\t\"Mar\",\n\t\t\t\"Mié\",\n\t\t\t\"Jue\",\n\t\t\t\"Vie\",\n\t\t\t\"Sáb\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Do\",\n\t\t\t\"Lu\",\n\t\t\t\"Ma\",\n\t\t\t\"Mi\",\n\t\t\t\"Ju\",\n\t\t\t\"Vi\",\n\t\t\t\"Sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\t\"es-us\": {\n\t\tname: \"es-us\",\n\t\tmonths: [\n\t\t\t\"Enero\",\n\t\t\t\"Febrero\",\n\t\t\t\"Marzo\",\n\t\t\t\"Abril\",\n\t\t\t\"Mayo\",\n\t\t\t\"Junio\",\n\t\t\t\"Julio\",\n\t\t\t\"Agosto\",\n\t\t\t\"Septiembre\",\n\t\t\t\"Octubre\",\n\t\t\t\"Noviembre\",\n\t\t\t\"Diciembre\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Ene\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Abr\",\n\t\t\t\"May\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Ago\",\n\t\t\t\"Sep\",\n\t\t\t\"Oct\",\n\t\t\t\"Nov\",\n\t\t\t\"Dic\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Domingo\",\n\t\t\t\"Lunes\",\n\t\t\t\"Martes\",\n\t\t\t\"Miércoles\",\n\t\t\t\"Jueves\",\n\t\t\t\"Viernes\",\n\t\t\t\"Sábado\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Dom\",\n\t\t\t\"Lun\",\n\t\t\t\"Mar\",\n\t\t\t\"Mié\",\n\t\t\t\"Jue\",\n\t\t\t\"Vie\",\n\t\t\t\"Sáb\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Do\",\n\t\t\t\"Lu\",\n\t\t\t\"Ma\",\n\t\t\t\"Mi\",\n\t\t\t\"Ju\",\n\t\t\t\"Vi\",\n\t\t\t\"Sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"MM/DD/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"MM/DD/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar ROMANCE_LOCALES = {\n\tfr: {\n\t\tname: \"fr\",\n\t\tmonths: [\n\t\t\t\"janvier\",\n\t\t\t\"février\",\n\t\t\t\"mars\",\n\t\t\t\"avril\",\n\t\t\t\"mai\",\n\t\t\t\"juin\",\n\t\t\t\"juillet\",\n\t\t\t\"août\",\n\t\t\t\"septembre\",\n\t\t\t\"octobre\",\n\t\t\t\"novembre\",\n\t\t\t\"décembre\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"janv.\",\n\t\t\t\"févr.\",\n\t\t\t\"mars\",\n\t\t\t\"avr.\",\n\t\t\t\"mai\",\n\t\t\t\"juin\",\n\t\t\t\"juil.\",\n\t\t\t\"août\",\n\t\t\t\"sept.\",\n\t\t\t\"oct.\",\n\t\t\t\"nov.\",\n\t\t\t\"déc.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"dimanche\",\n\t\t\t\"lundi\",\n\t\t\t\"mardi\",\n\t\t\t\"mercredi\",\n\t\t\t\"jeudi\",\n\t\t\t\"vendredi\",\n\t\t\t\"samedi\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"dim.\",\n\t\t\t\"lun.\",\n\t\t\t\"mar.\",\n\t\t\t\"mer.\",\n\t\t\t\"jeu.\",\n\t\t\t\"ven.\",\n\t\t\t\"sam.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"di\",\n\t\t\t\"lu\",\n\t\t\t\"ma\",\n\t\t\t\"me\",\n\t\t\t\"je\",\n\t\t\t\"ve\",\n\t\t\t\"sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tit: {\n\t\tname: \"it\",\n\t\tmonths: [\n\t\t\t\"gennaio\",\n\t\t\t\"febbraio\",\n\t\t\t\"marzo\",\n\t\t\t\"aprile\",\n\t\t\t\"maggio\",\n\t\t\t\"giugno\",\n\t\t\t\"luglio\",\n\t\t\t\"agosto\",\n\t\t\t\"settembre\",\n\t\t\t\"ottobre\",\n\t\t\t\"novembre\",\n\t\t\t\"dicembre\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"gen\",\n\t\t\t\"feb\",\n\t\t\t\"mar\",\n\t\t\t\"apr\",\n\t\t\t\"mag\",\n\t\t\t\"giu\",\n\t\t\t\"lug\",\n\t\t\t\"ago\",\n\t\t\t\"set\",\n\t\t\t\"ott\",\n\t\t\t\"nov\",\n\t\t\t\"dic\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"domenica\",\n\t\t\t\"lunedì\",\n\t\t\t\"martedì\",\n\t\t\t\"mercoledì\",\n\t\t\t\"giovedì\",\n\t\t\t\"venerdì\",\n\t\t\t\"sabato\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"dom\",\n\t\t\t\"lun\",\n\t\t\t\"mar\",\n\t\t\t\"mer\",\n\t\t\t\"gio\",\n\t\t\t\"ven\",\n\t\t\t\"sab\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"do\",\n\t\t\t\"lu\",\n\t\t\t\"ma\",\n\t\t\t\"me\",\n\t\t\t\"gi\",\n\t\t\t\"ve\",\n\t\t\t\"sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tpt: {\n\t\tname: \"pt\",\n\t\tmonths: [\n\t\t\t\"janeiro\",\n\t\t\t\"fevereiro\",\n\t\t\t\"março\",\n\t\t\t\"abril\",\n\t\t\t\"maio\",\n\t\t\t\"junho\",\n\t\t\t\"julho\",\n\t\t\t\"agosto\",\n\t\t\t\"setembro\",\n\t\t\t\"outubro\",\n\t\t\t\"novembro\",\n\t\t\t\"dezembro\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"jan\",\n\t\t\t\"fev\",\n\t\t\t\"mar\",\n\t\t\t\"abr\",\n\t\t\t\"mai\",\n\t\t\t\"jun\",\n\t\t\t\"jul\",\n\t\t\t\"ago\",\n\t\t\t\"set\",\n\t\t\t\"out\",\n\t\t\t\"nov\",\n\t\t\t\"dez\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"domingo\",\n\t\t\t\"segunda\",\n\t\t\t\"terça\",\n\t\t\t\"quarta\",\n\t\t\t\"quinta\",\n\t\t\t\"sexta\",\n\t\t\t\"sábado\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"dom\",\n\t\t\t\"seg\",\n\t\t\t\"ter\",\n\t\t\t\"qua\",\n\t\t\t\"qui\",\n\t\t\t\"sex\",\n\t\t\t\"sab\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"do\",\n\t\t\t\"se\",\n\t\t\t\"te\",\n\t\t\t\"qu\",\n\t\t\t\"qu\",\n\t\t\t\"se\",\n\t\t\t\"sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\t\"pt-br\": {\n\t\tname: \"pt-br\",\n\t\tmonths: [\n\t\t\t\"janeiro\",\n\t\t\t\"fevereiro\",\n\t\t\t\"março\",\n\t\t\t\"abril\",\n\t\t\t\"maio\",\n\t\t\t\"junho\",\n\t\t\t\"julho\",\n\t\t\t\"agosto\",\n\t\t\t\"setembro\",\n\t\t\t\"outubro\",\n\t\t\t\"novembro\",\n\t\t\t\"dezembro\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"jan\",\n\t\t\t\"fev\",\n\t\t\t\"mar\",\n\t\t\t\"abr\",\n\t\t\t\"mai\",\n\t\t\t\"jun\",\n\t\t\t\"jul\",\n\t\t\t\"ago\",\n\t\t\t\"set\",\n\t\t\t\"out\",\n\t\t\t\"nov\",\n\t\t\t\"dez\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"domingo\",\n\t\t\t\"segunda-feira\",\n\t\t\t\"terça-feira\",\n\t\t\t\"quarta-feira\",\n\t\t\t\"quinta-feira\",\n\t\t\t\"sexta-feira\",\n\t\t\t\"sábado\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"dom\",\n\t\t\t\"seg\",\n\t\t\t\"ter\",\n\t\t\t\"qua\",\n\t\t\t\"qui\",\n\t\t\t\"sex\",\n\t\t\t\"sab\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"do\",\n\t\t\t\"se\",\n\t\t\t\"te\",\n\t\t\t\"qu\",\n\t\t\t\"qu\",\n\t\t\t\"se\",\n\t\t\t\"sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tro: {\n\t\tname: \"ro\",\n\t\tmonths: [\n\t\t\t\"ianuarie\",\n\t\t\t\"februarie\",\n\t\t\t\"martie\",\n\t\t\t\"aprilie\",\n\t\t\t\"mai\",\n\t\t\t\"iunie\",\n\t\t\t\"iulie\",\n\t\t\t\"august\",\n\t\t\t\"septembrie\",\n\t\t\t\"octombrie\",\n\t\t\t\"noiembrie\",\n\t\t\t\"decembrie\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"ian.\",\n\t\t\t\"feb.\",\n\t\t\t\"mar.\",\n\t\t\t\"apr.\",\n\t\t\t\"mai\",\n\t\t\t\"iun.\",\n\t\t\t\"iul.\",\n\t\t\t\"aug.\",\n\t\t\t\"sep.\",\n\t\t\t\"oct.\",\n\t\t\t\"nov.\",\n\t\t\t\"dec.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"duminică\",\n\t\t\t\"luni\",\n\t\t\t\"marți\",\n\t\t\t\"miercuri\",\n\t\t\t\"joi\",\n\t\t\t\"vineri\",\n\t\t\t\"sâmbătă\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"dum.\",\n\t\t\t\"lun.\",\n\t\t\t\"mar.\",\n\t\t\t\"mie.\",\n\t\t\t\"joi\",\n\t\t\t\"vin.\",\n\t\t\t\"sâm.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"du\",\n\t\t\t\"lu\",\n\t\t\t\"ma\",\n\t\t\t\"mi\",\n\t\t\t\"jo\",\n\t\t\t\"vi\",\n\t\t\t\"sâ\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar SLAVIC_LOCALES = {\n\tru: {\n\t\tname: \"ru\",\n\t\tmonths: [\n\t\t\t\"январь\",\n\t\t\t\"февраль\",\n\t\t\t\"март\",\n\t\t\t\"апрель\",\n\t\t\t\"май\",\n\t\t\t\"июнь\",\n\t\t\t\"июль\",\n\t\t\t\"август\",\n\t\t\t\"сентябрь\",\n\t\t\t\"октябрь\",\n\t\t\t\"ноябрь\",\n\t\t\t\"декабрь\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"янв.\",\n\t\t\t\"февр.\",\n\t\t\t\"март\",\n\t\t\t\"апр.\",\n\t\t\t\"май\",\n\t\t\t\"июнь\",\n\t\t\t\"июль\",\n\t\t\t\"авг.\",\n\t\t\t\"сент.\",\n\t\t\t\"окт.\",\n\t\t\t\"нояб.\",\n\t\t\t\"дек.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"воскресенье\",\n\t\t\t\"понедельник\",\n\t\t\t\"вторник\",\n\t\t\t\"среда\",\n\t\t\t\"четверг\",\n\t\t\t\"пятница\",\n\t\t\t\"суббота\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"вс\",\n\t\t\t\"пн\",\n\t\t\t\"вт\",\n\t\t\t\"ср\",\n\t\t\t\"чт\",\n\t\t\t\"пт\",\n\t\t\t\"сб\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"вс\",\n\t\t\t\"пн\",\n\t\t\t\"вт\",\n\t\t\t\"ср\",\n\t\t\t\"чт\",\n\t\t\t\"пт\",\n\t\t\t\"сб\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tpl: {\n\t\tname: \"pl\",\n\t\tmonths: [\n\t\t\t\"stycznia\",\n\t\t\t\"lutego\",\n\t\t\t\"marca\",\n\t\t\t\"kwietnia\",\n\t\t\t\"maja\",\n\t\t\t\"czerwca\",\n\t\t\t\"lipca\",\n\t\t\t\"sierpnia\",\n\t\t\t\"września\",\n\t\t\t\"października\",\n\t\t\t\"listopada\",\n\t\t\t\"grudnia\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"sty.\",\n\t\t\t\"lut.\",\n\t\t\t\"mar.\",\n\t\t\t\"kwi.\",\n\t\t\t\"maj.\",\n\t\t\t\"cze.\",\n\t\t\t\"lip.\",\n\t\t\t\"sie.\",\n\t\t\t\"wrz.\",\n\t\t\t\"paź.\",\n\t\t\t\"lis.\",\n\t\t\t\"gru.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"niedziela\",\n\t\t\t\"poniedziałek\",\n\t\t\t\"wtorek\",\n\t\t\t\"środa\",\n\t\t\t\"czwartek\",\n\t\t\t\"piątek\",\n\t\t\t\"sobota\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Nd.\",\n\t\t\t\"Pn.\",\n\t\t\t\"Wt.\",\n\t\t\t\"Śr.\",\n\t\t\t\"Cz.\",\n\t\t\t\"Pt.\",\n\t\t\t\"So.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Nd\",\n\t\t\t\"Pn\",\n\t\t\t\"Wt\",\n\t\t\t\"Śr\",\n\t\t\t\"Cz\",\n\t\t\t\"Pt\",\n\t\t\t\"So\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tcs: {\n\t\tname: \"cs\",\n\t\tmonths: [\n\t\t\t\"ledna\",\n\t\t\t\"února\",\n\t\t\t\"března\",\n\t\t\t\"dubna\",\n\t\t\t\"května\",\n\t\t\t\"iunie\",\n\t\t\t\"iulie\",\n\t\t\t\"srpna\",\n\t\t\t\"září\",\n\t\t\t\"října\",\n\t\t\t\"listopadu\",\n\t\t\t\"prosince\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"led\",\n\t\t\t\"úno\",\n\t\t\t\"bře\",\n\t\t\t\"dub\",\n\t\t\t\"kvě\",\n\t\t\t\"čer\",\n\t\t\t\"čvc\",\n\t\t\t\"srp\",\n\t\t\t\"zář\",\n\t\t\t\"říj\",\n\t\t\t\"lis\",\n\t\t\t\"pro\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"neděle\",\n\t\t\t\"pondělí\",\n\t\t\t\"úterý\",\n\t\t\t\"středa\",\n\t\t\t\"čtvrtek\",\n\t\t\t\"pátek\",\n\t\t\t\"sobota\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"ne\",\n\t\t\t\"po\",\n\t\t\t\"út\",\n\t\t\t\"st\",\n\t\t\t\"čt\",\n\t\t\t\"pá\",\n\t\t\t\"so\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"ne\",\n\t\t\t\"po\",\n\t\t\t\"út\",\n\t\t\t\"st\",\n\t\t\t\"čt\",\n\t\t\t\"pá\",\n\t\t\t\"so\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tsk: {\n\t\tname: \"sk\",\n\t\tmonths: [\n\t\t\t\"január\",\n\t\t\t\"február\",\n\t\t\t\"март\",\n\t\t\t\"апрель\",\n\t\t\t\"май\",\n\t\t\t\"июнь\",\n\t\t\t\"июль\",\n\t\t\t\"август\",\n\t\t\t\"сентябрь\",\n\t\t\t\"октябрь\",\n\t\t\t\"ноябрь\",\n\t\t\t\"декабрь\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"jan\",\n\t\t\t\"feb\",\n\t\t\t\"mar\",\n\t\t\t\"apr\",\n\t\t\t\"maj\",\n\t\t\t\"jún\",\n\t\t\t\"júl\",\n\t\t\t\"aug\",\n\t\t\t\"sep\",\n\t\t\t\"okt\",\n\t\t\t\"nov\",\n\t\t\t\"dec\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"nedeľa\",\n\t\t\t\"pondelok\",\n\t\t\t\"utorok\",\n\t\t\t\"streda\",\n\t\t\t\"štvrtok\",\n\t\t\t\"piatok\",\n\t\t\t\"sobota\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"ned\",\n\t\t\t\"pon\",\n\t\t\t\"uto\",\n\t\t\t\"str\",\n\t\t\t\"štv\",\n\t\t\t\"pia\",\n\t\t\t\"sob\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"ne\",\n\t\t\t\"po\",\n\t\t\t\"ut\",\n\t\t\t\"st\",\n\t\t\t\"št\",\n\t\t\t\"pi\",\n\t\t\t\"so\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar NORDIC_LOCALES = {\n\tsv: {\n\t\tname: \"sv\",\n\t\tmonths: [\n\t\t\t\"januari\",\n\t\t\t\"februari\",\n\t\t\t\"mars\",\n\t\t\t\"april\",\n\t\t\t\"maj\",\n\t\t\t\"juni\",\n\t\t\t\"juli\",\n\t\t\t\"augusti\",\n\t\t\t\"september\",\n\t\t\t\"oktober\",\n\t\t\t\"november\",\n\t\t\t\"december\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"jan.\",\n\t\t\t\"feb.\",\n\t\t\t\"mar.\",\n\t\t\t\"apr.\",\n\t\t\t\"maj\",\n\t\t\t\"juni\",\n\t\t\t\"juli\",\n\t\t\t\"aug.\",\n\t\t\t\"sep.\",\n\t\t\t\"okt.\",\n\t\t\t\"nov.\",\n\t\t\t\"dec.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"söndag\",\n\t\t\t\"måndag\",\n\t\t\t\"tisdag\",\n\t\t\t\"onsdag\",\n\t\t\t\"torsdag\",\n\t\t\t\"fredag\",\n\t\t\t\"lördag\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"sön\",\n\t\t\t\"mån\",\n\t\t\t\"tis\",\n\t\t\t\"ons\",\n\t\t\t\"tor\",\n\t\t\t\"fre\",\n\t\t\t\"lör\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"sö\",\n\t\t\t\"må\",\n\t\t\t\"ti\",\n\t\t\t\"on\",\n\t\t\t\"to\",\n\t\t\t\"fr\",\n\t\t\t\"lö\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY-MM-DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tnb: {\n\t\tname: \"nb\",\n\t\tmonths: [\n\t\t\t\"januar\",\n\t\t\t\"februar\",\n\t\t\t\"mars\",\n\t\t\t\"april\",\n\t\t\t\"mai\",\n\t\t\t\"juni\",\n\t\t\t\"juli\",\n\t\t\t\"august\",\n\t\t\t\"september\",\n\t\t\t\"oktober\",\n\t\t\t\"november\",\n\t\t\t\"desember\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"jan.\",\n\t\t\t\"feb.\",\n\t\t\t\"mar.\",\n\t\t\t\"apr.\",\n\t\t\t\"mai\",\n\t\t\t\"juni\",\n\t\t\t\"juli\",\n\t\t\t\"aug.\",\n\t\t\t\"sep.\",\n\t\t\t\"okt.\",\n\t\t\t\"nov.\",\n\t\t\t\"des.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"søndag\",\n\t\t\t\"mandag\",\n\t\t\t\"tirsdag\",\n\t\t\t\"onsdag\",\n\t\t\t\"torsdag\",\n\t\t\t\"fredag\",\n\t\t\t\"lørdag\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"søn\",\n\t\t\t\"man\",\n\t\t\t\"tir\",\n\t\t\t\"ons\",\n\t\t\t\"tor\",\n\t\t\t\"fre\",\n\t\t\t\"lør\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"sø\",\n\t\t\t\"ma\",\n\t\t\t\"ti\",\n\t\t\t\"on\",\n\t\t\t\"to\",\n\t\t\t\"fr\",\n\t\t\t\"lø\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tda: {\n\t\tname: \"da\",\n\t\tmonths: [\n\t\t\t\"januar\",\n\t\t\t\"februar\",\n\t\t\t\"marts\",\n\t\t\t\"april\",\n\t\t\t\"maj\",\n\t\t\t\"juni\",\n\t\t\t\"juli\",\n\t\t\t\"august\",\n\t\t\t\"september\",\n\t\t\t\"oktober\",\n\t\t\t\"november\",\n\t\t\t\"december\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"jan\",\n\t\t\t\"feb\",\n\t\t\t\"mar\",\n\t\t\t\"apr\",\n\t\t\t\"maj\",\n\t\t\t\"jun\",\n\t\t\t\"jul\",\n\t\t\t\"aug\",\n\t\t\t\"sep\",\n\t\t\t\"okt\",\n\t\t\t\"nov\",\n\t\t\t\"dec\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"søndag\",\n\t\t\t\"mandag\",\n\t\t\t\"tirsdag\",\n\t\t\t\"onsdag\",\n\t\t\t\"torsdag\",\n\t\t\t\"fredag\",\n\t\t\t\"lørdag\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"søn\",\n\t\t\t\"man\",\n\t\t\t\"tir\",\n\t\t\t\"ons\",\n\t\t\t\"tor\",\n\t\t\t\"fre\",\n\t\t\t\"lør\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"sø\",\n\t\t\t\"ma\",\n\t\t\t\"ti\",\n\t\t\t\"on\",\n\t\t\t\"to\",\n\t\t\t\"fr\",\n\t\t\t\"lø\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tfi: {\n\t\tname: \"fi\",\n\t\tmonths: [\n\t\t\t\"tammikuuta\",\n\t\t\t\"helmikuuta\",\n\t\t\t\"maaliskuuta\",\n\t\t\t\"huhtikuuta\",\n\t\t\t\"toukokuuta\",\n\t\t\t\"kesäkuuta\",\n\t\t\t\"heinäkuuta\",\n\t\t\t\"elokuuta\",\n\t\t\t\"syyskuuta\",\n\t\t\t\"lokakuuta\",\n\t\t\t\"marraskuuta\",\n\t\t\t\"joulukuuta\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"tam.\",\n\t\t\t\"hel.\",\n\t\t\t\"maa.\",\n\t\t\t\"huh.\",\n\t\t\t\"tou.\",\n\t\t\t\"kes.\",\n\t\t\t\"hei.\",\n\t\t\t\"elo.\",\n\t\t\t\"syy.\",\n\t\t\t\"lok.\",\n\t\t\t\"mar.\",\n\t\t\t\"jou.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"sunnuntai\",\n\t\t\t\"maanantai\",\n\t\t\t\"tiistai\",\n\t\t\t\"keskiviikko\",\n\t\t\t\"torstai\",\n\t\t\t\"perjantai\",\n\t\t\t\"lauantai\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"su.\",\n\t\t\t\"ma.\",\n\t\t\t\"ti.\",\n\t\t\t\"ke.\",\n\t\t\t\"to.\",\n\t\t\t\"pe.\",\n\t\t\t\"la.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"su\",\n\t\t\t\"ma\",\n\t\t\t\"ti\",\n\t\t\t\"ke\",\n\t\t\t\"to\",\n\t\t\t\"pe\",\n\t\t\t\"la\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar ASIAN_LOCALES = {\n\tja: {\n\t\tname: \"ja\",\n\t\tmonths: [\n\t\t\t\"1月\",\n\t\t\t\"2月\",\n\t\t\t\"3月\",\n\t\t\t\"4月\",\n\t\t\t\"5月\",\n\t\t\t\"6月\",\n\t\t\t\"7月\",\n\t\t\t\"8月\",\n\t\t\t\"9月\",\n\t\t\t\"10月\",\n\t\t\t\"11月\",\n\t\t\t\"12月\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"1月\",\n\t\t\t\"2月\",\n\t\t\t\"3月\",\n\t\t\t\"4月\",\n\t\t\t\"5月\",\n\t\t\t\"6月\",\n\t\t\t\"7月\",\n\t\t\t\"8月\",\n\t\t\t\"9月\",\n\t\t\t\"10月\",\n\t\t\t\"11月\",\n\t\t\t\"12月\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"日曜日\",\n\t\t\t\"月曜日\",\n\t\t\t\"火曜日\",\n\t\t\t\"水曜日\",\n\t\t\t\"木曜日\",\n\t\t\t\"金曜日\",\n\t\t\t\"土曜日\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"日\",\n\t\t\t\"月\",\n\t\t\t\"火\",\n\t\t\t\"水\",\n\t\t\t\"木\",\n\t\t\t\"金\",\n\t\t\t\"土\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"日\",\n\t\t\t\"月\",\n\t\t\t\"火\",\n\t\t\t\"水\",\n\t\t\t\"木\",\n\t\t\t\"金\",\n\t\t\t\"土\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"午前\",\n\t\t\tpm: \"午後\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY年MM月DD日\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY年MM月DD日 HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\t\"zh-cn\": {\n\t\tname: \"zh-cn\",\n\t\tmonths: [\n\t\t\t\"1月\",\n\t\t\t\"2月\",\n\t\t\t\"3月\",\n\t\t\t\"4月\",\n\t\t\t\"5月\",\n\t\t\t\"6月\",\n\t\t\t\"7月\",\n\t\t\t\"8月\",\n\t\t\t\"9月\",\n\t\t\t\"10月\",\n\t\t\t\"11月\",\n\t\t\t\"12月\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"1月\",\n\t\t\t\"2月\",\n\t\t\t\"3月\",\n\t\t\t\"4月\",\n\t\t\t\"5月\",\n\t\t\t\"6月\",\n\t\t\t\"7月\",\n\t\t\t\"8月\",\n\t\t\t\"9月\",\n\t\t\t\"10月\",\n\t\t\t\"11月\",\n\t\t\t\"12月\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"星期日\",\n\t\t\t\"星期一\",\n\t\t\t\"星期二\",\n\t\t\t\"星期三\",\n\t\t\t\"星期四\",\n\t\t\t\"星期五\",\n\t\t\t\"星期六\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"周日\",\n\t\t\t\"周一\",\n\t\t\t\"周二\",\n\t\t\t\"周三\",\n\t\t\t\"周四\",\n\t\t\t\"周五\",\n\t\t\t\"周六\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"日\",\n\t\t\t\"一\",\n\t\t\t\"二\",\n\t\t\t\"三\",\n\t\t\t\"四\",\n\t\t\t\"五\",\n\t\t\t\"六\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"上午\",\n\t\t\tpm: \"下午\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY-MM-DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\t\"zh-tw\": {\n\t\tname: \"zh-tw\",\n\t\tmonths: [\n\t\t\t\"1月\",\n\t\t\t\"2月\",\n\t\t\t\"3月\",\n\t\t\t\"4月\",\n\t\t\t\"5月\",\n\t\t\t\"6月\",\n\t\t\t\"7月\",\n\t\t\t\"8月\",\n\t\t\t\"9月\",\n\t\t\t\"10月\",\n\t\t\t\"11月\",\n\t\t\t\"12月\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"1月\",\n\t\t\t\"2月\",\n\t\t\t\"3月\",\n\t\t\t\"4月\",\n\t\t\t\"5月\",\n\t\t\t\"6月\",\n\t\t\t\"7月\",\n\t\t\t\"8月\",\n\t\t\t\"9月\",\n\t\t\t\"10月\",\n\t\t\t\"11月\",\n\t\t\t\"12月\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"星期日\",\n\t\t\t\"星期一\",\n\t\t\t\"星期二\",\n\t\t\t\"星期三\",\n\t\t\t\"星期四\",\n\t\t\t\"星期五\",\n\t\t\t\"星期六\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"週日\",\n\t\t\t\"週一\",\n\t\t\t\"週二\",\n\t\t\t\"週三\",\n\t\t\t\"週四\",\n\t\t\t\"週五\",\n\t\t\t\"週六\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"日\",\n\t\t\t\"一\",\n\t\t\t\"二\",\n\t\t\t\"三\",\n\t\t\t\"四\",\n\t\t\t\"五\",\n\t\t\t\"六\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"上午\",\n\t\t\tpm: \"下午\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY-MM-DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tko: {\n\t\tname: \"ko\",\n\t\tmonths: [\n\t\t\t\"1월\",\n\t\t\t\"2월\",\n\t\t\t\"3월\",\n\t\t\t\"4월\",\n\t\t\t\"5월\",\n\t\t\t\"6월\",\n\t\t\t\"7월\",\n\t\t\t\"8월\",\n\t\t\t\"9월\",\n\t\t\t\"10월\",\n\t\t\t\"11월\",\n\t\t\t\"12월\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"1월\",\n\t\t\t\"2월\",\n\t\t\t\"3월\",\n\t\t\t\"4월\",\n\t\t\t\"5월\",\n\t\t\t\"6월\",\n\t\t\t\"7월\",\n\t\t\t\"8월\",\n\t\t\t\"9월\",\n\t\t\t\"10월\",\n\t\t\t\"11월\",\n\t\t\t\"12월\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"일요일\",\n\t\t\t\"월요일\",\n\t\t\t\"화요일\",\n\t\t\t\"수요일\",\n\t\t\t\"목요일\",\n\t\t\t\"금요일\",\n\t\t\t\"토요일\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"일\",\n\t\t\t\"월\",\n\t\t\t\"화\",\n\t\t\t\"수\",\n\t\t\t\"목\",\n\t\t\t\"금\",\n\t\t\t\"토\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"일\",\n\t\t\t\"월\",\n\t\t\t\"화\",\n\t\t\t\"수\",\n\t\t\t\"목\",\n\t\t\t\"금\",\n\t\t\t\"토\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"오전\",\n\t\t\tpm: \"오후\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY-MM-DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tth: {\n\t\tname: \"th\",\n\t\tmonths: [\n\t\t\t\"มกราคม\",\n\t\t\t\"กุมภาพันธ์\",\n\t\t\t\"มีนาคม\",\n\t\t\t\"เมษายน\",\n\t\t\t\"พฤษภาคม\",\n\t\t\t\"มิถุนายน\",\n\t\t\t\"กรกฎาคม\",\n\t\t\t\"สิงหาคม\",\n\t\t\t\"กันยายน\",\n\t\t\t\"ตุลาคม\",\n\t\t\t\"พฤศจิกายน\",\n\t\t\t\"ธันวาคม\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"ม.ค.\",\n\t\t\t\"ก.พ.\",\n\t\t\t\"มี.ค.\",\n\t\t\t\"เม.ย.\",\n\t\t\t\"พ.ค.\",\n\t\t\t\"มิ.ย.\",\n\t\t\t\"ก.ค.\",\n\t\t\t\"ส.ค.\",\n\t\t\t\"ก.ย.\",\n\t\t\t\"ต.ค.\",\n\t\t\t\"พ.ย.\",\n\t\t\t\"ธ.ค.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"อาทิตย์\",\n\t\t\t\"จันทร์\",\n\t\t\t\"อังคาร\",\n\t\t\t\"พุธ\",\n\t\t\t\"พฤหัสบดี\",\n\t\t\t\"ศุกร์\",\n\t\t\t\"เสาร์\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"อา.\",\n\t\t\t\"จ.\",\n\t\t\t\"อ.\",\n\t\t\t\"พ.\",\n\t\t\t\"พฤ.\",\n\t\t\t\"ศ.\",\n\t\t\t\"ส.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"อา\",\n\t\t\t\"จ\",\n\t\t\t\"อ\",\n\t\t\t\"พ\",\n\t\t\t\"พฤ\",\n\t\t\t\"ศ\",\n\t\t\t\"ส\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tvi: {\n\t\tname: \"vi\",\n\t\tmonths: [\n\t\t\t\"tháng 1\",\n\t\t\t\"tháng 2\",\n\t\t\t\"tháng 3\",\n\t\t\t\"tháng 4\",\n\t\t\t\"tháng 5\",\n\t\t\t\"tháng 6\",\n\t\t\t\"tháng 7\",\n\t\t\t\"tháng 8\",\n\t\t\t\"tháng 9\",\n\t\t\t\"tháng 10\",\n\t\t\t\"tháng 11\",\n\t\t\t\"tháng 12\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Th01\",\n\t\t\t\"Th02\",\n\t\t\t\"Th03\",\n\t\t\t\"Th04\",\n\t\t\t\"Th05\",\n\t\t\t\"Th06\",\n\t\t\t\"Th07\",\n\t\t\t\"Th08\",\n\t\t\t\"Th09\",\n\t\t\t\"Th10\",\n\t\t\t\"Th11\",\n\t\t\t\"Th12\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Chủ nhật\",\n\t\t\t\"Thứ hai\",\n\t\t\t\"Thứ ba\",\n\t\t\t\"Thứ tư\",\n\t\t\t\"Thứ năm\",\n\t\t\t\"Thứ sáu\",\n\t\t\t\"Thứ bảy\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"CN\",\n\t\t\t\"Hai\",\n\t\t\t\"Ba\",\n\t\t\t\"Tư\",\n\t\t\t\"Năm\",\n\t\t\t\"Sáu\",\n\t\t\t\"Bảy\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"CN\",\n\t\t\t\"T2\",\n\t\t\t\"T3\",\n\t\t\t\"T4\",\n\t\t\t\"T5\",\n\t\t\t\"T6\",\n\t\t\t\"T7\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tid: {\n\t\tname: \"id\",\n\t\tmonths: [\n\t\t\t\"Januari\",\n\t\t\t\"Februari\",\n\t\t\t\"Maret\",\n\t\t\t\"April\",\n\t\t\t\"Mei\",\n\t\t\t\"Juni\",\n\t\t\t\"Juli\",\n\t\t\t\"Agustus\",\n\t\t\t\"September\",\n\t\t\t\"Oktober\",\n\t\t\t\"November\",\n\t\t\t\"Desember\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jan\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Apr\",\n\t\t\t\"Mei\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Agu\",\n\t\t\t\"Sep\",\n\t\t\t\"Okt\",\n\t\t\t\"Nov\",\n\t\t\t\"Des\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Minggu\",\n\t\t\t\"Senin\",\n\t\t\t\"Selasa\",\n\t\t\t\"Rabu\",\n\t\t\t\"Kamis\",\n\t\t\t\"Jumat\",\n\t\t\t\"Sabtu\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Min\",\n\t\t\t\"Sen\",\n\t\t\t\"Sel\",\n\t\t\t\"Rab\",\n\t\t\t\"Kam\",\n\t\t\t\"Jum\",\n\t\t\t\"Sab\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Mg\",\n\t\t\t\"Sn\",\n\t\t\t\"Sl\",\n\t\t\t\"Rb\",\n\t\t\t\"Km\",\n\t\t\t\"Jm\",\n\t\t\t\"Sb\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar EUROPEAN_LOCALES = {\n\tde: {\n\t\tname: \"de\",\n\t\tmonths: [\n\t\t\t\"Januar\",\n\t\t\t\"Februar\",\n\t\t\t\"März\",\n\t\t\t\"April\",\n\t\t\t\"Mai\",\n\t\t\t\"Juni\",\n\t\t\t\"Juli\",\n\t\t\t\"August\",\n\t\t\t\"September\",\n\t\t\t\"Oktober\",\n\t\t\t\"November\",\n\t\t\t\"Dezember\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jan.\",\n\t\t\t\"Feb.\",\n\t\t\t\"Mär.\",\n\t\t\t\"Apr.\",\n\t\t\t\"Mai\",\n\t\t\t\"Jun.\",\n\t\t\t\"Jul.\",\n\t\t\t\"Aug.\",\n\t\t\t\"Sep.\",\n\t\t\t\"Okt.\",\n\t\t\t\"Nov.\",\n\t\t\t\"Dez.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Sonntag\",\n\t\t\t\"Montag\",\n\t\t\t\"Dienstag\",\n\t\t\t\"Mittwoch\",\n\t\t\t\"Donnerstag\",\n\t\t\t\"Freitag\",\n\t\t\t\"Samstag\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"So.\",\n\t\t\t\"Mo.\",\n\t\t\t\"Di.\",\n\t\t\t\"Mi.\",\n\t\t\t\"Do.\",\n\t\t\t\"Fr.\",\n\t\t\t\"Sa.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"So\",\n\t\t\t\"Mo\",\n\t\t\t\"Di\",\n\t\t\t\"Mi\",\n\t\t\t\"Do\",\n\t\t\t\"Fr\",\n\t\t\t\"Sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tnl: {\n\t\tname: \"nl\",\n\t\tmonths: [\n\t\t\t\"januari\",\n\t\t\t\"februari\",\n\t\t\t\"maart\",\n\t\t\t\"april\",\n\t\t\t\"mei\",\n\t\t\t\"juni\",\n\t\t\t\"juli\",\n\t\t\t\"augustus\",\n\t\t\t\"september\",\n\t\t\t\"oktober\",\n\t\t\t\"november\",\n\t\t\t\"december\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"jan.\",\n\t\t\t\"feb.\",\n\t\t\t\"mrt.\",\n\t\t\t\"apr.\",\n\t\t\t\"mei\",\n\t\t\t\"jun.\",\n\t\t\t\"jul.\",\n\t\t\t\"aug.\",\n\t\t\t\"sep.\",\n\t\t\t\"okt.\",\n\t\t\t\"nov.\",\n\t\t\t\"dec.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"zondag\",\n\t\t\t\"maandag\",\n\t\t\t\"dinsdag\",\n\t\t\t\"woensdag\",\n\t\t\t\"donderdag\",\n\t\t\t\"vrijdag\",\n\t\t\t\"zaterdag\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"zo.\",\n\t\t\t\"ma.\",\n\t\t\t\"di.\",\n\t\t\t\"wo.\",\n\t\t\t\"do.\",\n\t\t\t\"vr.\",\n\t\t\t\"za.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"zo\",\n\t\t\t\"ma\",\n\t\t\t\"di\",\n\t\t\t\"wo\",\n\t\t\t\"do\",\n\t\t\t\"vr\",\n\t\t\t\"za\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD-MM-YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD-MM-YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tel: {\n\t\tname: \"el\",\n\t\tmonths: [\n\t\t\t\"Ιανουάριος\",\n\t\t\t\"Φεβρουάριος\",\n\t\t\t\"Μάρτιος\",\n\t\t\t\"Απρίλιος\",\n\t\t\t\"Μάιος\",\n\t\t\t\"Ιούνιος\",\n\t\t\t\"Ιούλιος\",\n\t\t\t\"Αύγουστος\",\n\t\t\t\"Σεπτέμβριος\",\n\t\t\t\"Οκτώβριος\",\n\t\t\t\"Νοέμβριος\",\n\t\t\t\"Δεκέμβριος\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Ιαν\",\n\t\t\t\"Φεβ\",\n\t\t\t\"Μάρ\",\n\t\t\t\"Απρ\",\n\t\t\t\"Μάι\",\n\t\t\t\"Ιού\",\n\t\t\t\"Ιού\",\n\t\t\t\"Αύγ\",\n\t\t\t\"Σεπ\",\n\t\t\t\"Οκτ\",\n\t\t\t\"Νοέ\",\n\t\t\t\"Δεκ\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Κυριακή\",\n\t\t\t\"Δευτέρα\",\n\t\t\t\"Τρίτη\",\n\t\t\t\"Τετάρτη\",\n\t\t\t\"Πέμπτη\",\n\t\t\t\"Παρασκευή\",\n\t\t\t\"Σάββατο\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Κυρ\",\n\t\t\t\"Δευ\",\n\t\t\t\"Τρί\",\n\t\t\t\"Τετ\",\n\t\t\t\"Πέμ\",\n\t\t\t\"Παρ\",\n\t\t\t\"Σάβ\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Κ\",\n\t\t\t\"Δ\",\n\t\t\t\"Τ\",\n\t\t\t\"Τ\",\n\t\t\t\"Π\",\n\t\t\t\"Π\",\n\t\t\t\"Σ\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\thu: {\n\t\tname: \"hu\",\n\t\tmonths: [\n\t\t\t\"január\",\n\t\t\t\"február\",\n\t\t\t\"március\",\n\t\t\t\"április\",\n\t\t\t\"május\",\n\t\t\t\"június\",\n\t\t\t\"július\",\n\t\t\t\"augusztus\",\n\t\t\t\"szeptember\",\n\t\t\t\"október\",\n\t\t\t\"november\",\n\t\t\t\"december\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"jan.\",\n\t\t\t\"feb.\",\n\t\t\t\"már.\",\n\t\t\t\"ápr.\",\n\t\t\t\"máj.\",\n\t\t\t\"jún.\",\n\t\t\t\"júl.\",\n\t\t\t\"aug.\",\n\t\t\t\"szep.\",\n\t\t\t\"okt.\",\n\t\t\t\"nov.\",\n\t\t\t\"dec.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"vasárnap\",\n\t\t\t\"hétfő\",\n\t\t\t\"kedd\",\n\t\t\t\"szerda\",\n\t\t\t\"csütörtök\",\n\t\t\t\"péntek\",\n\t\t\t\"szombat\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"V\",\n\t\t\t\"H\",\n\t\t\t\"K\",\n\t\t\t\"Sz\",\n\t\t\t\"Cs\",\n\t\t\t\"P\",\n\t\t\t\"Szo\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"V\",\n\t\t\t\"H\",\n\t\t\t\"K\",\n\t\t\t\"Sz\",\n\t\t\t\"Cs\",\n\t\t\t\"P\",\n\t\t\t\"Szo\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY.MM.DD.\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY.MM.DD. HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\teu: {\n\t\tname: \"eu\",\n\t\tmonths: [\n\t\t\t\"urtarrila\",\n\t\t\t\"otsaila\",\n\t\t\t\"martxoa\",\n\t\t\t\"apirila\",\n\t\t\t\"maiatza\",\n\t\t\t\"ekaina\",\n\t\t\t\"uztaila\",\n\t\t\t\"abuztua\",\n\t\t\t\"iraila\",\n\t\t\t\"urria\",\n\t\t\t\"azaroa\",\n\t\t\t\"abendua\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"urt.\",\n\t\t\t\"ots.\",\n\t\t\t\"mar.\",\n\t\t\t\"api.\",\n\t\t\t\"mai.\",\n\t\t\t\"eka.\",\n\t\t\t\"uzt.\",\n\t\t\t\"abu.\",\n\t\t\t\"ira.\",\n\t\t\t\"urr.\",\n\t\t\t\"aza.\",\n\t\t\t\"abe.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"igandea\",\n\t\t\t\"astelehena\",\n\t\t\t\"asteartea\",\n\t\t\t\"asteazkena\",\n\t\t\t\"osteguna\",\n\t\t\t\"ostirala\",\n\t\t\t\"larunbata\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"ig.\",\n\t\t\t\"al.\",\n\t\t\t\"ar.\",\n\t\t\t\"az.\",\n\t\t\t\"og.\",\n\t\t\t\"or.\",\n\t\t\t\"lr.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"ig\",\n\t\t\t\"al\",\n\t\t\t\"ar\",\n\t\t\t\"az\",\n\t\t\t\"og\",\n\t\t\t\"or\",\n\t\t\t\"lr\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY.MM.DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY.MM.DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tca: {\n\t\tname: \"ca\",\n\t\tmonths: [\n\t\t\t\"gener\",\n\t\t\t\"febrer\",\n\t\t\t\"març\",\n\t\t\t\"abril\",\n\t\t\t\"maig\",\n\t\t\t\"juny\",\n\t\t\t\"juliol\",\n\t\t\t\"agost\",\n\t\t\t\"setembre\",\n\t\t\t\"octubre\",\n\t\t\t\"novembre\",\n\t\t\t\"desembre\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"gen\",\n\t\t\t\"feb\",\n\t\t\t\"mar\",\n\t\t\t\"abr\",\n\t\t\t\"mai\",\n\t\t\t\"jun\",\n\t\t\t\"jul\",\n\t\t\t\"ago\",\n\t\t\t\"set\",\n\t\t\t\"oct\",\n\t\t\t\"nov\",\n\t\t\t\"des\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"diumenge\",\n\t\t\t\"dilluns\",\n\t\t\t\"dimarts\",\n\t\t\t\"dimecres\",\n\t\t\t\"dijous\",\n\t\t\t\"divendres\",\n\t\t\t\"dissabte\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"diu\",\n\t\t\t\"dil\",\n\t\t\t\"dit\",\n\t\t\t\"dic\",\n\t\t\t\"dij\",\n\t\t\t\"div\",\n\t\t\t\"dis\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"du\",\n\t\t\t\"dl\",\n\t\t\t\"dt\",\n\t\t\t\"dc\",\n\t\t\t\"dj\",\n\t\t\t\"dv\",\n\t\t\t\"ds\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\ttr: {\n\t\tname: \"tr\",\n\t\tmonths: [\n\t\t\t\"Ocak\",\n\t\t\t\"Şubat\",\n\t\t\t\"Mart\",\n\t\t\t\"Nisan\",\n\t\t\t\"Mayıs\",\n\t\t\t\"Haziran\",\n\t\t\t\"Temmuz\",\n\t\t\t\"Ağustos\",\n\t\t\t\"Eylül\",\n\t\t\t\"Ekim\",\n\t\t\t\"Kasım\",\n\t\t\t\"Aralık\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Oca\",\n\t\t\t\"Şub\",\n\t\t\t\"Mar\",\n\t\t\t\"Nis\",\n\t\t\t\"May\",\n\t\t\t\"Haz\",\n\t\t\t\"Tem\",\n\t\t\t\"Ağu\",\n\t\t\t\"Eyl\",\n\t\t\t\"Eki\",\n\t\t\t\"Kas\",\n\t\t\t\"Ara\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Pazar\",\n\t\t\t\"Pazartesi\",\n\t\t\t\"Salı\",\n\t\t\t\"Çarşamba\",\n\t\t\t\"Perşembe\",\n\t\t\t\"Cuma\",\n\t\t\t\"Cumartesi\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Paz\",\n\t\t\t\"Ptz\",\n\t\t\t\"Sal\",\n\t\t\t\"Çar\",\n\t\t\t\"Per\",\n\t\t\t\"Cum\",\n\t\t\t\"Cts\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Pa\",\n\t\t\t\"Pt\",\n\t\t\t\"Sa\",\n\t\t\t\"Ça\",\n\t\t\t\"Pe\",\n\t\t\t\"Cu\",\n\t\t\t\"Ct\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"ÖÖ\",\n\t\t\tpm: \"ÖS\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD.MM.YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD.MM.YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar MIDDLE_EASTERN_LOCALES = {\n\tar: {\n\t\tname: \"ar\",\n\t\tmonths: [\n\t\t\t\"كانون الثاني\",\n\t\t\t\"شباط\",\n\t\t\t\"آذار\",\n\t\t\t\"نيسان\",\n\t\t\t\"أيار\",\n\t\t\t\"حزيران\",\n\t\t\t\"تموز\",\n\t\t\t\"آب\",\n\t\t\t\"أيلول\",\n\t\t\t\"تشرين الأول\",\n\t\t\t\"تشرين الثاني\",\n\t\t\t\"كانون الأول\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"1\",\n\t\t\t\"2\",\n\t\t\t\"3\",\n\t\t\t\"4\",\n\t\t\t\"5\",\n\t\t\t\"6\",\n\t\t\t\"7\",\n\t\t\t\"8\",\n\t\t\t\"9\",\n\t\t\t\"10\",\n\t\t\t\"11\",\n\t\t\t\"12\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"الأحد\",\n\t\t\t\"الاثنين\",\n\t\t\t\"الثلاثاء\",\n\t\t\t\"الأربعاء\",\n\t\t\t\"الخميس\",\n\t\t\t\"الجمعة\",\n\t\t\t\"السبت\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"أحد\",\n\t\t\t\"اثن\",\n\t\t\t\"ثلا\",\n\t\t\t\"أربع\",\n\t\t\t\"خمس\",\n\t\t\t\"جمع\",\n\t\t\t\"سبت\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"ح\",\n\t\t\t\"ن\",\n\t\t\t\"ث\",\n\t\t\t\"ع\",\n\t\t\t\"خ\",\n\t\t\t\"ج\",\n\t\t\t\"س\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"ص\",\n\t\t\tpm: \"م\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\the: {\n\t\tname: \"he\",\n\t\tmonths: [\n\t\t\t\"ינואר\",\n\t\t\t\"פברואר\",\n\t\t\t\"מרץ\",\n\t\t\t\"אפריל\",\n\t\t\t\"מאי\",\n\t\t\t\"יוני\",\n\t\t\t\"יולי\",\n\t\t\t\"אוגוסט\",\n\t\t\t\"ספטמבר\",\n\t\t\t\"אוקטובר\",\n\t\t\t\"נובמבר\",\n\t\t\t\"דצמבר\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"ינו\",\n\t\t\t\"פבר\",\n\t\t\t\"מרץ\",\n\t\t\t\"אפר\",\n\t\t\t\"מאי\",\n\t\t\t\"יוני\",\n\t\t\t\"יולי\",\n\t\t\t\"אוג\",\n\t\t\t\"ספט\",\n\t\t\t\"אוק\",\n\t\t\t\"נוב\",\n\t\t\t\"דצמ\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"ראשון\",\n\t\t\t\"שני\",\n\t\t\t\"שלישי\",\n\t\t\t\"רביעי\",\n\t\t\t\"חמישי\",\n\t\t\t\"שישי\",\n\t\t\t\"שבת\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"ראשון\",\n\t\t\t\"שני\",\n\t\t\t\"שלישי\",\n\t\t\t\"רביעי\",\n\t\t\t\"חמישי\",\n\t\t\t\"שישי\",\n\t\t\t\"שבת\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"ראו\",\n\t\t\t\"שני\",\n\t\t\t\"שלי\",\n\t\t\t\"רבי\",\n\t\t\t\"חמי\",\n\t\t\t\"שיש\",\n\t\t\t\"שבת\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\thi: {\n\t\tname: \"hi\",\n\t\tmonths: [\n\t\t\t\"जनवरी\",\n\t\t\t\"फ़रवरी\",\n\t\t\t\"मार्च\",\n\t\t\t\"अप्रैल\",\n\t\t\t\"मई\",\n\t\t\t\"जून\",\n\t\t\t\"जुलाई\",\n\t\t\t\"अगस्त\",\n\t\t\t\"सितंबर\",\n\t\t\t\"अक्टूबर\",\n\t\t\t\"नवंबर\",\n\t\t\t\"दिसंबर\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"जन\",\n\t\t\t\"फ़र\",\n\t\t\t\"मार\",\n\t\t\t\"अप्र\",\n\t\t\t\"मई\",\n\t\t\t\"जून\",\n\t\t\t\"जुल\",\n\t\t\t\"अग\",\n\t\t\t\"सित\",\n\t\t\t\"अक्ट\",\n\t\t\t\"नव\",\n\t\t\t\"दिस\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"रविवार\",\n\t\t\t\"सोमवार\",\n\t\t\t\"मंगलवार\",\n\t\t\t\"बुधवार\",\n\t\t\t\"गुरुवार\",\n\t\t\t\"शुक्रवार\",\n\t\t\t\"शनिवार\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"रवि\",\n\t\t\t\"सोम\",\n\t\t\t\"मंग\",\n\t\t\t\"बुध\",\n\t\t\t\"गुरु\",\n\t\t\t\"शुक्र\",\n\t\t\t\"शनि\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"र\",\n\t\t\t\"स\",\n\t\t\t\"मं\",\n\t\t\t\"ब\",\n\t\t\t\"गु\",\n\t\t\t\"श\",\n\t\t\t\"श\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar ADDITIONAL_LOCALES = {\n\tvi: {\n\t\tname: \"vi\",\n\t\tmonths: [\n\t\t\t\"Tháng 1\",\n\t\t\t\"Tháng 2\",\n\t\t\t\"Tháng 3\",\n\t\t\t\"Tháng 4\",\n\t\t\t\"Tháng 5\",\n\t\t\t\"Tháng 6\",\n\t\t\t\"Tháng 7\",\n\t\t\t\"Tháng 8\",\n\t\t\t\"Tháng 9\",\n\t\t\t\"Tháng 10\",\n\t\t\t\"Tháng 11\",\n\t\t\t\"Tháng 12\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Th1\",\n\t\t\t\"Th2\",\n\t\t\t\"Th3\",\n\t\t\t\"Th4\",\n\t\t\t\"Th5\",\n\t\t\t\"Th6\",\n\t\t\t\"Th7\",\n\t\t\t\"Th8\",\n\t\t\t\"Th9\",\n\t\t\t\"Th10\",\n\t\t\t\"Th11\",\n\t\t\t\"Th12\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Chủ nhật\",\n\t\t\t\"Thứ hai\",\n\t\t\t\"Thứ ba\",\n\t\t\t\"Thứ tư\",\n\t\t\t\"Thứ năm\",\n\t\t\t\"Thứ sáu\",\n\t\t\t\"Thứ bảy\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"CN\",\n\t\t\t\"Th2\",\n\t\t\t\"Th3\",\n\t\t\t\"Th4\",\n\t\t\t\"Th5\",\n\t\t\t\"Th6\",\n\t\t\t\"Th7\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"CN\",\n\t\t\t\"T2\",\n\t\t\t\"T3\",\n\t\t\t\"T4\",\n\t\t\t\"T5\",\n\t\t\t\"T6\",\n\t\t\t\"T7\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"SA\",\n\t\t\tpm: \"CH\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tid: {\n\t\tname: \"id\",\n\t\tmonths: [\n\t\t\t\"Januari\",\n\t\t\t\"Februari\",\n\t\t\t\"Maret\",\n\t\t\t\"April\",\n\t\t\t\"Mei\",\n\t\t\t\"Juni\",\n\t\t\t\"Juli\",\n\t\t\t\"Agustus\",\n\t\t\t\"September\",\n\t\t\t\"Oktober\",\n\t\t\t\"November\",\n\t\t\t\"Desember\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jan\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Apr\",\n\t\t\t\"Mei\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Agu\",\n\t\t\t\"Sep\",\n\t\t\t\"Okt\",\n\t\t\t\"Nov\",\n\t\t\t\"Des\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Minggu\",\n\t\t\t\"Senin\",\n\t\t\t\"Selasa\",\n\t\t\t\"Rabu\",\n\t\t\t\"Kamis\",\n\t\t\t\"Jumat\",\n\t\t\t\"Sabtu\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Min\",\n\t\t\t\"Sen\",\n\t\t\t\"Sel\",\n\t\t\t\"Rab\",\n\t\t\t\"Kam\",\n\t\t\t\"Jum\",\n\t\t\t\"Sab\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Mg\",\n\t\t\t\"Sn\",\n\t\t\t\"Sl\",\n\t\t\t\"Rb\",\n\t\t\t\"Km\",\n\t\t\t\"Jm\",\n\t\t\t\"Sb\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tth: {\n\t\tname: \"th\",\n\t\tmonths: [\n\t\t\t\"มกราคม\",\n\t\t\t\"กุมภาพันธ์\",\n\t\t\t\"มีนาคม\",\n\t\t\t\"เมษายน\",\n\t\t\t\"พฤษภาคม\",\n\t\t\t\"มิถุนายน\",\n\t\t\t\"กรกฎาคม\",\n\t\t\t\"สิงหาคม\",\n\t\t\t\"กันยายน\",\n\t\t\t\"ตุลาคม\",\n\t\t\t\"พฤศจิกายน\",\n\t\t\t\"ธันวาคม\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"ม.ค.\",\n\t\t\t\"ก.พ.\",\n\t\t\t\"มี.ค.\",\n\t\t\t\"เม.ย.\",\n\t\t\t\"พ.ค.\",\n\t\t\t\"มิ.ย.\",\n\t\t\t\"ก.ค.\",\n\t\t\t\"ส.ค.\",\n\t\t\t\"ก.ย.\",\n\t\t\t\"ต.ค.\",\n\t\t\t\"พ.ย.\",\n\t\t\t\"ธ.ค.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"อาทิตย์\",\n\t\t\t\"จันทร์\",\n\t\t\t\"อังคาร\",\n\t\t\t\"พุธ\",\n\t\t\t\"พฤหัสบดี\",\n\t\t\t\"ศุกร์\",\n\t\t\t\"เสาร์\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"อา.\",\n\t\t\t\"จ.\",\n\t\t\t\"อ.\",\n\t\t\t\"พ.\",\n\t\t\t\"พฤ.\",\n\t\t\t\"ศ.\",\n\t\t\t\"ส.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"อา\",\n\t\t\t\"จ\",\n\t\t\t\"อ\",\n\t\t\t\"พ\",\n\t\t\t\"พฤ\",\n\t\t\t\"ศ\",\n\t\t\t\"ส\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar AFRICAN_LOCALES = {\n\tsw: {\n\t\tname: \"sw\",\n\t\tmonths: [\n\t\t\t\"Januari\",\n\t\t\t\"Februari\",\n\t\t\t\"Machi\",\n\t\t\t\"Aprili\",\n\t\t\t\"Mei\",\n\t\t\t\"Juni\",\n\t\t\t\"Julai\",\n\t\t\t\"Agosti\",\n\t\t\t\"Septemba\",\n\t\t\t\"Oktoba\",\n\t\t\t\"Novemba\",\n\t\t\t\"Desemba\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jan\",\n\t\t\t\"Feb\",\n\t\t\t\"Mac\",\n\t\t\t\"Apr\",\n\t\t\t\"Mei\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Ago\",\n\t\t\t\"Sep\",\n\t\t\t\"Okt\",\n\t\t\t\"Nov\",\n\t\t\t\"Des\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Jumapili\",\n\t\t\t\"Jumatatu\",\n\t\t\t\"Jumanne\",\n\t\t\t\"Jumatano\",\n\t\t\t\"Alhamisi\",\n\t\t\t\"Ijumaa\",\n\t\t\t\"Jumamosi\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Jap\",\n\t\t\t\"Jat\",\n\t\t\t\"Jnn\",\n\t\t\t\"Jtn\",\n\t\t\t\"Alh\",\n\t\t\t\"Ijm\",\n\t\t\t\"Jms\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Jp\",\n\t\t\t\"Jt\",\n\t\t\t\"Jn\",\n\t\t\t\"Jt\",\n\t\t\t\"Al\",\n\t\t\t\"Ij\",\n\t\t\t\"Jm\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"asubuhi\",\n\t\t\tpm: \"alasiri\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\taf: {\n\t\tname: \"af\",\n\t\tmonths: [\n\t\t\t\"Januarie\",\n\t\t\t\"Februarie\",\n\t\t\t\"Maart\",\n\t\t\t\"April\",\n\t\t\t\"Mei\",\n\t\t\t\"Junie\",\n\t\t\t\"Julie\",\n\t\t\t\"Augustus\",\n\t\t\t\"September\",\n\t\t\t\"Oktober\",\n\t\t\t\"November\",\n\t\t\t\"Desember\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jan\",\n\t\t\t\"Feb\",\n\t\t\t\"Mrt\",\n\t\t\t\"Apr\",\n\t\t\t\"Mei\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Aug\",\n\t\t\t\"Sep\",\n\t\t\t\"Okt\",\n\t\t\t\"Nov\",\n\t\t\t\"Des\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Sondag\",\n\t\t\t\"Maandag\",\n\t\t\t\"Dinsdag\",\n\t\t\t\"Woensdag\",\n\t\t\t\"Donderdag\",\n\t\t\t\"Vrydag\",\n\t\t\t\"Saterdag\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Son\",\n\t\t\t\"Maa\",\n\t\t\t\"Din\",\n\t\t\t\"Woe\",\n\t\t\t\"Don\",\n\t\t\t\"Vry\",\n\t\t\t\"Sat\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"So\",\n\t\t\t\"Ma\",\n\t\t\t\"Di\",\n\t\t\t\"Wo\",\n\t\t\t\"Do\",\n\t\t\t\"Vr\",\n\t\t\t\"Sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"vm.\",\n\t\t\tpm: \"nm.\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY-MM-DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tzu: {\n\t\tname: \"zu\",\n\t\tmonths: [\n\t\t\t\"uMasingana\",\n\t\t\t\"uNhlolanja\",\n\t\t\t\"uNdasa\",\n\t\t\t\"uMbasa\",\n\t\t\t\"uNhlaba\",\n\t\t\t\"uNhlangulana\",\n\t\t\t\"uNtulikazi\",\n\t\t\t\"uNcwaba\",\n\t\t\t\"uMandulo\",\n\t\t\t\"uMfumfu\",\n\t\t\t\"uLwezi\",\n\t\t\t\"uZibandlela\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Mas\",\n\t\t\t\"Nhl\",\n\t\t\t\"Nda\",\n\t\t\t\"Mba\",\n\t\t\t\"Nhla\",\n\t\t\t\"Nhla\",\n\t\t\t\"Ntu\",\n\t\t\t\"Ncw\",\n\t\t\t\"Man\",\n\t\t\t\"Mfu\",\n\t\t\t\"Lwe\",\n\t\t\t\"Zib\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"iSonto\",\n\t\t\t\"uMsombuluko\",\n\t\t\t\"uLwesibili\",\n\t\t\t\"uLwesithathu\",\n\t\t\t\"uLwesine\",\n\t\t\t\"uLwesihlanu\",\n\t\t\t\"uMgqibelo\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Son\",\n\t\t\t\"Mso\",\n\t\t\t\"Bil\",\n\t\t\t\"Tha\",\n\t\t\t\"Ne\",\n\t\t\t\"Hla\",\n\t\t\t\"Mgq\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"So\",\n\t\t\t\"Ms\",\n\t\t\t\"Bi\",\n\t\t\t\"Th\",\n\t\t\t\"Ne\",\n\t\t\t\"Hl\",\n\t\t\t\"Mg\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"YYYY-MM-DD\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"YYYY-MM-DD HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tam: {\n\t\tname: \"am\",\n\t\tmonths: [\n\t\t\t\"ጃንዋሪ\",\n\t\t\t\"ፌብሩዋሪ\",\n\t\t\t\"ማርች\",\n\t\t\t\"ኤፕሪል\",\n\t\t\t\"ሜይ\",\n\t\t\t\"ጁን\",\n\t\t\t\"ጁላይ\",\n\t\t\t\"ኦገስት\",\n\t\t\t\"ሴፕቴምበር\",\n\t\t\t\"ኦክቶበር\",\n\t\t\t\"ኖቬምበር\",\n\t\t\t\"ዲሴምበር\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"ጃንዋ\",\n\t\t\t\"ፌብሩ\",\n\t\t\t\"ማርች\",\n\t\t\t\"ኤፕሪ\",\n\t\t\t\"ሜይ\",\n\t\t\t\"ጁን\",\n\t\t\t\"ጁላይ\",\n\t\t\t\"ኦገስ\",\n\t\t\t\"ሴፕቴ\",\n\t\t\t\"ኦክቶ\",\n\t\t\t\"ኖቬም\",\n\t\t\t\"ዲሴም\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"እሑድ\",\n\t\t\t\"ሰኞ\",\n\t\t\t\"ማክሰኞ\",\n\t\t\t\"ረቡዕ\",\n\t\t\t\"ሐሙስ\",\n\t\t\t\"አርብ\",\n\t\t\t\"ቅዳሜ\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"እሑድ\",\n\t\t\t\"ሰኞ\",\n\t\t\t\"ማክሰ\",\n\t\t\t\"ረቡዕ\",\n\t\t\t\"ሐሙስ\",\n\t\t\t\"አርብ\",\n\t\t\t\"ቅዳሜ\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"እ\",\n\t\t\t\"ሰ\",\n\t\t\t\"ማ\",\n\t\t\t\"ረ\",\n\t\t\t\"ሐ\",\n\t\t\t\"አ\",\n\t\t\t\"ቅ\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"ጡዋት\",\n\t\t\tpm: \"ከሰዓት\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tyo: {\n\t\tname: \"yo\",\n\t\tmonths: [\n\t\t\t\"Sẹrẹ\",\n\t\t\t\"Erẹle\",\n\t\t\t\"Ẹrẹna\",\n\t\t\t\"Igbe\",\n\t\t\t\"Ebibi\",\n\t\t\t\"Okudu\",\n\t\t\t\"Agẹmọ\",\n\t\t\t\"Ogun\",\n\t\t\t\"Owewe\",\n\t\t\t\"Ọwawa\",\n\t\t\t\"Belu\",\n\t\t\t\"Ọpẹ\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Sẹr\",\n\t\t\t\"Erẹ\",\n\t\t\t\"Ẹrẹ\",\n\t\t\t\"Igb\",\n\t\t\t\"Ebi\",\n\t\t\t\"Oku\",\n\t\t\t\"Agẹ\",\n\t\t\t\"Ogu\",\n\t\t\t\"Owe\",\n\t\t\t\"Ọwa\",\n\t\t\t\"Bel\",\n\t\t\t\"Ọpẹ\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Àìkú\",\n\t\t\t\"Ajé\",\n\t\t\t\"Ìsẹgun\",\n\t\t\t\"Ọjọ́rú\",\n\t\t\t\"Ọjọ́bọ̀\",\n\t\t\t\"Ẹtì\",\n\t\t\t\"Àbámẹ́ta\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Àìk\",\n\t\t\t\"Ajé\",\n\t\t\t\"Ìsẹ\",\n\t\t\t\"Ọjọ́\",\n\t\t\t\"Ọjọ́\",\n\t\t\t\"Ẹtì\",\n\t\t\t\"Àbá\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Àì\",\n\t\t\t\"Aj\",\n\t\t\t\"Ìs\",\n\t\t\t\"Ọj\",\n\t\t\t\"Ọj\",\n\t\t\t\"Ẹt\",\n\t\t\t\"Àb\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"Àárọ̀\",\n\t\t\tpm: \"Ọ̀sán\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\nvar SOUTH_AMERICAN_LOCALES = {\n\t\"es-419\": {\n\t\tname: \"es-419\",\n\t\tmonths: [\n\t\t\t\"enero\",\n\t\t\t\"febrero\",\n\t\t\t\"marzo\",\n\t\t\t\"abril\",\n\t\t\t\"mayo\",\n\t\t\t\"junio\",\n\t\t\t\"julio\",\n\t\t\t\"agosto\",\n\t\t\t\"septiembre\",\n\t\t\t\"octubre\",\n\t\t\t\"noviembre\",\n\t\t\t\"diciembre\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"ene.\",\n\t\t\t\"feb.\",\n\t\t\t\"mar.\",\n\t\t\t\"abr.\",\n\t\t\t\"may.\",\n\t\t\t\"jun.\",\n\t\t\t\"jul.\",\n\t\t\t\"ago.\",\n\t\t\t\"sep.\",\n\t\t\t\"oct.\",\n\t\t\t\"nov.\",\n\t\t\t\"dic.\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"domingo\",\n\t\t\t\"lunes\",\n\t\t\t\"martes\",\n\t\t\t\"miércoles\",\n\t\t\t\"jueves\",\n\t\t\t\"viernes\",\n\t\t\t\"sábado\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"dom.\",\n\t\t\t\"lun.\",\n\t\t\t\"mar.\",\n\t\t\t\"mié.\",\n\t\t\t\"jue.\",\n\t\t\t\"vie.\",\n\t\t\t\"sáb.\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"do\",\n\t\t\t\"lu\",\n\t\t\t\"ma\",\n\t\t\t\"mi\",\n\t\t\t\"ju\",\n\t\t\t\"vi\",\n\t\t\t\"sa\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"a.m.\",\n\t\t\tpm: \"p.m.\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tqu: {\n\t\tname: \"qu\",\n\t\tmonths: [\n\t\t\t\"Qulla puquy\",\n\t\t\t\"Hatun puquy\",\n\t\t\t\"Pauqar waray\",\n\t\t\t\"Ayriwa\",\n\t\t\t\"Aymuray\",\n\t\t\t\"Inti raymi\",\n\t\t\t\"Anta situwa\",\n\t\t\t\"Qhapaq situwa\",\n\t\t\t\"Uma raymi\",\n\t\t\t\"Kantaray\",\n\t\t\t\"Ayamarq'a\",\n\t\t\t\"Qhapaq raymi\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Qul\",\n\t\t\t\"Hat\",\n\t\t\t\"Pau\",\n\t\t\t\"Ayr\",\n\t\t\t\"Aym\",\n\t\t\t\"Int\",\n\t\t\t\"Ant\",\n\t\t\t\"Qha\",\n\t\t\t\"Uma\",\n\t\t\t\"Kan\",\n\t\t\t\"Aya\",\n\t\t\t\"Qha\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Intichaw\",\n\t\t\t\"Killachaw\",\n\t\t\t\"Atipachaw\",\n\t\t\t\"Quyllurchaw\",\n\t\t\t\"Illapachaw\",\n\t\t\t\"Chaskachaw\",\n\t\t\t\"Kuychichaw\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Int\",\n\t\t\t\"Kil\",\n\t\t\t\"Ati\",\n\t\t\t\"Quy\",\n\t\t\t\"Ill\",\n\t\t\t\"Cha\",\n\t\t\t\"Kuy\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"In\",\n\t\t\t\"Ki\",\n\t\t\t\"At\",\n\t\t\t\"Qu\",\n\t\t\t\"Il\",\n\t\t\t\"Ch\",\n\t\t\t\"Ku\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tgn: {\n\t\tname: \"gn\",\n\t\tmonths: [\n\t\t\t\"Jasyteĩ\",\n\t\t\t\"Jasykõi\",\n\t\t\t\"Jasyapy\",\n\t\t\t\"Jasyrundy\",\n\t\t\t\"Jasypo\",\n\t\t\t\"Jasypoteĩ\",\n\t\t\t\"Jasypokõi\",\n\t\t\t\"Jasypoapy\",\n\t\t\t\"Jasyporundy\",\n\t\t\t\"Jasypateĩ\",\n\t\t\t\"Jasypakõi\",\n\t\t\t\"Jasypoapýra\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Jteĩ\",\n\t\t\t\"Jkõi\",\n\t\t\t\"Japy\",\n\t\t\t\"Jrun\",\n\t\t\t\"Jpo\",\n\t\t\t\"Jpot\",\n\t\t\t\"Jpok\",\n\t\t\t\"Jpoa\",\n\t\t\t\"Jpor\",\n\t\t\t\"Jpat\",\n\t\t\t\"Jpak\",\n\t\t\t\"Jpoa\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Arateĩ\",\n\t\t\t\"Arakõi\",\n\t\t\t\"Araapy\",\n\t\t\t\"Ararundy\",\n\t\t\t\"Arapo\",\n\t\t\t\"Arapoteĩ\",\n\t\t\t\"Arapokõi\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Ateĩ\",\n\t\t\t\"Akõi\",\n\t\t\t\"Aapy\",\n\t\t\t\"Arun\",\n\t\t\t\"Apo\",\n\t\t\t\"Apot\",\n\t\t\t\"Apok\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Ar\",\n\t\t\t\"Ak\",\n\t\t\t\"Aa\",\n\t\t\t\"Ar\",\n\t\t\t\"Ap\",\n\t\t\t\"Ap\",\n\t\t\t\"Ap\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tay: {\n\t\tname: \"ay\",\n\t\tmonths: [\n\t\t\t\"Chinuqa\",\n\t\t\t\"Anata\",\n\t\t\t\"Achqa\",\n\t\t\t\"Qasiwi\",\n\t\t\t\"Llamayu\",\n\t\t\t\"Kabillu\",\n\t\t\t\"Willka kuti\",\n\t\t\t\"Llampu\",\n\t\t\t\"Sata Qallta\",\n\t\t\t\"Taypi sata\",\n\t\t\t\"Lapaqa\",\n\t\t\t\"Jallu Qallta\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Chi\",\n\t\t\t\"Ana\",\n\t\t\t\"Ach\",\n\t\t\t\"Qas\",\n\t\t\t\"Lla\",\n\t\t\t\"Kab\",\n\t\t\t\"Wil\",\n\t\t\t\"Lla\",\n\t\t\t\"Sat\",\n\t\t\t\"Tay\",\n\t\t\t\"Lap\",\n\t\t\t\"Jal\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Inti uru\",\n\t\t\t\"Phaxsi uru\",\n\t\t\t\"Saxra uru\",\n\t\t\t\"Quyllur uru\",\n\t\t\t\"Illapa uru\",\n\t\t\t\"Chaska uru\",\n\t\t\t\"Kurmi uru\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Int\",\n\t\t\t\"Pha\",\n\t\t\t\"Sax\",\n\t\t\t\"Quy\",\n\t\t\t\"Ill\",\n\t\t\t\"Cha\",\n\t\t\t\"Kur\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"In\",\n\t\t\t\"Ph\",\n\t\t\t\"Sa\",\n\t\t\t\"Qu\",\n\t\t\t\"Il\",\n\t\t\t\"Ch\",\n\t\t\t\"Ku\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t},\n\tarn: {\n\t\tname: \"arn\",\n\t\tmonths: [\n\t\t\t\"Tripantu\",\n\t\t\t\"Konün\",\n\t\t\t\"Nieln\",\n\t\t\t\"Llafe\",\n\t\t\t\"Mawün\",\n\t\t\t\"Pillan\",\n\t\t\t\"Wanglen\",\n\t\t\t\"Kuyen\",\n\t\t\t\"Antü\",\n\t\t\t\"Kürüf\",\n\t\t\t\"Ko\",\n\t\t\t\"Kutral\"\n\t\t],\n\t\tmonthsShort: [\n\t\t\t\"Tri\",\n\t\t\t\"Kon\",\n\t\t\t\"Nie\",\n\t\t\t\"Lla\",\n\t\t\t\"Maw\",\n\t\t\t\"Pil\",\n\t\t\t\"Wan\",\n\t\t\t\"Kuy\",\n\t\t\t\"Ant\",\n\t\t\t\"Kür\",\n\t\t\t\"Ko\",\n\t\t\t\"Kut\"\n\t\t],\n\t\tweekdays: [\n\t\t\t\"Kiñe\",\n\t\t\t\"Epu\",\n\t\t\t\"Kula\",\n\t\t\t\"Meli\",\n\t\t\t\"Kechu\",\n\t\t\t\"Kayu\",\n\t\t\t\"Regle\"\n\t\t],\n\t\tweekdaysShort: [\n\t\t\t\"Kiñ\",\n\t\t\t\"Epu\",\n\t\t\t\"Kul\",\n\t\t\t\"Mel\",\n\t\t\t\"Kec\",\n\t\t\t\"Kay\",\n\t\t\t\"Reg\"\n\t\t],\n\t\tweekdaysMin: [\n\t\t\t\"Ki\",\n\t\t\t\"Ep\",\n\t\t\t\"Ku\",\n\t\t\t\"Me\",\n\t\t\t\"Ke\",\n\t\t\t\"Ka\",\n\t\t\t\"Re\"\n\t\t],\n\t\tmeridiem: {\n\t\t\tam: \"AM\",\n\t\t\tpm: \"PM\"\n\t\t},\n\t\tformats: {\n\t\t\tiso: \"YYYY-MM-DDTHH:mm:ss.SSSZ\",\n\t\t\tdate: \"DD/MM/YYYY\",\n\t\t\ttime: \"HH:mm:ss\",\n\t\t\tdatetime: \"DD/MM/YYYY HH:mm:ss\",\n\t\t\trfc2822: \"ddd, DD MMM YYYY HH:mm:ss Z\"\n\t\t}\n\t}\n};\n//#endregion\n//#region src/locales/index.ts\n/**\n* Aggregated locale data from all modules\n*/\nvar ALL_LOCALES = {\n\t...ENGLISH_LOCALES,\n\t...SPANISH_LOCALES,\n\t...ROMANCE_LOCALES,\n\t...SLAVIC_LOCALES,\n\t...NORDIC_LOCALES,\n\t...ASIAN_LOCALES,\n\t...EUROPEAN_LOCALES,\n\t...MIDDLE_EASTERN_LOCALES,\n\t...ADDITIONAL_LOCALES,\n\t...AFRICAN_LOCALES,\n\t...SOUTH_AMERICAN_LOCALES\n};\n/**\n* Register all locales into a locale map\n*/\nfunction registerAllLocales(localeMap) {\n\tif (localeMap instanceof Map) Object.entries(ALL_LOCALES).forEach(([code, data]) => {\n\t\tlocaleMap.set(code, data);\n\t});\n\telse Object.entries(ALL_LOCALES).forEach(([code, data]) => {\n\t\tlocaleMap[code] = data;\n\t});\n}\n/**\n* Get all available locales\n*/\nfunction getAvailableLocales() {\n\treturn Object.keys(ALL_LOCALES);\n}\n/**\n* Total locales count\n*/\nvar LOCALES_COUNT = Object.keys(ALL_LOCALES).length;\n//#endregion\nexport { registerAllLocales as i, LOCALES_COUNT as n, getAvailableLocales as r, ALL_LOCALES as t };\n","/*! time-guard v2.7.2 | (c) 2026 Berea-Soft | MIT License | https://github.com/Berea-Soft/time-guard */\nimport { a as version, c as GregorianCalendar, d as TemporalAdapter, f as EN_LOCALE, i as timeGuard, l as calendarManager, m as LocaleManager, n as TimeGuard, o as PluginManager, p as ES_LOCALE, r as TimeRange, s as CalendarManager, t as DurationResult, u as DateFormatter } from \"./core-DWPXk3rz.js\";\nimport { i as registerAllLocales, n as LOCALES_COUNT, r as getAvailableLocales, t as ALL_LOCALES } from \"./locales-BUE_aq8K.js\";\nimport { BuddhistCalendar, ChineseCalendar, HebrewCalendar, IslamicCalendar, JapaneseCalendar } from \"./calendars/index.es.js\";\nimport relative_time_default, { RelativeTimePlugin } from \"./plugins/relative-time.es.js\";\nimport durationPlugin, { Duration, DurationPlugin } from \"./plugins/duration.es.js\";\nimport advanced_format_default, { AdvancedFormatPlugin } from \"./plugins/advanced-format.es.js\";\n//#region \\0rolldown/runtime.js\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);\nvar __copyProps = (to, from, except, desc) => {\n\tif (from && typeof from === \"object\" || typeof from === \"function\") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {\n\t\tkey = keys[i];\n\t\tif (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {\n\t\t\tget: ((k) => from[k]).bind(null, key),\n\t\t\tenumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable\n\t\t});\n\t}\n\treturn to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", {\n\tvalue: mod,\n\tenumerable: true\n}) : target, mod));\n//#endregion\n//#region node_modules/.pnpm/@js-temporal+polyfill@0.5.1/node_modules/@js-temporal/polyfill/dist/index.esm.js\nvar import_jsbi_umd = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {\n\t(function(e, t) {\n\t\t\"object\" == typeof exports && \"undefined\" != typeof module ? module.exports = t() : \"function\" == typeof define && define.amd ? define(t) : (e = e || self, e.JSBI = t());\n\t})(exports, function() {\n\t\t\"use strict\";\n\t\tvar e = Math.imul, t = Math.clz32;\n\t\tfunction i(t, i) {\n\t\t\t(null == i || i > t.length) && (i = t.length);\n\t\t\tfor (var _ = 0, o = Array(i); _ < i; _++) o[_] = t[_];\n\t\t\treturn o;\n\t\t}\n\t\tfunction _(e) {\n\t\t\tif (Array.isArray(e)) return e;\n\t\t}\n\t\tfunction n(t) {\n\t\t\tif (void 0 === t) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n\t\t\treturn t;\n\t\t}\n\t\tfunction o(i, t, _) {\n\t\t\treturn t = r(t), v(i, b() ? Reflect.construct(t, _ || [], r(i).constructor) : t.apply(i, _));\n\t\t}\n\t\tfunction l(e, t) {\n\t\t\tif (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\");\n\t\t}\n\t\tfunction g(i, t, e) {\n\t\t\tif (b()) return Reflect.construct.apply(null, arguments);\n\t\t\tvar _ = [null];\n\t\t\t_.push.apply(_, t);\n\t\t\tvar n = new (i.bind.apply(i, _))();\n\t\t\treturn e && y(n, e.prototype), n;\n\t\t}\n\t\tfunction a(i, e) {\n\t\t\tfor (var _, n = 0; n < e.length; n++) _ = e[n], _.enumerable = _.enumerable || !1, _.configurable = !0, \"value\" in _ && (_.writable = !0), Object.defineProperty(i, D(_.key), _);\n\t\t}\n\t\tfunction s(i, e, _) {\n\t\t\treturn e && a(i.prototype, e), _ && a(i, _), Object.defineProperty(i, \"prototype\", { writable: !1 }), i;\n\t\t}\n\t\tfunction u(i, _) {\n\t\t\tvar e = \"undefined\" != typeof Symbol && i[Symbol.iterator] || i[\"@@iterator\"];\n\t\t\tif (!e) {\n\t\t\t\tif (Array.isArray(i) || (e = B(i)) || _ && i && \"number\" == typeof i.length) {\n\t\t\t\t\te && (i = e);\n\t\t\t\t\tvar l = 0, g = function() {};\n\t\t\t\t\treturn {\n\t\t\t\t\t\ts: g,\n\t\t\t\t\t\tn: function() {\n\t\t\t\t\t\t\treturn l >= i.length ? { done: !0 } : {\n\t\t\t\t\t\t\t\tdone: !1,\n\t\t\t\t\t\t\t\tvalue: i[l++]\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t},\n\t\t\t\t\t\te: function(e) {\n\t\t\t\t\t\t\tthrow e;\n\t\t\t\t\t\t},\n\t\t\t\t\t\tf: g\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tthrow new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n\t\t\t}\n\t\t\tvar s, d = !0, h = !1;\n\t\t\treturn {\n\t\t\t\ts: function() {\n\t\t\t\t\te = e.call(i);\n\t\t\t\t},\n\t\t\t\tn: function() {\n\t\t\t\t\tvar t = e.next();\n\t\t\t\t\treturn d = t.done, t;\n\t\t\t\t},\n\t\t\t\te: function(e) {\n\t\t\t\t\th = !0, s = e;\n\t\t\t\t},\n\t\t\t\tf: function() {\n\t\t\t\t\ttry {\n\t\t\t\t\t\td || null == e.return || e.return();\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tif (h) throw s;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\t\tfunction r(e) {\n\t\t\treturn r = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) {\n\t\t\t\treturn e.__proto__ || Object.getPrototypeOf(e);\n\t\t\t}, r(e);\n\t\t}\n\t\tfunction d(i, t) {\n\t\t\tif (\"function\" != typeof t && null !== t) throw new TypeError(\"Super expression must either be null or a function\");\n\t\t\ti.prototype = Object.create(t && t.prototype, { constructor: {\n\t\t\t\tvalue: i,\n\t\t\t\twritable: !0,\n\t\t\t\tconfigurable: !0\n\t\t\t} }), Object.defineProperty(i, \"prototype\", { writable: !1 }), t && y(i, t);\n\t\t}\n\t\tfunction h(e) {\n\t\t\ttry {\n\t\t\t\treturn -1 !== Function.toString.call(e).indexOf(\"[native code]\");\n\t\t\t} catch (t) {\n\t\t\t\treturn \"function\" == typeof e;\n\t\t\t}\n\t\t}\n\t\tfunction b() {\n\t\t\ttry {\n\t\t\t\tvar e = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));\n\t\t\t} catch (e) {}\n\t\t\treturn (b = function() {\n\t\t\t\treturn !!e;\n\t\t\t})();\n\t\t}\n\t\tfunction m(_, g) {\n\t\t\tvar l = null == _ ? null : \"undefined\" != typeof Symbol && _[Symbol.iterator] || _[\"@@iterator\"];\n\t\t\tif (null != l) {\n\t\t\t\tvar s, d, r, h, b = [], a = !0, m = !1;\n\t\t\t\ttry {\n\t\t\t\t\tif (r = (l = l.call(_)).next, 0 === g) {\n\t\t\t\t\t\tif (Object(l) !== l) return;\n\t\t\t\t\t\ta = !1;\n\t\t\t\t\t} else for (; !(a = (s = r.call(l)).done) && (b.push(s.value), b.length !== g); a = !0);\n\t\t\t\t} catch (e) {\n\t\t\t\t\tm = !0, d = e;\n\t\t\t\t} finally {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (!a && null != l.return && (h = l.return(), Object(h) !== h)) return;\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tif (m) throw d;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn b;\n\t\t\t}\n\t\t}\n\t\tfunction c() {\n\t\t\tthrow new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n\t\t}\n\t\tfunction v(i, t) {\n\t\t\tif (t && (\"object\" == typeof t || \"function\" == typeof t)) return t;\n\t\t\tif (void 0 !== t) throw new TypeError(\"Derived constructors may only return object or undefined\");\n\t\t\treturn n(i);\n\t\t}\n\t\tfunction y(i, t) {\n\t\t\treturn y = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(i, t) {\n\t\t\t\treturn i.__proto__ = t, i;\n\t\t\t}, y(i, t);\n\t\t}\n\t\tfunction f(t, i) {\n\t\t\treturn _(t) || m(t, i) || B(t, i) || c();\n\t\t}\n\t\tfunction k(_, t) {\n\t\t\tif (\"object\" != typeof _ || !_) return _;\n\t\t\tvar n = _[Symbol.toPrimitive];\n\t\t\tif (void 0 !== n) {\n\t\t\t\tvar e = n.call(_, t || \"default\");\n\t\t\t\tif (\"object\" != typeof e) return e;\n\t\t\t\tthrow new TypeError(\"@@toPrimitive must return a primitive value.\");\n\t\t\t}\n\t\t\treturn (\"string\" === t ? String : Number)(_);\n\t\t}\n\t\tfunction D(e) {\n\t\t\tvar t = k(e, \"string\");\n\t\t\treturn \"symbol\" == typeof t ? t : t + \"\";\n\t\t}\n\t\tfunction p(e) {\n\t\t\t\"@babel/helpers - typeof\";\n\t\t\treturn p = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function(e) {\n\t\t\t\treturn typeof e;\n\t\t\t} : function(e) {\n\t\t\t\treturn e && \"function\" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? \"symbol\" : typeof e;\n\t\t\t}, p(e);\n\t\t}\n\t\tfunction B(e, _) {\n\t\t\tif (e) {\n\t\t\t\tif (\"string\" == typeof e) return i(e, _);\n\t\t\t\tvar n = {}.toString.call(e).slice(8, -1);\n\t\t\t\treturn \"Object\" === n && e.constructor && (n = e.constructor.name), \"Map\" === n || \"Set\" === n ? Array.from(e) : \"Arguments\" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? i(e, _) : void 0;\n\t\t\t}\n\t\t}\n\t\tfunction S(e) {\n\t\t\tvar i = \"function\" == typeof Map ? /* @__PURE__ */ new Map() : void 0;\n\t\t\treturn S = function(e) {\n\t\t\t\tfunction t() {\n\t\t\t\t\treturn g(e, arguments, r(this).constructor);\n\t\t\t\t}\n\t\t\t\tif (null === e || !h(e)) return e;\n\t\t\t\tif (\"function\" != typeof e) throw new TypeError(\"Super expression must either be null or a function\");\n\t\t\t\tif (void 0 !== i) {\n\t\t\t\t\tif (i.has(e)) return i.get(e);\n\t\t\t\t\ti.set(e, t);\n\t\t\t\t}\n\t\t\t\treturn t.prototype = Object.create(e.prototype, { constructor: {\n\t\t\t\t\tvalue: t,\n\t\t\t\t\tenumerable: !1,\n\t\t\t\t\twritable: !0,\n\t\t\t\t\tconfigurable: !0\n\t\t\t\t} }), y(t, e);\n\t\t\t}, S(e);\n\t\t}\n\t\tvar C = function(e) {\n\t\t\tvar t = Math.abs, i = Math.max, _ = Math.floor;\n\t\t\tfunction g(e, t) {\n\t\t\t\tvar i;\n\t\t\t\tif (l(this, g), i = o(this, g, [e]), i.sign = t, Object.setPrototypeOf(i, g.prototype), e > g.__kMaxLength) throw new RangeError(\"Maximum BigInt size exceeded\");\n\t\t\t\treturn i;\n\t\t\t}\n\t\t\treturn d(g, e), s(g, [\n\t\t\t\t{\n\t\t\t\t\tkey: \"toDebugString\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\tvar t, i = [\"BigInt[\"], _ = u(this);\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tfor (_.s(); !(t = _.n()).done;) {\n\t\t\t\t\t\t\t\tvar n = t.value;\n\t\t\t\t\t\t\t\ti.push((n ? (n >>> 0).toString(16) : n) + \", \");\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\t_.e(e);\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\t_.f();\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn i.push(\"]\"), i.join(\"\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"toString\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\tvar t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : 10;\n\t\t\t\t\t\tif (2 > t || 36 < t) throw new RangeError(\"toString() radix argument must be between 2 and 36\");\n\t\t\t\t\t\treturn 0 === this.length ? \"0\" : 0 == (t & t - 1) ? g.__toStringBasePowerOfTwo(this, t) : g.__toStringGeneric(this, t, !1);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"valueOf\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\tthrow new Error(\"Convert JSBI instances to native numbers using `toNumber`.\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__copy\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\tfor (var t = new g(this.length, this.sign), _ = 0; _ < this.length; _++) t[_] = this[_];\n\t\t\t\t\t\treturn t;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__trim\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\tfor (var t = this.length, i = this[t - 1]; 0 === i;) t--, i = this[t - 1], this.pop();\n\t\t\t\t\t\treturn 0 === t && (this.sign = !1), this;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__initializeDigits\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\tfor (var t = 0; t < this.length; t++) this[t] = 0;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__clzmsd\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\treturn g.__clz30(this.__digit(this.length - 1));\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__inplaceMultiplyAdd\",\n\t\t\t\t\tvalue: function n(e, t, _) {\n\t\t\t\t\t\t_ > this.length && (_ = this.length);\n\t\t\t\t\t\tfor (var o = 32767 & e, l = e >>> 15, a = 0, s = t, u = 0; u < _; u++) {\n\t\t\t\t\t\t\tvar r = this.__digit(u), h = 32767 & r, b = r >>> 15, m = g.__imul(h, o), c = g.__imul(h, l), v = g.__imul(b, o), y = g.__imul(b, l), f = s + m + a;\n\t\t\t\t\t\t\ta = f >>> 30, f &= 1073741823, f += ((32767 & c) << 15) + ((32767 & v) << 15), a += f >>> 30, s = y + (c >>> 15) + (v >>> 15), this.__setDigit(u, 1073741823 & f);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (0 !== a || 0 !== s) throw new Error(\"implementation bug\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__inplaceAdd\",\n\t\t\t\t\tvalue: function n(e, t, _) {\n\t\t\t\t\t\tfor (var o, l = 0, g = 0; g < _; g++) o = this.__halfDigit(t + g) + e.__halfDigit(g) + l, l = o >>> 15, this.__setHalfDigit(t + g, 32767 & o);\n\t\t\t\t\t\treturn l;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__inplaceSub\",\n\t\t\t\t\tvalue: function n(e, t, _) {\n\t\t\t\t\t\tvar o = _ - 1 >>> 1, l = 0;\n\t\t\t\t\t\tif (1 & t) {\n\t\t\t\t\t\t\tt >>= 1;\n\t\t\t\t\t\t\tfor (var g = this.__digit(t), a = 32767 & g, s = 0; s < o; s++) {\n\t\t\t\t\t\t\t\tvar u = e.__digit(s), r = (g >>> 15) - (32767 & u) - l;\n\t\t\t\t\t\t\t\tl = 1 & r >>> 15, this.__setDigit(t + s, (32767 & r) << 15 | 32767 & a), g = this.__digit(t + s + 1), a = (32767 & g) - (u >>> 15) - l, l = 1 & a >>> 15;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvar d = e.__digit(s), h = (g >>> 15) - (32767 & d) - l;\n\t\t\t\t\t\t\tl = 1 & h >>> 15, this.__setDigit(t + s, (32767 & h) << 15 | 32767 & a);\n\t\t\t\t\t\t\tvar b = d >>> 15;\n\t\t\t\t\t\t\tif (t + s + 1 >= this.length) throw new RangeError(\"out of bounds\");\n\t\t\t\t\t\t\t0 == (1 & _) && (g = this.__digit(t + s + 1), a = (32767 & g) - b - l, l = 1 & a >>> 15, this.__setDigit(t + e.length, 1073709056 & g | 32767 & a));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tt >>= 1;\n\t\t\t\t\t\t\tfor (var m = 0; m < e.length - 1; m++) {\n\t\t\t\t\t\t\t\tvar c = this.__digit(t + m), v = e.__digit(m), y = (32767 & c) - (32767 & v) - l;\n\t\t\t\t\t\t\t\tl = 1 & y >>> 15;\n\t\t\t\t\t\t\t\tvar f = (c >>> 15) - (v >>> 15) - l;\n\t\t\t\t\t\t\t\tl = 1 & f >>> 15, this.__setDigit(t + m, (32767 & f) << 15 | 32767 & y);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvar k = this.__digit(t + m), D = e.__digit(m), p = (32767 & k) - (32767 & D) - l;\n\t\t\t\t\t\t\tl = 1 & p >>> 15;\n\t\t\t\t\t\t\tvar B = 0;\n\t\t\t\t\t\t\t0 == (1 & _) && (B = (k >>> 15) - (D >>> 15) - l, l = 1 & B >>> 15), this.__setDigit(t + m, (32767 & B) << 15 | 32767 & p);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn l;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__inplaceRightShift\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\tif (0 !== e) {\n\t\t\t\t\t\t\tfor (var _, n = this.__digit(0) >>> e, o = this.length - 1, l = 0; l < o; l++) _ = this.__digit(l + 1), this.__setDigit(l, 1073741823 & _ << 30 - e | n), n = _ >>> e;\n\t\t\t\t\t\t\tthis.__setDigit(o, n);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__digit\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn this[e];\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__unsignedDigit\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn this[e] >>> 0;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__setDigit\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tthis[e] = 0 | t;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__setDigitGrow\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tthis[e] = 0 | t;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__halfDigitLength\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\tvar t = this.length;\n\t\t\t\t\t\treturn 32767 >= this.__unsignedDigit(t - 1) ? 2 * t - 1 : 2 * t;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__halfDigit\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn 32767 & this[e >>> 1] >>> 15 * (1 & e);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__setHalfDigit\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tvar _ = e >>> 1, n = this.__digit(_), o = 1 & e ? 32767 & n | t << 15 : 1073709056 & n | 32767 & t;\n\t\t\t\t\t\tthis.__setDigit(_, o);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t], [\n\t\t\t\t{\n\t\t\t\t\tkey: \"BigInt\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\tvar i = Number.isFinite;\n\t\t\t\t\t\tif (\"number\" == typeof e) {\n\t\t\t\t\t\t\tif (0 === e) return g.__zero();\n\t\t\t\t\t\t\tif (g.__isOneDigitInt(e)) return 0 > e ? g.__oneDigit(-e, !0) : g.__oneDigit(e, !1);\n\t\t\t\t\t\t\tif (!i(e) || _(e) !== e) throw new RangeError(\"The number \" + e + \" cannot be converted to BigInt because it is not an integer\");\n\t\t\t\t\t\t\treturn g.__fromDouble(e);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (\"string\" == typeof e) {\n\t\t\t\t\t\t\tvar n = g.__fromString(e);\n\t\t\t\t\t\t\tif (null === n) throw new SyntaxError(\"Cannot convert \" + e + \" to a BigInt\");\n\t\t\t\t\t\t\treturn n;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (\"boolean\" == typeof e) return !0 === e ? g.__oneDigit(1, !1) : g.__zero();\n\t\t\t\t\t\tif (\"object\" === p(e)) {\n\t\t\t\t\t\t\tif (e.constructor === g) return e;\n\t\t\t\t\t\t\tvar o = g.__toPrimitive(e);\n\t\t\t\t\t\t\treturn g.BigInt(o);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthrow new TypeError(\"Cannot convert \" + e + \" to a BigInt\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"toNumber\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\tvar i = e.length;\n\t\t\t\t\t\tif (0 === i) return 0;\n\t\t\t\t\t\tif (1 === i) {\n\t\t\t\t\t\t\tvar _ = e.__unsignedDigit(0);\n\t\t\t\t\t\t\treturn e.sign ? -_ : _;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar n = e.__digit(i - 1), o = g.__clz30(n), l = 30 * i - o;\n\t\t\t\t\t\tif (1024 < l) return e.sign ? -Infinity : Infinity;\n\t\t\t\t\t\tvar a = l - 1, s = n, u = i - 1, r = o + 3, d = 32 === r ? 0 : s << r;\n\t\t\t\t\t\td >>>= 12;\n\t\t\t\t\t\tvar h = r - 12, b = 12 <= r ? 0 : s << 20 + r, m = 20 + r;\n\t\t\t\t\t\tfor (0 < h && 0 < u && (u--, s = e.__digit(u), d |= s >>> 30 - h, b = s << h + 2, m = h + 2); 0 < m && 0 < u;) u--, s = e.__digit(u), b |= 30 <= m ? s << m - 30 : s >>> 30 - m, m -= 30;\n\t\t\t\t\t\tvar c = g.__decideRounding(e, m, u, s);\n\t\t\t\t\t\tif ((1 === c || 0 === c && 1 == (1 & b)) && (b = b + 1 >>> 0, 0 === b && (d++, 0 != d >>> 20 && (d = 0, a++, 1023 < a)))) return e.sign ? -Infinity : Infinity;\n\t\t\t\t\t\tvar v = e.sign ? -2147483648 : 0;\n\t\t\t\t\t\treturn a = a + 1023 << 20, g.__kBitConversionInts[g.__kBitConversionIntHigh] = v | a | d, g.__kBitConversionInts[g.__kBitConversionIntLow] = b, g.__kBitConversionDouble[0];\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"unaryMinus\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\tif (0 === e.length) return e;\n\t\t\t\t\t\tvar i = e.__copy();\n\t\t\t\t\t\treturn i.sign = !e.sign, i;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"bitwiseNot\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn e.sign ? g.__absoluteSubOne(e).__trim() : g.__absoluteAddOne(e, !0);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"exponentiate\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tif (t.sign) throw new RangeError(\"Exponent must be positive\");\n\t\t\t\t\t\tif (0 === t.length) return g.__oneDigit(1, !1);\n\t\t\t\t\t\tif (0 === e.length) return e;\n\t\t\t\t\t\tif (1 === e.length && 1 === e.__digit(0)) return e.sign && 0 == (1 & t.__digit(0)) ? g.unaryMinus(e) : e;\n\t\t\t\t\t\tif (1 < t.length) throw new RangeError(\"BigInt too big\");\n\t\t\t\t\t\tvar _ = t.__unsignedDigit(0);\n\t\t\t\t\t\tif (1 === _) return e;\n\t\t\t\t\t\tif (_ >= g.__kMaxLengthBits) throw new RangeError(\"BigInt too big\");\n\t\t\t\t\t\tif (1 === e.length && 2 === e.__digit(0)) {\n\t\t\t\t\t\t\tvar n = 1 + (0 | _ / 30), l = new g(n, e.sign && 0 != (1 & _));\n\t\t\t\t\t\t\tl.__initializeDigits();\n\t\t\t\t\t\t\tvar a = 1 << _ % 30;\n\t\t\t\t\t\t\treturn l.__setDigit(n - 1, a), l;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar s = null, u = e;\n\t\t\t\t\t\tfor (0 != (1 & _) && (s = e), _ >>= 1; 0 !== _; _ >>= 1) u = g.multiply(u, u), 0 != (1 & _) && (null === s ? s = u : s = g.multiply(s, u));\n\t\t\t\t\t\treturn s;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"multiply\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tif (0 === e.length) return e;\n\t\t\t\t\t\tif (0 === t.length) return t;\n\t\t\t\t\t\tvar n = e.length + t.length;\n\t\t\t\t\t\t30 <= e.__clzmsd() + t.__clzmsd() && n--;\n\t\t\t\t\t\tvar o = new g(n, e.sign !== t.sign);\n\t\t\t\t\t\to.__initializeDigits();\n\t\t\t\t\t\tfor (var l = 0; l < e.length; l++) g.__multiplyAccumulate(t, e.__digit(l), o, l);\n\t\t\t\t\t\treturn o.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"divide\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tif (0 === t.length) throw new RangeError(\"Division by zero\");\n\t\t\t\t\t\tif (0 > g.__absoluteCompare(e, t)) return g.__zero();\n\t\t\t\t\t\tvar _, n = e.sign !== t.sign, o = t.__unsignedDigit(0);\n\t\t\t\t\t\tif (1 === t.length && 32767 >= o) {\n\t\t\t\t\t\t\tif (1 === o) return n === e.sign ? e : g.unaryMinus(e);\n\t\t\t\t\t\t\t_ = g.__absoluteDivSmall(e, o, null);\n\t\t\t\t\t\t} else _ = g.__absoluteDivLarge(e, t, !0, !1);\n\t\t\t\t\t\treturn _.sign = n, _.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"remainder\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tif (0 === t.length) throw new RangeError(\"Division by zero\");\n\t\t\t\t\t\tif (0 > g.__absoluteCompare(e, t)) return e;\n\t\t\t\t\t\tvar _ = t.__unsignedDigit(0);\n\t\t\t\t\t\tif (1 === t.length && 32767 >= _) {\n\t\t\t\t\t\t\tif (1 === _) return g.__zero();\n\t\t\t\t\t\t\tvar n = g.__absoluteModSmall(e, _);\n\t\t\t\t\t\t\treturn 0 === n ? g.__zero() : g.__oneDigit(n, e.sign);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar i = g.__absoluteDivLarge(e, t, !1, !0);\n\t\t\t\t\t\treturn i.sign = e.sign, i.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"add\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tvar _ = e.sign;\n\t\t\t\t\t\treturn _ === t.sign ? g.__absoluteAdd(e, t, _) : 0 <= g.__absoluteCompare(e, t) ? g.__absoluteSub(e, t, _) : g.__absoluteSub(t, e, !_);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"subtract\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tvar _ = e.sign;\n\t\t\t\t\t\treturn _ === t.sign ? 0 <= g.__absoluteCompare(e, t) ? g.__absoluteSub(e, t, _) : g.__absoluteSub(t, e, !_) : g.__absoluteAdd(e, t, _);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"leftShift\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn 0 === t.length || 0 === e.length ? e : t.sign ? g.__rightShiftByAbsolute(e, t) : g.__leftShiftByAbsolute(e, t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"signedRightShift\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn 0 === t.length || 0 === e.length ? e : t.sign ? g.__leftShiftByAbsolute(e, t) : g.__rightShiftByAbsolute(e, t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"unsignedRightShift\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\tthrow new TypeError(\"BigInts have no unsigned right shift; use >> instead\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"lessThan\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn 0 > g.__compareToBigInt(e, t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"lessThanOrEqual\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn 0 >= g.__compareToBigInt(e, t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"greaterThan\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn 0 < g.__compareToBigInt(e, t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"greaterThanOrEqual\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn 0 <= g.__compareToBigInt(e, t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"equal\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tif (e.sign !== t.sign) return !1;\n\t\t\t\t\t\tif (e.length !== t.length) return !1;\n\t\t\t\t\t\tfor (var n = 0; n < e.length; n++) if (e.__digit(n) !== t.__digit(n)) return !1;\n\t\t\t\t\t\treturn !0;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"notEqual\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn !g.equal(e, t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"bitwiseAnd\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tif (!e.sign && !t.sign) return g.__absoluteAnd(e, t).__trim();\n\t\t\t\t\t\tif (e.sign && t.sign) {\n\t\t\t\t\t\t\tvar n = i(e.length, t.length) + 1, o = g.__absoluteSubOne(e, n), l = g.__absoluteSubOne(t);\n\t\t\t\t\t\t\treturn o = g.__absoluteOr(o, l, o), g.__absoluteAddOne(o, !0, o).__trim();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (e.sign) {\n\t\t\t\t\t\t\tvar a = [t, e];\n\t\t\t\t\t\t\te = a[0], t = a[1];\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn g.__absoluteAndNot(e, g.__absoluteSubOne(t)).__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"bitwiseXor\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tif (!e.sign && !t.sign) return g.__absoluteXor(e, t).__trim();\n\t\t\t\t\t\tif (e.sign && t.sign) {\n\t\t\t\t\t\t\tvar n = i(e.length, t.length), o = g.__absoluteSubOne(e, n), l = g.__absoluteSubOne(t);\n\t\t\t\t\t\t\treturn g.__absoluteXor(o, l, o).__trim();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar a = i(e.length, t.length) + 1;\n\t\t\t\t\t\tif (e.sign) {\n\t\t\t\t\t\t\tvar s = [t, e];\n\t\t\t\t\t\t\te = s[0], t = s[1];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar u = g.__absoluteSubOne(t, a);\n\t\t\t\t\t\treturn u = g.__absoluteXor(u, e, u), g.__absoluteAddOne(u, !0, u).__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"bitwiseOr\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = i(e.length, t.length);\n\t\t\t\t\t\tif (!e.sign && !t.sign) return g.__absoluteOr(e, t).__trim();\n\t\t\t\t\t\tif (e.sign && t.sign) {\n\t\t\t\t\t\t\tvar o = g.__absoluteSubOne(e, n), l = g.__absoluteSubOne(t);\n\t\t\t\t\t\t\treturn o = g.__absoluteAnd(o, l, o), g.__absoluteAddOne(o, !0, o).__trim();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (e.sign) {\n\t\t\t\t\t\t\tvar a = [t, e];\n\t\t\t\t\t\t\te = a[0], t = a[1];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar s = g.__absoluteSubOne(t, n);\n\t\t\t\t\t\treturn s = g.__absoluteAndNot(s, e, s), g.__absoluteAddOne(s, !0, s).__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"asIntN\",\n\t\t\t\t\tvalue: function o(e, t) {\n\t\t\t\t\t\tif (0 === t.length) return t;\n\t\t\t\t\t\tif (e = _(e), 0 > e) throw new RangeError(\"Invalid value: not (convertible to) a safe integer\");\n\t\t\t\t\t\tif (0 === e) return g.__zero();\n\t\t\t\t\t\tif (e >= g.__kMaxLengthBits) return t;\n\t\t\t\t\t\tvar l = 0 | (e + 29) / 30;\n\t\t\t\t\t\tif (t.length < l) return t;\n\t\t\t\t\t\tvar a = t.__unsignedDigit(l - 1), s = 1 << (e - 1) % 30;\n\t\t\t\t\t\tif (t.length === l && a < s) return t;\n\t\t\t\t\t\tif (!((a & s) === s)) return g.__truncateToNBits(e, t);\n\t\t\t\t\t\tif (!t.sign) return g.__truncateAndSubFromPowerOfTwo(e, t, !0);\n\t\t\t\t\t\tif (0 == (a & s - 1)) {\n\t\t\t\t\t\t\tfor (var r = l - 2; 0 <= r; r--) if (0 !== t.__digit(r)) return g.__truncateAndSubFromPowerOfTwo(e, t, !1);\n\t\t\t\t\t\t\treturn t.length === l && a === s ? t : g.__truncateToNBits(e, t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn g.__truncateAndSubFromPowerOfTwo(e, t, !1);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"asUintN\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tif (0 === t.length) return t;\n\t\t\t\t\t\tif (e = _(e), 0 > e) throw new RangeError(\"Invalid value: not (convertible to) a safe integer\");\n\t\t\t\t\t\tif (0 === e) return g.__zero();\n\t\t\t\t\t\tif (t.sign) {\n\t\t\t\t\t\t\tif (e > g.__kMaxLengthBits) throw new RangeError(\"BigInt too big\");\n\t\t\t\t\t\t\treturn g.__truncateAndSubFromPowerOfTwo(e, t, !1);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (e >= g.__kMaxLengthBits) return t;\n\t\t\t\t\t\tvar o = 0 | (e + 29) / 30;\n\t\t\t\t\t\tif (t.length < o) return t;\n\t\t\t\t\t\tvar l = e % 30;\n\t\t\t\t\t\tif (t.length == o) {\n\t\t\t\t\t\t\tif (0 === l) return t;\n\t\t\t\t\t\t\tif (0 == t.__digit(o - 1) >>> l) return t;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn g.__truncateToNBits(e, t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"ADD\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tif (e = g.__toPrimitive(e), t = g.__toPrimitive(t), \"string\" == typeof e) return \"string\" != typeof t && (t = t.toString()), e + t;\n\t\t\t\t\t\tif (\"string\" == typeof t) return e.toString() + t;\n\t\t\t\t\t\tif (e = g.__toNumeric(e), t = g.__toNumeric(t), g.__isBigInt(e) && g.__isBigInt(t)) return g.add(e, t);\n\t\t\t\t\t\tif (\"number\" == typeof e && \"number\" == typeof t) return e + t;\n\t\t\t\t\t\tthrow new TypeError(\"Cannot mix BigInt and other types, use explicit conversions\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"LT\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn g.__compare(e, t, 0);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"LE\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn g.__compare(e, t, 1);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"GT\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn g.__compare(e, t, 2);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"GE\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn g.__compare(e, t, 3);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"EQ\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tfor (;;) {\n\t\t\t\t\t\t\tif (g.__isBigInt(e)) return g.__isBigInt(t) ? g.equal(e, t) : g.EQ(t, e);\n\t\t\t\t\t\t\tif (\"number\" == typeof e) {\n\t\t\t\t\t\t\t\tif (g.__isBigInt(t)) return g.__equalToNumber(t, e);\n\t\t\t\t\t\t\t\tif (\"object\" !== p(t)) return e == t;\n\t\t\t\t\t\t\t\tt = g.__toPrimitive(t);\n\t\t\t\t\t\t\t} else if (\"string\" == typeof e) {\n\t\t\t\t\t\t\t\tif (g.__isBigInt(t)) return e = g.__fromString(e), null !== e && g.equal(e, t);\n\t\t\t\t\t\t\t\tif (\"object\" !== p(t)) return e == t;\n\t\t\t\t\t\t\t\tt = g.__toPrimitive(t);\n\t\t\t\t\t\t\t} else if (\"boolean\" == typeof e) {\n\t\t\t\t\t\t\t\tif (g.__isBigInt(t)) return g.__equalToNumber(t, +e);\n\t\t\t\t\t\t\t\tif (\"object\" !== p(t)) return e == t;\n\t\t\t\t\t\t\t\tt = g.__toPrimitive(t);\n\t\t\t\t\t\t\t} else if (\"symbol\" === p(e)) {\n\t\t\t\t\t\t\t\tif (g.__isBigInt(t)) return !1;\n\t\t\t\t\t\t\t\tif (\"object\" !== p(t)) return e == t;\n\t\t\t\t\t\t\t\tt = g.__toPrimitive(t);\n\t\t\t\t\t\t\t} else if (\"object\" === p(e)) {\n\t\t\t\t\t\t\t\tif (\"object\" === p(t) && t.constructor !== g) return e == t;\n\t\t\t\t\t\t\t\te = g.__toPrimitive(e);\n\t\t\t\t\t\t\t} else return e == t;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"NE\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn !g.EQ(e, t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"DataViewGetBigInt64\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tvar _ = !!(2 < arguments.length && void 0 !== arguments[2]) && arguments[2];\n\t\t\t\t\t\treturn g.asIntN(64, g.DataViewGetBigUint64(e, t, _));\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"DataViewGetBigUint64\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tvar _ = !!(2 < arguments.length && void 0 !== arguments[2]) && arguments[2], o = f(_ ? [4, 0] : [0, 4], 2), a = o[0], s = o[1], l = e.getUint32(t + a, _), u = e.getUint32(t + s, _), r = new g(3, !1);\n\t\t\t\t\t\treturn r.__setDigit(0, 1073741823 & u), r.__setDigit(1, (268435455 & l) << 2 | u >>> 30), r.__setDigit(2, l >>> 28), r.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"DataViewSetBigInt64\",\n\t\t\t\t\tvalue: function _(e, t, i) {\n\t\t\t\t\t\tvar n = !!(3 < arguments.length && void 0 !== arguments[3]) && arguments[3];\n\t\t\t\t\t\tg.DataViewSetBigUint64(e, t, i, n);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"DataViewSetBigUint64\",\n\t\t\t\t\tvalue: function _(e, t, i) {\n\t\t\t\t\t\tvar n = !!(3 < arguments.length && void 0 !== arguments[3]) && arguments[3];\n\t\t\t\t\t\ti = g.asUintN(64, i);\n\t\t\t\t\t\tvar o = 0, a = 0;\n\t\t\t\t\t\tif (0 < i.length && (a = i.__digit(0), 1 < i.length)) {\n\t\t\t\t\t\t\tvar s = i.__digit(1);\n\t\t\t\t\t\t\ta |= s << 30, o = s >>> 2, 2 < i.length && (o |= i.__digit(2) << 28);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar r = f(n ? [4, 0] : [0, 4], 2), d = r[0], h = r[1];\n\t\t\t\t\t\te.setUint32(t + d, o, n), e.setUint32(t + h, a, n);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__zero\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\treturn new g(0, !1);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__oneDigit\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tvar _ = new g(1, t);\n\t\t\t\t\t\treturn _.__setDigit(0, e), _;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__decideRounding\",\n\t\t\t\t\tvalue: function n(e, t, i, _) {\n\t\t\t\t\t\tif (0 < t) return -1;\n\t\t\t\t\t\tvar o;\n\t\t\t\t\t\tif (0 > t) o = -t - 1;\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tif (0 === i) return -1;\n\t\t\t\t\t\t\ti--, _ = e.__digit(i), o = 29;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar l = 1 << o;\n\t\t\t\t\t\tif (0 == (_ & l)) return -1;\n\t\t\t\t\t\tif (l -= 1, 0 != (_ & l)) return 1;\n\t\t\t\t\t\tfor (; 0 < i;) if (i--, 0 !== e.__digit(i)) return 1;\n\t\t\t\t\t\treturn 0;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__fromDouble\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\tvar i = 0 > e;\n\t\t\t\t\t\tg.__kBitConversionDouble[0] = e;\n\t\t\t\t\t\tvar _, o = (2047 & g.__kBitConversionInts[g.__kBitConversionIntHigh] >>> 20) - 1023, l = (0 | o / 30) + 1, a = new g(l, i), u = 1048575 & g.__kBitConversionInts[g.__kBitConversionIntHigh] | 1048576, r = g.__kBitConversionInts[g.__kBitConversionIntLow], d = 20, h = o % 30, b = 0;\n\t\t\t\t\t\tif (h < d) {\n\t\t\t\t\t\t\tvar m = d - h;\n\t\t\t\t\t\t\tb = m + 32, _ = u >>> m, u = u << 32 - m | r >>> m, r <<= 32 - m;\n\t\t\t\t\t\t} else if (h === d) b = 32, _ = u, u = r, r = 0;\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tvar c = h - d;\n\t\t\t\t\t\t\tb = 32 - c, _ = u << c | r >>> 32 - c, u = r << c, r = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\ta.__setDigit(l - 1, _);\n\t\t\t\t\t\tfor (var v = l - 2; 0 <= v; v--) 0 < b ? (b -= 30, _ = u >>> 2, u = u << 30 | r >>> 2, r <<= 30) : _ = 0, a.__setDigit(v, _);\n\t\t\t\t\t\treturn a.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__isWhitespace\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn !!(13 >= e && 9 <= e) || (159 >= e ? 32 == e : 131071 >= e ? 160 == e || 5760 == e : 196607 >= e ? (e &= 131071, 10 >= e || 40 == e || 41 == e || 47 == e || 95 == e || 4096 == e) : 65279 == e);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__fromString\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\tvar i = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : 0, _ = 0, n = e.length, o = 0;\n\t\t\t\t\t\tif (o === n) return g.__zero();\n\t\t\t\t\t\tfor (var l = e.charCodeAt(o); g.__isWhitespace(l);) {\n\t\t\t\t\t\t\tif (++o === n) return g.__zero();\n\t\t\t\t\t\t\tl = e.charCodeAt(o);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (43 === l) {\n\t\t\t\t\t\t\tif (++o === n) return null;\n\t\t\t\t\t\t\tl = e.charCodeAt(o), _ = 1;\n\t\t\t\t\t\t} else if (45 === l) {\n\t\t\t\t\t\t\tif (++o === n) return null;\n\t\t\t\t\t\t\tl = e.charCodeAt(o), _ = -1;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (0 === i) {\n\t\t\t\t\t\t\tif (i = 10, 48 === l) {\n\t\t\t\t\t\t\t\tif (++o === n) return g.__zero();\n\t\t\t\t\t\t\t\tif (l = e.charCodeAt(o), 88 === l || 120 === l) {\n\t\t\t\t\t\t\t\t\tif (i = 16, ++o === n) return null;\n\t\t\t\t\t\t\t\t\tl = e.charCodeAt(o);\n\t\t\t\t\t\t\t\t} else if (79 === l || 111 === l) {\n\t\t\t\t\t\t\t\t\tif (i = 8, ++o === n) return null;\n\t\t\t\t\t\t\t\t\tl = e.charCodeAt(o);\n\t\t\t\t\t\t\t\t} else if (66 === l || 98 === l) {\n\t\t\t\t\t\t\t\t\tif (i = 2, ++o === n) return null;\n\t\t\t\t\t\t\t\t\tl = e.charCodeAt(o);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (16 === i && 48 === l) {\n\t\t\t\t\t\t\tif (++o === n) return g.__zero();\n\t\t\t\t\t\t\tif (l = e.charCodeAt(o), 88 === l || 120 === l) {\n\t\t\t\t\t\t\t\tif (++o === n) return null;\n\t\t\t\t\t\t\t\tl = e.charCodeAt(o);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (0 !== _ && 10 !== i) return null;\n\t\t\t\t\t\tfor (; 48 === l;) {\n\t\t\t\t\t\t\tif (++o === n) return g.__zero();\n\t\t\t\t\t\t\tl = e.charCodeAt(o);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar a = n - o, s = g.__kMaxBitsPerChar[i], u = g.__kBitsPerCharTableMultiplier - 1;\n\t\t\t\t\t\tif (a > 1073741824 / s) return null;\n\t\t\t\t\t\tvar b = new g(0 | ((s * a + u >>> g.__kBitsPerCharTableShift) + 29) / 30, !1), c = 10 > i ? i : 10, v = 10 < i ? i - 10 : 0;\n\t\t\t\t\t\tif (0 == (i & i - 1)) {\n\t\t\t\t\t\t\ts >>= g.__kBitsPerCharTableShift;\n\t\t\t\t\t\t\tvar y = [], f = [], k = !1;\n\t\t\t\t\t\t\tdo {\n\t\t\t\t\t\t\t\tfor (var D, p = 0, B = 0;;) {\n\t\t\t\t\t\t\t\t\tif (D = void 0, l - 48 >>> 0 < c) D = l - 48;\n\t\t\t\t\t\t\t\t\telse if ((32 | l) - 97 >>> 0 < v) D = (32 | l) - 87;\n\t\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\t\tk = !0;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (B += s, p = p << s | D, ++o === n) {\n\t\t\t\t\t\t\t\t\t\tk = !0;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (l = e.charCodeAt(o), 30 < B + s) break;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ty.push(p), f.push(B);\n\t\t\t\t\t\t\t} while (!k);\n\t\t\t\t\t\t\tg.__fillFromParts(b, y, f);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tb.__initializeDigits();\n\t\t\t\t\t\t\tvar S = !1, C = 0;\n\t\t\t\t\t\t\tdo {\n\t\t\t\t\t\t\t\tfor (var I, A = 0, T = 1;;) {\n\t\t\t\t\t\t\t\t\tif (I = void 0, l - 48 >>> 0 < c) I = l - 48;\n\t\t\t\t\t\t\t\t\telse if ((32 | l) - 97 >>> 0 < v) I = (32 | l) - 87;\n\t\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\t\tS = !0;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tvar P = T * i;\n\t\t\t\t\t\t\t\t\tif (1073741823 < P) break;\n\t\t\t\t\t\t\t\t\tif (T = P, A = A * i + I, C++, ++o === n) {\n\t\t\t\t\t\t\t\t\t\tS = !0;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tl = e.charCodeAt(o);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tu = 30 * g.__kBitsPerCharTableMultiplier - 1;\n\t\t\t\t\t\t\t\tvar O = 0 | (s * C + u >>> g.__kBitsPerCharTableShift) / 30;\n\t\t\t\t\t\t\t\tb.__inplaceMultiplyAdd(T, A, O);\n\t\t\t\t\t\t\t} while (!S);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (o !== n) {\n\t\t\t\t\t\t\tif (!g.__isWhitespace(l)) return null;\n\t\t\t\t\t\t\tfor (o++; o < n; o++) if (l = e.charCodeAt(o), !g.__isWhitespace(l)) return null;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn b.sign = -1 === _, b.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__fillFromParts\",\n\t\t\t\t\tvalue: function n(e, t, _) {\n\t\t\t\t\t\tfor (var o = 0, l = 0, g = 0, a = t.length - 1; 0 <= a; a--) {\n\t\t\t\t\t\t\tvar s = t[a], u = _[a];\n\t\t\t\t\t\t\tl |= s << g, g += u, 30 === g ? (e.__setDigit(o++, l), g = 0, l = 0) : 30 < g && (e.__setDigit(o++, 1073741823 & l), g -= 30, l = s >>> u - g);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (0 !== l) {\n\t\t\t\t\t\t\tif (o >= e.length) throw new Error(\"implementation bug\");\n\t\t\t\t\t\t\te.__setDigit(o++, l);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tfor (; o < e.length; o++) e.__setDigit(o, 0);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__toStringBasePowerOfTwo\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = e.length, o = t - 1;\n\t\t\t\t\t\to = (85 & o >>> 1) + (85 & o), o = (51 & o >>> 2) + (51 & o), o = (15 & o >>> 4) + (15 & o);\n\t\t\t\t\t\tvar l = o, a = t - 1, s = e.__digit(n - 1), u = g.__clz30(s), d = 0 | (30 * n - u + l - 1) / l;\n\t\t\t\t\t\tif (e.sign && d++, 268435456 < d) throw new Error(\"string too long\");\n\t\t\t\t\t\tfor (var h = Array(d), b = d - 1, m = 0, c = 0, v = 0; v < n - 1; v++) {\n\t\t\t\t\t\t\tvar y = e.__digit(v), f = (m | y << c) & a;\n\t\t\t\t\t\t\th[b--] = g.__kConversionChars[f];\n\t\t\t\t\t\t\tvar k = l - c;\n\t\t\t\t\t\t\tfor (m = y >>> k, c = 30 - k; c >= l;) h[b--] = g.__kConversionChars[m & a], m >>>= l, c -= l;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar D = (m | s << c) & a;\n\t\t\t\t\t\tfor (h[b--] = g.__kConversionChars[D], m = s >>> l - c; 0 !== m;) h[b--] = g.__kConversionChars[m & a], m >>>= l;\n\t\t\t\t\t\tif (e.sign && (h[b--] = \"-\"), -1 !== b) throw new Error(\"implementation bug\");\n\t\t\t\t\t\treturn h.join(\"\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__toStringGeneric\",\n\t\t\t\t\tvalue: function n(e, t, _) {\n\t\t\t\t\t\tvar o = e.length;\n\t\t\t\t\t\tif (0 === o) return \"\";\n\t\t\t\t\t\tif (1 === o) {\n\t\t\t\t\t\t\tvar l = e.__unsignedDigit(0).toString(t);\n\t\t\t\t\t\t\treturn !1 === _ && e.sign && (l = \"-\" + l), l;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar a = 30 * o - g.__clz30(e.__digit(o - 1)), u = g.__kMaxBitsPerChar[t] - 1, r = a * g.__kBitsPerCharTableMultiplier;\n\t\t\t\t\t\tr += u - 1, r = 0 | r / u;\n\t\t\t\t\t\tvar d, h, b = r + 1 >> 1, m = g.exponentiate(g.__oneDigit(t, !1), g.__oneDigit(b, !1)), c = m.__unsignedDigit(0);\n\t\t\t\t\t\tif (1 === m.length && 32767 >= c) {\n\t\t\t\t\t\t\td = new g(e.length, !1), d.__initializeDigits();\n\t\t\t\t\t\t\tfor (var v, y = 0, f = 2 * e.length - 1; 0 <= f; f--) v = y << 15 | e.__halfDigit(f), d.__setHalfDigit(f, 0 | v / c), y = 0 | v % c;\n\t\t\t\t\t\t\th = y.toString(t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tvar k = g.__absoluteDivLarge(e, m, !0, !0);\n\t\t\t\t\t\t\td = k.quotient;\n\t\t\t\t\t\t\tvar D = k.remainder.__trim();\n\t\t\t\t\t\t\th = g.__toStringGeneric(D, t, !0);\n\t\t\t\t\t\t}\n\t\t\t\t\t\td.__trim();\n\t\t\t\t\t\tfor (var p = g.__toStringGeneric(d, t, !0); h.length < b;) h = \"0\" + h;\n\t\t\t\t\t\treturn !1 === _ && e.sign && (p = \"-\" + p), p + h;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__unequalSign\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn e ? -1 : 1;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteGreater\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn e ? -1 : 1;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteLess\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn e ? 1 : -1;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__compareToBigInt\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tvar _ = e.sign;\n\t\t\t\t\t\tif (_ !== t.sign) return g.__unequalSign(_);\n\t\t\t\t\t\tvar n = g.__absoluteCompare(e, t);\n\t\t\t\t\t\treturn 0 < n ? g.__absoluteGreater(_) : 0 > n ? g.__absoluteLess(_) : 0;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__compareToNumber\",\n\t\t\t\t\tvalue: function _(e, i) {\n\t\t\t\t\t\tif (g.__isOneDigitInt(i)) {\n\t\t\t\t\t\t\tvar n = e.sign, o = 0 > i;\n\t\t\t\t\t\t\tif (n !== o) return g.__unequalSign(n);\n\t\t\t\t\t\t\tif (0 === e.length) {\n\t\t\t\t\t\t\t\tif (o) throw new Error(\"implementation bug\");\n\t\t\t\t\t\t\t\treturn 0 === i ? 0 : -1;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (1 < e.length) return g.__absoluteGreater(n);\n\t\t\t\t\t\t\tvar l = t(i), a = e.__unsignedDigit(0);\n\t\t\t\t\t\t\treturn a > l ? g.__absoluteGreater(n) : a < l ? g.__absoluteLess(n) : 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn g.__compareToDouble(e, i);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__compareToDouble\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tif (t !== t) return t;\n\t\t\t\t\t\tif (t === Infinity) return -1;\n\t\t\t\t\t\tif (t === -Infinity) return 1;\n\t\t\t\t\t\tvar _ = e.sign;\n\t\t\t\t\t\tif (_ !== 0 > t) return g.__unequalSign(_);\n\t\t\t\t\t\tif (0 === t) throw new Error(\"implementation bug: should be handled elsewhere\");\n\t\t\t\t\t\tif (0 === e.length) return -1;\n\t\t\t\t\t\tg.__kBitConversionDouble[0] = t;\n\t\t\t\t\t\tvar o = 2047 & g.__kBitConversionInts[g.__kBitConversionIntHigh] >>> 20;\n\t\t\t\t\t\tif (2047 == o) throw new Error(\"implementation bug: handled elsewhere\");\n\t\t\t\t\t\tvar l = o - 1023;\n\t\t\t\t\t\tif (0 > l) return g.__absoluteGreater(_);\n\t\t\t\t\t\tvar a = e.length, s = e.__digit(a - 1), u = g.__clz30(s), r = 30 * a - u, d = l + 1;\n\t\t\t\t\t\tif (r < d) return g.__absoluteLess(_);\n\t\t\t\t\t\tif (r > d) return g.__absoluteGreater(_);\n\t\t\t\t\t\tvar b = 1048576 | 1048575 & g.__kBitConversionInts[g.__kBitConversionIntHigh], m = g.__kBitConversionInts[g.__kBitConversionIntLow], c = 20, v = 29 - u;\n\t\t\t\t\t\tif (v !== (0 | (r - 1) % 30)) throw new Error(\"implementation bug\");\n\t\t\t\t\t\tvar y, f = 0;\n\t\t\t\t\t\tif (v < c) {\n\t\t\t\t\t\t\tvar k = c - v;\n\t\t\t\t\t\t\tf = k + 32, y = b >>> k, b = b << 32 - k | m >>> k, m <<= 32 - k;\n\t\t\t\t\t\t} else if (v === c) f = 32, y = b, b = m, m = 0;\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tvar D = v - c;\n\t\t\t\t\t\t\tf = 32 - D, y = b << D | m >>> 32 - D, b = m << D, m = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (s >>>= 0, y >>>= 0, s > y) return g.__absoluteGreater(_);\n\t\t\t\t\t\tif (s < y) return g.__absoluteLess(_);\n\t\t\t\t\t\tfor (var p = a - 2; 0 <= p; p--) {\n\t\t\t\t\t\t\t0 < f ? (f -= 30, y = b >>> 2, b = b << 30 | m >>> 2, m <<= 30) : y = 0;\n\t\t\t\t\t\t\tvar B = e.__unsignedDigit(p);\n\t\t\t\t\t\t\tif (B > y) return g.__absoluteGreater(_);\n\t\t\t\t\t\t\tif (B < y) return g.__absoluteLess(_);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (0 !== b || 0 !== m) {\n\t\t\t\t\t\t\tif (0 === f) throw new Error(\"implementation bug\");\n\t\t\t\t\t\t\treturn g.__absoluteLess(_);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn 0;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__equalToNumber\",\n\t\t\t\t\tvalue: function _(e, i) {\n\t\t\t\t\t\treturn g.__isOneDigitInt(i) ? 0 === i ? 0 === e.length : 1 === e.length && e.sign === 0 > i && e.__unsignedDigit(0) === t(i) : 0 === g.__compareToDouble(e, i);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__comparisonResultToBool\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\treturn 0 === t ? 0 > e : 1 === t ? 0 >= e : 2 === t ? 0 < e : 3 === t ? 0 <= e : void 0;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__compare\",\n\t\t\t\t\tvalue: function _(e, t, i) {\n\t\t\t\t\t\tif (e = g.__toPrimitive(e), t = g.__toPrimitive(t), \"string\" == typeof e && \"string\" == typeof t) switch (i) {\n\t\t\t\t\t\t\tcase 0: return e < t;\n\t\t\t\t\t\t\tcase 1: return e <= t;\n\t\t\t\t\t\t\tcase 2: return e > t;\n\t\t\t\t\t\t\tcase 3: return e >= t;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (g.__isBigInt(e) && \"string\" == typeof t) return t = g.__fromString(t), null !== t && g.__comparisonResultToBool(g.__compareToBigInt(e, t), i);\n\t\t\t\t\t\tif (\"string\" == typeof e && g.__isBigInt(t)) return e = g.__fromString(e), null !== e && g.__comparisonResultToBool(g.__compareToBigInt(e, t), i);\n\t\t\t\t\t\tif (e = g.__toNumeric(e), t = g.__toNumeric(t), g.__isBigInt(e)) {\n\t\t\t\t\t\t\tif (g.__isBigInt(t)) return g.__comparisonResultToBool(g.__compareToBigInt(e, t), i);\n\t\t\t\t\t\t\tif (\"number\" != typeof t) throw new Error(\"implementation bug\");\n\t\t\t\t\t\t\treturn g.__comparisonResultToBool(g.__compareToNumber(e, t), i);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (\"number\" != typeof e) throw new Error(\"implementation bug\");\n\t\t\t\t\t\tif (g.__isBigInt(t)) return g.__comparisonResultToBool(g.__compareToNumber(t, e), 2 ^ i);\n\t\t\t\t\t\tif (\"number\" != typeof t) throw new Error(\"implementation bug\");\n\t\t\t\t\t\treturn 0 === i ? e < t : 1 === i ? e <= t : 2 === i ? e > t : 3 === i ? e >= t : void 0;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteAdd\",\n\t\t\t\t\tvalue: function n(e, t, _) {\n\t\t\t\t\t\tif (e.length < t.length) return g.__absoluteAdd(t, e, _);\n\t\t\t\t\t\tif (0 === e.length) return e;\n\t\t\t\t\t\tif (0 === t.length) return e.sign === _ ? e : g.unaryMinus(e);\n\t\t\t\t\t\tvar o = e.length;\n\t\t\t\t\t\t(0 === e.__clzmsd() || t.length === e.length && 0 === t.__clzmsd()) && o++;\n\t\t\t\t\t\tfor (var l, a = new g(o, _), s = 0, u = 0; u < t.length; u++) l = e.__digit(u) + t.__digit(u) + s, s = l >>> 30, a.__setDigit(u, 1073741823 & l);\n\t\t\t\t\t\tfor (; u < e.length; u++) {\n\t\t\t\t\t\t\tvar d = e.__digit(u) + s;\n\t\t\t\t\t\t\ts = d >>> 30, a.__setDigit(u, 1073741823 & d);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn u < a.length && a.__setDigit(u, s), a.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteSub\",\n\t\t\t\t\tvalue: function n(e, t, _) {\n\t\t\t\t\t\tif (0 === e.length) return e;\n\t\t\t\t\t\tif (0 === t.length) return e.sign === _ ? e : g.unaryMinus(e);\n\t\t\t\t\t\tfor (var o, l = new g(e.length, _), a = 0, s = 0; s < t.length; s++) o = e.__digit(s) - t.__digit(s) - a, a = 1 & o >>> 30, l.__setDigit(s, 1073741823 & o);\n\t\t\t\t\t\tfor (; s < e.length; s++) {\n\t\t\t\t\t\t\tvar u = e.__digit(s) - a;\n\t\t\t\t\t\t\ta = 1 & u >>> 30, l.__setDigit(s, 1073741823 & u);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn l.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteAddOne\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null, o = e.length;\n\t\t\t\t\t\tnull === n ? n = new g(o, t) : n.sign = t;\n\t\t\t\t\t\tfor (var l, a = 1, s = 0; s < o; s++) l = e.__digit(s) + a, a = l >>> 30, n.__setDigit(s, 1073741823 & l);\n\t\t\t\t\t\treturn 0 !== a && n.__setDigitGrow(o, 1), n;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteSubOne\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = e.length;\n\t\t\t\t\t\tt = t || n;\n\t\t\t\t\t\tfor (var o, l = new g(t, !1), a = 1, s = 0; s < n; s++) o = e.__digit(s) - a, a = 1 & o >>> 30, l.__setDigit(s, 1073741823 & o);\n\t\t\t\t\t\tif (0 !== a) throw new Error(\"implementation bug\");\n\t\t\t\t\t\tfor (var u = n; u < t; u++) l.__setDigit(u, 0);\n\t\t\t\t\t\treturn l;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteAnd\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null, o = e.length, l = t.length, a = l;\n\t\t\t\t\t\tif (o < l) {\n\t\t\t\t\t\t\ta = o;\n\t\t\t\t\t\t\tvar s = e, u = o;\n\t\t\t\t\t\t\te = t, o = l, t = s, l = u;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar r = a;\n\t\t\t\t\t\tnull === n ? n = new g(r, !1) : r = n.length;\n\t\t\t\t\t\tfor (var d = 0; d < a; d++) n.__setDigit(d, e.__digit(d) & t.__digit(d));\n\t\t\t\t\t\tfor (; d < r; d++) n.__setDigit(d, 0);\n\t\t\t\t\t\treturn n;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteAndNot\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null, o = e.length, l = t.length, a = l;\n\t\t\t\t\t\to < l && (a = o);\n\t\t\t\t\t\tvar s = o;\n\t\t\t\t\t\tnull === n ? n = new g(s, !1) : s = n.length;\n\t\t\t\t\t\tfor (var u = 0; u < a; u++) n.__setDigit(u, e.__digit(u) & ~t.__digit(u));\n\t\t\t\t\t\tfor (; u < o; u++) n.__setDigit(u, e.__digit(u));\n\t\t\t\t\t\tfor (; u < s; u++) n.__setDigit(u, 0);\n\t\t\t\t\t\treturn n;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteOr\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null, o = e.length, l = t.length, a = l;\n\t\t\t\t\t\tif (o < l) {\n\t\t\t\t\t\t\ta = o;\n\t\t\t\t\t\t\tvar s = e, u = o;\n\t\t\t\t\t\t\te = t, o = l, t = s, l = u;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar r = o;\n\t\t\t\t\t\tnull === n ? n = new g(r, !1) : r = n.length;\n\t\t\t\t\t\tfor (var d = 0; d < a; d++) n.__setDigit(d, e.__digit(d) | t.__digit(d));\n\t\t\t\t\t\tfor (; d < o; d++) n.__setDigit(d, e.__digit(d));\n\t\t\t\t\t\tfor (; d < r; d++) n.__setDigit(d, 0);\n\t\t\t\t\t\treturn n;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteXor\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null, o = e.length, l = t.length, a = l;\n\t\t\t\t\t\tif (o < l) {\n\t\t\t\t\t\t\ta = o;\n\t\t\t\t\t\t\tvar s = e, u = o;\n\t\t\t\t\t\t\te = t, o = l, t = s, l = u;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar r = o;\n\t\t\t\t\t\tnull === n ? n = new g(r, !1) : r = n.length;\n\t\t\t\t\t\tfor (var d = 0; d < a; d++) n.__setDigit(d, e.__digit(d) ^ t.__digit(d));\n\t\t\t\t\t\tfor (; d < o; d++) n.__setDigit(d, e.__digit(d));\n\t\t\t\t\t\tfor (; d < r; d++) n.__setDigit(d, 0);\n\t\t\t\t\t\treturn n;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteCompare\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = e.length - t.length;\n\t\t\t\t\t\tif (0 != n) return n;\n\t\t\t\t\t\tfor (var o = e.length - 1; 0 <= o && e.__digit(o) === t.__digit(o);) o--;\n\t\t\t\t\t\treturn 0 > o ? 0 : e.__unsignedDigit(o) > t.__unsignedDigit(o) ? 1 : -1;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__multiplyAccumulate\",\n\t\t\t\t\tvalue: function o(e, t, _, n) {\n\t\t\t\t\t\tif (0 !== t) {\n\t\t\t\t\t\t\tfor (var l = 32767 & t, a = t >>> 15, s = 0, u = 0, r = 0; r < e.length; r++, n++) {\n\t\t\t\t\t\t\t\tvar d = _.__digit(n), h = e.__digit(r), b = 32767 & h, m = h >>> 15, c = g.__imul(b, l), v = g.__imul(b, a), y = g.__imul(m, l), f = g.__imul(m, a);\n\t\t\t\t\t\t\t\td += u + c + s, s = d >>> 30, d &= 1073741823, d += ((32767 & v) << 15) + ((32767 & y) << 15), s += d >>> 30, u = f + (v >>> 15) + (y >>> 15), _.__setDigit(n, 1073741823 & d);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tfor (; 0 !== s || 0 !== u; n++) {\n\t\t\t\t\t\t\t\tvar k = _.__digit(n);\n\t\t\t\t\t\t\t\tk += s + u, u = 0, s = k >>> 30, _.__setDigit(n, 1073741823 & k);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__internalMultiplyAdd\",\n\t\t\t\t\tvalue: function a(e, t, _, o, l) {\n\t\t\t\t\t\tfor (var s = _, u = 0, d = 0; d < o; d++) {\n\t\t\t\t\t\t\tvar h = e.__digit(d), b = g.__imul(32767 & h, t), m = g.__imul(h >>> 15, t), c = b + ((32767 & m) << 15) + u + s;\n\t\t\t\t\t\t\ts = c >>> 30, u = m >>> 15, l.__setDigit(d, 1073741823 & c);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (l.length > o) for (l.__setDigit(o++, s + u); o < l.length;) l.__setDigit(o++, 0);\n\t\t\t\t\t\telse if (0 !== s + u) throw new Error(\"implementation bug\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteDivSmall\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null;\n\t\t\t\t\t\tnull === n && (n = new g(e.length, !1));\n\t\t\t\t\t\tfor (var o = 0, l = 2 * e.length - 1; 0 <= l; l -= 2) {\n\t\t\t\t\t\t\tvar a = (o << 15 | e.__halfDigit(l)) >>> 0, s = 0 | a / t;\n\t\t\t\t\t\t\to = 0 | a % t, a = (o << 15 | e.__halfDigit(l - 1)) >>> 0;\n\t\t\t\t\t\t\tvar u = 0 | a / t;\n\t\t\t\t\t\t\to = 0 | a % t, n.__setDigit(l >>> 1, s << 15 | u);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn n;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteModSmall\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tfor (var n, o = 0, l = 2 * e.length - 1; 0 <= l; l--) n = (o << 15 | e.__halfDigit(l)) >>> 0, o = 0 | n % t;\n\t\t\t\t\t\treturn o;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__absoluteDivLarge\",\n\t\t\t\t\tvalue: function o(e, t, i, _) {\n\t\t\t\t\t\tvar l = t.__halfDigitLength(), n = t.length, a = e.__halfDigitLength() - l, s = null;\n\t\t\t\t\t\ti && (s = new g(a + 2 >>> 1, !1), s.__initializeDigits());\n\t\t\t\t\t\tvar r = new g(l + 2 >>> 1, !1);\n\t\t\t\t\t\tr.__initializeDigits();\n\t\t\t\t\t\tvar d = g.__clz15(t.__halfDigit(l - 1));\n\t\t\t\t\t\t0 < d && (t = g.__specialLeftShift(t, d, 0));\n\t\t\t\t\t\tfor (var h = g.__specialLeftShift(e, d, 1), u = t.__halfDigit(l - 1), b = 0, m = a; 0 <= m; m--) {\n\t\t\t\t\t\t\tvar v = 32767, y = h.__halfDigit(m + l);\n\t\t\t\t\t\t\tif (y !== u) {\n\t\t\t\t\t\t\t\tvar f = (y << 15 | h.__halfDigit(m + l - 1)) >>> 0;\n\t\t\t\t\t\t\t\tv = 0 | f / u;\n\t\t\t\t\t\t\t\tfor (var k = 0 | f % u, D = t.__halfDigit(l - 2), p = h.__halfDigit(m + l - 2); g.__imul(v, D) >>> 0 > (k << 16 | p) >>> 0 && (v--, k += u, !(32767 < k)););\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tg.__internalMultiplyAdd(t, v, 0, n, r);\n\t\t\t\t\t\t\tvar B = h.__inplaceSub(r, m, l + 1);\n\t\t\t\t\t\t\t0 !== B && (B = h.__inplaceAdd(t, m, l), h.__setHalfDigit(m + l, 32767 & h.__halfDigit(m + l) + B), v--), i && (1 & m ? b = v << 15 : s.__setDigit(m >>> 1, b | v));\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (_) return h.__inplaceRightShift(d), i ? {\n\t\t\t\t\t\t\tquotient: s,\n\t\t\t\t\t\t\tremainder: h\n\t\t\t\t\t\t} : h;\n\t\t\t\t\t\tif (i) return s;\n\t\t\t\t\t\tthrow new Error(\"unreachable\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__clz15\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn g.__clz30(e) - 15;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__specialLeftShift\",\n\t\t\t\t\tvalue: function o(e, t, _) {\n\t\t\t\t\t\tvar l = e.length, a = new g(l + _, !1);\n\t\t\t\t\t\tif (0 === t) {\n\t\t\t\t\t\t\tfor (var s = 0; s < l; s++) a.__setDigit(s, e.__digit(s));\n\t\t\t\t\t\t\treturn 0 < _ && a.__setDigit(l, 0), a;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tfor (var u, r = 0, h = 0; h < l; h++) u = e.__digit(h), a.__setDigit(h, 1073741823 & u << t | r), r = u >>> 30 - t;\n\t\t\t\t\t\treturn 0 < _ && a.__setDigit(l, r), a;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__leftShiftByAbsolute\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = g.__toShiftAmount(t);\n\t\t\t\t\t\tif (0 > n) throw new RangeError(\"BigInt too big\");\n\t\t\t\t\t\tvar o = 0 | n / 30, l = n % 30, a = e.length, s = 0 !== l && 0 != e.__digit(a - 1) >>> 30 - l, u = a + o + (s ? 1 : 0), r = new g(u, e.sign);\n\t\t\t\t\t\tif (0 === l) {\n\t\t\t\t\t\t\tfor (var h = 0; h < o; h++) r.__setDigit(h, 0);\n\t\t\t\t\t\t\tfor (; h < u; h++) r.__setDigit(h, e.__digit(h - o));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tfor (var b = 0, m = 0; m < o; m++) r.__setDigit(m, 0);\n\t\t\t\t\t\t\tfor (var c, v = 0; v < a; v++) c = e.__digit(v), r.__setDigit(v + o, 1073741823 & c << l | b), b = c >>> 30 - l;\n\t\t\t\t\t\t\tif (s) r.__setDigit(a + o, b);\n\t\t\t\t\t\t\telse if (0 !== b) throw new Error(\"implementation bug\");\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn r.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__rightShiftByAbsolute\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tvar n = e.length, o = e.sign, l = g.__toShiftAmount(t);\n\t\t\t\t\t\tif (0 > l) return g.__rightShiftByMaximum(o);\n\t\t\t\t\t\tvar a = 0 | l / 30, s = l % 30, u = n - a;\n\t\t\t\t\t\tif (0 >= u) return g.__rightShiftByMaximum(o);\n\t\t\t\t\t\tvar r = !1;\n\t\t\t\t\t\tif (o) {\n\t\t\t\t\t\t\tvar h = (1 << s) - 1;\n\t\t\t\t\t\t\tif (0 != (e.__digit(a) & h)) r = !0;\n\t\t\t\t\t\t\telse for (var b = 0; b < a; b++) if (0 !== e.__digit(b)) {\n\t\t\t\t\t\t\t\tr = !0;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (r && 0 === s) 0 == ~e.__digit(n - 1) && u++;\n\t\t\t\t\t\tvar v = new g(u, o);\n\t\t\t\t\t\tif (0 === s) {\n\t\t\t\t\t\t\tv.__setDigit(u - 1, 0);\n\t\t\t\t\t\t\tfor (var y = a; y < n; y++) v.__setDigit(y - a, e.__digit(y));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tfor (var f, k = e.__digit(a) >>> s, D = n - a - 1, p = 0; p < D; p++) f = e.__digit(p + a + 1), v.__setDigit(p, 1073741823 & f << 30 - s | k), k = f >>> s;\n\t\t\t\t\t\t\tv.__setDigit(D, k);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn r && (v = g.__absoluteAddOne(v, !0, v)), v.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__rightShiftByMaximum\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn e ? g.__oneDigit(1, !0) : g.__zero();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__toShiftAmount\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\tif (1 < e.length) return -1;\n\t\t\t\t\t\tvar i = e.__unsignedDigit(0);\n\t\t\t\t\t\treturn i > g.__kMaxLengthBits ? -1 : i;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__toPrimitive\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\tvar i = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : \"default\";\n\t\t\t\t\t\tif (\"object\" !== p(e)) return e;\n\t\t\t\t\t\tif (e.constructor === g) return e;\n\t\t\t\t\t\tif (\"undefined\" != typeof Symbol && \"symbol\" === p(Symbol.toPrimitive) && e[Symbol.toPrimitive]) {\n\t\t\t\t\t\t\tvar _ = e[Symbol.toPrimitive](i);\n\t\t\t\t\t\t\tif (\"object\" !== p(_)) return _;\n\t\t\t\t\t\t\tthrow new TypeError(\"Cannot convert object to primitive value\");\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar n = e.valueOf;\n\t\t\t\t\t\tif (n) {\n\t\t\t\t\t\t\tvar o = n.call(e);\n\t\t\t\t\t\t\tif (\"object\" !== p(o)) return o;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar l = e.toString;\n\t\t\t\t\t\tif (l) {\n\t\t\t\t\t\t\tvar a = l.call(e);\n\t\t\t\t\t\t\tif (\"object\" !== p(a)) return a;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthrow new TypeError(\"Cannot convert object to primitive value\");\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__toNumeric\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn g.__isBigInt(e) ? e : +e;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__isBigInt\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn \"object\" === p(e) && null !== e && e.constructor === g;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__truncateToNBits\",\n\t\t\t\t\tvalue: function _(e, t) {\n\t\t\t\t\t\tfor (var n = 0 | (e + 29) / 30, o = new g(n, t.sign), l = n - 1, a = 0; a < l; a++) o.__setDigit(a, t.__digit(a));\n\t\t\t\t\t\tvar s = t.__digit(l);\n\t\t\t\t\t\tif (0 != e % 30) {\n\t\t\t\t\t\t\tvar u = 32 - e % 30;\n\t\t\t\t\t\t\ts = s << u >>> u;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn o.__setDigit(l, s), o.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__truncateAndSubFromPowerOfTwo\",\n\t\t\t\t\tvalue: function n(e, t, _) {\n\t\t\t\t\t\tfor (var o = Math.min, l, a = 0 | (e + 29) / 30, s = new g(a, _), u = 0, d = a - 1, h = 0, b = o(d, t.length); u < b; u++) l = 0 - t.__digit(u) - h, h = 1 & l >>> 30, s.__setDigit(u, 1073741823 & l);\n\t\t\t\t\t\tfor (; u < d; u++) s.__setDigit(u, 0 | 1073741823 & -h);\n\t\t\t\t\t\tvar m, c = d < t.length ? t.__digit(d) : 0, v = e % 30;\n\t\t\t\t\t\tif (0 === v) m = 0 - c - h, m &= 1073741823;\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tvar y = 32 - v;\n\t\t\t\t\t\t\tc = c << y >>> y;\n\t\t\t\t\t\t\tvar f = 1 << 32 - y;\n\t\t\t\t\t\t\tm = f - c - h, m &= f - 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn s.__setDigit(d, m), s.__trim();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__digitPow\",\n\t\t\t\t\tvalue: function i(e, t) {\n\t\t\t\t\t\tfor (var _ = 1; 0 < t;) 1 & t && (_ *= e), t >>>= 1, e *= e;\n\t\t\t\t\t\treturn _;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__detectBigEndian\",\n\t\t\t\t\tvalue: function e() {\n\t\t\t\t\t\treturn g.__kBitConversionDouble[0] = -0, 0 !== g.__kBitConversionInts[0];\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: \"__isOneDigitInt\",\n\t\t\t\t\tvalue: function t(e) {\n\t\t\t\t\t\treturn (1073741823 & e) === e;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]);\n\t\t}(S(Array));\n\t\treturn C.__kMaxLength = 33554432, C.__kMaxLengthBits = C.__kMaxLength << 5, C.__kMaxBitsPerChar = [\n\t\t\t0,\n\t\t\t0,\n\t\t\t32,\n\t\t\t51,\n\t\t\t64,\n\t\t\t75,\n\t\t\t83,\n\t\t\t90,\n\t\t\t96,\n\t\t\t102,\n\t\t\t107,\n\t\t\t111,\n\t\t\t115,\n\t\t\t119,\n\t\t\t122,\n\t\t\t126,\n\t\t\t128,\n\t\t\t131,\n\t\t\t134,\n\t\t\t136,\n\t\t\t139,\n\t\t\t141,\n\t\t\t143,\n\t\t\t145,\n\t\t\t147,\n\t\t\t149,\n\t\t\t151,\n\t\t\t153,\n\t\t\t154,\n\t\t\t156,\n\t\t\t158,\n\t\t\t159,\n\t\t\t160,\n\t\t\t162,\n\t\t\t163,\n\t\t\t165,\n\t\t\t166\n\t\t], C.__kBitsPerCharTableShift = 5, C.__kBitsPerCharTableMultiplier = 1 << C.__kBitsPerCharTableShift, C.__kConversionChars = [\n\t\t\t\"0\",\n\t\t\t\"1\",\n\t\t\t\"2\",\n\t\t\t\"3\",\n\t\t\t\"4\",\n\t\t\t\"5\",\n\t\t\t\"6\",\n\t\t\t\"7\",\n\t\t\t\"8\",\n\t\t\t\"9\",\n\t\t\t\"a\",\n\t\t\t\"b\",\n\t\t\t\"c\",\n\t\t\t\"d\",\n\t\t\t\"e\",\n\t\t\t\"f\",\n\t\t\t\"g\",\n\t\t\t\"h\",\n\t\t\t\"i\",\n\t\t\t\"j\",\n\t\t\t\"k\",\n\t\t\t\"l\",\n\t\t\t\"m\",\n\t\t\t\"n\",\n\t\t\t\"o\",\n\t\t\t\"p\",\n\t\t\t\"q\",\n\t\t\t\"r\",\n\t\t\t\"s\",\n\t\t\t\"t\",\n\t\t\t\"u\",\n\t\t\t\"v\",\n\t\t\t\"w\",\n\t\t\t\"x\",\n\t\t\t\"y\",\n\t\t\t\"z\"\n\t\t], C.__kBitConversionBuffer = /* @__PURE__ */ new ArrayBuffer(8), C.__kBitConversionDouble = new Float64Array(C.__kBitConversionBuffer), C.__kBitConversionInts = new Int32Array(C.__kBitConversionBuffer), C.__kBitConversionIntHigh = C.__detectBigEndian() ? 0 : 1, C.__kBitConversionIntLow = C.__detectBigEndian() ? 1 : 0, C.__clz30 = t ? function(e) {\n\t\t\treturn t(e) - 2;\n\t\t} : function(e) {\n\t\t\tvar t = Math.LN2, i = Math.log;\n\t\t\treturn 0 === e ? 30 : 0 | 29 - (0 | i(e >>> 0) / t);\n\t\t}, C.__imul = e || function(e, t) {\n\t\t\treturn 0 | e * t;\n\t\t}, C;\n\t});\n})))(), 1);\nvar t = import_jsbi_umd.default.BigInt(0), n = import_jsbi_umd.default.BigInt(1), r = import_jsbi_umd.default.BigInt(2), o = import_jsbi_umd.default.BigInt(10), i = import_jsbi_umd.default.BigInt(24), a = import_jsbi_umd.default.BigInt(60), s = import_jsbi_umd.default.BigInt(1e3), c = import_jsbi_umd.default.BigInt(1e6), d = import_jsbi_umd.default.BigInt(1e9), h = import_jsbi_umd.default.multiply(import_jsbi_umd.default.BigInt(3600), d), u = import_jsbi_umd.default.multiply(a, d), l = import_jsbi_umd.default.multiply(h, i);\nfunction m(t) {\n\treturn \"bigint\" == typeof t ? import_jsbi_umd.default.BigInt(t.toString(10)) : t;\n}\nfunction f(n) {\n\treturn import_jsbi_umd.default.equal(import_jsbi_umd.default.remainder(n, r), t);\n}\nfunction y(n) {\n\treturn import_jsbi_umd.default.lessThan(n, t) ? import_jsbi_umd.default.unaryMinus(n) : n;\n}\nfunction p(t, n) {\n\treturn import_jsbi_umd.default.lessThan(t, n) ? -1 : import_jsbi_umd.default.greaterThan(t, n) ? 1 : 0;\n}\nfunction g(t, n) {\n\treturn {\n\t\tquotient: import_jsbi_umd.default.divide(t, n),\n\t\tremainder: import_jsbi_umd.default.remainder(t, n)\n\t};\n}\nvar w, v;\nvar b = \"slot-epochNanoSeconds\", D = \"slot-iso-date\", T = \"slot-iso-date-time\", M = \"slot-time\", E = \"slot-calendar\", I = \"slot-date-brand\", C = \"slot-year-month-brand\", O = \"slot-month-day-brand\", $ = \"slot-time-zone\", Y = \"slot-years\", R = \"slot-months\", S = \"slot-weeks\", j = \"slot-days\", k = \"slot-hours\", N = \"slot-minutes\", x = \"slot-seconds\", L = \"slot-milliseconds\", P = \"slot-microseconds\", U = \"slot-nanoseconds\", B = \"date\", Z = \"ym\", F = \"md\", H = \"time\", z = \"datetime\", A = \"instant\", q = \"original\", W = \"timezone-canonical\", _ = \"timezone-original\", J = \"calendar-id\", G = \"locale\", K = \"options\", V = /* @__PURE__ */ new WeakMap(), X = Symbol.for(\"@@Temporal__GetSlots\");\n(w = globalThis)[X] || (w[X] = function(e) {\n\treturn V.get(e);\n});\nvar Q = globalThis[X], ee = Symbol.for(\"@@Temporal__CreateSlots\");\n(v = globalThis)[ee] || (v[ee] = function(e) {\n\tV.set(e, Object.create(null));\n});\nvar te = globalThis[ee];\nfunction ne(e, ...t) {\n\tif (!e || \"object\" != typeof e) return !1;\n\tconst n = Q(e);\n\treturn !!n && t.every(((e) => e in n));\n}\nfunction re(e, t) {\n\tconst n = Q(e)?.[t];\n\tif (void 0 === n) throw new TypeError(`Missing internal slot ${t}`);\n\treturn n;\n}\nfunction oe(e, t, n) {\n\tconst r = Q(e);\n\tif (void 0 === r) throw new TypeError(\"Missing slots for the given container\");\n\tif (r[t]) throw new TypeError(`${t} already has set`);\n\tr[t] = n;\n}\nvar ie = {};\nfunction ae(e, t) {\n\tObject.defineProperty(e.prototype, Symbol.toStringTag, {\n\t\tvalue: t,\n\t\twritable: !1,\n\t\tenumerable: !1,\n\t\tconfigurable: !0\n\t});\n\tconst n = Object.getOwnPropertyNames(e);\n\tfor (let t = 0; t < n.length; t++) {\n\t\tconst r = n[t], o = Object.getOwnPropertyDescriptor(e, r);\n\t\to.configurable && o.enumerable && (o.enumerable = !1, Object.defineProperty(e, r, o));\n\t}\n\tconst r = Object.getOwnPropertyNames(e.prototype);\n\tfor (let t = 0; t < r.length; t++) {\n\t\tconst n = r[t], o = Object.getOwnPropertyDescriptor(e.prototype, n);\n\t\to.configurable && o.enumerable && (o.enumerable = !1, Object.defineProperty(e.prototype, n, o));\n\t}\n\tse(t, e), se(`${t}.prototype`, e.prototype);\n}\nfunction se(e, t) {\n\tconst n = `%${e}%`;\n\tif (void 0 !== ie[n]) throw new Error(`intrinsic ${e} already exists`);\n\tie[n] = t;\n}\nfunction ce(e) {\n\treturn ie[e];\n}\nfunction de(e, t) {\n\tlet n = e;\n\tif (0 === n) return {\n\t\tdiv: n,\n\t\tmod: n\n\t};\n\tconst r = Math.sign(n);\n\tn = Math.abs(n);\n\tconst o = Math.trunc(1 + Math.log10(n));\n\tif (t >= o) return {\n\t\tdiv: 0 * r,\n\t\tmod: r * n\n\t};\n\tif (0 === t) return {\n\t\tdiv: r * n,\n\t\tmod: 0 * r\n\t};\n\tconst i = n.toPrecision(o);\n\treturn {\n\t\tdiv: r * Number.parseInt(i.slice(0, o - t), 10),\n\t\tmod: r * Number.parseInt(i.slice(o - t), 10)\n\t};\n}\nfunction he(e, t, n) {\n\tlet r = e, o = n;\n\tif (0 === r) return o;\n\tconst i = Math.sign(r) || Math.sign(o);\n\tr = Math.abs(r), o = Math.abs(o);\n\tconst a = r.toPrecision(Math.trunc(1 + Math.log10(r)));\n\tif (0 === o) return i * Number.parseInt(a + \"0\".repeat(t), 10);\n\tconst s = a + o.toPrecision(Math.trunc(1 + Math.log10(o))).padStart(t, \"0\");\n\treturn i * Number.parseInt(s, 10);\n}\nfunction ue(e, t) {\n\tconst n = \"negative\" === t;\n\tswitch (e) {\n\t\tcase \"ceil\": return n ? \"zero\" : \"infinity\";\n\t\tcase \"floor\": return n ? \"infinity\" : \"zero\";\n\t\tcase \"expand\": return \"infinity\";\n\t\tcase \"trunc\": return \"zero\";\n\t\tcase \"halfCeil\": return n ? \"half-zero\" : \"half-infinity\";\n\t\tcase \"halfFloor\": return n ? \"half-infinity\" : \"half-zero\";\n\t\tcase \"halfExpand\": return \"half-infinity\";\n\t\tcase \"halfTrunc\": return \"half-zero\";\n\t\tcase \"halfEven\": return \"half-even\";\n\t}\n}\nfunction le(e, t, n, r, o) {\n\treturn \"zero\" === o ? e : \"infinity\" === o ? t : n < 0 ? e : n > 0 ? t : \"half-zero\" === o ? e : \"half-infinity\" === o ? t : r ? e : t;\n}\nvar TimeDuration = class TimeDuration {\n\tconstructor(t) {\n\t\tthis.totalNs = m(t), this.sec = import_jsbi_umd.default.toNumber(import_jsbi_umd.default.divide(this.totalNs, d)), this.subsec = import_jsbi_umd.default.toNumber(import_jsbi_umd.default.remainder(this.totalNs, d));\n\t}\n\tstatic validateNew(t, n) {\n\t\tif (import_jsbi_umd.default.greaterThan(y(t), TimeDuration.MAX)) throw new RangeError(`${n} of duration time units cannot exceed ${TimeDuration.MAX} s`);\n\t\treturn new TimeDuration(t);\n\t}\n\tstatic fromEpochNsDiff(t, n) {\n\t\treturn new TimeDuration(import_jsbi_umd.default.subtract(m(t), m(n)));\n\t}\n\tstatic fromComponents(t, n, r, o, i, a) {\n\t\tconst l = import_jsbi_umd.default.add(import_jsbi_umd.default.add(import_jsbi_umd.default.add(import_jsbi_umd.default.add(import_jsbi_umd.default.add(import_jsbi_umd.default.BigInt(a), import_jsbi_umd.default.multiply(import_jsbi_umd.default.BigInt(i), s)), import_jsbi_umd.default.multiply(import_jsbi_umd.default.BigInt(o), c)), import_jsbi_umd.default.multiply(import_jsbi_umd.default.BigInt(r), d)), import_jsbi_umd.default.multiply(import_jsbi_umd.default.BigInt(n), u)), import_jsbi_umd.default.multiply(import_jsbi_umd.default.BigInt(t), h));\n\t\treturn TimeDuration.validateNew(l, \"total\");\n\t}\n\tabs() {\n\t\treturn new TimeDuration(y(this.totalNs));\n\t}\n\tadd(t) {\n\t\treturn TimeDuration.validateNew(import_jsbi_umd.default.add(this.totalNs, t.totalNs), \"sum\");\n\t}\n\tadd24HourDays(t) {\n\t\treturn TimeDuration.validateNew(import_jsbi_umd.default.add(this.totalNs, import_jsbi_umd.default.multiply(import_jsbi_umd.default.BigInt(t), l)), \"sum\");\n\t}\n\taddToEpochNs(t) {\n\t\treturn import_jsbi_umd.default.add(m(t), this.totalNs);\n\t}\n\tcmp(e) {\n\t\treturn p(this.totalNs, e.totalNs);\n\t}\n\tdivmod(t) {\n\t\tconst { quotient: n, remainder: r } = g(this.totalNs, import_jsbi_umd.default.BigInt(t));\n\t\treturn {\n\t\t\tquotient: import_jsbi_umd.default.toNumber(n),\n\t\t\tremainder: new TimeDuration(r)\n\t\t};\n\t}\n\tfdiv(n) {\n\t\tconst r = m(n), i = import_jsbi_umd.default.BigInt(r);\n\t\tlet { quotient: a, remainder: s } = g(this.totalNs, i);\n\t\tconst c = [];\n\t\tlet d;\n\t\tconst h = (import_jsbi_umd.default.lessThan(this.totalNs, t) ? -1 : 1) * Math.sign(import_jsbi_umd.default.toNumber(r));\n\t\tfor (; !import_jsbi_umd.default.equal(s, t) && c.length < 50;) s = import_jsbi_umd.default.multiply(s, o), {quotient: d, remainder: s} = g(s, i), c.push(Math.abs(import_jsbi_umd.default.toNumber(d)));\n\t\treturn h * Number(y(a).toString() + \".\" + c.join(\"\"));\n\t}\n\tisZero() {\n\t\treturn import_jsbi_umd.default.equal(this.totalNs, t);\n\t}\n\tround(o, i) {\n\t\tconst a = m(o);\n\t\tif (import_jsbi_umd.default.equal(a, n)) return this;\n\t\tconst { quotient: s, remainder: c } = g(this.totalNs, a), d = import_jsbi_umd.default.lessThan(this.totalNs, t) ? \"negative\" : \"positive\", h = import_jsbi_umd.default.multiply(y(s), a), u = import_jsbi_umd.default.add(h, a), l = p(y(import_jsbi_umd.default.multiply(c, r)), a), w = ue(i, d), v = import_jsbi_umd.default.equal(y(this.totalNs), h) ? h : le(h, u, l, f(s), w), b = \"positive\" === d ? v : import_jsbi_umd.default.unaryMinus(v);\n\t\treturn TimeDuration.validateNew(b, \"rounding\");\n\t}\n\tsign() {\n\t\treturn this.cmp(new TimeDuration(t));\n\t}\n\tsubtract(t) {\n\t\treturn TimeDuration.validateNew(import_jsbi_umd.default.subtract(this.totalNs, t.totalNs), \"difference\");\n\t}\n};\nTimeDuration.MAX = import_jsbi_umd.default.BigInt(\"9007199254740991999999999\"), TimeDuration.ZERO = new TimeDuration(t);\nvar me = /[A-Za-z._][A-Za-z._0-9+-]*/, fe = new RegExp(`(?:${/(?:[+-](?:[01][0-9]|2[0-3])(?::?[0-5][0-9])?)/.source}|(?:${me.source})(?:\\\\/(?:${me.source}))*)`), ye = /(?:[+-]\\d{6}|\\d{4})/, pe = /(?:0[1-9]|1[0-2])/, ge = /(?:0[1-9]|[12]\\d|3[01])/, we = new RegExp(`(${ye.source})(?:-(${pe.source})-(${ge.source})|(${pe.source})(${ge.source}))`), ve = /(\\d{2})(?::(\\d{2})(?::(\\d{2})(?:[.,](\\d{1,9}))?)?|(\\d{2})(?:(\\d{2})(?:[.,](\\d{1,9}))?)?)?/, be = /((?:[+-])(?:[01][0-9]|2[0-3])(?::?(?:[0-5][0-9])(?::?(?:[0-5][0-9])(?:[.,](?:\\d{1,9}))?)?)?)/, De = new RegExp(`([zZ])|${be.source}?`), Te = /\\[(!)?([a-z_][a-z0-9_-]*)=([A-Za-z0-9]+(?:-[A-Za-z0-9]+)*)\\]/g, Me = new RegExp([\n\t`^${we.source}`,\n\t`(?:(?:[tT]|\\\\s+)${ve.source}(?:${De.source})?)?`,\n\t`(?:\\\\[!?(${fe.source})\\\\])?`,\n\t`((?:${Te.source})*)$`\n].join(\"\")), Ee = new RegExp([\n\t`^[tT]?${ve.source}`,\n\t`(?:${De.source})?`,\n\t`(?:\\\\[!?${fe.source}\\\\])?`,\n\t`((?:${Te.source})*)$`\n].join(\"\")), Ie = new RegExp(`^(${ye.source})-?(${pe.source})(?:\\\\[!?${fe.source}\\\\])?((?:${Te.source})*)$`), Ce = new RegExp(`^(?:--)?(${pe.source})-?(${ge.source})(?:\\\\[!?${fe.source}\\\\])?((?:${Te.source})*)$`), Oe = /(\\d+)(?:[.,](\\d{1,9}))?/, $e = new RegExp(`(?:${Oe.source}H)?(?:${Oe.source}M)?(?:${Oe.source}S)?`), Ye = new RegExp(`^([+-])?P${/(?:(\\d+)Y)?(?:(\\d+)M)?(?:(\\d+)W)?(?:(\\d+)D)?/.source}(?:T(?!$)${$e.source})?$`, \"i\"), Re = 864e5, Se = 1e6 * Re, je = 6e10, ke = 1e8 * Re, Ne = xo(ke), xe = import_jsbi_umd.default.unaryMinus(Ne), Le = import_jsbi_umd.default.add(import_jsbi_umd.default.subtract(xe, l), n), Pe = import_jsbi_umd.default.subtract(import_jsbi_umd.default.add(Ne, l), n), Ue = 146097 * Re, Be = -271821, Ze = 275760, Fe = Date.UTC(1847, 0, 1), He = [\n\t\"iso8601\",\n\t\"hebrew\",\n\t\"islamic\",\n\t\"islamic-umalqura\",\n\t\"islamic-tbla\",\n\t\"islamic-civil\",\n\t\"islamic-rgsa\",\n\t\"islamicc\",\n\t\"persian\",\n\t\"ethiopic\",\n\t\"ethioaa\",\n\t\"ethiopic-amete-alem\",\n\t\"coptic\",\n\t\"chinese\",\n\t\"dangi\",\n\t\"roc\",\n\t\"indian\",\n\t\"buddhist\",\n\t\"japanese\",\n\t\"gregory\"\n], ze = new Set([\n\t\"ACT\",\n\t\"AET\",\n\t\"AGT\",\n\t\"ART\",\n\t\"AST\",\n\t\"BET\",\n\t\"BST\",\n\t\"CAT\",\n\t\"CNT\",\n\t\"CST\",\n\t\"CTT\",\n\t\"EAT\",\n\t\"ECT\",\n\t\"IET\",\n\t\"IST\",\n\t\"JST\",\n\t\"MIT\",\n\t\"NET\",\n\t\"NST\",\n\t\"PLT\",\n\t\"PNT\",\n\t\"PRT\",\n\t\"PST\",\n\t\"SST\",\n\t\"VST\"\n]);\nfunction Ae(e) {\n\treturn \"object\" == typeof e && null !== e || \"function\" == typeof e;\n}\nfunction qe(e) {\n\tif (\"bigint\" == typeof e) throw new TypeError(\"Cannot convert BigInt to number\");\n\treturn Number(e);\n}\nfunction We(e) {\n\tif (\"symbol\" == typeof e) throw new TypeError(\"Cannot convert a Symbol value to a String\");\n\treturn String(e);\n}\nfunction _e(e) {\n\tconst t = qe(e);\n\tif (0 === t) return 0;\n\tif (Number.isNaN(t) || t === Infinity || t === -Infinity) throw new RangeError(\"invalid number value\");\n\tconst n = Math.trunc(t);\n\treturn 0 === n ? 0 : n;\n}\nfunction Je(e, t) {\n\tconst n = _e(e);\n\tif (n <= 0) {\n\t\tif (void 0 !== t) throw new RangeError(`property '${t}' cannot be a a number less than one`);\n\t\tthrow new RangeError(\"Cannot convert a number less than one to a positive integer\");\n\t}\n\treturn n;\n}\nfunction Ge(e) {\n\tconst t = qe(e);\n\tif (Number.isNaN(t)) throw new RangeError(\"not a number\");\n\tif (t === Infinity || t === -Infinity) throw new RangeError(\"infinity is out of range\");\n\tif (!function(e) {\n\t\tif (\"number\" != typeof e || Number.isNaN(e) || e === Infinity || e === -Infinity) return !1;\n\t\tconst t = Math.abs(e);\n\t\treturn Math.floor(t) === t;\n\t}(t)) throw new RangeError(`unsupported fractional value ${e}`);\n\treturn 0 === t ? 0 : t;\n}\nfunction Ke(e, t) {\n\treturn String(e).padStart(t, \"0\");\n}\nfunction Ve(e) {\n\tif (\"string\" != typeof e) throw new TypeError(`expected a string, not ${String(e)}`);\n\treturn e;\n}\nfunction Xe(e, t) {\n\tif (Ae(e)) {\n\t\tconst t = e?.toString();\n\t\tif (\"string\" == typeof t || \"number\" == typeof t) return t;\n\t\tthrow new TypeError(\"Cannot convert object to primitive value\");\n\t}\n\treturn e;\n}\nvar Qe = [\n\t\"era\",\n\t\"eraYear\",\n\t\"year\",\n\t\"month\",\n\t\"monthCode\",\n\t\"day\",\n\t\"hour\",\n\t\"minute\",\n\t\"second\",\n\t\"millisecond\",\n\t\"microsecond\",\n\t\"nanosecond\",\n\t\"offset\",\n\t\"timeZone\"\n], et = {\n\tera: We,\n\teraYear: _e,\n\tyear: _e,\n\tmonth: Je,\n\tmonthCode: function(e) {\n\t\tconst t = Ve(Xe(e));\n\t\tif (t.length < 3 || t.length > 4 || \"M\" !== t[0] || -1 === \"0123456789\".indexOf(t[1]) || -1 === \"0123456789\".indexOf(t[2]) || t[1] + t[2] === \"00\" && \"L\" !== t[3] || \"L\" !== t[3] && void 0 !== t[3]) throw new RangeError(`bad month code ${t}; must match M01-M99 or M00L-M99L`);\n\t\treturn t;\n\t},\n\tday: Je,\n\thour: _e,\n\tminute: _e,\n\tsecond: _e,\n\tmillisecond: _e,\n\tmicrosecond: _e,\n\tnanosecond: _e,\n\toffset: function(e) {\n\t\tconst t = Ve(Xe(e));\n\t\treturn sr(t), t;\n\t},\n\ttimeZone: Bn\n}, tt = {\n\thour: 0,\n\tminute: 0,\n\tsecond: 0,\n\tmillisecond: 0,\n\tmicrosecond: 0,\n\tnanosecond: 0\n}, nt = [\n\t[\n\t\t\"years\",\n\t\t\"year\",\n\t\t\"date\"\n\t],\n\t[\n\t\t\"months\",\n\t\t\"month\",\n\t\t\"date\"\n\t],\n\t[\n\t\t\"weeks\",\n\t\t\"week\",\n\t\t\"date\"\n\t],\n\t[\n\t\t\"days\",\n\t\t\"day\",\n\t\t\"date\"\n\t],\n\t[\n\t\t\"hours\",\n\t\t\"hour\",\n\t\t\"time\"\n\t],\n\t[\n\t\t\"minutes\",\n\t\t\"minute\",\n\t\t\"time\"\n\t],\n\t[\n\t\t\"seconds\",\n\t\t\"second\",\n\t\t\"time\"\n\t],\n\t[\n\t\t\"milliseconds\",\n\t\t\"millisecond\",\n\t\t\"time\"\n\t],\n\t[\n\t\t\"microseconds\",\n\t\t\"microsecond\",\n\t\t\"time\"\n\t],\n\t[\n\t\t\"nanoseconds\",\n\t\t\"nanosecond\",\n\t\t\"time\"\n\t]\n], rt = Object.fromEntries(nt.map(((e) => [e[0], e[1]]))), ot = Object.fromEntries(nt.map((([e, t]) => [t, e]))), it = nt.map((([, e]) => e)), at = {\n\tday: Se,\n\thour: 36e11,\n\tminute: 6e10,\n\tsecond: 1e9,\n\tmillisecond: 1e6,\n\tmicrosecond: 1e3,\n\tnanosecond: 1\n}, st = [\n\t\"days\",\n\t\"hours\",\n\t\"microseconds\",\n\t\"milliseconds\",\n\t\"minutes\",\n\t\"months\",\n\t\"nanoseconds\",\n\t\"seconds\",\n\t\"weeks\",\n\t\"years\"\n], ct = Intl.DateTimeFormat, dt = /* @__PURE__ */ new Map();\nfunction ht(e) {\n\tconst t = Ao(e);\n\tlet n = dt.get(t);\n\treturn void 0 === n && (n = new ct(\"en-us\", {\n\t\ttimeZone: t,\n\t\thour12: !1,\n\t\tera: \"short\",\n\t\tyear: \"numeric\",\n\t\tmonth: \"numeric\",\n\t\tday: \"numeric\",\n\t\thour: \"numeric\",\n\t\tminute: \"numeric\",\n\t\tsecond: \"numeric\"\n\t}), dt.set(t, n)), n;\n}\nfunction ut(e) {\n\treturn ne(e, b) && !ne(e, $, E);\n}\nfunction lt(e) {\n\treturn ne(e, Y, R, j, k, N, x, L, P, U);\n}\nfunction mt(e) {\n\treturn ne(e, I);\n}\nfunction ft(e) {\n\treturn ne(e, M);\n}\nfunction yt(e) {\n\treturn ne(e, T);\n}\nfunction pt(e) {\n\treturn ne(e, C);\n}\nfunction gt(e) {\n\treturn ne(e, O);\n}\nfunction wt(e) {\n\treturn ne(e, b, $, E);\n}\nfunction vt(e, t) {\n\tif (!t(e)) throw new TypeError(\"invalid receiver: method called with the wrong type of this-object\");\n}\nfunction bt(e) {\n\tif (ne(e, E) || ne(e, $)) throw new TypeError(\"with() does not support a calendar or timeZone property\");\n\tif (ft(e)) throw new TypeError(\"with() does not accept Temporal.PlainTime, use withPlainTime() instead\");\n\tif (void 0 !== e.calendar) throw new TypeError(\"with() does not support a calendar property\");\n\tif (void 0 !== e.timeZone) throw new TypeError(\"with() does not support a timeZone property\");\n}\nfunction Dt(e, t) {\n\treturn \"never\" === t || \"auto\" === t && \"iso8601\" === e ? \"\" : `[${\"critical\" === t ? \"!\" : \"\"}u-ca=${e}]`;\n}\nfunction Tt(e) {\n\tlet t, n, r = !1;\n\tfor (Te.lastIndex = 0; n = Te.exec(e);) {\n\t\tconst { 1: o, 2: i, 3: a } = n;\n\t\tif (\"u-ca\" === i) {\n\t\t\tif (void 0 === t) t = a, r = \"!\" === o;\n\t\t\telse if (\"!\" === o || r) throw new RangeError(`Invalid annotations in ${e}: more than one u-ca present with critical flag`);\n\t\t} else if (\"!\" === o) throw new RangeError(`Unrecognized annotation: !${i}=${a}`);\n\t}\n\treturn t;\n}\nfunction Mt(e) {\n\tconst t = Me.exec(e);\n\tif (!t) throw new RangeError(`invalid RFC 9557 string: ${e}`);\n\tconst n = Tt(t[16]);\n\tlet r = t[1];\n\tif (\"-000000\" === r) throw new RangeError(`invalid RFC 9557 string: ${e}`);\n\tconst o = +r, i = +(t[2] ?? t[4] ?? 1), a = +(t[3] ?? t[5] ?? 1), s = void 0 !== t[6], c = +(t[6] ?? 0), d = +(t[7] ?? t[10] ?? 0);\n\tlet h = +(t[8] ?? t[11] ?? 0);\n\t60 === h && (h = 59);\n\tconst u = (t[9] ?? t[12] ?? \"\") + \"000000000\", l = +u.slice(0, 3), m = +u.slice(3, 6), f = +u.slice(6, 9);\n\tlet y, p = !1;\n\tt[13] ? (y = void 0, p = !0) : t[14] && (y = t[14]);\n\tconst g = t[15];\n\treturn Ur(o, i, a, c, d, h, l, m, f), {\n\t\tyear: o,\n\t\tmonth: i,\n\t\tday: a,\n\t\ttime: s ? {\n\t\t\thour: c,\n\t\t\tminute: d,\n\t\t\tsecond: h,\n\t\t\tmillisecond: l,\n\t\t\tmicrosecond: m,\n\t\t\tnanosecond: f\n\t\t} : \"start-of-day\",\n\t\ttzAnnotation: g,\n\t\toffset: y,\n\t\tz: p,\n\t\tcalendar: n\n\t};\n}\nfunction Et(e) {\n\tconst t = Ee.exec(e);\n\tlet n, r, o, i, a, s, c;\n\tif (t) {\n\t\tc = Tt(t[10]), n = +(t[1] ?? 0), r = +(t[2] ?? t[5] ?? 0), o = +(t[3] ?? t[6] ?? 0), 60 === o && (o = 59);\n\t\tconst e = (t[4] ?? t[7] ?? \"\") + \"000000000\";\n\t\tif (i = +e.slice(0, 3), a = +e.slice(3, 6), s = +e.slice(6, 9), t[8]) throw new RangeError(\"Z designator not supported for PlainTime\");\n\t} else {\n\t\tlet t, d;\n\t\tif ({time: t, z: d, calendar: c} = Mt(e), \"start-of-day\" === t) throw new RangeError(`time is missing in string: ${e}`);\n\t\tif (d) throw new RangeError(\"Z designator not supported for PlainTime\");\n\t\t({hour: n, minute: r, second: o, millisecond: i, microsecond: a, nanosecond: s} = t);\n\t}\n\tif (Pr(n, r, o, i, a, s), /[tT ][0-9][0-9]/.test(e)) return {\n\t\thour: n,\n\t\tminute: r,\n\t\tsecond: o,\n\t\tmillisecond: i,\n\t\tmicrosecond: a,\n\t\tnanosecond: s,\n\t\tcalendar: c\n\t};\n\ttry {\n\t\tconst { month: t, day: n } = Ct(e);\n\t\txr(1972, t, n);\n\t} catch {\n\t\ttry {\n\t\t\tconst { year: t, month: n } = It(e);\n\t\t\txr(t, n, 1);\n\t\t} catch {\n\t\t\treturn {\n\t\t\t\thour: n,\n\t\t\t\tminute: r,\n\t\t\t\tsecond: o,\n\t\t\t\tmillisecond: i,\n\t\t\t\tmicrosecond: a,\n\t\t\t\tnanosecond: s,\n\t\t\t\tcalendar: c\n\t\t\t};\n\t\t}\n\t}\n\tthrow new RangeError(`invalid RFC 9557 time-only string ${e}; may need a T prefix`);\n}\nfunction It(e) {\n\tconst t = Ie.exec(e);\n\tlet n, r, o, i;\n\tif (t) {\n\t\to = Tt(t[3]);\n\t\tlet a = t[1];\n\t\tif (\"-000000\" === a) throw new RangeError(`invalid RFC 9557 string: ${e}`);\n\t\tif (n = +a, r = +t[2], i = 1, void 0 !== o && \"iso8601\" !== o) throw new RangeError(\"YYYY-MM format is only valid with iso8601 calendar\");\n\t} else {\n\t\tlet t;\n\t\tif ({year: n, month: r, calendar: o, day: i, z: t} = Mt(e), t) throw new RangeError(\"Z designator not supported for PlainYearMonth\");\n\t}\n\treturn {\n\t\tyear: n,\n\t\tmonth: r,\n\t\tcalendar: o,\n\t\treferenceISODay: i\n\t};\n}\nfunction Ct(e) {\n\tconst t = Ce.exec(e);\n\tlet n, r, o, i;\n\tif (t) {\n\t\tif (o = Tt(t[3]), n = +t[1], r = +t[2], void 0 !== o && \"iso8601\" !== o) throw new RangeError(\"MM-DD format is only valid with iso8601 calendar\");\n\t} else {\n\t\tlet t;\n\t\tif ({month: n, day: r, calendar: o, year: i, z: t} = Mt(e), t) throw new RangeError(\"Z designator not supported for PlainMonthDay\");\n\t}\n\treturn {\n\t\tmonth: n,\n\t\tday: r,\n\t\tcalendar: o,\n\t\treferenceISOYear: i\n\t};\n}\nvar Ot = new RegExp(`^${fe.source}$`, \"i\"), $t = new RegExp(`^${/([+-])([01][0-9]|2[0-3])(?::?([0-5][0-9])?)?/.source}$`);\nfunction Yt(e) {\n\tconst t = Wo.test(e) ? \"Seconds not allowed in offset time zone\" : \"Invalid time zone\";\n\tthrow new RangeError(`${t}: ${e}`);\n}\nfunction Rt(e) {\n\treturn Ot.test(e) || Yt(e), $t.test(e) ? { offsetMinutes: sr(e) / 6e10 } : { tzName: e };\n}\nfunction St(e, t, n, r) {\n\tlet o = e, i = t, a = n;\n\tswitch (r) {\n\t\tcase \"reject\":\n\t\t\txr(o, i, a);\n\t\t\tbreak;\n\t\tcase \"constrain\": ({year: o, month: i, day: a} = kr(o, i, a));\n\t}\n\treturn {\n\t\tyear: o,\n\t\tmonth: i,\n\t\tday: a\n\t};\n}\nfunction jt(e, t, n, r, o, i, a) {\n\tlet s = e, c = t, d = n, h = r, u = o, l = i;\n\tswitch (a) {\n\t\tcase \"reject\":\n\t\t\tPr(s, c, d, h, u, l);\n\t\t\tbreak;\n\t\tcase \"constrain\": s = jr(s, 0, 23), c = jr(c, 0, 59), d = jr(d, 0, 59), h = jr(h, 0, 999), u = jr(u, 0, 999), l = jr(l, 0, 999);\n\t}\n\treturn {\n\t\thour: s,\n\t\tminute: c,\n\t\tsecond: d,\n\t\tmillisecond: h,\n\t\tmicrosecond: u,\n\t\tnanosecond: l\n\t};\n}\nfunction kt(e) {\n\tif (!Ae(e)) throw new TypeError(\"invalid duration-like\");\n\tconst t = {\n\t\tyears: void 0,\n\t\tmonths: void 0,\n\t\tweeks: void 0,\n\t\tdays: void 0,\n\t\thours: void 0,\n\t\tminutes: void 0,\n\t\tseconds: void 0,\n\t\tmilliseconds: void 0,\n\t\tmicroseconds: void 0,\n\t\tnanoseconds: void 0\n\t};\n\tlet n = !1;\n\tfor (let r = 0; r < st.length; r++) {\n\t\tconst o = st[r], i = e[o];\n\t\tvoid 0 !== i && (n = !0, t[o] = Ge(i));\n\t}\n\tif (!n) throw new TypeError(\"invalid duration-like\");\n\treturn t;\n}\nfunction Nt({ years: e, months: t, weeks: n, days: r }, o, i, a) {\n\treturn {\n\t\tyears: e,\n\t\tmonths: a ?? t,\n\t\tweeks: i ?? n,\n\t\tdays: o ?? r\n\t};\n}\nfunction xt(e, t) {\n\treturn {\n\t\tisoDate: e,\n\t\ttime: t\n\t};\n}\nfunction Lt(e) {\n\treturn Ho(e, \"overflow\", [\"constrain\", \"reject\"], \"constrain\");\n}\nfunction Pt(e) {\n\treturn Ho(e, \"disambiguation\", [\n\t\t\"compatible\",\n\t\t\"earlier\",\n\t\t\"later\",\n\t\t\"reject\"\n\t], \"compatible\");\n}\nfunction Ut(e, t) {\n\treturn Ho(e, \"roundingMode\", [\n\t\t\"ceil\",\n\t\t\"floor\",\n\t\t\"expand\",\n\t\t\"trunc\",\n\t\t\"halfCeil\",\n\t\t\"halfFloor\",\n\t\t\"halfExpand\",\n\t\t\"halfTrunc\",\n\t\t\"halfEven\"\n\t], t);\n}\nfunction Bt(e, t) {\n\treturn Ho(e, \"offset\", [\n\t\t\"prefer\",\n\t\t\"use\",\n\t\t\"ignore\",\n\t\t\"reject\"\n\t], t);\n}\nfunction Zt(e) {\n\treturn Ho(e, \"calendarName\", [\n\t\t\"auto\",\n\t\t\"always\",\n\t\t\"never\",\n\t\t\"critical\"\n\t], \"auto\");\n}\nfunction Ft(e) {\n\tlet t = e.roundingIncrement;\n\tif (void 0 === t) return 1;\n\tconst n = _e(t);\n\tif (n < 1 || n > 1e9) throw new RangeError(`roundingIncrement must be at least 1 and at most 1e9, not ${t}`);\n\treturn n;\n}\nfunction Ht(e, t, n) {\n\tconst r = n ? t : t - 1;\n\tif (e > r) throw new RangeError(`roundingIncrement must be at least 1 and less than ${r}, not ${e}`);\n\tif (t % e != 0) throw new RangeError(`Rounding increment must divide evenly into ${t}`);\n}\nfunction zt(e) {\n\tconst t = e.fractionalSecondDigits;\n\tif (void 0 === t) return \"auto\";\n\tif (\"number\" != typeof t) {\n\t\tif (\"auto\" !== We(t)) throw new RangeError(`fractionalSecondDigits must be 'auto' or 0 through 9, not ${t}`);\n\t\treturn \"auto\";\n\t}\n\tconst n = Math.floor(t);\n\tif (!Number.isFinite(n) || n < 0 || n > 9) throw new RangeError(`fractionalSecondDigits must be 'auto' or 0 through 9, not ${t}`);\n\treturn n;\n}\nfunction At(e, t) {\n\tswitch (e) {\n\t\tcase \"minute\": return {\n\t\t\tprecision: \"minute\",\n\t\t\tunit: \"minute\",\n\t\t\tincrement: 1\n\t\t};\n\t\tcase \"second\": return {\n\t\t\tprecision: 0,\n\t\t\tunit: \"second\",\n\t\t\tincrement: 1\n\t\t};\n\t\tcase \"millisecond\": return {\n\t\t\tprecision: 3,\n\t\t\tunit: \"millisecond\",\n\t\t\tincrement: 1\n\t\t};\n\t\tcase \"microsecond\": return {\n\t\t\tprecision: 6,\n\t\t\tunit: \"microsecond\",\n\t\t\tincrement: 1\n\t\t};\n\t\tcase \"nanosecond\": return {\n\t\t\tprecision: 9,\n\t\t\tunit: \"nanosecond\",\n\t\t\tincrement: 1\n\t\t};\n\t}\n\tswitch (t) {\n\t\tcase \"auto\": return {\n\t\t\tprecision: t,\n\t\t\tunit: \"nanosecond\",\n\t\t\tincrement: 1\n\t\t};\n\t\tcase 0: return {\n\t\t\tprecision: t,\n\t\t\tunit: \"second\",\n\t\t\tincrement: 1\n\t\t};\n\t\tcase 1:\n\t\tcase 2:\n\t\tcase 3: return {\n\t\t\tprecision: t,\n\t\t\tunit: \"millisecond\",\n\t\t\tincrement: 10 ** (3 - t)\n\t\t};\n\t\tcase 4:\n\t\tcase 5:\n\t\tcase 6: return {\n\t\t\tprecision: t,\n\t\t\tunit: \"microsecond\",\n\t\t\tincrement: 10 ** (6 - t)\n\t\t};\n\t\tcase 7:\n\t\tcase 8:\n\t\tcase 9: return {\n\t\t\tprecision: t,\n\t\t\tunit: \"nanosecond\",\n\t\t\tincrement: 10 ** (9 - t)\n\t\t};\n\t\tdefault: throw new RangeError(`fractionalSecondDigits must be 'auto' or 0 through 9, not ${t}`);\n\t}\n}\nvar qt = Symbol(\"~required~\");\nfunction Wt(e, t, n, r, o = []) {\n\tlet i = [];\n\tfor (let e = 0; e < nt.length; e++) {\n\t\tconst t = nt[e], r = t[1], o = t[2];\n\t\t\"datetime\" !== n && n !== o || i.push(r);\n\t}\n\ti = i.concat(o);\n\tlet a = r;\n\ta === qt ? a = void 0 : void 0 !== a && i.push(a);\n\tlet s = [];\n\ts = s.concat(i);\n\tfor (let e = 0; e < i.length; e++) {\n\t\tconst n = ot[i[e]];\n\t\tvoid 0 !== n && s.push(n);\n\t}\n\tlet c = Ho(e, t, s, a);\n\tif (void 0 === c && r === qt) throw new RangeError(`${t} is required`);\n\treturn c && c in rt ? rt[c] : c;\n}\nfunction _t(e) {\n\tconst t = e.relativeTo;\n\tif (void 0 === t) return {};\n\tlet n, r, o, i, a, s = \"option\", c = !1;\n\tif (Ae(t)) {\n\t\tif (wt(t)) return { zonedRelativeTo: t };\n\t\tif (mt(t)) return { plainRelativeTo: t };\n\t\tif (yt(t)) return { plainRelativeTo: pn(re(t, T).isoDate, re(t, E)) };\n\t\to = Nn(t);\n\t\tconst e = tn(o, t, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\",\n\t\t\t\"day\"\n\t\t], [\n\t\t\t\"hour\",\n\t\t\t\"minute\",\n\t\t\t\"second\",\n\t\t\t\"millisecond\",\n\t\t\t\"microsecond\",\n\t\t\t\"nanosecond\",\n\t\t\t\"offset\",\n\t\t\t\"timeZone\"\n\t\t], []);\n\t\t({isoDate: n, time: r} = on(o, e, \"constrain\")), {offset: a, timeZone: i} = e, void 0 === a && (s = \"wall\");\n\t} else {\n\t\tlet e, d, h, u, l;\n\t\tif ({year: h, month: u, day: l, time: r, calendar: o, tzAnnotation: e, offset: a, z: d} = Mt(Ve(t)), e) i = Bn(e), d ? s = \"exact\" : a || (s = \"wall\"), c = !0;\n\t\telse if (d) throw new RangeError(\"Z designator not supported for PlainDate relativeTo; either remove the Z or add a bracketed time zone\");\n\t\to || (o = \"iso8601\"), o = zo(o), n = {\n\t\t\tyear: h,\n\t\t\tmonth: u,\n\t\t\tday: l\n\t\t};\n\t}\n\treturn void 0 === i ? { plainRelativeTo: pn(n, o) } : { zonedRelativeTo: $n(mn(n, r, s, \"option\" === s ? sr(a) : 0, i, \"compatible\", \"reject\", c), i, o) };\n}\nfunction Jt(e) {\n\treturn 0 !== re(e, Y) ? \"year\" : 0 !== re(e, R) ? \"month\" : 0 !== re(e, S) ? \"week\" : 0 !== re(e, j) ? \"day\" : 0 !== re(e, k) ? \"hour\" : 0 !== re(e, N) ? \"minute\" : 0 !== re(e, x) ? \"second\" : 0 !== re(e, L) ? \"millisecond\" : 0 !== re(e, P) ? \"microsecond\" : \"nanosecond\";\n}\nfunction Gt(e, t) {\n\treturn it.indexOf(e) > it.indexOf(t) ? t : e;\n}\nfunction Kt(e) {\n\treturn \"year\" === e || \"month\" === e || \"week\" === e;\n}\nfunction Vt(e) {\n\treturn Kt(e) || \"day\" === e ? \"date\" : \"time\";\n}\nfunction Xt(e) {\n\treturn ce(\"%calendarImpl%\")(e);\n}\nfunction Qt(e) {\n\treturn ce(\"%calendarImpl%\")(re(e, E));\n}\nfunction en(e, t, n = \"date\") {\n\tconst r = Object.create(null), o = Xt(e).isoToDate(t, {\n\t\tyear: !0,\n\t\tmonthCode: !0,\n\t\tday: !0\n\t});\n\treturn r.monthCode = o.monthCode, \"month-day\" !== n && \"date\" !== n || (r.day = o.day), \"year-month\" !== n && \"date\" !== n || (r.year = o.year), r;\n}\nfunction tn(e, t, n, r, o) {\n\tconst i = Xt(e).extraFields(n), a = n.concat(r, i), s = Object.create(null);\n\tlet c = !1;\n\ta.sort();\n\tfor (let e = 0; e < a.length; e++) {\n\t\tconst n = a[e], r = t[n];\n\t\tif (void 0 !== r) c = !0, s[n] = (0, et[n])(r);\n\t\telse if (\"partial\" !== o) {\n\t\t\tif (o.includes(n)) throw new TypeError(`required property '${n}' missing or undefined`);\n\t\t\ts[n] = tt[n];\n\t\t}\n\t}\n\tif (\"partial\" === o && !c) throw new TypeError(\"no supported properties found\");\n\treturn s;\n}\nfunction nn(e, t = \"complete\") {\n\tconst n = [\n\t\t\"hour\",\n\t\t\"microsecond\",\n\t\t\"millisecond\",\n\t\t\"minute\",\n\t\t\"nanosecond\",\n\t\t\"second\"\n\t];\n\tlet r = !1;\n\tconst o = Object.create(null);\n\tfor (let i = 0; i < n.length; i++) {\n\t\tconst a = n[i], s = e[a];\n\t\tvoid 0 !== s ? (o[a] = _e(s), r = !0) : \"complete\" === t && (o[a] = 0);\n\t}\n\tif (!r) throw new TypeError(\"invalid time-like\");\n\treturn o;\n}\nfunction rn(e, t) {\n\tif (Ae(e)) {\n\t\tif (mt(e)) return Lt(Zo(t)), pn(re(e, D), re(e, E));\n\t\tif (wt(e)) {\n\t\t\tconst n = zn(re(e, $), re(e, b));\n\t\t\treturn Lt(Zo(t)), pn(n.isoDate, re(e, E));\n\t\t}\n\t\tif (yt(e)) return Lt(Zo(t)), pn(re(e, T).isoDate, re(e, E));\n\t\tconst n = Nn(e);\n\t\treturn pn(Ln(n, tn(n, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\",\n\t\t\t\"day\"\n\t\t], [], []), Lt(Zo(t))), n);\n\t}\n\tlet { year: n, month: r, day: o, calendar: i, z: a } = Mt(Ve(e));\n\tif (a) throw new RangeError(\"Z designator not supported for PlainDate\");\n\treturn i || (i = \"iso8601\"), i = zo(i), Lt(Zo(t)), pn({\n\t\tyear: n,\n\t\tmonth: r,\n\t\tday: o\n\t}, i);\n}\nfunction on(e, t, n) {\n\treturn xt(Ln(e, t, n), jt(t.hour, t.minute, t.second, t.millisecond, t.microsecond, t.nanosecond, n));\n}\nfunction an(e, t) {\n\tlet n, r, o;\n\tif (Ae(e)) {\n\t\tif (yt(e)) return Lt(Zo(t)), wn(re(e, T), re(e, E));\n\t\tif (wt(e)) {\n\t\t\tconst n = zn(re(e, $), re(e, b));\n\t\t\treturn Lt(Zo(t)), wn(n, re(e, E));\n\t\t}\n\t\tif (mt(e)) return Lt(Zo(t)), wn(xt(re(e, D), {\n\t\t\tdeltaDays: 0,\n\t\t\thour: 0,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t}), re(e, E));\n\t\to = Nn(e);\n\t\tconst i = tn(o, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\",\n\t\t\t\"day\"\n\t\t], [\n\t\t\t\"hour\",\n\t\t\t\"minute\",\n\t\t\t\"second\",\n\t\t\t\"millisecond\",\n\t\t\t\"microsecond\",\n\t\t\t\"nanosecond\"\n\t\t], []), a = Lt(Zo(t));\n\t\t({isoDate: n, time: r} = on(o, i, a));\n\t} else {\n\t\tlet i, a, s, c;\n\t\tif ({year: a, month: s, day: c, time: r, calendar: o, z: i} = Mt(Ve(e)), i) throw new RangeError(\"Z designator not supported for PlainDateTime\");\n\t\t\"start-of-day\" === r && (r = {\n\t\t\tdeltaDays: 0,\n\t\t\thour: 0,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t}), Ur(a, s, c, r.hour, r.minute, r.second, r.millisecond, r.microsecond, r.nanosecond), o || (o = \"iso8601\"), o = zo(o), Lt(Zo(t)), n = {\n\t\t\tyear: a,\n\t\t\tmonth: s,\n\t\t\tday: c\n\t\t};\n\t}\n\treturn wn(xt(n, r), o);\n}\nfunction sn(e) {\n\tconst t = ce(\"%Temporal.Duration%\");\n\tif (lt(e)) return new t(re(e, Y), re(e, R), re(e, S), re(e, j), re(e, k), re(e, N), re(e, x), re(e, L), re(e, P), re(e, U));\n\tif (!Ae(e)) return function(e) {\n\t\tconst { years: t, months: n, weeks: r, days: o, hours: i, minutes: a, seconds: s, milliseconds: c, microseconds: d, nanoseconds: h } = function(e) {\n\t\t\tconst t = Ye.exec(e);\n\t\t\tif (!t) throw new RangeError(`invalid duration: ${e}`);\n\t\t\tif (t.every(((e, t) => t < 2 || void 0 === e))) throw new RangeError(`invalid duration: ${e}`);\n\t\t\tconst n = \"-\" === t[1] ? -1 : 1, r = void 0 === t[2] ? 0 : _e(t[2]) * n, o = void 0 === t[3] ? 0 : _e(t[3]) * n, i = void 0 === t[4] ? 0 : _e(t[4]) * n, a = void 0 === t[5] ? 0 : _e(t[5]) * n, s = void 0 === t[6] ? 0 : _e(t[6]) * n, c = t[7], d = t[8], h = t[9], u = t[10], l = t[11];\n\t\t\tlet m = 0, f = 0, y = 0;\n\t\t\tif (void 0 !== c) {\n\t\t\t\tif (d ?? h ?? u ?? l) throw new RangeError(\"only the smallest unit can be fractional\");\n\t\t\t\ty = 3600 * _e((c + \"000000000\").slice(0, 9)) * n;\n\t\t\t} else if (m = void 0 === d ? 0 : _e(d) * n, void 0 !== h) {\n\t\t\t\tif (u ?? l) throw new RangeError(\"only the smallest unit can be fractional\");\n\t\t\t\ty = 60 * _e((h + \"000000000\").slice(0, 9)) * n;\n\t\t\t} else f = void 0 === u ? 0 : _e(u) * n, void 0 !== l && (y = _e((l + \"000000000\").slice(0, 9)) * n);\n\t\t\tconst p = y % 1e3, g = Math.trunc(y / 1e3) % 1e3, w = Math.trunc(y / 1e6) % 1e3;\n\t\t\treturn f += Math.trunc(y / 1e9) % 60, m += Math.trunc(y / 6e10), zr(r, o, i, a, s, m, f, w, g, p), {\n\t\t\t\tyears: r,\n\t\t\t\tmonths: o,\n\t\t\t\tweeks: i,\n\t\t\t\tdays: a,\n\t\t\t\thours: s,\n\t\t\t\tminutes: m,\n\t\t\t\tseconds: f,\n\t\t\t\tmilliseconds: w,\n\t\t\t\tmicroseconds: g,\n\t\t\t\tnanoseconds: p\n\t\t\t};\n\t\t}(e);\n\t\treturn new (ce(\"%Temporal.Duration%\"))(t, n, r, o, i, a, s, c, d, h);\n\t}(Ve(e));\n\tconst n = {\n\t\tyears: 0,\n\t\tmonths: 0,\n\t\tweeks: 0,\n\t\tdays: 0,\n\t\thours: 0,\n\t\tminutes: 0,\n\t\tseconds: 0,\n\t\tmilliseconds: 0,\n\t\tmicroseconds: 0,\n\t\tnanoseconds: 0\n\t};\n\tlet r = kt(e);\n\tfor (let e = 0; e < st.length; e++) {\n\t\tconst t = st[e], o = r[t];\n\t\tvoid 0 !== o && (n[t] = o);\n\t}\n\treturn new t(n.years, n.months, n.weeks, n.days, n.hours, n.minutes, n.seconds, n.milliseconds, n.microseconds, n.nanoseconds);\n}\nfunction cn(e) {\n\tlet t;\n\tif (Ae(e)) {\n\t\tif (ut(e) || wt(e)) return Cn(re(e, b));\n\t\tt = Xe(e);\n\t} else t = e;\n\tconst { year: n, month: r, day: o, time: i, offset: a, z: s } = function(e) {\n\t\tconst t = Mt(e);\n\t\tif (!t.z && !t.offset) throw new RangeError(\"Temporal.Instant requires a time zone offset\");\n\t\treturn t;\n\t}(Ve(t)), { hour: c = 0, minute: d = 0, second: h = 0, millisecond: u = 0, microsecond: l = 0, nanosecond: m = 0 } = \"start-of-day\" === i ? {} : i, f = $r(n, r, o, c, d, h, u, l, m - (s ? 0 : sr(a)));\n\treturn Kr(f.isoDate), Cn(pr(f));\n}\nfunction dn(e, t) {\n\tif (Ae(e)) {\n\t\tif (gt(e)) return Lt(Zo(t)), bn(re(e, D), re(e, E));\n\t\tlet n;\n\t\treturn ne(e, E) ? n = re(e, E) : (n = e.calendar, void 0 === n && (n = \"iso8601\"), n = kn(n)), bn(Un(n, tn(n, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\",\n\t\t\t\"day\"\n\t\t], [], []), Lt(Zo(t))), n);\n\t}\n\tlet { month: n, day: r, referenceISOYear: o, calendar: i } = Ct(Ve(e));\n\tif (void 0 === i && (i = \"iso8601\"), i = zo(i), Lt(Zo(t)), \"iso8601\" === i) return bn({\n\t\tyear: 1972,\n\t\tmonth: n,\n\t\tday: r\n\t}, i);\n\tlet a = {\n\t\tyear: o,\n\t\tmonth: n,\n\t\tday: r\n\t};\n\treturn Lr(a), a = Un(i, en(i, a, \"month-day\"), \"constrain\"), bn(a, i);\n}\nfunction hn(e, t) {\n\tlet n;\n\tif (Ae(e)) {\n\t\tif (ft(e)) return Lt(Zo(t)), Tn(re(e, M));\n\t\tif (yt(e)) return Lt(Zo(t)), Tn(re(e, T).time);\n\t\tif (wt(e)) {\n\t\t\tconst n = zn(re(e, $), re(e, b));\n\t\t\treturn Lt(Zo(t)), Tn(n.time);\n\t\t}\n\t\tconst { hour: r, minute: o, second: i, millisecond: a, microsecond: s, nanosecond: c } = nn(e);\n\t\tn = jt(r, o, i, a, s, c, Lt(Zo(t)));\n\t} else n = Et(Ve(e)), Lt(Zo(t));\n\treturn Tn(n);\n}\nfunction un(e) {\n\treturn void 0 === e ? {\n\t\tdeltaDays: 0,\n\t\thour: 0,\n\t\tminute: 0,\n\t\tsecond: 0,\n\t\tmillisecond: 0,\n\t\tmicrosecond: 0,\n\t\tnanosecond: 0\n\t} : re(hn(e), M);\n}\nfunction ln(e, t) {\n\tif (Ae(e)) {\n\t\tif (pt(e)) return Lt(Zo(t)), En(re(e, D), re(e, E));\n\t\tconst n = Nn(e);\n\t\treturn En(Pn(n, tn(n, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\"\n\t\t], [], []), Lt(Zo(t))), n);\n\t}\n\tlet { year: n, month: r, referenceISODay: o, calendar: i } = It(Ve(e));\n\tvoid 0 === i && (i = \"iso8601\"), i = zo(i), Lt(Zo(t));\n\tlet a = {\n\t\tyear: n,\n\t\tmonth: r,\n\t\tday: o\n\t};\n\treturn Hr(a), a = Pn(i, en(i, a, \"year-month\"), \"constrain\"), En(a, i);\n}\nfunction mn(t, n, r, o, i, a, s, c) {\n\tif (\"start-of-day\" === n) return _n(i, t);\n\tconst d = xt(t, n);\n\tif (\"wall\" === r || \"ignore\" === s) return An(i, d, a);\n\tif (\"exact\" === r || \"use\" === s) {\n\t\tconst e = $r(t.year, t.month, t.day, n.hour, n.minute, n.second, n.millisecond, n.microsecond, n.nanosecond - o);\n\t\tKr(e.isoDate);\n\t\tconst r = pr(e);\n\t\treturn Fr(r), r;\n\t}\n\tKr(t);\n\tconst h = pr(d), u = Wn(i, d);\n\tfor (let t = 0; t < u.length; t++) {\n\t\tconst n = u[t], r = import_jsbi_umd.default.toNumber(import_jsbi_umd.default.subtract(h, n)), i = Eo(r, 6e10, \"halfExpand\");\n\t\tif (r === o || c && i === o) return n;\n\t}\n\tif (\"reject\" === s) {\n\t\tconst e = Hn(o), t = nr(d, \"iso8601\", \"auto\");\n\t\tthrow new RangeError(`Offset ${e} is invalid for ${t} in ${i}`);\n\t}\n\treturn qn(u, i, d, a);\n}\nfunction fn(e, t) {\n\tlet n, r, o, i, a, s, c, d = !1, h = \"option\";\n\tif (Ae(e)) {\n\t\tif (wt(e)) {\n\t\t\tconst n = Zo(t);\n\t\t\treturn Pt(n), Bt(n, \"reject\"), Lt(n), $n(re(e, b), re(e, $), re(e, E));\n\t\t}\n\t\ta = Nn(e);\n\t\tconst d = tn(a, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\",\n\t\t\t\"day\"\n\t\t], [\n\t\t\t\"hour\",\n\t\t\t\"minute\",\n\t\t\t\"second\",\n\t\t\t\"millisecond\",\n\t\t\t\"microsecond\",\n\t\t\t\"nanosecond\",\n\t\t\t\"offset\",\n\t\t\t\"timeZone\"\n\t\t], [\"timeZone\"]);\n\t\t({offset: i, timeZone: o} = d), void 0 === i && (h = \"wall\");\n\t\tconst u = Zo(t);\n\t\ts = Pt(u), c = Bt(u, \"reject\");\n\t\tconst l = Lt(u);\n\t\t({isoDate: n, time: r} = on(a, d, l));\n\t} else {\n\t\tlet u, l, m, f, y;\n\t\t({year: m, month: f, day: y, time: r, tzAnnotation: u, offset: i, z: l, calendar: a} = function(e) {\n\t\t\tconst t = Mt(e);\n\t\t\tif (!t.tzAnnotation) throw new RangeError(\"Temporal.ZonedDateTime requires a time zone ID in brackets\");\n\t\t\treturn t;\n\t\t}(Ve(e))), o = Bn(u), l ? h = \"exact\" : i || (h = \"wall\"), a || (a = \"iso8601\"), a = zo(a), d = !0;\n\t\tconst p = Zo(t);\n\t\ts = Pt(p), c = Bt(p, \"reject\"), Lt(p), n = {\n\t\t\tyear: m,\n\t\t\tmonth: f,\n\t\t\tday: y\n\t\t};\n\t}\n\tlet u = 0;\n\treturn \"option\" === h && (u = sr(i)), $n(mn(n, r, h, u, o, s, c, d), o, a);\n}\nfunction yn(e, t, n) {\n\tLr(t), te(e), oe(e, D, t), oe(e, E, n), oe(e, I, !0);\n}\nfunction pn(e, t) {\n\tconst n = ce(\"%Temporal.PlainDate%\"), r = Object.create(n.prototype);\n\treturn yn(r, e, t), r;\n}\nfunction gn(e, t, n) {\n\tBr(t), te(e), oe(e, T, t), oe(e, E, n);\n}\nfunction wn(e, t) {\n\tconst n = ce(\"%Temporal.PlainDateTime%\"), r = Object.create(n.prototype);\n\treturn gn(r, e, t), r;\n}\nfunction vn(e, t, n) {\n\tLr(t), te(e), oe(e, D, t), oe(e, E, n), oe(e, O, !0);\n}\nfunction bn(e, t) {\n\tconst n = ce(\"%Temporal.PlainMonthDay%\"), r = Object.create(n.prototype);\n\treturn vn(r, e, t), r;\n}\nfunction Dn(e, t) {\n\tte(e), oe(e, M, t);\n}\nfunction Tn(e) {\n\tconst t = ce(\"%Temporal.PlainTime%\"), n = Object.create(t.prototype);\n\treturn Dn(n, e), n;\n}\nfunction Mn(e, t, n) {\n\tHr(t), te(e), oe(e, D, t), oe(e, E, n), oe(e, C, !0);\n}\nfunction En(e, t) {\n\tconst n = ce(\"%Temporal.PlainYearMonth%\"), r = Object.create(n.prototype);\n\treturn Mn(r, e, t), r;\n}\nfunction In(e, t) {\n\tFr(t), te(e), oe(e, b, t);\n}\nfunction Cn(e) {\n\tconst t = ce(\"%Temporal.Instant%\"), n = Object.create(t.prototype);\n\treturn In(n, e), n;\n}\nfunction On(e, t, n, r) {\n\tFr(t), te(e), oe(e, b, t), oe(e, $, n), oe(e, E, r);\n}\nfunction $n(e, t, n = \"iso8601\") {\n\tconst r = ce(\"%Temporal.ZonedDateTime%\"), o = Object.create(r.prototype);\n\treturn On(o, e, t, n), o;\n}\nfunction Yn(e) {\n\treturn Qe.filter(((t) => void 0 !== e[t]));\n}\nfunction Rn(e, t, n) {\n\tconst r = Yn(n), o = Xt(e).fieldKeysToIgnore(r), i = Object.create(null), a = Yn(t);\n\tfor (let e = 0; e < Qe.length; e++) {\n\t\tlet s;\n\t\tconst c = Qe[e];\n\t\ta.includes(c) && !o.includes(c) && (s = t[c]), r.includes(c) && (s = n[c]), void 0 !== s && (i[c] = s);\n\t}\n\treturn i;\n}\nfunction Sn(e, t, n, r) {\n\tconst o = Xt(e).dateAdd(t, n, r);\n\treturn Lr(o), o;\n}\nfunction jn(e, t, n, r) {\n\treturn Xt(e).dateUntil(t, n, r);\n}\nfunction kn(e) {\n\tif (Ae(e) && ne(e, E)) return re(e, E);\n\tconst t = Ve(e);\n\ttry {\n\t\treturn zo(t);\n\t} catch {}\n\tlet n;\n\ttry {\n\t\t({calendar: n} = Mt(t));\n\t} catch {\n\t\ttry {\n\t\t\t({calendar: n} = Et(t));\n\t\t} catch {\n\t\t\ttry {\n\t\t\t\t({calendar: n} = It(t));\n\t\t\t} catch {\n\t\t\t\t({calendar: n} = Ct(t));\n\t\t\t}\n\t\t}\n\t}\n\treturn n || (n = \"iso8601\"), zo(n);\n}\nfunction Nn(e) {\n\tif (ne(e, E)) return re(e, E);\n\tconst { calendar: t } = e;\n\treturn void 0 === t ? \"iso8601\" : kn(t);\n}\nfunction xn(e, t) {\n\treturn zo(e) === zo(t);\n}\nfunction Ln(e, t, n) {\n\tconst r = Xt(e);\n\tr.resolveFields(t, \"date\");\n\tconst o = r.dateToISO(t, n);\n\treturn Lr(o), o;\n}\nfunction Pn(e, t, n) {\n\tconst r = Xt(e);\n\tr.resolveFields(t, \"year-month\"), t.day = 1;\n\tconst o = r.dateToISO(t, n);\n\treturn Hr(o), o;\n}\nfunction Un(e, t, n) {\n\tconst r = Xt(e);\n\tr.resolveFields(t, \"month-day\");\n\tconst o = r.monthDayToISOReferenceDate(t, n);\n\treturn Lr(o), o;\n}\nfunction Bn(e) {\n\tif (Ae(e) && wt(e)) return re(e, $);\n\tconst t = Ve(e);\n\tif (\"UTC\" === t) return \"UTC\";\n\tconst { tzName: n, offsetMinutes: r } = function(e) {\n\t\tconst { tzAnnotation: t, offset: n, z: r } = function(e) {\n\t\t\tif (Ot.test(e)) return {\n\t\t\t\ttzAnnotation: e,\n\t\t\t\toffset: void 0,\n\t\t\t\tz: !1\n\t\t\t};\n\t\t\ttry {\n\t\t\t\tconst { tzAnnotation: t, offset: n, z: r } = Mt(e);\n\t\t\t\tif (r || t || n) return {\n\t\t\t\t\ttzAnnotation: t,\n\t\t\t\t\toffset: n,\n\t\t\t\t\tz: r\n\t\t\t\t};\n\t\t\t} catch {}\n\t\t\tYt(e);\n\t\t}(e);\n\t\treturn t ? Rt(t) : r ? Rt(\"UTC\") : n ? Rt(n) : void 0;\n\t}(t);\n\tif (void 0 !== r) return mr(r);\n\tconst o = hr(n);\n\tif (!o) throw new RangeError(`Unrecognized time zone ${n}`);\n\treturn o.identifier;\n}\nfunction Zn(e, t) {\n\tif (e === t) return !0;\n\tconst n = Rt(e).offsetMinutes, r = Rt(t).offsetMinutes;\n\tif (void 0 === n && void 0 === r) {\n\t\tconst n = hr(t);\n\t\tif (!n) return !1;\n\t\tconst r = hr(e);\n\t\treturn !!r && r.primaryIdentifier === n.primaryIdentifier;\n\t}\n\treturn n === r;\n}\nfunction Fn(e, t) {\n\tconst n = Rt(e).offsetMinutes;\n\treturn void 0 !== n ? 6e10 * n : lr(e, t);\n}\nfunction Hn(e) {\n\tconst t = e < 0 ? \"-\" : \"+\", n = Math.abs(e), r = Math.floor(n / 36e11), o = Math.floor(n / 6e10) % 60, i = Math.floor(n / 1e9) % 60, a = n % 1e9;\n\treturn `${t}${Vn(r, o, i, a, 0 === i && 0 === a ? \"minute\" : \"auto\")}`;\n}\nfunction zn(e, t) {\n\tconst n = Fn(e, t);\n\tlet { isoDate: { year: r, month: o, day: i }, time: { hour: a, minute: s, second: c, millisecond: d, microsecond: h, nanosecond: u } } = gr(t);\n\treturn $r(r, o, i, a, s, c, d, h, u + n);\n}\nfunction An(e, t, n) {\n\treturn qn(Wn(e, t), e, t, n);\n}\nfunction qn(t, n, r, o) {\n\tconst i = t.length;\n\tif (1 === i) return t[0];\n\tif (i) switch (o) {\n\t\tcase \"compatible\":\n\t\tcase \"earlier\": return t[0];\n\t\tcase \"later\": return t[i - 1];\n\t\tcase \"reject\": throw new RangeError(\"multiple instants found\");\n\t}\n\tif (\"reject\" === o) throw new RangeError(\"multiple instants found\");\n\tconst a = pr(r), s = import_jsbi_umd.default.subtract(a, l);\n\tFr(s);\n\tconst c = Fn(n, s), d = import_jsbi_umd.default.add(a, l);\n\tFr(d);\n\tconst h = Fn(n, d) - c;\n\tswitch (o) {\n\t\tcase \"earlier\": {\n\t\t\tconst e = TimeDuration.fromComponents(0, 0, 0, 0, 0, -h), t = fo(r.time, e);\n\t\t\treturn Wn(n, xt(Or(r.isoDate.year, r.isoDate.month, r.isoDate.day + t.deltaDays), t))[0];\n\t\t}\n\t\tcase \"compatible\":\n\t\tcase \"later\": {\n\t\t\tconst e = TimeDuration.fromComponents(0, 0, 0, 0, 0, h), t = fo(r.time, e), o = Wn(n, xt(Or(r.isoDate.year, r.isoDate.month, r.isoDate.day + t.deltaDays), t));\n\t\t\treturn o[o.length - 1];\n\t\t}\n\t}\n}\nfunction Wn(t, n) {\n\tif (\"UTC\" === t) return Kr(n.isoDate), [pr(n)];\n\tconst r = Rt(t).offsetMinutes;\n\tif (void 0 !== r) {\n\t\tconst e = $r(n.isoDate.year, n.isoDate.month, n.isoDate.day, n.time.hour, n.time.minute - r, n.time.second, n.time.millisecond, n.time.microsecond, n.time.nanosecond);\n\t\tKr(e.isoDate);\n\t\tconst t = pr(e);\n\t\treturn Fr(t), [t];\n\t}\n\treturn Kr(n.isoDate), function(t, n) {\n\t\tlet r = pr(n), o = import_jsbi_umd.default.subtract(r, l);\n\t\timport_jsbi_umd.default.lessThan(o, xe) && (o = r);\n\t\tlet i = import_jsbi_umd.default.add(r, l);\n\t\timport_jsbi_umd.default.greaterThan(i, Ne) && (i = r);\n\t\tconst a = lr(t, o), s = lr(t, i);\n\t\treturn (a === s ? [a] : [a, s]).map(((o) => {\n\t\t\tconst i = import_jsbi_umd.default.subtract(r, import_jsbi_umd.default.BigInt(o));\n\t\t\tif (0 === jo(n, function(e, t) {\n\t\t\t\tconst { epochMilliseconds: n, time: { millisecond: r, microsecond: o, nanosecond: i } } = gr(t), { year: a, month: s, day: c, hour: d, minute: h, second: u } = br(e, n);\n\t\t\t\treturn $r(a, s, c, d, h, u, r, o, i);\n\t\t\t}(t, i))) return Fr(i), i;\n\t\t})).filter(((e) => void 0 !== e));\n\t}(t, n);\n}\nfunction _n(t, n) {\n\tconst r = xt(n, {\n\t\tdeltaDays: 0,\n\t\thour: 0,\n\t\tminute: 0,\n\t\tsecond: 0,\n\t\tmillisecond: 0,\n\t\tmicrosecond: 0,\n\t\tnanosecond: 0\n\t}), o = Wn(t, r);\n\tif (o.length) return o[0];\n\tconst i = pr(r), a = import_jsbi_umd.default.subtract(i, l);\n\treturn Fr(a), wr(t, a);\n}\nfunction Jn(e) {\n\tlet t;\n\treturn t = e < 0 || e > 9999 ? (e < 0 ? \"-\" : \"+\") + Ke(Math.abs(e), 6) : Ke(e, 4), t;\n}\nfunction Gn(e) {\n\treturn Ke(e, 2);\n}\nfunction Kn(e, t) {\n\tlet n;\n\tif (\"auto\" === t) {\n\t\tif (0 === e) return \"\";\n\t\tn = Ke(e, 9).replace(/0+$/, \"\");\n\t} else {\n\t\tif (0 === t) return \"\";\n\t\tn = Ke(e, 9).slice(0, t);\n\t}\n\treturn `.${n}`;\n}\nfunction Vn(e, t, n, r, o) {\n\tlet i = `${Gn(e)}:${Gn(t)}`;\n\treturn \"minute\" === o || (i += `:${Gn(n)}`, i += Kn(r, o)), i;\n}\nfunction Xn(e, t, n) {\n\tlet r = t;\n\tvoid 0 === r && (r = \"UTC\");\n\tconst o = re(e, b), i = nr(zn(r, o), \"iso8601\", n, \"never\");\n\tlet a = \"Z\";\n\treturn void 0 !== t && (a = fr(Fn(r, o))), `${i}${a}`;\n}\nfunction Qn(e, t) {\n\tconst n = re(e, Y), r = re(e, R), o = re(e, S), i = re(e, j), a = re(e, k), s = re(e, N), c = Mr(e);\n\tlet d = \"\";\n\t0 !== n && (d += `${Math.abs(n)}Y`), 0 !== r && (d += `${Math.abs(r)}M`), 0 !== o && (d += `${Math.abs(o)}W`), 0 !== i && (d += `${Math.abs(i)}D`);\n\tlet h = \"\";\n\t0 !== a && (h += `${Math.abs(a)}H`), 0 !== s && (h += `${Math.abs(s)}M`);\n\tconst u = TimeDuration.fromComponents(0, 0, re(e, x), re(e, L), re(e, P), re(e, U));\n\tu.isZero() && ![\n\t\t\"second\",\n\t\t\"millisecond\",\n\t\t\"microsecond\",\n\t\t\"nanosecond\"\n\t].includes(Jt(e)) && \"auto\" === t || (h += `${Math.abs(u.sec)}${Kn(Math.abs(u.subsec), t)}S`);\n\tlet l = `${c < 0 ? \"-\" : \"\"}P${d}`;\n\treturn h && (l = `${l}T${h}`), l;\n}\nfunction er(e, t = \"auto\") {\n\tconst { year: n, month: r, day: o } = re(e, D);\n\treturn `${Jn(n)}-${Gn(r)}-${Gn(o)}${Dt(re(e, E), t)}`;\n}\nfunction tr({ hour: e, minute: t, second: n, millisecond: r, microsecond: o, nanosecond: i }, a) {\n\treturn Vn(e, t, n, 1e6 * r + 1e3 * o + i, a);\n}\nfunction nr(e, t, n, r = \"auto\") {\n\tconst { isoDate: { year: o, month: i, day: a }, time: { hour: s, minute: c, second: d, millisecond: h, microsecond: u, nanosecond: l } } = e;\n\treturn `${Jn(o)}-${Gn(i)}-${Gn(a)}T${Vn(s, c, d, 1e6 * h + 1e3 * u + l, n)}${Dt(t, r)}`;\n}\nfunction rr(e, t = \"auto\") {\n\tconst { year: n, month: r, day: o } = re(e, D);\n\tlet i = `${Gn(r)}-${Gn(o)}`;\n\tconst a = re(e, E);\n\t\"always\" !== t && \"critical\" !== t && \"iso8601\" === a || (i = `${Jn(n)}-${i}`);\n\tconst s = Dt(a, t);\n\treturn s && (i += s), i;\n}\nfunction or(e, t = \"auto\") {\n\tconst { year: n, month: r, day: o } = re(e, D);\n\tlet i = `${Jn(n)}-${Gn(r)}`;\n\tconst a = re(e, E);\n\t\"always\" !== t && \"critical\" !== t && \"iso8601\" === a || (i += `-${Gn(o)}`);\n\tconst s = Dt(a, t);\n\treturn s && (i += s), i;\n}\nfunction ir(e, t, n = \"auto\", r = \"auto\", o = \"auto\", i = void 0) {\n\tlet a = re(e, b);\n\tif (i) {\n\t\tconst { unit: e, increment: t, roundingMode: n } = i;\n\t\ta = Io(a, t, e, n);\n\t}\n\tconst s = re(e, $), c = Fn(s, a);\n\tlet d = nr(zn(s, a), \"iso8601\", t, \"never\");\n\treturn \"never\" !== o && (d += fr(c)), \"never\" !== r && (d += `[${\"critical\" === r ? \"!\" : \"\"}${s}]`), d += Dt(re(e, E), n), d;\n}\nfunction ar(e) {\n\treturn $t.test(e);\n}\nfunction sr(e) {\n\tconst t = _o.exec(e);\n\tif (!t) throw new RangeError(`invalid time zone offset: ${e}; must match ±HH:MM[:SS.SSSSSSSSS]`);\n\treturn (\"-\" === t[1] ? -1 : 1) * (1e9 * (60 * (60 * +t[2] + +(t[3] || 0)) + +(t[4] || 0)) + +((t[5] || 0) + \"000000000\").slice(0, 9));\n}\nvar cr;\nvar dr = Object.assign(Object.create(null), {\n\t\"/\": !0,\n\t\"-\": !0,\n\t_: !0\n});\nfunction hr(e) {\n\tif (void 0 === cr) {\n\t\tconst e = Intl.supportedValuesOf?.(\"timeZone\");\n\t\tif (e) {\n\t\t\tcr = /* @__PURE__ */ new Map();\n\t\t\tfor (let t = 0; t < e.length; t++) {\n\t\t\t\tconst n = e[t];\n\t\t\t\tcr.set(Ao(n), n);\n\t\t\t}\n\t\t} else cr = null;\n\t}\n\tconst t = Ao(e);\n\tlet n = cr?.get(t);\n\tif (n) return {\n\t\tidentifier: n,\n\t\tprimaryIdentifier: n\n\t};\n\ttry {\n\t\tn = ht(e).resolvedOptions().timeZone;\n\t} catch {\n\t\treturn;\n\t}\n\tif (\"antarctica/south_pole\" === t && (n = \"Antarctica/McMurdo\"), ze.has(e)) throw new RangeError(`${e} is a legacy time zone identifier from ICU. Use ${n} instead`);\n\tconst r = [...t].map(((e, n) => 0 === n || dr[t[n - 1]] ? e.toUpperCase() : e)).join(\"\").split(\"/\");\n\tif (1 === r.length) return \"gb-eire\" === t ? {\n\t\tidentifier: \"GB-Eire\",\n\t\tprimaryIdentifier: n\n\t} : {\n\t\tidentifier: t.length <= 3 || /[-0-9]/.test(t) ? t.toUpperCase() : r[0],\n\t\tprimaryIdentifier: n\n\t};\n\tif (\"Etc\" === r[0]) return {\n\t\tidentifier: `Etc/${[\n\t\t\t\"Zulu\",\n\t\t\t\"Greenwich\",\n\t\t\t\"Universal\"\n\t\t].includes(r[1]) ? r[1] : r[1].toUpperCase()}`,\n\t\tprimaryIdentifier: n\n\t};\n\tif (\"Us\" === r[0]) return {\n\t\tidentifier: `US/${r[1]}`,\n\t\tprimaryIdentifier: n\n\t};\n\tconst o = new Map([\n\t\t[\"Act\", \"ACT\"],\n\t\t[\"Lhi\", \"LHI\"],\n\t\t[\"Nsw\", \"NSW\"],\n\t\t[\"Dar_Es_Salaam\", \"Dar_es_Salaam\"],\n\t\t[\"Port_Of_Spain\", \"Port_of_Spain\"],\n\t\t[\"Port-Au-Prince\", \"Port-au-Prince\"],\n\t\t[\"Isle_Of_Man\", \"Isle_of_Man\"],\n\t\t[\"Comodrivadavia\", \"ComodRivadavia\"],\n\t\t[\"Knox_In\", \"Knox_IN\"],\n\t\t[\"Dumontdurville\", \"DumontDUrville\"],\n\t\t[\"Mcmurdo\", \"McMurdo\"],\n\t\t[\"Denoronha\", \"DeNoronha\"],\n\t\t[\"Easterisland\", \"EasterIsland\"],\n\t\t[\"Bajanorte\", \"BajaNorte\"],\n\t\t[\"Bajasur\", \"BajaSur\"]\n\t]);\n\treturn r[1] = o.get(r[1]) ?? r[1], r.length > 2 && (r[2] = o.get(r[2]) ?? r[2]), {\n\t\tidentifier: r.join(\"/\"),\n\t\tprimaryIdentifier: n\n\t};\n}\nfunction ur(e, t) {\n\tconst { year: n, month: r, day: o, hour: i, minute: a, second: s } = br(e, t);\n\tlet c = t % 1e3;\n\treturn c < 0 && (c += 1e3), 1e6 * (yr({\n\t\tisoDate: {\n\t\t\tyear: n,\n\t\t\tmonth: r,\n\t\t\tday: o\n\t\t},\n\t\ttime: {\n\t\t\thour: i,\n\t\t\tminute: a,\n\t\t\tsecond: s,\n\t\t\tmillisecond: c\n\t\t}\n\t}) - t);\n}\nfunction lr(e, t) {\n\treturn ur(e, No(t, \"floor\"));\n}\nfunction mr(e) {\n\tconst t = e < 0 ? \"-\" : \"+\", n = Math.abs(e);\n\treturn `${t}${Vn(Math.floor(n / 60), n % 60, 0, 0, \"minute\")}`;\n}\nfunction fr(e) {\n\treturn mr(Eo(e, je, \"halfExpand\") / 6e10);\n}\nfunction yr({ isoDate: { year: e, month: t, day: n }, time: { hour: r, minute: o, second: i, millisecond: a } }) {\n\tconst s = e % 400, c = (e - s) / 400, d = /* @__PURE__ */ new Date();\n\treturn d.setUTCHours(r, o, i, a), d.setUTCFullYear(s, t - 1, n), d.getTime() + Ue * c;\n}\nfunction pr(t) {\n\tconst n = yr(t), r = 1e3 * t.time.microsecond + t.time.nanosecond;\n\treturn import_jsbi_umd.default.add(xo(n), import_jsbi_umd.default.BigInt(r));\n}\nfunction gr(t) {\n\tlet n = No(t, \"trunc\"), r = import_jsbi_umd.default.toNumber(import_jsbi_umd.default.remainder(t, c));\n\tr < 0 && (r += 1e6, n -= 1);\n\tconst o = Math.floor(r / 1e3) % 1e3, i = r % 1e3, a = new Date(n);\n\treturn {\n\t\tepochMilliseconds: n,\n\t\tisoDate: {\n\t\t\tyear: a.getUTCFullYear(),\n\t\t\tmonth: a.getUTCMonth() + 1,\n\t\t\tday: a.getUTCDate()\n\t\t},\n\t\ttime: {\n\t\t\thour: a.getUTCHours(),\n\t\t\tminute: a.getUTCMinutes(),\n\t\t\tsecond: a.getUTCSeconds(),\n\t\t\tmillisecond: a.getUTCMilliseconds(),\n\t\t\tmicrosecond: o,\n\t\t\tnanosecond: i\n\t\t}\n\t};\n}\nfunction wr(e, t) {\n\tif (\"UTC\" === e) return null;\n\tconst n = No(t, \"floor\");\n\tif (n < Fe) return wr(e, xo(Fe));\n\tconst o = Math.max(n, Date.now()) + 366 * Re * 3;\n\tlet i = n, a = ur(e, i), s = i, c = a;\n\tfor (; a === c && i < o;) {\n\t\tif (s = i + 2 * Re * 7, s > ke) return null;\n\t\tc = ur(e, s), a === c && (i = s);\n\t}\n\treturn a === c ? null : xo(Jo(((t) => ur(e, t)), i, s, a, c));\n}\nfunction vr(t, n) {\n\tif (\"UTC\" === t) return null;\n\tconst r = No(n, \"ceil\"), o = Date.now(), i = o + 366 * Re * 3;\n\tif (r > i) {\n\t\tconst n = vr(t, xo(i));\n\t\tif (null === n || import_jsbi_umd.default.lessThan(n, xo(o))) return n;\n\t}\n\tif (\"Africa/Casablanca\" === t || \"Africa/El_Aaiun\" === t) {\n\t\tconst e = Date.UTC(2088, 0, 1);\n\t\tif (e < r) return vr(t, xo(e));\n\t}\n\tlet a = r - 1;\n\tif (a < Fe) return null;\n\tlet s = ur(t, a), c = a, d = s;\n\tfor (; s === d && a > Fe;) {\n\t\tif (c = a - 2 * Re * 7, c < Fe) return null;\n\t\td = ur(t, c), s === d && (a = c);\n\t}\n\treturn s === d ? null : xo(Jo(((e) => ur(t, e)), c, a, d, s));\n}\nfunction br(e, t) {\n\treturn function(e) {\n\t\tconst t = e.split(/[^\\w]+/);\n\t\tif (7 !== t.length) throw new RangeError(`expected 7 parts in \"${e}`);\n\t\tconst n = +t[0], r = +t[1];\n\t\tlet o = +t[2];\n\t\tconst i = t[3];\n\t\tif (\"b\" === i[0] || \"B\" === i[0]) o = 1 - o;\n\t\telse if (\"a\" !== i[0] && \"A\" !== i[0]) throw new RangeError(`Unknown era ${i} in \"${e}`);\n\t\tconst a = \"24\" === t[4] ? 0 : +t[4], s = +t[5], c = +t[6];\n\t\tif (!(Number.isFinite(o) && Number.isFinite(n) && Number.isFinite(r) && Number.isFinite(a) && Number.isFinite(s) && Number.isFinite(c))) throw new RangeError(`Invalid number in \"${e}`);\n\t\treturn {\n\t\t\tyear: o,\n\t\t\tmonth: n,\n\t\t\tday: r,\n\t\t\thour: a,\n\t\t\tminute: s,\n\t\t\tsecond: c\n\t\t};\n\t}(ht(e).format(t));\n}\nfunction Dr(e) {\n\treturn void 0 !== e && !(e % 4 != 0 || e % 100 == 0 && e % 400 != 0);\n}\nfunction Tr(e, t) {\n\treturn {\n\t\tstandard: [\n\t\t\t31,\n\t\t\t28,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31\n\t\t],\n\t\tleapyear: [\n\t\t\t31,\n\t\t\t29,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31\n\t\t]\n\t}[Dr(e) ? \"leapyear\" : \"standard\"][t - 1];\n}\nfunction Mr(e) {\n\tconst t = [\n\t\tre(e, Y),\n\t\tre(e, R),\n\t\tre(e, S),\n\t\tre(e, j),\n\t\tre(e, k),\n\t\tre(e, N),\n\t\tre(e, x),\n\t\tre(e, L),\n\t\tre(e, P),\n\t\tre(e, U)\n\t];\n\tfor (let e = 0; e < t.length; e++) {\n\t\tconst n = t[e];\n\t\tif (0 !== n) return n < 0 ? -1 : 1;\n\t}\n\treturn 0;\n}\nfunction Er(e) {\n\tconst t = [\n\t\t\"years\",\n\t\t\"months\",\n\t\t\"weeks\",\n\t\t\"days\"\n\t];\n\tfor (let n = 0; n < t.length; n++) {\n\t\tconst r = e[t[n]];\n\t\tif (0 !== r) return r < 0 ? -1 : 1;\n\t}\n\treturn 0;\n}\nfunction Ir(e) {\n\tconst t = Er(e.date);\n\treturn 0 !== t ? t : e.time.sign();\n}\nfunction Cr(e, t) {\n\tlet n = e, r = t;\n\tif (!Number.isFinite(n) || !Number.isFinite(r)) throw new RangeError(\"infinity is out of range\");\n\treturn r -= 1, n += Math.floor(r / 12), r %= 12, r < 0 && (r += 12), r += 1, {\n\t\tyear: n,\n\t\tmonth: r\n\t};\n}\nfunction Or(e, t, n) {\n\tlet r = e, o = t, i = n;\n\tif (!Number.isFinite(i)) throw new RangeError(\"infinity is out of range\");\n\t({year: r, month: o} = Cr(r, o));\n\tconst a = 146097;\n\tif (Math.abs(i) > a) {\n\t\tconst e = Math.trunc(i / a);\n\t\tr += 400 * e, i -= e * a;\n\t}\n\tlet s = 0, c = o > 2 ? r : r - 1;\n\tfor (; s = Dr(c) ? 366 : 365, i < -s;) r -= 1, c -= 1, i += s;\n\tfor (c += 1; s = Dr(c) ? 366 : 365, i > s;) r += 1, c += 1, i -= s;\n\tfor (; i < 1;) ({year: r, month: o} = Cr(r, o - 1)), i += Tr(r, o);\n\tfor (; i > Tr(r, o);) i -= Tr(r, o), {year: r, month: o} = Cr(r, o + 1);\n\treturn {\n\t\tyear: r,\n\t\tmonth: o,\n\t\tday: i\n\t};\n}\nfunction $r(e, t, n, r, o, i, a, s, c) {\n\tconst d = Yr(r, o, i, a, s, c);\n\treturn xt(Or(e, t, n + d.deltaDays), d);\n}\nfunction Yr(e, t, n, r, o, i) {\n\tlet a, s = e, c = t, d = n, h = r, u = o, l = i;\n\t({div: a, mod: l} = de(l, 3)), u += a, l < 0 && (u -= 1, l += 1e3), {div: a, mod: u} = de(u, 3), h += a, u < 0 && (h -= 1, u += 1e3), d += Math.trunc(h / 1e3), h %= 1e3, h < 0 && (d -= 1, h += 1e3), c += Math.trunc(d / 60), d %= 60, d < 0 && (c -= 1, d += 60), s += Math.trunc(c / 60), c %= 60, c < 0 && (s -= 1, c += 60);\n\tlet m = Math.trunc(s / 24);\n\treturn s %= 24, s < 0 && (m -= 1, s += 24), m += 0, s += 0, c += 0, d += 0, h += 0, u += 0, l += 0, {\n\t\tdeltaDays: m,\n\t\thour: s,\n\t\tminute: c,\n\t\tsecond: d,\n\t\tmillisecond: h,\n\t\tmicrosecond: u,\n\t\tnanosecond: l\n\t};\n}\nfunction Rr(e, t) {\n\tconst n = Nt(e, 0);\n\tif (0 === Er(n)) return e.days;\n\tconst r = re(t, D), o = Sn(re(t, E), r, n, \"constrain\"), i = Gr(r.year, r.month - 1, r.day), a = Gr(o.year, o.month - 1, o.day) - i;\n\treturn e.days + a;\n}\nfunction Sr(e) {\n\treturn new (ce(\"%Temporal.Duration%\"))(-re(e, Y), -re(e, R), -re(e, S), -re(e, j), -re(e, k), -re(e, N), -re(e, x), -re(e, L), -re(e, P), -re(e, U));\n}\nfunction jr(e, t, n) {\n\treturn Math.min(n, Math.max(t, e));\n}\nfunction kr(e, t, n) {\n\tconst r = jr(t, 1, 12);\n\treturn {\n\t\tyear: e,\n\t\tmonth: r,\n\t\tday: jr(n, 1, Tr(e, r))\n\t};\n}\nfunction Nr(e, t, n) {\n\tif (e < t || e > n) throw new RangeError(`value out of range: ${t} <= ${e} <= ${n}`);\n}\nfunction xr(e, t, n) {\n\tNr(t, 1, 12), Nr(n, 1, Tr(e, t));\n}\nfunction Lr(e) {\n\tBr(xt(e, {\n\t\tdeltaDays: 0,\n\t\thour: 12,\n\t\tminute: 0,\n\t\tsecond: 0,\n\t\tmillisecond: 0,\n\t\tmicrosecond: 0,\n\t\tnanosecond: 0\n\t}));\n}\nfunction Pr(e, t, n, r, o, i) {\n\tNr(e, 0, 23), Nr(t, 0, 59), Nr(n, 0, 59), Nr(r, 0, 999), Nr(o, 0, 999), Nr(i, 0, 999);\n}\nfunction Ur(e, t, n, r, o, i, a, s, c) {\n\txr(e, t, n), Pr(r, o, i, a, s, c);\n}\nfunction Br(t) {\n\tconst n = pr(t);\n\t(import_jsbi_umd.default.lessThan(n, Le) || import_jsbi_umd.default.greaterThan(n, Pe)) && Fr(n);\n}\nfunction Zr(e) {\n\tpr(e);\n}\nfunction Fr(t) {\n\tif (import_jsbi_umd.default.lessThan(t, xe) || import_jsbi_umd.default.greaterThan(t, Ne)) throw new RangeError(\"date/time value is outside of supported range\");\n}\nfunction Hr({ year: e, month: t }) {\n\tNr(e, Be, Ze), e === Be ? Nr(t, 4, 12) : e === Ze && Nr(t, 1, 9);\n}\nfunction zr(e, t, n, r, o, i, a, s, c, d) {\n\tlet h = 0;\n\tconst u = [\n\t\te,\n\t\tt,\n\t\tn,\n\t\tr,\n\t\to,\n\t\ti,\n\t\ta,\n\t\ts,\n\t\tc,\n\t\td\n\t];\n\tfor (let e = 0; e < u.length; e++) {\n\t\tconst t = u[e];\n\t\tif (t === Infinity || t === -Infinity) throw new RangeError(\"infinite values not allowed as duration fields\");\n\t\tif (0 !== t) {\n\t\t\tconst e = t < 0 ? -1 : 1;\n\t\t\tif (0 !== h && e !== h) throw new RangeError(\"mixed-sign values not allowed as duration fields\");\n\t\t\th = e;\n\t\t}\n\t}\n\tif (Math.abs(e) >= 2 ** 32 || Math.abs(t) >= 2 ** 32 || Math.abs(n) >= 2 ** 32) throw new RangeError(\"years, months, and weeks must be < 2³²\");\n\tconst l = de(s, 3), m = de(c, 6), f = de(d, 9), y = de(1e6 * l.mod + 1e3 * m.mod + f.mod, 9).div, p = 86400 * r + 3600 * o + 60 * i + a + l.div + m.div + f.div + y;\n\tif (!Number.isSafeInteger(p)) throw new RangeError(\"total of duration time units cannot exceed 9007199254740991.999999999 s\");\n}\nfunction Ar(e) {\n\treturn {\n\t\tdate: {\n\t\t\tyears: re(e, Y),\n\t\t\tmonths: re(e, R),\n\t\t\tweeks: re(e, S),\n\t\t\tdays: re(e, j)\n\t\t},\n\t\ttime: TimeDuration.fromComponents(re(e, k), re(e, N), re(e, x), re(e, L), re(e, P), re(e, U))\n\t};\n}\nfunction qr(e) {\n\tconst t = TimeDuration.fromComponents(re(e, k), re(e, N), re(e, x), re(e, L), re(e, P), re(e, U)).add24HourDays(re(e, j));\n\treturn {\n\t\tdate: {\n\t\t\tyears: re(e, Y),\n\t\t\tmonths: re(e, R),\n\t\t\tweeks: re(e, S),\n\t\t\tdays: 0\n\t\t},\n\t\ttime: t\n\t};\n}\nfunction Wr(e) {\n\tconst t = qr(e), n = Math.trunc(t.time.sec / 86400);\n\treturn zr(t.date.years, t.date.months, t.date.weeks, n, 0, 0, 0, 0, 0, 0), {\n\t\t...t.date,\n\t\tdays: n\n\t};\n}\nfunction _r(e, t) {\n\tconst n = e.time.sign();\n\tlet r = e.time.abs().subsec, o = 0, i = 0, a = e.time.abs().sec, s = 0, c = 0, d = 0;\n\tswitch (t) {\n\t\tcase \"year\":\n\t\tcase \"month\":\n\t\tcase \"week\":\n\t\tcase \"day\":\n\t\t\to = Math.trunc(r / 1e3), r %= 1e3, i = Math.trunc(o / 1e3), o %= 1e3, a += Math.trunc(i / 1e3), i %= 1e3, s = Math.trunc(a / 60), a %= 60, c = Math.trunc(s / 60), s %= 60, d = Math.trunc(c / 24), c %= 24;\n\t\t\tbreak;\n\t\tcase \"hour\":\n\t\t\to = Math.trunc(r / 1e3), r %= 1e3, i = Math.trunc(o / 1e3), o %= 1e3, a += Math.trunc(i / 1e3), i %= 1e3, s = Math.trunc(a / 60), a %= 60, c = Math.trunc(s / 60), s %= 60;\n\t\t\tbreak;\n\t\tcase \"minute\":\n\t\t\to = Math.trunc(r / 1e3), r %= 1e3, i = Math.trunc(o / 1e3), o %= 1e3, a += Math.trunc(i / 1e3), i %= 1e3, s = Math.trunc(a / 60), a %= 60;\n\t\t\tbreak;\n\t\tcase \"second\":\n\t\t\to = Math.trunc(r / 1e3), r %= 1e3, i = Math.trunc(o / 1e3), o %= 1e3, a += Math.trunc(i / 1e3), i %= 1e3;\n\t\t\tbreak;\n\t\tcase \"millisecond\":\n\t\t\to = Math.trunc(r / 1e3), r %= 1e3, i = he(a, 3, Math.trunc(o / 1e3)), o %= 1e3, a = 0;\n\t\t\tbreak;\n\t\tcase \"microsecond\":\n\t\t\to = he(a, 6, Math.trunc(r / 1e3)), r %= 1e3, a = 0;\n\t\t\tbreak;\n\t\tcase \"nanosecond\": r = he(a, 9, r), a = 0;\n\t}\n\treturn new (ce(\"%Temporal.Duration%\"))(e.date.years, e.date.months, e.date.weeks, e.date.days + n * d, n * c, n * s, n * a, n * i, n * o, n * r);\n}\nfunction Jr(e, t) {\n\treturn Er(e), t.sign(), {\n\t\tdate: e,\n\t\ttime: t\n\t};\n}\nfunction Gr(e, t, n) {\n\treturn yr({\n\t\tisoDate: {\n\t\t\tyear: e,\n\t\t\tmonth: t + 1,\n\t\t\tday: n\n\t\t},\n\t\ttime: {\n\t\t\thour: 0,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0\n\t\t}\n\t}) / Re;\n}\nfunction Kr({ year: e, month: t, day: n }) {\n\tif (Math.abs(Gr(e, t - 1, n)) > 1e8) throw new RangeError(\"date/time value is outside the supported range\");\n}\nfunction Vr(e, t) {\n\tconst n = t.hour - e.hour, r = t.minute - e.minute, o = t.second - e.second, i = t.millisecond - e.millisecond, a = t.microsecond - e.microsecond, s = t.nanosecond - e.nanosecond;\n\treturn TimeDuration.fromComponents(n, r, o, i, a, s);\n}\nfunction Xr(e, t, n, r, o) {\n\tlet i = TimeDuration.fromEpochNsDiff(t, e);\n\treturn i = $o(i, n, r, o), Jr({\n\t\tyears: 0,\n\t\tmonths: 0,\n\t\tweeks: 0,\n\t\tdays: 0\n\t}, i);\n}\nfunction Qr(e, t, n, r) {\n\tZr(e), Zr(t);\n\tlet o = Vr(e.time, t.time);\n\tconst i = o.sign(), a = Ro(e.isoDate, t.isoDate);\n\tlet s = t.isoDate;\n\ta === i && (s = Or(s.year, s.month, s.day + i), o = o.add24HourDays(-i));\n\tconst c = Gt(\"day\", r), d = jn(n, e.isoDate, s, c);\n\treturn r !== c && (o = o.add24HourDays(d.days), d.days = 0), Jr(d, o);\n}\nfunction eo(n, r, o, i, a) {\n\tconst s = import_jsbi_umd.default.subtract(r, n);\n\tif (import_jsbi_umd.default.equal(s, t)) return {\n\t\tdate: {\n\t\t\tyears: 0,\n\t\t\tmonths: 0,\n\t\t\tweeks: 0,\n\t\t\tdays: 0\n\t\t},\n\t\ttime: TimeDuration.ZERO\n\t};\n\tconst c = import_jsbi_umd.default.lessThan(s, t) ? -1 : 1, d = zn(o, n), h = zn(o, r);\n\tlet u, l = 0, m = 1 === c ? 2 : 1, f = Vr(d.time, h.time);\n\tfor (f.sign() === -c && l++; l <= m; l++) {\n\t\tu = xt(Or(h.isoDate.year, h.isoDate.month, h.isoDate.day - l * c), d.time);\n\t\tconst e = An(o, u, \"compatible\");\n\t\tif (f = TimeDuration.fromEpochNsDiff(r, e), f.sign() !== -c) break;\n\t}\n\tconst y = Gt(\"day\", a);\n\treturn Jr(jn(i, d.isoDate, u.isoDate, y), f);\n}\nfunction to(t, n, r, o, i, a, s, c, d) {\n\tlet h, u, l, m, f = n;\n\tswitch (c) {\n\t\tcase \"year\": {\n\t\t\tconst e = Eo(f.date.years, s, \"trunc\");\n\t\t\th = e, u = e + s * t, l = {\n\t\t\t\tyears: h,\n\t\t\t\tmonths: 0,\n\t\t\t\tweeks: 0,\n\t\t\t\tdays: 0\n\t\t\t}, m = {\n\t\t\t\t...l,\n\t\t\t\tyears: u\n\t\t\t};\n\t\t\tbreak;\n\t\t}\n\t\tcase \"month\": {\n\t\t\tconst e = Eo(f.date.months, s, \"trunc\");\n\t\t\th = e, u = e + s * t, l = Nt(f.date, 0, 0, h), m = Nt(f.date, 0, 0, u);\n\t\t\tbreak;\n\t\t}\n\t\tcase \"week\": {\n\t\t\tconst e = Nt(f.date, 0, 0), n = Sn(a, o.isoDate, e, \"constrain\"), r = jn(a, n, Or(n.year, n.month, n.day + f.date.days), \"week\"), i = Eo(f.date.weeks + r.weeks, s, \"trunc\");\n\t\t\th = i, u = i + s * t, l = Nt(f.date, 0, h), m = Nt(f.date, 0, u);\n\t\t\tbreak;\n\t\t}\n\t\tcase \"day\": {\n\t\t\tconst e = Eo(f.date.days, s, \"trunc\");\n\t\t\th = e, u = e + s * t, l = Nt(f.date, h), m = Nt(f.date, u);\n\t\t\tbreak;\n\t\t}\n\t}\n\tconst y = Sn(a, o.isoDate, l, \"constrain\"), p = Sn(a, o.isoDate, m, \"constrain\");\n\tlet g, w;\n\tconst v = xt(y, o.time), b = xt(p, o.time);\n\ti ? (g = An(i, v, \"compatible\"), w = An(i, b, \"compatible\")) : (g = pr(v), w = pr(b));\n\tconst D = TimeDuration.fromEpochNsDiff(r, g), T = TimeDuration.fromEpochNsDiff(w, g), M = ue(d, t < 0 ? \"negative\" : \"positive\"), E = D.add(D).abs().subtract(T.abs()).sign(), I = Math.abs(h) / s % 2 == 0, C = D.isZero() ? Math.abs(h) : D.cmp(T) ? le(Math.abs(h), Math.abs(u), E, I, M) : Math.abs(u), O = new TimeDuration(import_jsbi_umd.default.add(import_jsbi_umd.default.multiply(T.totalNs, import_jsbi_umd.default.BigInt(h)), import_jsbi_umd.default.multiply(D.totalNs, import_jsbi_umd.default.BigInt(s * t)))).fdiv(T.totalNs), $ = C === Math.abs(u);\n\treturn f = {\n\t\tdate: $ ? m : l,\n\t\ttime: TimeDuration.ZERO\n\t}, {\n\t\tnudgeResult: {\n\t\t\tduration: f,\n\t\t\tnudgedEpochNs: $ ? w : g,\n\t\t\tdidExpandCalendarUnit: $\n\t\t},\n\t\ttotal: O\n\t};\n}\nfunction no(t, n, r, o, i, a, s, c, d) {\n\tlet h = t;\n\tconst u = Kt(c) || o && \"day\" === c, l = Ir(h) < 0 ? -1 : 1;\n\tlet m;\n\treturn u ? {nudgeResult: m} = to(l, h, n, r, o, i, s, c, d) : m = o ? function(t, n, r, o, i, a, s, c) {\n\t\tlet d = n;\n\t\tconst h = Sn(i, r.isoDate, d.date, \"constrain\"), u = xt(h, r.time), l = xt(Or(h.year, h.month, h.day + t), r.time), m = An(o, u, \"compatible\"), f = An(o, l, \"compatible\"), y = TimeDuration.fromEpochNsDiff(f, m);\n\t\tif (y.sign() !== t) throw new RangeError(\"time zone returned inconsistent Instants\");\n\t\tconst p = import_jsbi_umd.default.BigInt(at[s] * a);\n\t\tlet g = d.time.round(p, c);\n\t\tconst w = g.subtract(y), v = w.sign() !== -t;\n\t\tlet b, D;\n\t\treturn v ? (b = t, g = w.round(p, c), D = g.addToEpochNs(f)) : (b = 0, D = g.addToEpochNs(m)), {\n\t\t\tduration: Jr(Nt(d.date, d.date.days + b), g),\n\t\t\tnudgedEpochNs: D,\n\t\t\tdidExpandCalendarUnit: v\n\t\t};\n\t}(l, h, r, o, i, s, c, d) : function(t, n, r, o, i, a) {\n\t\tlet s = t;\n\t\tconst c = s.time.add24HourDays(s.date.days), d = c.round(import_jsbi_umd.default.BigInt(o * at[i]), a), h = d.subtract(c), { quotient: u } = c.divmod(Se), { quotient: l } = d.divmod(Se), m = Math.sign(l - u) === c.sign(), f = h.addToEpochNs(n);\n\t\tlet y = 0, p = d;\n\t\treturn \"date\" === Vt(r) && (y = l, p = d.add(TimeDuration.fromComponents(24 * -l, 0, 0, 0, 0, 0))), {\n\t\t\tduration: {\n\t\t\t\tdate: Nt(s.date, y),\n\t\t\t\ttime: p\n\t\t\t},\n\t\t\tnudgedEpochNs: f,\n\t\t\tdidExpandCalendarUnit: m\n\t\t};\n\t}(h, n, a, s, c, d), h = m.duration, m.didExpandCalendarUnit && \"week\" !== c && (h = function(e, t, n, r, o, i, a, s) {\n\t\tlet c = t;\n\t\tif (s === a) return c;\n\t\tconst d = it.indexOf(a);\n\t\tfor (let t = it.indexOf(s) - 1; t >= d; t--) {\n\t\t\tconst s = it[t];\n\t\t\tif (\"week\" === s && \"week\" !== a) continue;\n\t\t\tlet d;\n\t\t\tswitch (s) {\n\t\t\t\tcase \"year\":\n\t\t\t\t\td = {\n\t\t\t\t\t\tyears: c.date.years + e,\n\t\t\t\t\t\tmonths: 0,\n\t\t\t\t\t\tweeks: 0,\n\t\t\t\t\t\tdays: 0\n\t\t\t\t\t};\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"month\": {\n\t\t\t\t\tconst t = c.date.months + e;\n\t\t\t\t\td = Nt(c.date, 0, 0, t);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"week\": {\n\t\t\t\t\tconst t = c.date.weeks + e;\n\t\t\t\t\td = Nt(c.date, 0, t);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst h = xt(Sn(i, r.isoDate, d, \"constrain\"), r.time);\n\t\t\tlet u;\n\t\t\tif (u = o ? An(o, h, \"compatible\") : pr(h), p(n, u) === -e) break;\n\t\t\tc = {\n\t\t\t\tdate: d,\n\t\t\t\ttime: TimeDuration.ZERO\n\t\t\t};\n\t\t}\n\t\treturn c;\n\t}(l, h, m.nudgedEpochNs, r, o, i, a, Gt(c, \"day\"))), h;\n}\nfunction ro(e, t, n, r, o, i) {\n\treturn Kt(i) || r && \"day\" === i ? to(Ir(e) < 0 ? -1 : 1, e, t, n, r, o, 1, i, \"trunc\").total : Yo(e.time.add24HourDays(e.date.days), i);\n}\nfunction oo(e, t, n, r, o, i, a) {\n\tif (0 == jo(e, t)) return {\n\t\tdate: {\n\t\t\tyears: 0,\n\t\t\tmonths: 0,\n\t\t\tweeks: 0,\n\t\t\tdays: 0\n\t\t},\n\t\ttime: TimeDuration.ZERO\n\t};\n\tBr(e), Br(t);\n\tconst s = Qr(e, t, n, r);\n\treturn \"nanosecond\" === i && 1 === o ? s : no(s, pr(t), e, null, n, r, o, i, a);\n}\nfunction io(e, t, n, r, o, i, a, s) {\n\tif (\"time\" === Vt(o)) return Xr(e, t, i, a, s);\n\tconst c = eo(e, t, n, r, o);\n\treturn \"nanosecond\" === a && 1 === i ? c : no(c, t, zn(n, e), n, r, o, i, a, s);\n}\nfunction ao(e, t, n, r, o, i) {\n\tconst a = nt.reduce(((e, t) => {\n\t\tconst o = t[0], i = t[1], a = t[2];\n\t\treturn \"datetime\" !== n && a !== n || r.includes(i) || e.push(i, o), e;\n\t}), []);\n\tlet s = Wt(t, \"largestUnit\", n, \"auto\");\n\tif (r.includes(s)) throw new RangeError(`largestUnit must be one of ${a.join(\", \")}, not ${s}`);\n\tconst c = Ft(t);\n\tlet d = Ut(t, \"trunc\");\n\t\"since\" === e && (d = function(e) {\n\t\tswitch (e) {\n\t\t\tcase \"ceil\": return \"floor\";\n\t\t\tcase \"floor\": return \"ceil\";\n\t\t\tcase \"halfCeil\": return \"halfFloor\";\n\t\t\tcase \"halfFloor\": return \"halfCeil\";\n\t\t\tdefault: return e;\n\t\t}\n\t}(d));\n\tconst h = Wt(t, \"smallestUnit\", n, o);\n\tif (r.includes(h)) throw new RangeError(`smallestUnit must be one of ${a.join(\", \")}, not ${h}`);\n\tconst u = Gt(i, h);\n\tif (\"auto\" === s && (s = u), Gt(s, h) !== s) throw new RangeError(`largestUnit ${s} cannot be smaller than smallestUnit ${h}`);\n\tconst l = {\n\t\thour: 24,\n\t\tminute: 60,\n\t\tsecond: 60,\n\t\tmillisecond: 1e3,\n\t\tmicrosecond: 1e3,\n\t\tnanosecond: 1e3\n\t}[h];\n\treturn void 0 !== l && Ht(c, l, !1), {\n\t\tlargestUnit: s,\n\t\troundingIncrement: c,\n\t\troundingMode: d,\n\t\tsmallestUnit: h\n\t};\n}\nfunction so(e, t, n, r) {\n\tconst o = cn(n), i = ao(e, Zo(r), \"time\", [], \"nanosecond\", \"second\");\n\tlet a = _r(Xr(re(t, b), re(o, b), i.roundingIncrement, i.smallestUnit, i.roundingMode), i.largestUnit);\n\treturn \"since\" === e && (a = Sr(a)), a;\n}\nfunction co(e, t, n, r) {\n\tconst o = rn(n), i = re(t, E), a = re(o, E);\n\tif (!xn(i, a)) throw new RangeError(`cannot compute difference between dates of ${i} and ${a} calendars`);\n\tconst s = ao(e, Zo(r), \"date\", [], \"day\", \"day\"), c = ce(\"%Temporal.Duration%\"), d = re(t, D), h = re(o, D);\n\tif (0 === Ro(d, h)) return new c();\n\tlet u = {\n\t\tdate: jn(i, d, h, s.largestUnit),\n\t\ttime: TimeDuration.ZERO\n\t};\n\tif (\"day\" !== s.smallestUnit || 1 !== s.roundingIncrement) {\n\t\tconst e = xt(d, {\n\t\t\tdeltaDays: 0,\n\t\t\thour: 0,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t});\n\t\tu = no(u, pr(xt(h, {\n\t\t\tdeltaDays: 0,\n\t\t\thour: 0,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t})), e, null, i, s.largestUnit, s.roundingIncrement, s.smallestUnit, s.roundingMode);\n\t}\n\tlet l = _r(u, \"day\");\n\treturn \"since\" === e && (l = Sr(l)), l;\n}\nfunction ho(e, t, n, r) {\n\tconst o = an(n), i = re(t, E), a = re(o, E);\n\tif (!xn(i, a)) throw new RangeError(`cannot compute difference between dates of ${i} and ${a} calendars`);\n\tconst s = ao(e, Zo(r), \"datetime\", [], \"nanosecond\", \"day\"), c = ce(\"%Temporal.Duration%\"), d = re(t, T), h = re(o, T);\n\tif (0 === jo(d, h)) return new c();\n\tlet u = _r(oo(d, h, i, s.largestUnit, s.roundingIncrement, s.smallestUnit, s.roundingMode), s.largestUnit);\n\treturn \"since\" === e && (u = Sr(u)), u;\n}\nfunction uo(e, t, n, r) {\n\tconst o = hn(n), i = ao(e, Zo(r), \"time\", [], \"nanosecond\", \"hour\");\n\tlet a = Vr(re(t, M), re(o, M));\n\ta = $o(a, i.roundingIncrement, i.smallestUnit, i.roundingMode);\n\tlet s = _r(Jr({\n\t\tyears: 0,\n\t\tmonths: 0,\n\t\tweeks: 0,\n\t\tdays: 0\n\t}, a), i.largestUnit);\n\treturn \"since\" === e && (s = Sr(s)), s;\n}\nfunction lo(e, t, n, r) {\n\tconst o = ln(n), i = re(t, E), a = re(o, E);\n\tif (!xn(i, a)) throw new RangeError(`cannot compute difference between months of ${i} and ${a} calendars`);\n\tconst s = ao(e, Zo(r), \"date\", [\"week\", \"day\"], \"month\", \"year\"), c = ce(\"%Temporal.Duration%\");\n\tif (0 == Ro(re(t, D), re(o, D))) return new c();\n\tconst d = en(i, re(t, D), \"year-month\");\n\td.day = 1;\n\tconst h = Ln(i, d, \"constrain\"), u = en(i, re(o, D), \"year-month\");\n\tu.day = 1;\n\tconst l = Ln(i, u, \"constrain\");\n\tlet m = {\n\t\tdate: Nt(jn(i, h, l, s.largestUnit), 0, 0),\n\t\ttime: TimeDuration.ZERO\n\t};\n\tif (\"month\" !== s.smallestUnit || 1 !== s.roundingIncrement) {\n\t\tconst e = xt(h, {\n\t\t\tdeltaDays: 0,\n\t\t\thour: 0,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t});\n\t\tm = no(m, pr(xt(l, {\n\t\t\tdeltaDays: 0,\n\t\t\thour: 0,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t})), e, null, i, s.largestUnit, s.roundingIncrement, s.smallestUnit, s.roundingMode);\n\t}\n\tlet f = _r(m, \"day\");\n\treturn \"since\" === e && (f = Sr(f)), f;\n}\nfunction mo(t, n, r, o) {\n\tconst i = fn(r), a = re(n, E), s = re(i, E);\n\tif (!xn(a, s)) throw new RangeError(`cannot compute difference between dates of ${a} and ${s} calendars`);\n\tconst c = ao(t, Zo(o), \"datetime\", [], \"nanosecond\", \"hour\"), d = re(n, b), h = re(i, b), u = ce(\"%Temporal.Duration%\");\n\tlet l;\n\tif (\"date\" !== Vt(c.largestUnit)) l = _r(Xr(d, h, c.roundingIncrement, c.smallestUnit, c.roundingMode), c.largestUnit);\n\telse {\n\t\tconst t = re(n, $);\n\t\tif (!Zn(t, re(i, $))) throw new RangeError(\"When calculating difference between time zones, largestUnit must be 'hours' or smaller because day lengths can vary between time zones due to DST or time zone offset changes.\");\n\t\tif (import_jsbi_umd.default.equal(d, h)) return new u();\n\t\tl = _r(io(d, h, t, a, c.largestUnit, c.roundingIncrement, c.smallestUnit, c.roundingMode), \"hour\");\n\t}\n\treturn \"since\" === t && (l = Sr(l)), l;\n}\nfunction fo({ hour: e, minute: t, second: n, millisecond: r, microsecond: o, nanosecond: i }, a) {\n\tlet s = n, c = i;\n\treturn s += a.sec, c += a.subsec, Yr(e, t, s, r, o, c);\n}\nfunction yo(e, t) {\n\tconst n = t.addToEpochNs(e);\n\treturn Fr(n), n;\n}\nfunction po(e, t, n, r, o = \"constrain\") {\n\tif (0 === Er(r.date)) return yo(e, r.time);\n\tconst i = zn(t, e);\n\treturn yo(An(t, xt(Sn(n, i.isoDate, r.date, o), i.time), \"compatible\"), r.time);\n}\nfunction go(e, t, n) {\n\tlet r = sn(n);\n\t\"subtract\" === e && (r = Sr(r));\n\tconst o = Gt(Jt(t), Jt(r));\n\tif (Kt(o)) throw new RangeError(\"For years, months, or weeks arithmetic, use date arithmetic relative to a starting point\");\n\tconst i = qr(t), a = qr(r);\n\treturn _r(Jr({\n\t\tyears: 0,\n\t\tmonths: 0,\n\t\tweeks: 0,\n\t\tdays: 0\n\t}, i.time.add(a.time)), o);\n}\nfunction wo(e, t, n) {\n\tlet r = sn(n);\n\t\"subtract\" === e && (r = Sr(r));\n\tconst o = Jt(r);\n\tif (\"date\" === Vt(o)) throw new RangeError(`Duration field ${o} not supported by Temporal.Instant. Try Temporal.ZonedDateTime instead.`);\n\tconst i = qr(r);\n\treturn Cn(yo(re(t, b), i.time));\n}\nfunction vo(e, t, n, r) {\n\tconst o = re(t, E);\n\tlet i = sn(n);\n\t\"subtract\" === e && (i = Sr(i));\n\tconst a = Wr(i), s = Lt(Zo(r));\n\treturn pn(Sn(o, re(t, D), a, s), o);\n}\nfunction bo(e, t, n, r) {\n\tlet o = sn(n);\n\t\"subtract\" === e && (o = Sr(o));\n\tconst i = Lt(Zo(r)), a = re(t, E), s = qr(o), c = re(t, T), d = fo(c.time, s.time), h = Nt(s.date, d.deltaDays);\n\treturn zr(h.years, h.months, h.weeks, h.days, 0, 0, 0, 0, 0, 0), wn(xt(Sn(a, c.isoDate, h, i), d), a);\n}\nfunction Do(e, t, n) {\n\tlet r = sn(n);\n\t\"subtract\" === e && (r = Sr(r));\n\tconst o = qr(r), { hour: i, minute: a, second: s, millisecond: c, microsecond: d, nanosecond: h } = fo(re(t, M), o.time);\n\treturn Tn(jt(i, a, s, c, d, h, \"reject\"));\n}\nfunction To(e, t, n, r) {\n\tlet o = sn(n);\n\t\"subtract\" === e && (o = Sr(o));\n\tconst i = Lt(Zo(r)), a = Mr(o), s = re(t, E), c = en(s, re(t, D), \"year-month\");\n\tc.day = 1;\n\tlet d = Ln(s, c, \"constrain\");\n\tif (a < 0) {\n\t\tconst e = Sn(s, d, { months: 1 }, \"constrain\");\n\t\td = Or(e.year, e.month, e.day - 1);\n\t}\n\tconst h = Wr(o);\n\treturn Lr(d), En(Pn(s, en(s, Sn(s, d, h, i), \"year-month\"), i), s);\n}\nfunction Mo(e, t, n, r) {\n\tlet o = sn(n);\n\t\"subtract\" === e && (o = Sr(o));\n\tconst i = Lt(Zo(r)), a = re(t, $), s = re(t, E), c = Ar(o);\n\treturn $n(po(re(t, b), a, s, c, i), a, s);\n}\nfunction Eo(e, t, n) {\n\tconst r = Math.trunc(e / t), o = e % t, i = e < 0 ? \"negative\" : \"positive\", a = Math.abs(r), s = a + 1, c = Bo(Math.abs(2 * o) - t), d = a % 2 == 0, h = ue(n, i), u = 0 === o ? a : le(a, s, c, d, h);\n\treturn t * (\"positive\" === i ? u : -u);\n}\nfunction Io(o, i, a, s) {\n\tconst c = at[a] * i;\n\treturn function(o, i, a) {\n\t\tconst s = m(o), c = m(i), d = import_jsbi_umd.default.divide(s, c), h = import_jsbi_umd.default.remainder(s, c), u = ue(a, \"positive\");\n\t\tlet l, g;\n\t\timport_jsbi_umd.default.lessThan(s, t) ? (l = import_jsbi_umd.default.subtract(d, n), g = d) : (l = d, g = import_jsbi_umd.default.add(d, n));\n\t\tconst w = p(y(import_jsbi_umd.default.multiply(h, r)), c) * (import_jsbi_umd.default.lessThan(s, t) ? -1 : 1) + 0, v = import_jsbi_umd.default.equal(h, t) ? d : le(l, g, w, f(l), u);\n\t\treturn import_jsbi_umd.default.multiply(v, c);\n\t}(o, import_jsbi_umd.default.BigInt(c), s);\n}\nfunction Co(e, t, n, r) {\n\tZr(e);\n\tconst { year: o, month: i, day: a } = e.isoDate, s = Oo(e.time, t, n, r);\n\treturn xt(Or(o, i, a + s.deltaDays), s);\n}\nfunction Oo({ hour: e, minute: t, second: n, millisecond: r, microsecond: o, nanosecond: i }, a, s, c) {\n\tlet d;\n\tswitch (s) {\n\t\tcase \"day\":\n\t\tcase \"hour\":\n\t\t\td = 1e3 * (1e3 * (1e3 * (60 * (60 * e + t) + n) + r) + o) + i;\n\t\t\tbreak;\n\t\tcase \"minute\":\n\t\t\td = 1e3 * (1e3 * (1e3 * (60 * t + n) + r) + o) + i;\n\t\t\tbreak;\n\t\tcase \"second\":\n\t\t\td = 1e3 * (1e3 * (1e3 * n + r) + o) + i;\n\t\t\tbreak;\n\t\tcase \"millisecond\":\n\t\t\td = 1e3 * (1e3 * r + o) + i;\n\t\t\tbreak;\n\t\tcase \"microsecond\":\n\t\t\td = 1e3 * o + i;\n\t\t\tbreak;\n\t\tcase \"nanosecond\": d = i;\n\t}\n\tconst h = at[s], u = Eo(d, h * a, c) / h;\n\tswitch (s) {\n\t\tcase \"day\": return {\n\t\t\tdeltaDays: u,\n\t\t\thour: 0,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t};\n\t\tcase \"hour\": return Yr(u, 0, 0, 0, 0, 0);\n\t\tcase \"minute\": return Yr(e, u, 0, 0, 0, 0);\n\t\tcase \"second\": return Yr(e, t, u, 0, 0, 0);\n\t\tcase \"millisecond\": return Yr(e, t, n, u, 0, 0);\n\t\tcase \"microsecond\": return Yr(e, t, n, r, u, 0);\n\t\tcase \"nanosecond\": return Yr(e, t, n, r, o, u);\n\t\tdefault: throw new Error(`Invalid unit ${s}`);\n\t}\n}\nfunction $o(t, n, r, o) {\n\tconst i = at[r];\n\treturn t.round(import_jsbi_umd.default.BigInt(i * n), o);\n}\nfunction Yo(t, n) {\n\tconst r = at[n];\n\treturn t.fdiv(import_jsbi_umd.default.BigInt(r));\n}\nfunction Ro(e, t) {\n\treturn e.year !== t.year ? Bo(e.year - t.year) : e.month !== t.month ? Bo(e.month - t.month) : e.day !== t.day ? Bo(e.day - t.day) : 0;\n}\nfunction So(e, t) {\n\treturn e.hour !== t.hour ? Bo(e.hour - t.hour) : e.minute !== t.minute ? Bo(e.minute - t.minute) : e.second !== t.second ? Bo(e.second - t.second) : e.millisecond !== t.millisecond ? Bo(e.millisecond - t.millisecond) : e.microsecond !== t.microsecond ? Bo(e.microsecond - t.microsecond) : e.nanosecond !== t.nanosecond ? Bo(e.nanosecond - t.nanosecond) : 0;\n}\nfunction jo(e, t) {\n\tconst n = Ro(e.isoDate, t.isoDate);\n\treturn 0 !== n ? n : So(e.time, t.time);\n}\nfunction ko(e) {\n\tconst t = Lo(e);\n\treturn void 0 !== globalThis.BigInt ? globalThis.BigInt(t.toString(10)) : t;\n}\nfunction No(t, n) {\n\tconst { quotient: o, remainder: i } = g(m(t), c);\n\tlet a = import_jsbi_umd.default.toNumber(o);\n\treturn \"floor\" === n && import_jsbi_umd.default.toNumber(i) < 0 && (a -= 1), \"ceil\" === n && import_jsbi_umd.default.toNumber(i) > 0 && (a += 1), a;\n}\nfunction xo(t) {\n\tif (!Number.isInteger(t)) throw new RangeError(\"epoch milliseconds must be an integer\");\n\treturn import_jsbi_umd.default.multiply(import_jsbi_umd.default.BigInt(t), c);\n}\nfunction Lo(t) {\n\tlet n = t;\n\tif (\"object\" == typeof t) {\n\t\tconst e = t[Symbol.toPrimitive];\n\t\te && \"function\" == typeof e && (n = e.call(t, \"number\"));\n\t}\n\tif (\"number\" == typeof n) throw new TypeError(\"cannot convert number to bigint\");\n\treturn \"bigint\" == typeof n ? import_jsbi_umd.default.BigInt(n.toString(10)) : import_jsbi_umd.default.BigInt(n);\n}\nvar Po = (() => {\n\tlet t = import_jsbi_umd.default.BigInt(Date.now() % 1e6);\n\treturn () => {\n\t\tconst n = Date.now(), r = import_jsbi_umd.default.BigInt(n), o = import_jsbi_umd.default.add(xo(n), t);\n\t\treturn t = import_jsbi_umd.default.remainder(r, c), import_jsbi_umd.default.greaterThan(o, Ne) ? Ne : import_jsbi_umd.default.lessThan(o, xe) ? xe : o;\n\t};\n})();\nfunction Uo() {\n\treturn new Intl.DateTimeFormat().resolvedOptions().timeZone;\n}\nfunction Bo(e) {\n\treturn e < 0 ? -1 : e > 0 ? 1 : e;\n}\nfunction Zo(e) {\n\tif (void 0 === e) return Object.create(null);\n\tif (Ae(e) && null !== e) return e;\n\tthrow new TypeError(\"Options parameter must be an object, not \" + (null === e ? \"null\" : typeof e));\n}\nfunction Fo(e, t) {\n\tconst n = Object.create(null);\n\treturn n[e] = t, n;\n}\nfunction Ho(e, t, n, r) {\n\tlet o = e[t];\n\tif (void 0 !== o) {\n\t\tif (o = We(o), !n.includes(o)) throw new RangeError(`${t} must be one of ${n.join(\", \")}, not ${o}`);\n\t\treturn o;\n\t}\n\tif (r === qt) throw new RangeError(`${t} option is required`);\n\treturn r;\n}\nfunction zo(e) {\n\tconst t = Ao(e);\n\tif (!He.includes(Ao(t))) throw new RangeError(`invalid calendar identifier ${t}`);\n\tswitch (t) {\n\t\tcase \"ethiopic-amete-alem\": return \"ethioaa\";\n\t\tcase \"islamicc\": return \"islamic-civil\";\n\t}\n\treturn t;\n}\nfunction Ao(e) {\n\tlet t = \"\";\n\tfor (let n = 0; n < e.length; n++) {\n\t\tconst r = e.charCodeAt(n);\n\t\tt += r >= 65 && r <= 90 ? String.fromCharCode(r + 32) : String.fromCharCode(r);\n\t}\n\treturn t;\n}\nfunction qo(e) {\n\tthrow new TypeError(`Do not use built-in arithmetic operators with Temporal objects. When comparing, use ${\"PlainMonthDay\" === e ? \"Temporal.PlainDate.compare(obj1.toPlainDate(year), obj2.toPlainDate(year))\" : `Temporal.${e}.compare(obj1, obj2)`}, not obj1 > obj2. When coercing to strings, use \\`\\${obj}\\` or String(obj), not '' + obj. When coercing to numbers, use properties or methods of the object, not \\`+obj\\`. When concatenating with strings, use \\`\\${str}\\${obj}\\` or str.concat(obj), not str + obj. In React, coerce to a string before rendering a Temporal object.`);\n}\nvar Wo = new RegExp(`^${be.source}$`), _o = new RegExp(`^${/([+-])([01][0-9]|2[0-3])(?::?([0-5][0-9])(?::?([0-5][0-9])(?:[.,](\\d{1,9}))?)?)?/.source}$`);\nfunction Jo(e, t, n, r = e(t), o = e(n)) {\n\tlet i = t, a = n, s = r, c = o;\n\tfor (; a - i > 1;) {\n\t\tlet t = Math.trunc((i + a) / 2);\n\t\tconst n = e(t);\n\t\tn === s ? (i = t, s = n) : n === c && (a = t, c = n);\n\t}\n\treturn a;\n}\nfunction Go(e) {\n\treturn [...e];\n}\nfunction Ko(e, t) {\n\tif (\"gregory\" !== e && \"iso8601\" !== e) return;\n\tconst n = Xo[e];\n\tlet r = t.year;\n\tconst { dayOfWeek: o, dayOfYear: i, daysInYear: a } = n.isoToDate(t, {\n\t\tdayOfWeek: !0,\n\t\tdayOfYear: !0,\n\t\tdaysInYear: !0\n\t}), s = n.getFirstDayOfWeek(), c = n.getMinimalDaysInFirstWeek();\n\tlet d = (o + 7 - s) % 7, h = (o - i + 7001 - s) % 7, u = Math.floor((i - 1 + h) / 7);\n\tif (7 - h >= c && ++u, 0 == u) u = function(e, t, n, r) {\n\t\tlet o = (r - e - n + 1) % 7;\n\t\to < 0 && (o += 7);\n\t\tlet i = Math.floor((n + o - 1) / 7);\n\t\treturn 7 - o >= t && ++i, i;\n\t}(s, c, i + n.isoToDate(n.dateAdd(t, { years: -1 }, \"constrain\"), { daysInYear: !0 }).daysInYear, o), r--;\n\telse if (i >= a - 5) {\n\t\tlet e = (d + a - i) % 7;\n\t\te < 0 && (e += 7), 6 - e >= c && i + 7 - d > a && (u = 1, r++);\n\t}\n\treturn {\n\t\tweek: u,\n\t\tyear: r\n\t};\n}\nfunction Vo(e, t, n, r, o) {\n\tif (t !== o.year) {\n\t\tif (e * (t - o.year) > 0) return !0;\n\t} else if (n !== o.month) {\n\t\tif (e * (n - o.month) > 0) return !0;\n\t} else if (r !== o.day && e * (r - o.day) > 0) return !0;\n\treturn !1;\n}\nvar Xo = {};\nfunction Qo(e) {\n\tif (!e.startsWith(\"M\")) throw new RangeError(`Invalid month code: ${e}. Month codes must start with M.`);\n\tconst t = +e.slice(1);\n\tif (Number.isNaN(t)) throw new RangeError(`Invalid month code: ${e}`);\n\treturn t;\n}\nfunction ei(e, t = !1) {\n\treturn `M${`${e}`.padStart(2, \"0\")}${t ? \"L\" : \"\"}`;\n}\nfunction ti(e, t = void 0, n = 12) {\n\tlet { month: r, monthCode: o } = e;\n\tif (void 0 === o) {\n\t\tif (void 0 === r) throw new TypeError(\"Either month or monthCode are required\");\n\t\t\"reject\" === t && Nr(r, 1, n), \"constrain\" === t && (r = jr(r, 1, n)), o = ei(r);\n\t} else {\n\t\tconst e = Qo(o);\n\t\tif (o !== ei(e)) throw new RangeError(`Invalid month code: ${o}`);\n\t\tif (void 0 !== r && r !== e) throw new RangeError(`monthCode ${o} and month ${r} must match if both are present`);\n\t\tif (r = e, r < 1 || r > n) throw new RangeError(`Invalid monthCode: ${o}`);\n\t}\n\treturn {\n\t\t...e,\n\t\tmonth: r,\n\t\tmonthCode: o\n\t};\n}\nXo.iso8601 = {\n\tresolveFields(e, t) {\n\t\tif ((\"date\" === t || \"year-month\" === t) && void 0 === e.year) throw new TypeError(\"year is required\");\n\t\tif ((\"date\" === t || \"month-day\" === t) && void 0 === e.day) throw new TypeError(\"day is required\");\n\t\tObject.assign(e, ti(e));\n\t},\n\tdateToISO: (e, t) => St(e.year, e.month, e.day, t),\n\tmonthDayToISOReferenceDate(e, t) {\n\t\tconst { month: n, day: r } = St(e.year ?? 1972, e.month, e.day, t);\n\t\treturn {\n\t\t\tmonth: n,\n\t\t\tday: r,\n\t\t\tyear: 1972\n\t\t};\n\t},\n\textraFields: () => [],\n\tfieldKeysToIgnore(e) {\n\t\tconst t = /* @__PURE__ */ new Set();\n\t\tfor (let n = 0; n < e.length; n++) {\n\t\t\tconst r = e[n];\n\t\t\tt.add(r), \"month\" === r ? t.add(\"monthCode\") : \"monthCode\" === r && t.add(\"month\");\n\t\t}\n\t\treturn Go(t);\n\t},\n\tdateAdd(e, { years: t = 0, months: n = 0, weeks: r = 0, days: o = 0 }, i) {\n\t\tlet { year: a, month: s, day: c } = e;\n\t\treturn a += t, s += n, {year: a, month: s} = Cr(a, s), {year: a, month: s, day: c} = St(a, s, c, i), c += o + 7 * r, Or(a, s, c);\n\t},\n\tdateUntil(e, t, n) {\n\t\tconst r = -Ro(e, t);\n\t\tif (0 === r) return {\n\t\t\tyears: 0,\n\t\t\tmonths: 0,\n\t\t\tweeks: 0,\n\t\t\tdays: 0\n\t\t};\n\t\tlet o, i = 0, a = 0;\n\t\tif (\"year\" === n || \"month\" === n) {\n\t\t\tlet s = t.year - e.year;\n\t\t\tfor (0 !== s && (s -= r); !Vo(r, e.year + s, e.month, e.day, t);) i = s, s += r;\n\t\t\tlet c = r;\n\t\t\tfor (o = Cr(e.year + i, e.month + c); !Vo(r, o.year, o.month, e.day, t);) a = c, c += r, o = Cr(o.year, o.month + r);\n\t\t\t\"month\" === n && (a += 12 * i, i = 0);\n\t\t}\n\t\to = Cr(e.year + i, e.month + a);\n\t\tconst s = kr(o.year, o.month, e.day);\n\t\tlet c = 0, d = Gr(t.year, t.month - 1, t.day) - Gr(s.year, s.month - 1, s.day);\n\t\treturn \"week\" === n && (c = Math.trunc(d / 7), d %= 7), {\n\t\t\tyears: i,\n\t\t\tmonths: a,\n\t\t\tweeks: c,\n\t\t\tdays: d\n\t\t};\n\t},\n\tisoToDate({ year: e, month: t, day: n }, r) {\n\t\tconst o = {\n\t\t\tera: void 0,\n\t\t\teraYear: void 0,\n\t\t\tyear: e,\n\t\t\tmonth: t,\n\t\t\tday: n,\n\t\t\tdaysInWeek: 7,\n\t\t\tmonthsInYear: 12\n\t\t};\n\t\tif (r.monthCode && (o.monthCode = ei(t)), r.dayOfWeek) {\n\t\t\tconst r = t + (t < 3 ? 10 : -2), i = e - (t < 3 ? 1 : 0), a = Math.floor(i / 100), s = i - 100 * a, c = (n + Math.floor(2.6 * r - .2) + (s + Math.floor(s / 4)) + (Math.floor(a / 4) - 2 * a)) % 7;\n\t\t\to.dayOfWeek = c + (c <= 0 ? 7 : 0);\n\t\t}\n\t\tif (r.dayOfYear) {\n\t\t\tlet r = n;\n\t\t\tfor (let n = t - 1; n > 0; n--) r += Tr(e, n);\n\t\t\to.dayOfYear = r;\n\t\t}\n\t\treturn r.weekOfYear && (o.weekOfYear = Ko(\"iso8601\", {\n\t\t\tyear: e,\n\t\t\tmonth: t,\n\t\t\tday: n\n\t\t})), r.daysInMonth && (o.daysInMonth = Tr(e, t)), (r.daysInYear || r.inLeapYear) && (o.inLeapYear = Dr(e), o.daysInYear = o.inLeapYear ? 366 : 365), o;\n\t},\n\tgetFirstDayOfWeek: () => 1,\n\tgetMinimalDaysInFirstWeek: () => 4\n};\nvar OneObjectCache = class OneObjectCache {\n\tconstructor(e) {\n\t\tif (this.map = /* @__PURE__ */ new Map(), this.calls = 0, this.hits = 0, this.misses = 0, void 0 !== e) {\n\t\t\tlet t = 0;\n\t\t\tfor (const n of e.map.entries()) {\n\t\t\t\tif (++t > OneObjectCache.MAX_CACHE_ENTRIES) break;\n\t\t\t\tthis.map.set(...n);\n\t\t\t}\n\t\t}\n\t}\n\tget(e) {\n\t\tconst t = this.map.get(e);\n\t\treturn t && (this.hits++, this.report()), this.calls++, t;\n\t}\n\tset(e, t) {\n\t\tthis.map.set(e, t), this.misses++, this.report();\n\t}\n\treport() {}\n\tsetObject(e) {\n\t\tif (OneObjectCache.objectMap.get(e)) throw new RangeError(\"object already cached\");\n\t\tOneObjectCache.objectMap.set(e, this), this.report();\n\t}\n\tstatic getCacheForObject(e) {\n\t\tlet t = OneObjectCache.objectMap.get(e);\n\t\treturn t || (t = new OneObjectCache(), OneObjectCache.objectMap.set(e, t)), t;\n\t}\n};\nfunction ni({ isoYear: e, isoMonth: t, isoDay: n }) {\n\treturn `${Jn(e)}-${Gn(t)}-${Gn(n)}T00:00Z`;\n}\nfunction ri(e, t) {\n\treturn {\n\t\tyears: e.year - t.year,\n\t\tmonths: e.month - t.month,\n\t\tdays: e.day - t.day\n\t};\n}\nOneObjectCache.objectMap = /* @__PURE__ */ new WeakMap(), OneObjectCache.MAX_CACHE_ENTRIES = 1e3;\nvar HelperBase = class {\n\tconstructor() {\n\t\tthis.eras = [], this.hasEra = !1, this.erasBeginMidYear = !1;\n\t}\n\tgetFormatter() {\n\t\treturn void 0 === this.formatter && (this.formatter = new Intl.DateTimeFormat(`en-US-u-ca-${this.id}`, {\n\t\t\tday: \"numeric\",\n\t\t\tmonth: \"numeric\",\n\t\t\tyear: \"numeric\",\n\t\t\tera: \"short\",\n\t\t\ttimeZone: \"UTC\"\n\t\t})), this.formatter;\n\t}\n\tgetCalendarParts(e) {\n\t\tlet t = this.getFormatter(), n = new Date(e);\n\t\tif (\"-271821-04-19T00:00Z\" === e) {\n\t\t\tconst e = t.resolvedOptions();\n\t\t\tt = new Intl.DateTimeFormat(e.locale, {\n\t\t\t\t...e,\n\t\t\t\ttimeZone: \"Etc/GMT+1\"\n\t\t\t}), n = /* @__PURE__ */ new Date(\"-271821-04-20T00:00Z\");\n\t\t}\n\t\ttry {\n\t\t\treturn t.formatToParts(n);\n\t\t} catch (t) {\n\t\t\tthrow new RangeError(`Invalid ISO date: ${e}`);\n\t\t}\n\t}\n\tisoToCalendarDate(e, t) {\n\t\tconst { year: n, month: r, day: o } = e, i = JSON.stringify({\n\t\t\tfunc: \"isoToCalendarDate\",\n\t\t\tisoYear: n,\n\t\t\tisoMonth: r,\n\t\t\tisoDay: o,\n\t\t\tid: this.id\n\t\t}), a = t.get(i);\n\t\tif (a) return a;\n\t\tconst s = ni({\n\t\t\tisoYear: n,\n\t\t\tisoMonth: r,\n\t\t\tisoDay: o\n\t\t}), c = this.getCalendarParts(s), d = {};\n\t\tfor (let e = 0; e < c.length; e++) {\n\t\t\tconst { type: t, value: n } = c[e];\n\t\t\tif (\"year\" !== t && \"relatedYear\" !== t || (this.hasEra ? d.eraYear = +n : d.year = +n), \"month\" === t) {\n\t\t\t\tconst e = /^([0-9]*)(.*?)$/.exec(n);\n\t\t\t\tif (!e || 3 != e.length || !e[1] && !e[2]) throw new RangeError(`Unexpected month: ${n}`);\n\t\t\t\tif (d.month = e[1] ? +e[1] : 1, d.month < 1) throw new RangeError(`Invalid month ${n} from ${s}[u-ca-${this.id}] (probably due to https://bugs.chromium.org/p/v8/issues/detail?id=10527)`);\n\t\t\t\tif (d.month > 13) throw new RangeError(`Invalid month ${n} from ${s}[u-ca-${this.id}] (probably due to https://bugs.chromium.org/p/v8/issues/detail?id=10529)`);\n\t\t\t\te[2] && (d.monthExtra = e[2]);\n\t\t\t}\n\t\t\t\"day\" === t && (d.day = +n), this.hasEra && \"era\" === t && null != n && \"\" !== n && (d.era = n.split(\" (\")[0].normalize(\"NFD\").replace(/[^-0-9 \\p{L}]/gu, \"\").replace(/ /g, \"-\").toLowerCase());\n\t\t}\n\t\tif (this.hasEra && void 0 === d.eraYear) throw new RangeError(`Intl.DateTimeFormat.formatToParts lacks relatedYear in ${this.id} calendar. Try Node 14+ or modern browsers.`);\n\t\tif (this.hasEra) {\n\t\t\tconst e = this.eras.find(((e) => d.era === e.genericName));\n\t\t\te && (d.era = e.code);\n\t\t}\n\t\tif (this.reviseIntlEra) {\n\t\t\tconst { era: t, eraYear: n } = this.reviseIntlEra(d, e);\n\t\t\td.era = t, d.eraYear = n;\n\t\t}\n\t\tthis.checkIcuBugs && this.checkIcuBugs(e);\n\t\tconst h = this.adjustCalendarDate(d, t, \"constrain\", !0);\n\t\tif (void 0 === h.year) throw new RangeError(`Missing year converting ${JSON.stringify(e)}`);\n\t\tif (void 0 === h.month) throw new RangeError(`Missing month converting ${JSON.stringify(e)}`);\n\t\tif (void 0 === h.day) throw new RangeError(`Missing day converting ${JSON.stringify(e)}`);\n\t\treturn t.set(i, h), [\"constrain\", \"reject\"].forEach(((n) => {\n\t\t\tconst r = JSON.stringify({\n\t\t\t\tfunc: \"calendarToIsoDate\",\n\t\t\t\tyear: h.year,\n\t\t\t\tmonth: h.month,\n\t\t\t\tday: h.day,\n\t\t\t\toverflow: n,\n\t\t\t\tid: this.id\n\t\t\t});\n\t\t\tt.set(r, e);\n\t\t})), h;\n\t}\n\tvalidateCalendarDate(e) {\n\t\tconst { month: t, year: n, day: r, eraYear: o, monthCode: i, monthExtra: a } = e;\n\t\tif (void 0 !== a) throw new RangeError(\"Unexpected `monthExtra` value\");\n\t\tif (void 0 === n && void 0 === o) throw new TypeError(\"year or eraYear is required\");\n\t\tif (void 0 === t && void 0 === i) throw new TypeError(\"month or monthCode is required\");\n\t\tif (void 0 === r) throw new RangeError(\"Missing day\");\n\t\tif (void 0 !== i) {\n\t\t\tif (\"string\" != typeof i) throw new RangeError(\"monthCode must be a string, not \" + typeof i);\n\t\t\tif (!/^M([01]?\\d)(L?)$/.test(i)) throw new RangeError(`Invalid monthCode: ${i}`);\n\t\t}\n\t\tif (this.hasEra && void 0 === e.era != (void 0 === e.eraYear)) throw new TypeError(\"properties era and eraYear must be provided together\");\n\t}\n\tadjustCalendarDate(e, t = void 0, n = \"constrain\", r = !1) {\n\t\tif (\"lunisolar\" === this.calendarType) throw new RangeError(\"Override required for lunisolar calendars\");\n\t\tlet o = e;\n\t\tthis.validateCalendarDate(o);\n\t\tconst i = this.monthsInYear(o, t);\n\t\tlet { month: a, monthCode: s } = o;\n\t\treturn {month: a, monthCode: s} = ti(o, n, i), {\n\t\t\t...o,\n\t\t\tmonth: a,\n\t\t\tmonthCode: s\n\t\t};\n\t}\n\tregulateMonthDayNaive(e, t, n) {\n\t\tconst r = this.monthsInYear(e, n);\n\t\tlet { month: o, day: i } = e;\n\t\treturn \"reject\" === t ? (Nr(o, 1, r), Nr(i, 1, this.maximumMonthLength(e))) : (o = jr(o, 1, r), i = jr(i, 1, this.maximumMonthLength({\n\t\t\t...e,\n\t\t\tmonth: o\n\t\t}))), {\n\t\t\t...e,\n\t\t\tmonth: o,\n\t\t\tday: i\n\t\t};\n\t}\n\tcalendarToIsoDate(e, t = \"constrain\", n) {\n\t\tconst r = e;\n\t\tlet o = this.adjustCalendarDate(e, n, t, !1);\n\t\to = this.regulateMonthDayNaive(o, t, n);\n\t\tconst { year: i, month: a, day: s } = o, c = JSON.stringify({\n\t\t\tfunc: \"calendarToIsoDate\",\n\t\t\tyear: i,\n\t\t\tmonth: a,\n\t\t\tday: s,\n\t\t\toverflow: t,\n\t\t\tid: this.id\n\t\t});\n\t\tlet d, h = n.get(c);\n\t\tif (h) return h;\n\t\tif (void 0 !== r.year && void 0 !== r.month && void 0 !== r.day && (r.year !== o.year || r.month !== o.month || r.day !== o.day) && (d = JSON.stringify({\n\t\t\tfunc: \"calendarToIsoDate\",\n\t\t\tyear: r.year,\n\t\t\tmonth: r.month,\n\t\t\tday: r.day,\n\t\t\toverflow: t,\n\t\t\tid: this.id\n\t\t}), h = n.get(d), h)) return h;\n\t\tlet u = this.estimateIsoDate({\n\t\t\tyear: i,\n\t\t\tmonth: a,\n\t\t\tday: s\n\t\t});\n\t\tconst l = (e) => {\n\t\t\tlet r = this.addDaysIso(u, e);\n\t\t\tif (o.day > this.minimumMonthLength(o)) {\n\t\t\t\tlet e = this.isoToCalendarDate(r, n);\n\t\t\t\tfor (; e.month !== a || e.year !== i;) {\n\t\t\t\t\tif (\"reject\" === t) throw new RangeError(`day ${s} does not exist in month ${a} of year ${i}`);\n\t\t\t\t\tr = this.addDaysIso(r, -1), e = this.isoToCalendarDate(r, n);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn r;\n\t\t};\n\t\tlet m = 0, f = this.isoToCalendarDate(u, n), y = ri(o, f);\n\t\tif (0 !== y.years || 0 !== y.months || 0 !== y.days) {\n\t\t\tconst e = 365 * y.years + 30 * y.months + y.days;\n\t\t\tu = this.addDaysIso(u, e), f = this.isoToCalendarDate(u, n), y = ri(o, f), 0 === y.years && 0 === y.months ? u = l(y.days) : m = this.compareCalendarDates(o, f);\n\t\t}\n\t\tlet p = 8;\n\t\tfor (; m;) {\n\t\t\tu = this.addDaysIso(u, m * p);\n\t\t\tconst e = f;\n\t\t\tf = this.isoToCalendarDate(u, n);\n\t\t\tconst i = m;\n\t\t\tif (m = this.compareCalendarDates(o, f), m) {\n\t\t\t\tif (y = ri(o, f), 0 === y.years && 0 === y.months) u = l(y.days), m = 0;\n\t\t\t\telse if (i && m !== i) if (p > 1) p /= 2;\n\t\t\t\telse {\n\t\t\t\t\tif (\"reject\" === t) throw new RangeError(`Can't find ISO date from calendar date: ${JSON.stringify({ ...r })}`);\n\t\t\t\t\tthis.compareCalendarDates(f, e) > 0 && (u = this.addDaysIso(u, -1)), m = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (n.set(c, u), d && n.set(d, u), void 0 === o.year || void 0 === o.month || void 0 === o.day || void 0 === o.monthCode || this.hasEra && (void 0 === o.era || void 0 === o.eraYear)) throw new RangeError(\"Unexpected missing property\");\n\t\treturn u;\n\t}\n\tcompareCalendarDates(e, t) {\n\t\treturn e.year !== t.year ? Bo(e.year - t.year) : e.month !== t.month ? Bo(e.month - t.month) : e.day !== t.day ? Bo(e.day - t.day) : 0;\n\t}\n\tregulateDate(e, t = \"constrain\", n) {\n\t\tconst r = this.calendarToIsoDate(e, t, n);\n\t\treturn this.isoToCalendarDate(r, n);\n\t}\n\taddDaysIso(e, t) {\n\t\treturn Or(e.year, e.month, e.day + t);\n\t}\n\taddDaysCalendar(e, t, n) {\n\t\tconst r = this.calendarToIsoDate(e, \"constrain\", n), o = this.addDaysIso(r, t);\n\t\treturn this.isoToCalendarDate(o, n);\n\t}\n\taddMonthsCalendar(e, t, n, r) {\n\t\tlet o = e;\n\t\tconst { day: i } = o;\n\t\tfor (let e = 0, n = Math.abs(t); e < n; e++) {\n\t\t\tconst { month: e } = o, n = o, a = t < 0 ? -Math.max(i, this.daysInPreviousMonth(o, r)) : this.daysInMonth(o, r), s = this.calendarToIsoDate(o, \"constrain\", r);\n\t\t\tlet c = this.addDaysIso(s, a);\n\t\t\tif (o = this.isoToCalendarDate(c, r), t > 0) {\n\t\t\t\tconst t = this.monthsInYear(n, r);\n\t\t\t\tfor (; o.month - 1 != e % t;) c = this.addDaysIso(c, -1), o = this.isoToCalendarDate(c, r);\n\t\t\t}\n\t\t\to.day !== i && (o = this.regulateDate({\n\t\t\t\t...o,\n\t\t\t\tday: i\n\t\t\t}, \"constrain\", r));\n\t\t}\n\t\tif (\"reject\" === n && o.day !== i) throw new RangeError(`Day ${i} does not exist in resulting calendar month`);\n\t\treturn o;\n\t}\n\taddCalendar(e, { years: t = 0, months: n = 0, weeks: r = 0, days: o = 0 }, i, a) {\n\t\tconst { year: s, day: c, monthCode: d } = e, h = this.adjustCalendarDate({\n\t\t\tyear: s + t,\n\t\t\tmonthCode: d,\n\t\t\tday: c\n\t\t}, a), u = this.addMonthsCalendar(h, n, i, a), l = o + 7 * r;\n\t\treturn this.addDaysCalendar(u, l, a);\n\t}\n\tuntilCalendar(e, t, n, r) {\n\t\tlet o = 0, i = 0, a = 0, s = 0;\n\t\tswitch (n) {\n\t\t\tcase \"day\":\n\t\t\t\to = this.calendarDaysUntil(e, t, r);\n\t\t\t\tbreak;\n\t\t\tcase \"week\": {\n\t\t\t\tconst n = this.calendarDaysUntil(e, t, r);\n\t\t\t\to = n % 7, i = (n - o) / 7;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"month\":\n\t\t\tcase \"year\": {\n\t\t\t\tconst i = this.compareCalendarDates(t, e);\n\t\t\t\tif (!i) return {\n\t\t\t\t\tyears: 0,\n\t\t\t\t\tmonths: 0,\n\t\t\t\t\tweeks: 0,\n\t\t\t\t\tdays: 0\n\t\t\t\t};\n\t\t\t\tconst c = t.year - e.year, d = t.day - e.day;\n\t\t\t\tif (\"year\" === n && c) {\n\t\t\t\t\tlet n = 0;\n\t\t\t\t\tt.monthCode > e.monthCode && (n = 1), t.monthCode < e.monthCode && (n = -1), n || (n = Math.sign(d)), s = n * i < 0 ? c - i : c;\n\t\t\t\t}\n\t\t\t\tlet h, u = s ? this.addCalendar(e, { years: s }, \"constrain\", r) : e;\n\t\t\t\tdo\n\t\t\t\t\ta += i, h = u, u = this.addMonthsCalendar(h, i, \"constrain\", r), u.day !== e.day && (u = this.regulateDate({\n\t\t\t\t\t\t...u,\n\t\t\t\t\t\tday: e.day\n\t\t\t\t\t}, \"constrain\", r));\n\t\t\t\twhile (this.compareCalendarDates(t, u) * i >= 0);\n\t\t\t\ta -= i, o = this.calendarDaysUntil(h, t, r);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\tyears: s,\n\t\t\tmonths: a,\n\t\t\tweeks: i,\n\t\t\tdays: o\n\t\t};\n\t}\n\tdaysInMonth(e, t) {\n\t\tconst { day: n } = e, r = this.maximumMonthLength(e), o = this.minimumMonthLength(e);\n\t\tif (o === r) return o;\n\t\tconst i = n <= r - o ? r : o, a = this.calendarToIsoDate(e, \"constrain\", t), s = this.addDaysIso(a, i), c = this.isoToCalendarDate(s, t), d = this.addDaysIso(s, -c.day);\n\t\treturn this.isoToCalendarDate(d, t).day;\n\t}\n\tdaysInPreviousMonth(e, t) {\n\t\tconst { day: n, month: r, year: o } = e;\n\t\tlet i = {\n\t\t\tyear: r > 1 ? o : o - 1,\n\t\t\tmonth: r,\n\t\t\tday: 1\n\t\t};\n\t\tconst a = r > 1 ? r - 1 : this.monthsInYear(i, t);\n\t\ti = {\n\t\t\t...i,\n\t\t\tmonth: a\n\t\t};\n\t\tconst s = this.minimumMonthLength(i), c = this.maximumMonthLength(i);\n\t\tif (s === c) return c;\n\t\tconst d = this.calendarToIsoDate(e, \"constrain\", t), h = this.addDaysIso(d, -n);\n\t\treturn this.isoToCalendarDate(h, t).day;\n\t}\n\tstartOfCalendarYear(e) {\n\t\treturn {\n\t\t\tyear: e.year,\n\t\t\tmonth: 1,\n\t\t\tmonthCode: \"M01\",\n\t\t\tday: 1\n\t\t};\n\t}\n\tstartOfCalendarMonth(e) {\n\t\treturn {\n\t\t\tyear: e.year,\n\t\t\tmonth: e.month,\n\t\t\tday: 1\n\t\t};\n\t}\n\tcalendarDaysUntil(e, t, n) {\n\t\tconst r = this.calendarToIsoDate(e, \"constrain\", n), o = this.calendarToIsoDate(t, \"constrain\", n);\n\t\treturn Gr(o.year, o.month - 1, o.day) - Gr(r.year, r.month - 1, r.day);\n\t}\n\tmonthDaySearchStartYear(e, t) {\n\t\treturn 1972;\n\t}\n\tmonthDayFromFields(e, t, n) {\n\t\tlet r, o, i, a, s, { era: c, eraYear: d, year: h, month: u, monthCode: l, day: m } = e;\n\t\tif (void 0 !== u && void 0 === h && (!this.hasEra || void 0 === c || void 0 === d)) throw new TypeError(\"when month is present, year (or era and eraYear) are required\");\n\t\t(void 0 === l || void 0 !== h || this.hasEra && void 0 !== d) && ({monthCode: l, day: m} = this.isoToCalendarDate(this.calendarToIsoDate(e, t, n), n));\n\t\tconst f = {\n\t\t\tyear: this.monthDaySearchStartYear(l, m),\n\t\t\tmonth: 12,\n\t\t\tday: 31\n\t\t}, y = this.isoToCalendarDate(f, n), p = y.monthCode > l || y.monthCode === l && y.day >= m ? y.year : y.year - 1;\n\t\tfor (let e = 0; e < 20; e++) {\n\t\t\tconst c = this.adjustCalendarDate({\n\t\t\t\tday: m,\n\t\t\t\tmonthCode: l,\n\t\t\t\tyear: p - e\n\t\t\t}, n), d = this.calendarToIsoDate(c, \"constrain\", n), h = this.isoToCalendarDate(d, n);\n\t\t\tif ({year: r, month: o, day: i} = d, h.monthCode === l && h.day === m) return {\n\t\t\t\tmonth: o,\n\t\t\t\tday: i,\n\t\t\t\tyear: r\n\t\t\t};\n\t\t\tif (\"constrain\" === t) {\n\t\t\t\tconst e = this.maxLengthOfMonthCodeInAnyYear(h.monthCode);\n\t\t\t\tif (h.monthCode === l && h.day === e && m > e) return {\n\t\t\t\t\tmonth: o,\n\t\t\t\t\tday: i,\n\t\t\t\t\tyear: r\n\t\t\t\t};\n\t\t\t\t(void 0 === a || h.monthCode === a.monthCode && h.day > a.day) && (a = h, s = d);\n\t\t\t}\n\t\t}\n\t\tif (\"constrain\" === t && void 0 !== s) return s;\n\t\tthrow new RangeError(`No recent ${this.id} year with monthCode ${l} and day ${m}`);\n\t}\n\tgetFirstDayOfWeek() {}\n\tgetMinimalDaysInFirstWeek() {}\n};\nvar HebrewHelper = class extends HelperBase {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"hebrew\", this.calendarType = \"lunisolar\", this.months = {\n\t\t\tTishri: {\n\t\t\t\tleap: 1,\n\t\t\t\tregular: 1,\n\t\t\t\tmonthCode: \"M01\",\n\t\t\t\tdays: 30\n\t\t\t},\n\t\t\tHeshvan: {\n\t\t\t\tleap: 2,\n\t\t\t\tregular: 2,\n\t\t\t\tmonthCode: \"M02\",\n\t\t\t\tdays: {\n\t\t\t\t\tmin: 29,\n\t\t\t\t\tmax: 30\n\t\t\t\t}\n\t\t\t},\n\t\t\tKislev: {\n\t\t\t\tleap: 3,\n\t\t\t\tregular: 3,\n\t\t\t\tmonthCode: \"M03\",\n\t\t\t\tdays: {\n\t\t\t\t\tmin: 29,\n\t\t\t\t\tmax: 30\n\t\t\t\t}\n\t\t\t},\n\t\t\tTevet: {\n\t\t\t\tleap: 4,\n\t\t\t\tregular: 4,\n\t\t\t\tmonthCode: \"M04\",\n\t\t\t\tdays: 29\n\t\t\t},\n\t\t\tShevat: {\n\t\t\t\tleap: 5,\n\t\t\t\tregular: 5,\n\t\t\t\tmonthCode: \"M05\",\n\t\t\t\tdays: 30\n\t\t\t},\n\t\t\tAdar: {\n\t\t\t\tleap: void 0,\n\t\t\t\tregular: 6,\n\t\t\t\tmonthCode: \"M06\",\n\t\t\t\tdays: 29\n\t\t\t},\n\t\t\t\"Adar I\": {\n\t\t\t\tleap: 6,\n\t\t\t\tregular: void 0,\n\t\t\t\tmonthCode: \"M05L\",\n\t\t\t\tdays: 30\n\t\t\t},\n\t\t\t\"Adar II\": {\n\t\t\t\tleap: 7,\n\t\t\t\tregular: void 0,\n\t\t\t\tmonthCode: \"M06\",\n\t\t\t\tdays: 29\n\t\t\t},\n\t\t\tNisan: {\n\t\t\t\tleap: 8,\n\t\t\t\tregular: 7,\n\t\t\t\tmonthCode: \"M07\",\n\t\t\t\tdays: 30\n\t\t\t},\n\t\t\tIyar: {\n\t\t\t\tleap: 9,\n\t\t\t\tregular: 8,\n\t\t\t\tmonthCode: \"M08\",\n\t\t\t\tdays: 29\n\t\t\t},\n\t\t\tSivan: {\n\t\t\t\tleap: 10,\n\t\t\t\tregular: 9,\n\t\t\t\tmonthCode: \"M09\",\n\t\t\t\tdays: 30\n\t\t\t},\n\t\t\tTamuz: {\n\t\t\t\tleap: 11,\n\t\t\t\tregular: 10,\n\t\t\t\tmonthCode: \"M10\",\n\t\t\t\tdays: 29\n\t\t\t},\n\t\t\tAv: {\n\t\t\t\tleap: 12,\n\t\t\t\tregular: 11,\n\t\t\t\tmonthCode: \"M11\",\n\t\t\t\tdays: 30\n\t\t\t},\n\t\t\tElul: {\n\t\t\t\tleap: 13,\n\t\t\t\tregular: 12,\n\t\t\t\tmonthCode: \"M12\",\n\t\t\t\tdays: 29\n\t\t\t}\n\t\t};\n\t}\n\tinLeapYear(e) {\n\t\tconst { year: t } = e;\n\t\treturn (7 * t + 1) % 19 < 7;\n\t}\n\tmonthsInYear(e) {\n\t\treturn this.inLeapYear(e) ? 13 : 12;\n\t}\n\tminimumMonthLength(e) {\n\t\treturn this.minMaxMonthLength(e, \"min\");\n\t}\n\tmaximumMonthLength(e) {\n\t\treturn this.minMaxMonthLength(e, \"max\");\n\t}\n\tminMaxMonthLength(e, t) {\n\t\tconst { month: n, year: r } = e, o = this.getMonthCode(r, n), i = Object.entries(this.months).find(((e) => e[1].monthCode === o));\n\t\tif (void 0 === i) throw new RangeError(`unmatched Hebrew month: ${n}`);\n\t\tconst a = i[1].days;\n\t\treturn \"number\" == typeof a ? a : a[t];\n\t}\n\tmaxLengthOfMonthCodeInAnyYear(e) {\n\t\treturn [\n\t\t\t\"M04\",\n\t\t\t\"M06\",\n\t\t\t\"M08\",\n\t\t\t\"M10\",\n\t\t\t\"M12\"\n\t\t].includes(e) ? 29 : 30;\n\t}\n\testimateIsoDate(e) {\n\t\tconst { year: t } = e;\n\t\treturn {\n\t\t\tyear: t - 3760,\n\t\t\tmonth: 1,\n\t\t\tday: 1\n\t\t};\n\t}\n\tgetMonthCode(e, t) {\n\t\treturn this.inLeapYear({ year: e }) ? 6 === t ? ei(5, !0) : ei(t < 6 ? t : t - 1) : ei(t);\n\t}\n\tadjustCalendarDate(e, t, n = \"constrain\", r = !1) {\n\t\tlet { year: o, month: i, monthCode: a, day: s, monthExtra: c } = e;\n\t\tif (void 0 === o) throw new TypeError(\"Missing property: year\");\n\t\tif (r) {\n\t\t\tif (c) {\n\t\t\t\tconst e = this.months[c];\n\t\t\t\tif (!e) throw new RangeError(`Unrecognized month from formatToParts: ${c}`);\n\t\t\t\ti = this.inLeapYear({ year: o }) ? e.leap : e.regular;\n\t\t\t}\n\t\t\treturn a = this.getMonthCode(o, i), {\n\t\t\t\tyear: o,\n\t\t\t\tmonth: i,\n\t\t\t\tday: s,\n\t\t\t\tmonthCode: a\n\t\t\t};\n\t\t}\n\t\tif (this.validateCalendarDate(e), void 0 === i) if (a.endsWith(\"L\")) {\n\t\t\tif (\"M05L\" !== a) throw new RangeError(`Hebrew leap month must have monthCode M05L, not ${a}`);\n\t\t\tif (i = 6, !this.inLeapYear({ year: o })) {\n\t\t\t\tif (\"reject\" === n) throw new RangeError(`Hebrew monthCode M05L is invalid in year ${o} which is not a leap year`);\n\t\t\t\ti = 6, a = \"M06\";\n\t\t\t}\n\t\t} else {\n\t\t\ti = Qo(a), this.inLeapYear({ year: o }) && i >= 6 && i++;\n\t\t\tconst e = this.monthsInYear({ year: o });\n\t\t\tif (i < 1 || i > e) throw new RangeError(`Invalid monthCode: ${a}`);\n\t\t}\n\t\telse if (\"reject\" === n ? (Nr(i, 1, this.monthsInYear({ year: o })), Nr(s, 1, this.maximumMonthLength({\n\t\t\tyear: o,\n\t\t\tmonth: i\n\t\t}))) : (i = jr(i, 1, this.monthsInYear({ year: o })), s = jr(s, 1, this.maximumMonthLength({\n\t\t\tyear: o,\n\t\t\tmonth: i\n\t\t}))), void 0 === a) a = this.getMonthCode(o, i);\n\t\telse if (this.getMonthCode(o, i) !== a) throw new RangeError(`monthCode ${a} doesn't correspond to month ${i} in Hebrew year ${o}`);\n\t\treturn {\n\t\t\t...e,\n\t\t\tday: s,\n\t\t\tmonth: i,\n\t\t\tmonthCode: a,\n\t\t\tyear: o\n\t\t};\n\t}\n};\nvar IslamicBaseHelper = class extends HelperBase {\n\tconstructor() {\n\t\tsuper(...arguments), this.calendarType = \"lunar\", this.DAYS_PER_ISLAMIC_YEAR = 354.3666666666667, this.DAYS_PER_ISO_YEAR = 365.2425;\n\t}\n\tinLeapYear(e, t) {\n\t\tconst n = {\n\t\t\tyear: e.year,\n\t\t\tmonth: 1,\n\t\t\tmonthCode: \"M01\",\n\t\t\tday: 1\n\t\t}, r = {\n\t\t\tyear: e.year + 1,\n\t\t\tmonth: 1,\n\t\t\tmonthCode: \"M01\",\n\t\t\tday: 1\n\t\t};\n\t\treturn 355 === this.calendarDaysUntil(n, r, t);\n\t}\n\tmonthsInYear() {\n\t\treturn 12;\n\t}\n\tminimumMonthLength() {\n\t\treturn 29;\n\t}\n\tmaximumMonthLength() {\n\t\treturn 30;\n\t}\n\tmaxLengthOfMonthCodeInAnyYear() {\n\t\treturn 30;\n\t}\n\testimateIsoDate(e) {\n\t\tconst { year: t } = this.adjustCalendarDate(e);\n\t\treturn {\n\t\t\tyear: Math.floor(t * this.DAYS_PER_ISLAMIC_YEAR / this.DAYS_PER_ISO_YEAR) + 622,\n\t\t\tmonth: 1,\n\t\t\tday: 1\n\t\t};\n\t}\n};\nvar IslamicHelper = class extends IslamicBaseHelper {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"islamic\";\n\t}\n};\nvar IslamicUmalquraHelper = class extends IslamicBaseHelper {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"islamic-umalqura\";\n\t}\n};\nvar IslamicTblaHelper = class extends IslamicBaseHelper {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"islamic-tbla\";\n\t}\n};\nvar IslamicCivilHelper = class extends IslamicBaseHelper {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"islamic-civil\";\n\t}\n};\nvar IslamicRgsaHelper = class extends IslamicBaseHelper {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"islamic-rgsa\";\n\t}\n};\nvar IslamicCcHelper = class extends IslamicBaseHelper {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"islamicc\";\n\t}\n};\nvar PersianHelper = class extends HelperBase {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"persian\", this.calendarType = \"solar\";\n\t}\n\tinLeapYear(e, t) {\n\t\treturn 30 === this.daysInMonth({\n\t\t\tyear: e.year,\n\t\t\tmonth: 12,\n\t\t\tday: 1\n\t\t}, t);\n\t}\n\tmonthsInYear() {\n\t\treturn 12;\n\t}\n\tminimumMonthLength(e) {\n\t\tconst { month: t } = e;\n\t\treturn 12 === t ? 29 : t <= 6 ? 31 : 30;\n\t}\n\tmaximumMonthLength(e) {\n\t\tconst { month: t } = e;\n\t\treturn 12 === t ? 30 : t <= 6 ? 31 : 30;\n\t}\n\tmaxLengthOfMonthCodeInAnyYear(e) {\n\t\treturn Qo(e) <= 6 ? 31 : 30;\n\t}\n\testimateIsoDate(e) {\n\t\tconst { year: t } = this.adjustCalendarDate(e);\n\t\treturn {\n\t\t\tyear: t + 621,\n\t\t\tmonth: 1,\n\t\t\tday: 1\n\t\t};\n\t}\n};\nvar IndianHelper = class extends HelperBase {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"indian\", this.calendarType = \"solar\", this.months = {\n\t\t\t1: {\n\t\t\t\tlength: 30,\n\t\t\t\tmonth: 3,\n\t\t\t\tday: 22,\n\t\t\t\tleap: {\n\t\t\t\t\tlength: 31,\n\t\t\t\t\tmonth: 3,\n\t\t\t\t\tday: 21\n\t\t\t\t}\n\t\t\t},\n\t\t\t2: {\n\t\t\t\tlength: 31,\n\t\t\t\tmonth: 4,\n\t\t\t\tday: 21\n\t\t\t},\n\t\t\t3: {\n\t\t\t\tlength: 31,\n\t\t\t\tmonth: 5,\n\t\t\t\tday: 22\n\t\t\t},\n\t\t\t4: {\n\t\t\t\tlength: 31,\n\t\t\t\tmonth: 6,\n\t\t\t\tday: 22\n\t\t\t},\n\t\t\t5: {\n\t\t\t\tlength: 31,\n\t\t\t\tmonth: 7,\n\t\t\t\tday: 23\n\t\t\t},\n\t\t\t6: {\n\t\t\t\tlength: 31,\n\t\t\t\tmonth: 8,\n\t\t\t\tday: 23\n\t\t\t},\n\t\t\t7: {\n\t\t\t\tlength: 30,\n\t\t\t\tmonth: 9,\n\t\t\t\tday: 23\n\t\t\t},\n\t\t\t8: {\n\t\t\t\tlength: 30,\n\t\t\t\tmonth: 10,\n\t\t\t\tday: 23\n\t\t\t},\n\t\t\t9: {\n\t\t\t\tlength: 30,\n\t\t\t\tmonth: 11,\n\t\t\t\tday: 22\n\t\t\t},\n\t\t\t10: {\n\t\t\t\tlength: 30,\n\t\t\t\tmonth: 12,\n\t\t\t\tday: 22\n\t\t\t},\n\t\t\t11: {\n\t\t\t\tlength: 30,\n\t\t\t\tmonth: 1,\n\t\t\t\tnextYear: !0,\n\t\t\t\tday: 21\n\t\t\t},\n\t\t\t12: {\n\t\t\t\tlength: 30,\n\t\t\t\tmonth: 2,\n\t\t\t\tnextYear: !0,\n\t\t\t\tday: 20\n\t\t\t}\n\t\t}, this.vulnerableToBceBug = \"10/11/-79 Saka\" !== (/* @__PURE__ */ new Date(\"0000-01-01T00:00Z\")).toLocaleDateString(\"en-US-u-ca-indian\", { timeZone: \"UTC\" });\n\t}\n\tinLeapYear(e) {\n\t\treturn oi(e.year + 78);\n\t}\n\tmonthsInYear() {\n\t\treturn 12;\n\t}\n\tminimumMonthLength(e) {\n\t\treturn this.getMonthInfo(e).length;\n\t}\n\tmaximumMonthLength(e) {\n\t\treturn this.getMonthInfo(e).length;\n\t}\n\tmaxLengthOfMonthCodeInAnyYear(e) {\n\t\tconst t = Qo(e);\n\t\tlet n = this.months[t];\n\t\treturn n = n.leap ?? n, n.length;\n\t}\n\tgetMonthInfo(e) {\n\t\tconst { month: t } = e;\n\t\tlet n = this.months[t];\n\t\tif (void 0 === n) throw new RangeError(`Invalid month: ${t}`);\n\t\treturn this.inLeapYear(e) && n.leap && (n = n.leap), n;\n\t}\n\testimateIsoDate(e) {\n\t\tconst t = this.adjustCalendarDate(e), n = this.getMonthInfo(t);\n\t\treturn Or(t.year + 78 + (n.nextYear ? 1 : 0), n.month, n.day + t.day - 1);\n\t}\n\tcheckIcuBugs(e) {\n\t\tif (this.vulnerableToBceBug && e.year < 1) throw new RangeError(`calendar '${this.id}' is broken for ISO dates before 0001-01-01 (see https://bugs.chromium.org/p/v8/issues/detail?id=10529)`);\n\t}\n};\nfunction oi(e) {\n\treturn e % 4 == 0 && (e % 100 != 0 || e % 400 == 0);\n}\nvar GregorianBaseHelperFixedEpoch = class extends HelperBase {\n\tconstructor(e, t) {\n\t\tsuper(), this.calendarType = \"solar\", this.id = e, this.isoEpoch = t;\n\t}\n\tinLeapYear(e) {\n\t\tconst { year: t } = this.estimateIsoDate({\n\t\t\tmonth: 1,\n\t\t\tday: 1,\n\t\t\tyear: e.year\n\t\t});\n\t\treturn oi(t);\n\t}\n\tmonthsInYear() {\n\t\treturn 12;\n\t}\n\tminimumMonthLength(e) {\n\t\tconst { month: t } = e;\n\t\treturn 2 === t ? this.inLeapYear(e) ? 29 : 28 : [\n\t\t\t4,\n\t\t\t6,\n\t\t\t9,\n\t\t\t11\n\t\t].indexOf(t) >= 0 ? 30 : 31;\n\t}\n\tmaximumMonthLength(e) {\n\t\treturn this.minimumMonthLength(e);\n\t}\n\tmaxLengthOfMonthCodeInAnyYear(e) {\n\t\treturn [\n\t\t\t31,\n\t\t\t29,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31\n\t\t][Qo(e) - 1];\n\t}\n\testimateIsoDate(e) {\n\t\tconst t = this.adjustCalendarDate(e);\n\t\treturn St(t.year + this.isoEpoch.year, t.month + this.isoEpoch.month, t.day + this.isoEpoch.day, \"constrain\");\n\t}\n};\nvar GregorianBaseHelper = class extends HelperBase {\n\tconstructor(e, t) {\n\t\tsuper(), this.hasEra = !0, this.calendarType = \"solar\", this.id = e;\n\t\tconst { eras: n, anchorEra: r } = function(e) {\n\t\t\tlet t, n = e;\n\t\t\tif (0 === n.length) throw new RangeError(\"Invalid era data: eras are required\");\n\t\t\tif (1 === n.length && n[0].reverseOf) throw new RangeError(\"Invalid era data: anchor era cannot count years backwards\");\n\t\t\tif (1 === n.length && !n[0].code) throw new RangeError(\"Invalid era data: at least one named era is required\");\n\t\t\tif (n.filter(((e) => null != e.reverseOf)).length > 1) throw new RangeError(\"Invalid era data: only one era can count years backwards\");\n\t\t\tn.forEach(((e) => {\n\t\t\t\tif (e.isAnchor || !e.anchorEpoch && !e.reverseOf) {\n\t\t\t\t\tif (t) throw new RangeError(\"Invalid era data: cannot have multiple anchor eras\");\n\t\t\t\t\tt = e, e.anchorEpoch = { year: e.hasYearZero ? 0 : 1 };\n\t\t\t\t} else if (!e.code) throw new RangeError(\"If era name is blank, it must be the anchor era\");\n\t\t\t})), n = n.filter(((e) => e.code)), n.forEach(((e) => {\n\t\t\t\tconst { reverseOf: t } = e;\n\t\t\t\tif (t) {\n\t\t\t\t\tconst r = n.find(((e) => e.code === t));\n\t\t\t\t\tif (void 0 === r) throw new RangeError(`Invalid era data: unmatched reverseOf era: ${t}`);\n\t\t\t\t\te.reverseOf = r, e.anchorEpoch = r.anchorEpoch, e.isoEpoch = r.isoEpoch;\n\t\t\t\t}\n\t\t\t\tvoid 0 === e.anchorEpoch.month && (e.anchorEpoch.month = 1), void 0 === e.anchorEpoch.day && (e.anchorEpoch.day = 1);\n\t\t\t})), n.sort(((e, t) => {\n\t\t\t\tif (e.reverseOf) return 1;\n\t\t\t\tif (t.reverseOf) return -1;\n\t\t\t\tif (!e.isoEpoch || !t.isoEpoch) throw new RangeError(\"Invalid era data: missing ISO epoch\");\n\t\t\t\treturn t.isoEpoch.year - e.isoEpoch.year;\n\t\t\t}));\n\t\t\tconst r = n[n.length - 1].reverseOf;\n\t\t\tif (r && r !== n[n.length - 2]) throw new RangeError(\"Invalid era data: invalid reverse-sign era\");\n\t\t\treturn n.forEach(((e, t) => {\n\t\t\t\te.genericName = \"era\" + (n.length - 1 - t);\n\t\t\t})), {\n\t\t\t\teras: n,\n\t\t\t\tanchorEra: t || n[0]\n\t\t\t};\n\t\t}(t);\n\t\tthis.anchorEra = r, this.eras = n;\n\t}\n\tinLeapYear(e) {\n\t\tconst { year: t } = this.estimateIsoDate({\n\t\t\tmonth: 1,\n\t\t\tday: 1,\n\t\t\tyear: e.year\n\t\t});\n\t\treturn oi(t);\n\t}\n\tmonthsInYear() {\n\t\treturn 12;\n\t}\n\tminimumMonthLength(e) {\n\t\tconst { month: t } = e;\n\t\treturn 2 === t ? this.inLeapYear(e) ? 29 : 28 : [\n\t\t\t4,\n\t\t\t6,\n\t\t\t9,\n\t\t\t11\n\t\t].indexOf(t) >= 0 ? 30 : 31;\n\t}\n\tmaximumMonthLength(e) {\n\t\treturn this.minimumMonthLength(e);\n\t}\n\tmaxLengthOfMonthCodeInAnyYear(e) {\n\t\treturn [\n\t\t\t31,\n\t\t\t29,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31,\n\t\t\t30,\n\t\t\t31\n\t\t][Qo(e) - 1];\n\t}\n\tcompleteEraYear(e) {\n\t\tconst t = (t, n, r) => {\n\t\t\tconst o = e[t];\n\t\t\tif (null != o && o != n && !(r || []).includes(o)) {\n\t\t\t\tconst e = r?.[0];\n\t\t\t\tthrow new RangeError(`Input ${t} ${o} doesn't match calculated value ${e ? `${n} (also called ${e})` : n}`);\n\t\t\t}\n\t\t}, n = (t) => {\n\t\t\tlet n;\n\t\t\tconst r = {\n\t\t\t\t...e,\n\t\t\t\tyear: t\n\t\t\t}, o = this.eras.find(((e, o) => {\n\t\t\t\tif (o === this.eras.length - 1) {\n\t\t\t\t\tif (e.reverseOf) {\n\t\t\t\t\t\tif (t > 0) throw new RangeError(`Signed year ${t} is invalid for era ${e.code}`);\n\t\t\t\t\t\treturn n = e.anchorEpoch.year - t, !0;\n\t\t\t\t\t}\n\t\t\t\t\treturn n = t - e.anchorEpoch.year + (e.hasYearZero ? 0 : 1), !0;\n\t\t\t\t}\n\t\t\t\treturn this.compareCalendarDates(r, e.anchorEpoch) >= 0 && (n = t - e.anchorEpoch.year + (e.hasYearZero ? 0 : 1), !0);\n\t\t\t}));\n\t\t\tif (!o) throw new RangeError(`Year ${t} was not matched by any era`);\n\t\t\treturn {\n\t\t\t\teraYear: n,\n\t\t\t\tera: o.code,\n\t\t\t\teraNames: o.names\n\t\t\t};\n\t\t};\n\t\tlet { year: r, eraYear: o, era: i } = e;\n\t\tif (null != r) {\n\t\t\tconst e = n(r);\n\t\t\t({eraYear: o, era: i} = e), t(\"era\", i, e?.eraNames), t(\"eraYear\", o);\n\t\t} else {\n\t\t\tif (null == o) throw new RangeError(\"Either year or eraYear and era are required\");\n\t\t\t{\n\t\t\t\tif (void 0 === i) throw new RangeError(\"era and eraYear must be provided together\");\n\t\t\t\tconst e = this.eras.find((({ code: e, names: t = [] }) => e === i || t.includes(i)));\n\t\t\t\tif (!e) throw new RangeError(`Era ${i} (ISO year ${o}) was not matched by any era`);\n\t\t\t\tr = e.reverseOf ? e.anchorEpoch.year - o : o + e.anchorEpoch.year - (e.hasYearZero ? 0 : 1), t(\"year\", r), {eraYear: o, era: i} = n(r);\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\t...e,\n\t\t\tyear: r,\n\t\t\teraYear: o,\n\t\t\tera: i\n\t\t};\n\t}\n\tadjustCalendarDate(e, t, n = \"constrain\") {\n\t\tlet r = e;\n\t\tconst { month: o, monthCode: i } = r;\n\t\treturn void 0 === o && (r = {\n\t\t\t...r,\n\t\t\tmonth: Qo(i)\n\t\t}), this.validateCalendarDate(r), r = this.completeEraYear(r), super.adjustCalendarDate(r, t, n);\n\t}\n\testimateIsoDate(e) {\n\t\tconst { year: n, month: r, day: o } = this.adjustCalendarDate(e), { anchorEra: i } = this;\n\t\treturn St(n + i.isoEpoch.year - (i.hasYearZero ? 0 : 1), r, o, \"constrain\");\n\t}\n};\nvar SameMonthDayAsGregorianBaseHelper = class extends GregorianBaseHelper {\n\tconstructor(e, t) {\n\t\tsuper(e, t);\n\t}\n\tisoToCalendarDate(e) {\n\t\tconst { year: t, month: n, day: r } = e, o = ei(n), i = t - this.anchorEra.isoEpoch.year + 1;\n\t\treturn this.completeEraYear({\n\t\t\tyear: i,\n\t\t\tmonth: n,\n\t\t\tmonthCode: o,\n\t\t\tday: r\n\t\t});\n\t}\n};\nvar ii = {\n\tinLeapYear(e) {\n\t\tconst { year: t } = e;\n\t\treturn (t + 1) % 4 == 0;\n\t},\n\tmonthsInYear: () => 13,\n\tminimumMonthLength(e) {\n\t\tconst { month: t } = e;\n\t\treturn 13 === t ? this.inLeapYear(e) ? 6 : 5 : 30;\n\t},\n\tmaximumMonthLength(e) {\n\t\treturn this.minimumMonthLength(e);\n\t},\n\tmaxLengthOfMonthCodeInAnyYear: (e) => \"M13\" === e ? 6 : 30\n};\nvar OrthodoxBaseHelperFixedEpoch = class extends GregorianBaseHelperFixedEpoch {\n\tconstructor(e, t) {\n\t\tsuper(e, t), this.inLeapYear = ii.inLeapYear, this.monthsInYear = ii.monthsInYear, this.minimumMonthLength = ii.minimumMonthLength, this.maximumMonthLength = ii.maximumMonthLength, this.maxLengthOfMonthCodeInAnyYear = ii.maxLengthOfMonthCodeInAnyYear;\n\t}\n};\nvar OrthodoxBaseHelper = class extends GregorianBaseHelper {\n\tconstructor(e, t) {\n\t\tsuper(e, t), this.inLeapYear = ii.inLeapYear, this.monthsInYear = ii.monthsInYear, this.minimumMonthLength = ii.minimumMonthLength, this.maximumMonthLength = ii.maximumMonthLength, this.maxLengthOfMonthCodeInAnyYear = ii.maxLengthOfMonthCodeInAnyYear;\n\t}\n};\nvar EthioaaHelper = class extends OrthodoxBaseHelperFixedEpoch {\n\tconstructor() {\n\t\tsuper(\"ethioaa\", {\n\t\t\tyear: -5492,\n\t\t\tmonth: 7,\n\t\t\tday: 17\n\t\t});\n\t}\n};\nvar CopticHelper = class extends OrthodoxBaseHelper {\n\tconstructor() {\n\t\tsuper(\"coptic\", [{\n\t\t\tcode: \"coptic\",\n\t\t\tisoEpoch: {\n\t\t\t\tyear: 284,\n\t\t\t\tmonth: 8,\n\t\t\t\tday: 29\n\t\t\t}\n\t\t}, {\n\t\t\tcode: \"coptic-inverse\",\n\t\t\treverseOf: \"coptic\"\n\t\t}]);\n\t}\n};\nvar EthiopicHelper = class extends OrthodoxBaseHelper {\n\tconstructor() {\n\t\tsuper(\"ethiopic\", [{\n\t\t\tcode: \"ethioaa\",\n\t\t\tnames: [\"ethiopic-amete-alem\", \"mundi\"],\n\t\t\tisoEpoch: {\n\t\t\t\tyear: -5492,\n\t\t\t\tmonth: 7,\n\t\t\t\tday: 17\n\t\t\t}\n\t\t}, {\n\t\t\tcode: \"ethiopic\",\n\t\t\tnames: [\"incar\"],\n\t\t\tisoEpoch: {\n\t\t\t\tyear: 8,\n\t\t\t\tmonth: 8,\n\t\t\t\tday: 27\n\t\t\t},\n\t\t\tanchorEpoch: { year: 5501 }\n\t\t}]);\n\t}\n};\nvar RocHelper = class extends SameMonthDayAsGregorianBaseHelper {\n\tconstructor() {\n\t\tsuper(\"roc\", [{\n\t\t\tcode: \"roc\",\n\t\t\tnames: [\"minguo\"],\n\t\t\tisoEpoch: {\n\t\t\t\tyear: 1912,\n\t\t\t\tmonth: 1,\n\t\t\t\tday: 1\n\t\t\t}\n\t\t}, {\n\t\t\tcode: \"roc-inverse\",\n\t\t\tnames: [\"before-roc\"],\n\t\t\treverseOf: \"roc\"\n\t\t}]);\n\t}\n};\nvar BuddhistHelper = class extends GregorianBaseHelperFixedEpoch {\n\tconstructor() {\n\t\tsuper(\"buddhist\", {\n\t\t\tyear: -543,\n\t\t\tmonth: 1,\n\t\t\tday: 1\n\t\t});\n\t}\n};\nvar GregoryHelper = class extends SameMonthDayAsGregorianBaseHelper {\n\tconstructor() {\n\t\tsuper(\"gregory\", [{\n\t\t\tcode: \"gregory\",\n\t\t\tnames: [\"ad\", \"ce\"],\n\t\t\tisoEpoch: {\n\t\t\t\tyear: 1,\n\t\t\t\tmonth: 1,\n\t\t\t\tday: 1\n\t\t\t}\n\t\t}, {\n\t\t\tcode: \"gregory-inverse\",\n\t\t\tnames: [\"be\", \"bce\"],\n\t\t\treverseOf: \"gregory\"\n\t\t}]);\n\t}\n\treviseIntlEra(e) {\n\t\tlet { era: t, eraYear: n } = e;\n\t\treturn \"b\" === t && (t = \"gregory-inverse\"), \"a\" === t && (t = \"gregory\"), {\n\t\t\tera: t,\n\t\t\teraYear: n\n\t\t};\n\t}\n\tgetFirstDayOfWeek() {\n\t\treturn 1;\n\t}\n\tgetMinimalDaysInFirstWeek() {\n\t\treturn 1;\n\t}\n};\nvar JapaneseHelper = class extends SameMonthDayAsGregorianBaseHelper {\n\tconstructor() {\n\t\tsuper(\"japanese\", [\n\t\t\t{\n\t\t\t\tcode: \"reiwa\",\n\t\t\t\tisoEpoch: {\n\t\t\t\t\tyear: 2019,\n\t\t\t\t\tmonth: 5,\n\t\t\t\t\tday: 1\n\t\t\t\t},\n\t\t\t\tanchorEpoch: {\n\t\t\t\t\tyear: 2019,\n\t\t\t\t\tmonth: 5,\n\t\t\t\t\tday: 1\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tcode: \"heisei\",\n\t\t\t\tisoEpoch: {\n\t\t\t\t\tyear: 1989,\n\t\t\t\t\tmonth: 1,\n\t\t\t\t\tday: 8\n\t\t\t\t},\n\t\t\t\tanchorEpoch: {\n\t\t\t\t\tyear: 1989,\n\t\t\t\t\tmonth: 1,\n\t\t\t\t\tday: 8\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tcode: \"showa\",\n\t\t\t\tisoEpoch: {\n\t\t\t\t\tyear: 1926,\n\t\t\t\t\tmonth: 12,\n\t\t\t\t\tday: 25\n\t\t\t\t},\n\t\t\t\tanchorEpoch: {\n\t\t\t\t\tyear: 1926,\n\t\t\t\t\tmonth: 12,\n\t\t\t\t\tday: 25\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tcode: \"taisho\",\n\t\t\t\tisoEpoch: {\n\t\t\t\t\tyear: 1912,\n\t\t\t\t\tmonth: 7,\n\t\t\t\t\tday: 30\n\t\t\t\t},\n\t\t\t\tanchorEpoch: {\n\t\t\t\t\tyear: 1912,\n\t\t\t\t\tmonth: 7,\n\t\t\t\t\tday: 30\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tcode: \"meiji\",\n\t\t\t\tisoEpoch: {\n\t\t\t\t\tyear: 1868,\n\t\t\t\t\tmonth: 9,\n\t\t\t\t\tday: 8\n\t\t\t\t},\n\t\t\t\tanchorEpoch: {\n\t\t\t\t\tyear: 1868,\n\t\t\t\t\tmonth: 9,\n\t\t\t\t\tday: 8\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tcode: \"japanese\",\n\t\t\t\tnames: [\n\t\t\t\t\t\"japanese\",\n\t\t\t\t\t\"gregory\",\n\t\t\t\t\t\"ad\",\n\t\t\t\t\t\"ce\"\n\t\t\t\t],\n\t\t\t\tisoEpoch: {\n\t\t\t\t\tyear: 1,\n\t\t\t\t\tmonth: 1,\n\t\t\t\t\tday: 1\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tcode: \"japanese-inverse\",\n\t\t\t\tnames: [\n\t\t\t\t\t\"japanese-inverse\",\n\t\t\t\t\t\"gregory-inverse\",\n\t\t\t\t\t\"bc\",\n\t\t\t\t\t\"bce\"\n\t\t\t\t],\n\t\t\t\treverseOf: \"japanese\"\n\t\t\t}\n\t\t]), this.erasBeginMidYear = !0;\n\t}\n\treviseIntlEra(e, t) {\n\t\tconst { era: n, eraYear: r } = e, { year: o } = t;\n\t\treturn this.eras.find(((e) => e.code === n)) ? {\n\t\t\tera: n,\n\t\t\teraYear: r\n\t\t} : o < 1 ? {\n\t\t\tera: \"japanese-inverse\",\n\t\t\teraYear: 1 - o\n\t\t} : {\n\t\t\tera: \"japanese\",\n\t\t\teraYear: o\n\t\t};\n\t}\n};\nvar ChineseBaseHelper = class extends HelperBase {\n\tconstructor() {\n\t\tsuper(...arguments), this.calendarType = \"lunisolar\";\n\t}\n\tinLeapYear(e, t) {\n\t\tconst n = this.getMonthList(e.year, t);\n\t\treturn 13 === Object.entries(n).length;\n\t}\n\tmonthsInYear(e, t) {\n\t\treturn this.inLeapYear(e, t) ? 13 : 12;\n\t}\n\tminimumMonthLength() {\n\t\treturn 29;\n\t}\n\tmaximumMonthLength() {\n\t\treturn 30;\n\t}\n\tmaxLengthOfMonthCodeInAnyYear(e) {\n\t\treturn [\n\t\t\t\"M01L\",\n\t\t\t\"M09L\",\n\t\t\t\"M10L\",\n\t\t\t\"M11L\",\n\t\t\t\"M12L\"\n\t\t].includes(e) ? 29 : 30;\n\t}\n\tmonthDaySearchStartYear(e, t) {\n\t\tconst n = {\n\t\t\tM01L: [1651, 1651],\n\t\t\tM02L: [1947, 1765],\n\t\t\tM03L: [1966, 1955],\n\t\t\tM04L: [1963, 1944],\n\t\t\tM05L: [1971, 1952],\n\t\t\tM06L: [1960, 1941],\n\t\t\tM07L: [1968, 1938],\n\t\t\tM08L: [1957, 1718],\n\t\t\tM09L: [1832, 1832],\n\t\t\tM10L: [1870, 1870],\n\t\t\tM11L: [1814, 1814],\n\t\t\tM12L: [1890, 1890]\n\t\t}[e] ?? [1972, 1972];\n\t\treturn t < 30 ? n[0] : n[1];\n\t}\n\tgetMonthList(e, t) {\n\t\tif (void 0 === e) throw new TypeError(\"Missing year\");\n\t\tconst n = JSON.stringify({\n\t\t\tfunc: \"getMonthList\",\n\t\t\tcalendarYear: e,\n\t\t\tid: this.id\n\t\t}), r = t.get(n);\n\t\tif (r) return r;\n\t\tconst o = this.getFormatter(), i = (e, t) => {\n\t\t\tconst n = ni({\n\t\t\t\tisoYear: e,\n\t\t\t\tisoMonth: 2,\n\t\t\t\tisoDay: 1\n\t\t\t}), r = new Date(n);\n\t\t\tr.setUTCDate(t + 1);\n\t\t\tconst i = o.formatToParts(r), a = i.find(((e) => \"month\" === e.type)).value, s = +i.find(((e) => \"day\" === e.type)).value, c = i.find(((e) => \"relatedYear\" === e.type));\n\t\t\tlet d;\n\t\t\tif (void 0 === c) throw new RangeError(`Intl.DateTimeFormat.formatToParts lacks relatedYear in ${this.id} calendar. Try Node 14+ or modern browsers.`);\n\t\t\treturn d = +c.value, {\n\t\t\t\tcalendarMonthString: a,\n\t\t\t\tcalendarDay: s,\n\t\t\t\tcalendarYearToVerify: d\n\t\t\t};\n\t\t};\n\t\tlet a = 17, { calendarMonthString: s, calendarDay: c, calendarYearToVerify: d } = i(e, a);\n\t\t\"1\" !== s && (a += 29, {calendarMonthString: s, calendarDay: c} = i(e, a)), a -= c - 5;\n\t\tconst h = {};\n\t\tlet u, l, m = 1, f = !1;\n\t\tdo\n\t\t\t({calendarMonthString: s, calendarDay: c, calendarYearToVerify: d} = i(e, a)), u && (h[l].daysInMonth = u + 30 - c), d !== e ? f = !0 : (h[s] = { monthIndex: m++ }, a += 30), u = c, l = s;\n\t\twhile (!f);\n\t\treturn h[l].daysInMonth = u + 30 - c, t.set(n, h), h;\n\t}\n\testimateIsoDate(e) {\n\t\tconst { year: t, month: n } = e;\n\t\treturn {\n\t\t\tyear: t,\n\t\t\tmonth: n >= 12 ? 12 : n + 1,\n\t\t\tday: 1\n\t\t};\n\t}\n\tadjustCalendarDate(e, t, n = \"constrain\", r = !1) {\n\t\tlet { year: o, month: i, monthExtra: a, day: s, monthCode: c } = e;\n\t\tif (void 0 === o) throw new TypeError(\"Missing property: year\");\n\t\tif (r) {\n\t\t\tif (a && \"bis\" !== a) throw new RangeError(`Unexpected leap month suffix: ${a}`);\n\t\t\tconst e = ei(i, void 0 !== a), n = `${i}${a || \"\"}`, r = this.getMonthList(o, t)[n];\n\t\t\tif (void 0 === r) throw new RangeError(`Unmatched month ${n} in Chinese year ${o}`);\n\t\t\treturn i = r.monthIndex, {\n\t\t\t\tyear: o,\n\t\t\t\tmonth: i,\n\t\t\t\tday: s,\n\t\t\t\tmonthCode: e\n\t\t\t};\n\t\t}\n\t\tif (this.validateCalendarDate(e), void 0 === i) {\n\t\t\tconst e = this.getMonthList(o, t);\n\t\t\tlet r = c.replace(/^M|L$/g, ((e) => \"L\" === e ? \"bis\" : \"\"));\n\t\t\t\"0\" === r[0] && (r = r.slice(1));\n\t\t\tlet a = e[r];\n\t\t\tif (i = a && a.monthIndex, void 0 === i && c.endsWith(\"L\") && \"M13L\" != c && \"constrain\" === n) {\n\t\t\t\tconst t = +c.replace(/^M0?|L$/g, \"\");\n\t\t\t\ta = e[t], a && (i = a.monthIndex, c = ei(t));\n\t\t\t}\n\t\t\tif (void 0 === i) throw new RangeError(`Unmatched month ${c} in Chinese year ${o}`);\n\t\t} else if (void 0 === c) {\n\t\t\tconst e = this.getMonthList(o, t), r = Object.entries(e), a = r.length;\n\t\t\t\"reject\" === n ? (Nr(i, 1, a), Nr(s, 1, this.maximumMonthLength())) : (i = jr(i, 1, a), s = jr(s, 1, this.maximumMonthLength()));\n\t\t\tconst d = r.find(((e) => e[1].monthIndex === i));\n\t\t\tif (void 0 === d) throw new RangeError(`Invalid month ${i} in Chinese year ${o}`);\n\t\t\tc = ei(+d[0].replace(\"bis\", \"\"), -1 !== d[0].indexOf(\"bis\"));\n\t\t} else {\n\t\t\tconst e = this.getMonthList(o, t);\n\t\t\tlet n = c.replace(/^M|L$/g, ((e) => \"L\" === e ? \"bis\" : \"\"));\n\t\t\t\"0\" === n[0] && (n = n.slice(1));\n\t\t\tconst r = e[n];\n\t\t\tif (!r) throw new RangeError(`Unmatched monthCode ${c} in Chinese year ${o}`);\n\t\t\tif (i !== r.monthIndex) throw new RangeError(`monthCode ${c} doesn't correspond to month ${i} in Chinese year ${o}`);\n\t\t}\n\t\treturn {\n\t\t\t...e,\n\t\t\tyear: o,\n\t\t\tmonth: i,\n\t\t\tmonthCode: c,\n\t\t\tday: s\n\t\t};\n\t}\n};\nvar ChineseHelper = class extends ChineseBaseHelper {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"chinese\";\n\t}\n};\nvar DangiHelper = class extends ChineseBaseHelper {\n\tconstructor() {\n\t\tsuper(...arguments), this.id = \"dangi\";\n\t}\n};\nvar NonIsoCalendar = class {\n\tconstructor(e) {\n\t\tthis.helper = e;\n\t}\n\textraFields(e) {\n\t\treturn this.helper.hasEra && e.includes(\"year\") ? [\"era\", \"eraYear\"] : [];\n\t}\n\tresolveFields(e) {\n\t\tif (\"lunisolar\" !== this.helper.calendarType) {\n\t\t\tconst t = new OneObjectCache();\n\t\t\tti(e, void 0, this.helper.monthsInYear({ year: e.year ?? 1972 }, t));\n\t\t}\n\t}\n\tdateToISO(e, t) {\n\t\tconst n = new OneObjectCache(), r = this.helper.calendarToIsoDate(e, t, n);\n\t\treturn n.setObject(r), r;\n\t}\n\tmonthDayToISOReferenceDate(e, t) {\n\t\tconst n = new OneObjectCache(), r = this.helper.monthDayFromFields(e, t, n);\n\t\treturn n.setObject(r), r;\n\t}\n\tfieldKeysToIgnore(e) {\n\t\tconst t = /* @__PURE__ */ new Set();\n\t\tfor (let n = 0; n < e.length; n++) {\n\t\t\tconst r = e[n];\n\t\t\tswitch (t.add(r), r) {\n\t\t\t\tcase \"era\":\n\t\t\t\t\tt.add(\"eraYear\"), t.add(\"year\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"eraYear\":\n\t\t\t\t\tt.add(\"era\"), t.add(\"year\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"year\":\n\t\t\t\t\tt.add(\"era\"), t.add(\"eraYear\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"month\":\n\t\t\t\t\tt.add(\"monthCode\"), this.helper.erasBeginMidYear && (t.add(\"era\"), t.add(\"eraYear\"));\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"monthCode\":\n\t\t\t\t\tt.add(\"month\"), this.helper.erasBeginMidYear && (t.add(\"era\"), t.add(\"eraYear\"));\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"day\": this.helper.erasBeginMidYear && (t.add(\"era\"), t.add(\"eraYear\"));\n\t\t\t}\n\t\t}\n\t\treturn Go(t);\n\t}\n\tdateAdd(e, { years: t, months: n, weeks: r, days: o }, i) {\n\t\tconst a = OneObjectCache.getCacheForObject(e), s = this.helper.isoToCalendarDate(e, a), c = this.helper.addCalendar(s, {\n\t\t\tyears: t,\n\t\t\tmonths: n,\n\t\t\tweeks: r,\n\t\t\tdays: o\n\t\t}, i, a), d = this.helper.calendarToIsoDate(c, \"constrain\", a);\n\t\treturn OneObjectCache.getCacheForObject(d) || new OneObjectCache(a).setObject(d), d;\n\t}\n\tdateUntil(e, t, n) {\n\t\tconst r = OneObjectCache.getCacheForObject(e), o = OneObjectCache.getCacheForObject(t), i = this.helper.isoToCalendarDate(e, r), a = this.helper.isoToCalendarDate(t, o);\n\t\treturn this.helper.untilCalendar(i, a, n, r);\n\t}\n\tisoToDate(e, t) {\n\t\tconst n = OneObjectCache.getCacheForObject(e), r = this.helper.isoToCalendarDate(e, n);\n\t\tif (t.dayOfWeek && (r.dayOfWeek = Xo.iso8601.isoToDate(e, { dayOfWeek: !0 }).dayOfWeek), t.dayOfYear) {\n\t\t\tconst e = this.helper.startOfCalendarYear(r);\n\t\t\tr.dayOfYear = this.helper.calendarDaysUntil(e, r, n) + 1;\n\t\t}\n\t\tif (t.weekOfYear && (r.weekOfYear = Ko(this.helper.id, e)), r.daysInWeek = 7, t.daysInMonth && (r.daysInMonth = this.helper.daysInMonth(r, n)), t.daysInYear) {\n\t\t\tconst e = this.helper.startOfCalendarYear(r), t = this.helper.addCalendar(e, { years: 1 }, \"constrain\", n);\n\t\t\tr.daysInYear = this.helper.calendarDaysUntil(e, t, n);\n\t\t}\n\t\treturn t.monthsInYear && (r.monthsInYear = this.helper.monthsInYear(r, n)), t.inLeapYear && (r.inLeapYear = this.helper.inLeapYear(r, n)), r;\n\t}\n\tgetFirstDayOfWeek() {\n\t\treturn this.helper.getFirstDayOfWeek();\n\t}\n\tgetMinimalDaysInFirstWeek() {\n\t\treturn this.helper.getMinimalDaysInFirstWeek();\n\t}\n};\nfor (const e of [\n\tHebrewHelper,\n\tPersianHelper,\n\tEthiopicHelper,\n\tEthioaaHelper,\n\tCopticHelper,\n\tChineseHelper,\n\tDangiHelper,\n\tRocHelper,\n\tIndianHelper,\n\tBuddhistHelper,\n\tGregoryHelper,\n\tJapaneseHelper,\n\tIslamicHelper,\n\tIslamicUmalquraHelper,\n\tIslamicTblaHelper,\n\tIslamicCivilHelper,\n\tIslamicRgsaHelper,\n\tIslamicCcHelper\n]) {\n\tconst t = new e();\n\tXo[t.id] = new NonIsoCalendar(t);\n}\nse(\"calendarImpl\", (function(e) {\n\treturn Xo[e];\n}));\nvar ai = Intl.DateTimeFormat;\nfunction si(e, t) {\n\tlet n = re(e, t);\n\treturn \"function\" == typeof n && (n = new ai(re(e, G), n(re(e, K))), function(e, t, n) {\n\t\tconst r = Q(e);\n\t\tif (void 0 === r) throw new TypeError(\"Missing slots for the given container\");\n\t\tif (void 0 === r[t]) throw new TypeError(`tried to reset ${t} which was not set`);\n\t\tr[t] = n;\n\t}(e, t, n)), n;\n}\nfunction ci(e) {\n\treturn ne(e, q);\n}\nvar DateTimeFormatImpl = class {\n\tconstructor(e = void 0, t = void 0) {\n\t\t(function(e, t, n) {\n\t\t\tconst r = void 0 !== n;\n\t\t\tlet o;\n\t\t\tif (r) {\n\t\t\t\tconst e = [\n\t\t\t\t\t\"localeMatcher\",\n\t\t\t\t\t\"calendar\",\n\t\t\t\t\t\"numberingSystem\",\n\t\t\t\t\t\"hour12\",\n\t\t\t\t\t\"hourCycle\",\n\t\t\t\t\t\"timeZone\",\n\t\t\t\t\t\"weekday\",\n\t\t\t\t\t\"era\",\n\t\t\t\t\t\"year\",\n\t\t\t\t\t\"month\",\n\t\t\t\t\t\"day\",\n\t\t\t\t\t\"dayPeriod\",\n\t\t\t\t\t\"hour\",\n\t\t\t\t\t\"minute\",\n\t\t\t\t\t\"second\",\n\t\t\t\t\t\"fractionalSecondDigits\",\n\t\t\t\t\t\"timeZoneName\",\n\t\t\t\t\t\"formatMatcher\",\n\t\t\t\t\t\"dateStyle\",\n\t\t\t\t\t\"timeStyle\"\n\t\t\t\t];\n\t\t\t\to = function(e) {\n\t\t\t\t\tif (null == e) throw new TypeError(`Expected object not ${e}`);\n\t\t\t\t\treturn Object(e);\n\t\t\t\t}(n);\n\t\t\t\tconst t = Object.create(null);\n\t\t\t\tfor (let n = 0; n < e.length; n++) {\n\t\t\t\t\tconst r = e[n];\n\t\t\t\t\tObject.prototype.hasOwnProperty.call(o, r) && (t[r] = o[r]);\n\t\t\t\t}\n\t\t\t\to = t;\n\t\t\t} else o = Object.create(null);\n\t\t\tconst i = new ai(t, o), a = i.resolvedOptions();\n\t\t\tif (te(e), r) {\n\t\t\t\tconst t = Object.assign(Object.create(null), a);\n\t\t\t\tfor (const e in t) Object.prototype.hasOwnProperty.call(o, e) || delete t[e];\n\t\t\t\tt.hour12 = o.hour12, t.hourCycle = o.hourCycle, oe(e, K, t);\n\t\t\t} else oe(e, K, o);\n\t\t\toe(e, G, a.locale), oe(e, q, i), oe(e, W, a.timeZone), oe(e, J, a.calendar), oe(e, B, vi), oe(e, Z, gi), oe(e, F, wi), oe(e, H, pi), oe(e, z, bi), oe(e, A, Di);\n\t\t\tconst s = r ? o.timeZone : void 0;\n\t\t\tif (void 0 === s) oe(e, _, a.timeZone);\n\t\t\telse {\n\t\t\t\tconst t = We(s);\n\t\t\t\tif (t.startsWith(\"−\")) throw new RangeError(\"Unicode minus (U+2212) is not supported in time zone offsets\");\n\t\t\t\toe(e, _, Bn(t));\n\t\t\t}\n\t\t})(this, e, t);\n\t}\n\tget format() {\n\t\tvt(this, ci);\n\t\tconst e = ui.bind(this);\n\t\treturn Object.defineProperties(e, {\n\t\t\tlength: {\n\t\t\t\tvalue: 1,\n\t\t\t\tenumerable: !1,\n\t\t\t\twritable: !1,\n\t\t\t\tconfigurable: !0\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tvalue: \"\",\n\t\t\t\tenumerable: !1,\n\t\t\t\twritable: !1,\n\t\t\t\tconfigurable: !0\n\t\t\t}\n\t\t}), e;\n\t}\n\tformatRange(e, t) {\n\t\treturn vt(this, ci), mi.call(this, e, t);\n\t}\n\tformatToParts(e, ...t) {\n\t\treturn vt(this, ci), li.call(this, e, ...t);\n\t}\n\tformatRangeToParts(e, t) {\n\t\treturn vt(this, ci), fi.call(this, e, t);\n\t}\n\tresolvedOptions() {\n\t\treturn vt(this, ci), hi.call(this);\n\t}\n};\n\"formatToParts\" in ai.prototype || delete DateTimeFormatImpl.prototype.formatToParts, \"formatRangeToParts\" in ai.prototype || delete DateTimeFormatImpl.prototype.formatRangeToParts;\nvar di = function(e = void 0, t = void 0) {\n\treturn new DateTimeFormatImpl(e, t);\n};\nfunction hi() {\n\tconst e = re(this, q).resolvedOptions();\n\treturn e.timeZone = re(this, _), e;\n}\nfunction ui(e, ...t) {\n\tlet n, r, o = $i(e, this);\n\treturn o.formatter ? (n = o.formatter, r = [No(o.epochNs, \"floor\")]) : (n = re(this, q), r = [e, ...t]), n.format(...r);\n}\nfunction li(e, ...t) {\n\tlet n, r, o = $i(e, this);\n\treturn o.formatter ? (n = o.formatter, r = [No(o.epochNs, \"floor\")]) : (n = re(this, q), r = [e, ...t]), n.formatToParts(...r);\n}\nfunction mi(e, t) {\n\tif (void 0 === e || void 0 === t) throw new TypeError(\"Intl.DateTimeFormat.formatRange requires two values\");\n\tconst n = Ci(e), r = Ci(t);\n\tlet o, i = [n, r];\n\tif (Ii(n) !== Ii(r)) throw new TypeError(\"Intl.DateTimeFormat.formatRange accepts two values of the same type\");\n\tif (Ii(n)) {\n\t\tif (!Oi(n, r)) throw new TypeError(\"Intl.DateTimeFormat.formatRange accepts two values of the same type\");\n\t\tconst { epochNs: e, formatter: t } = $i(n, this), { epochNs: a, formatter: s } = $i(r, this);\n\t\tt && (o = t, i = [No(e, \"floor\"), No(a, \"floor\")]);\n\t}\n\treturn o || (o = re(this, q)), o.formatRange(...i);\n}\nfunction fi(e, t) {\n\tif (void 0 === e || void 0 === t) throw new TypeError(\"Intl.DateTimeFormat.formatRange requires two values\");\n\tconst n = Ci(e), r = Ci(t);\n\tlet o, i = [n, r];\n\tif (Ii(n) !== Ii(r)) throw new TypeError(\"Intl.DateTimeFormat.formatRangeToParts accepts two values of the same type\");\n\tif (Ii(n)) {\n\t\tif (!Oi(n, r)) throw new TypeError(\"Intl.DateTimeFormat.formatRangeToParts accepts two values of the same type\");\n\t\tconst { epochNs: e, formatter: t } = $i(n, this), { epochNs: a, formatter: s } = $i(r, this);\n\t\tt && (o = t, i = [No(e, \"floor\"), No(a, \"floor\")]);\n\t}\n\treturn o || (o = re(this, q)), o.formatRangeToParts(...i);\n}\nfunction yi(e = {}, t = {}) {\n\tconst n = Object.assign({}, e), r = [\n\t\t\"year\",\n\t\t\"month\",\n\t\t\"day\",\n\t\t\"hour\",\n\t\t\"minute\",\n\t\t\"second\",\n\t\t\"weekday\",\n\t\t\"dayPeriod\",\n\t\t\"timeZoneName\",\n\t\t\"dateStyle\",\n\t\t\"timeStyle\"\n\t];\n\tfor (let e = 0; e < r.length; e++) {\n\t\tconst o = r[e];\n\t\tn[o] = o in t ? t[o] : n[o], !1 !== n[o] && void 0 !== n[o] || delete n[o];\n\t}\n\treturn n;\n}\nfunction pi(e) {\n\tconst t = yi(e, {\n\t\tyear: !1,\n\t\tmonth: !1,\n\t\tday: !1,\n\t\tweekday: !1,\n\t\ttimeZoneName: !1,\n\t\tdateStyle: !1\n\t});\n\tif (\"long\" !== t.timeStyle && \"full\" !== t.timeStyle || (delete t.timeStyle, Object.assign(t, {\n\t\thour: \"numeric\",\n\t\tminute: \"2-digit\",\n\t\tsecond: \"2-digit\"\n\t})), !Mi(t)) {\n\t\tif (Ei(e)) throw new TypeError(`cannot format Temporal.PlainTime with options [${Object.keys(e)}]`);\n\t\tObject.assign(t, {\n\t\t\thour: \"numeric\",\n\t\t\tminute: \"numeric\",\n\t\t\tsecond: \"numeric\"\n\t\t});\n\t}\n\treturn t;\n}\nfunction gi(e) {\n\tconst t = {\n\t\tshort: {\n\t\t\tyear: \"2-digit\",\n\t\t\tmonth: \"numeric\"\n\t\t},\n\t\tmedium: {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"short\"\n\t\t},\n\t\tlong: {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"long\"\n\t\t},\n\t\tfull: {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"long\"\n\t\t}\n\t}, n = yi(e, {\n\t\tday: !1,\n\t\thour: !1,\n\t\tminute: !1,\n\t\tsecond: !1,\n\t\tweekday: !1,\n\t\tdayPeriod: !1,\n\t\ttimeZoneName: !1,\n\t\ttimeStyle: !1\n\t});\n\tif (\"dateStyle\" in n && n.dateStyle) {\n\t\tconst e = n.dateStyle;\n\t\tdelete n.dateStyle, Object.assign(n, t[e]);\n\t}\n\tif (!(\"year\" in n || \"month\" in n || \"era\" in n)) {\n\t\tif (Ei(e)) throw new TypeError(`cannot format PlainYearMonth with options [${Object.keys(e)}]`);\n\t\tObject.assign(n, {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"numeric\"\n\t\t});\n\t}\n\treturn n;\n}\nfunction wi(e) {\n\tconst t = {\n\t\tshort: {\n\t\t\tmonth: \"numeric\",\n\t\t\tday: \"numeric\"\n\t\t},\n\t\tmedium: {\n\t\t\tmonth: \"short\",\n\t\t\tday: \"numeric\"\n\t\t},\n\t\tlong: {\n\t\t\tmonth: \"long\",\n\t\t\tday: \"numeric\"\n\t\t},\n\t\tfull: {\n\t\t\tmonth: \"long\",\n\t\t\tday: \"numeric\"\n\t\t}\n\t}, n = yi(e, {\n\t\tyear: !1,\n\t\thour: !1,\n\t\tminute: !1,\n\t\tsecond: !1,\n\t\tweekday: !1,\n\t\tdayPeriod: !1,\n\t\ttimeZoneName: !1,\n\t\ttimeStyle: !1\n\t});\n\tif (\"dateStyle\" in n && n.dateStyle) {\n\t\tconst e = n.dateStyle;\n\t\tdelete n.dateStyle, Object.assign(n, t[e]);\n\t}\n\tif (!(\"month\" in n) && !(\"day\" in n)) {\n\t\tif (Ei(e)) throw new TypeError(`cannot format PlainMonthDay with options [${Object.keys(e)}]`);\n\t\tObject.assign(n, {\n\t\t\tmonth: \"numeric\",\n\t\t\tday: \"numeric\"\n\t\t});\n\t}\n\treturn n;\n}\nfunction vi(e) {\n\tconst t = yi(e, {\n\t\thour: !1,\n\t\tminute: !1,\n\t\tsecond: !1,\n\t\tdayPeriod: !1,\n\t\ttimeZoneName: !1,\n\t\ttimeStyle: !1\n\t});\n\tif (!Ti(t)) {\n\t\tif (Ei(e)) throw new TypeError(`cannot format PlainDate with options [${Object.keys(e)}]`);\n\t\tObject.assign(t, {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"numeric\",\n\t\t\tday: \"numeric\"\n\t\t});\n\t}\n\treturn t;\n}\nfunction bi(e) {\n\tconst t = yi(e, { timeZoneName: !1 });\n\tif ((\"long\" === t.timeStyle || \"full\" === t.timeStyle) && (delete t.timeStyle, Object.assign(t, {\n\t\thour: \"numeric\",\n\t\tminute: \"2-digit\",\n\t\tsecond: \"2-digit\"\n\t}), t.dateStyle)) Object.assign(t, {\n\t\tshort: {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"numeric\",\n\t\t\tday: \"numeric\"\n\t\t},\n\t\tmedium: {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"short\",\n\t\t\tday: \"numeric\"\n\t\t},\n\t\tlong: {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"long\",\n\t\t\tday: \"numeric\"\n\t\t},\n\t\tfull: {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"long\",\n\t\t\tday: \"numeric\",\n\t\t\tweekday: \"long\"\n\t\t}\n\t}[t.dateStyle]), delete t.dateStyle;\n\tif (!Mi(t) && !Ti(t)) {\n\t\tif (Ei(e)) throw new TypeError(`cannot format PlainDateTime with options [${Object.keys(e)}]`);\n\t\tObject.assign(t, {\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"numeric\",\n\t\t\tday: \"numeric\",\n\t\t\thour: \"numeric\",\n\t\t\tminute: \"numeric\",\n\t\t\tsecond: \"numeric\"\n\t\t});\n\t}\n\treturn t;\n}\nfunction Di(e) {\n\tlet t = e;\n\treturn Mi(t) || Ti(t) || (t = Object.assign({}, t, {\n\t\tyear: \"numeric\",\n\t\tmonth: \"numeric\",\n\t\tday: \"numeric\",\n\t\thour: \"numeric\",\n\t\tminute: \"numeric\",\n\t\tsecond: \"numeric\"\n\t})), t;\n}\nfunction Ti(e) {\n\treturn \"year\" in e || \"month\" in e || \"day\" in e || \"weekday\" in e || \"dateStyle\" in e || \"era\" in e;\n}\nfunction Mi(e) {\n\treturn \"hour\" in e || \"minute\" in e || \"second\" in e || \"timeStyle\" in e || \"dayPeriod\" in e || \"fractionalSecondDigits\" in e;\n}\nfunction Ei(e) {\n\treturn Ti(e) || Mi(e) || \"dateStyle\" in e || \"timeStyle\" in e || \"timeZoneName\" in e;\n}\nfunction Ii(e) {\n\treturn mt(e) || ft(e) || yt(e) || wt(e) || pt(e) || gt(e) || ut(e);\n}\nfunction Ci(e) {\n\treturn Ii(e) ? e : qe(e);\n}\nfunction Oi(e, t) {\n\treturn !(!Ii(e) || !Ii(t) || ft(e) && !ft(t) || mt(e) && !mt(t) || yt(e) && !yt(t) || wt(e) && !wt(t) || pt(e) && !pt(t) || gt(e) && !gt(t) || ut(e) && !ut(t));\n}\nfunction $i(e, t) {\n\tif (ft(e)) {\n\t\tconst n = {\n\t\t\tisoDate: {\n\t\t\t\tyear: 1970,\n\t\t\t\tmonth: 1,\n\t\t\t\tday: 1\n\t\t\t},\n\t\t\ttime: re(e, M)\n\t\t};\n\t\treturn {\n\t\t\tepochNs: An(re(t, W), n, \"compatible\"),\n\t\t\tformatter: si(t, H)\n\t\t};\n\t}\n\tif (pt(e)) {\n\t\tconst n = re(e, E), r = re(t, J);\n\t\tif (n !== r) throw new RangeError(`cannot format PlainYearMonth with calendar ${n} in locale with calendar ${r}`);\n\t\tconst o = xt(re(e, D), {\n\t\t\tdeltaDays: 0,\n\t\t\thour: 12,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t});\n\t\treturn {\n\t\t\tepochNs: An(re(t, W), o, \"compatible\"),\n\t\t\tformatter: si(t, Z)\n\t\t};\n\t}\n\tif (gt(e)) {\n\t\tconst n = re(e, E), r = re(t, J);\n\t\tif (n !== r) throw new RangeError(`cannot format PlainMonthDay with calendar ${n} in locale with calendar ${r}`);\n\t\tconst o = xt(re(e, D), {\n\t\t\tdeltaDays: 0,\n\t\t\thour: 12,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t});\n\t\treturn {\n\t\t\tepochNs: An(re(t, W), o, \"compatible\"),\n\t\t\tformatter: si(t, F)\n\t\t};\n\t}\n\tif (mt(e)) {\n\t\tconst n = re(e, E), r = re(t, J);\n\t\tif (\"iso8601\" !== n && n !== r) throw new RangeError(`cannot format PlainDate with calendar ${n} in locale with calendar ${r}`);\n\t\tconst o = xt(re(e, D), {\n\t\t\tdeltaDays: 0,\n\t\t\thour: 12,\n\t\t\tminute: 0,\n\t\t\tsecond: 0,\n\t\t\tmillisecond: 0,\n\t\t\tmicrosecond: 0,\n\t\t\tnanosecond: 0\n\t\t});\n\t\treturn {\n\t\t\tepochNs: An(re(t, W), o, \"compatible\"),\n\t\t\tformatter: si(t, B)\n\t\t};\n\t}\n\tif (yt(e)) {\n\t\tconst n = re(e, E), r = re(t, J);\n\t\tif (\"iso8601\" !== n && n !== r) throw new RangeError(`cannot format PlainDateTime with calendar ${n} in locale with calendar ${r}`);\n\t\tconst o = re(e, T);\n\t\treturn {\n\t\t\tepochNs: An(re(t, W), o, \"compatible\"),\n\t\t\tformatter: si(t, z)\n\t\t};\n\t}\n\tif (wt(e)) throw new TypeError(\"Temporal.ZonedDateTime not supported in DateTimeFormat methods. Use toLocaleString() instead.\");\n\treturn ut(e) ? {\n\t\tepochNs: re(e, b),\n\t\tformatter: si(t, A)\n\t} : {};\n}\nfunction Yi(e) {\n\tconst t = Object.create(null);\n\treturn t.years = re(e, Y), t.months = re(e, R), t.weeks = re(e, S), t.days = re(e, j), t.hours = re(e, k), t.minutes = re(e, N), t.seconds = re(e, x), t.milliseconds = re(e, L), t.microseconds = re(e, P), t.nanoseconds = re(e, U), t;\n}\nDateTimeFormatImpl.prototype.constructor = di, Object.defineProperty(di, \"prototype\", {\n\tvalue: DateTimeFormatImpl.prototype,\n\twritable: !1,\n\tenumerable: !1,\n\tconfigurable: !1\n}), di.supportedLocalesOf = ai.supportedLocalesOf, ae(di, \"Intl.DateTimeFormat\");\nvar { format: Ri, formatToParts: Si } = Intl.DurationFormat?.prototype ?? Object.create(null);\nfunction ji(e) {\n\tIntl.DurationFormat.prototype.resolvedOptions.call(this);\n\tconst t = Yi(sn(e));\n\treturn Ri.call(this, t);\n}\nIntl.DurationFormat?.prototype && (Intl.DurationFormat.prototype.format = ji, Intl.DurationFormat.prototype.formatToParts = function(e) {\n\tIntl.DurationFormat.prototype.resolvedOptions.call(this);\n\tconst t = Yi(sn(e));\n\treturn Si.call(this, t);\n});\nObject.freeze({\n\t__proto__: null,\n\tDateTimeFormat: di,\n\tModifiedIntlDurationFormatPrototypeFormat: ji\n});\nvar Instant = class {\n\tconstructor(e) {\n\t\tif (arguments.length < 1) throw new TypeError(\"missing argument: epochNanoseconds is required\");\n\t\tIn(this, Lo(e));\n\t}\n\tget epochMilliseconds() {\n\t\treturn vt(this, ut), No(re(this, b), \"floor\");\n\t}\n\tget epochNanoseconds() {\n\t\treturn vt(this, ut), ko(import_jsbi_umd.default.BigInt(re(this, b)));\n\t}\n\tadd(e) {\n\t\treturn vt(this, ut), wo(\"add\", this, e);\n\t}\n\tsubtract(e) {\n\t\treturn vt(this, ut), wo(\"subtract\", this, e);\n\t}\n\tuntil(e, t = void 0) {\n\t\treturn vt(this, ut), so(\"until\", this, e, t);\n\t}\n\tsince(e, t = void 0) {\n\t\treturn vt(this, ut), so(\"since\", this, e, t);\n\t}\n\tround(e) {\n\t\tif (vt(this, ut), void 0 === e) throw new TypeError(\"options parameter is required\");\n\t\tconst t = \"string\" == typeof e ? Fo(\"smallestUnit\", e) : Zo(e), n = Ft(t), r = Ut(t, \"halfExpand\"), o = Wt(t, \"smallestUnit\", \"time\", qt);\n\t\treturn Ht(n, {\n\t\t\thour: 24,\n\t\t\tminute: 1440,\n\t\t\tsecond: 86400,\n\t\t\tmillisecond: 864e5,\n\t\t\tmicrosecond: 864e8,\n\t\t\tnanosecond: 864e11\n\t\t}[o], !0), Cn(Io(re(this, b), n, o, r));\n\t}\n\tequals(t) {\n\t\tvt(this, ut);\n\t\tconst n = cn(t), r = re(this, b), o = re(n, b);\n\t\treturn import_jsbi_umd.default.equal(import_jsbi_umd.default.BigInt(r), import_jsbi_umd.default.BigInt(o));\n\t}\n\ttoString(e = void 0) {\n\t\tvt(this, ut);\n\t\tconst t = Zo(e), n = zt(t), r = Ut(t, \"trunc\"), o = Wt(t, \"smallestUnit\", \"time\", void 0);\n\t\tif (\"hour\" === o) throw new RangeError(\"smallestUnit must be a time unit other than \\\"hour\\\"\");\n\t\tlet i = t.timeZone;\n\t\tvoid 0 !== i && (i = Bn(i));\n\t\tconst { precision: a, unit: s, increment: c } = At(o, n);\n\t\treturn Xn(Cn(Io(re(this, b), c, s, r)), i, a);\n\t}\n\ttoJSON() {\n\t\treturn vt(this, ut), Xn(this, void 0, \"auto\");\n\t}\n\ttoLocaleString(e = void 0, t = void 0) {\n\t\treturn vt(this, ut), new di(e, t).format(this);\n\t}\n\tvalueOf() {\n\t\tqo(\"Instant\");\n\t}\n\ttoZonedDateTimeISO(e) {\n\t\tvt(this, ut);\n\t\tconst t = Bn(e);\n\t\treturn $n(re(this, b), t, \"iso8601\");\n\t}\n\tstatic fromEpochMilliseconds(e) {\n\t\treturn Cn(xo(qe(e)));\n\t}\n\tstatic fromEpochNanoseconds(e) {\n\t\treturn Cn(Lo(e));\n\t}\n\tstatic from(e) {\n\t\treturn cn(e);\n\t}\n\tstatic compare(t, n) {\n\t\tconst r = cn(t), o = cn(n), i = re(r, b), a = re(o, b);\n\t\treturn import_jsbi_umd.default.lessThan(i, a) ? -1 : import_jsbi_umd.default.greaterThan(i, a) ? 1 : 0;\n\t}\n};\nae(Instant, \"Temporal.Instant\");\nvar PlainDate = class {\n\tconstructor(e, t, n, r = \"iso8601\") {\n\t\tconst o = _e(e), i = _e(t), a = _e(n), s = zo(void 0 === r ? \"iso8601\" : Ve(r));\n\t\txr(o, i, a), yn(this, {\n\t\t\tyear: o,\n\t\t\tmonth: i,\n\t\t\tday: a\n\t\t}, s);\n\t}\n\tget calendarId() {\n\t\treturn vt(this, mt), re(this, E);\n\t}\n\tget era() {\n\t\treturn Ni(this, \"era\");\n\t}\n\tget eraYear() {\n\t\treturn Ni(this, \"eraYear\");\n\t}\n\tget year() {\n\t\treturn Ni(this, \"year\");\n\t}\n\tget month() {\n\t\treturn Ni(this, \"month\");\n\t}\n\tget monthCode() {\n\t\treturn Ni(this, \"monthCode\");\n\t}\n\tget day() {\n\t\treturn Ni(this, \"day\");\n\t}\n\tget dayOfWeek() {\n\t\treturn Ni(this, \"dayOfWeek\");\n\t}\n\tget dayOfYear() {\n\t\treturn Ni(this, \"dayOfYear\");\n\t}\n\tget weekOfYear() {\n\t\treturn Ni(this, \"weekOfYear\")?.week;\n\t}\n\tget yearOfWeek() {\n\t\treturn Ni(this, \"weekOfYear\")?.year;\n\t}\n\tget daysInWeek() {\n\t\treturn Ni(this, \"daysInWeek\");\n\t}\n\tget daysInMonth() {\n\t\treturn Ni(this, \"daysInMonth\");\n\t}\n\tget daysInYear() {\n\t\treturn Ni(this, \"daysInYear\");\n\t}\n\tget monthsInYear() {\n\t\treturn Ni(this, \"monthsInYear\");\n\t}\n\tget inLeapYear() {\n\t\treturn Ni(this, \"inLeapYear\");\n\t}\n\twith(e, t = void 0) {\n\t\tif (vt(this, mt), !Ae(e)) throw new TypeError(\"invalid argument\");\n\t\tbt(e);\n\t\tconst n = re(this, E);\n\t\tlet r = en(n, re(this, D));\n\t\treturn r = Rn(n, r, tn(n, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\",\n\t\t\t\"day\"\n\t\t], [], \"partial\")), pn(Ln(n, r, Lt(Zo(t))), n);\n\t}\n\twithCalendar(e) {\n\t\tvt(this, mt);\n\t\tconst t = kn(e);\n\t\treturn pn(re(this, D), t);\n\t}\n\tadd(e, t = void 0) {\n\t\treturn vt(this, mt), vo(\"add\", this, e, t);\n\t}\n\tsubtract(e, t = void 0) {\n\t\treturn vt(this, mt), vo(\"subtract\", this, e, t);\n\t}\n\tuntil(e, t = void 0) {\n\t\treturn vt(this, mt), co(\"until\", this, e, t);\n\t}\n\tsince(e, t = void 0) {\n\t\treturn vt(this, mt), co(\"since\", this, e, t);\n\t}\n\tequals(e) {\n\t\tvt(this, mt);\n\t\tconst t = rn(e);\n\t\treturn 0 === Ro(re(this, D), re(t, D)) && xn(re(this, E), re(t, E));\n\t}\n\ttoString(e = void 0) {\n\t\treturn vt(this, mt), er(this, Zt(Zo(e)));\n\t}\n\ttoJSON() {\n\t\treturn vt(this, mt), er(this);\n\t}\n\ttoLocaleString(e = void 0, t = void 0) {\n\t\treturn vt(this, mt), new di(e, t).format(this);\n\t}\n\tvalueOf() {\n\t\tqo(\"PlainDate\");\n\t}\n\ttoPlainDateTime(e = void 0) {\n\t\tvt(this, mt);\n\t\tconst t = un(e);\n\t\treturn wn(xt(re(this, D), t), re(this, E));\n\t}\n\ttoZonedDateTime(e) {\n\t\tlet t, n;\n\t\tif (vt(this, mt), Ae(e)) {\n\t\t\tconst r = e.timeZone;\n\t\t\tvoid 0 === r ? t = Bn(e) : (t = Bn(r), n = e.plainTime);\n\t\t} else t = Bn(e);\n\t\tconst r = re(this, D);\n\t\tlet o;\n\t\treturn void 0 === n ? o = _n(t, r) : (n = hn(n), o = An(t, xt(r, re(n, M)), \"compatible\")), $n(o, t, re(this, E));\n\t}\n\ttoPlainYearMonth() {\n\t\tvt(this, mt);\n\t\tconst e = re(this, E);\n\t\treturn En(Pn(e, en(e, re(this, D)), \"constrain\"), e);\n\t}\n\ttoPlainMonthDay() {\n\t\tvt(this, mt);\n\t\tconst e = re(this, E);\n\t\treturn bn(Un(e, en(e, re(this, D)), \"constrain\"), e);\n\t}\n\tstatic from(e, t = void 0) {\n\t\treturn rn(e, t);\n\t}\n\tstatic compare(e, t) {\n\t\tconst n = rn(e), r = rn(t);\n\t\treturn Ro(re(n, D), re(r, D));\n\t}\n};\nfunction Ni(e, t) {\n\tvt(e, mt);\n\tconst n = re(e, D);\n\treturn Qt(e).isoToDate(n, { [t]: !0 })[t];\n}\nae(PlainDate, \"Temporal.PlainDate\");\nvar PlainDateTime = class {\n\tconstructor(e, t, n, r = 0, o = 0, i = 0, a = 0, s = 0, c = 0, d = \"iso8601\") {\n\t\tconst h = _e(e), u = _e(t), l = _e(n), m = void 0 === r ? 0 : _e(r), f = void 0 === o ? 0 : _e(o), y = void 0 === i ? 0 : _e(i), p = void 0 === a ? 0 : _e(a), g = void 0 === s ? 0 : _e(s), w = void 0 === c ? 0 : _e(c), v = zo(void 0 === d ? \"iso8601\" : Ve(d));\n\t\tUr(h, u, l, m, f, y, p, g, w), gn(this, {\n\t\t\tisoDate: {\n\t\t\t\tyear: h,\n\t\t\t\tmonth: u,\n\t\t\t\tday: l\n\t\t\t},\n\t\t\ttime: {\n\t\t\t\thour: m,\n\t\t\t\tminute: f,\n\t\t\t\tsecond: y,\n\t\t\t\tmillisecond: p,\n\t\t\t\tmicrosecond: g,\n\t\t\t\tnanosecond: w\n\t\t\t}\n\t\t}, v);\n\t}\n\tget calendarId() {\n\t\treturn vt(this, yt), re(this, E);\n\t}\n\tget year() {\n\t\treturn xi(this, \"year\");\n\t}\n\tget month() {\n\t\treturn xi(this, \"month\");\n\t}\n\tget monthCode() {\n\t\treturn xi(this, \"monthCode\");\n\t}\n\tget day() {\n\t\treturn xi(this, \"day\");\n\t}\n\tget hour() {\n\t\treturn Li(this, \"hour\");\n\t}\n\tget minute() {\n\t\treturn Li(this, \"minute\");\n\t}\n\tget second() {\n\t\treturn Li(this, \"second\");\n\t}\n\tget millisecond() {\n\t\treturn Li(this, \"millisecond\");\n\t}\n\tget microsecond() {\n\t\treturn Li(this, \"microsecond\");\n\t}\n\tget nanosecond() {\n\t\treturn Li(this, \"nanosecond\");\n\t}\n\tget era() {\n\t\treturn xi(this, \"era\");\n\t}\n\tget eraYear() {\n\t\treturn xi(this, \"eraYear\");\n\t}\n\tget dayOfWeek() {\n\t\treturn xi(this, \"dayOfWeek\");\n\t}\n\tget dayOfYear() {\n\t\treturn xi(this, \"dayOfYear\");\n\t}\n\tget weekOfYear() {\n\t\treturn xi(this, \"weekOfYear\")?.week;\n\t}\n\tget yearOfWeek() {\n\t\treturn xi(this, \"weekOfYear\")?.year;\n\t}\n\tget daysInWeek() {\n\t\treturn xi(this, \"daysInWeek\");\n\t}\n\tget daysInYear() {\n\t\treturn xi(this, \"daysInYear\");\n\t}\n\tget daysInMonth() {\n\t\treturn xi(this, \"daysInMonth\");\n\t}\n\tget monthsInYear() {\n\t\treturn xi(this, \"monthsInYear\");\n\t}\n\tget inLeapYear() {\n\t\treturn xi(this, \"inLeapYear\");\n\t}\n\twith(e, t = void 0) {\n\t\tif (vt(this, yt), !Ae(e)) throw new TypeError(\"invalid argument\");\n\t\tbt(e);\n\t\tconst n = re(this, E), r = re(this, T);\n\t\tlet o = {\n\t\t\t...en(n, r.isoDate),\n\t\t\t...r.time\n\t\t};\n\t\treturn o = Rn(n, o, tn(n, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\",\n\t\t\t\"day\"\n\t\t], [\n\t\t\t\"hour\",\n\t\t\t\"minute\",\n\t\t\t\"second\",\n\t\t\t\"millisecond\",\n\t\t\t\"microsecond\",\n\t\t\t\"nanosecond\"\n\t\t], \"partial\")), wn(on(n, o, Lt(Zo(t))), n);\n\t}\n\twithPlainTime(e = void 0) {\n\t\tvt(this, yt);\n\t\tconst t = un(e);\n\t\treturn wn(xt(re(this, T).isoDate, t), re(this, E));\n\t}\n\twithCalendar(e) {\n\t\tvt(this, yt);\n\t\tconst t = kn(e);\n\t\treturn wn(re(this, T), t);\n\t}\n\tadd(e, t = void 0) {\n\t\treturn vt(this, yt), bo(\"add\", this, e, t);\n\t}\n\tsubtract(e, t = void 0) {\n\t\treturn vt(this, yt), bo(\"subtract\", this, e, t);\n\t}\n\tuntil(e, t = void 0) {\n\t\treturn vt(this, yt), ho(\"until\", this, e, t);\n\t}\n\tsince(e, t = void 0) {\n\t\treturn vt(this, yt), ho(\"since\", this, e, t);\n\t}\n\tround(e) {\n\t\tif (vt(this, yt), void 0 === e) throw new TypeError(\"options parameter is required\");\n\t\tconst t = \"string\" == typeof e ? Fo(\"smallestUnit\", e) : Zo(e), n = Ft(t), r = Ut(t, \"halfExpand\"), o = Wt(t, \"smallestUnit\", \"time\", qt, [\"day\"]), i = {\n\t\t\tday: 1,\n\t\t\thour: 24,\n\t\t\tminute: 60,\n\t\t\tsecond: 60,\n\t\t\tmillisecond: 1e3,\n\t\t\tmicrosecond: 1e3,\n\t\t\tnanosecond: 1e3\n\t\t}[o];\n\t\tHt(n, i, 1 === i);\n\t\tconst a = re(this, T);\n\t\treturn wn(1 === n && \"nanosecond\" === o ? a : Co(a, n, o, r), re(this, E));\n\t}\n\tequals(e) {\n\t\tvt(this, yt);\n\t\tconst t = an(e);\n\t\treturn 0 === jo(re(this, T), re(t, T)) && xn(re(this, E), re(t, E));\n\t}\n\ttoString(e = void 0) {\n\t\tvt(this, yt);\n\t\tconst t = Zo(e), n = Zt(t), r = zt(t), o = Ut(t, \"trunc\"), i = Wt(t, \"smallestUnit\", \"time\", void 0);\n\t\tif (\"hour\" === i) throw new RangeError(\"smallestUnit must be a time unit other than \\\"hour\\\"\");\n\t\tconst { precision: a, unit: s, increment: c } = At(i, r), d = Co(re(this, T), c, s, o);\n\t\treturn Br(d), nr(d, re(this, E), a, n);\n\t}\n\ttoJSON() {\n\t\treturn vt(this, yt), nr(re(this, T), re(this, E), \"auto\");\n\t}\n\ttoLocaleString(e = void 0, t = void 0) {\n\t\treturn vt(this, yt), new di(e, t).format(this);\n\t}\n\tvalueOf() {\n\t\tqo(\"PlainDateTime\");\n\t}\n\ttoZonedDateTime(e, t = void 0) {\n\t\tvt(this, yt);\n\t\tconst n = Bn(e), r = Pt(Zo(t));\n\t\treturn $n(An(n, re(this, T), r), n, re(this, E));\n\t}\n\ttoPlainDate() {\n\t\treturn vt(this, yt), pn(re(this, T).isoDate, re(this, E));\n\t}\n\ttoPlainTime() {\n\t\treturn vt(this, yt), Tn(re(this, T).time);\n\t}\n\tstatic from(e, t = void 0) {\n\t\treturn an(e, t);\n\t}\n\tstatic compare(e, t) {\n\t\tconst n = an(e), r = an(t);\n\t\treturn jo(re(n, T), re(r, T));\n\t}\n};\nfunction xi(e, t) {\n\tvt(e, yt);\n\tconst n = re(e, T).isoDate;\n\treturn Qt(e).isoToDate(n, { [t]: !0 })[t];\n}\nfunction Li(e, t) {\n\treturn vt(e, yt), re(e, T).time[t];\n}\nae(PlainDateTime, \"Temporal.PlainDateTime\");\nvar Duration$1 = class Duration$1 {\n\tconstructor(e = 0, t = 0, n = 0, r = 0, o = 0, i = 0, a = 0, s = 0, c = 0, d = 0) {\n\t\tconst h = void 0 === e ? 0 : Ge(e), u = void 0 === t ? 0 : Ge(t), l = void 0 === n ? 0 : Ge(n), m = void 0 === r ? 0 : Ge(r), f = void 0 === o ? 0 : Ge(o), y = void 0 === i ? 0 : Ge(i), p = void 0 === a ? 0 : Ge(a), g = void 0 === s ? 0 : Ge(s), w = void 0 === c ? 0 : Ge(c), v = void 0 === d ? 0 : Ge(d);\n\t\tzr(h, u, l, m, f, y, p, g, w, v), te(this), oe(this, Y, h), oe(this, R, u), oe(this, S, l), oe(this, j, m), oe(this, k, f), oe(this, N, y), oe(this, x, p), oe(this, L, g), oe(this, P, w), oe(this, U, v);\n\t}\n\tget years() {\n\t\treturn vt(this, lt), re(this, Y);\n\t}\n\tget months() {\n\t\treturn vt(this, lt), re(this, R);\n\t}\n\tget weeks() {\n\t\treturn vt(this, lt), re(this, S);\n\t}\n\tget days() {\n\t\treturn vt(this, lt), re(this, j);\n\t}\n\tget hours() {\n\t\treturn vt(this, lt), re(this, k);\n\t}\n\tget minutes() {\n\t\treturn vt(this, lt), re(this, N);\n\t}\n\tget seconds() {\n\t\treturn vt(this, lt), re(this, x);\n\t}\n\tget milliseconds() {\n\t\treturn vt(this, lt), re(this, L);\n\t}\n\tget microseconds() {\n\t\treturn vt(this, lt), re(this, P);\n\t}\n\tget nanoseconds() {\n\t\treturn vt(this, lt), re(this, U);\n\t}\n\tget sign() {\n\t\treturn vt(this, lt), Mr(this);\n\t}\n\tget blank() {\n\t\treturn vt(this, lt), 0 === Mr(this);\n\t}\n\twith(e) {\n\t\tvt(this, lt);\n\t\tconst { years: n = re(this, Y), months: r = re(this, R), weeks: o = re(this, S), days: i = re(this, j), hours: a = re(this, k), minutes: s = re(this, N), seconds: c = re(this, x), milliseconds: d = re(this, L), microseconds: h = re(this, P), nanoseconds: u = re(this, U) } = kt(e);\n\t\treturn new Duration$1(n, r, o, i, a, s, c, d, h, u);\n\t}\n\tnegated() {\n\t\treturn vt(this, lt), Sr(this);\n\t}\n\tabs() {\n\t\treturn vt(this, lt), new Duration$1(Math.abs(re(this, Y)), Math.abs(re(this, R)), Math.abs(re(this, S)), Math.abs(re(this, j)), Math.abs(re(this, k)), Math.abs(re(this, N)), Math.abs(re(this, x)), Math.abs(re(this, L)), Math.abs(re(this, P)), Math.abs(re(this, U)));\n\t}\n\tadd(e) {\n\t\treturn vt(this, lt), go(\"add\", this, e);\n\t}\n\tsubtract(e) {\n\t\treturn vt(this, lt), go(\"subtract\", this, e);\n\t}\n\tround(e) {\n\t\tif (vt(this, lt), void 0 === e) throw new TypeError(\"options parameter is required\");\n\t\tconst t = Jt(this), n = \"string\" == typeof e ? Fo(\"smallestUnit\", e) : Zo(e);\n\t\tlet r = Wt(n, \"largestUnit\", \"datetime\", void 0, [\"auto\"]), { plainRelativeTo: o, zonedRelativeTo: i } = _t(n);\n\t\tconst a = Ft(n), s = Ut(n, \"halfExpand\");\n\t\tlet c = Wt(n, \"smallestUnit\", \"datetime\", void 0), d = !0;\n\t\tc || (d = !1, c = \"nanosecond\");\n\t\tconst h = Gt(t, c);\n\t\tlet u = !0;\n\t\tif (r || (u = !1, r = h), \"auto\" === r && (r = h), !d && !u) throw new RangeError(\"at least one of smallestUnit or largestUnit is required\");\n\t\tif (Gt(r, c) !== r) throw new RangeError(`largestUnit ${r} cannot be smaller than smallestUnit ${c}`);\n\t\tconst l = {\n\t\t\thour: 24,\n\t\t\tminute: 60,\n\t\t\tsecond: 60,\n\t\t\tmillisecond: 1e3,\n\t\t\tmicrosecond: 1e3,\n\t\t\tnanosecond: 1e3\n\t\t}[c];\n\t\tif (void 0 !== l && Ht(a, l, !1), a > 1 && \"date\" === Vt(c) && r !== c) throw new RangeError(\"For calendar units with roundingIncrement > 1, use largestUnit = smallestUnit\");\n\t\tif (i) {\n\t\t\tlet e = Ar(this);\n\t\t\tconst t = re(i, $), n = re(i, E), o = re(i, b);\n\t\t\treturn e = io(o, po(o, t, n, e), t, n, r, a, c, s), \"date\" === Vt(r) && (r = \"hour\"), _r(e, r);\n\t\t}\n\t\tif (o) {\n\t\t\tlet e = qr(this);\n\t\t\tconst t = fo({\n\t\t\t\tdeltaDays: 0,\n\t\t\t\thour: 0,\n\t\t\t\tminute: 0,\n\t\t\t\tsecond: 0,\n\t\t\t\tmillisecond: 0,\n\t\t\t\tmicrosecond: 0,\n\t\t\t\tnanosecond: 0\n\t\t\t}, e.time), n = re(o, D), i = re(o, E), d = Sn(i, n, Nt(e.date, t.deltaDays), \"constrain\");\n\t\t\treturn e = oo(xt(n, {\n\t\t\t\tdeltaDays: 0,\n\t\t\t\thour: 0,\n\t\t\t\tminute: 0,\n\t\t\t\tsecond: 0,\n\t\t\t\tmillisecond: 0,\n\t\t\t\tmicrosecond: 0,\n\t\t\t\tnanosecond: 0\n\t\t\t}), xt(d, t), i, r, a, c, s), _r(e, r);\n\t\t}\n\t\tif (Kt(t)) throw new RangeError(`a starting point is required for ${t}s balancing`);\n\t\tif (Kt(r)) throw new RangeError(`a starting point is required for ${r}s balancing`);\n\t\tlet m = qr(this);\n\t\tif (\"day\" === c) {\n\t\t\tconst { quotient: e, remainder: t } = m.time.divmod(Se);\n\t\t\tlet n = m.date.days + e + Yo(t, \"day\");\n\t\t\tn = Eo(n, a, s), m = Jr({\n\t\t\t\tyears: 0,\n\t\t\t\tmonths: 0,\n\t\t\t\tweeks: 0,\n\t\t\t\tdays: n\n\t\t\t}, TimeDuration.ZERO);\n\t\t} else m = Jr({\n\t\t\tyears: 0,\n\t\t\tmonths: 0,\n\t\t\tweeks: 0,\n\t\t\tdays: 0\n\t\t}, $o(m.time, a, c, s));\n\t\treturn _r(m, r);\n\t}\n\ttotal(t) {\n\t\tif (vt(this, lt), void 0 === t) throw new TypeError(\"options argument is required\");\n\t\tconst n = \"string\" == typeof t ? Fo(\"unit\", t) : Zo(t);\n\t\tlet { plainRelativeTo: r, zonedRelativeTo: o } = _t(n);\n\t\tconst i = Wt(n, \"unit\", \"datetime\", qt);\n\t\tif (o) {\n\t\t\tconst e = Ar(this), t = re(o, $), n = re(o, E), r = re(o, b);\n\t\t\treturn function(e, t, n, r, o) {\n\t\t\t\treturn \"time\" === Vt(o) ? Yo(TimeDuration.fromEpochNsDiff(t, e), o) : ro(eo(e, t, n, r, o), t, zn(n, e), n, r, o);\n\t\t\t}(r, po(r, t, n, e), t, n, i);\n\t\t}\n\t\tif (r) {\n\t\t\tconst t = qr(this);\n\t\t\tlet n = fo({\n\t\t\t\tdeltaDays: 0,\n\t\t\t\thour: 0,\n\t\t\t\tminute: 0,\n\t\t\t\tsecond: 0,\n\t\t\t\tmillisecond: 0,\n\t\t\t\tmicrosecond: 0,\n\t\t\t\tnanosecond: 0\n\t\t\t}, t.time);\n\t\t\tconst o = re(r, D), a = re(r, E), s = Sn(a, o, Nt(t.date, n.deltaDays), \"constrain\");\n\t\t\treturn function(t, n, r, o) {\n\t\t\t\tif (0 == jo(t, n)) return 0;\n\t\t\t\tBr(t), Br(n);\n\t\t\t\tconst i = Qr(t, n, r, o);\n\t\t\t\treturn \"nanosecond\" === o ? import_jsbi_umd.default.toNumber(i.time.totalNs) : ro(i, pr(n), t, null, r, o);\n\t\t\t}(xt(o, {\n\t\t\t\tdeltaDays: 0,\n\t\t\t\thour: 0,\n\t\t\t\tminute: 0,\n\t\t\t\tsecond: 0,\n\t\t\t\tmillisecond: 0,\n\t\t\t\tmicrosecond: 0,\n\t\t\t\tnanosecond: 0\n\t\t\t}), xt(s, n), a, i);\n\t\t}\n\t\tconst a = Jt(this);\n\t\tif (Kt(a)) throw new RangeError(`a starting point is required for ${a}s total`);\n\t\tif (Kt(i)) throw new RangeError(`a starting point is required for ${i}s total`);\n\t\treturn Yo(qr(this).time, i);\n\t}\n\ttoString(e = void 0) {\n\t\tvt(this, lt);\n\t\tconst t = Zo(e), n = zt(t), r = Ut(t, \"trunc\"), o = Wt(t, \"smallestUnit\", \"time\", void 0);\n\t\tif (\"hour\" === o || \"minute\" === o) throw new RangeError(\"smallestUnit must be a time unit other than \\\"hours\\\" or \\\"minutes\\\"\");\n\t\tconst { precision: i, unit: a, increment: s } = At(o, n);\n\t\tif (\"nanosecond\" === a && 1 === s) return Qn(this, i);\n\t\tconst c = Jt(this);\n\t\tlet d = Ar(this);\n\t\tconst h = $o(d.time, s, a, r);\n\t\treturn d = Jr(d.date, h), Qn(_r(d, Gt(c, \"second\")), i);\n\t}\n\ttoJSON() {\n\t\treturn vt(this, lt), Qn(this, \"auto\");\n\t}\n\ttoLocaleString(e = void 0, t = void 0) {\n\t\tif (vt(this, lt), \"function\" == typeof Intl.DurationFormat) {\n\t\t\tconst n = new Intl.DurationFormat(e, t);\n\t\t\treturn ji.call(n, this);\n\t\t}\n\t\treturn console.warn(\"Temporal.Duration.prototype.toLocaleString() requires Intl.DurationFormat.\"), Qn(this, \"auto\");\n\t}\n\tvalueOf() {\n\t\tqo(\"Duration\");\n\t}\n\tstatic from(e) {\n\t\treturn sn(e);\n\t}\n\tstatic compare(t, n, r = void 0) {\n\t\tconst o = sn(t), i = sn(n), { plainRelativeTo: s, zonedRelativeTo: c } = _t(Zo(r));\n\t\tif (re(o, Y) === re(i, Y) && re(o, R) === re(i, R) && re(o, S) === re(i, S) && re(o, j) === re(i, j) && re(o, k) === re(i, k) && re(o, N) === re(i, N) && re(o, x) === re(i, x) && re(o, L) === re(i, L) && re(o, P) === re(i, P) && re(o, U) === re(i, U)) return 0;\n\t\tconst d = Jt(o), h = Jt(i), u = Ar(o), l = Ar(i);\n\t\tif (c && (\"date\" === Vt(d) || \"date\" === Vt(h))) {\n\t\t\tconst t = re(c, $), n = re(c, E), r = re(c, b), o = po(r, t, n, u), i = po(r, t, n, l);\n\t\t\treturn Bo(import_jsbi_umd.default.toNumber(import_jsbi_umd.default.subtract(o, i)));\n\t\t}\n\t\tlet m = u.date.days, f = l.date.days;\n\t\tif (Kt(d) || Kt(h)) {\n\t\t\tif (!s) throw new RangeError(\"A starting point is required for years, months, or weeks comparison\");\n\t\t\tm = Rr(u.date, s), f = Rr(l.date, s);\n\t\t}\n\t\tconst y = u.time.add24HourDays(m), p = l.time.add24HourDays(f);\n\t\treturn y.cmp(p);\n\t}\n};\nae(Duration$1, \"Temporal.Duration\");\nvar PlainMonthDay = class {\n\tconstructor(e, t, n = \"iso8601\", r = 1972) {\n\t\tconst o = _e(e), i = _e(t), a = zo(void 0 === n ? \"iso8601\" : Ve(n)), s = _e(r);\n\t\txr(s, o, i), vn(this, {\n\t\t\tyear: s,\n\t\t\tmonth: o,\n\t\t\tday: i\n\t\t}, a);\n\t}\n\tget monthCode() {\n\t\treturn Pi(this, \"monthCode\");\n\t}\n\tget day() {\n\t\treturn Pi(this, \"day\");\n\t}\n\tget calendarId() {\n\t\treturn vt(this, gt), re(this, E);\n\t}\n\twith(e, t = void 0) {\n\t\tif (vt(this, gt), !Ae(e)) throw new TypeError(\"invalid argument\");\n\t\tbt(e);\n\t\tconst n = re(this, E);\n\t\tlet r = en(n, re(this, D), \"month-day\");\n\t\treturn r = Rn(n, r, tn(n, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\",\n\t\t\t\"day\"\n\t\t], [], \"partial\")), bn(Un(n, r, Lt(Zo(t))), n);\n\t}\n\tequals(e) {\n\t\tvt(this, gt);\n\t\tconst t = dn(e);\n\t\treturn 0 === Ro(re(this, D), re(t, D)) && xn(re(this, E), re(t, E));\n\t}\n\ttoString(e = void 0) {\n\t\treturn vt(this, gt), rr(this, Zt(Zo(e)));\n\t}\n\ttoJSON() {\n\t\treturn vt(this, gt), rr(this);\n\t}\n\ttoLocaleString(e = void 0, t = void 0) {\n\t\treturn vt(this, gt), new di(e, t).format(this);\n\t}\n\tvalueOf() {\n\t\tqo(\"PlainMonthDay\");\n\t}\n\ttoPlainDate(e) {\n\t\tif (vt(this, gt), !Ae(e)) throw new TypeError(\"argument should be an object\");\n\t\tconst t = re(this, E);\n\t\treturn pn(Ln(t, Rn(t, en(t, re(this, D), \"month-day\"), tn(t, e, [\"year\"], [], [])), \"constrain\"), t);\n\t}\n\tstatic from(e, t = void 0) {\n\t\treturn dn(e, t);\n\t}\n};\nfunction Pi(e, t) {\n\tvt(e, gt);\n\tconst n = re(e, D);\n\treturn Qt(e).isoToDate(n, { [t]: !0 })[t];\n}\nfunction Ui(e) {\n\treturn zn(e, Po());\n}\nae(PlainMonthDay, \"Temporal.PlainMonthDay\");\nvar Bi = {\n\tinstant: () => Cn(Po()),\n\tplainDateTimeISO: (e = Uo()) => wn(Ui(Bn(e)), \"iso8601\"),\n\tplainDateISO: (e = Uo()) => pn(Ui(Bn(e)).isoDate, \"iso8601\"),\n\tplainTimeISO: (e = Uo()) => Tn(Ui(Bn(e)).time),\n\ttimeZoneId: () => Uo(),\n\tzonedDateTimeISO: (e = Uo()) => {\n\t\tconst t = Bn(e);\n\t\treturn $n(Po(), t, \"iso8601\");\n\t},\n\t[Symbol.toStringTag]: \"Temporal.Now\"\n};\nObject.defineProperty(Bi, Symbol.toStringTag, {\n\tvalue: \"Temporal.Now\",\n\twritable: !1,\n\tenumerable: !1,\n\tconfigurable: !0\n});\nvar PlainTime = class PlainTime {\n\tconstructor(e = 0, t = 0, n = 0, r = 0, o = 0, i = 0) {\n\t\tconst a = void 0 === e ? 0 : _e(e), s = void 0 === t ? 0 : _e(t), c = void 0 === n ? 0 : _e(n), d = void 0 === r ? 0 : _e(r), h = void 0 === o ? 0 : _e(o), u = void 0 === i ? 0 : _e(i);\n\t\tPr(a, s, c, d, h, u), Dn(this, {\n\t\t\thour: a,\n\t\t\tminute: s,\n\t\t\tsecond: c,\n\t\t\tmillisecond: d,\n\t\t\tmicrosecond: h,\n\t\t\tnanosecond: u\n\t\t});\n\t}\n\tget hour() {\n\t\treturn vt(this, ft), re(this, M).hour;\n\t}\n\tget minute() {\n\t\treturn vt(this, ft), re(this, M).minute;\n\t}\n\tget second() {\n\t\treturn vt(this, ft), re(this, M).second;\n\t}\n\tget millisecond() {\n\t\treturn vt(this, ft), re(this, M).millisecond;\n\t}\n\tget microsecond() {\n\t\treturn vt(this, ft), re(this, M).microsecond;\n\t}\n\tget nanosecond() {\n\t\treturn vt(this, ft), re(this, M).nanosecond;\n\t}\n\twith(e, t = void 0) {\n\t\tif (vt(this, ft), !Ae(e)) throw new TypeError(\"invalid argument\");\n\t\tbt(e);\n\t\tconst n = nn(e, \"partial\"), r = nn(this);\n\t\tlet { hour: o, minute: i, second: a, millisecond: s, microsecond: c, nanosecond: d } = Object.assign(r, n);\n\t\tconst h = Lt(Zo(t));\n\t\treturn {hour: o, minute: i, second: a, millisecond: s, microsecond: c, nanosecond: d} = jt(o, i, a, s, c, d, h), new PlainTime(o, i, a, s, c, d);\n\t}\n\tadd(e) {\n\t\treturn vt(this, ft), Do(\"add\", this, e);\n\t}\n\tsubtract(e) {\n\t\treturn vt(this, ft), Do(\"subtract\", this, e);\n\t}\n\tuntil(e, t = void 0) {\n\t\treturn vt(this, ft), uo(\"until\", this, e, t);\n\t}\n\tsince(e, t = void 0) {\n\t\treturn vt(this, ft), uo(\"since\", this, e, t);\n\t}\n\tround(e) {\n\t\tif (vt(this, ft), void 0 === e) throw new TypeError(\"options parameter is required\");\n\t\tconst t = \"string\" == typeof e ? Fo(\"smallestUnit\", e) : Zo(e), n = Ft(t), r = Ut(t, \"halfExpand\"), o = Wt(t, \"smallestUnit\", \"time\", qt);\n\t\treturn Ht(n, {\n\t\t\thour: 24,\n\t\t\tminute: 60,\n\t\t\tsecond: 60,\n\t\t\tmillisecond: 1e3,\n\t\t\tmicrosecond: 1e3,\n\t\t\tnanosecond: 1e3\n\t\t}[o], !1), Tn(Oo(re(this, M), n, o, r));\n\t}\n\tequals(e) {\n\t\tvt(this, ft);\n\t\tconst t = hn(e);\n\t\treturn 0 === So(re(this, M), re(t, M));\n\t}\n\ttoString(e = void 0) {\n\t\tvt(this, ft);\n\t\tconst t = Zo(e), n = zt(t), r = Ut(t, \"trunc\"), o = Wt(t, \"smallestUnit\", \"time\", void 0);\n\t\tif (\"hour\" === o) throw new RangeError(\"smallestUnit must be a time unit other than \\\"hour\\\"\");\n\t\tconst { precision: i, unit: a, increment: s } = At(o, n);\n\t\treturn tr(Oo(re(this, M), s, a, r), i);\n\t}\n\ttoJSON() {\n\t\treturn vt(this, ft), tr(re(this, M), \"auto\");\n\t}\n\ttoLocaleString(e = void 0, t = void 0) {\n\t\treturn vt(this, ft), new di(e, t).format(this);\n\t}\n\tvalueOf() {\n\t\tqo(\"PlainTime\");\n\t}\n\tstatic from(e, t = void 0) {\n\t\treturn hn(e, t);\n\t}\n\tstatic compare(e, t) {\n\t\tconst n = hn(e), r = hn(t);\n\t\treturn So(re(n, M), re(r, M));\n\t}\n};\nae(PlainTime, \"Temporal.PlainTime\");\nvar PlainYearMonth = class {\n\tconstructor(e, t, n = \"iso8601\", r = 1) {\n\t\tconst o = _e(e), i = _e(t), a = zo(void 0 === n ? \"iso8601\" : Ve(n)), s = _e(r);\n\t\txr(o, i, s), Mn(this, {\n\t\t\tyear: o,\n\t\t\tmonth: i,\n\t\t\tday: s\n\t\t}, a);\n\t}\n\tget year() {\n\t\treturn Zi(this, \"year\");\n\t}\n\tget month() {\n\t\treturn Zi(this, \"month\");\n\t}\n\tget monthCode() {\n\t\treturn Zi(this, \"monthCode\");\n\t}\n\tget calendarId() {\n\t\treturn vt(this, pt), re(this, E);\n\t}\n\tget era() {\n\t\treturn Zi(this, \"era\");\n\t}\n\tget eraYear() {\n\t\treturn Zi(this, \"eraYear\");\n\t}\n\tget daysInMonth() {\n\t\treturn Zi(this, \"daysInMonth\");\n\t}\n\tget daysInYear() {\n\t\treturn Zi(this, \"daysInYear\");\n\t}\n\tget monthsInYear() {\n\t\treturn Zi(this, \"monthsInYear\");\n\t}\n\tget inLeapYear() {\n\t\treturn Zi(this, \"inLeapYear\");\n\t}\n\twith(e, t = void 0) {\n\t\tif (vt(this, pt), !Ae(e)) throw new TypeError(\"invalid argument\");\n\t\tbt(e);\n\t\tconst n = re(this, E);\n\t\tlet r = en(n, re(this, D), \"year-month\");\n\t\treturn r = Rn(n, r, tn(n, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\"\n\t\t], [], \"partial\")), En(Pn(n, r, Lt(Zo(t))), n);\n\t}\n\tadd(e, t = void 0) {\n\t\treturn vt(this, pt), To(\"add\", this, e, t);\n\t}\n\tsubtract(e, t = void 0) {\n\t\treturn vt(this, pt), To(\"subtract\", this, e, t);\n\t}\n\tuntil(e, t = void 0) {\n\t\treturn vt(this, pt), lo(\"until\", this, e, t);\n\t}\n\tsince(e, t = void 0) {\n\t\treturn vt(this, pt), lo(\"since\", this, e, t);\n\t}\n\tequals(e) {\n\t\tvt(this, pt);\n\t\tconst t = ln(e);\n\t\treturn 0 === Ro(re(this, D), re(t, D)) && xn(re(this, E), re(t, E));\n\t}\n\ttoString(e = void 0) {\n\t\treturn vt(this, pt), or(this, Zt(Zo(e)));\n\t}\n\ttoJSON() {\n\t\treturn vt(this, pt), or(this);\n\t}\n\ttoLocaleString(e = void 0, t = void 0) {\n\t\treturn vt(this, pt), new di(e, t).format(this);\n\t}\n\tvalueOf() {\n\t\tqo(\"PlainYearMonth\");\n\t}\n\ttoPlainDate(e) {\n\t\tif (vt(this, pt), !Ae(e)) throw new TypeError(\"argument should be an object\");\n\t\tconst t = re(this, E);\n\t\treturn pn(Ln(t, Rn(t, en(t, re(this, D), \"year-month\"), tn(t, e, [\"day\"], [], [])), \"constrain\"), t);\n\t}\n\tstatic from(e, t = void 0) {\n\t\treturn ln(e, t);\n\t}\n\tstatic compare(e, t) {\n\t\tconst n = ln(e), r = ln(t);\n\t\treturn Ro(re(n, D), re(r, D));\n\t}\n};\nfunction Zi(e, t) {\n\tvt(e, pt);\n\tconst n = re(e, D);\n\treturn Qt(e).isoToDate(n, { [t]: !0 })[t];\n}\nae(PlainYearMonth, \"Temporal.PlainYearMonth\");\nvar Fi = di.prototype.resolvedOptions;\nvar ZonedDateTime = class {\n\tconstructor(e, t, n = \"iso8601\") {\n\t\tif (arguments.length < 1) throw new TypeError(\"missing argument: epochNanoseconds is required\");\n\t\tconst r = Lo(e);\n\t\tlet o = Ve(t);\n\t\tconst { tzName: i, offsetMinutes: a } = Rt(o);\n\t\tif (void 0 === a) {\n\t\t\tconst e = hr(i);\n\t\t\tif (!e) throw new RangeError(`unknown time zone ${i}`);\n\t\t\to = e.identifier;\n\t\t} else o = mr(a);\n\t\tOn(this, r, o, zo(void 0 === n ? \"iso8601\" : Ve(n)));\n\t}\n\tget calendarId() {\n\t\treturn vt(this, wt), re(this, E);\n\t}\n\tget timeZoneId() {\n\t\treturn vt(this, wt), re(this, $);\n\t}\n\tget year() {\n\t\treturn zi(this, \"year\");\n\t}\n\tget month() {\n\t\treturn zi(this, \"month\");\n\t}\n\tget monthCode() {\n\t\treturn zi(this, \"monthCode\");\n\t}\n\tget day() {\n\t\treturn zi(this, \"day\");\n\t}\n\tget hour() {\n\t\treturn Ai(this, \"hour\");\n\t}\n\tget minute() {\n\t\treturn Ai(this, \"minute\");\n\t}\n\tget second() {\n\t\treturn Ai(this, \"second\");\n\t}\n\tget millisecond() {\n\t\treturn Ai(this, \"millisecond\");\n\t}\n\tget microsecond() {\n\t\treturn Ai(this, \"microsecond\");\n\t}\n\tget nanosecond() {\n\t\treturn Ai(this, \"nanosecond\");\n\t}\n\tget era() {\n\t\treturn zi(this, \"era\");\n\t}\n\tget eraYear() {\n\t\treturn zi(this, \"eraYear\");\n\t}\n\tget epochMilliseconds() {\n\t\treturn vt(this, wt), No(re(this, b), \"floor\");\n\t}\n\tget epochNanoseconds() {\n\t\treturn vt(this, wt), ko(re(this, b));\n\t}\n\tget dayOfWeek() {\n\t\treturn zi(this, \"dayOfWeek\");\n\t}\n\tget dayOfYear() {\n\t\treturn zi(this, \"dayOfYear\");\n\t}\n\tget weekOfYear() {\n\t\treturn zi(this, \"weekOfYear\")?.week;\n\t}\n\tget yearOfWeek() {\n\t\treturn zi(this, \"weekOfYear\")?.year;\n\t}\n\tget hoursInDay() {\n\t\tvt(this, wt);\n\t\tconst e = re(this, $), t = Hi(this).isoDate, n = Or(t.year, t.month, t.day + 1), r = _n(e, t), o = _n(e, n);\n\t\treturn Yo(TimeDuration.fromEpochNsDiff(o, r), \"hour\");\n\t}\n\tget daysInWeek() {\n\t\treturn zi(this, \"daysInWeek\");\n\t}\n\tget daysInMonth() {\n\t\treturn zi(this, \"daysInMonth\");\n\t}\n\tget daysInYear() {\n\t\treturn zi(this, \"daysInYear\");\n\t}\n\tget monthsInYear() {\n\t\treturn zi(this, \"monthsInYear\");\n\t}\n\tget inLeapYear() {\n\t\treturn zi(this, \"inLeapYear\");\n\t}\n\tget offset() {\n\t\treturn vt(this, wt), Hn(Fn(re(this, $), re(this, b)));\n\t}\n\tget offsetNanoseconds() {\n\t\treturn vt(this, wt), Fn(re(this, $), re(this, b));\n\t}\n\twith(e, t = void 0) {\n\t\tif (vt(this, wt), !Ae(e)) throw new TypeError(\"invalid zoned-date-time-like\");\n\t\tbt(e);\n\t\tconst n = re(this, E), r = re(this, $), o = Fn(r, re(this, b)), i = Hi(this);\n\t\tlet a = {\n\t\t\t...en(n, i.isoDate),\n\t\t\t...i.time,\n\t\t\toffset: Hn(o)\n\t\t};\n\t\ta = Rn(n, a, tn(n, e, [\n\t\t\t\"year\",\n\t\t\t\"month\",\n\t\t\t\"monthCode\",\n\t\t\t\"day\"\n\t\t], [\n\t\t\t\"hour\",\n\t\t\t\"minute\",\n\t\t\t\"second\",\n\t\t\t\"millisecond\",\n\t\t\t\"microsecond\",\n\t\t\t\"nanosecond\",\n\t\t\t\"offset\"\n\t\t], \"partial\"));\n\t\tconst s = Zo(t), c = Pt(s), d = Bt(s, \"prefer\"), h = on(n, a, Lt(s)), u = sr(a.offset);\n\t\treturn $n(mn(h.isoDate, h.time, \"option\", u, r, c, d, !1), r, n);\n\t}\n\twithPlainTime(e = void 0) {\n\t\tvt(this, wt);\n\t\tconst t = re(this, $), n = re(this, E), r = Hi(this).isoDate;\n\t\tlet o;\n\t\treturn o = void 0 === e ? _n(t, r) : An(t, xt(r, re(hn(e), M)), \"compatible\"), $n(o, t, n);\n\t}\n\twithTimeZone(e) {\n\t\tvt(this, wt);\n\t\tconst t = Bn(e);\n\t\treturn $n(re(this, b), t, re(this, E));\n\t}\n\twithCalendar(e) {\n\t\tvt(this, wt);\n\t\tconst t = kn(e);\n\t\treturn $n(re(this, b), re(this, $), t);\n\t}\n\tadd(e, t = void 0) {\n\t\treturn vt(this, wt), Mo(\"add\", this, e, t);\n\t}\n\tsubtract(e, t = void 0) {\n\t\treturn vt(this, wt), Mo(\"subtract\", this, e, t);\n\t}\n\tuntil(e, t = void 0) {\n\t\treturn vt(this, wt), mo(\"until\", this, e, t);\n\t}\n\tsince(e, t = void 0) {\n\t\treturn vt(this, wt), mo(\"since\", this, e, t);\n\t}\n\tround(t) {\n\t\tif (vt(this, wt), void 0 === t) throw new TypeError(\"options parameter is required\");\n\t\tconst n = \"string\" == typeof t ? Fo(\"smallestUnit\", t) : Zo(t), r = Ft(n), o = Ut(n, \"halfExpand\"), i = Wt(n, \"smallestUnit\", \"time\", qt, [\"day\"]), a = {\n\t\t\tday: 1,\n\t\t\thour: 24,\n\t\t\tminute: 60,\n\t\t\tsecond: 60,\n\t\t\tmillisecond: 1e3,\n\t\t\tmicrosecond: 1e3,\n\t\t\tnanosecond: 1e3\n\t\t}[i];\n\t\tif (Ht(r, a, 1 === a), \"nanosecond\" === i && 1 === r) return $n(re(this, b), re(this, $), re(this, E));\n\t\tconst s = re(this, $), c = re(this, b), d = Hi(this);\n\t\tlet h;\n\t\tif (\"day\" === i) {\n\t\t\tconst t = d.isoDate, n = Or(t.year, t.month, t.day + 1), r = _n(s, t), i = _n(s, n), a = import_jsbi_umd.default.subtract(i, r);\n\t\t\th = TimeDuration.fromEpochNsDiff(c, r).round(a, o).addToEpochNs(r);\n\t\t} else {\n\t\t\tconst e = Co(d, r, i, o), t = Fn(s, c);\n\t\t\th = mn(e.isoDate, e.time, \"option\", t, s, \"compatible\", \"prefer\", !1);\n\t\t}\n\t\treturn $n(h, s, re(this, E));\n\t}\n\tequals(t) {\n\t\tvt(this, wt);\n\t\tconst n = fn(t), r = re(this, b), o = re(n, b);\n\t\treturn !!import_jsbi_umd.default.equal(import_jsbi_umd.default.BigInt(r), import_jsbi_umd.default.BigInt(o)) && !!Zn(re(this, $), re(n, $)) && xn(re(this, E), re(n, E));\n\t}\n\ttoString(e = void 0) {\n\t\tvt(this, wt);\n\t\tconst t = Zo(e), n = Zt(t), r = zt(t), o = function(e) {\n\t\t\treturn Ho(e, \"offset\", [\"auto\", \"never\"], \"auto\");\n\t\t}(t), i = Ut(t, \"trunc\"), a = Wt(t, \"smallestUnit\", \"time\", void 0);\n\t\tif (\"hour\" === a) throw new RangeError(\"smallestUnit must be a time unit other than \\\"hour\\\"\");\n\t\tconst s = function(e) {\n\t\t\treturn Ho(e, \"timeZoneName\", [\n\t\t\t\t\"auto\",\n\t\t\t\t\"never\",\n\t\t\t\t\"critical\"\n\t\t\t], \"auto\");\n\t\t}(t), { precision: c, unit: d, increment: h } = At(a, r);\n\t\treturn ir(this, c, n, s, o, {\n\t\t\tunit: d,\n\t\t\tincrement: h,\n\t\t\troundingMode: i\n\t\t});\n\t}\n\ttoLocaleString(e = void 0, t = void 0) {\n\t\tvt(this, wt);\n\t\tconst n = Zo(t), r = Object.create(null);\n\t\tif (function(e, t, n, r) {\n\t\t\tif (null == t) return;\n\t\t\tconst o = Reflect.ownKeys(t);\n\t\t\tfor (let i = 0; i < o.length; i++) {\n\t\t\t\tconst a = o[i];\n\t\t\t\tif (!n.some(((e) => Object.is(e, a))) && Object.prototype.propertyIsEnumerable.call(t, a)) e[a] = t[a];\n\t\t\t}\n\t\t}(r, n, [\"timeZone\"]), void 0 !== n.timeZone) throw new TypeError(\"ZonedDateTime toLocaleString does not accept a timeZone option\");\n\t\tif (void 0 === r.year && void 0 === r.month && void 0 === r.day && void 0 === r.era && void 0 === r.weekday && void 0 === r.dateStyle && void 0 === r.hour && void 0 === r.minute && void 0 === r.second && void 0 === r.fractionalSecondDigits && void 0 === r.timeStyle && void 0 === r.dayPeriod && void 0 === r.timeZoneName && (r.timeZoneName = \"short\"), r.timeZone = re(this, $), ar(r.timeZone)) throw new RangeError(\"toLocaleString does not currently support offset time zones\");\n\t\tconst o = new di(e, r), i = Fi.call(o).calendar, a = re(this, E);\n\t\tif (\"iso8601\" !== a && \"iso8601\" !== i && !xn(i, a)) throw new RangeError(`cannot format ZonedDateTime with calendar ${a} in locale with calendar ${i}`);\n\t\treturn o.format(Cn(re(this, b)));\n\t}\n\ttoJSON() {\n\t\treturn vt(this, wt), ir(this, \"auto\");\n\t}\n\tvalueOf() {\n\t\tqo(\"ZonedDateTime\");\n\t}\n\tstartOfDay() {\n\t\tvt(this, wt);\n\t\tconst e = re(this, $);\n\t\treturn $n(_n(e, Hi(this).isoDate), e, re(this, E));\n\t}\n\tgetTimeZoneTransition(e) {\n\t\tvt(this, wt);\n\t\tconst t = re(this, $);\n\t\tif (void 0 === e) throw new TypeError(\"options parameter is required\");\n\t\tconst n = Ho(\"string\" == typeof e ? Fo(\"direction\", e) : Zo(e), \"direction\", [\"next\", \"previous\"], qt);\n\t\tif (void 0 === n) throw new TypeError(\"direction option is required\");\n\t\tif (ar(t) || \"UTC\" === t) return null;\n\t\tconst r = re(this, b), o = \"next\" === n ? wr(t, r) : vr(t, r);\n\t\treturn null === o ? null : $n(o, t, re(this, E));\n\t}\n\ttoInstant() {\n\t\treturn vt(this, wt), Cn(re(this, b));\n\t}\n\ttoPlainDate() {\n\t\treturn vt(this, wt), pn(Hi(this).isoDate, re(this, E));\n\t}\n\ttoPlainTime() {\n\t\treturn vt(this, wt), Tn(Hi(this).time);\n\t}\n\ttoPlainDateTime() {\n\t\treturn vt(this, wt), wn(Hi(this), re(this, E));\n\t}\n\tstatic from(e, t = void 0) {\n\t\treturn fn(e, t);\n\t}\n\tstatic compare(t, n) {\n\t\tconst r = fn(t), o = fn(n), i = re(r, b), a = re(o, b);\n\t\treturn import_jsbi_umd.default.lessThan(import_jsbi_umd.default.BigInt(i), import_jsbi_umd.default.BigInt(a)) ? -1 : import_jsbi_umd.default.greaterThan(import_jsbi_umd.default.BigInt(i), import_jsbi_umd.default.BigInt(a)) ? 1 : 0;\n\t}\n};\nfunction Hi(e) {\n\treturn zn(re(e, $), re(e, b));\n}\nfunction zi(e, t) {\n\tvt(e, wt);\n\tconst n = Hi(e).isoDate;\n\treturn Qt(e).isoToDate(n, { [t]: !0 })[t];\n}\nfunction Ai(e, t) {\n\treturn vt(e, wt), Hi(e).time[t];\n}\nae(ZonedDateTime, \"Temporal.ZonedDateTime\");\nvar qi = Object.freeze({\n\t__proto__: null,\n\tDuration: Duration$1,\n\tInstant,\n\tNow: Bi,\n\tPlainDate,\n\tPlainDateTime,\n\tPlainMonthDay,\n\tPlainTime,\n\tPlainYearMonth,\n\tZonedDateTime\n});\n(class LegacyDateImpl {\n\ttoTemporalInstant() {\n\t\treturn Cn(xo(Date.prototype.valueOf.call(this)));\n\t}\n}).prototype.toTemporalInstant;\nvar _i = [\n\tInstant,\n\tPlainDate,\n\tPlainDateTime,\n\tDuration$1,\n\tPlainMonthDay,\n\tPlainTime,\n\tPlainYearMonth,\n\tZonedDateTime\n];\nfor (const e of _i) {\n\tconst t = Object.getOwnPropertyDescriptor(e, \"prototype\");\n\t(t.configurable || t.enumerable || t.writable) && (t.configurable = !1, t.enumerable = !1, t.writable = !1, Object.defineProperty(e, \"prototype\", t));\n}\n//#endregion\n//#region src/index.ts\n/**\n* TimeGuard - Modern date/time library using Temporal API\n* Full bundle (backward compatible)\n* Includes: core + all locales + all plugins + all calendars + polyfill (auto-loaded)\n*\n* @author Berea-Soft\n* @license MIT\n*/\nif (typeof globalThis !== \"undefined\" && !globalThis.Temporal) globalThis.Temporal = qi;\nLocaleManager.getInstance().loadLocales(ALL_LOCALES);\n//#endregion\nexport { ALL_LOCALES, AdvancedFormatPlugin, BuddhistCalendar, CalendarManager, ChineseCalendar, DateFormatter, Duration, DurationPlugin, DurationResult, EN_LOCALE, ES_LOCALE, GregorianCalendar, HebrewCalendar, IslamicCalendar, JapaneseCalendar, LOCALES_COUNT, LocaleManager, PluginManager, RelativeTimePlugin, TemporalAdapter, TimeGuard, TimeRange, advanced_format_default as advancedFormatPlugin, calendarManager, durationPlugin, getAvailableLocales, registerAllLocales, relative_time_default as relativeTimePlugin, timeGuard, version };\n","var i=Symbol.for(\"preact-signals\");function t(){if(!(s>1)){var i,t=!1;!function(){var i=c;c=void 0;while(void 0!==i){if(i.S.v===i.v)i.S.i=i.i;i=i.o}}();while(void 0!==h){var n=h;h=void 0;v++;while(void 0!==n){var r=n.u;n.u=void 0;n.f&=-3;if(!(8&n.f)&&w(n))try{n.c()}catch(n){if(!t){i=n;t=!0}}n=r}}v=0;s--;if(t)throw i}else s--}function n(i){if(s>0)return i();e=++u;s++;try{return i()}finally{t()}}var r=void 0;function o(i){var t=r;r=void 0;try{return i()}finally{r=t}}var f,h=void 0,s=0,v=0,u=0,e=0,c=void 0,d=0;function a(i){if(void 0!==r){var t=i.n;if(void 0===t||t.t!==r){t={i:0,S:i,p:r.s,n:void 0,t:r,e:void 0,x:void 0,r:t};if(void 0!==r.s)r.s.n=t;r.s=t;i.n=t;if(32&r.f)i.S(t);return t}else if(-1===t.i){t.i=0;if(void 0!==t.n){t.n.p=t.p;if(void 0!==t.p)t.p.n=t.n;t.p=r.s;t.n=void 0;r.s.n=t;r.s=t}return t}}}function l(i,t){this.v=i;this.i=0;this.n=void 0;this.t=void 0;this.l=0;this.W=null==t?void 0:t.watched;this.Z=null==t?void 0:t.unwatched;this.name=null==t?void 0:t.name}l.prototype.brand=i;l.prototype.h=function(){return!0};l.prototype.S=function(i){var t=this,n=this.t;if(n!==i&&void 0===i.e){i.x=n;this.t=i;if(void 0!==n)n.e=i;else o(function(){var i;null==(i=t.W)||i.call(t)})}};l.prototype.U=function(i){var t=this;if(void 0!==this.t){var n=i.e,r=i.x;if(void 0!==n){n.x=r;i.e=void 0}if(void 0!==r){r.e=n;i.x=void 0}if(i===this.t){this.t=r;if(void 0===r)o(function(){var i;null==(i=t.Z)||i.call(t)})}}};l.prototype.subscribe=function(i){var t=this;return j(function(){var n=t.value;o(function(){return i(n)})},{name:\"sub\"})};l.prototype.valueOf=function(){return this.value};l.prototype.toString=function(){return this.value+\"\"};l.prototype.toJSON=function(){return this.value};l.prototype.peek=function(){var i=this;return o(function(){return i.value})};Object.defineProperty(l.prototype,\"value\",{get:function(){var i=a(this);if(void 0!==i)i.i=this.i;return this.v},set:function(i){if(i!==this.v){if(v>100)throw new Error(\"Cycle detected\");!function(i){if(0!==s&&0===v)if(i.l!==e){i.l=e;c={S:i,v:i.v,i:i.i,o:c}}}(this);this.v=i;this.i++;d++;s++;try{for(var n=this.t;void 0!==n;n=n.x)n.t.N()}finally{t()}}}});function y(i,t){return new l(i,t)}function w(i){for(var t=i.s;void 0!==t;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function _(i){for(var t=i.s;void 0!==t;t=t.n){var n=t.S.n;if(void 0!==n)t.r=n;t.S.n=t;t.i=-1;if(void 0===t.n){i.s=t;break}}}function b(i){var t=i.s,n=void 0;while(void 0!==t){var r=t.p;if(-1===t.i){t.S.U(t);if(void 0!==r)r.n=t.n;if(void 0!==t.n)t.n.p=r}else n=t;t.S.n=t.r;if(void 0!==t.r)t.r=void 0;t=r}i.s=n}function p(i,t){l.call(this,void 0,t);this.x=i;this.s=void 0;this.g=d-1;this.f=4}p.prototype=new l;p.prototype.h=function(){this.f&=-3;if(1&this.f)return!1;if(32==(36&this.f))return!0;this.f&=-5;if(this.g===d)return!0;this.g=d;this.f|=1;if(this.i>0&&!w(this)){this.f&=-2;return!0}var i=r;try{_(this);r=this;var t=this.x();if(16&this.f||this.v!==t||0===this.i){this.v=t;this.f&=-17;this.i++}}catch(i){this.v=i;this.f|=16;this.i++}r=i;b(this);this.f&=-2;return!0};p.prototype.S=function(i){if(void 0===this.t){this.f|=36;for(var t=this.s;void 0!==t;t=t.n)t.S.S(t)}l.prototype.S.call(this,i)};p.prototype.U=function(i){if(void 0!==this.t){l.prototype.U.call(this,i);if(void 0===this.t){this.f&=-33;for(var t=this.s;void 0!==t;t=t.n)t.S.U(t)}}};p.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var i=this.t;void 0!==i;i=i.x)i.t.N()}};Object.defineProperty(p.prototype,\"value\",{get:function(){if(1&this.f)throw new Error(\"Cycle detected\");var i=a(this);this.h();if(void 0!==i)i.i=this.i;if(16&this.f)throw this.v;return this.v}});function g(i,t){return new p(i,t)}function S(i){var n=i.m;i.m=void 0;if(\"function\"==typeof n){s++;var o=r;r=void 0;try{n()}catch(t){i.f&=-2;i.f|=8;m(i);throw t}finally{r=o;t()}}}function m(i){for(var t=i.s;void 0!==t;t=t.n)t.S.U(t);i.x=void 0;i.s=void 0;S(i)}function x(i){if(r!==this)throw new Error(\"Out-of-order effect\");b(this);r=i;this.f&=-2;if(8&this.f)m(this);t()}function E(i,t){this.x=i;this.m=void 0;this.s=void 0;this.u=void 0;this.f=32;this.name=null==t?void 0:t.name;if(f)f.push(this)}E.prototype.c=function(){var i=this.S();try{if(8&this.f)return;if(void 0===this.x)return;var t=this.x();if(\"function\"==typeof t)this.m=t}finally{i()}};E.prototype.S=function(){if(1&this.f)throw new Error(\"Cycle detected\");this.f|=1;this.f&=-9;S(this);_(this);s++;var i=r;r=this;return x.bind(this,i)};E.prototype.N=function(){if(!(2&this.f)){this.f|=2;this.u=h;h=this}};E.prototype.d=function(){this.f|=8;if(!(1&this.f))m(this)};E.prototype.dispose=function(){this.d()};function j(i,t){var n=new E(i,t);try{n.c()}catch(i){n.d();throw i}var r=n.d.bind(n);r[Symbol.dispose]=r;return r}function C(i){return function(){var t=arguments,r=this;return n(function(){return o(function(){return i.apply(r,[].slice.call(t))})})}}function O(){var i=f;f=[];return function(){var t=f;if(f&&i)i=i.concat(f);f=i;return t}}var k=function(i){for(var t in i){var n=i[t];if(\"function\"==typeof n)i[t]=C(n);else if(\"object\"==typeof n&&null!==n&&!(\"brand\"in n))k(n)}};function T(i){return function(){var t,n,r=O();try{n=i.apply(void 0,[].slice.call(arguments))}catch(i){f=void 0;throw i}finally{t=r()}k(n);n[Symbol.dispose]=C(function(){if(t)for(var i=0;i<t.length;i++)t[i].dispose();t=void 0});return n}}export{p as Computed,E as Effect,l as Signal,C as action,n as batch,g as computed,T as createModel,j as effect,y as signal,o as untracked};//# sourceMappingURL=signals-core.module.js.map\n","var Me = Object.defineProperty;\nvar Se = (t, e, n) => e in t ? Me(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;\nvar u = (t, e, n) => Se(t, typeof e != \"symbol\" ? e + \"\" : e, n);\nimport { TimeGuard as be } from \"@bereasoftware/time-guard\";\nimport { signal as C, computed as H, effect as Oe } from \"@preact/signals-core\";\nconst Q = be, I = (t) => t, f = (t) => t;\nfunction ee(t) {\n const e = {};\n for (const [n, r] of Object.entries(t))\n typeof r == \"number\" && (e[n] = r);\n return e;\n}\nconst Ie = {\n from: (t) => I(Q.from(t)),\n now: () => I(Q.now()),\n add: (t, e) => I(f(t).add(ee(e))),\n subtract: (t, e) => I(f(t).subtract(ee(e))),\n startOf: (t, e) => I(f(t).startOf(e)),\n endOf: (t, e) => I(f(t).endOf(e)),\n // time-guard usa dayOfWeek ISO (lunes=1 … domingo=7); normalizamos a\n // 0=domingo … 6=sábado. Un test pinea esta convención (ver datelib.test.ts);\n // si time-guard difiere, ajustar solo aquí.\n dayOfWeek: (t) => f(t).dayOfWeek() % 7,\n year: (t) => f(t).year(),\n month: (t) => f(t).month(),\n dayOfMonth: (t) => f(t).day(),\n hour: (t) => f(t).hour(),\n minute: (t) => f(t).minute(),\n isBefore: (t, e) => f(t).isBefore(f(e)),\n isAfter: (t, e) => f(t).isAfter(f(e)),\n isSame: (t, e, n) => n ? f(t).isSame(f(e), n) : f(t).isSame(f(e)),\n isSameDay: (t, e) => {\n const n = f(t), r = f(e);\n return n.year() === r.year() && n.month() === r.month() && n.day() === r.day();\n },\n isBetween: (t, e, n) => f(t).isBetween(f(e), f(n)),\n // Convención del dominio: diff(a, b) = b - a (en la unidad dada).\n // time-guard.diff solo es fiable para unidades de día o mayores; las sub-día\n // ('hour'/'minute'/'second') las calculamos por epoch ms (instante), robusto.\n diff: (t, e, n) => {\n const r = f(e).valueOf() - f(t).valueOf();\n switch (n) {\n case \"second\":\n return Math.trunc(r / 1e3);\n case \"minute\":\n return Math.trunc(r / 6e4);\n case \"hour\":\n return Math.trunc(r / 36e5);\n case \"day\":\n return Math.trunc(r / 864e5);\n case \"week\":\n return Math.trunc(r / 6048e5);\n default:\n return f(e).diff(f(t), n);\n }\n },\n range: (t, e) => ({ start: t, end: e }),\n eachDayOfRange: (t, e) => {\n const n = [], r = f(e);\n let s = f(t).startOf(\"day\");\n for (; s.isBefore(r); )\n n.push(I(s)), s = s.add({ days: 1 });\n return n;\n },\n format: (t, e) => f(t).format(e),\n locale: (t, e) => I(f(t).locale(e)),\n timezone: (t, e) => I(f(t).timezone(e)),\n toISOString: (t) => f(t).toISOString(),\n toDate: (t) => f(t).toDate(),\n valueOf: (t) => f(t).valueOf()\n}, X = Ie, Ae = {\n firstDay: 0,\n weekends: !0,\n fixedWeekCount: !1,\n showNonCurrentDates: !0,\n timeZone: \"local\",\n locale: \"en\"\n};\nfunction Ce(t) {\n const e = t.replace(/\\r\\n/g, `\n`).replace(/\\r/g, `\n`).split(`\n`), n = [];\n for (const r of e)\n (r.startsWith(\" \") || r.startsWith(\"\t\")) && n.length ? n[n.length - 1] += r.slice(1) : n.push(r);\n return n;\n}\nfunction F(t, e) {\n const n = t.match(/^(\\d{4})(\\d{2})(\\d{2})(?:T(\\d{2})(\\d{2})(\\d{2})(Z)?)?$/);\n if (!n) return t;\n const [, r, s, i, a, o, l, d] = n;\n return e || !a ? `${r}-${s}-${i}` : `${r}-${s}-${i}T${a}:${o}:${l}${d ?? \"\"}`;\n}\nfunction V(t) {\n return t.replace(/\\\\n/gi, `\n`).replace(/\\\\,/g, \",\").replace(/\\\\;/g, \";\").replace(/\\\\\\\\/g, \"\\\\\");\n}\nfunction Ne(t, e) {\n const n = t.DTSTART, r = (n == null ? void 0 : n.params.VALUE) === \"DATE\", s = { start: n ? F(n.value, r) : \"\" };\n t.UID && (s.id = t.UID.value), t.SUMMARY && (s.title = V(t.SUMMARY.value)), t.DTEND && (s.end = F(t.DTEND.value, t.DTEND.params.VALUE === \"DATE\")), r && (s.allDay = !0), t.RRULE && (s.rrule = t.RRULE.value), e.length && (s.exdate = e);\n const i = {};\n return t.DESCRIPTION && (i.description = V(t.DESCRIPTION.value)), t.LOCATION && (i.location = V(t.LOCATION.value)), Object.keys(i).length && (s.extendedProps = i), s;\n}\nfunction Re(t) {\n const e = Ce(t), n = [];\n let r = null, s = [];\n for (const i of e) {\n if (i === \"BEGIN:VEVENT\") {\n r = {}, s = [];\n continue;\n }\n if (i === \"END:VEVENT\") {\n r && n.push(Ne(r, s)), r = null;\n continue;\n }\n if (!r) continue;\n const a = i.indexOf(\":\");\n if (a < 0) continue;\n const o = i.slice(0, a), l = i.slice(a + 1), [d, ...c] = o.split(\";\"), h = {};\n for (const y of c) {\n const m = y.indexOf(\"=\");\n m > 0 && (h[y.slice(0, m).toUpperCase()] = y.slice(m + 1));\n }\n const v = (d ?? \"\").toUpperCase();\n if (v === \"EXDATE\") {\n for (const y of l.split(\",\")) s.push(F(y, h.VALUE === \"DATE\"));\n continue;\n }\n r[v] = { params: h, value: l };\n }\n return n;\n}\nconst P = (t) => String(t).padStart(2, \"0\");\nfunction G(t, e) {\n const n = `${t.getFullYear()}${P(t.getMonth() + 1)}${P(t.getDate())}`;\n return e ? n : `${n}T${P(t.getHours())}${P(t.getMinutes())}${P(t.getSeconds())}`;\n}\nfunction z(t) {\n return t.replace(/\\\\/g, \"\\\\\\\\\").replace(/;/g, \"\\\\;\").replace(/,/g, \"\\\\,\").replace(/\\n/g, \"\\\\n\");\n}\nfunction Ge(t) {\n if (t.length <= 75) return t;\n const e = [];\n let n = t;\n for (e.push(n.slice(0, 75)), n = n.slice(75); n.length > 74; )\n e.push(\" \" + n.slice(0, 74)), n = n.slice(74);\n return n.length && e.push(\" \" + n), e.join(`\\r\n`);\n}\nfunction Wt(t, e = X) {\n const n = [\n \"BEGIN:VCALENDAR\",\n \"VERSION:2.0\",\n \"PRODID:-//Reservi//Calendar//EN\",\n \"CALSCALE:GREGORIAN\"\n ];\n return t.forEach((r, s) => {\n var d, c, h;\n const i = r.allDay === !0, a = e.toDate(e.from(r.start));\n if (n.push(\"BEGIN:VEVENT\"), n.push(`UID:${r.id ?? `rsv-${s}-${G(a, !1)}`}`), n.push(`DTSTAMP:${G(a, !1)}`), n.push(\n i ? `DTSTART;VALUE=DATE:${G(a, !0)}` : `DTSTART:${G(a, !1)}`\n ), r.end != null) {\n const v = e.toDate(e.from(r.end));\n n.push(\n i ? `DTEND;VALUE=DATE:${G(v, !0)}` : `DTEND:${G(v, !1)}`\n );\n }\n r.title && n.push(`SUMMARY:${z(r.title)}`);\n const o = (d = r.extendedProps) == null ? void 0 : d.description;\n typeof o == \"string\" && n.push(`DESCRIPTION:${z(o)}`);\n const l = (c = r.extendedProps) == null ? void 0 : c.location;\n typeof l == \"string\" && n.push(`LOCATION:${z(l)}`), r.rrule && n.push(`RRULE:${r.rrule}`), (h = r.exdate) != null && h.length && n.push(`EXDATE:${r.exdate.map((v) => G(e.toDate(e.from(v)), i)).join(\",\")}`), n.push(\"END:VEVENT\");\n }), n.push(\"END:VCALENDAR\"), n.map(Ge).join(`\\r\n`);\n}\nfunction We(t) {\n var e, n;\n return !t.searchText && !((e = t.colors) != null && e.length) && !((n = t.statuses) != null && n.length) && !t.dateFrom && !t.dateTo;\n}\nfunction Pt(t, e, n = X) {\n var a;\n if (We(e)) return t;\n const r = (a = e.searchText) == null ? void 0 : a.toLowerCase().trim(), s = e.dateFrom ? n.from(e.dateFrom) : null, i = e.dateTo ? n.from(e.dateTo) : null;\n return t.filter((o) => {\n var l, d;\n if (r) {\n const c = typeof o.extendedProps.description == \"string\" ? o.extendedProps.description : \"\";\n if (!`${o.title} ${c}`.toLowerCase().includes(r)) return !1;\n }\n if ((l = e.colors) != null && l.length && !e.colors.includes(o.backgroundColor)) return !1;\n if ((d = e.statuses) != null && d.length) {\n const c = o.extendedProps.status;\n if (typeof c != \"string\" || !e.statuses.includes(c)) return !1;\n }\n return !(s && n.isBefore(o.start, s) || i && n.isAfter(o.start, i));\n });\n}\nfunction Lt(t) {\n return [...new Set(t.map((e) => e.backgroundColor).filter(Boolean))];\n}\nfunction jt(t) {\n return [\n ...new Set(\n t.map((e) => e.extendedProps.status).filter((e) => typeof e == \"string\")\n )\n ];\n}\nconst Pe = /* @__PURE__ */ new Set([\n \"id\",\n \"groupId\",\n \"title\",\n \"start\",\n \"end\",\n \"allDay\",\n \"url\",\n \"editable\",\n \"startEditable\",\n \"durationEditable\",\n \"display\",\n \"color\",\n \"backgroundColor\",\n \"borderColor\",\n \"textColor\",\n \"classNames\",\n \"resourceId\",\n \"resourceIds\",\n \"daysOfWeek\",\n \"startTime\",\n \"endTime\",\n \"startRecur\",\n \"endRecur\",\n \"duration\",\n \"rrule\",\n \"exdate\",\n \"extendedProps\"\n]);\nfunction T(t) {\n const e = t.split(\":\").map((i) => Number(i)), n = e[0] ?? 0, r = e[1] ?? 0, s = e[2] ?? 0;\n return n * 60 + r + Math.floor(s / 60);\n}\nfunction N(t, e) {\n return e.hour(t) * 60 + e.minute(t);\n}\nconst Le = { SU: 0, MO: 1, TU: 2, WE: 3, TH: 4, FR: 5, SA: 6 }, q = 2e4;\nfunction je(t, e, n) {\n const r = /* @__PURE__ */ new Map();\n for (const a of t.replace(/^RRULE:/i, \"\").split(\";\")) {\n const [o, l] = a.split(\"=\");\n o && l && r.set(o.toUpperCase(), l);\n }\n const s = r.get(\"FREQ\");\n if (!s || ![\"DAILY\", \"WEEKLY\", \"MONTHLY\", \"YEARLY\"].includes(s)) return null;\n const i = r.get(\"BYDAY\") ? r.get(\"BYDAY\").split(\",\").map((a) => Le[a.trim().toUpperCase().slice(-2)]).filter((a) => a !== void 0) : null;\n return {\n kind: \"rrule\",\n freq: s,\n interval: Number(r.get(\"INTERVAL\") ?? 1) || 1,\n count: r.has(\"COUNT\") ? Number(r.get(\"COUNT\")) : null,\n until: r.get(\"UNTIL\") ?? null,\n byDay: i,\n durationMin: e,\n exdate: n\n };\n}\nfunction de(t, e, n, r) {\n const s = t.allDay ? t.end : n > 0 ? r.add(e, { minutes: n }) : t.end;\n return {\n ...t,\n id: `${t.id}::${r.toISOString(e)}`,\n start: e,\n end: s,\n recurrence: null,\n extendedProps: { ...t.extendedProps, recurringId: t.id }\n };\n}\nfunction ce(t, e, n) {\n if (!e.length) return !1;\n const r = n.toISOString(t), s = r.slice(0, 10);\n return e.some((i) => i === r || i.slice(0, 10) === s);\n}\nfunction He(t, e, n, r) {\n const s = [], i = e.startRecur ? r.from(e.startRecur) : null, a = e.endRecur ? r.from(e.endRecur) : null;\n for (const o of r.eachDayOfRange(n.activeStart, n.activeEnd)) {\n if (!e.daysOfWeek.includes(r.dayOfWeek(o)) || i && r.isBefore(o, r.startOf(i, \"day\")) || a && !r.isBefore(o, a)) continue;\n const l = r.add(r.startOf(o, \"day\"), { minutes: e.startTimeMin });\n ce(l, e.exdate, r) || s.push(de(t, l, e.durationMin, r));\n }\n return s;\n}\nfunction* _e(t, e, n) {\n var s;\n if (t.freq === \"WEEKLY\" && ((s = t.byDay) != null && s.length)) {\n const i = (n.dayOfWeek(e) - 1 + 7) % 7, a = n.subtract(e, { days: i }), o = [...t.byDay].map((l) => (l - 1 + 7) % 7).sort((l, d) => l - d);\n for (let l = 0, d = 0; d < q; l += t.interval) {\n const c = n.add(a, { weeks: l });\n for (const h of o) {\n d++;\n const v = n.add(c, { days: h });\n n.isBefore(v, e) || (yield v);\n }\n }\n return;\n }\n const r = {\n DAILY: (i) => ({ days: i * t.interval }),\n WEEKLY: (i) => ({ weeks: i * t.interval }),\n MONTHLY: (i) => ({ months: i * t.interval }),\n YEARLY: (i) => ({ years: i * t.interval })\n };\n for (let i = 0; i < q; i++)\n yield n.add(e, r[t.freq](i));\n}\nfunction Ue(t, e, n, r) {\n const s = [], i = e.until ? r.from(e.until) : null;\n let a = 0, o = 0;\n for (const l of _e(e, t.start, r)) {\n if (++o > q || i && r.isAfter(l, i) || e.count !== null && a >= e.count || !r.isBefore(l, n.activeEnd)) break;\n a++, !r.isBefore(l, n.activeStart) && (ce(l, e.exdate, r) || s.push(de(t, l, e.durationMin, r)));\n }\n return s;\n}\nfunction Be(t, e, n) {\n const r = t.recurrence;\n return r ? r.kind === \"simple\" ? He(t, r, e, n) : Ue(t, r, e, n) : [t];\n}\nfunction $e(t, e, n) {\n const r = [];\n for (const s of t)\n s.recurrence ? r.push(...Be(s, e, n)) : r.push(s);\n return r;\n}\nconst te = [\n \"var(--color-rsv-event-1)\",\n \"var(--color-rsv-event-2)\",\n \"var(--color-rsv-event-3)\",\n \"var(--color-rsv-event-4)\",\n \"var(--color-rsv-event-5)\"\n];\nfunction Ve(t) {\n let e = 0;\n for (let n = 0; n < t.length; n++) e = e * 31 + t.charCodeAt(n) | 0;\n return te[Math.abs(e) % te.length];\n}\nfunction ze(t) {\n return t ? Array.isArray(t) ? t : t.split(/\\s+/).filter(Boolean) : [];\n}\nfunction Ye(t) {\n return typeof t.allDay == \"boolean\" ? t.allDay : typeof t.start == \"string\" && !t.start.includes(\"T\");\n}\nfunction Fe(t) {\n const e = { ...t.extendedProps ?? {} };\n for (const [n, r] of Object.entries(t))\n Pe.has(n) || (e[n] = r);\n return e;\n}\nlet qe = 0;\nfunction ne(t, e) {\n return t.duration ? T(t.duration) : t.startTime && t.endTime ? T(t.endTime) - T(t.startTime) : t.end != null ? e.diff(e.from(t.start), e.from(t.end), \"minute\") : 0;\n}\nfunction Ke(t, e) {\n var r;\n const n = t.exdate ?? [];\n if (t.rrule) {\n const s = ne(t, e) || 60;\n return je(t.rrule, s, n);\n }\n return (r = t.daysOfWeek) != null && r.length ? {\n kind: \"simple\",\n daysOfWeek: t.daysOfWeek,\n startTimeMin: T(t.startTime ?? \"00:00\"),\n durationMin: ne(t, e),\n startRecur: t.startRecur != null ? String(t.startRecur) : null,\n endRecur: t.endRecur != null ? String(t.endRecur) : null,\n exdate: n\n } : null;\n}\nfunction ue(t, e) {\n const n = t.id ?? `rsv-evt-${++qe}`, r = t.groupId ?? \"\", s = t.color ?? t.backgroundColor ?? Ve(r || n), i = t.resourceIds ?? (t.resourceId ? [t.resourceId] : []);\n return {\n id: n,\n groupId: r,\n title: t.title ?? \"\",\n start: e.from(t.start),\n end: t.end != null ? e.from(t.end) : null,\n allDay: Ye(t),\n url: t.url ?? \"\",\n display: t.display ?? \"auto\",\n editable: t.editable ?? null,\n backgroundColor: t.backgroundColor ?? s,\n borderColor: t.borderColor ?? s,\n textColor: t.textColor ?? \"var(--color-rsv-event-fg, #fff)\",\n classNames: ze(t.classNames),\n resourceIds: i,\n recurrence: Ke(t, e),\n extendedProps: Fe(t)\n };\n}\nclass Xe {\n constructor() {\n u(this, \"entries\", /* @__PURE__ */ new Map());\n }\n get(e) {\n const n = this.entries.get(e);\n if (n) {\n if (Date.now() >= n.expiresAt) {\n this.entries.delete(e);\n return;\n }\n return n.value;\n }\n }\n set(e, n, r) {\n this.entries.set(e, { value: n, expiresAt: Date.now() + r });\n }\n /** Borra todas las entradas cuya key empiece por `prefix` (p. ej. el id de una fuente). */\n deleteByPrefix(e) {\n for (const n of this.entries.keys())\n n.startsWith(e) && this.entries.delete(n);\n }\n clear() {\n this.entries.clear();\n }\n}\nfunction Ze(t) {\n return typeof t == \"object\" && t !== null && !Array.isArray(t) && \"url\" in t;\n}\nfunction Je(t) {\n return typeof t == \"object\" && t !== null && !Array.isArray(t) && \"events\" in t;\n}\nclass Qe {\n constructor(e, n, r = () => {\n }, s) {\n u(this, \"_byId\", C({}));\n /** Eventos normalizados de todas las fuentes (reactivo). */\n u(this, \"events\", H(\n () => Object.values(this._byId.value).flat()\n ));\n u(this, \"sources\", []);\n u(this, \"cache\", new Xe());\n u(this, \"idSeq\", 0);\n u(this, \"pending\", 0);\n this.dl = e, this.httpFactory = n, this.onLoading = r, this.transform = s;\n }\n add(e) {\n const n = this.resolve(e);\n return this.sources.push(n), { id: n.id };\n }\n getAll() {\n return this.sources.map((e) => ({ id: e.id }));\n }\n removeAll() {\n this.sources.length = 0, this._byId.value = {}, this.cache.clear();\n }\n remove(e) {\n const n = this.sources.findIndex((s) => s.id === e);\n if (n < 0) return;\n this.sources.splice(n, 1);\n const r = { ...this._byId.value };\n delete r[e], this._byId.value = r, this.cache.deleteByPrefix(`${e}:`);\n }\n /** Re-pide todas las fuentes (carga inicial / `refetchEvents`). */\n fetchAll(e) {\n return this.run(this.sources, e);\n }\n /** Re-pide solo las dinámicas (cambio de rango con `lazyFetching`). */\n fetchDynamic(e) {\n return this.run(\n this.sources.filter((n) => n.dynamic),\n e\n );\n }\n /** Re-pide una sola fuente (al añadirla). */\n fetchOne(e, n) {\n const r = this.sources.find((s) => s.id === e);\n return r ? this.run([r], n) : Promise.resolve();\n }\n async run(e, n) {\n e.length && (this.setLoading(e.length), await Promise.all(\n e.map(async (r) => {\n try {\n const s = `${r.id}:${n.startStr}:${n.endStr}`, i = r.ttl ? this.cache.get(s) : void 0, a = i ?? await r.fetch(n);\n r.ttl && !i && this.cache.set(s, a, r.ttl);\n const o = a.map((l) => {\n const d = r.color ? { color: r.color, ...l } : l;\n return ue(this.transform ? this.transform(d) : d, this.dl);\n });\n this._byId.value = { ...this._byId.value, [r.id]: o };\n } catch {\n this._byId.value = { ...this._byId.value, [r.id]: [] };\n } finally {\n this.setLoading(-1);\n }\n })\n ));\n }\n setLoading(e) {\n const n = this.pending > 0;\n this.pending += e;\n const r = this.pending > 0;\n n !== r && this.onLoading(r);\n }\n resolve(e) {\n const n = `src-${++this.idSeq}`;\n if (Array.isArray(e))\n return { id: n, dynamic: !1, fetch: () => Promise.resolve(e) };\n if (typeof e == \"function\")\n return { id: n, dynamic: !0, fetch: (r) => Promise.resolve(e(r)) };\n if (Ze(e))\n return this.jsonSource(n, e);\n if (Je(e)) {\n const r = this.resolve(e.events);\n return {\n id: e.id ?? r.id,\n color: e.color ?? r.color,\n dynamic: r.dynamic,\n ttl: e.ttl ?? r.ttl,\n fetch: r.fetch\n };\n }\n return { id: n, dynamic: !1, fetch: () => Promise.resolve([]) };\n }\n jsonSource(e, n) {\n return {\n id: n.id ?? e,\n color: n.color,\n dynamic: !0,\n ttl: n.ttl,\n fetch: async (r) => {\n const s = await this.httpFactory(), i = typeof n.extraParams == \"function\" ? n.extraParams() : n.extraParams ?? {}, a = {\n [n.startParam ?? \"start\"]: r.startStr,\n [n.endParam ?? \"end\"]: r.endStr,\n ...i\n }, o = n.headers ? { headers: n.headers } : {};\n if (n.format === \"ics\") {\n const d = await s.get(n.url, { ...o, query: a });\n return d.ok && typeof d.value.data == \"string\" ? Re(d.value.data) : [];\n }\n const l = (n.method ?? \"GET\") === \"POST\" ? await s.post(n.url, a, o) : await s.get(n.url, { ...o, query: a });\n return l.ok ? l.value.data ?? [] : [];\n }\n };\n }\n}\nfunction Ht(t) {\n return t;\n}\nclass et {\n constructor(e = []) {\n u(this, \"views\", /* @__PURE__ */ new Map());\n u(this, \"loaded\", /* @__PURE__ */ new Set());\n /** Plugins cargados en orden de dependencias (deps antes que el plugin). */\n u(this, \"pluginList\", []);\n for (const n of e) this.load(n);\n }\n load(e) {\n if (!this.loaded.has(e.name)) {\n this.loaded.add(e.name);\n for (const n of e.deps ?? []) this.load(n);\n for (const [n, r] of Object.entries(e.views ?? {}))\n this.views.set(n, r);\n this.pluginList.push(e);\n }\n }\n /** Plugins activos en orden de dependencias (para ejecutar `setup`). */\n plugins() {\n return this.pluginList;\n }\n has(e) {\n return this.views.has(e);\n }\n get(e) {\n const n = this.views.get(e);\n if (!n)\n throw new Error(\n `[reservi] Vista desconocida: \"${e}\". ¿Falta registrar su plugin en 'plugins'?`\n );\n return n;\n }\n list() {\n return [...this.views.keys()];\n }\n}\nfunction he(t, e, n) {\n const r = (n.dayOfWeek(t) - e + 7) % 7;\n return r === 0 ? n.startOf(t, \"day\") : n.subtract(n.startOf(t, \"day\"), { days: r });\n}\nfunction tt(t, e, n) {\n const r = (n.dayOfWeek(t) - e + 7) % 7;\n return r === 0 ? n.startOf(t, \"day\") : n.add(n.startOf(t, \"day\"), { days: 7 - r });\n}\nfunction nt(t, e, n, r) {\n return e.duration.months ? r.startOf(t, \"month\") : e.duration.years ? r.startOf(t, \"year\") : e.duration.weeks ? he(t, n, r) : r.startOf(t, \"day\");\n}\nfunction fe(t, e, n, r) {\n const s = nt(e, t, n.firstDay, r), i = r.add(s, t.duration);\n if (t.kind === \"dayGrid\" || t.kind === \"resourceDayGridMonth\") {\n const a = he(s, n.firstDay, r);\n let o = tt(i, n.firstDay, r);\n if (n.fixedWeekCount && t.duration.months) {\n const l = Math.round(r.diff(a, o, \"day\") / 7);\n l < 6 && (o = r.add(o, { weeks: 6 - l }));\n }\n return { activeStart: a, activeEnd: o, currentStart: s, currentEnd: i };\n }\n return { activeStart: s, activeEnd: i, currentStart: s, currentEnd: i };\n}\nconst re = { daysOfWeek: [1, 2, 3, 4, 5], startMin: 540, endMin: 1020 };\nfunction L(t) {\n return t ? t === !0 ? re : {\n daysOfWeek: t.daysOfWeek ?? re.daysOfWeek,\n startMin: T(t.startTime ?? \"09:00\"),\n endMin: T(t.endTime ?? \"17:00\")\n } : null;\n}\nfunction Z(t, e, n) {\n return e.daysOfWeek.includes(n.dayOfWeek(t));\n}\nfunction rt(t, e, n, r) {\n if (!Z(t, n, r)) return !1;\n const s = N(t, r), i = e ? N(e, r) : s, a = i === 0 ? 1440 : i;\n return s >= n.startMin && a <= n.endMin;\n}\nfunction Y(t, e) {\n return e.year(t) * 1e4 + e.month(t) * 100 + e.dayOfMonth(t);\n}\nfunction W(t, e, n, r) {\n if (t.allDay) {\n const i = Y(e, r), a = Y(t.start, r);\n if (!t.end) return i === a;\n const o = Y(t.end, r);\n return o > a ? i >= a && i < o : i === a;\n }\n const s = t.end ?? t.start;\n return r.isBefore(t.start, n) && r.isAfter(s, e);\n}\nconst j = 864e5;\nfunction ye(t) {\n return new Date(Date.UTC(t.getFullYear(), t.getMonth(), t.getDate()));\n}\nfunction st(t) {\n const e = ye(t), n = (e.getUTCDay() + 6) % 7;\n e.setUTCDate(e.getUTCDate() - n + 3);\n const r = new Date(Date.UTC(e.getUTCFullYear(), 0, 4)), s = (r.getUTCDay() + 6) % 7;\n return r.setUTCDate(r.getUTCDate() - s + 3), 1 + Math.round((e.getTime() - r.getTime()) / (7 * j));\n}\nfunction it(t, e) {\n const n = ye(t), r = (n.getUTCDay() - e + 7) % 7, s = n.getTime() - r * j, i = new Date(Date.UTC(n.getUTCFullYear(), 0, 1)), a = (i.getUTCDay() - e + 7) % 7, o = i.getTime() - a * j;\n return Math.floor((s - o) / (7 * j)) + 1;\n}\nfunction at(t, e, n = \"local\") {\n return n === \"ISO\" ? st(t) : it(t, e);\n}\nfunction ot(t) {\n return t === !0 ? 3 : typeof t == \"number\" ? t : 1 / 0;\n}\nfunction me(t, e, n, r, s) {\n var v;\n const i = r.hiddenDays ?? [], a = 7 - new Set(i.filter((y) => y >= 0 && y <= 6)).size, o = s.eachDayOfRange(t.activeStart, t.activeEnd).filter((y) => !i.includes(s.dayOfWeek(y))), l = s.month(t.currentStart), d = ot(r.dayMaxEvents), c = o.map((y) => {\n const m = s.startOf(y, \"day\"), S = s.add(m, { days: 1 }), k = s.dayOfWeek(m), p = e.filter((x) => W(x, m, S, s)).sort((x, A) => x.allDay !== A.allDay ? x.allDay ? -1 : 1 : s.valueOf(x.start) - s.valueOf(A.start)), g = Number.isFinite(d) ? p.slice(0, d) : p, E = Number.isFinite(d) ? p.slice(d) : [];\n return {\n date: m,\n dayOfWeek: k,\n isToday: s.isSameDay(m, n),\n isWeekend: k === 0 || k === 6,\n isOther: s.month(m) !== l,\n isBusiness: r.businessHours ? Z(m, r.businessHours, s) : !0,\n isSelected: r.selection ? s.isBetween(m, r.selection.start, r.selection.end) : !1,\n events: g,\n hiddenEvents: E,\n moreCount: E.length\n };\n }), h = [];\n for (let y = 0; y < c.length; y += a) {\n const m = c.slice(y, y + a), S = (v = m[0]) != null && v.date ? r.weekNumbers ? {\n days: m,\n weekNumber: at(\n s.toDate(m[0].date),\n r.firstDay,\n r.weekNumberCalc\n )\n } : { days: m } : { days: m };\n h.push(S);\n }\n return { weeks: h, columnCount: a };\n}\nfunction J(t) {\n const e = /* @__PURE__ */ new Map(), n = [...t].sort((a, o) => a.startMin - o.startMin || a.endMin - o.endMin);\n let r = [], s = -1 / 0;\n const i = () => {\n if (!r.length) return;\n const a = [];\n for (const l of r) {\n let d = a.findIndex((c) => c <= l.startMin);\n d === -1 ? (d = a.length, a.push(l.endMin)) : a[d] = l.endMin, e.set(l, { col: d, colCount: 0 });\n }\n const o = a.length;\n for (const l of r) e.get(l).colCount = o;\n r = [], s = -1 / 0;\n };\n for (const a of n)\n a.startMin >= s && r.length && i(), r.push(a), s = Math.max(s, a.endMin);\n return i(), e;\n}\nconst lt = 30;\nfunction dt(t, e, n, r, s) {\n const i = T(r.slotMinTime ?? \"00:00\"), a = T(r.slotMaxTime ?? \"24:00\"), o = T(r.slotDuration ?? \"00:30\"), l = T(r.slotLabelInterval ?? \"01:00\"), d = a - i, c = r.hiddenDays ?? [], h = s.eachDayOfRange(t.activeStart, t.activeEnd).filter((k) => !c.includes(s.dayOfWeek(k))), v = [], y = s.startOf(t.activeStart, \"day\");\n for (let k = i; k < a; k += o) {\n const p = (k - i) % l === 0;\n v.push({\n offsetMin: k - i,\n isMajor: p,\n label: p ? s.format(s.add(y, { minutes: k }), \"HH:mm\") : \"\"\n });\n }\n const m = h.map((k) => {\n const p = s.startOf(k, \"day\"), g = s.add(p, { days: 1 }), E = s.dayOfWeek(p), x = e.filter((D) => W(D, p, g, s)), A = x.filter((D) => D.allDay), R = x.filter((D) => !D.allDay).map((D) => {\n const M = N(D.start, s), $ = D.end ? N(D.end, s) : M + lt, Te = Math.max(M, i) - i, xe = Math.min(Math.max($, M + 1), a) - i;\n return { event: D, startMin: Te, endMin: xe };\n }), B = J(R), w = R.map((D) => {\n const M = B.get(D);\n return {\n ...D,\n topPct: D.startMin / d * 100,\n heightPct: (D.endMin - D.startMin) / d * 100,\n col: M.col,\n colCount: M.colCount\n };\n });\n let O = null;\n if (r.businessHours && Z(p, r.businessHours, s)) {\n const D = Math.max(r.businessHours.startMin, i) - i, M = Math.min(r.businessHours.endMin, a) - i;\n M > D && (O = { topPct: D / d * 100, bottomPct: M / d * 100 });\n }\n return {\n date: p,\n isToday: s.isSameDay(p, n),\n isWeekend: E === 0 || E === 6,\n allDayEvents: A,\n timedSegs: w,\n businessPct: O\n };\n });\n let S = null;\n if (r.nowIndicator !== !1) {\n const k = N(n, s), p = m.findIndex((g) => g.isToday);\n p >= 0 && k >= i && k <= a && (S = { dayIndex: p, topPct: (k - i) / d * 100 });\n }\n return { slots: v, days: m, minMinutes: i, maxMinutes: a, slotDurationMin: o, nowIndicator: S };\n}\nfunction ct(t, e, n, r, s = []) {\n const i = [];\n for (const a of r.eachDayOfRange(t.activeStart, t.activeEnd)) {\n if (s.includes(r.dayOfWeek(a))) continue;\n const o = r.startOf(a, \"day\"), l = r.add(o, { days: 1 }), d = e.filter((c) => W(c, o, l, r)).sort((c, h) => c.allDay !== h.allDay ? c.allDay ? -1 : 1 : r.valueOf(c.start) - r.valueOf(h.start));\n d.length && i.push({ date: o, isToday: r.isSameDay(o, n), events: d });\n }\n return { days: i, isEmpty: i.length === 0 };\n}\nconst ut = { kind: \"dayGrid\", duration: { months: 1 } };\nfunction ht(t, e, n, r, s) {\n const i = [];\n let a = t.currentStart;\n for (; s.isBefore(a, t.currentEnd); ) {\n const o = s.startOf(a, \"month\"), l = fe(\n ut,\n o,\n { firstDay: r.firstDay, fixedWeekCount: !1 },\n s\n );\n i.push({\n date: o,\n dayGrid: me(l, e, n, r, s)\n }), a = s.add(o, { months: 1 });\n }\n return { months: i };\n}\nconst ve = 60;\nfunction se(t, e, n) {\n return Math.max(e, Math.min(n, t));\n}\nfunction ge(t, e) {\n const n = e.diff(t.activeStart, t.activeEnd, \"minute\"), r = n <= 1440, s = [];\n if (r)\n for (let i = 0; i < n; i += 60) {\n const a = e.add(t.activeStart, { minutes: i });\n s.push({ leftPct: i / n * 100, label: e.format(a, \"HH:mm\"), isMajor: !0 });\n }\n else\n for (let a = 0; a < n; a += 1440) {\n const o = e.add(t.activeStart, { minutes: a });\n s.push({ leftPct: a / n * 100, label: e.format(o, \"DD\"), isMajor: !0 });\n }\n return { slots: s, totalMin: n, hourly: r };\n}\nfunction ke(t, e, n) {\n const r = t.end ?? n.add(t.start, { minutes: ve });\n return n.isBefore(t.start, e.activeEnd) && n.isAfter(r, e.activeStart);\n}\nfunction pe(t, e, n, r) {\n const s = t.map((a) => {\n const o = se(r.diff(e.activeStart, a.start, \"minute\"), 0, n), l = a.end ? r.diff(e.activeStart, a.end, \"minute\") : o + ve, d = se(l, o + 1, n);\n return { event: a, startMin: o, endMin: d };\n }), i = J(s);\n return s.map((a) => {\n const o = i.get(a);\n return {\n event: a.event,\n leftPct: a.startMin / n * 100,\n widthPct: (a.endMin - a.startMin) / n * 100,\n lane: o.col,\n laneCount: o.colCount\n };\n });\n}\nfunction ft(t, e, n) {\n const r = ge(t, n), s = e.filter((o) => ke(o, t, n)), i = pe(s, t, r.totalMin, n), a = i.reduce((o, l) => Math.max(o, l.laneCount), 1);\n return { slots: r.slots, segs: i, laneCount: a, hourly: r.hourly };\n}\nfunction yt(t, e) {\n return t.resourceIds.includes(e);\n}\nfunction mt(t, e, n, r) {\n const s = ge(t, r), i = e.filter((o) => ke(o, t, r)), a = n.map((o) => {\n const l = i.filter((h) => yt(h, o.resource.id)), d = pe(l, t, s.totalMin, r), c = d.reduce((h, v) => Math.max(h, v.laneCount), 1);\n return { row: o, segs: d, laneCount: c };\n });\n return { slots: s.slots, lanes: a, hourly: s.hourly };\n}\nconst vt = 30;\nfunction gt(t, e, n, r, s, i) {\n const a = T(s.slotMinTime ?? \"00:00\"), o = T(s.slotMaxTime ?? \"24:00\"), l = T(s.slotDuration ?? \"00:30\"), d = T(s.slotLabelInterval ?? \"01:00\"), c = o - a, h = i.startOf(t.activeStart, \"day\"), v = i.add(h, { days: 1 }), y = h, m = [];\n for (let g = a; g < o; g += l) {\n const E = (g - a) % d === 0;\n m.push({\n offsetMin: g - a,\n isMajor: E,\n label: E ? i.format(i.add(y, { minutes: g }), \"HH:mm\") : \"\"\n });\n }\n const S = e.filter((g) => W(g, h, v, i)), k = n.map((g) => {\n const E = S.filter((w) => w.resourceIds.includes(g.resource.id)), x = E.filter((w) => w.allDay), b = E.filter((w) => !w.allDay).map((w) => {\n const O = N(w.start, i), D = w.end ? N(w.end, i) : O + vt, M = Math.max(O, a) - a, $ = Math.min(Math.max(D, O + 1), o) - a;\n return { event: w, startMin: M, endMin: $ };\n }), R = J(b), B = b.map((w) => {\n const O = R.get(w);\n return {\n ...w,\n topPct: w.startMin / c * 100,\n heightPct: (w.endMin - w.startMin) / c * 100,\n col: O.col,\n colCount: O.colCount\n };\n });\n return { row: g, allDayEvents: x, timedSegs: B };\n });\n let p = null;\n if (s.nowIndicator !== !1 && i.isSameDay(h, r)) {\n const g = N(r, i);\n g >= a && g <= o && (p = (g - a) / c * 100);\n }\n return { date: h, slots: m, columns: k, minMinutes: a, maxMinutes: o, nowTopPct: p };\n}\nfunction kt(t, e, n, r) {\n const s = r.startOf(t.activeStart, \"day\"), i = r.add(s, { days: 1 }), a = e.filter((l) => W(l, s, i, r)), o = n.map((l) => ({\n row: l,\n events: a.filter((d) => d.resourceIds.includes(l.resource.id)).sort((d, c) => d.allDay !== c.allDay ? d.allDay ? -1 : 1 : r.valueOf(d.start) - r.valueOf(c.start))\n }));\n return { date: s, columns: o };\n}\nfunction pt(t) {\n return t === !0 ? 3 : typeof t == \"number\" ? t : 1 / 0;\n}\nfunction Dt(t, e, n, r, s, i) {\n const a = s.hiddenDays ?? [], o = 7 - new Set(a.filter((y) => y >= 0 && y <= 6)).size, l = i.eachDayOfRange(t.activeStart, t.activeEnd).filter((y) => !a.includes(i.dayOfWeek(y))), d = i.month(t.currentStart), c = pt(s.dayMaxEvents), h = l.map((y) => {\n const m = i.startOf(y, \"day\"), S = i.add(m, { days: 1 }), k = e.filter((g) => W(g, m, S, i)), p = n.map((g) => {\n const E = k.filter((b) => b.resourceIds.includes(g.resource.id)).sort((b, R) => b.allDay !== R.allDay ? b.allDay ? -1 : 1 : i.valueOf(b.start) - i.valueOf(R.start)), x = Number.isFinite(c) ? E.slice(0, c) : E, A = Number.isFinite(c) ? E.slice(c) : [];\n return { row: g, events: x, hiddenEvents: A, moreCount: A.length };\n });\n return {\n date: m,\n isToday: i.isSameDay(m, r),\n isOther: i.month(m) !== d,\n columns: p\n };\n }), v = [];\n for (let y = 0; y < h.length; y += o)\n v.push({ days: h.slice(y, y + o) });\n return { weeks: v, columnCount: o };\n}\nfunction wt(t, e) {\n return {\n id: t.id,\n title: t.title ?? t.id,\n parentId: t.parentId ?? e,\n eventColor: t.eventColor ?? null,\n extendedProps: t.extendedProps ?? {}\n };\n}\nfunction Et(t) {\n const e = [], n = [], r = (o, l) => {\n e.push(wt(o, l)), n.push(o.id);\n for (const d of o.children ?? []) r(d, o.id);\n };\n for (const o of t) r(o, null);\n const s = new Map(e.map((o) => [o.id, o])), i = new Map(e.map((o) => [o.id, { def: o, children: [] }])), a = [];\n for (const o of n) {\n const l = i.get(o), d = l.def.parentId, c = d ? i.get(d) : void 0;\n c && s.has(d) ? c.children.push(l) : a.push(l);\n }\n return a;\n}\nfunction De(t, e) {\n if (!e) return t;\n const n = e.startsWith(\"-\"), r = n ? e.slice(1) : e;\n return [...t].sort((i, a) => {\n const o = String(i.def[r] ?? \"\"), l = String(a.def[r] ?? \"\");\n return n ? l.localeCompare(o) : o.localeCompare(l);\n }).map((i) => ({ def: i.def, children: De(i.children, e) }));\n}\nfunction we(t, e, n = 0) {\n const r = [];\n for (const s of t) {\n const i = s.children.length > 0, a = !e.has(s.def.id);\n r.push({ resource: s.def, depth: n, hasChildren: i, expanded: a }), i && a && r.push(...we(s.children, e, n + 1));\n }\n return r;\n}\nconst _ = {\n en: {\n fd: 0,\n today: \"today\",\n prev: \"previous\",\n next: \"next\",\n allDay: \"all-day\",\n noEvents: \"No events to display\",\n more: \"more\",\n month: \"month\",\n week: \"week\",\n day: \"day\",\n list: \"list\",\n year: \"year\",\n work: \"work week\",\n todayHint: \"Go to today\",\n prevHint: \"Go to previous period\",\n nextHint: \"Go to next period\",\n navLinkHint: \"Go to {date}\",\n viewHint: \"Switch to {view} view\"\n },\n \"en-gb\": { ext: \"en\", fd: 1 },\n es: {\n fd: 1,\n today: \"hoy\",\n prev: \"anterior\",\n next: \"siguiente\",\n allDay: \"todo el día\",\n noEvents: \"No hay eventos para mostrar\",\n more: \"más\",\n month: \"mes\",\n week: \"semana\",\n day: \"día\",\n list: \"lista\",\n year: \"año\",\n work: \"semana laboral\",\n todayHint: \"Ir a hoy\",\n prevHint: \"Ir al periodo anterior\",\n nextHint: \"Ir al periodo siguiente\",\n navLinkHint: \"Ir a {date}\",\n viewHint: \"Cambiar a vista {view}\"\n },\n \"es-mx\": { ext: \"es\", fd: 0 },\n fr: {\n fd: 1,\n today: \"aujourd'hui\",\n prev: \"précédent\",\n next: \"suivant\",\n allDay: \"journée\",\n noEvents: \"Aucun événement à afficher\",\n more: \"de plus\",\n month: \"mois\",\n week: \"semaine\",\n day: \"jour\",\n list: \"liste\",\n year: \"année\",\n work: \"semaine de travail\"\n },\n de: {\n fd: 1,\n today: \"heute\",\n prev: \"zurück\",\n next: \"weiter\",\n allDay: \"ganztägig\",\n noEvents: \"Keine Ereignisse\",\n more: \"mehr\",\n month: \"Monat\",\n week: \"Woche\",\n day: \"Tag\",\n list: \"Liste\",\n year: \"Jahr\",\n work: \"Arbeitswoche\"\n },\n it: {\n fd: 1,\n today: \"oggi\",\n prev: \"precedente\",\n next: \"successivo\",\n allDay: \"tutto il giorno\",\n noEvents: \"Nessun evento da mostrare\",\n more: \"altri\",\n month: \"mese\",\n week: \"settimana\",\n day: \"giorno\",\n list: \"agenda\",\n year: \"anno\",\n work: \"settimana lavorativa\"\n },\n pt: {\n fd: 1,\n today: \"hoje\",\n prev: \"anterior\",\n next: \"próximo\",\n allDay: \"dia inteiro\",\n noEvents: \"Sem eventos para exibir\",\n more: \"mais\",\n month: \"mês\",\n week: \"semana\",\n day: \"dia\",\n list: \"lista\",\n year: \"ano\",\n work: \"semana de trabalho\"\n },\n \"pt-br\": { ext: \"pt\", fd: 0 },\n nl: {\n fd: 1,\n today: \"vandaag\",\n prev: \"vorige\",\n next: \"volgende\",\n allDay: \"hele dag\",\n noEvents: \"Geen evenementen\",\n more: \"meer\",\n month: \"maand\",\n week: \"week\",\n day: \"dag\",\n list: \"lijst\",\n year: \"jaar\",\n work: \"werkweek\"\n },\n sv: {\n fd: 1,\n today: \"idag\",\n prev: \"föregående\",\n next: \"nästa\",\n allDay: \"heldag\",\n noEvents: \"Inga händelser att visa\",\n more: \"till\",\n month: \"månad\",\n week: \"vecka\",\n day: \"dag\",\n list: \"lista\",\n year: \"år\",\n work: \"arbetsvecka\"\n },\n da: {\n fd: 1,\n today: \"i dag\",\n prev: \"forrige\",\n next: \"næste\",\n allDay: \"hele dagen\",\n noEvents: \"Ingen begivenheder\",\n more: \"mere\",\n month: \"måned\",\n week: \"uge\",\n day: \"dag\",\n list: \"liste\",\n year: \"år\",\n work: \"arbejdsuge\"\n },\n nb: {\n fd: 1,\n today: \"i dag\",\n prev: \"forrige\",\n next: \"neste\",\n allDay: \"hele dagen\",\n noEvents: \"Ingen hendelser å vise\",\n more: \"mer\",\n month: \"måned\",\n week: \"uke\",\n day: \"dag\",\n list: \"liste\",\n year: \"år\",\n work: \"arbeidsuke\"\n },\n fi: {\n fd: 1,\n today: \"tänään\",\n prev: \"edellinen\",\n next: \"seuraava\",\n allDay: \"koko päivä\",\n noEvents: \"Ei tapahtumia\",\n more: \"lisää\",\n month: \"kuukausi\",\n week: \"viikko\",\n day: \"päivä\",\n list: \"lista\",\n year: \"vuosi\",\n work: \"työviikko\"\n },\n is: {\n fd: 1,\n today: \"í dag\",\n prev: \"fyrri\",\n next: \"næsti\",\n allDay: \"allan daginn\",\n noEvents: \"Engir viðburðir\",\n more: \"fleiri\",\n month: \"mánuður\",\n week: \"vika\",\n day: \"dagur\",\n list: \"listi\",\n year: \"ár\",\n work: \"vinnuvika\"\n },\n pl: {\n fd: 1,\n today: \"dziś\",\n prev: \"poprzedni\",\n next: \"następny\",\n allDay: \"cały dzień\",\n noEvents: \"Brak wydarzeń\",\n more: \"więcej\",\n month: \"miesiąc\",\n week: \"tydzień\",\n day: \"dzień\",\n list: \"lista\",\n year: \"rok\",\n work: \"tydzień roboczy\"\n },\n cs: {\n fd: 1,\n today: \"dnes\",\n prev: \"předchozí\",\n next: \"další\",\n allDay: \"celý den\",\n noEvents: \"Žádné události\",\n more: \"další\",\n month: \"měsíc\",\n week: \"týden\",\n day: \"den\",\n list: \"seznam\",\n year: \"rok\",\n work: \"pracovní týden\"\n },\n sk: {\n fd: 1,\n today: \"dnes\",\n prev: \"predchádzajúci\",\n next: \"ďalší\",\n allDay: \"celý deň\",\n noEvents: \"Žiadne udalosti\",\n more: \"ďalšie\",\n month: \"mesiac\",\n week: \"týždeň\",\n day: \"deň\",\n list: \"zoznam\",\n year: \"rok\",\n work: \"pracovný týždeň\"\n },\n hu: {\n fd: 1,\n today: \"ma\",\n prev: \"előző\",\n next: \"következő\",\n allDay: \"egész nap\",\n noEvents: \"Nincsenek események\",\n more: \"további\",\n month: \"hónap\",\n week: \"hét\",\n day: \"nap\",\n list: \"lista\",\n year: \"év\",\n work: \"munkahét\"\n },\n ro: {\n fd: 1,\n today: \"azi\",\n prev: \"anterior\",\n next: \"următor\",\n allDay: \"toată ziua\",\n noEvents: \"Niciun eveniment\",\n more: \"mai multe\",\n month: \"lună\",\n week: \"săptămână\",\n day: \"zi\",\n list: \"listă\",\n year: \"an\",\n work: \"săptămână de lucru\"\n },\n bg: {\n fd: 1,\n today: \"днес\",\n prev: \"предишен\",\n next: \"следващ\",\n allDay: \"цял ден\",\n noEvents: \"Няма събития\",\n more: \"още\",\n month: \"месец\",\n week: \"седмица\",\n day: \"ден\",\n list: \"списък\",\n year: \"година\",\n work: \"работна седмица\"\n },\n el: {\n fd: 1,\n today: \"σήμερα\",\n prev: \"προηγούμενο\",\n next: \"επόμενο\",\n allDay: \"ολοήμερο\",\n noEvents: \"Δεν υπάρχουν εκδηλώσεις\",\n more: \"περισσότερα\",\n month: \"μήνας\",\n week: \"εβδομάδα\",\n day: \"ημέρα\",\n list: \"λίστα\",\n year: \"έτος\",\n work: \"εργάσιμη εβδομάδα\"\n },\n ru: {\n fd: 1,\n today: \"сегодня\",\n prev: \"назад\",\n next: \"вперёд\",\n allDay: \"весь день\",\n noEvents: \"Нет событий\",\n more: \"ещё\",\n month: \"месяц\",\n week: \"неделя\",\n day: \"день\",\n list: \"список\",\n year: \"год\",\n work: \"рабочая неделя\"\n },\n uk: {\n fd: 1,\n today: \"сьогодні\",\n prev: \"назад\",\n next: \"вперед\",\n allDay: \"весь день\",\n noEvents: \"Немає подій\",\n more: \"ще\",\n month: \"місяць\",\n week: \"тиждень\",\n day: \"день\",\n list: \"список\",\n year: \"рік\",\n work: \"робочий тиждень\"\n },\n tr: {\n fd: 1,\n today: \"bugün\",\n prev: \"önceki\",\n next: \"sonraki\",\n allDay: \"tüm gün\",\n noEvents: \"Gösterilecek etkinlik yok\",\n more: \"daha\",\n month: \"ay\",\n week: \"hafta\",\n day: \"gün\",\n list: \"liste\",\n year: \"yıl\",\n work: \"iş haftası\"\n },\n hr: {\n fd: 1,\n today: \"danas\",\n prev: \"prethodni\",\n next: \"sljedeći\",\n allDay: \"cijeli dan\",\n noEvents: \"Nema događaja\",\n more: \"više\",\n month: \"mjesec\",\n week: \"tjedan\",\n day: \"dan\",\n list: \"popis\",\n year: \"godina\",\n work: \"radni tjedan\"\n },\n sr: {\n fd: 1,\n today: \"данас\",\n prev: \"претходни\",\n next: \"следећи\",\n allDay: \"цео дан\",\n noEvents: \"Нема догађаја\",\n more: \"више\",\n month: \"месец\",\n week: \"недеља\",\n day: \"дан\",\n list: \"листа\",\n year: \"година\",\n work: \"радна недеља\"\n },\n sl: {\n fd: 1,\n today: \"danes\",\n prev: \"prejšnji\",\n next: \"naslednji\",\n allDay: \"ves dan\",\n noEvents: \"Ni dogodkov\",\n more: \"več\",\n month: \"mesec\",\n week: \"teden\",\n day: \"dan\",\n list: \"seznam\",\n year: \"leto\",\n work: \"delovni teden\"\n },\n lt: {\n fd: 1,\n today: \"šiandien\",\n prev: \"ankstesnis\",\n next: \"kitas\",\n allDay: \"visa diena\",\n noEvents: \"Nėra įvykių\",\n more: \"daugiau\",\n month: \"mėnuo\",\n week: \"savaitė\",\n day: \"diena\",\n list: \"sąrašas\",\n year: \"metai\",\n work: \"darbo savaitė\"\n },\n lv: {\n fd: 1,\n today: \"šodien\",\n prev: \"iepriekšējais\",\n next: \"nākamais\",\n allDay: \"visu dienu\",\n noEvents: \"Nav notikumu\",\n more: \"vairāk\",\n month: \"mēnesis\",\n week: \"nedēļa\",\n day: \"diena\",\n list: \"saraksts\",\n year: \"gads\",\n work: \"darba nedēļa\"\n },\n et: {\n fd: 1,\n today: \"täna\",\n prev: \"eelmine\",\n next: \"järgmine\",\n allDay: \"terve päev\",\n noEvents: \"Sündmusi pole\",\n more: \"veel\",\n month: \"kuu\",\n week: \"nädal\",\n day: \"päev\",\n list: \"loend\",\n year: \"aasta\",\n work: \"töönädal\"\n },\n ca: {\n fd: 1,\n today: \"avui\",\n prev: \"anterior\",\n next: \"següent\",\n allDay: \"tot el dia\",\n noEvents: \"No hi ha esdeveniments\",\n more: \"més\",\n month: \"mes\",\n week: \"setmana\",\n day: \"dia\",\n list: \"llista\",\n year: \"any\",\n work: \"setmana laboral\"\n },\n eu: {\n fd: 1,\n today: \"gaur\",\n prev: \"aurrekoa\",\n next: \"hurrengoa\",\n allDay: \"egun osoa\",\n noEvents: \"Ez dago gertaerarik\",\n more: \"gehiago\",\n month: \"hilabetea\",\n week: \"astea\",\n day: \"eguna\",\n list: \"zerrenda\",\n year: \"urtea\",\n work: \"lan-astea\"\n },\n gl: {\n fd: 1,\n today: \"hoxe\",\n prev: \"anterior\",\n next: \"seguinte\",\n allDay: \"todo o día\",\n noEvents: \"Non hai eventos\",\n more: \"máis\",\n month: \"mes\",\n week: \"semana\",\n day: \"día\",\n list: \"lista\",\n year: \"ano\",\n work: \"semana laboral\"\n },\n ga: {\n fd: 1,\n today: \"inniu\",\n prev: \"roimhe\",\n next: \"ar aghaidh\",\n allDay: \"lá iomlán\",\n noEvents: \"Níl aon imeacht\",\n more: \"tuilleadh\",\n month: \"mí\",\n week: \"seachtain\",\n day: \"lá\",\n list: \"liosta\",\n year: \"bliain\",\n work: \"seachtain oibre\"\n },\n cy: {\n fd: 1,\n today: \"heddiw\",\n prev: \"blaenorol\",\n next: \"nesaf\",\n allDay: \"drwy'r dydd\",\n noEvents: \"Dim digwyddiadau\",\n more: \"mwy\",\n month: \"mis\",\n week: \"wythnos\",\n day: \"dydd\",\n list: \"rhestr\",\n year: \"blwyddyn\",\n work: \"wythnos waith\"\n },\n sq: {\n fd: 1,\n today: \"sot\",\n prev: \"i mëparshëm\",\n next: \"tjetër\",\n allDay: \"gjithë ditën\",\n noEvents: \"Nuk ka ngjarje\",\n more: \"më shumë\",\n month: \"muaji\",\n week: \"java\",\n day: \"dita\",\n list: \"lista\",\n year: \"viti\",\n work: \"java e punës\"\n },\n mk: {\n fd: 1,\n today: \"денес\",\n prev: \"претходно\",\n next: \"следно\",\n allDay: \"цел ден\",\n noEvents: \"Нема настани\",\n more: \"повеќе\",\n month: \"месец\",\n week: \"недела\",\n day: \"ден\",\n list: \"листа\",\n year: \"година\",\n work: \"работна недела\"\n },\n ar: {\n fd: 6,\n rtl: !0,\n today: \"اليوم\",\n prev: \"السابق\",\n next: \"التالي\",\n allDay: \"طوال اليوم\",\n noEvents: \"لا توجد أحداث\",\n more: \"المزيد\",\n month: \"شهر\",\n week: \"أسبوع\",\n day: \"يوم\",\n list: \"قائمة\",\n year: \"سنة\",\n work: \"أسبوع العمل\"\n },\n he: {\n fd: 0,\n rtl: !0,\n today: \"היום\",\n prev: \"הקודם\",\n next: \"הבא\",\n allDay: \"כל היום\",\n noEvents: \"אין אירועים\",\n more: \"עוד\",\n month: \"חודש\",\n week: \"שבוע\",\n day: \"יום\",\n list: \"רשימה\",\n year: \"שנה\",\n work: \"שבוע עבודה\"\n },\n fa: {\n fd: 6,\n rtl: !0,\n today: \"امروز\",\n prev: \"قبلی\",\n next: \"بعدی\",\n allDay: \"تمام روز\",\n noEvents: \"رویدادی نیست\",\n more: \"بیشتر\",\n month: \"ماه\",\n week: \"هفته\",\n day: \"روز\",\n list: \"فهرست\",\n year: \"سال\",\n work: \"هفته کاری\"\n },\n ur: {\n fd: 0,\n rtl: !0,\n today: \"آج\",\n prev: \"پچھلا\",\n next: \"اگلا\",\n allDay: \"پورا دن\",\n noEvents: \"کوئی ایونٹ نہیں\",\n more: \"مزید\",\n month: \"مہینہ\",\n week: \"ہفتہ\",\n day: \"دن\",\n list: \"فہرست\",\n year: \"سال\",\n work: \"کام کا ہفتہ\"\n },\n hi: {\n fd: 0,\n today: \"आज\",\n prev: \"पिछला\",\n next: \"अगला\",\n allDay: \"पूरा दिन\",\n noEvents: \"कोई ईवेंट नहीं\",\n more: \"और\",\n month: \"महीना\",\n week: \"सप्ताह\",\n day: \"दिन\",\n list: \"सूची\",\n year: \"वर्ष\",\n work: \"कार्य सप्ताह\"\n },\n bn: {\n fd: 0,\n today: \"আজ\",\n prev: \"আগের\",\n next: \"পরের\",\n allDay: \"সারা দিন\",\n noEvents: \"কোনো ইভেন্ট নেই\",\n more: \"আরও\",\n month: \"মাস\",\n week: \"সপ্তাহ\",\n day: \"দিন\",\n list: \"তালিকা\",\n year: \"বছর\",\n work: \"কর্মসপ্তাহ\"\n },\n ta: {\n fd: 0,\n today: \"இன்று\",\n prev: \"முந்தைய\",\n next: \"அடுத்து\",\n allDay: \"நாள் முழுவதும்\",\n noEvents: \"நிகழ்வுகள் இல்லை\",\n more: \"மேலும்\",\n month: \"மாதம்\",\n week: \"வாரம்\",\n day: \"நாள்\",\n list: \"பட்டியல்\",\n year: \"ஆண்டு\",\n work: \"வேலை வாரம்\"\n },\n te: {\n fd: 0,\n today: \"ఈ రోజు\",\n prev: \"మునుపటి\",\n next: \"తదుపరి\",\n allDay: \"రోజంతా\",\n noEvents: \"ఈవెంట్లు లేవు\",\n more: \"మరిన్ని\",\n month: \"నెల\",\n week: \"వారం\",\n day: \"రోజు\",\n list: \"జాబితా\",\n year: \"సంవత్సరం\",\n work: \"పని వారం\"\n },\n ml: {\n fd: 0,\n today: \"ഇന്ന്\",\n prev: \"മുമ്പത്തെ\",\n next: \"അടുത്തത്\",\n allDay: \"ദിവസം മുഴുവൻ\",\n noEvents: \"ഇവന്റുകൾ ഇല്ല\",\n more: \"കൂടുതൽ\",\n month: \"മാസം\",\n week: \"ആഴ്ച\",\n day: \"ദിവസം\",\n list: \"പട്ടിക\",\n year: \"വർഷം\",\n work: \"പ്രവൃത്തി ആഴ്ച\"\n },\n kn: {\n fd: 0,\n today: \"ಇಂದು\",\n prev: \"ಹಿಂದಿನ\",\n next: \"ಮುಂದಿನ\",\n allDay: \"ಇಡೀ ದಿನ\",\n noEvents: \"ಯಾವುದೇ ಈವೆಂಟ್ಗಳಿಲ್ಲ\",\n more: \"ಇನ್ನಷ್ಟು\",\n month: \"ತಿಂಗಳು\",\n week: \"ವಾರ\",\n day: \"ದಿನ\",\n list: \"ಪಟ್ಟಿ\",\n year: \"ವರ್ಷ\",\n work: \"ಕೆಲಸದ ವಾರ\"\n },\n mr: {\n fd: 0,\n today: \"आज\",\n prev: \"मागील\",\n next: \"पुढील\",\n allDay: \"संपूर्ण दिवस\",\n noEvents: \"कोणतेही कार्यक्रम नाहीत\",\n more: \"अधिक\",\n month: \"महिना\",\n week: \"आठवडा\",\n day: \"दिवस\",\n list: \"यादी\",\n year: \"वर्ष\",\n work: \"कार्य आठवडा\"\n },\n gu: {\n fd: 0,\n today: \"આજે\",\n prev: \"પાછલું\",\n next: \"આગલું\",\n allDay: \"આખો દિવસ\",\n noEvents: \"કોઈ ઇવેન્ટ નથી\",\n more: \"વધુ\",\n month: \"મહિનો\",\n week: \"અઠવાડિયું\",\n day: \"દિવસ\",\n list: \"યાદી\",\n year: \"વર્ષ\",\n work: \"કાર્ય અઠવાડિયું\"\n },\n pa: {\n fd: 0,\n today: \"ਅੱਜ\",\n prev: \"ਪਿਛਲਾ\",\n next: \"ਅਗਲਾ\",\n allDay: \"ਪੂਰਾ ਦਿਨ\",\n noEvents: \"ਕੋਈ ਇਵੈਂਟ ਨਹੀਂ\",\n more: \"ਹੋਰ\",\n month: \"ਮਹੀਨਾ\",\n week: \"ਹਫ਼ਤਾ\",\n day: \"ਦਿਨ\",\n list: \"ਸੂਚੀ\",\n year: \"ਸਾਲ\",\n work: \"ਕੰਮ ਹਫ਼ਤਾ\"\n },\n th: {\n fd: 0,\n today: \"วันนี้\",\n prev: \"ก่อนหน้า\",\n next: \"ถัดไป\",\n allDay: \"ทั้งวัน\",\n noEvents: \"ไม่มีกิจกรรม\",\n more: \"เพิ่มเติม\",\n month: \"เดือน\",\n week: \"สัปดาห์\",\n day: \"วัน\",\n list: \"รายการ\",\n year: \"ปี\",\n work: \"สัปดาห์ทำงาน\"\n },\n vi: {\n fd: 1,\n today: \"hôm nay\",\n prev: \"trước\",\n next: \"tiếp\",\n allDay: \"cả ngày\",\n noEvents: \"Không có sự kiện\",\n more: \"thêm\",\n month: \"tháng\",\n week: \"tuần\",\n day: \"ngày\",\n list: \"danh sách\",\n year: \"năm\",\n work: \"tuần làm việc\"\n },\n id: {\n fd: 0,\n today: \"hari ini\",\n prev: \"sebelumnya\",\n next: \"berikutnya\",\n allDay: \"sepanjang hari\",\n noEvents: \"Tidak ada acara\",\n more: \"lainnya\",\n month: \"bulan\",\n week: \"minggu\",\n day: \"hari\",\n list: \"daftar\",\n year: \"tahun\",\n work: \"minggu kerja\"\n },\n ms: {\n fd: 1,\n today: \"hari ini\",\n prev: \"sebelum\",\n next: \"seterusnya\",\n allDay: \"sepanjang hari\",\n noEvents: \"Tiada acara\",\n more: \"lagi\",\n month: \"bulan\",\n week: \"minggu\",\n day: \"hari\",\n list: \"senarai\",\n year: \"tahun\",\n work: \"minggu kerja\"\n },\n fil: {\n fd: 0,\n today: \"ngayon\",\n prev: \"nakaraan\",\n next: \"susunod\",\n allDay: \"buong araw\",\n noEvents: \"Walang kaganapan\",\n more: \"higit pa\",\n month: \"buwan\",\n week: \"linggo\",\n day: \"araw\",\n list: \"listahan\",\n year: \"taon\",\n work: \"linggo ng trabaho\"\n },\n ja: {\n fd: 0,\n today: \"今日\",\n prev: \"前\",\n next: \"次\",\n allDay: \"終日\",\n noEvents: \"表示する予定はありません\",\n more: \"他\",\n month: \"月\",\n week: \"週\",\n day: \"日\",\n list: \"リスト\",\n year: \"年\",\n work: \"稼働週\"\n },\n ko: {\n fd: 0,\n today: \"오늘\",\n prev: \"이전\",\n next: \"다음\",\n allDay: \"종일\",\n noEvents: \"표시할 일정이 없습니다\",\n more: \"더\",\n month: \"월\",\n week: \"주\",\n day: \"일\",\n list: \"목록\",\n year: \"년\",\n work: \"근무 주\"\n },\n \"zh-cn\": {\n fd: 1,\n today: \"今天\",\n prev: \"上一个\",\n next: \"下一个\",\n allDay: \"全天\",\n noEvents: \"没有事件\",\n more: \"更多\",\n month: \"月\",\n week: \"周\",\n day: \"日\",\n list: \"列表\",\n year: \"年\",\n work: \"工作周\"\n },\n \"zh-tw\": {\n fd: 1,\n today: \"今天\",\n prev: \"上一個\",\n next: \"下一個\",\n allDay: \"全天\",\n noEvents: \"沒有活動\",\n more: \"更多\",\n month: \"月\",\n week: \"週\",\n day: \"日\",\n list: \"列表\",\n year: \"年\",\n work: \"工作週\"\n }\n}, _t = Object.keys(_);\nfunction ie(t) {\n return \"ext\" in t;\n}\nfunction K(t) {\n const e = _[t];\n if (!e) return null;\n if (ie(e)) {\n const n = _[e.ext];\n return !n || ie(n) ? null : { data: n, fd: e.fd ?? n.fd };\n }\n return { data: e, fd: e.fd };\n}\nfunction Ee(t, e, n) {\n return {\n code: t,\n direction: e.rtl ? \"rtl\" : \"ltr\",\n firstDay: n,\n today: e.today,\n prev: e.prev,\n next: e.next,\n allDay: e.allDay,\n noEvents: e.noEvents,\n more: (r) => `+${r} ${e.more}`,\n todayHint: e.todayHint ?? e.today,\n prevHint: e.prevHint ?? e.prev,\n nextHint: e.nextHint ?? e.next,\n navLinkHint: (r) => e.navLinkHint ? e.navLinkHint.replace(\"{date}\", r) : r,\n viewHint: (r) => e.viewHint ? e.viewHint.replace(\"{view}\", r) : r,\n views: {\n dayGridMonth: e.month,\n dayGridWeek: e.week,\n dayGridDay: e.day,\n dayGridYear: e.year,\n dayGridWorkWeek: e.work,\n timeGridWeek: e.week,\n timeGridDay: e.day,\n workWeek: e.work,\n listDay: e.list,\n listWeek: e.list,\n listMonth: e.list,\n listYear: e.list,\n multiMonthYear: e.year,\n timelineDay: e.day,\n timelineWeek: e.week,\n timelineMonth: e.month,\n resourceTimelineDay: e.day,\n resourceTimelineWeek: e.week,\n resourceTimelineMonth: e.month,\n resourceTimeGridDay: e.day,\n resourceDayGridDay: e.day,\n resourceDayGridMonth: e.month\n }\n };\n}\nconst ae = Ee(\"en\", K(\"en\").data, 0);\nfunction Tt(t) {\n if (!t) return ae;\n const e = t.toLowerCase(), n = K(e) ?? K(e.split(\"-\")[0] ?? \"\");\n return n ? Ee(n.data === _.en ? \"en\" : e, n.data, n.fd) : ae;\n}\nconst xt = {\n bg: \"--color-rsv-bg\",\n surface: \"--color-rsv-surface\",\n border: \"--color-rsv-border\",\n muted: \"--color-rsv-muted\",\n text: \"--color-rsv-text\",\n primary: \"--color-rsv-primary\",\n primaryFg: \"--color-rsv-primary-fg\",\n today: \"--color-rsv-today\",\n event1: \"--color-rsv-event-1\",\n event2: \"--color-rsv-event-2\",\n event3: \"--color-rsv-event-3\",\n event4: \"--color-rsv-event-4\",\n event5: \"--color-rsv-event-5\",\n eventFg: \"--color-rsv-event-fg\",\n now: \"--color-rsv-now\",\n selection: \"--color-rsv-selection\",\n nonbusiness: \"--color-rsv-nonbusiness\",\n radius: \"--radius-rsv\",\n radiusEvent: \"--radius-rsv-event\",\n slotHeight: \"--spacing-rsv-slot\",\n fontSans: \"--font-rsv-sans\"\n};\nfunction Ut(t) {\n return Object.keys(t).filter((e) => t[e] != null).map((e) => `${xt[e]}:${t[e]}`).join(\";\");\n}\nfunction Bt(t) {\n return t;\n}\nfunction Mt(t, e) {\n return t.hiddenDays && t.hiddenDays.length ? t.hiddenDays : e.hiddenDays && e.hiddenDays.length ? e.hiddenDays : e.weekends === !1 ? [0, 6] : [];\n}\nconst St = 4;\nfunction oe(t) {\n if (typeof t != \"object\" || t === null) return !1;\n const e = Object.getPrototypeOf(t);\n return e === Object.prototype || e === null;\n}\nfunction U(t, e, n = 0) {\n if (t === e) return !0;\n if (n >= St) return !1;\n if (typeof t == \"number\" && typeof e == \"number\") return Number.isNaN(t) && Number.isNaN(e);\n if (t == null || e == null) return !1;\n if (Array.isArray(t) || Array.isArray(e))\n return !Array.isArray(t) || !Array.isArray(e) || t.length !== e.length ? !1 : t.every((r, s) => U(r, e[s], n + 1));\n if (t instanceof Date || e instanceof Date)\n return t instanceof Date && e instanceof Date && t.getTime() === e.getTime();\n if (oe(t) && oe(e)) {\n const r = Object.keys(t), s = Object.keys(e);\n return r.length !== s.length ? !1 : r.every(\n (i) => Object.prototype.hasOwnProperty.call(e, i) && U(t[i], e[i], n + 1)\n );\n }\n return !1;\n}\nconst $t = {\n name: \"daygrid\",\n views: {\n dayGridMonth: { type: \"dayGridMonth\", kind: \"dayGrid\", duration: { months: 1 } },\n dayGridWeek: { type: \"dayGridWeek\", kind: \"dayGrid\", duration: { weeks: 1 } },\n dayGridDay: { type: \"dayGridDay\", kind: \"dayGrid\", duration: { days: 1 } },\n dayGridYear: { type: \"dayGridYear\", kind: \"dayGrid\", duration: { years: 1 } },\n // ✨ Semana laboral (L–V) en cuadrícula de días.\n dayGridWorkWeek: {\n type: \"dayGridWorkWeek\",\n kind: \"dayGrid\",\n duration: { weeks: 1 },\n hiddenDays: [0, 6]\n }\n }\n}, Vt = {\n name: \"timegrid\",\n views: {\n timeGridWeek: { type: \"timeGridWeek\", kind: \"timeGrid\", duration: { weeks: 1 } },\n timeGridDay: { type: \"timeGridDay\", kind: \"timeGrid\", duration: { days: 1 } },\n // ✨ Mejora exclusiva de Reservi: semana laboral (lunes a viernes).\n // No existe como vista con nombre propio en FullCalendar.\n workWeek: {\n type: \"workWeek\",\n kind: \"timeGrid\",\n duration: { weeks: 1 },\n hiddenDays: [0, 6]\n }\n }\n}, zt = {\n name: \"list\",\n views: {\n listDay: { type: \"listDay\", kind: \"list\", duration: { days: 1 } },\n listWeek: { type: \"listWeek\", kind: \"list\", duration: { weeks: 1 } },\n listMonth: { type: \"listMonth\", kind: \"list\", duration: { months: 1 } },\n listYear: { type: \"listYear\", kind: \"list\", duration: { years: 1 } }\n }\n}, Yt = {\n name: \"multimonth\",\n views: {\n multiMonthYear: { type: \"multiMonthYear\", kind: \"multiMonth\", duration: { years: 1 } }\n }\n}, bt = {\n name: \"timeline\",\n views: {\n timelineDay: { type: \"timelineDay\", kind: \"timeline\", duration: { days: 1 } },\n timelineWeek: { type: \"timelineWeek\", kind: \"timeline\", duration: { weeks: 1 } },\n timelineMonth: { type: \"timelineMonth\", kind: \"timeline\", duration: { months: 1 } }\n }\n}, Ft = {\n name: \"resource\",\n deps: [bt],\n views: {\n resourceTimelineDay: { type: \"resourceTimelineDay\", kind: \"resource\", duration: { days: 1 } },\n resourceTimelineWeek: {\n type: \"resourceTimelineWeek\",\n kind: \"resource\",\n duration: { weeks: 1 }\n },\n resourceTimelineMonth: {\n type: \"resourceTimelineMonth\",\n kind: \"resource\",\n duration: { months: 1 }\n },\n // Vista vertical: recursos como columnas sobre eje de tiempo.\n resourceTimeGridDay: {\n type: \"resourceTimeGridDay\",\n kind: \"resourceTimeGrid\",\n duration: { days: 1 }\n },\n // Recursos como columnas en cuadrícula de día.\n resourceDayGridDay: {\n type: \"resourceDayGridDay\",\n kind: \"resourceDayGrid\",\n duration: { days: 1 }\n },\n // Recursos como columnas anidadas en cuadrícula de mes.\n resourceDayGridMonth: {\n type: \"resourceDayGridMonth\",\n kind: \"resourceDayGridMonth\",\n duration: { months: 1 }\n }\n }\n};\nfunction qt(t, e, n = \"00:15\") {\n const r = typeof n == \"number\" ? n : T(n), s = e === 0 ? 0 : t / e;\n return Math.round(s / r) * r;\n}\nfunction Kt(t, e) {\n return e === 0 ? 0 : t / e;\n}\nfunction Xt(t, e, n, r) {\n return {\n start: r.add(t, { minutes: n }),\n end: e ? r.add(e, { minutes: n }) : null\n };\n}\nfunction Zt(t, e, n, r, s, i = 15) {\n const a = e ?? s.add(t, { minutes: i });\n if (n === \"end\") {\n let d = s.add(a, { minutes: r });\n const c = s.add(t, { minutes: i });\n return s.isBefore(d, c) && (d = c), { start: t, end: d };\n }\n let o = s.add(t, { minutes: r });\n const l = s.subtract(a, { minutes: i });\n return s.isAfter(o, l) && (o = l), { start: o, end: a };\n}\nconst le = 30;\nfunction Ot(t, e, n, r, s) {\n return s.isBefore(t, r) && s.isBefore(n, e);\n}\nfunction It(t) {\n const {\n event: e,\n start: n,\n end: r,\n others: s,\n overlapAllowed: i,\n businessHours: a,\n requireBusinessHours: o,\n allow: l,\n dl: d\n } = t, c = r ?? d.add(n, { minutes: le });\n if (o && a && !rt(n, r, a, d))\n return !1;\n if (!i)\n for (const h of s) {\n const v = h.end ?? d.add(h.start, { minutes: le });\n if (Ot(n, c, h.start, v, d)) return !1;\n }\n return !(l && !l({ start: n, end: r, event: e }));\n}\nclass At {\n constructor(e, n = [], r) {\n u(this, \"_events\", C([]));\n /** Señal de solo lectura con los eventos normalizados. */\n u(this, \"events\", H(() => this._events.value));\n this.dl = e, this.transform = r, n.length && (this._events.value = n.map((s) => this.norm(s)));\n }\n norm(e) {\n return ue(this.transform ? this.transform(e) : e, this.dl);\n }\n add(e) {\n const n = this.norm(e);\n return this._events.value = [...this._events.value, n], n;\n }\n getById(e) {\n return this._events.value.find((n) => n.id === e);\n }\n getAll() {\n return this._events.value;\n }\n remove(e) {\n const n = this._events.value.filter((s) => s.id !== e), r = n.length !== this._events.value.length;\n return r && (this._events.value = n), r;\n }\n removeAll() {\n this._events.value.length && (this._events.value = []);\n }\n /** Actualiza un evento existente (inmutable). Devuelve el nuevo def o undefined. */\n update(e, n) {\n let r;\n return this._events.value = this._events.value.map((s) => s.id !== e ? s : (r = { ...s, ...n }, r)), r;\n }\n /** Reemplaza todos los eventos (refetch). */\n reset(e) {\n this._events.value = e.map((n) => this.norm(n));\n }\n}\nclass Ct {\n constructor() {\n u(this, \"handlers\", /* @__PURE__ */ new Map());\n }\n on(e, n) {\n let r = this.handlers.get(e);\n return r || (r = /* @__PURE__ */ new Set(), this.handlers.set(e, r)), r.add(n), () => this.off(e, n);\n }\n off(e, n) {\n var r;\n (r = this.handlers.get(e)) == null || r.delete(n);\n }\n trigger(e, n) {\n const r = this.handlers.get(e);\n if (r)\n for (const s of r) s(n);\n }\n clear() {\n this.handlers.clear();\n }\n}\nclass Jt {\n constructor(e, n = X, r) {\n u(this, \"dl\");\n u(this, \"registry\");\n u(this, \"store\");\n u(this, \"emitter\", new Ct());\n u(this, \"options\");\n u(this, \"sources\");\n u(this, \"httpClient\");\n u(this, \"pluginTeardowns\", []);\n u(this, \"currentDate\", C(void 0));\n u(this, \"viewType\", C(\"\"));\n u(this, \"selection\", C(null));\n u(this, \"resourceTree\");\n u(this, \"collapsed\", C(/* @__PURE__ */ new Set()));\n u(this, \"_selectedEventIds\", C(/* @__PURE__ */ new Set()));\n u(this, \"disposeEffect\", null);\n /**\n * Versión de las opciones. `getViewModel()` la lee para que `setOption`/\n * `render()` invaliden el `computed` (las opciones son un objeto mutable y\n * los signals no pueden rastrearlo).\n */\n u(this, \"optionsVersion\", C(0));\n u(this, \"adapter\", null);\n u(this, \"rootEl\", null);\n /** Profundidad de `batchRendering` (>0 ⇒ se aplazan las invalidaciones). */\n u(this, \"batchDepth\", 0);\n u(this, \"batchDirty\", !1);\n /** Ids de eventos seleccionados (bulk ops). Reactivo: úsalo con `.value` en la UI. */\n u(this, \"selectedEventIds\", H(\n () => this._selectedEventIds.value\n ));\n /**\n * ViewModel reactivo: se recalcula solo cuando cambian la fecha, la vista o\n * los eventos. La capa de UI (Preact) lee `.value` y re-renderiza de forma\n * granular.\n */\n u(this, \"viewModel\");\n var s;\n this.dl = n, this.options = e, this.httpClient = r ?? null, this.registry = new et(e.plugins ?? []), this.store = new At(this.dl, e.events ?? [], e.eventDataTransform), this.resourceTree = De(\n Et(e.resources ?? []),\n e.resourceOrder\n ), this.sources = new Qe(\n this.dl,\n () => this.getHttp(),\n (i) => this.emitter.trigger(\"loading\", { isLoading: i }),\n e.eventDataTransform\n );\n for (const i of e.eventSources ?? []) this.sources.add(i);\n this.viewType.value = e.initialView, this.currentDate.value = this.dl.from(\n e.initialDate ?? this.dl.toISOString(this.dl.now())\n ), this.viewModel = H(() => this.getViewModel()), this.disposeEffect = Oe(() => {\n const i = [...this.store.events.value, ...this.sources.events.value];\n this.emitter.trigger(\"eventsSet\", i);\n }), this.sources.getAll().length && this.sources.fetchAll(this.fetchArg());\n for (const i of this.registry.plugins()) {\n const a = (s = i.setup) == null ? void 0 : s.call(i, this);\n typeof a == \"function\" && this.pluginTeardowns.push(a);\n }\n }\n /** Cliente HTTP perezoso (solo se crea/importa nexa si se usa un feed). */\n async getHttp() {\n if (this.httpClient) return this.httpClient;\n const { createReserviHttp: e } = await import(\"./http.js\");\n return this.httpClient = e(), this.httpClient;\n }\n /** Rango visible actual como argumento de fetch para las fuentes. */\n fetchArg() {\n const e = this.getViewModel().range;\n return {\n start: e.activeStart,\n end: e.activeEnd,\n startStr: this.dl.toISOString(e.activeStart),\n endStr: this.dl.toISOString(e.activeEnd)\n };\n }\n /** Eventos combinados: array base (`events`/`addEvent`) + fuentes. */\n allEvents() {\n return [...this.store.getAll(), ...this.sources.events.value];\n }\n // ── Navegación de fechas ──\n getDate() {\n return this.currentDate.value;\n }\n gotoDate(e) {\n return this.currentDate.value = this.dl.from(e), this.emitDatesSet();\n }\n today() {\n return this.currentDate.value = this.nowDate(), this.emitDatesSet();\n }\n step() {\n return this.currentSpec().duration;\n }\n prev() {\n return this.currentDate.value = this.dl.subtract(this.currentDate.value, this.step()), this.emitDatesSet();\n }\n next() {\n return this.currentDate.value = this.dl.add(this.currentDate.value, this.step()), this.emitDatesSet();\n }\n incrementDate(e) {\n return this.currentDate.value = this.dl.add(this.currentDate.value, e), this.emitDatesSet();\n }\n // ── Vistas ──\n changeView(e) {\n if (!this.registry.has(e))\n throw new Error(`[reservi] changeView: vista desconocida \"${e}\".`);\n return this.viewType.value = e, this.emitDatesSet();\n }\n getView() {\n return { type: this.viewType.value, spec: this.currentSpec() };\n }\n /** ¿Está registrada esta vista? (para navegación segura, navLinks…). */\n hasView(e) {\n return this.registry.has(e);\n }\n currentSpec() {\n return this.registry.get(this.viewType.value);\n }\n // ── Eventos ──\n addEvent(e) {\n return this.store.add(e);\n }\n getEventById(e) {\n return this.store.getById(e);\n }\n getEvents() {\n return this.allEvents();\n }\n removeAllEvents() {\n this.store.removeAll();\n }\n /**\n * Re-pide los eventos. Sin argumento, refresca todas las fuentes para el rango\n * visible. Con un array, además reemplaza los eventos base (`events`).\n */\n refetchEvents(e) {\n e && this.store.reset(e), this.sources.fetchAll(this.fetchArg());\n }\n // ── Fuentes de eventos ──\n /** Registra una fuente (array/función/feed) y la pide para el rango actual. */\n addEventSource(e) {\n const n = this.sources.add(e);\n return this.sources.fetchOne(n.id, this.fetchArg()), n;\n }\n /** Fuentes registradas (no incluye los `events` base). */\n getEventSources() {\n return this.sources.getAll();\n }\n /** Elimina una fuente por id y sus eventos. */\n removeEventSource(e) {\n this.sources.remove(e);\n }\n removeAllEventSources() {\n this.sources.removeAll();\n }\n /**\n * Actualiza las fechas de un evento (lo usan drag y resize). Dispara\n * `eventChange`. Devuelve el evento actualizado o undefined si no existe.\n */\n updateEventDates(e, n, r) {\n const s = this.store.update(e, { start: n, end: r });\n return s && this.emitter.trigger(\"eventChange\", { event: s }), s;\n }\n /** ¿Puede colocarse el evento en [start, end)? Aplica overlap/constraint/allow. */\n canPlace(e, n, r) {\n const s = this.store.getById(e);\n return s ? It({\n event: s,\n start: n,\n end: r,\n others: this.store.getAll().filter((i) => i.id !== e),\n overlapAllowed: this.options.eventOverlap !== !1,\n businessHours: L(this.options.businessHours),\n requireBusinessHours: this.options.eventConstraint === \"businessHours\",\n allow: this.options.eventAllow,\n dl: this.dl\n }) : !1;\n }\n /**\n * Mueve/redimensiona un evento validando reglas (overlap/constraint/allow).\n * Devuelve true si se aplicó; false si la colocación no es válida.\n */\n moveEvent(e, n, r) {\n return this.canPlace(e, n, r) ? this.updateEventDates(e, n, r) !== void 0 : !1;\n }\n // ── Selección ──\n select(e, n) {\n const r = { start: this.dl.from(e), end: this.dl.from(n) };\n return this.selection.value = r, this.emitter.trigger(\"select\", r), this;\n }\n unselect() {\n return this.selection.value && (this.selection.value = null, this.emitter.trigger(\"unselect\", {})), this;\n }\n getSelection() {\n return this.selection.value;\n }\n // ── Selección de eventos (bulk ops) ──\n /** Reemplaza la selección de eventos por este conjunto de ids. */\n selectEvents(e) {\n return this._selectedEventIds.value = new Set(e), this.emitter.trigger(\"eventSelectionChange\", { ids: [...this._selectedEventIds.value] }), this;\n }\n /** Alterna un evento dentro/fuera de la selección. */\n toggleEventSelection(e) {\n const n = new Set(this._selectedEventIds.value);\n return n.has(e) ? n.delete(e) : n.add(e), this._selectedEventIds.value = n, this.emitter.trigger(\"eventSelectionChange\", { ids: [...n] }), this;\n }\n clearEventSelection() {\n return this._selectedEventIds.value.size && (this._selectedEventIds.value = /* @__PURE__ */ new Set(), this.emitter.trigger(\"eventSelectionChange\", { ids: [] })), this;\n }\n getSelectedEventIds() {\n return [...this._selectedEventIds.value];\n }\n /** Elimina un evento por id (y de la selección, si la tenía). */\n removeEvent(e) {\n const n = this.store.remove(e);\n if (n && this._selectedEventIds.value.has(e)) {\n const r = new Set(this._selectedEventIds.value);\n r.delete(e), this._selectedEventIds.value = r;\n }\n return n;\n }\n /** Elimina todos los eventos actualmente seleccionados y limpia la selección. */\n removeSelectedEvents() {\n for (const e of this._selectedEventIds.value) this.store.remove(e);\n this._selectedEventIds.value = /* @__PURE__ */ new Set(), this.emitter.trigger(\"eventSelectionChange\", { ids: [] });\n }\n // ── Recursos (Scheduler) ──\n /** Filas de recursos aplanadas según el estado de expansión. */\n getResourceRows() {\n return we(this.resourceTree, this.collapsed.value);\n }\n /** Mueve un evento a otro recurso (drag entre recursos). Dispara `eventChange`. */\n moveEventToResource(e, n) {\n const r = this.store.update(e, { resourceIds: [n] });\n return r && this.emitter.trigger(\"eventChange\", { event: r }), r;\n }\n /** Colapsa/expande un recurso (alterna). */\n toggleResource(e) {\n const n = new Set(this.collapsed.value);\n return n.has(e) ? n.delete(e) : n.add(e), this.collapsed.value = n, this;\n }\n // ── Callbacks ──\n on(e, n) {\n return this.emitter.on(e, n);\n }\n off(e, n) {\n this.emitter.off(e, n);\n }\n trigger(e, n) {\n this.emitter.trigger(e, n);\n }\n // ── Opciones ──\n getOption(e) {\n return this.options[e];\n }\n setOption(e, n) {\n return U(this.options[e], n) ? this : (this.options[e] = n, this.invalidate(), this.emitDatesSet());\n }\n /** Aplica varias opciones de una vez (una sola invalidación y un solo datesSet). */\n setOptions(e) {\n const n = this.options, r = e;\n let s = !1;\n for (const i of Object.keys(r))\n U(n[i], r[i]) || (n[i] = r[i], s = !0);\n return s ? (this.invalidate(), this.emitDatesSet()) : this;\n }\n /** Marca el ViewModel como sucio (respeta `batchRendering`). */\n invalidate() {\n if (this.batchDepth > 0) {\n this.batchDirty = !0;\n return;\n }\n this.optionsVersion.value++;\n }\n /** Fuerza un re-render de la vista (equivalente a `render()` de FullCalendar). */\n render() {\n return this.invalidate(), this;\n }\n /**\n * Agrupa varias mutaciones en un solo re-render. Compatible con\n * `batchRendering` de FullCalendar.\n */\n batchRendering(e) {\n this.batchDepth++;\n try {\n e();\n } finally {\n this.batchDepth--, this.batchDepth === 0 && this.batchDirty && (this.batchDirty = !1, this.optionsVersion.value++);\n }\n }\n // ── Puente con el DOM (lo instala la capa de UI) ──\n /** Instala (o retira, con `null`) el adaptador de vista. */\n setViewAdapter(e) {\n this.adapter = e;\n }\n /** Elemento raíz del calendario, o null si aún no se ha montado. */\n get el() {\n return this.rootEl;\n }\n /** Registra el elemento raíz (lo llama la capa de UI al montar). */\n setRootEl(e) {\n this.rootEl = e;\n }\n /** Desplaza el cuerpo de la vista hasta esa hora. No-op si la vista no scrollea. */\n scrollToTime(e) {\n var n, r;\n return (r = (n = this.adapter) == null ? void 0 : n.scrollToTime) == null || r.call(n, e), this;\n }\n /** Hora visible en el borde superior del cuerpo de la vista, o null. */\n getScrollTime() {\n var e, n;\n return ((n = (e = this.adapter) == null ? void 0 : e.getScrollTime) == null ? void 0 : n.call(e)) ?? null;\n }\n /** Recalcula medidas del layout. No-op: el layout de Reservi es puro CSS. */\n updateSize() {\n var e, n;\n return (n = (e = this.adapter) == null ? void 0 : e.updateSize) == null || n.call(e), this;\n }\n /** Opciones globales + overrides de `options.viewOverrides[viewType]` (si hay). */\n effectiveOptions(e) {\n var r;\n const n = (r = this.options.viewOverrides) == null ? void 0 : r[e];\n return n ? { ...this.options, ...n } : this.options;\n }\n /** Como `getOption`, pero resuelto con el override de `views` de esa vista. */\n getEffectiveOption(e, n = this.viewType.value) {\n return this.effectiveOptions(n)[e];\n }\n // ── Derivación del modelo de vista ──\n getViewModel() {\n this.optionsVersion.value;\n const e = this.currentSpec(), n = this.effectiveOptions(e.type), r = n.dayMaxEvents ?? n.dayMaxEventRows, s = fe(\n e,\n this.currentDate.value,\n {\n firstDay: this.firstDay(),\n fixedWeekCount: n.fixedWeekCount ?? Ae.fixedWeekCount\n },\n this.dl\n ), i = $e(this.allEvents(), s, this.dl), a = Mt(e, n), o = {\n type: e.type,\n spec: e,\n range: s,\n title: this.formatTitle(s, a)\n };\n return e.kind === \"dayGrid\" ? {\n ...o,\n dayGrid: me(\n s,\n i,\n this.nowDate(),\n {\n firstDay: this.firstDay(),\n dayMaxEvents: r,\n businessHours: L(n.businessHours),\n selection: this.selection.value,\n hiddenDays: a,\n weekNumbers: n.weekNumbers,\n weekNumberCalc: n.weekNumberCalculation\n },\n this.dl\n )\n } : e.kind === \"timeGrid\" ? {\n ...o,\n timeGrid: dt(\n s,\n i,\n this.nowDate(),\n {\n slotMinTime: n.slotMinTime,\n slotMaxTime: n.slotMaxTime,\n slotDuration: n.slotDuration,\n slotLabelInterval: n.slotLabelInterval,\n allDaySlot: n.allDaySlot,\n nowIndicator: n.nowIndicator,\n businessHours: L(n.businessHours),\n hiddenDays: a\n },\n this.dl\n )\n } : e.kind === \"list\" ? { ...o, list: ct(s, i, this.nowDate(), this.dl, a) } : e.kind === \"timeline\" ? { ...o, timeline: ft(s, i, this.dl) } : e.kind === \"resource\" ? {\n ...o,\n resourceTimeline: mt(\n s,\n i,\n this.getResourceRows(),\n this.dl\n )\n } : e.kind === \"resourceTimeGrid\" ? {\n ...o,\n resourceTimeGrid: gt(\n s,\n i,\n this.getResourceRows(),\n this.nowDate(),\n {\n slotMinTime: n.slotMinTime,\n slotMaxTime: n.slotMaxTime,\n slotDuration: n.slotDuration,\n slotLabelInterval: n.slotLabelInterval,\n nowIndicator: n.nowIndicator\n },\n this.dl\n )\n } : e.kind === \"resourceDayGrid\" ? {\n ...o,\n resourceDayGrid: kt(s, i, this.getResourceRows(), this.dl)\n } : e.kind === \"resourceDayGridMonth\" ? {\n ...o,\n resourceDayGridMonth: Dt(\n s,\n i,\n this.getResourceRows(),\n this.nowDate(),\n { dayMaxEvents: r, hiddenDays: a },\n this.dl\n )\n } : e.kind === \"multiMonth\" ? {\n ...o,\n multiMonth: ht(\n s,\n i,\n this.nowDate(),\n {\n firstDay: this.firstDay(),\n dayMaxEvents: r,\n businessHours: L(n.businessHours),\n selection: this.selection.value,\n hiddenDays: a\n },\n this.dl\n )\n } : o;\n }\n /** \"Ahora\" del calendario: la opción `now` si se dio, si no el reloj real. */\n nowDate() {\n return this.options.now != null ? this.dl.from(this.options.now) : this.dl.now();\n }\n /** Primer día de la semana efectivo: opción explícita o el del locale. */\n firstDay() {\n return this.options.firstDay ?? Tt(this.options.locale).firstDay;\n }\n /** Construye un Date UTC a partir de los componentes (independiente del host). */\n toUtc(e) {\n return new Date(\n Date.UTC(this.dl.year(e), this.dl.month(e) - 1, this.dl.dayOfMonth(e))\n );\n }\n /** Título de la toolbar, localizado vía Intl (en UTC para ser determinista). */\n formatTitle(e, n = []) {\n const r = this.currentSpec(), s = this.effectiveOptions(r.type), i = s.locale ?? \"en\", a = (h) => new Intl.DateTimeFormat(i, { ...h, timeZone: \"UTC\" }), o = r.duration, l = this.toUtc(e.currentStart);\n if (s.titleFormat)\n return typeof s.titleFormat == \"function\" ? s.titleFormat(e) : a(s.titleFormat).format(l);\n if (o.years) return a({ year: \"numeric\" }).format(l);\n if (o.months) return a({ month: \"long\", year: \"numeric\" }).format(l);\n if (o.days === 1)\n return a({ weekday: \"long\", day: \"numeric\", month: \"long\", year: \"numeric\" }).format(l);\n let d = e.currentStart, c = this.dl.subtract(e.currentEnd, { days: 1 });\n if (n.length) {\n for (; n.includes(this.dl.dayOfWeek(d)) && this.dl.isBefore(d, c); )\n d = this.dl.add(d, { days: 1 });\n for (; n.includes(this.dl.dayOfWeek(c)) && this.dl.isBefore(d, c); )\n c = this.dl.subtract(c, { days: 1 });\n }\n return a({ day: \"numeric\", month: \"short\", year: \"numeric\" }).formatRange(\n this.toUtc(d),\n this.toUtc(c)\n );\n }\n emitDatesSet() {\n return this.emitter.trigger(\"datesSet\", {\n range: this.getViewModel().range,\n view: this.currentSpec()\n }), this.options.lazyFetching !== !1 && this.sources.fetchDynamic(this.fetchArg()), this;\n }\n /** Libera recursos (efectos de signals). */\n destroy() {\n var e;\n this.adapter = null, this.rootEl = null;\n for (const n of this.pluginTeardowns) n();\n this.pluginTeardowns.length = 0, (e = this.disposeEffect) == null || e.call(this), this.disposeEffect = null, this.emitter.clear();\n }\n}\nconst Qt = \"0.0.0\";\nexport {\n Jt as CalendarApi,\n Ae as DEFAULT_OPTIONS,\n Ct as Emitter,\n Qe as EventSourceManager,\n At as EventStore,\n _t as LOCALE_CODES,\n xt as THEME_TOKEN_VARS,\n Qt as VERSION,\n et as ViewRegistry,\n Pt as applyFilter,\n me as buildDayGridModel,\n ct as buildListModel,\n ht as buildMultiMonthModel,\n kt as buildResourceDayGridModel,\n Dt as buildResourceDayGridMonthModel,\n gt as buildResourceTimeGridModel,\n mt as buildResourceTimelineModel,\n Et as buildResourceTree,\n dt as buildTimeGridModel,\n ft as buildTimelineModel,\n fe as computeDateRange,\n Xt as computeDrop,\n Zt as computeResize,\n $t as dayGridPlugin,\n Ht as definePlugin,\n Bt as defineTheme,\n X as dl,\n Wt as eventsToICS,\n $e as expandEvents,\n Be as expandRecurrence,\n Lt as extractColors,\n jt as extractStatuses,\n we as flattenResources,\n Tt as getLocaleText,\n Z as isBusinessDay,\n We as isEmptyFilter,\n U as isSameOptionValue,\n rt as isWithinBusinessHours,\n J as layoutColumns,\n zt as listPlugin,\n N as minutesOfDay,\n Yt as multiMonthPlugin,\n ue as normalizeEvent,\n De as orderResourceTree,\n Re as parseICS,\n je as parseRRule,\n Kt as pxPerMinute,\n qt as pxToSnappedMinutes,\n L as resolveBusinessHours,\n Mt as resolveHiddenDays,\n Ft as resourcePlugin,\n Ut as themeToStyle,\n Vt as timeGridPlugin,\n Ie as timeGuardDate,\n T as timeStringToMinutes,\n bt as timelinePlugin,\n It as validatePlacement,\n at as weekNumber\n};\n//# sourceMappingURL=index.js.map\n","import{options as r,Fragment as e}from\"preact\";export{Fragment}from\"preact\";var t=/[\"&<]/;function n(r){if(0===r.length||!1===t.test(r))return r;for(var e=0,n=0,o=\"\",f=\"\";n<r.length;n++){switch(r.charCodeAt(n)){case 34:f=\""\";break;case 38:f=\"&\";break;case 60:f=\"<\";break;default:continue}n!==e&&(o+=r.slice(e,n)),o+=f,e=n+1}return n!==e&&(o+=r.slice(e,n)),o}var o=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,f=0,i=Array.isArray;function u(e,t,n,o,i,u){t||(t={});var a,c,p=t;if(\"ref\"in p)for(c in p={},t)\"ref\"==c?a=t[c]:p[c]=t[c];var l={type:e,props:p,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--f,__i:-1,__u:0,__source:i,__self:u};if(\"function\"==typeof e&&(a=e.defaultProps))for(c in a)void 0===p[c]&&(p[c]=a[c]);return r.vnode&&r.vnode(l),l}function a(r){var t=u(e,{tpl:r,exprs:[].slice.call(arguments,1)});return t.key=t.__v,t}var c={},p=/[A-Z]/g;function l(e,t){if(r.attr){var f=r.attr(e,t);if(\"string\"==typeof f)return f}if(t=function(r){return null!==r&&\"object\"==typeof r&&\"function\"==typeof r.valueOf?r.valueOf():r}(t),\"ref\"===e||\"key\"===e)return\"\";if(\"style\"===e&&\"object\"==typeof t){var i=\"\";for(var u in t){var a=t[u];if(null!=a&&\"\"!==a){var l=\"-\"==u[0]?u:c[u]||(c[u]=u.replace(p,\"-$&\").toLowerCase()),s=\";\";\"number\"!=typeof a||l.startsWith(\"--\")||o.test(l)||(s=\"px;\"),i=i+l+\":\"+a+s}}return e+'=\"'+n(i)+'\"'}return null==t||!1===t||\"function\"==typeof t||\"object\"==typeof t?\"\":!0===t?e:e+'=\"'+n(\"\"+t)+'\"'}function s(r){if(null==r||\"boolean\"==typeof r||\"function\"==typeof r)return null;if(\"object\"==typeof r){if(void 0===r.constructor)return r;if(i(r)){for(var e=0;e<r.length;e++)r[e]=s(r[e]);return r}}return n(\"\"+r)}export{u as jsx,l as jsxAttr,u as jsxDEV,s as jsxEscape,a as jsxTemplate,u as jsxs};\n//# sourceMappingURL=jsxRuntime.module.js.map\n","import{options as n}from\"preact\";var t,r,u,i,o=0,f=[],c=n,e=c.__b,a=c.__r,v=c.diffed,l=c.__c,m=c.unmount,s=c.__;function p(n,t){c.__h&&c.__h(r,n,o||t),o=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function d(n){return o=1,h(D,n)}function h(n,u,i){var o=p(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):D(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.__f)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=o.__c.props!==n;return u.some(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),c&&c.call(this,n,t,r)||i};r.__f=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function y(n,u){var i=p(t++,3);!c.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__H.__h.push(i))}function _(n,u){var i=p(t++,4);!c.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__h.push(i))}function A(n){return o=5,T(function(){return{current:n}},[])}function F(n,t,r){o=6,_(function(){if(\"function\"==typeof n){var r=n(t());return function(){n(null),r&&\"function\"==typeof r&&r()}}if(n)return n.current=t(),function(){return n.current=null}},null==r?r:r.concat(n))}function T(n,r){var u=p(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function q(n,t){return o=8,T(function(){return n},t)}function x(n){var u=r.context[n.__c],i=p(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function P(n,t){c.useDebugValue&&c.useDebugValue(t?t(n):n)}function b(n){var u=p(t++,10),i=d();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function g(){var n=p(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__=\"P\"+i[0]+\"-\"+i[1]++}return n.__}function j(){for(var n;n=f.shift();){var t=n.__H;if(n.__P&&t)try{t.__h.some(z),t.__h.some(B),t.__h=[]}catch(r){t.__h=[],c.__e(r,n.__v)}}}c.__b=function(n){r=null,e&&e(n)},c.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),s&&s(n,t)},c.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.some(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(i.__h.some(z),i.__h.some(B),i.__h=[],t=0)),u=r},c.diffed=function(n){v&&v(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==f.push(t)&&i===c.requestAnimationFrame||((i=c.requestAnimationFrame)||w)(j)),t.__H.__.some(function(n){n.u&&(n.__H=n.u),n.u=void 0})),u=r=null},c.__c=function(n,t){t.some(function(n){try{n.__h.some(z),n.__h=n.__h.filter(function(n){return!n.__||B(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],c.__e(r,n.__v)}}),l&&l(n,t)},c.unmount=function(n){m&&m(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.some(function(n){try{z(n)}catch(n){t=n}}),r.__H=void 0,t&&c.__e(t,r.__v))};var k=\"function\"==typeof requestAnimationFrame;function w(n){var t,r=function(){clearTimeout(u),k&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,35);k&&(t=requestAnimationFrame(r))}function z(n){var t=r,u=n.__c;\"function\"==typeof u&&(n.__c=void 0,u()),r=t}function B(n){var t=r;n.__c=n.__(),r=t}function C(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function D(n,t){return\"function\"==typeof t?t(n):t}export{q as useCallback,x as useContext,P as useDebugValue,y as useEffect,b as useErrorBoundary,g as useId,F as useImperativeHandle,_ as useLayoutEffect,T as useMemo,h as useReducer,A as useRef,d as useState};\n//# sourceMappingURL=hooks.module.js.map\n","import{Component as i,options as n,isValidElement as r,Fragment as t}from\"preact\";import{useMemo as o,useRef as f,useEffect as e}from\"preact/hooks\";import{effect as u,Signal as a,computed as c,signal as v,batch as s}from\"@preact/signals-core\";export{Signal,action,batch,computed,createModel,effect,signal,untracked}from\"@preact/signals-core\";var l,d,h,p=\"undefined\"!=typeof window&&!!window.__PREACT_SIGNALS_DEVTOOLS__,m=[],_=[];u(function(){l=this.N})();function g(i,r){n[i]=r.bind(null,n[i]||function(){})}function b(i){if(h){var n=h;h=void 0;n()}h=i&&i.S()}function y(i){var n=this,t=i.data,f=useSignal(t);f.value=t;var e=o(function(){var i=n,t=n.__v;while(t=t.__)if(t.__c){t.__c.__$f|=4;break}var o=c(function(){var i=f.value.value;return 0===i?0:!0===i?\"\":i||\"\"}),e=c(function(){return!Array.isArray(o.value)&&!r(o.value)}),a=u(function(){this.N=F;if(e.value){var n=o.value;if(i.__v&&i.__v.__e&&3===i.__v.__e.nodeType)i.__v.__e.data=n}}),v=n.__$u.d;n.__$u.d=function(){a();v.call(this)};return[e,o]},[]),a=e[0],v=e[1];return a.value?v.peek():v.value}y.displayName=\"ReactiveTextNode\";Object.defineProperties(a.prototype,{constructor:{configurable:!0,value:void 0},type:{configurable:!0,value:y},props:{configurable:!0,get:function(){var i=this;return{data:{get value(){return i.value}}}}},__b:{configurable:!0,value:1}});g(\"__b\",function(i,n){if(\"string\"==typeof n.type){var r,t=n.props;for(var o in t)if(\"children\"!==o){var f=t[o];if(f instanceof a){if(!r)n.__np=r={};r[o]=f;t[o]=f.peek()}}}i(n)});g(\"__r\",function(i,n){i(n);if(n.type!==t){b();var r,o=n.__c;if(o){o.__$f&=-2;if(void 0===(r=o.__$u))o.__$u=r=function(i,n){var r;u(function(){r=this},{name:n});r.c=i;return r}(function(){var i;if(p)null==(i=r.y)||i.call(r);o.__$f|=1;o.setState({})},\"function\"==typeof n.type?n.type.displayName||n.type.name:\"\")}d=o;b(r)}});g(\"__e\",function(i,n,r,t){b();d=void 0;i(n,r,t)});g(\"diffed\",function(i,n){b();d=void 0;var r;if(\"string\"==typeof n.type&&(r=n.__e)){var t=n.__np,o=n.props;if(t){var f=r.U;if(f)for(var e in f){var u=f[e];if(void 0!==u&&!(e in t)){u.d();f[e]=void 0}}else{f={};r.U=f}for(var a in t){var c=f[a],v=t[a];if(void 0===c){c=w(r,a,v,o);f[a]=c}else c.o(v,o)}}}i(n)});function w(i,n,r,t){var o=n in i&&void 0===i.ownerSVGElement,f=v(r);return{o:function(i,n){f.value=i;t=n},d:u(function(){this.N=F;var r=f.value.value;if(t[n]!==r){t[n]=r;if(o)i[n]=r;else if(null!=r&&(!1!==r||\"-\"===n[4]))i.setAttribute(n,r);else i.removeAttribute(n)}})}}g(\"unmount\",function(i,n){if(\"string\"==typeof n.type){var r=n.__e;if(r){var t=r.U;if(t){r.U=void 0;for(var o in t){var f=t[o];if(f)f.d()}}}var e=n.__np;if(e){var u=n.props;for(var a in e)u[a]=e[a]}n.__np=void 0}else{var c=n.__c;if(c){var v=c.__$u;if(v){c.__$u=void 0;v.d()}}}i(n)});g(\"__h\",function(i,n,r,t){if(t<3||9===t)n.__$f|=2;i(n,r,t)});i.prototype.shouldComponentUpdate=function(i,n){if(this.__R)return!0;var r=this.__$u,t=r&&void 0!==r.s;for(var o in n)return!0;if(this.__f||\"boolean\"==typeof this.u&&!0===this.u){var f=2&this.__$f;if(!(t||f||4&this.__$f))return!0;if(1&this.__$f)return!0}else{if(!(t||4&this.__$f))return!0;if(3&this.__$f)return!0}for(var e in i)if(\"__source\"!==e&&i[e]!==this.props[e])return!0;for(var u in this.props)if(!(u in i))return!0;return!1};function useSignal(i,n){return o(function(){return v(i,n)},[])}function useComputed(i,n){var r=f(i);r.current=i;d.__$f|=4;return o(function(){return c(function(){return r.current()},n)},[])}var k=\"undefined\"==typeof requestAnimationFrame?setTimeout:function(i){var n=function(){clearTimeout(r);cancelAnimationFrame(t);i()},r=setTimeout(n,35),t=requestAnimationFrame(n)},q=function(i){queueMicrotask(function(){queueMicrotask(i)})};function A(){s(function(){var i;while(i=m.shift())l.call(i)})}function T(){if(1===m.push(this))(n.requestAnimationFrame||k)(A)}function x(){s(function(){var i;while(i=_.shift())l.call(i)})}function F(){if(1===_.push(this))(n.requestAnimationFrame||q)(x)}function useSignalEffect(i,n){var r=f(i);r.current=i;e(function(){return u(function(){this.N=T;return r.current()},n)},[])}function M(i){var n=o(function(){return i()},[]);e(function(){return n[Symbol.dispose]},[n]);return n}export{useComputed,M as useModel,useSignal,useSignalEffect};//# sourceMappingURL=signals.module.js.map\n","import { render as at, h as bt } from \"preact\";\nimport { getLocaleText as R, dl as s, timeStringToMinutes as K, computeDrop as J, pxToSnappedMinutes as wt, computeResize as kt, THEME_TOKEN_VARS as Dt, themeToStyle as pt, CalendarApi as Mt, eventsToICS as St } from \"@reservi/core\";\nimport { dayGridPlugin as ge, definePlugin as ye, defineTheme as fe, eventsToICS as be, listPlugin as we, multiMonthPlugin as ke, parseICS as De, resourcePlugin as pe, themeToStyle as Me, timeGridPlugin as Se, timelinePlugin as Ce } from \"@reservi/core\";\nimport { jsx as d, jsxs as g, Fragment as Ct } from \"preact/jsx-runtime\";\nimport \"@preact/signals\";\nimport { useRef as $, useLayoutEffect as ot, useState as N, useEffect as H } from \"preact/hooks\";\nfunction ce(r) {\n return { __rsvHost: !0, node: r };\n}\nfunction Et(r) {\n return typeof r == \"object\" && r !== null && r.__rsvHost === !0;\n}\nfunction L(r, t, e, n) {\n if (!r) return e;\n const o = r(t);\n return o === void 0 ? e : Et(o) ? n ? /* @__PURE__ */ d(xt, { bridge: n, node: o.node }) : e : o;\n}\nlet Tt = 0;\nfunction xt({ bridge: r, node: t }) {\n const e = $(\"\");\n e.current || (e.current = `rsv-host-${++Tt}`);\n const n = $(null), o = $(t);\n o.current = t;\n const a = $(!1);\n return ot(() => {\n const h = n.current;\n if (!h) return;\n const u = e.current;\n return a.current = !0, r.mount(u, h, o.current), () => {\n a.current = !1, r.unmount(u);\n };\n }, []), ot(() => {\n a.current && r.update(e.current, t);\n }), /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"host\", ref: n });\n}\nfunction F(...r) {\n return r.filter(Boolean).join(\" \");\n}\nconst dt = /* @__PURE__ */ new WeakSet();\nfunction A(r, t, e) {\n if (!r || !t) return;\n const n = r;\n dt.has(n) || (dt.add(n), t(Object.assign(e(), { el: n })));\n}\nfunction $t(r, t) {\n if (!r.length) return null;\n const e = [...r].sort((o, a) => o.breakpoint - a.breakpoint);\n let n = e[0].view;\n for (const o of e)\n t >= o.breakpoint && (n = o.view);\n return n;\n}\nconst G = { prev: \"‹\", next: \"›\" }, Pt = /* @__PURE__ */ new Set([\"\", \"title\", \"today\", \"prev\", \"next\"]), Ot = /month|year/i, B = (r) => String(r).padStart(2, \"0\");\nfunction Lt() {\n return /* @__PURE__ */ g(\n \"svg\",\n {\n \"data-rsv\": \"title-icon\",\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 14 14\",\n fill: \"none\",\n stroke: \"currentColor\",\n \"stroke-width\": \"1.3\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n \"aria-hidden\": \"true\",\n children: [\n /* @__PURE__ */ d(\"rect\", { x: \"1\", y: \"2.5\", width: \"12\", height: \"10.5\", rx: \"1.5\" }),\n /* @__PURE__ */ d(\"line\", { x1: \"1\", y1: \"5.5\", x2: \"13\", y2: \"5.5\" }),\n /* @__PURE__ */ d(\"line\", { x1: \"4.5\", y1: \"1\", x2: \"4.5\", y2: \"3.5\" }),\n /* @__PURE__ */ d(\"line\", { x1: \"9.5\", y1: \"1\", x2: \"9.5\", y2: \"3.5\" })\n ]\n }\n );\n}\nfunction Ft(r) {\n var e;\n if ((e = r.views) != null && e.length) return r.views;\n const t = r.headerToolbar;\n return t ? [t.start, t.center, t.end].filter((n) => !!n).flatMap((n) => n.split(/\\s+/)).flatMap((n) => n.split(\",\")).filter((n) => !Pt.has(n)) : [];\n}\nfunction Rt({ api: r, title: t, activeView: e, options: n }) {\n var V, Z, Y, tt, et;\n const o = R(n.locale), a = (Z = (V = n.slots) == null ? void 0 : V.toolbarStart) == null ? void 0 : Z.call(V), h = (tt = (Y = n.slots) == null ? void 0 : Y.toolbarEnd) == null ? void 0 : tt.call(Y), u = Ft(n), v = Ot.test(e), c = n.firstDay ?? o.firstDay, l = $(null), [f, b] = N(!1), k = s.toDate(r.getDate()), w = s.toDate(n.now ? s.from(n.now) : s.now()), [p, m] = N(k.getFullYear()), [S, i] = N(k.getMonth()), D = new Intl.DateTimeFormat(n.locale, { month: \"short\" }), C = new Intl.DateTimeFormat(n.locale, { month: \"long\" }), M = new Intl.DateTimeFormat(n.locale, { weekday: \"short\" }), E = Array.from(\n { length: 12 },\n (y, T) => D.format(new Date(2020, T, 1))\n ), x = () => {\n const y = s.toDate(r.getDate());\n m(y.getFullYear()), i(y.getMonth()), b(!0);\n }, I = (y) => {\n const T = p * 12 + S + y;\n m(Math.floor(T / 12)), i((T % 12 + 12) % 12);\n }, P = (y) => {\n r.gotoDate(y), b(!1);\n };\n H(() => {\n const y = (O) => {\n (O.ctrlKey || O.metaKey) && (O.key === \"m\" || O.key === \"M\") ? (O.preventDefault(), x()) : O.key === \"Escape\" && b(!1);\n }, T = (O) => {\n l.current && !l.current.contains(O.target) && b(!1);\n };\n return document.addEventListener(\"keydown\", y), document.addEventListener(\"mousedown\", T), () => {\n document.removeEventListener(\"keydown\", y), document.removeEventListener(\"mousedown\", T);\n };\n }, []);\n const Q = (() => {\n if (v) return { cells: [], dows: [] };\n const y = s.from(`${p}-${B(S + 1)}-01`), T = (s.dayOfWeek(y) - c + 7) % 7, O = s.subtract(y, { days: T }), rt = Array.from({ length: 42 }, (nt, ft) => s.toDate(s.add(O, { days: ft }))), yt = rt.slice(0, 7).map((nt) => M.format(nt));\n return { cells: rt, dows: yt };\n })();\n return /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"toolbar-wrap\", class: F((et = n.classNames) == null ? void 0 : et.toolbar), ref: l, children: [\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"toolbar\", children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"toolbar-section\", \"data-rsv-area\": \"start\", children: a }),\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"toolbar-section\", \"data-rsv-area\": \"nav\", children: [\n /* @__PURE__ */ d(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"button\",\n title: o.todayHint,\n \"aria-label\": o.todayHint,\n onClick: () => r.today(),\n children: o.today\n }\n ),\n /* @__PURE__ */ d(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"button\",\n \"data-rsv-nav\": \"prev\",\n title: o.prevHint,\n \"aria-label\": o.prevHint,\n onClick: () => r.prev(),\n children: G.prev\n }\n ),\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"datepicker-anchor\", children: [\n /* @__PURE__ */ g(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"title\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": f,\n title: `${t} · Ctrl+M`,\n onClick: () => f ? b(!1) : x(),\n children: [\n /* @__PURE__ */ d(Lt, {}),\n t\n ]\n }\n ),\n f && /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"datepicker\",\n \"data-rsv-mode\": v ? \"month\" : \"day\",\n role: \"dialog\",\n \"aria-label\": t,\n children: [\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"dp-head\", children: [\n /* @__PURE__ */ d(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"dp-nav\",\n \"aria-label\": o.prev,\n onClick: () => v ? m((y) => y - 1) : I(-1),\n children: G.prev\n }\n ),\n /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"dp-label\", children: v ? p : `${C.format(new Date(p, S, 1))} ${p}` }),\n /* @__PURE__ */ d(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"dp-nav\",\n \"aria-label\": o.next,\n onClick: () => v ? m((y) => y + 1) : I(1),\n children: G.next\n }\n )\n ] }),\n v ? /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"dp-grid\", children: E.map((y, T) => /* @__PURE__ */ d(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"dp-month\",\n \"data-active\": String(\n p === k.getFullYear() && T === k.getMonth()\n ),\n \"data-today\": String(\n p === w.getFullYear() && T === w.getMonth()\n ),\n onClick: () => P(`${p}-${B(T + 1)}-01`),\n children: y\n },\n y\n )) }) : /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"dp-days\", children: [\n Q.dows.map((y, T) => /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"dp-dow\", children: y }, `dow-${T}`)),\n Q.cells.map((y) => {\n const T = `${y.getFullYear()}-${B(y.getMonth() + 1)}-${B(y.getDate())}`;\n return /* @__PURE__ */ d(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"dp-day\",\n \"data-other\": String(y.getMonth() !== S),\n \"data-active\": String(\n y.getFullYear() === k.getFullYear() && y.getMonth() === k.getMonth() && y.getDate() === k.getDate()\n ),\n \"data-today\": String(\n y.getFullYear() === w.getFullYear() && y.getMonth() === w.getMonth() && y.getDate() === w.getDate()\n ),\n onClick: () => P(T),\n children: y.getDate()\n },\n T\n );\n })\n ] })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ d(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"button\",\n \"data-rsv-nav\": \"next\",\n title: o.nextHint,\n \"aria-label\": o.nextHint,\n onClick: () => r.next(),\n children: G.next\n }\n )\n ] }),\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"toolbar-section\", \"data-rsv-area\": \"end\", children: [\n h,\n n.onAddClick && /* @__PURE__ */ g(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"button\",\n \"data-rsv-variant\": \"primary\",\n onClick: n.onAddClick,\n children: [\n /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"add-icon\", \"aria-hidden\": \"true\", children: \"+\" }),\n n.addButtonText\n ]\n }\n )\n ] })\n ] }),\n u.length > 0 && /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"toolbar-views\", role: \"tablist\", children: u.map((y) => /* @__PURE__ */ d(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"view-tab\",\n role: \"tab\",\n \"aria-selected\": y === e,\n \"data-active\": String(y === e),\n title: o.viewHint(o.views[y] ?? y),\n onClick: () => r.changeView(y),\n children: o.views[y] ?? y\n },\n y\n )) })\n ] });\n}\nfunction U(r) {\n return r < 10 ? `0${r}` : String(r);\n}\nfunction It(r) {\n const t = (Math.round(r) % 1440 + 1440) % 1440;\n return `${U(Math.floor(t / 60))}:${U(t % 60)}`;\n}\nfunction At(r) {\n const t = Math.max(0, Math.round(r));\n return `${U(Math.floor(t / 60))}:${U(t % 60)}:00`;\n}\nfunction X(r, t) {\n if (!t) return null;\n const e = new Intl.DateTimeFormat(r, t);\n return (n) => e.format(n);\n}\nfunction W(r, t, e) {\n if (t === !1) return null;\n const n = new Intl.DateTimeFormat(r, t ?? e);\n return (o) => n.format(o);\n}\nfunction st(r, t) {\n r.trigger(\"navLinkDay\", { date: t });\n const e = r.hasView(\"timeGridDay\") ? \"timeGridDay\" : r.hasView(\"dayGridDay\") ? \"dayGridDay\" : null;\n e && (r.gotoDate(s.toISOString(t)), r.changeView(e));\n}\nconst _ = 1440, Ht = {\n moveLeft: [\"ArrowLeft\"],\n moveRight: [\"ArrowRight\"],\n moveUp: [\"ArrowUp\"],\n moveDown: [\"ArrowDown\"],\n activate: [\"Enter\", \" \"]\n};\nfunction Nt(r, t) {\n const e = Object.entries(Ht);\n for (const [n, o] of e)\n if (((t == null ? void 0 : t[n]) ?? o).includes(r)) return n;\n return null;\n}\nfunction lt(r, t) {\n const { api: e, event: n, kind: o } = t, a = K(t.snap ?? \"00:30\"), h = Nt(r.key, t.shortcuts);\n if (!h) return;\n if (h === \"activate\") {\n r.preventDefault(), e.trigger(\"eventClick\", { event: n });\n return;\n }\n let u = 0;\n switch (h) {\n case \"moveLeft\":\n u = -_;\n break;\n case \"moveRight\":\n u = _;\n break;\n case \"moveUp\":\n u = o === \"timeGrid\" ? -a : -_ * 7;\n break;\n case \"moveDown\":\n u = o === \"timeGrid\" ? a : _ * 7;\n break;\n }\n r.preventDefault();\n const v = J(n.start, n.end, u, s);\n if (e.moveEvent(n.id, v.start, v.end)) {\n const c = e.getEventById(n.id);\n c && e.trigger(\"eventDrop\", { event: c });\n }\n}\nconst Vt = 1440, Yt = 4;\nfunction ct(r, t) {\n var n;\n const e = document.elementFromPoint(r, t);\n return ((n = e == null ? void 0 : e.closest('[data-rsv=\"day\"]')) == null ? void 0 : n.dataset.date) ?? null;\n}\nfunction Gt(r, t) {\n r.stopPropagation();\n const { api: e, event: n, sourceDate: o } = t, a = r.clientX, h = r.clientY;\n let u = !1;\n const v = (l) => {\n !u && Math.hypot(l.clientX - a, l.clientY - h) > Yt && (u = !0, document.body.style.cursor = \"grabbing\");\n }, c = (l) => {\n var w;\n if (document.removeEventListener(\"pointermove\", v), document.removeEventListener(\"pointerup\", c), document.body.style.cursor = \"\", !u) return;\n (w = t.onMoved) == null || w.call(t);\n const f = ct(l.clientX, l.clientY);\n if (!f) return;\n const b = s.diff(s.from(o), s.from(f), \"day\");\n if (b === 0) return;\n const k = J(n.start, n.end, b * Vt, s);\n if (e.moveEvent(n.id, k.start, k.end)) {\n const p = e.getEventById(n.id);\n p && e.trigger(\"eventDrop\", { event: p });\n }\n };\n document.addEventListener(\"pointermove\", v), document.addEventListener(\"pointerup\", c);\n}\nfunction Bt(r, t) {\n if (r.target.closest('[data-rsv=\"event\"], [data-rsv=\"more-anchor\"], [data-nav-link=\"true\"]'))\n return;\n const { api: n } = t;\n let o = t.startDate, a = !1;\n const h = (v) => {\n const c = ct(v.clientX, v.clientY);\n c && c !== t.startDate && (a = !0), c && (o = c);\n }, u = () => {\n var b;\n if (document.removeEventListener(\"pointermove\", h), document.removeEventListener(\"pointerup\", u), !a) return;\n (b = t.onRangeSelect) == null || b.call(t);\n const v = s.from(t.startDate), c = s.from(o), [l, f] = s.isBefore(v, c) ? [v, c] : [c, v];\n n.select(s.toISOString(l), s.toISOString(s.add(f, { days: 1 })));\n };\n document.addEventListener(\"pointermove\", h), document.addEventListener(\"pointerup\", u);\n}\nfunction ut({ api: r, model: t, options: e }) {\n var v;\n const n = e.locale ?? \"en\", o = { type: r.getView().type }, a = W(n, e.dayHeaderFormat, { weekday: \"short\" }), h = ((v = t.weeks[0]) == null ? void 0 : v.days) ?? [], u = e.weekNumbers === !0;\n return /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"daygrid\",\n \"data-weeknumbers\": String(u),\n style: `--rsv-cols:${t.columnCount}`,\n children: [\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"daygrid-header\", role: \"row\", children: [\n u && /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"daygrid-weeknum-header\", role: \"columnheader\" }),\n h.map((c) => {\n var k, w;\n const l = s.toDate(c.date), f = a ? a(l) : \"\", b = {\n date: l,\n text: f,\n dayOfWeek: c.dayOfWeek,\n dayNumber: s.dayOfMonth(c.date),\n isToday: c.isToday,\n view: o\n };\n return /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"daygrid-dow\",\n role: \"columnheader\",\n \"data-dow\": String(c.dayOfWeek),\n class: F((k = e.classNames) == null ? void 0 : k.dayHeader),\n ref: (p) => {\n var m;\n return A(p, (m = e.hooks) == null ? void 0 : m.dayHeaderDidMount, () => b);\n },\n children: L((w = e.slots) == null ? void 0 : w.dayHeaderContent, b, f, e.hostBridge)\n },\n c.dayOfWeek\n );\n })\n ] }),\n t.weeks.map((c, l) => /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"daygrid-week\", role: \"row\", children: [\n u && /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"daygrid-weeknum\", role: \"rowheader\", children: c.weekNumber }),\n c.days.map((f) => /* @__PURE__ */ d(\n _t,\n {\n api: r,\n cell: f,\n options: e,\n view: o\n },\n s.toISOString(f.date)\n ))\n ] }, l))\n ]\n }\n );\n}\nfunction _t({\n api: r,\n cell: t,\n options: e,\n view: n\n}) {\n var p, m, S;\n const o = s.toDate(t.date), a = s.dayOfMonth(t.date), h = e.navLinks ? /* @__PURE__ */ d(\n \"a\",\n {\n \"data-rsv\": \"day-number\",\n \"data-nav-link\": \"true\",\n role: \"link\",\n tabIndex: 0,\n title: R(e.locale).navLinkHint(\n new Intl.DateTimeFormat(e.locale, { dateStyle: \"long\" }).format(o)\n ),\n onClick: (i) => {\n i.stopPropagation(), st(r, t.date);\n },\n children: a\n }\n ) : /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"day-number\", children: a }), u = { date: o, dayNumber: a, isToday: t.isToday, isOther: t.isOther, view: n }, v = L(\n (p = e.slots) == null ? void 0 : p.dayCellContent,\n u,\n h,\n e.hostBridge\n ), [c, l] = N(!1), f = s.toISOString(t.date), b = $(!1), k = () => {\n if (b.current) {\n b.current = !1;\n return;\n }\n r.trigger(\"dateClick\", { date: t.date }), e.selectable && r.select(f, s.toISOString(s.add(t.date, { days: 1 })));\n }, w = (i) => {\n i.stopPropagation(), l(!0), r.trigger(\"moreLinkClick\", {\n date: t.date,\n allEvents: [...t.events, ...t.hiddenEvents],\n hiddenEvents: t.hiddenEvents\n });\n };\n return /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"day\",\n role: \"gridcell\",\n \"data-date\": f,\n \"data-today\": String(t.isToday),\n \"data-other\": String(t.isOther),\n \"data-weekend\": String(t.isWeekend),\n \"data-business\": String(t.isBusiness),\n \"data-selected\": String(t.isSelected),\n class: F((m = e.classNames) == null ? void 0 : m.day),\n ref: (i) => {\n var D;\n return A(i, (D = e.hooks) == null ? void 0 : D.dayCellDidMount, () => u);\n },\n onClick: k,\n onPointerDown: e.selectable ? (i) => Bt(i, {\n api: r,\n startDate: f,\n onRangeSelect: () => {\n b.current = !0;\n }\n }) : void 0,\n children: [\n v,\n t.events.filter((i) => i.display !== \"none\").map((i) => /* @__PURE__ */ d(\n vt,\n {\n api: r,\n event: i,\n options: e,\n view: n,\n sourceDate: f\n },\n i.id\n )),\n t.moreCount > 0 && /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"more-anchor\", children: [\n /* @__PURE__ */ d(\"button\", { type: \"button\", \"data-rsv\": \"more-link\", onClick: w, children: L(\n (S = e.slots) == null ? void 0 : S.moreLinkContent,\n {\n date: o,\n moreCount: t.moreCount,\n allEvents: [...t.events, ...t.hiddenEvents],\n hiddenEvents: t.hiddenEvents,\n view: n\n },\n R(e.locale).more(t.moreCount),\n e.hostBridge\n ) }),\n c && /* @__PURE__ */ d(\n jt,\n {\n api: r,\n cell: t,\n options: e,\n view: n,\n onClose: () => l(!1)\n }\n )\n ] })\n ]\n }\n );\n}\nfunction jt({\n api: r,\n cell: t,\n options: e,\n view: n,\n onClose: o\n}) {\n const a = $(null), h = new Intl.DateTimeFormat(e.locale ?? \"en\", {\n weekday: \"long\",\n day: \"numeric\",\n month: \"long\"\n }), u = [...t.events, ...t.hiddenEvents].filter((v) => v.display !== \"none\");\n return H(() => {\n const v = (l) => {\n a.current && !a.current.contains(l.target) && o();\n }, c = (l) => {\n l.key === \"Escape\" && o();\n };\n return document.addEventListener(\"mousedown\", v), document.addEventListener(\"keydown\", c), () => {\n document.removeEventListener(\"mousedown\", v), document.removeEventListener(\"keydown\", c);\n };\n }, [o]), /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"more-popover\", role: \"dialog\", ref: a, onClick: (v) => v.stopPropagation(), children: [\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"more-popover-header\", children: [\n /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"more-popover-title\", children: h.format(s.toDate(t.date)) }),\n /* @__PURE__ */ d(\"button\", { type: \"button\", \"data-rsv\": \"more-popover-close\", \"aria-label\": \"✕\", onClick: o, children: \"✕\" })\n ] }),\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"more-popover-body\", children: u.map((v) => /* @__PURE__ */ d(\n vt,\n {\n api: r,\n event: v,\n options: e,\n view: n,\n sourceDate: s.toISOString(t.date)\n },\n v.id\n )) })\n ] });\n}\nfunction vt({\n api: r,\n event: t,\n options: e,\n view: n,\n sourceDate: o\n}) {\n var b, k;\n const a = e.editable === !0 && t.editable !== !1, h = r.selectedEventIds.value.has(t.id), u = $(!1), v = X(e.locale ?? \"en\", e.eventTimeFormat), c = t.allDay ? \"\" : v ? v(s.toDate(t.start)) : s.format(t.start, \"HH:mm\"), l = { event: t, isAllDay: t.allDay, timeText: c, view: n }, f = L(\n (b = e.slots) == null ? void 0 : b.eventContent,\n l,\n /* @__PURE__ */ g(\"span\", { \"data-rsv\": \"event-title\", children: [\n c ? `${c} ` : \"\",\n t.title\n ] }),\n e.hostBridge\n );\n return /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"event\",\n role: \"button\",\n tabIndex: 0,\n class: F((k = e.classNames) == null ? void 0 : k.event, ...t.classNames),\n \"data-all-day\": String(t.allDay),\n \"data-display\": t.display,\n \"data-event-id\": t.id,\n \"data-editable\": String(a),\n \"data-rsv-selected\": String(h),\n ref: (w) => {\n var p;\n return A(w, (p = e.hooks) == null ? void 0 : p.eventDidMount, () => l);\n },\n style: `--rsv-event-bg:${t.backgroundColor};--rsv-event-fg:${t.textColor};--rsv-event-border:${t.borderColor}`,\n onClick: (w) => {\n if (w.stopPropagation(), u.current) {\n u.current = !1;\n return;\n }\n if (w.ctrlKey || w.metaKey) {\n r.toggleEventSelection(t.id);\n return;\n }\n r.trigger(\"eventClick\", { event: t, el: w.currentTarget }), t.url && window.open(t.url, \"_self\");\n },\n onPointerDown: a ? (w) => Gt(w, {\n api: r,\n event: t,\n sourceDate: o,\n onMoved: () => {\n u.current = !0;\n }\n }) : void 0,\n onKeyDown: a ? (w) => lt(w, {\n api: r,\n event: t,\n kind: \"dayGrid\",\n shortcuts: e.keyboardShortcuts\n }) : void 0,\n children: f\n }\n );\n}\nconst j = 40, it = 16, Kt = {\n update() {\n },\n getScrolled: () => 0,\n stop() {\n }\n};\nfunction mt(r) {\n if (!r) return Kt;\n let t = 0, e = 0, n = 0;\n const o = () => {\n const a = r.getBoundingClientRect();\n let h = 0;\n if (t < a.top + j ? h = -it * (1 - Math.max(0, t - a.top) / j) : t > a.bottom - j && (h = it * (1 - Math.max(0, a.bottom - t) / j)), h !== 0) {\n const u = r.scrollTop;\n r.scrollTop += h, e += r.scrollTop - u;\n }\n n = requestAnimationFrame(o);\n };\n return n = requestAnimationFrame(o), {\n update(a) {\n t = a;\n },\n getScrolled: () => e,\n stop() {\n cancelAnimationFrame(n);\n }\n };\n}\nfunction ht(r) {\n return r.closest('[data-rsv=\"tg-body\"]');\n}\nfunction q(r, t) {\n r.preventDefault(), r.stopPropagation();\n const { api: e, event: n, model: o, columnEl: a, snap: h = \"00:15\", edge: u } = t, v = a.getBoundingClientRect(), c = o.maxMinutes - o.minMinutes, l = v.height === 0 ? 0 : v.height / c, f = r.clientY, b = mt(ht(a));\n b.update(r.clientY);\n const k = (p) => {\n b.update(p.clientY);\n }, w = (p) => {\n document.removeEventListener(\"pointermove\", k), document.removeEventListener(\"pointerup\", w), b.stop();\n const m = wt(p.clientY - f + b.getScrolled(), l, h);\n if (m === 0) return;\n const S = u ? kt(n.start, n.end, u, m, s) : J(n.start, n.end, m, s);\n if (e.moveEvent(n.id, S.start, S.end)) {\n const i = e.getEventById(n.id);\n i && e.trigger(u ? \"eventResize\" : \"eventDrop\", { event: i });\n }\n };\n document.addEventListener(\"pointermove\", k), document.addEventListener(\"pointerup\", w);\n}\nfunction Ut(r, t) {\n if (r.target.closest('[data-rsv=\"event\"]')) return;\n const { api: e, date: n, model: o, columnEl: a, snap: h = \"00:15\" } = t, u = o.maxMinutes - o.minMinutes, v = K(h) || 15, c = (m) => {\n const S = a.getBoundingClientRect(), i = S.height === 0 ? 0 : S.height / u, D = o.minMinutes + (i === 0 ? 0 : (m - S.top) / i), C = Math.max(o.minMinutes, Math.min(o.maxMinutes, D));\n return Math.round(C / v) * v;\n }, l = c(r.clientY);\n let f = l, b = !1;\n const k = mt(ht(a));\n k.update(r.clientY);\n const w = (m) => {\n var i;\n k.update(m.clientY);\n const S = c(m.clientY);\n S !== l && (b = !0), f = S, b && ((i = t.onPreview) == null || i.call(t, {\n startMin: Math.min(l, f),\n endMin: Math.max(l, f)\n }));\n }, p = () => {\n var D;\n if (document.removeEventListener(\"pointermove\", w), document.removeEventListener(\"pointerup\", p), k.stop(), (D = t.onPreview) == null || D.call(t, null), !b) return;\n const m = Math.min(l, f), S = Math.max(l, f), i = s.startOf(n, \"day\");\n e.select(\n s.toISOString(s.add(i, { minutes: m })),\n s.toISOString(s.add(i, { minutes: S }))\n );\n };\n document.addEventListener(\"pointermove\", w), document.addEventListener(\"pointerup\", p);\n}\nfunction Wt({ api: r, model: t, options: e }) {\n const n = e.locale ?? \"en\", o = { type: r.getView().type }, a = W(n, e.dayHeaderFormat, {\n weekday: \"short\",\n day: \"numeric\"\n }), h = X(n, e.slotLabelFormat), u = e.allDaySlot !== !1, v = `calc(var(--spacing-rsv-slot, 2.5rem) * ${t.slots.length})`, c = t.maxMinutes - t.minMinutes, l = K(e.snapDuration ?? e.slotDuration ?? \"00:15\") || 15, f = $(null), b = $(t);\n b.current = t;\n const [k, w] = N(null);\n H(() => {\n const i = f.current;\n if (!i) return;\n const D = {\n scrollToTime(C) {\n const M = b.current, E = M.maxMinutes - M.minMinutes, x = i.scrollHeight;\n if (E <= 0 || x <= 0) return;\n const P = (Math.max(M.minMinutes, Math.min(M.maxMinutes, K(C))) - M.minMinutes) / E * x;\n i.scrollTop = Math.max(0, Math.min(P, x - i.clientHeight));\n },\n getScrollTime() {\n const C = b.current, M = C.maxMinutes - C.minMinutes, E = i.scrollHeight;\n return M <= 0 || E <= 0 ? null : At(C.minMinutes + i.scrollTop / E * M);\n }\n };\n return r.setViewAdapter(D), () => r.setViewAdapter(null);\n }, [r]);\n const p = e.scrollTime;\n H(() => {\n if (!p) return;\n let i = 0;\n const D = requestAnimationFrame(() => {\n i = requestAnimationFrame(() => r.scrollToTime(p));\n });\n return () => {\n cancelAnimationFrame(D), cancelAnimationFrame(i);\n };\n }, [r]);\n const m = (i, D) => {\n const C = i.getBoundingClientRect();\n if (C.height === 0 || c <= 0) return t.minMinutes;\n const M = (D - C.top) / C.height * c, E = Math.floor(Math.max(0, Math.min(c, M)) / l) * l;\n return t.minMinutes + E;\n }, S = t.days[0];\n return /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"timegrid\", style: `--rsv-tg-days:${t.days.length}`, children: [\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"tg-header\", role: \"row\", children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-axis-corner\" }),\n t.days.map((i) => {\n var E, x;\n const D = s.toDate(i.date), C = a ? a(D) : \"\", M = {\n date: D,\n text: C,\n dayOfWeek: s.dayOfWeek(i.date),\n dayNumber: s.dayOfMonth(i.date),\n isToday: i.isToday,\n view: o\n };\n return /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"tg-col-header\",\n role: \"columnheader\",\n \"data-today\": String(i.isToday),\n \"data-date\": s.toISOString(i.date),\n \"data-nav-link\": e.navLinks ? \"true\" : void 0,\n class: F((E = e.classNames) == null ? void 0 : E.dayHeader),\n ref: (I) => {\n var P;\n return A(I, (P = e.hooks) == null ? void 0 : P.dayHeaderDidMount, () => M);\n },\n onClick: e.navLinks ? () => st(r, i.date) : void 0,\n children: L((x = e.slots) == null ? void 0 : x.dayHeaderContent, M, C, e.hostBridge)\n },\n s.toISOString(i.date)\n );\n })\n ] }),\n u && /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"tg-allday\", role: \"row\", children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-axis-label\", children: R(e.locale).allDay }),\n t.days.map((i) => /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"tg-allday-cell\",\n onClick: () => r.trigger(\"dateClick\", { date: i.date, allDay: !0 }),\n children: i.allDayEvents.filter((D) => D.display !== \"none\").map((D) => {\n var C, M;\n return /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"event\",\n \"data-all-day\": \"true\",\n \"data-event-id\": D.id,\n class: F((C = e.classNames) == null ? void 0 : C.event, ...D.classNames),\n \"data-display\": D.display,\n style: `--rsv-event-bg:${D.backgroundColor};--rsv-event-fg:${D.textColor};--rsv-event-border:${D.borderColor}`,\n onClick: (E) => {\n E.stopPropagation(), r.trigger(\"eventClick\", { event: D, el: E.currentTarget }), D.url && window.open(D.url, \"_self\");\n },\n children: L(\n (M = e.slots) == null ? void 0 : M.eventContent,\n { event: D, isAllDay: !0, timeText: \"\", view: o },\n D.title,\n e.hostBridge\n )\n },\n D.id\n );\n })\n },\n s.toISOString(i.date)\n ))\n ] }),\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"tg-body\", ref: f, children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-axis\", style: `height:${v}`, children: t.slots.map((i) => {\n var E, x;\n const D = t.minMinutes + i.offsetMin;\n let C = \"\";\n i.isMajor && (C = h && S ? h(s.toDate(s.add(s.startOf(S.date, \"day\"), { minutes: D }))) : i.label || It(D));\n const M = { text: C, minutes: D, isMajor: i.isMajor, view: o };\n return /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-slot\", \"data-major\": String(i.isMajor), children: /* @__PURE__ */ d(\n \"span\",\n {\n \"data-rsv\": \"tg-slot-label\",\n class: F((E = e.classNames) == null ? void 0 : E.slotLabel),\n ref: (I) => {\n var P;\n return A(I, (P = e.hooks) == null ? void 0 : P.slotLabelDidMount, () => M);\n },\n children: L((x = e.slots) == null ? void 0 : x.slotLabelContent, M, C, e.hostBridge)\n }\n ) }, i.offsetMin);\n }) }),\n t.days.map((i, D) => {\n var C;\n return /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"tg-col\",\n \"data-today\": String(i.isToday),\n \"data-date\": s.toISOString(i.date),\n style: `height:${v}`,\n onClick: (M) => {\n const E = m(M.currentTarget, M.clientY);\n r.trigger(\"dateClick\", {\n date: s.add(s.startOf(i.date, \"day\"), { minutes: E }),\n allDay: !1\n });\n },\n onPointerDown: e.selectable ? (M) => Ut(M, {\n api: r,\n date: i.date,\n model: t,\n columnEl: M.currentTarget,\n snap: e.snapDuration ?? e.slotDuration,\n onPreview: e.selectMirror ? (E) => w(\n E ? { dayIndex: D, startMin: E.startMin, endMin: E.endMin } : null\n ) : void 0\n }) : void 0,\n children: [\n e.businessHours && !i.businessPct && /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-nonbusiness\", style: \"top:0;height:100%\" }),\n i.businessPct && /* @__PURE__ */ g(Ct, { children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-nonbusiness\", style: `top:0;height:${i.businessPct.topPct}%` }),\n /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"tg-nonbusiness\",\n style: `top:${i.businessPct.bottomPct}%;height:${100 - i.businessPct.bottomPct}%`\n }\n )\n ] }),\n (k == null ? void 0 : k.dayIndex) === D && c > 0 && /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"select-mirror\",\n style: `top:${(k.startMin - t.minMinutes) / c * 100}%;height:${(k.endMin - k.startMin) / c * 100}%`\n }\n ),\n i.timedSegs.filter((M) => M.event.display !== \"none\").map((M) => /* @__PURE__ */ d(\n Xt,\n {\n api: r,\n seg: M,\n model: t,\n options: e,\n view: o\n },\n M.event.id\n )),\n ((C = t.nowIndicator) == null ? void 0 : C.dayIndex) === D && /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"now-indicator\", style: `top:${t.nowIndicator.topPct}%` })\n ]\n },\n s.toISOString(i.date)\n );\n })\n ] })\n ] });\n}\nfunction Xt({\n api: r,\n seg: t,\n model: e,\n options: n,\n view: o\n}) {\n var w, p;\n const { event: a } = t, h = n.editable === !0 && a.editable !== !1, u = r.selectedEventIds.value.has(a.id), v = 100 / t.colCount, c = X(n.locale ?? \"en\", n.eventTimeFormat), l = c ? c(s.toDate(a.start)) : s.format(a.start, \"HH:mm\"), f = { event: a, isAllDay: !1, timeText: l, view: o }, b = L(\n (w = n.slots) == null ? void 0 : w.eventContent,\n f,\n /* @__PURE__ */ g(\"span\", { \"data-rsv\": \"event-title\", children: [\n l,\n \" \",\n a.title\n ] }),\n n.hostBridge\n ), k = (m) => m.closest('[data-rsv=\"tg-col\"]') ?? m;\n return /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"event\",\n \"data-all-day\": \"false\",\n \"data-display\": a.display,\n \"data-event-id\": a.id,\n \"data-rsv-selected\": String(u),\n class: F((p = n.classNames) == null ? void 0 : p.event, ...a.classNames),\n role: \"button\",\n tabIndex: 0,\n ref: (m) => {\n var S;\n return A(m, (S = n.hooks) == null ? void 0 : S.eventDidMount, () => f);\n },\n style: `position:absolute;top:${t.topPct}%;height:${t.heightPct}%;left:${t.col * v}%;width:${v}%;--rsv-event-bg:${a.backgroundColor};--rsv-event-fg:${a.textColor};--rsv-event-border:${a.borderColor}`,\n onClick: (m) => {\n if (m.stopPropagation(), m.ctrlKey || m.metaKey) {\n r.toggleEventSelection(a.id);\n return;\n }\n r.trigger(\"eventClick\", { event: a, el: m.currentTarget }), a.url && window.open(a.url, \"_self\");\n },\n onKeyDown: h ? (m) => lt(m, {\n api: r,\n event: a,\n kind: \"timeGrid\",\n snap: n.snapDuration ?? n.slotDuration,\n shortcuts: n.keyboardShortcuts\n }) : void 0,\n onPointerDown: h ? (m) => q(m, {\n api: r,\n event: a,\n model: e,\n columnEl: k(m.currentTarget),\n snap: n.snapDuration\n }) : void 0,\n children: [\n h && /* @__PURE__ */ d(\n \"span\",\n {\n \"data-rsv\": \"resize-handle\",\n \"data-edge\": \"start\",\n onPointerDown: (m) => q(m, {\n api: r,\n event: a,\n model: e,\n columnEl: k(m.currentTarget),\n snap: n.snapDuration,\n edge: \"start\"\n })\n }\n ),\n b,\n h && /* @__PURE__ */ d(\n \"span\",\n {\n \"data-rsv\": \"resize-handle\",\n \"data-edge\": \"end\",\n onPointerDown: (m) => q(m, {\n api: r,\n event: a,\n model: e,\n columnEl: k(m.currentTarget),\n snap: n.snapDuration,\n edge: \"end\"\n })\n }\n )\n ]\n }\n );\n}\nfunction qt({ api: r, model: t, options: e }) {\n const n = e.locale ?? \"en\", o = { type: r.getView().type }, a = R(e.locale), h = W(n, e.listDayFormat, {\n weekday: \"long\",\n day: \"numeric\",\n month: \"long\"\n }), u = e.listDaySideFormat ? W(n, e.listDaySideFormat, { month: \"short\", day: \"2-digit\" }) : null, v = X(n, e.eventTimeFormat);\n return t.isEmpty ? /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"list\", children: /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"list-empty\", children: a.noEvents }) }) : /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"list\", role: \"list\", children: t.days.map((c) => /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"list-day\", \"data-today\": String(c.isToday), children: [\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"list-day-header\", role: \"heading\", \"aria-level\": 3, children: [\n /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"list-day-text\", children: h ? h(s.toDate(c.date)) : \"\" }),\n u && /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"list-day-side-text\", children: u(s.toDate(c.date)) })\n ] }),\n c.events.filter((l) => l.display !== \"none\").map((l) => {\n var k, w;\n const f = l.allDay ? a.allDay : v ? v(s.toDate(l.start)) : s.format(l.start, \"HH:mm\"), b = { event: l, isAllDay: l.allDay, timeText: f, view: o };\n return /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"list-item\",\n role: \"listitem\",\n tabIndex: 0,\n \"data-event-id\": l.id,\n class: F((k = e.classNames) == null ? void 0 : k.event, ...l.classNames),\n \"data-display\": l.display,\n ref: (p) => {\n var m;\n return A(p, (m = e.hooks) == null ? void 0 : m.eventDidMount, () => b);\n },\n style: `--rsv-event-bg:${l.backgroundColor};--rsv-event-fg:${l.textColor};--rsv-event-border:${l.borderColor}`,\n onClick: (p) => {\n r.trigger(\"eventClick\", { event: l, el: p.currentTarget }), l.url && window.open(l.url, \"_self\");\n },\n children: [\n /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"list-item-time\", children: f }),\n /* @__PURE__ */ d(\n \"span\",\n {\n \"data-rsv\": \"list-item-dot\",\n style: `--rsv-event-bg:${l.backgroundColor}`\n }\n ),\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"list-item-title\", children: L(\n (w = e.slots) == null ? void 0 : w.eventContent,\n b,\n l.title,\n e.hostBridge\n ) })\n ]\n },\n l.id\n );\n })\n ] }, s.toISOString(c.date))) });\n}\nfunction zt({ api: r, model: t, options: e }) {\n const n = e.locale ?? \"en\", o = new Intl.DateTimeFormat(n, { month: \"long\" });\n return /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"multimonth\", children: t.months.map((a) => /* @__PURE__ */ g(\"section\", { \"data-rsv\": \"mm-month\", children: [\n /* @__PURE__ */ d(\"header\", { \"data-rsv\": \"mm-title\", children: o.format(s.toDate(a.date)) }),\n /* @__PURE__ */ d(ut, { api: r, model: a.dayGrid, options: e })\n ] }, s.toISOString(a.date))) });\n}\nconst z = 1.6;\nfunction Jt({ api: r, model: t, options: e }) {\n return /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"timeline\", children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tl-axis\", role: \"row\", children: t.slots.map((n) => /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tl-slot\", style: `left:${n.leftPct}%`, children: n.label }, n.leftPct)) }),\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tl-body\", style: `height:${t.laneCount * z + 0.5}rem`, children: t.segs.map((n) => /* @__PURE__ */ d(gt, { api: r, seg: n, options: e }, n.event.id)) })\n ] });\n}\nfunction gt({\n api: r,\n seg: t,\n options: e\n}) {\n var o;\n const { event: n } = t;\n return /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"event\",\n \"data-event-id\": n.id,\n role: \"button\",\n tabIndex: 0,\n style: `position:absolute;left:${t.leftPct}%;width:${t.widthPct}%;top:${t.lane * z}rem;height:${z - 0.2}rem;--rsv-event-bg:${n.backgroundColor};--rsv-event-fg:${n.textColor};--rsv-event-border:${n.borderColor}`,\n onClick: (a) => r.trigger(\"eventClick\", { event: n, el: a.currentTarget }),\n children: L(\n (o = e.slots) == null ? void 0 : o.eventContent,\n { event: n, isAllDay: n.allDay, timeText: \"\", view: { type: r.getView().type } },\n n.title,\n e.hostBridge\n )\n }\n );\n}\nconst Qt = 1.6;\nfunction Zt({ api: r, model: t, options: e }) {\n return /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"resource-timeline\", children: [\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"rt-header\", role: \"row\", children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"resource-area-header\", children: e.locale === \"es\" ? \"Recursos\" : \"Resources\" }),\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tl-axis\", children: t.slots.map((n) => /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tl-slot\", style: `left:${n.leftPct}%`, children: n.label }, n.leftPct)) })\n ] }),\n t.lanes.map((n) => {\n const o = n.laneCount * Qt + 0.4;\n return /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"resource-row\", role: \"row\", children: [\n /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"resource-label\",\n style: `padding-inline-start:${0.5 + n.row.depth * 1}rem`,\n children: [\n n.row.hasChildren && /* @__PURE__ */ d(\n \"button\",\n {\n type: \"button\",\n \"data-rsv\": \"resource-toggle\",\n \"aria-expanded\": n.row.expanded,\n onClick: () => r.toggleResource(n.row.resource.id),\n children: n.row.expanded ? \"▾\" : \"▸\"\n }\n ),\n /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"resource-title\", children: n.row.resource.title })\n ]\n }\n ),\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"resource-lane\", style: `height:${o}rem`, children: n.segs.map((a) => /* @__PURE__ */ d(gt, { api: r, seg: a, options: e }, a.event.id)) })\n ] }, n.row.resource.id);\n })\n ] });\n}\nfunction te({ api: r, model: t, options: e }) {\n const n = `calc(var(--spacing-rsv-slot, 2.5rem) * ${t.slots.length})`;\n return /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"timegrid\", style: `--rsv-tg-days:${t.columns.length}`, children: [\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"tg-header\", role: \"row\", children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-axis-corner\" }),\n t.columns.map((o) => /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-col-header\", role: \"columnheader\", children: o.row.resource.title }, o.row.resource.id))\n ] }),\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"tg-allday\", role: \"row\", children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-axis-label\", children: R(e.locale).allDay }),\n t.columns.map((o) => /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-allday-cell\", children: o.allDayEvents.map((a) => /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"event\",\n \"data-all-day\": \"true\",\n style: `--rsv-event-bg:${a.backgroundColor}`,\n onClick: (h) => r.trigger(\"eventClick\", { event: a, el: h.currentTarget }),\n children: a.title\n },\n a.id\n )) }, o.row.resource.id))\n ] }),\n /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"tg-body\", children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-axis\", style: `height:${n}`, children: t.slots.map((o) => /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"tg-slot\", \"data-major\": String(o.isMajor), children: /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"tg-slot-label\", children: o.label }) }, o.offsetMin)) }),\n t.columns.map((o) => /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"tg-col\",\n \"data-rsv-resource-id\": o.row.resource.id,\n style: `height:${n}`,\n children: [\n o.timedSegs.map((a) => {\n const h = 100 / a.colCount;\n return /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"event\",\n \"data-all-day\": \"false\",\n \"data-event-id\": a.event.id,\n role: \"button\",\n tabIndex: 0,\n style: `position:absolute;top:${a.topPct}%;height:${a.heightPct}%;left:${a.col * h}%;width:${h}%;--rsv-event-bg:${a.event.backgroundColor};--rsv-event-fg:${a.event.textColor}`,\n onClick: (u) => {\n u.stopPropagation(), r.trigger(\"eventClick\", { event: a.event });\n },\n children: [\n s.format(a.event.start, \"HH:mm\"),\n \" \",\n a.event.title\n ]\n },\n a.event.id\n );\n }),\n t.nowTopPct != null && /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"now-indicator\", style: `top:${t.nowTopPct}%` })\n ]\n },\n o.row.resource.id\n ))\n ] })\n ] });\n}\nfunction ee({ api: r, model: t }) {\n return /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"resource-daygrid\", style: `--rsv-rdg-cols:${t.columns.length}`, children: [\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"rdg-header\", role: \"row\", children: t.columns.map((e) => /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"rdg-col-header\", role: \"columnheader\", children: e.row.resource.title }, e.row.resource.id)) }),\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"rdg-body\", role: \"row\", children: t.columns.map((e) => /* @__PURE__ */ d(\n \"div\",\n {\n \"data-rsv\": \"rdg-col\",\n \"data-rsv-resource-id\": e.row.resource.id,\n children: e.events.map((n) => /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"event\",\n \"data-all-day\": String(n.allDay),\n \"data-event-id\": n.id,\n role: \"button\",\n tabIndex: 0,\n style: `--rsv-event-bg:${n.backgroundColor};--rsv-event-fg:${n.textColor};--rsv-event-border:${n.borderColor}`,\n onClick: (o) => r.trigger(\"eventClick\", { event: n, el: o.currentTarget }),\n children: [\n n.allDay ? \"\" : s.format(n.start, \"HH:mm\") + \" \",\n n.title\n ]\n },\n n.id\n ))\n },\n e.row.resource.id\n )) })\n ] });\n}\nfunction re({ api: r, model: t, options: e }) {\n return /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"resource-daygrid-month\", style: `--rsv-rdgm-cols:${t.columnCount}`, children: t.weeks.map((n, o) => /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"rdgm-week\", role: \"row\", children: n.days.map((a) => /* @__PURE__ */ d(\n ne,\n {\n api: r,\n cell: a,\n options: e\n },\n s.toISOString(a.date)\n )) }, `week-${o}`)) });\n}\nfunction ne({\n api: r,\n cell: t,\n options: e\n}) {\n const n = s.dayOfMonth(t.date);\n return /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"day\",\n role: \"gridcell\",\n \"data-date\": s.toISOString(t.date),\n \"data-today\": String(t.isToday),\n \"data-other\": String(t.isOther),\n children: [\n /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"day-number\", children: n }),\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"rdgm-columns\", children: t.columns.map((o) => /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"rdgm-col\", \"data-rsv-resource-id\": o.row.resource.id, children: [\n /* @__PURE__ */ d(\"span\", { \"data-rsv\": \"rdgm-col-label\", children: o.row.resource.title }),\n o.events.map((a) => {\n const h = r.selectedEventIds.value.has(a.id);\n return /* @__PURE__ */ g(\n \"div\",\n {\n \"data-rsv\": \"event\",\n \"data-all-day\": String(a.allDay),\n \"data-event-id\": a.id,\n \"data-rsv-selected\": String(h),\n role: \"button\",\n tabIndex: 0,\n style: `--rsv-event-bg:${a.backgroundColor};--rsv-event-fg:${a.textColor};--rsv-event-border:${a.borderColor}`,\n onClick: (u) => {\n if (u.stopPropagation(), u.ctrlKey || u.metaKey) {\n r.toggleEventSelection(a.id);\n return;\n }\n r.trigger(\"eventClick\", { event: a, el: u.currentTarget }), a.url && window.open(a.url, \"_self\");\n },\n children: [\n a.allDay ? \"\" : `${s.format(a.start, \"HH:mm\")} `,\n a.title\n ]\n },\n a.id\n );\n }),\n o.moreCount > 0 && /* @__PURE__ */ d(\n \"span\",\n {\n \"data-rsv\": \"rdgm-more\",\n onClick: (a) => {\n a.stopPropagation(), r.trigger(\"moreLinkClick\", {\n date: t.date,\n allEvents: [...o.events, ...o.hiddenEvents],\n hiddenEvents: o.hiddenEvents\n });\n },\n children: R(e.locale).more(o.moreCount)\n }\n )\n ] }, o.row.resource.id)) })\n ]\n }\n );\n}\nfunction ae({ api: r, options: t }) {\n var c;\n const e = r.viewModel.value, n = t.direction ?? R(t.locale).direction, o = r.getEffectiveOption(\"hourHeight\", e.type), a = r.getEffectiveOption(\"height\", e.type), h = [\n t.themeTokens ? pt(t.themeTokens) : \"\",\n o ? `${Dt.slotHeight}:${o}px` : \"\",\n a != null && a !== \"auto\" ? `height:${typeof a == \"number\" ? `${a}px` : a}` : \"\"\n ].filter(Boolean).join(\";\") || void 0, u = $(null);\n H(() => (r.setRootEl(u.current), () => r.setRootEl(null)), [r]);\n const v = $(t.responsiveViews);\n return v.current = t.responsiveViews, H(() => {\n const l = u.current;\n if (!l || typeof ResizeObserver > \"u\") return;\n let f = 0;\n const b = new ResizeObserver((k) => {\n const w = k[0], p = (w == null ? void 0 : w.contentRect.width) ?? l.clientWidth;\n cancelAnimationFrame(f), f = requestAnimationFrame(() => {\n const m = v.current;\n if (!(m != null && m.length)) return;\n const S = $t(m, p);\n S && S !== r.getView().type && r.hasView(S) && r.changeView(S);\n });\n });\n return b.observe(l), () => {\n cancelAnimationFrame(f), b.disconnect();\n };\n }, [r]), /* @__PURE__ */ g(\n \"div\",\n {\n ref: u,\n \"data-rsv\": \"root\",\n dir: n,\n \"data-rsv-theme\": t.theme,\n \"data-rsv-autoheight\": a === \"auto\" ? \"true\" : void 0,\n style: h,\n class: F((c = t.classNames) == null ? void 0 : c.root),\n children: [\n t.headerToolbar !== !1 && /* @__PURE__ */ d(Rt, { api: r, title: e.title, activeView: e.type, options: t }),\n /* @__PURE__ */ d(\"div\", { \"data-rsv\": \"view\", \"data-view\": e.type, children: e.dayGrid ? /* @__PURE__ */ d(ut, { api: r, model: e.dayGrid, options: t }) : e.timeGrid ? /* @__PURE__ */ d(Wt, { api: r, model: e.timeGrid, options: t }) : e.list ? /* @__PURE__ */ d(qt, { api: r, model: e.list, options: t }) : e.multiMonth ? /* @__PURE__ */ d(zt, { api: r, model: e.multiMonth, options: t }) : e.resourceTimeGrid ? /* @__PURE__ */ d(te, { api: r, model: e.resourceTimeGrid, options: t }) : e.resourceDayGrid ? /* @__PURE__ */ d(ee, { api: r, model: e.resourceDayGrid, options: t }) : e.resourceDayGridMonth ? /* @__PURE__ */ d(re, { api: r, model: e.resourceDayGridMonth, options: t }) : e.resourceTimeline ? /* @__PURE__ */ d(Zt, { api: r, model: e.resourceTimeline, options: t }) : e.timeline ? /* @__PURE__ */ d(Jt, { api: r, model: e.timeline, options: t }) : /* @__PURE__ */ g(\"div\", { \"data-rsv\": \"unsupported\", children: [\n 'La vista \"',\n e.type,\n '\" se implementa en una fase posterior.'\n ] }) })\n ]\n }\n );\n}\nfunction ue(r, t) {\n const e = new Mt(t);\n return at(bt(ae, { api: e, options: t }), r), {\n api: e,\n destroy() {\n at(null, r), e.destroy();\n }\n };\n}\nfunction ve(r, t = \"calendar.ics\") {\n if (typeof document > \"u\") return;\n const e = St(r), n = new Blob([e], { type: \"text/calendar;charset=utf-8\" }), o = URL.createObjectURL(n), a = document.createElement(\"a\");\n a.href = o, a.download = t, document.body.appendChild(a), a.click(), a.remove(), URL.revokeObjectURL(o);\n}\nexport {\n ae as Calendar,\n ut as DayGridView,\n qt as ListView,\n zt as MultiMonthView,\n ee as ResourceDayGridView,\n te as ResourceTimeGridView,\n Zt as ResourceTimelineView,\n Wt as TimeGridView,\n Jt as TimelineView,\n Rt as Toolbar,\n A as callDidMount,\n F as cx,\n W as dateFormatter,\n ge as dayGridPlugin,\n ye as definePlugin,\n fe as defineTheme,\n ve as downloadICS,\n be as eventsToICS,\n lt as handleEventKeydown,\n ce as hostSlot,\n Et as isHostSlot,\n we as listPlugin,\n It as minutesToLabel,\n At as minutesToTimeString,\n ue as mount,\n ke as multiMonthPlugin,\n De as parseICS,\n L as renderSlot,\n pe as resourcePlugin,\n q as startEventDrag,\n Me as themeToStyle,\n X as timeFormatter,\n Se as timeGridPlugin,\n Ce as timelinePlugin\n};\n//# sourceMappingURL=index.js.map\n","import { jsxs as B, Fragment as G, jsx as W } from \"react/jsx-runtime\";\nimport { forwardRef as Y, useRef as g, useState as q, useCallback as K, useMemo as Z, useEffect as R, useImperativeHandle as J } from \"react\";\nimport { createPortal as Q } from \"react-dom\";\nimport { mount as U, hostSlot as w } from \"@reservi/preact\";\nimport { dl as l } from \"@reservi/core\";\nimport { dayGridPlugin as ce, definePlugin as de, defineTheme as ve, dl as Ce, listPlugin as me, multiMonthPlugin as Se, resourcePlugin as fe, timeGridPlugin as ye, timelinePlugin as De } from \"@reservi/core\";\nconst F = (t) => t ? l.toDate(t) : null, A = (t) => t ? l.toISOString(t) : \"\";\nfunction S(t) {\n return {\n id: t.id,\n groupId: t.groupId,\n title: t.title,\n start: F(t.start),\n end: F(t.end),\n startStr: A(t.start),\n endStr: A(t.end),\n allDay: t.allDay,\n url: t.url,\n display: t.display,\n backgroundColor: t.backgroundColor,\n borderColor: t.borderColor,\n textColor: t.textColor,\n classNames: t.classNames,\n extendedProps: t.extendedProps,\n def: t\n };\n}\nfunction V(t, a, d) {\n const v = { type: t.type };\n return a ? {\n ...v,\n ...d == null ? {} : { title: d },\n currentStart: l.toDate(a.currentStart),\n currentEnd: l.toDate(a.currentEnd),\n activeStart: l.toDate(a.activeStart),\n activeEnd: l.toDate(a.activeEnd)\n } : d == null ? v : { ...v, title: d };\n}\nconst X = [\n \"eventContent\",\n \"dayCellContent\",\n \"dayHeaderContent\",\n \"slotLabelContent\",\n \"moreLinkContent\"\n], z = [\n \"locale\",\n \"direction\",\n \"timeZone\",\n \"firstDay\",\n \"weekends\",\n \"hiddenDays\",\n \"fixedWeekCount\",\n \"showNonCurrentDates\",\n \"weekNumbers\",\n \"weekNumberCalculation\",\n \"navLinks\",\n \"dayMaxEvents\",\n \"dayMaxEventRows\",\n \"slotMinTime\",\n \"slotMaxTime\",\n \"slotDuration\",\n \"slotLabelInterval\",\n \"allDaySlot\",\n \"nowIndicator\",\n \"scrollTime\",\n \"editable\",\n \"selectable\",\n \"selectMirror\",\n \"snapDuration\",\n \"businessHours\",\n \"eventOverlap\",\n \"eventConstraint\",\n \"eventAllow\",\n \"theme\",\n \"themeTokens\",\n \"headerToolbar\",\n \"hourHeight\",\n \"height\",\n \"eventTimeFormat\",\n \"slotLabelFormat\",\n \"dayHeaderFormat\",\n \"listDayFormat\",\n \"listDaySideFormat\",\n \"titleFormat\",\n \"viewOverrides\",\n \"keyboardShortcuts\",\n \"resourceAreaWidth\",\n \"resourceOrder\",\n \"lazyFetching\",\n // Opciones de la capa de UI (no del núcleo). `setOptions` es agnóstico de la\n // clave, así que se sincronizan igual: sin esto, cambiar de vista dejaría las\n // clases de la vista anterior.\n \"classNames\",\n \"views\",\n \"addButtonText\",\n \"responsiveViews\"\n];\nfunction $(t, a) {\n return t.getOption(a);\n}\nconst le = Y(\n function(a, d) {\n const v = g(null), y = g(null), o = g(a);\n o.current = a;\n const D = g(/* @__PURE__ */ new Map()), [, h] = q(0), L = g(!1), E = g(!0), b = K(() => {\n L.current || (L.current = !0, queueMicrotask(() => {\n L.current = !1, E.current && h((i) => i + 1);\n }));\n }, []), H = Z(\n () => ({\n mount(i, c, C) {\n D.current.set(i, { el: c, payload: C }), b();\n },\n update(i, c) {\n const C = D.current.get(i);\n C && (C.payload = c, b());\n },\n unmount(i) {\n D.current.delete(i) && b();\n }\n }),\n [b]\n );\n R(() => {\n var T, P;\n const i = v.current;\n if (!i) return;\n E.current = !0;\n const c = {\n eventContent: (e) => o.current.eventContent ? w({ slot: \"eventContent\", arg: e }) : void 0,\n dayCellContent: (e) => o.current.dayCellContent ? w({ slot: \"dayCellContent\", arg: e }) : void 0,\n dayHeaderContent: (e) => o.current.dayHeaderContent ? w({ slot: \"dayHeaderContent\", arg: e }) : void 0,\n slotLabelContent: (e) => o.current.slotLabelContent ? w({ slot: \"slotLabelContent\", arg: e }) : void 0,\n moreLinkContent: (e) => o.current.moreLinkContent ? w({ slot: \"moreLinkContent\", arg: e }) : void 0\n }, C = {\n ...te(o.current),\n slots: c,\n hostBridge: H,\n hooks: {\n eventDidMount: (e) => {\n const n = o.current.eventDidMount;\n n && n({ ..._(e), el: e.el });\n },\n dayCellDidMount: (e) => {\n var n, r;\n return (r = (n = o.current).dayCellDidMount) == null ? void 0 : r.call(n, e);\n },\n dayHeaderDidMount: (e) => {\n var n, r;\n return (r = (n = o.current).dayHeaderDidMount) == null ? void 0 : r.call(n, e);\n },\n slotLabelDidMount: (e) => {\n var n, r;\n return (r = (n = o.current).slotLabelDidMount) == null ? void 0 : r.call(n, e);\n }\n }\n }, f = U(i, C);\n y.current = f;\n const s = f.api, m = () => {\n const e = s.getViewModel();\n return V(e.spec, e.range, e.title);\n }, j = [\n s.on(\n \"eventClick\",\n ({ event: e, el: n }) => {\n var r, u;\n return (u = (r = o.current).eventClick) == null ? void 0 : u.call(r, {\n event: S(e),\n el: n ?? null,\n view: m()\n });\n }\n ),\n s.on(\n \"dateClick\",\n ({ date: e, allDay: n }) => {\n var r, u;\n return (u = (r = o.current).dateClick) == null ? void 0 : u.call(r, {\n date: l.toDate(e),\n dateStr: l.toISOString(e),\n allDay: n ?? !1,\n view: m()\n });\n }\n ),\n s.on(\n \"select\",\n ({ start: e, end: n }) => {\n var r, u;\n return (u = (r = o.current).select) == null ? void 0 : u.call(r, {\n start: l.toDate(e),\n end: l.toDate(n),\n startStr: l.toISOString(e),\n endStr: l.toISOString(n),\n view: m()\n });\n }\n ),\n s.on(\"unselect\", () => {\n var e, n;\n return (n = (e = o.current).unselect) == null ? void 0 : n.call(e);\n }),\n s.on(\n \"datesSet\",\n ({ range: e, view: n }) => {\n var r, u;\n return (u = (r = o.current).datesSet) == null ? void 0 : u.call(r, {\n start: l.toDate(e.activeStart),\n end: l.toDate(e.activeEnd),\n startStr: l.toISOString(e.activeStart),\n endStr: l.toISOString(e.activeEnd),\n view: V(n, e)\n });\n }\n ),\n // Sin `view()`: `eventsSet` se emite desde un effect de signals y leer\n // el ViewModel ahí lo añadiría a sus dependencias.\n s.on(\n \"eventsSet\",\n (e) => {\n var n, r;\n return (r = (n = o.current).eventsSet) == null ? void 0 : r.call(n, e.map((u) => S(u)));\n }\n ),\n s.on(\n \"eventDrop\",\n ({ event: e }) => {\n var n, r;\n return (r = (n = o.current).eventDrop) == null ? void 0 : r.call(n, { event: S(e), view: m() });\n }\n ),\n s.on(\n \"eventResize\",\n ({ event: e }) => {\n var n, r;\n return (r = (n = o.current).eventResize) == null ? void 0 : r.call(n, { event: S(e), view: m() });\n }\n ),\n s.on(\n \"eventChange\",\n ({ event: e }) => {\n var n, r;\n return (r = (n = o.current).eventChange) == null ? void 0 : r.call(n, { event: S(e), view: m() });\n }\n ),\n s.on(\n \"moreLinkClick\",\n ({ date: e, allEvents: n, hiddenEvents: r }) => {\n var u, N;\n return (N = (u = o.current).moreLinkClick) == null ? void 0 : N.call(u, {\n date: l.toDate(e),\n dateStr: l.toISOString(e),\n allEvents: n.map((O) => S(O)),\n hiddenEvents: r.map((O) => S(O)),\n view: m()\n });\n }\n ),\n s.on(\n \"navLinkDay\",\n ({ date: e }) => {\n var n, r;\n return (r = (n = o.current).navLinkDay) == null ? void 0 : r.call(n, { date: l.toDate(e), dateStr: l.toISOString(e) });\n }\n ),\n s.on(\"loading\", ({ isLoading: e }) => {\n var n, r;\n return (r = (n = o.current).loading) == null ? void 0 : r.call(n, e);\n })\n ];\n return (P = (T = o.current).onReady) == null || P.call(T, s), () => {\n E.current = !1;\n for (const e of j) e();\n f.destroy(), y.current = null, D.current.clear();\n };\n }, [H]), J(d, () => ({ getApi: () => {\n var i;\n return ((i = y.current) == null ? void 0 : i.api) ?? null;\n } }), []);\n const M = z.map((i) => a[i]);\n R(() => {\n var f;\n const i = (f = y.current) == null ? void 0 : f.api;\n if (!i) return;\n const c = {};\n let C = !1;\n z.forEach((s, m) => {\n $(i, s) !== M[m] && (c[s] = M[m], C = !0);\n }), C && i.setOptions(c);\n }, M);\n const k = a.events, x = g(k);\n R(() => {\n var c;\n const i = (c = y.current) == null ? void 0 : c.api;\n if (!(!i || !k)) {\n if (x.current === k) {\n x.current = void 0;\n return;\n }\n i.refetchEvents(k);\n }\n }, [k]);\n const I = [];\n for (const [i, { el: c, payload: C }] of D.current) {\n const f = p(a, C);\n f != null && I.push(Q(f, c, i));\n }\n return /* @__PURE__ */ B(G, { children: [\n /* @__PURE__ */ W(\"div\", { ref: v, className: a.className, style: a.style }),\n I\n ] });\n }\n);\nfunction p(t, a) {\n var d, v, y, o, D;\n switch (a.slot) {\n case \"eventContent\":\n return (d = t.eventContent) == null ? void 0 : d.call(t, _(a.arg));\n case \"dayCellContent\":\n return (v = t.dayCellContent) == null ? void 0 : v.call(t, a.arg);\n case \"dayHeaderContent\":\n return (y = t.dayHeaderContent) == null ? void 0 : y.call(t, a.arg);\n case \"slotLabelContent\":\n return (o = t.slotLabelContent) == null ? void 0 : o.call(t, a.arg);\n case \"moreLinkContent\": {\n const h = a.arg;\n return (D = t.moreLinkContent) == null ? void 0 : D.call(t, {\n date: h.date,\n moreCount: h.moreCount,\n allEvents: h.allEvents.map(S),\n hiddenEvents: h.hiddenEvents.map(S),\n view: h.view\n });\n }\n default:\n return null;\n }\n}\nfunction _(t) {\n return {\n event: S(t.event),\n isAllDay: t.isAllDay,\n timeText: t.timeText,\n view: t.view\n };\n}\nconst ee = /* @__PURE__ */ new Set([\n ...X,\n \"eventClick\",\n \"dateClick\",\n \"select\",\n \"unselect\",\n \"datesSet\",\n \"eventsSet\",\n \"eventDrop\",\n \"eventResize\",\n \"eventChange\",\n \"moreLinkClick\",\n \"navLinkDay\",\n \"loading\",\n \"eventDidMount\",\n \"dayCellDidMount\",\n \"dayHeaderDidMount\",\n \"slotLabelDidMount\",\n \"onReady\",\n \"className\",\n \"style\"\n]);\nfunction te(t) {\n const a = {};\n for (const [d, v] of Object.entries(t))\n ee.has(d) || (a[d] = v);\n return a;\n}\nexport {\n le as ReserviCalendar,\n S as adaptEvent,\n V as adaptView,\n ce as dayGridPlugin,\n de as definePlugin,\n ve as defineTheme,\n Ce as dl,\n me as listPlugin,\n Se as multiMonthPlugin,\n fe as resourcePlugin,\n ye as timeGridPlugin,\n De as timelinePlugin\n};\n//# sourceMappingURL=index.js.map\n","/*! Nexa v1.7.0 | (c) 2026 Berea-Soft | MIT License | https://github.com/Berea-Soft/Nexa */\n//#region src/types/index.ts\nvar e = (e) => ({\n\tok: !0,\n\tvalue: e\n}), t = (e) => ({\n\tok: !1,\n\terror: e\n});\n//#endregion\n//#region src/utils/index.ts\nfunction n(n) {\n\treturn { validate(r) {\n\t\tlet i = r;\n\t\tfor (let [e, r] of Object.entries(n)) if (!r(i[e])) return t({\n\t\t\tmessage: `Validation failed: field \"${e}\" is invalid`,\n\t\t\tcode: \"VALIDATION_ERROR\"\n\t\t});\n\t\treturn e(r);\n\t} };\n}\nfunction r(n) {\n\treturn { validate(r) {\n\t\tlet i = r, a = n.filter((e) => !(e in i));\n\t\treturn a.length > 0 ? t({\n\t\t\tmessage: `Validation failed: missing fields: ${a.join(\", \")}`,\n\t\t\tcode: \"VALIDATION_ERROR\"\n\t\t}) : e(r);\n\t} };\n}\nvar i = { validate(n) {\n\treturn Array.isArray(n) ? e(n) : t({\n\t\tmessage: \"Expected array response\",\n\t\tcode: \"VALIDATION_ERROR\"\n\t});\n} }, a = { validate(n) {\n\treturn n && typeof n == \"object\" && !Array.isArray(n) ? e(n) : t({\n\t\tmessage: \"Expected object response\",\n\t\tcode: \"VALIDATION_ERROR\"\n\t});\n} }, o = { transform(e) {\n\treturn h(e, ee);\n} }, s = { transform(e) {\n\treturn h(e, m);\n} }, c = { transform(e) {\n\treturn g(e);\n} };\nfunction l(e) {\n\treturn { transform(t) {\n\t\treturn Array.isArray(t) ? t.map((t) => _(t, e)) : _(t, e);\n\t} };\n}\nfunction u(e) {\n\treturn { transform(t) {\n\t\treturn { [e]: t };\n\t} };\n}\nvar d = class {\n\tmaxAttempts;\n\tconstructor(e = 5) {\n\t\tthis.maxAttempts = e;\n\t}\n\tshouldRetry(e) {\n\t\treturn e < this.maxAttempts;\n\t}\n\tdelayMs(e) {\n\t\treturn e * 50;\n\t}\n}, f = class {\n\tretryableStatuses = [\n\t\t408,\n\t\t429,\n\t\t500,\n\t\t502,\n\t\t503,\n\t\t504\n\t];\n\tmaxAttempts;\n\tconstructor(e = 3) {\n\t\tthis.maxAttempts = e;\n\t}\n\tshouldRetry(e, t) {\n\t\treturn e >= this.maxAttempts ? !1 : this.retryableStatuses.includes(t.status ?? 0) || t.code === \"TIMEOUT\";\n\t}\n\tdelayMs(e) {\n\t\treturn Math.min(1e3 * 2 ** (e - 1), 1e4);\n\t}\n}, p = class {\n\tfailureCount = 0;\n\tlastFailureTime = 0;\n\tmaxAttempts;\n\tfailureThreshold;\n\tresetTimeMs;\n\tconstructor(e = 3, t = 5, n = 6e4) {\n\t\tthis.maxAttempts = e, this.failureThreshold = t, this.resetTimeMs = n;\n\t}\n\tshouldRetry(e) {\n\t\treturn e >= this.maxAttempts || (Date.now() - this.lastFailureTime > this.resetTimeMs && (this.failureCount = 0), this.failureCount >= this.failureThreshold) ? !1 : (this.failureCount++, this.lastFailureTime = Date.now(), !0);\n\t}\n\tdelayMs(e) {\n\t\treturn 100 * 2 ** (e - 1);\n\t}\n\treset() {\n\t\tthis.failureCount = 0, this.lastFailureTime = 0;\n\t}\n};\nfunction ee(e) {\n\treturn e.replace(/_([a-z])/g, (e, t) => t.toUpperCase());\n}\nfunction m(e) {\n\treturn e.replace(/[A-Z]/g, (e) => `_${e.toLowerCase()}`);\n}\nfunction h(e, t) {\n\tif (!e || typeof e != \"object\") return e;\n\tif (Array.isArray(e)) return e.map((e) => h(e, t));\n\tlet n = {};\n\tfor (let [r, i] of Object.entries(e)) n[t(r)] = h(i, t);\n\treturn n;\n}\nfunction g(e, t = \"\") {\n\tlet n = {};\n\tif (Array.isArray(e)) e.forEach((e, r) => {\n\t\tlet i = t ? `${t}[${r}]` : `[${r}]`;\n\t\tObject.assign(n, g(e, i));\n\t});\n\telse if (e && typeof e == \"object\") for (let [r, i] of Object.entries(e)) {\n\t\tlet e = t ? `${t}.${r}` : r;\n\t\ti && typeof i == \"object\" && !Array.isArray(i) ? Object.assign(n, g(i, e)) : n[e] = i;\n\t}\n\treturn n;\n}\nfunction _(e, t) {\n\tif (!e || typeof e != \"object\") return {};\n\tlet n = e, r = {};\n\tfor (let e of t) e in n && (r[e] = n[e]);\n\treturn r;\n}\nfunction te(e) {\n\tlet t = new AbortController(), n = setTimeout(() => t.abort(), e);\n\treturn t.signal.addEventListener(\"abort\", () => clearTimeout(n), { once: !0 }), t;\n}\nasync function v(e, t = 3) {\n\ttry {\n\t\treturn await e();\n\t} catch (n) {\n\t\tif (t <= 0) throw n;\n\t\treturn v(e, t - 1);\n\t}\n}\nvar y = class {\n\tcache = /* @__PURE__ */ new Map();\n\tget(e) {\n\t\tlet t = this.cache.get(e);\n\t\treturn t ? Date.now() - t.timestamp > t.ttlMs ? (this.cache.delete(e), null) : t.data : null;\n\t}\n\tset(e, t, n = 6e4) {\n\t\tthis.cache.set(e, {\n\t\t\tdata: t,\n\t\t\ttimestamp: Date.now(),\n\t\t\tttlMs: n\n\t\t});\n\t}\n\tclear() {\n\t\tthis.cache.clear();\n\t}\n\thas(e) {\n\t\tlet t = this.cache.get(e);\n\t\treturn t ? Date.now() - t.timestamp > t.ttlMs ? (this.cache.delete(e), !1) : !0 : !1;\n\t}\n\tdelete(e) {\n\t\tthis.cache.delete(e);\n\t}\n};\nfunction b(e = {}) {\n\tlet t = e.cache || new y(), n = e.ttlMs || 6e4, r = e.cacheableStatuses || [200, 304];\n\treturn async (e, i) => {\n\t\tlet a = (e.request.method || \"GET\").toUpperCase(), o = a === \"GET\", s = `${a}:${e.request.url}`;\n\t\tif (o && t.has(s)) {\n\t\t\tlet n = t.get(s);\n\t\t\tif (n) {\n\t\t\t\te.response = n, e.state.cacheHit = !0;\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tawait i(), o && e.response && r.includes(e.response.status) && (t.set(s, e.response, n), e.state.cacheMiss = !0);\n\t};\n}\nvar x = b(), S = class {\n\tpending = /* @__PURE__ */ new Map();\n\tasync execute(e, t) {\n\t\tif (this.pending.has(e)) return this.pending.get(e);\n\t\tlet n = t().finally(() => {\n\t\t\tthis.pending.delete(e);\n\t\t});\n\t\treturn this.pending.set(e, n), n;\n\t}\n\tclear() {\n\t\tthis.pending.clear();\n\t}\n};\nfunction C(e = {}) {\n\tlet t = e.deduplicator || new S(), n = e.includeBody ?? !1, r = e.methods || [\"GET\"];\n\treturn async (e, i) => {\n\t\tlet a = (e.request.method || \"GET\").toUpperCase();\n\t\tif (!r.includes(a)) {\n\t\t\tawait i();\n\t\t\treturn;\n\t\t}\n\t\tlet o = `${a}:${e.request.url}`;\n\t\tn && e.request.body && (o += `:${JSON.stringify(e.request.body)}`);\n\t\ttry {\n\t\t\te.response = await t.execute(o, async () => (await i(), e.response)), e.state.deduped = !0;\n\t\t} catch (t) {\n\t\t\tthrow e.error = t, t;\n\t\t}\n\t};\n}\nvar ne = C();\nfunction w(e) {\n\treturn async (t) => {\n\t\tlet n = -1;\n\t\tasync function r(i) {\n\t\t\tif (i <= n) throw Error(\"next() called multiple times\");\n\t\t\tn = i;\n\t\t\tlet a = e[i];\n\t\t\ta && await a(t, () => r(i + 1));\n\t\t}\n\t\tawait r(0);\n\t};\n}\nvar re = class {\n\tmiddlewares = [];\n\tuse(e) {\n\t\treturn this.middlewares.push(e), this;\n\t}\n\tasync execute(e) {\n\t\tif (e && typeof e == \"object\" && \"request\" in e && \"response\" in e) {\n\t\t\tlet t = e;\n\t\t\treturn await w(this.middlewares.map((e) => typeof e == \"function\" && e.length === 2 ? e : async (t, n) => {\n\t\t\t\tlet r = e;\n\t\t\t\tt.response.body = await r(t.response.body), await n();\n\t\t\t}))(t), t.response.body;\n\t\t}\n\t\tlet t = e;\n\t\tfor (let e of this.middlewares) t = await e(t);\n\t\treturn t;\n\t}\n\tclear() {\n\t\tthis.middlewares = [];\n\t}\n};\nfunction ie(e, t, n, r = {}) {\n\treturn {\n\t\tok: e >= 200 && e < 300,\n\t\tdata: t,\n\t\terror: n,\n\t\tstatus: e,\n\t\theaders: r\n\t};\n}\nfunction T(e) {\n\treturn async (t, n) => {\n\t\tlet r = e.path, i;\n\t\tswitch (e.method) {\n\t\t\tcase \"GET\":\n\t\t\t\ti = await t.get(r);\n\t\t\t\tbreak;\n\t\t\tcase \"POST\":\n\t\t\t\ti = await t.post(r, n);\n\t\t\t\tbreak;\n\t\t\tcase \"PUT\":\n\t\t\t\ti = await t.put(r, n);\n\t\t\t\tbreak;\n\t\t\tcase \"PATCH\":\n\t\t\t\ti = await t.patch(r, n);\n\t\t\t\tbreak;\n\t\t\tcase \"DELETE\":\n\t\t\t\ti = await t.delete(r);\n\t\t\t\tbreak;\n\t\t\tdefault: throw Error(`Unsupported method: ${e.method}`);\n\t\t}\n\t\treturn i;\n\t};\n}\nfunction ae(e) {\n\treturn { request: async (t, n, r) => {\n\t\tlet i = e[n];\n\t\treturn await T(i)(t, r);\n\t} };\n}\nvar E = class e {\n\tsubscribers = [];\n\terrorSubscribers = [];\n\tcompleteSubscribers = [];\n\tsubscribe(e, t, n) {\n\t\treturn e && this.subscribers.push(e), t && this.errorSubscribers.push(t), n && this.completeSubscribers.push(n), { unsubscribe: () => {\n\t\t\tthis.subscribers = this.subscribers.filter((t) => t !== e), this.errorSubscribers = this.errorSubscribers.filter((e) => e !== t), this.completeSubscribers = this.completeSubscribers.filter((e) => e !== n);\n\t\t} };\n\t}\n\tnext(e) {\n\t\tthis.subscribers.forEach((t) => t(e));\n\t}\n\terror(e) {\n\t\tthis.errorSubscribers.forEach((t) => t(e));\n\t}\n\tcomplete() {\n\t\tthis.completeSubscribers.forEach((e) => e());\n\t}\n\tmap(t) {\n\t\tlet n = new e();\n\t\treturn this.subscribe((e) => n.next(t(e)), (e) => n.error(e), () => n.complete()), n;\n\t}\n\tfilter(t) {\n\t\tlet n = new e();\n\t\treturn this.subscribe((e) => {\n\t\t\tt(e) && n.next(e);\n\t\t}, (e) => n.error(e), () => n.complete()), n;\n\t}\n};\nfunction D(e) {\n\treturn (t) => {\n\t\tif (!e(t)) throw TypeError(\"Value does not match expected type\");\n\t\treturn t;\n\t};\n}\nfunction O(e) {\n\treturn e;\n}\nfunction k(e) {\n\treturn O(e);\n}\nvar oe = class {\n\t_promise;\n\tresolveFunc;\n\trejectFunc;\n\tconstructor() {\n\t\tthis._promise = new Promise((e, t) => {\n\t\t\tthis.resolveFunc = e, this.rejectFunc = t;\n\t\t});\n\t}\n\tresolve(e) {\n\t\tthis.resolveFunc(e);\n\t}\n\treject(e) {\n\t\tthis.rejectFunc(e);\n\t}\n\tget promise() {\n\t\treturn this._promise;\n\t}\n\tpromise_() {\n\t\treturn this._promise;\n\t}\n};\nasync function A(e, t = {}) {\n\tlet n = e.body?.getReader();\n\tif (!n) throw Error(\"Response body is not readable\");\n\tlet r = [], i = 0, a = parseInt(e.headers.get(\"content-length\") || \"0\", 10);\n\tfor (;;) {\n\t\tlet { done: e, value: o } = await n.read();\n\t\tif (e) break;\n\t\tr.push(o), i += o.length, t.onChunk && await t.onChunk(o), t.onProgress && a > 0 && t.onProgress(i, a);\n\t}\n\treturn j(r, i);\n}\nfunction j(e, t) {\n\tlet n = new Uint8Array(t), r = 0;\n\tfor (let t of e) n.set(t, r), r += t.byteLength;\n\treturn n;\n}\nasync function se(e, t) {\n\tlet n = await A(e);\n\tif (typeof window > \"u\") await (await import(\"fs\").then((e) => e.promises)).writeFile(t, n);\n\telse {\n\t\tlet e = new Blob([n.buffer], { type: \"application/octet-stream\" }), r = URL.createObjectURL(e), i = document.createElement(\"a\");\n\t\ti.href = r, i.download = t, i.click(), URL.revokeObjectURL(r);\n\t}\n}\nfunction M(e = {}) {\n\treturn async (t, n) => {\n\t\tif (await n(), t.response && t.response.body && typeof t.response.body == \"object\" && \"getReader\" in t.response.body) {\n\t\t\tlet n = t.response.body.getReader(), r = [], i = 0, a = parseInt(t.response.headers?.[\"content-length\"] || \"0\", 10);\n\t\t\ttry {\n\t\t\t\tfor (;;) {\n\t\t\t\t\tlet { done: o, value: s } = await n.read();\n\t\t\t\t\tif (o) break;\n\t\t\t\t\tr.push(s), i += s.length, e.onChunk && await e.onChunk(s), e.onProgress && a > 0 && e.onProgress(i, a), t.state.streamedChunks = t.state.streamedChunks || [], t.state.streamedChunks.push(s);\n\t\t\t\t}\n\t\t\t\tlet o = j(r, i);\n\t\t\t\tt.response.body = o, t.state.streaming = !0, t.state.streamedBytes = i;\n\t\t\t} finally {\n\t\t\t\tn.releaseLock();\n\t\t\t}\n\t\t}\n\t};\n}\nvar ce = M({ onProgress: (e, t) => {\n\tif (t > 0) {\n\t\tlet n = Math.round(e / t * 100);\n\t\tconsole.warn(`Streaming: ${n}% (${e}/${t} bytes)`);\n\t}\n} }), N = class {\n\tplugins = [];\n\tcache = new y();\n\tdeduplicator = new S();\n\tmiddlewares = [];\n\tlisteners = /* @__PURE__ */ new Map();\n\tregister(e) {\n\t\treturn this.plugins.push(e), e.setup(this), this.emit(\"plugin:registered\", e.name), this;\n\t}\n\taddMiddleware(e) {\n\t\treturn this.middlewares.push(e), this;\n\t}\n\tgetCache() {\n\t\treturn this.cache;\n\t}\n\tgetDeduplicator() {\n\t\treturn this.deduplicator;\n\t}\n\tgetPipeline() {\n\t\treturn w(this.middlewares);\n\t}\n\tasync executePipeline(e) {\n\t\tawait this.getPipeline()(e);\n\t}\n\ton(e, t) {\n\t\tthis.listeners.has(e) || this.listeners.set(e, /* @__PURE__ */ new Set());\n\t\tlet n = this.listeners.get(e), r = t;\n\t\treturn n && n.add(r), this;\n\t}\n\temit(e, ...t) {\n\t\tlet n = this.listeners.get(e);\n\t\tif (n) for (let e of n) e(...t);\n\t}\n\toff(e, t) {\n\t\treturn this.listeners.get(e)?.delete(t), this;\n\t}\n\tgetPlugins() {\n\t\treturn [...this.plugins];\n\t}\n\tclear() {\n\t\tthis.plugins = [], this.middlewares = [], this.listeners.clear(), this.cache.clear(), this.deduplicator.clear();\n\t}\n}, le = {\n\tname: \"logger\",\n\tsetup(e) {\n\t\te.on(\"request:start\", (...e) => {\n\t\t\tlet t = e[0];\n\t\t\tconsole.warn(`Request started: ${t}`);\n\t\t}), e.on(\"request:success\", (...e) => {\n\t\t\tlet t = e[0], n = e[1];\n\t\t\tconsole.warn(`Request succeeded: ${t} (${n})`);\n\t\t}), e.on(\"request:error\", (...e) => {\n\t\t\tlet t = e[0], n = e[1];\n\t\t\tconsole.error(`❌ Request failed: ${t}`, n);\n\t\t});\n\t}\n}, ue = class {\n\tname = \"metrics\";\n\tmetrics = {\n\t\trequests: 0,\n\t\terrors: 0,\n\t\ttotalTime: 0,\n\t\tavgTime: 0\n\t};\n\tsetup(e) {\n\t\te.on(\"request:complete\", (...e) => {\n\t\t\tlet t = e[0], n = e[1];\n\t\t\tthis.metrics.requests++, this.metrics.totalTime += t, this.metrics.avgTime = this.metrics.totalTime / this.metrics.requests, n || this.metrics.errors++;\n\t\t});\n\t}\n\tgetMetrics() {\n\t\treturn { ...this.metrics };\n\t}\n}, de = class {\n\tname = \"cache\";\n\tttlMs;\n\tconstructor(e = 6e4) {\n\t\tthis.ttlMs = e;\n\t}\n\tsetup(e) {\n\t\te.addMiddleware(b({ ttlMs: this.ttlMs }));\n\t}\n}, fe = class {\n\tname = \"dedupe\";\n\tsetup(e) {\n\t\te.addMiddleware(C());\n\t}\n}, pe = class {\n\tstore = new y();\n\tget(e) {\n\t\treturn this.store.get(e);\n\t}\n\tset(e, t, n = 6e4) {\n\t\tthis.store.set(e, t, n);\n\t}\n\thas(e) {\n\t\treturn this.store.has(e);\n\t}\n\tclear() {\n\t\tthis.store.clear();\n\t}\n}, P = class {\n\tmaxAttempts;\n\tbaseDelayMs;\n\tconstructor(e = 3, t = 100) {\n\t\tthis.maxAttempts = e, this.baseDelayMs = t;\n\t}\n\tshouldRetry(e, t) {\n\t\tlet n = t.status !== void 0 && t.status >= 500, r = t.code === \"NETWORK_ERROR\";\n\t\treturn e < this.maxAttempts && (n || r || t.code === \"TIMEOUT\");\n\t}\n\tdelayMs(e) {\n\t\tlet t = this.baseDelayMs * 2 ** (e - 1), n = Math.random() * t * .1;\n\t\treturn Math.min(t + n, 3e4);\n\t}\n}, F = class {\n\trunning = 0;\n\tqueue = [];\n\tmaxConcurrent;\n\tconstructor(e) {\n\t\tthis.maxConcurrent = e;\n\t}\n\tasync acquire() {\n\t\tif (this.running < this.maxConcurrent) {\n\t\t\tthis.running++;\n\t\t\treturn;\n\t\t}\n\t\treturn new Promise((e) => {\n\t\t\tthis.queue.push(() => {\n\t\t\t\tthis.running++, e();\n\t\t\t});\n\t\t});\n\t}\n\trelease() {\n\t\tthis.running--;\n\t\tlet e = this.queue.shift();\n\t\te && e();\n\t}\n\tget pending() {\n\t\treturn this.queue.length;\n\t}\n\tget active() {\n\t\treturn this.running;\n\t}\n};\nfunction I(e) {\n\treturn e == null ? {\n\t\tserialized: void 0,\n\t\tcontentType: null\n\t} : typeof e == \"string\" ? {\n\t\tserialized: e,\n\t\tcontentType: \"text/plain\"\n\t} : typeof FormData < \"u\" && e instanceof FormData ? {\n\t\tserialized: e,\n\t\tcontentType: null\n\t} : typeof URLSearchParams < \"u\" && e instanceof URLSearchParams ? {\n\t\tserialized: e,\n\t\tcontentType: \"application/x-www-form-urlencoded\"\n\t} : typeof Blob < \"u\" && e instanceof Blob ? {\n\t\tserialized: e,\n\t\tcontentType: e.type || \"application/octet-stream\"\n\t} : e instanceof ArrayBuffer || ArrayBuffer.isView(e) || typeof ReadableStream < \"u\" && e instanceof ReadableStream ? {\n\t\tserialized: e,\n\t\tcontentType: \"application/octet-stream\"\n\t} : {\n\t\tserialized: JSON.stringify(e),\n\t\tcontentType: \"application/json\"\n\t};\n}\nfunction L(e, t) {\n\treturn t ? e.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g, (e, n) => {\n\t\tlet r = t[n];\n\t\tif (r === void 0) throw Error(`Missing path parameter: :${n}`);\n\t\treturn encodeURIComponent(String(r));\n\t}) : e;\n}\nvar R = class n {\n\trequestInterceptors = [];\n\tresponseInterceptors = [];\n\tcache;\n\tdevTracker;\n\tconfig;\n\trequestQueue;\n\tpendingRequests = /* @__PURE__ */ new Set();\n\tconstructor(e = {}) {\n\t\tthis.config = {\n\t\t\tbaseURL: e.baseURL ?? \"\",\n\t\t\tdefaultHeaders: e.defaultHeaders ?? { \"Content-Type\": \"application/json\" },\n\t\t\tdefaultTimeout: e.defaultTimeout ?? 3e4,\n\t\t\tvalidateStatus: e.validateStatus ?? ((e) => e >= 200 && e < 300),\n\t\t\tcacheStrategy: e.cacheStrategy ?? new pe(),\n\t\t\tmaxConcurrent: e.maxConcurrent ?? 0,\n\t\t\tdefaultResponseType: e.defaultResponseType ?? \"auto\",\n\t\t\tdefaultHooks: e.defaultHooks ?? {},\n\t\t\tadapter: e.adapter\n\t\t}, this.cache = this.config.cacheStrategy, this.requestQueue = this.config.maxConcurrent > 0 ? new F(this.config.maxConcurrent) : null, this.devTracker = e.devTracker ?? null;\n\t}\n\tasync request(n) {\n\t\tif (!this.requestInterceptors.length && !this.responseInterceptors.length && !n.cache?.enabled && !n.hooks && !Object.keys(this.config.defaultHooks).length && !n.retry && !n.validate && !n.transform && !this.requestQueue && !n.onDownloadProgress && !n.signal) return this.fastPath(n);\n\t\tlet r = n.hooks ? {\n\t\t\t...this.config.defaultHooks,\n\t\t\t...n.hooks\n\t\t} : this.config.defaultHooks, i = this.getMaxAttempts(n.retry), a = this.getRetryStrategy(n.retry), o = this.buildRequest(n);\n\t\tr.onStart?.(o), this.requestQueue && await this.requestQueue.acquire();\n\t\ttry {\n\t\t\tfor (let s = 1; s <= i; s++) {\n\t\t\t\tlet c;\n\t\t\t\ttry {\n\t\t\t\t\tif ((n.method === \"GET\" || !n.method) && n.cache?.enabled) {\n\t\t\t\t\t\tlet t = this.getCacheKey(n), i = this.cache.get(t);\n\t\t\t\t\t\tif (i) {\n\t\t\t\t\t\t\tlet t = i;\n\t\t\t\t\t\t\treturn this.trackDev({\n\t\t\t\t\t\t\t\tmethod: n.method ?? \"GET\",\n\t\t\t\t\t\t\t\turl: o.url,\n\t\t\t\t\t\t\t\tstatus: t.status,\n\t\t\t\t\t\t\t\tduration: t.duration,\n\t\t\t\t\t\t\t\tcached: !0,\n\t\t\t\t\t\t\t\tok: !0,\n\t\t\t\t\t\t\t\theaders: { ...o.headers },\n\t\t\t\t\t\t\t\tbody: n.body,\n\t\t\t\t\t\t\t\tretryCount: 0\n\t\t\t\t\t\t\t}), r.onSuccess?.(t), r.onFinally?.(), e(t);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tlet t = o;\n\t\t\t\t\tfor (let e of this.requestInterceptors) t = await e.onRequest(t);\n\t\t\t\t\tc = new AbortController(), this.pendingRequests.add(c), n.signal && n.signal.addEventListener(\"abort\", () => c.abort(), { once: !0 });\n\t\t\t\t\tlet i = performance.now(), a = await this.fetchWithTimeout(t, this.resolveTimeoutMs(n.timeout ?? this.config.defaultTimeout), c), l = performance.now() - i, u = a;\n\t\t\t\t\tn.onDownloadProgress && a.body && (u = this.trackDownloadProgress(a, n.onDownloadProgress));\n\t\t\t\t\tlet d = n.responseType ?? this.config.defaultResponseType, f = await this.parseResponse(u, t, l, d);\n\t\t\t\t\tif (!this.config.validateStatus(f.status)) throw {\n\t\t\t\t\t\tmessage: `Request failed with status ${f.status}`,\n\t\t\t\t\t\tstatus: f.status,\n\t\t\t\t\t\tstatusText: f.statusText,\n\t\t\t\t\t\tcode: \"HTTP_ERROR\"\n\t\t\t\t\t};\n\t\t\t\t\tif (n.validate) {\n\t\t\t\t\t\tlet e = n.validate.validate(f.data);\n\t\t\t\t\t\tif (!e.ok) return e;\n\t\t\t\t\t}\n\t\t\t\t\tn.transform && (f.data = n.transform.transform(f.data));\n\t\t\t\t\tlet p = f;\n\t\t\t\t\tfor (let e of this.responseInterceptors) p = await e.onResponse(p);\n\t\t\t\t\tif ((n.method === \"GET\" || !n.method) && n.cache?.enabled) {\n\t\t\t\t\t\tlet e = this.getCacheKey(n);\n\t\t\t\t\t\tthis.cache.set(e, p, n.cache.ttlMs);\n\t\t\t\t\t}\n\t\t\t\t\treturn r.onSuccess?.(p), this.pendingRequests.delete(c), this.trackDev({\n\t\t\t\t\t\tmethod: n.method ?? \"GET\",\n\t\t\t\t\t\turl: o.url,\n\t\t\t\t\t\tstatus: p.status,\n\t\t\t\t\t\tduration: p.duration,\n\t\t\t\t\t\tcached: !1,\n\t\t\t\t\t\tok: !0,\n\t\t\t\t\t\theaders: { ...o.headers },\n\t\t\t\t\t\tbody: n.body,\n\t\t\t\t\t\tretryCount: s - 1\n\t\t\t\t\t}), e(p);\n\t\t\t\t} catch (e) {\n\t\t\t\t\tlet l;\n\t\t\t\t\tif (l = e instanceof DOMException ? e.name === \"TimeoutError\" ? {\n\t\t\t\t\t\tmessage: \"Request timed out\",\n\t\t\t\t\t\tcode: \"TIMEOUT\"\n\t\t\t\t\t} : e.name === \"AbortError\" ? {\n\t\t\t\t\t\tmessage: \"Request aborted\",\n\t\t\t\t\t\tcode: \"ABORTED\"\n\t\t\t\t\t} : {\n\t\t\t\t\t\tmessage: e.message,\n\t\t\t\t\t\tcode: \"UNKNOWN_ERROR\",\n\t\t\t\t\t\toriginalError: e\n\t\t\t\t\t} : this.isHttpErrorDetails(e) ? e : this.normalizeError(e), s < i && a.shouldRetry(s, l)) {\n\t\t\t\t\t\tr.onRetry?.(s, l);\n\t\t\t\t\t\tlet e = a.delayMs(s);\n\t\t\t\t\t\tawait this.delay(e);\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tlet u = l;\n\t\t\t\t\tfor (let e of this.responseInterceptors) e.onError && (u = await e.onError(u));\n\t\t\t\t\treturn r.onError?.(u), c && this.pendingRequests.delete(c), this.trackDev({\n\t\t\t\t\t\tmethod: n.method ?? \"GET\",\n\t\t\t\t\t\turl: o.url,\n\t\t\t\t\t\tstatus: u.status,\n\t\t\t\t\t\tduration: 0,\n\t\t\t\t\t\tcached: !1,\n\t\t\t\t\t\tok: !1,\n\t\t\t\t\t\tcode: u.code,\n\t\t\t\t\t\theaders: { ...o.headers },\n\t\t\t\t\t\tbody: n.body,\n\t\t\t\t\t\tretryCount: s - 1\n\t\t\t\t\t}), t(u);\n\t\t\t\t}\n\t\t\t}\n\t\t\tlet s = {\n\t\t\t\tmessage: \"Max retries exceeded\",\n\t\t\t\tcode: \"MAX_RETRIES\"\n\t\t\t};\n\t\t\treturn r.onError?.(s), this.trackDev({\n\t\t\t\tmethod: n.method ?? \"GET\",\n\t\t\t\turl: o.url,\n\t\t\t\tduration: 0,\n\t\t\t\tcached: !1,\n\t\t\t\tok: !1,\n\t\t\t\tcode: \"MAX_RETRIES\",\n\t\t\t\theaders: { ...o.headers },\n\t\t\t\tbody: n.body,\n\t\t\t\tretryCount: i\n\t\t\t}), t(s);\n\t\t} finally {\n\t\t\tr.onFinally?.(), this.requestQueue && this.requestQueue.release();\n\t\t}\n\t}\n\tasync fastPath(n) {\n\t\tlet r = L(n.url, n.params), i = this.buildUrl(r, n.query), { serialized: a, contentType: o } = I(n.body), s = {\n\t\t\t...this.config.defaultHeaders,\n\t\t\t...n.headers\n\t\t};\n\t\to ? s[\"Content-Type\"] = o : a instanceof FormData && delete s[\"Content-Type\"];\n\t\tlet c = new AbortController(), l = this.resolveTimeoutMs(n.timeout ?? this.config.defaultTimeout);\n\t\tthis.pendingRequests.add(c);\n\t\ttry {\n\t\t\tlet r = performance.now(), a = await this.fetchWithTimeout({\n\t\t\t\turl: i,\n\t\t\t\tmethod: n.method ?? \"GET\",\n\t\t\t\theaders: s,\n\t\t\t\tbody: n.body,\n\t\t\t\tparams: n.params\n\t\t\t}, l, c), o = performance.now() - r, u = await this.parseBody(a, n.responseType ?? this.config.defaultResponseType);\n\t\t\tif (!this.config.validateStatus(a.status)) {\n\t\t\t\tlet e = t({\n\t\t\t\t\tmessage: `Request failed with status ${a.status}`,\n\t\t\t\t\tstatus: a.status,\n\t\t\t\t\tstatusText: a.statusText,\n\t\t\t\t\tcode: \"HTTP_ERROR\"\n\t\t\t\t});\n\t\t\t\treturn this.trackDev({\n\t\t\t\t\tmethod: n.method ?? \"GET\",\n\t\t\t\t\turl: i,\n\t\t\t\t\tstatus: a.status,\n\t\t\t\t\tduration: o,\n\t\t\t\t\tcached: !1,\n\t\t\t\t\tok: !1,\n\t\t\t\t\tcode: \"HTTP_ERROR\",\n\t\t\t\t\theaders: s,\n\t\t\t\t\tbody: n.body,\n\t\t\t\t\tretryCount: 0\n\t\t\t\t}), this.pendingRequests.delete(c), e;\n\t\t\t}\n\t\t\treturn this.pendingRequests.delete(c), this.trackDev({\n\t\t\t\tmethod: n.method ?? \"GET\",\n\t\t\t\turl: i,\n\t\t\t\tstatus: a.status,\n\t\t\t\tduration: o,\n\t\t\t\tcached: !1,\n\t\t\t\tok: !0,\n\t\t\t\theaders: s,\n\t\t\t\tbody: n.body,\n\t\t\t\tretryCount: 0\n\t\t\t}), e({\n\t\t\t\tstatus: a.status,\n\t\t\t\tstatusText: a.statusText,\n\t\t\t\theaders: a.headers,\n\t\t\t\tdata: u,\n\t\t\t\trequest: {\n\t\t\t\t\turl: i,\n\t\t\t\t\tmethod: n.method ?? \"GET\",\n\t\t\t\t\theaders: s,\n\t\t\t\t\tbody: n.body,\n\t\t\t\t\tparams: n.params\n\t\t\t\t},\n\t\t\t\tduration: o\n\t\t\t});\n\t\t} catch (e) {\n\t\t\tthis.pendingRequests.delete(c);\n\t\t\tlet r = \"UNKNOWN_ERROR\";\n\t\t\tif (e instanceof DOMException ? e.name === \"TimeoutError\" ? r = \"TIMEOUT\" : e.name === \"AbortError\" && (r = \"ABORTED\") : e instanceof Error && (e.name === \"TimeoutError\" ? r = \"TIMEOUT\" : e.name === \"AbortError\" || e.message.includes(\"abort\") ? r = \"ABORTED\" : e.name === \"TypeError\" && (r = \"NETWORK_ERROR\")), this.trackDev({\n\t\t\t\tmethod: n.method ?? \"GET\",\n\t\t\t\turl: i,\n\t\t\t\tduration: performance.now() - (performance.now() - 0),\n\t\t\t\tcached: !1,\n\t\t\t\tok: !1,\n\t\t\t\tcode: r,\n\t\t\t\theaders: s,\n\t\t\t\tbody: n.body,\n\t\t\t\tretryCount: 0\n\t\t\t}), e instanceof DOMException) {\n\t\t\t\tif (e.name === \"TimeoutError\") return t({\n\t\t\t\t\tmessage: \"Request timed out\",\n\t\t\t\t\tcode: \"TIMEOUT\"\n\t\t\t\t});\n\t\t\t\tif (e.name === \"AbortError\") return t({\n\t\t\t\t\tmessage: \"Request aborted\",\n\t\t\t\t\tcode: \"ABORTED\"\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn e instanceof Error ? e.name === \"TimeoutError\" ? t({\n\t\t\t\tmessage: \"Request timed out\",\n\t\t\t\tcode: \"TIMEOUT\"\n\t\t\t}) : e.name === \"AbortError\" || e.message.includes(\"abort\") ? t({\n\t\t\t\tmessage: \"Request aborted\",\n\t\t\t\tcode: \"ABORTED\"\n\t\t\t}) : t({\n\t\t\t\tmessage: e.message,\n\t\t\t\tcode: e.name === \"TypeError\" ? \"NETWORK_ERROR\" : \"UNKNOWN_ERROR\"\n\t\t\t}) : t({\n\t\t\t\tmessage: String(e),\n\t\t\t\tcode: \"UNKNOWN_ERROR\"\n\t\t\t});\n\t\t}\n\t}\n\tget(e, t) {\n\t\treturn this.request({\n\t\t\t...t,\n\t\t\turl: e,\n\t\t\tmethod: \"GET\"\n\t\t});\n\t}\n\tpost(e, t, n) {\n\t\treturn this.request({\n\t\t\t...n,\n\t\t\turl: e,\n\t\t\tmethod: \"POST\",\n\t\t\tbody: t\n\t\t});\n\t}\n\tput(e, t, n) {\n\t\treturn this.request({\n\t\t\t...n,\n\t\t\turl: e,\n\t\t\tmethod: \"PUT\",\n\t\t\tbody: t\n\t\t});\n\t}\n\tpatch(e, t, n) {\n\t\treturn this.request({\n\t\t\t...n,\n\t\t\turl: e,\n\t\t\tmethod: \"PATCH\",\n\t\t\tbody: t\n\t\t});\n\t}\n\tdelete(e, t) {\n\t\treturn this.request({\n\t\t\t...t,\n\t\t\turl: e,\n\t\t\tmethod: \"DELETE\"\n\t\t});\n\t}\n\thead(e, t) {\n\t\treturn this.request({\n\t\t\t...t,\n\t\t\turl: e,\n\t\t\tmethod: \"HEAD\"\n\t\t});\n\t}\n\toptions(e, t) {\n\t\treturn this.request({\n\t\t\t...t,\n\t\t\turl: e,\n\t\t\tmethod: \"OPTIONS\"\n\t\t});\n\t}\n\taddRequestInterceptor(e) {\n\t\treturn this.requestInterceptors.push(e), () => {\n\t\t\tlet t = this.requestInterceptors.indexOf(e);\n\t\t\tt !== -1 && this.requestInterceptors.splice(t, 1);\n\t\t};\n\t}\n\taddResponseInterceptor(e) {\n\t\treturn this.responseInterceptors.push(e), () => {\n\t\t\tlet t = this.responseInterceptors.indexOf(e);\n\t\t\tt !== -1 && this.responseInterceptors.splice(t, 1);\n\t\t};\n\t}\n\tclearInterceptors() {\n\t\tthis.requestInterceptors = [], this.responseInterceptors = [];\n\t}\n\tclearCache() {\n\t\tthis.cache.clear();\n\t}\n\tcancelAll() {\n\t\tfor (let e of this.pendingRequests) e.abort();\n\t\tthis.pendingRequests.clear();\n\t}\n\tget activeRequests() {\n\t\treturn this.pendingRequests.size;\n\t}\n\tget queueStats() {\n\t\treturn {\n\t\t\tactive: this.requestQueue?.active ?? this.pendingRequests.size,\n\t\t\tpending: this.requestQueue?.pending ?? 0\n\t\t};\n\t}\n\textend(e = {}) {\n\t\tlet t = new n({\n\t\t\tbaseURL: e.baseURL ?? this.config.baseURL,\n\t\t\tdefaultHeaders: {\n\t\t\t\t...this.config.defaultHeaders,\n\t\t\t\t...e.defaultHeaders\n\t\t\t},\n\t\t\tdefaultTimeout: e.defaultTimeout ?? this.config.defaultTimeout,\n\t\t\tvalidateStatus: e.validateStatus ?? this.config.validateStatus,\n\t\t\tcacheStrategy: e.cacheStrategy ?? this.cache,\n\t\t\tmaxConcurrent: e.maxConcurrent ?? this.config.maxConcurrent,\n\t\t\tdefaultResponseType: e.defaultResponseType ?? this.config.defaultResponseType,\n\t\t\tdefaultHooks: {\n\t\t\t\t...this.config.defaultHooks,\n\t\t\t\t...e.defaultHooks\n\t\t\t},\n\t\t\tadapter: e.adapter\n\t\t});\n\t\tfor (let e of this.requestInterceptors) t.addRequestInterceptor(e);\n\t\tfor (let e of this.responseInterceptors) t.addResponseInterceptor(e);\n\t\treturn t;\n\t}\n\tasync *paginate(e, t, n = {}) {\n\t\tlet r = { ...n };\n\t\tfor (;;) {\n\t\t\tlet n = await this.get(e, r);\n\t\t\tif (!n.ok) break;\n\t\t\tyield t.getItems(n.value.data);\n\t\t\tlet i = t.getNextPage(n.value.data, r);\n\t\t\tif (!i) break;\n\t\t\tr = i;\n\t\t}\n\t}\n\tasync poll(e, n, r = {}) {\n\t\tlet i = n.maxAttempts ?? 0;\n\t\tfor (let t = 1; i === 0 || t <= i; t++) {\n\t\t\tlet a = await this.get(e, r);\n\t\t\tif (!a.ok || (n.onPoll?.(a.value.data, t), n.until(a.value.data))) return a;\n\t\t\tif (i > 0 && t >= i) break;\n\t\t\tawait this.delay(n.intervalMs);\n\t\t}\n\t\treturn t({\n\t\t\tmessage: `Polling exhausted after ${i} attempts`,\n\t\t\tcode: \"POLL_EXHAUSTED\"\n\t\t});\n\t}\n\tbuildRequest(e) {\n\t\tlet t = L(e.url, e.params);\n\t\treturn {\n\t\t\turl: this.buildUrl(t, e.query),\n\t\t\tmethod: e.method ?? \"GET\",\n\t\t\theaders: {\n\t\t\t\t...this.config.defaultHeaders,\n\t\t\t\t...e.headers\n\t\t\t},\n\t\t\tbody: e.body,\n\t\t\tparams: e.params\n\t\t};\n\t}\n\tbuildUrl(e, t) {\n\t\tlet n = this.config.baseURL + e;\n\t\tif (t) {\n\t\t\tlet e = Object.keys(t);\n\t\t\tif (e.length > 0) {\n\t\t\t\tlet r = new URLSearchParams();\n\t\t\t\tfor (let n = 0; n < e.length; n++) r.append(e[n], String(t[e[n]]));\n\t\t\t\tn += `?${r.toString()}`;\n\t\t\t}\n\t\t}\n\t\treturn n;\n\t}\n\tgetCacheKey(e) {\n\t\tlet t = L(e.url, e.params), n = e.query ? JSON.stringify(e.query) : \"\";\n\t\treturn `${e.method ?? \"GET\"}:${t}${n ? \":\" + n : \"\"}`;\n\t}\n\tfetchWithTimeout(e, t, n) {\n\t\tlet { serialized: r, contentType: i } = I(e.body), a = { ...e.headers };\n\t\treturn i ? a[\"Content-Type\"] = i : r instanceof FormData && delete a[\"Content-Type\"], new Promise((i, o) => {\n\t\t\tlet s = setTimeout(() => {\n\t\t\t\tn.abort(), o(new DOMException(\"Request timed out\", \"TimeoutError\"));\n\t\t\t}, t);\n\t\t\t(this.config.adapter ?? fetch)(e.url, {\n\t\t\t\tmethod: e.method,\n\t\t\t\theaders: a,\n\t\t\t\tbody: r,\n\t\t\t\tsignal: n.signal\n\t\t\t}).then((e) => {\n\t\t\t\tclearTimeout(s), i(e);\n\t\t\t}, (e) => {\n\t\t\t\tclearTimeout(s), o(e);\n\t\t\t});\n\t\t});\n\t}\n\ttrackDownloadProgress(e, t) {\n\t\tlet n = parseInt(e.headers.get(\"content-length\") || \"0\", 10), r = e.body?.getReader();\n\t\tif (!r) return e;\n\t\tlet i = 0, a = new ReadableStream({ async pull(e) {\n\t\t\tlet { done: a, value: o } = await r.read();\n\t\t\tif (a) {\n\t\t\t\te.close();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\ti += o.byteLength, t({\n\t\t\t\tloaded: i,\n\t\t\t\ttotal: n,\n\t\t\t\tpercent: n > 0 ? Math.round(i / n * 100) : 0\n\t\t\t}), e.enqueue(o);\n\t\t} });\n\t\treturn new Response(a, {\n\t\t\theaders: e.headers,\n\t\t\tstatus: e.status,\n\t\t\tstatusText: e.statusText\n\t\t});\n\t}\n\tasync parseResponse(e, t, n, r) {\n\t\tlet i = await this.parseBody(e, r);\n\t\treturn {\n\t\t\tstatus: e.status,\n\t\t\tstatusText: e.statusText,\n\t\t\theaders: e.headers,\n\t\t\tdata: i,\n\t\t\trequest: t,\n\t\t\tduration: n\n\t\t};\n\t}\n\tasync parseBody(e, t) {\n\t\tswitch (t) {\n\t\t\tcase \"json\": return await e.json();\n\t\t\tcase \"text\": return await e.text();\n\t\t\tcase \"blob\": return await e.blob();\n\t\t\tcase \"arrayBuffer\": return await e.arrayBuffer();\n\t\t\tcase \"formData\": return await e.formData();\n\t\t\tcase \"stream\": return e.body;\n\t\t\tdefault: {\n\t\t\t\tlet t = e.headers.get(\"content-type\") ?? \"\";\n\t\t\t\tif (t.includes(\"application/json\")) return await e.json();\n\t\t\t\tif (t.includes(\"text/\")) return await e.text();\n\t\t\t\tif (t.includes(\"multipart/form-data\")) return await e.formData();\n\t\t\t\tif (t.includes(\"application/octet-stream\") || t.includes(\"image/\") || t.includes(\"audio/\") || t.includes(\"video/\")) return await e.blob();\n\t\t\t\ttry {\n\t\t\t\t\treturn await e.json();\n\t\t\t\t} catch {\n\t\t\t\t\treturn await e.text();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tnormalizeError(e) {\n\t\tif (e instanceof DOMException) {\n\t\t\tif (e.name === \"TimeoutError\") return {\n\t\t\t\tmessage: \"Request timed out\",\n\t\t\t\tcode: \"TIMEOUT\"\n\t\t\t};\n\t\t\tif (e.name === \"AbortError\") return {\n\t\t\t\tmessage: \"Request aborted\",\n\t\t\t\tcode: \"ABORTED\"\n\t\t\t};\n\t\t}\n\t\treturn e instanceof Error ? e.name === \"TimeoutError\" ? {\n\t\t\tmessage: \"Request timed out\",\n\t\t\tcode: \"TIMEOUT\"\n\t\t} : e.name === \"AbortError\" || e.message.includes(\"abort\") ? {\n\t\t\tmessage: \"Request aborted\",\n\t\t\tcode: \"ABORTED\"\n\t\t} : {\n\t\t\tmessage: e.message,\n\t\t\tcode: e.name === \"TypeError\" ? \"NETWORK_ERROR\" : \"UNKNOWN_ERROR\",\n\t\t\toriginalError: e\n\t\t} : {\n\t\t\tmessage: String(e),\n\t\t\tcode: \"UNKNOWN_ERROR\",\n\t\t\toriginalError: e\n\t\t};\n\t}\n\tisHttpErrorDetails(e) {\n\t\treturn typeof e == \"object\" && !!e && \"message\" in e && \"code\" in e;\n\t}\n\tgetMaxAttempts(e) {\n\t\treturn e ? \"maxAttempts\" in e ? e.maxAttempts ?? 1 : 100 : 1;\n\t}\n\tgetRetryStrategy(e) {\n\t\treturn e ? \"shouldRetry\" in e ? e : new P(e.maxAttempts, e.backoffMs) : {\n\t\t\tshouldRetry: () => !1,\n\t\t\tdelayMs: () => 0\n\t\t};\n\t}\n\tresolveTimeoutMs(e) {\n\t\treturn typeof e == \"number\" ? e : e.total ?? e.response ?? e.connection ?? 3e4;\n\t}\n\tdelay(e) {\n\t\treturn new Promise((t) => setTimeout(t, e));\n\t}\n\ttrackDev(e) {\n\t\tthis.devTracker && this.devTracker.track(e);\n\t}\n}, z = class extends Error {\n\tstatus;\n\tcode;\n\tresponse;\n\tconstructor(e, t, n, r) {\n\t\tsuper(e), this.name = \"HttpError\", this.status = t, this.code = n, this.response = r;\n\t}\n};\nfunction B(e) {\n\treturn e instanceof z;\n}\nfunction me(e) {\n\treturn new R(e);\n}\n//#endregion\n//#region src/realtime/websocket-client.ts\nfunction V() {\n\treturn typeof window > \"u\" && typeof process < \"u\" && process.versions?.node !== void 0;\n}\nvar he = class {\n\turl;\n\toptions;\n\tpluginManager;\n\tstatus = \"closed\";\n\treconnectAttempt = 0;\n\treconnectTimer = null;\n\theartbeatTimer = null;\n\tstats = {\n\t\tmessagesSent: 0,\n\t\tmessagesReceived: 0,\n\t\tconnectionTime: 0,\n\t\treconnectAttempts: 0\n\t};\n\tconnectionStartTime = 0;\n\tlisteners = {\n\t\topen: /* @__PURE__ */ new Set(),\n\t\tclose: /* @__PURE__ */ new Set(),\n\t\terror: /* @__PURE__ */ new Set(),\n\t\tmessage: /* @__PURE__ */ new Set()\n\t};\n\tconstructor(e, t = {}) {\n\t\tthis.url = e, this.options = t, this.pluginManager = new N();\n\t}\n\tupdateStatus(e) {\n\t\tthis.status = e, e === \"open\" ? this.connectionStartTime = Date.now() : e === \"closed\" && this.connectionStartTime > 0 && (this.stats.connectionTime += Date.now() - this.connectionStartTime, this.connectionStartTime = 0);\n\t}\n\temitOpen(e) {\n\t\tthis.pluginManager.emit(\"websocket:open\", this.url, e);\n\t\tfor (let t of this.listeners.open) t(e);\n\t}\n\temitClose(e) {\n\t\tthis.pluginManager.emit(\"websocket:close\", this.url, e);\n\t\tfor (let t of this.listeners.close) t(e);\n\t}\n\temitError(e) {\n\t\tlet t;\n\t\te instanceof Error ? (t = new Event(\"error\"), t.error = e) : t = e, this.pluginManager.emit(\"websocket:error\", this.url, t);\n\t\tfor (let e of this.listeners.error) e(t);\n\t}\n\temitMessage(e) {\n\t\tthis.pluginManager.emit(\"websocket:message\", this.url, e);\n\t\tfor (let t of this.listeners.message) t(e);\n\t}\n\tonOpen(e) {\n\t\treturn this.listeners.open.add(e), () => this.listeners.open.delete(e);\n\t}\n\tonClose(e) {\n\t\treturn this.listeners.close.add(e), () => this.listeners.close.delete(e);\n\t}\n\tonError(e) {\n\t\treturn this.listeners.error.add(e), () => this.listeners.error.delete(e);\n\t}\n\tonMessage(e) {\n\t\treturn this.listeners.message.add(e), () => this.listeners.message.delete(e);\n\t}\n\tgetStatus() {\n\t\treturn this.status;\n\t}\n\tgetStats() {\n\t\treturn {\n\t\t\t...this.stats,\n\t\t\tconnectionTime: this.stats.connectionTime + (this.connectionStartTime > 0 ? Date.now() - this.connectionStartTime : 0)\n\t\t};\n\t}\n\tscheduleReconnect() {\n\t\tif (this.options.reconnect?.enabled === !1) return;\n\t\tlet e = this.options.reconnect?.maxAttempts ?? Infinity;\n\t\tif (this.reconnectAttempt >= e) {\n\t\t\tthis.pluginManager.emit(\"websocket:reconnect:failed\", this.url, this.reconnectAttempt);\n\t\t\treturn;\n\t\t}\n\t\tlet t = this.options.reconnect?.baseDelay ?? 1e3, n = this.options.reconnect?.maxDelay ?? 3e4, r = Math.min(n, t * 2 ** this.reconnectAttempt);\n\t\tthis.reconnectAttempt++, this.stats.reconnectAttempts = this.reconnectAttempt, this.options.reconnect?.onReconnecting?.(this.reconnectAttempt, r), this.pluginManager.emit(\"websocket:reconnecting\", this.url, this.reconnectAttempt, r), this.reconnectTimer = setTimeout(() => {\n\t\t\tthis.connect().catch((e) => {\n\t\t\t\tthis.emitError(e instanceof Error ? e : Error(String(e)));\n\t\t\t});\n\t\t}, r);\n\t}\n\tstartHeartbeat() {\n\t\tif (!this.options.heartbeat) return;\n\t\tlet e = this.options.heartbeat.interval ?? 3e4, t = this.options.heartbeat.pingMessage ?? \"ping\", n = this.options.heartbeat.pongMessage ?? \"pong\", r = !0, i = () => {\n\t\t\tif (!r) {\n\t\t\t\tthis.pluginManager.emit(\"websocket:heartbeat:timeout\", this.url), this.disconnect();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tr = !1, this.send(t), this.heartbeatTimer = setTimeout(i, e);\n\t\t};\n\t\tthis.onMessage((e) => {\n\t\t\tlet t = e.raw;\n\t\t\ttypeof t == \"string\" && t === n && (r = !0);\n\t\t}), this.heartbeatTimer = setTimeout(i, e);\n\t}\n\tstopHeartbeat() {\n\t\tthis.heartbeatTimer &&= (clearTimeout(this.heartbeatTimer), null);\n\t}\n\tcleanup() {\n\t\tthis.reconnectTimer &&= (clearTimeout(this.reconnectTimer), null), this.stopHeartbeat();\n\t}\n}, H = class extends he {\n\tsocket = null;\n\tmessageTypeListeners = /* @__PURE__ */ new Map();\n\tconstructor(e, t = {}) {\n\t\tsuper(e, t);\n\t}\n\tasync connect() {\n\t\tif (!(this.status === \"connecting\" || this.status === \"open\")) return this.updateStatus(\"connecting\"), this.pluginManager.emit(\"websocket:connect:start\", this.url), new Promise((e, t) => {\n\t\t\tlet n = this.options.timeout ?? 1e4, r = setTimeout(() => {\n\t\t\t\tthis.updateStatus(\"closed\"), this.socket?.close(), this.socket = null;\n\t\t\t\tlet e = /* @__PURE__ */ Error(`WebSocket connection timeout after ${n}ms`);\n\t\t\t\tthis.emitError(e), t(e);\n\t\t\t}, n);\n\t\t\ttry {\n\t\t\t\tthis.socket = new WebSocket(this.url, this.options.protocols), this.socket.onopen = (t) => {\n\t\t\t\t\tclearTimeout(r), this.updateStatus(\"open\"), this.reconnectAttempt = 0, this.emitOpen(t), this.options.onOpen?.(t), this.startHeartbeat(), this.pluginManager.emit(\"websocket:connect:success\", this.url), e();\n\t\t\t\t}, this.socket.onclose = (e) => {\n\t\t\t\t\tclearTimeout(r), this.updateStatus(\"closed\"), this.emitClose(e), this.options.onClose?.(e), this.stopHeartbeat(), this.pluginManager.emit(\"websocket:disconnected\", this.url, e.code, e.reason), e.code !== 1e3 && !e.wasClean && this.scheduleReconnect();\n\t\t\t\t}, this.socket.onerror = (e) => {\n\t\t\t\t\tclearTimeout(r), this.updateStatus(\"closed\"), this.emitError(e), this.options.onError?.(e), this.pluginManager.emit(\"websocket:connect:error\", this.url, e), t(e);\n\t\t\t\t}, this.socket.onmessage = (e) => {\n\t\t\t\t\tthis.stats.messagesReceived++;\n\t\t\t\t\tlet t = {\n\t\t\t\t\t\tdata: this.tryParseData(e.data),\n\t\t\t\t\t\traw: e.data,\n\t\t\t\t\t\ttype: \"message\",\n\t\t\t\t\t\ttimestamp: Date.now()\n\t\t\t\t\t};\n\t\t\t\t\tthis.emitMessage(t), this.pluginManager.emit(\"websocket:message:received\", this.url, t);\n\t\t\t\t};\n\t\t\t} catch (e) {\n\t\t\t\tclearTimeout(r), this.updateStatus(\"closed\"), this.pluginManager.emit(\"websocket:connect:error\", this.url, e), t(e);\n\t\t\t}\n\t\t});\n\t}\n\tdisconnect() {\n\t\tthis.cleanup(), this.socket && (this.updateStatus(\"closing\"), this.socket.close(1e3, \"Client disconnected\"), this.socket = null, this.updateStatus(\"closed\"));\n\t}\n\tsend(e) {\n\t\tif (!this.socket || this.socket.readyState !== WebSocket.OPEN) throw Error(\"WebSocket is not connected\");\n\t\tthis.socket.send(e), this.stats.messagesSent++, this.pluginManager.emit(\"websocket:message:sent\", this.url, e);\n\t}\n\tsendJson(e) {\n\t\tthis.send(JSON.stringify(e));\n\t}\n\tonMessageType(e, t) {\n\t\treturn this.messageTypeListeners.has(e) || this.messageTypeListeners.set(e, /* @__PURE__ */ new Set()), this.messageTypeListeners.get(e).add(t), () => {\n\t\t\tlet n = this.messageTypeListeners.get(e);\n\t\t\tn && (n.delete(t), n.size === 0 && this.messageTypeListeners.delete(e));\n\t\t};\n\t}\n\ttryParseData(e) {\n\t\tif (typeof e == \"string\") try {\n\t\t\treturn JSON.parse(e);\n\t\t} catch {\n\t\t\treturn e;\n\t\t}\n\t\treturn e;\n\t}\n}, ge = class extends H {\n\tasync connect() {\n\t\tif (V()) try {\n\t\t\tlet { default: e } = await import(\"ws\");\n\t\t\treturn super.connect();\n\t\t} catch {\n\t\t\tthrow Error(\"WebSocket client for Node.js requires the \\\"ws\\\" package. Please install it: npm install ws\");\n\t\t}\n\t\treturn super.connect();\n\t}\n};\nfunction _e(e, t = {}) {\n\treturn V() ? new ge(e, t) : new H(e, t);\n}\n//#endregion\n//#region src/realtime/sse-client.ts\nfunction U() {\n\treturn typeof window > \"u\" && typeof process < \"u\" && process.versions?.node !== void 0;\n}\nvar W = class {\n\turl;\n\toptions;\n\t_source = null;\n\tpluginManager;\n\tstatus = \"closed\";\n\treconnectAttempt = 0;\n\treconnectTimer = null;\n\tstats = {\n\t\tmessagesSent: 0,\n\t\tmessagesReceived: 0,\n\t\tconnectionTime: 0,\n\t\treconnectAttempts: 0\n\t};\n\tconnectionStartTime = 0;\n\tlisteners = {\n\t\topen: /* @__PURE__ */ new Set(),\n\t\tclose: /* @__PURE__ */ new Set(),\n\t\terror: /* @__PURE__ */ new Set(),\n\t\tmessage: /* @__PURE__ */ new Set(),\n\t\tevent: /* @__PURE__ */ new Map()\n\t};\n\t_lastEventId = null;\n\tconstructor(e, t = {}) {\n\t\tthis.url = e, this.options = t, this.pluginManager = new N();\n\t}\n\tupdateStatus(e) {\n\t\tthis.status = e, e === \"open\" ? this.connectionStartTime = Date.now() : e === \"closed\" && this.connectionStartTime > 0 && (this.stats.connectionTime += Date.now() - this.connectionStartTime, this.connectionStartTime = 0);\n\t}\n\tasync connect() {\n\t\tif (!(this.status === \"connecting\" || this.status === \"open\")) return this.updateStatus(\"connecting\"), this.pluginManager.emit(\"sse:connect:start\", this.url), new Promise((e, t) => {\n\t\t\tlet n = this.options.timeout ?? 1e4, r = setTimeout(() => {\n\t\t\t\tthis.updateStatus(\"closed\"), this._source?.close(), this._source = null;\n\t\t\t\tlet e = /* @__PURE__ */ Error(`SSE connection timeout after ${n}ms`);\n\t\t\t\tthis.emitError(e), t(e);\n\t\t\t}, n);\n\t\t\ttry {\n\t\t\t\tthis._source = new EventSource(this.url), this._source.onopen = (t) => {\n\t\t\t\t\tclearTimeout(r), this.updateStatus(\"open\"), this.reconnectAttempt = 0, this.emitOpen(t), this.options.onOpen?.(t), this.pluginManager.emit(\"sse:connect:success\", this.url), e();\n\t\t\t\t}, this._source.onerror = (e) => {\n\t\t\t\t\tclearTimeout(r), this.updateStatus(\"closed\"), this.emitError(e), this.options.onError?.(e), this.pluginManager.emit(\"sse:connect:error\", this.url, e), this._source?.readyState === EventSource.CLOSED && (this.emitClose(), this.options.onClose?.(), this.scheduleReconnect()), t(e);\n\t\t\t\t}, this._source.onmessage = (e) => {\n\t\t\t\t\tthis.stats.messagesReceived++, this._lastEventId = e.lastEventId || this._lastEventId;\n\t\t\t\t\tlet t = {\n\t\t\t\t\t\tdata: this.tryParseData(e.data),\n\t\t\t\t\t\traw: e.data,\n\t\t\t\t\t\ttype: e.type || \"message\",\n\t\t\t\t\t\ttimestamp: Date.now()\n\t\t\t\t\t};\n\t\t\t\t\tthis.emitMessage(t), this.pluginManager.emit(\"sse:message:received\", this.url, t);\n\t\t\t\t\tlet n = e.type || \"message\", r = this.listeners.event.get(n);\n\t\t\t\t\tif (r) for (let e of r) e(t.data);\n\t\t\t\t}, this._source.addEventListener = this._source.addEventListener.bind(this._source);\n\t\t\t} catch (e) {\n\t\t\t\tclearTimeout(r), this.updateStatus(\"closed\"), this.pluginManager.emit(\"sse:connect:error\", this.url, e), t(e);\n\t\t\t}\n\t\t});\n\t}\n\tdisconnect() {\n\t\tthis.cleanup(), this._source && (this.updateStatus(\"closing\"), this._source.close(), this._source = null, this.updateStatus(\"closed\"), this.emitClose(), this.options.onClose?.());\n\t}\n\tsend(e) {\n\t\tthrow Error(\"SSE is a receive-only protocol. Use HTTP requests to send data to server.\");\n\t}\n\tonMessage(e) {\n\t\treturn this.listeners.message.add(e), () => this.listeners.message.delete(e);\n\t}\n\tonOpen(e) {\n\t\treturn this.listeners.open.add(e), () => this.listeners.open.delete(e);\n\t}\n\tonClose(e) {\n\t\treturn this.listeners.close.add(e), () => this.listeners.close.delete(e);\n\t}\n\tonError(e) {\n\t\treturn this.listeners.error.add(e), () => this.listeners.error.delete(e);\n\t}\n\tonEvent(e, t) {\n\t\treturn this.listeners.event.has(e) || this.listeners.event.set(e, /* @__PURE__ */ new Set()), this.listeners.event.get(e).add(t), this._source && !this._source[`on${e}`] && this._source.addEventListener(e, (n) => {\n\t\t\tt({\n\t\t\t\tdata: this.tryParseData(n.data),\n\t\t\t\traw: n.data,\n\t\t\t\ttype: e,\n\t\t\t\ttimestamp: Date.now()\n\t\t\t}.data);\n\t\t}), () => {\n\t\t\tlet n = this.listeners.event.get(e);\n\t\t\tn && (n.delete(t), n.size === 0 && this.listeners.event.delete(e));\n\t\t};\n\t}\n\tgetStatus() {\n\t\treturn this.status;\n\t}\n\tgetStats() {\n\t\treturn {\n\t\t\t...this.stats,\n\t\t\tconnectionTime: this.stats.connectionTime + (this.connectionStartTime > 0 ? Date.now() - this.connectionStartTime : 0)\n\t\t};\n\t}\n\tget lastEventId() {\n\t\treturn this._lastEventId;\n\t}\n\tget source() {\n\t\treturn this._source;\n\t}\n\temitOpen(e) {\n\t\tthis.pluginManager.emit(\"sse:open\", this.url, e);\n\t\tfor (let t of this.listeners.open) t(e);\n\t}\n\temitClose() {\n\t\tthis.pluginManager.emit(\"sse:close\", this.url);\n\t\tfor (let e of this.listeners.close) e();\n\t}\n\temitError(e) {\n\t\tlet t;\n\t\te instanceof Error ? (t = new Event(\"error\"), t.error = e) : t = e, this.pluginManager.emit(\"sse:error\", this.url, t);\n\t\tfor (let e of this.listeners.error) e(t);\n\t}\n\temitMessage(e) {\n\t\tthis.pluginManager.emit(\"sse:message\", this.url, e);\n\t\tfor (let t of this.listeners.message) t(e);\n\t}\n\tscheduleReconnect() {\n\t\tif (this.options.reconnect?.enabled === !1) return;\n\t\tlet e = this.options.reconnect?.maxAttempts ?? Infinity;\n\t\tif (this.reconnectAttempt >= e) {\n\t\t\tthis.pluginManager.emit(\"sse:reconnect:failed\", this.url, this.reconnectAttempt);\n\t\t\treturn;\n\t\t}\n\t\tlet t = this.options.reconnect?.baseDelay ?? 1e3, n = this.options.reconnect?.maxDelay ?? 3e4, r = Math.min(n, t * 2 ** this.reconnectAttempt);\n\t\tthis.reconnectAttempt++, this.stats.reconnectAttempts = this.reconnectAttempt, this.options.reconnect?.onReconnecting?.(this.reconnectAttempt, r), this.pluginManager.emit(\"sse:reconnecting\", this.url, this.reconnectAttempt, r), this.reconnectTimer = setTimeout(() => {\n\t\t\tthis.connect().catch((e) => {\n\t\t\t\tthis.emitError(e instanceof Error ? e : Error(String(e)));\n\t\t\t});\n\t\t}, r);\n\t}\n\tcleanup() {\n\t\tthis.reconnectTimer &&= (clearTimeout(this.reconnectTimer), null);\n\t}\n\ttryParseData(e) {\n\t\ttry {\n\t\t\treturn JSON.parse(e);\n\t\t} catch {\n\t\t\treturn e;\n\t\t}\n\t}\n}, ve = class extends W {\n\tasync connect() {\n\t\tif (U()) throw Error(\"SSE client for Node.js requires a polyfill or custom implementation. Consider using a library like \\\"eventsource\\\" or implement using fetch with streaming.\");\n\t\treturn super.connect();\n\t}\n};\nfunction ye(e, t = {}) {\n\treturn U() ? new ve(e, t) : new W(e, t);\n}\n//#endregion\n//#region src/realtime/plugin.ts\nvar be = class {\n\tname = \"realtime\";\n\tsetup(e) {\n\t\te.on(\"websocket:connect:start\", (...t) => {\n\t\t\tlet n = t[0];\n\t\t\te.emit(\"realtime:connect:start\", \"websocket\", n);\n\t\t}), e.on(\"websocket:connect:success\", (...t) => {\n\t\t\tlet n = t[0];\n\t\t\te.emit(\"realtime:connect:success\", \"websocket\", n);\n\t\t}), e.on(\"websocket:message:received\", (...t) => {\n\t\t\tlet n = t[0], r = t[1];\n\t\t\te.emit(\"realtime:message\", \"websocket\", n, r);\n\t\t}), e.on(\"sse:connect:start\", (...t) => {\n\t\t\tlet n = t[0];\n\t\t\te.emit(\"realtime:connect:start\", \"sse\", n);\n\t\t}), e.on(\"sse:connect:success\", (...t) => {\n\t\t\tlet n = t[0];\n\t\t\te.emit(\"realtime:connect:success\", \"sse\", n);\n\t\t}), e.on(\"sse:message:received\", (...t) => {\n\t\t\tlet n = t[0], r = t[1];\n\t\t\te.emit(\"realtime:message\", \"sse\", n, r);\n\t\t});\n\t}\n};\nfunction xe() {\n\treturn new be();\n}\n//#endregion\n//#region src/dev-overlay/tracker.ts\nvar G = \"nexa.devOverlay.config\";\nfunction K() {\n\ttry {\n\t\tif (typeof localStorage > \"u\") return {};\n\t\tlet e = localStorage.getItem(G);\n\t\treturn e ? JSON.parse(e) : {};\n\t} catch {\n\t\treturn {};\n\t}\n}\nfunction Se(e) {\n\ttry {\n\t\tif (typeof localStorage > \"u\") return;\n\t\tlocalStorage.setItem(G, JSON.stringify(e));\n\t} catch {}\n}\nvar q = class {\n\thistory = [];\n\tmaxHistory;\n\tlisteners = /* @__PURE__ */ new Set();\n\tstartTime = Date.now();\n\tconfig;\n\tconstructor(e = {}) {\n\t\tthis.maxHistory = e.maxHistory ?? 500, this.config = {\n\t\t\tenabled: e.enabled ?? !0,\n\t\t\tmaxHistory: this.maxHistory,\n\t\t\tkeyboardShortcut: e.keyboardShortcut ?? \"ctrl+shift+n\",\n\t\t\tposition: e.position ?? \"bottom-right\",\n\t\t\ttheme: e.theme ?? \"dark\",\n\t\t\tdevOnly: e.devOnly ?? !0,\n\t\t\tfloatingButtonSize: e.floatingButtonSize ?? 48,\n\t\t\tfloatingButtonOffset: e.floatingButtonOffset ?? 24,\n\t\t\tfloatingButtonTheme: e.floatingButtonTheme ?? \"inherit\",\n\t\t\tbranding: e.branding ?? \"Nexa DevTools\",\n\t\t\ticon: e.icon ?? \"https://raw.githubusercontent.com/Berea-Soft/nexa/refs/heads/main/src/assets/faviconNew.png\"\n\t\t};\n\t}\n\ttrack(e) {\n\t\tlet t = {\n\t\t\t...e,\n\t\t\tid: this.generateId(),\n\t\t\ttimestamp: Date.now()\n\t\t};\n\t\tthis.history.unshift(t), this.history.length > this.maxHistory && this.history.pop();\n\t\tfor (let e of this.listeners) e(t);\n\t\treturn t;\n\t}\n\tgetHistory() {\n\t\treturn this.history;\n\t}\n\tgetMetrics() {\n\t\tlet e = this.history.map((e) => e.duration), t = (Date.now() - this.startTime) / 1e3;\n\t\treturn {\n\t\t\ttotalRequests: this.history.length,\n\t\t\tsuccessfulRequests: this.history.filter((e) => e.ok).length,\n\t\t\tfailedRequests: this.history.filter((e) => !e.ok).length,\n\t\t\tcachedRequests: this.history.filter((e) => e.cached).length,\n\t\t\tavgDuration: e.length ? e.reduce((e, t) => e + t, 0) / e.length : 0,\n\t\t\tmaxDuration: e.length ? Math.max(...e) : 0,\n\t\t\tminDuration: e.length ? Math.min(...e) : 0,\n\t\t\trequestsPerSecond: t > 0 ? this.history.length / t : 0,\n\t\t\tslowestRequests: [...this.history].sort((e, t) => t.duration - e.duration).slice(0, 5)\n\t\t};\n\t}\n\tclear() {\n\t\tthis.history = [], this.startTime = Date.now();\n\t}\n\tonChange(e) {\n\t\treturn this.listeners.add(e), () => this.listeners.delete(e);\n\t}\n\tgetConfig() {\n\t\treturn this.config;\n\t}\n\tupdateConfig(e) {\n\t\tthis.config = {\n\t\t\t...this.config,\n\t\t\t...e\n\t\t}, this.maxHistory = this.config.maxHistory;\n\t\ttry {\n\t\t\tSe(this.config);\n\t\t} catch {}\n\t\treturn this.config;\n\t}\n\tgenerateId() {\n\t\treturn `${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;\n\t}\n}, J = {\n\tgear: \"<svg width=\\\"16\\\" height=\\\"16\\\" viewBox=\\\"0 0 48 48\\\" fill=\\\"currentColor\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<path d=\\\"M 24 4 C 22.423103 4 20.902664 4.1994284 19.451172 4.5371094 A 1.50015 1.50015 0 0 0 18.300781 5.8359375 L 17.982422 8.7382812 C 17.878304 9.6893592 17.328913 10.530853 16.5 11.009766 C 15.672739 11.487724 14.66862 11.540667 13.792969 11.15625 L 13.791016 11.15625 L 11.125 9.9824219 A 1.50015 1.50015 0 0 0 9.4257812 10.330078 C 7.3532865 12.539588 5.7626807 15.215064 4.859375 18.201172 A 1.50015 1.50015 0 0 0 5.4082031 19.845703 L 7.7734375 21.580078 C 8.5457929 22.147918 9 23.042801 9 24 C 9 24.95771 8.5458041 25.853342 7.7734375 26.419922 L 5.4082031 28.152344 A 1.50015 1.50015 0 0 0 4.859375 29.796875 C 5.7625845 32.782665 7.3519262 35.460112 9.4257812 37.669922 A 1.50015 1.50015 0 0 0 11.125 38.015625 L 13.791016 36.841797 C 14.667094 36.456509 15.672169 36.511947 16.5 36.990234 C 17.328913 37.469147 17.878304 38.310641 17.982422 39.261719 L 18.300781 42.164062 A 1.50015 1.50015 0 0 0 19.449219 43.460938 C 20.901371 43.799844 22.423103 44 24 44 C 25.576897 44 27.097336 43.800572 28.548828 43.462891 A 1.50015 1.50015 0 0 0 29.699219 42.164062 L 30.017578 39.261719 C 30.121696 38.310641 30.671087 37.469147 31.5 36.990234 C 32.327261 36.512276 33.33138 36.45738 34.207031 36.841797 L 36.875 38.015625 A 1.50015 1.50015 0 0 0 38.574219 37.669922 C 40.646713 35.460412 42.237319 32.782983 43.140625 29.796875 A 1.50015 1.50015 0 0 0 42.591797 28.152344 L 40.226562 26.419922 C 39.454197 25.853342 39 24.95771 39 24 C 39 23.04229 39.454197 22.146658 40.226562 21.580078 L 42.591797 19.847656 A 1.50015 1.50015 0 0 0 43.140625 18.203125 C 42.237319 15.217017 40.646713 12.539588 38.574219 10.330078 A 1.50015 1.50015 0 0 0 36.875 9.984375 L 34.207031 11.158203 C 33.33138 11.54262 32.327261 11.487724 31.5 11.009766 C 30.671087 10.530853 30.121696 9.6893592 30.017578 8.7382812 L 29.699219 5.8359375 A 1.50015 1.50015 0 0 0 28.550781 4.5390625 C 27.098629 4.2001555 25.576897 4 24 4 z M 24 7 C 24.974302 7 25.90992 7.1748796 26.847656 7.3398438 L 27.035156 9.0644531 C 27.243038 10.963375 28.346913 12.652335 30 13.607422 C 31.654169 14.563134 33.668094 14.673009 35.416016 13.904297 L 37.001953 13.207031 C 38.219788 14.669402 39.183985 16.321182 39.857422 18.130859 L 38.451172 19.162109 C 36.911538 20.291529 36 22.08971 36 24 C 36 25.91029 36.911538 27.708471 38.451172 28.837891 L 39.857422 29.869141 C 39.183985 31.678818 38.219788 33.330598 37.001953 34.792969 L 35.416016 34.095703 C 33.668094 33.326991 31.654169 33.436866 30 34.392578 C 28.346913 35.347665 27.243038 37.036625 27.035156 38.935547 L 26.847656 40.660156 C 25.910002 40.82466 24.973817 41 24 41 C 23.025698 41 22.09008 40.82512 21.152344 40.660156 L 20.964844 38.935547 C 20.756962 37.036625 19.653087 35.347665 18 34.392578 C 16.345831 33.436866 14.331906 33.326991 12.583984 34.095703 L 10.998047 34.792969 C 9.7799772 33.330806 8.8159425 31.678964 8.1425781 29.869141 L 9.5488281 28.837891 C 11.088462 27.708471 12 25.91029 12 24 C 12 22.08971 11.087719 20.290363 9.5488281 19.160156 L 8.1425781 18.128906 C 8.8163325 16.318532 9.7814501 14.667839 11 13.205078 L 12.583984 13.902344 C 14.331906 14.671056 16.345831 14.563134 18 13.607422 C 19.653087 12.652335 20.756962 10.963375 20.964844 9.0644531 L 21.152344 7.3398438 C 22.089998 7.1753403 23.026183 7 24 7 z M 24 16 C 19.599487 16 16 19.59949 16 24 C 16 28.40051 19.599487 32 24 32 C 28.400513 32 32 28.40051 32 24 C 32 19.59949 28.400513 16 24 16 z M 24 19 C 26.779194 19 29 21.220808 29 24 C 29 26.779192 26.779194 29 24 29 C 21.220806 29 19 26.779192 19 24 C 19 21.220808 21.220806 19 24 19 z\\\"></path>\\n</svg>\",\n\tclose: \"<svg width=\\\"16\\\" height=\\\"16\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"><path d=\\\"M18 6L6 18M6 6l12 12\\\"/></svg>\",\n\tchevron: \"<svg width=\\\"12\\\" height=\\\"12\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"><path d=\\\"M9 18l6-6-6-6\\\"/></svg>\",\n\tback: \"<svg width=\\\"14\\\" height=\\\"14\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"><path d=\\\"M19 12H5M12 19l-7-7 7-7\\\"/></svg>\",\n\tretry: \"<svg width=\\\"14\\\" height=\\\"14\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"><path d=\\\"M1 4v6h6M23 20v-6h-6\\\"/><path d=\\\"M20.49 9A9 9 0 005.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 013.51 15\\\"/></svg>\",\n\tclear: \"<svg width=\\\"14\\\" height=\\\"14\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"><path d=\\\"M3 6h18M19 6v14a2 2 0 01-2 2H7a2 2 0 01-2-2V6m3 0V4a2 2 0 012-2h4a2 2 0 012 2v2\\\"/></svg>\",\n\tsearch: \"<svg width=\\\"14\\\" height=\\\"14\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"><circle cx=\\\"11\\\" cy=\\\"11\\\" r=\\\"8\\\"/><path d=\\\"M21 21l-4.35-4.35\\\"/></svg>\",\n\tclock: \"<svg width=\\\"12\\\" height=\\\"12\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\"><circle cx=\\\"12\\\" cy=\\\"12\\\" r=\\\"10\\\"/><path d=\\\"M12 6v6l4 2\\\"/></svg>\",\n\tzap: \"<svg width=\\\"12\\\" height=\\\"12\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\"><polygon points=\\\"13 2 3 14 12 14 11 22 21 10 12 10 13 2\\\"/></svg>\",\n\tdownload: \"<svg width=\\\"14\\\" height=\\\"14\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"><path d=\\\"M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v4\\\"/><polyline points=\\\"7 10 12 15 17 10\\\"/><line x1=\\\"12\\\" y1=\\\"15\\\" x2=\\\"12\\\" y2=\\\"3\\\"/></svg>\",\n\tcopy: \"<svg width=\\\"14\\\" height=\\\"14\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"><rect x=\\\"9\\\" y=\\\"9\\\" width=\\\"13\\\" height=\\\"13\\\" rx=\\\"2\\\" ry=\\\"2\\\"/><path d=\\\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\\\"/></svg>\"\n}, Y = {\n\tbg: \"#0b1120\",\n\tbgElevated: \"#111827\",\n\tbgSurface: \"#172033\",\n\tborder: \"#24324a\",\n\tborderFocus: \"#35507a\",\n\ttext: \"#e5eefb\",\n\ttextMuted: \"#b4c4dd\",\n\ttextDim: \"#7f93b3\",\n\taccent: \"#38bdf8\",\n\taccentHover: \"#0ea5e9\",\n\taccentSoft: \"rgba(56, 189, 248, 0.18)\",\n\tsuccess: \"#34d399\",\n\tsuccessBg: \"rgba(52, 211, 153, 0.16)\",\n\terror: \"#fb7185\",\n\terrorBg: \"rgba(251, 113, 133, 0.16)\",\n\twarning: \"#fbbf24\",\n\twarningBg: \"rgba(251, 191, 36, 0.16)\",\n\tinfo: \"#a78bfa\",\n\tinfoBg: \"rgba(167, 139, 250, 0.16)\",\n\tget: \"#34d399\",\n\tpost: \"#38bdf8\",\n\tput: \"#fbbf24\",\n\tpatch: \"#a78bfa\",\n\tdelete: \"#fb7185\"\n}, Ce = `\n #nexa-dev-overlay * { margin: 0; padding: 0; box-sizing: border-box; }\n #nexa-dev-overlay {\n font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n background: ${Y.bg};\n color: ${Y.text};\n border: 1px solid ${Y.border};\n border-radius: 16px;\n box-shadow: 0 28px 60px -24px rgba(2, 6, 23, 0.78), 0 0 0 1px rgba(148, 163, 184, 0.08);\n overflow: hidden;\n }\n #nexa-dev-overlay .nexa-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid ${Y.border};\n background: ${Y.bgElevated};\n }\n #nexa-dev-overlay .nexa-header-left {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n #nexa-dev-overlay .nexa-logo {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: linear-gradient(135deg, ${Y.accentSoft}, rgba(255,255,255,0.02));\n border-radius: 8px;\n overflow: hidden;\n }\n #nexa-dev-overlay .nexa-title {\n font-size: 15px;\n font-weight: 600;\n letter-spacing: -0.02em;\n }\n #nexa-dev-overlay .nexa-header-actions {\n display: flex;\n gap: 4px;\n }\n #nexa-dev-overlay .nexa-icon-btn {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: transparent;\n border: none;\n border-radius: 8px;\n color: ${Y.textMuted};\n cursor: pointer;\n transition: all 0.15s;\n }\n #nexa-dev-overlay .nexa-icon-btn:hover {\n background: ${Y.bgSurface};\n color: ${Y.text};\n }\n #nexa-dev-overlay .nexa-metrics-bar {\n display: flex;\n gap: 4px;\n padding: 12px 16px;\n background: ${Y.bg};\n border-bottom: 1px solid ${Y.border};\n }\n #nexa-dev-overlay .nexa-metric {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n padding: 8px 12px;\n background: ${Y.bgSurface};\n border-radius: 10px;\n transition: all 0.2s;\n }\n #nexa-dev-overlay .nexa-metric:hover {\n background: rgba(53, 80, 122, 0.3);\n }\n #nexa-dev-overlay .nexa-metric-value {\n font-size: 18px;\n font-weight: 700;\n letter-spacing: -0.03em;\n color: ${Y.text};\n }\n #nexa-dev-overlay .nexa-metric-ok .nexa-metric-value { color: ${Y.success}; }\n #nexa-dev-overlay .nexa-metric-err .nexa-metric-value { color: ${Y.error}; }\n #nexa-dev-overlay .nexa-metric-label {\n font-size: 11px;\n color: ${Y.textDim};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n }\n #nexa-dev-overlay .nexa-search {\n padding: 12px 16px;\n border-bottom: 1px solid ${Y.border};\n position: relative;\n }\n #nexa-dev-overlay .nexa-search-icon {\n position: absolute;\n left: 28px;\n top: 50%;\n transform: translateY(-50%);\n color: ${Y.textDim};\n }\n #nexa-dev-overlay .nexa-search-input {\n width: 100%;\n padding: 10px 12px 10px 38px;\n background: ${Y.bg};\n border: 1px solid ${Y.border};\n border-radius: 10px;\n color: ${Y.text};\n font-size: 13px;\n outline: none;\n transition: all 0.15s;\n }\n #nexa-dev-overlay .nexa-search-input:focus {\n border-color: ${Y.accent};\n box-shadow: 0 0 0 3px ${Y.accentSoft};\n }\n #nexa-dev-overlay .nexa-search-input::placeholder { color: ${Y.textDim}; }\n #nexa-dev-overlay .nexa-filters {\n display: flex;\n gap: 6px;\n padding: 12px 16px 12px 16px;\n border-bottom: 1px solid ${Y.border};\n overflow-x: auto;\n scrollbar-width: none;\n min-height: 50px;\n }\n #nexa-dev-overlay .nexa-filters::-webkit-scrollbar { display: none; }\n #nexa-dev-overlay .nexa-filter-chip {\n padding: 4px 10px;\n background: ${Y.bgSurface};\n border: 1px solid ${Y.border};\n border-radius: 20px;\n color: ${Y.textDim};\n font-size: 11px;\n font-weight: 600;\n white-space: nowrap;\n cursor: pointer;\n transition: all 0.15s;\n }\n #nexa-dev-overlay .nexa-filter-chip:hover { border-color: ${Y.borderFocus}; color: ${Y.textMuted}; }\n #nexa-dev-overlay .nexa-filter-chip-active {\n background: ${Y.accentSoft};\n border-color: ${Y.accent};\n color: ${Y.accent};\n }\n #nexa-dev-overlay .nexa-tabs {\n display: flex;\n gap: 4px;\n padding: 8px 16px;\n border-bottom: 1px solid ${Y.border};\n }\n #nexa-dev-overlay .nexa-tab {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 14px;\n background: transparent;\n border: none;\n border-radius: 8px;\n color: ${Y.textMuted};\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s;\n }\n #nexa-dev-overlay .nexa-tab:hover { color: ${Y.text}; background: ${Y.bgElevated}; }\n #nexa-dev-overlay .nexa-tab-active { color: ${Y.text}; background: ${Y.accent} !important; }\n #nexa-dev-overlay .nexa-tab-count {\n font-size: 11px;\n padding: 2px 6px;\n background: rgba(148, 163, 184, 0.14);\n border-radius: 10px;\n }\n #nexa-dev-overlay .nexa-body { flex: 1; overflow: hidden; display: flex; }\n #nexa-dev-overlay .nexa-panel { display: none; width: 100%; overflow-y: auto; }\n #nexa-dev-overlay .nexa-panel-active { display: block; }\n #nexa-dev-overlay .nexa-request-list {\n padding: 8px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n }\n #nexa-dev-overlay .nexa-request-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 14px;\n background: ${Y.bgSurface};\n border: 1px solid transparent;\n border-radius: 12px;\n cursor: pointer;\n transition: all 0.15s;\n animation: nexaFadeIn 0.2s ease forwards;\n opacity: 0;\n }\n @keyframes nexaFadeIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }\n #nexa-dev-overlay .nexa-request-item:hover {\n background: rgba(23, 32, 51, 0.92);\n border-color: ${Y.borderFocus};\n transform: translateX(2px);\n }\n #nexa-dev-overlay .nexa-req-left {\n display: flex;\n align-items: center;\n gap: 10px;\n }\n #nexa-dev-overlay .nexa-method {\n font-size: 11px;\n font-weight: 700;\n padding: 4px 8px;\n border-radius: 6px;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n }\n #nexa-dev-overlay .nexa-method-get { background: ${Y.successBg}; color: ${Y.get}; }\n #nexa-dev-overlay .nexa-method-post { background: ${Y.accentSoft}; color: ${Y.post}; }\n #nexa-dev-overlay .nexa-method-put { background: ${Y.warningBg}; color: ${Y.put}; }\n #nexa-dev-overlay .nexa-method-patch { background: ${Y.infoBg}; color: ${Y.patch}; }\n #nexa-dev-overlay .nexa-method-delete { background: ${Y.errorBg}; color: ${Y.delete}; }\n #nexa-dev-overlay .nexa-status {\n font-size: 12px;\n font-weight: 600;\n padding: 4px 8px;\n border-radius: 6px;\n min-width: 36px;\n text-align: center;\n }\n #nexa-dev-overlay .nexa-ok { background: ${Y.successBg}; color: ${Y.success}; }\n #nexa-dev-overlay .nexa-err { background: ${Y.errorBg}; color: ${Y.error}; }\n #nexa-dev-overlay .nexa-url {\n font-size: 13px;\n color: ${Y.textMuted};\n max-width: 180px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n #nexa-dev-overlay .nexa-req-right {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n #nexa-dev-overlay .nexa-badge {\n font-size: 10px;\n font-weight: 600;\n padding: 3px 6px;\n border-radius: 6px;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n }\n #nexa-dev-overlay .nexa-badge-cache { background: ${Y.infoBg}; color: ${Y.info}; }\n #nexa-dev-overlay .nexa-badge-retry { background: ${Y.warningBg}; color: ${Y.warning}; }\n #nexa-dev-overlay .nexa-duration {\n font-size: 12px;\n font-weight: 600;\n color: ${Y.textDim};\n font-variant-numeric: tabular-nums;\n }\n #nexa-dev-overlay .nexa-slow { color: ${Y.warning}; }\n #nexa-dev-overlay .nexa-empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 48px 24px;\n text-align: center;\n color: ${Y.textDim};\n }\n #nexa-dev-overlay .nexa-empty svg { margin-bottom: 16px; opacity: 0.4; }\n #nexa-dev-overlay .nexa-empty p { font-size: 14px; color: ${Y.textMuted}; margin-bottom: 4px; }\n #nexa-dev-overlay .nexa-empty span { font-size: 12px; color: ${Y.textDim}; }\n #nexa-dev-overlay .nexa-detail {\n flex-direction: column;\n padding: 16px;\n display: none;\n overflow-y: auto;\n max-height: 100%;\n }\n #nexa-dev-overlay .nexa-detail-active { display: flex; }\n #nexa-dev-overlay .nexa-detail-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 16px;\n }\n #nexa-dev-overlay .nexa-btn-group {\n display: flex;\n gap: 8px;\n }\n #nexa-dev-overlay .nexa-btn {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 8px 14px;\n background: ${Y.bgSurface};\n border: 1px solid ${Y.border};\n border-radius: 8px;\n color: ${Y.textMuted};\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s;\n }\n #nexa-dev-overlay .nexa-btn:hover { background: rgba(53, 80, 122, 0.24); color: ${Y.text}; }\n #nexa-dev-overlay .nexa-btn-retry { background: ${Y.successBg}; border-color: transparent; color: ${Y.success}; }\n #nexa-dev-overlay .nexa-btn-retry:hover { background: ${Y.success}; color: #052e26; }\n #nexa-dev-overlay .nexa-btn-copy { background: ${Y.accentSoft}; border-color: transparent; color: ${Y.accent}; }\n #nexa-dev-overlay .nexa-btn-copy:hover { background: ${Y.accent}; color: #ffffff; }\n #nexa-dev-overlay .nexa-card {\n background: ${Y.bgSurface};\n border: 1px solid ${Y.border};\n border-radius: 12px;\n padding: 16px;\n margin-bottom: 12px;\n }\n #nexa-dev-overlay .nexa-card h3 {\n font-size: 12px;\n font-weight: 600;\n color: ${Y.textDim};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n margin-bottom: 12px;\n }\n #nexa-dev-overlay .nexa-notification {\n position: absolute;\n bottom: 24px;\n left: 50%;\n transform: translateX(-50%) translateY(20px);\n background: ${Y.bgElevated};\n color: ${Y.text};\n padding: 10px 18px;\n border-radius: 12px;\n border: 1px solid ${Y.borderFocus};\n font-size: 13px;\n font-weight: 500;\n box-shadow: 0 12px 32px rgba(0,0,0,0.4);\n z-index: 2147483651;\n opacity: 0;\n pointer-events: none;\n transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n }\n #nexa-dev-overlay .nexa-notification-show {\n opacity: 1;\n transform: translateX(-50%) translateY(0);\n }\n #nexa-dev-overlay .nexa-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 6px 0;\n font-size: 13px;\n border-bottom: 1px solid ${Y.border};\n }\n #nexa-dev-overlay .nexa-row:last-child { border-bottom: none; }\n #nexa-dev-overlay .nexa-row span { color: ${Y.textMuted}; }\n #nexa-dev-overlay .nexa-row strong { color: ${Y.text}; font-weight: 500; font-variant-numeric: tabular-nums; }\n #nexa-dev-overlay .nexa-row .nexa-ok { color: ${Y.success}; }\n #nexa-dev-overlay .nexa-row .nexa-err { color: ${Y.error}; }\n #nexa-dev-overlay .nexa-code {\n background: ${Y.bg};\n border-radius: 8px;\n padding: 12px;\n font-size: 11px;\n font-family: 'JetBrains Mono', 'Fira Code', monospace;\n color: ${Y.textMuted};\n overflow-x: auto;\n white-space: pre;\n max-height: 200px;\n line-height: 1.6;\n }\n #nexa-dev-overlay .nexa-url-full {\n font-size: 12px;\n word-break: break-all;\n color: ${Y.accent};\n }\n #nexa-dev-overlay .nexa-metrics-content {\n padding: 16px;\n display: flex;\n flex-direction: column;\n gap: 12px;\n }\n #nexa-dev-overlay .nexa-settings-panel {\n position: absolute;\n top: 72px;\n left: 16px;\n right: 16px;\n bottom: 16px;\n z-index: 2147483650;\n display: none;\n flex-direction: column;\n gap: 12px;\n padding: 16px;\n border-radius: 12px;\n background: ${Y.bgElevated};\n border: 1px solid ${Y.border};\n box-shadow: 0 28px 60px -24px rgba(2, 6, 23, 0.76);\n overflow: auto;\n }\n #nexa-dev-overlay .nexa-settings-row { display:flex;align-items:center;gap:8px;margin-bottom:8px }\n #nexa-dev-overlay .nexa-settings-row label{font-size:13px;color:${Y.textDim};min-width:70px}\n #nexa-dev-overlay .nexa-settings-row select{padding:6px 8px;border-radius:8px;border:1px solid ${Y.border};background:${Y.bg};color:${Y.text}}\n\n #nexa-dev-overlay.nexa-theme-light {\n background: #f8fbff;\n color: #0f172a;\n border-color: #d8e4f2;\n box-shadow: 0 28px 60px -24px rgba(15, 23, 42, 0.18), 0 0 0 1px rgba(148, 163, 184, 0.16);\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-header,\n #nexa-dev-overlay.nexa-theme-light .nexa-metrics-bar,\n #nexa-dev-overlay.nexa-theme-light .nexa-search,\n #nexa-dev-overlay.nexa-theme-light .nexa-tabs {\n background: #f8fbff;\n border-color: #d8e4f2;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-logo,\n #nexa-dev-overlay.nexa-theme-light .nexa-metric,\n #nexa-dev-overlay.nexa-theme-light .nexa-request-item,\n #nexa-dev-overlay.nexa-theme-light .nexa-btn,\n #nexa-dev-overlay.nexa-theme-light .nexa-card,\n #nexa-dev-overlay.nexa-theme-light .nexa-settings-panel,\n #nexa-dev-overlay.nexa-theme-light .nexa-notification {\n background: #ffffff;\n border-color: #d8e4f2;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-metric:hover,\n #nexa-dev-overlay.nexa-theme-light .nexa-icon-btn:hover,\n #nexa-dev-overlay.nexa-theme-light .nexa-btn:hover,\n #nexa-dev-overlay.nexa-theme-light .nexa-tab:hover,\n #nexa-dev-overlay.nexa-theme-light .nexa-request-item:hover {\n background: #eef6ff;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-request-item:hover {\n border-color: #93c5fd;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-search-icon,\n #nexa-dev-overlay.nexa-theme-light .nexa-metric-label,\n #nexa-dev-overlay.nexa-theme-light .nexa-duration,\n #nexa-dev-overlay.nexa-theme-light .nexa-empty,\n #nexa-dev-overlay.nexa-theme-light .nexa-empty span,\n #nexa-dev-overlay.nexa-theme-light .nexa-row span,\n #nexa-dev-overlay.nexa-theme-light .nexa-settings-row label,\n #nexa-dev-overlay.nexa-theme-light .nexa-notification {\n color: #64748b;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-notification {\n box-shadow: 0 12px 32px rgba(15,23,42,0.12);\n border-color: #e2e8f0;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-url,\n #nexa-dev-overlay.nexa-theme-light .nexa-empty p,\n #nexa-dev-overlay.nexa-theme-light .nexa-icon-btn,\n #nexa-dev-overlay.nexa-theme-light .nexa-tab,\n #nexa-dev-overlay.nexa-theme-light .nexa-btn,\n #nexa-dev-overlay.nexa-theme-light .nexa-code {\n color: #334155;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-metric-value,\n #nexa-dev-overlay.nexa-theme-light .nexa-title,\n #nexa-dev-overlay.nexa-theme-light .nexa-row strong {\n color: #0f172a;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-search-input,\n #nexa-dev-overlay.nexa-theme-light .nexa-settings-row select,\n #nexa-dev-overlay.nexa-theme-light .nexa-code {\n background: #ffffff;\n color: #0f172a;\n border-color: #d8e4f2;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-search-input:focus {\n border-color: #38bdf8;\n box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.16);\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-tab-active {\n color: #ffffff;\n background: #0ea5e9 !important;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-tab-count {\n background: rgba(14, 165, 233, 0.12);\n color: #075985;\n }\n #nexa-dev-overlay.nexa-theme-light .nexa-code,\n #nexa-dev-overlay.nexa-theme-light .nexa-detail,\n #nexa-dev-overlay.nexa-theme-light .nexa-row {\n border-color: #d8e4f2;\n }\n #nexa-dev-overlay .nexa-slow-req {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n #nexa-dev-overlay.nexa-view-detail .nexa-metrics-bar,\n #nexa-dev-overlay.nexa-view-detail .nexa-search,\n #nexa-dev-overlay.nexa-view-detail .nexa-filters,\n #nexa-dev-overlay.nexa-view-detail .nexa-tabs,\n #nexa-dev-overlay.nexa-view-detail .nexa-body {\n display: none !important;\n }\n`;\nfunction X() {\n\ttry {\n\t\tif (typeof process < \"u\") {\n\t\t\tlet e = process;\n\t\t\tif (e.env && typeof e.env.NODE_ENV == \"string\") return e.env.NODE_ENV === \"development\";\n\t\t}\n\t} catch {}\n\ttry {\n\t\tif (typeof location < \"u\" && location.hostname) {\n\t\t\tlet e = location.hostname;\n\t\t\tif (e === \"localhost\" || e === \"127.0.0.1\" || e === \"0.0.0.0\") return !0;\n\t\t}\n\t} catch {}\n\treturn !1;\n}\nvar we = class {\n\tpanel = null;\n\tfloatingIcon = null;\n\ttracker;\n\tvisible = !1;\n\tselectedRequest = null;\n\tconfig;\n\tsearchQuery = \"\";\n\tfilterType = \"all\";\n\tremoveTrackerListener = null;\n\tkeyboardShortcutHandler = null;\n\tglobalKeyboardHandler = null;\n\tconstructor(e) {\n\t\tthis.tracker = e, this.config = e.getConfig(), this.canUseDOM() && (this.setupKeyboardShortcut(), this.createPanel());\n\t}\n\tshow() {\n\t\tthis.panel && (this.panel.style.display = \"flex\", this.panel.style.opacity = \"0\", this.panel.style.transform = \"scale(0.96) translateY(8px)\", (typeof requestAnimationFrame == \"function\" ? requestAnimationFrame : (e) => setTimeout(e, 0))(() => {\n\t\t\tthis.panel.style.transition = \"all 0.25s cubic-bezier(0.16, 1, 0.3, 1)\", this.panel.style.opacity = \"1\", this.panel.style.transform = \"scale(1) translateY(0)\";\n\t\t}), this.visible = !0, this.hideFloatingIcon());\n\t}\n\thide() {\n\t\tthis.panel && (this.panel.style.transition = \"all 0.15s ease-out\", this.panel.style.opacity = \"0\", this.panel.style.transform = \"scale(0.96) translateY(8px)\", setTimeout(() => {\n\t\t\tthis.panel && (this.panel.style.display = \"none\");\n\t\t}, 150), this.visible = !1, this.config.enabled && (!this.config.devOnly || X()) && this.showFloatingIcon());\n\t}\n\ttoggle() {\n\t\tthis.visible ? this.hide() : this.show();\n\t}\n\tdestroy() {\n\t\tthis.keyboardShortcutHandler &&= (document.removeEventListener(\"keydown\", this.keyboardShortcutHandler), null), this.globalKeyboardHandler &&= (document.removeEventListener(\"keydown\", this.globalKeyboardHandler), null), this.removeTrackerListener?.(), this.removeTrackerListener = null, this.panel?.remove(), this.panel = null, this.visible = !1, this.selectedRequest = null, this.floatingIcon &&= (this.floatingIcon.remove(), null);\n\t}\n\tsetupKeyboardShortcut() {\n\t\tlet e = this.config.keyboardShortcut.split(\"+\"), t = new Set(e.map((e) => e.toLowerCase()));\n\t\tthis.keyboardShortcutHandler = (e) => {\n\t\t\tlet n = /* @__PURE__ */ new Set();\n\t\t\te.ctrlKey && n.add(\"ctrl\"), e.metaKey && (n.add(\"meta\"), n.add(\"cmd\"), n.add(\"ctrl\")), e.shiftKey && n.add(\"shift\"), e.altKey && n.add(\"alt\"), (e.key && e.key.length === 1 || e.key.length > 1) && n.add(e.key.toLowerCase());\n\t\t\tlet r = !0;\n\t\t\tfor (let e of t) if (!n.has(e)) {\n\t\t\t\tr = !1;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tr && n.size === t.size && (e.preventDefault(), this.toggle());\n\t\t}, document.addEventListener(\"keydown\", this.keyboardShortcutHandler);\n\t}\n\tcreatePanel() {\n\t\tif (!this.canUseDOM()) return;\n\t\ttry {\n\t\t\tlet e = document.getElementById(\"nexa-dev-overlay\");\n\t\t\te && e.remove();\n\t\t} catch {}\n\t\tthis.panel = document.createElement(\"div\"), this.panel.id = \"nexa-dev-overlay\";\n\t\tlet e = this.config.position, t = e.includes(\"bottom\"), n = e.includes(\"right\"), r = `${this.config.floatingButtonOffset ?? 24}px`, i = this.config.branding || \"Nexa DevTools\", a = this.config.icon || \"https://raw.githubusercontent.com/Berea-Soft/nexa/refs/heads/main/src/assets/faviconNew.png\";\n\t\tthis.panel.style.cssText = `\n position: fixed;\n ${t ? `bottom: ${r};` : `top: ${r};`}\n ${n ? `right: ${r};` : `left: ${r};`}\n width: 420px;\n max-height: 70vh;\n z-index: 2147483649;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n `, this.panel.innerHTML = `<style>${Ce}</style>\n\n <div class=\"nexa-header\">\n <div class=\"nexa-header-left\">\n <div class=\"nexa-logo\">\n <img src=\"${a}\" alt=\"${i}\" style=\"width:100%;height:auto;object-fit:cover;border-radius:8px;display:block;\" />\n </div>\n <span class=\"nexa-title\">${i}</span>\n </div>\n <div class=\"nexa-header-actions\">\n <button class=\"nexa-icon-btn nexa-btn-export\" title=\"Export history (JSON)\">${J.download}</button>\n <button class=\"nexa-icon-btn nexa-btn-settings\" title=\"Settings\">${J.gear}</button>\n <button class=\"nexa-icon-btn nexa-btn-clear\" title=\"Clear history\">${J.clear}</button>\n <button class=\"nexa-icon-btn nexa-btn-close\" title=\"Close (Esc)\">${J.close}</button>\n </div>\n </div>\n\n <div class=\"nexa-notification\"></div>\n\n <div class=\"nexa-settings-panel\" style=\"display:none\">\n <div class=\"nexa-settings-row\">\n <label for=\"nexa-pos\">Position</label>\n <select id=\"nexa-pos\" data-setting=\"position\">\n <option value=\"top-right\">Top Right</option>\n <option value=\"top-left\">Top Left</option>\n <option value=\"bottom-right\">Bottom Right</option>\n <option value=\"bottom-left\">Bottom Left</option>\n </select>\n </div>\n <div class=\"nexa-settings-row\">\n <label for=\"nexa-theme\">Theme</label>\n <select id=\"nexa-theme\" data-setting=\"theme\">\n <option value=\"dark\">Dark</option>\n <option value=\"light\">Light</option>\n </select>\n </div>\n <div style=\"display:flex;gap:8px;margin-top:8px\">\n <button class=\"nexa-btn nexa-btn-save\">Save</button>\n <button class=\"nexa-btn nexa-btn-cancel\">Cancel</button>\n </div>\n </div>\n\n <div class=\"nexa-metrics-bar\">\n <div class=\"nexa-metric\"><span class=\"nexa-metric-value\" data-metric=\"total\">0</span><span class=\"nexa-metric-label\">Requests</span></div>\n <div class=\"nexa-metric\"><span class=\"nexa-metric-value\" data-metric=\"avg\">0ms</span><span class=\"nexa-metric-label\">Avg</span></div>\n <div class=\"nexa-metric\"><span class=\"nexa-metric-value\" data-metric=\"rate\">0/s</span><span class=\"nexa-metric-label\">Throughput</span></div>\n <div class=\"nexa-metric nexa-metric-ok\"><span class=\"nexa-metric-value\" data-metric=\"success\">0</span><span class=\"nexa-metric-label\">Success</span></div>\n <div class=\"nexa-metric nexa-metric-err\"><span class=\"nexa-metric-value\" data-metric=\"fail\">0</span><span class=\"nexa-metric-label\">Failed</span></div>\n </div>\n\n <div class=\"nexa-search\">\n <span class=\"nexa-search-icon\">${J.search}</span>\n <input type=\"text\" class=\"nexa-search-input\" placeholder=\"Filter by URL, method, or status...\" />\n </div>\n\n <div class=\"nexa-filters\">\n <div class=\"nexa-filter-chip nexa-filter-chip-active\" data-filter=\"all\">All</div>\n <div class=\"nexa-filter-chip\" data-filter=\"err\">Errors</div>\n <div class=\"nexa-filter-chip\" data-filter=\"xhr\">JSON</div>\n <div class=\"nexa-filter-chip\" data-filter=\"slow\">Slow</div>\n </div>\n\n <div class=\"nexa-tabs\">\n <button class=\"nexa-tab nexa-tab-active\" data-tab=\"requests\"><span>Requests</span><span class=\"nexa-tab-count\" data-count=\"requests\">0</span></button>\n <button class=\"nexa-tab\" data-tab=\"metrics\"><span>Metrics</span></button>\n </div>\n\n <div class=\"nexa-body\">\n <div class=\"nexa-panel nexa-panel-active\" data-panel=\"requests\"><div class=\"nexa-request-list\"></div></div>\n <div class=\"nexa-panel\" data-panel=\"metrics\"><div class=\"nexa-metrics-content\"></div></div>\n </div>\n\n <div class=\"nexa-detail\" style=\"display:none\">\n <div class=\"nexa-detail-header\">\n <button class=\"nexa-btn nexa-btn-back\">${J.back} Back</button>\n <div class=\"nexa-btn-group\">\n <button class=\"nexa-btn nexa-btn-copy\">${J.copy} Copy as fetch</button>\n <button class=\"nexa-btn nexa-btn-retry\">${J.retry} Retry</button>\n </div>\n </div>\n <div class=\"nexa-detail-body\"></div>\n </div>\n `, document.body.appendChild(this.panel), this.config.theme === \"light\" ? this.panel.classList.add(\"nexa-theme-light\") : this.panel.classList.remove(\"nexa-theme-light\"), this.bindEvents(), this.removeTrackerListener = this.tracker.onChange(() => this.render());\n\t\tlet o = !this.config.devOnly || X();\n\t\tthis.config.enabled && o && this.createFloatingIcon(), this.updateHeaderActionsVisibility(), this.hide(), this.globalKeyboardHandler = (e) => {\n\t\t\tif (e.key === \"Escape\" && this.visible) {\n\t\t\t\tthis.hide();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (this.visible && (e.ctrlKey || e.metaKey) && e.key.toLowerCase() === \"f\") {\n\t\t\t\te.preventDefault();\n\t\t\t\tlet t = this.panel?.querySelector(\".nexa-search-input\");\n\t\t\t\tt?.focus(), t?.select();\n\t\t\t}\n\t\t}, document.addEventListener(\"keydown\", this.globalKeyboardHandler);\n\t}\n\tbindEvents() {\n\t\tthis.panel && (this.panel.querySelector(\".nexa-btn-close\")?.addEventListener(\"click\", () => this.hide()), this.panel.querySelector(\".nexa-btn-export\")?.addEventListener(\"click\", () => this.exportHistory()), this.panel.querySelector(\".nexa-btn-copy\")?.addEventListener(\"click\", () => this.copyAsFetch()), this.panel.querySelector(\".nexa-btn-clear\")?.addEventListener(\"click\", () => {\n\t\t\tthis.tracker.clear(), this.render();\n\t\t}), this.panel.querySelector(\".nexa-btn-back\")?.addEventListener(\"click\", () => this.showMainView()), this.panel.querySelector(\".nexa-btn-retry\")?.addEventListener(\"click\", () => this.retrySelected()), this.panel.querySelector(\".nexa-search-input\")?.addEventListener(\"input\", (e) => {\n\t\t\tthis.searchQuery = e.target.value.toLowerCase(), this.renderRequestList();\n\t\t}), this.panel.querySelectorAll(\".nexa-filter-chip\").forEach((e) => {\n\t\t\te.addEventListener(\"click\", () => {\n\t\t\t\tthis.panel.querySelectorAll(\".nexa-filter-chip\").forEach((e) => e.classList.remove(\"nexa-filter-chip-active\")), e.classList.add(\"nexa-filter-chip-active\"), this.filterType = e.dataset.filter, this.renderRequestList();\n\t\t\t});\n\t\t}), this.panel.querySelectorAll(\".nexa-tab\").forEach((e) => {\n\t\t\te.addEventListener(\"click\", () => {\n\t\t\t\tthis.panel.querySelectorAll(\".nexa-tab\").forEach((e) => e.classList.remove(\"nexa-tab-active\")), this.panel.querySelectorAll(\".nexa-panel\").forEach((e) => e.classList.remove(\"nexa-panel-active\")), e.classList.add(\"nexa-tab-active\"), this.panel.querySelector(`[data-panel=\"${e.dataset.tab}\"]`)?.classList.add(\"nexa-panel-active\"), e.dataset.tab === \"metrics\" && this.renderMetrics();\n\t\t\t});\n\t\t}), this.panel.querySelector(\".nexa-btn-settings\")?.addEventListener(\"click\", () => {\n\t\t\tlet e = this.panel.querySelector(\".nexa-settings-panel\");\n\t\t\tif (!e) return;\n\t\t\tlet t = this.panel.querySelector(\"[data-setting=\\\"position\\\"]\"), n = this.panel.querySelector(\"[data-setting=\\\"theme\\\"]\"), r = e.style.display === \"flex\";\n\t\t\te.style.display = r ? \"none\" : \"flex\", r || (this.hideFloatingIcon(), t && (t.value = this.config.position), n && (n.value = this.config.theme), t?.focus());\n\t\t}), this.panel.querySelector(\".nexa-btn-save\")?.addEventListener(\"click\", () => {\n\t\t\tlet e = this.panel.querySelector(\"[data-setting=\\\"position\\\"]\"), t = this.panel.querySelector(\"[data-setting=\\\"theme\\\"]\"), n = e?.value, r = t?.value, i = {};\n\t\t\tn !== void 0 && (i.position = n), r !== void 0 && (i.theme = r);\n\t\t\tlet a = this.tracker.updateConfig(i);\n\t\t\tthis.applyConfigToUI(a);\n\t\t\tlet o = this.panel.querySelector(\".nexa-settings-panel\");\n\t\t\to && (o.style.display = \"none\");\n\t\t}), this.panel.querySelector(\".nexa-btn-cancel\")?.addEventListener(\"click\", () => {\n\t\t\tlet e = this.panel.querySelector(\".nexa-settings-panel\");\n\t\t\te && (e.style.display = \"none\");\n\t\t}));\n\t}\n\trender() {\n\t\t!this.panel || !this.visible || (this.renderMetricsBar(), this.renderRequestList());\n\t}\n\trenderMetricsBar() {\n\t\tlet e = this.tracker.getMetrics(), t = this.panel;\n\t\tt && (t.querySelector(\"[data-metric=\\\"total\\\"]\").textContent = String(e.totalRequests), t.querySelector(\"[data-metric=\\\"avg\\\"]\").textContent = `${e.avgDuration.toFixed(0)}ms`, t.querySelector(\"[data-metric=\\\"rate\\\"]\").textContent = `${e.requestsPerSecond.toFixed(1)}`, t.querySelector(\"[data-metric=\\\"success\\\"]\").textContent = String(e.successfulRequests), t.querySelector(\"[data-metric=\\\"fail\\\"]\").textContent = String(e.failedRequests), t.querySelector(\"[data-count=\\\"requests\\\"]\").textContent = String(e.totalRequests), this.updateHeaderActionsVisibility());\n\t}\n\tupdateHeaderActionsVisibility() {\n\t\tlet e = this.tracker.getHistory().length > 0, t = this.panel?.querySelector(\".nexa-btn-export\"), n = this.panel?.querySelector(\".nexa-btn-clear\");\n\t\tt && (t.style.display = e ? \"flex\" : \"none\"), n && (n.style.display = e ? \"flex\" : \"none\");\n\t}\n\trenderRequestList() {\n\t\tlet e = this.panel?.querySelector(\".nexa-request-list\");\n\t\tif (!e) return;\n\t\tlet t = this.tracker.getHistory();\n\t\tif (this.filterType === \"err\" ? t = t.filter((e) => !e.ok) : this.filterType === \"xhr\" ? t = t.filter((e) => e.headers[\"content-type\"] && e.headers[\"content-type\"].includes(\"json\") || e.responseHeaders && e.responseHeaders[\"content-type\"] && e.responseHeaders[\"content-type\"].includes(\"json\")) : this.filterType === \"slow\" && (t = t.filter((e) => e.duration > 500)), this.searchQuery && (t = t.filter((e) => e.url.toLowerCase().includes(this.searchQuery) || e.method.toLowerCase().includes(this.searchQuery) || String(e.status).includes(this.searchQuery))), t.length === 0) {\n\t\t\te.innerHTML = `\n <div class=\"nexa-empty\">\n <svg width=\"48\" height=\"48\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"/><path d=\"M8 12h8M12 8v8\"/>\n </svg>\n <p>${this.searchQuery ? \"No matching requests\" : \"No requests yet\"}</p>\n <span>${this.searchQuery ? \"Try a different search term\" : \"Make a request to see it here\"}</span>\n </div>`;\n\t\t\treturn;\n\t\t}\n\t\te.innerHTML = t.map((e, t) => `\n <div class=\"nexa-request-item\" data-id=\"${e.id}\" style=\"animation-delay: ${Math.min(t * 20, 300)}ms\">\n <div class=\"nexa-req-left\">\n <span class=\"nexa-method nexa-method-${e.method.toLowerCase()}\">${e.method}</span>\n <span class=\"nexa-status ${e.ok ? \"nexa-ok\" : \"nexa-err\"}\">${e.status || \"ERR\"}</span>\n <span class=\"nexa-url\" title=\"${e.url}\">${this.truncateUrl(e.url)}</span>\n </div>\n <div class=\"nexa-req-right\">\n ${e.cached ? \"<span class=\\\"nexa-badge nexa-badge-cache\\\">Cache</span>\" : \"\"}\n ${e.retryCount > 0 ? `<span class=\"nexa-badge nexa-badge-retry\">${e.retryCount}R</span>` : \"\"}\n <span class=\"nexa-duration ${e.duration > 500 ? \"nexa-slow\" : \"\"}\">${e.duration.toFixed(0)}ms</span>\n ${J.chevron}\n </div>\n </div>\n `).join(\"\"), e.querySelectorAll(\".nexa-request-item\").forEach((e) => {\n\t\t\te.addEventListener(\"click\", () => {\n\t\t\t\tlet n = e.dataset.id, r = t.find((e) => e.id === n);\n\t\t\t\tr && this.showDetail(r);\n\t\t\t});\n\t\t});\n\t}\n\trenderMetrics() {\n\t\tlet e = this.tracker.getMetrics(), t = this.panel?.querySelector(\".nexa-metrics-content\");\n\t\tif (!t) return;\n\t\tlet n = e.totalRequests > 0 ? (e.successfulRequests / e.totalRequests * 100).toFixed(1) : \"0\";\n\t\tt.innerHTML = `\n <div class=\"nexa-card\">\n <h3>Overview</h3>\n <div class=\"nexa-row\"><span>Total Requests</span><strong>${e.totalRequests}</strong></div>\n <div class=\"nexa-row\"><span>Successful</span><strong class=\"nexa-ok\">${e.successfulRequests}</strong></div>\n <div class=\"nexa-row\"><span>Failed</span><strong class=\"nexa-err\">${e.failedRequests}</strong></div>\n <div class=\"nexa-row\"><span>Cached</span><strong>${e.cachedRequests}</strong></div>\n <div class=\"nexa-row\"><span>Success Rate</span><strong>${n}%</strong></div>\n </div>\n <div class=\"nexa-card\">\n <h3>Performance</h3>\n <div class=\"nexa-row\"><span>Average</span><strong>${e.avgDuration.toFixed(1)}ms</strong></div>\n <div class=\"nexa-row\"><span>Fastest</span><strong class=\"nexa-ok\">${e.minDuration.toFixed(1)}ms</strong></div>\n <div class=\"nexa-row\"><span>Slowest</span><strong class=\"nexa-err\">${e.maxDuration.toFixed(1)}ms</strong></div>\n <div class=\"nexa-row\"><span>Throughput</span><strong>${e.requestsPerSecond.toFixed(2)} req/s</strong></div>\n </div>\n ${e.slowestRequests.length > 0 ? `\n <div class=\"nexa-card\">\n <h3>Slowest Requests</h3>\n ${e.slowestRequests.map((e) => `\n <div class=\"nexa-row nexa-slow-req\">\n <span><span class=\"nexa-method nexa-method-${e.method.toLowerCase()}\" style=\"font-size:10px;padding:2px 5px;\">${e.method}</span> ${this.truncateUrl(e.url, 25)}</span>\n <strong class=\"nexa-err\">${e.duration.toFixed(0)}ms</strong>\n </div>\n `).join(\"\")}\n </div>\n ` : \"\"}`;\n\t}\n\tshowDetail(e) {\n\t\tif (this.selectedRequest = e, !this.panel) return;\n\t\tlet t = this.panel.querySelector(\".nexa-body\"), n = this.panel.querySelector(\".nexa-detail\"), r = this.panel.querySelector(\".nexa-detail-body\");\n\t\t!t || !n || !r || (this.panel.classList.add(\"nexa-view-detail\"), t.style.display = \"none\", n.style.display = \"flex\", r.innerHTML = `\n <div class=\"nexa-card\">\n <h3>Request</h3>\n <div class=\"nexa-row\"><span>Method</span><strong style=\"color:${e.method === \"GET\" ? Y.get : e.method === \"POST\" ? Y.post : e.method === \"DELETE\" ? Y.delete : Y.warning}\">${e.method}</strong></div>\n <div class=\"nexa-row\"><span>URL</span><span class=\"nexa-url-full\">${e.url}</span></div>\n <div class=\"nexa-row\"><span>Status</span><strong class=\"${e.ok ? \"nexa-ok\" : \"nexa-err\"}\">${e.status || \"N/A\"}</strong></div>\n <div class=\"nexa-row\"><span>Duration</span><strong>${e.duration.toFixed(1)}ms</strong></div>\n <div class=\"nexa-row\"><span>Cached</span><strong>${e.cached ? \"Yes\" : \"No\"}</strong></div>\n <div class=\"nexa-row\"><span>Retries</span><strong>${e.retryCount}</strong></div>\n <div class=\"nexa-row\"><span>Timestamp</span><strong>${new Date(e.timestamp).toLocaleTimeString()}</strong></div>\n </div>\n ${e.body === void 0 ? \"\" : `\n <div class=\"nexa-card\">\n <h3>Request Body</h3>\n <pre class=\"nexa-code\">${this.formatJson(e.body)}</pre>\n </div>\n `}\n ${Object.keys(e.headers).length > 0 ? `\n <div class=\"nexa-card\">\n <h3>Headers</h3>\n <pre class=\"nexa-code\">${this.formatJson(e.headers)}</pre>\n </div>\n ` : \"\"}`);\n\t}\n\tshowMainView() {\n\t\tthis.panel && this.panel.classList.remove(\"nexa-view-detail\");\n\t\tlet e = this.panel?.querySelector(\".nexa-body\"), t = this.panel?.querySelector(\".nexa-detail\");\n\t\te && (e.style.display = \"flex\"), t && (t.style.display = \"none\"), this.selectedRequest = null;\n\t}\n\tretrySelected() {\n\t\tif (!this.selectedRequest) return;\n\t\tlet { method: e, url: t, body: n, headers: r } = this.selectedRequest;\n\t\tfetch(t, {\n\t\t\tmethod: e,\n\t\t\theaders: r,\n\t\t\tbody: n ? JSON.stringify(n) : void 0\n\t\t}).then(async (e) => {\n\t\t\tthis.selectedRequest && (this.selectedRequest = {\n\t\t\t\t...this.selectedRequest,\n\t\t\t\tstatus: e.status,\n\t\t\t\tok: e.ok,\n\t\t\t\tduration: this.selectedRequest.duration,\n\t\t\t\ttimestamp: Date.now()\n\t\t\t}, this.showDetail(this.selectedRequest));\n\t\t}).catch(() => {});\n\t}\n\texportHistory() {\n\t\tlet e = this.tracker.getHistory(), t = JSON.stringify(e, null, 2), n = new Blob([t], { type: \"application/json\" }), r = URL.createObjectURL(n), i = document.createElement(\"a\");\n\t\ti.href = r, i.download = `nexa-history-${(/* @__PURE__ */ new Date()).toISOString().slice(0, 19).replace(/[:]/g, \"-\")}.json`, document.body.appendChild(i), i.click(), document.body.removeChild(i), URL.revokeObjectURL(r), this.showNotification(\"History exported as JSON\");\n\t}\n\tcopyAsFetch() {\n\t\tif (!this.selectedRequest) return;\n\t\tlet e = this.selectedRequest, t = { ...e.headers };\n\t\tdelete t.host;\n\t\tlet n = `fetch(\"${e.url}\", {\\n`;\n\t\tn += ` \"method\": \"${e.method}\",\\n`, Object.keys(t).length > 0 && (n += ` \"headers\": ${JSON.stringify(t, null, 4).replace(/\\n/g, \"\\n \")},\\n`), e.body && (n += ` \"body\": ${JSON.stringify(e.body, null, 4).replace(/\\n/g, \"\\n \")},\\n`), n += \"});\", navigator.clipboard.writeText(n).then(() => {\n\t\t\tthis.showNotification(\"Copied as fetch to clipboard\");\n\t\t}).catch(() => {\n\t\t\tthis.showNotification(\"Failed to copy to clipboard\");\n\t\t});\n\t}\n\tshowNotification(e) {\n\t\tlet t = this.panel?.querySelector(\".nexa-notification\");\n\t\tt && (t.textContent = e, t.classList.add(\"nexa-notification-show\"), setTimeout(() => {\n\t\t\tt.classList.remove(\"nexa-notification-show\");\n\t\t}, 2500));\n\t}\n\ttruncateUrl(e, t = 35) {\n\t\ttry {\n\t\t\tlet t = new URL(e);\n\t\t\treturn t.pathname + (t.search || \"\");\n\t\t} catch {\n\t\t\treturn e.length > t ? e.slice(0, t) + \"...\" : e;\n\t\t}\n\t}\n\tformatJson(e) {\n\t\ttry {\n\t\t\treturn JSON.stringify(e, null, 2);\n\t\t} catch {\n\t\t\treturn String(e);\n\t\t}\n\t}\n\tcanUseDOM() {\n\t\treturn typeof document < \"u\" && typeof document.createElement == \"function\" && !!document.body;\n\t}\n\tcreateFloatingIcon() {\n\t\tif (!this.canUseDOM()) return;\n\t\ttry {\n\t\t\tlet e = document.getElementById(\"nexa-dev-overlay-floating\");\n\t\t\te && e.remove();\n\t\t} catch {}\n\t\tthis.floatingIcon &&= (this.floatingIcon.remove(), null);\n\t\tlet e = document.createElement(\"button\");\n\t\te.id = \"nexa-dev-overlay-floating\", e.title = \"Toggle Nexa DevTools\";\n\t\tlet t = this.config.floatingButtonSize ?? 48, n = this.config.floatingButtonOffset ?? 24, r = this.config.position || \"bottom-right\", i = r.includes(\"bottom\"), a = r.includes(\"right\"), o = `${i ? `bottom: ${n}px;` : `top: ${n}px;`} ${a ? `right: ${n}px;` : `left: ${n}px;`}`, s = this.config.floatingButtonTheme === \"inherit\" ? this.config.theme : this.config.floatingButtonTheme, c = \"linear-gradient(135deg,#0ea5e9,#8b5cf6)\", l = \"#ffffff\", u = \"0 16px 36px rgba(2,6,23,0.34)\", d = \"none\";\n\t\ts === \"light\" && (c = \"linear-gradient(135deg,#f8fbff,#e0f2fe)\", l = \"#0f172a\", u = \"0 14px 30px rgba(15,23,42,0.16)\", d = \"1px solid #d8e4f2\");\n\t\tlet f = this.config.branding || \"Nexa DevTools\", p = this.config.icon || \"https://raw.githubusercontent.com/Berea-Soft/nexa/refs/heads/main/src/assets/faviconNew.png\";\n\t\te.style.cssText = `\n position: fixed;\n ${o}\n width: ${t}px;\n height: ${t}px;\n border-radius: 50%;\n border: ${d};\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2147483648;\n cursor: pointer;\n box-shadow: ${u};\n background: ${c};\n color: ${l};\n font-weight: 700;\n font-size: ${Math.max(12, Math.floor(t / 3))}px;\n `, e.innerHTML = `<img src=\"${p}\" alt=\"${f}\" style=\"width:${t - 10}px;height:auto;object-fit:cover;border-radius:999px;display:block;\" />`, e.addEventListener(\"click\", (e) => {\n\t\t\te.stopPropagation(), this.toggle();\n\t\t}), e.addEventListener(\"mousedown\", (e) => e.preventDefault()), document.body.appendChild(e), e.style.display = this.visible ? \"none\" : \"flex\", this.floatingIcon = e;\n\t}\n\tshowFloatingIcon() {\n\t\tif (!this.floatingIcon) {\n\t\t\tthis.config.enabled && this.createFloatingIcon();\n\t\t\treturn;\n\t\t}\n\t\tthis.floatingIcon.style.display = \"flex\";\n\t}\n\thideFloatingIcon() {\n\t\tthis.floatingIcon && (this.floatingIcon.style.display = \"none\");\n\t}\n\tapplyConfigToUI(e) {\n\t\tthis.config = e ?? this.tracker.getConfig();\n\t\tlet t = this.config.position, n = t.includes(\"bottom\"), r = t.includes(\"right\"), i = `${this.config.floatingButtonOffset ?? 24}px`;\n\t\tif (this.panel) {\n\t\t\tthis.panel.style.bottom = n ? i : \"\", this.panel.style.top = n ? \"\" : i, this.panel.style.right = r ? i : \"\", this.panel.style.left = r ? \"\" : i, this.config.theme === \"light\" ? this.panel.classList.add(\"nexa-theme-light\") : this.panel.classList.remove(\"nexa-theme-light\");\n\t\t\tlet e = this.panel.querySelector(\".nexa-logo img\"), t = this.panel.querySelector(\".nexa-title\"), a = this.config.branding || \"Nexa DevTools\", o = this.config.icon || \"https://raw.githubusercontent.com/Berea-Soft/nexa/refs/heads/main/src/assets/faviconNew.png\";\n\t\t\te && (e.src = o, e.alt = a), t && (t.textContent = a);\n\t\t}\n\t\tthis.floatingIcon &&= (this.floatingIcon.remove(), null), this.config.enabled && (!this.config.devOnly || X()) && this.createFloatingIcon();\n\t}\n\trefreshConfig(e) {\n\t\tthis.applyConfigToUI(e);\n\t}\n}, Z = null, Q = null, $ = {\n\tenabled: !0,\n\tmaxHistory: 500,\n\tkeyboardShortcut: \"ctrl+shift+n\",\n\tposition: \"bottom-right\",\n\ttheme: \"dark\",\n\tdevOnly: !0,\n\tfloatingButtonSize: 48,\n\tfloatingButtonOffset: 24,\n\tfloatingButtonTheme: \"inherit\",\n\tbranding: \"Nexa DevTools\",\n\ticon: \"https://raw.githubusercontent.com/Berea-Soft/nexa/refs/heads/main/src/assets/faviconNew.png\"\n};\nfunction Te(e = {}) {\n\tif (Z && Q) {\n\t\tlet t = K(), n = {\n\t\t\t...$,\n\t\t\t...e,\n\t\t\t...t\n\t\t}, r = Q.updateConfig(n);\n\t\ttry {\n\t\t\tZ.refreshConfig(r);\n\t\t} catch {}\n\t\treturn {\n\t\t\ttracker: Q,\n\t\t\tui: Z,\n\t\t\tconfig: r\n\t\t};\n\t}\n\tlet t = K();\n\treturn Q = new q({\n\t\t...$,\n\t\t...e,\n\t\t...t\n\t}), Z = new we(Q), {\n\t\ttracker: Q,\n\t\tui: Z,\n\t\tconfig: Q.getConfig()\n\t};\n}\nfunction Ee() {\n\treturn {\n\t\ttracker: Q,\n\t\tui: Z\n\t};\n}\nfunction De() {\n\tZ?.destroy(), Z = null, Q = null;\n}\n//#endregion\nexport { d as AggressiveRetry, de as CachePlugin, y as CacheStore, p as CircuitBreakerRetry, f as ConservativeRetry, fe as DedupePlugin, oe as Defer, t as Err, R as HttpClient, z as HttpError, le as LoggerPlugin, ue as MetricsPlugin, re as MiddlewarePipeline, e as Ok, N as PluginManager, S as RequestDeduplicator, q as RequestTracker, E as TypedObservable, x as cacheMiddleware, k as createApiUrl, b as createCacheMiddleware, C as createDedupeMiddleware, Te as createDevOverlay, me as createHttpClient, w as createPipeline, l as createProjectionTransformer, xe as createRealtimePlugin, r as createRequiredFieldsValidator, ye as createSSEClient, n as createSchemaValidator, M as createStreamingMiddleware, D as createTypeGuard, ae as createTypedApiClient, T as createTypedRequest, ie as createTypedResponse, O as createUrl, _e as createWebSocketClient, u as createWrapperTransformer, ne as dedupeMiddleware, De as destroyDevOverlay, Ee as getDevOverlay, A as handleStream, B as isHttpError, v as retry, se as streamToFile, ce as streamingMiddleware, s as transformCamelToSnake, c as transformFlatten, o as transformSnakeToCamel, i as validatorIsArray, a as validatorIsObject, te as withTimeout };\n\n//# sourceMappingURL=nexa.es.js.map","import { createHttpClient as a } from \"@bereasoftware/nexa\";\nfunction u(c = {}) {\n const { baseURL: n = \"\", defaultTimeout: o = 1e4 } = c, p = a({\n baseURL: n,\n defaultTimeout: o\n });\n return {\n get: (t, e) => p.get(t, e),\n post: (t, e, r) => p.post(t, e, r),\n put: (t, e, r) => p.put(t, e, r),\n patch: (t, e, r) => p.patch(t, e, r),\n delete: (t, e) => p.delete(t, e)\n };\n}\nfunction s(c = {}) {\n return u(c);\n}\nexport {\n u as createNexaHttp,\n s as createReserviHttp\n};\n//# sourceMappingURL=http.js.map\n"],"names":["n","l","u","t","i","r","o","e","f","c","a","s","h","p","v","d","w","_","g","m","b","k","x","S","C","$","I","q","D","P","A","H","L","y","T","J","j","O","K","z","N","V","M","Q","E","B","G","R","EN_LOCALE","ES_LOCALE","LocaleManager","_a","__publicField","locale","data","target","result","locales","name","temporalCache","useTemporal","TemporalLoaded","TemporalAdapter","input","Temporal","date","datePart","timePart","timestamp","iso","normalized","obj","year","month","day","hour","minute","second","millisecond","temporal","plainDT","value","num","dt","field","timezone","dt1","dt2","iso1","iso2","DateFormatter","pattern","localeData","escapedParts","escapedPattern","_match","content","match","meridiem","index","preset","presets","DURATION_UNIT_LABELS","CONJUNCTION_LABELS","getDurationUnitLabel","unit","getConjunctionLabel","joinDurationParts","parts","conjunction","formatZeroDuration","GregorianCalendar","short","daysPerMonth","CalendarManager","calendar","id","MS_PER_SECOND","MS_PER_MINUTE","MS_PER_HOUR","MS_PER_DAY","MS_PER_WEEK","DAYS_PER_YEAR","MS_PER_MONTH","MS_PER_YEAR","ZERO_DIFF_DAYS","calculateTotalMs","duration","DiffResult","tg1","tg2","mode","breakdownData","bd","DurationResult","metadata","options","fullBreakdown","numeric","nonZeroParts","largest","label","totalMs","steps","explanationParts","leapYears","flag","totalParts","count","TimeRange","start","end","t1","t2","TimeGuard","tg","startT","endT","other","s1","e1","s2","e2","config","zoned","dates","instance","date1","date2","earlier","later","hint","cloned","formatPattern","component","unitMap","units","hasValidFields","targetKey","negated","unitOrOptions","plainDT1","plainDT2","mappedUnit","durationObj","inclusivity","plainStart","plainEnd","afterStart","beforeEnd","startCopy","endCopy","plainCopy","plainEndCopy","hasStartBracket","hasEndBracket","values","updated","startTime","temporalOptions","startYear","endYear","leapYearFlags","isLeap","calculationTimeMs","leapYearsInRange","timeComponents","totalDays","smallestUnit","roundingMode","polyfillDT","unitValues","unitOrder","smallestIndex","roundedValues","nextUnitValue","nextVal","timeParts","dateStr","days","remaining","step","ENGLISH_LOCALES","SPANISH_LOCALES","ROMANCE_LOCALES","SLAVIC_LOCALES","NORDIC_LOCALES","ASIAN_LOCALES","EUROPEAN_LOCALES","MIDDLE_EASTERN_LOCALES","ADDITIONAL_LOCALES","AFRICAN_LOCALES","SOUTH_AMERICAN_LOCALES","ALL_LOCALES","__create","__defProp","__getOwnPropDesc","__getOwnPropNames","__getProtoOf","__hasOwnProp","__commonJSMin","cb","mod","__copyProps","to","from","except","desc","keys","key","__toESM","isNodeMode","import_jsbi_umd","exports","module","Y","U","Z","F","W","X","ee","te","ne","re","oe","ie","ae","se","ce","de","he","ue","le","TimeDuration","me","fe","ye","pe","ge","we","ve","be","De","Te","Me","Ee","Ie","Ce","Oe","$e","Ye","Re","Se","je","ke","Ne","xo","xe","Le","Pe","Ue","Be","Ze","Fe","He","ze","Ae","qe","We","_e","Je","Ge","Ke","Ve","Xe","Qe","et","sr","Bn","tt","nt","rt","ot","it","at","st","ct","ht","Ao","ut","lt","mt","ft","yt","pt","gt","wt","vt","bt","Dt","Tt","Mt","Ur","Et","Pr","Ct","xr","It","Ot","$t","Yt","Wo","Rt","St","kr","jt","jr","kt","Nt","xt","Lt","Ho","Pt","Ut","Bt","Zt","Ft","Ht","zt","At","qt","Wt","_t","pn","Nn","tn","on","zo","$n","mn","Jt","Gt","Kt","Vt","Xt","Qt","en","nn","rn","Zo","zn","Ln","an","wn","sn","zr","cn","Cn","$r","Kr","pr","dn","bn","kn","Un","Lr","hn","Tn","un","ln","En","Pn","Hr","_n","An","Fr","Wn","Eo","Hn","nr","qn","fn","yn","gn","Br","vn","Dn","Mn","In","On","Yn","Rn","Sn","jn","xn","mr","hr","Zn","Fn","lr","Vn","gr","fo","Or","jo","br","wr","Jn","Gn","Kn","Xn","fr","Qn","Mr","er","tr","rr","or","ir","Io","ar","_o","cr","dr","ur","yr","No","Jo","vr","Dr","Tr","Er","Ir","Cr","Yr","Rr","Gr","Sr","Nr","Zr","Ar","qr","Wr","_r","Jr","Vr","Xr","$o","Qr","Ro","eo","no","ro","Yo","oo","io","ao","so","co","ho","uo","lo","mo","yo","po","go","wo","vo","bo","Do","To","Mo","Bo","Co","Oo","So","ko","Lo","Po","Uo","Fo","qo","Go","Ko","Xo","Vo","Qo","ei","ti","OneObjectCache","ni","ri","HelperBase","HebrewHelper","IslamicBaseHelper","IslamicHelper","IslamicUmalquraHelper","IslamicTblaHelper","IslamicCivilHelper","IslamicRgsaHelper","IslamicCcHelper","PersianHelper","IndianHelper","oi","GregorianBaseHelperFixedEpoch","GregorianBaseHelper","SameMonthDayAsGregorianBaseHelper","ii","OrthodoxBaseHelperFixedEpoch","OrthodoxBaseHelper","EthioaaHelper","CopticHelper","EthiopicHelper","RocHelper","BuddhistHelper","GregoryHelper","JapaneseHelper","ChineseBaseHelper","ChineseHelper","DangiHelper","NonIsoCalendar","ai","si","ci","DateTimeFormatImpl","vi","gi","wi","pi","bi","Di","ui","mi","li","fi","hi","di","$i","Ci","Ii","Oi","yi","Mi","Ei","Ti","Yi","Ri","Si","ji","Instant","PlainDate","Ni","PlainDateTime","xi","Li","Duration$1","PlainMonthDay","Pi","Ui","Bi","PlainTime","PlainYearMonth","Zi","Fi","ZonedDateTime","zi","Ai","Hi","qi","_i","At$1","Jt$1","http","useSignal","_b","_c","_d","_f","_g","_h","_j","_k"],"mappings":";;;;;;AAAG,IAACA,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAEC,IAAIC,KAAE,CAAA,GAAGC,KAAE,IAAGC,KAAE,qEAAoEC,KAAE,MAAM;AAAQ,SAASC,GAAEnB,GAAEC,GAAE;AAAC,WAAQC,KAAKD,EAAE,CAAAD,EAAEE,CAAC,IAAED,EAAEC,CAAC;AAAE,SAAOF;AAAC;AAAC,SAASoB,GAAEpB,GAAE;AAAC,EAAAA,KAAGA,EAAE,cAAYA,EAAE,WAAW,YAAYA,CAAC;AAAC;AAAC,SAASqB,GAAEpB,GAAEC,GAAEC,GAAE;AAAC,MAAIC,GAAEC,GAAEC,GAAEC,IAAE,CAAA;AAAG,OAAID,KAAKJ,EAAE,CAAOI,KAAP,QAASF,IAAEF,EAAEI,CAAC,IAASA,KAAP,QAASD,IAAEH,EAAEI,CAAC,IAAEC,EAAED,CAAC,IAAEJ,EAAEI,CAAC;AAAE,MAAG,UAAU,SAAO,MAAIC,EAAE,WAAS,UAAU,SAAO,IAAEP,GAAE,KAAK,WAAU,CAAC,IAAEG,IAAe,OAAOF,KAAnB,cAA4BA,EAAE,gBAAR,KAAqB,MAAIK,KAAKL,EAAE,cAAsBM,EAAED,CAAC,iBAAIC,EAAED,CAAC,IAAEL,EAAE,aAAaK,CAAC;AAAG,SAAOgB,GAAErB,GAAEM,GAAEH,GAAEC,GAAE,IAAI;AAAC;AAAC,SAASiB,GAAEtB,GAAEG,GAAEC,GAAE,GAAEE,GAAE;AAAC,MAAIC,IAAE,EAAC,MAAKP,GAAE,OAAMG,GAAE,KAAIC,GAAE,KAAI,GAAE,KAAI,MAAK,IAAG,MAAK,KAAI,GAAE,KAAI,MAAK,KAAI,MAAK,aAAY,QAAO,KAAUE,KAAE,EAAEJ,IAAI,KAAI,IAAG,KAAI,EAAC;AAAE,SAAaI,KAAN,QAAeL,GAAE,SAAR,QAAeA,GAAE,MAAMM,CAAC,GAAEA;AAAC;AAAmC,SAASgB,GAAEvB,GAAE;AAAC,SAAOA,EAAE;AAAQ;AAAC,SAASwB,GAAExB,GAAEC,GAAE;AAAC,OAAK,QAAMD,GAAE,KAAK,UAAQC;AAAC;AAAC,SAASwB,GAAEzB,GAAEC,GAAE;AAAC,MAASA,KAAN,KAAQ,QAAOD,EAAE,KAAGyB,GAAEzB,EAAE,IAAGA,EAAE,MAAI,CAAC,IAAE;AAAK,WAAQE,GAAED,IAAED,EAAE,IAAI,QAAOC,IAAI,MAAUC,IAAEF,EAAE,IAAIC,CAAC,MAAhB,QAA0BC,EAAE,OAAR,KAAY,QAAOA,EAAE;AAAI,SAAkB,OAAOF,EAAE,QAArB,aAA0ByB,GAAEzB,CAAC,IAAE;AAAI;AAAC,SAAS0B,GAAE1B,GAAE;AAAC,MAAGA,EAAE,OAAKA,EAAE,KAAI;AAAC,QAAIE,IAAEF,EAAE,KAAIG,IAAED,EAAE,KAAIE,IAAE,IAAGC,IAAE,CAAA,GAAGC,IAAEa,GAAE,CAAA,GAAGjB,CAAC;AAAE,IAAAI,EAAE,MAAIJ,EAAE,MAAI,GAAED,GAAE,SAAOA,GAAE,MAAMK,CAAC,GAAEqB,GAAE3B,EAAE,KAAIM,GAAEJ,GAAEF,EAAE,KAAIA,EAAE,IAAI,cAAa,KAAGE,EAAE,MAAI,CAACC,CAAC,IAAE,MAAKC,GAAQD,KAAEsB,GAAEvB,CAAC,GAAI,CAAC,EAAE,KAAGA,EAAE,MAAKG,CAAC,GAAEC,EAAE,MAAIJ,EAAE,KAAII,EAAE,GAAG,IAAIA,EAAE,GAAG,IAAEA,GAAEsB,GAAExB,GAAEE,GAAED,CAAC,GAAEH,EAAE,MAAIA,EAAE,KAAG,MAAKI,EAAE,OAAKH,KAAG0B,GAAEvB,CAAC;AAAA,EAAC;AAAC;AAAC,SAASuB,GAAE7B,GAAE;AAAC,OAAUA,IAAEA,EAAE,OAAX,QAAsBA,EAAE,OAAR,KAAY,QAAOA,EAAE,MAAIA,EAAE,IAAI,OAAK,MAAKA,EAAE,IAAI,KAAK,SAASC,GAAE;AAAC,QAASA,KAAN,QAAeA,EAAE,OAAR,KAAY,QAAOD,EAAE,MAAIA,EAAE,IAAI,OAAKC,EAAE;AAAA,EAAG,CAAC,GAAE4B,GAAE7B,CAAC;AAAC;AAAC,SAAS8B,GAAE9B,GAAE;AAAC,GAAC,CAACA,EAAE,QAAMA,EAAE,MAAI,OAAKI,GAAE,KAAKJ,CAAC,KAAG,CAAC+B,GAAE,SAAO1B,MAAGJ,GAAE,wBAAsBI,KAAEJ,GAAE,sBAAoBK,IAAGyB,EAAC;AAAC;AAAC,SAASA,KAAG;AAAC,MAAG;AAAC,aAAQ/B,GAAEC,IAAE,GAAEG,GAAE,SAAQA,CAAAA,GAAE,SAAOH,KAAGG,GAAE,KAAKG,EAAC,GAAEP,IAAEI,GAAE,MAAK,GAAGH,IAAEG,GAAE,QAAOsB,GAAE1B,CAAC;AAAA,EAAC,UAAC;AAAQI,IAAAA,GAAE,SAAO2B,GAAE,MAAI;AAAA,EAAC;AAAC;AAAC,SAASC,GAAEhC,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,GAAE,GAAEE,GAAEC,GAAEC,GAAEC,GAAE;AAAC,MAAIC,GAAEC,GAAEC,GAAEC,GAAEmB,GAAEhB,GAAEC,GAAEC,IAAEhB,KAAGA,EAAE,OAAKa,IAAEI,IAAEnB,EAAE;AAAO,OAAIO,IAAE0B,GAAEhC,GAAED,GAAEkB,GAAEX,GAAEY,CAAC,GAAET,IAAE,GAAEA,IAAES,GAAET,IAAI,EAAOE,IAAEX,EAAE,IAAIS,CAAC,MAAhB,SAAqBC,IAAMC,EAAE,OAAN,MAAWM,EAAEN,EAAE,GAAG,KAAGE,IAAEF,EAAE,MAAIF,GAAEM,IAAEU,GAAE3B,GAAEa,GAAED,GAAER,GAAEC,GAAE,GAAEE,GAAEC,GAAEC,GAAEC,CAAC,GAAEI,IAAED,EAAE,KAAIA,EAAE,OAAKD,EAAE,OAAKC,EAAE,QAAMD,EAAE,OAAKuB,GAAEvB,EAAE,KAAI,MAAKC,CAAC,GAAEH,EAAE,KAAKG,EAAE,KAAIA,EAAE,OAAKC,GAAED,CAAC,IAASoB,KAAN,QAAenB,KAAN,SAAUmB,IAAEnB,KAAII,IAAE,CAAC,EAAE,IAAEL,EAAE,SAAOD,EAAE,QAAMC,EAAE,OAAKL,IAAE4B,GAAEvB,GAAEL,GAAER,GAAEkB,CAAC,GAAEA,KAAGN,EAAE,QAAMA,EAAE,MAAI,SAAmB,OAAOC,EAAE,QAArB,cAAoCI,MAAT,SAAWT,IAAES,IAAEH,MAAIN,IAAEM,EAAE,cAAaD,EAAE,OAAK;AAAI,SAAOX,EAAE,MAAI+B,GAAEzB;AAAC;AAAC,SAAS0B,GAAElC,GAAEC,GAAEC,GAAEC,GAAEC,GAAE;AAAC,MAAIC,GAAE,GAAEE,GAAEC,GAAEC,GAAEC,IAAER,EAAE,QAAOS,IAAED,GAAEE,IAAE;AAAE,OAAIZ,EAAE,MAAI,IAAI,MAAMI,CAAC,GAAEC,IAAE,GAAEA,IAAED,GAAEC,IAAI,EAAO,IAAEJ,EAAEI,CAAC,MAAZ,QAA2B,OAAO,KAAlB,aAAiC,OAAO,KAAnB,cAAgC,OAAO,KAAjB,YAA8B,OAAO,KAAjB,YAA8B,OAAO,KAAjB,YAAoB,EAAE,eAAa,SAAO,IAAEL,EAAE,IAAIK,CAAC,IAAEiB,GAAE,MAAK,GAAE,MAAK,MAAK,IAAI,IAAEJ,GAAE,CAAC,IAAE,IAAElB,EAAE,IAAIK,CAAC,IAAEiB,GAAEC,IAAE,EAAC,UAAS,EAAC,GAAE,MAAK,MAAK,IAAI,IAAW,EAAE,gBAAX,UAAwB,EAAE,MAAI,IAAE,IAAEvB,EAAE,IAAIK,CAAC,IAAEiB,GAAE,EAAE,MAAK,EAAE,OAAM,EAAE,KAAI,EAAE,MAAI,EAAE,MAAI,MAAK,EAAE,GAAG,IAAEtB,EAAE,IAAIK,CAAC,IAAE,GAAEG,IAAEH,IAAEO,GAAE,EAAE,KAAGZ,GAAE,EAAE,MAAIA,EAAE,MAAI,GAAEO,IAAE,OAAUE,IAAE,EAAE,MAAI4B,GAAE,GAAEnC,GAAEM,GAAEG,CAAC,MAAtB,OAA2BA,MAAKJ,IAAEL,EAAEO,CAAC,OAAKF,EAAE,OAAK,KAAUA,KAAN,QAAeA,EAAE,OAAR,QAAiBE,KAAJ,OAAQL,IAAEM,IAAEE,MAAIR,IAAEM,KAAGE,MAAiB,OAAO,EAAE,QAArB,eAA4B,EAAE,OAAK,MAAIH,KAAGD,MAAIC,KAAGD,IAAE,IAAEI,MAAIH,KAAGD,IAAE,IAAEI,OAAKH,IAAED,IAAEI,MAAIA,KAAI,EAAE,OAAK,OAAKZ,EAAE,IAAIK,CAAC,IAAE;AAAK,MAAGM,EAAE,MAAIN,IAAE,GAAEA,IAAEK,GAAEL,IAAI,EAAOE,IAAEL,EAAEG,CAAC,MAAZ,SAAoB,IAAEE,EAAE,QAAR,MAAeA,EAAE,OAAKJ,MAAIA,IAAEsB,GAAElB,CAAC,IAAG+B,GAAE/B,GAAEA,CAAC;AAAG,SAAOJ;AAAC;AAAC,SAASiC,GAAEpC,GAAEC,GAAEC,GAAEC,GAAE;AAAC,MAAIC,GAAEC;AAAE,MAAe,OAAOL,EAAE,QAArB,YAA0B;AAAC,SAAII,IAAEJ,EAAE,KAAIK,IAAE,GAAED,KAAGC,IAAED,EAAE,QAAOC,IAAI,CAAAD,EAAEC,CAAC,MAAID,EAAEC,CAAC,EAAE,KAAGL,GAAEC,IAAEmC,GAAEhC,EAAEC,CAAC,GAAEJ,GAAEC,GAAEC,CAAC;AAAG,WAAOF;AAAA,EAAC;AAAC,EAAAD,EAAE,OAAKC,MAAIE,MAAIF,KAAGD,EAAE,QAAM,CAACC,EAAE,eAAaA,IAAEwB,GAAEzB,CAAC,IAAGE,EAAE,aAAaF,EAAE,KAAIC,KAAG,IAAI,IAAGA,IAAED,EAAE;AAAK;AAAG,IAAAC,IAAEA,KAAGA,EAAE;AAAA,SAAwBA,KAAN,QAAYA,EAAE,YAAL;AAAe,SAAOA;AAAC;AAA6G,SAASoC,GAAErC,GAAEC,GAAEC,GAAEC,GAAE;AAAC,MAAIC,GAAEC,GAAE,GAAEE,IAAEP,EAAE,KAAIQ,IAAER,EAAE,MAAKS,IAAER,EAAEC,CAAC,GAAEQ,IAAQD,KAAN,SAAa,IAAEA,EAAE,QAAR;AAAa,MAAUA,MAAP,QAAgBF,KAAN,QAASG,KAAGH,KAAGE,EAAE,OAAKD,KAAGC,EAAE,KAAK,QAAOP;AAAE,MAAGC,KAAGO,IAAE,IAAE;AAAG,SAAIN,IAAEF,IAAE,GAAEG,IAAEH,IAAE,GAAEE,KAAG,KAAGC,IAAEJ,EAAE,SAAQ,MAAUQ,IAAER,EAAE,IAAEG,KAAG,IAAEA,MAAIC,GAAG,MAAzB,SAAiC,IAAEI,EAAE,QAAR,KAAcF,KAAGE,EAAE,OAAKD,KAAGC,EAAE,KAAK,QAAO;AAAA;AAAE,SAAM;AAAE;AAAC,SAAS8B,GAAEvC,GAAEC,GAAEC,GAAE;AAAC,EAAKD,EAAE,CAAC,KAAR,MAAUD,EAAE,YAAYC,GAAQC,KAAE,EAAI,IAAEF,EAAEC,CAAC,IAAQC,KAAN,OAAQ,KAAa,OAAOA,KAAjB,YAAoBe,GAAE,KAAKhB,CAAC,IAAEC,IAAEA,IAAE;AAAI;AAAC,SAASsC,GAAExC,GAAEC,GAAEC,GAAEC,GAAEC,GAAE;AAAC,MAAIC,GAAE;AAAE,EAAAL,EAAE,KAAYC,KAAT,QAAW,KAAa,OAAOC,KAAjB,SAAmB,CAAAF,EAAE,MAAM,UAAQE;AAAA,OAAM;AAAC,QAAa,OAAOC,KAAjB,aAAqBH,EAAE,MAAM,UAAQG,IAAE,KAAIA,EAAE,MAAIF,KAAKE,EAAE,CAAAD,KAAGD,KAAKC,KAAGqC,GAAEvC,EAAE,OAAMC,GAAE,EAAE;AAAE,QAAGC,EAAE,MAAID,KAAKC,EAAE,CAAAC,KAAGD,EAAED,CAAC,KAAGE,EAAEF,CAAC,KAAGsC,GAAEvC,EAAE,OAAMC,GAAEC,EAAED,CAAC,CAAC;AAAA,EAAC;AAAA,WAAcA,EAAE,CAAC,KAAR,OAAgBA,EAAE,CAAC,KAAR,IAAU,CAAAI,IAAEJ,MAAIA,IAAEA,EAAE,QAAQU,IAAE,IAAI,IAAG,IAAEV,EAAE,eAAcA,IAAE,KAAKD,KAAiBC,KAAd,gBAA8BA,KAAb,cAAe,EAAE,MAAM,CAAC,IAAEA,EAAE,MAAM,CAAC,GAAED,EAAE,MAAIA,EAAE,IAAE,CAAA,IAAIA,EAAE,EAAEC,IAAEI,CAAC,IAAEH,GAAEA,IAAEC,IAAED,EAAEQ,EAAC,IAAEP,EAAEO,EAAC,KAAGR,EAAEQ,EAAC,IAAEE,IAAEZ,EAAE,iBAAiBC,GAAEI,IAAES,KAAED,IAAER,CAAC,KAAGL,EAAE,oBAAoBC,GAAEI,IAAES,KAAED,IAAER,CAAC;AAAA,OAAM;AAAC,QAAiCD,KAA9B,6BAAgC,CAAAH,IAAEA,EAAE,QAAQ,eAAc,GAAG,EAAE,QAAQ,UAAS,GAAG;AAAA,aAAmBA,KAAT,WAAsBA,KAAV,YAAqBA,KAAR,UAAmBA,KAAR,UAAmBA,KAAR,UAAuBA,KAAZ,cAA2BA,KAAZ,cAA0BA,KAAX,aAAyBA,KAAX,aAAsBA,KAAR,UAAsBA,KAAX,aAAcA,KAAKD,EAAE,KAAG;AAAC,MAAAA,EAAEC,CAAC,IAAQC,KAAE;AAAK,YAAMF;AAAA,IAAC,QAAS;AAAA,IAAC;AAAC,IAAY,OAAOE,KAAnB,eAA6BA,KAAN,QAAcA,MAAL,MAAaD,EAAE,CAAC,KAAR,MAAUD,EAAE,gBAAgBC,CAAC,IAAED,EAAE,aAAaC,GAAaA,KAAX,aAAiBC,KAAH,IAAK,KAAGA,CAAC;AAAA,EAAE;AAAC;AAAC,SAASuC,GAAEzC,GAAE;AAAC,SAAO,SAASE,GAAE;AAAC,QAAG,KAAK,GAAE;AAAC,UAAIC,IAAE,KAAK,EAAED,EAAE,OAAKF,CAAC;AAAE,UAASE,EAAEO,EAAC,KAAT,KAAW,CAAAP,EAAEO,EAAC,IAAEG;AAAAA,eAAYV,EAAEO,EAAC,IAAEN,EAAEO,EAAC,EAAE;AAAO,aAAOP,EAAEF,GAAE,QAAMA,GAAE,MAAMC,CAAC,IAAEA,CAAC;AAAA,IAAC;AAAA,EAAC;AAAC;AAAC,SAASyB,GAAE3B,GAAEE,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,GAAE;AAAC,MAAIC,GAAE,GAAEE,GAAEC,GAAEmB,GAAElB,GAAEE,GAAEI,GAAEC,GAAEoB,GAAEjB,GAAEC,GAAEG,GAAEC,IAAEC,GAAEG,IAAEhC,EAAE;AAAK,MAAYA,EAAE,gBAAX,OAAuB,QAAO;AAAK,QAAIC,EAAE,QAAMM,IAAE,CAAC,EAAE,KAAGN,EAAE,MAAKG,IAAE,CAACE,IAAEN,EAAE,MAAIC,EAAE,GAAG,KAAIQ,IAAEV,GAAE,QAAMU,EAAET,CAAC;AAAE,EAAAF,EAAE,KAAe,OAAOkC,KAAnB,WAAqB,KAAG;AAAC,QAAGb,IAAEnB,EAAE,OAAMoB,IAAEY,EAAE,aAAWA,EAAE,UAAU,QAAOQ,KAAG/B,IAAEuB,EAAE,gBAAc9B,EAAEO,EAAE,GAAG,GAAEc,IAAEd,IAAE+B,IAAEA,EAAE,MAAM,QAAM/B,EAAE,KAAGP,GAAED,EAAE,MAAIc,KAAG,IAAEf,EAAE,MAAIC,EAAE,KAAK,KAAG,EAAE,OAAKmB,IAAEpB,EAAE,MAAI,IAAE,IAAIgC,EAAEb,GAAEI,CAAC,KAAGvB,EAAE,MAAI,IAAE,IAAIsB,GAAEH,GAAEI,CAAC,GAAE,EAAE,cAAYS,GAAE,EAAE,SAAOS,KAAGD,KAAGA,EAAE,IAAI,CAAC,GAAE,EAAE,UAAQ,EAAE,QAAM,CAAA,IAAI,EAAE,MAAItC,GAAES,IAAE,EAAE,MAAI,IAAG,EAAE,MAAI,CAAA,GAAG,EAAE,MAAI,CAAA,IAAIS,KAAS,EAAE,OAAR,SAAc,EAAE,MAAI,EAAE,QAAOA,KAASY,EAAE,4BAAR,SAAmC,EAAE,OAAK,EAAE,UAAQ,EAAE,MAAIf,GAAE,CAAA,GAAG,EAAE,GAAG,IAAGA,GAAE,EAAE,KAAIe,EAAE,yBAAyBb,GAAE,EAAE,GAAG,CAAC,IAAGP,IAAE,EAAE,OAAMmB,IAAE,EAAE,OAAM,EAAE,MAAI/B,GAAEW,EAAE,CAAAS,KAASY,EAAE,4BAAR,QAAwC,EAAE,sBAAR,QAA4B,EAAE,sBAAqBZ,KAAS,EAAE,qBAAR,QAA2B,EAAE,IAAI,KAAK,EAAE,iBAAiB;AAAA,SAAM;AAAC,UAAGA,KAASY,EAAE,4BAAR,QAAkCb,MAAIP,KAAS,EAAE,6BAAR,QAAmC,EAAE,0BAA0BO,GAAEI,CAAC,GAAEvB,EAAE,OAAKC,EAAE,OAAK,CAAC,EAAE,OAAW,EAAE,yBAAR,QAAoC,EAAE,sBAAsBkB,GAAE,EAAE,KAAII,CAAC,MAAtC,IAAwC;AAAC,QAAAvB,EAAE,OAAKC,EAAE,QAAM,EAAE,QAAMkB,GAAE,EAAE,QAAM,EAAE,KAAI,EAAE,MAAI,KAAInB,EAAE,MAAIC,EAAE,KAAID,EAAE,MAAIC,EAAE,KAAID,EAAE,IAAI,KAAK,SAASF,GAAE;AAAC,UAAAA,MAAIA,EAAE,KAAGE;AAAA,QAAE,CAAC,GAAEc,GAAE,KAAK,MAAM,EAAE,KAAI,EAAE,GAAG,GAAE,EAAE,MAAI,CAAA,GAAG,EAAE,IAAI,UAAQT,EAAE,KAAK,CAAC;AAAE,cAAMP;AAAA,MAAC;AAAC,MAAM,EAAE,uBAAR,QAA6B,EAAE,oBAAoBqB,GAAE,EAAE,KAAII,CAAC,GAAEH,KAAS,EAAE,sBAAR,QAA4B,EAAE,IAAI,KAAK,WAAU;AAAC,UAAE,mBAAmBR,GAAEmB,GAAElB,CAAC;AAAA,MAAC,CAAC;AAAA,IAAC;AAAC,QAAG,EAAE,UAAQU,GAAE,EAAE,QAAMJ,GAAE,EAAE,MAAIrB,GAAE,EAAE,MAAI,IAAG0B,IAAEzB,GAAE,KAAI4B,IAAE,GAAEP,EAAE,GAAE,QAAM,EAAE,KAAI,EAAE,MAAI,IAAGI,KAAGA,EAAExB,CAAC,GAAES,IAAE,EAAE,OAAO,EAAE,OAAM,EAAE,OAAM,EAAE,OAAO,GAAEK,GAAE,KAAK,MAAM,EAAE,KAAI,EAAE,GAAG,GAAE,EAAE,MAAI,CAAA;AAAA,QAAQ;AAAG,QAAE,MAAI,IAAGU,KAAGA,EAAExB,CAAC,GAAES,IAAE,EAAE,OAAO,EAAE,OAAM,EAAE,OAAM,EAAE,OAAO,GAAE,EAAE,QAAM,EAAE;AAAA,WAAU,EAAE,OAAK,EAAEkB,IAAE;AAAI,MAAE,QAAM,EAAE,KAAU,EAAE,mBAAR,SAA0BzB,IAAEe,GAAEA,GAAE,CAAA,GAAGf,CAAC,GAAE,EAAE,gBAAe,CAAE,IAAGkB,KAAG,CAACT,KAAS,EAAE,2BAAR,SAAkCE,IAAE,EAAE,wBAAwBD,GAAEmB,CAAC,IAAGH,KAAQnB,KAAN,QAASA,EAAE,SAAOY,MAASZ,EAAE,OAAR,OAAYiC,GAAEjC,EAAE,MAAM,QAAQ,IAAEA,GAAEH,IAAEwB,GAAEhC,GAAEkB,GAAEY,EAAC,IAAEA,KAAE,CAACA,EAAC,GAAE5B,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,CAAC,GAAE,EAAE,OAAKR,EAAE,KAAIA,EAAE,OAAK,MAAK,EAAE,IAAI,UAAQK,EAAE,KAAK,CAAC,GAAEU,MAAI,EAAE,MAAI,EAAE,KAAG;AAAA,EAAK,SAAOjB,GAAE;AAAC,QAAGE,EAAE,MAAI,MAAKO,KAASH,KAAN,KAAQ,KAAGN,EAAE,MAAK;AAAC,WAAIE,EAAE,OAAKO,IAAE,MAAI,KAAID,KAAMA,EAAE,YAAL,KAAeA,EAAE,cAAa,CAAAA,IAAEA,EAAE;AAAY,MAAAF,EAAEA,EAAE,QAAQE,CAAC,CAAC,IAAE,MAAKN,EAAE,MAAIM;AAAA,IAAC,OAAK;AAAC,WAAIuB,IAAEzB,EAAE,QAAOyB,MAAKX,CAAAA,GAAEd,EAAEyB,CAAC,CAAC;AAAEc,MAAAA,GAAE3C,CAAC;AAAA,IAAC;AAAA,QAAM,CAAAA,EAAE,MAAIC,EAAE,KAAID,EAAE,MAAIC,EAAE,KAAIH,EAAE,QAAM6C,GAAE3C,CAAC;AAAED,IAAAA,GAAE,IAAID,GAAEE,GAAEC,CAAC;AAAA,EAAC;AAAA,MAAM,CAAMG,KAAN,QAASJ,EAAE,OAAKC,EAAE,OAAKD,EAAE,MAAIC,EAAE,KAAID,EAAE,MAAIC,EAAE,OAAKK,IAAEN,EAAE,MAAI4C,GAAE3C,EAAE,KAAID,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,GAAEE,GAAEC,CAAC;AAAE,UAAOC,IAAEV,GAAE,WAASU,EAAET,CAAC,GAAE,MAAIA,EAAE,MAAI,SAAOM;AAAC;AAAC,SAASqC,GAAE7C,GAAE;AAAC,EAAAA,MAAIA,EAAE,QAAMA,EAAE,IAAI,MAAI,KAAIA,EAAE,OAAKA,EAAE,IAAI,KAAK6C,EAAC;AAAE;AAAC,SAASjB,GAAE5B,GAAEE,GAAEC,GAAE;AAAC,WAAQC,IAAE,GAAEA,IAAED,EAAE,QAAOC,IAAI+B,CAAAA,GAAEhC,EAAEC,CAAC,GAAED,EAAE,EAAEC,CAAC,GAAED,EAAE,EAAEC,CAAC,CAAC;AAAEH,EAAAA,GAAE,OAAKA,GAAE,IAAIC,GAAEF,CAAC,GAAEA,EAAE,KAAK,SAASE,GAAE;AAAC,QAAG;AAAC,MAAAF,IAAEE,EAAE,KAAIA,EAAE,MAAI,CAAA,GAAGF,EAAE,KAAK,SAASA,GAAE;AAAC,QAAAA,EAAE,KAAKE,CAAC;AAAA,MAAC,CAAC;AAAA,IAAC,SAAOF,GAAE;AAACC,MAAAA,GAAE,IAAID,GAAEE,EAAE,GAAG;AAAA,IAAC;AAAA,EAAC,CAAC;AAAC;AAAC,SAAS0C,GAAE5C,GAAE;AAAC,SAAgB,OAAOA,KAAjB,YAA0BA,KAAN,QAASA,EAAE,MAAI,IAAEA,IAAEkB,GAAElB,CAAC,IAAEA,EAAE,IAAI4C,EAAC,IAAW5C,EAAE,gBAAX,SAAuB,OAAKmB,GAAE,IAAGnB,CAAC;AAAC;AAAC,SAAS8C,GAAE5C,GAAEC,GAAEC,GAAE,GAAEE,GAAEC,GAAEC,GAAEC,GAAEC,GAAE;AAAC,MAAIC,GAAEC,GAAEC,GAAE,GAAEoB,GAAEjB,GAAEC,GAAEE,IAAEf,EAAE,SAAOW,IAAEM,IAAElB,EAAE,OAAMmB,IAAEnB,EAAE;AAAK,MAAUmB,KAAP,QAAShB,IAAE,+BAAqCgB,KAAR,SAAUhB,IAAE,uCAAqCA,MAAIA,IAAE,iCAAsCC,KAAN;AAAQ,SAAII,IAAE,GAAEA,IAAEJ,EAAE,QAAOI,IAAI,MAAIsB,IAAE1B,EAAEI,CAAC,MAAI,kBAAiBsB,KAAG,CAAC,CAACX,MAAIA,IAAEW,EAAE,aAAWX,IAAKW,EAAE,YAAL,IAAe;AAAC,MAAA/B,IAAE+B,GAAE1B,EAAEI,CAAC,IAAE;AAAK;AAAA,IAAK;AAAA;AAAC,MAAST,KAAN,MAAQ;AAAC,QAASoB,KAAN,KAAQ,QAAO,SAAS,eAAeD,CAAC;AAAE,IAAAnB,IAAE,SAAS,gBAAgBI,GAAEgB,GAAED,EAAE,MAAIA,CAAC,GAAEZ,MAAIR,GAAE,OAAKA,GAAE,IAAIE,GAAEI,CAAC,GAAEE,IAAE,KAAIF,IAAE;AAAA,EAAI;AAAC,MAASe,KAAN,KAAQ,CAAAH,MAAIE,KAAGZ,KAAGP,EAAE,QAAMmB,MAAInB,EAAE,OAAKmB;AAAA,OAAO;AAAC,QAAGd,IAAce,KAAZ,cAAqBD,EAAE,gBAAR,OAAqB,OAAKd,KAAGP,GAAE,KAAKE,EAAE,UAAU,GAAE,CAACO,KAASF,KAAN,KAAQ,MAAIY,IAAE,IAAGR,IAAE,GAAEA,IAAET,EAAE,WAAW,QAAOS,IAAI,CAAAQ,GAAGc,IAAE/B,EAAE,WAAWS,CAAC,GAAG,IAAI,IAAEsB,EAAE;AAAM,SAAItB,KAAKQ,EAAE,CAAAc,IAAEd,EAAER,CAAC,GAA6BA,KAA3B,4BAA6BE,IAAEoB,IAActB,KAAZ,cAAeA,KAAKU,KAAYV,KAAT,WAAY,kBAAiBU,KAAcV,KAAX,aAAc,oBAAmBU,KAAGmB,GAAEtC,GAAES,GAAE,MAAKsB,GAAE3B,CAAC;AAAE,SAAIK,KAAKU,EAAE,CAAAY,IAAEZ,EAAEV,CAAC,GAAcA,KAAZ,aAAc,IAAEsB,IAA6BtB,KAA3B,4BAA6BC,IAAEqB,IAAWtB,KAAT,UAAWK,IAAEiB,IAAatB,KAAX,YAAaM,IAAEgB,IAAExB,KAAe,OAAOwB,KAAnB,cAAsBd,EAAER,CAAC,MAAIsB,KAAGO,GAAEtC,GAAES,GAAEsB,GAAEd,EAAER,CAAC,GAAEL,CAAC;AAAE,QAAGM,EAAE,CAAAH,KAAGI,MAAID,EAAE,UAAQC,EAAE,UAAQD,EAAE,UAAQV,EAAE,eAAaA,EAAE,YAAUU,EAAE,SAAQT,EAAE,MAAI,CAAA;AAAA,aAAWU,MAAIX,EAAE,YAAU,KAAI8B,GAAc7B,EAAE,QAAd,aAAmBD,EAAE,UAAQA,GAAEgB,GAAE,CAAC,IAAE,IAAE,CAAC,CAAC,GAAEf,GAAEC,GAAE,GAAmBkB,KAAjB,kBAAmB,iCAA+BhB,GAAEC,GAAEC,GAAED,IAAEA,EAAE,CAAC,IAAEH,EAAE,OAAKqB,GAAErB,GAAE,CAAC,GAAEK,GAAEC,CAAC,GAAQH,KAAN,KAAQ,MAAII,IAAEJ,EAAE,QAAOI,MAAKS,CAAAA,GAAEb,EAAEI,CAAC,CAAC;AAAE,IAAAF,KAAea,KAAZ,eAAgBX,IAAE,SAAoBW,KAAZ,cAAqBN,KAAN,OAAQd,EAAE,gBAAgB,OAAO,IAAQc,KAAN,SAAUA,MAAId,EAAES,CAAC,KAAeW,KAAZ,cAAe,CAACN,KAAaM,KAAV,YAAaN,KAAGG,EAAER,CAAC,MAAI6B,GAAEtC,GAAES,GAAEK,GAAEG,EAAER,CAAC,GAAEL,CAAC,GAAEK,IAAE,WAAgBM,KAAN,QAASA,KAAGf,EAAES,CAAC,KAAG6B,GAAEtC,GAAES,GAAEM,GAAEE,EAAER,CAAC,GAAEL,CAAC;AAAA,EAAE;AAAC,SAAOJ;AAAC;AAAC,SAASiC,GAAEnC,GAAEE,GAAEC,GAAE;AAAC,MAAG;AAAC,QAAe,OAAOH,KAAnB,YAAqB;AAAC,UAAII,IAAc,OAAOJ,EAAE,OAArB;AAAyB,MAAAI,KAAGJ,EAAE,IAAG,GAAGI,KAASF,KAAN,SAAUF,EAAE,MAAIA,EAAEE,CAAC;AAAA,IAAE,MAAM,CAAAF,EAAE,UAAQE;AAAA,EAAC,SAAOF,GAAE;AAACC,IAAAA,GAAE,IAAID,GAAEG,CAAC;AAAA,EAAC;AAAC;AAAC,SAASmC,GAAEtC,GAAEE,GAAEC,GAAE;AAAC,MAAIC,GAAEC;AAAE,MAAGJ,GAAE,WAASA,GAAE,QAAQD,CAAC,IAAGI,IAAEJ,EAAE,SAAOI,EAAE,WAASA,EAAE,WAASJ,EAAE,OAAKmC,GAAE/B,GAAE,MAAKF,CAAC,KAAUE,IAAEJ,EAAE,QAAX,MAAgB;AAAC,QAAGI,EAAE,qBAAqB,KAAG;AAAC,MAAAA,EAAE,qBAAoB;AAAA,IAAE,SAAOJ,GAAE;AAACC,MAAAA,GAAE,IAAID,GAAEE,CAAC;AAAA,IAAC;AAAC,IAAAE,EAAE,OAAKA,EAAE,MAAI;AAAA,EAAI;AAAC,MAAGA,IAAEJ,EAAE,IAAI,MAAIK,IAAE,GAAEA,IAAED,EAAE,QAAOC,IAAI,CAAAD,EAAEC,CAAC,KAAGiC,GAAElC,EAAEC,CAAC,GAAEH,GAAEC,KAAe,OAAOH,EAAE,QAArB,UAAyB;AAAE,EAAAG,KAAGiB,GAAEpB,EAAE,GAAG,GAAEA,EAAE,MAAIA,EAAE,KAAGA,EAAE,MAAI;AAAM;AAAC,SAAS2C,GAAE3C,GAAEC,GAAEC,GAAE;AAAC,SAAO,KAAK,YAAYF,GAAEE,CAAC;AAAC;AAAC,SAAS6C,GAAE7C,GAAEC,GAAEC,GAAE;AAAC,MAAI,GAAEE,GAAEC,GAAEC;AAAE,EAAAL,KAAG,aAAWA,IAAE,SAAS,kBAAiBF,GAAE,MAAIA,GAAE,GAAGC,GAAEC,CAAC,GAAEG,KAAG,IAAE,MAAsB,OAAeH,EAAE,KAAII,IAAE,IAAGC,IAAE,CAAA,GAAGmB,GAAExB,GAAED,IAAUC,EAAG,MAAIkB,GAAEE,IAAE,MAAK,CAACrB,CAAC,CAAC,GAAEI,KAAGS,IAAEA,IAAEZ,EAAE,cAAuBG,IAAE,OAAKH,EAAE,aAAWH,GAAE,KAAKG,EAAE,UAAU,IAAE,MAAKI,GAAUD,IAAEA,EAAE,MAAIH,EAAE,YAAW,GAAEK,CAAC,GAAEoB,GAAErB,GAAEL,GAAEM,CAAC;AAAC;AAAy1BR,KAAEgB,GAAE,OAAMf,KAAE,EAAC,KAAI,SAASD,GAAEC,GAAEC,GAAEC,GAAE;AAAC,WAAQC,GAAEC,GAAE,GAAEJ,IAAEA,EAAE,KAAI,MAAIG,IAAEH,EAAE,QAAM,CAACG,EAAE,GAAG,KAAG;AAAC,SAAIC,IAAED,EAAE,gBAAoBC,EAAE,4BAAR,SAAmCD,EAAE,SAASC,EAAE,yBAAyBL,CAAC,CAAC,GAAE,IAAEI,EAAE,MAAWA,EAAE,qBAAR,SAA4BA,EAAE,kBAAkBJ,GAAEG,KAAG,CAAA,CAAE,GAAE,IAAEC,EAAE,MAAK,EAAE,QAAOA,EAAE,MAAIA;AAAA,EAAC,SAAOH,GAAE;AAAC,IAAAD,IAAEC;AAAA,EAAC;AAAC,QAAMD;AAAC,EAAC,GAAEE,KAAE,GAAEC,KAAE,SAASH,GAAE;AAAC,SAAaA,KAAN,QAAkBA,EAAE,gBAAX;AAAsB,GAAEwB,GAAE,UAAU,WAAS,SAASxB,GAAEC,GAAE;AAAC,MAAIC;AAAE,EAAAA,IAAQ,KAAK,OAAX,QAAgB,KAAK,OAAK,KAAK,QAAM,KAAK,MAAI,KAAK,MAAIiB,GAAE,CAAA,GAAG,KAAK,KAAK,GAAc,OAAOnB,KAAnB,eAAuBA,IAAEA,EAAEmB,GAAE,CAAA,GAAGjB,CAAC,GAAE,KAAK,KAAK,IAAGF,KAAGmB,GAAEjB,GAAEF,CAAC,GAAQA,KAAN,QAAS,KAAK,QAAMC,KAAG,KAAK,IAAI,KAAKA,CAAC,GAAE6B,GAAE,IAAI;AAAE,GAAEN,GAAE,UAAU,cAAY,SAASxB,GAAE;AAAC,OAAK,QAAM,KAAK,MAAI,IAAGA,KAAG,KAAK,IAAI,KAAKA,CAAC,GAAE8B,GAAE,IAAI;AAAE,GAAEN,GAAE,UAAU,SAAOD,IAAEnB,KAAE,CAAA,GAAGE,KAAc,OAAO,WAAnB,aAA2B,QAAQ,UAAU,KAAK,KAAK,QAAQ,QAAO,CAAE,IAAE,YAAWC,KAAE,SAASP,GAAEC,GAAE;AAAC,SAAOD,EAAE,IAAI,MAAIC,EAAE,IAAI;AAAG,GAAE8B,GAAE,MAAI,GAAEvB,KAAE,KAAK,OAAM,EAAG,SAAS,CAAC,GAAEC,KAAE,QAAMD,IAAEE,KAAE,QAAMF,IAAEG,KAAE,+BAA8BC,KAAE,GAAEC,KAAE4B,GAAE,EAAE,GAAE3B,KAAE2B,GAAE,EAAE;ACAxoW;AAKA,IAAIO,KAAY;AAAA,EACf,MAAM;AAAA,EACN,QAAQ;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,aAAa;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,UAAU;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,eAAe;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,aAAa;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,UAAU;AAAA,IACT,IAAI;AAAA,IACJ,IAAI;AAAA,EACN;AAAA,EACC,SAAS;AAAA,IACR,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,UAAU;AAAA,IACV,SAAS;AAAA,EACX;AACA,GAIIC,KAAY;AAAA,EACf,MAAM;AAAA,EACN,QAAQ;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,aAAa;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,UAAU;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,eAAe;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,aAAa;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC,UAAU;AAAA,IACT,IAAI;AAAA,IACJ,IAAI;AAAA,EACN;AAAA,EACC,SAAS;AAAA,IACR,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,UAAU;AAAA,IACV,SAAS;AAAA,EACX;AACA,OAIIC,MAAgBC,KAAA,MAAoB;AAAA,EAWvC,cAAc;AATd,IAAAC,EAAA,iBAA0B,oBAAI,IAAG;AACjC,IAAAA,EAAA,uBAAgB;AASf,SAAK,QAAQ,IAAI,MAAMJ,EAAS,GAChC,KAAK,QAAQ,IAAI,MAAMC,EAAS;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAPA,OAAO,cAAc;AACpB,WAAKE,GAAc,aAAUA,GAAc,WAAW,IAAIA,GAAa,IAChEA,GAAc;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAQA,UAAUE,GAAQC,GAAM;AACvB,IAAIA,KAAM,KAAK,QAAQ,IAAID,EAAO,YAAW,GAAIC,CAAI,GACrD,KAAK,gBAAgBD,EAAO,YAAW;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA,EAIA,UAAUA,GAAQ;AACjB,UAAME,KAAUF,KAAU,KAAK,eAAe,YAAW,GACnDG,IAAS,KAAK,QAAQ,IAAID,CAAM;AACtC,WAAKC,KAAe,KAAK,QAAQ,IAAI,IAAI,KAAKR;AAAA,EAE/C;AAAA;AAAA;AAAA;AAAA,EAIA,cAAc;AACb,WAAO,MAAM,KAAK,KAAK,QAAQ,KAAI,CAAE;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA,EAIA,mBAAmB;AAClB,WAAO,KAAK;AAAA,EACb;AAAA;AAAA;AAAA;AAAA,EAIA,YAAYS,GAAS;AACpB,WAAO,QAAQA,CAAO,EAAE,QAAQ,CAAC,CAACC,GAAMJ,CAAI,MAAM;AACjD,WAAK,QAAQ,IAAII,EAAK,YAAW,GAAIJ,CAAI;AAAA,IAC1C,CAAC;AAAA,EACF;AACD,GAlDCF,EADmBD,IACZ,aADYA,KAsDhBQ,KAAgB;AAIpB,SAASC,KAAc;AACtB,MAAID,GAAe,QAAOA;AAC1B,QAAME,IAAiB,WAAW;AAClC,MAAI,CAACA,EAAgB,OAAM,IAAI,MAAM,mFAAmF;AACxH,SAAAF,KAAgBE,GACTA;AACR;AAIA,IAAIC,IAAkB,MAAM;AAAA;AAAA;AAAA;AAAA,EAI3B,OAAO,qBAAqBC,GAAO;AAClC,UAAMC,IAAWJ,GAAW;AAC5B,WAAI,KAAK,gBAAgBG,CAAK,IAAUA,IACpC,KAAK,gBAAgBA,CAAK,IAAUA,EAAM,gBAAe,IACzD,KAAK,YAAYA,CAAK,IAAUA,EAAM,gBAAgB;AAAA,MACzD,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,IAChB,CAAG,IACG,KAAK,YAAYA,CAAK,IAAUC,EAAS,IAAI,iBAAgB,EAAG,KAAKD,CAAK,IAC1EA,MAAU,QAAQ,OAAOA,KAAU,YAAY,aAAaA,KAAS,OAAOA,EAAM,WAAY,aAAmB,KAAK,SAASA,CAAK,IACpI,OAAOA,KAAU,WAAiB,KAAK,SAASA,CAAK,IACrD,OAAOA,KAAU,WAAiB,KAAK,eAAeA,CAAK,IAC3D,OAAOA,KAAU,YAAYA,MAAU,OAAa,KAAK,WAAWA,CAAK,IACtEC,EAAS,IAAI,iBAAgB;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,SAASC,GAAM;AACrB,UAAMD,IAAWJ,GAAW,GACtB,CAACM,GAAUC,CAAQ,IAAIF,EAAK,YAAW,EAAG,MAAM,GAAG;AACzD,WAAOD,EAAS,cAAc,KAAKE,IAAW,MAAMC,EAAS,MAAM,GAAG,EAAE,CAAC;AAAA,EAC1E;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,SAASC,GAAW;AAC1B,WAAO,KAAK,SAAS,IAAI,KAAKA,CAAS,CAAC;AAAA,EACzC;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,eAAeC,GAAK;AAC1B,UAAML,IAAWJ,GAAW;AAC5B,QAAI;AACH,UAAIS,EAAI,SAAS,GAAG,KAAK,eAAe,KAAKA,CAAG,GAAG;AAClD,cAAMC,IAAaD,EAAI,QAAQ,KAAK,GAAG;AACvC,eAAOL,EAAS,cAAc,KAAKM,CAAU;AAAA,MAC9C;AACA,aAAON,EAAS,UAAU,KAAKK,CAAG,EAAE,gBAAgB,EAAE,MAAM,GAAG;AAAA,IAChE,QAAQ;AACP,aAAOL,EAAS,IAAI,iBAAgB;AAAA,IACrC;AAAA,EACD;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,WAAWO,GAAK;AACtB,UAAMP,IAAWJ,GAAW,GACtBY,IAAOD,EAAI,QAAQP,EAAS,IAAI,aAAY,EAAG,MAC/CS,IAAQF,EAAI,SAAS,GACrBG,IAAMH,EAAI,OAAO,GACjBI,IAAOJ,EAAI,QAAQ,GACnBK,IAASL,EAAI,UAAU,GACvBM,IAASN,EAAI,UAAU,GACvBO,IAAcP,EAAI,eAAe;AACvC,WAAOP,EAAS,cAAc,KAAK;AAAA,MAClC,MAAM,KAAK,gBAAgBQ,CAAI;AAAA,MAC/B,OAAO,KAAK,gBAAgBC,CAAK;AAAA,MACjC,KAAK,KAAK,gBAAgBC,CAAG;AAAA,MAC7B,MAAM,KAAK,gBAAgBC,CAAI;AAAA,MAC/B,QAAQ,KAAK,gBAAgBC,CAAM;AAAA,MACnC,QAAQ,KAAK,gBAAgBC,CAAM;AAAA,MACnC,aAAa,KAAK,gBAAgBC,CAAW;AAAA,IAChD,CAAG;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,OAAOC,GAAU;AACvB,UAAMC,IAAU,KAAK,gBAAgBD,CAAQ;AAC7C,WAAO,IAAI,KAAKC,EAAQ,UAAU;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,OAAOD,GAAU;AACvB,UAAMC,IAAU,KAAK,gBAAgBD,CAAQ;AAC7C,WAAO,KAAK,IAAIC,EAAQ,MAAMA,EAAQ,QAAQ,GAAGA,EAAQ,KAAKA,EAAQ,MAAMA,EAAQ,QAAQA,EAAQ,QAAQA,EAAQ,WAAW;AAAA,EAChI;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,YAAYD,GAAU;AAC5B,WAAO,KAAK,gBAAgBA,CAAQ,EAAE,SAAQ,IAAK;AAAA,EACpD;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,gBAAgBA,GAAU;AAChC,WAAI,KAAK,gBAAgBA,CAAQ,IAAUA,IACpCA,EAAS,gBAAe;AAAA,EAChC;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,gBAAgBR,GAAK;AAC3B,WAAOA,MAAQ,QAAQ,OAAOA,KAAQ,YAAY,UAAUA,KAAO,WAAWA,KAAO,SAASA,KAAO,UAAUA;AAAA,EAChH;AAAA,EACA,OAAO,gBAAgBA,GAAK;AAC3B,WAAOA,MAAQ,QAAQ,OAAOA,KAAQ,YAAY,cAAcA;AAAA,EACjE;AAAA,EACA,OAAO,YAAYA,GAAK;AACvB,WAAOA,MAAQ,QAAQ,OAAOA,KAAQ,YAAY,UAAUA,KAAO,WAAWA,KAAO,SAASA,KAAO,EAAE,UAAUA,MAAQ,qBAAqBA;AAAA,EAC/I;AAAA,EACA,OAAO,YAAYA,GAAK;AACvB,WAAOA,MAAQ,QAAQ,OAAOA,KAAQ,YAAY,UAAUA,KAAO,EAAE,UAAUA;AAAA,EAChF;AAAA,EACA,OAAO,gBAAgBU,GAAO;AAC7B,UAAMC,IAAM,OAAOD,CAAK;AACxB,QAAI,CAAC,OAAO,SAASC,CAAG,EAAG,OAAM,IAAI,MAAM,gDAAgDD,CAAK,EAAE;AAClG,WAAO,KAAK,MAAMC,CAAG;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,sBAAsBC,GAAI;AAChC,eAAWC,KAAS;AAAA,MACnB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK;AACF,YAAMH,IAAQE,EAAGC,CAAK;AACtB,UAAI,OAAOH,KAAU,YAAY,CAAC,OAAO,SAASA,CAAK,KAAK,CAAC,OAAO,UAAUA,CAAK;AAClF,cAAI,OAAO,UAAY,OAAe,OAAO,QAAQ,SAAU,cAAY,QAAQ,MAAM,yDAAyDG,GAAOH,GAAOE,CAAE,GAC5J,IAAI,MAAM,+CAA+CC,CAAK,SAASH,CAAK,EAAE;AAAA,IAEtF;AAAA,EACD;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,MAAM;AACZ,WAAOrB,GAAW,EAAG,IAAI,iBAAgB;AAAA,EAC1C;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,cAAcyB,GAAU;AAC9B,WAAOzB,GAAW,EAAG,IAAI,iBAAiByB,CAAQ;AAAA,EACnD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAO,QAAQC,GAAKC,GAAK;AACxB,UAAMvB,IAAWJ,GAAW;AAG5B,QAFA,KAAK,sBAAsB0B,CAAG,GAC9B,KAAK,sBAAsBC,CAAG,GAC1BvB,EAAS,iBAAiB,OAAOA,EAAS,cAAc,WAAY,WAAY,QAAOA,EAAS,cAAc,QAAQsB,GAAKC,CAAG;AAClI,UAAMC,IAAOF,EAAI,SAAQ,GACnBG,IAAOF,EAAI,SAAQ;AACzB,WAAIC,IAAOC,IAAa,KACpBD,IAAOC,IAAa,IACjB;AAAA,EACR;AACD,GAMIC,KAAgB,MAAM;AAAA,EAEzB,cAAc;AADd,IAAAtC,EAAA;AAEC,SAAK,gBAAgBF,GAAc,YAAW;AAAA,EAC/C;AAAA;AAAA;AAAA;AAAA,EAIA,OAAOe,GAAM0B,GAAStC,GAAQ;AAC7B,UAAMuC,IAAa,KAAK,cAAc,UAAUvC,CAAM,GAChDwC,IAAe,CAAA;AACrB,QAAIC,IAAiBH,EAAQ,QAAQ,iBAAiB,CAACI,GAAQC,OAC9DH,EAAa,KAAKG,CAAO,GAClB,IAAIH,EAAa,SAAS,CAAC,IAClC;AACD,IAAAC,IAAiBA,EAAe,QAAQ,cAAc,CAACC,GAAQC,OAC9DH,EAAa,KAAKG,CAAO,GAClB,IAAIH,EAAa,SAAS,CAAC,IAClC;AACD,QAAIrC,IAASsC,EAAe,QAAQ,oEAAoE,CAACG,MAAU;AAClH,cAAQA,GAAK;AAAA,QACZ,KAAK;AAAQ,iBAAO,OAAOhC,EAAK,IAAI,EAAE,SAAS,GAAG,GAAG;AAAA,QACrD,KAAK;AAAM,iBAAO,OAAOA,EAAK,IAAI,EAAE,MAAM,EAAE;AAAA,QAC5C,KAAK;AAAK,iBAAO,OAAOA,EAAK,IAAI;AAAA,QACjC,KAAK;AAAQ,iBAAO2B,EAAW,OAAO3B,EAAK,QAAQ,CAAC;AAAA,QACpD,KAAK;AAAO,iBAAO2B,EAAW,YAAY3B,EAAK,QAAQ,CAAC;AAAA,QACxD,KAAK;AAAM,iBAAO,OAAOA,EAAK,KAAK,EAAE,SAAS,GAAG,GAAG;AAAA,QACpD,KAAK;AAAK,iBAAO,OAAOA,EAAK,KAAK;AAAA,QAClC,KAAK;AAAM,iBAAO,OAAOA,EAAK,GAAG,EAAE,SAAS,GAAG,GAAG;AAAA,QAClD,KAAK;AAAK,iBAAO,OAAOA,EAAK,GAAG;AAAA,QAChC,KAAK;AAAQ,iBAAO2B,EAAW,SAAS3B,EAAK,YAAY,CAAC;AAAA,QAC1D,KAAK;AAAO,iBAAO2B,EAAW,cAAc3B,EAAK,YAAY,CAAC;AAAA,QAC9D,KAAK;AAAM,iBAAO2B,EAAW,YAAY3B,EAAK,YAAY,CAAC;AAAA,QAC3D,KAAK;AAAK,iBAAO,OAAOA,EAAK,SAAS;AAAA,QACtC,KAAK;AAAM,iBAAO,OAAOA,EAAK,IAAI,EAAE,SAAS,GAAG,GAAG;AAAA,QACnD,KAAK;AAAK,iBAAO,OAAOA,EAAK,IAAI;AAAA,QACjC,KAAK;AAAM,iBAAO,OAAOA,EAAK,OAAO,MAAM,EAAE,EAAE,SAAS,GAAG,GAAG;AAAA,QAC9D,KAAK;AAAK,iBAAO,OAAOA,EAAK,OAAO,MAAM,EAAE;AAAA,QAC5C,KAAK;AAAM,iBAAO,OAAOA,EAAK,MAAM,EAAE,SAAS,GAAG,GAAG;AAAA,QACrD,KAAK;AAAK,iBAAO,OAAOA,EAAK,MAAM;AAAA,QACnC,KAAK;AAAM,iBAAO,OAAOA,EAAK,MAAM,EAAE,SAAS,GAAG,GAAG;AAAA,QACrD,KAAK;AAAK,iBAAO,OAAOA,EAAK,MAAM;AAAA,QACnC,KAAK;AAAO,iBAAO,OAAOA,EAAK,WAAW,EAAE,SAAS,GAAG,GAAG;AAAA,QAC3D,KAAK;AAAA,QACL,KAAK;AACJ,gBAAMiC,IAAWN,EAAW,YAAY;AAAA,YACvC,IAAI;AAAA,YACJ,IAAI;AAAA,UACV,GACWX,IAAQhB,EAAK,QAAQ,KAAKiC,EAAS,KAAKA,EAAS;AACvD,iBAAOD,MAAU,MAAMhB,EAAM,YAAW,IAAKA,EAAM,YAAW;AAAA,QAC/D;AAAS,iBAAOgB;AAAA,MACpB;AAAA,IACE,CAAC;AACD,WAAAJ,EAAa,QAAQ,CAACG,GAASG,MAAU;AACxC,MAAA3C,IAASA,EAAO,QAAQ,IAAI2C,CAAK,KAAKH,CAAO;AAAA,IAC9C,CAAC,GACMxC;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAIA,UAAU4C,GAAQ;AACjB,UAAMC,IAAU;AAAA,MACf,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,MACT,SAAS;AAAA,MACT,KAAK;AAAA,IACR;AACE,WAAOA,EAAQD,CAAM,KAAKC,EAAQ;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA,EAIA,aAAapC,GAAMmC,GAAQ/C,GAAQ;AAClC,UAAMsC,IAAU,KAAK,UAAUS,CAAM;AACrC,WAAO,KAAK,OAAOnC,GAAM0B,GAAStC,CAAM;AAAA,EACzC;AACD,GAWIiD,KAAuB;AAAA,EAC1B,IAAI;AAAA,IACH,MAAM,CAAC,QAAQ,OAAO;AAAA,IACtB,OAAO,CAAC,SAAS,QAAQ;AAAA,IACzB,MAAM,CAAC,QAAQ,OAAO;AAAA,IACtB,KAAK,CAAC,OAAO,MAAM;AAAA,IACnB,MAAM,CAAC,QAAQ,OAAO;AAAA,IACtB,QAAQ,CAAC,UAAU,SAAS;AAAA,IAC5B,QAAQ,CAAC,UAAU,SAAS;AAAA,IAC5B,aAAa,CAAC,eAAe,cAAc;AAAA,EAC7C;AAAA,EACC,IAAI;AAAA,IACH,MAAM,CAAC,OAAO,MAAM;AAAA,IACpB,OAAO,CAAC,OAAO,OAAO;AAAA,IACtB,MAAM,CAAC,UAAU,SAAS;AAAA,IAC1B,KAAK,CAAC,OAAO,MAAM;AAAA,IACnB,MAAM,CAAC,QAAQ,OAAO;AAAA,IACtB,QAAQ,CAAC,UAAU,SAAS;AAAA,IAC5B,QAAQ,CAAC,WAAW,UAAU;AAAA,IAC9B,aAAa,CAAC,eAAe,cAAc;AAAA,EAC7C;AAAA,EACC,IAAI;AAAA,IACH,MAAM,CAAC,SAAS,QAAQ;AAAA,IACxB,OAAO,CAAC,QAAQ,MAAM;AAAA,IACtB,MAAM,CAAC,WAAW,UAAU;AAAA,IAC5B,KAAK,CAAC,QAAQ,OAAO;AAAA,IACrB,MAAM,CAAC,SAAS,QAAQ;AAAA,IACxB,QAAQ,CAAC,UAAU,SAAS;AAAA,IAC5B,QAAQ,CAAC,WAAW,UAAU;AAAA,IAC9B,aAAa,CAAC,gBAAgB,eAAe;AAAA,EAC/C;AACA,GAIIC,KAAqB;AAAA,EACxB,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACL;AAIA,SAASC,GAAqBC,GAAMpD,GAAQ4B,GAAO;AAClD,WAASqB,GAAqBjD,CAAM,KAAKiD,GAAqB,IAAIG,CAAI,KAAK,CAACA,GAAMA,IAAO,GAAG,GAAGxB,MAAU,IAAI,IAAI,CAAC;AACnH;AAIA,SAASyB,GAAoBrD,GAAQ;AACpC,SAAOkD,GAAmBlD,CAAM,KAAK;AACtC;AAIA,SAASsD,GAAkBC,GAAOvD,GAAQ;AACzC,MAAIuD,EAAM,WAAW,EAAG,QAAO;AAC/B,MAAIA,EAAM,WAAW,EAAG,QAAOA,EAAM,CAAC;AACtC,QAAMC,IAAcH,GAAoBrD,CAAM;AAC9C,SAAIuD,EAAM,WAAW,IAAU,GAAGA,EAAM,CAAC,CAAC,IAAIC,CAAW,IAAID,EAAM,CAAC,CAAC,KAC9DA,EAAM,MAAM,GAAG,EAAE,EAAE,KAAK,IAAI,IAAI,IAAIC,CAAW,IAAID,EAAMA,EAAM,SAAS,CAAC,CAAC;AAClF;AAIA,SAASE,GAAmBzD,GAAQ;AACnC,SAAO;AAAA,IACN,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,EACN,EAAGA,CAAM,KAAK;AACd;AAMA,IAAI0D,KAAoB,MAAM;AAAA,EAAN;AACvB,IAAA3D,EAAA,YAAK;AACL,IAAAA,EAAA,cAAO;AACP,IAAAA,EAAA,gBAAS;AACT,IAAAA,EAAA,oBAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AACC,IAAAA,EAAA,yBAAkB;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AACC,IAAAA,EAAA,sBAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AACC,IAAAA,EAAA,2BAAoB;AAAA,MACnB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA;AAAA,EACC,aAAaqB,GAAOuC,IAAQ,IAAO;AAClC,YAAQA,IAAQ,KAAK,kBAAkB,KAAK,YAAY,KAAK,IAAI,GAAG,KAAK,IAAI,IAAIvC,IAAQ,CAAC,CAAC,CAAC;AAAA,EAC7F;AAAA,EACA,eAAeC,GAAKsC,IAAQ,IAAO;AAClC,YAAQA,IAAQ,KAAK,oBAAoB,KAAK,cAAc,KAAK,IAAI,GAAG,KAAK,IAAI,GAAGtC,IAAM,CAAC,CAAC,CAAC;AAAA,EAC9F;AAAA,EACA,WAAWF,GAAM;AAChB,WAAOA,IAAO,MAAM,KAAKA,IAAO,QAAQ,KAAKA,IAAO,QAAQ;AAAA,EAC7D;AAAA,EACA,YAAYA,GAAMC,GAAO;AACxB,UAAMwC,IAAe;AAAA,MACpB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AACE,WAAIxC,MAAU,KAAK,KAAK,WAAWD,CAAI,IAAU,KAC1CyC,EAAa,KAAK,IAAI,GAAG,KAAK,IAAI,IAAIxC,IAAQ,CAAC,CAAC,CAAC;AAAA,EACzD;AAAA,EACA,WAAWD,GAAM;AAChB,WAAO,KAAK,WAAWA,CAAI,IAAI,MAAM;AAAA,EACtC;AACD,OAII0C,MAAkB/D,KAAA,MAAsB;AAAA,EAI3C,cAAc;AAFd,IAAAC,EAAA,mBAA4B,oBAAI,IAAG;AACnC,IAAAA,EAAA,yBAAkB;AAEjB,SAAK,SAAS,IAAI2D,IAAmB;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,cAAc;AACpB,WAAK5D,GAAgB,aAAUA,GAAgB,WAAW,IAAIA,GAAe,IACtEA,GAAgB;AAAA,EACxB;AAAA;AAAA;AAAA;AAAA,EAIA,SAASgE,GAAU;AAClB,SAAK,UAAU,IAAIA,EAAS,IAAIA,CAAQ;AAAA,EACzC;AAAA;AAAA;AAAA;AAAA,EAIA,IAAIC,GAAI;AACP,WAAO,KAAK,UAAU,IAAIA,CAAE;AAAA,EAC7B;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO;AACN,WAAO,MAAM,KAAK,KAAK,UAAU,KAAI,CAAE;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA,EAIA,WAAWA,GAAI;AACd,IAAI,KAAK,UAAU,IAAIA,CAAE,MAAG,KAAK,kBAAkBA;AAAA,EACpD;AAAA;AAAA;AAAA;AAAA,EAIA,aAAa;AACZ,UAAMD,IAAW,KAAK,UAAU,IAAI,KAAK,eAAe;AACxD,QAAI,CAACA,EAAU,OAAM,IAAI,MAAM,qBAAqB,KAAK,eAAe,aAAa;AACrF,WAAOA;AAAA,EACR;AACD,GA7CC/D,EADqBD,IACd,aADcA;AA+CA+D,GAAgB,YAAW;AA6FjD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,IAAIG,KAAgB,KAChBC,KAAgBD,KAAgB,IAChCE,KAAcD,KAAgB,IAC9BE,KAAaD,KAAc,IAC3BE,KAAcD,KAAa,GAC3BE,KAAgB,QAChBC,KAAeD,KAAgB,KAAKF,IACpCI,KAAcF,KAAgBF,IAC9BK,KAAiB;AAIrB,SAASC,GAAiBC,GAAU;AACnC,UAAQA,EAAS,SAAS,KAAKH,MAAeG,EAAS,UAAU,KAAKJ,MAAgBI,EAAS,SAAS,KAAKN,MAAeM,EAAS,QAAQ,KAAKP,MAAcO,EAAS,SAAS,KAAKR,MAAeQ,EAAS,WAAW,KAAKT,MAAiBS,EAAS,WAAW,KAAKV,MAAiBU,EAAS,gBAAgB;AACpT;AAQA,IAAIC,KAAa,MAAM;AAAA,EAOtB,YAAY/C,GAAOgD,GAAKC,GAAKC,IAAO,SAASC,GAAe/E,GAAQ;AANpE,IAAAD,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AAEC,SAAK,SAAS6B,GACd,KAAK,OAAOgD,GACZ,KAAK,OAAOC,GACZ,KAAK,QAAQC,GACb,KAAK,iBAAiBC,KAAiB,MACvC,KAAK,UAAU/E,KAAU;AAAA,EAC1B;AAAA,EACA,GAAGoD,GAAM;AACR,WAAO,KAAK,KAAK,KAAK,KAAK,MAAMA,CAAI;AAAA,EACtC;AAAA,EACA,YAAY;AACX,WAAO,KAAK;AAAA,EACb;AAAA,EACA,OAAOpD,GAAQ;AACd,UAAMpD,IAAIoD,KAAU,KAAK;AACzB,QAAI,CAAC,KAAK,eAAgB,QAAO,GAAG,KAAK,IAAI,KAAK,KAAK,KAAK,KAAK,MAAM,KAAK,CAAC,CAAC,GAAGwE,EAAc;AAC/F,UAAMjB,IAAQ,CAAA,GACRyB,IAAK,KAAK;AAQhB,WAPIA,EAAG,UAAU,KAAGzB,EAAM,KAAK,GAAGyB,EAAG,KAAK,IAAI7B,GAAqB,QAAQvG,GAAGoI,EAAG,KAAK,CAAC,EAAE,GACrFA,EAAG,WAAW,KAAGzB,EAAM,KAAK,GAAGyB,EAAG,MAAM,IAAI7B,GAAqB,SAASvG,GAAGoI,EAAG,MAAM,CAAC,EAAE,GACzFA,EAAG,UAAU,KAAGzB,EAAM,KAAK,GAAGyB,EAAG,KAAK,IAAI7B,GAAqB,QAAQvG,GAAGoI,EAAG,KAAK,CAAC,EAAE,GACrFA,EAAG,SAAS,KAAGzB,EAAM,KAAK,GAAGyB,EAAG,IAAI,IAAI7B,GAAqB,OAAOvG,GAAGoI,EAAG,IAAI,CAAC,EAAE,GACjFA,EAAG,UAAU,KAAGzB,EAAM,KAAK,GAAGyB,EAAG,KAAK,IAAI7B,GAAqB,QAAQvG,GAAGoI,EAAG,KAAK,CAAC,EAAE,GACrFA,EAAG,YAAY,KAAGzB,EAAM,KAAK,GAAGyB,EAAG,OAAO,IAAI7B,GAAqB,UAAUvG,GAAGoI,EAAG,OAAO,CAAC,EAAE,GAC7FA,EAAG,YAAY,KAAGzB,EAAM,KAAK,GAAGyB,EAAG,OAAO,IAAI7B,GAAqB,UAAUvG,GAAGoI,EAAG,OAAO,CAAC,EAAE,GAC7FzB,EAAM,WAAW,IAAUE,GAAmB7G,CAAC,IAC5C0G,GAAkBC,GAAO3G,CAAC;AAAA,EAClC;AAAA,EACA,UAAU;AACT,WAAO,KAAK;AAAA,EACb;AAAA,EACA,UAAU;AACT,WAAO,KAAK;AAAA,EACb;AAAA,EACA,WAAW;AACV,WAAI,KAAK,UAAU,cAAc,KAAK,iBAAuB,KAAK,OAAM,IACjE,KAAK,OAAO,SAAQ;AAAA,EAC5B;AAAA,EACA,SAAS;AACR,WAAO,KAAK;AAAA,EACb;AACD,GAKIqI,KAAiB,MAAM;AAAA,EAgB1B,YAAY1B,GAAOvD,IAAS,MAAMkF,GAAU;AAf5C,IAAAnF,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA,gBAAS,CAAA;AACT,IAAAA,EAAA,eAAQ;AACR,IAAAA,EAAA,wBAAiB,CAAA;AACjB,IAAAA,EAAA,4BAAqB;AAEpB,SAAK,QAAQwD,EAAM,OACnB,KAAK,SAASA,EAAM,QACpB,KAAK,QAAQA,EAAM,OACnB,KAAK,OAAOA,EAAM,MAClB,KAAK,QAAQA,EAAM,OACnB,KAAK,UAAUA,EAAM,SACrB,KAAK,UAAUA,EAAM,SACrB,KAAK,eAAeA,EAAM,cAC1B,KAAK,UAAUvD,GACXkF,MACH,KAAK,aAAaA,EAAS,WAC3B,KAAK,WAAWA,EAAS,SACzB,KAAK,SAASA,EAAS,SAAS,CAAA,GAChC,KAAK,QAAQA,EAAS,QAAQ,SAC9B,KAAK,iBAAiBA,EAAS,iBAAiB,CAAA,GAChD,KAAK,qBAAqBA,EAAS,qBAAqB;AAAA,EAE1D;AAAA,EACA,SAASC,GAAS;AACjB,UAAMnF,KAASmF,KAAA,gBAAAA,EAAS,WAAU,KAAK,SACjCC,KAAgBD,KAAA,gBAAAA,EAAS,kBAAiB,IAC1CE,KAAUF,KAAA,gBAAAA,EAAS,YAAW,UAC9BG,IAAe;AAAA,MACpB;AAAA,QACC,MAAM;AAAA,QACN,OAAO,KAAK;AAAA,MAChB;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,OAAO,KAAK;AAAA,MAChB;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,OAAO,KAAK;AAAA,MAChB;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,OAAO,KAAK;AAAA,MAChB;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,OAAO,KAAK;AAAA,MAChB;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,OAAO,KAAK;AAAA,MAChB;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,OAAO,KAAK;AAAA,MAChB;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,OAAO,KAAK;AAAA,MAChB;AAAA,IACA,EAAI,OAAO,CAAC9H,MAAMA,EAAE,QAAQ,CAAC;AAC3B,QAAI8H,EAAa,WAAW,EAAG,QAAO;AACtC,QAAI,CAACF,KAAiBE,EAAa,WAAW,GAAG;AAChD,YAAMC,IAAUD,EAAa,CAAC;AAC9B,UAAI;AACH,eAAO,IAAI,KAAK,mBAAmBtF,GAAQ;AAAA,UAC1C,SAAAqF;AAAA,UACA,OAAO;AAAA,QACZ,CAAK,EAAE,OAAOE,EAAQ,OAAOA,EAAQ,IAAI;AAAA,MACtC,QAAQ;AACP,eAAO,GAAGA,EAAQ,KAAK,IAAI,KAAK,cAAcA,EAAQ,MAAMA,EAAQ,OAAOvF,CAAM,CAAC;AAAA,MACnF;AAAA,IACD;AACA,WAAOsD,GAAkBgC,EAAa,IAAI,CAAC9H,MAAM;AAChD,YAAMgI,IAAQrC,GAAqB3F,EAAE,MAAMwC,GAAQxC,EAAE,KAAK;AAC1D,aAAO,GAAGA,EAAE,KAAK,IAAIgI,CAAK;AAAA,IAC3B,CAAC,GAAGxF,CAAM;AAAA,EACX;AAAA,EACA,MAAMoD,GAAM;AACX,QAAIqC,IAAU;AASd,YARAA,KAAW,KAAK,QAAQlB,IACxBkB,KAAW,KAAK,SAASnB,IACzBmB,KAAW,KAAK,QAAQrB,IACxBqB,KAAW,KAAK,OAAOtB,IACvBsB,KAAW,KAAK,QAAQvB,IACxBuB,KAAW,KAAK,UAAUxB,IAC1BwB,KAAW,KAAK,UAAUzB,IAC1ByB,KAAW,KAAK,cACRrC,GAAI;AAAA,MACX,KAAK;AAAe,eAAOqC;AAAA,MAC3B,KAAK;AAAU,eAAOA,IAAUzB;AAAA,MAChC,KAAK;AAAU,eAAOyB,IAAUxB;AAAA,MAChC,KAAK;AAAQ,eAAOwB,IAAUvB;AAAA,MAC9B,KAAK;AAAO,eAAOuB,IAAUtB;AAAA,MAC7B,KAAK;AAAQ,eAAOsB,IAAUrB;AAAA,MAC9B,KAAK;AAAS,eAAOqB,IAAUnB;AAAA,MAC/B,KAAK;AAAQ,eAAOmB,IAAUlB;AAAA,MAC9B,KAAK;AAAe,eAAOkB,IAAU;AAAA,MACrC,KAAK;AAAc,eAAOA,IAAU;AAAA,MACpC;AAAS,cAAM,IAAI,MAAM,qBAAqBrC,CAAI,EAAE;AAAA,IACvD;AAAA,EACC;AAAA,EACA,WAAW;AACV,WAAO,KAAK,SAAS,EAAE,eAAe,GAAI,CAAE;AAAA,EAC7C;AAAA,EACA,SAAS;AACR,WAAO;AAAA,MACN,OAAO,KAAK;AAAA,MACZ,QAAQ,KAAK;AAAA,MACb,OAAO,KAAK;AAAA,MACZ,MAAM,KAAK;AAAA,MACX,OAAO,KAAK;AAAA,MACZ,SAAS,KAAK;AAAA,MACd,SAAS,KAAK;AAAA,MACd,cAAc,KAAK;AAAA,IACtB;AAAA,EACC;AAAA,EACA,UAAU;AACT,QAAIsC,IAAQ,CAAC,GAAG,KAAK,MAAM;AAC3B,IAAIA,EAAM,WAAW,MAAGA,IAAQ,KAAK,yBAAwB;AAC7D,UAAMC,IAAmB,CAAA;AAEzB,QADI,KAAK,cAAc,KAAK,YAAUA,EAAiB,KAAK,4BAA4B,KAAK,UAAU,OAAO,KAAK,QAAQ,EAAE,GACzH,KAAK,kBAAkB,KAAK,eAAe,SAAS,GAAG;AAC1D,YAAMC,IAAY,KAAK,eAAe,OAAO,CAACzI,MAAMA,EAAE,MAAM,EAAE,IAAI,CAACA,MAAMA,EAAE,IAAI;AAC/E,MAAIyI,EAAU,SAAS,KAAGD,EAAiB,KAAK,0BAA0BC,EAAU,KAAK,IAAI,CAAC,EAAE;AAAA,IACjG;AACA,WAAAD,EAAiB,KAAK,cAAc,KAAK,KAAK,aAAa,KAAK,MAAM,cAAc,KAAK,IAAI,SAAS,GACtGA,EAAiB,KAAK,SAAS,KAAK,KAAK,cAAc,GAChD;AAAA,MACN,OAAO,KAAK,cAAc,KAAK,WAAW,CAAC,KAAK,YAAY,KAAK,QAAQ,IAAI,CAAA;AAAA,MAC7E,OAAAD;AAAA,MACA,WAAW;AAAA,QACV,OAAO,KAAK;AAAA,QACZ,QAAQ,KAAK;AAAA,QACb,OAAO,KAAK;AAAA,QACZ,MAAM,KAAK;AAAA,QACX,OAAO,KAAK;AAAA,QACZ,SAAS,KAAK;AAAA,QACd,SAAS,KAAK;AAAA,QACd,cAAc,KAAK;AAAA,MACvB;AAAA,MACG,MAAM,KAAK;AAAA,MACX,aAAaC,EAAiB,KAAK,IAAI;AAAA,MACvC,QAAQ,KAAK;AAAA,MACb,eAAe,KAAK,eAAe,SAAS,IAAI,KAAK,iBAAiB;AAAA,MACtE,UAAU;AAAA,QACT,mBAAmB,KAAK;AAAA,QACxB,WAAW;AAAA,MACf;AAAA,IACA;AAAA,EACC;AAAA,EACA,2BAA2B;AAC1B,UAAMD,IAAQ,CAAA;AAWd,QAVI,KAAK,cAAc,KAAK,WAAUA,EAAM,KAAK,UAAU,KAAK,UAAU,OAAO,KAAK,QAAQ,EAAE,IAC3FA,EAAM,KAAK,8BAA8B,GAC1C,KAAK,QAAQ,KAAGA,EAAM,KAAK,UAAU,KAAK,KAAK,EAAE,GACjD,KAAK,SAAS,KAAGA,EAAM,KAAK,WAAW,KAAK,MAAM,EAAE,GACpD,KAAK,QAAQ,KAAGA,EAAM,KAAK,UAAU,KAAK,KAAK,EAAE,GACjD,KAAK,OAAO,KAAGA,EAAM,KAAK,SAAS,KAAK,IAAI,EAAE,GAC9C,KAAK,QAAQ,KAAGA,EAAM,KAAK,UAAU,KAAK,KAAK,EAAE,GACjD,KAAK,UAAU,KAAGA,EAAM,KAAK,YAAY,KAAK,OAAO,EAAE,GACvD,KAAK,UAAU,KAAGA,EAAM,KAAK,YAAY,KAAK,OAAO,EAAE,GACvD,KAAK,eAAe,KAAGA,EAAM,KAAK,iBAAiB,KAAK,YAAY,EAAE,GACtE,KAAK,kBAAkB,KAAK,eAAe,SAAS;AACvD,iBAAWG,KAAQ,KAAK,eAAgB,CAAIA,EAAK,UAAQH,EAAM,KAAK,GAAGG,EAAK,IAAI,iCAAiCA,EAAK,cAAc,QAAQ;AAE7I,UAAMC,IAAa;AAAA,MAClB,KAAK,QAAQ,IAAI,GAAG,KAAK,KAAK,MAAM;AAAA,MACpC,KAAK,SAAS,IAAI,GAAG,KAAK,MAAM,MAAM;AAAA,MACtC,KAAK,OAAO,IAAI,GAAG,KAAK,IAAI,MAAM;AAAA,MAClC,KAAK,QAAQ,IAAI,GAAG,KAAK,KAAK,MAAM;AAAA,MACpC,KAAK,UAAU,IAAI,GAAG,KAAK,OAAO,QAAQ;AAAA,MAC1C,KAAK,UAAU,IAAI,GAAG,KAAK,OAAO,MAAM;AAAA,IAC3C,EAAI,OAAO,CAACtI,MAAMA,EAAE,SAAS,CAAC,EAAE,KAAK,GAAG;AACtC,WAAAkI,EAAM,KAAK,UAAUI,KAAc,GAAG,EAAE,GACjCJ;AAAA,EACR;AAAA,EACA,cAActC,GAAM2C,GAAO/F,GAAQ;AAClC,WAAOmD,GAAqBC,GAAMpD,GAAQ+F,CAAK;AAAA,EAChD;AACD,GASIC,KAAY,MAAMA,GAAU;AAAA,EAG/B,YAAYC,GAAOC,GAAK;AAFxB,IAAAnG,EAAA;AACA,IAAAA,EAAA;AAEC,SAAK,SAASkG,GACd,KAAK,OAAOC;AAAA,EACb;AAAA,EACA,IAAI,QAAQ;AACX,WAAO,KAAK;AAAA,EACb;AAAA,EACA,IAAI,MAAM;AACT,WAAO,KAAK;AAAA,EACb;AAAA,EACA,aAAa;AACZ,UAAMC,IAAK1F,EAAgB,gBAAgB,KAAK,OAAO,YAAY,GAC7D2F,IAAK3F,EAAgB,gBAAgB,KAAK,KAAK,YAAY;AACjE,WAAOA,EAAgB,QAAQ0F,GAAIC,CAAE,KAAK,IAAI,CAACD,GAAIC,CAAE,IAAI,CAACA,GAAID,CAAE;AAAA,EACjE;AAAA,EACA,aAAa;AACZ,WAAOE,GAAU,QAAQ,KAAK,QAAQ,KAAK,IAAI;AAAA,EAChD;AAAA,EACA,WAAW;AACV,WAAO,KAAK,aAAa,MAAM,OAAO;AAAA,EACvC;AAAA,EACA,SAASlB,GAAS;AACjB,WAAO,KAAK,aAAa,SAASA,CAAO;AAAA,EAC1C;AAAA,EACA,GAAG/B,GAAM;AACR,WAAO,KAAK,aAAa,MAAMA,CAAI;AAAA,EACpC;AAAA,EACA,SAASxC,GAAM;AACd,UAAM0F,IAAK1F,aAAgByF,KAAYzF,IAAO,IAAIyF,GAAUzF,CAAI,GAC1D9D,IAAI2D,EAAgB,gBAAgB6F,EAAG,WAAU,CAAE,GACnD,CAACC,GAAQC,CAAI,IAAI,KAAK,WAAU;AACtC,WAAO/F,EAAgB,QAAQ3D,GAAGyJ,CAAM,KAAK,KAAK9F,EAAgB,QAAQ3D,GAAG0J,CAAI,KAAK;AAAA,EACvF;AAAA,EACA,SAASC,GAAO;AACf,UAAM,CAACC,GAAIC,CAAE,IAAI,KAAK,WAAU,GAC1B,CAACC,GAAIC,CAAE,IAAIJ,EAAM,WAAU;AACjC,WAAOhG,EAAgB,QAAQiG,GAAIG,CAAE,KAAK,KAAKpG,EAAgB,QAAQmG,GAAID,CAAE,KAAK;AAAA,EACnF;AAAA,EACA,UAAUF,GAAO;AAChB,QAAI,CAAC,KAAK,SAASA,CAAK,EAAG,QAAO;AAClC,UAAM,CAACC,GAAIC,CAAE,IAAI,KAAK,WAAU,GAC1B,CAACC,GAAIC,CAAE,IAAIJ,EAAM,WAAU,GAC3BF,IAAS9F,EAAgB,QAAQiG,GAAIE,CAAE,KAAK,IAAIF,IAAKE,GACrDJ,IAAO/F,EAAgB,QAAQkG,GAAIE,CAAE,KAAK,IAAIF,IAAKE;AACzD,WAAO,IAAIb,GAAUK,GAAU,aAAaE,GAAQ,EAAE,QAAQ,KAAK,OAAO,OAAM,EAAE,CAAE,GAAGF,GAAU,aAAaG,GAAM,EAAE,QAAQ,KAAK,KAAK,OAAM,EAAE,CAAE,CAAC;AAAA,EACpJ;AAAA,EACA,MAAMC,GAAO;AACZ,UAAM,CAACC,GAAIC,CAAE,IAAI,KAAK,WAAU,GAC1B,CAACC,GAAIC,CAAE,IAAIJ,EAAM,WAAU,GAC3BF,IAAS9F,EAAgB,QAAQiG,GAAIE,CAAE,KAAK,IAAIF,IAAKE,GACrDJ,IAAO/F,EAAgB,QAAQkG,GAAIE,CAAE,KAAK,IAAIF,IAAKE;AACzD,WAAO,IAAIb,GAAUK,GAAU,aAAaE,GAAQ,EAAE,QAAQ,KAAK,OAAO,OAAM,EAAE,CAAE,GAAGF,GAAU,aAAaG,GAAM,EAAE,QAAQ,KAAK,KAAK,OAAM,EAAE,CAAE,CAAC;AAAA,EACpJ;AACD,OAIIH,MAAYvG,KAAA,MAAgB;AAAA,EA4C/B,YAAYY,GAAOoG,GAAQ;AA3C3B,IAAA/G,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AAiDC,QAPA,KAAK,oBAAoB,IAAIsC,GAAa,GAC1C,KAAK,SAAS;AAAA,MACb,SAAQyE,KAAA,gBAAAA,EAAQ,WAAU;AAAA,MAC1B,WAAUA,KAAA,gBAAAA,EAAQ,aAAY;AAAA,MAC9B,SAAQA,KAAA,gBAAAA,EAAQ,WAAU;AAAA,IAC7B,GACE,KAAK,WAAWrG,EAAgB,qBAAqBC,CAAK,GACtD,KAAK,OAAO,YAAY,KAAK,OAAO,aAAa,MAAO,KAAI;AAC/D,YAAMqG,IAAQ,KAAK,SAAS,gBAAgB,KAAK,OAAO,QAAQ;AAChE,WAAK,WAAWA;AAAA,IACjB,QAAQ;AAAA,IAAC;AAAA,EACV;AAAA,EAnDA,OAAO,iBAAiBC,GAAO;AAC9B,IAAAA,EAAM,QAAQ,CAACtJ,MAAM;AACpB,UAAI;AACH,cAAM4I,IAAK,IAAIxG,GAAUpC,CAAC;AAC1B,aAAK,SAAS,IAAI4I,EAAG,OAAO,YAAY,CAAC;AAAA,MAC1C,QAAQ;AAAA,MAAC;AAAA,IACV,CAAC;AAAA,EACF;AAAA,EACA,OAAO,gBAAgB;AACtB,SAAK,SAAS,MAAK;AAAA,EACpB;AAAA,EACA,OAAO,wBAAwB;AAC9B,WAAO,MAAM,KAAK,KAAK,QAAQ,EAAE,KAAI;AAAA,EACtC;AAAA,EAWA,OAAO,gBAAgBnF,GAAM;AAC5B,WAAOA,IAAO,MAAM,KAAKA,IAAO,QAAQ,KAAKA,IAAO,QAAQ;AAAA,EAC7D;AAAA,EACA,OAAO,gBAAgBuD,GAAU;AAChC,WAAO;AAAA,MACN,OAAO,KAAK,MAAMA,EAAS,SAAS,CAAC;AAAA,MACrC,QAAQ,KAAK,MAAMA,EAAS,UAAU,CAAC;AAAA,MACvC,OAAO,KAAK,MAAMA,EAAS,SAAS,CAAC;AAAA,MACrC,MAAM,KAAK,MAAMA,EAAS,QAAQ,CAAC;AAAA,MACnC,OAAO,KAAK,MAAMA,EAAS,SAAS,CAAC;AAAA,MACrC,SAAS,KAAK,MAAMA,EAAS,WAAW,CAAC;AAAA,MACzC,SAAS,KAAK,MAAMA,EAAS,WAAW,CAAC;AAAA,MACzC,cAAc,KAAK,MAAMA,EAAS,gBAAgB,CAAC;AAAA,IACtD;AAAA,EACC;AAAA,EAcA,OAAO,IAAIoC,GAAQ;AAClB,WAAO,IAAIhH,GAAU,QAAQgH,CAAM;AAAA,EACpC;AAAA,EACA,OAAO,KAAKpG,GAAOoG,GAAQ;AAC1B,WAAO,IAAIhH,GAAUY,GAAOoG,CAAM;AAAA,EACnC;AAAA,EACA,OAAO,aAAapF,GAAUoF,GAAQ;AACrC,UAAMG,IAAW,IAAInH,GAAU,QAAQgH,CAAM;AAC7C,WAAAG,EAAS,WAAWvF,GACbuF;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO,QAAQC,GAAOC,GAAO;AAC5B,UAAMhB,IAAK1F,EAAgB,gBAAgByG,EAAM,QAAQ,GACnDd,IAAK3F,EAAgB,gBAAgB0G,EAAM,QAAQ,GACnD,CAACC,GAASC,CAAK,IAAI5G,EAAgB,QAAQ0F,GAAIC,CAAE,KAAK,IAAI,CAACc,GAAOC,CAAK,IAAI,CAACA,GAAOD,CAAK;AAC9F,WAAOE,EAAQ,MAAMC,CAAK;AAAA,EAC3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,OAAO,MAAMpB,GAAOC,GAAK;AACxB,WAAO,IAAIF,GAAUC,aAAiBnG,KAAYmG,IAAQ,IAAInG,GAAUmG,CAAK,GAAGC,aAAepG,KAAYoG,IAAM,IAAIpG,GAAUoG,CAAG,CAAC;AAAA,EACpI;AAAA,EACA,aAAa;AACZ,WAAO,KAAK;AAAA,EACb;AAAA,EACA,SAAS;AACR,WAAOzF,EAAgB,OAAO,KAAK,QAAQ;AAAA,EAC5C;AAAA,EACA,cAAc;AACb,WAAOA,EAAgB,YAAY,KAAK,QAAQ;AAAA,EACjD;AAAA,EACA,UAAU;AACT,WAAOA,EAAgB,OAAO,KAAK,QAAQ;AAAA,EAC5C;AAAA,EACA,OAAO;AACN,WAAO,KAAK,MAAM,KAAK,QAAO,IAAK,GAAG;AAAA,EACvC;AAAA,EACA,SAAS;AACR,WAAO,KAAK,YAAW;AAAA,EACxB;AAAA,EACA,CAAC,OAAO,WAAW,EAAE6G,GAAM;AAC1B,WAAIA,MAAS,WAAiB,KAAK,QAAO,IACtCA,MAAS,WAAiB,KAAK,YAAW,IACvC,KAAK,YAAW;AAAA,EACxB;AAAA,EACA,WAAW;AACV,WAAO,KAAK,OAAO,qBAAqB;AAAA,EACzC;AAAA,EACA,OAAOtH,GAAQ;AACd,QAAIA,MAAW,OAAQ,QAAO,KAAK,OAAO;AAC1C,UAAMuH,IAAS,KAAK,MAAK;AACzB,WAAAA,EAAO,OAAO,SAASvH,GAChBuH;AAAA,EACR;AAAA,EACA,SAASvF,GAAU;AAClB,QAAIA,MAAa,OAAQ,QAAO,KAAK,OAAO;AAC5C,UAAMuF,IAAS,KAAK,MAAK;AACzB,IAAAA,EAAO,OAAO,WAAWvF;AACzB,QAAI;AACH,MAAAuF,EAAO,WAAW9G,EAAgB,gBAAgB8G,EAAO,QAAQ,EAAE,gBAAgBvF,CAAQ;AAAA,IAC5F,QAAQ;AAAA,IAAC;AACT,WAAOuF;AAAA,EACR;AAAA,EACA,OAAOjF,GAAS;AACf,UAAMX,IAAUlB,EAAgB,gBAAgB,KAAK,QAAQ,GACvD+G,IAAgB;AAAA,MACrB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,EAAI,SAASlF,CAAO,IAAI,KAAK,kBAAkB,UAAUA,CAAO,IAAIA;AAClE,WAAO,KAAK,kBAAkB,OAAOX,GAAS6F,GAAe,KAAK,OAAO,MAAM;AAAA,EAChF;AAAA,EACA,IAAIC,GAAW;AACd,UAAM9F,IAAUlB,EAAgB,gBAAgB,KAAK,QAAQ,GACvDiH,IAAU;AAAA,MACf,MAAM;AAAA,MACN,OAAO;AAAA,MACP,MAAM;AAAA,MACN,KAAK;AAAA,MACL,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf;AACE,WAAID,MAAc,SAAe9F,EAAQ,aAClCA,EAAQ+F,EAAQD,CAAS,CAAC;AAAA,EAClC;AAAA,EAwBA,IAAIE,GAAO;AACV,QAAIhG,IAAUlB,EAAgB,gBAAgB,KAAK,QAAQ;AAC3D,UAAMiE,IAAW;AAAA,MAChB,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS;AAAA,MACT,cAAc;AAAA,MACd,cAAc;AAAA,MACd,aAAa;AAAA,IAChB;AACE,QAAIkD,IAAiB;AAWrB,WAVA,OAAO,QAAQD,CAAK,EAAE,QAAQ,CAAC,CAACvE,GAAMxB,CAAK,MAAM;AAChD,UAAIA,MAAU,UAAUA,MAAU,GAAG;AACpC,cAAMC,IAAM,OAAOD,CAAK;AACxB,YAAI,OAAO,SAASC,CAAG,GAAG;AACzB,gBAAMgG,IAAY/H,GAAU,eAAesD,CAAI,KAAKA;AACpD,UAAAsB,EAASmD,CAAS,IAAI,KAAK,MAAMhG,CAAG,GACpC+F,IAAiB;AAAA,QAClB;AAAA,MACD;AAAA,IACD,CAAC,GACIA,KACLjG,IAAUA,EAAQ,IAAI+C,CAAQ,GACvB5E,GAAU,aAAa6B,GAAS,KAAK,MAAM,KAFtB;AAAA,EAG7B;AAAA,EACA,SAASgG,GAAO;AACf,UAAMG,IAAU,CAAA;AAChB,kBAAO,QAAQH,CAAK,EAAE,QAAQ,CAAC,CAACvE,GAAMxB,CAAK,MAAM;AAChD,MAAAkG,EAAQ1E,CAAI,IAAIxB,IAAQ,CAACA,IAAQ;AAAA,IAClC,CAAC,GACM,KAAK,IAAIkG,CAAO;AAAA,EACxB;AAAA,EACA,KAAKrB,GAAOsB,GAAe;AAC1B,UAAMC,IAAWvH,EAAgB,gBAAgB,KAAK,QAAQ,GACxDwH,IAAWxH,EAAgB,gBAAgBgG,EAAM,QAAQ,GACzDiB,IAAU;AAAA,MACf,MAAM;AAAA,MACN,OAAO;AAAA,MACP,MAAM;AAAA,MACN,KAAK;AAAA,MACL,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf;AACE,QAAI,OAAOK,KAAkB,UAAU;AACtC,YAAM3E,IAAO2E,GACPG,IAAaR,EAAQtE,CAAI,GACzB+E,IAAcH,EAAS,MAAMC,GAAU,EAAE,cAAc7E,GAAM;AACnE,aAAO,KAAK,MAAM+E,EAAYD,CAAU,KAAK,CAAC;AAAA,IAC/C;AACA,UAAM/C,IAAU4C,KAAiB,CAAA,GAC3BjD,IAAOK,EAAQ,QAAQ,SACvB/B,IAAO+B,EAAQ,QAAQ,eACvBnF,IAASmF,EAAQ,UAAU,KAAK,OAAO;AAC7C,QAAIL,MAAS,SAAS;AACrB,YAAMoD,IAAaR,EAAQtE,CAAI,GACzBsB,IAAWsD,EAAS,MAAMC,GAAU,EAAE,cAAc7E,GAAM,GAC1DjD,IAAS,KAAK,MAAMuE,EAASwD,CAAU,KAAK,CAAC;AACnD,UAAIH,MAAkB,UAAU,OAAOA,KAAkB,UAAU;AAClE,cAAMtC,IAAUhB,GAAiBC,CAAQ;AACzC,eAAO,IAAIC,GAAW,KAAK,MAAMc,CAAO,GAAG,MAAMgB,GAAO3B,GAAM,QAAQ9E,CAAM;AAAA,MAC7E;AACA,aAAOG;AAAA,IACR;AACA,QAAI2E,MAAS,YAAY;AACxB,YAAMJ,IAAWsD,EAAS,MAAMC,GAAU;AAAA,QACzC,aAAa;AAAA,QACb,cAAc;AAAA,MAClB,CAAI,GACKlD,IAAgB;AAAA,QACrB,OAAO,KAAK,MAAML,EAAS,SAAS,CAAC;AAAA,QACrC,QAAQ,KAAK,MAAMA,EAAS,UAAU,CAAC;AAAA,QACvC,OAAO,KAAK,MAAMA,EAAS,SAAS,CAAC;AAAA,QACrC,MAAM,KAAK,MAAMA,EAAS,QAAQ,CAAC;AAAA,QACnC,OAAO,KAAK,MAAMA,EAAS,SAAS,CAAC;AAAA,QACrC,SAAS,KAAK,MAAMA,EAAS,WAAW,CAAC;AAAA,QACzC,SAAS,KAAK,MAAMA,EAAS,WAAW,CAAC;AAAA,QACzC,cAAc,KAAK,MAAMA,EAAS,gBAAgB,CAAC;AAAA,MACvD,GACSe,IAAUhB,GAAiBC,CAAQ;AACzC,aAAO,IAAIC,GAAW,KAAK,MAAMc,CAAO,GAAG,MAAMgB,GAAO3B,GAAMC,GAAe/E,CAAM;AAAA,IACpF;AACA,UAAMyF,IAAUhB,GAAiBuD,EAAS,MAAMC,GAAU,EAAE,cAAc,cAAa,CAAE,CAAC;AAC1F,WAAO,IAAItD,GAAW,KAAK,MAAMc,CAAO,GAAG,MAAMgB,GAAO3B,GAAM,QAAQ9E,CAAM;AAAA,EAC7E;AAAA,EACA,SAASyG,GAAO;AACf,UAAMuB,IAAWvH,EAAgB,gBAAgB,KAAK,QAAQ,GACxDwH,IAAWxH,EAAgB,gBAAgBgG,EAAM,QAAQ;AAC/D,WAAOhG,EAAgB,QAAQuH,GAAUC,CAAQ,IAAI;AAAA,EACtD;AAAA,EACA,QAAQxB,GAAO;AACd,UAAMuB,IAAWvH,EAAgB,gBAAgB,KAAK,QAAQ,GACxDwH,IAAWxH,EAAgB,gBAAgBgG,EAAM,QAAQ;AAC/D,WAAOhG,EAAgB,QAAQuH,GAAUC,CAAQ,IAAI;AAAA,EACtD;AAAA,EACA,OAAOxB,GAAOrD,GAAM;AACnB,QAAI,CAACA,EAAM,QAAO3C,EAAgB,QAAQA,EAAgB,gBAAgB,KAAK,QAAQ,GAAGA,EAAgB,gBAAgBgG,EAAM,QAAQ,CAAC,MAAM;AAC/I,UAAMuB,IAAWvH,EAAgB,gBAAgB,KAAK,QAAQ,GACxDwH,IAAWxH,EAAgB,gBAAgBgG,EAAM,QAAQ;AAC/D,YAAQrD,GAAI;AAAA,MACX,KAAK;AAAQ,eAAO4E,EAAS,SAASC,EAAS;AAAA,MAC/C,KAAK;AAAS,eAAOD,EAAS,SAASC,EAAS,QAAQD,EAAS,UAAUC,EAAS;AAAA,MACpF,KAAK;AAAO,eAAOD,EAAS,SAASC,EAAS,QAAQD,EAAS,UAAUC,EAAS,SAASD,EAAS,QAAQC,EAAS;AAAA,MACrH,KAAK;AAAQ,eAAOD,EAAS,SAASC,EAAS,QAAQD,EAAS,UAAUC,EAAS,SAASD,EAAS,QAAQC,EAAS,OAAOD,EAAS,SAASC,EAAS;AAAA,MACxJ,KAAK;AAAU,eAAOD,EAAS,SAASC,EAAS,QAAQD,EAAS,UAAUC,EAAS,SAASD,EAAS,QAAQC,EAAS,OAAOD,EAAS,SAASC,EAAS,QAAQD,EAAS,WAAWC,EAAS;AAAA,MAC/L,KAAK;AAAU,eAAOD,EAAS,SAASC,EAAS,QAAQD,EAAS,UAAUC,EAAS,SAASD,EAAS,QAAQC,EAAS,OAAOD,EAAS,SAASC,EAAS,QAAQD,EAAS,WAAWC,EAAS,UAAUD,EAAS,WAAWC,EAAS;AAAA,MACtO;AAAS,eAAO;AAAA,IACnB;AAAA,EACC;AAAA,EACA,UAAUhC,GAAOC,GAAK9C,GAAMgF,IAAc,MAAM;AAC/C,UAAMzG,IAAUlB,EAAgB,gBAAgB,KAAK,QAAQ,GACvD4H,IAAa5H,EAAgB,gBAAgBwF,EAAM,QAAQ,GAC3DqC,IAAW7H,EAAgB,gBAAgByF,EAAI,QAAQ;AAC7D,QAAIqC,IAAa,IACbC,IAAY;AAChB,QAAIpF,GAAM;AACT,YAAMqF,IAAY,KAAK,MAAK,EAAG,QAAQrF,CAAI,GACrCsF,IAAU,KAAK,MAAK,EAAG,MAAMtF,CAAI,GACjCuF,IAAYlI,EAAgB,gBAAgBgI,EAAU,QAAQ,GAC9DG,IAAenI,EAAgB,gBAAgBiI,EAAQ,QAAQ;AACrE,MAAAH,IAAa9H,EAAgB,QAAQkI,GAAWN,CAAU,KAAK,GAC/DG,IAAY/H,EAAgB,QAAQmI,GAAcN,CAAQ,KAAK;AAAA,IAChE;AACC,MAAAC,IAAa9H,EAAgB,QAAQkB,GAAS0G,CAAU,KAAK,GAC7DG,IAAY/H,EAAgB,QAAQkB,GAAS2G,CAAQ,KAAK;AAE3D,UAAMO,IAAkBT,EAAY,CAAC,MAAM,KACrCU,IAAgBV,EAAY,CAAC,MAAM;AACzC,YAAQS,IAAkBN,IAAa9H,EAAgB,QAAQkB,GAAS0G,CAAU,IAAI,OAAOS,IAAgBN,IAAY/H,EAAgB,QAAQkB,GAAS2G,CAAQ,IAAI;AAAA,EACvK;AAAA,EACA,QAAQ;AACP,WAAO,IAAIxI,GAAU,KAAK,OAAM,GAAI,KAAK,MAAM;AAAA,EAChD;AAAA,EACA,QAAQsD,GAAM;AACb,UAAMzB,IAAUlB,EAAgB,gBAAgB,KAAK,QAAQ,GACvDsI,IAAS,CAAA;AACf,YAAQ3F,GAAI;AAAA,MACX,KAAK;AACJ,QAAA2F,EAAO,QAAQ,GACfA,EAAO,MAAM,GACbA,EAAO,OAAO,GACdA,EAAO,SAAS,GAChBA,EAAO,SAAS,GAChBA,EAAO,cAAc;AACrB;AAAA,MACD,KAAK;AACJ,QAAAA,EAAO,MAAM,GACbA,EAAO,OAAO,GACdA,EAAO,SAAS,GAChBA,EAAO,SAAS,GAChBA,EAAO,cAAc;AACrB;AAAA,MACD,KAAK;AAAA,MACL,KAAK;AACJ,QAAAA,EAAO,OAAO,GACdA,EAAO,SAAS,GAChBA,EAAO,SAAS,GAChBA,EAAO,cAAc;AACrB;AAAA,MACD,KAAK;AACJ,QAAAA,EAAO,SAAS,GAChBA,EAAO,SAAS,GAChBA,EAAO,cAAc;AACrB;AAAA,MACD,KAAK;AACJ,QAAAA,EAAO,SAAS,GAChBA,EAAO,cAAc;AACrB;AAAA,MACD,KAAK;AACJ,QAAAA,EAAO,cAAc;AACrB;AAAA,IACJ;AACE,UAAMC,IAAUrH,EAAQ,KAAKoH,CAAM;AACnC,WAAOjJ,GAAU,aAAakJ,GAAS,KAAK,MAAM;AAAA,EACnD;AAAA,EACA,MAAM5F,GAAM;AACX,WAAO,KAAK,QAAQA,CAAI,EAAE,IAAI,EAAE,CAACA,CAAI,GAAG,EAAC,CAAE,EAAE,SAAS,EAAE,aAAa,EAAC,CAAE;AAAA,EACzE;AAAA,EACA,IAAI2F,GAAQ;AACX,UAAMC,IAAUvI,EAAgB,gBAAgB,KAAK,QAAQ,EAAE,KAAKsI,CAAM;AAC1E,WAAOjJ,GAAU,aAAakJ,GAAS,KAAK,MAAM;AAAA,EACnD;AAAA,EACA,OAAO;AACN,WAAOvI,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,QAAQ;AACP,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,MAAM;AACL,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,OAAO;AACN,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,SAAS;AACR,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,SAAS;AACR,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,cAAc;AACb,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,YAAY;AACX,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,YAAY;AACX,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,aAAa;AACZ,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE;AAAA,EACvD;AAAA,EACA,cAAc;AACb,WAAOA,EAAgB,gBAAgB,KAAK,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAE,EAAE,KAAK,EAAE,KAAK,GAAG,EAAE,SAAS,EAAE,MAAM,EAAC,CAAE,EAAE;AAAA,EACjH;AAAA,EACA,aAAa;AACZ,UAAMU,IAAO,KAAK,KAAI;AACtB,WAAOrB,GAAU,gBAAgBqB,CAAI,IAAI,MAAM;AAAA,EAChD;AAAA,EACA,aAAa;AACZ,UAAMQ,IAAUlB,EAAgB,gBAAgB,KAAK,QAAQ;AAC7D,WAAOX,GAAU,gBAAgB6B,EAAQ,IAAI;AAAA,EAC9C;AAAA,EACA,MAAM8E,GAAOtB,GAAS;AACrB,UAAM6C,IAAWvH,EAAgB,gBAAgB,KAAK,QAAQ,GACxDwH,IAAWxH,EAAgB,gBAAgBgG,EAAM,QAAQ,GACzDwC,IAAY,YAAY,IAAG;AACjC,QAAI;AACH,YAAMC,IAAkB,CAAA;AACxB,MAAI/D,KAAA,QAAAA,EAAS,gBAAa+D,EAAgB,cAAc/D,EAAQ,cAC5DA,KAAA,QAAAA,EAAS,iBAAc+D,EAAgB,eAAe/D,EAAQ;AAClE,YAAMT,IAAWuD,EAAS,MAAMD,GAAU,OAAO,KAAKkB,CAAe,EAAE,SAAS,IAAIA,IAAkB,MAAM,GACtG3F,IAAQzD,GAAU,gBAAgB4E,CAAQ,GAC1CyE,IAAYnB,EAAS,MACrBoB,IAAUnB,EAAS,MACnBoB,IAAgB,CAAA;AACtB,eAASlI,IAAOgI,GAAWhI,KAAQiI,GAASjI,KAAQ;AACnD,cAAMmI,IAASxJ,GAAU,gBAAgBqB,CAAI;AAC7C,QAAAkI,EAAc,KAAK;AAAA,UAClB,MAAAlI;AAAA,UACA,QAAAmI;AAAA,UACA,gBAAgBA,IAAS,KAAK;AAAA,QACnC,CAAK;AAAA,MACF;AACA,YAAM5D,IAAQ,KAAK,mBAAmBsC,GAAUC,GAAU1E,GAAO8F,CAAa,GACxEE,IAAoB,YAAY,IAAG,IAAKN;AAC9C,aAAO,IAAIhE,GAAe1B,GAAO,KAAK,OAAO,QAAQ;AAAA,QACpD,WAAWyE,EAAS,SAAQ;AAAA,QAC5B,SAASC,EAAS,SAAQ;AAAA,QAC1B,OAAAvC;AAAA,QACA,MAAM;AAAA,QACN,eAAe2D,EAAc,OAAO,CAAClM,MAAMA,EAAE,MAAM;AAAA,QACnD,mBAAAoM;AAAA,MACJ,CAAI;AAAA,IACF,QAAQ;AACP,aAAO,IAAItE,GAAenF,GAAU,eAAe,KAAK,OAAO,QAAQ;AAAA,QACtE,WAAWkI,EAAS,SAAQ;AAAA,QAC5B,SAASC,EAAS,SAAQ;AAAA,QAC1B,OAAO,CAAC,6CAA6C;AAAA,QACrD,MAAM;AAAA,MACV,CAAI;AAAA,IACF;AAAA,EACD;AAAA,EACA,mBAAmBhC,GAAOC,GAAK3C,GAAO8F,GAAe;AACpD,UAAM3D,IAAQ,CAAA;AACd,IAAAA,EAAM,KAAK,iBAAiBO,EAAM,IAAI,IAAI,OAAOA,EAAM,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,IAAI,OAAOA,EAAM,GAAG,EAAE,SAAS,GAAG,GAAG,CAAC,SAASA,EAAM,SAAS,OAAOnG,GAAU,gBAAgBmG,EAAM,IAAI,IAAI,MAAM,GAAG,GAAG,GACvMP,EAAM,KAAK,MAAMQ,EAAI,IAAI,IAAI,OAAOA,EAAI,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,IAAI,OAAOA,EAAI,GAAG,EAAE,SAAS,GAAG,GAAG,CAAC,SAASA,EAAI,SAAS,OAAOpG,GAAU,gBAAgBoG,EAAI,IAAI,IAAI,MAAM,GAAG,GAAG;AAClL,UAAMsD,IAAmBH,EAAc,OAAO,CAAClM,MAAMA,EAAE,MAAM;AAC7D,QAAIqM,EAAiB,SAAS,EAAG,YAAW3D,KAAQ2D,EAAkB,CAAA9D,EAAM,KAAK,GAAGG,EAAK,IAAI,iCAAiCA,EAAK,cAAc,QAAQ;AAIzJ,QAHItC,EAAM,QAAQ,KAAGmC,EAAM,KAAK,UAAUnC,EAAM,KAAK,EAAE,GACnDA,EAAM,SAAS,KAAGmC,EAAM,KAAK,WAAWnC,EAAM,MAAM,EAAE,GACtDA,EAAM,OAAO,KAAGmC,EAAM,KAAK,SAASnC,EAAM,IAAI,EAAE,GAChDA,EAAM,QAAQ,KAAKA,EAAM,UAAU,KAAKA,EAAM,UAAU,GAAG;AAC9D,YAAMkG,IAAiB,CAAA;AACvB,MAAIlG,EAAM,QAAQ,KAAGkG,EAAe,KAAK,GAAGlG,EAAM,KAAK,GAAG,GACtDA,EAAM,UAAU,KAAGkG,EAAe,KAAK,GAAGlG,EAAM,OAAO,GAAG,GAC1DA,EAAM,UAAU,KAAGkG,EAAe,KAAK,GAAGlG,EAAM,OAAO,GAAG,GAC9DmC,EAAM,KAAK,SAAS+D,EAAe,KAAK,GAAG,CAAC,EAAE;AAAA,IAC/C;AACA,UAAMC,IAAYnG,EAAM,QAAQ,SAASA,EAAM,SAAS,UAAUA,EAAM,OAAOA,EAAM,QAAQ;AAC7F,WAAAmC,EAAM,KAAK,wBAAwBgE,EAAU,QAAQ,CAAC,CAAC,OAAO,GACvDhE;AAAA,EACR;AAAA,EACA,MAAMP,IAAU,IAAI;AACnB,UAAM,EAAE,cAAAwE,IAAe,eAAe,cAAAC,IAAe,aAAY,IAAKzE,GAChE0E,IAAapJ,EAAgB,gBAAgB,KAAK,QAAQ,GAC1DqJ,IAAa;AAAA,MAClB,MAAMD,EAAW;AAAA,MACjB,OAAOA,EAAW;AAAA,MAClB,KAAKA,EAAW;AAAA,MAChB,MAAMA,EAAW;AAAA,MACjB,QAAQA,EAAW;AAAA,MACnB,QAAQA,EAAW;AAAA,MACnB,aAAaA,EAAW;AAAA,MACxB,aAAaA,EAAW,eAAe;AAAA,MACvC,YAAYA,EAAW,cAAc;AAAA,MACrC,MAAM;AAAA,IACT,GACQE,IAAY;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GACQC,IAAgBD,EAAU,QAAQJ,CAAY;AACpD,QAAIK,MAAkB,GAAI,QAAO,KAAK,MAAK;AAC3C,UAAMC,IAAgB,CAAA;AACtB,aAASlN,IAAI,GAAGA,IAAIiN,GAAejN,KAAK;AACvC,YAAMqG,IAAO2G,EAAUhN,CAAC;AACxB,MAAAkN,EAAc7G,CAAI,IAAI0G,EAAW1G,CAAI;AAAA,IACtC;AACA,UAAMA,IAAO2G,EAAUC,CAAa;AACpC,QAAIpI,IAAQkI,EAAW1G,CAAI;AAC3B,QAAI4G,IAAgB,IAAID,EAAU,QAAQ;AACzC,YAAMG,IAAgBJ,EAAWC,EAAUC,IAAgB,CAAC,CAAC;AAa7D,OAZsB,CAAClF,GAAMqF,MAAY;AACxC,gBAAQrF,GAAI;AAAA,UACX,KAAK;AAAQ,mBAAOqF,IAAU;AAAA,UAC9B,KAAK;AAAA,UACL,KAAK;AAAS,mBAAO;AAAA,UACrB,KAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAY,mBAAOA,KAAW;AAAA,UACnC,KAAK;AAAU,mBAAOA,IAAU;AAAA,UAChC;AAAS,mBAAOA,KAAW;AAAA,QAChC;AAAA,MACG,GACkBP,GAAcM,CAAa,MAAGtI,KAAS;AAAA,IAC1D;AACA,IAAAqI,EAAc7G,CAAI,IAAIxB;AACtB,aAAS7E,IAAIiN,IAAgB,GAAGjN,IAAIgN,EAAU,QAAQhN,IAAK,CAAAkN,EAAcF,EAAUhN,CAAC,CAAC,IAAI;AACzF,WAAO,KAAK,IAAIkN,CAAa;AAAA,EAC9B;AAAA,EACA,cAAc;AACb,UAAMtI,IAAUlB,EAAgB,gBAAgB,KAAK,QAAQ;AAC7D,WAAO;AAAA,MACN,MAAMkB,EAAQ;AAAA,MACd,OAAOA,EAAQ;AAAA,MACf,KAAKA,EAAQ;AAAA,MACb,WAAWA,EAAQ;AAAA,IACtB;AAAA,EACC;AAAA,EACA,cAAc;AACb,UAAMA,IAAUlB,EAAgB,gBAAgB,KAAK,QAAQ;AAC7D,WAAO;AAAA,MACN,MAAMkB,EAAQ;AAAA,MACd,QAAQA,EAAQ;AAAA,MAChB,QAAQA,EAAQ;AAAA,MAChB,aAAaA,EAAQ;AAAA,IACxB;AAAA,EACC;AAAA,EACA,SAASR,GAAMC,GAAOC,GAAK;AAC1B,WAAO,KAAK,IAAI;AAAA,MACf,MAAAF;AAAA,MACA,OAAAC;AAAA,MACA,KAAAC;AAAA,IACH,CAAG;AAAA,EACF;AAAA,EACA,SAASC,GAAMC,IAAS,GAAGC,IAAS,GAAGC,IAAc,GAAG;AACvD,WAAO,KAAK,IAAI;AAAA,MACf,MAAAH;AAAA,MACA,QAAAC;AAAA,MACA,QAAAC;AAAA,MACA,aAAAC;AAAA,IACH,CAAG;AAAA,EACF;AAAA,EACA,YAAY;;AACX,aAAO3B,IAAA,KAAK,aAAL,gBAAAA,EAAe,WAAU;AAAA,EACjC;AAAA,EACA,uBAAuB;;AACtB,aAAOA,IAAA,KAAK,aAAL,gBAAAA,EAAe,sBAAqB;AAAA,EAC5C;AAAA,EACA,gBAAgB;;AACf,aAAOA,IAAA,KAAK,aAAL,gBAAAA,EAAe,eAAc;AAAA,EACrC;AAAA,EACA,aAAa;AACZ,WAAO,KAAK,QAAQ,KAAK;AAAA,EAC1B;AAAA,EACA,WAAW;AACV,WAAO,KAAK,MAAM,KAAK;AAAA,EACxB;AAAA,EACA,MAAM2G,GAAOtB,GAAS;AACrB,UAAM6C,IAAWvH,EAAgB,gBAAgB,KAAK,QAAQ,GACxDwH,IAAWxH,EAAgB,gBAAgBgG,EAAM,QAAQ,GACzDwC,IAAY,YAAY,IAAG;AACjC,QAAI;AACH,YAAMC,IAAkB,CAAA;AACxB,MAAI/D,KAAA,QAAAA,EAAS,gBAAa+D,EAAgB,cAAc/D,EAAQ,cAC5DA,KAAA,QAAAA,EAAS,iBAAc+D,EAAgB,eAAe/D,EAAQ;AAClE,YAAMT,IAAWsD,EAAS,MAAMC,GAAU,OAAO,KAAKiB,CAAe,EAAE,SAAS,IAAIA,IAAkB,MAAM,GACtG3F,IAAQzD,GAAU,gBAAgB4E,CAAQ,GAC1CyE,IAAYlB,EAAS,MACrBmB,IAAUpB,EAAS,MACnBqB,IAAgB,CAAA;AACtB,eAASlI,IAAOgI,GAAWhI,KAAQiI,GAASjI,KAAQ;AACnD,cAAMmI,IAASxJ,GAAU,gBAAgBqB,CAAI;AAC7C,QAAAkI,EAAc,KAAK;AAAA,UAClB,MAAAlI;AAAA,UACA,QAAAmI;AAAA,UACA,gBAAgBA,IAAS,KAAK;AAAA,QACnC,CAAK;AAAA,MACF;AACA,YAAM5D,IAAQ,KAAK,mBAAmBuC,GAAUD,GAAUzE,GAAO8F,CAAa,GACxEE,IAAoB,YAAY,IAAG,IAAKN;AAC9C,aAAO,IAAIhE,GAAe1B,GAAO,KAAK,OAAO,QAAQ;AAAA,QACpD,WAAW0E,EAAS,SAAQ;AAAA,QAC5B,SAASD,EAAS,SAAQ;AAAA,QAC1B,OAAAtC;AAAA,QACA,MAAM;AAAA,QACN,eAAe2D,EAAc,OAAO,CAAClM,MAAMA,EAAE,MAAM;AAAA,QACnD,mBAAAoM;AAAA,MACJ,CAAI;AAAA,IACF,QAAQ;AACP,aAAO,IAAItE,GAAenF,GAAU,eAAe,KAAK,OAAO,QAAQ;AAAA,QACtE,WAAWmI,EAAS,SAAQ;AAAA,QAC5B,SAASD,EAAS,SAAQ;AAAA,QAC1B,OAAO,CAAC,6CAA6C;AAAA,QACrD,MAAM;AAAA,MACV,CAAI;AAAA,IACF;AAAA,EACD;AAAA,EACA,iBAAiBvB,GAAO;AACvB,UAAM/B,IAAW+B,IAAQ,KAAK,MAAMA,CAAK,IAAI,KAAK,MAAM3G,GAAU,KAAK,GACjEyD,IAAQ,CAAA;AACd,IAAImB,EAAS,SAAOnB,EAAM,KAAK,GAAGmB,EAAS,KAAK,GAAG,GAC/CA,EAAS,UAAQnB,EAAM,KAAK,GAAGmB,EAAS,MAAM,GAAG,GACjDA,EAAS,QAAMnB,EAAM,KAAK,GAAGmB,EAAS,IAAI,GAAG;AACjD,UAAM0F,IAAY,CAAA;AAClB,IAAI1F,EAAS,SAAO0F,EAAU,KAAK,GAAG1F,EAAS,KAAK,GAAG,GACnDA,EAAS,WAAS0F,EAAU,KAAK,GAAG1F,EAAS,OAAO,GAAG,GACvDA,EAAS,WAAS0F,EAAU,KAAK,GAAG1F,EAAS,OAAO,GAAG;AAC3D,UAAMvE,IAAS,IAAIoD,EAAM,KAAK,EAAE,CAAC,GAAG6G,EAAU,SAAS,IAAI,MAAMA,EAAU,KAAK,EAAE,IAAI,EAAE;AACxF,WAAOjK,MAAW,MAAM,SAASA;AAAA,EAClC;AAAA,EACA,SAAS;AACR,WAAO,KAAK,SAASL,GAAU,IAAG,CAAE;AAAA,EACrC;AAAA,EACA,WAAW;AACV,WAAO,KAAK,QAAQA,GAAU,IAAG,CAAE;AAAA,EACpC;AAAA,EACA,UAAU;AACT,WAAO,KAAK,OAAOA,GAAU,IAAG,GAAI,KAAK;AAAA,EAC1C;AAAA,EACA,aAAa;AACZ,WAAO,KAAK,OAAOA,GAAU,IAAG,EAAG,IAAI,EAAE,KAAK,GAAG,GAAG,KAAK;AAAA,EAC1D;AAAA,EACA,cAAc;AACb,WAAO,KAAK,OAAOA,GAAU,IAAG,EAAG,SAAS,EAAE,KAAK,GAAG,GAAG,KAAK;AAAA,EAC/D;AAAA,EACA,YAAY;AACX,UAAM6B,IAAUlB,EAAgB,gBAAgB,KAAK,QAAQ;AAC7D,WAAOkB,EAAQ,cAAc,KAAKA,EAAQ,cAAc;AAAA,EACzD;AAAA,EACA,YAAY;AACX,UAAM0I,IAAU,KAAK,OAAO,YAAY;AACxC,WAAOvK,GAAU,SAAS,IAAIuK,CAAO;AAAA,EACtC;AAAA,EACA,gBAAgB;AACf,WAAO,CAAC,KAAK,UAAS,KAAM,CAAC,KAAK,UAAS;AAAA,EAC5C;AAAA,EACA,gBAAgBC,GAAM;AACrB,UAAMzI,IAAM,KAAK,MAAMyI,CAAI;AAC3B,QAAI,CAAC,OAAO,SAASzI,CAAG,KAAKA,MAAQ,EAAG,QAAO;AAC/C,QAAI0F,IAAS,KAAK,MAAK,GACnBgD,IAAY,KAAK,IAAI1I,CAAG;AAC5B,UAAM2I,IAAO3I,IAAM,IAAI,IAAI;AAC3B,WAAO0I,IAAY;AAClB,MAAAhD,IAASA,EAAO,IAAI,EAAE,KAAKiD,EAAI,CAAE,GAC7BjD,EAAO,cAAa,KAAIgD;AAE7B,WAAOhD;AAAA,EACR;AAAA,EACA,qBAAqB+C,GAAM;AAC1B,WAAO,KAAK,gBAAgB,CAACA,CAAI;AAAA,EAClC;AACD,GA3pBCvK,EAJeD,IAIR,YAA2B,oBAAI,IAAG,IAezCC,EAnBeD,IAmBR,iBAAgB;AAAA,EACtB,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,MAAM;AAAA,EACN,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,EACT,cAAc;AAChB;AAsICC,EAlKeD,IAkKR,kBAAiB;AAAA,EACvB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,MAAM;AAAA,EACN,KAAK;AAAA,EACL,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,MAAM;AAAA,EACN,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,EACT,cAAc;AAAA,EACd,cAAc;AAAA,EACd,aAAa;AACf,IAvLgBA;AC1mChB;AACA,IAAI2K,KAAkB;AAAA,EACrB,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAkB;AAAA,EACrB,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAkB;AAAA,EACrB,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAiB;AAAA,EACpB,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAiB;AAAA,EACpB,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAgB;AAAA,EACnB,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAmB;AAAA,EACtB,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAyB;AAAA,EAC5B,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAqB;AAAA,EACxB,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAkB;AAAA,EACrB,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GACIC,KAAyB;AAAA,EAC5B,UAAU;AAAA,IACT,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,IAAI;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AAAA,EACC,KAAK;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,eAAe;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,IACP;AAAA,IACE,SAAS;AAAA,MACR,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACZ;AAAA,EACA;AACA,GAMIC,KAAc;AAAA,EACjB,GAAGX;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AACJ;AAqBoB,OAAO,KAAKC,EAAW,EAAE;ACv7G7C;AAQA,IAAIC,KAAW,OAAO,QAClBC,KAAY,OAAO,gBACnBC,KAAmB,OAAO,0BAC1BC,KAAoB,OAAO,qBAC3BC,KAAe,OAAO,gBACtBC,KAAe,OAAO,UAAU,gBAChCC,KAAgB,CAACC,GAAIC,MAAQ,OAAOA,MAAQD,GAAIC,IAAM,EAAE,SAAS,CAAA,EAAE,GAAI,SAASA,CAAG,GAAGD,IAAK,OAAOC,EAAI,UACtGC,KAAc,CAACC,GAAIC,GAAMC,GAAQC,MAAS;AAC7C,MAAIF,KAAQ,OAAOA,KAAS,YAAY,OAAOA,KAAS,WAAY,UAASG,IAAOX,GAAkBQ,CAAI,GAAG,IAAI,GAAGrP,IAAIwP,EAAK,QAAQC,GAAK,IAAIzP,GAAG;AAChJ,IAAAyP,IAAMD,EAAK,CAAC,GACR,CAACT,GAAa,KAAKK,GAAIK,CAAG,KAAKA,MAAQH,KAAQX,GAAUS,GAAIK,GAAK;AAAA,MACrE,MAAM,CAACpO,MAAMgO,EAAKhO,CAAC,GAAG,KAAK,MAAMoO,CAAG;AAAA,MACpC,YAAY,EAAEF,IAAOX,GAAiBS,GAAMI,CAAG,MAAMF,EAAK;AAAA,IAC7D,CAAG;AAEF,SAAOH;AACR,GACIM,KAAU,CAACR,GAAKS,GAAYpM,OAAYA,IAAS2L,KAAO,OAAOR,GAASI,GAAaI,CAAG,CAAC,IAAI,CAAA,GAAIC,GAAoDR,GAAUpL,GAAQ,WAAW;AAAA,EACrL,OAAO2L;AAAA,EACP,YAAY;AACb,CAAC,GAAYA,CAAG,IAGZU,IAAkC,gBAAAF,IAAyB,gBAAAV,IAAe,CAACa,GAASC,MAAW;AAClG,GAAC,SAASvP,GAAGJ,GAAG;AACf,IAAY,OAAO0P,KAAnB,YAA6C,OAAOC,IAAtB,MAA+BA,EAAO,UAAU3P,MAAoB,OAAO,UAArB,cAA+B,OAAO,MAAM,OAAOA,CAAC,KAAKI,IAAIA,KAAK,MAAMA,EAAE,OAAOJ;EACtK,GAAG0P,GAAS,WAAW;AAEtB,QAAItP,IAAI,KAAK,MAAMJ,IAAI,KAAK;AAC5B,aAASC,EAAED,GAAGC,GAAG;AAChB,OAASA,KAAR,QAAaA,IAAID,EAAE,YAAYC,IAAID,EAAE;AACtC,eAASc,IAAI,GAAGX,KAAI,MAAMF,CAAC,GAAGa,IAAIb,GAAGa,IAAK,CAAAX,GAAEW,CAAC,IAAId,EAAEc,CAAC;AACpD,aAAOX;AAAA,IACR;AACA,aAASW,EAAEV,GAAG;AACb,UAAI,MAAM,QAAQA,CAAC,EAAG,QAAOA;AAAA,IAC9B;AACA,aAASP,EAAEG,GAAG;AACb,UAAeA,MAAX,OAAc,OAAM,IAAI,eAAe,2DAA2D;AACtG,aAAOA;AAAA,IACR;AACA,aAASG,EAAEF,GAAGD,GAAGc,GAAG;AACnB,aAAOd,IAAIE,EAAEF,CAAC,GAAGW,EAAEV,GAAG,EAAC,IAAK,QAAQ,UAAUD,GAAGc,KAAK,CAAA,GAAIZ,EAAED,CAAC,EAAE,WAAW,IAAID,EAAE,MAAMC,GAAGa,CAAC,CAAC;AAAA,IAC5F;AACA,aAAShB,EAAEM,GAAGJ,GAAG;AAChB,UAAI,EAAEI,aAAaJ,GAAI,OAAM,IAAI,UAAU,mCAAmC;AAAA,IAC/E;AACA,aAASe,EAAEd,GAAGD,GAAGI,GAAG;AACnB,UAAI,EAAC,EAAI,QAAO,QAAQ,UAAU,MAAM,MAAM,SAAS;AACvD,UAAIU,KAAI,CAAC,IAAI;AACb,MAAAA,GAAE,KAAK,MAAMA,IAAGd,CAAC;AACjB,UAAIH,IAAI,KAAKI,EAAE,KAAK,MAAMA,GAAGa,EAAC,GAAC;AAC/B,aAAOV,KAAK0B,EAAEjC,GAAGO,EAAE,SAAS,GAAGP;AAAA,IAChC;AACA,aAASU,EAAEN,GAAGG,GAAG;AAChB,eAASU,GAAGjB,KAAI,GAAGA,KAAIO,EAAE,QAAQP,KAAK,CAAAiB,IAAIV,EAAEP,EAAC,GAAGiB,EAAE,aAAaA,EAAE,cAAc,IAAIA,EAAE,eAAe,IAAI,WAAWA,MAAMA,EAAE,WAAW,KAAK,OAAO,eAAeb,GAAGwB,GAAEX,EAAE,GAAG,GAAGA,CAAC;AAAA,IAChL;AACA,aAASN,EAAEP,GAAGG,GAAGU,GAAG;AACnB,aAAOV,KAAKG,EAAEN,EAAE,WAAWG,CAAC,GAAGU,KAAKP,EAAEN,GAAGa,CAAC,GAAG,OAAO,eAAeb,GAAG,aAAa,EAAE,UAAU,GAAE,CAAE,GAAGA;AAAA,IACvG;AACA,aAASF,EAAEE,GAAGa,GAAG;AAChB,UAAIV,IAAmB,OAAO,SAAtB,OAAgCH,EAAE,OAAO,QAAQ,KAAKA,EAAE,YAAY;AAC5E,UAAI,CAACG,GAAG;AACP,YAAI,MAAM,QAAQH,CAAC,MAAMG,IAAIsC,EAAEzC,CAAC,MAAMa,GAAuC;AAC5E,UAAAV,MAAMH,IAAIG;AACV,cAAIN,KAAI,GAAGiB,IAAI,WAAW;AAAA,UAAC;AAC3B,iBAAO;AAAA,YACN,GAAGA;AAAA,YACH,GAAG,WAAW;AACb,qBAAOjB,MAAKG,EAAE,SAAS,EAAE,MAAM,GAAE,IAAK;AAAA,gBACrC,MAAM;AAAA,gBACN,OAAOA,EAAEH,IAAG;AAAA,cACpB;AAAA,YACM;AAAA,YACA,GAAG,SAASM,GAAG;AACd,oBAAMA;AAAA,YACP;AAAA,YACA,GAAGW;AAAA,UACT;AAAA,QACI;AACA,cAAM,IAAI,UAAU;AAAA,mFAAuI;AAAA,MAC5J;AACA,UAAIP,GAAG,IAAI,IAAIC,IAAI;AACnB,aAAO;AAAA,QACN,GAAG,WAAW;AACb,UAAAL,IAAIA,EAAE,KAAKH,CAAC;AAAA,QACb;AAAA,QACA,GAAG,WAAW;AACb,cAAID,IAAII,EAAE,KAAI;AACd,iBAAO,IAAIJ,EAAE,MAAMA;AAAA,QACpB;AAAA,QACA,GAAG,SAASI,GAAG;AACd,UAAAK,IAAI,IAAID,IAAIJ;AAAA,QACb;AAAA,QACA,GAAG,WAAW;AACb,cAAI;AACH,iBAAaA,EAAE,UAAV,QAAoBA,EAAE,OAAM;AAAA,UAClC,UAAC;AACA,gBAAIK,EAAG,OAAMD;AAAA,UACd;AAAA,QACD;AAAA,MACJ;AAAA,IACE;AACA,aAASN,EAAEE,GAAG;AACb,aAAOF,IAAI,OAAO,iBAAiB,OAAO,eAAe,KAAI,IAAK,SAASE,GAAG;AAC7E,eAAOA,EAAE,aAAa,OAAO,eAAeA,CAAC;AAAA,MAC9C,GAAGF,EAAEE,CAAC;AAAA,IACP;AACA,aAASQ,EAAEX,GAAGD,GAAG;AAChB,UAAkB,OAAOA,KAArB,cAAmCA,MAAT,KAAY,OAAM,IAAI,UAAU,oDAAoD;AAClH,MAAAC,EAAE,YAAY,OAAO,OAAOD,KAAKA,EAAE,WAAW,EAAE,aAAa;AAAA,QAC5D,OAAOC;AAAA,QACP,UAAU;AAAA,QACV,cAAc;AAAA,MAClB,EAAI,CAAE,GAAG,OAAO,eAAeA,GAAG,aAAa,EAAE,UAAU,GAAE,CAAE,GAAGD,KAAK8B,EAAE7B,GAAGD,CAAC;AAAA,IAC3E;AACA,aAASS,EAAEL,GAAG;AACb,UAAI;AACH,eAAc,SAAS,SAAS,KAAKA,CAAC,EAAE,QAAQ,eAAe,MAAxD;AAAA,MACR,QAAY;AACX,eAAqB,OAAOA,KAArB;AAAA,MACR;AAAA,IACD;AACA,aAAS,IAAI;AACZ,UAAI;AACH,YAAIA,IAAI,CAAC,QAAQ,UAAU,QAAQ,KAAK,QAAQ,UAAU,SAAS,CAAA,GAAI,WAAW;AAAA,QAAC,CAAC,CAAC;AAAA,MACtF,QAAY;AAAA,MAAC;AACb,cAAQ,IAAI,WAAW;AACtB,eAAO,CAAC,CAACA;AAAA,MACV,GAAC;AAAA,IACF;AACA,aAASY,EAAEF,GAAGC,GAAG;AAChB,UAAIjB,IAAYgB,KAAR,OAAY,OAAsB,OAAO,SAAtB,OAAgCA,EAAE,OAAO,QAAQ,KAAKA,EAAE,YAAY;AAC/F,UAAYhB,KAAR,MAAW;AACd,YAAIU,IAAGI,GAAGV,GAAGO,GAAGQ,IAAI,CAAA,GAAIV,IAAI,IAAIS,IAAI;AACpC,YAAI;AACH,cAAId,KAAKJ,IAAIA,EAAE,KAAKgB,CAAC,GAAG,MAAYC,MAAN,EAGvB,QAAO,EAAER,KAAKC,KAAIN,EAAE,KAAKJ,CAAC,GAAG,UAAUmB,EAAE,KAAKT,GAAE,KAAK,GAAGS,EAAE,WAAWF,IAAIR,IAAI,GAAG;AAAA,QACxF,SAASH,GAAG;AACX,UAAAY,IAAI,IAAIJ,IAAIR;AAAA,QACb,UAAC;AACA,cAAI;AACH,gBAAI,CAACG,KAAaT,EAAE,UAAV,SAAqBW,IAAIX,EAAE,OAAM,GAAI,OAAOW,CAAC,MAAMA,GAAI;AAAA,UAClE,UAAC;AACA,gBAAIO,EAAG,OAAMJ;AAAA,UACd;AAAA,QACD;AACA,eAAOK;AAAA,MACR;AAAA,IACD;AACA,aAASX,IAAI;AACZ,YAAM,IAAI,UAAU;AAAA,mFAA2I;AAAA,IAChK;AACA,aAASK,EAAEV,GAAGD,GAAG;AAChB,UAAIA,MAAkB,OAAOA,KAAnB,YAAsC,OAAOA,KAArB,YAAyB,QAAOA;AAClE,UAAeA,MAAX,OAAc,OAAM,IAAI,UAAU,0DAA0D;AAChG,aAAOH,EAAEI,CAAC;AAAA,IACX;AACA,aAAS6B,EAAE7B,GAAGD,GAAG;AAChB,aAAO8B,IAAI,OAAO,iBAAiB,OAAO,eAAe,KAAI,IAAK,SAAS7B,GAAGD,IAAG;AAChF,eAAOC,EAAE,YAAYD,IAAGC;AAAA,MACzB,GAAG6B,EAAE7B,GAAGD,CAAC;AAAA,IACV;AACA,aAASK,EAAEL,GAAGC,GAAG;AAChB,aAAOa,EAAEd,CAAC,KAAKgB,EAAEhB,GAAGC,CAAC,KAAKyC,EAAE1C,GAAGC,CAAC,KAAKK,EAAC;AAAA,IACvC;AACA,aAASY,EAAEJ,GAAGd,GAAG;AAChB,UAAgB,OAAOc,KAAnB,YAAwB,CAACA,EAAG,QAAOA;AACvC,UAAIjB,IAAIiB,EAAE,OAAO,WAAW;AAC5B,UAAejB,MAAX,QAAc;AACjB,YAAIO,KAAIP,EAAE,KAAKiB,GAAGd,CAAc;AAChC,YAAgB,OAAOI,MAAnB,SAAsB,QAAOA;AACjC,cAAM,IAAI,UAAU,8CAA8C;AAAA,MACnE;AACA,aAAyB,OAAiBU,CAAC;AAAA,IAC5C;AACA,aAASW,GAAErB,GAAG;AACb,UAAIJ,IAAIkB,EAAEd,GAAG,QAAQ;AACrB,aAAmB,OAAOJ,KAAnB,WAAuBA,IAAIA,IAAI;AAAA,IACvC;AACA,aAASU,EAAEN,GAAG;AACb;AACA,aAAOM,IAAkB,OAAO,UAArB,cAA2C,OAAO,OAAO,YAA1B,WAAqC,SAASN,GAAG;AAC1F,eAAO,OAAOA;AAAA,MACf,IAAI,SAASA,GAAG;AACf,eAAOA,KAAmB,OAAO,UAArB,cAA+BA,EAAE,gBAAgB,UAAUA,MAAM,OAAO,YAAY,WAAW,OAAOA;AAAA,MACnH,GAAGM,EAAEN,CAAC;AAAA,IACP;AACA,aAASsC,EAAEtC,GAAGU,GAAG;AAChB,UAAIV,GAAG;AACN,YAAgB,OAAOA,KAAnB,SAAsB,QAAOH,EAAEG,GAAGU,CAAC;AACvC,YAAIjB,IAAI,CAAA,EAAG,SAAS,KAAKO,CAAC,EAAE,MAAM,GAAG,EAAE;AACvC,eAAoBP,MAAb,YAAkBO,EAAE,gBAAgBP,IAAIO,EAAE,YAAY,OAAiBP,MAAV,SAAyBA,MAAV,QAAc,MAAM,KAAKO,CAAC,IAAoBP,MAAhB,eAAqB,2CAA2C,KAAKA,CAAC,IAAII,EAAEG,GAAGU,CAAC,IAAI;AAAA,MACtM;AAAA,IACD;AACA,aAASM,EAAEhB,GAAG;AACb,UAAIH,IAAkB,OAAO,OAArB,aAA2C,oBAAI,IAAG,IAAK;AAC/D,aAAOmB,IAAI,SAAShB,GAAG;AACtB,iBAASJ,KAAI;AACZ,iBAAOe,EAAEX,GAAG,WAAWF,EAAE,IAAI,EAAE,WAAW;AAAA,QAC3C;AACA,YAAaE,MAAT,QAAc,CAACK,EAAEL,CAAC,EAAG,QAAOA;AAChC,YAAkB,OAAOA,KAArB,WAAwB,OAAM,IAAI,UAAU,oDAAoD;AACpG,YAAeH,MAAX,QAAc;AACjB,cAAIA,EAAE,IAAIG,CAAC,EAAG,QAAOH,EAAE,IAAIG,CAAC;AAC5B,UAAAH,EAAE,IAAIG,GAAGJ,EAAC;AAAA,QACX;AACA,eAAOA,GAAE,YAAY,OAAO,OAAOI,EAAE,WAAW,EAAE,aAAa;AAAA,UAC9D,OAAOJ;AAAA,UACP,YAAY;AAAA,UACZ,UAAU;AAAA,UACV,cAAc;AAAA,QACnB,EAAK,CAAE,GAAG8B,EAAE9B,IAAGI,CAAC;AAAA,MACb,GAAGgB,EAAEhB,CAAC;AAAA,IACP;AACA,QAAIiB,KAAI,SAASjB,GAAG;AACnB,UAAIJ,IAAI,KAAK,KAAKC,IAAI,KAAK,KAAKa,KAAI,KAAK;AACzC,eAASC,EAAEX,GAAGJ,GAAG;AAChB,YAAIC;AACJ,YAAIH,EAAE,MAAMiB,CAAC,GAAGd,IAAIE,EAAE,MAAMY,GAAG,CAACX,CAAC,CAAC,GAAGH,EAAE,OAAOD,GAAG,OAAO,eAAeC,GAAGc,EAAE,SAAS,GAAGX,IAAIW,EAAE,aAAc,OAAM,IAAI,WAAW,8BAA8B;AAC/J,eAAOd;AAAA,MACR;AACA,aAAOW,EAAEG,GAAGX,CAAC,GAAGI,EAAEO,GAAG;AAAA,QACpB;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,gBAAIf,GAAGC,IAAI,CAAC,SAAS,GAAGa,IAAIf,EAAE,IAAI;AAClC,gBAAI;AACH,mBAAKe,EAAE,EAAC,GAAI,EAAEd,IAAIc,EAAE,EAAC,GAAI,QAAO;AAC/B,oBAAIjB,IAAIG,EAAE;AACV,gBAAAC,EAAE,MAAMJ,MAAKA,MAAM,GAAG,SAAS,EAAE,KAAS,IAAI;AAAA,cAC/C;AAAA,YACD,SAASO,GAAG;AACX,cAAAU,EAAE,EAAEV,CAAC;AAAA,YACN,UAAC;AACA,cAAAU,EAAE,EAAC;AAAA,YACJ;AACA,mBAAOb,EAAE,KAAK,GAAG,GAAGA,EAAE,KAAK,EAAE;AAAA,UAC9B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,gBAAID,IAAI,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,SAA0B,UAAU,CAAC,IAAI;AACzE,gBAAI,IAAIA,KAAK,KAAKA,EAAG,OAAM,IAAI,WAAW,oDAAoD;AAC9F,mBAAa,KAAK,WAAX,IAAoB,OAAYA,IAAIA,IAAI,MAAd,IAAmBe,EAAE,yBAAyB,MAAMf,CAAC,IAAIe,EAAE,kBAAkB,MAAMf,GAAG,EAAE;AAAA,UAC1H;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,kBAAM,IAAI,MAAM,4DAA4D;AAAA,UAC7E;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,qBAASA,IAAI,IAAIe,EAAE,KAAK,QAAQ,KAAK,IAAI,GAAGD,IAAI,GAAGA,IAAI,KAAK,QAAQA,IAAK,CAAAd,EAAEc,CAAC,IAAI,KAAKA,CAAC;AACtF,mBAAOd;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,qBAASA,IAAI,KAAK,QAAQC,IAAI,KAAKD,IAAI,CAAC,GAASC,MAAN,IAAU,CAAAD,KAAKC,IAAI,KAAKD,IAAI,CAAC,GAAG,KAAK,IAAG;AACnF,mBAAaA,MAAN,MAAY,KAAK,OAAO,KAAK;AAAA,UACrC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,qBAASA,IAAI,GAAGA,IAAI,KAAK,QAAQA,IAAK,MAAKA,CAAC,IAAI;AAAA,UACjD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,mBAAOe,EAAE,QAAQ,KAAK,QAAQ,KAAK,SAAS,CAAC,CAAC;AAAA,UAC/C;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWX,GAAGJ,GAAGc,GAAG;AAC1B,YAAAA,IAAI,KAAK,WAAWA,IAAI,KAAK;AAC7B,qBAASX,IAAI,QAAQC,GAAGN,IAAIM,MAAM,IAAIG,IAAI,GAAGC,IAAIR,GAAGD,IAAI,GAAGA,IAAIe,GAAGf,KAAK;AACtE,kBAAIG,IAAI,KAAK,QAAQH,CAAC,GAAGU,IAAI,QAAQP,GAAGe,IAAIf,MAAM,IAAIc,IAAID,EAAE,OAAON,GAAGN,CAAC,GAAGG,KAAIS,EAAE,OAAON,GAAGX,CAAC,GAAGa,IAAII,EAAE,OAAOE,GAAGd,CAAC,GAAG2B,KAAIf,EAAE,OAAOE,GAAGnB,CAAC,GAAGO,KAAIG,IAAIQ,IAAIT;AAClJ,cAAAA,IAAIF,OAAM,IAAIA,MAAK,YAAYA,QAAO,QAAQC,OAAM,QAAQ,QAAQK,MAAM,KAAKJ,KAAKF,OAAM,IAAIG,IAAIsB,MAAKxB,OAAM,OAAOK,MAAM,KAAK,KAAK,WAAWZ,GAAG,aAAaM,EAAC;AAAA,YACjK;AACA,gBAAUE,MAAN,KAAiBC,MAAN,EAAS,OAAM,IAAI,MAAM,oBAAoB;AAAA,UAC7D;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWJ,GAAGJ,GAAGc,GAAG;AAC1B,qBAASX,GAAGL,IAAI,GAAGiB,IAAI,GAAGA,IAAID,GAAGC,IAAK,CAAAZ,IAAI,KAAK,YAAYH,IAAIe,CAAC,IAAIX,EAAE,YAAYW,CAAC,IAAIjB,GAAGA,IAAIK,MAAM,IAAI,KAAK,eAAeH,IAAIe,GAAG,QAAQZ,CAAC;AAC5I,mBAAOL;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWM,GAAGJ,GAAGc,GAAG;AAC1B,gBAAIX,IAAIW,IAAI,MAAM,GAAGhB,IAAI;AACzB,gBAAI,IAAIE,GAAG;AACV,cAAAA,MAAM;AACN,uBAASe,IAAI,KAAK,QAAQf,CAAC,GAAGO,IAAI,QAAQQ,GAAGP,IAAI,GAAGA,IAAIL,GAAGK,KAAK;AAC/D,oBAAIT,IAAIK,EAAE,QAAQI,CAAC,GAAGN,KAAKa,MAAM,OAAO,QAAQhB,KAAKD;AACrD,gBAAAA,IAAI,IAAII,MAAM,IAAI,KAAK,WAAWF,IAAIQ,IAAI,QAAQN,MAAM,KAAK,QAAQK,CAAC,GAAGQ,IAAI,KAAK,QAAQf,IAAIQ,IAAI,CAAC,GAAGD,KAAK,QAAQQ,MAAMhB,MAAM,MAAMD,GAAGA,IAAI,IAAIS,MAAM;AAAA,cACvJ;AACA,kBAAIK,IAAIR,EAAE,QAAQI,CAAC,GAAGC,KAAKM,MAAM,OAAO,QAAQH,KAAKd;AACrD,cAAAA,IAAI,IAAIW,MAAM,IAAI,KAAK,WAAWT,IAAIQ,IAAI,QAAQC,MAAM,KAAK,QAAQF,CAAC;AACtE,kBAAIU,KAAIL,MAAM;AACd,kBAAIZ,IAAIQ,IAAI,KAAK,KAAK,OAAQ,OAAM,IAAI,WAAW,eAAe;AAClE,eAAM,IAAIM,MAAV,MAAiBC,IAAI,KAAK,QAAQf,IAAIQ,IAAI,CAAC,GAAGD,KAAK,QAAQQ,KAAKE,KAAInB,GAAGA,IAAI,IAAIS,MAAM,IAAI,KAAK,WAAWP,IAAII,EAAE,QAAQ,aAAaW,IAAI,QAAQR,CAAC;AAAA,YAClJ,OAAO;AACN,cAAAP,MAAM;AACN,uBAASgB,IAAI,GAAGA,IAAIZ,EAAE,SAAS,GAAGY,KAAK;AACtC,oBAAIV,KAAI,KAAK,QAAQN,IAAIgB,CAAC,GAAGL,KAAIP,EAAE,QAAQY,CAAC,GAAGc,MAAK,QAAQxB,OAAM,QAAQK,MAAKb;AAC/E,gBAAAA,IAAI,IAAIgC,OAAM;AACd,oBAAIzB,MAAKC,OAAM,OAAOK,OAAM,MAAMb;AAClC,gBAAAA,IAAI,IAAIO,OAAM,IAAI,KAAK,WAAWL,IAAIgB,IAAI,QAAQX,OAAM,KAAK,QAAQyB,EAAC;AAAA,cACvE;AACA,kBAAIZ,KAAI,KAAK,QAAQlB,IAAIgB,CAAC,GAAGS,KAAIrB,EAAE,QAAQY,CAAC,GAAGN,MAAK,QAAQQ,OAAM,QAAQO,MAAK3B;AAC/E,cAAAA,IAAI,IAAIY,OAAM;AACd,kBAAIgC,KAAI;AACR,eAAM,IAAI5B,MAAV,MAAiB4B,MAAKxB,OAAM,OAAOO,OAAM,MAAM3B,GAAGA,IAAI,IAAI4C,OAAM,KAAK,KAAK,WAAW1C,IAAIgB,IAAI,QAAQ0B,OAAM,KAAK,QAAQhC,EAAC;AAAA,YAC1H;AACA,mBAAOZ;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWM,GAAG;AACpB,gBAAUA,MAAN,GAAS;AACZ,uBAASU,GAAGjB,IAAI,KAAK,QAAQ,CAAC,MAAMO,GAAGD,IAAI,KAAK,SAAS,GAAGL,IAAI,GAAGA,IAAIK,GAAGL,IAAK,CAAAgB,IAAI,KAAK,QAAQhB,IAAI,CAAC,GAAG,KAAK,WAAWA,GAAG,aAAagB,KAAK,KAAKV,IAAIP,CAAC,GAAGA,IAAIiB,MAAMV;AACpK,mBAAK,WAAWD,GAAGN,CAAC;AAAA,YACrB;AAAA,UACD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWO,GAAG;AACpB,mBAAO,KAAKA,CAAC;AAAA,UACd;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAG;AACpB,mBAAO,KAAKA,CAAC,MAAM;AAAA,UACpB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAGJ,GAAG;AACvB,iBAAKI,CAAC,IAAI,IAAIJ;AAAA,UACf;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,iBAAKI,CAAC,IAAI,IAAIJ;AAAA,UACf;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,gBAAIA,IAAI,KAAK;AACb,mBAAO,SAAS,KAAK,gBAAgBA,IAAI,CAAC,IAAI,IAAIA,IAAI,IAAI,IAAIA;AAAA,UAC/D;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAG;AACpB,mBAAO,QAAQ,KAAKA,MAAM,CAAC,MAAM,MAAM,IAAIA;AAAA,UAC5C;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAGJ,GAAG;AACvB,gBAAIc,IAAIV,MAAM,GAAGP,IAAI,KAAK,QAAQiB,CAAC,GAAGX,IAAI,IAAIC,IAAI,QAAQP,IAAIG,KAAK,KAAK,aAAaH,IAAI,QAAQG;AACjG,iBAAK,WAAWc,GAAGX,CAAC;AAAA,UACrB;AAAA,QACL;AAAA,MACA,GAAM;AAAA,QACF;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWC,GAAG;AACpB,gBAAIH,IAAI,OAAO;AACf,gBAAgB,OAAOG,KAAnB,UAAsB;AACzB,kBAAUA,MAAN,EAAS,QAAOW,EAAE,OAAM;AAC5B,kBAAIA,EAAE,gBAAgBX,CAAC,EAAG,QAAO,IAAIA,IAAIW,EAAE,WAAW,CAACX,GAAG,EAAE,IAAIW,EAAE,WAAWX,GAAG,EAAE;AAClF,kBAAI,CAACH,EAAEG,CAAC,KAAKU,GAAEV,CAAC,MAAMA,EAAG,OAAM,IAAI,WAAW,gBAAgBA,IAAI,6DAA6D;AAC/H,qBAAOW,EAAE,aAAaX,CAAC;AAAA,YACxB;AACA,gBAAgB,OAAOA,KAAnB,UAAsB;AACzB,kBAAIP,IAAIkB,EAAE,aAAaX,CAAC;AACxB,kBAAaP,MAAT,KAAY,OAAM,IAAI,YAAY,oBAAoBO,IAAI,cAAc;AAC5E,qBAAOP;AAAA,YACR;AACA,gBAAiB,OAAOO,KAApB,UAAuB,QAAcA,MAAP,KAAWW,EAAE,WAAW,GAAG,EAAE,IAAIA,EAAE,OAAM;AAC3E,gBAAiBL,EAAEN,CAAC,MAAhB,UAAmB;AACtB,kBAAIA,EAAE,gBAAgBW,EAAG,QAAOX;AAChC,kBAAID,IAAIY,EAAE,cAAcX,CAAC;AACzB,qBAAOW,EAAE,OAAOZ,CAAC;AAAA,YAClB;AACA,kBAAM,IAAI,UAAU,oBAAoBC,IAAI,cAAc;AAAA,UAC3D;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAG;AACpB,gBAAIH,IAAIG,EAAE;AACV,gBAAUH,MAAN,EAAS,QAAO;AACpB,gBAAUA,MAAN,GAAS;AACZ,kBAAIa,IAAIV,EAAE,gBAAgB,CAAC;AAC3B,qBAAOA,EAAE,OAAO,CAACU,IAAIA;AAAA,YACtB;AACA,gBAAIjB,IAAIO,EAAE,QAAQH,IAAI,CAAC,GAAGE,IAAIY,EAAE,QAAQlB,CAAC,GAAGC,IAAI,KAAKG,IAAIE;AACzD,gBAAI,OAAOL,EAAG,QAAOM,EAAE,OAAO,SAAY;AAC1C,gBAAIG,IAAIT,IAAI,GAAGU,IAAIX,GAAGE,IAAIE,IAAI,GAAGC,IAAIC,IAAI,GAAGS,IAAWV,MAAP,KAAW,IAAIM,KAAKN;AACpE,YAAAU,OAAO;AACP,gBAAIH,IAAIP,IAAI,IAAIe,KAAI,MAAMf,IAAI,IAAIM,KAAK,KAAKN,GAAGc,IAAI,KAAKd;AACxD,iBAAK,IAAIO,KAAK,IAAIV,MAAMA,KAAKS,IAAIJ,EAAE,QAAQL,CAAC,GAAGa,KAAKJ,MAAM,KAAKC,GAAGQ,KAAIT,KAAKC,IAAI,GAAGO,IAAIP,IAAI,IAAI,IAAIO,KAAK,IAAIjB,IAAI,CAAAA,KAAKS,IAAIJ,EAAE,QAAQL,CAAC,GAAGkB,MAAK,MAAMD,IAAIR,KAAKQ,IAAI,KAAKR,MAAM,KAAKQ,GAAGA,KAAK;AACtL,gBAAIV,KAAIS,EAAE,iBAAiBX,GAAGY,GAAGjB,GAAGS,CAAC;AACrC,iBAAWF,OAAN,KAAiBA,OAAN,MAAiB,IAAIW,OAAV,OAAkBA,KAAIA,KAAI,MAAM,GAASA,OAAN,MAAYL,KAAUA,MAAM,MAAX,MAAkBA,IAAI,GAAGL,KAAK,OAAOA,KAAM,QAAOH,EAAE,OAAO,SAAY;AACtJ,gBAAIO,KAAIP,EAAE,OAAO,cAAc;AAC/B,mBAAOG,IAAIA,IAAI,QAAQ,IAAIQ,EAAE,qBAAqBA,EAAE,uBAAuB,IAAIJ,KAAIJ,IAAIK,GAAGG,EAAE,qBAAqBA,EAAE,sBAAsB,IAAIE,IAAGF,EAAE,uBAAuB,CAAC;AAAA,UAC3K;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWX,GAAG;AACpB,gBAAUA,EAAE,WAAR,EAAgB,QAAOA;AAC3B,gBAAIH,IAAIG,EAAE,OAAM;AAChB,mBAAOH,EAAE,OAAO,CAACG,EAAE,MAAMH;AAAA,UAC1B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWG,GAAG;AACpB,mBAAOA,EAAE,OAAOW,EAAE,iBAAiBX,CAAC,EAAE,OAAM,IAAKW,EAAE,iBAAiBX,GAAG,EAAE;AAAA,UAC1E;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAGJ,GAAG;AACvB,gBAAIA,EAAE,KAAM,OAAM,IAAI,WAAW,2BAA2B;AAC5D,gBAAUA,EAAE,WAAR,EAAgB,QAAOe,EAAE,WAAW,GAAG,EAAE;AAC7C,gBAAUX,EAAE,WAAR,EAAgB,QAAOA;AAC3B,gBAAUA,EAAE,WAAR,KAAwBA,EAAE,QAAQ,CAAC,MAAjB,EAAoB,QAAOA,EAAE,SAAc,IAAIJ,EAAE,QAAQ,CAAC,MAArB,IAA0Be,EAAE,WAAWX,CAAC,IAAIA;AACvG,gBAAI,IAAIJ,EAAE,OAAQ,OAAM,IAAI,WAAW,gBAAgB;AACvD,gBAAIc,IAAId,EAAE,gBAAgB,CAAC;AAC3B,gBAAUc,MAAN,EAAS,QAAOV;AACpB,gBAAIU,KAAKC,EAAE,iBAAkB,OAAM,IAAI,WAAW,gBAAgB;AAClE,gBAAUX,EAAE,WAAR,KAAwBA,EAAE,QAAQ,CAAC,MAAjB,GAAoB;AACzC,kBAAIP,IAAI,KAAK,IAAIiB,IAAI,KAAKhB,IAAI,IAAIiB,EAAElB,GAAGO,EAAE,SAAc,IAAIU,MAAV,CAAY;AAC7D,cAAAhB,EAAE,mBAAkB;AACpB,kBAAIS,IAAI,KAAKO,IAAI;AACjB,qBAAOhB,EAAE,WAAWD,IAAI,GAAGU,CAAC,GAAGT;AAAA,YAChC;AACA,gBAAIU,IAAI,MAAMT,IAAIK;AAClB,kBAAW,IAAIU,MAAV,MAAiBN,IAAIJ,IAAIU,MAAM,GAASA,MAAN,GAASA,MAAM,EAAG,CAAAf,IAAIgB,EAAE,SAAShB,GAAGA,CAAC,IAAS,IAAIe,MAAV,MAA0BN,MAAT,OAAaA,IAAIT,IAAIS,IAAIO,EAAE,SAASP,GAAGT,CAAC;AACxI,mBAAOS;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWJ,GAAGJ,GAAG;AACvB,gBAAUI,EAAE,WAAR,EAAgB,QAAOA;AAC3B,gBAAUJ,EAAE,WAAR,EAAgB,QAAOA;AAC3B,gBAAIH,IAAIO,EAAE,SAASJ,EAAE;AACrB,kBAAMI,EAAE,SAAQ,IAAKJ,EAAE,SAAQ,KAAMH;AACrC,gBAAIM,IAAI,IAAIY,EAAElB,GAAGO,EAAE,SAASJ,EAAE,IAAI;AAClC,YAAAG,EAAE,mBAAkB;AACpB,qBAASL,IAAI,GAAGA,IAAIM,EAAE,QAAQN,IAAK,CAAAiB,EAAE,qBAAqBf,GAAGI,EAAE,QAAQN,CAAC,GAAGK,GAAGL,CAAC;AAC/E,mBAAOK,EAAE,OAAM;AAAA,UAChB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWC,GAAGJ,GAAG;AACvB,gBAAUA,EAAE,WAAR,EAAgB,OAAM,IAAI,WAAW,kBAAkB;AAC3D,gBAAI,IAAIe,EAAE,kBAAkBX,GAAGJ,CAAC,EAAG,QAAOe,EAAE,OAAM;AAClD,gBAAID,GAAGjB,IAAIO,EAAE,SAASJ,EAAE,MAAMG,IAAIH,EAAE,gBAAgB,CAAC;AACrD,gBAAUA,EAAE,WAAR,KAAkB,SAASG,GAAG;AACjC,kBAAUA,MAAN,EAAS,QAAON,MAAMO,EAAE,OAAOA,IAAIW,EAAE,WAAWX,CAAC;AACrD,cAAAU,IAAIC,EAAE,mBAAmBX,GAAGD,GAAG,IAAI;AAAA,YACpC,MAAO,CAAAW,IAAIC,EAAE,mBAAmBX,GAAGJ,GAAG,IAAI,EAAE;AAC5C,mBAAOc,EAAE,OAAOjB,GAAGiB,EAAE,OAAM;AAAA,UAC5B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWV,GAAGJ,GAAG;AACvB,gBAAUA,EAAE,WAAR,EAAgB,OAAM,IAAI,WAAW,kBAAkB;AAC3D,gBAAI,IAAIe,EAAE,kBAAkBX,GAAGJ,CAAC,EAAG,QAAOI;AAC1C,gBAAIU,IAAId,EAAE,gBAAgB,CAAC;AAC3B,gBAAUA,EAAE,WAAR,KAAkB,SAASc,GAAG;AACjC,kBAAUA,MAAN,EAAS,QAAOC,EAAE,OAAM;AAC5B,kBAAIlB,IAAIkB,EAAE,mBAAmBX,GAAGU,CAAC;AACjC,qBAAajB,MAAN,IAAUkB,EAAE,OAAM,IAAKA,EAAE,WAAWlB,GAAGO,EAAE,IAAI;AAAA,YACrD;AACA,gBAAIH,IAAIc,EAAE,mBAAmBX,GAAGJ,GAAG,IAAI,EAAE;AACzC,mBAAOC,EAAE,OAAOG,EAAE,MAAMH,EAAE,OAAM;AAAA,UACjC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWG,GAAGJ,GAAG;AACvB,gBAAIc,IAAIV,EAAE;AACV,mBAAOU,MAAMd,EAAE,OAAOe,EAAE,cAAcX,GAAGJ,GAAGc,CAAC,IAAI,KAAKC,EAAE,kBAAkBX,GAAGJ,CAAC,IAAIe,EAAE,cAAcX,GAAGJ,GAAGc,CAAC,IAAIC,EAAE,cAAcf,GAAGI,GAAG,CAACU,CAAC;AAAA,UACtI;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWV,GAAGJ,GAAG;AACvB,gBAAIc,IAAIV,EAAE;AACV,mBAAOU,MAAMd,EAAE,OAAO,KAAKe,EAAE,kBAAkBX,GAAGJ,CAAC,IAAIe,EAAE,cAAcX,GAAGJ,GAAGc,CAAC,IAAIC,EAAE,cAAcf,GAAGI,GAAG,CAACU,CAAC,IAAIC,EAAE,cAAcX,GAAGJ,GAAGc,CAAC;AAAA,UACtI;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWV,GAAGJ,GAAG;AACvB,mBAAaA,EAAE,WAAR,KAAwBI,EAAE,WAAR,IAAiBA,IAAIJ,EAAE,OAAOe,EAAE,uBAAuBX,GAAGJ,CAAC,IAAIe,EAAE,sBAAsBX,GAAGJ,CAAC;AAAA,UACrH;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAaA,EAAE,WAAR,KAAwBI,EAAE,WAAR,IAAiBA,IAAIJ,EAAE,OAAOe,EAAE,sBAAsBX,GAAGJ,CAAC,IAAIe,EAAE,uBAAuBX,GAAGJ,CAAC;AAAA,UACrH;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,kBAAM,IAAI,UAAU,sDAAsD;AAAA,UAC3E;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAO,IAAIe,EAAE,kBAAkBX,GAAGJ,CAAC;AAAA,UACpC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAO,KAAKe,EAAE,kBAAkBX,GAAGJ,CAAC;AAAA,UACrC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAO,IAAIe,EAAE,kBAAkBX,GAAGJ,CAAC;AAAA,UACpC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAO,KAAKe,EAAE,kBAAkBX,GAAGJ,CAAC;AAAA,UACrC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AAEvB,gBADII,EAAE,SAASJ,EAAE,QACbI,EAAE,WAAWJ,EAAE,OAAQ,QAAO;AAClC,qBAASH,IAAI,GAAGA,IAAIO,EAAE,QAAQP,IAAK,KAAIO,EAAE,QAAQP,CAAC,MAAMG,EAAE,QAAQH,CAAC,EAAG,QAAO;AAC7E,mBAAO;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWO,GAAGJ,GAAG;AACvB,mBAAO,CAACe,EAAE,MAAMX,GAAGJ,CAAC;AAAA,UACrB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,gBAAI,CAACI,EAAE,QAAQ,CAACJ,EAAE,KAAM,QAAOe,EAAE,cAAcX,GAAGJ,CAAC,EAAE,OAAM;AAC3D,gBAAII,EAAE,QAAQJ,EAAE,MAAM;AACrB,kBAAIH,IAAII,EAAEG,EAAE,QAAQJ,EAAE,MAAM,IAAI,GAAGG,IAAIY,EAAE,iBAAiBX,GAAGP,CAAC,GAAGC,IAAIiB,EAAE,iBAAiBf,CAAC;AACzF,qBAAOG,IAAIY,EAAE,aAAaZ,GAAGL,GAAGK,CAAC,GAAGY,EAAE,iBAAiBZ,GAAG,IAAIA,CAAC,EAAE,OAAM;AAAA,YACxE;AACA,gBAAIC,EAAE,MAAM;AACX,kBAAIG,IAAI,CAACP,GAAGI,CAAC;AACb,cAAAA,IAAIG,EAAE,CAAC,GAAGP,IAAIO,EAAE,CAAC;AAAA,YAClB;AACA,mBAAOQ,EAAE,iBAAiBX,GAAGW,EAAE,iBAAiBf,CAAC,CAAC,EAAE,OAAM;AAAA,UAC3D;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,gBAAI,CAACI,EAAE,QAAQ,CAACJ,EAAE,KAAM,QAAOe,EAAE,cAAcX,GAAGJ,CAAC,EAAE,OAAM;AAC3D,gBAAII,EAAE,QAAQJ,EAAE,MAAM;AACrB,kBAAIH,IAAII,EAAEG,EAAE,QAAQJ,EAAE,MAAM,GAAGG,IAAIY,EAAE,iBAAiBX,GAAGP,CAAC,GAAGC,IAAIiB,EAAE,iBAAiBf,CAAC;AACrF,qBAAOe,EAAE,cAAcZ,GAAGL,GAAGK,CAAC,EAAE,OAAM;AAAA,YACvC;AACA,gBAAII,IAAIN,EAAEG,EAAE,QAAQJ,EAAE,MAAM,IAAI;AAChC,gBAAII,EAAE,MAAM;AACX,kBAAII,IAAI,CAACR,GAAGI,CAAC;AACb,cAAAA,IAAII,EAAE,CAAC,GAAGR,IAAIQ,EAAE,CAAC;AAAA,YAClB;AACA,gBAAIT,IAAIgB,EAAE,iBAAiBf,GAAGO,CAAC;AAC/B,mBAAOR,IAAIgB,EAAE,cAAchB,GAAGK,GAAGL,CAAC,GAAGgB,EAAE,iBAAiBhB,GAAG,IAAIA,CAAC,EAAE,OAAM;AAAA,UACzE;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWK,GAAGJ,GAAG;AACvB,gBAAIH,IAAII,EAAEG,EAAE,QAAQJ,EAAE,MAAM;AAC5B,gBAAI,CAACI,EAAE,QAAQ,CAACJ,EAAE,KAAM,QAAOe,EAAE,aAAaX,GAAGJ,CAAC,EAAE,OAAM;AAC1D,gBAAII,EAAE,QAAQJ,EAAE,MAAM;AACrB,kBAAIG,IAAIY,EAAE,iBAAiBX,GAAGP,CAAC,GAAGC,IAAIiB,EAAE,iBAAiBf,CAAC;AAC1D,qBAAOG,IAAIY,EAAE,cAAcZ,GAAGL,GAAGK,CAAC,GAAGY,EAAE,iBAAiBZ,GAAG,IAAIA,CAAC,EAAE,OAAM;AAAA,YACzE;AACA,gBAAIC,EAAE,MAAM;AACX,kBAAIG,IAAI,CAACP,GAAGI,CAAC;AACb,cAAAA,IAAIG,EAAE,CAAC,GAAGP,IAAIO,EAAE,CAAC;AAAA,YAClB;AACA,gBAAIC,IAAIO,EAAE,iBAAiBf,GAAGH,CAAC;AAC/B,mBAAOW,IAAIO,EAAE,iBAAiBP,GAAGJ,GAAGI,CAAC,GAAGO,EAAE,iBAAiBP,GAAG,IAAIA,CAAC,EAAE,OAAM;AAAA,UAC5E;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWJ,GAAGJ,GAAG;AACvB,gBAAUA,EAAE,WAAR,EAAgB,QAAOA;AAC3B,gBAAII,IAAIU,GAAEV,CAAC,GAAG,IAAIA,EAAG,OAAM,IAAI,WAAW,oDAAoD;AAC9F,gBAAUA,MAAN,EAAS,QAAOW,EAAE,OAAM;AAC5B,gBAAIX,KAAKW,EAAE,iBAAkB,QAAOf;AACpC,gBAAIF,IAAI,KAAKM,IAAI,MAAM;AACvB,gBAAIJ,EAAE,SAASF,EAAG,QAAOE;AACzB,gBAAIO,IAAIP,EAAE,gBAAgBF,IAAI,CAAC,GAAGU,IAAI,MAAMJ,IAAI,KAAK;AACrD,gBAAIJ,EAAE,WAAWF,KAAKS,IAAIC,EAAG,QAAOR;AACpC,iBAAOO,IAAIC,OAAOA,EAAI,QAAOO,EAAE,kBAAkBX,GAAGJ,CAAC;AACrD,gBAAI,CAACA,EAAE,KAAM,QAAOe,EAAE,+BAA+BX,GAAGJ,GAAG,EAAE;AAC7D,iBAAUO,IAAIC,IAAI,MAAd,GAAkB;AACrB,uBAASN,IAAIJ,IAAI,GAAG,KAAKI,GAAGA,IAAK,KAAUF,EAAE,QAAQE,CAAC,MAAjB,EAAoB,QAAOa,EAAE,+BAA+BX,GAAGJ,GAAG,EAAE;AACzG,qBAAOA,EAAE,WAAWF,KAAKS,MAAMC,IAAIR,IAAIe,EAAE,kBAAkBX,GAAGJ,CAAC;AAAA,YAChE;AACA,mBAAOe,EAAE,+BAA+BX,GAAGJ,GAAG,EAAE;AAAA,UACjD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,gBAAUA,EAAE,WAAR,EAAgB,QAAOA;AAC3B,gBAAII,IAAIU,GAAEV,CAAC,GAAG,IAAIA,EAAG,OAAM,IAAI,WAAW,oDAAoD;AAC9F,gBAAUA,MAAN,EAAS,QAAOW,EAAE,OAAM;AAC5B,gBAAIf,EAAE,MAAM;AACX,kBAAII,IAAIW,EAAE,iBAAkB,OAAM,IAAI,WAAW,gBAAgB;AACjE,qBAAOA,EAAE,+BAA+BX,GAAGJ,GAAG,EAAE;AAAA,YACjD;AACA,gBAAII,KAAKW,EAAE,iBAAkB,QAAOf;AACpC,gBAAIG,IAAI,KAAKC,IAAI,MAAM;AACvB,gBAAIJ,EAAE,SAASG,EAAG,QAAOH;AACzB,gBAAIF,IAAIM,IAAI;AACZ,mBAAIJ,EAAE,UAAUG,MACLL,MAAN,KACK,EAAAE,EAAE,QAAQG,IAAI,CAAC,MAAML,MAAUE,IAElCe,EAAE,kBAAkBX,GAAGJ,CAAC;AAAA,UAChC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,gBAAII,IAAIW,EAAE,cAAcX,CAAC,GAAGJ,IAAIe,EAAE,cAAcf,CAAC,GAAe,OAAOI,KAAnB,SAAsB,QAAmB,OAAOJ,KAAnB,aAAyBA,IAAIA,EAAE,SAAQ,IAAKI,IAAIJ;AACjI,gBAAgB,OAAOA,KAAnB,SAAsB,QAAOI,EAAE,SAAQ,IAAKJ;AAChD,gBAAII,IAAIW,EAAE,YAAYX,CAAC,GAAGJ,IAAIe,EAAE,YAAYf,CAAC,GAAGe,EAAE,WAAWX,CAAC,KAAKW,EAAE,WAAWf,CAAC,EAAG,QAAOe,EAAE,IAAIX,GAAGJ,CAAC;AACrG,gBAAgB,OAAOI,KAAnB,YAAoC,OAAOJ,KAAnB,SAAsB,QAAOI,IAAIJ;AAC7D,kBAAM,IAAI,UAAU,6DAA6D;AAAA,UAClF;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAOe,EAAE,UAAUX,GAAGJ,GAAG,CAAC;AAAA,UAC3B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAOe,EAAE,UAAUX,GAAGJ,GAAG,CAAC;AAAA,UAC3B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAOe,EAAE,UAAUX,GAAGJ,GAAG,CAAC;AAAA,UAC3B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAOe,EAAE,UAAUX,GAAGJ,GAAG,CAAC;AAAA,UAC3B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,uBAAS;AACR,kBAAIe,EAAE,WAAWX,CAAC,EAAG,QAAOW,EAAE,WAAWf,CAAC,IAAIe,EAAE,MAAMX,GAAGJ,CAAC,IAAIe,EAAE,GAAGf,GAAGI,CAAC;AACvE,kBAAgB,OAAOA,KAAnB,UAAsB;AACzB,oBAAIW,EAAE,WAAWf,CAAC,EAAG,QAAOe,EAAE,gBAAgBf,GAAGI,CAAC;AAClD,oBAAiBM,EAAEV,CAAC,MAAhB,SAAmB,QAAOI,KAAKJ;AACnC,gBAAAA,IAAIe,EAAE,cAAcf,CAAC;AAAA,cACtB,WAAuB,OAAOI,KAAnB,UAAsB;AAChC,oBAAIW,EAAE,WAAWf,CAAC,EAAG,QAAOI,IAAIW,EAAE,aAAaX,CAAC,GAAYA,MAAT,QAAcW,EAAE,MAAMX,GAAGJ,CAAC;AAC7E,oBAAiBU,EAAEV,CAAC,MAAhB,SAAmB,QAAOI,KAAKJ;AACnC,gBAAAA,IAAIe,EAAE,cAAcf,CAAC;AAAA,cACtB,WAAwB,OAAOI,KAApB,WAAuB;AACjC,oBAAIW,EAAE,WAAWf,CAAC,EAAG,QAAOe,EAAE,gBAAgBf,GAAG,CAACI,CAAC;AACnD,oBAAiBM,EAAEV,CAAC,MAAhB,SAAmB,QAAOI,KAAKJ;AACnC,gBAAAA,IAAIe,EAAE,cAAcf,CAAC;AAAA,cACtB,WAAwBU,EAAEN,CAAC,MAAhB,UAAmB;AAC7B,oBAAIW,EAAE,WAAWf,CAAC,EAAG,QAAO;AAC5B,oBAAiBU,EAAEV,CAAC,MAAhB,SAAmB,QAAOI,KAAKJ;AACnC,gBAAAA,IAAIe,EAAE,cAAcf,CAAC;AAAA,cACtB,WAAwBU,EAAEN,CAAC,MAAhB,UAAmB;AAC7B,oBAAiBM,EAAEV,CAAC,MAAhB,YAAqBA,EAAE,gBAAgBe,EAAG,QAAOX,KAAKJ;AAC1D,gBAAAI,IAAIW,EAAE,cAAcX,CAAC;AAAA,cACtB,MAAO,QAAOA,KAAKJ;AAAA,YACpB;AAAA,UACD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,mBAAO,CAACe,EAAE,GAAGX,GAAGJ,CAAC;AAAA,UAClB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAG;AACvB,gBAAIc,IAAO,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,UAA4B,UAAU,CAAC;AAC1E,mBAAOC,EAAE,OAAO,IAAIA,EAAE,qBAAqBX,GAAGJ,GAAGc,CAAC,CAAC;AAAA,UACpD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWV,GAAGJ,GAAG;AACvB,gBAAIc,IAAO,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,UAA4B,UAAU,CAAC,GAAGX,IAAIE,EAAES,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAGP,IAAIJ,EAAE,CAAC,GAAGK,IAAIL,EAAE,CAAC,GAAGL,IAAIM,EAAE,UAAUJ,IAAIO,GAAGO,CAAC,GAAGf,IAAIK,EAAE,UAAUJ,IAAIQ,GAAGM,CAAC,GAAGZ,IAAI,IAAIa,EAAE,GAAG,EAAE;AACrM,mBAAOb,EAAE,WAAW,GAAG,aAAaH,CAAC,GAAGG,EAAE,WAAW,IAAI,YAAYJ,MAAM,IAAIC,MAAM,EAAE,GAAGG,EAAE,WAAW,GAAGJ,MAAM,EAAE,GAAGI,EAAE,OAAM;AAAA,UAC9H;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWE,GAAGJ,GAAGC,GAAG;AAC1B,gBAAIJ,IAAO,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,UAA4B,UAAU,CAAC;AAC1E,YAAAkB,EAAE,qBAAqBX,GAAGJ,GAAGC,GAAGJ,CAAC;AAAA,UAClC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWO,GAAGJ,GAAGC,GAAG;AAC1B,gBAAIJ,IAAO,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,UAA4B,UAAU,CAAC;AAC1E,YAAAI,IAAIc,EAAE,QAAQ,IAAId,CAAC;AACnB,gBAAIE,IAAI,GAAGI,IAAI;AACf,gBAAI,IAAIN,EAAE,WAAWM,IAAIN,EAAE,QAAQ,CAAC,GAAG,IAAIA,EAAE,SAAS;AACrD,kBAAIO,IAAIP,EAAE,QAAQ,CAAC;AACnB,cAAAM,KAAKC,KAAK,IAAIL,IAAIK,MAAM,GAAG,IAAIP,EAAE,WAAWE,KAAKF,EAAE,QAAQ,CAAC,KAAK;AAAA,YAClE;AACA,gBAAIC,IAAIG,EAAER,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAGe,IAAIV,EAAE,CAAC,GAAGO,IAAIP,EAAE,CAAC;AACpD,YAAAE,EAAE,UAAUJ,IAAIY,GAAGT,GAAGN,CAAC,GAAGO,EAAE,UAAUJ,IAAIS,GAAGF,GAAGV,CAAC;AAAA,UAClD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,mBAAO,IAAIkB,EAAE,GAAG,EAAE;AAAA,UACnB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWX,GAAGJ,GAAG;AACvB,gBAAIc,IAAI,IAAIC,EAAE,GAAGf,CAAC;AAClB,mBAAOc,EAAE,WAAW,GAAGV,CAAC,GAAGU;AAAA,UAC5B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWV,GAAGJ,GAAGC,GAAGa,GAAG;AAC7B,gBAAI,IAAId,EAAG,QAAO;AAClB,gBAAIG;AACJ,gBAAI,IAAIH,EAAG,CAAAG,IAAI,CAACH,IAAI;AAAA,iBACf;AACJ,kBAAUC,MAAN,EAAS,QAAO;AACpB,cAAAA,KAAKa,IAAIV,EAAE,QAAQH,CAAC,GAAGE,IAAI;AAAA,YAC5B;AACA,gBAAIL,IAAI,KAAKK;AACb,iBAAUW,IAAIhB,MAAV,EAAc,QAAO;AACzB,gBAAIA,KAAK,IAASgB,IAAIhB,MAAV,EAAc,QAAO;AACjC,mBAAO,IAAIG,IAAI,KAAIA,KAAWG,EAAE,QAAQH,CAAC,MAAjB,EAAoB,QAAO;AACnD,mBAAO;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWG,GAAG;AACpB,gBAAIH,IAAI,IAAIG;AACZ,YAAAW,EAAE,uBAAuB,CAAC,IAAIX;AAC9B,gBAAIU,GAAGX,KAAK,OAAOY,EAAE,qBAAqBA,EAAE,uBAAuB,MAAM,MAAM,MAAMjB,KAAK,IAAIK,IAAI,MAAM,GAAGI,IAAI,IAAIQ,EAAEjB,GAAGG,CAAC,GAAGF,IAAI,UAAUgB,EAAE,qBAAqBA,EAAE,uBAAuB,IAAI,SAASb,IAAIa,EAAE,qBAAqBA,EAAE,sBAAsB,GAAGH,IAAI,IAAIH,IAAIN,IAAI,IAAIc,IAAI;AACrR,gBAAIR,IAAIG,GAAG;AACV,kBAAII,IAAIJ,IAAIH;AACZ,cAAAQ,IAAID,IAAI,IAAIF,IAAIf,MAAMiB,GAAGjB,IAAIA,KAAK,KAAKiB,IAAId,MAAMc,GAAGd,MAAM,KAAKc;AAAA,YAChE,WAAWP,MAAMG,EAAG,CAAAK,IAAI,IAAIH,IAAIf,GAAGA,IAAIG,GAAGA,IAAI;AAAA,iBACzC;AACJ,kBAAII,KAAIG,IAAIG;AACZ,cAAAK,IAAI,KAAKX,IAAGQ,IAAIf,KAAKO,KAAIJ,MAAM,KAAKI,IAAGP,IAAIG,KAAKI,IAAGJ,IAAI;AAAA,YACxD;AACA,YAAAK,EAAE,WAAWT,IAAI,GAAGgB,CAAC;AACrB,qBAASH,IAAIb,IAAI,GAAG,KAAKa,GAAGA,IAAK,KAAIM,KAAKA,KAAK,IAAIH,IAAIf,MAAM,GAAGA,IAAIA,KAAK,KAAKG,MAAM,GAAGA,MAAM,MAAMY,IAAI,GAAGP,EAAE,WAAWI,GAAGG,CAAC;AAC3H,mBAAOP,EAAE,OAAM;AAAA,UAChB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWH,GAAG;AACpB,mBAAU,MAAMA,KAAK,KAAKA,MAAO,OAAOA,IAAUA,KAAN,KAAU,UAAUA,IAAWA,KAAP,OAAoBA,KAAR,OAAY,UAAUA,KAAKA,KAAK,QAAQ,MAAMA,KAAWA,KAAN,MAAiBA,KAAN,MAAiBA,KAAN,MAAiBA,KAAN,MAAmBA,KAAR,QAAsBA,KAAT;AAAA,UAC7L;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAG;AACpB,gBAAIH,IAAI,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,SAA0B,UAAU,CAAC,IAAI,GAAGa,IAAI,GAAGjB,IAAIO,EAAE,QAAQD,IAAI;AACrG,gBAAIA,MAAMN,EAAG,QAAOkB,EAAE,OAAM;AAC5B,qBAASjB,IAAIM,EAAE,WAAWD,CAAC,GAAGY,EAAE,eAAejB,CAAC,KAAI;AACnD,kBAAI,EAAEK,MAAMN,EAAG,QAAOkB,EAAE,OAAM;AAC9B,cAAAjB,IAAIM,EAAE,WAAWD,CAAC;AAAA,YACnB;AACA,gBAAWL,MAAP,IAAU;AACb,kBAAI,EAAEK,MAAMN,EAAG,QAAO;AACtB,cAAAC,IAAIM,EAAE,WAAWD,CAAC,GAAGW,IAAI;AAAA,YAC1B,WAAkBhB,MAAP,IAAU;AACpB,kBAAI,EAAEK,MAAMN,EAAG,QAAO;AACtB,cAAAC,IAAIM,EAAE,WAAWD,CAAC,GAAGW,IAAI;AAAA,YAC1B;AACA,gBAAUb,MAAN;AACH,kBAAIA,IAAI,IAAWH,MAAP,IAAU;AACrB,oBAAI,EAAEK,MAAMN,EAAG,QAAOkB,EAAE,OAAM;AAC9B,oBAAIjB,IAAIM,EAAE,WAAWD,CAAC,GAAUL,MAAP,MAAoBA,MAAR,KAAW;AAC/C,sBAAIG,IAAI,IAAI,EAAEE,MAAMN,EAAG,QAAO;AAC9B,kBAAAC,IAAIM,EAAE,WAAWD,CAAC;AAAA,gBACnB,WAAkBL,MAAP,MAAoBA,MAAR,KAAW;AACjC,sBAAIG,IAAI,GAAG,EAAEE,MAAMN,EAAG,QAAO;AAC7B,kBAAAC,IAAIM,EAAE,WAAWD,CAAC;AAAA,gBACnB,WAAkBL,MAAP,MAAmBA,MAAP,IAAU;AAChC,sBAAIG,IAAI,GAAG,EAAEE,MAAMN,EAAG,QAAO;AAC7B,kBAAAC,IAAIM,EAAE,WAAWD,CAAC;AAAA,gBACnB;AAAA,cACD;AAAA,uBACiBF,MAAP,MAAmBH,MAAP,IAAU;AAChC,kBAAI,EAAEK,MAAMN,EAAG,QAAOkB,EAAE,OAAM;AAC9B,kBAAIjB,IAAIM,EAAE,WAAWD,CAAC,GAAUL,MAAP,MAAoBA,MAAR,KAAW;AAC/C,oBAAI,EAAEK,MAAMN,EAAG,QAAO;AACtB,gBAAAC,IAAIM,EAAE,WAAWD,CAAC;AAAA,cACnB;AAAA,YACD;AACA,gBAAUW,MAAN,KAAkBb,MAAP,GAAU,QAAO;AAChC,mBAAcH,MAAP,MAAW;AACjB,kBAAI,EAAEK,MAAMN,EAAG,QAAOkB,EAAE,OAAM;AAC9B,cAAAjB,IAAIM,EAAE,WAAWD,CAAC;AAAA,YACnB;AACA,gBAAII,IAAIV,IAAIM,GAAGK,IAAIO,EAAE,kBAAkBd,CAAC,GAAGF,IAAIgB,EAAE,gCAAgC;AACjF,gBAAIR,IAAI,aAAaC,EAAG,QAAO;AAC/B,gBAAIS,IAAI,IAAIF,EAAE,MAAMP,IAAID,IAAIR,MAAMgB,EAAE,4BAA4B,MAAM,IAAI,EAAE,GAAGT,IAAI,KAAKL,IAAIA,IAAI,IAAIU,IAAI,KAAKV,IAAIA,IAAI,KAAK;AAC1H,iBAAUA,IAAIA,IAAI,MAAd,GAAkB;AACrB,cAAAO,MAAMO,EAAE;AACR,kBAAIe,KAAI,CAAA,GAAIzB,IAAI,CAAA,GAAIa,KAAI;AACxB,iBAAG;AACF,yBAASO,IAAGf,KAAI,GAAGgC,KAAI,OAAK;AAC3B,sBAAIjB,KAAI,QAAQ3B,IAAI,OAAO,IAAIQ,EAAG,CAAAmB,KAAI3B,IAAI;AAAA,4BAChC,KAAKA,KAAK,OAAO,IAAIa,EAAG,CAAAc,MAAK,KAAK3B,KAAK;AAAA,uBAC5C;AACJ,oBAAAoB,KAAI;AACJ;AAAA,kBACD;AACA,sBAAIwB,MAAKlC,GAAGE,KAAIA,MAAKF,IAAIiB,IAAG,EAAEtB,MAAMN,GAAG;AACtC,oBAAAqB,KAAI;AACJ;AAAA,kBACD;AACA,sBAAIpB,IAAIM,EAAE,WAAWD,CAAC,GAAG,KAAKuC,KAAIlC,EAAG;AAAA,gBACtC;AACA,gBAAAsB,GAAE,KAAKpB,EAAC,GAAGL,EAAE,KAAKqC,EAAC;AAAA,cACpB,SAAS,CAACxB;AACV,cAAAH,EAAE,gBAAgBE,GAAGa,IAAGzB,CAAC;AAAA,YAC1B,OAAO;AACN,cAAAY,EAAE,mBAAkB;AACpB,kBAAIG,KAAI,IAAIC,KAAI;AAChB,iBAAG;AACF,yBAASE,IAAGI,KAAI,GAAGI,KAAI,OAAK;AAC3B,sBAAIR,KAAI,QAAQzB,IAAI,OAAO,IAAIQ,EAAG,CAAAiB,KAAIzB,IAAI;AAAA,4BAChC,KAAKA,KAAK,OAAO,IAAIa,EAAG,CAAAY,MAAK,KAAKzB,KAAK;AAAA,uBAC5C;AACJ,oBAAAsB,KAAI;AACJ;AAAA,kBACD;AACA,sBAAIM,KAAIK,KAAI9B;AACZ,sBAAI,aAAayB,GAAG;AACpB,sBAAIK,KAAIL,IAAGC,KAAIA,KAAI1B,IAAIsB,IAAGF,MAAK,EAAElB,MAAMN,GAAG;AACzC,oBAAAuB,KAAI;AACJ;AAAA,kBACD;AACA,kBAAAtB,IAAIM,EAAE,WAAWD,CAAC;AAAA,gBACnB;AACA,gBAAAJ,IAAI,KAAKgB,EAAE,gCAAgC;AAC3C,oBAAImB,KAAI,KAAK1B,IAAIa,KAAItB,MAAMgB,EAAE,4BAA4B;AACzD,gBAAAE,EAAE,qBAAqBc,IAAGJ,IAAGO,EAAC;AAAA,cAC/B,SAAS,CAACd;AAAA,YACX;AACA,gBAAIjB,MAAMN,GAAG;AACZ,kBAAI,CAACkB,EAAE,eAAejB,CAAC,EAAG,QAAO;AACjC,mBAAKK,KAAKA,IAAIN,GAAGM,IAAK,KAAIL,IAAIM,EAAE,WAAWD,CAAC,GAAG,CAACY,EAAE,eAAejB,CAAC,EAAG,QAAO;AAAA,YAC7E;AACA,mBAAOmB,EAAE,OAAcH,MAAP,IAAUG,EAAE,OAAM;AAAA,UACnC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWb,GAAGJ,GAAGc,GAAG;AAC1B,qBAASX,IAAI,GAAGL,IAAI,GAAGiB,IAAI,GAAGR,IAAIP,EAAE,SAAS,GAAG,KAAKO,GAAGA,KAAK;AAC5D,kBAAIC,IAAIR,EAAEO,CAAC,GAAGR,IAAIe,EAAEP,CAAC;AACrB,cAAAT,KAAKU,KAAKO,GAAGA,KAAKhB,GAAUgB,MAAP,MAAYX,EAAE,WAAWD,KAAKL,CAAC,GAAGiB,IAAI,GAAGjB,IAAI,KAAK,KAAKiB,MAAMX,EAAE,WAAWD,KAAK,aAAaL,CAAC,GAAGiB,KAAK,IAAIjB,IAAIU,MAAMT,IAAIgB;AAAA,YAC7I;AACA,gBAAUjB,MAAN,GAAS;AACZ,kBAAIK,KAAKC,EAAE,OAAQ,OAAM,IAAI,MAAM,oBAAoB;AACvD,cAAAA,EAAE,WAAWD,KAAKL,CAAC;AAAA,YACpB;AACA,mBAAOK,IAAIC,EAAE,QAAQD,IAAK,CAAAC,EAAE,WAAWD,GAAG,CAAC;AAAA,UAC5C;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWC,GAAGJ,GAAG;AACvB,gBAAIH,IAAIO,EAAE,QAAQD,IAAIH,IAAI;AAC1B,YAAAG,KAAK,KAAKA,MAAM,MAAM,KAAKA,IAAIA,KAAK,KAAKA,MAAM,MAAM,KAAKA,IAAIA,KAAK,KAAKA,MAAM,MAAM,KAAKA;AACzF,gBAAIL,IAAIK,GAAGI,IAAIP,IAAI,GAAGQ,IAAIJ,EAAE,QAAQP,IAAI,CAAC,GAAGE,IAAIgB,EAAE,QAAQP,CAAC,GAAGI,IAAI,KAAK,KAAKf,IAAIE,IAAID,IAAI,KAAKA;AAC7F,gBAAIM,EAAE,QAAQQ,KAAK,YAAYA,EAAG,OAAM,IAAI,MAAM,iBAAiB;AACnE,qBAASH,IAAI,MAAMG,CAAC,GAAGK,IAAIL,IAAI,GAAGI,IAAI,GAAGV,KAAI,GAAGK,IAAI,GAAGA,IAAId,IAAI,GAAGc,KAAK;AACtE,kBAAImB,KAAI1B,EAAE,QAAQO,CAAC,GAAGN,MAAKW,IAAIc,MAAKxB,MAAKC;AACzC,cAAAE,EAAEQ,GAAG,IAAIF,EAAE,mBAAmBV,EAAC;AAC/B,kBAAIa,KAAIpB,IAAIQ;AACZ,mBAAKU,IAAIc,OAAMZ,IAAGZ,KAAI,KAAKY,IAAGZ,MAAKR,IAAI,CAAAW,EAAEQ,GAAG,IAAIF,EAAE,mBAAmBC,IAAIT,CAAC,GAAGS,OAAOlB,GAAGQ,MAAKR;AAAA,YAC7F;AACA,gBAAI2B,MAAKT,IAAIR,KAAKF,MAAKC;AACvB,iBAAKE,EAAEQ,GAAG,IAAIF,EAAE,mBAAmBU,EAAC,GAAGT,IAAIR,MAAMV,IAAIQ,IAASU,MAAN,IAAU,CAAAP,EAAEQ,GAAG,IAAIF,EAAE,mBAAmBC,IAAIT,CAAC,GAAGS,OAAOlB;AAC/G,gBAAIM,EAAE,SAASK,EAAEQ,GAAG,IAAI,MAAaA,MAAP,GAAU,OAAM,IAAI,MAAM,oBAAoB;AAC5E,mBAAOR,EAAE,KAAK,EAAE;AAAA,UACjB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWL,GAAGJ,GAAGc,GAAG;AAC1B,gBAAIX,IAAIC,EAAE;AACV,gBAAUD,MAAN,EAAS,QAAO;AACpB,gBAAUA,MAAN,GAAS;AACZ,kBAAIL,IAAIM,EAAE,gBAAgB,CAAC,EAAE,SAASJ,CAAC;AACvC,qBAAcc,MAAP,MAAYV,EAAE,SAASN,IAAI,MAAMA,IAAIA;AAAA,YAC7C;AACA,gBAAIS,IAAI,KAAKJ,IAAIY,EAAE,QAAQX,EAAE,QAAQD,IAAI,CAAC,CAAC,GAAGJ,IAAIgB,EAAE,kBAAkBf,CAAC,IAAI,GAAGE,IAAIK,IAAIQ,EAAE;AACxF,YAAAb,KAAKH,IAAI,GAAGG,IAAI,IAAIA,IAAIH;AACxB,gBAAIa,GAAGH,GAAGQ,IAAIf,IAAI,KAAK,GAAGc,IAAID,EAAE,aAAaA,EAAE,WAAWf,GAAG,EAAE,GAAGe,EAAE,WAAWE,GAAG,EAAE,CAAC,GAAGX,KAAIU,EAAE,gBAAgB,CAAC;AAC/G,gBAAUA,EAAE,WAAR,KAAkB,SAASV,IAAG;AACjC,cAAAM,IAAI,IAAIG,EAAEX,EAAE,QAAQ,EAAE,GAAGQ,EAAE,mBAAkB;AAC7C,uBAASD,GAAGmB,KAAI,GAAGzB,KAAI,IAAID,EAAE,SAAS,GAAG,KAAKC,IAAGA,KAAK,CAAAM,IAAImB,MAAK,KAAK1B,EAAE,YAAYC,EAAC,GAAGO,EAAE,eAAeP,IAAG,IAAIM,IAAIL,EAAC,GAAGwB,KAAI,IAAInB,IAAIL;AAClI,cAAAG,IAAIqB,GAAE,SAAS9B,CAAC;AAAA,YACjB,OAAO;AACN,kBAAIkB,KAAIH,EAAE,mBAAmBX,GAAGY,GAAG,IAAI,EAAE;AACzC,cAAAJ,IAAIM,GAAE;AACN,kBAAIO,KAAIP,GAAE,UAAU,OAAM;AAC1B,cAAAT,IAAIM,EAAE,kBAAkBU,IAAGzB,GAAG,EAAE;AAAA,YACjC;AACA,YAAAY,EAAE,OAAM;AACR,qBAASF,KAAIK,EAAE,kBAAkBH,GAAGZ,GAAG,EAAE,GAAGS,EAAE,SAASQ,IAAI,CAAAR,IAAI,MAAMA;AACrE,mBAAcK,MAAP,MAAYV,EAAE,SAASM,KAAI,MAAMA,KAAIA,KAAID;AAAA,UACjD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWL,GAAG;AACpB,mBAAOA,IAAI,KAAK;AAAA,UACjB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAG;AACpB,mBAAOA,IAAI,KAAK;AAAA,UACjB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAG;AACpB,mBAAOA,IAAI,IAAI;AAAA,UAChB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAGJ,GAAG;AACvB,gBAAIc,IAAIV,EAAE;AACV,gBAAIU,MAAMd,EAAE,KAAM,QAAOe,EAAE,cAAcD,CAAC;AAC1C,gBAAIjB,IAAIkB,EAAE,kBAAkBX,GAAGJ,CAAC;AAChC,mBAAO,IAAIH,IAAIkB,EAAE,kBAAkBD,CAAC,IAAI,IAAIjB,IAAIkB,EAAE,eAAeD,CAAC,IAAI;AAAA,UACvE;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWV,GAAGH,GAAG;AACvB,gBAAIc,EAAE,gBAAgBd,CAAC,GAAG;AACzB,kBAAIJ,IAAIO,EAAE,MAAMD,IAAI,IAAIF;AACxB,kBAAIJ,MAAMM,EAAG,QAAOY,EAAE,cAAclB,CAAC;AACrC,kBAAUO,EAAE,WAAR,GAAgB;AACnB,oBAAID,EAAG,OAAM,IAAI,MAAM,oBAAoB;AAC3C,uBAAaF,MAAN,IAAU,IAAI;AAAA,cACtB;AACA,kBAAI,IAAIG,EAAE,OAAQ,QAAOW,EAAE,kBAAkBlB,CAAC;AAC9C,kBAAIC,IAAIE,EAAEC,CAAC,GAAGM,IAAIH,EAAE,gBAAgB,CAAC;AACrC,qBAAOG,IAAIT,IAAIiB,EAAE,kBAAkBlB,CAAC,IAAIU,IAAIT,IAAIiB,EAAE,eAAelB,CAAC,IAAI;AAAA,YACvE;AACA,mBAAOkB,EAAE,kBAAkBX,GAAGH,CAAC;AAAA,UAChC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWG,GAAGJ,GAAG;AACvB,gBAAIA,MAAMA,EAAG,QAAOA;AACpB,gBAAIA,MAAM,MAAU,QAAO;AAC3B,gBAAIA,MAAM,OAAW,QAAO;AAC5B,gBAAIc,IAAIV,EAAE;AACV,gBAAIU,MAAM,IAAId,EAAG,QAAOe,EAAE,cAAcD,CAAC;AACzC,gBAAUd,MAAN,EAAS,OAAM,IAAI,MAAM,iDAAiD;AAC9E,gBAAUI,EAAE,WAAR,EAAgB,QAAO;AAC3B,YAAAW,EAAE,uBAAuB,CAAC,IAAIf;AAC9B,gBAAIG,IAAI,OAAOY,EAAE,qBAAqBA,EAAE,uBAAuB,MAAM;AACrE,gBAAYZ,KAAR,KAAW,OAAM,IAAI,MAAM,uCAAuC;AACtE,gBAAIL,IAAIK,IAAI;AACZ,gBAAI,IAAIL,EAAG,QAAOiB,EAAE,kBAAkBD,CAAC;AACvC,gBAAIP,IAAIH,EAAE,QAAQI,IAAIJ,EAAE,QAAQG,IAAI,CAAC,GAAGR,IAAIgB,EAAE,QAAQP,CAAC,GAAGN,IAAI,KAAKK,IAAIR,GAAGa,IAAId,IAAI;AAClF,gBAAII,IAAIU,EAAG,QAAOG,EAAE,eAAeD,CAAC;AACpC,gBAAIZ,IAAIU,EAAG,QAAOG,EAAE,kBAAkBD,CAAC;AACvC,gBAAIG,IAAI,UAAU,UAAUF,EAAE,qBAAqBA,EAAE,uBAAuB,GAAGC,IAAID,EAAE,qBAAqBA,EAAE,sBAAsB,GAAGT,KAAI,IAAIK,IAAI,KAAKZ;AACtJ,gBAAIY,OAAO,KAAKT,IAAI,KAAK,IAAK,OAAM,IAAI,MAAM,oBAAoB;AAClE,gBAAI4B,IAAGzB,KAAI;AACX,gBAAIM,IAAIL,IAAG;AACV,kBAAIY,KAAIZ,KAAIK;AACZ,cAAAN,KAAIa,KAAI,IAAIY,KAAIb,MAAMC,IAAGD,IAAIA,KAAK,KAAKC,KAAIF,MAAME,IAAGF,MAAM,KAAKE;AAAA,YAChE,WAAWP,MAAML,GAAG,CAAAD,KAAI,IAAIyB,KAAIb,GAAGA,IAAID,GAAGA,IAAI;AAAA,iBACzC;AACJ,kBAAIS,KAAId,IAAIL;AACZ,cAAAD,KAAI,KAAKoB,IAAGK,KAAIb,KAAKQ,KAAIT,MAAM,KAAKS,IAAGR,IAAID,KAAKS,IAAGT,IAAI;AAAA,YACxD;AACA,gBAAIR,OAAO,GAAGsB,QAAO,GAAGtB,IAAIsB,GAAG,QAAOf,EAAE,kBAAkBD,CAAC;AAC3D,gBAAIN,IAAIsB,GAAG,QAAOf,EAAE,eAAeD,CAAC;AACpC,qBAASJ,KAAIH,IAAI,GAAG,KAAKG,IAAGA,MAAK;AAChC,kBAAIL,MAAKA,MAAK,IAAIyB,KAAIb,MAAM,GAAGA,IAAIA,KAAK,KAAKD,MAAM,GAAGA,MAAM,MAAMc,KAAI;AACtE,kBAAIY,KAAItC,EAAE,gBAAgBM,EAAC;AAC3B,kBAAIgC,KAAIZ,GAAG,QAAOf,EAAE,kBAAkBD,CAAC;AACvC,kBAAI4B,KAAIZ,GAAG,QAAOf,EAAE,eAAeD,CAAC;AAAA,YACrC;AACA,gBAAUG,MAAN,KAAiBD,MAAN,GAAS;AACvB,kBAAUX,OAAN,EAAS,OAAM,IAAI,MAAM,oBAAoB;AACjD,qBAAOU,EAAE,eAAeD,CAAC;AAAA,YAC1B;AACA,mBAAO;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWV,GAAGH,GAAG;AACvB,mBAAOc,EAAE,gBAAgBd,CAAC,IAAUA,MAAN,IAAgBG,EAAE,WAAR,IAAuBA,EAAE,WAAR,KAAkBA,EAAE,SAAS,IAAIH,KAAKG,EAAE,gBAAgB,CAAC,MAAMJ,EAAEC,CAAC,IAAUc,EAAE,kBAAkBX,GAAGH,CAAC,MAA9B;AAAA,UAChI;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWG,GAAGJ,GAAG;AACvB,mBAAaA,MAAN,IAAU,IAAII,IAAUJ,MAAN,IAAU,KAAKI,IAAUJ,MAAN,IAAU,IAAII,IAAUJ,MAAN,IAAU,KAAKI,IAAI;AAAA,UAClF;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAGJ,GAAGC,GAAG;AAC1B,gBAAIG,IAAIW,EAAE,cAAcX,CAAC,GAAGJ,IAAIe,EAAE,cAAcf,CAAC,GAAe,OAAOI,KAAnB,YAAoC,OAAOJ,KAAnB,SAAsB,SAAQC,GAAC;AAAA,cAC1G,KAAK;AAAG,uBAAOG,IAAIJ;AAAA,cACnB,KAAK;AAAG,uBAAOI,KAAKJ;AAAA,cACpB,KAAK;AAAG,uBAAOI,IAAIJ;AAAA,cACnB,KAAK;AAAG,uBAAOI,KAAKJ;AAAA,YAC3B;AACM,gBAAIe,EAAE,WAAWX,CAAC,KAAiB,OAAOJ,KAAnB,SAAsB,QAAOA,IAAIe,EAAE,aAAaf,CAAC,GAAYA,MAAT,QAAce,EAAE,yBAAyBA,EAAE,kBAAkBX,GAAGJ,CAAC,GAAGC,CAAC;AAChJ,gBAAgB,OAAOG,KAAnB,YAAwBW,EAAE,WAAWf,CAAC,EAAG,QAAOI,IAAIW,EAAE,aAAaX,CAAC,GAAYA,MAAT,QAAcW,EAAE,yBAAyBA,EAAE,kBAAkBX,GAAGJ,CAAC,GAAGC,CAAC;AAChJ,gBAAIG,IAAIW,EAAE,YAAYX,CAAC,GAAGJ,IAAIe,EAAE,YAAYf,CAAC,GAAGe,EAAE,WAAWX,CAAC,GAAG;AAChE,kBAAIW,EAAE,WAAWf,CAAC,EAAG,QAAOe,EAAE,yBAAyBA,EAAE,kBAAkBX,GAAGJ,CAAC,GAAGC,CAAC;AACnF,kBAAgB,OAAOD,KAAnB,SAAsB,OAAM,IAAI,MAAM,oBAAoB;AAC9D,qBAAOe,EAAE,yBAAyBA,EAAE,kBAAkBX,GAAGJ,CAAC,GAAGC,CAAC;AAAA,YAC/D;AACA,gBAAgB,OAAOG,KAAnB,SAAsB,OAAM,IAAI,MAAM,oBAAoB;AAC9D,gBAAIW,EAAE,WAAWf,CAAC,EAAG,QAAOe,EAAE,yBAAyBA,EAAE,kBAAkBf,GAAGI,CAAC,GAAG,IAAIH,CAAC;AACvF,gBAAgB,OAAOD,KAAnB,SAAsB,OAAM,IAAI,MAAM,oBAAoB;AAC9D,mBAAaC,MAAN,IAAUG,IAAIJ,IAAUC,MAAN,IAAUG,KAAKJ,IAAUC,MAAN,IAAUG,IAAIJ,IAAUC,MAAN,IAAUG,KAAKJ,IAAI;AAAA,UAClF;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWI,GAAGJ,GAAGc,GAAG;AAC1B,gBAAIV,EAAE,SAASJ,EAAE,OAAQ,QAAOe,EAAE,cAAcf,GAAGI,GAAGU,CAAC;AACvD,gBAAUV,EAAE,WAAR,EAAgB,QAAOA;AAC3B,gBAAUJ,EAAE,WAAR,EAAgB,QAAOI,EAAE,SAASU,IAAIV,IAAIW,EAAE,WAAWX,CAAC;AAC5D,gBAAID,IAAIC,EAAE;AACV,aAAOA,EAAE,SAAQ,MAAhB,KAAsBJ,EAAE,WAAWI,EAAE,UAAgBJ,EAAE,SAAQ,MAAhB,MAAuBG;AACvE,qBAASL,GAAGS,IAAI,IAAIQ,EAAEZ,GAAGW,CAAC,GAAGN,IAAI,GAAGT,IAAI,GAAGA,IAAIC,EAAE,QAAQD,IAAK,CAAAD,IAAIM,EAAE,QAAQL,CAAC,IAAIC,EAAE,QAAQD,CAAC,IAAIS,GAAGA,IAAIV,MAAM,IAAIS,EAAE,WAAWR,GAAG,aAAaD,CAAC;AAC/I,mBAAOC,IAAIK,EAAE,QAAQL,KAAK;AACzB,kBAAIa,IAAIR,EAAE,QAAQL,CAAC,IAAIS;AACvB,cAAAA,IAAII,MAAM,IAAIL,EAAE,WAAWR,GAAG,aAAaa,CAAC;AAAA,YAC7C;AACA,mBAAOb,IAAIQ,EAAE,UAAUA,EAAE,WAAWR,GAAGS,CAAC,GAAGD,EAAE,OAAM;AAAA,UACpD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWH,GAAGJ,GAAGc,GAAG;AAC1B,gBAAUV,EAAE,WAAR,EAAgB,QAAOA;AAC3B,gBAAUJ,EAAE,WAAR,EAAgB,QAAOI,EAAE,SAASU,IAAIV,IAAIW,EAAE,WAAWX,CAAC;AAC5D,qBAASD,GAAGL,IAAI,IAAIiB,EAAEX,EAAE,QAAQU,CAAC,GAAGP,IAAI,GAAGC,IAAI,GAAGA,IAAIR,EAAE,QAAQQ,IAAK,CAAAL,IAAIC,EAAE,QAAQI,CAAC,IAAIR,EAAE,QAAQQ,CAAC,IAAID,GAAGA,IAAI,IAAIJ,MAAM,IAAIL,EAAE,WAAWU,GAAG,aAAaL,CAAC;AAC1J,mBAAOK,IAAIJ,EAAE,QAAQI,KAAK;AACzB,kBAAIT,IAAIK,EAAE,QAAQI,CAAC,IAAID;AACvB,cAAAA,IAAI,IAAIR,MAAM,IAAID,EAAE,WAAWU,GAAG,aAAaT,CAAC;AAAA,YACjD;AACA,mBAAOD,EAAE,OAAM;AAAA,UAChB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWM,GAAGJ,GAAG;AACvB,gBAAIH,IAAI,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,SAA0B,UAAU,CAAC,IAAI,MAAMM,IAAIC,EAAE;AACrF,YAASP,MAAT,OAAaA,IAAI,IAAIkB,EAAEZ,GAAGH,CAAC,IAAIH,EAAE,OAAOG;AACxC,qBAASF,GAAGS,IAAI,GAAGC,IAAI,GAAGA,IAAIL,GAAGK,IAAK,CAAAV,IAAIM,EAAE,QAAQI,CAAC,IAAID,GAAGA,IAAIT,MAAM,IAAID,EAAE,WAAWW,GAAG,aAAaV,CAAC;AACxG,mBAAaS,MAAN,KAAWV,EAAE,eAAeM,GAAG,CAAC,GAAGN;AAAA,UAC3C;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWO,GAAGJ,GAAG;AACvB,gBAAIH,IAAIO,EAAE;AACV,YAAAJ,IAAIA,KAAKH;AACT,qBAASM,GAAGL,IAAI,IAAIiB,EAAEf,GAAG,EAAE,GAAGO,IAAI,GAAGC,IAAI,GAAGA,IAAIX,GAAGW,IAAK,CAAAL,IAAIC,EAAE,QAAQI,CAAC,IAAID,GAAGA,IAAI,IAAIJ,MAAM,IAAIL,EAAE,WAAWU,GAAG,aAAaL,CAAC;AAC9H,gBAAUI,MAAN,EAAS,OAAM,IAAI,MAAM,oBAAoB;AACjD,qBAASR,IAAIF,GAAGE,IAAIC,GAAGD,IAAK,CAAAD,EAAE,WAAWC,GAAG,CAAC;AAC7C,mBAAOD;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWM,GAAGJ,GAAG;AACvB,gBAAIH,IAAI,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,SAA0B,UAAU,CAAC,IAAI,MAAMM,IAAIC,EAAE,QAAQN,IAAIE,EAAE,QAAQO,IAAIT;AAC/G,gBAAIK,IAAIL,GAAG;AACV,cAAAS,IAAIJ;AACJ,kBAAIK,IAAIJ,GAAGL,IAAII;AACf,cAAAC,IAAIJ,GAAGG,IAAIL,GAAGE,IAAIQ,GAAGV,IAAIC;AAAA,YAC1B;AACA,gBAAIG,IAAIK;AACR,YAASV,MAAT,OAAaA,IAAI,IAAIkB,EAAEb,GAAG,EAAE,IAAIA,IAAIL,EAAE;AACtC,qBAASe,IAAI,GAAGA,IAAIL,GAAGK,IAAK,CAAAf,EAAE,WAAWe,GAAGR,EAAE,QAAQQ,CAAC,IAAIZ,EAAE,QAAQY,CAAC,CAAC;AACvE,mBAAOA,IAAIV,GAAGU,IAAK,CAAAf,EAAE,WAAWe,GAAG,CAAC;AACpC,mBAAOf;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWO,GAAGJ,GAAG;AACvB,gBAAIH,IAAI,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,SAA0B,UAAU,CAAC,IAAI,MAAMM,IAAIC,EAAE,QAAQN,IAAIE,EAAE,QAAQO,IAAIT;AAC/G,YAAAK,IAAIL,MAAMS,IAAIJ;AACd,gBAAIK,IAAIL;AACR,YAASN,MAAT,OAAaA,IAAI,IAAIkB,EAAEP,GAAG,EAAE,IAAIA,IAAIX,EAAE;AACtC,qBAASE,IAAI,GAAGA,IAAIQ,GAAGR,IAAK,CAAAF,EAAE,WAAWE,GAAGK,EAAE,QAAQL,CAAC,IAAI,CAACC,EAAE,QAAQD,CAAC,CAAC;AACxE,mBAAOA,IAAII,GAAGJ,IAAK,CAAAF,EAAE,WAAWE,GAAGK,EAAE,QAAQL,CAAC,CAAC;AAC/C,mBAAOA,IAAIS,GAAGT,IAAK,CAAAF,EAAE,WAAWE,GAAG,CAAC;AACpC,mBAAOF;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWO,GAAGJ,GAAG;AACvB,gBAAIH,IAAI,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,SAA0B,UAAU,CAAC,IAAI,MAAMM,IAAIC,EAAE,QAAQN,IAAIE,EAAE,QAAQO,IAAIT;AAC/G,gBAAIK,IAAIL,GAAG;AACV,cAAAS,IAAIJ;AACJ,kBAAIK,IAAIJ,GAAGL,IAAII;AACf,cAAAC,IAAIJ,GAAGG,IAAIL,GAAGE,IAAIQ,GAAGV,IAAIC;AAAA,YAC1B;AACA,gBAAIG,IAAIC;AACR,YAASN,MAAT,OAAaA,IAAI,IAAIkB,EAAEb,GAAG,EAAE,IAAIA,IAAIL,EAAE;AACtC,qBAASe,IAAI,GAAGA,IAAIL,GAAGK,IAAK,CAAAf,EAAE,WAAWe,GAAGR,EAAE,QAAQQ,CAAC,IAAIZ,EAAE,QAAQY,CAAC,CAAC;AACvE,mBAAOA,IAAIT,GAAGS,IAAK,CAAAf,EAAE,WAAWe,GAAGR,EAAE,QAAQQ,CAAC,CAAC;AAC/C,mBAAOA,IAAIV,GAAGU,IAAK,CAAAf,EAAE,WAAWe,GAAG,CAAC;AACpC,mBAAOf;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWO,GAAGJ,GAAG;AACvB,gBAAIH,IAAI,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,SAA0B,UAAU,CAAC,IAAI,MAAMM,IAAIC,EAAE,QAAQN,IAAIE,EAAE,QAAQO,IAAIT;AAC/G,gBAAIK,IAAIL,GAAG;AACV,cAAAS,IAAIJ;AACJ,kBAAIK,IAAIJ,GAAGL,IAAII;AACf,cAAAC,IAAIJ,GAAGG,IAAIL,GAAGE,IAAIQ,GAAGV,IAAIC;AAAA,YAC1B;AACA,gBAAIG,IAAIC;AACR,YAASN,MAAT,OAAaA,IAAI,IAAIkB,EAAEb,GAAG,EAAE,IAAIA,IAAIL,EAAE;AACtC,qBAASe,IAAI,GAAGA,IAAIL,GAAGK,IAAK,CAAAf,EAAE,WAAWe,GAAGR,EAAE,QAAQQ,CAAC,IAAIZ,EAAE,QAAQY,CAAC,CAAC;AACvE,mBAAOA,IAAIT,GAAGS,IAAK,CAAAf,EAAE,WAAWe,GAAGR,EAAE,QAAQQ,CAAC,CAAC;AAC/C,mBAAOA,IAAIV,GAAGU,IAAK,CAAAf,EAAE,WAAWe,GAAG,CAAC;AACpC,mBAAOf;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWO,GAAGJ,GAAG;AACvB,gBAAIH,IAAIO,EAAE,SAASJ,EAAE;AACrB,gBAASH,KAAL,EAAQ,QAAOA;AACnB,qBAASM,IAAIC,EAAE,SAAS,GAAG,KAAKD,KAAKC,EAAE,QAAQD,CAAC,MAAMH,EAAE,QAAQG,CAAC,IAAI,CAAAA;AACrE,mBAAO,IAAIA,IAAI,IAAIC,EAAE,gBAAgBD,CAAC,IAAIH,EAAE,gBAAgBG,CAAC,IAAI,IAAI;AAAA,UACtE;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWC,GAAGJ,GAAGc,GAAGjB,GAAG;AAC7B,gBAAUG,MAAN,GAAS;AACZ,uBAASF,IAAI,QAAQE,GAAGO,IAAIP,MAAM,IAAIQ,IAAI,GAAGT,IAAI,GAAGG,IAAI,GAAGA,IAAIE,EAAE,QAAQF,KAAKL,KAAK;AAClF,oBAAIe,IAAIE,EAAE,QAAQjB,CAAC,GAAGY,IAAIL,EAAE,QAAQF,CAAC,GAAGe,IAAI,QAAQR,GAAGO,KAAIP,MAAM,IAAIH,IAAIS,EAAE,OAAOE,GAAGnB,CAAC,GAAGa,KAAII,EAAE,OAAOE,GAAGV,CAAC,GAAGuB,KAAIf,EAAE,OAAOC,IAAGlB,CAAC,GAAGO,KAAIU,EAAE,OAAOC,IAAGT,CAAC;AAClJ,gBAAAK,KAAKb,IAAIO,IAAIE,GAAGA,IAAII,MAAM,IAAIA,KAAK,YAAYA,OAAO,QAAQD,OAAM,QAAQ,QAAQmB,OAAM,KAAKtB,KAAKI,MAAM,IAAIb,IAAIM,MAAKM,OAAM,OAAOmB,OAAM,KAAKhB,EAAE,WAAWjB,GAAG,aAAae,CAAC;AAAA,cAC9K;AACA,qBAAaJ,MAAN,KAAiBT,MAAN,GAASF,KAAK;AAC/B,oBAAIqB,KAAIJ,EAAE,QAAQjB,CAAC;AACnB,gBAAAqB,MAAKV,IAAIT,GAAGA,IAAI,GAAGS,IAAIU,OAAM,IAAIJ,EAAE,WAAWjB,GAAG,aAAaqB,EAAC;AAAA,cAChE;AAAA,YACD;AAAA,UACD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWd,GAAGJ,GAAGc,GAAGX,GAAGL,GAAG;AAChC,qBAASU,IAAIM,GAAGf,IAAI,GAAGa,IAAI,GAAGA,IAAIT,GAAGS,KAAK;AACzC,kBAAIH,IAAIL,EAAE,QAAQQ,CAAC,GAAGK,IAAIF,EAAE,OAAO,QAAQN,GAAGT,CAAC,GAAGgB,IAAID,EAAE,OAAON,MAAM,IAAIT,CAAC,GAAGM,IAAIW,MAAM,QAAQD,MAAM,MAAMjB,IAAIS;AAC/G,cAAAA,IAAIF,MAAM,IAAIP,IAAIiB,MAAM,IAAIlB,EAAE,WAAWc,GAAG,aAAaN,CAAC;AAAA,YAC3D;AACA,gBAAIR,EAAE,SAASK,EAAG,MAAKL,EAAE,WAAWK,KAAKK,IAAIT,CAAC,GAAGI,IAAIL,EAAE,SAAS,CAAAA,EAAE,WAAWK,KAAK,CAAC;AAAA,qBACpEK,IAAIT,MAAV,EAAa,OAAM,IAAI,MAAM,oBAAoB;AAAA,UAC3D;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWK,GAAGJ,GAAG;AACvB,gBAAIH,IAAI,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,SAA0B,UAAU,CAAC,IAAI;AACzE,YAASA,MAAT,SAAeA,IAAI,IAAIkB,EAAEX,EAAE,QAAQ,EAAE;AACrC,qBAASD,IAAI,GAAGL,IAAI,IAAIM,EAAE,SAAS,GAAG,KAAKN,GAAGA,KAAK,GAAG;AACrD,kBAAIS,KAAKJ,KAAK,KAAKC,EAAE,YAAYN,CAAC,OAAO,GAAGU,IAAI,IAAID,IAAIP;AACxD,cAAAG,IAAI,IAAII,IAAIP,GAAGO,KAAKJ,KAAK,KAAKC,EAAE,YAAYN,IAAI,CAAC,OAAO;AACxD,kBAAIC,IAAI,IAAIQ,IAAIP;AAChB,cAAAG,IAAI,IAAII,IAAIP,GAAGH,EAAE,WAAWC,MAAM,GAAGU,KAAK,KAAKT,CAAC;AAAA,YACjD;AACA,mBAAOF;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWO,GAAGJ,GAAG;AACvB,qBAASH,GAAGM,IAAI,GAAGL,IAAI,IAAIM,EAAE,SAAS,GAAG,KAAKN,GAAGA,IAAK,CAAAD,KAAKM,KAAK,KAAKC,EAAE,YAAYN,CAAC,OAAO,GAAGK,IAAI,IAAIN,IAAIG;AAC1G,mBAAOG;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWC,GAAGJ,GAAGC,GAAGa,GAAG;AAC7B,gBAAIhB,IAAIE,EAAE,kBAAiB,GAAIH,IAAIG,EAAE,QAAQO,IAAIH,EAAE,kBAAiB,IAAKN,GAAGU,IAAI;AAChF,YAAAP,MAAMO,IAAI,IAAIO,EAAER,IAAI,MAAM,GAAG,EAAE,GAAGC,EAAE;AACpC,gBAAIN,IAAI,IAAIa,EAAEjB,IAAI,MAAM,GAAG,EAAE;AAC7B,YAAAI,EAAE,mBAAkB;AACpB,gBAAIU,IAAIG,EAAE,QAAQf,EAAE,YAAYF,IAAI,CAAC,CAAC;AACtC,gBAAIc,MAAMZ,IAAIe,EAAE,mBAAmBf,GAAGY,GAAG,CAAC;AAC1C,qBAASH,IAAIM,EAAE,mBAAmBX,GAAGQ,GAAG,CAAC,GAAGb,IAAIC,EAAE,YAAYF,IAAI,CAAC,GAAGmB,KAAI,GAAGD,IAAIT,GAAG,KAAKS,GAAGA,KAAK;AAChG,kBAAIL,KAAI,OAAOmB,KAAIrB,EAAE,YAAYO,IAAIlB,CAAC;AACtC,kBAAIgC,OAAM/B,GAAG;AACZ,oBAAIM,MAAKyB,MAAK,KAAKrB,EAAE,YAAYO,IAAIlB,IAAI,CAAC,OAAO;AACjD,gBAAAa,KAAI,IAAIN,KAAIN;AACZ,yBAASmB,KAAI,IAAIb,KAAIN,GAAG0B,KAAIzB,EAAE,YAAYF,IAAI,CAAC,GAAGY,KAAID,EAAE,YAAYO,IAAIlB,IAAI,CAAC,GAAGiB,EAAE,OAAOJ,IAAGc,EAAC,MAAM,KAAKP,MAAK,KAAKR,QAAO,MAAMC,MAAKO,MAAKnB,GAAG,EAAE,QAAQmB,OAAK;AAAA,cAC5J;AACA,cAAAH,EAAE,sBAAsBf,GAAGW,IAAG,GAAGd,GAAGK,CAAC;AACrC,kBAAIwC,KAAIjC,EAAE,aAAaP,GAAGc,GAAGlB,IAAI,CAAC;AAClC,cAAM4C,OAAN,MAAYA,KAAIjC,EAAE,aAAaT,GAAGgB,GAAGlB,CAAC,GAAGW,EAAE,eAAeO,IAAIlB,GAAG,QAAQW,EAAE,YAAYO,IAAIlB,CAAC,IAAI4C,EAAC,GAAG/B,OAAMV,MAAM,IAAIe,IAAIC,KAAIN,MAAK,KAAKH,EAAE,WAAWQ,MAAM,GAAGC,KAAIN,EAAC;AAAA,YAClK;AACA,gBAAIG,EAAG,QAAOL,EAAE,oBAAoBG,CAAC,GAAGX,IAAI;AAAA,cAC3C,UAAUO;AAAA,cACV,WAAWC;AAAA,YAClB,IAAUA;AACJ,gBAAIR,EAAG,QAAOO;AACd,kBAAM,IAAI,MAAM,aAAa;AAAA,UAC9B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWJ,GAAG;AACpB,mBAAOW,EAAE,QAAQX,CAAC,IAAI;AAAA,UACvB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAGJ,GAAGc,GAAG;AAC1B,gBAAIhB,IAAIM,EAAE,QAAQG,IAAI,IAAIQ,EAAEjB,IAAIgB,GAAG,EAAE;AACrC,gBAAUd,MAAN,GAAS;AACZ,uBAASQ,IAAI,GAAGA,IAAIV,GAAGU,IAAK,CAAAD,EAAE,WAAWC,GAAGJ,EAAE,QAAQI,CAAC,CAAC;AACxD,qBAAO,IAAIM,KAAKP,EAAE,WAAWT,GAAG,CAAC,GAAGS;AAAA,YACrC;AACA,qBAASR,GAAGG,IAAI,GAAGO,IAAI,GAAGA,IAAIX,GAAGW,IAAK,CAAAV,IAAIK,EAAE,QAAQK,CAAC,GAAGF,EAAE,WAAWE,GAAG,aAAaV,KAAKC,IAAIE,CAAC,GAAGA,IAAIH,MAAM,KAAKC;AACjH,mBAAO,IAAIc,KAAKP,EAAE,WAAWT,GAAGI,CAAC,GAAGK;AAAA,UACrC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWH,GAAGJ,GAAG;AACvB,gBAAIH,IAAIkB,EAAE,gBAAgBf,CAAC;AAC3B,gBAAI,IAAIH,EAAG,OAAM,IAAI,WAAW,gBAAgB;AAChD,gBAAIM,IAAI,IAAIN,IAAI,IAAIC,IAAID,IAAI,IAAIU,IAAIH,EAAE,QAAQI,IAAUV,MAAN,KAAgBM,EAAE,QAAQG,IAAI,CAAC,MAAM,KAAKT,KAA/B,GAAkCC,IAAIQ,IAAIJ,KAAKK,IAAI,IAAI,IAAIN,IAAI,IAAIa,EAAEhB,GAAGK,EAAE,IAAI;AAC3I,gBAAUN,MAAN,GAAS;AACZ,uBAASW,IAAI,GAAGA,IAAIN,GAAGM,IAAK,CAAAP,EAAE,WAAWO,GAAG,CAAC;AAC7C,qBAAOA,IAAIV,GAAGU,IAAK,CAAAP,EAAE,WAAWO,GAAGL,EAAE,QAAQK,IAAIN,CAAC,CAAC;AAAA,YACpD,OAAO;AACN,uBAASc,IAAI,GAAGD,IAAI,GAAGA,IAAIb,GAAGa,IAAK,CAAAd,EAAE,WAAWc,GAAG,CAAC;AACpD,uBAASV,IAAGK,IAAI,GAAGA,IAAIJ,GAAGI,IAAK,CAAAL,KAAIF,EAAE,QAAQO,CAAC,GAAGT,EAAE,WAAWS,IAAIR,GAAG,aAAaG,MAAKR,IAAImB,CAAC,GAAGA,IAAIX,OAAM,KAAKR;AAC9G,kBAAIU,EAAG,CAAAN,EAAE,WAAWK,IAAIJ,GAAGc,CAAC;AAAA,uBACbA,MAAN,EAAS,OAAM,IAAI,MAAM,oBAAoB;AAAA,YACvD;AACA,mBAAOf,EAAE,OAAM;AAAA,UAChB;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWE,GAAGJ,GAAG;AACvB,gBAAIH,IAAIO,EAAE,QAAQD,IAAIC,EAAE,MAAMN,IAAIiB,EAAE,gBAAgBf,CAAC;AACrD,gBAAI,IAAIF,EAAG,QAAOiB,EAAE,sBAAsBZ,CAAC;AAC3C,gBAAII,IAAI,IAAIT,IAAI,IAAIU,IAAIV,IAAI,IAAIC,IAAIF,IAAIU;AACxC,gBAAI,KAAKR,EAAG,QAAOgB,EAAE,sBAAsBZ,CAAC;AAC5C,gBAAID,IAAI;AACR,gBAAIC,GAAG;AACN,kBAAIM,KAAK,KAAKD,KAAK;AACnB,mBAAUJ,EAAE,QAAQG,CAAC,IAAIE,MAArB,EAAyB,CAAAP,IAAI;AAAA,kBAC5B,UAASe,IAAI,GAAGA,IAAIV,GAAGU,IAAK,KAAUb,EAAE,QAAQa,CAAC,MAAjB,GAAoB;AACxD,gBAAAf,IAAI;AACJ;AAAA,cACD;AAAA,YACD;AACA,YAAIA,KAAWM,MAAN,KAAc,CAACJ,EAAE,QAAQP,IAAI,CAAC,KAArB,KAA0BE;AAC5C,gBAAIY,IAAI,IAAII,EAAEhB,GAAGI,CAAC;AAClB,gBAAUK,MAAN,GAAS;AACZ,cAAAG,EAAE,WAAWZ,IAAI,GAAG,CAAC;AACrB,uBAAS+B,KAAIvB,GAAGuB,KAAIjC,GAAGiC,KAAK,CAAAnB,EAAE,WAAWmB,KAAIvB,GAAGH,EAAE,QAAQ0B,EAAC,CAAC;AAAA,YAC7D,OAAO;AACN,uBAASzB,GAAGa,KAAId,EAAE,QAAQG,CAAC,MAAMC,GAAGiB,KAAI5B,IAAIU,IAAI,GAAGG,KAAI,GAAGA,KAAIe,IAAGf,KAAK,CAAAL,IAAID,EAAE,QAAQM,KAAIH,IAAI,CAAC,GAAGI,EAAE,WAAWD,IAAG,aAAaL,KAAK,KAAKG,IAAIU,EAAC,GAAGA,KAAIb,MAAMG;AACzJ,cAAAG,EAAE,WAAWc,IAAGP,EAAC;AAAA,YAClB;AACA,mBAAOhB,MAAMS,IAAII,EAAE,iBAAiBJ,GAAG,IAAIA,CAAC,IAAIA,EAAE,OAAM;AAAA,UACzD;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWP,GAAG;AACpB,mBAAOA,IAAIW,EAAE,WAAW,GAAG,EAAE,IAAIA,EAAE,OAAM;AAAA,UAC1C;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWX,GAAG;AACpB,gBAAI,IAAIA,EAAE,OAAQ,QAAO;AACzB,gBAAIH,IAAIG,EAAE,gBAAgB,CAAC;AAC3B,mBAAOH,IAAIc,EAAE,mBAAmB,KAAKd;AAAA,UACtC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWG,GAAG;AACpB,gBAAIH,IAAI,IAAI,UAAU,UAAqB,UAAU,CAAC,MAAtB,SAA0B,UAAU,CAAC,IAAI;AAEzE,gBADiBS,EAAEN,CAAC,MAAhB,YACAA,EAAE,gBAAgBW,EAAG,QAAOX;AAChC,gBAAmB,OAAO,SAAtB,OAA6CM,EAAE,OAAO,WAAW,MAAjC,YAAsCN,EAAE,OAAO,WAAW,GAAG;AAChG,kBAAIU,IAAIV,EAAE,OAAO,WAAW,EAAEH,CAAC;AAC/B,kBAAiBS,EAAEI,CAAC,MAAhB,SAAmB,QAAOA;AAC9B,oBAAM,IAAI,UAAU,0CAA0C;AAAA,YAC/D;AACA,gBAAIjB,IAAIO,EAAE;AACV,gBAAIP,GAAG;AACN,kBAAIM,IAAIN,EAAE,KAAKO,CAAC;AAChB,kBAAiBM,EAAEP,CAAC,MAAhB,SAAmB,QAAOA;AAAA,YAC/B;AACA,gBAAIL,IAAIM,EAAE;AACV,gBAAIN,GAAG;AACN,kBAAIS,IAAIT,EAAE,KAAKM,CAAC;AAChB,kBAAiBM,EAAEH,CAAC,MAAhB,SAAmB,QAAOA;AAAA,YAC/B;AACA,kBAAM,IAAI,UAAU,0CAA0C;AAAA,UAC/D;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWH,GAAG;AACpB,mBAAOW,EAAE,WAAWX,CAAC,IAAIA,IAAI,CAACA;AAAA,UAC/B;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWA,GAAG;AACpB,mBAAoBM,EAAEN,CAAC,MAAhB,YAA8BA,MAAT,QAAcA,EAAE,gBAAgBW;AAAA,UAC7D;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWX,GAAGJ,GAAG;AACvB,qBAASH,IAAI,KAAKO,IAAI,MAAM,IAAID,IAAI,IAAIY,EAAElB,GAAGG,EAAE,IAAI,GAAGF,IAAID,IAAI,GAAGU,IAAI,GAAGA,IAAIT,GAAGS,IAAK,CAAAJ,EAAE,WAAWI,GAAGP,EAAE,QAAQO,CAAC,CAAC;AAChH,gBAAIC,IAAIR,EAAE,QAAQF,CAAC;AACnB,gBAASM,IAAI,MAAT,GAAa;AAChB,kBAAIL,IAAI,KAAKK,IAAI;AACjB,cAAAI,IAAIA,KAAKT,MAAMA;AAAA,YAChB;AACA,mBAAOI,EAAE,WAAWL,GAAGU,CAAC,GAAGL,EAAE,OAAM;AAAA,UACpC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWC,GAAGJ,GAAGc,GAAG;AAC1B,qBAASX,IAAI,KAAK,KAAKL,GAAGS,IAAI,KAAKH,IAAI,MAAM,IAAII,IAAI,IAAIO,EAAER,GAAGO,CAAC,GAAGf,IAAI,GAAGa,IAAIL,IAAI,GAAGE,IAAI,GAAGQ,IAAId,EAAES,GAAGZ,EAAE,MAAM,GAAGD,IAAIkB,GAAGlB,IAAK,CAAAD,IAAI,IAAIE,EAAE,QAAQD,CAAC,IAAIU,GAAGA,IAAI,IAAIX,MAAM,IAAIU,EAAE,WAAWT,GAAG,aAAaD,CAAC;AACrM,mBAAOC,IAAIa,GAAGb,IAAK,CAAAS,EAAE,WAAWT,GAAG,IAAI,aAAa,CAACU,CAAC;AACtD,gBAAIO,GAAGV,KAAIM,IAAIZ,EAAE,SAASA,EAAE,QAAQY,CAAC,IAAI,GAAGD,IAAIP,IAAI;AACpD,gBAAUO,MAAN,EAAS,CAAAK,IAAI,IAAIV,KAAIG,GAAGO,KAAK;AAAA,iBAC5B;AACJ,kBAAIc,KAAI,KAAKnB;AACb,cAAAL,KAAIA,MAAKwB,OAAMA;AACf,kBAAIzB,KAAI,KAAK,KAAKyB;AAClB,cAAAd,IAAIX,KAAIC,KAAIG,GAAGO,KAAKX,KAAI;AAAA,YACzB;AACA,mBAAOG,EAAE,WAAWI,GAAGI,CAAC,GAAGR,EAAE,OAAM;AAAA,UACpC;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWJ,GAAGJ,GAAG;AACvB,qBAASc,IAAI,GAAG,IAAId,IAAI,KAAIA,MAAMc,KAAKV,IAAIJ,OAAO,GAAGI,KAAKA;AAC1D,mBAAOU;AAAA,UACR;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,WAAa;AACnB,mBAAOC,EAAE,uBAAuB,CAAC,IAAI,IAAUA,EAAE,qBAAqB,CAAC,MAA9B;AAAA,UAC1C;AAAA,QACL;AAAA,QACI;AAAA,UACC,KAAK;AAAA,UACL,OAAO,SAAWX,GAAG;AACpB,oBAAQ,aAAaA,OAAOA;AAAA,UAC7B;AAAA,QACL;AAAA,MACA,CAAI;AAAA,IACF,GAAEgB,EAAE,KAAK,CAAC;AACV,WAAOC,EAAE,eAAe,UAAUA,EAAE,mBAAmBA,EAAE,gBAAgB,GAAGA,EAAE,oBAAoB;AAAA,MACjG;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAKA,EAAE,2BAA2B,GAAGA,EAAE,gCAAgC,KAAKA,EAAE,0BAA0BA,EAAE,qBAAqB;AAAA,MAC5H;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAKA,EAAE,yBAAyC,oBAAI,YAAY,CAAC,GAAGA,EAAE,yBAAyB,IAAI,aAAaA,EAAE,sBAAsB,GAAGA,EAAE,uBAAuB,IAAI,WAAWA,EAAE,sBAAsB,GAAGA,EAAE,0BAA0BA,EAAE,kBAAiB,IAAK,IAAI,GAAGA,EAAE,yBAAyBA,EAAE,kBAAiB,IAAK,IAAI,GAAGA,EAAE,UAAUrB,IAAI,SAASI,GAAG;AAC5V,aAAOJ,EAAEI,CAAC,IAAI;AAAA,IACf,IAAI,SAASA,GAAG;AACf,UAAIJ,IAAI,KAAK,KAAKC,IAAI,KAAK;AAC3B,aAAaG,MAAN,IAAU,KAAK,IAAI,MAAM,IAAIH,EAAEG,MAAM,CAAC,IAAIJ;AAAA,IAClD,GAAGqB,EAAE,SAASjB,KAAK,SAASA,GAAGJ,GAAG;AACjC,aAAO,IAAII,IAAIJ;AAAA,IAChB,GAAGqB;AAAA,EACJ,CAAC;AACF,EAAC,IAAQ,GACLrB,KAAIyP,EAAgB,QAAQ,OAAO,CAAC,GAAG5P,KAAI4P,EAAgB,QAAQ,OAAO,CAAC,GAAGvP,KAAIuP,EAAgB,QAAQ,OAAO,CAAC,GAAGtP,KAAIsP,EAAgB,QAAQ,OAAO,EAAE,GAAGxP,KAAIwP,EAAgB,QAAQ,OAAO,EAAE,GAAGlP,KAAIkP,EAAgB,QAAQ,OAAO,EAAE,GAAGjP,KAAIiP,EAAgB,QAAQ,OAAO,GAAG,GAAGnP,KAAImP,EAAgB,QAAQ,OAAO,GAAG,GAAG7O,KAAI6O,EAAgB,QAAQ,OAAO,GAAG,GAAGhP,KAAIgP,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAO,IAAI,GAAG7O,EAAC,GAAGb,KAAI0P,EAAgB,QAAQ,SAASlP,IAAGK,EAAC,GAAGd,KAAI2P,EAAgB,QAAQ,SAAShP,IAAGR,EAAC;AAChhB,SAASe,GAAE,GAAG;AACb,SAAmB,OAAO,KAAnB,WAAuByO,EAAgB,QAAQ,OAAO,EAAE,SAAS,EAAE,CAAC,IAAI;AAChF;AACA,SAASpP,GAAER,GAAG;AACb,SAAO4P,EAAgB,QAAQ,MAAMA,EAAgB,QAAQ,UAAU5P,GAAGK,EAAC,GAAGF,EAAC;AAChF;AACA,SAAS8B,GAAEjC,GAAG;AACb,SAAO4P,EAAgB,QAAQ,SAAS5P,GAAGG,EAAC,IAAIyP,EAAgB,QAAQ,WAAW5P,CAAC,IAAIA;AACzF;AACA,SAASa,GAAE,GAAGb,GAAG;AAChB,SAAO4P,EAAgB,QAAQ,SAAS,GAAG5P,CAAC,IAAI,KAAK4P,EAAgB,QAAQ,YAAY,GAAG5P,CAAC,IAAI,IAAI;AACtG;AACA,SAASkB,GAAE,GAAGlB,GAAG;AAChB,SAAO;AAAA,IACN,UAAU4P,EAAgB,QAAQ,OAAO,GAAG5P,CAAC;AAAA,IAC7C,WAAW4P,EAAgB,QAAQ,UAAU,GAAG5P,CAAC;AAAA,EACnD;AACA;AACA,IAAIgB,IAAGF,IACHM,KAAI,yBAAyBQ,KAAI,iBAAiBM,KAAI,sBAAsBQ,KAAI,aAAaE,IAAI,iBAAiBlB,KAAI,mBAAmBF,KAAI,yBAAyBa,KAAI,wBAAwBZ,KAAI,kBAAkBsO,KAAI,cAAchN,KAAI,eAAexB,KAAI,cAAca,KAAI,aAAaf,KAAI,cAAcmB,KAAI,gBAAgBlB,KAAI,gBAAgBU,KAAI,qBAAqBH,KAAI,qBAAqBmO,KAAI,oBAAoBnN,KAAI,QAAQoN,KAAI,MAAMC,KAAI,MAAMnO,KAAI,QAAQQ,KAAI,YAAYT,KAAI,WAAWH,KAAI,YAAYwO,KAAI,sBAAsBlP,KAAI,qBAAqBkB,KAAI,eAAeW,KAAI,UAAUR,KAAI,WAAWG,KAAoB,oBAAI,QAAO,GAAI2N,KAAI,OAAO,IAAI,sBAAsB;AAAA,CAC7qBpP,KAAI,YAAYoP,EAAC,MAAMpP,GAAEoP,EAAC,IAAI,SAAS7P,GAAG;AAC1C,SAAOkC,GAAE,IAAIlC,CAAC;AACf;AACA,IAAIoC,KAAI,WAAWyN,EAAC,GAAGC,KAAK,OAAO,IAAI,yBAAyB;AAAA,CAC/DvP,KAAI,YAAYuP,EAAE,MAAMvP,GAAEuP,EAAE,IAAI,SAAS9P,GAAG;AAC5CkC,EAAAA,GAAE,IAAIlC,GAAG,uBAAO,OAAO,IAAI,CAAC;AAC7B;AACA,IAAI+P,KAAK,WAAWD,EAAE;AACtB,SAASE,GAAGhQ,MAAMJ,GAAG;AACpB,MAAI,CAACI,KAAiB,OAAOA,KAAnB,SAAsB,QAAO;AACvC,QAAM,IAAIoC,GAAEpC,CAAC;AACb,SAAO,CAAC,CAAC,KAAKJ,EAAE,OAAO,CAACI,MAAMA,KAAK,EAAC;AACrC;AACA,SAASiQ,EAAGjQ,GAAGJ,GAAG;;AACjB,QAAM,KAAIwC,IAAAA,GAAEpC,CAAC,MAAHoC,gBAAAA,EAAOxC;AACjB,MAAe,MAAX,OAAc,OAAM,IAAI,UAAU,yBAAyBA,CAAC,EAAE;AAClE,SAAO;AACR;AACA,SAASsQ,GAAGlQ,GAAGJ,GAAG,GAAG;AACpB,QAAM,IAAIwC,GAAEpC,CAAC;AACb,MAAe,MAAX,OAAc,OAAM,IAAI,UAAU,uCAAuC;AAC7E,MAAI,EAAEJ,CAAC,EAAG,OAAM,IAAI,UAAU,GAAGA,CAAC,kBAAkB;AACpD,IAAEA,CAAC,IAAI;AACR;AACA,IAAIuQ,KAAK,CAAA;AACT,SAASC,GAAGpQ,GAAGJ,GAAG;AACjB,SAAO,eAAeI,EAAE,WAAW,OAAO,aAAa;AAAA,IACtD,OAAOJ;AAAA,IACP,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,cAAc;AAAA,EAChB,CAAE;AACD,QAAM,IAAI,OAAO,oBAAoBI,CAAC;AACtC,WAASJ,IAAI,GAAGA,IAAI,EAAE,QAAQA,KAAK;AAClC,UAAME,IAAI,EAAEF,CAAC,GAAG,IAAI,OAAO,yBAAyBI,GAAGF,CAAC;AACxD,MAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,IAAI,OAAO,eAAeE,GAAGF,GAAG,CAAC;AAAA,EACpF;AACA,QAAM,IAAI,OAAO,oBAAoBE,EAAE,SAAS;AAChD,WAASJ,IAAI,GAAGA,IAAI,EAAE,QAAQA,KAAK;AAClC,UAAMH,IAAI,EAAEG,CAAC,GAAG,IAAI,OAAO,yBAAyBI,EAAE,WAAWP,CAAC;AAClE,MAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,IAAI,OAAO,eAAeO,EAAE,WAAWP,GAAG,CAAC;AAAA,EAC9F;AACA4Q,EAAAA,GAAGzQ,GAAGI,CAAC,GAAGqQ,GAAG,GAAGzQ,CAAC,cAAcI,EAAE,SAAS;AAC3C;AACA,SAASqQ,GAAGrQ,GAAGJ,GAAG;AACjB,QAAM,IAAI,IAAII,CAAC;AACf,MAAemQ,GAAG,CAAC,MAAf,OAAkB,OAAM,IAAI,MAAM,aAAanQ,CAAC,iBAAiB;AACrEmQ,EAAAA,GAAG,CAAC,IAAIvQ;AACT;AACA,SAAS0Q,GAAGtQ,GAAG;AACd,SAAOmQ,GAAGnQ,CAAC;AACZ;AACA,SAASuQ,GAAGvQ,GAAGJ,GAAG;AACjB,MAAI,IAAII;AACR,MAAU,MAAN,EAAS,QAAO;AAAA,IACnB,KAAK;AAAA,IACL,KAAK;AAAA,EACP;AACC,QAAM,IAAI,KAAK,KAAK,CAAC;AACrB,MAAI,KAAK,IAAI,CAAC;AACd,QAAMD,IAAI,KAAK,MAAM,IAAI,KAAK,MAAM,CAAC,CAAC;AACtC,MAAIH,KAAKG,EAAG,QAAO;AAAA,IAClB,KAAK,IAAI;AAAA,IACT,KAAK,IAAI;AAAA,EACX;AACC,MAAUH,MAAN,EAAS,QAAO;AAAA,IACnB,KAAK,IAAI;AAAA,IACT,KAAK,IAAI;AAAA,EACX;AACC,QAAM,IAAI,EAAE,YAAYG,CAAC;AACzB,SAAO;AAAA,IACN,KAAK,IAAI,OAAO,SAAS,EAAE,MAAM,GAAGA,IAAIH,CAAC,GAAG,EAAE;AAAA,IAC9C,KAAK,IAAI,OAAO,SAAS,EAAE,MAAMG,IAAIH,CAAC,GAAG,EAAE;AAAA,EAC7C;AACA;AACA,SAAS4Q,GAAGxQ,GAAGJ,GAAG,GAAG;AACpB,MAAI,IAAII,GAAGD,IAAI;AACf,MAAU,MAAN,EAAS,QAAOA;AACpB,QAAM,IAAI,KAAK,KAAK,CAAC,KAAK,KAAK,KAAKA,CAAC;AACrC,MAAI,KAAK,IAAI,CAAC,GAAGA,IAAI,KAAK,IAAIA,CAAC;AAC/B,QAAMI,IAAI,EAAE,YAAY,KAAK,MAAM,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;AACrD,MAAUJ,MAAN,EAAS,QAAO,IAAI,OAAO,SAASI,IAAI,IAAI,OAAOP,CAAC,GAAG,EAAE;AAC7D,QAAM,IAAIO,IAAIJ,EAAE,YAAY,KAAK,MAAM,IAAI,KAAK,MAAMA,CAAC,CAAC,CAAC,EAAE,SAASH,GAAG,GAAG;AAC1E,SAAO,IAAI,OAAO,SAAS,GAAG,EAAE;AACjC;AACA,SAAS6Q,GAAGzQ,GAAGJ,GAAG;AACjB,QAAM,IAAmBA,MAAf;AACV,UAAQI,GAAC;AAAA,IACR,KAAK;AAAQ,aAAO,IAAI,SAAS;AAAA,IACjC,KAAK;AAAS,aAAO,IAAI,aAAa;AAAA,IACtC,KAAK;AAAU,aAAO;AAAA,IACtB,KAAK;AAAS,aAAO;AAAA,IACrB,KAAK;AAAY,aAAO,IAAI,cAAc;AAAA,IAC1C,KAAK;AAAa,aAAO,IAAI,kBAAkB;AAAA,IAC/C,KAAK;AAAc,aAAO;AAAA,IAC1B,KAAK;AAAa,aAAO;AAAA,IACzB,KAAK;AAAY,aAAO;AAAA,EAC1B;AACA;AACA,SAAS0Q,GAAG1Q,GAAGJ,GAAG,GAAG,GAAGG,GAAG;AAC1B,SAAkBA,MAAX,SAAeC,IAAmBD,MAAf,aAAmBH,IAAI,IAAI,IAAII,IAAI,IAAI,IAAIJ,IAAoBG,MAAhB,cAAoBC,IAAwBD,MAApB,kBAAwBH,IAAI,IAAII,IAAIJ;AACtI;AACA,IAAI+Q,KAAe,MAAMA,GAAa;AAAA,EACrC,YAAY/Q,GAAG;AACd,SAAK,UAAUgB,GAAEhB,CAAC,GAAG,KAAK,MAAMyP,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAO,KAAK,SAAS7O,EAAC,CAAC,GAAG,KAAK,SAAS6O,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,UAAU,KAAK,SAAS7O,EAAC,CAAC;AAAA,EACrN;AAAA,EACA,OAAO,YAAYZ,GAAG,GAAG;AACxB,QAAIyP,EAAgB,QAAQ,YAAY3N,GAAE9B,CAAC,GAAG+Q,GAAa,GAAG,EAAG,OAAM,IAAI,WAAW,GAAG,CAAC,yCAAyCA,GAAa,GAAG,IAAI;AACvJ,WAAO,IAAIA,GAAa/Q,CAAC;AAAA,EAC1B;AAAA,EACA,OAAO,gBAAgBA,GAAG,GAAG;AAC5B,WAAO,IAAI+Q,GAAatB,EAAgB,QAAQ,SAASzO,GAAEhB,CAAC,GAAGgB,GAAE,CAAC,CAAC,CAAC;AAAA,EACrE;AAAA,EACA,OAAO,eAAehB,GAAG,GAAG,GAAGG,GAAG,GAAGI,GAAG;AACvC,UAAMT,IAAI2P,EAAgB,QAAQ,IAAIA,EAAgB,QAAQ,IAAIA,EAAgB,QAAQ,IAAIA,EAAgB,QAAQ,IAAIA,EAAgB,QAAQ,IAAIA,EAAgB,QAAQ,OAAOlP,CAAC,GAAGkP,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAO,CAAC,GAAGjP,EAAC,CAAC,GAAGiP,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAOtP,CAAC,GAAGG,EAAC,CAAC,GAAGmP,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAO,CAAC,GAAG7O,EAAC,CAAC,GAAG6O,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAO,CAAC,GAAG1P,EAAC,CAAC,GAAG0P,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAOzP,CAAC,GAAGS,EAAC,CAAC;AACniB,WAAOsQ,GAAa,YAAYjR,GAAG,OAAO;AAAA,EAC3C;AAAA,EACA,MAAM;AACL,WAAO,IAAIiR,GAAajP,GAAE,KAAK,OAAO,CAAC;AAAA,EACxC;AAAA,EACA,IAAI9B,GAAG;AACN,WAAO+Q,GAAa,YAAYtB,EAAgB,QAAQ,IAAI,KAAK,SAASzP,EAAE,OAAO,GAAG,KAAK;AAAA,EAC5F;AAAA,EACA,cAAcA,GAAG;AAChB,WAAO+Q,GAAa,YAAYtB,EAAgB,QAAQ,IAAI,KAAK,SAASA,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAOzP,CAAC,GAAGF,EAAC,CAAC,GAAG,KAAK;AAAA,EACzJ;AAAA,EACA,aAAaE,GAAG;AACf,WAAOyP,EAAgB,QAAQ,IAAIzO,GAAEhB,CAAC,GAAG,KAAK,OAAO;AAAA,EACtD;AAAA,EACA,IAAI,GAAG;AACN,WAAOU,GAAE,KAAK,SAAS,EAAE,OAAO;AAAA,EACjC;AAAA,EACA,OAAOV,GAAG;AACT,UAAM,EAAE,UAAU,GAAG,WAAW,EAAC,IAAKe,GAAE,KAAK,SAAS0O,EAAgB,QAAQ,OAAOzP,CAAC,CAAC;AACvF,WAAO;AAAA,MACN,UAAUyP,EAAgB,QAAQ,SAAS,CAAC;AAAA,MAC5C,WAAW,IAAIsB,GAAa,CAAC;AAAA,IAChC;AAAA,EACC;AAAA,EACA,KAAKlR,GAAG;AACP,UAAMK,IAAIc,GAAEnB,CAAC,GAAGI,IAAIwP,EAAgB,QAAQ,OAAOvP,CAAC;AACpD,QAAI,EAAE,UAAU,GAAG,WAAWM,EAAC,IAAKO,GAAE,KAAK,SAASd,CAAC;AACrD,UAAMK,IAAI,CAAA;AACV,QAAIM;AACJ,UAAMH,KAAKgP,EAAgB,QAAQ,SAAS,KAAK,SAASzP,EAAC,IAAI,KAAK,KAAK,KAAK,KAAKyP,EAAgB,QAAQ,SAASvP,CAAC,CAAC;AACtH,WAAO,CAACuP,EAAgB,QAAQ,MAAMjP,GAAGR,EAAC,KAAKM,EAAE,SAAS,KAAK,CAAAE,IAAIiP,EAAgB,QAAQ,SAASjP,GAAGL,EAAC,GAAG,EAAC,UAAUS,GAAG,WAAWJ,EAAC,IAAIO,GAAEP,GAAGP,CAAC,GAAGK,EAAE,KAAK,KAAK,IAAImP,EAAgB,QAAQ,SAAS7O,CAAC,CAAC,CAAC;AACtM,WAAOH,IAAI,EAAOqB,GAAE,CAAC,EAAE,SAAQ,IAAK,MAAMxB,EAAE,KAAK,EAAE;AAAA,EACpD;AAAA,EACA,SAAS;AACR,WAAOmP,EAAgB,QAAQ,MAAM,KAAK,SAASzP,EAAC;AAAA,EACrD;AAAA,EACA,MAAMG,GAAGF,GAAG;AACX,UAAMM,IAAIS,GAAEb,CAAC;AACb,QAAIsP,EAAgB,QAAQ,MAAMlP,GAAGV,EAAC,EAAG,QAAO;AAChD,UAAM,EAAE,UAAUW,GAAG,WAAWF,MAAMS,GAAE,KAAK,SAASR,CAAC,GAAGK,IAAI6O,EAAgB,QAAQ,SAAS,KAAK,SAASzP,EAAC,IAAI,aAAa,YAAYS,IAAIgP,EAAgB,QAAQ,SAAS3N,GAAEtB,CAAC,GAAGD,CAAC,GAAG,IAAIkP,EAAgB,QAAQ,IAAIhP,GAAGF,CAAC,GAAG,IAAIG,GAAEoB,GAAE2N,EAAgB,QAAQ,SAASnP,GAAGJ,EAAC,CAAC,GAAGK,CAAC,GAAGM,IAAIgQ,GAAG5Q,GAAGW,CAAC,GAAGD,IAAI8O,EAAgB,QAAQ,MAAM3N,GAAE,KAAK,OAAO,GAAGrB,CAAC,IAAIA,IAAIqQ,GAAGrQ,GAAG,GAAG,GAAGJ,GAAEG,CAAC,GAAGK,CAAC,GAAGI,IAAmBL,MAAf,aAAmBD,IAAI8O,EAAgB,QAAQ,WAAW9O,CAAC;AACrb,WAAOoQ,GAAa,YAAY9P,GAAG,UAAU;AAAA,EAC9C;AAAA,EACA,OAAO;AACN,WAAO,KAAK,IAAI,IAAI8P,GAAa/Q,EAAC,CAAC;AAAA,EACpC;AAAA,EACA,SAASA,GAAG;AACX,WAAO+Q,GAAa,YAAYtB,EAAgB,QAAQ,SAAS,KAAK,SAASzP,EAAE,OAAO,GAAG,YAAY;AAAA,EACxG;AACD;AACA+Q,GAAa,MAAMtB,EAAgB,QAAQ,OAAO,2BAA2B,GAAGsB,GAAa,OAAO,IAAIA,GAAa/Q,EAAC;AACtH,IAAIgR,KAAK,8BAA8BC,KAAK,IAAI,OAAO,MAAM,gDAAgD,MAAM,OAAOD,GAAG,MAAM,aAAaA,GAAG,MAAM,MAAM,GAAGE,KAAK,uBAAuBC,KAAK,qBAAqBC,KAAK,2BAA2BC,KAAK,IAAI,OAAO,IAAIH,GAAG,MAAM,SAASC,GAAG,MAAM,MAAMC,GAAG,MAAM,MAAMD,GAAG,MAAM,KAAKC,GAAG,MAAM,IAAI,GAAGE,KAAK,6FAA6FC,KAAK,gGAAgGC,KAAK,IAAI,OAAO,UAAUD,GAAG,MAAM,GAAG,GAAGE,KAAK,iEAAiEC,KAAK,IAAI,OAAO;AAAA,EAC/pB,IAAIL,GAAG,MAAM;AAAA,EACb,mBAAmBC,GAAG,MAAM,MAAME,GAAG,MAAM;AAAA,EAC3C,YAAYP,GAAG,MAAM;AAAA,EACrB,OAAOQ,GAAG,MAAM;AACjB,EAAE,KAAK,EAAE,CAAC,GAAGE,KAAK,IAAI,OAAO;AAAA,EAC5B,SAASL,GAAG,MAAM;AAAA,EAClB,MAAME,GAAG,MAAM;AAAA,EACf,WAAWP,GAAG,MAAM;AAAA,EACpB,OAAOQ,GAAG,MAAM;AACjB,EAAE,KAAK,EAAE,CAAC,GAAGG,KAAK,IAAI,OAAO,KAAKV,GAAG,MAAM,OAAOC,GAAG,MAAM,YAAYF,GAAG,MAAM,YAAYQ,GAAG,MAAM,MAAM,GAAGI,KAAK,IAAI,OAAO,YAAYV,GAAG,MAAM,OAAOC,GAAG,MAAM,YAAYH,GAAG,MAAM,YAAYQ,GAAG,MAAM,MAAM,GAAGK,KAAK,2BAA2BC,KAAK,IAAI,OAAO,MAAMD,GAAG,MAAM,SAASA,GAAG,MAAM,SAASA,GAAG,MAAM,KAAK,GAAGE,KAAK,IAAI,OAAO,YAAY,+CAA+C,MAAM,YAAYD,GAAG,MAAM,OAAO,GAAG,GAAGE,KAAK,OAAOC,KAAK,MAAMD,IAAIE,KAAK,MAAMC,KAAK,MAAMH,IAAII,KAAKC,GAAGF,EAAE,GAAGG,KAAK9C,EAAgB,QAAQ,WAAW4C,EAAE,GAAGG,KAAK/C,EAAgB,QAAQ,IAAIA,EAAgB,QAAQ,SAAS8C,IAAIzS,EAAC,GAAGD,EAAC,GAAG4S,KAAKhD,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,IAAI4C,IAAIvS,EAAC,GAAGD,EAAC,GAAG6S,KAAK,SAAST,IAAIU,KAAK,SAASC,KAAK,QAAQC,KAAK,KAAK,IAAI,MAAM,GAAG,CAAC,GAAGC,KAAK;AAAA,EAC3wB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAAGC,KAAK,oBAAI,IAAI;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,CAAC;AACD,SAASC,GAAG5S,GAAG;AACd,SAAmB,OAAOA,KAAnB,YAAiCA,MAAT,QAA4B,OAAOA,KAArB;AAC9C;AACA,SAAS6S,GAAG7S,GAAG;AACd,MAAgB,OAAOA,KAAnB,SAAsB,OAAM,IAAI,UAAU,iCAAiC;AAC/E,SAAO,OAAOA,CAAC;AAChB;AACA,SAAS8S,GAAG9S,GAAG;AACd,MAAgB,OAAOA,KAAnB,SAAsB,OAAM,IAAI,UAAU,2CAA2C;AACzF,SAAO,OAAOA,CAAC;AAChB;AACA,SAAS+S,GAAG/S,GAAG;AACd,QAAMJ,IAAIiT,GAAG7S,CAAC;AACd,MAAUJ,MAAN,EAAS,QAAO;AACpB,MAAI,OAAO,MAAMA,CAAC,KAAKA,MAAM,SAAYA,MAAM,OAAW,OAAM,IAAI,WAAW,sBAAsB;AACrG,QAAM,IAAI,KAAK,MAAMA,CAAC;AACtB,SAAa,MAAN,IAAU,IAAI;AACtB;AACA,SAASoT,GAAGhT,GAAGJ,GAAG;AACjB,QAAM,IAAImT,GAAG/S,CAAC;AACd,MAAI,KAAK;AACR,UAAeJ,MAAX,SAAoB,IAAI,WAAW,aAAaA,CAAC,sCAAsC,IACrF,IAAI,WAAW,6DAA6D;AAEnF,SAAO;AACR;AACA,SAASqT,GAAGjT,GAAG;AACd,QAAMJ,IAAIiT,GAAG7S,CAAC;AACd,MAAI,OAAO,MAAMJ,CAAC,EAAG,OAAM,IAAI,WAAW,cAAc;AACxD,MAAIA,MAAM,SAAYA,MAAM,OAAW,OAAM,IAAI,WAAW,0BAA0B;AACtF,MAAI,EAAC,SAASI,GAAG;AAChB,QAAgB,OAAOA,KAAnB,YAAwB,OAAO,MAAMA,CAAC,KAAKA,MAAM,SAAYA,MAAM,OAAW,QAAO;AACzF,UAAMJ,IAAI,KAAK,IAAII,CAAC;AACpB,WAAO,KAAK,MAAMJ,CAAC,MAAMA;AAAA,EAC1B,GAAEA,CAAC,EAAG,OAAM,IAAI,WAAW,gCAAgCI,CAAC,EAAE;AAC9D,SAAaJ,MAAN,IAAU,IAAIA;AACtB;AACA,SAASsT,GAAGlT,GAAGJ,GAAG;AACjB,SAAO,OAAOI,CAAC,EAAE,SAASJ,GAAG,GAAG;AACjC;AACA,SAASuT,GAAGnT,GAAG;AACd,MAAgB,OAAOA,KAAnB,SAAsB,OAAM,IAAI,UAAU,0BAA0B,OAAOA,CAAC,CAAC,EAAE;AACnF,SAAOA;AACR;AACA,SAASoT,GAAGpT,GAAGJ,GAAG;AACjB,MAAIgT,GAAG5S,CAAC,GAAG;AACV,UAAMJ,IAAII,KAAA,gBAAAA,EAAG;AACb,QAAgB,OAAOJ,KAAnB,YAAoC,OAAOA,KAAnB,SAAsB,QAAOA;AACzD,UAAM,IAAI,UAAU,0CAA0C;AAAA,EAC/D;AACA,SAAOI;AACR;AACA,IAAIqT,KAAK;AAAA,EACR;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAAGC,KAAK;AAAA,EACP,KAAKR;AAAA,EACL,SAASC;AAAAA,EACT,MAAMA;AAAAA,EACN,OAAOC;AAAAA,EACP,WAAW,SAAShT,GAAG;AACtB,UAAMJ,IAAIuT,GAAGC,GAAGpT,CAAC,CAAC;AAClB,QAAIJ,EAAE,SAAS,KAAKA,EAAE,SAAS,KAAaA,EAAE,CAAC,MAAX,OAAuB,aAAa,QAAQA,EAAE,CAAC,CAAC,MAAhC,MAA4C,aAAa,QAAQA,EAAE,CAAC,CAAC,MAAhC,MAAqCA,EAAE,CAAC,IAAIA,EAAE,CAAC,MAAM,QAAgBA,EAAE,CAAC,MAAX,OAAwBA,EAAE,CAAC,MAAX,OAA2BA,EAAE,CAAC,MAAd,OAAiB,OAAM,IAAI,WAAW,kBAAkBA,CAAC,mCAAmC;AAClR,WAAOA;AAAA,EACR;AAAA,EACA,KAAKoT;AAAAA,EACL,MAAMD;AAAAA,EACN,QAAQA;AAAAA,EACR,QAAQA;AAAAA,EACR,aAAaA;AAAAA,EACb,aAAaA;AAAAA,EACb,YAAYA;AAAAA,EACZ,QAAQ,SAAS/S,GAAG;AACnB,UAAMJ,IAAIuT,GAAGC,GAAGpT,CAAC,CAAC;AAClB,WAAOuT,GAAG3T,CAAC,GAAGA;AAAA,EACf;AAAA,EACA,UAAU4T;AACX,GAAGC,KAAK;AAAA,EACP,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,aAAa;AAAA,EACb,YAAY;AACb,GAAGC,KAAK;AAAA,EACP;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACA,GAAGC,KAAK,OAAO,YAAYD,GAAG,KAAK,CAAC1T,MAAM,CAACA,EAAE,CAAC,GAAGA,EAAE,CAAC,CAAC,EAAC,CAAE,GAAG4T,KAAK,OAAO,YAAYF,GAAG,KAAK,CAAC,CAAC1T,GAAGJ,CAAC,MAAM,CAACA,GAAGI,CAAC,EAAC,CAAE,GAAG6T,KAAKH,GAAG,KAAK,CAAC,CAAA,EAAG1T,CAAC,MAAMA,EAAC,GAAI8T,KAAK;AAAA,EACnJ,KAAKhC;AAAAA,EACL,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,aAAa;AAAA,EACb,YAAY;AACb,GAAGiC,KAAK;AAAA,EACP;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAAGC,KAAK,KAAK,gBAAgBpP,KAAqB,oBAAI,IAAG;AACzD,SAASqP,GAAGjU,GAAG;AACd,QAAMJ,IAAIsU,GAAGlU,CAAC;AACd,MAAI,IAAI4E,GAAG,IAAIhF,CAAC;AAChB,SAAkB,MAAX,WAAiB,IAAI,IAAIoU,GAAG,SAAS;AAAA,IAC3C,UAAUpU;AAAA,IACV,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,IACP,KAAK;AAAA,IACL,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV,CAAE,GAAGgF,GAAG,IAAIhF,GAAG,CAAC,IAAI;AACpB;AACA,SAASuU,GAAGnU,GAAG;AACd,SAAOgQ,GAAGhQ,GAAGa,EAAC,KAAK,CAACmP,GAAGhQ,GAAGkB,IAAGmB,CAAC;AAC/B;AACA,SAAS+R,GAAGpU,GAAG;AACd,SAAOgQ,GAAGhQ,GAAGwP,IAAGhN,IAAGX,IAAGf,IAAGmB,IAAGlB,IAAGU,IAAGH,IAAGmO,EAAC;AACvC;AACA,SAAS4E,GAAGrU,GAAG;AACd,SAAOgQ,GAAGhQ,GAAGmB,EAAC;AACf;AACA,SAASmT,GAAGtU,GAAG;AACd,SAAOgQ,GAAGhQ,GAAGmC,EAAC;AACf;AACA,SAASoS,GAAGvU,GAAG;AACd,SAAOgQ,GAAGhQ,GAAG2B,EAAC;AACf;AACA,SAAS6S,GAAGxU,GAAG;AACd,SAAOgQ,GAAGhQ,GAAGiB,EAAC;AACf;AACA,SAASwT,GAAGzU,GAAG;AACd,SAAOgQ,GAAGhQ,GAAG8B,EAAC;AACf;AACA,SAAS4S,GAAG1U,GAAG;AACd,SAAOgQ,GAAGhQ,GAAGa,IAAGK,IAAGmB,CAAC;AACrB;AACA,SAASsS,EAAG3U,GAAGJ,GAAG;AACjB,MAAI,CAACA,EAAEI,CAAC,EAAG,OAAM,IAAI,UAAU,oEAAoE;AACpG;AACA,SAAS4U,GAAG5U,GAAG;AACd,MAAIgQ,GAAGhQ,GAAGqC,CAAC,KAAK2N,GAAGhQ,GAAGkB,EAAC,EAAG,OAAM,IAAI,UAAU,yDAAyD;AACvG,MAAIoT,GAAGtU,CAAC,EAAG,OAAM,IAAI,UAAU,wEAAwE;AACvG,MAAeA,EAAE,aAAb,OAAuB,OAAM,IAAI,UAAU,6CAA6C;AAC5F,MAAeA,EAAE,aAAb,OAAuB,OAAM,IAAI,UAAU,6CAA6C;AAC7F;AACA,SAAS6U,GAAG7U,GAAGJ,GAAG;AACjB,SAAmBA,MAAZ,WAA4BA,MAAX,UAA8BI,MAAd,YAAkB,KAAK,IAAmBJ,MAAf,aAAmB,MAAM,EAAE,QAAQI,CAAC;AACxG;AACA,SAAS8U,GAAG9U,GAAG;AACd,MAAIJ,GAAG,GAAG,IAAI;AACd,OAAKyR,GAAG,YAAY,GAAG,IAAIA,GAAG,KAAKrR,CAAC,KAAI;AACvC,UAAM,EAAE,GAAGD,GAAG,GAAG,GAAG,GAAGI,EAAC,IAAK;AAC7B,QAAe,MAAX;AACH,UAAeP,MAAX,OAAc,CAAAA,IAAIO,GAAG,IAAYJ,MAAR;AAAA,eACZA,MAAR,OAAa,EAAG,OAAM,IAAI,WAAW,0BAA0BC,CAAC,iDAAiD;AAAA,eACxGD,MAAR,IAAW,OAAM,IAAI,WAAW,6BAA6B,CAAC,IAAII,CAAC,EAAE;AAAA,EACjF;AACA,SAAOP;AACR;AACA,SAASmV,GAAG/U,GAAG;AACd,QAAMJ,IAAI0R,GAAG,KAAKtR,CAAC;AACnB,MAAI,CAACJ,EAAG,OAAM,IAAI,WAAW,4BAA4BI,CAAC,EAAE;AAC5D,QAAM,IAAI8U,GAAGlV,EAAE,EAAE,CAAC;AAClB,MAAI,IAAIA,EAAE,CAAC;AACX,MAAkB,MAAd,UAAiB,OAAM,IAAI,WAAW,4BAA4BI,CAAC,EAAE;AACzE,QAAMD,IAAI,CAAC,GAAG,IAAI,EAAEH,EAAE,CAAC,KAAKA,EAAE,CAAC,KAAK,IAAIO,IAAI,EAAEP,EAAE,CAAC,KAAKA,EAAE,CAAC,KAAK,IAAI,IAAeA,EAAE,CAAC,MAAd,QAAiBM,IAAI,EAAEN,EAAE,CAAC,KAAK,IAAIY,IAAI,EAAEZ,EAAE,CAAC,KAAKA,EAAE,EAAE,KAAK;AAChI,MAAIS,IAAI,EAAET,EAAE,CAAC,KAAKA,EAAE,EAAE,KAAK;AAC3B,EAAOS,MAAP,OAAaA,IAAI;AACjB,QAAMV,KAAKC,EAAE,CAAC,KAAKA,EAAE,EAAE,KAAK,MAAM,aAAaF,IAAI,CAACC,EAAE,MAAM,GAAG,CAAC,GAAGiB,IAAI,CAACjB,EAAE,MAAM,GAAG,CAAC,GAAGM,IAAI,CAACN,EAAE,MAAM,GAAG,CAAC;AACxG,MAAI+B,GAAGpB,IAAI;AACX,EAAAV,EAAE,EAAE,KAAK8B,IAAI,QAAQpB,IAAI,MAAMV,EAAE,EAAE,MAAM8B,IAAI9B,EAAE,EAAE;AACjD,QAAMe,IAAIf,EAAE,EAAE;AACd,SAAOoV,GAAGjV,GAAG,GAAGI,GAAGD,GAAGM,GAAGH,GAAGX,GAAGkB,GAAGX,CAAC,GAAG;AAAA,IACrC,MAAMF;AAAA,IACN,OAAO;AAAA,IACP,KAAKI;AAAA,IACL,MAAM,IAAI;AAAA,MACT,MAAMD;AAAA,MACN,QAAQM;AAAA,MACR,QAAQH;AAAA,MACR,aAAaX;AAAA,MACb,aAAakB;AAAA,MACb,YAAYX;AAAA,IACf,IAAM;AAAA,IACJ,cAAcU;AAAA,IACd,QAAQe;AAAA,IACR,GAAGpB;AAAA,IACH,UAAU;AAAA,EACZ;AACA;AACA,SAAS2U,GAAGjV,GAAG;AACd,QAAMJ,IAAI2R,GAAG,KAAKvR,CAAC;AACnB,MAAI,GAAG,GAAGD,GAAG,GAAGI,GAAG,GAAGD;AACtB,MAAIN,GAAG;AACN,IAAAM,IAAI4U,GAAGlV,EAAE,EAAE,CAAC,GAAG,IAAI,EAAEA,EAAE,CAAC,KAAK,IAAI,IAAI,EAAEA,EAAE,CAAC,KAAKA,EAAE,CAAC,KAAK,IAAIG,IAAI,EAAEH,EAAE,CAAC,KAAKA,EAAE,CAAC,KAAK,IAAWG,MAAP,OAAaA,IAAI;AACtG,UAAMC,KAAKJ,EAAE,CAAC,KAAKA,EAAE,CAAC,KAAK,MAAM;AACjC,QAAI,IAAI,CAACI,EAAE,MAAM,GAAG,CAAC,GAAGG,IAAI,CAACH,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAACA,EAAE,MAAM,GAAG,CAAC,GAAGJ,EAAE,CAAC,EAAG,OAAM,IAAI,WAAW,0CAA0C;AAAA,EACtI,OAAO;AACN,QAAIA,GAAGY;AACP,QAAI,EAAC,MAAMZ,GAAG,GAAGY,GAAG,UAAUN,EAAC,IAAI6U,GAAG/U,CAAC,GAAsBJ,MAAnB,eAAsB,OAAM,IAAI,WAAW,8BAA8BI,CAAC,EAAE;AACtH,QAAIQ,EAAG,OAAM,IAAI,WAAW,0CAA0C;AACtE,KAAC,EAAC,MAAM,GAAG,QAAQ,GAAG,QAAQT,GAAG,aAAa,GAAG,aAAaI,GAAG,YAAY,EAAC,IAAIP;AAAA,EACnF;AACA,MAAIsV,GAAG,GAAG,GAAGnV,GAAG,GAAGI,GAAG,CAAC,GAAG,kBAAkB,KAAKH,CAAC,EAAG,QAAO;AAAA,IAC3D,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQD;AAAA,IACR,aAAa;AAAA,IACb,aAAaI;AAAA,IACb,YAAY;AAAA,IACZ,UAAUD;AAAA,EACZ;AACC,MAAI;AACH,UAAM,EAAE,OAAON,GAAG,KAAKH,EAAC,IAAK0V,GAAGnV,CAAC;AACjC,IAAAoV,GAAG,MAAMxV,GAAGH,CAAC;AAAA,EACd,QAAQ;AACP,QAAI;AACH,YAAM,EAAE,MAAMG,GAAG,OAAOH,EAAC,IAAK4V,GAAGrV,CAAC;AAClC,MAAAoV,GAAGxV,GAAGH,GAAG,CAAC;AAAA,IACX,QAAQ;AACP,aAAO;AAAA,QACN,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQM;AAAA,QACR,aAAa;AAAA,QACb,aAAaI;AAAA,QACb,YAAY;AAAA,QACZ,UAAUD;AAAA,MACd;AAAA,IACE;AAAA,EACD;AACA,QAAM,IAAI,WAAW,qCAAqCF,CAAC,uBAAuB;AACnF;AACA,SAASqV,GAAGrV,GAAG;AACd,QAAMJ,IAAI4R,GAAG,KAAKxR,CAAC;AACnB,MAAI,GAAG,GAAGD,GAAG;AACb,MAAIH,GAAG;AACN,IAAAG,IAAI+U,GAAGlV,EAAE,CAAC,CAAC;AACX,QAAIO,IAAIP,EAAE,CAAC;AACX,QAAkBO,MAAd,UAAiB,OAAM,IAAI,WAAW,4BAA4BH,CAAC,EAAE;AACzE,QAAI,IAAI,CAACG,GAAG,IAAI,CAACP,EAAE,CAAC,GAAG,IAAI,GAAcG,MAAX,UAA8BA,MAAd,UAAiB,OAAM,IAAI,WAAW,oDAAoD;AAAA,EACzI,OAAO;AACN,QAAIH;AACJ,QAAI,EAAC,MAAM,GAAG,OAAO,GAAG,UAAUG,GAAG,KAAK,GAAG,GAAGH,EAAC,IAAImV,GAAG/U,CAAC,GAAGJ,EAAG,OAAM,IAAI,WAAW,+CAA+C;AAAA,EACpI;AACA,SAAO;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,IACP,UAAUG;AAAA,IACV,iBAAiB;AAAA,EACnB;AACA;AACA,SAASoV,GAAGnV,GAAG;AACd,QAAMJ,IAAI6R,GAAG,KAAKzR,CAAC;AACnB,MAAI,GAAG,GAAGD,GAAG;AACb,MAAIH;AACH,QAAIG,IAAI+U,GAAGlV,EAAE,CAAC,CAAC,GAAG,IAAI,CAACA,EAAE,CAAC,GAAG,IAAI,CAACA,EAAE,CAAC,GAAcG,MAAX,UAA8BA,MAAd,UAAiB,OAAM,IAAI,WAAW,kDAAkD;AAAA,SAC1I;AACN,QAAIH;AACJ,QAAI,EAAC,OAAO,GAAG,KAAK,GAAG,UAAUG,GAAG,MAAM,GAAG,GAAGH,EAAC,IAAImV,GAAG/U,CAAC,GAAGJ,EAAG,OAAM,IAAI,WAAW,8CAA8C;AAAA,EACnI;AACA,SAAO;AAAA,IACN,OAAO;AAAA,IACP,KAAK;AAAA,IACL,UAAUG;AAAA,IACV,kBAAkB;AAAA,EACpB;AACA;AACA,IAAIuV,KAAK,IAAI,OAAO,IAAIzE,GAAG,MAAM,KAAK,GAAG,GAAG0E,KAAK,IAAI,OAAO,IAAI,+CAA+C,MAAM,GAAG;AACxH,SAASC,GAAGxV,GAAG;AACd,QAAMJ,IAAI6V,GAAG,KAAKzV,CAAC,IAAI,4CAA4C;AACnE,QAAM,IAAI,WAAW,GAAGJ,CAAC,KAAKI,CAAC,EAAE;AAClC;AACA,SAAS0V,GAAG1V,GAAG;AACd,SAAOsV,GAAG,KAAKtV,CAAC,KAAKwV,GAAGxV,CAAC,GAAGuV,GAAG,KAAKvV,CAAC,IAAI,EAAE,eAAeuT,GAAGvT,CAAC,IAAI,SAAS,EAAE,QAAQA,EAAC;AACvF;AACA,SAAS2V,GAAG3V,GAAGJ,GAAG,GAAG,GAAG;AACvB,MAAIG,IAAIC,GAAG,IAAIJ,GAAGO,IAAI;AACtB,UAAQ,GAAC;AAAA,IACR,KAAK;AACJ,MAAAiV,GAAGrV,GAAG,GAAGI,CAAC;AACV;AAAA,IACD,KAAK;AAAa,OAAC,EAAC,MAAMJ,GAAG,OAAO,GAAG,KAAKI,EAAC,IAAIyV,GAAG7V,GAAG,GAAGI,CAAC;AAAA,EAC7D;AACC,SAAO;AAAA,IACN,MAAMJ;AAAA,IACN,OAAO;AAAA,IACP,KAAKI;AAAA,EACP;AACA;AACA,SAAS0V,GAAG7V,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAGI,GAAG;AAChC,MAAI,IAAIH,GAAGE,IAAIN,GAAGY,IAAI,GAAGH,IAAI,GAAGV,IAAII,GAAGL,IAAI;AAC3C,UAAQS,GAAC;AAAA,IACR,KAAK;AACJ,MAAA+U,GAAG,GAAGhV,GAAGM,GAAGH,GAAGV,GAAGD,CAAC;AACnB;AAAA,IACD,KAAK;AAAa,UAAIoW,GAAG,GAAG,GAAG,EAAE,GAAG5V,IAAI4V,GAAG5V,GAAG,GAAG,EAAE,GAAGM,IAAIsV,GAAGtV,GAAG,GAAG,EAAE,GAAGH,IAAIyV,GAAGzV,GAAG,GAAG,GAAG,GAAGV,IAAImW,GAAGnW,GAAG,GAAG,GAAG,GAAGD,IAAIoW,GAAGpW,GAAG,GAAG,GAAG;AAAA,EAChI;AACC,SAAO;AAAA,IACN,MAAM;AAAA,IACN,QAAQQ;AAAA,IACR,QAAQM;AAAA,IACR,aAAaH;AAAA,IACb,aAAaV;AAAA,IACb,YAAYD;AAAA,EACd;AACA;AACA,SAASqW,GAAG/V,GAAG;AACd,MAAI,CAAC4S,GAAG5S,CAAC,EAAG,OAAM,IAAI,UAAU,uBAAuB;AACvD,QAAMJ,IAAI;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS;AAAA,IACT,cAAc;AAAA,IACd,cAAc;AAAA,IACd,aAAa;AAAA,EACf;AACC,MAAI,IAAI;AACR,WAAS,IAAI,GAAG,IAAImU,GAAG,QAAQ,KAAK;AACnC,UAAMhU,IAAIgU,GAAG,CAAC,GAAG,IAAI/T,EAAED,CAAC;AACxB,IAAW,MAAX,WAAiB,IAAI,IAAIH,EAAEG,CAAC,IAAIkT,GAAG,CAAC;AAAA,EACrC;AACA,MAAI,CAAC,EAAG,OAAM,IAAI,UAAU,uBAAuB;AACnD,SAAOrT;AACR;AACA,SAASoW,GAAG,EAAE,OAAOhW,GAAG,QAAQJ,GAAG,OAAO,GAAG,MAAM,EAAC,GAAIG,GAAG,GAAGI,GAAG;AAChE,SAAO;AAAA,IACN,OAAOH;AAAA,IACP,QAAQG,KAAKP;AAAA,IACb,OAAO,KAAK;AAAA,IACZ,MAAMG,KAAK;AAAA,EACb;AACA;AACA,SAASkW,GAAGjW,GAAGJ,GAAG;AACjB,SAAO;AAAA,IACN,SAASI;AAAA,IACT,MAAMJ;AAAA,EACR;AACA;AACA,SAASsW,GAAGlW,GAAG;AACd,SAAOmW,GAAGnW,GAAG,YAAY,CAAC,aAAa,QAAQ,GAAG,WAAW;AAC9D;AACA,SAASoW,GAAGpW,GAAG;AACd,SAAOmW,GAAGnW,GAAG,kBAAkB;AAAA,IAC9B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAI,YAAY;AAChB;AACA,SAASqW,GAAGrW,GAAGJ,GAAG;AACjB,SAAOuW,GAAGnW,GAAG,gBAAgB;AAAA,IAC5B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAIJ,CAAC;AACL;AACA,SAAS0W,GAAGtW,GAAGJ,GAAG;AACjB,SAAOuW,GAAGnW,GAAG,UAAU;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAIJ,CAAC;AACL;AACA,SAAS2W,GAAGvW,GAAG;AACd,SAAOmW,GAAGnW,GAAG,gBAAgB;AAAA,IAC5B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAI,MAAM;AACV;AACA,SAASwW,GAAGxW,GAAG;AACd,MAAIJ,IAAII,EAAE;AACV,MAAeJ,MAAX,OAAc,QAAO;AACzB,QAAM,IAAImT,GAAGnT,CAAC;AACd,MAAI,IAAI,KAAK,IAAI,IAAK,OAAM,IAAI,WAAW,6DAA6DA,CAAC,EAAE;AAC3G,SAAO;AACR;AACA,SAAS6W,GAAGzW,GAAGJ,GAAG,GAAG;AACpB,QAAM,IAAI,IAAIA,IAAIA,IAAI;AACtB,MAAII,IAAI,EAAG,OAAM,IAAI,WAAW,sDAAsD,CAAC,SAASA,CAAC,EAAE;AACnG,MAAIJ,IAAII,KAAK,EAAG,OAAM,IAAI,WAAW,8CAA8CJ,CAAC,EAAE;AACvF;AACA,SAAS8W,GAAG1W,GAAG;AACd,QAAMJ,IAAII,EAAE;AACZ,MAAeJ,MAAX,OAAc,QAAO;AACzB,MAAgB,OAAOA,KAAnB,UAAsB;AACzB,QAAekT,GAAGlT,CAAC,MAAf,OAAkB,OAAM,IAAI,WAAW,6DAA6DA,CAAC,EAAE;AAC3G,WAAO;AAAA,EACR;AACA,QAAM,IAAI,KAAK,MAAMA,CAAC;AACtB,MAAI,CAAC,OAAO,SAAS,CAAC,KAAK,IAAI,KAAK,IAAI,EAAG,OAAM,IAAI,WAAW,6DAA6DA,CAAC,EAAE;AAChI,SAAO;AACR;AACA,SAAS+W,GAAG3W,GAAGJ,GAAG;AACjB,UAAQI,GAAC;AAAA,IACR,KAAK;AAAU,aAAO;AAAA,QACrB,WAAW;AAAA,QACX,MAAM;AAAA,QACN,WAAW;AAAA,MACd;AAAA,IACE,KAAK;AAAU,aAAO;AAAA,QACrB,WAAW;AAAA,QACX,MAAM;AAAA,QACN,WAAW;AAAA,MACd;AAAA,IACE,KAAK;AAAe,aAAO;AAAA,QAC1B,WAAW;AAAA,QACX,MAAM;AAAA,QACN,WAAW;AAAA,MACd;AAAA,IACE,KAAK;AAAe,aAAO;AAAA,QAC1B,WAAW;AAAA,QACX,MAAM;AAAA,QACN,WAAW;AAAA,MACd;AAAA,IACE,KAAK;AAAc,aAAO;AAAA,QACzB,WAAW;AAAA,QACX,MAAM;AAAA,QACN,WAAW;AAAA,MACd;AAAA,EACA;AACC,UAAQJ,GAAC;AAAA,IACR,KAAK;AAAQ,aAAO;AAAA,QACnB,WAAWA;AAAA,QACX,MAAM;AAAA,QACN,WAAW;AAAA,MACd;AAAA,IACE,KAAK;AAAG,aAAO;AAAA,QACd,WAAWA;AAAA,QACX,MAAM;AAAA,QACN,WAAW;AAAA,MACd;AAAA,IACE,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAG,aAAO;AAAA,QACd,WAAWA;AAAA,QACX,MAAM;AAAA,QACN,WAAW,OAAO,IAAIA;AAAA,MACzB;AAAA,IACE,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAG,aAAO;AAAA,QACd,WAAWA;AAAA,QACX,MAAM;AAAA,QACN,WAAW,OAAO,IAAIA;AAAA,MACzB;AAAA,IACE,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAG,aAAO;AAAA,QACd,WAAWA;AAAA,QACX,MAAM;AAAA,QACN,WAAW,OAAO,IAAIA;AAAA,MACzB;AAAA,IACE;AAAS,YAAM,IAAI,WAAW,6DAA6DA,CAAC,EAAE;AAAA,EAChG;AACA;AACA,IAAIgX,KAAK,OAAO,YAAY;AAC5B,SAASC,GAAG7W,GAAGJ,GAAG,GAAG,GAAGG,IAAI,IAAI;AAC/B,MAAI,IAAI,CAAA;AACR,WAASC,IAAI,GAAGA,IAAI0T,GAAG,QAAQ1T,KAAK;AACnC,UAAMJ,IAAI8T,GAAG1T,CAAC,GAAGF,IAAIF,EAAE,CAAC,GAAGG,IAAIH,EAAE,CAAC;AAClC,IAAe,MAAf,cAAoB,MAAMG,KAAK,EAAE,KAAKD,CAAC;AAAA,EACxC;AACA,MAAI,EAAE,OAAOC,CAAC;AACd,MAAII,IAAI;AACR,EAAAA,MAAMyW,KAAKzW,IAAI,SAAoBA,MAAX,UAAgB,EAAE,KAAKA,CAAC;AAChD,MAAI,IAAI,CAAA;AACR,MAAI,EAAE,OAAO,CAAC;AACd,WAASH,IAAI,GAAGA,IAAI,EAAE,QAAQA,KAAK;AAClC,UAAMP,IAAImU,GAAG,EAAE5T,CAAC,CAAC;AACjB,IAAWP,MAAX,UAAgB,EAAE,KAAKA,CAAC;AAAA,EACzB;AACA,MAAIS,IAAIiW,GAAGnW,GAAGJ,GAAG,GAAGO,CAAC;AACrB,MAAeD,MAAX,UAAgB,MAAM0W,GAAI,OAAM,IAAI,WAAW,GAAGhX,CAAC,cAAc;AACrE,SAAOM,KAAKA,KAAKyT,KAAKA,GAAGzT,CAAC,IAAIA;AAC/B;AACA,SAAS4W,GAAG9W,GAAG;AACd,QAAMJ,IAAII,EAAE;AACZ,MAAeJ,MAAX,OAAc,QAAO,CAAA;AACzB,MAAI,GAAG,GAAGG,GAAG,GAAGI,GAAG,IAAI,UAAUD,IAAI;AACrC,MAAI0S,GAAGhT,CAAC,GAAG;AACV,QAAI8U,GAAG9U,CAAC,EAAG,QAAO,EAAE,iBAAiBA,EAAC;AACtC,QAAIyU,GAAGzU,CAAC,EAAG,QAAO,EAAE,iBAAiBA,EAAC;AACtC,QAAI2U,GAAG3U,CAAC,EAAG,QAAO,EAAE,iBAAiBmX,GAAG9G,EAAGrQ,GAAG+B,EAAC,EAAE,SAASsO,EAAGrQ,GAAGyC,CAAC,CAAC,EAAC;AACnE,IAAAtC,IAAIiX,GAAGpX,CAAC;AACR,UAAMI,IAAIiX,GAAGlX,GAAGH,GAAG;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,EAAE;AACL,KAAC,EAAC,SAAS,GAAG,MAAM,EAAC,IAAIsX,GAAGnX,GAAGC,GAAG,WAAW,IAAI,EAAC,QAAQG,GAAG,UAAU,EAAC,IAAIH,GAAcG,MAAX,WAAiB,IAAI;AAAA,EACrG,OAAO;AACN,QAAIH,GAAGQ,GAAG,GAAGb,GAAGD;AAChB,QAAI,EAAC,MAAM,GAAG,OAAOC,GAAG,KAAKD,GAAG,MAAM,GAAG,UAAUK,GAAG,cAAcC,GAAG,QAAQG,GAAG,GAAGK,EAAC,IAAIuU,GAAG5B,GAAGvT,CAAC,CAAC,GAAGI,EAAG,KAAIwT,GAAGxT,CAAC,GAAGQ,IAAI,IAAI,UAAUL,MAAM,IAAI,SAASD,IAAI;AAAA,aACnJM,EAAG,OAAM,IAAI,WAAW,uGAAuG;AACxI,IAAAT,MAAMA,IAAI,YAAYA,IAAIoX,GAAGpX,CAAC,GAAG,IAAI;AAAA,MACpC,MAAM;AAAA,MACN,OAAOJ;AAAA,MACP,KAAKD;AAAA,IACR;AAAA,EACC;AACA,SAAkB,MAAX,SAAe,EAAE,iBAAiBqX,GAAG,GAAGhX,CAAC,EAAC,IAAK,EAAE,iBAAiBqX,GAAGC,GAAG,GAAG,GAAG,GAAgB,MAAb,WAAiB9D,GAAGpT,CAAC,IAAI,GAAG,GAAG,cAAc,UAAUD,CAAC,GAAG,GAAGH,CAAC,EAAC;AACzJ;AACA,SAASuX,GAAGtX,GAAG;AACd,SAAaiQ,EAAGjQ,GAAGwP,EAAC,MAAb,IAAiB,SAAeS,EAAGjQ,GAAGwC,EAAC,MAAb,IAAiB,UAAgByN,EAAGjQ,GAAGgB,EAAC,MAAb,IAAiB,SAAeiP,EAAGjQ,GAAG6B,EAAC,MAAb,IAAiB,QAAcoO,EAAGjQ,GAAGc,EAAC,MAAb,IAAiB,SAAemP,EAAGjQ,GAAGiC,EAAC,MAAb,IAAiB,WAAiBgO,EAAGjQ,GAAGe,EAAC,MAAb,IAAiB,WAAiBkP,EAAGjQ,GAAGyB,EAAC,MAAb,IAAiB,gBAAsBwO,EAAGjQ,GAAGsB,EAAC,MAAb,IAAiB,gBAAgB;AACpQ;AACA,SAASiW,GAAGvX,GAAGJ,GAAG;AACjB,SAAOiU,GAAG,QAAQ7T,CAAC,IAAI6T,GAAG,QAAQjU,CAAC,IAAIA,IAAII;AAC5C;AACA,SAASwX,GAAGxX,GAAG;AACd,SAAkBA,MAAX,UAA4BA,MAAZ,WAA4BA,MAAX;AACzC;AACA,SAASyX,GAAGzX,GAAG;AACd,SAAOwX,GAAGxX,CAAC,KAAeA,MAAV,QAAc,SAAS;AACxC;AACA,SAAS0X,GAAG1X,GAAG;AACd,SAAOsQ,GAAG,gBAAgB,EAAEtQ,CAAC;AAC9B;AACA,SAAS2X,GAAG3X,GAAG;AACd,SAAOsQ,GAAG,gBAAgB,EAAEL,EAAGjQ,GAAGqC,CAAC,CAAC;AACrC;AACA,SAASuV,GAAG5X,GAAGJ,GAAG,IAAI,QAAQ;AAC7B,QAAM,IAAI,uBAAO,OAAO,IAAI,GAAGG,IAAI2X,GAAG1X,CAAC,EAAE,UAAUJ,GAAG;AAAA,IACrD,MAAM;AAAA,IACN,WAAW;AAAA,IACX,KAAK;AAAA,EACP,CAAE;AACD,SAAO,EAAE,YAAYG,EAAE,WAA2B,MAAhB,eAAgC,MAAX,WAAiB,EAAE,MAAMA,EAAE,MAAuB,MAAjB,gBAAiC,MAAX,WAAiB,EAAE,OAAOA,EAAE,OAAO;AAClJ;AACA,SAASkX,GAAGjX,GAAGJ,GAAG,GAAG,GAAGG,GAAG;AAC1B,QAAM,IAAI2X,GAAG1X,CAAC,EAAE,YAAY,CAAC,GAAGG,IAAI,EAAE,OAAO,GAAG,CAAC,GAAG,IAAI,uBAAO,OAAO,IAAI;AAC1E,MAAID,IAAI;AACR,EAAAC,EAAE,KAAI;AACN,WAASH,IAAI,GAAGA,IAAIG,EAAE,QAAQH,KAAK;AAClC,UAAMP,IAAIU,EAAEH,CAAC,GAAGF,IAAIF,EAAEH,CAAC;AACvB,QAAeK,MAAX,OAAc,CAAAI,IAAI,IAAI,EAAET,CAAC,QAAQ6T,GAAG7T,CAAC,GAAGK,CAAC;AAAA,aACtBC,MAAd,WAAiB;AACzB,UAAIA,EAAE,SAASN,CAAC,EAAG,OAAM,IAAI,UAAU,sBAAsBA,CAAC,wBAAwB;AACtF,QAAEA,CAAC,IAAIgU,GAAGhU,CAAC;AAAA,IACZ;AAAA,EACD;AACA,MAAkBM,MAAd,aAAmB,CAACG,EAAG,OAAM,IAAI,UAAU,+BAA+B;AAC9E,SAAO;AACR;AACA,SAAS2X,GAAG7X,GAAGJ,IAAI,YAAY;AAC9B,QAAM,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACC,MAAI,IAAI;AACR,QAAMG,IAAI,uBAAO,OAAO,IAAI;AAC5B,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AAClC,UAAMI,IAAI,EAAE,CAAC,GAAG,IAAIH,EAAEG,CAAC;AACvB,IAAW,MAAX,UAAgBJ,EAAEI,CAAC,IAAI4S,GAAG,CAAC,GAAG,IAAI,MAAqBnT,MAAf,eAAqBG,EAAEI,CAAC,IAAI;AAAA,EACrE;AACA,MAAI,CAAC,EAAG,OAAM,IAAI,UAAU,mBAAmB;AAC/C,SAAOJ;AACR;AACA,SAAS+X,GAAG9X,GAAGJ,GAAG;AACjB,MAAIgT,GAAG5S,CAAC,GAAG;AACV,QAAIqU,GAAGrU,CAAC,EAAG,QAAOkW,GAAG6B,EAAGnY,CAAC,CAAC,GAAGmX,GAAG9G,EAAGjQ,GAAGqB,EAAC,GAAG4O,EAAGjQ,GAAGqC,CAAC,CAAC;AAClD,QAAIqS,GAAG1U,CAAC,GAAG;AACV,YAAMP,IAAIuY,GAAG/H,EAAGjQ,GAAGkB,EAAC,GAAG+O,EAAGjQ,GAAGa,EAAC,CAAC;AAC/B,aAAOqV,GAAG6B,EAAGnY,CAAC,CAAC,GAAGmX,GAAGtX,EAAE,SAASwQ,EAAGjQ,GAAGqC,CAAC,CAAC;AAAA,IACzC;AACA,QAAIkS,GAAGvU,CAAC,EAAG,QAAOkW,GAAG6B,EAAGnY,CAAC,CAAC,GAAGmX,GAAG9G,EAAGjQ,GAAG2B,EAAC,EAAE,SAASsO,EAAGjQ,GAAGqC,CAAC,CAAC;AAC1D,UAAM5C,IAAIuX,GAAGhX,CAAC;AACd,WAAO+W,GAAGkB,GAAGxY,GAAGwX,GAAGxX,GAAGO,GAAG;AAAA,MACxB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,CAAA,GAAI,CAAA,CAAE,GAAGkW,GAAG6B,EAAGnY,CAAC,CAAC,CAAC,GAAGH,CAAC;AAAA,EAC1B;AACA,MAAI,EAAE,MAAM,GAAG,OAAO,GAAG,KAAKM,GAAG,UAAU,GAAG,GAAGI,EAAC,IAAK4U,GAAG5B,GAAGnT,CAAC,CAAC;AAC/D,MAAIG,EAAG,OAAM,IAAI,WAAW,0CAA0C;AACtE,SAAO,MAAM,IAAI,YAAY,IAAIgX,GAAG,CAAC,GAAGjB,GAAG6B,EAAGnY,CAAC,CAAC,GAAGmX,GAAG;AAAA,IACrD,MAAM;AAAA,IACN,OAAO;AAAA,IACP,KAAKhX;AAAA,EACP,GAAI,CAAC;AACL;AACA,SAASmX,GAAGlX,GAAGJ,GAAG,GAAG;AACpB,SAAOqW,GAAGgC,GAAGjY,GAAGJ,GAAG,CAAC,GAAGiW,GAAGjW,EAAE,MAAMA,EAAE,QAAQA,EAAE,QAAQA,EAAE,aAAaA,EAAE,aAAaA,EAAE,YAAY,CAAC,CAAC;AACrG;AACA,SAASsY,GAAGlY,GAAGJ,GAAG;AACjB,MAAI,GAAG,GAAGG;AACV,MAAI6S,GAAG5S,CAAC,GAAG;AACV,QAAIuU,GAAGvU,CAAC,EAAG,QAAOkW,GAAG6B,EAAGnY,CAAC,CAAC,GAAGuY,GAAGlI,EAAGjQ,GAAG2B,EAAC,GAAGsO,EAAGjQ,GAAGqC,CAAC,CAAC;AAClD,QAAIqS,GAAG1U,CAAC,GAAG;AACV,YAAMP,IAAIuY,GAAG/H,EAAGjQ,GAAGkB,EAAC,GAAG+O,EAAGjQ,GAAGa,EAAC,CAAC;AAC/B,aAAOqV,GAAG6B,EAAGnY,CAAC,CAAC,GAAGuY,GAAG1Y,GAAGwQ,EAAGjQ,GAAGqC,CAAC,CAAC;AAAA,IACjC;AACA,QAAIgS,GAAGrU,CAAC,EAAG,QAAOkW,GAAG6B,EAAGnY,CAAC,CAAC,GAAGuY,GAAGlC,GAAGhG,EAAGjQ,GAAGqB,EAAC,GAAG;AAAA,MAC5C,WAAW;AAAA,MACX,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,CAAG,GAAG4O,EAAGjQ,GAAGqC,CAAC,CAAC;AACZ,IAAAtC,IAAIiX,GAAGhX,CAAC;AACR,UAAM,IAAIiX,GAAGlX,GAAGC,GAAG;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,CAAA,CAAE,GAAGG,IAAI+V,GAAG6B,EAAGnY,CAAC,CAAC;AACpB,KAAC,EAAC,SAAS,GAAG,MAAM,EAAC,IAAIsX,GAAGnX,GAAG,GAAGI,CAAC;AAAA,EACpC,OAAO;AACN,QAAI,GAAGA,GAAG,GAAGD;AACb,QAAI,EAAC,MAAMC,GAAG,OAAO,GAAG,KAAKD,GAAG,MAAM,GAAG,UAAUH,GAAG,GAAG,EAAC,IAAIgV,GAAG5B,GAAGnT,CAAC,CAAC,GAAG,EAAG,OAAM,IAAI,WAAW,8CAA8C;AAC/I,IAAmB,MAAnB,mBAAyB,IAAI;AAAA,MAC5B,WAAW;AAAA,MACX,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,IAAMgV,GAAG7U,GAAG,GAAGD,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,GAAGH,MAAMA,IAAI,YAAYA,IAAIoX,GAAGpX,CAAC,GAAGmW,GAAG6B,EAAGnY,CAAC,CAAC,GAAG,IAAI;AAAA,MACxI,MAAMO;AAAA,MACN,OAAO;AAAA,MACP,KAAKD;AAAA,IACR;AAAA,EACC;AACA,SAAOiY,GAAGlC,GAAG,GAAG,CAAC,GAAGlW,CAAC;AACtB;AACA,SAASqY,GAAGpY,GAAG;AACd,QAAMJ,IAAI0Q,GAAG,qBAAqB;AAClC,MAAI8D,GAAGpU,CAAC,EAAG,QAAO,IAAIJ,EAAEqQ,EAAGjQ,GAAGwP,EAAC,GAAGS,EAAGjQ,GAAGwC,EAAC,GAAGyN,EAAGjQ,GAAGgB,EAAC,GAAGiP,EAAGjQ,GAAG6B,EAAC,GAAGoO,EAAGjQ,GAAGc,EAAC,GAAGmP,EAAGjQ,GAAGiC,EAAC,GAAGgO,EAAGjQ,GAAGe,EAAC,GAAGkP,EAAGjQ,GAAGyB,EAAC,GAAGwO,EAAGjQ,GAAGsB,EAAC,GAAG2O,EAAGjQ,GAAGyP,EAAC,CAAC;AAC1H,MAAI,CAACmD,GAAG5S,CAAC,EAAG,SAAO,SAASA,GAAG;AAC9B,UAAM,EAAE,OAAOJ,GAAG,QAAQH,GAAG,OAAOK,GAAG,MAAMC,GAAG,OAAOF,GAAG,SAASM,GAAG,SAASC,GAAG,cAAcF,GAAG,cAAcM,GAAG,aAAaH,EAAC,KAAK,SAASL,GAAG;AAClJ,YAAMJ,IAAIgS,GAAG,KAAK5R,CAAC;AACnB,UAAI,CAACJ,EAAG,OAAM,IAAI,WAAW,qBAAqBI,CAAC,EAAE;AACrD,UAAIJ,EAAE,OAAO,CAACI,GAAGJ,MAAMA,IAAI,KAAgBI,MAAX,OAAY,EAAI,OAAM,IAAI,WAAW,qBAAqBA,CAAC,EAAE;AAC7F,YAAMP,IAAYG,EAAE,CAAC,MAAX,MAAe,KAAK,GAAGE,IAAeF,EAAE,CAAC,MAAd,SAAkB,IAAImT,GAAGnT,EAAE,CAAC,CAAC,IAAIH,GAAGM,IAAeH,EAAE,CAAC,MAAd,SAAkB,IAAImT,GAAGnT,EAAE,CAAC,CAAC,IAAIH,GAAGI,IAAeD,EAAE,CAAC,MAAd,SAAkB,IAAImT,GAAGnT,EAAE,CAAC,CAAC,IAAIH,GAAGU,IAAeP,EAAE,CAAC,MAAd,SAAkB,IAAImT,GAAGnT,EAAE,CAAC,CAAC,IAAIH,GAAGW,IAAeR,EAAE,CAAC,MAAd,SAAkB,IAAImT,GAAGnT,EAAE,CAAC,CAAC,IAAIH,GAAGS,KAAIN,EAAE,CAAC,GAAGY,IAAIZ,EAAE,CAAC,GAAGS,IAAIT,EAAE,CAAC,GAAGD,IAAIC,EAAE,EAAE,GAAGF,IAAIE,EAAE,EAAE;AAC1R,UAAIgB,IAAI,GAAGX,IAAI,GAAGyB,IAAI;AACtB,UAAexB,OAAX,QAAc;AACjB,YAAIM,KAAKH,KAAKV,KAAKD,EAAG,OAAM,IAAI,WAAW,0CAA0C;AACrF,QAAAgC,IAAI,OAAOqR,IAAI7S,KAAI,aAAa,MAAM,GAAG,CAAC,CAAC,IAAIT;AAAA,MAChD,WAAWmB,IAAeJ,MAAX,SAAe,IAAIuS,GAAGvS,CAAC,IAAIf,GAAcY,MAAX,QAAc;AAC1D,YAAIV,KAAKD,EAAG,OAAM,IAAI,WAAW,0CAA0C;AAC3E,QAAAgC,IAAI,KAAKqR,IAAI1S,IAAI,aAAa,MAAM,GAAG,CAAC,CAAC,IAAIZ;AAAA,MAC9C,MAAO,CAAAQ,IAAeN,MAAX,SAAe,IAAIoT,GAAGpT,CAAC,IAAIF,GAAcC,MAAX,WAAiBgC,IAAIqR,IAAIrT,IAAI,aAAa,MAAM,GAAG,CAAC,CAAC,IAAID;AAClG,YAAMa,KAAIoB,IAAI,KAAKf,IAAI,KAAK,MAAMe,IAAI,GAAG,IAAI,KAAKjB,IAAI,KAAK,MAAMiB,IAAI,GAAG,IAAI;AAC5E,aAAOzB,KAAK,KAAK,MAAMyB,IAAI,GAAG,IAAI,IAAId,KAAK,KAAK,MAAMc,IAAI,IAAI,GAAG2W,GAAGvY,GAAGC,GAAGF,GAAGM,GAAGC,GAAGQ,GAAGX,GAAGQ,GAAGE,GAAGL,EAAC,GAAG;AAAA,QAClG,OAAOR;AAAA,QACP,QAAQC;AAAA,QACR,OAAOF;AAAA,QACP,MAAMM;AAAA,QACN,OAAOC;AAAA,QACP,SAASQ;AAAA,QACT,SAASX;AAAA,QACT,cAAcQ;AAAA,QACd,cAAcE;AAAA,QACd,aAAaL;AAAA,MACjB;AAAA,IACE,GAAEN,CAAC;AACH,WAAO,KAAKsQ,GAAG,qBAAqB,GAAG1Q,GAAGH,GAAGK,GAAGC,GAAGF,GAAGM,GAAGC,GAAGF,GAAGM,GAAGH,CAAC;AAAA,EACpE,GAAE8S,GAAGnT,CAAC,CAAC;AACP,QAAM,IAAI;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS;AAAA,IACT,cAAc;AAAA,IACd,cAAc;AAAA,IACd,aAAa;AAAA,EACf;AACC,MAAI,IAAI+V,GAAG/V,CAAC;AACZ,WAASA,IAAI,GAAGA,IAAI+T,GAAG,QAAQ/T,KAAK;AACnC,UAAMJ,IAAImU,GAAG/T,CAAC,GAAG,IAAI,EAAEJ,CAAC;AACxB,IAAW,MAAX,WAAiB,EAAEA,CAAC,IAAI;AAAA,EACzB;AACA,SAAO,IAAIA,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW;AAC9H;AACA,SAAS0Y,GAAGtY,GAAG;AACd,MAAIJ;AACJ,MAAIgT,GAAG5S,CAAC,GAAG;AACV,QAAImU,GAAGnU,CAAC,KAAK0U,GAAG1U,CAAC,EAAG,QAAOuY,GAAGtI,EAAGjQ,GAAGa,EAAC,CAAC;AACtC,IAAAjB,IAAIwT,GAAGpT,CAAC;AAAA,EACT,MAAO,CAAAJ,IAAII;AACX,QAAM,EAAE,MAAM,GAAG,OAAO,GAAG,KAAKD,GAAG,MAAM,GAAG,QAAQI,GAAG,GAAG,EAAC,KAAK,SAASH,GAAG;AAC3E,UAAMJ,IAAImV,GAAG/U,CAAC;AACd,QAAI,CAACJ,EAAE,KAAK,CAACA,EAAE,OAAQ,OAAM,IAAI,WAAW,8CAA8C;AAC1F,WAAOA;AAAA,EACR,GAAEuT,GAAGvT,CAAC,CAAC,GAAG,EAAE,MAAMM,IAAI,GAAG,QAAQM,IAAI,GAAG,QAAQH,IAAI,GAAG,aAAaV,IAAI,GAAG,aAAaD,IAAI,GAAG,YAAYkB,IAAI,MAAyB,MAAnB,iBAAuB,KAAK,GAAGX,IAAIuY,GAAG,GAAG,GAAGzY,GAAGG,GAAGM,GAAGH,GAAGV,GAAGD,GAAGkB,KAAK,IAAI,IAAI2S,GAAGpT,CAAC,EAAE;AACtM,SAAOsY,GAAGxY,EAAE,OAAO,GAAGsY,GAAGG,GAAGzY,CAAC,CAAC;AAC/B;AACA,SAAS0Y,GAAG3Y,GAAGJ,GAAG;AACjB,MAAIgT,GAAG5S,CAAC,GAAG;AACV,QAAIyU,GAAGzU,CAAC,EAAG,QAAOkW,GAAG6B,EAAGnY,CAAC,CAAC,GAAGgZ,GAAG3I,EAAGjQ,GAAGqB,EAAC,GAAG4O,EAAGjQ,GAAGqC,CAAC,CAAC;AAClD,QAAI5C;AACJ,WAAOuQ,GAAGhQ,GAAGqC,CAAC,IAAI5C,IAAIwQ,EAAGjQ,GAAGqC,CAAC,KAAK5C,IAAIO,EAAE,UAAqBP,MAAX,WAAiBA,IAAI,YAAYA,IAAIoZ,GAAGpZ,CAAC,IAAImZ,GAAGE,GAAGrZ,GAAGwX,GAAGxX,GAAGO,GAAG;AAAA,MAChH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,CAAA,GAAI,CAAA,CAAE,GAAGkW,GAAG6B,EAAGnY,CAAC,CAAC,CAAC,GAAGH,CAAC;AAAA,EAC1B;AACA,MAAI,EAAE,OAAO,GAAG,KAAK,GAAG,kBAAkBM,GAAG,UAAU,EAAC,IAAKoV,GAAGhC,GAAGnT,CAAC,CAAC;AACrE,MAAe,MAAX,WAAiB,IAAI,YAAY,IAAImX,GAAG,CAAC,GAAGjB,GAAG6B,EAAGnY,CAAC,CAAC,GAAiB,MAAd,UAAiB,QAAOgZ,GAAG;AAAA,IACrF,MAAM;AAAA,IACN,OAAO;AAAA,IACP,KAAK;AAAA,EACP,GAAI,CAAC;AACJ,MAAIzY,IAAI;AAAA,IACP,MAAMJ;AAAA,IACN,OAAO;AAAA,IACP,KAAK;AAAA,EACP;AACC,SAAOgZ,GAAG5Y,CAAC,GAAGA,IAAI2Y,GAAG,GAAGlB,GAAG,GAAGzX,GAAG,WAAW,GAAG,WAAW,GAAGyY,GAAGzY,GAAG,CAAC;AACrE;AACA,SAAS6Y,GAAGhZ,GAAGJ,GAAG;AACjB,MAAI;AACJ,MAAIgT,GAAG5S,CAAC,GAAG;AACV,QAAIsU,GAAGtU,CAAC,EAAG,QAAOkW,GAAG6B,EAAGnY,CAAC,CAAC,GAAGqZ,GAAGhJ,EAAGjQ,GAAGmC,EAAC,CAAC;AACxC,QAAIoS,GAAGvU,CAAC,EAAG,QAAOkW,GAAG6B,EAAGnY,CAAC,CAAC,GAAGqZ,GAAGhJ,EAAGjQ,GAAG2B,EAAC,EAAE,IAAI;AAC7C,QAAI+S,GAAG1U,CAAC,GAAG;AACV,YAAMP,IAAIuY,GAAG/H,EAAGjQ,GAAGkB,EAAC,GAAG+O,EAAGjQ,GAAGa,EAAC,CAAC;AAC/B,aAAOqV,GAAG6B,EAAGnY,CAAC,CAAC,GAAGqZ,GAAGxZ,EAAE,IAAI;AAAA,IAC5B;AACA,UAAM,EAAE,MAAM,GAAG,QAAQM,GAAG,QAAQ,GAAG,aAAaI,GAAG,aAAa,GAAG,YAAYD,EAAC,IAAK2X,GAAG7X,CAAC;AAC7F,QAAI6V,GAAG,GAAG9V,GAAG,GAAGI,GAAG,GAAGD,GAAGgW,GAAG6B,EAAGnY,CAAC,CAAC,CAAC;AAAA,EACnC,MAAO,KAAIqV,GAAG9B,GAAGnT,CAAC,CAAC,GAAGkW,GAAG6B,EAAGnY,CAAC,CAAC;AAC9B,SAAOqZ,GAAG,CAAC;AACZ;AACA,SAASC,GAAGlZ,GAAG;AACd,SAAkBA,MAAX,SAAe;AAAA,IACrB,WAAW;AAAA,IACX,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,aAAa;AAAA,IACb,YAAY;AAAA,EACd,IAAKiQ,EAAG+I,GAAGhZ,CAAC,GAAGmC,EAAC;AAChB;AACA,SAASgX,GAAGnZ,GAAGJ,GAAG;AACjB,MAAIgT,GAAG5S,CAAC,GAAG;AACV,QAAIwU,GAAGxU,CAAC,EAAG,QAAOkW,GAAG6B,EAAGnY,CAAC,CAAC,GAAGwZ,GAAGnJ,EAAGjQ,GAAGqB,EAAC,GAAG4O,EAAGjQ,GAAGqC,CAAC,CAAC;AAClD,UAAM5C,IAAIuX,GAAGhX,CAAC;AACd,WAAOoZ,GAAGC,GAAG5Z,GAAGwX,GAAGxX,GAAGO,GAAG;AAAA,MACxB;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,CAAA,GAAI,CAAA,CAAE,GAAGkW,GAAG6B,EAAGnY,CAAC,CAAC,CAAC,GAAGH,CAAC;AAAA,EAC1B;AACA,MAAI,EAAE,MAAM,GAAG,OAAO,GAAG,iBAAiBM,GAAG,UAAU,EAAC,IAAKsV,GAAGlC,GAAGnT,CAAC,CAAC;AACrE,EAAW,MAAX,WAAiB,IAAI,YAAY,IAAImX,GAAG,CAAC,GAAGjB,GAAG6B,EAAGnY,CAAC,CAAC;AACpD,MAAIO,IAAI;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA,IACP,KAAKJ;AAAA,EACP;AACC,SAAOuZ,GAAGnZ,CAAC,GAAGA,IAAIkZ,GAAG,GAAGzB,GAAG,GAAGzX,GAAG,YAAY,GAAG,WAAW,GAAGiZ,GAAGjZ,GAAG,CAAC;AACtE;AACA,SAASkX,GAAG,GAAG5X,GAAGK,GAAGC,GAAGF,GAAGM,GAAGC,GAAGF,GAAG;AACnC,MAAuBT,MAAnB,eAAsB,QAAO8Z,GAAG1Z,GAAG,CAAC;AACxC,QAAMW,IAAIyV,GAAG,GAAGxW,CAAC;AACjB,MAAeK,MAAX,UAA6BM,MAAb,SAAgB,QAAOoZ,GAAG3Z,GAAGW,GAAGL,CAAC;AACrD,MAAgBL,MAAZ,WAA2BM,MAAV,OAAa;AACjC,UAAMJ,IAAIwY,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK/Y,EAAE,MAAMA,EAAE,QAAQA,EAAE,QAAQA,EAAE,aAAaA,EAAE,aAAaA,EAAE,aAAaM,CAAC;AAC/G,IAAA0Y,GAAGzY,EAAE,OAAO;AACZ,UAAMF,IAAI4Y,GAAG1Y,CAAC;AACd,WAAOyZ,GAAG3Z,CAAC,GAAGA;AAAA,EACf;AACA,EAAA2Y,GAAG,CAAC;AACJ,QAAMpY,IAAIqY,GAAGlY,CAAC,GAAGb,IAAI+Z,GAAG7Z,GAAGW,CAAC;AAC5B,WAASZ,IAAI,GAAGA,IAAID,EAAE,QAAQC,KAAK;AAClC,UAAMH,IAAIE,EAAEC,CAAC,GAAGE,IAAIuP,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,SAAShP,GAAGZ,CAAC,CAAC,GAAGI,IAAI8Z,GAAG7Z,GAAG,MAAM,YAAY;AAC1H,QAAIA,MAAMC,KAAKG,KAAKL,MAAME,EAAG,QAAON;AAAA,EACrC;AACA,MAAiBW,MAAb,UAAgB;AACnB,UAAMJ,IAAI4Z,GAAG7Z,CAAC,GAAGH,IAAIia,GAAGrZ,GAAG,WAAW,MAAM;AAC5C,UAAM,IAAI,WAAW,UAAUR,CAAC,mBAAmBJ,CAAC,OAAOC,CAAC,EAAE;AAAA,EAC/D;AACA,SAAOia,GAAGna,GAAGE,GAAGW,GAAGL,CAAC;AACrB;AACA,SAAS4Z,GAAG/Z,GAAGJ,GAAG;AACjB,MAAI,GAAG,GAAGG,GAAG,GAAGI,GAAG,GAAGD,GAAGM,IAAI,IAAIH,IAAI;AACrC,MAAIuS,GAAG5S,CAAC,GAAG;AACV,QAAI0U,GAAG1U,CAAC,GAAG;AACV,YAAMP,IAAIsY,EAAGnY,CAAC;AACd,aAAOwW,GAAG3W,CAAC,GAAG6W,GAAG7W,GAAG,QAAQ,GAAGyW,GAAGzW,CAAC,GAAG2X,GAAGnH,EAAGjQ,GAAGa,EAAC,GAAGoP,EAAGjQ,GAAGkB,EAAC,GAAG+O,EAAGjQ,GAAGqC,CAAC,CAAC;AAAA,IACtE;AACA,IAAAlC,IAAI6W,GAAGhX,CAAC;AACR,UAAMQ,IAAIyW,GAAG9W,GAAGH,GAAG;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,CAAC,UAAU,CAAC;AACf,KAAC,EAAC,QAAQ,GAAG,UAAUD,EAAC,IAAIS,IAAe,MAAX,WAAiBH,IAAI;AACrD,UAAMV,IAAIoY,EAAGnY,CAAC;AACd,QAAIwW,GAAGzW,CAAC,GAAGO,IAAIoW,GAAG3W,GAAG,QAAQ;AAC7B,UAAMD,IAAIwW,GAAGvW,CAAC;AACd,KAAC,EAAC,SAAS,GAAG,MAAM,EAAC,IAAIuX,GAAG/W,GAAGK,GAAGd,CAAC;AAAA,EACpC,OAAO;AACN,QAAIC,GAAGD,GAAGkB,GAAGX,GAAGyB;AAChB,KAAC,EAAC,MAAMd,GAAG,OAAOX,GAAG,KAAKyB,GAAG,MAAM,GAAG,cAAc/B,GAAG,QAAQ,GAAG,GAAGD,GAAG,UAAUS,EAAC,KAAI,SAASH,GAAG;AAClG,YAAMJ,IAAImV,GAAG/U,CAAC;AACd,UAAI,CAACJ,EAAE,aAAc,OAAM,IAAI,WAAW,4DAA4D;AACtG,aAAOA;AAAA,IACR,GAAEuT,GAAGnT,CAAC,CAAC,IAAID,IAAIyT,GAAG7T,CAAC,GAAGD,IAAIW,IAAI,UAAU,MAAMA,IAAI,SAASF,MAAMA,IAAI,YAAYA,IAAIgX,GAAGhX,CAAC,GAAGK,IAAI;AAChG,UAAMF,IAAIyX,EAAGnY,CAAC;AACd,QAAIwW,GAAG9V,CAAC,GAAGJ,IAAIoW,GAAGhW,GAAG,QAAQ,GAAG4V,GAAG5V,CAAC,GAAG,IAAI;AAAA,MAC1C,MAAMM;AAAA,MACN,OAAOX;AAAA,MACP,KAAKyB;AAAA,IACR;AAAA,EACC;AACA,MAAI/B,IAAI;AACR,SAAoBU,MAAb,aAAmBV,IAAI4T,GAAG,CAAC,IAAI6D,GAAGC,GAAG,GAAG,GAAGhX,GAAGV,GAAGI,GAAG,GAAGG,GAAGM,CAAC,GAAGT,GAAGI,CAAC;AAC1E;AACA,SAAS6Z,GAAGha,GAAGJ,GAAG,GAAG;AACpB,EAAAmZ,GAAGnZ,CAAC,GAAGmQ,GAAG/P,CAAC,GAAGkQ,GAAGlQ,GAAGqB,IAAGzB,CAAC,GAAGsQ,GAAGlQ,GAAGqC,GAAG,CAAC,GAAG6N,GAAGlQ,GAAGmB,IAAG,EAAE;AACpD;AACA,SAAS4V,GAAG/W,GAAGJ,GAAG;AACjB,QAAM,IAAI0Q,GAAG,sBAAsB,GAAG,IAAI,OAAO,OAAO,EAAE,SAAS;AACnE,SAAO0J,GAAG,GAAGha,GAAGJ,CAAC,GAAG;AACrB;AACA,SAASqa,GAAGja,GAAGJ,GAAG,GAAG;AACpB,EAAAsa,GAAGta,CAAC,GAAGmQ,GAAG/P,CAAC,GAAGkQ,GAAGlQ,GAAG2B,IAAG/B,CAAC,GAAGsQ,GAAGlQ,GAAGqC,GAAG,CAAC;AACtC;AACA,SAAS8V,GAAGnY,GAAGJ,GAAG;AACjB,QAAM,IAAI0Q,GAAG,0BAA0B,GAAG,IAAI,OAAO,OAAO,EAAE,SAAS;AACvE,SAAO2J,GAAG,GAAGja,GAAGJ,CAAC,GAAG;AACrB;AACA,SAASua,GAAGna,GAAGJ,GAAG,GAAG;AACpB,EAAAmZ,GAAGnZ,CAAC,GAAGmQ,GAAG/P,CAAC,GAAGkQ,GAAGlQ,GAAGqB,IAAGzB,CAAC,GAAGsQ,GAAGlQ,GAAGqC,GAAG,CAAC,GAAG6N,GAAGlQ,GAAG8B,IAAG,EAAE;AACpD;AACA,SAAS8W,GAAG5Y,GAAGJ,GAAG;AACjB,QAAM,IAAI0Q,GAAG,0BAA0B,GAAG,IAAI,OAAO,OAAO,EAAE,SAAS;AACvE,SAAO6J,GAAG,GAAGna,GAAGJ,CAAC,GAAG;AACrB;AACA,SAASwa,GAAGpa,GAAGJ,GAAG;AACjBmQ,EAAAA,GAAG/P,CAAC,GAAGkQ,GAAGlQ,GAAGmC,IAAGvC,CAAC;AAClB;AACA,SAASqZ,GAAGjZ,GAAG;AACd,QAAMJ,IAAI0Q,GAAG,sBAAsB,GAAG,IAAI,OAAO,OAAO1Q,EAAE,SAAS;AACnE,SAAOwa,GAAG,GAAGpa,CAAC,GAAG;AAClB;AACA,SAASqa,GAAGra,GAAGJ,GAAG,GAAG;AACpB,EAAA0Z,GAAG1Z,CAAC,GAAGmQ,GAAG/P,CAAC,GAAGkQ,GAAGlQ,GAAGqB,IAAGzB,CAAC,GAAGsQ,GAAGlQ,GAAGqC,GAAG,CAAC,GAAG6N,GAAGlQ,GAAGiB,IAAG,EAAE;AACpD;AACA,SAASmY,GAAGpZ,GAAGJ,GAAG;AACjB,QAAM,IAAI0Q,GAAG,2BAA2B,GAAG,IAAI,OAAO,OAAO,EAAE,SAAS;AACxE,SAAO+J,GAAG,GAAGra,GAAGJ,CAAC,GAAG;AACrB;AACA,SAAS0a,GAAGta,GAAGJ,GAAG;AACjB,EAAA6Z,GAAG7Z,CAAC,GAAGmQ,GAAG/P,CAAC,GAAGkQ,GAAGlQ,GAAGa,IAAGjB,CAAC;AACzB;AACA,SAAS2Y,GAAGvY,GAAG;AACd,QAAMJ,IAAI0Q,GAAG,oBAAoB,GAAG,IAAI,OAAO,OAAO1Q,EAAE,SAAS;AACjE,SAAO0a,GAAG,GAAGta,CAAC,GAAG;AAClB;AACA,SAASua,GAAGva,GAAGJ,GAAG,GAAG,GAAG;AACvB,EAAA6Z,GAAG7Z,CAAC,GAAGmQ,GAAG/P,CAAC,GAAGkQ,GAAGlQ,GAAGa,IAAGjB,CAAC,GAAGsQ,GAAGlQ,GAAGkB,IAAG,CAAC,GAAGgP,GAAGlQ,GAAGqC,GAAG,CAAC;AACnD;AACA,SAAS+U,GAAGpX,GAAGJ,GAAG,IAAI,WAAW;AAChC,QAAM,IAAI0Q,GAAG,0BAA0B,GAAGvQ,IAAI,OAAO,OAAO,EAAE,SAAS;AACvE,SAAOwa,GAAGxa,GAAGC,GAAGJ,GAAG,CAAC,GAAGG;AACxB;AACA,SAASya,GAAGxa,GAAG;AACd,SAAOqT,GAAG,QAAQ,CAACzT,MAAiBI,EAAEJ,CAAC,MAAd,OAAe;AACzC;AACA,SAAS6a,GAAGza,GAAGJ,GAAG,GAAG;AACpB,QAAM,IAAI4a,GAAG,CAAC,GAAGza,IAAI2X,GAAG1X,CAAC,EAAE,kBAAkB,CAAC,GAAG,IAAI,uBAAO,OAAO,IAAI,GAAGG,IAAIqa,GAAG5a,CAAC;AAClF,WAASI,IAAI,GAAGA,IAAIqT,GAAG,QAAQrT,KAAK;AACnC,QAAII;AACJ,UAAMF,IAAImT,GAAGrT,CAAC;AACd,IAAAG,EAAE,SAASD,CAAC,KAAK,CAACH,EAAE,SAASG,CAAC,MAAME,IAAIR,EAAEM,CAAC,IAAI,EAAE,SAASA,CAAC,MAAME,IAAI,EAAEF,CAAC,IAAeE,MAAX,WAAiB,EAAEF,CAAC,IAAIE;AAAA,EACrG;AACA,SAAO;AACR;AACA,SAASsa,GAAG1a,GAAGJ,GAAG,GAAG,GAAG;AACvB,QAAMG,IAAI2X,GAAG1X,CAAC,EAAE,QAAQJ,GAAG,GAAG,CAAC;AAC/B,SAAOmZ,GAAGhZ,CAAC,GAAGA;AACf;AACA,SAAS4a,GAAG3a,GAAGJ,GAAG,GAAG,GAAG;AACvB,SAAO8X,GAAG1X,CAAC,EAAE,UAAUJ,GAAG,GAAG,CAAC;AAC/B;AACA,SAASiZ,GAAG7Y,GAAG;AACd,MAAI4S,GAAG5S,CAAC,KAAKgQ,GAAGhQ,GAAGqC,CAAC,EAAG,QAAO4N,EAAGjQ,GAAGqC,CAAC;AACrC,QAAMzC,IAAIuT,GAAGnT,CAAC;AACd,MAAI;AACH,WAAOmX,GAAGvX,CAAC;AAAA,EACZ,QAAQ;AAAA,EAAC;AACT,MAAI;AACJ,MAAI;AACH,KAAC,EAAC,UAAU,EAAC,IAAImV,GAAGnV,CAAC;AAAA,EACtB,QAAQ;AACP,QAAI;AACH,OAAC,EAAC,UAAU,EAAC,IAAIqV,GAAGrV,CAAC;AAAA,IACtB,QAAQ;AACP,UAAI;AACH,SAAC,EAAC,UAAU,EAAC,IAAIyV,GAAGzV,CAAC;AAAA,MACtB,QAAQ;AACP,SAAC,EAAC,UAAU,EAAC,IAAIuV,GAAGvV,CAAC;AAAA,MACtB;AAAA,IACD;AAAA,EACD;AACA,SAAO,MAAM,IAAI,YAAYuX,GAAG,CAAC;AAClC;AACA,SAASH,GAAGhX,GAAG;AACd,MAAIgQ,GAAGhQ,GAAGqC,CAAC,EAAG,QAAO4N,EAAGjQ,GAAGqC,CAAC;AAC5B,QAAM,EAAE,UAAUzC,EAAC,IAAKI;AACxB,SAAkBJ,MAAX,SAAe,YAAYiZ,GAAGjZ,CAAC;AACvC;AACA,SAASgb,GAAG5a,GAAGJ,GAAG;AACjB,SAAOuX,GAAGnX,CAAC,MAAMmX,GAAGvX,CAAC;AACtB;AACA,SAASqY,GAAGjY,GAAGJ,GAAG,GAAG;AACpB,QAAM,IAAI8X,GAAG1X,CAAC;AACd,IAAE,cAAcJ,GAAG,MAAM;AACzB,QAAMG,IAAI,EAAE,UAAUH,GAAG,CAAC;AAC1B,SAAOmZ,GAAGhZ,CAAC,GAAGA;AACf;AACA,SAASsZ,GAAGrZ,GAAGJ,GAAG,GAAG;AACpB,QAAM,IAAI8X,GAAG1X,CAAC;AACd,IAAE,cAAcJ,GAAG,YAAY,GAAGA,EAAE,MAAM;AAC1C,QAAMG,IAAI,EAAE,UAAUH,GAAG,CAAC;AAC1B,SAAO0Z,GAAGvZ,CAAC,GAAGA;AACf;AACA,SAAS+Y,GAAG9Y,GAAGJ,GAAG,GAAG;AACpB,QAAM,IAAI8X,GAAG1X,CAAC;AACd,IAAE,cAAcJ,GAAG,WAAW;AAC9B,QAAMG,IAAI,EAAE,2BAA2BH,GAAG,CAAC;AAC3C,SAAOmZ,GAAGhZ,CAAC,GAAGA;AACf;AACA,SAASyT,GAAGxT,GAAG;AACd,MAAI4S,GAAG5S,CAAC,KAAK0U,GAAG1U,CAAC,EAAG,QAAOiQ,EAAGjQ,GAAGkB,EAAC;AAClC,QAAMtB,IAAIuT,GAAGnT,CAAC;AACd,MAAcJ,MAAV,MAAa,QAAO;AACxB,QAAM,EAAE,QAAQ,GAAG,eAAe,EAAC,KAAK,SAASI,GAAG;AACnD,UAAM,EAAE,cAAcJ,GAAG,QAAQH,GAAG,GAAGK,OAAM,SAASE,GAAG;AACxD,UAAIsV,GAAG,KAAKtV,CAAC,EAAG,QAAO;AAAA,QACtB,cAAcA;AAAA,QACd,QAAQ;AAAA,QACR,GAAG;AAAA,MACP;AACG,UAAI;AACH,cAAM,EAAE,cAAcJ,GAAG,QAAQH,GAAG,GAAGK,EAAC,IAAKiV,GAAG/U,CAAC;AACjD,YAAIF,KAAKF,KAAKH,EAAG,QAAO;AAAA,UACvB,cAAcG;AAAA,UACd,QAAQH;AAAA,UACR,GAAGK;AAAA,QACR;AAAA,MACG,QAAQ;AAAA,MAAC;AACT0V,MAAAA,GAAGxV,CAAC;AAAA,IACL,GAAEA,CAAC;AACH,WAAOJ,IAAI8V,GAAG9V,CAAC,IAAIE,IAAI4V,GAAG,KAAK,IAAIjW,IAAIiW,GAAGjW,CAAC,IAAI;AAAA,EAChD,GAAEG,CAAC;AACH,MAAe,MAAX,OAAc,QAAOib,GAAG,CAAC;AAC7B,QAAM9a,IAAI+a,GAAG,CAAC;AACd,MAAI,CAAC/a,EAAG,OAAM,IAAI,WAAW,0BAA0B,CAAC,EAAE;AAC1D,SAAOA,EAAE;AACV;AACA,SAASgb,GAAG/a,GAAGJ,GAAG;AACjB,MAAII,MAAMJ,EAAG,QAAO;AACpB,QAAM,IAAI8V,GAAG1V,CAAC,EAAE,eAAe,IAAI0V,GAAG9V,CAAC,EAAE;AACzC,MAAe,MAAX,UAA2B,MAAX,QAAc;AACjC,UAAMH,IAAIqb,GAAGlb,CAAC;AACd,QAAI,CAACH,EAAG,QAAO;AACf,UAAMK,IAAIgb,GAAG9a,CAAC;AACd,WAAO,CAAC,CAACF,KAAKA,EAAE,sBAAsBL,EAAE;AAAA,EACzC;AACA,SAAO,MAAM;AACd;AACA,SAASub,GAAGhb,GAAGJ,GAAG;AACjB,QAAM,IAAI8V,GAAG1V,CAAC,EAAE;AAChB,SAAkB,MAAX,SAAe,OAAO,IAAIib,GAAGjb,GAAGJ,CAAC;AACzC;AACA,SAASga,GAAG5Z,GAAG;AACd,QAAMJ,IAAII,IAAI,IAAI,MAAM,KAAK,IAAI,KAAK,IAAIA,CAAC,GAAG,IAAI,KAAK,MAAM,IAAI,KAAK,GAAGD,IAAI,KAAK,MAAM,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,MAAM,IAAI,GAAG,IAAI,IAAII,IAAI,IAAI;AAC9I,SAAO,GAAGP,CAAC,GAAGsb,GAAG,GAAGnb,GAAG,GAAGI,GAAS,MAAN,KAAiBA,MAAN,IAAU,WAAW,MAAM,CAAC;AACrE;AACA,SAAS6X,GAAGhY,GAAGJ,GAAG;AACjB,QAAM,IAAIob,GAAGhb,GAAGJ,CAAC;AACjB,MAAI,EAAE,SAAS,EAAE,MAAM,GAAG,OAAOG,GAAG,KAAK,EAAC,GAAI,MAAM,EAAE,MAAMI,GAAG,QAAQ,GAAG,QAAQD,GAAG,aAAaM,GAAG,aAAaH,GAAG,YAAYV,EAAC,MAAOwb,GAAGvb,CAAC;AAC7I,SAAO4Y,GAAG,GAAGzY,GAAG,GAAGI,GAAG,GAAGD,GAAGM,GAAGH,GAAGV,IAAI,CAAC;AACxC;AACA,SAAS6Z,GAAGxZ,GAAGJ,GAAG,GAAG;AACpB,SAAOka,GAAGJ,GAAG1Z,GAAGJ,CAAC,GAAGI,GAAGJ,GAAG,CAAC;AAC5B;AACA,SAASka,GAAG,GAAGra,GAAGK,GAAGC,GAAG;AACvB,QAAMF,IAAI,EAAE;AACZ,MAAUA,MAAN,EAAS,QAAO,EAAE,CAAC;AACvB,MAAIA,EAAG,SAAQE,GAAC;AAAA,IACf,KAAK;AAAA,IACL,KAAK;AAAW,aAAO,EAAE,CAAC;AAAA,IAC1B,KAAK;AAAS,aAAO,EAAEF,IAAI,CAAC;AAAA,IAC5B,KAAK;AAAU,YAAM,IAAI,WAAW,yBAAyB;AAAA,EAC/D;AACC,MAAiBE,MAAb,SAAgB,OAAM,IAAI,WAAW,yBAAyB;AAClE,QAAMI,IAAIuY,GAAG5Y,CAAC,GAAGM,IAAIiP,EAAgB,QAAQ,SAASlP,GAAGT,EAAC;AAC1D,EAAA+Z,GAAGrZ,CAAC;AACJ,QAAMF,IAAI8a,GAAGvb,GAAGW,CAAC,GAAGI,IAAI6O,EAAgB,QAAQ,IAAIlP,GAAGT,EAAC;AACxD,EAAA+Z,GAAGjZ,CAAC;AACJ,QAAMH,IAAI2a,GAAGvb,GAAGe,CAAC,IAAIN;AACrB,UAAQH,GAAC;AAAA,IACR,KAAK,WAAW;AACf,YAAMC,IAAI2Q,GAAa,eAAe,GAAG,GAAG,GAAG,GAAG,GAAG,CAACtQ,CAAC,GAAGT,IAAIwb,GAAGtb,EAAE,MAAME,CAAC;AAC1E,aAAO0Z,GAAGja,GAAGwW,GAAGoF,GAAGvb,EAAE,QAAQ,MAAMA,EAAE,QAAQ,OAAOA,EAAE,QAAQ,MAAMF,EAAE,SAAS,GAAGA,CAAC,CAAC,EAAE,CAAC;AAAA,IACxF;AAAA,IACA,KAAK;AAAA,IACL,KAAK,SAAS;AACb,YAAMI,IAAI2Q,GAAa,eAAe,GAAG,GAAG,GAAG,GAAG,GAAGtQ,CAAC,GAAGT,IAAIwb,GAAGtb,EAAE,MAAME,CAAC,GAAGD,IAAI2Z,GAAGja,GAAGwW,GAAGoF,GAAGvb,EAAE,QAAQ,MAAMA,EAAE,QAAQ,OAAOA,EAAE,QAAQ,MAAMF,EAAE,SAAS,GAAGA,CAAC,CAAC;AAC7J,aAAOG,EAAEA,EAAE,SAAS,CAAC;AAAA,IACtB;AAAA,EACF;AACA;AACA,SAAS2Z,GAAG,GAAGja,GAAG;AACjB,MAAc,MAAV,MAAa,QAAOgZ,GAAGhZ,EAAE,OAAO,GAAG,CAACiZ,GAAGjZ,CAAC,CAAC;AAC7C,QAAMK,IAAI4V,GAAG,CAAC,EAAE;AAChB,MAAe5V,MAAX,QAAc;AACjB,UAAME,IAAIwY,GAAG/Y,EAAE,QAAQ,MAAMA,EAAE,QAAQ,OAAOA,EAAE,QAAQ,KAAKA,EAAE,KAAK,MAAMA,EAAE,KAAK,SAASK,GAAGL,EAAE,KAAK,QAAQA,EAAE,KAAK,aAAaA,EAAE,KAAK,aAAaA,EAAE,KAAK,UAAU;AACrK,IAAAgZ,GAAGzY,EAAE,OAAO;AACZ,UAAMJ,IAAI8Y,GAAG1Y,CAAC;AACd,WAAOyZ,GAAG7Z,CAAC,GAAG,CAACA,CAAC;AAAA,EACjB;AACA,SAAO6Y,GAAGhZ,EAAE,OAAO,IAAG,SAASG,GAAGH,GAAG;AACpC,QAAIK,IAAI4Y,GAAGjZ,CAAC,GAAG,IAAI4P,EAAgB,QAAQ,SAASvP,GAAGJ,EAAC;AACxD,IAAA2P,EAAgB,QAAQ,SAAS,GAAG8C,EAAE,MAAM,IAAIrS;AAChD,QAAID,IAAIwP,EAAgB,QAAQ,IAAIvP,GAAGJ,EAAC;AACxC,IAAA2P,EAAgB,QAAQ,YAAYxP,GAAGoS,EAAE,MAAMpS,IAAIC;AACnD,UAAMK,IAAI8a,GAAGrb,GAAG,CAAC,GAAGQ,IAAI6a,GAAGrb,GAAGC,CAAC;AAC/B,YAAQM,MAAMC,IAAI,CAACD,CAAC,IAAI,CAACA,GAAGC,CAAC,GAAG,KAAK,CAACL,MAAM;AAC3C,YAAMF,IAAIwP,EAAgB,QAAQ,SAASvP,GAAGuP,EAAgB,QAAQ,OAAOtP,CAAC,CAAC;AAC/E,UAAUub,GAAG7b,IAAG,SAASO,GAAGJ,GAAG;AAC9B,cAAM,EAAE,mBAAmBH,GAAG,MAAM,EAAE,aAAaK,GAAG,aAAaC,GAAG,YAAYF,EAAC,EAAE,IAAKsb,GAAGvb,CAAC,GAAG,EAAE,MAAMO,GAAG,OAAOC,GAAG,KAAKF,GAAG,MAAMM,GAAG,QAAQH,GAAG,QAAQV,GAAC,IAAK4b,GAAGvb,GAAGP,CAAC;AACvK,eAAO+Y,GAAGrY,GAAGC,GAAGF,GAAGM,GAAGH,GAAGV,IAAGG,GAAGC,GAAGF,CAAC;AAAA,MACpC,GAAED,GAAGC,CAAC,CAAC,MAHH,EAGM,QAAO4Z,GAAG5Z,CAAC,GAAGA;AAAA,IACzB,EAAC,EAAG,QAAQ,CAACG,MAAiBA,MAAX,OAAY;AAAA,EAChC,GAAE,GAAGP,CAAC;AACP;AACA,SAAS8Z,GAAG,GAAG9Z,GAAG;AACjB,QAAMK,IAAImW,GAAGxW,GAAG;AAAA,IACf,WAAW;AAAA,IACX,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,aAAa;AAAA,IACb,YAAY;AAAA,EACd,CAAE,GAAGM,IAAI2Z,GAAG,GAAG5Z,CAAC;AACf,MAAIC,EAAE,OAAQ,QAAOA,EAAE,CAAC;AACxB,QAAMF,IAAI6Y,GAAG5Y,CAAC,GAAGK,IAAIkP,EAAgB,QAAQ,SAASxP,GAAGH,EAAC;AAC1D,SAAO+Z,GAAGtZ,CAAC,GAAGqb,GAAG,GAAGrb,CAAC;AACtB;AACA,SAASsb,GAAGzb,GAAG;AACd,MAAIJ;AACJ,SAAOA,IAAII,IAAI,KAAKA,IAAI,QAAQA,IAAI,IAAI,MAAM,OAAOkT,GAAG,KAAK,IAAIlT,CAAC,GAAG,CAAC,IAAIkT,GAAGlT,GAAG,CAAC,GAAGJ;AACrF;AACA,SAAS8b,GAAG1b,GAAG;AACd,SAAOkT,GAAGlT,GAAG,CAAC;AACf;AACA,SAAS2b,GAAG3b,GAAGJ,GAAG;AACjB,MAAI;AACJ,MAAeA,MAAX,QAAc;AACjB,QAAUI,MAAN,EAAS,QAAO;AACpB,QAAIkT,GAAGlT,GAAG,CAAC,EAAE,QAAQ,OAAO,EAAE;AAAA,EAC/B,OAAO;AACN,QAAUJ,MAAN,EAAS,QAAO;AACpB,QAAIsT,GAAGlT,GAAG,CAAC,EAAE,MAAM,GAAGJ,CAAC;AAAA,EACxB;AACA,SAAO,IAAI,CAAC;AACb;AACA,SAASsb,GAAGlb,GAAGJ,GAAG,GAAG,GAAGG,GAAG;AAC1B,MAAI,IAAI,GAAG2b,GAAG1b,CAAC,CAAC,IAAI0b,GAAG9b,CAAC,CAAC;AACzB,SAAoBG,MAAb,aAAmB,KAAK,IAAI2b,GAAG,CAAC,CAAC,IAAI,KAAKC,GAAG,GAAG5b,CAAC,IAAI;AAC7D;AACA,SAAS6b,GAAG5b,GAAGJ,GAAG,GAAG;AACpB,MAAI,IAAIA;AACR,EAAW,MAAX,WAAiB,IAAI;AACrB,QAAMG,IAAIkQ,EAAGjQ,GAAGa,EAAC,GAAG,IAAIgZ,GAAG7B,GAAG,GAAGjY,CAAC,GAAG,WAAW,GAAG,OAAO;AAC1D,MAAII,IAAI;AACR,SAAkBP,MAAX,WAAiBO,IAAI0b,GAAGb,GAAG,GAAGjb,CAAC,CAAC,IAAI,GAAG,CAAC,GAAGI,CAAC;AACpD;AACA,SAAS2b,GAAG9b,GAAGJ,GAAG;AACjB,QAAM,IAAIqQ,EAAGjQ,GAAGwP,EAAC,GAAG,IAAIS,EAAGjQ,GAAGwC,EAAC,GAAGzC,IAAIkQ,EAAGjQ,GAAGgB,EAAC,GAAG,IAAIiP,EAAGjQ,GAAG6B,EAAC,GAAG1B,IAAI8P,EAAGjQ,GAAGc,EAAC,GAAG,IAAImP,EAAGjQ,GAAGiC,EAAC,GAAG/B,IAAI6b,GAAG/b,CAAC;AAClG,MAAIQ,IAAI;AACR,EAAM,MAAN,MAAYA,KAAK,GAAG,KAAK,IAAI,CAAC,CAAC,MAAY,MAAN,MAAYA,KAAK,GAAG,KAAK,IAAI,CAAC,CAAC,MAAYT,MAAN,MAAYS,KAAK,GAAG,KAAK,IAAIT,CAAC,CAAC,MAAY,MAAN,MAAYS,KAAK,GAAG,KAAK,IAAI,CAAC,CAAC;AAC9I,MAAIH,IAAI;AACR,EAAMF,MAAN,MAAYE,KAAK,GAAG,KAAK,IAAIF,CAAC,CAAC,MAAY,MAAN,MAAYE,KAAK,GAAG,KAAK,IAAI,CAAC,CAAC;AACpE,QAAMV,IAAIgR,GAAa,eAAe,GAAG,GAAGV,EAAGjQ,GAAGe,EAAC,GAAGkP,EAAGjQ,GAAGyB,EAAC,GAAGwO,EAAGjQ,GAAGsB,EAAC,GAAG2O,EAAGjQ,GAAGyP,EAAC,CAAC;AAClF,EAAA9P,EAAE,OAAM,KAAM,CAAC;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,EAAG,SAAS2X,GAAGtX,CAAC,CAAC,KAAgBJ,MAAX,WAAiBS,KAAK,GAAG,KAAK,IAAIV,EAAE,GAAG,CAAC,GAAGgc,GAAG,KAAK,IAAIhc,EAAE,MAAM,GAAGC,CAAC,CAAC;AACzF,MAAIF,IAAI,GAAGQ,IAAI,IAAI,MAAM,EAAE,IAAIM,CAAC;AAChC,SAAOH,MAAMX,IAAI,GAAGA,CAAC,IAAIW,CAAC,KAAKX;AAChC;AACA,SAASsc,GAAGhc,GAAGJ,IAAI,QAAQ;AAC1B,QAAM,EAAE,MAAM,GAAG,OAAO,GAAG,KAAKG,MAAMkQ,EAAGjQ,GAAGqB,EAAC;AAC7C,SAAO,GAAGoa,GAAG,CAAC,CAAC,IAAIC,GAAG,CAAC,CAAC,IAAIA,GAAG3b,CAAC,CAAC,GAAG8U,GAAG5E,EAAGjQ,GAAGqC,CAAC,GAAGzC,CAAC,CAAC;AACpD;AACA,SAASqc,GAAG,EAAE,MAAMjc,GAAG,QAAQJ,GAAG,QAAQ,GAAG,aAAa,GAAG,aAAaG,GAAG,YAAY,EAAC,GAAII,GAAG;AAChG,SAAO+a,GAAGlb,GAAGJ,GAAG,GAAG,MAAM,IAAI,MAAMG,IAAI,GAAGI,CAAC;AAC5C;AACA,SAAS0Z,GAAG7Z,GAAGJ,GAAG,GAAG,IAAI,QAAQ;AAChC,QAAM,EAAE,SAAS,EAAE,MAAMG,GAAG,OAAO,GAAG,KAAKI,KAAK,MAAM,EAAE,MAAM,GAAG,QAAQD,GAAG,QAAQM,GAAG,aAAaH,GAAG,aAAaV,GAAG,YAAYD,EAAC,EAAE,IAAKM;AAC3I,SAAO,GAAGyb,GAAG1b,CAAC,CAAC,IAAI2b,GAAG,CAAC,CAAC,IAAIA,GAAGvb,CAAC,CAAC,IAAI+a,GAAG,GAAGhb,GAAGM,GAAG,MAAMH,IAAI,MAAMV,IAAID,GAAG,CAAC,CAAC,GAAGmV,GAAGjV,GAAG,CAAC,CAAC;AACtF;AACA,SAASsc,GAAGlc,GAAGJ,IAAI,QAAQ;AAC1B,QAAM,EAAE,MAAM,GAAG,OAAO,GAAG,KAAKG,MAAMkQ,EAAGjQ,GAAGqB,EAAC;AAC7C,MAAI,IAAI,GAAGqa,GAAG,CAAC,CAAC,IAAIA,GAAG3b,CAAC,CAAC;AACzB,QAAMI,IAAI8P,EAAGjQ,GAAGqC,CAAC;AACjB,EAAazC,MAAb,YAAiCA,MAAf,cAAkCO,MAAd,cAAoB,IAAI,GAAGsb,GAAG,CAAC,CAAC,IAAI,CAAC;AAC3E,QAAM,IAAI5G,GAAG1U,GAAGP,CAAC;AACjB,SAAO,MAAM,KAAK,IAAI;AACvB;AACA,SAASuc,GAAGnc,GAAGJ,IAAI,QAAQ;AAC1B,QAAM,EAAE,MAAM,GAAG,OAAO,GAAG,KAAKG,MAAMkQ,EAAGjQ,GAAGqB,EAAC;AAC7C,MAAI,IAAI,GAAGoa,GAAG,CAAC,CAAC,IAAIC,GAAG,CAAC,CAAC;AACzB,QAAMvb,IAAI8P,EAAGjQ,GAAGqC,CAAC;AACjB,EAAazC,MAAb,YAAiCA,MAAf,cAAkCO,MAAd,cAAoB,KAAK,IAAIub,GAAG3b,CAAC,CAAC;AACxE,QAAM,IAAI8U,GAAG1U,GAAGP,CAAC;AACjB,SAAO,MAAM,KAAK,IAAI;AACvB;AACA,SAASwc,GAAGpc,GAAGJ,GAAG,IAAI,QAAQ,IAAI,QAAQG,IAAI,QAAQ,IAAI,QAAQ;AACjE,MAAII,IAAI8P,EAAGjQ,GAAGa,EAAC;AACf,MAAI,GAAG;AACN,UAAM,EAAE,MAAMb,GAAG,WAAWJ,GAAG,cAAcH,EAAC,IAAK;AACnD,IAAAU,IAAIkc,GAAGlc,GAAGP,GAAGI,GAAGP,CAAC;AAAA,EAClB;AACA,QAAM,IAAIwQ,EAAGjQ,GAAGkB,EAAC,GAAGhB,IAAI8a,GAAG,GAAG7a,CAAC;AAC/B,MAAIK,IAAIqZ,GAAG7B,GAAG,GAAG7X,CAAC,GAAG,WAAWP,GAAG,OAAO;AAC1C,SAAmBG,MAAZ,YAAkBS,KAAKqb,GAAG3b,CAAC,IAAgB,MAAZ,YAAkBM,KAAK,IAAmB,MAAf,aAAmB,MAAM,EAAE,GAAG,CAAC,MAAMA,KAAKqU,GAAG5E,EAAGjQ,GAAGqC,CAAC,GAAG,CAAC,GAAG7B;AAC7H;AACA,SAAS8b,GAAGtc,GAAG;AACd,SAAOuV,GAAG,KAAKvV,CAAC;AACjB;AACA,SAASuT,GAAGvT,GAAG;AACd,QAAMJ,IAAI2c,GAAG,KAAKvc,CAAC;AACnB,MAAI,CAACJ,EAAG,OAAM,IAAI,WAAW,6BAA6BI,CAAC,oCAAoC;AAC/F,UAAgBJ,EAAE,CAAC,MAAX,MAAe,KAAK,MAAM,OAAO,MAAM,KAAK,CAACA,EAAE,CAAC,IAAI,EAAEA,EAAE,CAAC,KAAK,MAAM,EAAEA,EAAE,CAAC,KAAK,MAAM,GAAGA,EAAE,CAAC,KAAK,KAAK,aAAa,MAAM,GAAG,CAAC;AACpI;AACA,IAAI4c,IACAC,KAAK,OAAO,OAAO,uBAAO,OAAO,IAAI,GAAG;AAAA,EAC3C,KAAK;AAAA,EACL,KAAK;AAAA,EACL,GAAG;AACJ,CAAC;AACD,SAAS3B,GAAG9a,GAAG;;AACd,MAAewc,OAAX,QAAe;AAClB,UAAMxc,KAAI4C,IAAA,KAAK,sBAAL,gBAAAA,EAAA,WAAyB;AACnC,QAAI5C,GAAG;AACN,MAAAwc,KAAqB,oBAAI,IAAG;AAC5B,eAAS5c,IAAI,GAAGA,IAAII,EAAE,QAAQJ,KAAK;AAClC,cAAMH,IAAIO,EAAEJ,CAAC;AACb,QAAA4c,GAAG,IAAItI,GAAGzU,CAAC,GAAGA,CAAC;AAAA,MAChB;AAAA,IACD,MAAO,CAAA+c,KAAK;AAAA,EACb;AACA,QAAM5c,IAAIsU,GAAGlU,CAAC;AACd,MAAI,IAAIwc,MAAA,gBAAAA,GAAI,IAAI5c;AAChB,MAAI,EAAG,QAAO;AAAA,IACb,YAAY;AAAA,IACZ,mBAAmB;AAAA,EACrB;AACC,MAAI;AACH,QAAIqU,GAAGjU,CAAC,EAAE,gBAAe,EAAG;AAAA,EAC7B,QAAQ;AACP;AAAA,EACD;AACA,MAAgCJ,MAA5B,4BAAkC,IAAI,uBAAuB+S,GAAG,IAAI3S,CAAC,EAAG,OAAM,IAAI,WAAW,GAAGA,CAAC,mDAAmD,CAAC,UAAU;AACnK,QAAM,IAAI,CAAC,GAAGJ,CAAC,EAAE,KAAK,CAACI,GAAGP,MAAYA,MAAN,KAAWgd,GAAG7c,EAAEH,IAAI,CAAC,CAAC,IAAIO,EAAE,YAAW,IAAKA,EAAC,EAAG,KAAK,EAAE,EAAE,MAAM,GAAG;AAClG,MAAU,EAAE,WAAR,EAAgB,QAAqBJ,MAAd,YAAkB;AAAA,IAC5C,YAAY;AAAA,IACZ,mBAAmB;AAAA,EACrB,IAAK;AAAA,IACH,YAAYA,EAAE,UAAU,KAAK,SAAS,KAAKA,CAAC,IAAIA,EAAE,gBAAgB,EAAE,CAAC;AAAA,IACrE,mBAAmB;AAAA,EACrB;AACC,MAAc,EAAE,CAAC,MAAb,MAAgB,QAAO;AAAA,IAC1B,YAAY,OAAO;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,IACH,EAAI,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,YAAW,CAAE;AAAA,IAC5C,mBAAmB;AAAA,EACrB;AACC,MAAa,EAAE,CAAC,MAAZ,KAAe,QAAO;AAAA,IACzB,YAAY,MAAM,EAAE,CAAC,CAAC;AAAA,IACtB,mBAAmB;AAAA,EACrB;AACC,QAAMG,IAAI,oBAAI,IAAI;AAAA,IACjB,CAAC,OAAO,KAAK;AAAA,IACb,CAAC,OAAO,KAAK;AAAA,IACb,CAAC,OAAO,KAAK;AAAA,IACb,CAAC,iBAAiB,eAAe;AAAA,IACjC,CAAC,iBAAiB,eAAe;AAAA,IACjC,CAAC,kBAAkB,gBAAgB;AAAA,IACnC,CAAC,eAAe,aAAa;AAAA,IAC7B,CAAC,kBAAkB,gBAAgB;AAAA,IACnC,CAAC,WAAW,SAAS;AAAA,IACrB,CAAC,kBAAkB,gBAAgB;AAAA,IACnC,CAAC,WAAW,SAAS;AAAA,IACrB,CAAC,aAAa,WAAW;AAAA,IACzB,CAAC,gBAAgB,cAAc;AAAA,IAC/B,CAAC,aAAa,WAAW;AAAA,IACzB,CAAC,WAAW,SAAS;AAAA,EACvB,CAAE;AACD,SAAO,EAAE,CAAC,IAAIA,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC,IAAIA,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI;AAAA,IAChF,YAAY,EAAE,KAAK,GAAG;AAAA,IACtB,mBAAmB;AAAA,EACrB;AACA;AACA,SAAS2c,GAAG1c,GAAGJ,GAAG;AACjB,QAAM,EAAE,MAAM,GAAG,OAAO,GAAG,KAAKG,GAAG,MAAM,GAAG,QAAQI,GAAG,QAAQ,EAAC,IAAKob,GAAGvb,GAAGJ,CAAC;AAC5E,MAAIM,IAAIN,IAAI;AACZ,SAAOM,IAAI,MAAMA,KAAK,MAAM,OAAOyc,GAAG;AAAA,IACrC,SAAS;AAAA,MACR,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK5c;AAAA,IACR;AAAA,IACE,MAAM;AAAA,MACL,MAAM;AAAA,MACN,QAAQI;AAAA,MACR,QAAQ;AAAA,MACR,aAAaD;AAAA,IAChB;AAAA,EACA,CAAE,IAAIN;AACN;AACA,SAASqb,GAAGjb,GAAGJ,GAAG;AACjB,SAAO8c,GAAG1c,GAAG4c,GAAGhd,GAAG,OAAO,CAAC;AAC5B;AACA,SAASib,GAAG7a,GAAG;AACd,QAAMJ,IAAII,IAAI,IAAI,MAAM,KAAK,IAAI,KAAK,IAAIA,CAAC;AAC3C,SAAO,GAAGJ,CAAC,GAAGsb,GAAG,KAAK,MAAM,IAAI,EAAE,GAAG,IAAI,IAAI,GAAG,GAAG,QAAQ,CAAC;AAC7D;AACA,SAASW,GAAG7b,GAAG;AACd,SAAO6a,GAAGlB,GAAG3Z,GAAG+R,IAAI,YAAY,IAAI,IAAI;AACzC;AACA,SAAS4K,GAAG,EAAE,SAAS,EAAE,MAAM3c,GAAG,OAAOJ,GAAG,KAAK,EAAC,GAAI,MAAM,EAAE,MAAM,GAAG,QAAQG,GAAG,QAAQ,GAAG,aAAaI,EAAC,KAAM;AAChH,QAAM,IAAIH,IAAI,KAAKE,KAAKF,IAAI,KAAK,KAAKQ,IAAoB,oBAAI,KAAI;AAClE,SAAOA,EAAE,YAAY,GAAGT,GAAG,GAAGI,CAAC,GAAGK,EAAE,eAAe,GAAGZ,IAAI,GAAG,CAAC,GAAGY,EAAE,QAAO,IAAK8R,KAAKpS;AACrF;AACA,SAASwY,GAAG,GAAG;AACd,QAAMjZ,IAAIkd,GAAG,CAAC,GAAG7c,IAAI,MAAM,EAAE,KAAK,cAAc,EAAE,KAAK;AACvD,SAAOuP,EAAgB,QAAQ,IAAI6C,GAAGzS,CAAC,GAAG4P,EAAgB,QAAQ,OAAOvP,CAAC,CAAC;AAC5E;AACA,SAASqb,GAAG,GAAG;AACd,MAAI1b,IAAImd,GAAG,GAAG,OAAO,GAAG9c,IAAIuP,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,UAAU,GAAGnP,EAAC,CAAC;AACpG,EAAAJ,IAAI,MAAMA,KAAK,KAAKL,KAAK;AACzB,QAAMM,IAAI,KAAK,MAAMD,IAAI,GAAG,IAAI,KAAKD,IAAIC,IAAI,KAAKK,IAAI,IAAI,KAAKV,CAAC;AAChE,SAAO;AAAA,IACN,mBAAmBA;AAAA,IACnB,SAAS;AAAA,MACR,MAAMU,EAAE,eAAc;AAAA,MACtB,OAAOA,EAAE,YAAW,IAAK;AAAA,MACzB,KAAKA,EAAE,WAAU;AAAA,IACpB;AAAA,IACE,MAAM;AAAA,MACL,MAAMA,EAAE,YAAW;AAAA,MACnB,QAAQA,EAAE,cAAa;AAAA,MACvB,QAAQA,EAAE,cAAa;AAAA,MACvB,aAAaA,EAAE,mBAAkB;AAAA,MACjC,aAAaJ;AAAA,MACb,YAAYF;AAAA,IACf;AAAA,EACA;AACA;AACA,SAAS2b,GAAGxb,GAAGJ,GAAG;AACjB,MAAcI,MAAV,MAAa,QAAO;AACxB,QAAM,IAAI4c,GAAGhd,GAAG,OAAO;AACvB,MAAI,IAAI6S,GAAI,QAAO+I,GAAGxb,GAAGkS,GAAGO,EAAE,CAAC;AAC/B,QAAM1S,IAAI,KAAK,IAAI,GAAG,KAAK,KAAK,IAAI,MAAM8R,KAAK;AAC/C,MAAIhS,IAAI,GAAGM,IAAIuc,GAAG1c,GAAGH,CAAC,GAAGO,IAAIP,GAAGK,IAAIC;AACpC,SAAOA,MAAMD,KAAKL,IAAIE,KAAI;AACzB,QAAIK,IAAIP,IAAI,IAAIgS,KAAK,GAAGzR,IAAI4R,GAAI,QAAO;AACvC,IAAA9R,IAAIwc,GAAG1c,GAAGI,CAAC,GAAGD,MAAMD,MAAML,IAAIO;AAAA,EAC/B;AACA,SAAOD,MAAMD,IAAI,OAAOgS,GAAG2K,IAAI,CAACjd,MAAM8c,GAAG1c,GAAGJ,CAAC,IAAIC,GAAGO,GAAGD,GAAGD,CAAC,CAAC;AAC7D;AACA,SAAS4c,GAAG,GAAGrd,GAAG;AACjB,MAAc,MAAV,MAAa,QAAO;AACxB,QAAMK,IAAI8c,GAAGnd,GAAG,MAAM,GAAGM,IAAI,KAAK,IAAG,GAAIF,IAAIE,IAAI,MAAM8R,KAAK;AAC5D,MAAI/R,IAAID,GAAG;AACV,UAAMJ,IAAIqd,GAAG,GAAG5K,GAAGrS,CAAC,CAAC;AACrB,QAAaJ,MAAT,QAAc4P,EAAgB,QAAQ,SAAS5P,GAAGyS,GAAGnS,CAAC,CAAC,EAAG,QAAON;AAAA,EACtE;AACA,MAA4B,MAAxB,uBAAmD,MAAtB,mBAAyB;AACzD,UAAMO,IAAI,KAAK,IAAI,MAAM,GAAG,CAAC;AAC7B,QAAIA,IAAIF,EAAG,QAAOgd,GAAG,GAAG5K,GAAGlS,CAAC,CAAC;AAAA,EAC9B;AACA,MAAIG,IAAIL,IAAI;AACZ,MAAIK,IAAIsS,GAAI,QAAO;AACnB,MAAIrS,IAAIsc,GAAG,GAAGvc,CAAC,GAAGD,IAAIC,GAAGK,IAAIJ;AAC7B,SAAOA,MAAMI,KAAKL,IAAIsS,MAAK;AAC1B,QAAIvS,IAAIC,IAAI,IAAI0R,KAAK,GAAG3R,IAAIuS,GAAI,QAAO;AACvC,IAAAjS,IAAIkc,GAAG,GAAGxc,CAAC,GAAGE,MAAMI,MAAML,IAAID;AAAA,EAC/B;AACA,SAAOE,MAAMI,IAAI,OAAO0R,GAAG2K,IAAI,CAAC7c,MAAM0c,GAAG,GAAG1c,CAAC,IAAIE,GAAGC,GAAGK,GAAGJ,CAAC,CAAC;AAC7D;AACA,SAASmb,GAAGvb,GAAGJ,GAAG;AACjB,UAAO,SAASI,GAAG;AAClB,UAAMJ,IAAII,EAAE,MAAM,QAAQ;AAC1B,QAAUJ,EAAE,WAAR,EAAgB,OAAM,IAAI,WAAW,wBAAwBI,CAAC,EAAE;AACpE,UAAMP,IAAI,CAACG,EAAE,CAAC,GAAGE,IAAI,CAACF,EAAE,CAAC;AACzB,QAAI,IAAI,CAACA,EAAE,CAAC;AACZ,UAAMC,IAAID,EAAE,CAAC;AACb,QAAYC,EAAE,CAAC,MAAX,OAAwBA,EAAE,CAAC,MAAX,IAAc,KAAI,IAAI;AAAA,aACzBA,EAAE,CAAC,MAAX,OAAwBA,EAAE,CAAC,MAAX,IAAc,OAAM,IAAI,WAAW,eAAeA,CAAC,QAAQG,CAAC,EAAE;AACvF,UAAMG,IAAaP,EAAE,CAAC,MAAZ,OAAgB,IAAI,CAACA,EAAE,CAAC,GAAGQ,IAAI,CAACR,EAAE,CAAC,GAAG,IAAI,CAACA,EAAE,CAAC;AACxD,QAAI,EAAE,OAAO,SAAS,CAAC,KAAK,OAAO,SAASH,CAAC,KAAK,OAAO,SAASK,CAAC,KAAK,OAAO,SAASK,CAAC,KAAK,OAAO,SAASC,CAAC,KAAK,OAAO,SAAS,CAAC,GAAI,OAAM,IAAI,WAAW,sBAAsBJ,CAAC,EAAE;AACvL,WAAO;AAAA,MACN,MAAM;AAAA,MACN,OAAOP;AAAA,MACP,KAAKK;AAAA,MACL,MAAMK;AAAA,MACN,QAAQC;AAAA,MACR,QAAQ;AAAA,IACX;AAAA,EACC,GAAE6T,GAAGjU,CAAC,EAAE,OAAOJ,CAAC,CAAC;AAClB;AACA,SAASmd,GAAG/c,GAAG;AACd,SAAkBA,MAAX,UAAgB,EAAEA,IAAI,KAAK,KAAKA,IAAI,OAAO,KAAKA,IAAI,OAAO;AACnE;AACA,SAASgd,GAAGhd,GAAGJ,GAAG;AACjB,SAAO;AAAA,IACN,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,IACE,UAAU;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AAAA,EACA,EAAGmd,GAAG/c,CAAC,IAAI,aAAa,UAAU,EAAEJ,IAAI,CAAC;AACzC;AACA,SAASmc,GAAG/b,GAAG;AACd,QAAMJ,IAAI;AAAA,IACTqQ,EAAGjQ,GAAGwP,EAAC;AAAA,IACPS,EAAGjQ,GAAGwC,EAAC;AAAA,IACPyN,EAAGjQ,GAAGgB,EAAC;AAAA,IACPiP,EAAGjQ,GAAG6B,EAAC;AAAA,IACPoO,EAAGjQ,GAAGc,EAAC;AAAA,IACPmP,EAAGjQ,GAAGiC,EAAC;AAAA,IACPgO,EAAGjQ,GAAGe,EAAC;AAAA,IACPkP,EAAGjQ,GAAGyB,EAAC;AAAA,IACPwO,EAAGjQ,GAAGsB,EAAC;AAAA,IACP2O,EAAGjQ,GAAGyP,EAAC;AAAA,EACT;AACC,WAASzP,IAAI,GAAGA,IAAIJ,EAAE,QAAQI,KAAK;AAClC,UAAMP,IAAIG,EAAEI,CAAC;AACb,QAAUP,MAAN,EAAS,QAAOA,IAAI,IAAI,KAAK;AAAA,EAClC;AACA,SAAO;AACR;AACA,SAASwd,GAAGjd,GAAG;AACd,QAAMJ,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACC,WAAS,IAAI,GAAG,IAAIA,EAAE,QAAQ,KAAK;AAClC,UAAM,IAAII,EAAEJ,EAAE,CAAC,CAAC;AAChB,QAAU,MAAN,EAAS,QAAO,IAAI,IAAI,KAAK;AAAA,EAClC;AACA,SAAO;AACR;AACA,SAASsd,GAAGld,GAAG;AACd,QAAMJ,IAAIqd,GAAGjd,EAAE,IAAI;AACnB,SAAaJ,MAAN,IAAUA,IAAII,EAAE,KAAK,KAAI;AACjC;AACA,SAASmd,GAAGnd,GAAGJ,GAAG;AACjB,MAAI,IAAII,GAAG,IAAIJ;AACf,MAAI,CAAC,OAAO,SAAS,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,EAAG,OAAM,IAAI,WAAW,0BAA0B;AAC/F,SAAO,KAAK,GAAG,KAAK,KAAK,MAAM,IAAI,EAAE,GAAG,KAAK,IAAI,IAAI,MAAM,KAAK,KAAK,KAAK,GAAG;AAAA,IAC5E,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AACA;AACA,SAASyb,GAAGrb,GAAGJ,GAAG,GAAG;AACpB,MAAI,IAAII,GAAGD,IAAIH,GAAG,IAAI;AACtB,MAAI,CAAC,OAAO,SAAS,CAAC,EAAG,OAAM,IAAI,WAAW,0BAA0B;AACxE,GAAC,EAAC,MAAM,GAAG,OAAOG,EAAC,IAAIod,GAAG,GAAGpd,CAAC;AAC9B,QAAMI,IAAI;AACV,MAAI,KAAK,IAAI,CAAC,IAAIA,GAAG;AACpB,UAAMH,IAAI,KAAK,MAAM,IAAIG,CAAC;AAC1B,SAAK,MAAMH,GAAG,KAAKA,IAAIG;AAAA,EACxB;AACA,MAAI,IAAI,GAAGD,IAAIH,IAAI,IAAI,IAAI,IAAI;AAC/B,SAAO,IAAIgd,GAAG7c,CAAC,IAAI,MAAM,KAAK,IAAI,CAAC,IAAI,MAAK,GAAGA,KAAK,GAAG,KAAK;AAC5D,OAAKA,KAAK,GAAG,IAAI6c,GAAG7c,CAAC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAK,GAAGA,KAAK,GAAG,KAAK;AACjE,SAAO,IAAI,IAAI,EAAC,EAAC,MAAM,GAAG,OAAOH,EAAC,IAAIod,GAAG,GAAGpd,IAAI,CAAC,IAAI,KAAKid,GAAG,GAAGjd,CAAC;AACjE,SAAO,IAAIid,GAAG,GAAGjd,CAAC,IAAI,MAAKid,GAAG,GAAGjd,CAAC,GAAG,EAAC,MAAM,GAAG,OAAOA,EAAC,IAAIod,GAAG,GAAGpd,IAAI,CAAC;AACtE,SAAO;AAAA,IACN,MAAM;AAAA,IACN,OAAOA;AAAA,IACP,KAAK;AAAA,EACP;AACA;AACA,SAASyY,GAAGxY,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAGI,GAAG,GAAGD,GAAG;AACtC,QAAMM,IAAI4c,GAAG,GAAGrd,GAAG,GAAGI,GAAG,GAAGD,CAAC;AAC7B,SAAO+V,GAAGoF,GAAGrb,GAAGJ,GAAG,IAAIY,EAAE,SAAS,GAAGA,CAAC;AACvC;AACA,SAAS4c,GAAGpd,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAG;AAC7B,MAAII,GAAG,IAAIH,GAAGE,IAAIN,GAAGY,IAAI,GAAGH,IAAI,GAAGV,IAAII,GAAGL,IAAI;AAC9C,GAAC,EAAC,KAAKS,GAAG,KAAKT,EAAC,IAAI6Q,GAAG7Q,GAAG,CAAC,IAAIC,KAAKQ,GAAGT,IAAI,MAAMC,KAAK,GAAGD,KAAK,MAAM,EAAC,KAAKS,GAAG,KAAKR,EAAC,IAAI4Q,GAAG5Q,GAAG,CAAC,GAAGU,KAAKF,GAAGR,IAAI,MAAMU,KAAK,GAAGV,KAAK,MAAMa,KAAK,KAAK,MAAMH,IAAI,GAAG,GAAGA,KAAK,KAAKA,IAAI,MAAMG,KAAK,GAAGH,KAAK,MAAMH,KAAK,KAAK,MAAMM,IAAI,EAAE,GAAGA,KAAK,IAAIA,IAAI,MAAMN,KAAK,GAAGM,KAAK,KAAK,KAAK,KAAK,MAAMN,IAAI,EAAE,GAAGA,KAAK,IAAIA,IAAI,MAAM,KAAK,GAAGA,KAAK;AAC9T,MAAIU,IAAI,KAAK,MAAM,IAAI,EAAE;AACzB,SAAO,KAAK,IAAI,IAAI,MAAMA,KAAK,GAAG,KAAK,KAAKA,KAAK,GAAG,KAAK,GAAGV,KAAK,GAAGM,KAAK,GAAGH,KAAK,GAAGV,KAAK,GAAGD,KAAK,GAAG;AAAA,IACnG,WAAWkB;AAAA,IACX,MAAM;AAAA,IACN,QAAQV;AAAA,IACR,QAAQM;AAAA,IACR,aAAaH;AAAA,IACb,aAAaV;AAAA,IACb,YAAYD;AAAA,EACd;AACA;AACA,SAAS2d,GAAGrd,GAAGJ,GAAG;AACjB,QAAM,IAAIoW,GAAGhW,GAAG,CAAC;AACjB,MAAUid,GAAG,CAAC,MAAV,EAAa,QAAOjd,EAAE;AAC1B,QAAM,IAAIiQ,EAAGrQ,GAAGyB,EAAC,GAAGtB,IAAI2a,GAAGzK,EAAGrQ,GAAGyC,CAAC,GAAG,GAAG,GAAG,WAAW,GAAG,IAAIib,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAG,EAAE,GAAG,GAAGnd,IAAImd,GAAGvd,EAAE,MAAMA,EAAE,QAAQ,GAAGA,EAAE,GAAG,IAAI;AAClI,SAAOC,EAAE,OAAOG;AACjB;AACA,SAASod,GAAGvd,GAAG;AACd,SAAO,KAAKsQ,GAAG,qBAAqB,GAAG,CAACL,EAAGjQ,GAAGwP,EAAC,GAAG,CAACS,EAAGjQ,GAAGwC,EAAC,GAAG,CAACyN,EAAGjQ,GAAGgB,EAAC,GAAG,CAACiP,EAAGjQ,GAAG6B,EAAC,GAAG,CAACoO,EAAGjQ,GAAGc,EAAC,GAAG,CAACmP,EAAGjQ,GAAGiC,EAAC,GAAG,CAACgO,EAAGjQ,GAAGe,EAAC,GAAG,CAACkP,EAAGjQ,GAAGyB,EAAC,GAAG,CAACwO,EAAGjQ,GAAGsB,EAAC,GAAG,CAAC2O,EAAGjQ,GAAGyP,EAAC,CAAC;AACpJ;AACA,SAASqG,GAAG9V,GAAGJ,GAAG,GAAG;AACpB,SAAO,KAAK,IAAI,GAAG,KAAK,IAAIA,GAAGI,CAAC,CAAC;AAClC;AACA,SAAS4V,GAAG5V,GAAGJ,GAAG,GAAG;AACpB,QAAM,IAAIkW,GAAGlW,GAAG,GAAG,EAAE;AACrB,SAAO;AAAA,IACN,MAAMI;AAAA,IACN,OAAO;AAAA,IACP,KAAK8V,GAAG,GAAG,GAAGkH,GAAGhd,GAAG,CAAC,CAAC;AAAA,EACxB;AACA;AACA,SAASwd,GAAGxd,GAAGJ,GAAG,GAAG;AACpB,MAAII,IAAIJ,KAAKI,IAAI,EAAG,OAAM,IAAI,WAAW,uBAAuBJ,CAAC,OAAOI,CAAC,OAAO,CAAC,EAAE;AACpF;AACA,SAASoV,GAAGpV,GAAGJ,GAAG,GAAG;AACpB,EAAA4d,GAAG5d,GAAG,GAAG,EAAE,GAAG4d,GAAG,GAAG,GAAGR,GAAGhd,GAAGJ,CAAC,CAAC;AAChC;AACA,SAASmZ,GAAG/Y,GAAG;AACd,EAAAka,GAAGjE,GAAGjW,GAAG;AAAA,IACR,WAAW;AAAA,IACX,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,aAAa;AAAA,IACb,YAAY;AAAA,EACd,CAAE,CAAC;AACH;AACA,SAASkV,GAAGlV,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAG;AAC7B,EAAAyd,GAAGxd,GAAG,GAAG,EAAE,GAAGwd,GAAG5d,GAAG,GAAG,EAAE,GAAG4d,GAAG,GAAG,GAAG,EAAE,GAAGA,GAAG,GAAG,GAAG,GAAG,GAAGA,GAAGzd,GAAG,GAAG,GAAG,GAAGyd,GAAG,GAAG,GAAG,GAAG;AACrF;AACA,SAASxI,GAAGhV,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAGI,GAAG,GAAGD,GAAG;AACtC,EAAAkV,GAAGpV,GAAGJ,GAAG,CAAC,GAAGsV,GAAG,GAAGnV,GAAG,GAAGI,GAAG,GAAGD,CAAC;AACjC;AACA,SAASga,GAAG,GAAG;AACd,QAAMza,IAAIiZ,GAAG,CAAC;AACd,GAACrJ,EAAgB,QAAQ,SAAS5P,GAAG2S,EAAE,KAAK/C,EAAgB,QAAQ,YAAY5P,GAAG4S,EAAE,MAAMoH,GAAGha,CAAC;AAChG;AACA,SAASge,GAAGzd,GAAG;AACd,EAAA0Y,GAAG1Y,CAAC;AACL;AACA,SAASyZ,GAAG,GAAG;AACd,MAAIpK,EAAgB,QAAQ,SAAS,GAAG8C,EAAE,KAAK9C,EAAgB,QAAQ,YAAY,GAAG4C,EAAE,EAAG,OAAM,IAAI,WAAW,+CAA+C;AAChK;AACA,SAASqH,GAAG,EAAE,MAAMtZ,GAAG,OAAOJ,EAAC,GAAI;AAClC,EAAA4d,GAAGxd,GAAGuS,IAAIC,EAAE,GAAGxS,MAAMuS,KAAKiL,GAAG5d,GAAG,GAAG,EAAE,IAAII,MAAMwS,MAAMgL,GAAG5d,GAAG,GAAG,CAAC;AAChE;AACA,SAASyY,GAAGrY,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAGI,GAAG,GAAGD,GAAGM,GAAG;AACzC,MAAIH,IAAI;AACR,QAAMV,IAAI;AAAA,IACTK;AAAA,IACAJ;AAAA,IACA;AAAA,IACA;AAAA,IACAG;AAAA,IACA;AAAA,IACAI;AAAA,IACA;AAAA,IACAD;AAAA,IACAM;AAAA,EACF;AACC,WAASR,IAAI,GAAGA,IAAIL,EAAE,QAAQK,KAAK;AAClC,UAAMJ,IAAID,EAAEK,CAAC;AACb,QAAIJ,MAAM,SAAYA,MAAM,OAAW,OAAM,IAAI,WAAW,gDAAgD;AAC5G,QAAUA,MAAN,GAAS;AACZ,YAAMI,IAAIJ,IAAI,IAAI,KAAK;AACvB,UAAUS,MAAN,KAAWL,MAAMK,EAAG,OAAM,IAAI,WAAW,kDAAkD;AAC/F,MAAAA,IAAIL;AAAA,IACL;AAAA,EACD;AACA,MAAI,KAAK,IAAIA,CAAC,KAAK,KAAK,MAAM,KAAK,IAAIJ,CAAC,KAAK,KAAK,MAAM,KAAK,IAAI,CAAC,KAAK,KAAK,GAAI,OAAM,IAAI,WAAW,wCAAwC;AAC7I,QAAMF,IAAI6Q,GAAG,GAAG,CAAC,GAAG3P,IAAI2P,GAAGrQ,GAAG,CAAC,GAAGD,IAAIsQ,GAAG/P,GAAG,CAAC,GAAGkB,IAAI6O,GAAG,MAAM7Q,EAAE,MAAM,MAAMkB,EAAE,MAAMX,EAAE,KAAK,CAAC,EAAE,KAAKK,IAAI,QAAQ,IAAI,OAAOP,IAAI,KAAK,IAAII,IAAIT,EAAE,MAAMkB,EAAE,MAAMX,EAAE,MAAMyB;AAClK,MAAI,CAAC,OAAO,cAAcpB,CAAC,EAAG,OAAM,IAAI,WAAW,yEAAyE;AAC7H;AACA,SAASod,GAAG1d,GAAG;AACd,SAAO;AAAA,IACN,MAAM;AAAA,MACL,OAAOiQ,EAAGjQ,GAAGwP,EAAC;AAAA,MACd,QAAQS,EAAGjQ,GAAGwC,EAAC;AAAA,MACf,OAAOyN,EAAGjQ,GAAGgB,EAAC;AAAA,MACd,MAAMiP,EAAGjQ,GAAG6B,EAAC;AAAA,IAChB;AAAA,IACE,MAAM8O,GAAa,eAAeV,EAAGjQ,GAAGc,EAAC,GAAGmP,EAAGjQ,GAAGiC,EAAC,GAAGgO,EAAGjQ,GAAGe,EAAC,GAAGkP,EAAGjQ,GAAGyB,EAAC,GAAGwO,EAAGjQ,GAAGsB,EAAC,GAAG2O,EAAGjQ,GAAGyP,EAAC,CAAC;AAAA,EAC9F;AACA;AACA,SAASkO,GAAG3d,GAAG;AACd,QAAMJ,IAAI+Q,GAAa,eAAeV,EAAGjQ,GAAGc,EAAC,GAAGmP,EAAGjQ,GAAGiC,EAAC,GAAGgO,EAAGjQ,GAAGe,EAAC,GAAGkP,EAAGjQ,GAAGyB,EAAC,GAAGwO,EAAGjQ,GAAGsB,EAAC,GAAG2O,EAAGjQ,GAAGyP,EAAC,CAAC,EAAE,cAAcQ,EAAGjQ,GAAG6B,EAAC,CAAC;AACxH,SAAO;AAAA,IACN,MAAM;AAAA,MACL,OAAOoO,EAAGjQ,GAAGwP,EAAC;AAAA,MACd,QAAQS,EAAGjQ,GAAGwC,EAAC;AAAA,MACf,OAAOyN,EAAGjQ,GAAGgB,EAAC;AAAA,MACd,MAAM;AAAA,IACT;AAAA,IACE,MAAMpB;AAAA,EACR;AACA;AACA,SAASge,GAAG5d,GAAG;AACd,QAAMJ,IAAI+d,GAAG3d,CAAC,GAAG,IAAI,KAAK,MAAMJ,EAAE,KAAK,MAAM,KAAK;AAClD,SAAOyY,GAAGzY,EAAE,KAAK,OAAOA,EAAE,KAAK,QAAQA,EAAE,KAAK,OAAO,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG;AAAA,IAC1E,GAAGA,EAAE;AAAA,IACL,MAAM;AAAA,EACR;AACA;AACA,SAASie,GAAG7d,GAAGJ,GAAG;AACjB,QAAM,IAAII,EAAE,KAAK,KAAI;AACrB,MAAI,IAAIA,EAAE,KAAK,IAAG,EAAG,QAAQD,IAAI,GAAG,IAAI,GAAGI,IAAIH,EAAE,KAAK,IAAG,EAAG,KAAK,IAAI,GAAGE,IAAI,GAAGM,IAAI;AACnF,UAAQZ,GAAC;AAAA,IACR,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACJ,MAAAG,IAAI,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK,KAAK,IAAI,KAAK,MAAMA,IAAI,GAAG,GAAGA,KAAK,KAAKI,KAAK,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK,KAAK,IAAI,KAAK,MAAMA,IAAI,EAAE,GAAGA,KAAK,IAAID,IAAI,KAAK,MAAM,IAAI,EAAE,GAAG,KAAK,IAAIM,IAAI,KAAK,MAAMN,IAAI,EAAE,GAAGA,KAAK;AACzM;AAAA,IACD,KAAK;AACJ,MAAAH,IAAI,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK,KAAK,IAAI,KAAK,MAAMA,IAAI,GAAG,GAAGA,KAAK,KAAKI,KAAK,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK,KAAK,IAAI,KAAK,MAAMA,IAAI,EAAE,GAAGA,KAAK,IAAID,IAAI,KAAK,MAAM,IAAI,EAAE,GAAG,KAAK;AACxK;AAAA,IACD,KAAK;AACJ,MAAAH,IAAI,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK,KAAK,IAAI,KAAK,MAAMA,IAAI,GAAG,GAAGA,KAAK,KAAKI,KAAK,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK,KAAK,IAAI,KAAK,MAAMA,IAAI,EAAE,GAAGA,KAAK;AACvI;AAAA,IACD,KAAK;AACJ,MAAAJ,IAAI,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK,KAAK,IAAI,KAAK,MAAMA,IAAI,GAAG,GAAGA,KAAK,KAAKI,KAAK,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK;AACrG;AAAA,IACD,KAAK;AACJ,MAAAJ,IAAI,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK,KAAK,IAAIyQ,GAAGrQ,GAAG,GAAG,KAAK,MAAMJ,IAAI,GAAG,CAAC,GAAGA,KAAK,KAAKI,IAAI;AACpF;AAAA,IACD,KAAK;AACJ,MAAAJ,IAAIyQ,GAAGrQ,GAAG,GAAG,KAAK,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,KAAKA,IAAI;AACjD;AAAA,IACD,KAAK;AAAc,UAAIqQ,GAAGrQ,GAAG,GAAG,CAAC,GAAGA,IAAI;AAAA,EAC1C;AACC,SAAO,KAAKmQ,GAAG,qBAAqB,GAAGtQ,EAAE,KAAK,OAAOA,EAAE,KAAK,QAAQA,EAAE,KAAK,OAAOA,EAAE,KAAK,OAAO,IAAIQ,GAAG,IAAIN,GAAG,IAAI,GAAG,IAAIC,GAAG,IAAI,GAAG,IAAIJ,GAAG,IAAI,CAAC;AAChJ;AACA,SAAS+d,GAAG9d,GAAGJ,GAAG;AACjB,SAAOqd,GAAGjd,CAAC,GAAGJ,EAAE,KAAI,GAAI;AAAA,IACvB,MAAMI;AAAA,IACN,MAAMJ;AAAA,EACR;AACA;AACA,SAAS0d,GAAGtd,GAAGJ,GAAG,GAAG;AACpB,SAAO+c,GAAG;AAAA,IACT,SAAS;AAAA,MACR,MAAM3c;AAAA,MACN,OAAOJ,IAAI;AAAA,MACX,KAAK;AAAA,IACR;AAAA,IACE,MAAM;AAAA,MACL,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,IAChB;AAAA,EACA,CAAE,IAAIiS;AACN;AACA,SAAS4G,GAAG,EAAE,MAAMzY,GAAG,OAAOJ,GAAG,KAAK,KAAK;AAC1C,MAAI,KAAK,IAAI0d,GAAGtd,GAAGJ,IAAI,GAAG,CAAC,CAAC,IAAI,IAAK,OAAM,IAAI,WAAW,gDAAgD;AAC3G;AACA,SAASme,GAAG/d,GAAGJ,GAAG;AACjB,QAAM,IAAIA,EAAE,OAAOI,EAAE,MAAM,IAAIJ,EAAE,SAASI,EAAE,QAAQD,IAAIH,EAAE,SAASI,EAAE,QAAQ,IAAIJ,EAAE,cAAcI,EAAE,aAAaG,IAAIP,EAAE,cAAcI,EAAE,aAAa,IAAIJ,EAAE,aAAaI,EAAE;AACxK,SAAO2Q,GAAa,eAAe,GAAG,GAAG5Q,GAAG,GAAGI,GAAG,CAAC;AACpD;AACA,SAAS6d,GAAGhe,GAAGJ,GAAG,GAAG,GAAGG,GAAG;AAC1B,MAAI,IAAI4Q,GAAa,gBAAgB/Q,GAAGI,CAAC;AACzC,SAAO,IAAIie,GAAG,GAAG,GAAG,GAAGle,CAAC,GAAG+d,GAAG;AAAA,IAC7B,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,MAAM;AAAA,EACR,GAAI,CAAC;AACL;AACA,SAASI,GAAGle,GAAGJ,GAAG,GAAG,GAAG;AACvB,EAAA6d,GAAGzd,CAAC,GAAGyd,GAAG7d,CAAC;AACX,MAAIG,IAAIge,GAAG/d,EAAE,MAAMJ,EAAE,IAAI;AACzB,QAAM,IAAIG,EAAE,QAAQI,IAAIge,GAAGne,EAAE,SAASJ,EAAE,OAAO;AAC/C,MAAI,IAAIA,EAAE;AACV,EAAAO,MAAM,MAAM,IAAIkb,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAAGtb,IAAIA,EAAE,cAAc,CAAC,CAAC;AACtE,QAAMG,IAAIqX,GAAG,OAAO,CAAC,GAAG/W,IAAIma,GAAG,GAAG3a,EAAE,SAAS,GAAGE,CAAC;AACjD,SAAO,MAAMA,MAAMH,IAAIA,EAAE,cAAcS,EAAE,IAAI,GAAGA,EAAE,OAAO,IAAIsd,GAAGtd,GAAGT,CAAC;AACrE;AACA,SAASqe,GAAG3e,GAAGK,GAAGC,GAAGF,GAAG,GAAG;AAC1B,QAAMO,IAAIiP,EAAgB,QAAQ,SAASvP,GAAGL,CAAC;AAC/C,MAAI4P,EAAgB,QAAQ,MAAMjP,GAAGR,EAAC,EAAG,QAAO;AAAA,IAC/C,MAAM;AAAA,MACL,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,IACT;AAAA,IACE,MAAM+Q,GAAa;AAAA,EACrB;AACC,QAAMzQ,IAAImP,EAAgB,QAAQ,SAASjP,GAAGR,EAAC,IAAI,KAAK,GAAGY,IAAIwX,GAAGjY,GAAGN,CAAC,GAAGY,IAAI2X,GAAGjY,GAAGD,CAAC;AACpF,MAAIH,GAAGD,IAAI,GAAGkB,IAAUV,MAAN,IAAU,IAAI,GAAGD,IAAI8d,GAAGvd,EAAE,MAAMH,EAAE,IAAI;AACxD,OAAKJ,EAAE,KAAI,MAAO,CAACC,KAAKR,KAAKA,KAAKkB,GAAGlB,KAAK;AACzC,IAAAC,IAAIsW,GAAGoF,GAAGhb,EAAE,QAAQ,MAAMA,EAAE,QAAQ,OAAOA,EAAE,QAAQ,MAAMX,IAAIQ,CAAC,GAAGM,EAAE,IAAI;AACzE,UAAMR,IAAIwZ,GAAGzZ,GAAGJ,GAAG,YAAY;AAC/B,QAAIM,IAAI0Q,GAAa,gBAAgB7Q,GAAGE,CAAC,GAAGC,EAAE,WAAW,CAACC,EAAG;AAAA,EAC9D;AACA,QAAMwB,IAAI6V,GAAG,OAAO,CAAC;AACrB,SAAOuG,GAAGnD,GAAG9a,GAAGW,EAAE,SAASb,EAAE,SAAS+B,CAAC,GAAGzB,CAAC;AAC5C;AACA,SAAS4O,GAAG,GAAGpP,GAAGK,GAAGC,GAAGF,GAAGM,GAAGC,GAAGF,GAAGM,GAAG;AACtC,MAAIH,GAAGV,GAAGD,GAAGkB,GAAGX,IAAIR;AACpB,UAAQS,GAAC;AAAA,IACR,KAAK,QAAQ;AACZ,YAAMF,IAAI2Z,GAAG1Z,EAAE,KAAK,OAAOG,GAAG,OAAO;AACrC,MAAAC,IAAIL,GAAGL,IAAIK,IAAII,IAAI,GAAGV,IAAI;AAAA,QACzB,OAAOW;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,MAAM;AAAA,MACV,GAAMO,IAAI;AAAA,QACN,GAAGlB;AAAA,QACH,OAAOC;AAAA,MACX;AACG;AAAA,IACD;AAAA,IACA,KAAK,SAAS;AACb,YAAMK,IAAI2Z,GAAG1Z,EAAE,KAAK,QAAQG,GAAG,OAAO;AACtC,MAAAC,IAAIL,GAAGL,IAAIK,IAAII,IAAI,GAAGV,IAAIsW,GAAG/V,EAAE,MAAM,GAAG,GAAGI,CAAC,GAAGO,IAAIoV,GAAG/V,EAAE,MAAM,GAAG,GAAGN,CAAC;AACrE;AAAA,IACD;AAAA,IACA,KAAK,QAAQ;AACZ,YAAMK,IAAIgW,GAAG/V,EAAE,MAAM,GAAG,CAAC,GAAGR,IAAIib,GAAGva,GAAGJ,EAAE,SAASC,GAAG,WAAW,GAAGF,IAAI6a,GAAGxa,GAAGV,GAAG4b,GAAG5b,EAAE,MAAMA,EAAE,OAAOA,EAAE,MAAMQ,EAAE,KAAK,IAAI,GAAG,MAAM,GAAGJ,KAAI8Z,GAAG1Z,EAAE,KAAK,QAAQH,EAAE,OAAOM,GAAG,OAAO;AAC3K,MAAAC,IAAIR,IAAGF,IAAIE,KAAIO,IAAI,GAAGV,IAAIsW,GAAG/V,EAAE,MAAM,GAAGI,CAAC,GAAGO,IAAIoV,GAAG/V,EAAE,MAAM,GAAGN,CAAC;AAC/D;AAAA,IACD;AAAA,IACA,KAAK,OAAO;AACX,YAAMK,IAAI2Z,GAAG1Z,EAAE,KAAK,MAAMG,GAAG,OAAO;AACpC,MAAAC,IAAIL,GAAGL,IAAIK,IAAII,IAAI,GAAGV,IAAIsW,GAAG/V,EAAE,MAAMI,CAAC,GAAGO,IAAIoV,GAAG/V,EAAE,MAAMN,CAAC;AACzD;AAAA,IACD;AAAA,EACF;AACC,QAAM+B,IAAIgZ,GAAGva,GAAGJ,EAAE,SAASL,GAAG,WAAW,GAAGY,IAAIoa,GAAGva,GAAGJ,EAAE,SAASa,GAAG,WAAW;AAC/E,MAAID,GAAGF;AACP,QAAMF,IAAI0V,GAAGvU,GAAG3B,EAAE,IAAI,GAAGc,IAAIoV,GAAG3V,GAAGP,EAAE,IAAI;AACzC,EAAAF,KAAKc,IAAI6Y,GAAG3Z,GAAGU,GAAG,YAAY,GAAGE,IAAI+Y,GAAG3Z,GAAGgB,GAAG,YAAY,MAAMF,IAAI+X,GAAGnY,CAAC,GAAGE,IAAIiY,GAAG7X,CAAC;AACnF,QAAMQ,IAAIsP,GAAa,gBAAgB7Q,GAAGa,CAAC,GAAGgB,IAAIgP,GAAa,gBAAgBlQ,GAAGE,CAAC,GAAGwB,IAAIsO,GAAGjQ,GAAG,IAAI,IAAI,aAAa,UAAU,GAAG6B,KAAIhB,EAAE,IAAIA,CAAC,EAAE,MAAM,SAASM,EAAE,IAAG,CAAE,EAAE,KAAI,GAAIR,IAAI,KAAK,IAAId,CAAC,IAAID,IAAI,KAAK,GAAGa,IAAII,EAAE,OAAM,IAAK,KAAK,IAAIhB,CAAC,IAAIgB,EAAE,IAAIM,CAAC,IAAI+O,GAAG,KAAK,IAAIrQ,CAAC,GAAG,KAAK,IAAIV,CAAC,GAAG0C,IAAGlB,GAAGgB,CAAC,IAAI,KAAK,IAAIxC,CAAC,GAAGmC,IAAI,IAAI6O,GAAatB,EAAgB,QAAQ,IAAIA,EAAgB,QAAQ,SAAS1N,EAAE,SAAS0N,EAAgB,QAAQ,OAAOhP,CAAC,CAAC,GAAGgP,EAAgB,QAAQ,SAAShO,EAAE,SAASgO,EAAgB,QAAQ,OAAOjP,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAKuB,EAAE,OAAO,GAAGT,IAAID,MAAM,KAAK,IAAItB,CAAC;AACviB,SAAOM,IAAI;AAAA,IACV,MAAMiB,IAAIN,IAAIlB;AAAA,IACd,MAAMiR,GAAa;AAAA,EACrB,GAAI;AAAA,IACF,aAAa;AAAA,MACZ,UAAU1Q;AAAA,MACV,eAAeiB,IAAIT,IAAIE;AAAA,MACvB,uBAAuBO;AAAA,IAC1B;AAAA,IACE,OAAOY;AAAA,EACT;AACA;AACA,SAASuc,GAAG,GAAG5e,GAAGK,GAAGC,GAAGF,GAAGM,GAAGC,GAAGF,GAAGM,GAAG;AACtC,MAAIH,IAAI;AACR,QAAMV,IAAI6X,GAAGtX,CAAC,KAAKH,KAAeG,MAAV,OAAaR,IAAIwd,GAAG7c,CAAC,IAAI,IAAI,KAAK;AAC1D,MAAIO;AACJ,SAAOjB,IAAI,EAAC,aAAaiB,EAAC,IAAIiO,GAAGnP,GAAGW,GAAGZ,GAAGK,GAAGC,GAAGF,GAAGO,GAAGF,GAAGM,CAAC,IAAII,IAAIb,KAAI,SAASH,GAAGH,GAAGK,GAAGC,GAAGF,GAAGM,GAAGC,GAAGF,GAAG;AACtG,QAAIM,IAAIf;AACR,UAAMY,IAAIqa,GAAG7a,GAAGC,EAAE,SAASU,EAAE,MAAM,WAAW,GAAGb,KAAIsW,GAAG5V,GAAGP,EAAE,IAAI,GAAGJ,IAAIuW,GAAGoF,GAAGhb,EAAE,MAAMA,EAAE,OAAOA,EAAE,MAAMT,CAAC,GAAGE,EAAE,IAAI,GAAGc,IAAI4Y,GAAGzZ,GAAGJ,IAAG,YAAY,GAAGM,IAAIuZ,GAAGzZ,GAAGL,GAAG,YAAY,GAAGgC,IAAIiP,GAAa,gBAAgB1Q,GAAGW,CAAC;AACjN,QAAIc,EAAE,KAAI,MAAO9B,EAAG,OAAM,IAAI,WAAW,0CAA0C;AACnF,UAAMU,IAAI+O,EAAgB,QAAQ,OAAOyE,GAAG1T,CAAC,IAAID,CAAC;AAClD,QAAIQ,IAAIH,EAAE,KAAK,MAAMF,GAAGJ,CAAC;AACzB,UAAMO,IAAIE,EAAE,SAASe,CAAC,GAAGnB,KAAIE,EAAE,KAAI,MAAO,CAACb;AAC3C,QAAIiB,GAAGQ;AACP,WAAOd,MAAKM,IAAIjB,GAAGe,IAAIF,EAAE,MAAMH,GAAGJ,CAAC,GAAGmB,IAAIV,EAAE,aAAaV,CAAC,MAAMY,IAAI,GAAGQ,IAAIV,EAAE,aAAaC,CAAC,IAAI;AAAA,MAC9F,UAAUkd,GAAG9H,GAAGxV,EAAE,MAAMA,EAAE,KAAK,OAAOK,CAAC,GAAGF,CAAC;AAAA,MAC3C,eAAeU;AAAA,MACf,uBAAuBd;AAAA,IAC1B;AAAA,EACC,GAAEb,GAAGW,GAAGP,GAAGC,GAAGF,GAAGO,GAAGF,GAAGM,CAAC,KAAI,SAASZ,GAAGH,GAAGK,GAAGC,GAAGF,GAAGM,GAAG;AACtD,QAAIC,IAAIR;AACR,UAAMM,IAAIE,EAAE,KAAK,cAAcA,EAAE,KAAK,IAAI,GAAGI,IAAIN,EAAE,MAAMmP,EAAgB,QAAQ,OAAOtP,IAAI+T,GAAGjU,CAAC,CAAC,GAAGM,CAAC,GAAGE,IAAIG,EAAE,SAASN,CAAC,GAAG,EAAE,UAAUP,GAAC,IAAKO,EAAE,OAAO4R,EAAE,GAAG,EAAE,UAAUpS,EAAC,IAAKc,EAAE,OAAOsR,EAAE,GAAGlR,IAAI,KAAK,KAAKlB,IAAIC,EAAC,MAAMO,EAAE,KAAI,GAAID,IAAII,EAAE,aAAaZ,CAAC;AAClP,QAAIiC,IAAI,GAAGpB,IAAIE;AACf,WAAkBiX,GAAG3X,CAAC,MAAf,WAAqB4B,IAAIhC,GAAGY,IAAIE,EAAE,IAAImQ,GAAa,eAAe,KAAK,CAACjR,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI;AAAA,MACnG,UAAU;AAAA,QACT,MAAMsW,GAAG5V,EAAE,MAAMsB,CAAC;AAAA,QAClB,MAAMpB;AAAA,MACV;AAAA,MACG,eAAeL;AAAA,MACf,uBAAuBW;AAAA,IAC1B;AAAA,EACC,GAAEP,GAAGZ,GAAGU,GAAGC,GAAGF,GAAGM,CAAC,GAAGH,IAAIO,EAAE,UAAUA,EAAE,yBAAoCV,MAAX,WAAiBG,KAAI,SAASL,GAAGJ,GAAGH,GAAGK,GAAGC,GAAGF,GAAGM,GAAGC,GAAG;AACrH,QAAIF,IAAIN;AACR,QAAIQ,MAAMD,EAAG,QAAOD;AACpB,UAAMM,IAAIqT,GAAG,QAAQ1T,CAAC;AACtB,aAASP,KAAIiU,GAAG,QAAQzT,CAAC,IAAI,GAAGR,MAAKY,GAAGZ,MAAK;AAC5C,YAAMQ,IAAIyT,GAAGjU,EAAC;AACd,UAAeQ,MAAX,UAA2BD,MAAX,OAAc;AAClC,UAAIK;AACJ,cAAQJ,GAAC;AAAA,QACR,KAAK;AACJ,UAAAI,IAAI;AAAA,YACH,OAAON,EAAE,KAAK,QAAQF;AAAA,YACtB,QAAQ;AAAA,YACR,OAAO;AAAA,YACP,MAAM;AAAA,UACZ;AACK;AAAA,QACD,KAAK,SAAS;AACb,gBAAMJ,IAAIM,EAAE,KAAK,SAASF;AAC1B,UAAAQ,IAAIwV,GAAG9V,EAAE,MAAM,GAAG,GAAGN,CAAC;AACtB;AAAA,QACD;AAAA,QACA,KAAK,QAAQ;AACZ,gBAAMA,IAAIM,EAAE,KAAK,QAAQF;AACzB,UAAAQ,IAAIwV,GAAG9V,EAAE,MAAM,GAAGN,CAAC;AACnB;AAAA,QACD;AAAA,MACJ;AACG,YAAMS,IAAI4V,GAAGyE,GAAG7a,GAAGC,EAAE,SAASU,GAAG,WAAW,GAAGV,EAAE,IAAI;AACrD,UAAIH;AACJ,UAAIA,IAAII,IAAIyZ,GAAGzZ,GAAGM,GAAG,YAAY,IAAIqY,GAAGrY,CAAC,GAAGC,GAAEb,GAAGE,CAAC,MAAM,CAACK,EAAG;AAC5D,MAAAE,IAAI;AAAA,QACH,MAAMM;AAAA,QACN,MAAMmQ,GAAa;AAAA,MACvB;AAAA,IACE;AACA,WAAOzQ;AAAA,EACR,GAAER,GAAGW,GAAGO,EAAE,eAAed,GAAGC,GAAGF,GAAGM,GAAGoX,GAAGrX,GAAG,KAAK,CAAC,IAAIG;AACtD;AACA,SAASie,GAAGte,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAG;AAC7B,SAAOyX,GAAG,CAAC,KAAK,KAAe,MAAV,QAAc3I,GAAGqO,GAAGld,CAAC,IAAI,IAAI,KAAK,GAAGA,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAG,GAAG,OAAO,EAAE,QAAQwe,GAAGve,EAAE,KAAK,cAAcA,EAAE,KAAK,IAAI,GAAG,CAAC;AACxI;AACA,SAASwe,GAAGxe,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAGI,GAAG;AAChC,MAASmb,GAAGtb,GAAGJ,CAAC,KAAZ,EAAe,QAAO;AAAA,IACzB,MAAM;AAAA,MACL,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,IACT;AAAA,IACE,MAAM+Q,GAAa;AAAA,EACrB;AACC,EAAAuJ,GAAGla,CAAC,GAAGka,GAAGta,CAAC;AACX,QAAM,IAAIse,GAAGle,GAAGJ,GAAG,GAAG,CAAC;AACvB,SAAwB,MAAjB,gBAA4BG,MAAN,IAAU,IAAIse,GAAG,GAAG3F,GAAG9Y,CAAC,GAAGI,GAAG,MAAM,GAAG,GAAGD,GAAG,GAAGI,CAAC;AAC/E;AACA,SAASse,GAAGze,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAGI,GAAG,GAAG;AACnC,MAAesX,GAAG1X,CAAC,MAAf,OAAkB,QAAOie,GAAGhe,GAAGJ,GAAG,GAAGO,GAAG,CAAC;AAC7C,QAAMD,IAAIke,GAAGpe,GAAGJ,GAAG,GAAG,GAAGG,CAAC;AAC1B,SAAwBI,MAAjB,gBAA4B,MAAN,IAAUD,IAAIme,GAAGne,GAAGN,GAAGoY,GAAG,GAAGhY,CAAC,GAAG,GAAG,GAAGD,GAAG,GAAGI,GAAG,CAAC;AAC/E;AACA,SAASue,GAAG1e,GAAGJ,GAAG,GAAG,GAAGG,GAAG,GAAG;AAC7B,QAAMI,IAAIuT,GAAG,QAAQ,CAAC1T,GAAGJ,MAAM;AAC9B,UAAMG,IAAIH,EAAE,CAAC,GAAGC,IAAID,EAAE,CAAC,GAAGO,IAAIP,EAAE,CAAC;AACjC,WAAsB,MAAf,cAAoBO,MAAM,KAAK,EAAE,SAASN,CAAC,KAAKG,EAAE,KAAKH,GAAGE,CAAC,GAAGC;AAAA,EACtE,IAAI,CAAA,CAAE;AACN,MAAI,IAAI6W,GAAGjX,GAAG,eAAe,GAAG,MAAM;AACtC,MAAI,EAAE,SAAS,CAAC,EAAG,OAAM,IAAI,WAAW,8BAA8BO,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,EAAE;AAC9F,QAAMD,IAAIsW,GAAG5W,CAAC;AACd,MAAIY,IAAI6V,GAAGzW,GAAG,OAAO;AACrB,EAAYI,MAAZ,YAAkBQ,KAAI,SAASR,GAAG;AACjC,YAAQA,GAAC;AAAA,MACR,KAAK;AAAQ,eAAO;AAAA,MACpB,KAAK;AAAS,eAAO;AAAA,MACrB,KAAK;AAAY,eAAO;AAAA,MACxB,KAAK;AAAa,eAAO;AAAA,MACzB;AAAS,eAAOA;AAAA,IACnB;AAAA,EACC,GAAEQ,CAAC;AACH,QAAMH,IAAIwW,GAAGjX,GAAG,gBAAgB,GAAGG,CAAC;AACpC,MAAI,EAAE,SAASM,CAAC,EAAG,OAAM,IAAI,WAAW,+BAA+BF,EAAE,KAAK,IAAI,CAAC,SAASE,CAAC,EAAE;AAC/F,QAAMV,IAAI4X,GAAG,GAAGlX,CAAC;AACjB,MAAe,MAAX,WAAiB,IAAIV,IAAI4X,GAAG,GAAGlX,CAAC,MAAM,EAAG,OAAM,IAAI,WAAW,eAAe,CAAC,wCAAwCA,CAAC,EAAE;AAC7H,QAAMX,IAAI;AAAA,IACT,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,aAAa;AAAA,IACb,YAAY;AAAA,EACd,EAAGW,CAAC;AACH,SAAkBX,MAAX,UAAgB+W,GAAGvW,GAAGR,GAAG,EAAE,GAAG;AAAA,IACpC,aAAa;AAAA,IACb,mBAAmBQ;AAAA,IACnB,cAAcM;AAAA,IACd,cAAcH;AAAA,EAChB;AACA;AACA,SAASse,GAAG3e,GAAGJ,GAAG,GAAG,GAAG;AACvB,QAAMG,IAAIuY,GAAG,CAAC,GAAG,IAAIoG,GAAG1e,GAAG+X,EAAG,CAAC,GAAG,QAAQ,CAAA,GAAI,cAAc,QAAQ;AACpE,MAAI5X,IAAI0d,GAAGG,GAAG/N,EAAGrQ,GAAGiB,EAAC,GAAGoP,EAAGlQ,GAAGc,EAAC,GAAG,EAAE,mBAAmB,EAAE,cAAc,EAAE,YAAY,GAAG,EAAE,WAAW;AACrG,SAAmBb,MAAZ,YAAkBG,IAAIod,GAAGpd,CAAC,IAAIA;AACtC;AACA,SAASye,GAAG5e,GAAGJ,GAAG,GAAG,GAAG;AACvB,QAAMG,IAAI+X,GAAG,CAAC,GAAG,IAAI7H,EAAGrQ,GAAGyC,CAAC,GAAGlC,IAAI8P,EAAGlQ,GAAGsC,CAAC;AAC1C,MAAI,CAACuY,GAAG,GAAGza,CAAC,EAAG,OAAM,IAAI,WAAW,8CAA8C,CAAC,QAAQA,CAAC,YAAY;AACxG,QAAM,IAAIue,GAAG1e,GAAG+X,EAAG,CAAC,GAAG,QAAQ,CAAA,GAAI,OAAO,KAAK,GAAG7X,IAAIoQ,GAAG,qBAAqB,GAAG9P,IAAIyP,EAAGrQ,GAAGyB,EAAC,GAAGhB,IAAI4P,EAAGlQ,GAAGsB,EAAC;AAC1G,MAAU8c,GAAG3d,GAAGH,CAAC,MAAb,EAAgB,QAAO,IAAIH,EAAC;AAChC,MAAIP,IAAI;AAAA,IACP,MAAMgb,GAAG,GAAGna,GAAGH,GAAG,EAAE,WAAW;AAAA,IAC/B,MAAMsQ,GAAa;AAAA,EACrB;AACC,MAAc,EAAE,iBAAZ,SAAkC,EAAE,sBAAR,GAA2B;AAC1D,UAAM3Q,IAAIiW,GAAGzV,GAAG;AAAA,MACf,WAAW;AAAA,MACX,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,CAAG;AACD,IAAAb,IAAI0e,GAAG1e,GAAG+Y,GAAGzC,GAAG5V,GAAG;AAAA,MAClB,WAAW;AAAA,MACX,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,CAAG,CAAC,GAAGL,GAAG,MAAM,GAAG,EAAE,aAAa,EAAE,mBAAmB,EAAE,cAAc,EAAE,YAAY;AAAA,EACpF;AACA,MAAIN,IAAIme,GAAGle,GAAG,KAAK;AACnB,SAAmBK,MAAZ,YAAkBN,IAAI6d,GAAG7d,CAAC,IAAIA;AACtC;AACA,SAASmf,GAAG7e,GAAGJ,GAAG,GAAG,GAAG;AACvB,QAAMG,IAAImY,GAAG,CAAC,GAAG,IAAIjI,EAAGrQ,GAAGyC,CAAC,GAAGlC,IAAI8P,EAAGlQ,GAAGsC,CAAC;AAC1C,MAAI,CAACuY,GAAG,GAAGza,CAAC,EAAG,OAAM,IAAI,WAAW,8CAA8C,CAAC,QAAQA,CAAC,YAAY;AACxG,QAAM,IAAIue,GAAG1e,GAAG+X,EAAG,CAAC,GAAG,YAAY,CAAA,GAAI,cAAc,KAAK,GAAG7X,IAAIoQ,GAAG,qBAAqB,GAAG9P,IAAIyP,EAAGrQ,GAAG+B,EAAC,GAAGtB,IAAI4P,EAAGlQ,GAAG4B,EAAC;AACrH,MAAU2Z,GAAG9a,GAAGH,CAAC,MAAb,EAAgB,QAAO,IAAIH,EAAC;AAChC,MAAIP,IAAIke,GAAGW,GAAGhe,GAAGH,GAAG,GAAG,EAAE,aAAa,EAAE,mBAAmB,EAAE,cAAc,EAAE,YAAY,GAAG,EAAE,WAAW;AACzG,SAAmBL,MAAZ,YAAkBL,IAAI4d,GAAG5d,CAAC,IAAIA;AACtC;AACA,SAASmf,GAAG9e,GAAGJ,GAAG,GAAG,GAAG;AACvB,QAAMG,IAAIiZ,GAAG,CAAC,GAAG,IAAI0F,GAAG1e,GAAG+X,EAAG,CAAC,GAAG,QAAQ,CAAA,GAAI,cAAc,MAAM;AAClE,MAAI5X,IAAI4d,GAAG9N,EAAGrQ,GAAGuC,EAAC,GAAG8N,EAAGlQ,GAAGoC,EAAC,CAAC;AAC7B,EAAAhC,IAAI8d,GAAG9d,GAAG,EAAE,mBAAmB,EAAE,cAAc,EAAE,YAAY;AAC7D,MAAI,IAAI0d,GAAGC,GAAG;AAAA,IACb,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,MAAM;AAAA,EACR,GAAI3d,CAAC,GAAG,EAAE,WAAW;AACpB,SAAmBH,MAAZ,YAAkB,IAAIud,GAAG,CAAC,IAAI;AACtC;AACA,SAASwB,GAAG/e,GAAGJ,GAAG,GAAG,GAAG;AACvB,QAAMG,IAAIoZ,GAAG,CAAC,GAAG,IAAIlJ,EAAGrQ,GAAGyC,CAAC,GAAGlC,IAAI8P,EAAGlQ,GAAGsC,CAAC;AAC1C,MAAI,CAACuY,GAAG,GAAGza,CAAC,EAAG,OAAM,IAAI,WAAW,+CAA+C,CAAC,QAAQA,CAAC,YAAY;AACzG,QAAM,IAAIue,GAAG1e,GAAG+X,EAAG,CAAC,GAAG,QAAQ,CAAC,QAAQ,KAAK,GAAG,SAAS,MAAM,GAAG7X,IAAIoQ,GAAG,qBAAqB;AAC9F,MAAS6N,GAAGlO,EAAGrQ,GAAGyB,EAAC,GAAG4O,EAAGlQ,GAAGsB,EAAC,CAAC,KAA1B,EAA6B,QAAO,IAAInB,EAAC;AAC7C,QAAMM,IAAIoX,GAAG,GAAG3H,EAAGrQ,GAAGyB,EAAC,GAAG,YAAY;AACtC,EAAAb,EAAE,MAAM;AACR,QAAMH,IAAI4X,GAAG,GAAGzX,GAAG,WAAW,GAAGb,IAAIiY,GAAG,GAAG3H,EAAGlQ,GAAGsB,EAAC,GAAG,YAAY;AACjE,EAAA1B,EAAE,MAAM;AACR,QAAMD,IAAIuY,GAAG,GAAGtY,GAAG,WAAW;AAC9B,MAAIiB,IAAI;AAAA,IACP,MAAMoV,GAAG2E,GAAG,GAAGta,GAAGX,GAAG,EAAE,WAAW,GAAG,GAAG,CAAC;AAAA,IACzC,MAAMiR,GAAa;AAAA,EACrB;AACC,MAAgB,EAAE,iBAAd,WAAoC,EAAE,sBAAR,GAA2B;AAC5D,UAAM3Q,IAAIiW,GAAG5V,GAAG;AAAA,MACf,WAAW;AAAA,MACX,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,CAAG;AACD,IAAAO,IAAIyd,GAAGzd,GAAG8X,GAAGzC,GAAGvW,GAAG;AAAA,MAClB,WAAW;AAAA,MACX,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,CAAG,CAAC,GAAGM,GAAG,MAAM,GAAG,EAAE,aAAa,EAAE,mBAAmB,EAAE,cAAc,EAAE,YAAY;AAAA,EACpF;AACA,MAAIC,IAAI4d,GAAGjd,GAAG,KAAK;AACnB,SAAmBZ,MAAZ,YAAkBC,IAAIsd,GAAGtd,CAAC,IAAIA;AACtC;AACA,SAAS+e,GAAG,GAAGvf,GAAGK,GAAGC,GAAG;AACvB,QAAMF,IAAIka,GAAGja,CAAC,GAAGK,IAAI8P,EAAGxQ,GAAG4C,CAAC,GAAGjC,IAAI6P,EAAGpQ,GAAGwC,CAAC;AAC1C,MAAI,CAACuY,GAAGza,GAAGC,CAAC,EAAG,OAAM,IAAI,WAAW,8CAA8CD,CAAC,QAAQC,CAAC,YAAY;AACxG,QAAMF,IAAIwe,GAAG,GAAG3G,EAAGhY,CAAC,GAAG,YAAY,CAAA,GAAI,cAAc,MAAM,GAAGS,IAAIyP,EAAGxQ,GAAGoB,EAAC,GAAGR,IAAI4P,EAAGpQ,GAAGgB,EAAC,GAAGlB,IAAI2Q,GAAG,qBAAqB;AACtH,MAAI5Q;AACJ,MAAe+X,GAAGvX,EAAE,WAAW,MAA3B,OAA8B,CAAAR,IAAIme,GAAGG,GAAGxd,GAAGH,GAAGH,EAAE,mBAAmBA,EAAE,cAAcA,EAAE,YAAY,GAAGA,EAAE,WAAW;AAAA,OAChH;AACJ,UAAMN,IAAIqQ,EAAGxQ,GAAGyB,EAAC;AACjB,QAAI,CAAC6Z,GAAGnb,GAAGqQ,EAAGpQ,GAAGqB,EAAC,CAAC,EAAG,OAAM,IAAI,WAAW,gLAAgL;AAC3N,QAAImO,EAAgB,QAAQ,MAAM7O,GAAGH,CAAC,EAAG,QAAO,IAAIV,EAAC;AACrD,IAAAD,IAAIme,GAAGY,GAAGje,GAAGH,GAAGT,GAAGO,GAAGD,EAAE,aAAaA,EAAE,mBAAmBA,EAAE,cAAcA,EAAE,YAAY,GAAG,MAAM;AAAA,EAClG;AACA,SAAmB,MAAZ,YAAkBR,IAAI6d,GAAG7d,CAAC,IAAIA;AACtC;AACA,SAAS0b,GAAG,EAAE,MAAMpb,GAAG,QAAQJ,GAAG,QAAQ,GAAG,aAAa,GAAG,aAAaG,GAAG,YAAY,EAAC,GAAII,GAAG;AAChG,MAAI,IAAI,GAAGD,IAAI;AACf,SAAO,KAAKC,EAAE,KAAKD,KAAKC,EAAE,QAAQid,GAAGpd,GAAGJ,GAAG,GAAG,GAAGG,GAAGG,CAAC;AACtD;AACA,SAAS+e,GAAGjf,GAAGJ,GAAG;AACjB,QAAM,IAAIA,EAAE,aAAaI,CAAC;AAC1B,SAAOyZ,GAAG,CAAC,GAAG;AACf;AACA,SAASyF,GAAGlf,GAAGJ,GAAG,GAAG,GAAGG,IAAI,aAAa;AACxC,MAAUkd,GAAG,EAAE,IAAI,MAAf,EAAkB,QAAOgC,GAAGjf,GAAG,EAAE,IAAI;AACzC,QAAM,IAAIgY,GAAGpY,GAAGI,CAAC;AACjB,SAAOif,GAAGzF,GAAG5Z,GAAGqW,GAAGyE,GAAG,GAAG,EAAE,SAAS,EAAE,MAAM3a,CAAC,GAAG,EAAE,IAAI,GAAG,YAAY,GAAG,EAAE,IAAI;AAC/E;AACA,SAASof,GAAGnf,GAAGJ,GAAG,GAAG;AACpB,MAAI,IAAIwY,GAAG,CAAC;AACZ,EAAepY,MAAf,eAAqB,IAAIud,GAAG,CAAC;AAC7B,QAAMxd,IAAIwX,GAAGD,GAAG1X,CAAC,GAAG0X,GAAG,CAAC,CAAC;AACzB,MAAIE,GAAGzX,CAAC,EAAG,OAAM,IAAI,WAAW,0FAA0F;AAC1H,QAAM,IAAI4d,GAAG/d,CAAC,GAAGO,IAAIwd,GAAG,CAAC;AACzB,SAAOE,GAAGC,GAAG;AAAA,IACZ,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,MAAM;AAAA,EACR,GAAI,EAAE,KAAK,IAAI3d,EAAE,IAAI,CAAC,GAAGJ,CAAC;AAC1B;AACA,SAASqf,GAAGpf,GAAGJ,GAAG,GAAG;AACpB,MAAI,IAAIwY,GAAG,CAAC;AACZ,EAAepY,MAAf,eAAqB,IAAIud,GAAG,CAAC;AAC7B,QAAMxd,IAAIuX,GAAG,CAAC;AACd,MAAeG,GAAG1X,CAAC,MAAf,OAAkB,OAAM,IAAI,WAAW,kBAAkBA,CAAC,yEAAyE;AACvI,QAAM,IAAI4d,GAAG,CAAC;AACd,SAAOpF,GAAG0G,GAAGhP,EAAGrQ,GAAGiB,EAAC,GAAG,EAAE,IAAI,CAAC;AAC/B;AACA,SAASwe,GAAGrf,GAAGJ,GAAG,GAAG,GAAG;AACvB,QAAMG,IAAIkQ,EAAGrQ,GAAGyC,CAAC;AACjB,MAAI,IAAI+V,GAAG,CAAC;AACZ,EAAepY,MAAf,eAAqB,IAAIud,GAAG,CAAC;AAC7B,QAAMpd,IAAIyd,GAAG,CAAC,GAAG,IAAI1H,GAAG6B,EAAG,CAAC,CAAC;AAC7B,SAAOhB,GAAG2D,GAAG3a,GAAGkQ,EAAGrQ,GAAGyB,EAAC,GAAGlB,GAAG,CAAC,GAAGJ,CAAC;AACnC;AACA,SAASuf,GAAGtf,GAAGJ,GAAG,GAAG,GAAG;AACvB,MAAIG,IAAIqY,GAAG,CAAC;AACZ,EAAepY,MAAf,eAAqBD,IAAIwd,GAAGxd,CAAC;AAC7B,QAAM,IAAImW,GAAG6B,EAAG,CAAC,CAAC,GAAG5X,IAAI8P,EAAGrQ,GAAGyC,CAAC,GAAG,IAAIsb,GAAG5d,CAAC,GAAGG,IAAI+P,EAAGrQ,GAAG+B,EAAC,GAAGnB,IAAI4a,GAAGlb,EAAE,MAAM,EAAE,IAAI,GAAGG,IAAI2V,GAAG,EAAE,MAAMxV,EAAE,SAAS;AAC9G,SAAO6X,GAAGhY,EAAE,OAAOA,EAAE,QAAQA,EAAE,OAAOA,EAAE,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG8X,GAAGlC,GAAGyE,GAAGva,GAAGD,EAAE,SAASG,GAAG,CAAC,GAAGG,CAAC,GAAGL,CAAC;AACrG;AACA,SAASof,GAAGvf,GAAGJ,GAAG,GAAG;AACpB,MAAI,IAAIwY,GAAG,CAAC;AACZ,EAAepY,MAAf,eAAqB,IAAIud,GAAG,CAAC;AAC7B,QAAMxd,IAAI4d,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQxd,GAAG,QAAQ,GAAG,aAAaD,GAAG,aAAaM,GAAG,YAAYH,MAAM+a,GAAGnL,EAAGrQ,GAAGuC,EAAC,GAAGpC,EAAE,IAAI;AACvH,SAAOkZ,GAAGpD,GAAG,GAAG1V,GAAG,GAAGD,GAAGM,GAAGH,GAAG,QAAQ,CAAC;AACzC;AACA,SAASmf,GAAGxf,GAAGJ,GAAG,GAAG,GAAG;AACvB,MAAIG,IAAIqY,GAAG,CAAC;AACZ,EAAepY,MAAf,eAAqBD,IAAIwd,GAAGxd,CAAC;AAC7B,QAAM,IAAImW,GAAG6B,EAAG,CAAC,CAAC,GAAG5X,IAAI4b,GAAGhc,CAAC,GAAG,IAAIkQ,EAAGrQ,GAAGyC,CAAC,GAAGnC,IAAI0X,GAAG,GAAG3H,EAAGrQ,GAAGyB,EAAC,GAAG,YAAY;AAC9E,EAAAnB,EAAE,MAAM;AACR,MAAIM,IAAIyX,GAAG,GAAG/X,GAAG,WAAW;AAC5B,MAAIC,IAAI,GAAG;AACV,UAAMH,IAAI0a,GAAG,GAAGla,GAAG,EAAE,QAAQ,EAAC,GAAI,WAAW;AAC7C,IAAAA,IAAI6a,GAAGrb,EAAE,MAAMA,EAAE,OAAOA,EAAE,MAAM,CAAC;AAAA,EAClC;AACA,QAAMK,IAAIud,GAAG7d,CAAC;AACd,SAAOgZ,GAAGvY,CAAC,GAAG4Y,GAAGC,GAAG,GAAGzB,GAAG,GAAG8C,GAAG,GAAGla,GAAGH,GAAG,CAAC,GAAG,YAAY,GAAG,CAAC,GAAG,CAAC;AAClE;AACA,SAASof,GAAGzf,GAAGJ,GAAG,GAAG,GAAG;AACvB,MAAIG,IAAIqY,GAAG,CAAC;AACZ,EAAepY,MAAf,eAAqBD,IAAIwd,GAAGxd,CAAC;AAC7B,QAAM,IAAImW,GAAG6B,EAAG,CAAC,CAAC,GAAG5X,IAAI8P,EAAGrQ,GAAGsB,EAAC,GAAG,IAAI+O,EAAGrQ,GAAGyC,CAAC,GAAGnC,IAAIwd,GAAG3d,CAAC;AACzD,SAAOqX,GAAG8H,GAAGjP,EAAGrQ,GAAGiB,EAAC,GAAGV,GAAG,GAAGD,GAAG,CAAC,GAAGC,GAAG,CAAC;AACzC;AACA,SAASwZ,GAAG3Z,GAAGJ,GAAG,GAAG;AACpB,QAAM,IAAI,KAAK,MAAMI,IAAIJ,CAAC,GAAGG,IAAIC,IAAIJ,GAAG,IAAII,IAAI,IAAI,aAAa,YAAYG,IAAI,KAAK,IAAI,CAAC,GAAG,IAAIA,IAAI,GAAGD,IAAIwf,GAAG,KAAK,IAAI,IAAI3f,CAAC,IAAIH,CAAC,GAAGY,IAAIL,IAAI,KAAK,GAAGE,IAAIoQ,GAAG,GAAG,CAAC,GAAG9Q,IAAUI,MAAN,IAAUI,IAAIuQ,GAAGvQ,GAAG,GAAGD,GAAGM,GAAGH,CAAC;AACtM,SAAOT,KAAoB,MAAf,aAAmBD,IAAI,CAACA;AACrC;AACA,SAAS0c,GAAGtc,GAAGF,GAAGM,GAAGC,GAAG;AACvB,QAAMF,IAAI4T,GAAG3T,CAAC,IAAIN;AAClB,UAAO,SAASE,GAAGF,GAAGM,GAAG;AACxB,UAAMC,IAAIQ,GAAEb,CAAC,GAAGG,IAAIU,GAAEf,CAAC,GAAGW,IAAI6O,EAAgB,QAAQ,OAAOjP,GAAGF,CAAC,GAAG,IAAImP,EAAgB,QAAQ,UAAUjP,GAAGF,CAAC,GAAGP,IAAI8Q,GAAGtQ,GAAG,UAAU;AACrI,QAAIT,GAAGiB;AACP,IAAA0O,EAAgB,QAAQ,SAASjP,GAAGR,EAAC,KAAKF,IAAI2P,EAAgB,QAAQ,SAAS7O,GAAGf,EAAC,GAAGkB,IAAIH,MAAMd,IAAIc,GAAGG,IAAI0O,EAAgB,QAAQ,IAAI7O,GAAGf,EAAC;AAC3I,UAAMgB,IAAIH,GAAEoB,GAAE2N,EAAgB,QAAQ,SAAS,GAAGvP,EAAC,CAAC,GAAGI,CAAC,KAAKmP,EAAgB,QAAQ,SAASjP,GAAGR,EAAC,IAAI,KAAK,KAAK,GAAGW,IAAI8O,EAAgB,QAAQ,MAAM,GAAGzP,EAAC,IAAIY,IAAIkQ,GAAGhR,GAAGiB,GAAGF,GAAGR,GAAEP,CAAC,GAAGC,CAAC;AACpL,WAAO0P,EAAgB,QAAQ,SAAS9O,GAAGL,CAAC;AAAA,EAC7C,GAAEH,GAAGsP,EAAgB,QAAQ,OAAOnP,CAAC,GAAGE,CAAC;AAC1C;AACA,SAASuf,GAAG3f,GAAGJ,GAAG,GAAG,GAAG;AACvB,EAAA6d,GAAGzd,CAAC;AACJ,QAAM,EAAE,MAAMD,GAAG,OAAO,GAAG,KAAKI,MAAMH,EAAE,SAAS,IAAI4f,GAAG5f,EAAE,MAAMJ,GAAG,GAAG,CAAC;AACvE,SAAOqW,GAAGoF,GAAGtb,GAAG,GAAGI,IAAI,EAAE,SAAS,GAAG,CAAC;AACvC;AACA,SAASyf,GAAG,EAAE,MAAM5f,GAAG,QAAQJ,GAAG,QAAQ,GAAG,aAAa,GAAG,aAAaG,GAAG,YAAY,EAAC,GAAII,GAAG,GAAGD,GAAG;AACtG,MAAIM;AACJ,UAAQ,GAAC;AAAA,IACR,KAAK;AAAA,IACL,KAAK;AACJ,MAAAA,IAAI,OAAO,OAAO,OAAO,MAAM,KAAKR,IAAIJ,KAAK,KAAK,KAAKG,KAAK;AAC5D;AAAA,IACD,KAAK;AACJ,MAAAS,IAAI,OAAO,OAAO,OAAO,KAAKZ,IAAI,KAAK,KAAKG,KAAK;AACjD;AAAA,IACD,KAAK;AACJ,MAAAS,IAAI,OAAO,OAAO,MAAM,IAAI,KAAKT,KAAK;AACtC;AAAA,IACD,KAAK;AACJ,MAAAS,IAAI,OAAO,MAAM,IAAIT,KAAK;AAC1B;AAAA,IACD,KAAK;AACJ,MAAAS,IAAI,MAAMT,IAAI;AACd;AAAA,IACD,KAAK;AAAc,MAAAS,IAAI;AAAA,EACzB;AACC,QAAMH,IAAIyT,GAAG,CAAC,GAAGnU,IAAIga,GAAGnZ,GAAGH,IAAIF,GAAGD,CAAC,IAAIG;AACvC,UAAQ,GAAC;AAAA,IACR,KAAK;AAAO,aAAO;AAAA,QAClB,WAAWV;AAAA,QACX,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,aAAa;AAAA,QACb,aAAa;AAAA,QACb,YAAY;AAAA,MACf;AAAA,IACE,KAAK;AAAQ,aAAOyd,GAAGzd,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAAA,IACvC,KAAK;AAAU,aAAOyd,GAAGpd,GAAGL,GAAG,GAAG,GAAG,GAAG,CAAC;AAAA,IACzC,KAAK;AAAU,aAAOyd,GAAGpd,GAAGJ,GAAGD,GAAG,GAAG,GAAG,CAAC;AAAA,IACzC,KAAK;AAAe,aAAOyd,GAAGpd,GAAGJ,GAAG,GAAGD,GAAG,GAAG,CAAC;AAAA,IAC9C,KAAK;AAAe,aAAOyd,GAAGpd,GAAGJ,GAAG,GAAG,GAAGD,GAAG,CAAC;AAAA,IAC9C,KAAK;AAAc,aAAOyd,GAAGpd,GAAGJ,GAAG,GAAG,GAAGG,GAAGJ,CAAC;AAAA,IAC7C;AAAS,YAAM,IAAI,MAAM,gBAAgB,CAAC,EAAE;AAAA,EAC9C;AACA;AACA,SAASse,GAAG,GAAGxe,GAAGK,GAAGC,GAAG;AACvB,QAAMF,IAAIiU,GAAGhU,CAAC;AACd,SAAO,EAAE,MAAMuP,EAAgB,QAAQ,OAAOxP,IAAIJ,CAAC,GAAGM,CAAC;AACxD;AACA,SAASwe,GAAG,GAAG9e,GAAG;AACjB,QAAMK,IAAIgU,GAAGrU,CAAC;AACd,SAAO,EAAE,KAAK4P,EAAgB,QAAQ,OAAOvP,CAAC,CAAC;AAChD;AACA,SAASqe,GAAGne,GAAGJ,GAAG;AACjB,SAAOI,EAAE,SAASJ,EAAE,OAAO8f,GAAG1f,EAAE,OAAOJ,EAAE,IAAI,IAAII,EAAE,UAAUJ,EAAE,QAAQ8f,GAAG1f,EAAE,QAAQJ,EAAE,KAAK,IAAII,EAAE,QAAQJ,EAAE,MAAM8f,GAAG1f,EAAE,MAAMJ,EAAE,GAAG,IAAI;AACtI;AACA,SAASigB,GAAG7f,GAAGJ,GAAG;AACjB,SAAOI,EAAE,SAASJ,EAAE,OAAO8f,GAAG1f,EAAE,OAAOJ,EAAE,IAAI,IAAII,EAAE,WAAWJ,EAAE,SAAS8f,GAAG1f,EAAE,SAASJ,EAAE,MAAM,IAAII,EAAE,WAAWJ,EAAE,SAAS8f,GAAG1f,EAAE,SAASJ,EAAE,MAAM,IAAII,EAAE,gBAAgBJ,EAAE,cAAc8f,GAAG1f,EAAE,cAAcJ,EAAE,WAAW,IAAII,EAAE,gBAAgBJ,EAAE,cAAc8f,GAAG1f,EAAE,cAAcJ,EAAE,WAAW,IAAII,EAAE,eAAeJ,EAAE,aAAa8f,GAAG1f,EAAE,aAAaJ,EAAE,UAAU,IAAI;AACpW;AACA,SAAS0b,GAAGtb,GAAGJ,GAAG;AACjB,QAAM,IAAIue,GAAGne,EAAE,SAASJ,EAAE,OAAO;AACjC,SAAa,MAAN,IAAU,IAAIigB,GAAG7f,EAAE,MAAMJ,EAAE,IAAI;AACvC;AACA,SAASkgB,GAAG9f,GAAG;AACd,QAAMJ,IAAImgB,GAAG/f,CAAC;AACd,SAAkB,WAAW,WAAtB,SAA+B,WAAW,OAAOJ,EAAE,SAAS,EAAE,CAAC,IAAIA;AAC3E;AACA,SAASgd,GAAG,GAAGnd,GAAG;AACjB,QAAM,EAAE,UAAUM,GAAG,WAAWF,MAAMc,GAAEC,GAAE,CAAC,GAAGV,EAAC;AAC/C,MAAI,IAAImP,EAAgB,QAAQ,SAAStP,CAAC;AAC1C,SAAmBN,MAAZ,WAAiB4P,EAAgB,QAAQ,SAASxP,CAAC,IAAI,MAAM,KAAK,IAAeJ,MAAX,UAAgB4P,EAAgB,QAAQ,SAASxP,CAAC,IAAI,MAAM,KAAK,IAAI;AACnJ;AACA,SAASqS,GAAG,GAAG;AACd,MAAI,CAAC,OAAO,UAAU,CAAC,EAAG,OAAM,IAAI,WAAW,uCAAuC;AACtF,SAAO7C,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAO,CAAC,GAAGnP,EAAC;AAC7E;AACA,SAAS6f,GAAG,GAAG;AACd,MAAItgB,IAAI;AACR,MAAgB,OAAO,KAAnB,UAAsB;AACzB,UAAMO,IAAI,EAAE,OAAO,WAAW;AAC9B,IAAAA,KAAmB,OAAOA,KAArB,eAA2BP,IAAIO,EAAE,KAAK,GAAG,QAAQ;AAAA,EACvD;AACA,MAAgB,OAAOP,KAAnB,SAAsB,OAAM,IAAI,UAAU,iCAAiC;AAC/E,SAAmB,OAAOA,KAAnB,WAAuB4P,EAAgB,QAAQ,OAAO5P,EAAE,SAAS,EAAE,CAAC,IAAI4P,EAAgB,QAAQ,OAAO5P,CAAC;AAChH;AACA,IAAIugB,MAAM,MAAM;AACf,MAAI,IAAI3Q,EAAgB,QAAQ,OAAO,KAAK,IAAG,IAAK,GAAG;AACvD,SAAO,MAAM;AACZ,UAAM5P,IAAI,KAAK,IAAG,GAAIK,IAAIuP,EAAgB,QAAQ,OAAO5P,CAAC,GAAGM,IAAIsP,EAAgB,QAAQ,IAAI6C,GAAGzS,CAAC,GAAG,CAAC;AACrG,WAAO,IAAI4P,EAAgB,QAAQ,UAAUvP,GAAGI,EAAC,GAAGmP,EAAgB,QAAQ,YAAYtP,GAAGkS,EAAE,IAAIA,KAAK5C,EAAgB,QAAQ,SAAStP,GAAGoS,EAAE,IAAIA,KAAKpS;AAAA,EACtJ;AACD,GAAC;AACD,SAASkgB,KAAK;AACb,SAAO,IAAI,KAAK,iBAAiB,gBAAe,EAAG;AACpD;AACA,SAASP,GAAG1f,GAAG;AACd,SAAOA,IAAI,IAAI,KAAKA,IAAI,IAAI,IAAIA;AACjC;AACA,SAAS+X,EAAG/X,GAAG;AACd,MAAeA,MAAX,OAAc,QAAO,uBAAO,OAAO,IAAI;AAC3C,MAAI4S,GAAG5S,CAAC,KAAcA,MAAT,KAAY,QAAOA;AAChC,QAAM,IAAI,UAAU,+CAAwDA,MAAT,OAAa,SAAS,OAAOA,EAAE;AACnG;AACA,SAASkgB,GAAGlgB,GAAGJ,GAAG;AACjB,QAAM,IAAI,uBAAO,OAAO,IAAI;AAC5B,SAAO,EAAEI,CAAC,IAAIJ,GAAG;AAClB;AACA,SAASuW,GAAGnW,GAAGJ,GAAG,GAAG,GAAG;AACvB,MAAIG,IAAIC,EAAEJ,CAAC;AACX,MAAeG,MAAX,QAAc;AACjB,QAAIA,IAAI+S,GAAG/S,CAAC,GAAG,CAAC,EAAE,SAASA,CAAC,EAAG,OAAM,IAAI,WAAW,GAAGH,CAAC,mBAAmB,EAAE,KAAK,IAAI,CAAC,SAASG,CAAC,EAAE;AACnG,WAAOA;AAAA,EACR;AACA,MAAI,MAAM6W,GAAI,OAAM,IAAI,WAAW,GAAGhX,CAAC,qBAAqB;AAC5D,SAAO;AACR;AACA,SAASuX,GAAGnX,GAAG;AACd,QAAMJ,IAAIsU,GAAGlU,CAAC;AACd,MAAI,CAAC0S,GAAG,SAASwB,GAAGtU,CAAC,CAAC,EAAG,OAAM,IAAI,WAAW,+BAA+BA,CAAC,EAAE;AAChF,UAAQA,GAAC;AAAA,IACR,KAAK;AAAuB,aAAO;AAAA,IACnC,KAAK;AAAY,aAAO;AAAA,EAC1B;AACC,SAAOA;AACR;AACA,SAASsU,GAAGlU,GAAG;AACd,MAAIJ,IAAI;AACR,WAAS,IAAI,GAAG,IAAII,EAAE,QAAQ,KAAK;AAClC,UAAM,IAAIA,EAAE,WAAW,CAAC;AACxB,IAAAJ,KAAK,KAAK,MAAM,KAAK,KAAK,OAAO,aAAa,IAAI,EAAE,IAAI,OAAO,aAAa,CAAC;AAAA,EAC9E;AACA,SAAOA;AACR;AACA,SAASugB,GAAGngB,GAAG;AACd,QAAM,IAAI,UAAU,uFAA2GA,MAApB,kBAAwB,+EAA+E,YAAYA,CAAC,sBAAsB,yUAAyU;AAC/jB;AACA,IAAIyV,KAAK,IAAI,OAAO,IAAItE,GAAG,MAAM,GAAG,GAAGoL,KAAK,IAAI,OAAO,IAAI,mFAAmF,MAAM,GAAG;AACvJ,SAASM,GAAG7c,GAAGJ,GAAG,GAAG,IAAII,EAAEJ,CAAC,GAAGG,IAAIC,EAAE,CAAC,GAAG;AACxC,MAAI,IAAIJ,GAAGO,IAAI,GAAG,IAAI,GAAGD,IAAIH;AAC7B,SAAOI,IAAI,IAAI,KAAI;AAClB,QAAIP,IAAI,KAAK,OAAO,IAAIO,KAAK,CAAC;AAC9B,UAAMV,IAAIO,EAAEJ,CAAC;AACb,IAAAH,MAAM,KAAK,IAAIG,GAAG,IAAIH,KAAKA,MAAMS,MAAMC,IAAIP,GAAGM,IAAIT;AAAA,EACnD;AACA,SAAOU;AACR;AACA,SAASigB,GAAGpgB,GAAG;AACd,SAAO,CAAC,GAAGA,CAAC;AACb;AACA,SAASqgB,GAAGrgB,GAAGJ,GAAG;AACjB,MAAkBI,MAAd,aAAiCA,MAAd,UAAiB;AACxC,QAAM,IAAIsgB,GAAGtgB,CAAC;AACd,MAAI,IAAIJ,EAAE;AACV,QAAM,EAAE,WAAWG,GAAG,WAAW,GAAG,YAAYI,MAAM,EAAE,UAAUP,GAAG;AAAA,IACpE,WAAW;AAAA,IACX,WAAW;AAAA,IACX,YAAY;AAAA,EACd,CAAE,GAAG,IAAI,EAAE,kBAAiB,GAAIM,IAAI,EAAE,0BAAyB;AAC9D,MAAIM,KAAKT,IAAI,IAAI,KAAK,GAAGM,KAAKN,IAAI,IAAI,OAAO,KAAK,GAAGJ,IAAI,KAAK,OAAO,IAAI,IAAIU,KAAK,CAAC;AACnF,MAAI,IAAIA,KAAKH,KAAK,EAAEP,GAAQA,KAAL,EAAQ,CAAAA,KAAI,SAASK,GAAGJ,GAAGH,GAAGK,GAAG;AACvD,QAAIC,KAAKD,IAAIE,IAAIP,IAAI,KAAK;AAC1B,IAAAM,IAAI,MAAMA,KAAK;AACf,QAAIF,IAAI,KAAK,OAAOJ,IAAIM,IAAI,KAAK,CAAC;AAClC,WAAO,IAAIA,KAAKH,KAAK,EAAEC,GAAGA;AAAA,EAC3B,GAAE,GAAGK,GAAG,IAAI,EAAE,UAAU,EAAE,QAAQN,GAAG,EAAE,OAAO,MAAM,WAAW,GAAG,EAAE,YAAY,GAAE,CAAE,EAAE,YAAYG,CAAC,GAAG;AAAA,WAC7F,KAAKI,IAAI,GAAG;AACpB,QAAIH,KAAKQ,IAAIL,IAAI,KAAK;AACtB,IAAAH,IAAI,MAAMA,KAAK,IAAI,IAAIA,KAAKE,KAAK,IAAI,IAAIM,IAAIL,MAAMR,IAAI,GAAG;AAAA,EAC3D;AACA,SAAO;AAAA,IACN,MAAMA;AAAA,IACN,MAAM;AAAA,EACR;AACA;AACA,SAAS4gB,GAAGvgB,GAAGJ,GAAG,GAAG,GAAGG,GAAG;AAC1B,MAAIH,MAAMG,EAAE;AACX,QAAIC,KAAKJ,IAAIG,EAAE,QAAQ,EAAG,QAAO;AAAA,aACvB,MAAMA,EAAE;AAClB,QAAIC,KAAK,IAAID,EAAE,SAAS,EAAG,QAAO;AAAA,aACxB,MAAMA,EAAE,OAAOC,KAAK,IAAID,EAAE,OAAO,EAAG,QAAO;AACtD,SAAO;AACR;AACA,IAAIugB,KAAK,CAAA;AACT,SAASE,GAAGxgB,GAAG;AACd,MAAI,CAACA,EAAE,WAAW,GAAG,EAAG,OAAM,IAAI,WAAW,uBAAuBA,CAAC,mCAAmC;AACxG,QAAMJ,IAAI,CAACI,EAAE,MAAM,CAAC;AACpB,MAAI,OAAO,MAAMJ,CAAC,EAAG,OAAM,IAAI,WAAW,uBAAuBI,CAAC,EAAE;AACpE,SAAOJ;AACR;AACA,SAAS6gB,GAAGzgB,GAAGJ,IAAI,IAAI;AACtB,SAAO,IAAI,GAAGI,CAAC,GAAG,SAAS,GAAG,GAAG,CAAC,GAAGJ,IAAI,MAAM,EAAE;AAClD;AACA,SAAS8gB,GAAG1gB,GAAGJ,IAAI,QAAQ,IAAI,IAAI;AAClC,MAAI,EAAE,OAAO,GAAG,WAAWG,EAAC,IAAKC;AACjC,MAAeD,MAAX,QAAc;AACjB,QAAe,MAAX,OAAc,OAAM,IAAI,UAAU,wCAAwC;AAC9E,IAAaH,MAAb,YAAkB4d,GAAG,GAAG,GAAG,CAAC,GAAmB5d,MAAhB,gBAAsB,IAAIkW,GAAG,GAAG,GAAG,CAAC,IAAI/V,IAAI0gB,GAAG,CAAC;AAAA,EAChF,OAAO;AACN,UAAMzgB,IAAIwgB,GAAGzgB,CAAC;AACd,QAAIA,MAAM0gB,GAAGzgB,CAAC,EAAG,OAAM,IAAI,WAAW,uBAAuBD,CAAC,EAAE;AAChE,QAAe,MAAX,UAAgB,MAAMC,EAAG,OAAM,IAAI,WAAW,aAAaD,CAAC,cAAc,CAAC,iCAAiC;AAChH,QAAI,IAAIC,GAAG,IAAI,KAAK,IAAI,EAAG,OAAM,IAAI,WAAW,sBAAsBD,CAAC,EAAE;AAAA,EAC1E;AACA,SAAO;AAAA,IACN,GAAGC;AAAA,IACH,OAAO;AAAA,IACP,WAAWD;AAAA,EACb;AACA;AACAugB,GAAG,UAAU;AAAA,EACZ,cAActgB,GAAGJ,GAAG;AACnB,SAAgBA,MAAX,UAAiCA,MAAjB,iBAAkCI,EAAE,SAAb,OAAmB,OAAM,IAAI,UAAU,kBAAkB;AACrG,SAAgBJ,MAAX,UAAgCA,MAAhB,gBAAiCI,EAAE,QAAb,OAAkB,OAAM,IAAI,UAAU,iBAAiB;AAClG,WAAO,OAAOA,GAAG0gB,GAAG1gB,CAAC,CAAC;AAAA,EACvB;AAAA,EACA,WAAW,CAACA,GAAGJ,MAAM+V,GAAG3V,EAAE,MAAMA,EAAE,OAAOA,EAAE,KAAKJ,CAAC;AAAA,EACjD,2BAA2BI,GAAGJ,GAAG;AAChC,UAAM,EAAE,OAAO,GAAG,KAAK,EAAC,IAAK+V,GAAG3V,EAAE,QAAQ,MAAMA,EAAE,OAAOA,EAAE,KAAKJ,CAAC;AACjE,WAAO;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,MACL,MAAM;AAAA,IACT;AAAA,EACC;AAAA,EACA,aAAa,MAAM,CAAA;AAAA,EACnB,kBAAkBI,GAAG;AACpB,UAAMJ,IAAoB,oBAAI,IAAG;AACjC,aAAS,IAAI,GAAG,IAAII,EAAE,QAAQ,KAAK;AAClC,YAAM,IAAIA,EAAE,CAAC;AACb,MAAAJ,EAAE,IAAI,CAAC,GAAe,MAAZ,UAAgBA,EAAE,IAAI,WAAW,IAAoB,MAAhB,eAAqBA,EAAE,IAAI,OAAO;AAAA,IAClF;AACA,WAAOwgB,GAAGxgB,CAAC;AAAA,EACZ;AAAA,EACA,QAAQI,GAAG,EAAE,OAAOJ,IAAI,GAAG,QAAQ,IAAI,GAAG,OAAO,IAAI,GAAG,MAAMG,IAAI,EAAC,GAAI,GAAG;AACzE,QAAI,EAAE,MAAMI,GAAG,OAAO,GAAG,KAAKD,EAAC,IAAKF;AACpC,WAAOG,KAAKP,GAAG,KAAK,GAAG,EAAC,MAAMO,GAAG,OAAO,EAAC,IAAIgd,GAAGhd,GAAG,CAAC,GAAG,EAAC,MAAMA,GAAG,OAAO,GAAG,KAAKD,EAAC,IAAIyV,GAAGxV,GAAG,GAAGD,GAAG,CAAC,GAAGA,KAAKH,IAAI,IAAI,GAAGsb,GAAGlb,GAAG,GAAGD,CAAC;AAAA,EAChI;AAAA,EACA,UAAUF,GAAGJ,GAAG,GAAG;AAClB,UAAM,IAAI,CAACue,GAAGne,GAAGJ,CAAC;AAClB,QAAU,MAAN,EAAS,QAAO;AAAA,MACnB,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,IACT;AACE,QAAIG,GAAG,IAAI,GAAGI,IAAI;AAClB,QAAe,MAAX,UAA4B,MAAZ,SAAe;AAClC,UAAIC,IAAIR,EAAE,OAAOI,EAAE;AACnB,WAAWI,MAAN,MAAYA,KAAK,IAAI,CAACmgB,GAAG,GAAGvgB,EAAE,OAAOI,GAAGJ,EAAE,OAAOA,EAAE,KAAKJ,CAAC,IAAI,KAAIQ,GAAGA,KAAK;AAC9E,UAAIF,IAAI;AACR,WAAKH,IAAIod,GAAGnd,EAAE,OAAO,GAAGA,EAAE,QAAQE,CAAC,GAAG,CAACqgB,GAAG,GAAGxgB,EAAE,MAAMA,EAAE,OAAOC,EAAE,KAAKJ,CAAC,IAAI,CAAAO,IAAID,GAAGA,KAAK,GAAGH,IAAIod,GAAGpd,EAAE,MAAMA,EAAE,QAAQ,CAAC;AACnH,MAAY,MAAZ,YAAkBI,KAAK,KAAK,GAAG,IAAI;AAAA,IACpC;AACA,IAAAJ,IAAIod,GAAGnd,EAAE,OAAO,GAAGA,EAAE,QAAQG,CAAC;AAC9B,UAAM,IAAIyV,GAAG7V,EAAE,MAAMA,EAAE,OAAOC,EAAE,GAAG;AACnC,QAAIE,IAAI,GAAGM,IAAI8c,GAAG1d,EAAE,MAAMA,EAAE,QAAQ,GAAGA,EAAE,GAAG,IAAI0d,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAG,EAAE,GAAG;AAC7E,WAAkB,MAAX,WAAiBpd,IAAI,KAAK,MAAMM,IAAI,CAAC,GAAGA,KAAK,IAAI;AAAA,MACvD,OAAO;AAAA,MACP,QAAQL;AAAA,MACR,OAAOD;AAAA,MACP,MAAMM;AAAA,IACT;AAAA,EACC;AAAA,EACA,UAAU,EAAE,MAAMR,GAAG,OAAOJ,GAAG,KAAK,EAAC,GAAI,GAAG;AAC3C,UAAMG,IAAI;AAAA,MACT,KAAK;AAAA,MACL,SAAS;AAAA,MACT,MAAMC;AAAA,MACN,OAAOJ;AAAA,MACP,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,cAAc;AAAA,IACjB;AACE,QAAI,EAAE,cAAcG,EAAE,YAAY0gB,GAAG7gB,CAAC,IAAI,EAAE,WAAW;AACtD,YAAME,IAAIF,KAAKA,IAAI,IAAI,KAAK,KAAKC,IAAIG,KAAKJ,IAAI,IAAI,IAAI,IAAIO,IAAI,KAAK,MAAMN,IAAI,GAAG,GAAGO,IAAIP,IAAI,MAAMM,GAAGD,KAAK,IAAI,KAAK,MAAM,MAAMJ,IAAI,GAAE,KAAKM,IAAI,KAAK,MAAMA,IAAI,CAAC,MAAM,KAAK,MAAMD,IAAI,CAAC,IAAI,IAAIA,MAAM;AACjM,MAAAJ,EAAE,YAAYG,KAAKA,KAAK,IAAI,IAAI;AAAA,IACjC;AACA,QAAI,EAAE,WAAW;AAChB,UAAIJ,IAAI;AACR,eAASL,IAAIG,IAAI,GAAGH,IAAI,GAAGA,IAAK,CAAAK,KAAKkd,GAAGhd,GAAGP,CAAC;AAC5C,MAAAM,EAAE,YAAYD;AAAA,IACf;AACA,WAAO,EAAE,eAAeC,EAAE,aAAasgB,GAAG,WAAW;AAAA,MACpD,MAAMrgB;AAAA,MACN,OAAOJ;AAAA,MACP,KAAK;AAAA,IACR,CAAG,IAAI,EAAE,gBAAgBG,EAAE,cAAcid,GAAGhd,GAAGJ,CAAC,KAAK,EAAE,cAAc,EAAE,gBAAgBG,EAAE,aAAagd,GAAG/c,CAAC,GAAGD,EAAE,aAAaA,EAAE,aAAa,MAAM,MAAMA;AAAA,EACtJ;AAAA,EACA,mBAAmB,MAAM;AAAA,EACzB,2BAA2B,MAAM;AAClC;AACA,IAAI4gB,KAAiB,MAAMA,GAAe;AAAA,EACzC,YAAY,GAAG;AACd,QAAI,KAAK,MAAsB,oBAAI,IAAG,GAAI,KAAK,QAAQ,GAAG,KAAK,OAAO,GAAG,KAAK,SAAS,GAAc,MAAX,QAAc;AACvG,UAAI/gB,IAAI;AACR,iBAAWH,KAAK,EAAE,IAAI,QAAO,GAAI;AAChC,YAAI,EAAEG,IAAI+gB,GAAe,kBAAmB;AAC5C,aAAK,IAAI,IAAI,GAAGlhB,CAAC;AAAA,MAClB;AAAA,IACD;AAAA,EACD;AAAA,EACA,IAAI,GAAG;AACN,UAAMG,IAAI,KAAK,IAAI,IAAI,CAAC;AACxB,WAAOA,MAAM,KAAK,QAAQ,KAAK,OAAM,IAAK,KAAK,SAASA;AAAA,EACzD;AAAA,EACA,IAAI,GAAGA,GAAG;AACT,SAAK,IAAI,IAAI,GAAGA,CAAC,GAAG,KAAK,UAAU,KAAK,OAAM;AAAA,EAC/C;AAAA,EACA,SAAS;AAAA,EAAC;AAAA,EACV,UAAU,GAAG;AACZ,QAAI+gB,GAAe,UAAU,IAAI,CAAC,EAAG,OAAM,IAAI,WAAW,uBAAuB;AACjF,IAAAA,GAAe,UAAU,IAAI,GAAG,IAAI,GAAG,KAAK,OAAM;AAAA,EACnD;AAAA,EACA,OAAO,kBAAkB,GAAG;AAC3B,QAAI/gB,IAAI+gB,GAAe,UAAU,IAAI,CAAC;AACtC,WAAO/gB,MAAMA,IAAI,IAAI+gB,MAAkBA,GAAe,UAAU,IAAI,GAAG/gB,CAAC,IAAIA;AAAA,EAC7E;AACD;AACA,SAASghB,GAAG,EAAE,SAAS5gB,GAAG,UAAUJ,GAAG,QAAQ,KAAK;AACnD,SAAO,GAAG6b,GAAGzb,CAAC,CAAC,IAAI0b,GAAG9b,CAAC,CAAC,IAAI8b,GAAG,CAAC,CAAC;AAClC;AACA,SAASmF,GAAG7gB,GAAGJ,GAAG;AACjB,SAAO;AAAA,IACN,OAAOI,EAAE,OAAOJ,EAAE;AAAA,IAClB,QAAQI,EAAE,QAAQJ,EAAE;AAAA,IACpB,MAAMI,EAAE,MAAMJ,EAAE;AAAA,EAClB;AACA;AACA+gB,GAAe,YAA4B,oBAAI,QAAO,GAAIA,GAAe,oBAAoB;AAC7F,IAAIG,KAAa,MAAM;AAAA,EACtB,cAAc;AACb,SAAK,OAAO,CAAA,GAAI,KAAK,SAAS,IAAI,KAAK,mBAAmB;AAAA,EAC3D;AAAA,EACA,eAAe;AACd,WAAkB,KAAK,cAAhB,WAA8B,KAAK,YAAY,IAAI,KAAK,eAAe,cAAc,KAAK,EAAE,IAAI;AAAA,MACtG,KAAK;AAAA,MACL,OAAO;AAAA,MACP,MAAM;AAAA,MACN,KAAK;AAAA,MACL,UAAU;AAAA,IACb,CAAG,IAAI,KAAK;AAAA,EACX;AAAA,EACA,iBAAiB9gB,GAAG;AACnB,QAAIJ,IAAI,KAAK,aAAY,GAAI,IAAI,IAAI,KAAKI,CAAC;AAC3C,QAA+BA,MAA3B,wBAA8B;AACjC,YAAMA,IAAIJ,EAAE,gBAAe;AAC3B,MAAAA,IAAI,IAAI,KAAK,eAAeI,EAAE,QAAQ;AAAA,QACrC,GAAGA;AAAA,QACH,UAAU;AAAA,MACd,CAAI,GAAG,IAAoB,oBAAI,KAAK,sBAAsB;AAAA,IACxD;AACA,QAAI;AACH,aAAOJ,EAAE,cAAc,CAAC;AAAA,IACzB,QAAY;AACX,YAAM,IAAI,WAAW,qBAAqBI,CAAC,EAAE;AAAA,IAC9C;AAAA,EACD;AAAA,EACA,kBAAkBA,GAAGJ,GAAG;AACvB,UAAM,EAAE,MAAM,GAAG,OAAO,GAAG,KAAKG,EAAC,IAAKC,GAAG,IAAI,KAAK,UAAU;AAAA,MAC3D,MAAM;AAAA,MACN,SAAS;AAAA,MACT,UAAU;AAAA,MACV,QAAQD;AAAA,MACR,IAAI,KAAK;AAAA,IACZ,CAAG,GAAGI,IAAIP,EAAE,IAAI,CAAC;AACf,QAAIO,EAAG,QAAOA;AACd,UAAM,IAAIygB,GAAG;AAAA,MACZ,SAAS;AAAA,MACT,UAAU;AAAA,MACV,QAAQ7gB;AAAA,IACX,CAAG,GAAGG,IAAI,KAAK,iBAAiB,CAAC,GAAGM,IAAI,CAAA;AACtC,aAASR,IAAI,GAAGA,IAAIE,EAAE,QAAQF,KAAK;AAClC,YAAM,EAAE,MAAMJ,GAAG,OAAOH,EAAC,IAAKS,EAAEF,CAAC;AACjC,UAAeJ,MAAX,UAAkCA,MAAlB,kBAAwB,KAAK,SAASY,EAAE,UAAU,CAACf,IAAIe,EAAE,OAAO,CAACf,IAAgBG,MAAZ,SAAe;AACvG,cAAMI,IAAI,kBAAkB,KAAKP,CAAC;AAClC,YAAI,CAACO,KAAUA,EAAE,UAAP,KAAiB,CAACA,EAAE,CAAC,KAAK,CAACA,EAAE,CAAC,EAAG,OAAM,IAAI,WAAW,qBAAqBP,CAAC,EAAE;AACxF,YAAIe,EAAE,QAAQR,EAAE,CAAC,IAAI,CAACA,EAAE,CAAC,IAAI,GAAGQ,EAAE,QAAQ,EAAG,OAAM,IAAI,WAAW,iBAAiBf,CAAC,SAAS,CAAC,SAAS,KAAK,EAAE,2EAA2E;AACzL,YAAIe,EAAE,QAAQ,GAAI,OAAM,IAAI,WAAW,iBAAiBf,CAAC,SAAS,CAAC,SAAS,KAAK,EAAE,2EAA2E;AAC9J,QAAAO,EAAE,CAAC,MAAMQ,EAAE,aAAaR,EAAE,CAAC;AAAA,MAC5B;AACA,MAAUJ,MAAV,UAAgBY,EAAE,MAAM,CAACf,IAAI,KAAK,UAAoBG,MAAV,SAAuBH,KAAR,QAAoBA,MAAP,OAAae,EAAE,MAAMf,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE,UAAU,KAAK,EAAE,QAAQ,mBAAmB,EAAE,EAAE,QAAQ,MAAM,GAAG,EAAE;IAClL;AACA,QAAI,KAAK,UAAqBe,EAAE,YAAb,OAAsB,OAAM,IAAI,WAAW,0DAA0D,KAAK,EAAE,6CAA6C;AAC5K,QAAI,KAAK,QAAQ;AAChB,YAAMR,IAAI,KAAK,KAAK,MAAM,CAACA,MAAMQ,EAAE,QAAQR,EAAE,YAAW;AACxD,MAAAA,MAAMQ,EAAE,MAAMR,EAAE;AAAA,IACjB;AACA,QAAI,KAAK,eAAe;AACvB,YAAM,EAAE,KAAKJ,GAAG,SAASH,EAAC,IAAK,KAAK,cAAce,GAAGR,CAAC;AACtD,MAAAQ,EAAE,MAAMZ,GAAGY,EAAE,UAAUf;AAAA,IACxB;AACA,SAAK,gBAAgB,KAAK,aAAaO,CAAC;AACxC,UAAMK,IAAI,KAAK,mBAAmBG,GAAGZ,GAAG,aAAa,EAAE;AACvD,QAAeS,EAAE,SAAb,OAAmB,OAAM,IAAI,WAAW,2BAA2B,KAAK,UAAUL,CAAC,CAAC,EAAE;AAC1F,QAAeK,EAAE,UAAb,OAAoB,OAAM,IAAI,WAAW,4BAA4B,KAAK,UAAUL,CAAC,CAAC,EAAE;AAC5F,QAAeK,EAAE,QAAb,OAAkB,OAAM,IAAI,WAAW,0BAA0B,KAAK,UAAUL,CAAC,CAAC,EAAE;AACxF,WAAOJ,EAAE,IAAI,GAAGS,CAAC,GAAG,CAAC,aAAa,QAAQ,EAAE,SAAS,CAACZ,MAAM;AAC3D,YAAMK,IAAI,KAAK,UAAU;AAAA,QACxB,MAAM;AAAA,QACN,MAAMO,EAAE;AAAA,QACR,OAAOA,EAAE;AAAA,QACT,KAAKA,EAAE;AAAA,QACP,UAAUZ;AAAA,QACV,IAAI,KAAK;AAAA,MACb,CAAI;AACD,MAAAG,EAAE,IAAIE,GAAGE,CAAC;AAAA,IACX,EAAC,GAAIK;AAAA,EACN;AAAA,EACA,qBAAqBL,GAAG;AACvB,UAAM,EAAE,OAAOJ,GAAG,MAAM,GAAG,KAAK,GAAG,SAASG,GAAG,WAAW,GAAG,YAAYI,EAAC,IAAKH;AAC/E,QAAeG,MAAX,OAAc,OAAM,IAAI,WAAW,+BAA+B;AACtE,QAAe,MAAX,UAA2BJ,MAAX,OAAc,OAAM,IAAI,UAAU,6BAA6B;AACnF,QAAeH,MAAX,UAA2B,MAAX,OAAc,OAAM,IAAI,UAAU,gCAAgC;AACtF,QAAe,MAAX,OAAc,OAAM,IAAI,WAAW,aAAa;AACpD,QAAe,MAAX,QAAc;AACjB,UAAgB,OAAO,KAAnB,SAAsB,OAAM,IAAI,WAAW,qCAAqC,OAAO,CAAC;AAC5F,UAAI,CAAC,mBAAmB,KAAK,CAAC,EAAG,OAAM,IAAI,WAAW,sBAAsB,CAAC,EAAE;AAAA,IAChF;AACA,QAAI,KAAK,UAAqBI,EAAE,QAAb,WAAgCA,EAAE,YAAb,QAAuB,OAAM,IAAI,UAAU,sDAAsD;AAAA,EAC1I;AAAA,EACA,mBAAmBA,GAAGJ,IAAI,QAAQ,IAAI,aAAa,IAAI,IAAI;AAC1D,QAAoB,KAAK,iBAArB,YAAmC,OAAM,IAAI,WAAW,2CAA2C;AACvG,QAAIG,IAAIC;AACR,SAAK,qBAAqBD,CAAC;AAC3B,UAAM,IAAI,KAAK,aAAaA,GAAGH,CAAC;AAChC,QAAI,EAAE,OAAOO,GAAG,WAAW,EAAC,IAAKJ;AACjC,WAAO,EAAC,OAAOI,GAAG,WAAW,EAAC,IAAIugB,GAAG3gB,GAAG,GAAG,CAAC,GAAG;AAAA,MAC9C,GAAGA;AAAA,MACH,OAAOI;AAAA,MACP,WAAW;AAAA,IACd;AAAA,EACC;AAAA,EACA,sBAAsBH,GAAGJ,GAAG,GAAG;AAC9B,UAAM,IAAI,KAAK,aAAaI,GAAG,CAAC;AAChC,QAAI,EAAE,OAAOD,GAAG,KAAK,EAAC,IAAKC;AAC3B,WAAoBJ,MAAb,YAAkB4d,GAAGzd,GAAG,GAAG,CAAC,GAAGyd,GAAG,GAAG,GAAG,KAAK,mBAAmBxd,CAAC,CAAC,MAAMD,IAAI+V,GAAG/V,GAAG,GAAG,CAAC,GAAG,IAAI+V,GAAG,GAAG,GAAG,KAAK,mBAAmB;AAAA,MACpI,GAAG9V;AAAA,MACH,OAAOD;AAAA,IACV,CAAG,CAAC,IAAI;AAAA,MACL,GAAGC;AAAA,MACH,OAAOD;AAAA,MACP,KAAK;AAAA,IACR;AAAA,EACC;AAAA,EACA,kBAAkBC,GAAGJ,IAAI,aAAa,GAAG;AACxC,UAAM,IAAII;AACV,QAAID,IAAI,KAAK,mBAAmBC,GAAG,GAAGJ,GAAG,EAAE;AAC3C,IAAAG,IAAI,KAAK,sBAAsBA,GAAGH,GAAG,CAAC;AACtC,UAAM,EAAE,MAAM,GAAG,OAAOO,GAAG,KAAK,EAAC,IAAKJ,GAAGG,IAAI,KAAK,UAAU;AAAA,MAC3D,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAOC;AAAA,MACP,KAAK;AAAA,MACL,UAAUP;AAAA,MACV,IAAI,KAAK;AAAA,IACZ,CAAG;AACD,QAAIY,GAAGH,IAAI,EAAE,IAAIH,CAAC;AAElB,QADIG,KACW,EAAE,SAAb,UAAgC,EAAE,UAAb,UAAiC,EAAE,QAAb,WAAqB,EAAE,SAASN,EAAE,QAAQ,EAAE,UAAUA,EAAE,SAAS,EAAE,QAAQA,EAAE,SAASS,IAAI,KAAK,UAAU;AAAA,MACvJ,MAAM;AAAA,MACN,MAAM,EAAE;AAAA,MACR,OAAO,EAAE;AAAA,MACT,KAAK,EAAE;AAAA,MACP,UAAUZ;AAAA,MACV,IAAI,KAAK;AAAA,IACZ,CAAG,GAAGS,IAAI,EAAE,IAAIG,CAAC,GAAGH,GAAI,QAAOA;AAC7B,QAAIV,IAAI,KAAK,gBAAgB;AAAA,MAC5B,MAAM;AAAA,MACN,OAAOQ;AAAA,MACP,KAAK;AAAA,IACR,CAAG;AACD,UAAMT,IAAI,CAACM,MAAM;AAChB,UAAIF,IAAI,KAAK,WAAWH,GAAGK,CAAC;AAC5B,UAAID,EAAE,MAAM,KAAK,mBAAmBA,CAAC,GAAG;AACvC,YAAIC,IAAI,KAAK,kBAAkBF,GAAG,CAAC;AACnC,eAAOE,EAAE,UAAUG,KAAKH,EAAE,SAAS,KAAI;AACtC,cAAiBJ,MAAb,SAAgB,OAAM,IAAI,WAAW,OAAO,CAAC,4BAA4BO,CAAC,YAAY,CAAC,EAAE;AAC7F,UAAAL,IAAI,KAAK,WAAWA,GAAG,EAAE,GAAGE,IAAI,KAAK,kBAAkBF,GAAG,CAAC;AAAA,QAC5D;AAAA,MACD;AACA,aAAOA;AAAA,IACR;AACA,QAAIc,IAAI,GAAGX,IAAI,KAAK,kBAAkBN,GAAG,CAAC,GAAG+B,IAAImf,GAAG9gB,GAAGE,CAAC;AACxD,QAAUyB,EAAE,UAAR,KAAuBA,EAAE,WAAR,KAAwBA,EAAE,SAAR,GAAc;AACpD,YAAM1B,IAAI,MAAM0B,EAAE,QAAQ,KAAKA,EAAE,SAASA,EAAE;AAC5C,MAAA/B,IAAI,KAAK,WAAWA,GAAGK,CAAC,GAAGC,IAAI,KAAK,kBAAkBN,GAAG,CAAC,GAAG+B,IAAImf,GAAG9gB,GAAGE,CAAC,GAASyB,EAAE,UAAR,KAAuBA,EAAE,WAAR,IAAiB/B,IAAID,EAAEgC,EAAE,IAAI,IAAId,IAAI,KAAK,qBAAqBb,GAAGE,CAAC;AAAA,IAChK;AACA,QAAIK,IAAI;AACR,WAAOM,KAAI;AACV,MAAAjB,IAAI,KAAK,WAAWA,GAAGiB,IAAIN,CAAC;AAC5B,YAAMN,IAAIC;AACV,MAAAA,IAAI,KAAK,kBAAkBN,GAAG,CAAC;AAC/B,YAAME,IAAIe;AACV,UAAIA,IAAI,KAAK,qBAAqBb,GAAGE,CAAC,GAAGW;AACxC,YAAIc,IAAImf,GAAG9gB,GAAGE,CAAC,GAASyB,EAAE,UAAR,KAAuBA,EAAE,WAAR,EAAgB,CAAA/B,IAAID,EAAEgC,EAAE,IAAI,GAAGd,IAAI;AAAA,iBAC7Df,KAAKe,MAAMf,EAAG,KAAIS,IAAI,EAAG,CAAAA,KAAK;AAAA,aAClC;AACJ,cAAiBV,MAAb,SAAgB,OAAM,IAAI,WAAW,2CAA2C,KAAK,UAAU,EAAE,GAAG,EAAC,CAAE,CAAC,EAAE;AAC9G,eAAK,qBAAqBK,GAAGD,CAAC,IAAI,MAAML,IAAI,KAAK,WAAWA,GAAG,EAAE,IAAIiB,IAAI;AAAA,QAC1E;AAAA;AAAA,IAEF;AACA,QAAI,EAAE,IAAIV,GAAGP,CAAC,GAAGa,KAAK,EAAE,IAAIA,GAAGb,CAAC,GAAcI,EAAE,SAAb,UAAgCA,EAAE,UAAb,UAAiCA,EAAE,QAAb,UAA+BA,EAAE,cAAb,UAA0B,KAAK,WAAsBA,EAAE,QAAb,UAA+BA,EAAE,YAAb,QAAuB,OAAM,IAAI,WAAW,6BAA6B;AACzO,WAAOJ;AAAA,EACR;AAAA,EACA,qBAAqBK,GAAGJ,GAAG;AAC1B,WAAOI,EAAE,SAASJ,EAAE,OAAO8f,GAAG1f,EAAE,OAAOJ,EAAE,IAAI,IAAII,EAAE,UAAUJ,EAAE,QAAQ8f,GAAG1f,EAAE,QAAQJ,EAAE,KAAK,IAAII,EAAE,QAAQJ,EAAE,MAAM8f,GAAG1f,EAAE,MAAMJ,EAAE,GAAG,IAAI;AAAA,EACtI;AAAA,EACA,aAAaI,GAAGJ,IAAI,aAAa,GAAG;AACnC,UAAM,IAAI,KAAK,kBAAkBI,GAAGJ,GAAG,CAAC;AACxC,WAAO,KAAK,kBAAkB,GAAG,CAAC;AAAA,EACnC;AAAA,EACA,WAAWI,GAAGJ,GAAG;AAChB,WAAOyb,GAAGrb,EAAE,MAAMA,EAAE,OAAOA,EAAE,MAAMJ,CAAC;AAAA,EACrC;AAAA,EACA,gBAAgBI,GAAGJ,GAAG,GAAG;AACxB,UAAM,IAAI,KAAK,kBAAkBI,GAAG,aAAa,CAAC,GAAGD,IAAI,KAAK,WAAW,GAAGH,CAAC;AAC7E,WAAO,KAAK,kBAAkBG,GAAG,CAAC;AAAA,EACnC;AAAA,EACA,kBAAkBC,GAAGJ,GAAG,GAAG,GAAG;AAC7B,QAAIG,IAAIC;AACR,UAAM,EAAE,KAAK,EAAC,IAAKD;AACnB,aAASC,IAAI,GAAGP,IAAI,KAAK,IAAIG,CAAC,GAAGI,IAAIP,GAAGO,KAAK;AAC5C,YAAM,EAAE,OAAOA,EAAC,IAAKD,GAAGN,IAAIM,GAAGI,IAAIP,IAAI,IAAI,CAAC,KAAK,IAAI,GAAG,KAAK,oBAAoBG,GAAG,CAAC,CAAC,IAAI,KAAK,YAAYA,GAAG,CAAC,GAAGK,IAAI,KAAK,kBAAkBL,GAAG,aAAa,CAAC;AAC9J,UAAIG,IAAI,KAAK,WAAWE,GAAGD,CAAC;AAC5B,UAAIJ,IAAI,KAAK,kBAAkBG,GAAG,CAAC,GAAGN,IAAI,GAAG;AAC5C,cAAMA,IAAI,KAAK,aAAaH,GAAG,CAAC;AAChC,eAAOM,EAAE,QAAQ,KAAKC,IAAIJ,IAAI,CAAAM,IAAI,KAAK,WAAWA,GAAG,EAAE,GAAGH,IAAI,KAAK,kBAAkBG,GAAG,CAAC;AAAA,MAC1F;AACA,MAAAH,EAAE,QAAQ,MAAMA,IAAI,KAAK,aAAa;AAAA,QACrC,GAAGA;AAAA,QACH,KAAK;AAAA,MACT,GAAM,aAAa,CAAC;AAAA,IAClB;AACA,QAAiB,MAAb,YAAkBA,EAAE,QAAQ,EAAG,OAAM,IAAI,WAAW,OAAO,CAAC,6CAA6C;AAC7G,WAAOA;AAAA,EACR;AAAA,EACA,YAAYC,GAAG,EAAE,OAAOJ,IAAI,GAAG,QAAQ,IAAI,GAAG,OAAO,IAAI,GAAG,MAAMG,IAAI,EAAC,GAAI,GAAGI,GAAG;AAChF,UAAM,EAAE,MAAM,GAAG,KAAKD,GAAG,WAAWM,EAAC,IAAKR,GAAGK,IAAI,KAAK,mBAAmB;AAAA,MACxE,MAAM,IAAIT;AAAA,MACV,WAAWY;AAAA,MACX,KAAKN;AAAA,IACR,GAAKC,CAAC,GAAGR,IAAI,KAAK,kBAAkBU,GAAG,GAAG,GAAGF,CAAC,GAAGT,IAAIK,IAAI,IAAI;AAC3D,WAAO,KAAK,gBAAgBJ,GAAGD,GAAGS,CAAC;AAAA,EACpC;AAAA,EACA,cAAcH,GAAGJ,GAAG,GAAG,GAAG;AACzB,QAAIG,IAAI,GAAG,IAAI,GAAGI,IAAI,GAAG,IAAI;AAC7B,YAAQ,GAAC;AAAA,MACR,KAAK;AACJ,QAAAJ,IAAI,KAAK,kBAAkBC,GAAGJ,GAAG,CAAC;AAClC;AAAA,MACD,KAAK,QAAQ;AACZ,cAAMH,IAAI,KAAK,kBAAkBO,GAAGJ,GAAG,CAAC;AACxC,QAAAG,IAAIN,IAAI,GAAG,KAAKA,IAAIM,KAAK;AACzB;AAAA,MACD;AAAA,MACA,KAAK;AAAA,MACL,KAAK,QAAQ;AACZ,cAAMF,IAAI,KAAK,qBAAqBD,GAAGI,CAAC;AACxC,YAAI,CAACH,EAAG,QAAO;AAAA,UACd,OAAO;AAAA,UACP,QAAQ;AAAA,UACR,OAAO;AAAA,UACP,MAAM;AAAA,QACX;AACI,cAAMK,IAAIN,EAAE,OAAOI,EAAE,MAAMQ,IAAIZ,EAAE,MAAMI,EAAE;AACzC,YAAe,MAAX,UAAgBE,GAAG;AACtB,cAAIT,IAAI;AACR,UAAAG,EAAE,YAAYI,EAAE,cAAcP,IAAI,IAAIG,EAAE,YAAYI,EAAE,cAAcP,IAAI,KAAKA,MAAMA,IAAI,KAAK,KAAKe,CAAC,IAAI,IAAIf,IAAII,IAAI,IAAIK,IAAIL,IAAIK;AAAA,QAC/H;AACA,YAAI,GAAGP,IAAI,IAAI,KAAK,YAAYK,GAAG,EAAE,OAAO,EAAC,GAAI,aAAa,CAAC,IAAIA;AACnE;AACC,UAAAG,KAAKN,GAAG,IAAIF,GAAGA,IAAI,KAAK,kBAAkB,GAAGE,GAAG,aAAa,CAAC,GAAGF,EAAE,QAAQK,EAAE,QAAQL,IAAI,KAAK,aAAa;AAAA,YAC1G,GAAGA;AAAA,YACH,KAAKK,EAAE;AAAA,UACb,GAAQ,aAAa,CAAC;AAAA,eACX,KAAK,qBAAqBJ,GAAGD,CAAC,IAAIE,KAAK;AAC9C,QAAAM,KAAKN,GAAGE,IAAI,KAAK,kBAAkB,GAAGH,GAAG,CAAC;AAC1C;AAAA,MACD;AAAA,IACH;AACE,WAAO;AAAA,MACN,OAAO;AAAA,MACP,QAAQO;AAAA,MACR,OAAO;AAAA,MACP,MAAMJ;AAAA,IACT;AAAA,EACC;AAAA,EACA,YAAYC,GAAGJ,GAAG;AACjB,UAAM,EAAE,KAAK,MAAMI,GAAG,IAAI,KAAK,mBAAmBA,CAAC,GAAGD,IAAI,KAAK,mBAAmBC,CAAC;AACnF,QAAID,MAAM,EAAG,QAAOA;AACpB,UAAM,IAAI,KAAK,IAAIA,IAAI,IAAIA,GAAGI,IAAI,KAAK,kBAAkBH,GAAG,aAAaJ,CAAC,GAAG,IAAI,KAAK,WAAWO,GAAG,CAAC,GAAGD,IAAI,KAAK,kBAAkB,GAAGN,CAAC,GAAGY,IAAI,KAAK,WAAW,GAAG,CAACN,EAAE,GAAG;AACvK,WAAO,KAAK,kBAAkBM,GAAGZ,CAAC,EAAE;AAAA,EACrC;AAAA,EACA,oBAAoBI,GAAGJ,GAAG;AACzB,UAAM,EAAE,KAAK,GAAG,OAAO,GAAG,MAAMG,EAAC,IAAKC;AACtC,QAAI,IAAI;AAAA,MACP,MAAM,IAAI,IAAID,IAAIA,IAAI;AAAA,MACtB,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AACE,UAAMI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,aAAa,GAAGP,CAAC;AAChD,QAAI;AAAA,MACH,GAAG;AAAA,MACH,OAAOO;AAAA,IACV;AACE,UAAM,IAAI,KAAK,mBAAmB,CAAC,GAAGD,IAAI,KAAK,mBAAmB,CAAC;AACnE,QAAI,MAAMA,EAAG,QAAOA;AACpB,UAAMM,IAAI,KAAK,kBAAkBR,GAAG,aAAaJ,CAAC,GAAGS,IAAI,KAAK,WAAWG,GAAG,CAAC,CAAC;AAC9E,WAAO,KAAK,kBAAkBH,GAAGT,CAAC,EAAE;AAAA,EACrC;AAAA,EACA,oBAAoBI,GAAG;AACtB,WAAO;AAAA,MACN,MAAMA,EAAE;AAAA,MACR,OAAO;AAAA,MACP,WAAW;AAAA,MACX,KAAK;AAAA,IACR;AAAA,EACC;AAAA,EACA,qBAAqBA,GAAG;AACvB,WAAO;AAAA,MACN,MAAMA,EAAE;AAAA,MACR,OAAOA,EAAE;AAAA,MACT,KAAK;AAAA,IACR;AAAA,EACC;AAAA,EACA,kBAAkBA,GAAGJ,GAAG,GAAG;AAC1B,UAAM,IAAI,KAAK,kBAAkBI,GAAG,aAAa,CAAC,GAAGD,IAAI,KAAK,kBAAkBH,GAAG,aAAa,CAAC;AACjG,WAAO0d,GAAGvd,EAAE,MAAMA,EAAE,QAAQ,GAAGA,EAAE,GAAG,IAAIud,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAG,EAAE,GAAG;AAAA,EACtE;AAAA,EACA,wBAAwBtd,GAAGJ,GAAG;AAC7B,WAAO;AAAA,EACR;AAAA,EACA,mBAAmBI,GAAGJ,GAAG,GAAG;AAC3B,QAAI,GAAGG,GAAG,GAAGI,GAAG,GAAG,EAAE,KAAKD,GAAG,SAASM,GAAG,MAAMH,GAAG,OAAOV,GAAG,WAAWD,GAAG,KAAKkB,EAAC,IAAKZ;AACrF,QAAeL,MAAX,UAA2BU,MAAX,WAAiB,CAAC,KAAK,UAAqBH,MAAX,UAA2BM,MAAX,QAAe,OAAM,IAAI,UAAU,+DAA+D;AACvK,KAAYd,MAAX,UAA2BW,MAAX,UAAgB,KAAK,UAAqBG,MAAX,YAAkB,EAAC,WAAWd,GAAG,KAAKkB,EAAC,IAAI,KAAK,kBAAkB,KAAK,kBAAkBZ,GAAGJ,GAAG,CAAC,GAAG,CAAC;AACpJ,UAAMK,IAAI;AAAA,MACT,MAAM,KAAK,wBAAwBP,GAAGkB,CAAC;AAAA,MACvC,OAAO;AAAA,MACP,KAAK;AAAA,IACR,GAAKc,IAAI,KAAK,kBAAkBzB,GAAG,CAAC,GAAGK,IAAIoB,EAAE,YAAYhC,KAAKgC,EAAE,cAAchC,KAAKgC,EAAE,OAAOd,IAAIc,EAAE,OAAOA,EAAE,OAAO;AAChH,aAAS1B,IAAI,GAAGA,IAAI,IAAIA,KAAK;AAC5B,YAAME,IAAI,KAAK,mBAAmB;AAAA,QACjC,KAAKU;AAAA,QACL,WAAWlB;AAAA,QACX,MAAMY,IAAIN;AAAA,MACd,GAAM,CAAC,GAAGQ,IAAI,KAAK,kBAAkBN,GAAG,aAAa,CAAC,GAAGG,IAAI,KAAK,kBAAkBG,GAAG,CAAC;AACrF,UAAI,EAAC,MAAM,GAAG,OAAOT,GAAG,KAAK,EAAC,IAAIS,GAAGH,EAAE,cAAcX,KAAKW,EAAE,QAAQO,EAAG,QAAO;AAAA,QAC7E,OAAOb;AAAA,QACP,KAAK;AAAA,QACL,MAAM;AAAA,MACV;AACG,UAAoBH,MAAhB,aAAmB;AACtB,cAAMI,IAAI,KAAK,8BAA8BK,EAAE,SAAS;AACxD,YAAIA,EAAE,cAAcX,KAAKW,EAAE,QAAQL,KAAKY,IAAIZ,EAAG,QAAO;AAAA,UACrD,OAAOD;AAAA,UACP,KAAK;AAAA,UACL,MAAM;AAAA,QACX;AACI,SAAYI,MAAX,UAAgBE,EAAE,cAAcF,EAAE,aAAaE,EAAE,MAAMF,EAAE,SAASA,IAAIE,GAAG,IAAIG;AAAA,MAC/E;AAAA,IACD;AACA,QAAoBZ,MAAhB,eAAgC,MAAX,OAAc,QAAO;AAC9C,UAAM,IAAI,WAAW,aAAa,KAAK,EAAE,wBAAwBF,CAAC,YAAYkB,CAAC,EAAE;AAAA,EAClF;AAAA,EACA,oBAAoB;AAAA,EAAC;AAAA,EACrB,4BAA4B;AAAA,EAAC;AAC9B,GACImgB,KAAe,cAAcD,GAAW;AAAA,EAC3C,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK,UAAU,KAAK,eAAe,aAAa,KAAK,SAAS;AAAA,MACvF,QAAQ;AAAA,QACP,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,SAAS;AAAA,QACR,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACV;AAAA,MACA;AAAA,MACG,QAAQ;AAAA,QACP,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,QACV;AAAA,MACA;AAAA,MACG,OAAO;AAAA,QACN,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,QAAQ;AAAA,QACP,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,MAAM;AAAA,QACL,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,UAAU;AAAA,QACT,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,WAAW;AAAA,QACV,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,OAAO;AAAA,QACN,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,MAAM;AAAA,QACL,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,OAAO;AAAA,QACN,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,OAAO;AAAA,QACN,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,IAAI;AAAA,QACH,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,MACG,MAAM;AAAA,QACL,MAAM;AAAA,QACN,SAAS;AAAA,QACT,WAAW;AAAA,QACX,MAAM;AAAA,MACV;AAAA,IACA;AAAA,EACC;AAAA,EACA,WAAW9gB,GAAG;AACb,UAAM,EAAE,MAAMJ,EAAC,IAAKI;AACpB,YAAQ,IAAIJ,IAAI,KAAK,KAAK;AAAA,EAC3B;AAAA,EACA,aAAaI,GAAG;AACf,WAAO,KAAK,WAAWA,CAAC,IAAI,KAAK;AAAA,EAClC;AAAA,EACA,mBAAmBA,GAAG;AACrB,WAAO,KAAK,kBAAkBA,GAAG,KAAK;AAAA,EACvC;AAAA,EACA,mBAAmBA,GAAG;AACrB,WAAO,KAAK,kBAAkBA,GAAG,KAAK;AAAA,EACvC;AAAA,EACA,kBAAkBA,GAAGJ,GAAG;AACvB,UAAM,EAAE,OAAO,GAAG,MAAM,EAAC,IAAKI,GAAGD,IAAI,KAAK,aAAa,GAAG,CAAC,GAAG,IAAI,OAAO,QAAQ,KAAK,MAAM,EAAE,MAAM,CAACC,MAAMA,EAAE,CAAC,EAAE,cAAcD,EAAC;AAC/H,QAAe,MAAX,OAAc,OAAM,IAAI,WAAW,2BAA2B,CAAC,EAAE;AACrE,UAAMI,IAAI,EAAE,CAAC,EAAE;AACf,WAAmB,OAAOA,KAAnB,WAAuBA,IAAIA,EAAEP,CAAC;AAAA,EACtC;AAAA,EACA,8BAA8BI,GAAG;AAChC,WAAO;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,EAAI,SAASA,CAAC,IAAI,KAAK;AAAA,EACtB;AAAA,EACA,gBAAgBA,GAAG;AAClB,UAAM,EAAE,MAAMJ,EAAC,IAAKI;AACpB,WAAO;AAAA,MACN,MAAMJ,IAAI;AAAA,MACV,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,EACC;AAAA,EACA,aAAaI,GAAGJ,GAAG;AAClB,WAAO,KAAK,WAAW,EAAE,MAAMI,EAAC,CAAE,IAAUJ,MAAN,IAAU6gB,GAAG,GAAG,EAAE,IAAIA,GAAG7gB,IAAI,IAAIA,IAAIA,IAAI,CAAC,IAAI6gB,GAAG7gB,CAAC;AAAA,EACzF;AAAA,EACA,mBAAmBI,GAAGJ,GAAG,IAAI,aAAa,IAAI,IAAI;AACjD,QAAI,EAAE,MAAMG,GAAG,OAAO,GAAG,WAAWI,GAAG,KAAK,GAAG,YAAYD,EAAC,IAAKF;AACjE,QAAeD,MAAX,OAAc,OAAM,IAAI,UAAU,wBAAwB;AAC9D,QAAI,GAAG;AACN,UAAIG,GAAG;AACN,cAAMF,IAAI,KAAK,OAAOE,CAAC;AACvB,YAAI,CAACF,EAAG,OAAM,IAAI,WAAW,0CAA0CE,CAAC,EAAE;AAC1E,YAAI,KAAK,WAAW,EAAE,MAAMH,EAAC,CAAE,IAAIC,EAAE,OAAOA,EAAE;AAAA,MAC/C;AACA,aAAOG,IAAI,KAAK,aAAaJ,GAAG,CAAC,GAAG;AAAA,QACnC,MAAMA;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,QACL,WAAWI;AAAA,MACf;AAAA,IACE;AACA,QAAI,KAAK,qBAAqBH,CAAC,GAAc,MAAX,OAAc,KAAIG,EAAE,SAAS,GAAG,GAAG;AACpE,UAAeA,MAAX,OAAc,OAAM,IAAI,WAAW,mDAAmDA,CAAC,EAAE;AAC7F,UAAI,IAAI,GAAG,CAAC,KAAK,WAAW,EAAE,MAAMJ,EAAC,CAAE,GAAG;AACzC,YAAiB,MAAb,SAAgB,OAAM,IAAI,WAAW,4CAA4CA,CAAC,2BAA2B;AACjH,YAAI,GAAGI,IAAI;AAAA,MACZ;AAAA,IACD,OAAO;AACN,UAAIqgB,GAAGrgB,CAAC,GAAG,KAAK,WAAW,EAAE,MAAMJ,EAAC,CAAE,KAAK,KAAK,KAAK;AACrD,YAAMC,IAAI,KAAK,aAAa,EAAE,MAAMD,EAAC,CAAE;AACvC,UAAI,IAAI,KAAK,IAAIC,EAAG,OAAM,IAAI,WAAW,sBAAsBG,CAAC,EAAE;AAAA,IACnE;AAAA,aACsB,MAAb,YAAkBqd,GAAG,GAAG,GAAG,KAAK,aAAa,EAAE,MAAMzd,EAAC,CAAE,CAAC,GAAGyd,GAAG,GAAG,GAAG,KAAK,mBAAmB;AAAA,MACrG,MAAMzd;AAAA,MACN,OAAO;AAAA,IACV,CAAG,CAAC,MAAM,IAAI+V,GAAG,GAAG,GAAG,KAAK,aAAa,EAAE,MAAM/V,EAAC,CAAE,CAAC,GAAG,IAAI+V,GAAG,GAAG,GAAG,KAAK,mBAAmB;AAAA,MAC1F,MAAM/V;AAAA,MACN,OAAO;AAAA,IACV,CAAG,CAAC,IAAeI,MAAX,OAAc,CAAAA,IAAI,KAAK,aAAaJ,GAAG,CAAC;AAAA,aACrC,KAAK,aAAaA,GAAG,CAAC,MAAMI,EAAG,OAAM,IAAI,WAAW,aAAaA,CAAC,gCAAgC,CAAC,mBAAmBJ,CAAC,EAAE;AAClI,WAAO;AAAA,MACN,GAAGC;AAAA,MACH,KAAK;AAAA,MACL,OAAO;AAAA,MACP,WAAWG;AAAA,MACX,MAAMJ;AAAA,IACT;AAAA,EACC;AACD,GACIihB,KAAoB,cAAcF,GAAW;AAAA,EAChD,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,eAAe,SAAS,KAAK,wBAAwB,mBAAmB,KAAK,oBAAoB;AAAA,EAC5H;AAAA,EACA,WAAW9gB,GAAGJ,GAAG;AAChB,UAAM,IAAI;AAAA,MACT,MAAMI,EAAE;AAAA,MACR,OAAO;AAAA,MACP,WAAW;AAAA,MACX,KAAK;AAAA,IACR,GAAK,IAAI;AAAA,MACN,MAAMA,EAAE,OAAO;AAAA,MACf,OAAO;AAAA,MACP,WAAW;AAAA,MACX,KAAK;AAAA,IACR;AACE,WAAe,KAAK,kBAAkB,GAAG,GAAGJ,CAAC,MAAtC;AAAA,EACR;AAAA,EACA,eAAe;AACd,WAAO;AAAA,EACR;AAAA,EACA,qBAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EACA,qBAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EACA,gCAAgC;AAC/B,WAAO;AAAA,EACR;AAAA,EACA,gBAAgBI,GAAG;AAClB,UAAM,EAAE,MAAMJ,EAAC,IAAK,KAAK,mBAAmBI,CAAC;AAC7C,WAAO;AAAA,MACN,MAAM,KAAK,MAAMJ,IAAI,KAAK,wBAAwB,KAAK,iBAAiB,IAAI;AAAA,MAC5E,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,EACC;AACD,GACIqhB,KAAgB,cAAcD,GAAkB;AAAA,EACnD,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK;AAAA,EAChC;AACD,GACIE,KAAwB,cAAcF,GAAkB;AAAA,EAC3D,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK;AAAA,EAChC;AACD,GACIG,KAAoB,cAAcH,GAAkB;AAAA,EACvD,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK;AAAA,EAChC;AACD,GACII,KAAqB,cAAcJ,GAAkB;AAAA,EACxD,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK;AAAA,EAChC;AACD,GACIK,KAAoB,cAAcL,GAAkB;AAAA,EACvD,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK;AAAA,EAChC;AACD,GACIM,KAAkB,cAAcN,GAAkB;AAAA,EACrD,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK;AAAA,EAChC;AACD,GACIO,KAAgB,cAAcT,GAAW;AAAA,EAC5C,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK,WAAW,KAAK,eAAe;AAAA,EAC/D;AAAA,EACA,WAAW9gB,GAAGJ,GAAG;AAChB,WAAc,KAAK,YAAY;AAAA,MAC9B,MAAMI,EAAE;AAAA,MACR,OAAO;AAAA,MACP,KAAK;AAAA,IACR,GAAKJ,CAAC,MAJG;AAAA,EAKR;AAAA,EACA,eAAe;AACd,WAAO;AAAA,EACR;AAAA,EACA,mBAAmBI,GAAG;AACrB,UAAM,EAAE,OAAOJ,EAAC,IAAKI;AACrB,WAAcJ,MAAP,KAAW,KAAKA,KAAK,IAAI,KAAK;AAAA,EACtC;AAAA,EACA,mBAAmBI,GAAG;AACrB,UAAM,EAAE,OAAOJ,EAAC,IAAKI;AACrB,WAAcJ,MAAP,KAAW,KAAKA,KAAK,IAAI,KAAK;AAAA,EACtC;AAAA,EACA,8BAA8BI,GAAG;AAChC,WAAOwgB,GAAGxgB,CAAC,KAAK,IAAI,KAAK;AAAA,EAC1B;AAAA,EACA,gBAAgBA,GAAG;AAClB,UAAM,EAAE,MAAMJ,EAAC,IAAK,KAAK,mBAAmBI,CAAC;AAC7C,WAAO;AAAA,MACN,MAAMJ,IAAI;AAAA,MACV,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,EACC;AACD,GACI4hB,KAAe,cAAcV,GAAW;AAAA,EAC3C,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK,UAAU,KAAK,eAAe,SAAS,KAAK,SAAS;AAAA,MACnF,GAAG;AAAA,QACF,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,QACL,MAAM;AAAA,UACL,QAAQ;AAAA,UACR,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,MACA;AAAA,MACG,GAAG;AAAA,QACF,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,GAAG;AAAA,QACF,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,GAAG;AAAA,QACF,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,GAAG;AAAA,QACF,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,GAAG;AAAA,QACF,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,GAAG;AAAA,QACF,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,GAAG;AAAA,QACF,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,GAAG;AAAA,QACF,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,IAAI;AAAA,QACH,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,IAAI;AAAA,QACH,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,UAAU;AAAA,QACV,KAAK;AAAA,MACT;AAAA,MACG,IAAI;AAAA,QACH,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,UAAU;AAAA,QACV,KAAK;AAAA,MACT;AAAA,IACA,GAAK,KAAK,sBAA2D,oBAAI,KAAK,mBAAmB,GAAG,mBAAmB,qBAAqB,EAAE,UAAU,MAAK,CAAE,MAAhI;AAAA,EAC9B;AAAA,EACA,WAAW9gB,GAAG;AACb,WAAOyhB,GAAGzhB,EAAE,OAAO,EAAE;AAAA,EACtB;AAAA,EACA,eAAe;AACd,WAAO;AAAA,EACR;AAAA,EACA,mBAAmBA,GAAG;AACrB,WAAO,KAAK,aAAaA,CAAC,EAAE;AAAA,EAC7B;AAAA,EACA,mBAAmBA,GAAG;AACrB,WAAO,KAAK,aAAaA,CAAC,EAAE;AAAA,EAC7B;AAAA,EACA,8BAA8BA,GAAG;AAChC,UAAMJ,IAAI4gB,GAAGxgB,CAAC;AACd,QAAI,IAAI,KAAK,OAAOJ,CAAC;AACrB,WAAO,IAAI,EAAE,QAAQ,GAAG,EAAE;AAAA,EAC3B;AAAA,EACA,aAAaI,GAAG;AACf,UAAM,EAAE,OAAOJ,EAAC,IAAKI;AACrB,QAAI,IAAI,KAAK,OAAOJ,CAAC;AACrB,QAAe,MAAX,OAAc,OAAM,IAAI,WAAW,kBAAkBA,CAAC,EAAE;AAC5D,WAAO,KAAK,WAAWI,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,OAAO;AAAA,EACtD;AAAA,EACA,gBAAgBA,GAAG;AAClB,UAAMJ,IAAI,KAAK,mBAAmBI,CAAC,GAAG,IAAI,KAAK,aAAaJ,CAAC;AAC7D,WAAOyb,GAAGzb,EAAE,OAAO,MAAM,EAAE,WAAW,IAAI,IAAI,EAAE,OAAO,EAAE,MAAMA,EAAE,MAAM,CAAC;AAAA,EACzE;AAAA,EACA,aAAaI,GAAG;AACf,QAAI,KAAK,sBAAsBA,EAAE,OAAO,EAAG,OAAM,IAAI,WAAW,aAAa,KAAK,EAAE,yGAAyG;AAAA,EAC9L;AACD;AACA,SAASyhB,GAAGzhB,GAAG;AACd,SAAOA,IAAI,KAAK,MAAMA,IAAI,OAAO,KAAKA,IAAI,OAAO;AAClD;AACA,IAAI0hB,KAAgC,cAAcZ,GAAW;AAAA,EAC5D,YAAY9gB,GAAGJ,GAAG;AACjB,UAAK,GAAI,KAAK,eAAe,SAAS,KAAK,KAAKI,GAAG,KAAK,WAAWJ;AAAA,EACpE;AAAA,EACA,WAAWI,GAAG;AACb,UAAM,EAAE,MAAMJ,MAAM,KAAK,gBAAgB;AAAA,MACxC,OAAO;AAAA,MACP,KAAK;AAAA,MACL,MAAMI,EAAE;AAAA,IACX,CAAG;AACD,WAAOyhB,GAAG7hB,CAAC;AAAA,EACZ;AAAA,EACA,eAAe;AACd,WAAO;AAAA,EACR;AAAA,EACA,mBAAmBI,GAAG;AACrB,UAAM,EAAE,OAAOJ,EAAC,IAAKI;AACrB,WAAaJ,MAAN,IAAU,KAAK,WAAWI,CAAC,IAAI,KAAK,KAAK;AAAA,MAC/C;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,EAAI,QAAQJ,CAAC,KAAK,IAAI,KAAK;AAAA,EAC1B;AAAA,EACA,mBAAmBI,GAAG;AACrB,WAAO,KAAK,mBAAmBA,CAAC;AAAA,EACjC;AAAA,EACA,8BAA8BA,GAAG;AAChC,WAAO;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,EAAIwgB,GAAGxgB,CAAC,IAAI,CAAC;AAAA,EACZ;AAAA,EACA,gBAAgBA,GAAG;AAClB,UAAMJ,IAAI,KAAK,mBAAmBI,CAAC;AACnC,WAAO2V,GAAG/V,EAAE,OAAO,KAAK,SAAS,MAAMA,EAAE,QAAQ,KAAK,SAAS,OAAOA,EAAE,MAAM,KAAK,SAAS,KAAK,WAAW;AAAA,EAC7G;AACD,GACI+hB,KAAsB,cAAcb,GAAW;AAAA,EAClD,YAAY9gB,GAAGJ,GAAG;AACjB,UAAK,GAAI,KAAK,SAAS,IAAI,KAAK,eAAe,SAAS,KAAK,KAAKI;AAClE,UAAM,EAAE,MAAM,GAAG,WAAW,EAAC,KAAK,SAASA,GAAG;AAC7C,UAAIJ,GAAGH,IAAIO;AACX,UAAUP,EAAE,WAAR,EAAgB,OAAM,IAAI,WAAW,qCAAqC;AAC9E,UAAUA,EAAE,WAAR,KAAkBA,EAAE,CAAC,EAAE,UAAW,OAAM,IAAI,WAAW,2DAA2D;AACtH,UAAUA,EAAE,WAAR,KAAkB,CAACA,EAAE,CAAC,EAAE,KAAM,OAAM,IAAI,WAAW,sDAAsD;AAC7G,UAAIA,EAAE,QAAQ,CAACO,MAAcA,EAAE,aAAV,KAAmB,EAAG,SAAS,EAAG,OAAM,IAAI,WAAW,0DAA0D;AACtI,MAAAP,EAAE,SAAS,CAACO,MAAM;AACjB,YAAIA,EAAE,YAAY,CAACA,EAAE,eAAe,CAACA,EAAE,WAAW;AACjD,cAAIJ,EAAG,OAAM,IAAI,WAAW,oDAAoD;AAChF,UAAAA,IAAII,GAAGA,EAAE,cAAc,EAAE,MAAMA,EAAE,cAAc,IAAI,EAAC;AAAA,QACrD,WAAW,CAACA,EAAE,KAAM,OAAM,IAAI,WAAW,iDAAiD;AAAA,MAC3F,KAAKP,IAAIA,EAAE,QAAQ,CAACO,MAAMA,EAAE,KAAI,GAAIP,EAAE,SAAS,CAACO,MAAM;AACrD,cAAM,EAAE,WAAWJ,EAAC,IAAKI;AACzB,YAAIJ,GAAG;AACN,gBAAME,IAAIL,EAAE,MAAM,CAACO,MAAMA,EAAE,SAASJ,EAAC;AACrC,cAAeE,MAAX,OAAc,OAAM,IAAI,WAAW,8CAA8CF,CAAC,EAAE;AACxF,UAAAI,EAAE,YAAYF,GAAGE,EAAE,cAAcF,EAAE,aAAaE,EAAE,WAAWF,EAAE;AAAA,QAChE;AACA,QAAWE,EAAE,YAAY,UAAzB,WAAmCA,EAAE,YAAY,QAAQ,IAAeA,EAAE,YAAY,QAAzB,WAAiCA,EAAE,YAAY,MAAM;AAAA,MACnH,EAAC,GAAIP,EAAE,MAAM,CAACO,GAAGJ,MAAM;AACtB,YAAII,EAAE,UAAW,QAAO;AACxB,YAAIJ,EAAE,UAAW,QAAO;AACxB,YAAI,CAACI,EAAE,YAAY,CAACJ,EAAE,SAAU,OAAM,IAAI,WAAW,qCAAqC;AAC1F,eAAOA,EAAE,SAAS,OAAOI,EAAE,SAAS;AAAA,MACrC,EAAC;AACD,YAAMF,IAAIL,EAAEA,EAAE,SAAS,CAAC,EAAE;AAC1B,UAAIK,KAAKA,MAAML,EAAEA,EAAE,SAAS,CAAC,EAAG,OAAM,IAAI,WAAW,4CAA4C;AACjG,aAAOA,EAAE,SAAS,CAACO,GAAGJ,MAAM;AAC3B,QAAAI,EAAE,cAAc,SAASP,EAAE,SAAS,IAAIG;AAAA,MACzC,KAAK;AAAA,QACJ,MAAMH;AAAA,QACN,WAAWG,KAAKH,EAAE,CAAC;AAAA,MACvB;AAAA,IACE,GAAEG,CAAC;AACH,SAAK,YAAY,GAAG,KAAK,OAAO;AAAA,EACjC;AAAA,EACA,WAAWI,GAAG;AACb,UAAM,EAAE,MAAMJ,MAAM,KAAK,gBAAgB;AAAA,MACxC,OAAO;AAAA,MACP,KAAK;AAAA,MACL,MAAMI,EAAE;AAAA,IACX,CAAG;AACD,WAAOyhB,GAAG7hB,CAAC;AAAA,EACZ;AAAA,EACA,eAAe;AACd,WAAO;AAAA,EACR;AAAA,EACA,mBAAmBI,GAAG;AACrB,UAAM,EAAE,OAAOJ,EAAC,IAAKI;AACrB,WAAaJ,MAAN,IAAU,KAAK,WAAWI,CAAC,IAAI,KAAK,KAAK;AAAA,MAC/C;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,EAAI,QAAQJ,CAAC,KAAK,IAAI,KAAK;AAAA,EAC1B;AAAA,EACA,mBAAmBI,GAAG;AACrB,WAAO,KAAK,mBAAmBA,CAAC;AAAA,EACjC;AAAA,EACA,8BAA8BA,GAAG;AAChC,WAAO;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,EAAIwgB,GAAGxgB,CAAC,IAAI,CAAC;AAAA,EACZ;AAAA,EACA,gBAAgBA,GAAG;AAClB,UAAMJ,IAAI,CAACA,GAAGH,GAAGK,MAAM;AACtB,YAAMC,IAAIC,EAAEJ,CAAC;AACb,UAAYG,KAAR,QAAaA,KAAKN,KAAK,EAAEK,KAAK,CAAA,GAAI,SAASC,CAAC,GAAG;AAClD,cAAMC,IAAIF,KAAA,gBAAAA,EAAI;AACd,cAAM,IAAI,WAAW,SAASF,CAAC,IAAIG,CAAC,mCAAmCC,IAAI,GAAGP,CAAC,iBAAiBO,CAAC,MAAMP,CAAC,EAAE;AAAA,MAC3G;AAAA,IACD,GAAG,IAAI,CAACG,MAAM;AACb,UAAIH;AACJ,YAAMK,IAAI;AAAA,QACT,GAAGE;AAAA,QACH,MAAMJ;AAAA,MACV,GAAMG,IAAI,KAAK,KAAK,MAAM,CAACC,GAAGD,MAAM;AAChC,YAAIA,MAAM,KAAK,KAAK,SAAS,GAAG;AAC/B,cAAIC,EAAE,WAAW;AAChB,gBAAIJ,IAAI,EAAG,OAAM,IAAI,WAAW,eAAeA,CAAC,uBAAuBI,EAAE,IAAI,EAAE;AAC/E,mBAAOP,IAAIO,EAAE,YAAY,OAAOJ,GAAG;AAAA,UACpC;AACA,iBAAOH,IAAIG,IAAII,EAAE,YAAY,QAAQA,EAAE,cAAc,IAAI,IAAI;AAAA,QAC9D;AACA,eAAO,KAAK,qBAAqBF,GAAGE,EAAE,WAAW,KAAK,MAAMP,IAAIG,IAAII,EAAE,YAAY,QAAQA,EAAE,cAAc,IAAI,IAAI;AAAA,MACnH,EAAC;AACD,UAAI,CAACD,EAAG,OAAM,IAAI,WAAW,QAAQH,CAAC,6BAA6B;AACnE,aAAO;AAAA,QACN,SAASH;AAAA,QACT,KAAKM,EAAE;AAAA,QACP,UAAUA,EAAE;AAAA,MAChB;AAAA,IACE;AACA,QAAI,EAAE,MAAM,GAAG,SAASA,GAAG,KAAK,EAAC,IAAKC;AACtC,QAAY,KAAR,MAAW;AACd,YAAMA,IAAI,EAAE,CAAC;AACb,OAAC,EAAC,SAASD,GAAG,KAAK,EAAC,IAAIC,IAAIJ,EAAE,OAAO,GAAGI,KAAA,gBAAAA,EAAG,QAAQ,GAAGJ,EAAE,WAAWG,CAAC;AAAA,IACrE,OAAO;AACN,UAAYA,KAAR,KAAW,OAAM,IAAI,WAAW,6CAA6C;AACjF;AACC,YAAe,MAAX,OAAc,OAAM,IAAI,WAAW,2CAA2C;AAClF,cAAMC,IAAI,KAAK,KAAK,MAAM,CAAC,EAAE,MAAMA,GAAG,OAAOJ,IAAI,CAAA,EAAE,MAAOI,MAAM,KAAKJ,EAAE,SAAS,CAAC,EAAC;AAClF,YAAI,CAACI,EAAG,OAAM,IAAI,WAAW,OAAO,CAAC,cAAcD,CAAC,8BAA8B;AAClF,YAAIC,EAAE,YAAYA,EAAE,YAAY,OAAOD,IAAIA,IAAIC,EAAE,YAAY,QAAQA,EAAE,cAAc,IAAI,IAAIJ,EAAE,QAAQ,CAAC,GAAG,EAAC,SAASG,GAAG,KAAK,EAAC,IAAI,EAAE,CAAC;AAAA,MACtI;AAAA,IACD;AACA,WAAO;AAAA,MACN,GAAGC;AAAA,MACH,MAAM;AAAA,MACN,SAASD;AAAA,MACT,KAAK;AAAA,IACR;AAAA,EACC;AAAA,EACA,mBAAmBC,GAAGJ,GAAG,IAAI,aAAa;AACzC,QAAI,IAAII;AACR,UAAM,EAAE,OAAOD,GAAG,WAAW,EAAC,IAAK;AACnC,WAAkBA,MAAX,WAAiB,IAAI;AAAA,MAC3B,GAAG;AAAA,MACH,OAAOygB,GAAG,CAAC;AAAA,IACd,IAAM,KAAK,qBAAqB,CAAC,GAAG,IAAI,KAAK,gBAAgB,CAAC,GAAG,MAAM,mBAAmB,GAAG5gB,GAAG,CAAC;AAAA,EAChG;AAAA,EACA,gBAAgBI,GAAG;AAClB,UAAM,EAAE,MAAMP,GAAG,OAAOK,GAAG,KAAKC,EAAC,IAAK,KAAK,mBAAmBC,CAAC,GAAG,EAAE,WAAWH,EAAC,IAAK;AACrF,WAAO8V,GAAGlW,IAAII,EAAE,SAAS,QAAQA,EAAE,cAAc,IAAI,IAAIC,GAAGC,GAAG,WAAW;AAAA,EAC3E;AACD,GACI6hB,KAAoC,cAAcD,GAAoB;AAAA,EACzE,YAAY3hB,GAAGJ,GAAG;AACjB,UAAMI,GAAGJ,CAAC;AAAA,EACX;AAAA,EACA,kBAAkBI,GAAG;AACpB,UAAM,EAAE,MAAMJ,GAAG,OAAO,GAAG,KAAK,EAAC,IAAKI,GAAGD,IAAI0gB,GAAG,CAAC,GAAG,IAAI7gB,IAAI,KAAK,UAAU,SAAS,OAAO;AAC3F,WAAO,KAAK,gBAAgB;AAAA,MAC3B,MAAM;AAAA,MACN,OAAO;AAAA,MACP,WAAWG;AAAA,MACX,KAAK;AAAA,IACR,CAAG;AAAA,EACF;AACD,GACI8hB,KAAK;AAAA,EACR,WAAW7hB,GAAG;AACb,UAAM,EAAE,MAAMJ,EAAC,IAAKI;AACpB,YAAQJ,IAAI,KAAK,KAAK;AAAA,EACvB;AAAA,EACA,cAAc,MAAM;AAAA,EACpB,mBAAmBI,GAAG;AACrB,UAAM,EAAE,OAAOJ,EAAC,IAAKI;AACrB,WAAcJ,MAAP,KAAW,KAAK,WAAWI,CAAC,IAAI,IAAI,IAAI;AAAA,EAChD;AAAA,EACA,mBAAmBA,GAAG;AACrB,WAAO,KAAK,mBAAmBA,CAAC;AAAA,EACjC;AAAA,EACA,+BAA+B,CAACA,MAAgBA,MAAV,QAAc,IAAI;AACzD,GACI8hB,KAA+B,cAAcJ,GAA8B;AAAA,EAC9E,YAAY1hB,GAAGJ,GAAG;AACjB,UAAMI,GAAGJ,CAAC,GAAG,KAAK,aAAaiiB,GAAG,YAAY,KAAK,eAAeA,GAAG,cAAc,KAAK,qBAAqBA,GAAG,oBAAoB,KAAK,qBAAqBA,GAAG,oBAAoB,KAAK,gCAAgCA,GAAG;AAAA,EAC9N;AACD,GACIE,KAAqB,cAAcJ,GAAoB;AAAA,EAC1D,YAAY3hB,GAAGJ,GAAG;AACjB,UAAMI,GAAGJ,CAAC,GAAG,KAAK,aAAaiiB,GAAG,YAAY,KAAK,eAAeA,GAAG,cAAc,KAAK,qBAAqBA,GAAG,oBAAoB,KAAK,qBAAqBA,GAAG,oBAAoB,KAAK,gCAAgCA,GAAG;AAAA,EAC9N;AACD,GACIG,KAAgB,cAAcF,GAA6B;AAAA,EAC9D,cAAc;AACb,UAAM,WAAW;AAAA,MAChB,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,IACR,CAAG;AAAA,EACF;AACD,GACIG,KAAe,cAAcF,GAAmB;AAAA,EACnD,cAAc;AACb,UAAM,UAAU,CAAC;AAAA,MAChB,MAAM;AAAA,MACN,UAAU;AAAA,QACT,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,IACA,GAAK;AAAA,MACF,MAAM;AAAA,MACN,WAAW;AAAA,IACd,CAAG,CAAC;AAAA,EACH;AACD,GACIG,KAAiB,cAAcH,GAAmB;AAAA,EACrD,cAAc;AACb,UAAM,YAAY,CAAC;AAAA,MAClB,MAAM;AAAA,MACN,OAAO,CAAC,uBAAuB,OAAO;AAAA,MACtC,UAAU;AAAA,QACT,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,IACA,GAAK;AAAA,MACF,MAAM;AAAA,MACN,OAAO,CAAC,OAAO;AAAA,MACf,UAAU;AAAA,QACT,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,aAAa,EAAE,MAAM,KAAI;AAAA,IAC5B,CAAG,CAAC;AAAA,EACH;AACD,GACII,KAAY,cAAcP,GAAkC;AAAA,EAC/D,cAAc;AACb,UAAM,OAAO,CAAC;AAAA,MACb,MAAM;AAAA,MACN,OAAO,CAAC,QAAQ;AAAA,MAChB,UAAU;AAAA,QACT,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,IACA,GAAK;AAAA,MACF,MAAM;AAAA,MACN,OAAO,CAAC,YAAY;AAAA,MACpB,WAAW;AAAA,IACd,CAAG,CAAC;AAAA,EACH;AACD,GACIQ,KAAiB,cAAcV,GAA8B;AAAA,EAChE,cAAc;AACb,UAAM,YAAY;AAAA,MACjB,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,IACR,CAAG;AAAA,EACF;AACD,GACIW,KAAgB,cAAcT,GAAkC;AAAA,EACnE,cAAc;AACb,UAAM,WAAW,CAAC;AAAA,MACjB,MAAM;AAAA,MACN,OAAO,CAAC,MAAM,IAAI;AAAA,MAClB,UAAU;AAAA,QACT,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,IACA,GAAK;AAAA,MACF,MAAM;AAAA,MACN,OAAO,CAAC,MAAM,KAAK;AAAA,MACnB,WAAW;AAAA,IACd,CAAG,CAAC;AAAA,EACH;AAAA,EACA,cAAc5hB,GAAG;AAChB,QAAI,EAAE,KAAKJ,GAAG,SAAS,EAAC,IAAKI;AAC7B,WAAeJ,MAAR,QAAcA,IAAI,oBAA4BA,MAAR,QAAcA,IAAI,YAAY;AAAA,MAC1E,KAAKA;AAAA,MACL,SAAS;AAAA,IACZ;AAAA,EACC;AAAA,EACA,oBAAoB;AACnB,WAAO;AAAA,EACR;AAAA,EACA,4BAA4B;AAC3B,WAAO;AAAA,EACR;AACD,GACI0iB,KAAiB,cAAcV,GAAkC;AAAA,EACpE,cAAc;AACb,UAAM,YAAY;AAAA,MACjB;AAAA,QACC,MAAM;AAAA,QACN,UAAU;AAAA,UACT,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,QACI,aAAa;AAAA,UACZ,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,MACA;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,UAAU;AAAA,UACT,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,QACI,aAAa;AAAA,UACZ,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,MACA;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,UAAU;AAAA,UACT,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,QACI,aAAa;AAAA,UACZ,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,MACA;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,UAAU;AAAA,UACT,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,QACI,aAAa;AAAA,UACZ,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,MACA;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,UAAU;AAAA,UACT,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,QACI,aAAa;AAAA,UACZ,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,MACA;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,OAAO;AAAA,UACN;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACL;AAAA,QACI,UAAU;AAAA,UACT,MAAM;AAAA,UACN,OAAO;AAAA,UACP,KAAK;AAAA,QACV;AAAA,MACA;AAAA,MACG;AAAA,QACC,MAAM;AAAA,QACN,OAAO;AAAA,UACN;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACL;AAAA,QACI,WAAW;AAAA,MACf;AAAA,IACA,CAAG,GAAG,KAAK,mBAAmB;AAAA,EAC7B;AAAA,EACA,cAAc5hB,GAAGJ,GAAG;AACnB,UAAM,EAAE,KAAK,GAAG,SAAS,MAAMI,GAAG,EAAE,MAAMD,EAAC,IAAKH;AAChD,WAAO,KAAK,KAAK,MAAM,CAACI,MAAMA,EAAE,SAAS,MAAM;AAAA,MAC9C,KAAK;AAAA,MACL,SAAS;AAAA,IACZ,IAAMD,IAAI,IAAI;AAAA,MACX,KAAK;AAAA,MACL,SAAS,IAAIA;AAAA,IAChB,IAAM;AAAA,MACH,KAAK;AAAA,MACL,SAASA;AAAA,IACZ;AAAA,EACC;AACD,GACIwiB,KAAoB,cAAczB,GAAW;AAAA,EAChD,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,eAAe;AAAA,EAC1C;AAAA,EACA,WAAW9gB,GAAGJ,GAAG;AAChB,UAAM,IAAI,KAAK,aAAaI,EAAE,MAAMJ,CAAC;AACrC,WAAc,OAAO,QAAQ,CAAC,EAAE,WAAzB;AAAA,EACR;AAAA,EACA,aAAaI,GAAGJ,GAAG;AAClB,WAAO,KAAK,WAAWI,GAAGJ,CAAC,IAAI,KAAK;AAAA,EACrC;AAAA,EACA,qBAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EACA,qBAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EACA,8BAA8BI,GAAG;AAChC,WAAO;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,EAAI,SAASA,CAAC,IAAI,KAAK;AAAA,EACtB;AAAA,EACA,wBAAwBA,GAAGJ,GAAG;AAC7B,UAAM,IAAI;AAAA,MACT,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,MACjB,MAAM,CAAC,MAAM,IAAI;AAAA,IACpB,EAAII,CAAC,KAAK,CAAC,MAAM,IAAI;AACnB,WAAOJ,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;AAAA,EAC3B;AAAA,EACA,aAAaI,GAAGJ,GAAG;AAClB,QAAeI,MAAX,OAAc,OAAM,IAAI,UAAU,cAAc;AACpD,UAAM,IAAI,KAAK,UAAU;AAAA,MACxB,MAAM;AAAA,MACN,cAAcA;AAAA,MACd,IAAI,KAAK;AAAA,IACZ,CAAG,GAAG,IAAIJ,EAAE,IAAI,CAAC;AACf,QAAI,EAAG,QAAO;AACd,UAAMG,IAAI,KAAK,aAAY,GAAI,IAAI,CAACC,GAAGJ,MAAM;AAC5C,YAAMH,IAAImhB,GAAG;AAAA,QACZ,SAAS5gB;AAAA,QACT,UAAU;AAAA,QACV,QAAQ;AAAA,MACZ,CAAI,GAAGF,IAAI,IAAI,KAAKL,CAAC;AAClB,MAAAK,EAAE,WAAWF,IAAI,CAAC;AAClB,YAAMC,IAAIE,EAAE,cAAcD,CAAC,GAAGK,IAAIN,EAAE,MAAM,CAACG,MAAkBA,EAAE,SAAd,QAAkB,EAAG,OAAOI,IAAI,CAACP,EAAE,MAAM,CAACG,MAAgBA,EAAE,SAAZ,MAAgB,EAAG,OAAOE,IAAIL,EAAE,MAAM,CAACG,MAAwBA,EAAE,SAApB,cAAwB;AACtK,UAAIQ;AACJ,UAAeN,MAAX,OAAc,OAAM,IAAI,WAAW,0DAA0D,KAAK,EAAE,6CAA6C;AACrJ,aAAOM,KAAI,CAACN,EAAE,OAAO;AAAA,QACpB,qBAAqBC;AAAA,QACrB,aAAaC;AAAA,QACb,sBAAsBI;AAAA,MAC1B;AAAA,IACE;AACA,QAAIL,IAAI,IAAI,EAAE,qBAAqB,GAAG,aAAaD,GAAG,sBAAsBM,EAAC,IAAK,EAAER,GAAGG,CAAC;AACxF,IAAQ,MAAR,QAAcA,KAAK,IAAI,EAAC,qBAAqB,GAAG,aAAaD,EAAC,IAAI,EAAEF,GAAGG,CAAC,IAAIA,KAAKD,IAAI;AACrF,UAAMG,IAAI,CAAA;AACV,QAAIV,GAAGD,GAAGkB,IAAI,GAAGX,IAAI;AACrB;AACC,OAAC,EAAC,qBAAqB,GAAG,aAAaC,GAAG,sBAAsBM,EAAC,IAAI,EAAER,GAAGG,CAAC,IAAIR,MAAMU,EAAEX,CAAC,EAAE,cAAcC,IAAI,KAAKO,IAAIM,MAAMR,IAAIC,IAAI,MAAMI,EAAE,CAAC,IAAI,EAAE,YAAYO,IAAG,GAAIT,KAAK,KAAKR,IAAIO,GAAGR,IAAI;AAAA,WACpL,CAACO;AACR,WAAOI,EAAEX,CAAC,EAAE,cAAcC,IAAI,KAAKO,GAAGN,EAAE,IAAI,GAAGS,CAAC,GAAGA;AAAA,EACpD;AAAA,EACA,gBAAgBL,GAAG;AAClB,UAAM,EAAE,MAAMJ,GAAG,OAAO,EAAC,IAAKI;AAC9B,WAAO;AAAA,MACN,MAAMJ;AAAA,MACN,OAAO,KAAK,KAAK,KAAK,IAAI;AAAA,MAC1B,KAAK;AAAA,IACR;AAAA,EACC;AAAA,EACA,mBAAmBI,GAAGJ,GAAG,IAAI,aAAa,IAAI,IAAI;AACjD,QAAI,EAAE,MAAMG,GAAG,OAAO,GAAG,YAAYI,GAAG,KAAK,GAAG,WAAWD,EAAC,IAAKF;AACjE,QAAeD,MAAX,OAAc,OAAM,IAAI,UAAU,wBAAwB;AAC9D,QAAI,GAAG;AACN,UAAII,KAAeA,MAAV,MAAa,OAAM,IAAI,WAAW,iCAAiCA,CAAC,EAAE;AAC/E,YAAMH,IAAIygB,GAAG,GAActgB,MAAX,MAAY,GAAGV,IAAI,GAAG,CAAC,GAAGU,KAAK,EAAE,IAAIL,IAAI,KAAK,aAAaC,GAAGH,CAAC,EAAEH,CAAC;AAClF,UAAeK,MAAX,OAAc,OAAM,IAAI,WAAW,mBAAmBL,CAAC,oBAAoBM,CAAC,EAAE;AAClF,aAAO,IAAID,EAAE,YAAY;AAAA,QACxB,MAAMC;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,QACL,WAAWC;AAAA,MACf;AAAA,IACE;AACA,QAAI,KAAK,qBAAqBA,CAAC,GAAc,MAAX,QAAc;AAC/C,YAAMA,IAAI,KAAK,aAAaD,GAAGH,CAAC;AAChC,UAAIE,IAAII,EAAE,QAAQ,WAAW,CAACF,MAAcA,MAAR,MAAY,QAAQ,GAAE;AAC1D,MAAQF,EAAE,CAAC,MAAX,QAAiBA,IAAIA,EAAE,MAAM,CAAC;AAC9B,UAAIK,IAAIH,EAAEF,CAAC;AACX,UAAI,IAAIK,KAAKA,EAAE,YAAuB,MAAX,UAAgBD,EAAE,SAAS,GAAG,KAAeA,KAAV,UAA+B,MAAhB,aAAmB;AAC/F,cAAMN,IAAI,CAACM,EAAE,QAAQ,YAAY,EAAE;AACnC,QAAAC,IAAIH,EAAEJ,CAAC,GAAGO,MAAM,IAAIA,EAAE,YAAYD,IAAIugB,GAAG7gB,CAAC;AAAA,MAC3C;AACA,UAAe,MAAX,OAAc,OAAM,IAAI,WAAW,mBAAmBM,CAAC,oBAAoBH,CAAC,EAAE;AAAA,IACnF,WAAsBG,MAAX,QAAc;AACxB,YAAMF,IAAI,KAAK,aAAaD,GAAGH,CAAC,GAAGE,IAAI,OAAO,QAAQE,CAAC,GAAGG,IAAIL,EAAE;AAChE,MAAa,MAAb,YAAkB0d,GAAG,GAAG,GAAGrd,CAAC,GAAGqd,GAAG,GAAG,GAAG,KAAK,mBAAkB,CAAE,MAAM,IAAI1H,GAAG,GAAG,GAAG3V,CAAC,GAAG,IAAI2V,GAAG,GAAG,GAAG,KAAK,mBAAkB,CAAE;AAC9H,YAAMtV,IAAIV,EAAE,MAAM,CAACE,MAAMA,EAAE,CAAC,EAAE,eAAe,EAAC;AAC9C,UAAeQ,MAAX,OAAc,OAAM,IAAI,WAAW,iBAAiB,CAAC,oBAAoBT,CAAC,EAAE;AAChF,MAAAG,IAAIugB,GAAG,CAACjgB,EAAE,CAAC,EAAE,QAAQ,OAAO,EAAE,GAAUA,EAAE,CAAC,EAAE,QAAQ,KAAK,MAAzB,EAA0B;AAAA,IAC5D,OAAO;AACN,YAAMR,IAAI,KAAK,aAAaD,GAAGH,CAAC;AAChC,UAAIH,IAAIS,EAAE,QAAQ,WAAW,CAACF,MAAcA,MAAR,MAAY,QAAQ,GAAE;AAC1D,MAAQP,EAAE,CAAC,MAAX,QAAiBA,IAAIA,EAAE,MAAM,CAAC;AAC9B,YAAMK,IAAIE,EAAEP,CAAC;AACb,UAAI,CAACK,EAAG,OAAM,IAAI,WAAW,uBAAuBI,CAAC,oBAAoBH,CAAC,EAAE;AAC5E,UAAI,MAAMD,EAAE,WAAY,OAAM,IAAI,WAAW,aAAaI,CAAC,gCAAgC,CAAC,oBAAoBH,CAAC,EAAE;AAAA,IACpH;AACA,WAAO;AAAA,MACN,GAAGC;AAAA,MACH,MAAMD;AAAA,MACN,OAAO;AAAA,MACP,WAAWG;AAAA,MACX,KAAK;AAAA,IACR;AAAA,EACC;AACD,GACIsiB,KAAgB,cAAcD,GAAkB;AAAA,EACnD,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK;AAAA,EAChC;AACD,GACIE,KAAc,cAAcF,GAAkB;AAAA,EACjD,cAAc;AACb,UAAM,GAAG,SAAS,GAAG,KAAK,KAAK;AAAA,EAChC;AACD,GACIG,KAAiB,MAAM;AAAA,EAC1B,YAAY1iB,GAAG;AACd,SAAK,SAASA;AAAA,EACf;AAAA,EACA,YAAYA,GAAG;AACd,WAAO,KAAK,OAAO,UAAUA,EAAE,SAAS,MAAM,IAAI,CAAC,OAAO,SAAS,IAAI,CAAA;AAAA,EACxE;AAAA,EACA,cAAcA,GAAG;AAChB,QAAoB,KAAK,OAAO,iBAA5B,aAA0C;AAC7C,YAAMJ,IAAI,IAAI+gB,GAAc;AAC5B,MAAAD,GAAG1gB,GAAG,QAAQ,KAAK,OAAO,aAAa,EAAE,MAAMA,EAAE,QAAQ,KAAI,GAAIJ,CAAC,CAAC;AAAA,IACpE;AAAA,EACD;AAAA,EACA,UAAUI,GAAGJ,GAAG;AACf,UAAM,IAAI,IAAI+gB,GAAc,GAAI,IAAI,KAAK,OAAO,kBAAkB3gB,GAAGJ,GAAG,CAAC;AACzE,WAAO,EAAE,UAAU,CAAC,GAAG;AAAA,EACxB;AAAA,EACA,2BAA2BI,GAAGJ,GAAG;AAChC,UAAM,IAAI,IAAI+gB,GAAc,GAAI,IAAI,KAAK,OAAO,mBAAmB3gB,GAAGJ,GAAG,CAAC;AAC1E,WAAO,EAAE,UAAU,CAAC,GAAG;AAAA,EACxB;AAAA,EACA,kBAAkBI,GAAG;AACpB,UAAMJ,IAAoB,oBAAI,IAAG;AACjC,aAAS,IAAI,GAAG,IAAII,EAAE,QAAQ,KAAK;AAClC,YAAM,IAAIA,EAAE,CAAC;AACb,cAAQJ,EAAE,IAAI,CAAC,GAAG,GAAC;AAAA,QAClB,KAAK;AACJ,UAAAA,EAAE,IAAI,SAAS,GAAGA,EAAE,IAAI,MAAM;AAC9B;AAAA,QACD,KAAK;AACJ,UAAAA,EAAE,IAAI,KAAK,GAAGA,EAAE,IAAI,MAAM;AAC1B;AAAA,QACD,KAAK;AACJ,UAAAA,EAAE,IAAI,KAAK,GAAGA,EAAE,IAAI,SAAS;AAC7B;AAAA,QACD,KAAK;AACJ,UAAAA,EAAE,IAAI,WAAW,GAAG,KAAK,OAAO,qBAAqBA,EAAE,IAAI,KAAK,GAAGA,EAAE,IAAI,SAAS;AAClF;AAAA,QACD,KAAK;AACJ,UAAAA,EAAE,IAAI,OAAO,GAAG,KAAK,OAAO,qBAAqBA,EAAE,IAAI,KAAK,GAAGA,EAAE,IAAI,SAAS;AAC9E;AAAA,QACD,KAAK;AAAO,eAAK,OAAO,qBAAqBA,EAAE,IAAI,KAAK,GAAGA,EAAE,IAAI,SAAS;AAAA,MAC9E;AAAA,IACE;AACA,WAAOwgB,GAAGxgB,CAAC;AAAA,EACZ;AAAA,EACA,QAAQI,GAAG,EAAE,OAAOJ,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAMG,EAAC,GAAI,GAAG;AACzD,UAAMI,IAAIwgB,GAAe,kBAAkB3gB,CAAC,GAAG,IAAI,KAAK,OAAO,kBAAkBA,GAAGG,CAAC,GAAGD,IAAI,KAAK,OAAO,YAAY,GAAG;AAAA,MACtH,OAAON;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAMG;AAAA,IACT,GAAK,GAAGI,CAAC,GAAGK,IAAI,KAAK,OAAO,kBAAkBN,GAAG,aAAaC,CAAC;AAC7D,WAAOwgB,GAAe,kBAAkBngB,CAAC,KAAK,IAAImgB,GAAexgB,CAAC,EAAE,UAAUK,CAAC,GAAGA;AAAA,EACnF;AAAA,EACA,UAAUR,GAAGJ,GAAG,GAAG;AAClB,UAAM,IAAI+gB,GAAe,kBAAkB3gB,CAAC,GAAGD,IAAI4gB,GAAe,kBAAkB/gB,CAAC,GAAG,IAAI,KAAK,OAAO,kBAAkBI,GAAG,CAAC,GAAGG,IAAI,KAAK,OAAO,kBAAkBP,GAAGG,CAAC;AACvK,WAAO,KAAK,OAAO,cAAc,GAAGI,GAAG,GAAG,CAAC;AAAA,EAC5C;AAAA,EACA,UAAUH,GAAGJ,GAAG;AACf,UAAM,IAAI+gB,GAAe,kBAAkB3gB,CAAC,GAAG,IAAI,KAAK,OAAO,kBAAkBA,GAAG,CAAC;AACrF,QAAIJ,EAAE,cAAc,EAAE,YAAY0gB,GAAG,QAAQ,UAAUtgB,GAAG,EAAE,WAAW,GAAE,CAAE,EAAE,YAAYJ,EAAE,WAAW;AACrG,YAAMI,IAAI,KAAK,OAAO,oBAAoB,CAAC;AAC3C,QAAE,YAAY,KAAK,OAAO,kBAAkBA,GAAG,GAAG,CAAC,IAAI;AAAA,IACxD;AACA,QAAIJ,EAAE,eAAe,EAAE,aAAaygB,GAAG,KAAK,OAAO,IAAIrgB,CAAC,IAAI,EAAE,aAAa,GAAGJ,EAAE,gBAAgB,EAAE,cAAc,KAAK,OAAO,YAAY,GAAG,CAAC,IAAIA,EAAE,YAAY;AAC7J,YAAMI,IAAI,KAAK,OAAO,oBAAoB,CAAC,GAAGJ,IAAI,KAAK,OAAO,YAAYI,GAAG,EAAE,OAAO,EAAC,GAAI,aAAa,CAAC;AACzG,QAAE,aAAa,KAAK,OAAO,kBAAkBA,GAAGJ,GAAG,CAAC;AAAA,IACrD;AACA,WAAOA,EAAE,iBAAiB,EAAE,eAAe,KAAK,OAAO,aAAa,GAAG,CAAC,IAAIA,EAAE,eAAe,EAAE,aAAa,KAAK,OAAO,WAAW,GAAG,CAAC,IAAI;AAAA,EAC5I;AAAA,EACA,oBAAoB;AACnB,WAAO,KAAK,OAAO,kBAAiB;AAAA,EACrC;AAAA,EACA,4BAA4B;AAC3B,WAAO,KAAK,OAAO,0BAAyB;AAAA,EAC7C;AACD;AACA,WAAWI,KAAK;AAAA,EACf+gB;AAAA,EACAQ;AAAA,EACAW;AAAA,EACAF;AAAA,EACAC;AAAA,EACAO;AAAA,EACAC;AAAA,EACAN;AAAA,EACAX;AAAA,EACAY;AAAA,EACAC;AAAA,EACAC;AAAA,EACArB;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AACD,GAAG;AACF,QAAM1hB,IAAI,IAAII,EAAC;AACf,EAAAsgB,GAAG1gB,EAAE,EAAE,IAAI,IAAI8iB,GAAe9iB,CAAC;AAChC;AACAyQ,GAAG,iBAAiB,SAASrQ,GAAG;AAC/B,SAAOsgB,GAAGtgB,CAAC;AACZ,EAAC;AACD,IAAI2iB,KAAK,KAAK;AACd,SAASC,GAAG5iB,GAAGJ,GAAG;AACjB,MAAI,IAAIqQ,EAAGjQ,GAAGJ,CAAC;AACf,SAAqB,OAAO,KAArB,eAA2B,IAAI,IAAI+iB,GAAG1S,EAAGjQ,GAAGuC,EAAC,GAAG,EAAE0N,EAAGjQ,GAAG+B,EAAC,CAAC,CAAC,IAAG,SAAS/B,GAAGJ,GAAGH,GAAG;AACtF,UAAMK,IAAIsC,GAAEpC,CAAC;AACb,QAAeF,MAAX,OAAc,OAAM,IAAI,UAAU,uCAAuC;AAC7E,QAAeA,EAAEF,CAAC,MAAd,OAAiB,OAAM,IAAI,UAAU,kBAAkBA,CAAC,oBAAoB;AAChF,IAAAE,EAAEF,CAAC,IAAIH;AAAA,EACR,GAAEO,GAAGJ,GAAG,CAAC,IAAI;AACd;AACA,SAASijB,GAAG7iB,GAAG;AACd,SAAOgQ,GAAGhQ,GAAGoB,EAAC;AACf;AACA,IAAI0hB,KAAqB,MAAM;AAAA,EAC9B,YAAY9iB,IAAI,QAAQJ,IAAI,QAAQ;AACnC,KAAC,SAASI,GAAGJ,GAAGH,GAAG;AAClB,YAAMK,IAAeL,MAAX;AACV,UAAI;AACJ,UAAIK,GAAG;AACN,cAAME,IAAI;AAAA,UACT;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACL;AACI,aAAI,SAASA,GAAG;AACf,cAAYA,KAAR,KAAW,OAAM,IAAI,UAAU,uBAAuBA,CAAC,EAAE;AAC7D,iBAAO,OAAOA,CAAC;AAAA,QAChB,GAAEP,CAAC;AACH,cAAMG,IAAI,uBAAO,OAAO,IAAI;AAC5B,iBAASH,IAAI,GAAGA,IAAIO,EAAE,QAAQP,KAAK;AAClC,gBAAMK,IAAIE,EAAEP,CAAC;AACb,iBAAO,UAAU,eAAe,KAAK,GAAGK,CAAC,MAAMF,EAAEE,CAAC,IAAI,EAAEA,CAAC;AAAA,QAC1D;AACA,YAAIF;AAAA,MACL,MAAO,KAAI,uBAAO,OAAO,IAAI;AAC7B,YAAMC,IAAI,IAAI8iB,GAAG/iB,GAAG,CAAC,GAAGO,IAAIN,EAAE,gBAAe;AAC7C,UAAIkQ,GAAG/P,CAAC,GAAGF,GAAG;AACb,cAAMF,IAAI,OAAO,OAAO,uBAAO,OAAO,IAAI,GAAGO,CAAC;AAC9C,mBAAWH,KAAKJ,EAAG,QAAO,UAAU,eAAe,KAAK,GAAGI,CAAC,KAAK,OAAOJ,EAAEI,CAAC;AAC3E,QAAAJ,EAAE,SAAS,EAAE,QAAQA,EAAE,YAAY,EAAE,WAAWsQ,GAAGlQ,GAAG+B,IAAGnC,CAAC;AAAA,MAC3D,MAAOsQ,CAAAA,GAAGlQ,GAAG+B,IAAG,CAAC;AACjBmO,MAAAA,GAAGlQ,GAAGuC,IAAGpC,EAAE,MAAM,GAAG+P,GAAGlQ,GAAGoB,IAAGvB,CAAC,GAAGqQ,GAAGlQ,GAAG4P,IAAGzP,EAAE,QAAQ,GAAG+P,GAAGlQ,GAAG4B,IAAGzB,EAAE,QAAQ,GAAG+P,GAAGlQ,GAAGsC,IAAGygB,EAAE,GAAG7S,GAAGlQ,GAAG0P,IAAGsT,EAAE,GAAG9S,GAAGlQ,GAAG2P,IAAGsT,EAAE,GAAG/S,GAAGlQ,GAAGwB,IAAG0hB,EAAE,GAAGhT,GAAGlQ,GAAGgC,IAAGmhB,EAAE,GAAGjT,GAAGlQ,GAAGuB,IAAG6hB,EAAE;AAC9J,YAAMhjB,IAAIN,IAAI,EAAE,WAAW;AAC3B,UAAeM,MAAX,OAAc8P,CAAAA,GAAGlQ,GAAGU,IAAGP,EAAE,QAAQ;AAAA,WAChC;AACJ,cAAMP,IAAIkT,GAAG1S,CAAC;AACd,YAAIR,EAAE,WAAW,GAAG,EAAG,OAAM,IAAI,WAAW,8DAA8D;AAC1GsQ,QAAAA,GAAGlQ,GAAGU,IAAG8S,GAAG5T,CAAC,CAAC;AAAA,MACf;AAAA,IACD,GAAG,MAAMI,GAAGJ,CAAC;AAAA,EACd;AAAA,EACA,IAAI,SAAS;AACZ+U,IAAAA,EAAG,MAAMkO,EAAE;AACX,UAAM7iB,IAAIqjB,GAAG,KAAK,IAAI;AACtB,WAAO,OAAO,iBAAiBrjB,GAAG;AAAA,MACjC,QAAQ;AAAA,QACP,OAAO;AAAA,QACP,YAAY;AAAA,QACZ,UAAU;AAAA,QACV,cAAc;AAAA,MAClB;AAAA,MACG,MAAM;AAAA,QACL,OAAO;AAAA,QACP,YAAY;AAAA,QACZ,UAAU;AAAA,QACV,cAAc;AAAA,MAClB;AAAA,IACA,CAAG,GAAGA;AAAA,EACL;AAAA,EACA,YAAYA,GAAGJ,GAAG;AACjB,WAAO+U,EAAG,MAAMkO,EAAE,GAAGS,GAAG,KAAK,MAAMtjB,GAAGJ,CAAC;AAAA,EACxC;AAAA,EACA,cAAcI,MAAMJ,GAAG;AACtB,WAAO+U,EAAG,MAAMkO,EAAE,GAAGU,GAAG,KAAK,MAAMvjB,GAAG,GAAGJ,CAAC;AAAA,EAC3C;AAAA,EACA,mBAAmBI,GAAGJ,GAAG;AACxB,WAAO+U,EAAG,MAAMkO,EAAE,GAAGW,GAAG,KAAK,MAAMxjB,GAAGJ,CAAC;AAAA,EACxC;AAAA,EACA,kBAAkB;AACjB,WAAO+U,EAAG,MAAMkO,EAAE,GAAGY,GAAG,KAAK,IAAI;AAAA,EAClC;AACD;AACA,mBAAmBd,GAAG,aAAa,OAAOG,GAAmB,UAAU,eAAe,wBAAwBH,GAAG,aAAa,OAAOG,GAAmB,UAAU;AAClK,IAAIY,KAAK,SAAS1jB,IAAI,QAAQJ,IAAI,QAAQ;AACzC,SAAO,IAAIkjB,GAAmB9iB,GAAGJ,CAAC;AACnC;AACA,SAAS6jB,KAAK;AACb,QAAMzjB,IAAIiQ,EAAG,MAAM7O,EAAC,EAAE,gBAAe;AACrC,SAAOpB,EAAE,WAAWiQ,EAAG,MAAMvP,EAAC,GAAGV;AAClC;AACA,SAASqjB,GAAGrjB,MAAMJ,GAAG;AACpB,MAAI,GAAG,GAAGG,IAAI4jB,GAAG3jB,GAAG,IAAI;AACxB,SAAOD,EAAE,aAAa,IAAIA,EAAE,WAAW,IAAI,CAAC6c,GAAG7c,EAAE,SAAS,OAAO,CAAC,MAAM,IAAIkQ,EAAG,MAAM7O,EAAC,GAAG,IAAI,CAACpB,GAAG,GAAGJ,CAAC,IAAI,EAAE,OAAO,GAAG,CAAC;AACvH;AACA,SAAS2jB,GAAGvjB,MAAMJ,GAAG;AACpB,MAAI,GAAG,GAAGG,IAAI4jB,GAAG3jB,GAAG,IAAI;AACxB,SAAOD,EAAE,aAAa,IAAIA,EAAE,WAAW,IAAI,CAAC6c,GAAG7c,EAAE,SAAS,OAAO,CAAC,MAAM,IAAIkQ,EAAG,MAAM7O,EAAC,GAAG,IAAI,CAACpB,GAAG,GAAGJ,CAAC,IAAI,EAAE,cAAc,GAAG,CAAC;AAC9H;AACA,SAAS0jB,GAAGtjB,GAAGJ,GAAG;AACjB,MAAeI,MAAX,UAA2BJ,MAAX,OAAc,OAAM,IAAI,UAAU,qDAAqD;AAC3G,QAAM,IAAIgkB,GAAG5jB,CAAC,GAAG,IAAI4jB,GAAGhkB,CAAC;AACzB,MAAIG,GAAG,IAAI,CAAC,GAAG,CAAC;AAChB,MAAI8jB,GAAG,CAAC,MAAMA,GAAG,CAAC,EAAG,OAAM,IAAI,UAAU,qEAAqE;AAC9G,MAAIA,GAAG,CAAC,GAAG;AACV,QAAI,CAACC,GAAG,GAAG,CAAC,EAAG,OAAM,IAAI,UAAU,qEAAqE;AACxG,UAAM,EAAE,SAAS9jB,GAAG,WAAWJ,EAAC,IAAK+jB,GAAG,GAAG,IAAI,GAAG,EAAE,SAASxjB,GAAG,WAAWC,EAAC,IAAKujB,GAAG,GAAG,IAAI;AAC3F,IAAA/jB,MAAMG,IAAIH,GAAG,IAAI,CAACgd,GAAG5c,GAAG,OAAO,GAAG4c,GAAGzc,GAAG,OAAO,CAAC;AAAA,EACjD;AACA,SAAOJ,MAAMA,IAAIkQ,EAAG,MAAM7O,EAAC,IAAIrB,EAAE,YAAY,GAAG,CAAC;AAClD;AACA,SAASyjB,GAAGxjB,GAAGJ,GAAG;AACjB,MAAeI,MAAX,UAA2BJ,MAAX,OAAc,OAAM,IAAI,UAAU,qDAAqD;AAC3G,QAAM,IAAIgkB,GAAG5jB,CAAC,GAAG,IAAI4jB,GAAGhkB,CAAC;AACzB,MAAIG,GAAG,IAAI,CAAC,GAAG,CAAC;AAChB,MAAI8jB,GAAG,CAAC,MAAMA,GAAG,CAAC,EAAG,OAAM,IAAI,UAAU,4EAA4E;AACrH,MAAIA,GAAG,CAAC,GAAG;AACV,QAAI,CAACC,GAAG,GAAG,CAAC,EAAG,OAAM,IAAI,UAAU,4EAA4E;AAC/G,UAAM,EAAE,SAAS9jB,GAAG,WAAWJ,EAAC,IAAK+jB,GAAG,GAAG,IAAI,GAAG,EAAE,SAASxjB,GAAG,WAAWC,EAAC,IAAKujB,GAAG,GAAG,IAAI;AAC3F,IAAA/jB,MAAMG,IAAIH,GAAG,IAAI,CAACgd,GAAG5c,GAAG,OAAO,GAAG4c,GAAGzc,GAAG,OAAO,CAAC;AAAA,EACjD;AACA,SAAOJ,MAAMA,IAAIkQ,EAAG,MAAM7O,EAAC,IAAIrB,EAAE,mBAAmB,GAAG,CAAC;AACzD;AACA,SAASgkB,GAAG/jB,IAAI,IAAIJ,IAAI,CAAA,GAAI;AAC3B,QAAM,IAAI,OAAO,OAAO,CAAA,GAAII,CAAC,GAAG,IAAI;AAAA,IACnC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACC,WAASA,IAAI,GAAGA,IAAI,EAAE,QAAQA,KAAK;AAClC,UAAMD,IAAI,EAAEC,CAAC;AACb,MAAED,CAAC,IAAIA,KAAKH,IAAIA,EAAEG,CAAC,IAAI,EAAEA,CAAC,GAAU,EAAEA,CAAC,MAAV,MAA0B,EAAEA,CAAC,MAAd,UAAmB,OAAO,EAAEA,CAAC;AAAA,EAC1E;AACA,SAAO;AACR;AACA,SAASmjB,GAAGljB,GAAG;AACd,QAAMJ,IAAImkB,GAAG/jB,GAAG;AAAA,IACf,MAAM;AAAA,IACN,OAAO;AAAA,IACP,KAAK;AAAA,IACL,SAAS;AAAA,IACT,cAAc;AAAA,IACd,WAAW;AAAA,EACb,CAAE;AACD,MAAeJ,EAAE,cAAb,UAAqCA,EAAE,cAAb,WAA2B,OAAOA,EAAE,WAAW,OAAO,OAAOA,GAAG;AAAA,IAC7F,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV,CAAE,IAAI,CAACokB,GAAGpkB,CAAC,GAAG;AACZ,QAAIqkB,GAAGjkB,CAAC,EAAG,OAAM,IAAI,UAAU,kDAAkD,OAAO,KAAKA,CAAC,CAAC,GAAG;AAClG,WAAO,OAAOJ,GAAG;AAAA,MAChB,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,IACX,CAAG;AAAA,EACF;AACA,SAAOA;AACR;AACA,SAASojB,GAAGhjB,GAAG;AACd,QAAMJ,IAAI;AAAA,IACT,OAAO;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,IACV;AAAA,IACE,QAAQ;AAAA,MACP,MAAM;AAAA,MACN,OAAO;AAAA,IACV;AAAA,IACE,MAAM;AAAA,MACL,MAAM;AAAA,MACN,OAAO;AAAA,IACV;AAAA,IACE,MAAM;AAAA,MACL,MAAM;AAAA,MACN,OAAO;AAAA,IACV;AAAA,EACA,GAAI,IAAImkB,GAAG/jB,GAAG;AAAA,IACZ,KAAK;AAAA,IACL,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,WAAW;AAAA,IACX,cAAc;AAAA,IACd,WAAW;AAAA,EACb,CAAE;AACD,MAAI,eAAe,KAAK,EAAE,WAAW;AACpC,UAAMA,IAAI,EAAE;AACZ,WAAO,EAAE,WAAW,OAAO,OAAO,GAAGJ,EAAEI,CAAC,CAAC;AAAA,EAC1C;AACA,MAAI,EAAE,UAAU,KAAK,WAAW,KAAK,SAAS,IAAI;AACjD,QAAIikB,GAAGjkB,CAAC,EAAG,OAAM,IAAI,UAAU,8CAA8C,OAAO,KAAKA,CAAC,CAAC,GAAG;AAC9F,WAAO,OAAO,GAAG;AAAA,MAChB,MAAM;AAAA,MACN,OAAO;AAAA,IACV,CAAG;AAAA,EACF;AACA,SAAO;AACR;AACA,SAASijB,GAAGjjB,GAAG;AACd,QAAMJ,IAAI;AAAA,IACT,OAAO;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,IACE,QAAQ;AAAA,MACP,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,IACE,MAAM;AAAA,MACL,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,IACE,MAAM;AAAA,MACL,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,EACA,GAAI,IAAImkB,GAAG/jB,GAAG;AAAA,IACZ,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,WAAW;AAAA,IACX,cAAc;AAAA,IACd,WAAW;AAAA,EACb,CAAE;AACD,MAAI,eAAe,KAAK,EAAE,WAAW;AACpC,UAAMA,IAAI,EAAE;AACZ,WAAO,EAAE,WAAW,OAAO,OAAO,GAAGJ,EAAEI,CAAC,CAAC;AAAA,EAC1C;AACA,MAAI,EAAE,WAAW,MAAM,EAAE,SAAS,IAAI;AACrC,QAAIikB,GAAGjkB,CAAC,EAAG,OAAM,IAAI,UAAU,6CAA6C,OAAO,KAAKA,CAAC,CAAC,GAAG;AAC7F,WAAO,OAAO,GAAG;AAAA,MAChB,OAAO;AAAA,MACP,KAAK;AAAA,IACR,CAAG;AAAA,EACF;AACA,SAAO;AACR;AACA,SAAS+iB,GAAG/iB,GAAG;AACd,QAAMJ,IAAImkB,GAAG/jB,GAAG;AAAA,IACf,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,cAAc;AAAA,IACd,WAAW;AAAA,EACb,CAAE;AACD,MAAI,CAACkkB,GAAGtkB,CAAC,GAAG;AACX,QAAIqkB,GAAGjkB,CAAC,EAAG,OAAM,IAAI,UAAU,yCAAyC,OAAO,KAAKA,CAAC,CAAC,GAAG;AACzF,WAAO,OAAOJ,GAAG;AAAA,MAChB,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,IACR,CAAG;AAAA,EACF;AACA,SAAOA;AACR;AACA,SAASujB,GAAGnjB,GAAG;AACd,QAAMJ,IAAImkB,GAAG/jB,GAAG,EAAE,cAAc,GAAE,CAAE;AA4BpC,OA3BgBJ,EAAE,cAAb,UAAqCA,EAAE,cAAb,YAA4B,OAAOA,EAAE,WAAW,OAAO,OAAOA,GAAG;AAAA,IAC/F,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV,CAAE,GAAGA,EAAE,eAAY,OAAO,OAAOA,GAAG;AAAA,IAClC,OAAO;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,IACE,QAAQ;AAAA,MACP,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,IACE,MAAM;AAAA,MACL,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,IACR;AAAA,IACE,MAAM;AAAA,MACL,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,MACL,SAAS;AAAA,IACZ;AAAA,EACA,EAAGA,EAAE,SAAS,CAAC,GAAG,OAAOA,EAAE,YACtB,CAACokB,GAAGpkB,CAAC,KAAK,CAACskB,GAAGtkB,CAAC,GAAG;AACrB,QAAIqkB,GAAGjkB,CAAC,EAAG,OAAM,IAAI,UAAU,6CAA6C,OAAO,KAAKA,CAAC,CAAC,GAAG;AAC7F,WAAO,OAAOJ,GAAG;AAAA,MAChB,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,MACL,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,IACX,CAAG;AAAA,EACF;AACA,SAAOA;AACR;AACA,SAASwjB,GAAGpjB,GAAG;AACd,MAAIJ,IAAII;AACR,SAAOgkB,GAAGpkB,CAAC,KAAKskB,GAAGtkB,CAAC,MAAMA,IAAI,OAAO,OAAO,CAAA,GAAIA,GAAG;AAAA,IAClD,MAAM;AAAA,IACN,OAAO;AAAA,IACP,KAAK;AAAA,IACL,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV,CAAE,IAAIA;AACN;AACA,SAASskB,GAAGlkB,GAAG;AACd,SAAO,UAAUA,KAAK,WAAWA,KAAK,SAASA,KAAK,aAAaA,KAAK,eAAeA,KAAK,SAASA;AACpG;AACA,SAASgkB,GAAGhkB,GAAG;AACd,SAAO,UAAUA,KAAK,YAAYA,KAAK,YAAYA,KAAK,eAAeA,KAAK,eAAeA,KAAK,4BAA4BA;AAC7H;AACA,SAASikB,GAAGjkB,GAAG;AACd,SAAOkkB,GAAGlkB,CAAC,KAAKgkB,GAAGhkB,CAAC,KAAK,eAAeA,KAAK,eAAeA,KAAK,kBAAkBA;AACpF;AACA,SAAS6jB,GAAG7jB,GAAG;AACd,SAAOqU,GAAGrU,CAAC,KAAKsU,GAAGtU,CAAC,KAAKuU,GAAGvU,CAAC,KAAK0U,GAAG1U,CAAC,KAAKwU,GAAGxU,CAAC,KAAKyU,GAAGzU,CAAC,KAAKmU,GAAGnU,CAAC;AAClE;AACA,SAAS4jB,GAAG5jB,GAAG;AACd,SAAO6jB,GAAG7jB,CAAC,IAAIA,IAAI6S,GAAG7S,CAAC;AACxB;AACA,SAAS8jB,GAAG9jB,GAAGJ,GAAG;AACjB,SAAO,EAAE,CAACikB,GAAG7jB,CAAC,KAAK,CAAC6jB,GAAGjkB,CAAC,KAAK0U,GAAGtU,CAAC,KAAK,CAACsU,GAAG1U,CAAC,KAAKyU,GAAGrU,CAAC,KAAK,CAACqU,GAAGzU,CAAC,KAAK2U,GAAGvU,CAAC,KAAK,CAACuU,GAAG3U,CAAC,KAAK8U,GAAG1U,CAAC,KAAK,CAAC0U,GAAG9U,CAAC,KAAK4U,GAAGxU,CAAC,KAAK,CAACwU,GAAG5U,CAAC,KAAK6U,GAAGzU,CAAC,KAAK,CAACyU,GAAG7U,CAAC,KAAKuU,GAAGnU,CAAC,KAAK,CAACmU,GAAGvU,CAAC;AAC9J;AACA,SAAS+jB,GAAG3jB,GAAGJ,GAAG;AACjB,MAAI0U,GAAGtU,CAAC,GAAG;AACV,UAAM,IAAI;AAAA,MACT,SAAS;AAAA,QACR,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MACT;AAAA,MACG,MAAMiQ,EAAGjQ,GAAGmC,EAAC;AAAA,IAChB;AACE,WAAO;AAAA,MACN,SAASqX,GAAGvJ,EAAGrQ,GAAGgQ,EAAC,GAAG,GAAG,YAAY;AAAA,MACrC,WAAWgT,GAAGhjB,GAAG4B,EAAC;AAAA,IACrB;AAAA,EACC;AACA,MAAIgT,GAAGxU,CAAC,GAAG;AACV,UAAM,IAAIiQ,EAAGjQ,GAAGqC,CAAC,GAAG,IAAI4N,EAAGrQ,GAAGgC,EAAC;AAC/B,QAAI,MAAM,EAAG,OAAM,IAAI,WAAW,8CAA8C,CAAC,4BAA4B,CAAC,EAAE;AAChH,UAAM7B,IAAIkW,GAAGhG,EAAGjQ,GAAGqB,EAAC,GAAG;AAAA,MACtB,WAAW;AAAA,MACX,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,CAAG;AACD,WAAO;AAAA,MACN,SAASmY,GAAGvJ,EAAGrQ,GAAGgQ,EAAC,GAAG7P,GAAG,YAAY;AAAA,MACrC,WAAW6iB,GAAGhjB,GAAG8P,EAAC;AAAA,IACrB;AAAA,EACC;AACA,MAAI+E,GAAGzU,CAAC,GAAG;AACV,UAAM,IAAIiQ,EAAGjQ,GAAGqC,CAAC,GAAG,IAAI4N,EAAGrQ,GAAGgC,EAAC;AAC/B,QAAI,MAAM,EAAG,OAAM,IAAI,WAAW,6CAA6C,CAAC,4BAA4B,CAAC,EAAE;AAC/G,UAAM7B,IAAIkW,GAAGhG,EAAGjQ,GAAGqB,EAAC,GAAG;AAAA,MACtB,WAAW;AAAA,MACX,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,CAAG;AACD,WAAO;AAAA,MACN,SAASmY,GAAGvJ,EAAGrQ,GAAGgQ,EAAC,GAAG7P,GAAG,YAAY;AAAA,MACrC,WAAW6iB,GAAGhjB,GAAG+P,EAAC;AAAA,IACrB;AAAA,EACC;AACA,MAAI0E,GAAGrU,CAAC,GAAG;AACV,UAAM,IAAIiQ,EAAGjQ,GAAGqC,CAAC,GAAG,IAAI4N,EAAGrQ,GAAGgC,EAAC;AAC/B,QAAkB,MAAd,aAAmB,MAAM,EAAG,OAAM,IAAI,WAAW,yCAAyC,CAAC,4BAA4B,CAAC,EAAE;AAC9H,UAAM7B,IAAIkW,GAAGhG,EAAGjQ,GAAGqB,EAAC,GAAG;AAAA,MACtB,WAAW;AAAA,MACX,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,CAAG;AACD,WAAO;AAAA,MACN,SAASmY,GAAGvJ,EAAGrQ,GAAGgQ,EAAC,GAAG7P,GAAG,YAAY;AAAA,MACrC,WAAW6iB,GAAGhjB,GAAG0C,EAAC;AAAA,IACrB;AAAA,EACC;AACA,MAAIiS,GAAGvU,CAAC,GAAG;AACV,UAAM,IAAIiQ,EAAGjQ,GAAGqC,CAAC,GAAG,IAAI4N,EAAGrQ,GAAGgC,EAAC;AAC/B,QAAkB,MAAd,aAAmB,MAAM,EAAG,OAAM,IAAI,WAAW,6CAA6C,CAAC,4BAA4B,CAAC,EAAE;AAClI,UAAM7B,IAAIkQ,EAAGjQ,GAAG2B,EAAC;AACjB,WAAO;AAAA,MACN,SAAS6X,GAAGvJ,EAAGrQ,GAAGgQ,EAAC,GAAG7P,GAAG,YAAY;AAAA,MACrC,WAAW6iB,GAAGhjB,GAAGoC,EAAC;AAAA,IACrB;AAAA,EACC;AACA,MAAI0S,GAAG1U,CAAC,EAAG,OAAM,IAAI,UAAU,+FAA+F;AAC9H,SAAOmU,GAAGnU,CAAC,IAAI;AAAA,IACd,SAASiQ,EAAGjQ,GAAGa,EAAC;AAAA,IAChB,WAAW+hB,GAAGhjB,GAAG2B,EAAC;AAAA,EACpB,IAAK,CAAA;AACL;AACA,SAAS4iB,GAAGnkB,GAAG;AACd,QAAMJ,IAAI,uBAAO,OAAO,IAAI;AAC5B,SAAOA,EAAE,QAAQqQ,EAAGjQ,GAAGwP,EAAC,GAAG5P,EAAE,SAASqQ,EAAGjQ,GAAGwC,EAAC,GAAG5C,EAAE,QAAQqQ,EAAGjQ,GAAGgB,EAAC,GAAGpB,EAAE,OAAOqQ,EAAGjQ,GAAG6B,EAAC,GAAGjC,EAAE,QAAQqQ,EAAGjQ,GAAGc,EAAC,GAAGlB,EAAE,UAAUqQ,EAAGjQ,GAAGiC,EAAC,GAAGrC,EAAE,UAAUqQ,EAAGjQ,GAAGe,EAAC,GAAGnB,EAAE,eAAeqQ,EAAGjQ,GAAGyB,EAAC,GAAG7B,EAAE,eAAeqQ,EAAGjQ,GAAGsB,EAAC,GAAG1B,EAAE,cAAcqQ,EAAGjQ,GAAGyP,EAAC,GAAG7P;AACxO;AACAkjB,GAAmB,UAAU,cAAcY,IAAI,OAAO,eAAeA,IAAI,aAAa;AAAA,EACrF,OAAOZ,GAAmB;AAAA,EAC1B,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,cAAc;AACf,CAAC,GAAGY,GAAG,qBAAqBf,GAAG,oBAAoBvS,GAAGsT,IAAI,qBAAqB;QAC3E,EAAE,QAAQU,IAAI,eAAeC,GAAE,MAAKzhB,KAAA,KAAK,mBAAL,gBAAAA,GAAqB,cAAa,uBAAO,OAAO,IAAI;AAC5F,SAAS0hB,GAAGtkB,GAAG;AACd,OAAK,eAAe,UAAU,gBAAgB,KAAK,IAAI;AACvD,QAAMJ,IAAIukB,GAAG/L,GAAGpY,CAAC,CAAC;AAClB,SAAOokB,GAAG,KAAK,MAAMxkB,CAAC;AACvB;;CACAgD,KAAA,KAAK,mBAAL,QAAAA,GAAqB,cAAc,KAAK,eAAe,UAAU,SAAS0hB,IAAI,KAAK,eAAe,UAAU,gBAAgB,SAAStkB,GAAG;AACvI,OAAK,eAAe,UAAU,gBAAgB,KAAK,IAAI;AACvD,QAAMJ,IAAIukB,GAAG/L,GAAGpY,CAAC,CAAC;AAClB,SAAOqkB,GAAG,KAAK,MAAMzkB,CAAC;AACvB;AAMA,IAAI2kB,KAAU,MAAM;AAAA,EACnB,YAAYvkB,GAAG;AACd,QAAI,UAAU,SAAS,EAAG,OAAM,IAAI,UAAU,gDAAgD;AAC9F,IAAAsa,GAAG,MAAMyF,GAAG/f,CAAC,CAAC;AAAA,EACf;AAAA,EACA,IAAI,oBAAoB;AACvB,WAAO2U,EAAG,MAAMR,EAAE,GAAGyI,GAAG3M,EAAG,MAAMpP,EAAC,GAAG,OAAO;AAAA,EAC7C;AAAA,EACA,IAAI,mBAAmB;AACtB,WAAO8T,EAAG,MAAMR,EAAE,GAAG2L,GAAGzQ,EAAgB,QAAQ,OAAOY,EAAG,MAAMpP,EAAC,CAAC,CAAC;AAAA,EACpE;AAAA,EACA,IAAIb,GAAG;AACN,WAAO2U,EAAG,MAAMR,EAAE,GAAGiL,GAAG,OAAO,MAAMpf,CAAC;AAAA,EACvC;AAAA,EACA,SAASA,GAAG;AACX,WAAO2U,EAAG,MAAMR,EAAE,GAAGiL,GAAG,YAAY,MAAMpf,CAAC;AAAA,EAC5C;AAAA,EACA,MAAMA,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMR,EAAE,GAAGwK,GAAG,SAAS,MAAM3e,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,MAAMI,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMR,EAAE,GAAGwK,GAAG,SAAS,MAAM3e,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,MAAMI,GAAG;AACR,QAAI2U,EAAG,MAAMR,EAAE,GAAcnU,MAAX,OAAc,OAAM,IAAI,UAAU,+BAA+B;AACnF,UAAMJ,IAAgB,OAAOI,KAAnB,WAAuBkgB,GAAG,gBAAgBlgB,CAAC,IAAI+X,EAAG/X,CAAC,GAAG,IAAIwW,GAAG5W,CAAC,GAAG,IAAIyW,GAAGzW,GAAG,YAAY,GAAGG,IAAI8W,GAAGjX,GAAG,gBAAgB,QAAQgX,EAAE;AACxI,WAAOH,GAAG,GAAG;AAAA,MACZ,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,EAAI1W,CAAC,GAAG,EAAE,GAAGwY,GAAG8D,GAAGpM,EAAG,MAAMpP,EAAC,GAAG,GAAGd,GAAG,CAAC,CAAC;AAAA,EACvC;AAAA,EACA,OAAO,GAAG;AACT4U,IAAAA,EAAG,MAAMR,EAAE;AACX,UAAM1U,IAAI6Y,GAAG,CAAC,GAAGxY,IAAImQ,EAAG,MAAMpP,EAAC,GAAGd,IAAIkQ,EAAGxQ,GAAGoB,EAAC;AAC7C,WAAOwO,EAAgB,QAAQ,MAAMA,EAAgB,QAAQ,OAAOvP,CAAC,GAAGuP,EAAgB,QAAQ,OAAOtP,CAAC,CAAC;AAAA,EAC1G;AAAA,EACA,SAASC,IAAI,QAAQ;AACpB2U,IAAAA,EAAG,MAAMR,EAAE;AACX,UAAMvU,IAAImY,EAAG/X,CAAC,GAAG,IAAI0W,GAAG9W,CAAC,GAAG,IAAIyW,GAAGzW,GAAG,OAAO,GAAGG,IAAI8W,GAAGjX,GAAG,gBAAgB,QAAQ,MAAM;AACxF,QAAeG,MAAX,OAAc,OAAM,IAAI,WAAW,oDAAsD;AAC7F,QAAI,IAAIH,EAAE;AACV,IAAW,MAAX,WAAiB,IAAI4T,GAAG,CAAC;AACzB,UAAM,EAAE,WAAWrT,GAAG,MAAM,GAAG,WAAWD,MAAMyW,GAAG5W,GAAG,CAAC;AACvD,WAAO6b,GAAGrD,GAAG8D,GAAGpM,EAAG,MAAMpP,EAAC,GAAGX,GAAG,GAAG,CAAC,CAAC,GAAG,GAAGC,CAAC;AAAA,EAC7C;AAAA,EACA,SAAS;AACR,WAAOwU,EAAG,MAAMR,EAAE,GAAGyH,GAAG,MAAM,QAAQ,MAAM;AAAA,EAC7C;AAAA,EACA,eAAe5b,IAAI,QAAQJ,IAAI,QAAQ;AACtC,WAAO+U,EAAG,MAAMR,EAAE,GAAG,IAAIuP,GAAG1jB,GAAGJ,CAAC,EAAE,OAAO,IAAI;AAAA,EAC9C;AAAA,EACA,UAAU;AACT,IAAAugB,GAAG,SAAS;AAAA,EACb;AAAA,EACA,mBAAmBngB,GAAG;AACrB2U,IAAAA,EAAG,MAAMR,EAAE;AACX,UAAMvU,IAAI4T,GAAGxT,CAAC;AACd,WAAOoX,GAAGnH,EAAG,MAAMpP,EAAC,GAAGjB,GAAG,SAAS;AAAA,EACpC;AAAA,EACA,OAAO,sBAAsBI,GAAG;AAC/B,WAAOuY,GAAGrG,GAAGW,GAAG7S,CAAC,CAAC,CAAC;AAAA,EACpB;AAAA,EACA,OAAO,qBAAqBA,GAAG;AAC9B,WAAOuY,GAAGwH,GAAG/f,CAAC,CAAC;AAAA,EAChB;AAAA,EACA,OAAO,KAAKA,GAAG;AACd,WAAOsY,GAAGtY,CAAC;AAAA,EACZ;AAAA,EACA,OAAO,QAAQ,GAAGP,GAAG;AACpB,UAAMK,IAAIwY,GAAG,CAAC,GAAGvY,IAAIuY,GAAG7Y,CAAC,GAAGI,IAAIoQ,EAAGnQ,GAAGe,EAAC,GAAGV,IAAI8P,EAAGlQ,GAAGc,EAAC;AACrD,WAAOwO,EAAgB,QAAQ,SAASxP,GAAGM,CAAC,IAAI,KAAKkP,EAAgB,QAAQ,YAAYxP,GAAGM,CAAC,IAAI,IAAI;AAAA,EACtG;AACD;AACAiQ,GAAGmU,IAAS,kBAAkB;AAC9B,IAAIC,KAAY,MAAM;AAAA,EACrB,YAAYxkB,GAAGJ,GAAG,GAAG,IAAI,WAAW;AACnC,UAAMG,IAAIgT,GAAG/S,CAAC,GAAG,IAAI+S,GAAGnT,CAAC,GAAGO,IAAI4S,GAAG,CAAC,GAAG,IAAIoE,GAAc,MAAX,SAAe,YAAYhE,GAAG,CAAC,CAAC;AAC9E,IAAAiC,GAAGrV,GAAG,GAAGI,CAAC,GAAG6Z,GAAG,MAAM;AAAA,MACrB,MAAMja;AAAA,MACN,OAAO;AAAA,MACP,KAAKI;AAAA,IACR,GAAK,CAAC;AAAA,EACL;AAAA,EACA,IAAI,aAAa;AAChB,WAAOwU,EAAG,MAAMN,EAAE,GAAGpE,EAAG,MAAM5N,CAAC;AAAA,EAChC;AAAA,EACA,IAAI,MAAM;AACT,WAAOoiB,GAAG,MAAM,KAAK;AAAA,EACtB;AAAA,EACA,IAAI,UAAU;AACb,WAAOA,GAAG,MAAM,SAAS;AAAA,EAC1B;AAAA,EACA,IAAI,OAAO;AACV,WAAOA,GAAG,MAAM,MAAM;AAAA,EACvB;AAAA,EACA,IAAI,QAAQ;AACX,WAAOA,GAAG,MAAM,OAAO;AAAA,EACxB;AAAA,EACA,IAAI,YAAY;AACf,WAAOA,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,MAAM;AACT,WAAOA,GAAG,MAAM,KAAK;AAAA,EACtB;AAAA,EACA,IAAI,YAAY;AACf,WAAOA,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,YAAY;AACf,WAAOA,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,aAAa;;AAChB,YAAO7hB,IAAA6hB,GAAG,MAAM,YAAY,MAArB,gBAAA7hB,EAAwB;AAAA,EAChC;AAAA,EACA,IAAI,aAAa;;AAChB,YAAOA,IAAA6hB,GAAG,MAAM,YAAY,MAArB,gBAAA7hB,EAAwB;AAAA,EAChC;AAAA,EACA,IAAI,aAAa;AAChB,WAAO6hB,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,cAAc;AACjB,WAAOA,GAAG,MAAM,aAAa;AAAA,EAC9B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,eAAe;AAClB,WAAOA,GAAG,MAAM,cAAc;AAAA,EAC/B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,KAAKzkB,GAAGJ,IAAI,QAAQ;AACnB,QAAI+U,EAAG,MAAMN,EAAE,GAAG,CAACzB,GAAG5S,CAAC,EAAG,OAAM,IAAI,UAAU,kBAAkB;AAChE4U,IAAAA,GAAG5U,CAAC;AACJ,UAAM,IAAIiQ,EAAG,MAAM5N,CAAC;AACpB,QAAI,IAAIuV,GAAG,GAAG3H,EAAG,MAAM5O,EAAC,CAAC;AACzB,WAAO,IAAIoZ,GAAG,GAAG,GAAGxD,GAAG,GAAGjX,GAAG;AAAA,MAC5B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,CAAA,GAAI,SAAS,CAAC,GAAG+W,GAAGkB,GAAG,GAAG,GAAG/B,GAAG6B,EAAGnY,CAAC,CAAC,CAAC,GAAG,CAAC;AAAA,EAC9C;AAAA,EACA,aAAaI,GAAG;AACf2U,IAAAA,EAAG,MAAMN,EAAE;AACX,UAAMzU,IAAIiZ,GAAG7Y,CAAC;AACd,WAAO+W,GAAG9G,EAAG,MAAM5O,EAAC,GAAGzB,CAAC;AAAA,EACzB;AAAA,EACA,IAAII,GAAGJ,IAAI,QAAQ;AAClB,WAAO+U,EAAG,MAAMN,EAAE,GAAGgL,GAAG,OAAO,MAAMrf,GAAGJ,CAAC;AAAA,EAC1C;AAAA,EACA,SAASI,GAAGJ,IAAI,QAAQ;AACvB,WAAO+U,EAAG,MAAMN,EAAE,GAAGgL,GAAG,YAAY,MAAMrf,GAAGJ,CAAC;AAAA,EAC/C;AAAA,EACA,MAAMI,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMN,EAAE,GAAGuK,GAAG,SAAS,MAAM5e,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,MAAMI,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMN,EAAE,GAAGuK,GAAG,SAAS,MAAM5e,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,OAAOI,GAAG;AACT2U,IAAAA,EAAG,MAAMN,EAAE;AACX,UAAMzU,IAAIkY,GAAG9X,CAAC;AACd,WAAame,GAAGlO,EAAG,MAAM5O,EAAC,GAAG4O,EAAGrQ,GAAGyB,EAAC,CAAC,MAA9B,KAAmCuZ,GAAG3K,EAAG,MAAM5N,CAAC,GAAG4N,EAAGrQ,GAAGyC,CAAC,CAAC;AAAA,EACnE;AAAA,EACA,SAASrC,IAAI,QAAQ;AACpB,WAAO2U,EAAG,MAAMN,EAAE,GAAG2H,GAAG,MAAMzF,GAAGwB,EAAG/X,CAAC,CAAC,CAAC;AAAA,EACxC;AAAA,EACA,SAAS;AACR,WAAO2U,EAAG,MAAMN,EAAE,GAAG2H,GAAG,IAAI;AAAA,EAC7B;AAAA,EACA,eAAehc,IAAI,QAAQJ,IAAI,QAAQ;AACtC,WAAO+U,EAAG,MAAMN,EAAE,GAAG,IAAIqP,GAAG1jB,GAAGJ,CAAC,EAAE,OAAO,IAAI;AAAA,EAC9C;AAAA,EACA,UAAU;AACT,IAAAugB,GAAG,WAAW;AAAA,EACf;AAAA,EACA,gBAAgBngB,IAAI,QAAQ;AAC3B2U,IAAAA,EAAG,MAAMN,EAAE;AACX,UAAMzU,IAAIsZ,GAAGlZ,CAAC;AACd,WAAOmY,GAAGlC,GAAGhG,EAAG,MAAM5O,EAAC,GAAGzB,CAAC,GAAGqQ,EAAG,MAAM5N,CAAC,CAAC;AAAA,EAC1C;AAAA,EACA,gBAAgBrC,GAAG;AAClB,QAAIJ,GAAG;AACP,QAAI+U,EAAG,MAAMN,EAAE,GAAGzB,GAAG5S,CAAC,GAAG;AACxB,YAAMF,IAAIE,EAAE;AACZ,MAAWF,MAAX,SAAeF,IAAI4T,GAAGxT,CAAC,KAAKJ,IAAI4T,GAAG1T,CAAC,GAAG,IAAIE,EAAE;AAAA,IAC9C,MAAO,CAAAJ,IAAI4T,GAAGxT,CAAC;AACf,UAAM,IAAIiQ,EAAG,MAAM5O,EAAC;AACpB,QAAItB;AACJ,WAAkB,MAAX,SAAeA,IAAIwZ,GAAG3Z,GAAG,CAAC,KAAK,IAAIoZ,GAAG,CAAC,GAAGjZ,IAAIyZ,GAAG5Z,GAAGqW,GAAG,GAAGhG,EAAG,GAAG9N,EAAC,CAAC,GAAG,YAAY,IAAIiV,GAAGrX,GAAGH,GAAGqQ,EAAG,MAAM5N,CAAC,CAAC;AAAA,EACjH;AAAA,EACA,mBAAmB;AAClBsS,IAAAA,EAAG,MAAMN,EAAE;AACX,UAAMrU,IAAIiQ,EAAG,MAAM5N,CAAC;AACpB,WAAO+W,GAAGC,GAAGrZ,GAAG4X,GAAG5X,GAAGiQ,EAAG,MAAM5O,EAAC,CAAC,GAAG,WAAW,GAAGrB,CAAC;AAAA,EACpD;AAAA,EACA,kBAAkB;AACjB2U,IAAAA,EAAG,MAAMN,EAAE;AACX,UAAMrU,IAAIiQ,EAAG,MAAM5N,CAAC;AACpB,WAAOuW,GAAGE,GAAG9Y,GAAG4X,GAAG5X,GAAGiQ,EAAG,MAAM5O,EAAC,CAAC,GAAG,WAAW,GAAGrB,CAAC;AAAA,EACpD;AAAA,EACA,OAAO,KAAKA,GAAGJ,IAAI,QAAQ;AAC1B,WAAOkY,GAAG9X,GAAGJ,CAAC;AAAA,EACf;AAAA,EACA,OAAO,QAAQI,GAAGJ,GAAG;AACpB,UAAM,IAAIkY,GAAG9X,CAAC,GAAG,IAAI8X,GAAGlY,CAAC;AACzB,WAAOue,GAAGlO,EAAG,GAAG5O,EAAC,GAAG4O,EAAG,GAAG5O,EAAC,CAAC;AAAA,EAC7B;AACD;AACA,SAASojB,GAAGzkB,GAAGJ,GAAG;AACjB+U,EAAAA,EAAG3U,GAAGqU,EAAE;AACR,QAAM,IAAIpE,EAAGjQ,GAAGqB,EAAC;AACjB,SAAOsW,GAAG3X,CAAC,EAAE,UAAU,GAAG,EAAE,CAACJ,CAAC,GAAG,IAAI,EAAEA,CAAC;AACzC;AACAwQ,GAAGoU,IAAW,oBAAoB;AAClC,IAAIE,KAAgB,MAAM;AAAA,EACzB,YAAY1kB,GAAGJ,GAAG,GAAG,IAAI,GAAGG,IAAI,GAAG,IAAI,GAAGI,IAAI,GAAG,IAAI,GAAGD,IAAI,GAAGM,IAAI,WAAW;AAC7E,UAAMH,IAAI0S,GAAG/S,CAAC,GAAGL,IAAIoT,GAAGnT,CAAC,GAAGF,IAAIqT,GAAG,CAAC,GAAGnS,IAAe,MAAX,SAAe,IAAImS,GAAG,CAAC,GAAG9S,IAAeF,MAAX,SAAe,IAAIgT,GAAGhT,CAAC,GAAG2B,IAAe,MAAX,SAAe,IAAIqR,GAAG,CAAC,GAAGzS,IAAeH,MAAX,SAAe,IAAI4S,GAAG5S,CAAC,GAAGQ,IAAe,MAAX,SAAe,IAAIoS,GAAG,CAAC,GAAGtS,IAAeP,MAAX,SAAe,IAAI6S,GAAG7S,CAAC,GAAGK,IAAI4W,GAAc3W,MAAX,SAAe,YAAY2S,GAAG3S,CAAC,CAAC;AAClQ,IAAAwU,GAAG3U,GAAGV,GAAGD,GAAGkB,GAAGX,GAAGyB,GAAGpB,GAAGK,GAAGF,CAAC,GAAGwZ,GAAG,MAAM;AAAA,MACvC,SAAS;AAAA,QACR,MAAM5Z;AAAA,QACN,OAAOV;AAAA,QACP,KAAKD;AAAA,MACT;AAAA,MACG,MAAM;AAAA,QACL,MAAMkB;AAAA,QACN,QAAQX;AAAA,QACR,QAAQyB;AAAA,QACR,aAAapB;AAAA,QACb,aAAaK;AAAA,QACb,YAAYF;AAAA,MAChB;AAAA,IACA,GAAKF,CAAC;AAAA,EACL;AAAA,EACA,IAAI,aAAa;AAChB,WAAOoU,EAAG,MAAMJ,EAAE,GAAGtE,EAAG,MAAM5N,CAAC;AAAA,EAChC;AAAA,EACA,IAAI,OAAO;AACV,WAAOsiB,GAAG,MAAM,MAAM;AAAA,EACvB;AAAA,EACA,IAAI,QAAQ;AACX,WAAOA,GAAG,MAAM,OAAO;AAAA,EACxB;AAAA,EACA,IAAI,YAAY;AACf,WAAOA,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,MAAM;AACT,WAAOA,GAAG,MAAM,KAAK;AAAA,EACtB;AAAA,EACA,IAAI,OAAO;AACV,WAAOC,GAAG,MAAM,MAAM;AAAA,EACvB;AAAA,EACA,IAAI,SAAS;AACZ,WAAOA,GAAG,MAAM,QAAQ;AAAA,EACzB;AAAA,EACA,IAAI,SAAS;AACZ,WAAOA,GAAG,MAAM,QAAQ;AAAA,EACzB;AAAA,EACA,IAAI,cAAc;AACjB,WAAOA,GAAG,MAAM,aAAa;AAAA,EAC9B;AAAA,EACA,IAAI,cAAc;AACjB,WAAOA,GAAG,MAAM,aAAa;AAAA,EAC9B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,MAAM;AACT,WAAOD,GAAG,MAAM,KAAK;AAAA,EACtB;AAAA,EACA,IAAI,UAAU;AACb,WAAOA,GAAG,MAAM,SAAS;AAAA,EAC1B;AAAA,EACA,IAAI,YAAY;AACf,WAAOA,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,YAAY;AACf,WAAOA,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,aAAa;;AAChB,YAAO/hB,IAAA+hB,GAAG,MAAM,YAAY,MAArB,gBAAA/hB,EAAwB;AAAA,EAChC;AAAA,EACA,IAAI,aAAa;;AAChB,YAAOA,IAAA+hB,GAAG,MAAM,YAAY,MAArB,gBAAA/hB,EAAwB;AAAA,EAChC;AAAA,EACA,IAAI,aAAa;AAChB,WAAO+hB,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,cAAc;AACjB,WAAOA,GAAG,MAAM,aAAa;AAAA,EAC9B;AAAA,EACA,IAAI,eAAe;AAClB,WAAOA,GAAG,MAAM,cAAc;AAAA,EAC/B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,KAAK3kB,GAAGJ,IAAI,QAAQ;AACnB,QAAI+U,EAAG,MAAMJ,EAAE,GAAG,CAAC3B,GAAG5S,CAAC,EAAG,OAAM,IAAI,UAAU,kBAAkB;AAChE4U,IAAAA,GAAG5U,CAAC;AACJ,UAAM,IAAIiQ,EAAG,MAAM5N,CAAC,GAAG,IAAI4N,EAAG,MAAMtO,EAAC;AACrC,QAAI5B,IAAI;AAAA,MACP,GAAG6X,GAAG,GAAG,EAAE,OAAO;AAAA,MAClB,GAAG,EAAE;AAAA,IACR;AACE,WAAO7X,IAAI0a,GAAG,GAAG1a,GAAGkX,GAAG,GAAGjX,GAAG;AAAA,MAC5B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,SAAS,CAAC,GAAGmY,GAAGjB,GAAG,GAAGnX,GAAGmW,GAAG6B,EAAGnY,CAAC,CAAC,CAAC,GAAG,CAAC;AAAA,EAC1C;AAAA,EACA,cAAcI,IAAI,QAAQ;AACzB2U,IAAAA,EAAG,MAAMJ,EAAE;AACX,UAAM3U,IAAIsZ,GAAGlZ,CAAC;AACd,WAAOmY,GAAGlC,GAAGhG,EAAG,MAAMtO,EAAC,EAAE,SAAS/B,CAAC,GAAGqQ,EAAG,MAAM5N,CAAC,CAAC;AAAA,EAClD;AAAA,EACA,aAAarC,GAAG;AACf2U,IAAAA,EAAG,MAAMJ,EAAE;AACX,UAAM3U,IAAIiZ,GAAG7Y,CAAC;AACd,WAAOmY,GAAGlI,EAAG,MAAMtO,EAAC,GAAG/B,CAAC;AAAA,EACzB;AAAA,EACA,IAAII,GAAGJ,IAAI,QAAQ;AAClB,WAAO+U,EAAG,MAAMJ,EAAE,GAAG+K,GAAG,OAAO,MAAMtf,GAAGJ,CAAC;AAAA,EAC1C;AAAA,EACA,SAASI,GAAGJ,IAAI,QAAQ;AACvB,WAAO+U,EAAG,MAAMJ,EAAE,GAAG+K,GAAG,YAAY,MAAMtf,GAAGJ,CAAC;AAAA,EAC/C;AAAA,EACA,MAAMI,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMJ,EAAE,GAAGsK,GAAG,SAAS,MAAM7e,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,MAAMI,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMJ,EAAE,GAAGsK,GAAG,SAAS,MAAM7e,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,MAAMI,GAAG;AACR,QAAI2U,EAAG,MAAMJ,EAAE,GAAcvU,MAAX,OAAc,OAAM,IAAI,UAAU,+BAA+B;AACnF,UAAMJ,IAAgB,OAAOI,KAAnB,WAAuBkgB,GAAG,gBAAgBlgB,CAAC,IAAI+X,EAAG/X,CAAC,GAAG,IAAIwW,GAAG5W,CAAC,GAAG,IAAIyW,GAAGzW,GAAG,YAAY,GAAGG,IAAI8W,GAAGjX,GAAG,gBAAgB,QAAQgX,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI;AAAA,MACvJ,KAAK;AAAA,MACL,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,EAAI7W,CAAC;AACH0W,IAAAA,GAAG,GAAG,GAAS,MAAN,CAAO;AAChB,UAAMtW,IAAI8P,EAAG,MAAMtO,EAAC;AACpB,WAAOwW,GAAS,MAAN,KAA4BpY,MAAjB,eAAqBI,IAAIwf,GAAGxf,GAAG,GAAGJ,GAAG,CAAC,GAAGkQ,EAAG,MAAM5N,CAAC,CAAC;AAAA,EAC1E;AAAA,EACA,OAAOrC,GAAG;AACT2U,IAAAA,EAAG,MAAMJ,EAAE;AACX,UAAM3U,IAAIsY,GAAGlY,CAAC;AACd,WAAasb,GAAGrL,EAAG,MAAMtO,EAAC,GAAGsO,EAAGrQ,GAAG+B,EAAC,CAAC,MAA9B,KAAmCiZ,GAAG3K,EAAG,MAAM5N,CAAC,GAAG4N,EAAGrQ,GAAGyC,CAAC,CAAC;AAAA,EACnE;AAAA,EACA,SAASrC,IAAI,QAAQ;AACpB2U,IAAAA,EAAG,MAAMJ,EAAE;AACX,UAAM3U,IAAImY,EAAG/X,CAAC,GAAG,IAAIuW,GAAG3W,CAAC,GAAG,IAAI8W,GAAG9W,CAAC,GAAGG,IAAIsW,GAAGzW,GAAG,OAAO,GAAG,IAAIiX,GAAGjX,GAAG,gBAAgB,QAAQ,MAAM;AACnG,QAAe,MAAX,OAAc,OAAM,IAAI,WAAW,oDAAsD;AAC7F,UAAM,EAAE,WAAWO,GAAG,MAAM,GAAG,WAAWD,MAAMyW,GAAG,GAAG,CAAC,GAAGnW,IAAImf,GAAG1P,EAAG,MAAMtO,EAAC,GAAGzB,GAAG,GAAGH,CAAC;AACrF,WAAOma,GAAG1Z,CAAC,GAAGqZ,GAAGrZ,GAAGyP,EAAG,MAAM5N,CAAC,GAAGlC,GAAG,CAAC;AAAA,EACtC;AAAA,EACA,SAAS;AACR,WAAOwU,EAAG,MAAMJ,EAAE,GAAGsF,GAAG5J,EAAG,MAAMtO,EAAC,GAAGsO,EAAG,MAAM5N,CAAC,GAAG,MAAM;AAAA,EACzD;AAAA,EACA,eAAerC,IAAI,QAAQJ,IAAI,QAAQ;AACtC,WAAO+U,EAAG,MAAMJ,EAAE,GAAG,IAAImP,GAAG1jB,GAAGJ,CAAC,EAAE,OAAO,IAAI;AAAA,EAC9C;AAAA,EACA,UAAU;AACT,IAAAugB,GAAG,eAAe;AAAA,EACnB;AAAA,EACA,gBAAgBngB,GAAGJ,IAAI,QAAQ;AAC9B+U,IAAAA,EAAG,MAAMJ,EAAE;AACX,UAAM,IAAIf,GAAGxT,CAAC,GAAG,IAAIoW,GAAG2B,EAAGnY,CAAC,CAAC;AAC7B,WAAOwX,GAAGoC,GAAG,GAAGvJ,EAAG,MAAMtO,EAAC,GAAG,CAAC,GAAG,GAAGsO,EAAG,MAAM5N,CAAC,CAAC;AAAA,EAChD;AAAA,EACA,cAAc;AACb,WAAOsS,EAAG,MAAMJ,EAAE,GAAGwC,GAAG9G,EAAG,MAAMtO,EAAC,EAAE,SAASsO,EAAG,MAAM5N,CAAC,CAAC;AAAA,EACzD;AAAA,EACA,cAAc;AACb,WAAOsS,EAAG,MAAMJ,EAAE,GAAG0E,GAAGhJ,EAAG,MAAMtO,EAAC,EAAE,IAAI;AAAA,EACzC;AAAA,EACA,OAAO,KAAK3B,GAAGJ,IAAI,QAAQ;AAC1B,WAAOsY,GAAGlY,GAAGJ,CAAC;AAAA,EACf;AAAA,EACA,OAAO,QAAQI,GAAGJ,GAAG;AACpB,UAAM,IAAIsY,GAAGlY,CAAC,GAAG,IAAIkY,GAAGtY,CAAC;AACzB,WAAO0b,GAAGrL,EAAG,GAAGtO,EAAC,GAAGsO,EAAG,GAAGtO,EAAC,CAAC;AAAA,EAC7B;AACD;AACA,SAASgjB,GAAG3kB,GAAGJ,GAAG;AACjB+U,EAAAA,EAAG3U,GAAGuU,EAAE;AACR,QAAM,IAAItE,EAAGjQ,GAAG2B,EAAC,EAAE;AACnB,SAAOgW,GAAG3X,CAAC,EAAE,UAAU,GAAG,EAAE,CAACJ,CAAC,GAAG,IAAI,EAAEA,CAAC;AACzC;AACA,SAASglB,GAAG5kB,GAAGJ,GAAG;AACjB,SAAO+U,EAAG3U,GAAGuU,EAAE,GAAGtE,EAAGjQ,GAAG2B,EAAC,EAAE,KAAK/B,CAAC;AAClC;AACAwQ,GAAGsU,IAAe,wBAAwB;AAC1C,IAAIG,KAAa,MAAMA,GAAW;AAAA,EACjC,YAAY,IAAI,GAAGjlB,IAAI,GAAGH,IAAI,GAAGK,IAAI,GAAGC,IAAI,GAAGF,IAAI,GAAGM,IAAI,GAAGC,IAAI,GAAGF,IAAI,GAAGM,IAAI,GAAG;AACjF,UAAM,IAAe,MAAX,SAAe,IAAIyS,GAAG,CAAC,GAAGtT,IAAeC,MAAX,SAAe,IAAIqT,GAAGrT,CAAC,GAAGF,IAAeD,MAAX,SAAe,IAAIwT,GAAGxT,CAAC,GAAGmB,IAAed,MAAX,SAAe,IAAImT,GAAGnT,CAAC,GAAGG,IAAeF,MAAX,SAAe,IAAIkT,GAAGlT,CAAC,GAAG2B,IAAe7B,MAAX,SAAe,IAAIoT,GAAGpT,CAAC,GAAGS,IAAeH,MAAX,SAAe,IAAI8S,GAAG9S,CAAC,GAAGQ,IAAeP,MAAX,SAAe,IAAI6S,GAAG7S,CAAC,GAAGK,IAAeP,MAAX,SAAe,IAAI+S,GAAG/S,CAAC,GAAGK,IAAeC,MAAX,SAAe,IAAIyS,GAAGzS,CAAC;AAC/S,IAAA6X,GAAG,GAAG1Y,GAAGD,GAAGkB,GAAGX,GAAGyB,GAAGpB,GAAGK,GAAGF,GAAGF,CAAC,GAAGwP,GAAG,IAAI,GAAGG,GAAG,MAAMV,IAAG,CAAC,GAAGU,GAAG,MAAM1N,IAAG7C,CAAC,GAAGuQ,GAAG,MAAMlP,IAAGtB,CAAC,GAAGwQ,GAAG,MAAMrO,IAAGjB,CAAC,GAAGsP,GAAG,MAAMpP,IAAGb,CAAC,GAAGiQ,GAAG,MAAMjO,IAAGP,CAAC,GAAGwO,GAAG,MAAMnP,IAAGT,CAAC,GAAG4P,GAAG,MAAMzO,IAAGd,CAAC,GAAGuP,GAAG,MAAM5O,IAAGb,CAAC,GAAGyP,GAAG,MAAMT,IAAGlP,CAAC;AAAA,EAC1M;AAAA,EACA,IAAI,QAAQ;AACX,WAAOoU,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAMT,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,SAAS;AACZ,WAAOmF,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAMzN,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,QAAQ;AACX,WAAOmS,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAMjP,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,OAAO;AACV,WAAO2T,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAMpO,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,QAAQ;AACX,WAAO8S,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAMnP,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,UAAU;AACb,WAAO6T,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAMhO,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,UAAU;AACb,WAAO0S,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAMlP,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,eAAe;AAClB,WAAO4T,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAMxO,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,eAAe;AAClB,WAAOkT,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAM3O,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,cAAc;AACjB,WAAOqT,EAAG,MAAMP,EAAE,GAAGnE,EAAG,MAAMR,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,OAAO;AACV,WAAOkF,EAAG,MAAMP,EAAE,GAAG2H,GAAG,IAAI;AAAA,EAC7B;AAAA,EACA,IAAI,QAAQ;AACX,WAAOpH,EAAG,MAAMP,EAAE,GAAS2H,GAAG,IAAI,MAAb;AAAA,EACtB;AAAA,EACA,KAAK,GAAG;AACPpH,IAAAA,EAAG,MAAMP,EAAE;AACX,UAAM,EAAE,OAAO,IAAInE,EAAG,MAAMT,EAAC,GAAG,QAAQ,IAAIS,EAAG,MAAMzN,EAAC,GAAG,OAAOzC,IAAIkQ,EAAG,MAAMjP,EAAC,GAAG,MAAM,IAAIiP,EAAG,MAAMpO,EAAC,GAAG,OAAO1B,IAAI8P,EAAG,MAAMnP,EAAC,GAAG,SAAS,IAAImP,EAAG,MAAMhO,EAAC,GAAG,SAAS/B,IAAI+P,EAAG,MAAMlP,EAAC,GAAG,cAAcP,IAAIyP,EAAG,MAAMxO,EAAC,GAAG,cAAcpB,IAAI4P,EAAG,MAAM3O,EAAC,GAAG,aAAa3B,IAAIsQ,EAAG,MAAMR,EAAC,EAAC,IAAKsG,GAAG,CAAC;AACvR,WAAO,IAAI8O,GAAW,GAAG,GAAG9kB,GAAG,GAAGI,GAAG,GAAGD,GAAGM,GAAGH,GAAGV,CAAC;AAAA,EACnD;AAAA,EACA,UAAU;AACT,WAAOgV,EAAG,MAAMP,EAAE,GAAGmJ,GAAG,IAAI;AAAA,EAC7B;AAAA,EACA,MAAM;AACL,WAAO5I,EAAG,MAAMP,EAAE,GAAG,IAAIyQ,GAAW,KAAK,IAAI5U,EAAG,MAAMT,EAAC,CAAC,GAAG,KAAK,IAAIS,EAAG,MAAMzN,EAAC,CAAC,GAAG,KAAK,IAAIyN,EAAG,MAAMjP,EAAC,CAAC,GAAG,KAAK,IAAIiP,EAAG,MAAMpO,EAAC,CAAC,GAAG,KAAK,IAAIoO,EAAG,MAAMnP,EAAC,CAAC,GAAG,KAAK,IAAImP,EAAG,MAAMhO,EAAC,CAAC,GAAG,KAAK,IAAIgO,EAAG,MAAMlP,EAAC,CAAC,GAAG,KAAK,IAAIkP,EAAG,MAAMxO,EAAC,CAAC,GAAG,KAAK,IAAIwO,EAAG,MAAM3O,EAAC,CAAC,GAAG,KAAK,IAAI2O,EAAG,MAAMR,EAAC,CAAC,CAAC;AAAA,EACzQ;AAAA,EACA,IAAI,GAAG;AACN,WAAOkF,EAAG,MAAMP,EAAE,GAAG+K,GAAG,OAAO,MAAM,CAAC;AAAA,EACvC;AAAA,EACA,SAAS,GAAG;AACX,WAAOxK,EAAG,MAAMP,EAAE,GAAG+K,GAAG,YAAY,MAAM,CAAC;AAAA,EAC5C;AAAA,EACA,MAAM,GAAG;AACR,QAAIxK,EAAG,MAAMP,EAAE,GAAc,MAAX,OAAc,OAAM,IAAI,UAAU,+BAA+B;AACnF,UAAMxU,IAAI0X,GAAG,IAAI,GAAG7X,IAAgB,OAAO,KAAnB,WAAuBygB,GAAG,gBAAgB,CAAC,IAAInI,EAAG,CAAC;AAC3E,QAAIjY,IAAI+W,GAAGpX,GAAG,eAAe,YAAY,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,iBAAiBM,GAAG,iBAAiBF,EAAC,IAAKiX,GAAGrX,CAAC;AAC7G,UAAMU,IAAIqW,GAAG/W,CAAC,GAAGW,IAAIiW,GAAG5W,GAAG,YAAY;AACvC,QAAIS,IAAI2W,GAAGpX,GAAG,gBAAgB,YAAY,MAAM,GAAGe,IAAI;AACvD,IAAAN,MAAMM,IAAI,IAAIN,IAAI;AAClB,UAAM,IAAIqX,GAAG3X,GAAGM,CAAC;AACjB,QAAIP,IAAI;AACR,QAAIG,MAAMH,IAAI,IAAIG,IAAI,IAAeA,MAAX,WAAiBA,IAAI,IAAI,CAACU,KAAK,CAACb,EAAG,OAAM,IAAI,WAAW,yDAAyD;AAC3I,QAAI4X,GAAGzX,GAAGI,CAAC,MAAMJ,EAAG,OAAM,IAAI,WAAW,eAAeA,CAAC,wCAAwCI,CAAC,EAAE;AACpG,UAAMR,IAAI;AAAA,MACT,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,EAAIQ,CAAC;AACH,QAAeR,MAAX,UAAgB+W,GAAGtW,GAAGT,GAAG,EAAE,GAAGS,IAAI,KAAgBsX,GAAGvX,CAAC,MAAf,UAAoBJ,MAAMI,EAAG,OAAM,IAAI,WAAW,+EAA+E;AAC5K,QAAIL,GAAG;AACN,UAAIG,IAAI0d,GAAG,IAAI;AACf,YAAM9d,IAAIqQ,EAAGpQ,GAAGqB,EAAC,GAAGzB,IAAIwQ,EAAGpQ,GAAGwC,CAAC,GAAGtC,IAAIkQ,EAAGpQ,GAAGgB,EAAC;AAC7C,aAAOb,IAAIye,GAAG1e,GAAGmf,GAAGnf,GAAGH,GAAGH,GAAGO,CAAC,GAAGJ,GAAGH,GAAGK,GAAGK,GAAGD,GAAGE,CAAC,GAAcqX,GAAG3X,CAAC,MAAf,WAAqBA,IAAI,SAAS+d,GAAG7d,GAAGF,CAAC;AAAA,IAC9F;AACA,QAAIC,GAAG;AACN,UAAIC,IAAI2d,GAAG,IAAI;AACf,YAAM/d,IAAIwb,GAAG;AAAA,QAEZ,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,aAAa;AAAA,QACb,aAAa;AAAA,QACb,YAAY;AAAA,MAChB,GAAMpb,EAAE,IAAI,GAAGP,IAAIwQ,EAAGlQ,GAAGsB,EAAC,GAAGxB,IAAIoQ,EAAGlQ,GAAGsC,CAAC,GAAG7B,IAAIka,GAAG7a,GAAGJ,GAAGuW,GAAGhW,EAAE,MAAMJ,EAAE,SAAS,GAAG,WAAW;AACzF,aAAOI,IAAIwe,GAAGvI,GAAGxW,GAAG;AAAA,QACnB,WAAW;AAAA,QACX,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,aAAa;AAAA,QACb,aAAa;AAAA,QACb,YAAY;AAAA,MAChB,CAAI,GAAGwW,GAAGzV,GAAGZ,CAAC,GAAGC,GAAGC,GAAGK,GAAGD,GAAGE,CAAC,GAAGyd,GAAG7d,GAAGF,CAAC;AAAA,IACtC;AACA,QAAI0X,GAAG5X,CAAC,EAAG,OAAM,IAAI,WAAW,oCAAoCA,CAAC,aAAa;AAClF,QAAI4X,GAAG1X,CAAC,EAAG,OAAM,IAAI,WAAW,oCAAoCA,CAAC,aAAa;AAClF,QAAIc,IAAI+c,GAAG,IAAI;AACf,QAAczd,MAAV,OAAa;AAChB,YAAM,EAAE,UAAUF,GAAG,WAAWJ,EAAC,IAAKgB,EAAE,KAAK,OAAOkR,EAAE;AACtD,UAAIrS,IAAImB,EAAE,KAAK,OAAOZ,IAAIue,GAAG3e,GAAG,KAAK;AACrC,MAAAH,IAAIka,GAAGla,GAAGU,GAAGC,CAAC,GAAGQ,IAAIkd,GAAG;AAAA,QACvB,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,MAAMre;AAAA,MACV,GAAMkR,GAAa,IAAI;AAAA,IACrB,MAAO,CAAA/P,IAAIkd,GAAG;AAAA,MACb,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,IACT,GAAKG,GAAGrd,EAAE,MAAMT,GAAGD,GAAGE,CAAC,CAAC;AACtB,WAAOyd,GAAGjd,GAAGd,CAAC;AAAA,EACf;AAAA,EACA,MAAMF,GAAG;AACR,QAAI+U,EAAG,MAAMP,EAAE,GAAcxU,MAAX,OAAc,OAAM,IAAI,UAAU,8BAA8B;AAClF,UAAM,IAAgB,OAAOA,KAAnB,WAAuBsgB,GAAG,QAAQtgB,CAAC,IAAImY,EAAGnY,CAAC;AACrD,QAAI,EAAE,iBAAiB,GAAG,iBAAiBG,EAAC,IAAK+W,GAAG,CAAC;AACrD,UAAM,IAAID,GAAG,GAAG,QAAQ,YAAYD,EAAE;AACtC,QAAI7W,GAAG;AACN,YAAMC,IAAI0d,GAAG,IAAI,GAAG9d,IAAIqQ,EAAGlQ,GAAGmB,EAAC,GAAGzB,IAAIwQ,EAAGlQ,GAAGsC,CAAC,GAAGvC,IAAImQ,EAAGlQ,GAAGc,EAAC;AAC3D,cAAO,SAASb,GAAGJ,GAAGH,GAAGK,GAAGC,GAAG;AAC9B,eAAkB0X,GAAG1X,CAAC,MAAf,SAAmBwe,GAAG5N,GAAa,gBAAgB/Q,GAAGI,CAAC,GAAGD,CAAC,IAAIue,GAAGF,GAAGpe,GAAGJ,GAAGH,GAAGK,GAAGC,CAAC,GAAGH,GAAGoY,GAAGvY,GAAGO,CAAC,GAAGP,GAAGK,GAAGC,CAAC;AAAA,MACjH,GAAED,GAAGof,GAAGpf,GAAGF,GAAGH,GAAGO,CAAC,GAAGJ,GAAGH,GAAG,CAAC;AAAA,IAC7B;AACA,QAAI,GAAG;AACN,YAAMG,IAAI+d,GAAG,IAAI;AACjB,UAAIle,IAAI2b,GAAG;AAAA,QAEV,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,aAAa;AAAA,QACb,aAAa;AAAA,QACb,YAAY;AAAA,MAChB,GAAMxb,EAAE,IAAI;AACT,YAAMG,IAAIkQ,EAAG,GAAG5O,EAAC,GAAGlB,IAAI8P,EAAG,GAAG5N,CAAC,GAAGjC,IAAIsa,GAAGva,GAAGJ,GAAGiW,GAAGpW,EAAE,MAAMH,EAAE,SAAS,GAAG,WAAW;AACnF,cAAO,SAASG,GAAGH,GAAGK,GAAGC,GAAG;AAC3B,YAASub,GAAG1b,GAAGH,CAAC,KAAZ,EAAe,QAAO;AAC1B,QAAAya,GAAGta,CAAC,GAAGsa,GAAGza,CAAC;AACX,cAAMI,IAAIqe,GAAGte,GAAGH,GAAGK,GAAGC,CAAC;AACvB,eAAwBA,MAAjB,eAAqBsP,EAAgB,QAAQ,SAASxP,EAAE,KAAK,OAAO,IAAIye,GAAGze,GAAG6Y,GAAGjZ,CAAC,GAAGG,GAAG,MAAME,GAAGC,CAAC;AAAA,MAC1G,GAAEkW,GAAGlW,GAAG;AAAA,QACP,WAAW;AAAA,QACX,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,aAAa;AAAA,QACb,aAAa;AAAA,QACb,YAAY;AAAA,MAChB,CAAI,GAAGkW,GAAG7V,GAAGX,CAAC,GAAGU,GAAG,CAAC;AAAA,IACnB;AACA,UAAMA,IAAImX,GAAG,IAAI;AACjB,QAAIE,GAAGrX,CAAC,EAAG,OAAM,IAAI,WAAW,oCAAoCA,CAAC,SAAS;AAC9E,QAAIqX,GAAG,CAAC,EAAG,OAAM,IAAI,WAAW,oCAAoC,CAAC,SAAS;AAC9E,WAAO+G,GAAGZ,GAAG,IAAI,EAAE,MAAM,CAAC;AAAA,EAC3B;AAAA,EACA,SAAS,IAAI,QAAQ;AACpBhJ,IAAAA,EAAG,MAAMP,EAAE;AACX,UAAMxU,IAAImY,EAAG,CAAC,GAAGtY,IAAIiX,GAAG9W,CAAC,GAAGE,IAAIuW,GAAGzW,GAAG,OAAO,GAAGG,IAAI8W,GAAGjX,GAAG,gBAAgB,QAAQ,MAAM;AACxF,QAAeG,MAAX,UAA6BA,MAAb,SAAgB,OAAM,IAAI,WAAW,kEAAsE;AAC/H,UAAM,EAAE,WAAWF,GAAG,MAAMM,GAAG,WAAWC,MAAMuW,GAAG5W,GAAGN,CAAC;AACvD,QAAqBU,MAAjB,gBAA4BC,MAAN,EAAS,QAAO0b,GAAG,MAAMjc,CAAC;AACpD,UAAMK,IAAIoX,GAAG,IAAI;AACjB,QAAI9W,IAAIkd,GAAG,IAAI;AACf,UAAM,IAAIO,GAAGzd,EAAE,MAAMJ,GAAGD,GAAGL,CAAC;AAC5B,WAAOU,IAAIsd,GAAGtd,EAAE,MAAM,CAAC,GAAGsb,GAAG+B,GAAGrd,GAAG+W,GAAGrX,GAAG,QAAQ,CAAC,GAAGL,CAAC;AAAA,EACvD;AAAA,EACA,SAAS;AACR,WAAO8U,EAAG,MAAMP,EAAE,GAAG0H,GAAG,MAAM,MAAM;AAAA,EACrC;AAAA,EACA,eAAe,IAAI,QAAQlc,IAAI,QAAQ;AACtC,QAAI+U,EAAG,MAAMP,EAAE,GAAiB,OAAO,KAAK,kBAA1B,YAA0C;AAC3D,YAAM3U,IAAI,IAAI,KAAK,eAAe,GAAGG,CAAC;AACtC,aAAO0kB,GAAG,KAAK7kB,GAAG,IAAI;AAAA,IACvB;AACA,WAAO,QAAQ,KAAK,4EAA4E,GAAGqc,GAAG,MAAM,MAAM;AAAA,EACnH;AAAA,EACA,UAAU;AACT,IAAAqE,GAAG,UAAU;AAAA,EACd;AAAA,EACA,OAAO,KAAK,GAAG;AACd,WAAO/H,GAAG,CAAC;AAAA,EACZ;AAAA,EACA,OAAO,QAAQxY,GAAG,GAAG,IAAI,QAAQ;AAChC,UAAMG,IAAIqY,GAAGxY,CAAC,GAAG,IAAIwY,GAAG,CAAC,GAAG,EAAE,iBAAiBhY,GAAG,iBAAiBF,EAAC,IAAK4W,GAAGiB,EAAG,CAAC,CAAC;AACjF,QAAI9H,EAAGlQ,GAAGyP,EAAC,MAAMS,EAAG,GAAGT,EAAC,KAAKS,EAAGlQ,GAAGyC,EAAC,MAAMyN,EAAG,GAAGzN,EAAC,KAAKyN,EAAGlQ,GAAGiB,EAAC,MAAMiP,EAAG,GAAGjP,EAAC,KAAKiP,EAAGlQ,GAAG8B,EAAC,MAAMoO,EAAG,GAAGpO,EAAC,KAAKoO,EAAGlQ,GAAGe,EAAC,MAAMmP,EAAG,GAAGnP,EAAC,KAAKmP,EAAGlQ,GAAGkC,EAAC,MAAMgO,EAAG,GAAGhO,EAAC,KAAKgO,EAAGlQ,GAAGgB,EAAC,MAAMkP,EAAG,GAAGlP,EAAC,KAAKkP,EAAGlQ,GAAG0B,EAAC,MAAMwO,EAAG,GAAGxO,EAAC,KAAKwO,EAAGlQ,GAAGuB,EAAC,MAAM2O,EAAG,GAAG3O,EAAC,KAAK2O,EAAGlQ,GAAG0P,EAAC,MAAMQ,EAAG,GAAGR,EAAC,EAAG,QAAO;AACnQ,UAAMjP,IAAI8W,GAAGvX,CAAC,GAAGM,IAAIiX,GAAG,CAAC,GAAG3X,IAAI+d,GAAG3d,CAAC,GAAGL,IAAIge,GAAG,CAAC;AAC/C,QAAIxd,MAAiBuX,GAAGjX,CAAC,MAAf,UAA+BiX,GAAGpX,CAAC,MAAf,SAAmB;AAChD,YAAMT,IAAIqQ,EAAG/P,GAAGgB,EAAC,GAAGzB,IAAIwQ,EAAG/P,GAAGmC,CAAC,GAAGvC,IAAImQ,EAAG/P,GAAGW,EAAC,GAAGd,IAAImf,GAAGpf,GAAGF,GAAGH,GAAGE,CAAC,GAAGE,IAAIqf,GAAGpf,GAAGF,GAAGH,GAAGC,CAAC;AACrF,aAAOggB,GAAGrQ,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,SAAStP,GAAGF,CAAC,CAAC,CAAC;AAAA,IACnF;AACA,QAAIe,IAAIjB,EAAE,KAAK,MAAMM,IAAIP,EAAE,KAAK;AAChC,QAAI8X,GAAGhX,CAAC,KAAKgX,GAAGnX,CAAC,GAAG;AACnB,UAAI,CAACD,EAAG,OAAM,IAAI,WAAW,qEAAqE;AAClG,MAAAQ,IAAIyc,GAAG1d,EAAE,MAAMS,CAAC,GAAGH,IAAIod,GAAG3d,EAAE,MAAMU,CAAC;AAAA,IACpC;AACA,UAAMsB,IAAI/B,EAAE,KAAK,cAAciB,CAAC,GAAGN,IAAIZ,EAAE,KAAK,cAAcO,CAAC;AAC7D,WAAOyB,EAAE,IAAIpB,CAAC;AAAA,EACf;AACD;AACA8P,GAAGyU,IAAY,mBAAmB;AAClC,IAAIC,KAAgB,MAAM;AAAA,EACzB,YAAY9kB,GAAGJ,GAAG,IAAI,WAAW,IAAI,MAAM;AAC1C,UAAMG,IAAIgT,GAAG/S,CAAC,GAAG,IAAI+S,GAAGnT,CAAC,GAAGO,IAAIgX,GAAc,MAAX,SAAe,YAAYhE,GAAG,CAAC,CAAC,GAAG,IAAIJ,GAAG,CAAC;AAC9E,IAAAqC,GAAG,GAAGrV,GAAG,CAAC,GAAGoa,GAAG,MAAM;AAAA,MACrB,MAAM;AAAA,MACN,OAAOpa;AAAA,MACP,KAAK;AAAA,IACR,GAAKI,CAAC;AAAA,EACL;AAAA,EACA,IAAI,YAAY;AACf,WAAO4kB,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,MAAM;AACT,WAAOA,GAAG,MAAM,KAAK;AAAA,EACtB;AAAA,EACA,IAAI,aAAa;AAChB,WAAOpQ,EAAG,MAAMF,EAAE,GAAGxE,EAAG,MAAM5N,CAAC;AAAA,EAChC;AAAA,EACA,KAAKrC,GAAGJ,IAAI,QAAQ;AACnB,QAAI+U,EAAG,MAAMF,EAAE,GAAG,CAAC7B,GAAG5S,CAAC,EAAG,OAAM,IAAI,UAAU,kBAAkB;AAChE4U,IAAAA,GAAG5U,CAAC;AACJ,UAAM,IAAIiQ,EAAG,MAAM5N,CAAC;AACpB,QAAI,IAAIuV,GAAG,GAAG3H,EAAG,MAAM5O,EAAC,GAAG,WAAW;AACtC,WAAO,IAAIoZ,GAAG,GAAG,GAAGxD,GAAG,GAAGjX,GAAG;AAAA,MAC5B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,CAAA,GAAI,SAAS,CAAC,GAAG4Y,GAAGE,GAAG,GAAG,GAAG5C,GAAG6B,EAAGnY,CAAC,CAAC,CAAC,GAAG,CAAC;AAAA,EAC9C;AAAA,EACA,OAAOI,GAAG;AACT2U,IAAAA,EAAG,MAAMF,EAAE;AACX,UAAM7U,IAAI+Y,GAAG3Y,CAAC;AACd,WAAame,GAAGlO,EAAG,MAAM5O,EAAC,GAAG4O,EAAGrQ,GAAGyB,EAAC,CAAC,MAA9B,KAAmCuZ,GAAG3K,EAAG,MAAM5N,CAAC,GAAG4N,EAAGrQ,GAAGyC,CAAC,CAAC;AAAA,EACnE;AAAA,EACA,SAASrC,IAAI,QAAQ;AACpB,WAAO2U,EAAG,MAAMF,EAAE,GAAGyH,GAAG,MAAM3F,GAAGwB,EAAG/X,CAAC,CAAC,CAAC;AAAA,EACxC;AAAA,EACA,SAAS;AACR,WAAO2U,EAAG,MAAMF,EAAE,GAAGyH,GAAG,IAAI;AAAA,EAC7B;AAAA,EACA,eAAelc,IAAI,QAAQJ,IAAI,QAAQ;AACtC,WAAO+U,EAAG,MAAMF,EAAE,GAAG,IAAIiP,GAAG1jB,GAAGJ,CAAC,EAAE,OAAO,IAAI;AAAA,EAC9C;AAAA,EACA,UAAU;AACT,IAAAugB,GAAG,eAAe;AAAA,EACnB;AAAA,EACA,YAAYngB,GAAG;AACd,QAAI2U,EAAG,MAAMF,EAAE,GAAG,CAAC7B,GAAG5S,CAAC,EAAG,OAAM,IAAI,UAAU,8BAA8B;AAC5E,UAAMJ,IAAIqQ,EAAG,MAAM5N,CAAC;AACpB,WAAO0U,GAAGkB,GAAGrY,GAAG6a,GAAG7a,GAAGgY,GAAGhY,GAAGqQ,EAAG,MAAM5O,EAAC,GAAG,WAAW,GAAG4V,GAAGrX,GAAGI,GAAG,CAAC,MAAM,GAAG,CAAA,GAAI,EAAE,CAAC,GAAG,WAAW,GAAGJ,CAAC;AAAA,EACpG;AAAA,EACA,OAAO,KAAKI,GAAGJ,IAAI,QAAQ;AAC1B,WAAO+Y,GAAG3Y,GAAGJ,CAAC;AAAA,EACf;AACD;AACA,SAASmlB,GAAG/kB,GAAGJ,GAAG;AACjB+U,EAAAA,EAAG3U,GAAGyU,EAAE;AACR,QAAM,IAAIxE,EAAGjQ,GAAGqB,EAAC;AACjB,SAAOsW,GAAG3X,CAAC,EAAE,UAAU,GAAG,EAAE,CAACJ,CAAC,GAAG,IAAI,EAAEA,CAAC;AACzC;AACA,SAASolB,GAAGhlB,GAAG;AACd,SAAOgY,GAAGhY,GAAGggB,IAAI;AAClB;AACA5P,GAAG0U,IAAe,wBAAwB;AAC1C,IAAIG,KAAK;AAAA,EACR,SAAS,MAAM1M,GAAGyH,IAAI;AAAA,EACtB,kBAAkB,CAAChgB,IAAIigB,SAAS9H,GAAG6M,GAAGxR,GAAGxT,CAAC,CAAC,GAAG,SAAS;AAAA,EACvD,cAAc,CAACA,IAAIigB,GAAE,MAAOlJ,GAAGiO,GAAGxR,GAAGxT,CAAC,CAAC,EAAE,SAAS,SAAS;AAAA,EAC3D,cAAc,CAACA,IAAIigB,SAAShH,GAAG+L,GAAGxR,GAAGxT,CAAC,CAAC,EAAE,IAAI;AAAA,EAC7C,YAAY,MAAMigB,GAAE;AAAA,EACpB,kBAAkB,CAACjgB,IAAIigB,SAAS;AAC/B,UAAMrgB,IAAI4T,GAAGxT,CAAC;AACd,WAAOoX,GAAG4I,MAAMpgB,GAAG,SAAS;AAAA,EAC7B;AAAA,EACA,CAAC,OAAO,WAAW,GAAG;AACvB;AACA,OAAO,eAAeqlB,IAAI,OAAO,aAAa;AAAA,EAC7C,OAAO;AAAA,EACP,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,cAAc;AACf,CAAC;AACD,IAAIC,KAAY,MAAMA,GAAU;AAAA,EAC/B,YAAY,IAAI,GAAGtlB,IAAI,GAAGH,IAAI,GAAGK,IAAI,GAAGC,IAAI,GAAGF,IAAI,GAAG;AACrD,UAAMM,IAAe,MAAX,SAAe,IAAI4S,GAAG,CAAC,GAAG3S,IAAeR,MAAX,SAAe,IAAImT,GAAGnT,CAAC,GAAGM,IAAeT,MAAX,SAAe,IAAIsT,GAAGtT,CAAC,GAAGe,IAAeV,MAAX,SAAe,IAAIiT,GAAGjT,CAAC,GAAG,IAAeC,MAAX,SAAe,IAAIgT,GAAGhT,CAAC,GAAGJ,IAAeE,MAAX,SAAe,IAAIkT,GAAGlT,CAAC;AACvL,IAAAqV,GAAG/U,GAAGC,GAAGF,GAAGM,GAAG,GAAGb,CAAC,GAAGya,GAAG,MAAM;AAAA,MAC9B,MAAMja;AAAA,MACN,QAAQC;AAAA,MACR,QAAQF;AAAA,MACR,aAAaM;AAAA,MACb,aAAa;AAAA,MACb,YAAYb;AAAA,IACf,CAAG;AAAA,EACF;AAAA,EACA,IAAI,OAAO;AACV,WAAOgV,EAAG,MAAML,EAAE,GAAGrE,EAAG,MAAM9N,EAAC,EAAE;AAAA,EAClC;AAAA,EACA,IAAI,SAAS;AACZ,WAAOwS,EAAG,MAAML,EAAE,GAAGrE,EAAG,MAAM9N,EAAC,EAAE;AAAA,EAClC;AAAA,EACA,IAAI,SAAS;AACZ,WAAOwS,EAAG,MAAML,EAAE,GAAGrE,EAAG,MAAM9N,EAAC,EAAE;AAAA,EAClC;AAAA,EACA,IAAI,cAAc;AACjB,WAAOwS,EAAG,MAAML,EAAE,GAAGrE,EAAG,MAAM9N,EAAC,EAAE;AAAA,EAClC;AAAA,EACA,IAAI,cAAc;AACjB,WAAOwS,EAAG,MAAML,EAAE,GAAGrE,EAAG,MAAM9N,EAAC,EAAE;AAAA,EAClC;AAAA,EACA,IAAI,aAAa;AAChB,WAAOwS,EAAG,MAAML,EAAE,GAAGrE,EAAG,MAAM9N,EAAC,EAAE;AAAA,EAClC;AAAA,EACA,KAAK,GAAGvC,IAAI,QAAQ;AACnB,QAAI+U,EAAG,MAAML,EAAE,GAAG,CAAC1B,GAAG,CAAC,EAAG,OAAM,IAAI,UAAU,kBAAkB;AAChEgC,IAAAA,GAAG,CAAC;AACJ,UAAMnV,IAAIoY,GAAG,GAAG,SAAS,GAAG/X,IAAI+X,GAAG,IAAI;AACvC,QAAI,EAAE,MAAM9X,GAAG,QAAQF,GAAG,QAAQM,GAAG,aAAaC,GAAG,aAAaF,GAAG,YAAYM,EAAC,IAAK,OAAO,OAAOV,GAAGL,CAAC;AACzG,UAAM,IAAIyW,GAAG6B,EAAGnY,CAAC,CAAC;AAClB,WAAO,EAAC,MAAMG,GAAG,QAAQF,GAAG,QAAQM,GAAG,aAAaC,GAAG,aAAaF,GAAG,YAAYM,EAAC,IAAIqV,GAAG9V,GAAGF,GAAGM,GAAGC,GAAGF,GAAGM,GAAG,CAAC,GAAG,IAAI0kB,GAAUnlB,GAAGF,GAAGM,GAAGC,GAAGF,GAAGM,CAAC;AAAA,EAChJ;AAAA,EACA,IAAI,GAAG;AACN,WAAOmU,EAAG,MAAML,EAAE,GAAGiL,GAAG,OAAO,MAAM,CAAC;AAAA,EACvC;AAAA,EACA,SAAS,GAAG;AACX,WAAO5K,EAAG,MAAML,EAAE,GAAGiL,GAAG,YAAY,MAAM,CAAC;AAAA,EAC5C;AAAA,EACA,MAAM,GAAG3f,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAML,EAAE,GAAGwK,GAAG,SAAS,MAAM,GAAGlf,CAAC;AAAA,EAC5C;AAAA,EACA,MAAM,GAAGA,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAML,EAAE,GAAGwK,GAAG,SAAS,MAAM,GAAGlf,CAAC;AAAA,EAC5C;AAAA,EACA,MAAM,GAAG;AACR,QAAI+U,EAAG,MAAML,EAAE,GAAc,MAAX,OAAc,OAAM,IAAI,UAAU,+BAA+B;AACnF,UAAM1U,IAAgB,OAAO,KAAnB,WAAuBsgB,GAAG,gBAAgB,CAAC,IAAInI,EAAG,CAAC,GAAGtY,IAAI+W,GAAG5W,CAAC,GAAGE,IAAIuW,GAAGzW,GAAG,YAAY,GAAGG,IAAI8W,GAAGjX,GAAG,gBAAgB,QAAQgX,EAAE;AACxI,WAAOH,GAAGhX,GAAG;AAAA,MACZ,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,EAAIM,CAAC,GAAG,EAAE,GAAGkZ,GAAG2G,GAAG3P,EAAG,MAAM9N,EAAC,GAAG1C,GAAGM,GAAGD,CAAC,CAAC;AAAA,EACvC;AAAA,EACA,OAAO,GAAG;AACT6U,IAAAA,EAAG,MAAML,EAAE;AACX,UAAM1U,IAAIoZ,GAAG,CAAC;AACd,WAAa6G,GAAG5P,EAAG,MAAM9N,EAAC,GAAG8N,EAAGrQ,GAAGuC,EAAC,CAAC,MAA9B;AAAA,EACR;AAAA,EACA,SAAS,IAAI,QAAQ;AACpBwS,IAAAA,EAAG,MAAML,EAAE;AACX,UAAM1U,IAAImY,EAAG,CAAC,GAAGtY,IAAIiX,GAAG9W,CAAC,GAAGE,IAAIuW,GAAGzW,GAAG,OAAO,GAAGG,IAAI8W,GAAGjX,GAAG,gBAAgB,QAAQ,MAAM;AACxF,QAAeG,MAAX,OAAc,OAAM,IAAI,WAAW,oDAAsD;AAC7F,UAAM,EAAE,WAAWF,GAAG,MAAMM,GAAG,WAAWC,MAAMuW,GAAG5W,GAAGN,CAAC;AACvD,WAAOwc,GAAG2D,GAAG3P,EAAG,MAAM9N,EAAC,GAAG/B,GAAGD,GAAGL,CAAC,GAAGD,CAAC;AAAA,EACtC;AAAA,EACA,SAAS;AACR,WAAO8U,EAAG,MAAML,EAAE,GAAG2H,GAAGhM,EAAG,MAAM9N,EAAC,GAAG,MAAM;AAAA,EAC5C;AAAA,EACA,eAAe,IAAI,QAAQvC,IAAI,QAAQ;AACtC,WAAO+U,EAAG,MAAML,EAAE,GAAG,IAAIoP,GAAG,GAAG9jB,CAAC,EAAE,OAAO,IAAI;AAAA,EAC9C;AAAA,EACA,UAAU;AACT,IAAAugB,GAAG,WAAW;AAAA,EACf;AAAA,EACA,OAAO,KAAK,GAAGvgB,IAAI,QAAQ;AAC1B,WAAOoZ,GAAG,GAAGpZ,CAAC;AAAA,EACf;AAAA,EACA,OAAO,QAAQ,GAAGA,GAAG;AACpB,UAAMH,IAAIuZ,GAAG,CAAC,GAAGlZ,IAAIkZ,GAAGpZ,CAAC;AACzB,WAAOigB,GAAG5P,EAAGxQ,GAAG0C,EAAC,GAAG8N,EAAGnQ,GAAGqC,EAAC,CAAC;AAAA,EAC7B;AACD;AACAiO,GAAG8U,IAAW,oBAAoB;AAClC,IAAIC,KAAiB,MAAM;AAAA,EAC1B,YAAYnlB,GAAGJ,GAAG,IAAI,WAAW,IAAI,GAAG;AACvC,UAAMG,IAAIgT,GAAG/S,CAAC,GAAG,IAAI+S,GAAGnT,CAAC,GAAGO,IAAIgX,GAAc,MAAX,SAAe,YAAYhE,GAAG,CAAC,CAAC,GAAG,IAAIJ,GAAG,CAAC;AAC9E,IAAAqC,GAAGrV,GAAG,GAAG,CAAC,GAAGsa,GAAG,MAAM;AAAA,MACrB,MAAMta;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,IACR,GAAKI,CAAC;AAAA,EACL;AAAA,EACA,IAAI,OAAO;AACV,WAAOilB,GAAG,MAAM,MAAM;AAAA,EACvB;AAAA,EACA,IAAI,QAAQ;AACX,WAAOA,GAAG,MAAM,OAAO;AAAA,EACxB;AAAA,EACA,IAAI,YAAY;AACf,WAAOA,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOzQ,EAAG,MAAMH,EAAE,GAAGvE,EAAG,MAAM5N,CAAC;AAAA,EAChC;AAAA,EACA,IAAI,MAAM;AACT,WAAO+iB,GAAG,MAAM,KAAK;AAAA,EACtB;AAAA,EACA,IAAI,UAAU;AACb,WAAOA,GAAG,MAAM,SAAS;AAAA,EAC1B;AAAA,EACA,IAAI,cAAc;AACjB,WAAOA,GAAG,MAAM,aAAa;AAAA,EAC9B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,eAAe;AAClB,WAAOA,GAAG,MAAM,cAAc;AAAA,EAC/B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,KAAKplB,GAAGJ,IAAI,QAAQ;AACnB,QAAI+U,EAAG,MAAMH,EAAE,GAAG,CAAC5B,GAAG5S,CAAC,EAAG,OAAM,IAAI,UAAU,kBAAkB;AAChE4U,IAAAA,GAAG5U,CAAC;AACJ,UAAM,IAAIiQ,EAAG,MAAM5N,CAAC;AACpB,QAAI,IAAIuV,GAAG,GAAG3H,EAAG,MAAM5O,EAAC,GAAG,YAAY;AACvC,WAAO,IAAIoZ,GAAG,GAAG,GAAGxD,GAAG,GAAGjX,GAAG;AAAA,MAC5B;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,CAAA,GAAI,SAAS,CAAC,GAAGoZ,GAAGC,GAAG,GAAG,GAAGnD,GAAG6B,EAAGnY,CAAC,CAAC,CAAC,GAAG,CAAC;AAAA,EAC9C;AAAA,EACA,IAAII,GAAGJ,IAAI,QAAQ;AAClB,WAAO+U,EAAG,MAAMH,EAAE,GAAGgL,GAAG,OAAO,MAAMxf,GAAGJ,CAAC;AAAA,EAC1C;AAAA,EACA,SAASI,GAAGJ,IAAI,QAAQ;AACvB,WAAO+U,EAAG,MAAMH,EAAE,GAAGgL,GAAG,YAAY,MAAMxf,GAAGJ,CAAC;AAAA,EAC/C;AAAA,EACA,MAAMI,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMH,EAAE,GAAGuK,GAAG,SAAS,MAAM/e,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,MAAMI,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMH,EAAE,GAAGuK,GAAG,SAAS,MAAM/e,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,OAAOI,GAAG;AACT2U,IAAAA,EAAG,MAAMH,EAAE;AACX,UAAM5U,IAAIuZ,GAAGnZ,CAAC;AACd,WAAame,GAAGlO,EAAG,MAAM5O,EAAC,GAAG4O,EAAGrQ,GAAGyB,EAAC,CAAC,MAA9B,KAAmCuZ,GAAG3K,EAAG,MAAM5N,CAAC,GAAG4N,EAAGrQ,GAAGyC,CAAC,CAAC;AAAA,EACnE;AAAA,EACA,SAASrC,IAAI,QAAQ;AACpB,WAAO2U,EAAG,MAAMH,EAAE,GAAG2H,GAAG,MAAM5F,GAAGwB,EAAG/X,CAAC,CAAC,CAAC;AAAA,EACxC;AAAA,EACA,SAAS;AACR,WAAO2U,EAAG,MAAMH,EAAE,GAAG2H,GAAG,IAAI;AAAA,EAC7B;AAAA,EACA,eAAenc,IAAI,QAAQJ,IAAI,QAAQ;AACtC,WAAO+U,EAAG,MAAMH,EAAE,GAAG,IAAIkP,GAAG1jB,GAAGJ,CAAC,EAAE,OAAO,IAAI;AAAA,EAC9C;AAAA,EACA,UAAU;AACT,IAAAugB,GAAG,gBAAgB;AAAA,EACpB;AAAA,EACA,YAAYngB,GAAG;AACd,QAAI2U,EAAG,MAAMH,EAAE,GAAG,CAAC5B,GAAG5S,CAAC,EAAG,OAAM,IAAI,UAAU,8BAA8B;AAC5E,UAAMJ,IAAIqQ,EAAG,MAAM5N,CAAC;AACpB,WAAO0U,GAAGkB,GAAGrY,GAAG6a,GAAG7a,GAAGgY,GAAGhY,GAAGqQ,EAAG,MAAM5O,EAAC,GAAG,YAAY,GAAG4V,GAAGrX,GAAGI,GAAG,CAAC,KAAK,GAAG,CAAA,GAAI,EAAE,CAAC,GAAG,WAAW,GAAGJ,CAAC;AAAA,EACpG;AAAA,EACA,OAAO,KAAKI,GAAGJ,IAAI,QAAQ;AAC1B,WAAOuZ,GAAGnZ,GAAGJ,CAAC;AAAA,EACf;AAAA,EACA,OAAO,QAAQI,GAAGJ,GAAG;AACpB,UAAM,IAAIuZ,GAAGnZ,CAAC,GAAG,IAAImZ,GAAGvZ,CAAC;AACzB,WAAOue,GAAGlO,EAAG,GAAG5O,EAAC,GAAG4O,EAAG,GAAG5O,EAAC,CAAC;AAAA,EAC7B;AACD;AACA,SAAS+jB,GAAGplB,GAAGJ,GAAG;AACjB+U,EAAAA,EAAG3U,GAAGwU,EAAE;AACR,QAAM,IAAIvE,EAAGjQ,GAAGqB,EAAC;AACjB,SAAOsW,GAAG3X,CAAC,EAAE,UAAU,GAAG,EAAE,CAACJ,CAAC,GAAG,IAAI,EAAEA,CAAC;AACzC;AACAwQ,GAAG+U,IAAgB,yBAAyB;AAC5C,IAAIE,KAAK3B,GAAG,UAAU,iBAClB4B,KAAgB,MAAM;AAAA,EACzB,YAAYtlB,GAAGJ,GAAG,IAAI,WAAW;AAChC,QAAI,UAAU,SAAS,EAAG,OAAM,IAAI,UAAU,gDAAgD;AAC9F,UAAM,IAAImgB,GAAG/f,CAAC;AACd,QAAID,IAAIoT,GAAGvT,CAAC;AACZ,UAAM,EAAE,QAAQ,GAAG,eAAeO,EAAC,IAAKuV,GAAG3V,CAAC;AAC5C,QAAeI,MAAX,QAAc;AACjB,YAAMH,IAAI8a,GAAG,CAAC;AACd,UAAI,CAAC9a,EAAG,OAAM,IAAI,WAAW,qBAAqB,CAAC,EAAE;AACrD,MAAAD,IAAIC,EAAE;AAAA,IACP,MAAO,CAAAD,IAAI8a,GAAG1a,CAAC;AACf,IAAAoa,GAAG,MAAM,GAAGxa,GAAGoX,GAAc,MAAX,SAAe,YAAYhE,GAAG,CAAC,CAAC,CAAC;AAAA,EACpD;AAAA,EACA,IAAI,aAAa;AAChB,WAAOwB,EAAG,MAAMD,EAAE,GAAGzE,EAAG,MAAM5N,CAAC;AAAA,EAChC;AAAA,EACA,IAAI,aAAa;AAChB,WAAOsS,EAAG,MAAMD,EAAE,GAAGzE,EAAG,MAAM/O,EAAC;AAAA,EAChC;AAAA,EACA,IAAI,OAAO;AACV,WAAOqkB,GAAG,MAAM,MAAM;AAAA,EACvB;AAAA,EACA,IAAI,QAAQ;AACX,WAAOA,GAAG,MAAM,OAAO;AAAA,EACxB;AAAA,EACA,IAAI,YAAY;AACf,WAAOA,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,MAAM;AACT,WAAOA,GAAG,MAAM,KAAK;AAAA,EACtB;AAAA,EACA,IAAI,OAAO;AACV,WAAOC,GAAG,MAAM,MAAM;AAAA,EACvB;AAAA,EACA,IAAI,SAAS;AACZ,WAAOA,GAAG,MAAM,QAAQ;AAAA,EACzB;AAAA,EACA,IAAI,SAAS;AACZ,WAAOA,GAAG,MAAM,QAAQ;AAAA,EACzB;AAAA,EACA,IAAI,cAAc;AACjB,WAAOA,GAAG,MAAM,aAAa;AAAA,EAC9B;AAAA,EACA,IAAI,cAAc;AACjB,WAAOA,GAAG,MAAM,aAAa;AAAA,EAC9B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,MAAM;AACT,WAAOD,GAAG,MAAM,KAAK;AAAA,EACtB;AAAA,EACA,IAAI,UAAU;AACb,WAAOA,GAAG,MAAM,SAAS;AAAA,EAC1B;AAAA,EACA,IAAI,oBAAoB;AACvB,WAAO5Q,EAAG,MAAMD,EAAE,GAAGkI,GAAG3M,EAAG,MAAMpP,EAAC,GAAG,OAAO;AAAA,EAC7C;AAAA,EACA,IAAI,mBAAmB;AACtB,WAAO8T,EAAG,MAAMD,EAAE,GAAGoL,GAAG7P,EAAG,MAAMpP,EAAC,CAAC;AAAA,EACpC;AAAA,EACA,IAAI,YAAY;AACf,WAAO0kB,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,YAAY;AACf,WAAOA,GAAG,MAAM,WAAW;AAAA,EAC5B;AAAA,EACA,IAAI,aAAa;;AAChB,YAAO3iB,IAAA2iB,GAAG,MAAM,YAAY,MAArB,gBAAA3iB,EAAwB;AAAA,EAChC;AAAA,EACA,IAAI,aAAa;;AAChB,YAAOA,IAAA2iB,GAAG,MAAM,YAAY,MAArB,gBAAA3iB,EAAwB;AAAA,EAChC;AAAA,EACA,IAAI,aAAa;AAChB+R,IAAAA,EAAG,MAAMD,EAAE;AACX,UAAM1U,IAAIiQ,EAAG,MAAM/O,EAAC,GAAGtB,IAAI6lB,GAAG,IAAI,EAAE,SAAS,IAAIpK,GAAGzb,EAAE,MAAMA,EAAE,OAAOA,EAAE,MAAM,CAAC,GAAG,IAAI2Z,GAAGvZ,GAAGJ,CAAC,GAAGG,IAAIwZ,GAAGvZ,GAAG,CAAC;AAC1G,WAAOue,GAAG5N,GAAa,gBAAgB5Q,GAAG,CAAC,GAAG,MAAM;AAAA,EACrD;AAAA,EACA,IAAI,aAAa;AAChB,WAAOwlB,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,cAAc;AACjB,WAAOA,GAAG,MAAM,aAAa;AAAA,EAC9B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,eAAe;AAClB,WAAOA,GAAG,MAAM,cAAc;AAAA,EAC/B;AAAA,EACA,IAAI,aAAa;AAChB,WAAOA,GAAG,MAAM,YAAY;AAAA,EAC7B;AAAA,EACA,IAAI,SAAS;AACZ,WAAO5Q,EAAG,MAAMD,EAAE,GAAGkF,GAAGoB,GAAG/K,EAAG,MAAM/O,EAAC,GAAG+O,EAAG,MAAMpP,EAAC,CAAC,CAAC;AAAA,EACrD;AAAA,EACA,IAAI,oBAAoB;AACvB,WAAO8T,EAAG,MAAMD,EAAE,GAAGsG,GAAG/K,EAAG,MAAM/O,EAAC,GAAG+O,EAAG,MAAMpP,EAAC,CAAC;AAAA,EACjD;AAAA,EACA,KAAKb,GAAGJ,IAAI,QAAQ;AACnB,QAAI+U,EAAG,MAAMD,EAAE,GAAG,CAAC9B,GAAG5S,CAAC,EAAG,OAAM,IAAI,UAAU,8BAA8B;AAC5E4U,IAAAA,GAAG5U,CAAC;AACJ,UAAM,IAAIiQ,EAAG,MAAM5N,CAAC,GAAG,IAAI4N,EAAG,MAAM/O,EAAC,GAAGnB,IAAIib,GAAG,GAAG/K,EAAG,MAAMpP,EAAC,CAAC,GAAG,IAAI4kB,GAAG,IAAI;AAC3E,QAAItlB,IAAI;AAAA,MACP,GAAGyX,GAAG,GAAG,EAAE,OAAO;AAAA,MAClB,GAAG,EAAE;AAAA,MACL,QAAQgC,GAAG7Z,CAAC;AAAA,IACf;AACE,IAAAI,IAAIsa,GAAG,GAAGta,GAAG8W,GAAG,GAAGjX,GAAG;AAAA,MACrB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH,GAAK,SAAS,CAAC;AACb,UAAM,IAAI+X,EAAGnY,CAAC,GAAGM,IAAIkW,GAAG,CAAC,GAAG5V,IAAI8V,GAAG,GAAG,QAAQ,GAAGjW,IAAI6W,GAAG,GAAG/W,GAAG+V,GAAG,CAAC,CAAC,GAAGvW,IAAI4T,GAAGpT,EAAE,MAAM;AACrF,WAAOiX,GAAGC,GAAGhX,EAAE,SAASA,EAAE,MAAM,UAAUV,GAAG,GAAGO,GAAGM,GAAG,EAAE,GAAG,GAAG,CAAC;AAAA,EAChE;AAAA,EACA,cAAcR,IAAI,QAAQ;AACzB2U,IAAAA,EAAG,MAAMD,EAAE;AACX,UAAM9U,IAAIqQ,EAAG,MAAM/O,EAAC,GAAG,IAAI+O,EAAG,MAAM5N,CAAC,GAAG,IAAIojB,GAAG,IAAI,EAAE;AACrD,QAAI1lB;AACJ,WAAOA,IAAeC,MAAX,SAAeuZ,GAAG3Z,GAAG,CAAC,IAAI4Z,GAAG5Z,GAAGqW,GAAG,GAAGhG,EAAG+I,GAAGhZ,CAAC,GAAGmC,EAAC,CAAC,GAAG,YAAY,GAAGiV,GAAGrX,GAAGH,GAAG,CAAC;AAAA,EAC1F;AAAA,EACA,aAAaI,GAAG;AACf2U,IAAAA,EAAG,MAAMD,EAAE;AACX,UAAM9U,IAAI4T,GAAGxT,CAAC;AACd,WAAOoX,GAAGnH,EAAG,MAAMpP,EAAC,GAAGjB,GAAGqQ,EAAG,MAAM5N,CAAC,CAAC;AAAA,EACtC;AAAA,EACA,aAAarC,GAAG;AACf2U,IAAAA,EAAG,MAAMD,EAAE;AACX,UAAM9U,IAAIiZ,GAAG7Y,CAAC;AACd,WAAOoX,GAAGnH,EAAG,MAAMpP,EAAC,GAAGoP,EAAG,MAAM/O,EAAC,GAAGtB,CAAC;AAAA,EACtC;AAAA,EACA,IAAII,GAAGJ,IAAI,QAAQ;AAClB,WAAO+U,EAAG,MAAMD,EAAE,GAAG+K,GAAG,OAAO,MAAMzf,GAAGJ,CAAC;AAAA,EAC1C;AAAA,EACA,SAASI,GAAGJ,IAAI,QAAQ;AACvB,WAAO+U,EAAG,MAAMD,EAAE,GAAG+K,GAAG,YAAY,MAAMzf,GAAGJ,CAAC;AAAA,EAC/C;AAAA,EACA,MAAMI,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMD,EAAE,GAAGsK,GAAG,SAAS,MAAMhf,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,MAAMI,GAAGJ,IAAI,QAAQ;AACpB,WAAO+U,EAAG,MAAMD,EAAE,GAAGsK,GAAG,SAAS,MAAMhf,GAAGJ,CAAC;AAAA,EAC5C;AAAA,EACA,MAAM,GAAG;AACR,QAAI+U,EAAG,MAAMD,EAAE,GAAc,MAAX,OAAc,OAAM,IAAI,UAAU,+BAA+B;AACnF,UAAMjV,IAAgB,OAAO,KAAnB,WAAuBygB,GAAG,gBAAgB,CAAC,IAAInI,EAAG,CAAC,GAAGjY,IAAI0W,GAAG/W,CAAC,GAAGM,IAAIsW,GAAG5W,GAAG,YAAY,GAAGI,IAAIgX,GAAGpX,GAAG,gBAAgB,QAAQmX,IAAI,CAAC,KAAK,CAAC,GAAGzW,IAAI;AAAA,MACvJ,KAAK;AAAA,MACL,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,aAAa;AAAA,MACb,YAAY;AAAA,IACf,EAAIN,CAAC;AACH,QAAI4W,GAAG3W,GAAGK,GAASA,MAAN,CAAO,GAAoBN,MAAjB,gBAA4BC,MAAN,EAAS,QAAOsX,GAAGnH,EAAG,MAAMpP,EAAC,GAAGoP,EAAG,MAAM/O,EAAC,GAAG+O,EAAG,MAAM5N,CAAC,CAAC;AACrG,UAAMjC,IAAI6P,EAAG,MAAM/O,EAAC,GAAGhB,IAAI+P,EAAG,MAAMpP,EAAC,GAAGL,IAAIilB,GAAG,IAAI;AACnD,QAAIplB;AACJ,QAAcR,MAAV,OAAa;AAChB,YAAMD,IAAIY,EAAE,SAASf,IAAI4b,GAAGzb,EAAE,MAAMA,EAAE,OAAOA,EAAE,MAAM,CAAC,GAAGE,IAAIyZ,GAAGnZ,GAAGR,CAAC,GAAGC,IAAI0Z,GAAGnZ,GAAGX,CAAC,GAAGU,IAAIkP,EAAgB,QAAQ,SAASxP,GAAGC,CAAC;AAC9H,MAAAO,IAAIsQ,GAAa,gBAAgBzQ,GAAGJ,CAAC,EAAE,MAAMK,GAAGJ,CAAC,EAAE,aAAaD,CAAC;AAAA,IAClE,OAAO;AACN,YAAME,IAAI2f,GAAGnf,GAAGV,GAAGD,GAAGE,CAAC,GAAGH,IAAIob,GAAG5a,GAAGF,CAAC;AACrC,MAAAG,IAAIgX,GAAGrX,EAAE,SAASA,EAAE,MAAM,UAAUJ,GAAGQ,GAAG,cAAc,UAAU,EAAE;AAAA,IACrE;AACA,WAAOgX,GAAG/W,GAAGD,GAAG6P,EAAG,MAAM5N,CAAC,CAAC;AAAA,EAC5B;AAAA,EACA,OAAO,GAAG;AACTsS,IAAAA,EAAG,MAAMD,EAAE;AACX,UAAMjV,IAAIsa,GAAG,CAAC,GAAGja,IAAImQ,EAAG,MAAMpP,EAAC,GAAGd,IAAIkQ,EAAGxQ,GAAGoB,EAAC;AAC7C,WAAO,CAAC,CAACwO,EAAgB,QAAQ,MAAMA,EAAgB,QAAQ,OAAOvP,CAAC,GAAGuP,EAAgB,QAAQ,OAAOtP,CAAC,CAAC,KAAK,CAAC,CAACgb,GAAG9K,EAAG,MAAM/O,EAAC,GAAG+O,EAAGxQ,GAAGyB,EAAC,CAAC,KAAK0Z,GAAG3K,EAAG,MAAM5N,CAAC,GAAG4N,EAAGxQ,GAAG4C,CAAC,CAAC;AAAA,EACxK;AAAA,EACA,SAASrC,IAAI,QAAQ;AACpB2U,IAAAA,EAAG,MAAMD,EAAE;AACX,UAAM9U,IAAImY,EAAG/X,CAAC,GAAG,IAAIuW,GAAG3W,CAAC,GAAG,IAAI8W,GAAG9W,CAAC,GAAGG,KAAI,SAASC,GAAG;AACtD,aAAOmW,GAAGnW,GAAG,UAAU,CAAC,QAAQ,OAAO,GAAG,MAAM;AAAA,IACjD,GAAEJ,CAAC,GAAG,IAAIyW,GAAGzW,GAAG,OAAO,GAAGO,IAAI0W,GAAGjX,GAAG,gBAAgB,QAAQ,MAAM;AAClE,QAAeO,MAAX,OAAc,OAAM,IAAI,WAAW,oDAAsD;AAC7F,UAAM,KAAI,SAASH,GAAG;AACrB,aAAOmW,GAAGnW,GAAG,gBAAgB;AAAA,QAC5B;AAAA,QACA;AAAA,QACA;AAAA,MACJ,GAAM,MAAM;AAAA,IACV,GAAEJ,CAAC,GAAG,EAAE,WAAWM,GAAG,MAAMM,GAAG,WAAWH,EAAC,IAAKsW,GAAGxW,GAAG,CAAC;AACvD,WAAOic,GAAG,MAAMlc,GAAG,GAAG,GAAGH,GAAG;AAAA,MAC3B,MAAMS;AAAA,MACN,WAAWH;AAAA,MACX,cAAc;AAAA,IACjB,CAAG;AAAA,EACF;AAAA,EACA,eAAeL,IAAI,QAAQJ,IAAI,QAAQ;AACtC+U,IAAAA,EAAG,MAAMD,EAAE;AACX,UAAM,IAAIqD,EAAGnY,CAAC,GAAG,IAAI,uBAAO,OAAO,IAAI;AACvC,SAAI,SAASI,GAAGJ,GAAGH,GAAGK,GAAG;AACxB,UAAYF,KAAR,KAAW;AACf,YAAMG,IAAI,QAAQ,QAAQH,CAAC;AAC3B,eAASC,IAAI,GAAGA,IAAIE,EAAE,QAAQF,KAAK;AAClC,cAAMM,IAAIJ,EAAEF,CAAC;AACb,QAAI,CAACJ,EAAE,MAAM,CAACO,MAAM,OAAO,GAAGA,GAAGG,CAAC,OAAO,OAAO,UAAU,qBAAqB,KAAKP,GAAGO,CAAC,MAAGH,EAAEG,CAAC,IAAIP,EAAEO,CAAC;AAAA,MACtG;AAAA,IACD,GAAE,GAAG,GAAG,CAAC,UAAU,CAAC,GAAc,EAAE,aAAb,OAAuB,OAAM,IAAI,UAAU,gEAAgE;AAClI,QAAe,EAAE,SAAb,UAAgC,EAAE,UAAb,UAAiC,EAAE,QAAb,UAA+B,EAAE,QAAb,UAA+B,EAAE,YAAb,UAAmC,EAAE,cAAb,UAAqC,EAAE,SAAb,UAAgC,EAAE,WAAb,UAAkC,EAAE,WAAb,UAAkC,EAAE,2BAAb,UAAkD,EAAE,cAAb,UAAqC,EAAE,cAAb,UAAqC,EAAE,iBAAb,WAA8B,EAAE,eAAe,UAAU,EAAE,WAAW8P,EAAG,MAAM/O,EAAC,GAAGob,GAAG,EAAE,QAAQ,EAAG,OAAM,IAAI,WAAW,6DAA6D;AAC5d,UAAMvc,IAAI,IAAI2jB,GAAG1jB,GAAG,CAAC,GAAG,IAAIqlB,GAAG,KAAKtlB,CAAC,EAAE,UAAUI,IAAI8P,EAAG,MAAM5N,CAAC;AAC/D,QAAkBlC,MAAd,aAAiC,MAAd,aAAmB,CAACya,GAAG,GAAGza,CAAC,EAAG,OAAM,IAAI,WAAW,6CAA6CA,CAAC,4BAA4B,CAAC,EAAE;AACvJ,WAAOJ,EAAE,OAAOwY,GAAGtI,EAAG,MAAMpP,EAAC,CAAC,CAAC;AAAA,EAChC;AAAA,EACA,SAAS;AACR,WAAO8T,EAAG,MAAMD,EAAE,GAAG0H,GAAG,MAAM,MAAM;AAAA,EACrC;AAAA,EACA,UAAU;AACT,IAAA+D,GAAG,eAAe;AAAA,EACnB;AAAA,EACA,aAAa;AACZxL,IAAAA,EAAG,MAAMD,EAAE;AACX,UAAM1U,IAAIiQ,EAAG,MAAM/O,EAAC;AACpB,WAAOkW,GAAGmC,GAAGvZ,GAAGylB,GAAG,IAAI,EAAE,OAAO,GAAGzlB,GAAGiQ,EAAG,MAAM5N,CAAC,CAAC;AAAA,EAClD;AAAA,EACA,sBAAsBrC,GAAG;AACxB2U,IAAAA,EAAG,MAAMD,EAAE;AACX,UAAM9U,IAAIqQ,EAAG,MAAM/O,EAAC;AACpB,QAAelB,MAAX,OAAc,OAAM,IAAI,UAAU,+BAA+B;AACrE,UAAM,IAAImW,GAAe,OAAOnW,KAAnB,WAAuBkgB,GAAG,aAAalgB,CAAC,IAAI+X,EAAG/X,CAAC,GAAG,aAAa,CAAC,QAAQ,UAAU,GAAG4W,EAAE;AACrG,QAAe,MAAX,OAAc,OAAM,IAAI,UAAU,8BAA8B;AACpE,QAAI0F,GAAG1c,CAAC,KAAeA,MAAV,MAAa,QAAO;AACjC,UAAM,IAAIqQ,EAAG,MAAMpP,EAAC,GAAGd,IAAe,MAAX,SAAeyb,GAAG5b,GAAG,CAAC,IAAIkd,GAAGld,GAAG,CAAC;AAC5D,WAAgBG,MAAT,OAAa,OAAOqX,GAAGrX,GAAGH,GAAGqQ,EAAG,MAAM5N,CAAC,CAAC;AAAA,EAChD;AAAA,EACA,YAAY;AACX,WAAOsS,EAAG,MAAMD,EAAE,GAAG6D,GAAGtI,EAAG,MAAMpP,EAAC,CAAC;AAAA,EACpC;AAAA,EACA,cAAc;AACb,WAAO8T,EAAG,MAAMD,EAAE,GAAGqC,GAAG0O,GAAG,IAAI,EAAE,SAASxV,EAAG,MAAM5N,CAAC,CAAC;AAAA,EACtD;AAAA,EACA,cAAc;AACb,WAAOsS,EAAG,MAAMD,EAAE,GAAGuE,GAAGwM,GAAG,IAAI,EAAE,IAAI;AAAA,EACtC;AAAA,EACA,kBAAkB;AACjB,WAAO9Q,EAAG,MAAMD,EAAE,GAAGyD,GAAGsN,GAAG,IAAI,GAAGxV,EAAG,MAAM5N,CAAC,CAAC;AAAA,EAC9C;AAAA,EACA,OAAO,KAAKrC,GAAGJ,IAAI,QAAQ;AAC1B,WAAOma,GAAG/Z,GAAGJ,CAAC;AAAA,EACf;AAAA,EACA,OAAO,QAAQ,GAAGH,GAAG;AACpB,UAAMK,IAAIia,GAAG,CAAC,GAAGha,IAAIga,GAAGta,CAAC,GAAGI,IAAIoQ,EAAGnQ,GAAGe,EAAC,GAAGV,IAAI8P,EAAGlQ,GAAGc,EAAC;AACrD,WAAOwO,EAAgB,QAAQ,SAASA,EAAgB,QAAQ,OAAOxP,CAAC,GAAGwP,EAAgB,QAAQ,OAAOlP,CAAC,CAAC,IAAI,KAAKkP,EAAgB,QAAQ,YAAYA,EAAgB,QAAQ,OAAOxP,CAAC,GAAGwP,EAAgB,QAAQ,OAAOlP,CAAC,CAAC,IAAI,IAAI;AAAA,EACtO;AACD;AACA,SAASslB,GAAGzlB,GAAG;AACd,SAAOgY,GAAG/H,EAAGjQ,GAAGkB,EAAC,GAAG+O,EAAGjQ,GAAGa,EAAC,CAAC;AAC7B;AACA,SAAS0kB,GAAGvlB,GAAGJ,GAAG;AACjB+U,EAAAA,EAAG3U,GAAG0U,EAAE;AACR,QAAM,IAAI+Q,GAAGzlB,CAAC,EAAE;AAChB,SAAO2X,GAAG3X,CAAC,EAAE,UAAU,GAAG,EAAE,CAACJ,CAAC,GAAG,IAAI,EAAEA,CAAC;AACzC;AACA,SAAS4lB,GAAGxlB,GAAGJ,GAAG;AACjB,SAAO+U,EAAG3U,GAAG0U,EAAE,GAAG+Q,GAAGzlB,CAAC,EAAE,KAAKJ,CAAC;AAC/B;AACAwQ,GAAGkV,IAAe,wBAAwB;AAC1C,IAAII,KAAK,OAAO,OAAO;AAAA,EACtB,WAAW;AAAA,EACX,UAAUb;AAAA,EACV,SAAAN;AAAA,EACA,KAAKU;AAAA,EACL,WAAAT;AAAA,EACA,eAAAE;AAAA,EACA,eAAAI;AAAA,EACA,WAAAI;AAAA,EACA,gBAAAC;AAAA,EACA,eAAAG;AACD,CAAC,GAMGK,KAAK;AAAA,EACRpB;AAAA,EACAC;AAAA,EACAE;AAAA,EACAG;AAAA,EACAC;AAAA,EACAI;AAAA,EACAC;AAAA,EACAG;AACD;AACA,WAAWtlB,KAAK2lB,IAAI;AACnB,QAAM/lB,IAAI,OAAO,yBAAyBI,GAAG,WAAW;AACxD,GAACJ,EAAE,gBAAgBA,EAAE,cAAcA,EAAE,cAAcA,EAAE,eAAe,IAAIA,EAAE,aAAa,IAAIA,EAAE,WAAW,IAAI,OAAO,eAAeI,GAAG,aAAaJ,CAAC;AACpJ;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQI,OAAO,aAAe,OAAe,CAAC,WAAW,aAAU,WAAW,WAAW8lB;AACrF/iB,GAAc,YAAW,EAAG,YAAYuL,EAAW;ACjrOnD,IAAIrO,KAAE,OAAO,IAAI,gBAAgB;AAAE,SAASD,KAAG;AAAC,MAAKQ,KAAE;AAA4QA,IAAAA;AAAAA,OAAzQ;AAAC,QAAIP,GAAED,IAAE;AAAqF,UAAjF,WAAU;AAAC,UAAIC,IAAEK;AAAW,WAATA,KAAE,QAAsBL,MAAT;AAAY,QAAGA,EAAE,EAAE,MAAIA,EAAE,MAAEA,EAAE,EAAE,IAAEA,EAAE,IAAEA,IAAEA,EAAE;AAAA,IAAE,GAAC,GAAkBQ,OAAT,UAAW;AAAC,UAAI,IAAEA;AAAe,WAAbA,KAAE,QAAOE,MAAmB,MAAT,UAAW;AAAC,YAAI,IAAE,EAAE;AAAqB,YAAnB,EAAE,IAAE,QAAO,EAAE,KAAG,IAAM,EAAE,IAAE,EAAE,MAAIE,GAAE,CAAC,EAAE,KAAG;AAAC,YAAE,EAAC;AAAA,QAAE,SAAOhB,GAAE;AAAC,UAAIG,MAAGC,IAAEJ,GAAEG,IAAE;AAAA,QAAG;AAAC,YAAE;AAAA,MAAC;AAAA,IAAC;AAAS,QAARW,KAAE,GAAEH,MAAOR,EAAE,OAAMC;AAAA,EAAC;AAAS;AAAC,SAASJ,GAAEI,GAAE;AAAC,MAAGO,KAAE,EAAE,QAAOP,EAAC;AAAGG,EAAAA,KAAE,EAAEL,IAAES;AAAI,MAAG;AAAC,WAAOP,EAAC;AAAA,EAAE,UAAC;AAAQD,IAAAA,GAAC;AAAA,EAAE;AAAC;AAAC,IAAIE,KAAE;AAAO,SAASC,GAAEF,GAAE;AAAC,MAAID,IAAEE;AAAEA,EAAAA,KAAE;AAAO,MAAG;AAAC,WAAOD,EAAC;AAAA,EAAE,UAAC;AAAQC,IAAAA,KAAEF;AAAA,EAAC;AAAC;AAAI,IAAGS,KAAE,QAAOD,KAAE,GAAEG,KAAE,GAAEZ,KAAE,GAAEK,KAAE,GAAEE,KAAE,QAAOM,KAAE;AAAE,SAASL,GAAEN,GAAE;AAAC,MAAYC,OAAT,QAAW;AAAC,QAAIF,IAAEC,EAAE;AAAE,QAAYD,MAAT,UAAYA,EAAE,MAAIE;AAAG,aAAAF,IAAE,EAAC,GAAE,GAAE,GAAEC,GAAE,GAAEC,GAAE,GAAE,GAAE,QAAO,GAAEA,IAAE,GAAE,QAAO,GAAE,QAAO,GAAEF,EAAC,GAAcE,GAAE,MAAX,WAAaA,GAAE,EAAE,IAAEF,IAAEE,GAAE,IAAEF,GAAEC,EAAE,IAAED,GAAK,KAAGE,GAAE,KAAED,EAAE,EAAED,CAAC,GAASA;AAAO,QAAQA,EAAE,MAAP;AAAU,aAAAA,EAAE,IAAE,GAAcA,EAAE,MAAX,WAAcA,EAAE,EAAE,IAAEA,EAAE,GAAcA,EAAE,MAAX,WAAaA,EAAE,EAAE,IAAEA,EAAE,IAAEA,EAAE,IAAEE,GAAE,GAAEF,EAAE,IAAE,QAAOE,GAAE,EAAE,IAAEF,GAAEE,GAAE,IAAEF,IAASA;AAAA,EAAE;AAAC;AAAC,SAASF,GAAEG,GAAED,GAAE;AAAC,OAAK,IAAEC,GAAE,KAAK,IAAE,GAAE,KAAK,IAAE,QAAO,KAAK,IAAE,QAAO,KAAK,IAAE,GAAE,KAAK,IAAQD,KAAN,OAAQ,SAAOA,EAAE,SAAQ,KAAK,IAAQA,KAAN,OAAQ,SAAOA,EAAE,WAAU,KAAK,OAAWA,KAAN,OAAQ,SAAOA,EAAE;AAAI;AAACF,GAAE,UAAU,QAAMG;AAAEH,GAAE,UAAU,IAAE,WAAU;AAAC,SAAM;AAAE;AAAEA,GAAE,UAAU,IAAE,SAASG,GAAE;AAAC,MAAID,IAAE,MAAK,IAAE,KAAK;AAAE,EAAG,MAAIC,KAAYA,EAAE,MAAX,WAAcA,EAAE,IAAE,GAAE,KAAK,IAAEA,GAAc,MAAT,SAAW,EAAE,IAAEA,IAAOE,GAAE,WAAU;AAAC,QAAIF;AAAE,KAAOA,IAAED,EAAE,MAAX,QAAeC,EAAE,KAAKD,CAAC;AAAA,EAAC,CAAC;AAAE;AAAEF,GAAE,UAAU,IAAE,SAASG,GAAE;AAAC,MAAID,IAAE;AAAK,MAAY,KAAK,MAAd,QAAgB;AAAC,QAAI,IAAEC,EAAE,GAAE,IAAEA,EAAE;AAAE,IAAY,MAAT,WAAY,EAAE,IAAE,GAAEA,EAAE,IAAE,SAAmB,MAAT,WAAY,EAAE,IAAE,GAAEA,EAAE,IAAE,SAAUA,MAAI,KAAK,MAAG,KAAK,IAAE,GAAc,MAAT,UAAWE,GAAE,WAAU;AAAC,UAAIF;AAAE,OAAOA,IAAED,EAAE,MAAX,QAAeC,EAAE,KAAKD,CAAC;AAAA,IAAC,CAAC;AAAA,EAAE;AAAC;AAAEF,GAAE,UAAU,YAAU,SAASG,GAAE;AAAC,MAAID,IAAE;AAAK,SAAOiC,GAAE,WAAU;AAAC,QAAI,IAAEjC,EAAE;AAAMG,IAAAA,GAAE,WAAU;AAAC,aAAOF,EAAE,CAAC;AAAA,IAAC,CAAC;AAAA,EAAC,GAAE,EAAC,MAAK,MAAK,CAAC;AAAC;AAAEH,GAAE,UAAU,UAAQ,WAAU;AAAC,SAAO,KAAK;AAAK;AAAEA,GAAE,UAAU,WAAS,WAAU;AAAC,SAAO,KAAK,QAAM;AAAE;AAAEA,GAAE,UAAU,SAAO,WAAU;AAAC,SAAO,KAAK;AAAK;AAAEA,GAAE,UAAU,OAAK,WAAU;AAAC,MAAIG,IAAE;AAAK,SAAOE,GAAE,WAAU;AAAC,WAAOF,EAAE;AAAA,EAAK,CAAC;AAAC;AAAE,OAAO,eAAeH,GAAE,WAAU,SAAQ,EAAC,KAAI,WAAU;AAAC,MAAIG,IAAEM,GAAE,IAAI;AAAE,SAAYN,MAAT,WAAWA,EAAE,IAAE,KAAK,IAAS,KAAK;AAAC,GAAE,KAAI,SAASA,GAAE;AAAC,MAAGA,MAAI,KAAK,GAAE;AAAC,QAAGU,KAAE,IAAI,OAAM,IAAI,MAAM,gBAAgB;AAAE,KAAC,SAASV,GAAE;AAAC,MAAOO,OAAJ,KAAWG,OAAJ,KAASV,EAAE,MAAIG,OAAGH,EAAE,IAAEG,IAAEE,KAAE,EAAC,GAAEL,GAAE,GAAEA,EAAE,GAAE,GAAEA,EAAE,GAAE,GAAEK,GAAC;AAAA,IAAE,GAAE,IAAI,GAAE,KAAK,IAAEL,GAAE,KAAK,KAAIW,MAAIJ;AAAI,QAAG;AAAC,eAAQX,IAAE,KAAK,GAAWA,MAAT,QAAWA,IAAEA,EAAE,EAAE,CAAAA,EAAE,EAAE,EAAC;AAAA,IAAE,UAAC;AAAQG,MAAAA,GAAC;AAAA,IAAE;AAAA,EAAC;AAAC,EAAC,CAAC;AAAE,SAAS8B,GAAE7B,GAAED,GAAE;AAAC,SAAO,IAAIF,GAAEG,GAAED,CAAC;AAAC;AAAC,SAASa,GAAEZ,GAAE;AAAC,WAAQD,IAAEC,EAAE,GAAWD,MAAT,QAAWA,IAAEA,EAAE,EAAE,KAAGA,EAAE,EAAE,MAAIA,EAAE,KAAG,CAACA,EAAE,EAAE,OAAKA,EAAE,EAAE,MAAIA,EAAE,EAAE,QAAM;AAAG,SAAM;AAAE;AAAC,SAASc,GAAEb,GAAE;AAAC,WAAQD,IAAEC,EAAE,GAAWD,MAAT,QAAWA,IAAEA,EAAE,GAAE;AAAC,QAAI,IAAEA,EAAE,EAAE;AAAqC,QAAvB,MAAT,WAAWA,EAAE,IAAE,IAAEA,EAAE,EAAE,IAAEA,GAAEA,EAAE,IAAE,IAAeA,EAAE,MAAX,QAAa;AAAC,MAAAC,EAAE,IAAED;AAAE;AAAA,IAAK;AAAA,EAAC;AAAC;AAAC,SAASiB,GAAEhB,GAAE;AAAoB,WAAfD,IAAEC,EAAE,GAAE,IAAE,QAAsBD,MAAT,UAAW;AAAC,QAAI,IAAEA,EAAE;AAAE,IAAQA,EAAE,MAAP,MAAUA,EAAE,EAAE,EAAEA,CAAC,GAAc,MAAT,WAAW,EAAE,IAAEA,EAAE,IAAcA,EAAE,MAAX,WAAaA,EAAE,EAAE,IAAE,MAAO,IAAEA,GAAEA,EAAE,EAAE,IAAEA,EAAE,GAAcA,EAAE,MAAX,WAAaA,EAAE,IAAE,SAAOA,IAAE;AAAA,EAAC;AAAC,EAAAC,EAAE,IAAE;AAAC;AAAC,SAASS,GAAET,GAAED,GAAE;AAACF,EAAAA,GAAE,KAAK,MAAK,QAAOE,CAAC,GAAE,KAAK,IAAEC,GAAE,KAAK,IAAE,QAAO,KAAK,IAAEW,KAAE,GAAE,KAAK,IAAE;AAAC;AAACF,GAAE,YAAU,IAAIZ;AAAEY,GAAE,UAAU,IAAE,WAAU;AAAY,MAAX,KAAK,KAAG,IAAM,IAAE,KAAK,EAAE,QAAM;AAA0C,OAA/B,KAAG,KAAK,MAAb,OAAyB,KAAK,KAAG,IAAM,KAAK,MAAIE,IAAE,QAAM;AAAsB,MAAnB,KAAK,IAAEA,IAAE,KAAK,KAAG,GAAK,KAAK,IAAE,KAAG,CAACC,GAAE,IAAI;AAAG,gBAAK,KAAG,IAAS;AAAG,MAAIZ,IAAEC;AAAE,MAAG;AAACY,IAAAA,GAAE,IAAI,GAAEZ,KAAE;AAAK,QAAIF,IAAE,KAAK,EAAC;AAAG,KAAG,KAAG,KAAK,KAAG,KAAK,MAAIA,KAAO,KAAK,MAAT,OAAY,KAAK,IAAEA,GAAE,KAAK,KAAG,KAAI,KAAK;AAAA,EAAI,SAAOC,GAAE;AAAC,SAAK,IAAEA,GAAE,KAAK,KAAG,IAAG,KAAK;AAAA,EAAG;AAACC,SAAAA,KAAED,GAAEgB,GAAE,IAAI,GAAE,KAAK,KAAG;AAAW;AAAEP,GAAE,UAAU,IAAE,SAAST,GAAE;AAAC,MAAY,KAAK,MAAd,QAAgB;AAAC,SAAK,KAAG;AAAG,aAAQD,IAAE,KAAK,GAAWA,MAAT,QAAWA,IAAEA,EAAE,EAAE,CAAAA,EAAE,EAAE,EAAEA,CAAC;AAAA,EAAC;AAACF,EAAAA,GAAE,UAAU,EAAE,KAAK,MAAKG,CAAC;AAAC;AAAES,GAAE,UAAU,IAAE,SAAST,GAAE;AAAC,MAAY,KAAK,MAAd,WAAiBH,GAAE,UAAU,EAAE,KAAK,MAAKG,CAAC,GAAc,KAAK,MAAd,SAAgB;AAAC,SAAK,KAAG;AAAI,aAAQD,IAAE,KAAK,GAAWA,MAAT,QAAWA,IAAEA,EAAE,EAAE,CAAAA,EAAE,EAAE,EAAEA,CAAC;AAAA,EAAC;AAAE;AAAEU,GAAE,UAAU,IAAE,WAAU;AAAC,MAAG,EAAE,IAAE,KAAK,IAAG;AAAC,SAAK,KAAG;AAAE,aAAQT,IAAE,KAAK,GAAWA,MAAT,QAAWA,IAAEA,EAAE,EAAE,CAAAA,EAAE,EAAE;EAAG;AAAC;AAAE,OAAO,eAAeS,GAAE,WAAU,SAAQ,EAAC,KAAI,WAAU;AAAC,MAAG,IAAE,KAAK,EAAE,OAAM,IAAI,MAAM,gBAAgB;AAAE,MAAIT,IAAEM,GAAE,IAAI;AAAoC,MAAlC,KAAK,EAAC,GAAeN,MAAT,WAAWA,EAAE,IAAE,KAAK,IAAK,KAAG,KAAK,EAAE,OAAM,KAAK;AAAE,SAAO,KAAK;AAAC,EAAC,CAAC;AAAE,SAASc,GAAEd,GAAED,GAAE;AAAC,SAAO,IAAIU,GAAET,GAAED,CAAC;AAAC;AAAC,SAASoB,GAAEnB,GAAE;AAAC,MAAIJ,IAAEI,EAAE;AAAa,MAAXA,EAAE,IAAE,QAAsB,OAAOJ,KAAnB,YAAqB;AAACW,IAAAA;AAAI,QAAIL,IAAED;AAAEA,IAAAA,KAAE;AAAO,QAAG;AAAC,MAAAL,EAAC;AAAA,IAAE,SAAOG,GAAE;AAAC,YAAAC,EAAE,KAAG,IAAGA,EAAE,KAAG,GAAEe,GAAEf,CAAC,GAAQD;AAAA,IAAC,UAAC;AAAQE,MAAAA,KAAEC,GAAEH,GAAC;AAAA,IAAE;AAAA,EAAC;AAAC;AAAC,SAASgB,GAAEf,GAAE;AAAC,WAAQD,IAAEC,EAAE,GAAWD,MAAT,QAAWA,IAAEA,EAAE,EAAE,CAAAA,EAAE,EAAE,EAAEA,CAAC;AAAE,EAAAC,EAAE,IAAE,QAAOA,EAAE,IAAE,QAAOmB,GAAEnB,CAAC;AAAC;AAAC,SAASkB,GAAElB,GAAE;AAAC,MAAGC,OAAI,KAAK,OAAM,IAAI,MAAM,qBAAqB;AAAEe,EAAAA,GAAE,IAAI,GAAEf,KAAED,GAAE,KAAK,KAAG,IAAM,IAAE,KAAK,KAAEe,GAAE,IAAI,GAAEhB,GAAC;AAAE;AAAC,SAASyC,GAAExC,GAAED,GAAE;AAAC,OAAK,IAAEC,GAAE,KAAK,IAAE,QAAO,KAAK,IAAE,QAAO,KAAK,IAAE,QAAO,KAAK,IAAE,IAAG,KAAK,OAAWD,KAAN,OAAQ,SAAOA,EAAE;AAAsB;AAACyC,GAAE,UAAU,IAAE,WAAU;AAAC,MAAIxC,IAAE,KAAK,EAAC;AAAG,MAAG;AAAoB,QAAhB,IAAE,KAAK,KAAqB,KAAK,MAAd,OAAgB;AAAO,QAAID,IAAE,KAAK,EAAC;AAAG,IAAe,OAAOA,KAAnB,eAAqB,KAAK,IAAEA;AAAA,EAAC,UAAC;AAAQ,IAAAC,EAAC;AAAA,EAAE;AAAC;AAAEwC,GAAE,UAAU,IAAE,WAAU;AAAC,MAAG,IAAE,KAAK,EAAE,OAAM,IAAI,MAAM,gBAAgB;AAAE,OAAK,KAAG,GAAE,KAAK,KAAG,IAAGrB,GAAE,IAAI,GAAEN,GAAE,IAAI,GAAEN;AAAI,MAAIP,IAAEC;AAAEA,SAAAA,KAAE,MAAYiB,GAAE,KAAK,MAAKlB,CAAC;AAAC;AAAEwC,GAAE,UAAU,IAAE,WAAU;AAAC,EAAK,IAAE,KAAK,MAAI,KAAK,KAAG,GAAE,KAAK,IAAEhC,IAAEA,KAAE;AAAK;AAAEgC,GAAE,UAAU,IAAE,WAAU;AAAC,OAAK,KAAG,GAAO,IAAE,KAAK,KAAGzB,GAAE,IAAI;AAAC;AAAEyB,GAAE,UAAU,UAAQ,WAAU;AAAC,OAAK,EAAC;AAAE;AAAE,SAASR,GAAEhC,GAAED,GAAE;AAAC,MAAI,IAAE,IAAIyC,GAAExC,GAAED,CAAC;AAAE,MAAG;AAAC,MAAE,EAAC;AAAA,EAAE,SAAOC,GAAE;AAAC,YAAE,EAAC,GAASA;AAAA,EAAC;AAAC,MAAI,IAAE,EAAE,EAAE,KAAK,CAAC;AAAE,WAAE,OAAO,OAAO,IAAE,GAAS;AAAC;ACAvkJ,IAAIyR,KAAK,OAAO,gBACZQ,KAAK,CAAC,GAAG,GAAG,MAAM,KAAK,IAAIR,GAAG,GAAG,GAAG,EAAE,YAAY,IAAI,cAAc,IAAI,UAAU,IAAI,OAAO,EAAC,CAAE,IAAI,EAAE,CAAC,IAAI,GAC3G3R,KAAI,CAAC,GAAG,GAAG,MAAMmS,GAAG,GAAG,OAAO,KAAK,WAAW,IAAI,KAAK,GAAG,CAAC;AAG/D,MAAM1P,KAAI+O,IAAIhQ,KAAI,CAAC,MAAM,GAAGlB,KAAI,CAAC,MAAM;AACvC,SAAS6P,GAAG,GAAG;AACb,QAAM,IAAI,CAAA;AACV,aAAW,CAAC,GAAG,CAAC,KAAK,OAAO,QAAQ,CAAC;AACnC,WAAO,KAAK,aAAa,EAAE,CAAC,IAAI;AAClC,SAAO;AACT;AACK,MAAC0B,KAAK;AAAA,EACT,MAAM,CAAC,MAAMrQ,GAAEiB,GAAE,KAAK,CAAC,CAAC;AAAA,EACxB,KAAK,MAAMjB,GAAEiB,GAAE,IAAG,CAAE;AAAA,EACpB,KAAK,CAAC,GAAG,MAAMjB,GAAElB,GAAE,CAAC,EAAE,IAAI6P,GAAG,CAAC,CAAC,CAAC;AAAA,EAChC,UAAU,CAAC,GAAG,MAAM3O,GAAElB,GAAE,CAAC,EAAE,SAAS6P,GAAG,CAAC,CAAC,CAAC;AAAA,EAC1C,SAAS,CAAC,GAAG,MAAM3O,GAAElB,GAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,EACpC,OAAO,CAAC,GAAG,MAAMkB,GAAElB,GAAE,CAAC,EAAE,MAAM,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA,EAIhC,WAAW,CAAC,MAAMA,GAAE,CAAC,EAAE,UAAS,IAAK;AAAA,EACrC,MAAM,CAAC,MAAMA,GAAE,CAAC,EAAE,KAAI;AAAA,EACtB,OAAO,CAAC,MAAMA,GAAE,CAAC,EAAE,MAAK;AAAA,EACxB,YAAY,CAAC,MAAMA,GAAE,CAAC,EAAE,IAAG;AAAA,EAC3B,MAAM,CAAC,MAAMA,GAAE,CAAC,EAAE,KAAI;AAAA,EACtB,QAAQ,CAAC,MAAMA,GAAE,CAAC,EAAE,OAAM;AAAA,EAC1B,UAAU,CAAC,GAAG,MAAMA,GAAE,CAAC,EAAE,SAASA,GAAE,CAAC,CAAC;AAAA,EACtC,SAAS,CAAC,GAAG,MAAMA,GAAE,CAAC,EAAE,QAAQA,GAAE,CAAC,CAAC;AAAA,EACpC,QAAQ,CAAC,GAAG,GAAG,MAAM,IAAIA,GAAE,CAAC,EAAE,OAAOA,GAAE,CAAC,GAAG,CAAC,IAAIA,GAAE,CAAC,EAAE,OAAOA,GAAE,CAAC,CAAC;AAAA,EAChE,WAAW,CAAC,GAAG,MAAM;AACnB,UAAM,IAAIA,GAAE,CAAC,GAAG,IAAIA,GAAE,CAAC;AACvB,WAAO,EAAE,KAAI,MAAO,EAAE,KAAI,KAAM,EAAE,MAAK,MAAO,EAAE,MAAK,KAAM,EAAE,IAAG,MAAO,EAAE,IAAG;AAAA,EAC9E;AAAA,EACA,WAAW,CAAC,GAAG,GAAG,MAAMA,GAAE,CAAC,EAAE,UAAUA,GAAE,CAAC,GAAGA,GAAE,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA,EAIjD,MAAM,CAAC,GAAG,GAAG,MAAM;AACjB,UAAM,IAAIA,GAAE,CAAC,EAAE,QAAO,IAAKA,GAAE,CAAC,EAAE,QAAO;AACvC,YAAQ,GAAC;AAAA,MACP,KAAK;AACH,eAAO,KAAK,MAAM,IAAI,GAAG;AAAA,MAC3B,KAAK;AACH,eAAO,KAAK,MAAM,IAAI,GAAG;AAAA,MAC3B,KAAK;AACH,eAAO,KAAK,MAAM,IAAI,IAAI;AAAA,MAC5B,KAAK;AACH,eAAO,KAAK,MAAM,IAAI,KAAK;AAAA,MAC7B,KAAK;AACH,eAAO,KAAK,MAAM,IAAI,MAAM;AAAA,MAC9B;AACE,eAAOA,GAAE,CAAC,EAAE,KAAKA,GAAE,CAAC,GAAG,CAAC;AAAA,IAChC;AAAA,EACE;AAAA,EACA,OAAO,CAAC,GAAG,OAAO,EAAE,OAAO,GAAG,KAAK;EACnC,gBAAgB,CAAC,GAAG,MAAM;AACxB,UAAM,IAAI,CAAA,GAAI,IAAIA,GAAE,CAAC;AACrB,QAAIG,IAAIH,GAAE,CAAC,EAAE,QAAQ,KAAK;AAC1B,WAAOG,EAAE,SAAS,CAAC;AACjB,QAAE,KAAKe,GAAEf,CAAC,CAAC,GAAGA,IAAIA,EAAE,IAAI,EAAE,MAAM,EAAC,CAAE;AACrC,WAAO;AAAA,EACT;AAAA,EACA,QAAQ,CAAC,GAAG,MAAMH,GAAE,CAAC,EAAE,OAAO,CAAC;AAAA,EAC/B,QAAQ,CAAC,GAAG,MAAMkB,GAAElB,GAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AAAA,EAClC,UAAU,CAAC,GAAG,MAAMkB,GAAElB,GAAE,CAAC,EAAE,SAAS,CAAC,CAAC;AAAA,EACtC,aAAa,CAAC,MAAMA,GAAE,CAAC,EAAE,YAAW;AAAA,EACpC,QAAQ,CAAC,MAAMA,GAAE,CAAC,EAAE,OAAM;AAAA,EAC1B,SAAS,CAAC,MAAMA,GAAE,CAAC,EAAE,QAAO;AAC9B,GAAG4P,IAAI2B,IAAIoB,KAAK;AAAA,EAGd,gBAAgB;AAIlB;AACA,SAASnB,GAAG,GAAG;AACb,QAAM,IAAI,EAAE,QAAQ,SAAS;AAAA,CAC9B,EAAE,QAAQ,OAAO;AAAA,CACjB,EAAE,MAAM;AAAA,CACR,GAAG,IAAI,CAAA;AACN,aAAW,KAAK;AACd,KAAC,EAAE,WAAW,GAAG,KAAK,EAAE,WAAW,GAAG,MAAM,EAAE,SAAS,EAAE,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC;AACjG,SAAO;AACT;AACA,SAAS9B,GAAE,GAAG,GAAG;AACf,QAAM,IAAI,EAAE,MAAM,wDAAwD;AAC1E,MAAI,CAAC,EAAG,QAAO;AACf,QAAM,CAAA,EAAG,GAAGvP,GAAG,GAAGD,GAAGJ,GAAGL,GAAGc,CAAC,IAAI;AAChC,SAAO,KAAK,CAACL,IAAI,GAAG,CAAC,IAAIC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAIA,CAAC,IAAI,CAAC,IAAID,CAAC,IAAIJ,CAAC,IAAIL,CAAC,GAAGc,KAAK,EAAE;AAC7E;AACA,SAAS0B,GAAE,GAAG;AACZ,SAAO,EAAE,QAAQ,SAAS;AAAA,CAC3B,EAAE,QAAQ,QAAQ,GAAG,EAAE,QAAQ,QAAQ,GAAG,EAAE,QAAQ,SAAS,IAAI;AAClE;AACA,SAAS+P,GAAG,GAAG,GAAG;AAChB,QAAM,IAAI,EAAE,SAAS,KAAK,KAAK,OAAO,SAAS,EAAE,OAAO,WAAW,QAAQ7R,IAAI,EAAE,OAAO,IAAIuP,GAAE,EAAE,OAAO,CAAC,IAAI,GAAE;AAC9G,IAAE,QAAQvP,EAAE,KAAK,EAAE,IAAI,QAAQ,EAAE,YAAYA,EAAE,QAAQ8B,GAAE,EAAE,QAAQ,KAAK,IAAI,EAAE,UAAU9B,EAAE,MAAMuP,GAAE,EAAE,MAAM,OAAO,EAAE,MAAM,OAAO,UAAU,MAAM,IAAI,MAAMvP,EAAE,SAAS,KAAK,EAAE,UAAUA,EAAE,QAAQ,EAAE,MAAM,QAAQ,EAAE,WAAWA,EAAE,SAAS;AACxO,QAAM,IAAI,CAAA;AACV,SAAO,EAAE,gBAAgB,EAAE,cAAc8B,GAAE,EAAE,YAAY,KAAK,IAAI,EAAE,aAAa,EAAE,WAAWA,GAAE,EAAE,SAAS,KAAK,IAAI,OAAO,KAAK,CAAC,EAAE,WAAW9B,EAAE,gBAAgB,IAAIA;AACtK;AACA,SAASyR,GAAG,GAAG;AACb,QAAM,IAAIJ,GAAG,CAAC,GAAG,IAAI,CAAA;AACrB,MAAI,IAAI,MAAMrR,IAAI,CAAA;AAClB,aAAW,KAAK,GAAG;AACjB,QAAI,MAAM,gBAAgB;AACxB,UAAI,CAAA,GAAIA,IAAI,CAAA;AACZ;AAAA,IACF;AACA,QAAI,MAAM,cAAc;AACtB,WAAK,EAAE,KAAK6R,GAAG,GAAG7R,CAAC,CAAC,GAAG,IAAI;AAC3B;AAAA,IACF;AACA,QAAI,CAAC,EAAG;AACR,UAAMD,IAAI,EAAE,QAAQ,GAAG;AACvB,QAAIA,IAAI,EAAG;AACX,UAAMJ,IAAI,EAAE,MAAM,GAAGI,CAAC,GAAGT,IAAI,EAAE,MAAMS,IAAI,CAAC,GAAG,CAACK,GAAG,GAAG,CAAC,IAAIT,EAAE,MAAM,GAAG,GAAG,IAAI,CAAA;AAC3E,eAAW2B,KAAK,GAAG;AACjB,YAAMd,IAAIc,EAAE,QAAQ,GAAG;AACvB,MAAAd,IAAI,MAAM,EAAEc,EAAE,MAAM,GAAGd,CAAC,EAAE,YAAW,CAAE,IAAIc,EAAE,MAAMd,IAAI,CAAC;AAAA,IAC1D;AACA,UAAM,KAAKJ,KAAK,IAAI,YAAW;AAC/B,QAAI,MAAM,UAAU;AAClB,iBAAWkB,KAAKhC,EAAE,MAAM,GAAG,EAAG,CAAAU,EAAE,KAAKuP,GAAEjO,GAAG,EAAE,UAAU,MAAM,CAAC;AAC7D;AAAA,IACF;AACA,MAAE,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAOhC,EAAC;AAAA,EAC9B;AACA,SAAO;AACT;AA4EA,MAAM2S,KAAqB,oBAAI,IAAI;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,SAAS1Q,GAAE,GAAG;AACZ,QAAM,IAAI,EAAE,MAAM,GAAG,EAAE,IAAI,CAAC,MAAM,OAAO,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,GAAG,IAAI,EAAE,CAAC,KAAK,GAAGvB,IAAI,EAAE,CAAC,KAAK;AACxF,SAAO,IAAI,KAAK,IAAI,KAAK,MAAMA,IAAI,EAAE;AACvC;AACA,SAAS6B,GAAE,GAAG,GAAG;AACf,SAAO,EAAE,KAAK,CAAC,IAAI,KAAK,EAAE,OAAO,CAAC;AACpC;AACA,MAAMmQ,KAAK,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAC,GAAIhR,KAAI;AACpE,SAAS2Q,GAAG,GAAG,GAAG,GAAG;AACnB,QAAM,IAAoB,oBAAI,IAAG;AACjC,aAAW5R,KAAK,EAAE,QAAQ,YAAY,EAAE,EAAE,MAAM,GAAG,GAAG;AACpD,UAAM,CAACJ,GAAGL,CAAC,IAAIS,EAAE,MAAM,GAAG;AAC1B,IAAAJ,KAAKL,KAAK,EAAE,IAAIK,EAAE,YAAW,GAAIL,CAAC;AAAA,EACpC;AACA,QAAMU,IAAI,EAAE,IAAI,MAAM;AACtB,MAAI,CAACA,KAAK,CAAC,CAAC,SAAS,UAAU,WAAW,QAAQ,EAAE,SAASA,CAAC,EAAG,QAAO;AACxE,QAAM,IAAI,EAAE,IAAI,OAAO,IAAI,EAAE,IAAI,OAAO,EAAE,MAAM,GAAG,EAAE,IAAI,CAACD,MAAMiS,GAAGjS,EAAE,KAAI,EAAG,YAAW,EAAG,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,CAACA,MAAMA,MAAM,MAAM,IAAI;AACpI,SAAO;AAAA,IACL,MAAM;AAAA,IACN,MAAMC;AAAA,IACN,UAAU,OAAO,EAAE,IAAI,UAAU,KAAK,CAAC,KAAK;AAAA,IAC5C,OAAO,EAAE,IAAI,OAAO,IAAI,OAAO,EAAE,IAAI,OAAO,CAAC,IAAI;AAAA,IACjD,OAAO,EAAE,IAAI,OAAO,KAAK;AAAA,IACzB,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ;AAAA,EACZ;AACA;AACA,SAASmQ,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,QAAMnQ,IAAI,EAAE,SAAS,EAAE,MAAM,IAAI,IAAI,EAAE,IAAI,GAAG,EAAE,SAAS,EAAC,CAAE,IAAI,EAAE;AAClE,SAAO;AAAA,IACL,GAAG;AAAA,IACH,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;AAAA,IAChC,OAAO;AAAA,IACP,KAAKA;AAAA,IACL,YAAY;AAAA,IACZ,eAAe,EAAE,GAAG,EAAE,eAAe,aAAa,EAAE,GAAE;AAAA,EAC1D;AACA;AACA,SAASkQ,GAAG,GAAG,GAAG,GAAG;AACnB,MAAI,CAAC,EAAE,OAAQ,QAAO;AACtB,QAAM,IAAI,EAAE,YAAY,CAAC,GAAGlQ,IAAI,EAAE,MAAM,GAAG,EAAE;AAC7C,SAAO,EAAE,KAAK,CAAC,MAAM,MAAM,KAAK,EAAE,MAAM,GAAG,EAAE,MAAMA,CAAC;AACtD;AACA,SAASsS,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,QAAMtS,IAAI,CAAA,GAAI,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,IAAI,MAAMD,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,IAAI;AACpG,aAAWJ,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,GAAG;AAC5D,QAAI,CAAC,EAAE,WAAW,SAAS,EAAE,UAAUA,CAAC,CAAC,KAAK,KAAK,EAAE,SAASA,GAAG,EAAE,QAAQ,GAAG,KAAK,CAAC,KAAKI,KAAK,CAAC,EAAE,SAASJ,GAAGI,CAAC,EAAG;AACjH,UAAMT,IAAI,EAAE,IAAI,EAAE,QAAQK,GAAG,KAAK,GAAG,EAAE,SAAS,EAAE,aAAY,CAAE;AAChEuQ,IAAAA,GAAG5Q,GAAG,EAAE,QAAQ,CAAC,KAAKU,EAAE,KAAKmQ,GAAG,GAAG7Q,GAAG,EAAE,aAAa,CAAC,CAAC;AAAA,EACzD;AACA,SAAOU;AACT;AACA,UAAU2S,GAAG,GAAG,GAAG,GAAG;AACpB,MAAI3S;AACJ,MAAI,EAAE,SAAS,aAAcA,IAAI,EAAE,UAAU,QAAQA,EAAE,QAAS;AAC9D,UAAM,KAAK,EAAE,UAAU,CAAC,IAAI,IAAI,KAAK,GAAGD,IAAI,EAAE,SAAS,GAAG,EAAE,MAAM,EAAC,CAAE,GAAGJ,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAACL,OAAOA,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,CAACA,GAAGc,MAAMd,IAAIc,CAAC;AACzI,aAASd,IAAI,GAAGc,IAAI,GAAGA,IAAIY,IAAG1B,KAAK,EAAE,UAAU;AAC7C,YAAM,IAAI,EAAE,IAAIS,GAAG,EAAE,OAAOT,GAAG;AAC/B,iBAAW,KAAKK,GAAG;AACjB,QAAAS;AACA,cAAM,IAAI,EAAE,IAAI,GAAG,EAAE,MAAM,GAAG;AAC9B,UAAE,SAAS,GAAG,CAAC,MAAM,MAAM;AAAA,MAC7B;AAAA,IACF;AACA;AAAA,EACF;AACA,QAAMV,IAAI;AAAA,IACR,OAAO,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE;IAC7B,QAAQ,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE;IAC/B,SAAS,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE;IACjC,QAAQ,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,SAAQ;AAAA,EAC3C;AACE,WAAS,IAAI,GAAG,IAAIsB,IAAG;AACrB,UAAM,EAAE,IAAI,GAAGtB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/B;AACA,SAASwS,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,QAAMlS,IAAI,CAAA,GAAI,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,IAAI;AAC9C,MAAID,IAAI,GAAGJ,IAAI;AACf,aAAWL,KAAKqT,GAAG,GAAG,EAAE,OAAO,CAAC,GAAG;AACjC,QAAI,EAAEhT,IAAIqB,MAAK,KAAK,EAAE,QAAQ1B,GAAG,CAAC,KAAK,EAAE,UAAU,QAAQS,KAAK,EAAE,SAAS,CAAC,EAAE,SAAST,GAAG,EAAE,SAAS,EAAG;AACxG,IAAAS,KAAK,CAAC,EAAE,SAAST,GAAG,EAAE,WAAW,MAAM4Q,GAAG5Q,GAAG,EAAE,QAAQ,CAAC,KAAKU,EAAE,KAAKmQ,GAAG,GAAG7Q,GAAG,EAAE,aAAa,CAAC,CAAC;AAAA,EAChG;AACA,SAAOU;AACT;AACA,SAASmS,GAAG,GAAG,GAAG,GAAG;AACnB,QAAM,IAAI,EAAE;AACZ,SAAO,IAAI,EAAE,SAAS,WAAWG,GAAG,GAAG,GAAG,GAAG,CAAC,IAAIJ,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AACvE;AACA,SAASX,GAAG,GAAG,GAAG,GAAG;AACnB,QAAM,IAAI,CAAA;AACV,aAAWvR,KAAK;AACd,IAAAA,EAAE,aAAa,EAAE,KAAK,GAAGmS,GAAGnS,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,KAAKA,CAAC;AAClD,SAAO;AACT;AACA,MAAM2P,KAAK;AAAA,EACT;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACA,SAASoD,GAAG,GAAG;AACb,MAAI,IAAI;AACR,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,IAAK,KAAI,IAAI,KAAK,EAAE,WAAW,CAAC,IAAI;AAClE,SAAOpD,GAAG,KAAK,IAAI,CAAC,IAAIA,GAAG,MAAM;AACnC;AACA,SAAS4C,GAAG,GAAG;AACb,SAAO,IAAI,MAAM,QAAQ,CAAC,IAAI,IAAI,EAAE,MAAM,KAAK,EAAE,OAAO,OAAO,IAAI,CAAA;AACrE;AACA,SAASf,GAAG,GAAG;AACb,SAAO,OAAO,EAAE,UAAU,YAAY,EAAE,SAAS,OAAO,EAAE,SAAS,YAAY,CAAC,EAAE,MAAM,SAAS,GAAG;AACtG;AACA,SAASa,GAAG,GAAG;AACb,QAAM,IAAI,EAAE,GAAG,EAAE,iBAAiB,CAAA,EAAE;AACpC,aAAW,CAAC,GAAG,CAAC,KAAK,OAAO,QAAQ,CAAC;AACnC,IAAAJ,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI;AACvB,SAAO;AACT;AACA,IAAIQ,KAAK;AACT,SAAS7C,GAAG,GAAG,GAAG;AAChB,SAAO,EAAE,WAAWrO,GAAE,EAAE,QAAQ,IAAI,EAAE,aAAa,EAAE,UAAUA,GAAE,EAAE,OAAO,IAAIA,GAAE,EAAE,SAAS,IAAI,EAAE,OAAO,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,QAAQ,IAAI;AACpK;AACA,SAASuR,GAAG,GAAG,GAAG;AAChB,MAAIpT;AACJ,QAAML,IAAI,EAAE,UAAU,CAAA;AACtB,MAAI,EAAE,OAAO;AACX,UAAMW,IAAI4P,GAAG,GAAG,CAAC,KAAK;AACtB,WAAO+B,GAAG,EAAE,OAAO3R,GAAGX,CAAC;AAAA,EACzB;AACA,UAAQK,IAAI,EAAE,eAAe,QAAQA,EAAE,SAAS;AAAA,IAC9C,MAAM;AAAA,IACN,YAAY,EAAE;AAAA,IACd,cAAc6B,GAAE,EAAE,aAAa,OAAO;AAAA,IACtC,aAAaqO,GAAG,GAAG,CAAC;AAAA,IACpB,YAAY,EAAE,cAAc,OAAO,OAAO,EAAE,UAAU,IAAI;AAAA,IAC1D,UAAU,EAAE,YAAY,OAAO,OAAO,EAAE,QAAQ,IAAI;AAAA,IACpD,QAAQvQ;AAAA,EACZ,IAAM;AACN;AACA,SAASgR,GAAG,GAAG,GAAG;AAChB,QAAM,IAAI,EAAE,MAAM,WAAW,EAAEoC,EAAE,IAAI,IAAI,EAAE,WAAW,IAAIzS,IAAI,EAAE,SAAS,EAAE,mBAAmB+S,GAAG,KAAK,CAAC,GAAG,IAAI,EAAE,gBAAgB,EAAE,aAAa,CAAC,EAAE,UAAU,IAAI,CAAA;AAChK,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,SAAS;AAAA,IACT,OAAO,EAAE,SAAS;AAAA,IAClB,OAAO,EAAE,KAAK,EAAE,KAAK;AAAA,IACrB,KAAK,EAAE,OAAO,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI;AAAA,IACrC,QAAQvB,GAAG,CAAC;AAAA,IACZ,KAAK,EAAE,OAAO;AAAA,IACd,SAAS,EAAE,WAAW;AAAA,IACtB,UAAU,EAAE,YAAY;AAAA,IACxB,iBAAiB,EAAE,mBAAmBxR;AAAA,IACtC,aAAa,EAAE,eAAeA;AAAA,IAC9B,WAAW,EAAE,aAAa;AAAA,IAC1B,YAAYuS,GAAG,EAAE,UAAU;AAAA,IAC3B,aAAa;AAAA,IACb,YAAYO,GAAG,GAAG,CAAC;AAAA,IACnB,eAAeT,GAAG,CAAC;AAAA,EACvB;AACA;AACA,MAAMW,GAAG;AAAA,EACP,cAAc;AACZzT,IAAAA,GAAE,MAAM,WAA2B,oBAAI,IAAG,CAAE;AAAA,EAC9C;AAAA,EACA,IAAI,GAAG;AACL,UAAM,IAAI,KAAK,QAAQ,IAAI,CAAC;AAC5B,QAAI,GAAG;AACL,UAAI,KAAK,SAAS,EAAE,WAAW;AAC7B,aAAK,QAAQ,OAAO,CAAC;AACrB;AAAA,MACF;AACA,aAAO,EAAE;AAAA,IACX;AAAA,EACF;AAAA,EACA,IAAI,GAAG,GAAG,GAAG;AACX,SAAK,QAAQ,IAAI,GAAG,EAAE,OAAO,GAAG,WAAW,KAAK,IAAG,IAAK,EAAC,CAAE;AAAA,EAC7D;AAAA;AAAA,EAEA,eAAe,GAAG;AAChB,eAAW,KAAK,KAAK,QAAQ,KAAI;AAC/B,QAAE,WAAW,CAAC,KAAK,KAAK,QAAQ,OAAO,CAAC;AAAA,EAC5C;AAAA,EACA,QAAQ;AACN,SAAK,QAAQ,MAAK;AAAA,EACpB;AACF;AACA,SAAS6S,GAAG,GAAG;AACb,SAAO,OAAO,KAAK,YAAY,MAAM,QAAQ,CAAC,MAAM,QAAQ,CAAC,KAAK,SAAS;AAC7E;AACA,SAASQ,GAAG,GAAG;AACb,SAAO,OAAO,KAAK,YAAY,MAAM,QAAQ,CAAC,MAAM,QAAQ,CAAC,KAAK,YAAY;AAChF;AACA,MAAMK,GAAG;AAAA,EACP,YAAY,GAAG,GAAG,IAAI,MAAM;AAAA,EAC5B,GAAGjT,GAAG;AACJT,IAAAA,GAAE,MAAM,SAASsB,GAAE,CAAA,CAAE,CAAC,GAEtBtB,GAAE,MAAM,UAAU6B;AAAAA,MAChB,MAAM,OAAO,OAAO,KAAK,MAAM,KAAK,EAAE,KAAI;AAAA,IAChD,CAAK,GACD7B,GAAE,MAAM,WAAW,EAAE,GACrBA,GAAE,MAAM,SAAS,IAAIyT,GAAE,CAAE,GACzBzT,GAAE,MAAM,SAAS,CAAC,GAClBA,GAAE,MAAM,WAAW,CAAC,GACpB,KAAK,KAAK,GAAG,KAAK,cAAc,GAAG,KAAK,YAAY,GAAG,KAAK,YAAYS;AAAA,EAC1E;AAAA,EACA,IAAI,GAAG;AACL,UAAM,IAAI,KAAK,QAAQ,CAAC;AACxB,WAAO,KAAK,QAAQ,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,GAAE;AAAA,EACzC;AAAA,EACA,SAAS;AACP,WAAO,KAAK,QAAQ,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,GAAE,EAAG;AAAA,EAC/C;AAAA,EACA,YAAY;AACV,SAAK,QAAQ,SAAS,GAAG,KAAK,MAAM,QAAQ,CAAA,GAAI,KAAK,MAAM,MAAK;AAAA,EAClE;AAAA,EACA,OAAO,GAAG;AACR,UAAM,IAAI,KAAK,QAAQ,UAAU,CAACA,MAAMA,EAAE,OAAO,CAAC;AAClD,QAAI,IAAI,EAAG;AACX,SAAK,QAAQ,OAAO,GAAG,CAAC;AACxB,UAAM,IAAI,EAAE,GAAG,KAAK,MAAM,MAAK;AAC/B,WAAO,EAAE,CAAC,GAAG,KAAK,MAAM,QAAQ,GAAG,KAAK,MAAM,eAAe,GAAG,CAAC,GAAG;AAAA,EACtE;AAAA;AAAA,EAEA,SAAS,GAAG;AACV,WAAO,KAAK,IAAI,KAAK,SAAS,CAAC;AAAA,EACjC;AAAA;AAAA,EAEA,aAAa,GAAG;AACd,WAAO,KAAK;AAAA,MACV,KAAK,QAAQ,OAAO,CAAC,MAAM,EAAE,OAAO;AAAA,MACpC;AAAA,IACN;AAAA,EACE;AAAA;AAAA,EAEA,SAAS,GAAG,GAAG;AACb,UAAM,IAAI,KAAK,QAAQ,KAAK,CAACA,MAAMA,EAAE,OAAO,CAAC;AAC7C,WAAO,IAAI,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,QAAQ,QAAO;AAAA,EAC/C;AAAA,EACA,MAAM,IAAI,GAAG,GAAG;AACd,MAAE,WAAW,KAAK,WAAW,EAAE,MAAM,GAAG,MAAM,QAAQ;AAAA,MACpD,EAAE,IAAI,OAAO,MAAM;AACjB,YAAI;AACF,gBAAMA,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,IAAI,EAAE,MAAM,IAAI,IAAI,EAAE,MAAM,KAAK,MAAM,IAAIA,CAAC,IAAI,QAAQD,IAAI,KAAK,MAAM,EAAE,MAAM,CAAC;AAC/G,YAAE,OAAO,CAAC,KAAK,KAAK,MAAM,IAAIC,GAAGD,GAAG,EAAE,GAAG;AACzC,gBAAMJ,IAAII,EAAE,IAAI,CAACT,MAAM;AACrB,kBAAMc,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAGd,EAAC,IAAKA;AAC/C,mBAAO+Q,GAAG,KAAK,YAAY,KAAK,UAAUjQ,CAAC,IAAIA,GAAG,KAAK,EAAE;AAAA,UAC3D,CAAC;AACD,eAAK,MAAM,QAAQ,EAAE,GAAG,KAAK,MAAM,OAAO,CAAC,EAAE,EAAE,GAAGT,EAAC;AAAA,QACrD,QAAQ;AACN,eAAK,MAAM,QAAQ,EAAE,GAAG,KAAK,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,GAAE;AAAA,QACtD,UAAC;AACC,eAAK,WAAW,EAAE;AAAA,QACpB;AAAA,MACF,CAAC;AAAA,IACP;AAAA,EACE;AAAA,EACA,WAAW,GAAG;AACZ,UAAM,IAAI,KAAK,UAAU;AACzB,SAAK,WAAW;AAChB,UAAM,IAAI,KAAK,UAAU;AACzB,UAAM,KAAK,KAAK,UAAU,CAAC;AAAA,EAC7B;AAAA,EACA,QAAQ,GAAG;AACT,UAAM,IAAI,OAAO,EAAE,KAAK,KAAK;AAC7B,QAAI,MAAM,QAAQ,CAAC;AACjB,aAAO,EAAE,IAAI,GAAG,SAAS,IAAI,OAAO,MAAM,QAAQ,QAAQ,CAAC,EAAC;AAC9D,QAAI,OAAO,KAAK;AACd,aAAO,EAAE,IAAI,GAAG,SAAS,IAAI,OAAO,CAAC,MAAM,QAAQ,QAAQ,EAAE,CAAC,CAAC,EAAC;AAClE,QAAIyS,GAAG,CAAC;AACN,aAAO,KAAK,WAAW,GAAG,CAAC;AAC7B,QAAIQ,GAAG,CAAC,GAAG;AACT,YAAM,IAAI,KAAK,QAAQ,EAAE,MAAM;AAC/B,aAAO;AAAA,QACL,IAAI,EAAE,MAAM,EAAE;AAAA,QACd,OAAO,EAAE,SAAS,EAAE;AAAA,QACpB,SAAS,EAAE;AAAA,QACX,KAAK,EAAE,OAAO,EAAE;AAAA,QAChB,OAAO,EAAE;AAAA,MACjB;AAAA,IACI;AACA,WAAO,EAAE,IAAI,GAAG,SAAS,IAAI,OAAO,MAAM,QAAQ,QAAQ,CAAA,CAAE,EAAC;AAAA,EAC/D;AAAA,EACA,WAAW,GAAG,GAAG;AACf,WAAO;AAAA,MACL,IAAI,EAAE,MAAM;AAAA,MACZ,OAAO,EAAE;AAAA,MACT,SAAS;AAAA,MACT,KAAK,EAAE;AAAA,MACP,OAAO,OAAO,MAAM;AAClB,cAAM5S,IAAI,MAAM,KAAK,YAAW,GAAI,IAAI,OAAO,EAAE,eAAe,aAAa,EAAE,YAAW,IAAK,EAAE,eAAe,CAAA,GAAID,IAAI;AAAA,UACtH,CAAC,EAAE,cAAc,OAAO,GAAG,EAAE;AAAA,UAC7B,CAAC,EAAE,YAAY,KAAK,GAAG,EAAE;AAAA,UACzB,GAAG;AAAA,QACb,GAAWJ,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,QAAO,IAAK,CAAA;AAC5C,YAAI,EAAE,WAAW,OAAO;AACtB,gBAAMS,IAAI,MAAMJ,EAAE,IAAI,EAAE,KAAK,EAAE,GAAGL,GAAG,OAAOI,GAAG;AAC/C,iBAAOK,EAAE,MAAM,OAAOA,EAAE,MAAM,QAAQ,WAAWqR,GAAGrR,EAAE,MAAM,IAAI,IAAI,CAAA;AAAA,QACtE;AACA,cAAMd,KAAK,EAAE,UAAU,WAAW,SAAS,MAAMU,EAAE,KAAK,EAAE,KAAKD,GAAGJ,CAAC,IAAI,MAAMK,EAAE,IAAI,EAAE,KAAK,EAAE,GAAGL,GAAG,OAAOI,GAAG;AAC5G,eAAOT,EAAE,KAAKA,EAAE,MAAM,QAAQ,CAAA,IAAK,CAAA;AAAA,MACrC;AAAA,IACN;AAAA,EACE;AACF;AACA,SAAS+W,GAAG,GAAG;AACb,SAAO;AACT;AACA,MAAMnD,GAAG;AAAA,EACP,YAAY,IAAI,IAAI;AAClB3T,IAAAA,GAAE,MAAM,SAAyB,oBAAI,IAAG,CAAE,GAC1CA,GAAE,MAAM,UAA0B,oBAAI,IAAG,CAAE,GAE3CA,GAAE,MAAM,cAAc,EAAE;AACxB,eAAW,KAAK,EAAG,MAAK,KAAK,CAAC;AAAA,EAChC;AAAA,EACA,KAAK,GAAG;AACN,QAAI,CAAC,KAAK,OAAO,IAAI,EAAE,IAAI,GAAG;AAC5B,WAAK,OAAO,IAAI,EAAE,IAAI;AACtB,iBAAW,KAAK,EAAE,QAAQ,CAAA,EAAI,MAAK,KAAK,CAAC;AACzC,iBAAW,CAAC,GAAG,CAAC,KAAK,OAAO,QAAQ,EAAE,SAAS,EAAE;AAC/C,aAAK,MAAM,IAAI,GAAG,CAAC;AACrB,WAAK,WAAW,KAAK,CAAC;AAAA,IACxB;AAAA,EACF;AAAA;AAAA,EAEA,UAAU;AACR,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAI,GAAG;AACL,WAAO,KAAK,MAAM,IAAI,CAAC;AAAA,EACzB;AAAA,EACA,IAAI,GAAG;AACL,UAAM,IAAI,KAAK,MAAM,IAAI,CAAC;AAC1B,QAAI,CAAC;AACH,YAAM,IAAI;AAAA,QACR,iCAAiC,CAAC;AAAA,MAC1C;AACI,WAAO;AAAA,EACT;AAAA,EACA,OAAO;AACL,WAAO,CAAC,GAAG,KAAK,MAAM,KAAI,CAAE;AAAA,EAC9B;AACF;AACA,SAAS6Q,GAAG,GAAG,GAAG,GAAG;AACnB,QAAM,KAAK,EAAE,UAAU,CAAC,IAAI,IAAI,KAAK;AACrC,SAAO,MAAM,IAAI,EAAE,QAAQ,GAAG,KAAK,IAAI,EAAE,SAAS,EAAE,QAAQ,GAAG,KAAK,GAAG,EAAE,MAAM,GAAG;AACpF;AACA,SAASiD,GAAG,GAAG,GAAG,GAAG;AACnB,QAAM,KAAK,EAAE,UAAU,CAAC,IAAI,IAAI,KAAK;AACrC,SAAO,MAAM,IAAI,EAAE,QAAQ,GAAG,KAAK,IAAI,EAAE,IAAI,EAAE,QAAQ,GAAG,KAAK,GAAG,EAAE,MAAM,IAAI,GAAG;AACnF;AACA,SAASC,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,SAAO,EAAE,SAAS,SAAS,EAAE,QAAQ,GAAG,OAAO,IAAI,EAAE,SAAS,QAAQ,EAAE,QAAQ,GAAG,MAAM,IAAI,EAAE,SAAS,QAAQlD,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,QAAQ,GAAG,KAAK;AAClJ;AACA,SAASK,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,QAAMzQ,IAAIsT,GAAG,GAAG,GAAG,EAAE,UAAU,CAAC,GAAG,IAAI,EAAE,IAAItT,GAAG,EAAE,QAAQ;AAC1D,MAAI,EAAE,SAAS,aAAa,EAAE,SAAS,wBAAwB;AAC7D,UAAMD,IAAIqQ,GAAGpQ,GAAG,EAAE,UAAU,CAAC;AAC7B,QAAIL,IAAI0T,GAAG,GAAG,EAAE,UAAU,CAAC;AAC3B,QAAI,EAAE,kBAAkB,EAAE,SAAS,QAAQ;AACzC,YAAM/T,IAAI,KAAK,MAAM,EAAE,KAAKS,GAAGJ,GAAG,KAAK,IAAI,CAAC;AAC5C,MAAAL,IAAI,MAAMK,IAAI,EAAE,IAAIA,GAAG,EAAE,OAAO,IAAIL,EAAC,CAAE;AAAA,IACzC;AACA,WAAO,EAAE,aAAaS,GAAG,WAAWJ,GAAG,cAAcK,GAAG,YAAY,EAAC;AAAA,EACvE;AACA,SAAO,EAAE,aAAaA,GAAG,WAAW,GAAG,cAAcA,GAAG,YAAY,EAAC;AACvE;AACA,MAAM6P,KAAK,EAAE,YAAY,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,UAAU,KAAK,QAAQ,KAAI;AACrE,SAASxO,GAAE,GAAG;AACZ,SAAO,IAAI,MAAM,KAAKwO,KAAK;AAAA,IACzB,YAAY,EAAE,cAAcA,GAAG;AAAA,IAC/B,UAAUtO,GAAE,EAAE,aAAa,OAAO;AAAA,IAClC,QAAQA,GAAE,EAAE,WAAW,OAAO;AAAA,EAClC,IAAM;AACN;AACA,SAAS+N,GAAE,GAAG,GAAG,GAAG;AAClB,SAAO,EAAE,WAAW,SAAS,EAAE,UAAU,CAAC,CAAC;AAC7C;AACA,SAASiE,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,MAAI,CAACjE,GAAE,GAAG,GAAG,CAAC,EAAG,QAAO;AACxB,QAAMtP,IAAI6B,GAAE,GAAG,CAAC,GAAG,IAAI,IAAIA,GAAE,GAAG,CAAC,IAAI7B,GAAGD,IAAI,MAAM,IAAI,OAAO;AAC7D,SAAOC,KAAK,EAAE,YAAYD,KAAK,EAAE;AACnC;AACA,SAASqP,GAAE,GAAG,GAAG;AACf,SAAO,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,MAAM,CAAC,IAAI,MAAM,EAAE,WAAW,CAAC;AAC5D;AACA,SAASI,GAAE,GAAG,GAAG,GAAG,GAAG;AACrB,MAAI,EAAE,QAAQ;AACZ,UAAM,IAAIJ,GAAE,GAAG,CAAC,GAAGrP,IAAIqP,GAAE,EAAE,OAAO,CAAC;AACnC,QAAI,CAAC,EAAE,IAAK,QAAO,MAAMrP;AACzB,UAAMJ,IAAIyP,GAAE,EAAE,KAAK,CAAC;AACpB,WAAOzP,IAAII,IAAI,KAAKA,KAAK,IAAIJ,IAAI,MAAMI;AAAA,EACzC;AACA,QAAMC,IAAI,EAAE,OAAO,EAAE;AACrB,SAAO,EAAE,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQA,GAAG,CAAC;AACjD;AACA,MAAMyB,KAAI;AACV,SAASiP,GAAG,GAAG;AACb,SAAO,IAAI,KAAK,KAAK,IAAI,EAAE,eAAe,EAAE,SAAQ,GAAI,EAAE,QAAO,CAAE,CAAC;AACtE;AACA,SAASiD,GAAG,GAAG;AACb,QAAM,IAAIjD,GAAG,CAAC,GAAG,KAAK,EAAE,cAAc,KAAK;AAC3C,IAAE,WAAW,EAAE,WAAU,IAAK,IAAI,CAAC;AACnC,QAAM,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE,eAAc,GAAI,GAAG,CAAC,CAAC,GAAG1Q,KAAK,EAAE,UAAS,IAAK,KAAK;AAClF,SAAO,EAAE,WAAW,EAAE,WAAU,IAAKA,IAAI,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,YAAY,EAAE,cAAc,IAAIyB,GAAE;AACnG;AACA,SAASgS,GAAG,GAAG,GAAG;AAChB,QAAM,IAAI/C,GAAG,CAAC,GAAG,KAAK,EAAE,UAAS,IAAK,IAAI,KAAK,GAAG1Q,IAAI,EAAE,QAAO,IAAK,IAAIyB,IAAG,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE,kBAAkB,GAAG,CAAC,CAAC,GAAG1B,KAAK,EAAE,UAAS,IAAK,IAAI,KAAK,GAAGJ,IAAI,EAAE,QAAO,IAAKI,IAAI0B;AACpL,SAAO,KAAK,OAAOzB,IAAIL,MAAM,IAAI8B,GAAE,IAAI;AACzC;AACA,SAASiS,GAAG,GAAG,GAAG,IAAI,SAAS;AAC7B,SAAO,MAAM,QAAQC,GAAG,CAAC,IAAIF,GAAG,GAAG,CAAC;AACtC;AACA,SAASD,GAAG,GAAG;AACb,SAAO,MAAM,KAAK,IAAI,OAAO,KAAK,WAAW,IAAI;AACnD;AACA,SAAShD,GAAG,GAAG,GAAG,GAAG,GAAGxQ,GAAG;AACzB,MAAIG;AACJ,QAAMV,IAAI,EAAE,cAAc,IAAIM,IAAI,IAAI,IAAI,IAAIN,EAAE,OAAO,CAAC6B,MAAMA,KAAK,KAAKA,KAAK,CAAC,CAAC,EAAE,MAAM3B,IAAIK,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAACsB,MAAM,CAAC7B,EAAE,SAASO,EAAE,UAAUsB,CAAC,CAAC,CAAC,GAAG,IAAItB,EAAE,MAAM,EAAE,YAAY,GAAGI,IAAIoT,GAAG,EAAE,YAAY,GAAG1T,IAAIH,EAAE,IAAI,CAAC2B,MAAM;AACxP,UAAMd,IAAIR,EAAE,QAAQsB,GAAG,KAAK,GAAGV,IAAIZ,EAAE,IAAIQ,GAAG,EAAE,MAAM,EAAC,CAAE,GAAGE,IAAIV,EAAE,UAAUQ,CAAC,GAAGN,IAAI,EAAE,OAAO,CAACS,MAAM6O,GAAE7O,GAAGH,GAAGI,GAAGZ,CAAC,CAAC,EAAE,KAAK,CAACW,GAAG,MAAMA,EAAE,WAAW,EAAE,SAASA,EAAE,SAAS,KAAK,IAAIX,EAAE,QAAQW,EAAE,KAAK,IAAIX,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAGO,IAAI,OAAO,SAASH,CAAC,IAAIF,EAAE,MAAM,GAAGE,CAAC,IAAIF,GAAG+B,IAAI,OAAO,SAAS7B,CAAC,IAAIF,EAAE,MAAME,CAAC,IAAI,CAAA;AACxS,WAAO;AAAA,MACL,MAAMI;AAAA,MACN,WAAWE;AAAA,MACX,SAASV,EAAE,UAAUQ,GAAG,CAAC;AAAA,MACzB,WAAWE,MAAM,KAAKA,MAAM;AAAA,MAC5B,SAASV,EAAE,MAAMQ,CAAC,MAAM;AAAA,MACxB,YAAY,EAAE,gBAAgB8O,GAAE9O,GAAG,EAAE,eAAeR,CAAC,IAAI;AAAA,MACzD,YAAY,EAAE,YAAYA,EAAE,UAAUQ,GAAG,EAAE,UAAU,OAAO,EAAE,UAAU,GAAG,IAAI;AAAA,MAC/E,QAAQD;AAAA,MACR,cAAc0B;AAAA,MACd,WAAWA,EAAE;AAAA,IACnB;AAAA,EACE,CAAC,GAAGhC,IAAI,CAAA;AACR,WAASqB,IAAI,GAAGA,IAAIxB,EAAE,QAAQwB,KAAKvB,GAAG;AACpC,UAAMS,IAAIV,EAAE,MAAMwB,GAAGA,IAAIvB,CAAC,GAAGa,KAAKT,IAAIK,EAAE,CAAC,MAAM,QAAQL,EAAE,OAAO,EAAE,cAAc;AAAA,MAC9E,MAAMK;AAAA,MACN,YAAYkT;AAAA,QACV1T,EAAE,OAAOQ,EAAE,CAAC,EAAE,IAAI;AAAA,QAClB,EAAE;AAAA,QACF,EAAE;AAAA,MACV;AAAA,IACA,IAAQ,EAAE,MAAMA,EAAC,IAAK,EAAE,MAAMA,EAAC;AAC3B,IAAAP,EAAE,KAAKW,CAAC;AAAA,EACV;AACA,SAAO,EAAE,OAAOX,GAAG,aAAaF,EAAC;AACnC;AACA,SAASyB,GAAE,GAAG;AACZ,QAAM,IAAoB,oBAAI,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAACzB,GAAGJ,MAAMI,EAAE,WAAWJ,EAAE,YAAYI,EAAE,SAASJ,EAAE,MAAM;AAC7G,MAAI,IAAI,CAAA,GAAIK,IAAI;AAChB,QAAM,IAAI,MAAM;AACd,QAAI,CAAC,EAAE,OAAQ;AACf,UAAMD,IAAI,CAAA;AACV,eAAWT,KAAK,GAAG;AACjB,UAAIc,IAAIL,EAAE,UAAU,CAAC,MAAM,KAAKT,EAAE,QAAQ;AAC1C,MAAAc,MAAM,MAAMA,IAAIL,EAAE,QAAQA,EAAE,KAAKT,EAAE,MAAM,KAAKS,EAAEK,CAAC,IAAId,EAAE,QAAQ,EAAE,IAAIA,GAAG,EAAE,KAAKc,GAAG,UAAU,GAAG;AAAA,IACjG;AACA,UAAMT,IAAII,EAAE;AACZ,eAAWT,KAAK,EAAG,GAAE,IAAIA,CAAC,EAAE,WAAWK;AACvC,QAAI,CAAA,GAAIK,IAAI;AAAA,EACd;AACA,aAAWD,KAAK;AACd,IAAAA,EAAE,YAAYC,KAAK,EAAE,UAAU,EAAC,GAAI,EAAE,KAAKD,CAAC,GAAGC,IAAI,KAAK,IAAIA,GAAGD,EAAE,MAAM;AACzE,SAAO,EAAC,GAAI;AACd;AACA,MAAMiU,KAAK;AACX,SAASxP,GAAG,GAAG,GAAG,GAAG,GAAGxE,GAAG;AACzB,QAAM,IAAIuB,GAAE,EAAE,eAAe,OAAO,GAAGxB,IAAIwB,GAAE,EAAE,eAAe,OAAO,GAAG5B,IAAI4B,GAAE,EAAE,gBAAgB,OAAO,GAAGjC,IAAIiC,GAAE,EAAE,qBAAqB,OAAO,GAAGnB,IAAIL,IAAI,GAAG,IAAI,EAAE,cAAc,CAAA,GAAI,IAAIC,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAACU,MAAM,CAAC,EAAE,SAASV,EAAE,UAAUU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA,GAAIY,IAAItB,EAAE,QAAQ,EAAE,aAAa,KAAK;AAC3T,WAASU,IAAI,GAAGA,IAAIX,GAAGW,KAAKf,GAAG;AAC7B,UAAMO,KAAKQ,IAAI,KAAKpB,MAAM;AAC1B,MAAE,KAAK;AAAA,MACL,WAAWoB,IAAI;AAAA,MACf,SAASR;AAAA,MACT,OAAOA,IAAIF,EAAE,OAAOA,EAAE,IAAIsB,GAAG,EAAE,SAASZ,GAAG,GAAG,OAAO,IAAI;AAAA,IAC/D,CAAK;AAAA,EACH;AACA,QAAMF,IAAI,EAAE,IAAI,CAACE,MAAM;AACrB,UAAMR,IAAIF,EAAE,QAAQU,GAAG,KAAK,GAAGH,IAAIP,EAAE,IAAIE,GAAG,EAAE,MAAM,GAAG,GAAG+B,IAAIjC,EAAE,UAAUE,CAAC,GAAGS,IAAI,EAAE,OAAO,CAACM,MAAMuO,GAAEvO,GAAGf,GAAGK,GAAGP,CAAC,CAAC,GAAG,IAAIW,EAAE,OAAO,CAACM,MAAMA,EAAE,MAAM,GAAGmB,IAAIzB,EAAE,OAAO,CAACM,MAAM,CAACA,EAAE,MAAM,EAAE,IAAI,CAACA,MAAM;AACzL,YAAMc,IAAIF,GAAEZ,EAAE,OAAOjB,CAAC,GAAGc,IAAIG,EAAE,MAAMY,GAAEZ,EAAE,KAAKjB,CAAC,IAAI+B,IAAIiS,IAAI/C,IAAK,KAAK,IAAIlP,GAAG,CAAC,IAAI,GAAGgQ,IAAK,KAAK,IAAI,KAAK,IAAIjR,GAAGiB,IAAI,CAAC,GAAGhC,CAAC,IAAI;AAC3H,aAAO,EAAE,OAAOkB,GAAG,UAAUgQ,GAAI,QAAQc,EAAE;AAAA,IAC7C,CAAC,GAAG7P,KAAIV,GAAEY,CAAC,GAAG/B,IAAI+B,EAAE,IAAI,CAACnB,MAAM;AAC7B,YAAMc,IAAIG,GAAE,IAAIjB,CAAC;AACjB,aAAO;AAAA,QACL,GAAGA;AAAA,QACH,QAAQA,EAAE,WAAWb,IAAI;AAAA,QACzB,YAAYa,EAAE,SAASA,EAAE,YAAYb,IAAI;AAAA,QACzC,KAAK2B,EAAE;AAAA,QACP,UAAUA,EAAE;AAAA,MACpB;AAAA,IACI,CAAC;AACD,QAAIL,IAAI;AACR,QAAI,EAAE,iBAAiB4N,GAAEpP,GAAG,EAAE,eAAeF,CAAC,GAAG;AAC/C,YAAMiB,IAAI,KAAK,IAAI,EAAE,cAAc,UAAU,CAAC,IAAI,GAAGc,IAAI,KAAK,IAAI,EAAE,cAAc,QAAQhC,CAAC,IAAI;AAC/F,MAAAgC,IAAId,MAAMS,IAAI,EAAE,QAAQT,IAAIb,IAAI,KAAK,WAAW2B,IAAI3B,IAAI,IAAG;AAAA,IAC7D;AACA,WAAO;AAAA,MACL,MAAMF;AAAA,MACN,SAASF,EAAE,UAAUE,GAAG,CAAC;AAAA,MACzB,WAAW+B,MAAM,KAAKA,MAAM;AAAA,MAC5B,cAAc;AAAA,MACd,WAAW5B;AAAA,MACX,aAAaqB;AAAA,IACnB;AAAA,EACE,CAAC;AACD,MAAId,IAAI;AACR,MAAI,EAAE,iBAAiB,IAAI;AACzB,UAAMF,IAAImB,GAAE,GAAG7B,CAAC,GAAGE,IAAIM,EAAE,UAAU,CAACD,MAAMA,EAAE,OAAO;AACnD,IAAAL,KAAK,KAAKQ,KAAK,KAAKA,KAAKX,MAAMa,IAAI,EAAE,UAAUV,GAAG,SAASQ,IAAI,KAAKN,IAAI;EAC1E;AACA,SAAO,EAAE,OAAO,GAAG,MAAMI,GAAG,YAAY,GAAG,YAAYT,GAAG,iBAAiBJ,GAAG,cAAciB,EAAC;AAC/F;AACA,SAASgT,GAAG,GAAG,GAAG,GAAG,GAAG5T,IAAI,IAAI;AAC9B,QAAM,IAAI,CAAA;AACV,aAAWD,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,GAAG;AAC5D,QAAIC,EAAE,SAAS,EAAE,UAAUD,CAAC,CAAC,EAAG;AAChC,UAAMJ,IAAI,EAAE,QAAQI,GAAG,KAAK,GAAGT,IAAI,EAAE,IAAIK,GAAG,EAAE,MAAM,EAAC,CAAE,GAAGS,IAAI,EAAE,OAAO,CAAC,MAAMoP,GAAE,GAAG7P,GAAGL,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,KAAK,IAAI,EAAE,QAAQ,EAAE,KAAK,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC;AAC/L,IAAAc,EAAE,UAAU,EAAE,KAAK,EAAE,MAAMT,GAAG,SAAS,EAAE,UAAUA,GAAG,CAAC,GAAG,QAAQS,EAAC,CAAE;AAAA,EACvE;AACA,SAAO,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAC;AAC3C;AACA,MAAM2T,KAAK,EAAE,MAAM,WAAW,UAAU,EAAE,QAAQ,IAAG;AACrD,SAASF,GAAG,GAAG,GAAG,GAAG,GAAG7T,GAAG;AACzB,QAAM,IAAI,CAAA;AACV,MAAID,IAAI,EAAE;AACV,SAAOC,EAAE,SAASD,GAAG,EAAE,UAAU,KAAK;AACpC,UAAMJ,IAAIK,EAAE,QAAQD,GAAG,OAAO,GAAGT,IAAImR;AAAA,MACnCsD;AAAAA,MACApU;AAAA,MACA,EAAE,UAAU,EAAE,UAAU,gBAAgB,GAAE;AAAA,MAC1CK;AAAA,IACN;AACI,MAAE,KAAK;AAAA,MACL,MAAML;AAAA,MACN,SAAS6Q,GAAGlR,GAAG,GAAG,GAAG,GAAGU,CAAC;AAAA,IAC/B,CAAK,GAAGD,IAAIC,EAAE,IAAIL,GAAG,EAAE,QAAQ,GAAG;AAAA,EAChC;AACA,SAAO,EAAE,QAAQ,EAAC;AACpB;AACA,MAAMmR,KAAK;AACX,SAASb,GAAG,GAAG,GAAG,GAAG;AACnB,SAAO,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,CAAC,CAAC;AACnC;AACA,SAASW,GAAG,GAAG,GAAG;AAChB,QAAM,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,QAAQ,GAAG,IAAI,KAAK,MAAM5Q,IAAI,CAAA;AAC3E,MAAI;AACF,aAAS,IAAI,GAAG,IAAI,GAAG,KAAK,IAAI;AAC9B,YAAMD,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,GAAG;AAC7C,MAAAC,EAAE,KAAK,EAAE,SAAS,IAAI,IAAI,KAAK,OAAO,EAAE,OAAOD,GAAG,OAAO,GAAG,SAAS,GAAE,CAAE;AAAA,IAC3E;AAAA;AAEA,aAASA,IAAI,GAAGA,IAAI,GAAGA,KAAK,MAAM;AAChC,YAAM,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,SAASA,GAAG;AAC7C,MAAAC,EAAE,KAAK,EAAE,SAASD,IAAI,IAAI,KAAK,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAAE,CAAE;AAAA,IACxE;AACF,SAAO,EAAE,OAAOC,GAAG,UAAU,GAAG,QAAQ,EAAC;AAC3C;AACA,SAAS4R,GAAG,GAAG,GAAG,GAAG;AACnB,QAAM,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAASd,IAAI;AACjD,SAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,KAAK,EAAE,QAAQ,GAAG,EAAE,WAAW;AACvE;AACA,SAASH,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,QAAM3Q,IAAI,EAAE,IAAI,CAACD,MAAM;AACrB,UAAMJ,IAAIsQ,GAAG,EAAE,KAAK,EAAE,aAAalQ,EAAE,OAAO,QAAQ,GAAG,GAAG,CAAC,GAAGT,IAAIS,EAAE,MAAM,EAAE,KAAK,EAAE,aAAaA,EAAE,KAAK,QAAQ,IAAIJ,IAAImR,IAAI1Q,IAAI6P,GAAG3Q,GAAGK,IAAI,GAAG,CAAC;AAC7I,WAAO,EAAE,OAAOI,GAAG,UAAUJ,GAAG,QAAQS,EAAC;AAAA,EAC3C,CAAC,GAAG,IAAIoB,GAAExB,CAAC;AACX,SAAOA,EAAE,IAAI,CAACD,MAAM;AAClB,UAAMJ,IAAI,EAAE,IAAII,CAAC;AACjB,WAAO;AAAA,MACL,OAAOA,EAAE;AAAA,MACT,SAASA,EAAE,WAAW,IAAI;AAAA,MAC1B,WAAWA,EAAE,SAASA,EAAE,YAAY,IAAI;AAAA,MACxC,MAAMJ,EAAE;AAAA,MACR,WAAWA,EAAE;AAAA,IACnB;AAAA,EACE,CAAC;AACH;AACA,SAASuU,GAAG,GAAG,GAAG,GAAG;AACnB,QAAM,IAAItD,GAAG,GAAG,CAAC,GAAG5Q,IAAI,EAAE,OAAO,CAACL,MAAMiS,GAAGjS,GAAG,GAAG,CAAC,CAAC,GAAG,IAAIgR,GAAG3Q,GAAG,GAAG,EAAE,UAAU,CAAC,GAAGD,IAAI,EAAE,OAAO,CAACJ,GAAGL,MAAM,KAAK,IAAIK,GAAGL,EAAE,SAAS,GAAG,CAAC;AACrI,SAAO,EAAE,OAAO,EAAE,OAAO,MAAM,GAAG,WAAWS,GAAG,QAAQ,EAAE,OAAM;AAClE;AACA,SAASoU,GAAG,GAAG,GAAG;AAChB,SAAO,EAAE,YAAY,SAAS,CAAC;AACjC;AACA,SAASF,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,QAAMjU,IAAI4Q,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,CAACjR,MAAMiS,GAAGjS,GAAG,GAAG,CAAC,CAAC,GAAGI,IAAI,EAAE,IAAI,CAACJ,MAAM;AACrE,UAAML,IAAI,EAAE,OAAO,CAAC,MAAM6U,GAAG,GAAGxU,EAAE,SAAS,EAAE,CAAC,GAAGS,IAAIuQ,GAAGrR,GAAG,GAAGU,EAAE,UAAU,CAAC,GAAG,IAAII,EAAE,OAAO,CAAC,GAAG,MAAM,KAAK,IAAI,GAAG,EAAE,SAAS,GAAG,CAAC;AAChI,WAAO,EAAE,KAAKT,GAAG,MAAMS,GAAG,WAAW,EAAC;AAAA,EACxC,CAAC;AACD,SAAO,EAAE,OAAOJ,EAAE,OAAO,OAAOD,GAAG,QAAQC,EAAE,OAAM;AACrD;AACA,MAAMuU,KAAK;AACX,SAASF,GAAG,GAAG,GAAG,GAAG,GAAGrU,GAAG,GAAG;AAC5B,QAAMD,IAAIwB,GAAEvB,EAAE,eAAe,OAAO,GAAGL,IAAI4B,GAAEvB,EAAE,eAAe,OAAO,GAAGV,IAAIiC,GAAEvB,EAAE,gBAAgB,OAAO,GAAGI,IAAImB,GAAEvB,EAAE,qBAAqB,OAAO,GAAG,IAAIL,IAAII,GAAG,IAAI,EAAE,QAAQ,EAAE,aAAa,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,EAAE,MAAM,EAAC,CAAE,GAAGuB,IAAI,GAAGd,IAAI,CAAA;AACvO,WAASD,IAAIR,GAAGQ,IAAIZ,GAAGY,KAAKjB,GAAG;AAC7B,UAAM2C,KAAK1B,IAAIR,KAAKK,MAAM;AAC1B,IAAAI,EAAE,KAAK;AAAA,MACL,WAAWD,IAAIR;AAAA,MACf,SAASkC;AAAA,MACT,OAAOA,IAAI,EAAE,OAAO,EAAE,IAAIX,GAAG,EAAE,SAASf,GAAG,GAAG,OAAO,IAAI;AAAA,IAC/D,CAAK;AAAA,EACH;AACA,QAAMK,IAAI,EAAE,OAAO,CAACL,MAAMiP,GAAEjP,GAAG,GAAG,GAAG,CAAC,CAAC,GAAGG,IAAI,EAAE,IAAI,CAACH,MAAM;AACzD,UAAM0B,IAAIrB,EAAE,OAAO,CAACP,MAAMA,EAAE,YAAY,SAASE,EAAE,SAAS,EAAE,CAAC,GAAGI,IAAIsB,EAAE,OAAO,CAAC5B,MAAMA,EAAE,MAAM,GAAGI,IAAIwB,EAAE,OAAO,CAAC5B,MAAM,CAACA,EAAE,MAAM,EAAE,IAAI,CAACA,MAAM;AACzI,YAAMqB,IAAIG,GAAExB,EAAE,OAAO,CAAC,GAAGY,IAAIZ,EAAE,MAAMwB,GAAExB,EAAE,KAAK,CAAC,IAAIqB,IAAI6S,IAAIxS,IAAI,KAAK,IAAIL,GAAG3B,CAAC,IAAIA,GAAGe,IAAI,KAAK,IAAI,KAAK,IAAIG,GAAGS,IAAI,CAAC,GAAG/B,CAAC,IAAII;AACzH,aAAO,EAAE,OAAOM,GAAG,UAAU0B,GAAG,QAAQjB,EAAC;AAAA,IAC3C,CAAC,GAAGsB,IAAIZ,GAAEf,CAAC,GAAGyB,KAAIzB,EAAE,IAAI,CAACJ,MAAM;AAC7B,YAAMqB,IAAIU,EAAE,IAAI/B,CAAC;AACjB,aAAO;AAAA,QACL,GAAGA;AAAA,QACH,QAAQA,EAAE,WAAW,IAAI;AAAA,QACzB,YAAYA,EAAE,SAASA,EAAE,YAAY,IAAI;AAAA,QACzC,KAAKqB,EAAE;AAAA,QACP,UAAUA,EAAE;AAAA,MACpB;AAAA,IACI,CAAC;AACD,WAAO,EAAE,KAAKnB,GAAG,cAAcI,GAAG,WAAWuB,GAAC;AAAA,EAChD,CAAC;AACD,MAAIhC,IAAI;AACR,MAAIF,EAAE,iBAAiB,MAAM,EAAE,UAAU,GAAG,CAAC,GAAG;AAC9C,UAAMO,IAAIsB,GAAE,GAAG,CAAC;AAChB,IAAAtB,KAAKR,KAAKQ,KAAKZ,MAAMO,KAAKK,IAAIR,KAAK,IAAI;AAAA,EACzC;AACA,SAAO,EAAE,MAAM,GAAG,OAAOS,GAAG,SAASE,GAAG,YAAYX,GAAG,YAAYJ,GAAG,WAAWO,EAAC;AACpF;AACA,SAASyV,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,QAAM3V,IAAI,EAAE,QAAQ,EAAE,aAAa,KAAK,GAAG,IAAI,EAAE,IAAIA,GAAG,EAAE,MAAM,EAAC,CAAE,GAAGD,IAAI,EAAE,OAAO,CAACT,MAAMkQ,GAAElQ,GAAGU,GAAG,GAAG,CAAC,CAAC,GAAGL,IAAI,EAAE,IAAI,CAACL,OAAO;AAAA,IAC1H,KAAKA;AAAA,IACL,QAAQS,EAAE,OAAO,CAACK,MAAMA,EAAE,YAAY,SAASd,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,CAACc,GAAG,MAAMA,EAAE,WAAW,EAAE,SAASA,EAAE,SAAS,KAAK,IAAI,EAAE,QAAQA,EAAE,KAAK,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC;AAAA,EACrK,EAAI;AACF,SAAO,EAAE,MAAMJ,GAAG,SAASL,EAAC;AAC9B;AACA,SAASyU,GAAG,GAAG;AACb,SAAO,MAAM,KAAK,IAAI,OAAO,KAAK,WAAW,IAAI;AACnD;AACA,SAASK,GAAG,GAAG,GAAG,GAAG,GAAGzU,GAAG,GAAG;AAC5B,QAAMD,IAAIC,EAAE,cAAc,IAAIL,IAAI,IAAI,IAAI,IAAII,EAAE,OAAO,CAACuB,MAAMA,KAAK,KAAKA,KAAK,CAAC,CAAC,EAAE,MAAMhC,IAAI,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAACgC,MAAM,CAACvB,EAAE,SAAS,EAAE,UAAUuB,CAAC,CAAC,CAAC,GAAGlB,IAAI,EAAE,MAAM,EAAE,YAAY,GAAG,IAAIgU,GAAGpU,EAAE,YAAY,GAAG,IAAIV,EAAE,IAAI,CAACgC,MAAM;AACxP,UAAMd,IAAI,EAAE,QAAQc,GAAG,KAAK,GAAGV,IAAI,EAAE,IAAIJ,GAAG,EAAE,MAAM,EAAC,CAAE,GAAGE,IAAI,EAAE,OAAO,CAACH,MAAMiP,GAAEjP,GAAGC,GAAGI,GAAG,CAAC,CAAC,GAAGV,IAAI,EAAE,IAAI,CAACK,MAAM;AAC7G,YAAM0B,IAAIvB,EAAE,OAAO,CAACD,MAAMA,EAAE,YAAY,SAASF,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,CAACE,GAAG2B,OAAM3B,EAAE,WAAW2B,GAAE,SAAS3B,EAAE,SAAS,KAAK,IAAI,EAAE,QAAQA,EAAE,KAAK,IAAI,EAAE,QAAQ2B,GAAE,KAAK,CAAC,GAAGzB,IAAI,OAAO,SAAS,CAAC,IAAIsB,EAAE,MAAM,GAAG,CAAC,IAAIA,GAAG,IAAI,OAAO,SAAS,CAAC,IAAIA,EAAE,MAAM,CAAC,IAAI,CAAA;AACxP,aAAO,EAAE,KAAK1B,GAAG,QAAQI,GAAG,cAAc,GAAG,WAAW,EAAE,OAAM;AAAA,IAClE,CAAC;AACD,WAAO;AAAA,MACL,MAAMH;AAAA,MACN,SAAS,EAAE,UAAUA,GAAG,CAAC;AAAA,MACzB,SAAS,EAAE,MAAMA,CAAC,MAAMJ;AAAA,MACxB,SAASF;AAAA,IACf;AAAA,EACE,CAAC,GAAG,IAAI,CAAA;AACR,WAASoB,IAAI,GAAGA,IAAI,EAAE,QAAQA,KAAK3B;AACjC,MAAE,KAAK,EAAE,MAAM,EAAE,MAAM2B,GAAGA,IAAI3B,CAAC,GAAG;AACpC,SAAO,EAAE,OAAO,GAAG,aAAaA,EAAC;AACnC;AACA,SAAS2U,GAAG,GAAG,GAAG;AAChB,SAAO;AAAA,IACL,IAAI,EAAE;AAAA,IACN,OAAO,EAAE,SAAS,EAAE;AAAA,IACpB,UAAU,EAAE,YAAY;AAAA,IACxB,YAAY,EAAE,cAAc;AAAA,IAC5B,eAAe,EAAE,iBAAiB,CAAA;AAAA,EACtC;AACA;AACA,SAASO,GAAG,GAAG;AACb,QAAM,IAAI,CAAA,GAAI,IAAI,CAAA,GAAI,IAAI,CAAClV,GAAGL,MAAM;AAClC,MAAE,KAAKgV,GAAG3U,GAAGL,CAAC,CAAC,GAAG,EAAE,KAAKK,EAAE,EAAE;AAC7B,eAAWS,KAAKT,EAAE,YAAY,CAAA,EAAI,GAAES,GAAGT,EAAE,EAAE;AAAA,EAC7C;AACA,aAAWA,KAAK,EAAG,GAAEA,GAAG,IAAI;AAC5B,QAAMK,IAAI,IAAI,IAAI,EAAE,IAAI,CAACL,MAAM,CAACA,EAAE,IAAIA,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,IAAI,CAACA,MAAM,CAACA,EAAE,IAAI,EAAE,KAAKA,GAAG,UAAU,CAAA,EAAE,CAAE,CAAC,CAAC,GAAGI,IAAI,CAAA;AAC7G,aAAWJ,KAAK,GAAG;AACjB,UAAML,IAAI,EAAE,IAAIK,CAAC,GAAGS,IAAId,EAAE,IAAI,UAAU,IAAIc,IAAI,EAAE,IAAIA,CAAC,IAAI;AAC3D,SAAKJ,EAAE,IAAII,CAAC,IAAI,EAAE,SAAS,KAAKd,CAAC,IAAIS,EAAE,KAAKT,CAAC;AAAA,EAC/C;AACA,SAAOS;AACT;AACA,SAASiR,GAAG,GAAG,GAAG;AAChB,MAAI,CAAC,EAAG,QAAO;AACf,QAAM,IAAI,EAAE,WAAW,GAAG,GAAG,IAAI,IAAI,EAAE,MAAM,CAAC,IAAI;AAClD,SAAO,CAAC,GAAG,CAAC,EAAE,KAAK,CAACvR,GAAGM,MAAM;AAC3B,UAAM,IAAI,OAAON,EAAE,IAAI,CAAC,KAAK,EAAE,GAAGH,IAAI,OAAOS,EAAE,IAAI,CAAC,KAAK,EAAE;AAC3D,WAAO,IAAIT,EAAE,cAAc,CAAC,IAAI,EAAE,cAAcA,CAAC;AAAA,EACnD,CAAC,EAAE,IAAI,CAACG,OAAO,EAAE,KAAKA,EAAE,KAAK,UAAUuR,GAAGvR,EAAE,UAAU,CAAC,EAAC,EAAG;AAC7D;AACA,SAASoR,GAAG,GAAG,GAAG,IAAI,GAAG;AACvB,QAAM,IAAI,CAAA;AACV,aAAW7Q,KAAK,GAAG;AACjB,UAAM,IAAIA,EAAE,SAAS,SAAS,GAAGD,IAAI,CAAC,EAAE,IAAIC,EAAE,IAAI,EAAE;AACpD,MAAE,KAAK,EAAE,UAAUA,EAAE,KAAK,OAAO,GAAG,aAAa,GAAG,UAAUD,EAAC,CAAE,GAAG,KAAKA,KAAK,EAAE,KAAK,GAAG8Q,GAAG7Q,EAAE,UAAU,GAAG,IAAI,CAAC,CAAC;AAAA,EAClH;AACA,SAAO;AACT;AACK,MAACM,KAAI;AAAA,EACR,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,IACN,WAAW;AAAA,IACX,UAAU;AAAA,IACV,UAAU;AAAA,IACV,aAAa;AAAA,IACb,UAAU;AAAA,EACd;AAAA,EACE,SAAS,EAAE,KAAK,MAAM,IAAI,EAAC;AAAA,EAC3B,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,IACN,WAAW;AAAA,IACX,UAAU;AAAA,IACV,UAAU;AAAA,IACV,aAAa;AAAA,IACb,UAAU;AAAA,EACd;AAAA,EACE,SAAS,EAAE,KAAK,MAAM,IAAI,EAAC;AAAA,EAC3B,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,SAAS,EAAE,KAAK,MAAM,IAAI,EAAC;AAAA,EAC3B,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,KAAK;AAAA,IACH,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,IAAI;AAAA,IACF,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AAAA,EACE,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACV;AACA;AACA,SAASyP,GAAG,GAAG;AACb,SAAO,SAAS;AAClB;AACA,SAASpO,GAAE,GAAG;AACZ,QAAM,IAAIrB,GAAE,CAAC;AACb,MAAI,CAAC,EAAG,QAAO;AACf,MAAIyP,GAAG,CAAC,GAAG;AACT,UAAM,IAAIzP,GAAE,EAAE,GAAG;AACjB,WAAO,CAAC,KAAKyP,GAAG,CAAC,IAAI,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,GAAE;AAAA,EACzD;AACA,SAAO,EAAE,MAAM,GAAG,IAAI,EAAE,GAAE;AAC5B;AACA,SAASoB,GAAG,GAAG,GAAG,GAAG;AACnB,SAAO;AAAA,IACL,MAAM;AAAA,IACN,WAAW,EAAE,MAAM,QAAQ;AAAA,IAC3B,UAAU;AAAA,IACV,OAAO,EAAE;AAAA,IACT,MAAM,EAAE;AAAA,IACR,MAAM,EAAE;AAAA,IACR,QAAQ,EAAE;AAAA,IACV,UAAU,EAAE;AAAA,IACZ,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI;AAAA,IAC5B,WAAW,EAAE,aAAa,EAAE;AAAA,IAC5B,UAAU,EAAE,YAAY,EAAE;AAAA,IAC1B,UAAU,EAAE,YAAY,EAAE;AAAA,IAC1B,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,YAAY,QAAQ,UAAU,CAAC,IAAI;AAAA,IACzE,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,QAAQ,UAAU,CAAC,IAAI;AAAA,IAChE,OAAO;AAAA,MACL,cAAc,EAAE;AAAA,MAChB,aAAa,EAAE;AAAA,MACf,YAAY,EAAE;AAAA,MACd,aAAa,EAAE;AAAA,MACf,iBAAiB,EAAE;AAAA,MACnB,cAAc,EAAE;AAAA,MAChB,aAAa,EAAE;AAAA,MACf,UAAU,EAAE;AAAA,MACZ,SAAS,EAAE;AAAA,MACX,UAAU,EAAE;AAAA,MACZ,WAAW,EAAE;AAAA,MACb,UAAU,EAAE;AAAA,MACZ,gBAAgB,EAAE;AAAA,MAClB,aAAa,EAAE;AAAA,MACf,cAAc,EAAE;AAAA,MAChB,eAAe,EAAE;AAAA,MACjB,qBAAqB,EAAE;AAAA,MACvB,sBAAsB,EAAE;AAAA,MACxB,uBAAuB,EAAE;AAAA,MACzB,qBAAqB,EAAE;AAAA,MACvB,oBAAoB,EAAE;AAAA,MACtB,sBAAsB,EAAE;AAAA,IAC9B;AAAA,EACA;AACA;AACA,MAAMnB,KAAKmB,GAAG,MAAMxP,GAAE,IAAI,EAAE,MAAM,CAAC;AACnC,SAAS+S,GAAG,GAAG;AACb,MAAI,CAAC,EAAG,QAAO1E;AACf,QAAM,IAAI,EAAE,YAAW,GAAI,IAAIrO,GAAE,CAAC,KAAKA,GAAE,EAAE,MAAM,GAAG,EAAE,CAAC,KAAK,EAAE;AAC9D,SAAO,IAAIwP,GAAG,EAAE,SAAS7Q,GAAE,KAAK,OAAO,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI0P;AAC5D;AACA,MAAM6F,KAAK;AAAA,EACT,IAAI;AAAA,EACJ,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,MAAM;AAAA,EACN,SAAS;AAAA,EACT,WAAW;AAAA,EACX,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,KAAK;AAAA,EACL,WAAW;AAAA,EACX,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,UAAU;AACZ;AACA,SAASI,GAAG,GAAG;AACb,SAAO,OAAO,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,EAAE,IAAI,CAAC,MAAM,GAAGJ,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,GAAG;AAC3F;AACA,SAASK,GAAG,GAAG;AACb,SAAO;AACT;AACA,SAASvB,GAAG,GAAG,GAAG;AAChB,SAAO,EAAE,cAAc,EAAE,WAAW,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,SAAS,EAAE,aAAa,EAAE,aAAa,KAAK,CAAC,GAAG,CAAC,IAAI,CAAA;AAChJ;AACA,MAAMY,KAAK;AACX,SAASzF,GAAG,GAAG;AACb,MAAI,OAAO,KAAK,YAAY,MAAM,KAAM,QAAO;AAC/C,QAAM,IAAI,OAAO,eAAe,CAAC;AACjC,SAAO,MAAM,OAAO,aAAa,MAAM;AACzC;AACA,SAAST,GAAE,GAAG,GAAG,IAAI,GAAG;AACtB,MAAI,MAAM,EAAG,QAAO;AACpB,MAAI,KAAKkG,GAAI,QAAO;AACpB,MAAI,OAAO,KAAK,YAAY,OAAO,KAAK,SAAU,QAAO,OAAO,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC;AAC1F,MAAI,KAAK,QAAQ,KAAK,KAAM,QAAO;AACnC,MAAI,MAAM,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC;AACrC,WAAO,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,KAAK,EAAE,MAAM,CAAC,GAAGvV,MAAMqP,GAAE,GAAG,EAAErP,CAAC,GAAG,IAAI,CAAC,CAAC;AACnH,MAAI,aAAa,QAAQ,aAAa;AACpC,WAAO,aAAa,QAAQ,aAAa,QAAQ,EAAE,QAAO,MAAO,EAAE,QAAO;AAC5E,MAAI8P,GAAG,CAAC,KAAKA,GAAG,CAAC,GAAG;AAClB,UAAM,IAAI,OAAO,KAAK,CAAC,GAAG9P,IAAI,OAAO,KAAK,CAAC;AAC3C,WAAO,EAAE,WAAWA,EAAE,SAAS,KAAK,EAAE;AAAA,MACpC,CAAC,MAAM,OAAO,UAAU,eAAe,KAAK,GAAG,CAAC,KAAKqP,GAAE,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;AAAA,IAC9E;AAAA,EACE;AACA,SAAO;AACT;AACK,MAAC8F,KAAK;AAAA,EACT,MAAM;AAAA,EACN,OAAO;AAAA,IACL,cAAc,EAAE,MAAM,gBAAgB,MAAM,WAAW,UAAU,EAAE,QAAQ,IAAG;AAAA,IAC9E,aAAa,EAAE,MAAM,eAAe,MAAM,WAAW,UAAU,EAAE,OAAO,IAAG;AAAA,IAC3E,YAAY,EAAE,MAAM,cAAc,MAAM,WAAW,UAAU,EAAE,MAAM,IAAG;AAAA,IACxE,aAAa,EAAE,MAAM,eAAe,MAAM,WAAW,UAAU,EAAE,OAAO,IAAG;AAAA;AAAA,IAE3E,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU,EAAE,OAAO,EAAC;AAAA,MACpB,YAAY,CAAC,GAAG,CAAC;AAAA,IACvB;AAAA,EACA;AACA,GAAGkC,KAAK;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AAAA,IACL,cAAc,EAAE,MAAM,gBAAgB,MAAM,YAAY,UAAU,EAAE,OAAO,IAAG;AAAA,IAC9E,aAAa,EAAE,MAAM,eAAe,MAAM,YAAY,UAAU,EAAE,MAAM,IAAG;AAAA;AAAA;AAAA,IAG3E,UAAU;AAAA,MACR,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU,EAAE,OAAO,EAAC;AAAA,MACpB,YAAY,CAAC,GAAG,CAAC;AAAA,IACvB;AAAA,EACA;AACA,GAAGf,KAAK;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AAAA,IACL,SAAS,EAAE,MAAM,WAAW,MAAM,QAAQ,UAAU,EAAE,MAAM,IAAG;AAAA,IAC/D,UAAU,EAAE,MAAM,YAAY,MAAM,QAAQ,UAAU,EAAE,OAAO,IAAG;AAAA,IAClE,WAAW,EAAE,MAAM,aAAa,MAAM,QAAQ,UAAU,EAAE,QAAQ,IAAG;AAAA,IACrE,UAAU,EAAE,MAAM,YAAY,MAAM,QAAQ,UAAU,EAAE,OAAO,EAAC,EAAE;AAAA,EACtE;AACA,GAAGlB,KAAK;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AAAA,IACL,gBAAgB,EAAE,MAAM,kBAAkB,MAAM,cAAc,UAAU,EAAE,OAAO,EAAC,EAAE;AAAA,EACxF;AACA,GAAGZ,KAAK;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AAAA,IACL,aAAa,EAAE,MAAM,eAAe,MAAM,YAAY,UAAU,EAAE,MAAM,IAAG;AAAA,IAC3E,cAAc,EAAE,MAAM,gBAAgB,MAAM,YAAY,UAAU,EAAE,OAAO,IAAG;AAAA,IAC9E,eAAe,EAAE,MAAM,iBAAiB,MAAM,YAAY,UAAU,EAAE,QAAQ,EAAC,EAAE;AAAA,EACrF;AACA,GAAG4B,KAAK;AAAA,EACN,MAAM;AAAA,EACN,MAAM,CAAC5B,EAAE;AAAA,EACT,OAAO;AAAA,IACL,qBAAqB,EAAE,MAAM,uBAAuB,MAAM,YAAY,UAAU,EAAE,MAAM,IAAG;AAAA,IAC3F,sBAAsB;AAAA,MACpB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU,EAAE,OAAO,EAAC;AAAA,IAC1B;AAAA,IACI,uBAAuB;AAAA,MACrB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU,EAAE,QAAQ,EAAC;AAAA,IAC3B;AAAA;AAAA,IAEI,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU,EAAE,MAAM,EAAC;AAAA,IACzB;AAAA;AAAA,IAEI,oBAAoB;AAAA,MAClB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU,EAAE,MAAM,EAAC;AAAA,IACzB;AAAA;AAAA,IAEI,sBAAsB;AAAA,MACpB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU,EAAE,QAAQ,EAAC;AAAA,IAC3B;AAAA,EACA;AACA;AACA,SAASgC,GAAG,GAAG,GAAG,IAAI,SAAS;AAC7B,QAAM,IAAI,OAAO,KAAK,WAAW,IAAIjV,GAAE,CAAC,GAAGvB,IAAI,MAAM,IAAI,IAAI,IAAI;AACjE,SAAO,KAAK,MAAMA,IAAI,CAAC,IAAI;AAC7B;AAIA,SAASsX,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,SAAO;AAAA,IACL,OAAO,EAAE,IAAI,GAAG,EAAE,SAAS,GAAG;AAAA,IAC9B,KAAK,IAAI,EAAE,IAAI,GAAG,EAAE,SAAS,EAAC,CAAE,IAAI;AAAA,EACxC;AACA;AACA,SAASnB,GAAG,GAAG,GAAG,GAAG,GAAGnW,GAAG,IAAI,IAAI;AACjC,QAAMD,IAAI,KAAKC,EAAE,IAAI,GAAG,EAAE,SAAS,GAAG;AACtC,MAAI,MAAM,OAAO;AACf,QAAII,IAAIJ,EAAE,IAAID,GAAG,EAAE,SAAS,GAAG;AAC/B,UAAM,IAAIC,EAAE,IAAI,GAAG,EAAE,SAAS,GAAG;AACjC,WAAOA,EAAE,SAASI,GAAG,CAAC,MAAMA,IAAI,IAAI,EAAE,OAAO,GAAG,KAAKA,EAAC;AAAA,EACxD;AACA,MAAIT,IAAIK,EAAE,IAAI,GAAG,EAAE,SAAS,GAAG;AAC/B,QAAMV,IAAIU,EAAE,SAASD,GAAG,EAAE,SAAS,GAAG;AACtC,SAAOC,EAAE,QAAQL,GAAGL,CAAC,MAAMK,IAAIL,IAAI,EAAE,OAAOK,GAAG,KAAKI,EAAC;AACvD;AACA,MAAMuQ,KAAK;AACX,SAAS4E,GAAG,GAAG,GAAG,GAAG,GAAGlV,GAAG;AACzB,SAAOA,EAAE,SAAS,GAAG,CAAC,KAAKA,EAAE,SAAS,GAAG,CAAC;AAC5C;AACA,SAASiV,GAAG,GAAG;AACb,QAAM;AAAA,IACJ,OAAO;AAAA,IACP,OAAO;AAAA,IACP,KAAK;AAAA,IACL,QAAQjV;AAAA,IACR,gBAAgB;AAAA,IAChB,eAAeD;AAAA,IACf,sBAAsBJ;AAAA,IACtB,OAAOL;AAAA,IACP,IAAIc;AAAA,EACR,IAAM,GAAG,IAAI,KAAKA,EAAE,IAAI,GAAG,EAAE,SAASkQ,IAAI;AACxC,MAAI3Q,KAAKI,KAAK,CAACwT,GAAG,GAAG,GAAGxT,GAAGK,CAAC;AAC1B,WAAO;AACT,MAAI,CAAC;AACH,eAAW,KAAKJ,GAAG;AACjB,YAAM,IAAI,EAAE,OAAOI,EAAE,IAAI,EAAE,OAAO,EAAE,SAASkQ,IAAI;AACjD,UAAI4E,GAAG,GAAG,GAAG,EAAE,OAAO,GAAG9U,CAAC,EAAG,QAAO;AAAA,IACtC;AACF,SAAO,EAAEd,KAAK,CAACA,EAAE,EAAE,OAAO,GAAG,KAAK,GAAG,OAAO,EAAC,CAAE;AACjD;AACA,IAAAkmB,KAAA,MAAS;AAAA,EACP,YAAY,GAAG,IAAI,CAAA,GAAI,GAAG;AACxBjmB,IAAAA,GAAE,MAAM,WAAWsB,GAAE,CAAA,CAAE,CAAC,GAExBtB,GAAE,MAAM,UAAU6B,GAAE,MAAM,KAAK,QAAQ,KAAK,CAAC,GAC7C,KAAK,KAAK,GAAG,KAAK,YAAY,GAAG,EAAE,WAAW,KAAK,QAAQ,QAAQ,EAAE,IAAI,CAACpB,MAAM,KAAK,KAAKA,CAAC,CAAC;AAAA,EAC9F;AAAA,EACA,KAAK,GAAG;AACN,WAAOqQ,GAAG,KAAK,YAAY,KAAK,UAAU,CAAC,IAAI,GAAG,KAAK,EAAE;AAAA,EAC3D;AAAA,EACA,IAAI,GAAG;AACL,UAAM,IAAI,KAAK,KAAK,CAAC;AACrB,WAAO,KAAK,QAAQ,QAAQ,CAAC,GAAG,KAAK,QAAQ,OAAO,CAAC,GAAG;AAAA,EAC1D;AAAA,EACA,QAAQ,GAAG;AACT,WAAO,KAAK,QAAQ,MAAM,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC;AAAA,EAClD;AAAA,EACA,SAAS;AACP,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EACA,OAAO,GAAG;AACR,UAAM,IAAI,KAAK,QAAQ,MAAM,OAAO,CAACrQ,MAAMA,EAAE,OAAO,CAAC,GAAG,IAAI,EAAE,WAAW,KAAK,QAAQ,MAAM;AAC5F,WAAO,MAAM,KAAK,QAAQ,QAAQ,IAAI;AAAA,EACxC;AAAA,EACA,YAAY;AACV,SAAK,QAAQ,MAAM,WAAW,KAAK,QAAQ,QAAQ;EACrD;AAAA;AAAA,EAEA,OAAO,GAAG,GAAG;AACX,QAAI;AACJ,WAAO,KAAK,QAAQ,QAAQ,KAAK,QAAQ,MAAM,IAAI,CAACA,MAAMA,EAAE,OAAO,IAAIA,KAAK,IAAI,EAAE,GAAGA,GAAG,GAAG,EAAC,GAAI,EAAE,GAAG;AAAA,EACvG;AAAA;AAAA,EAEA,MAAM,GAAG;AACP,SAAK,QAAQ,QAAQ,EAAE,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;AAAA,EAChD;AACF;AACA,MAAM+U,GAAG;AAAA,EACP,cAAc;AACZxV,IAAAA,GAAE,MAAM,YAA4B,oBAAI,IAAG,CAAE;AAAA,EAC/C;AAAA,EACA,GAAG,GAAG,GAAG;AACP,QAAI,IAAI,KAAK,SAAS,IAAI,CAAC;AAC3B,WAAO,MAAM,IAAoB,oBAAI,IAAG,GAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,MAAM,KAAK,IAAI,GAAG,CAAC;AAAA,EACrG;AAAA,EACA,IAAI,GAAG,GAAG;AACR,QAAI;AACJ,KAAC,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,QAAQ,EAAE,OAAO,CAAC;AAAA,EAClD;AAAA,EACA,QAAQ,GAAG,GAAG;AACZ,UAAM,IAAI,KAAK,SAAS,IAAI,CAAC;AAC7B,QAAI;AACF,iBAAWS,KAAK,EAAG,CAAAA,EAAE,CAAC;AAAA,EAC1B;AAAA,EACA,QAAQ;AACN,SAAK,SAAS,MAAK;AAAA,EACrB;AACF;AACA,IAAAylB,KAAA,MAAS;AAAA,EACP,YAAY,GAAG,IAAIhW,GAAG,GAAG;AACvBlQ,IAAAA,GAAE,MAAM,IAAI,GACZA,GAAE,MAAM,UAAU,GAClBA,GAAE,MAAM,OAAO,GACfA,GAAE,MAAM,WAAW,IAAIwV,GAAE,CAAE,GAC3BxV,GAAE,MAAM,SAAS,GACjBA,GAAE,MAAM,SAAS,GACjBA,GAAE,MAAM,YAAY,GACpBA,GAAE,MAAM,mBAAmB,EAAE,GAC7BA,GAAE,MAAM,eAAesB,GAAE,MAAM,CAAC,GAChCtB,GAAE,MAAM,YAAYsB,GAAE,EAAE,CAAC,GACzBtB,GAAE,MAAM,aAAasB,GAAE,IAAI,CAAC,GAC5BtB,GAAE,MAAM,cAAc,GACtBA,GAAE,MAAM,aAAasB,GAAkB,oBAAI,IAAG,CAAE,CAAC,GACjDtB,GAAE,MAAM,qBAAqBsB,GAAkB,oBAAI,IAAG,CAAE,CAAC,GACzDtB,GAAE,MAAM,iBAAiB,IAAI,GAM7BA,GAAE,MAAM,kBAAkBsB,GAAE,CAAC,CAAC,GAC9BtB,GAAE,MAAM,WAAW,IAAI,GACvBA,GAAE,MAAM,UAAU,IAAI,GAEtBA,GAAE,MAAM,cAAc,CAAC,GACvBA,GAAE,MAAM,cAAc,EAAE,GAExBA,GAAE,MAAM,oBAAoB6B;AAAAA,MAC1B,MAAM,KAAK,kBAAkB;AAAA,IACnC,CAAK,GAMD7B,GAAE,MAAM,WAAW;AACnB,QAAIS;AACJ,SAAK,KAAK,GAAG,KAAK,UAAU,GAAG,KAAK,aAAa,KAAK,MAAM,KAAK,WAAW,IAAIkT,GAAG,EAAE,WAAW,CAAA,CAAE,GAAG,KAAK,QAAQ,IAAIqD,GAAG,KAAK,IAAI,EAAE,UAAU,CAAA,GAAI,EAAE,kBAAkB,GAAG,KAAK,eAAevF;AAAA,MAC3L6D,GAAG,EAAE,aAAa,EAAE;AAAA,MACpB,EAAE;AAAA,IACR,GAAO,KAAK,UAAU,IAAI5B;AAAA,MACpB,KAAK;AAAA,MACL,MAAM,KAAK,QAAO;AAAA,MAClB,CAAC,MAAM,KAAK,QAAQ,QAAQ,WAAW,EAAE,WAAW,GAAG;AAAA,MACvD,EAAE;AAAA,IACR;AACI,eAAW,KAAK,EAAE,gBAAgB,CAAA,EAAI,MAAK,QAAQ,IAAI,CAAC;AACxD,SAAK,SAAS,QAAQ,EAAE,aAAa,KAAK,YAAY,QAAQ,KAAK,GAAG;AAAA,MACpE,EAAE,eAAe,KAAK,GAAG,YAAY,KAAK,GAAG,IAAG,CAAE;AAAA,IACxD,GAAO,KAAK,YAAY7R,GAAE,MAAM,KAAK,aAAY,CAAE,GAAG,KAAK,gBAAgBkQ,GAAG,MAAM;AAC9E,YAAM,IAAI,CAAC,GAAG,KAAK,MAAM,OAAO,OAAO,GAAG,KAAK,QAAQ,OAAO,KAAK;AACnE,WAAK,QAAQ,QAAQ,aAAa,CAAC;AAAA,IACrC,CAAC,GAAG,KAAK,QAAQ,OAAM,EAAG,UAAU,KAAK,QAAQ,SAAS,KAAK,SAAQ,CAAE;AACzE,eAAW,KAAK,KAAK,SAAS,QAAO,GAAI;AACvC,YAAMvR,KAAKC,IAAI,EAAE,UAAU,OAAO,SAASA,EAAE,KAAK,GAAG,IAAI;AACzD,aAAOD,KAAK,cAAc,KAAK,gBAAgB,KAAKA,CAAC;AAAA,IACvD;AAAA,EACF;AAAA;AAAA,EAEA,MAAM,UAAU;AACd,QAAI,KAAK,WAAY,QAAO,KAAK;AACjC,UAAM,EAAE,mBAAmB,EAAC,IAAK,MAAM,QAAA,QAAA,EAAA,KAAA,MAAA2lB,EAAA;AACvC,WAAO,KAAK,aAAa,EAAC,GAAI,KAAK;AAAA,EACrC;AAAA;AAAA,EAEA,WAAW;AACT,UAAM,IAAI,KAAK,aAAY,EAAG;AAC9B,WAAO;AAAA,MACL,OAAO,EAAE;AAAA,MACT,KAAK,EAAE;AAAA,MACP,UAAU,KAAK,GAAG,YAAY,EAAE,WAAW;AAAA,MAC3C,QAAQ,KAAK,GAAG,YAAY,EAAE,SAAS;AAAA,IAC7C;AAAA,EACE;AAAA;AAAA,EAEA,YAAY;AACV,WAAO,CAAC,GAAG,KAAK,MAAM,OAAM,GAAI,GAAG,KAAK,QAAQ,OAAO,KAAK;AAAA,EAC9D;AAAA;AAAA,EAEA,UAAU;AACR,WAAO,KAAK,YAAY;AAAA,EAC1B;AAAA,EACA,SAAS,GAAG;AACV,WAAO,KAAK,YAAY,QAAQ,KAAK,GAAG,KAAK,CAAC,GAAG,KAAK,aAAY;AAAA,EACpE;AAAA,EACA,QAAQ;AACN,WAAO,KAAK,YAAY,QAAQ,KAAK,QAAO,GAAI,KAAK,aAAY;AAAA,EACnE;AAAA,EACA,OAAO;AACL,WAAO,KAAK,YAAW,EAAG;AAAA,EAC5B;AAAA,EACA,OAAO;AACL,WAAO,KAAK,YAAY,QAAQ,KAAK,GAAG,SAAS,KAAK,YAAY,OAAO,KAAK,KAAI,CAAE,GAAG,KAAK,aAAY;AAAA,EAC1G;AAAA,EACA,OAAO;AACL,WAAO,KAAK,YAAY,QAAQ,KAAK,GAAG,IAAI,KAAK,YAAY,OAAO,KAAK,KAAI,CAAE,GAAG,KAAK,aAAY;AAAA,EACrG;AAAA,EACA,cAAc,GAAG;AACf,WAAO,KAAK,YAAY,QAAQ,KAAK,GAAG,IAAI,KAAK,YAAY,OAAO,CAAC,GAAG,KAAK,aAAY;AAAA,EAC3F;AAAA;AAAA,EAEA,WAAW,GAAG;AACZ,QAAI,CAAC,KAAK,SAAS,IAAI,CAAC;AACtB,YAAM,IAAI,MAAM,4CAA4C,CAAC,IAAI;AACnE,WAAO,KAAK,SAAS,QAAQ,GAAG,KAAK,aAAY;AAAA,EACnD;AAAA,EACA,UAAU;AACR,WAAO,EAAE,MAAM,KAAK,SAAS,OAAO,MAAM,KAAK,cAAa;AAAA,EAC9D;AAAA;AAAA,EAEA,QAAQ,GAAG;AACT,WAAO,KAAK,SAAS,IAAI,CAAC;AAAA,EAC5B;AAAA,EACA,cAAc;AACZ,WAAO,KAAK,SAAS,IAAI,KAAK,SAAS,KAAK;AAAA,EAC9C;AAAA;AAAA,EAEA,SAAS,GAAG;AACV,WAAO,KAAK,MAAM,IAAI,CAAC;AAAA,EACzB;AAAA,EACA,aAAa,GAAG;AACd,WAAO,KAAK,MAAM,QAAQ,CAAC;AAAA,EAC7B;AAAA,EACA,YAAY;AACV,WAAO,KAAK,UAAS;AAAA,EACvB;AAAA,EACA,kBAAkB;AAChB,SAAK,MAAM,UAAS;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,cAAc,GAAG;AACf,SAAK,KAAK,MAAM,MAAM,CAAC,GAAG,KAAK,QAAQ,SAAS,KAAK,SAAQ,CAAE;AAAA,EACjE;AAAA;AAAA;AAAA,EAGA,eAAe,GAAG;AAChB,UAAM,IAAI,KAAK,QAAQ,IAAI,CAAC;AAC5B,WAAO,KAAK,QAAQ,SAAS,EAAE,IAAI,KAAK,SAAQ,CAAE,GAAG;AAAA,EACvD;AAAA;AAAA,EAEA,kBAAkB;AAChB,WAAO,KAAK,QAAQ,OAAM;AAAA,EAC5B;AAAA;AAAA,EAEA,kBAAkB,GAAG;AACnB,SAAK,QAAQ,OAAO,CAAC;AAAA,EACvB;AAAA,EACA,wBAAwB;AACtB,SAAK,QAAQ,UAAS;AAAA,EACxB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,iBAAiB,GAAG,GAAG,GAAG;AACxB,UAAM1lB,IAAI,KAAK,MAAM,OAAO,GAAG,EAAE,OAAO,GAAG,KAAK,GAAG;AACnD,WAAOA,KAAK,KAAK,QAAQ,QAAQ,eAAe,EAAE,OAAOA,EAAC,CAAE,GAAGA;AAAA,EACjE;AAAA;AAAA,EAEA,SAAS,GAAG,GAAG,GAAG;AAChB,UAAMA,IAAI,KAAK,MAAM,QAAQ,CAAC;AAC9B,WAAOA,IAAIiV,GAAG;AAAA,MACZ,OAAOjV;AAAA,MACP,OAAO;AAAA,MACP,KAAK;AAAA,MACL,QAAQ,KAAK,MAAM,OAAM,EAAG,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC;AAAA,MACpD,gBAAgB,KAAK,QAAQ,iBAAiB;AAAA,MAC9C,eAAeqB,GAAE,KAAK,QAAQ,aAAa;AAAA,MAC3C,sBAAsB,KAAK,QAAQ,oBAAoB;AAAA,MACvD,OAAO,KAAK,QAAQ;AAAA,MACpB,IAAI,KAAK;AAAA,IACf,CAAK,IAAI;AAAA,EACP;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,UAAU,GAAG,GAAG,GAAG;AACjB,WAAO,KAAK,SAAS,GAAG,GAAG,CAAC,IAAI,KAAK,iBAAiB,GAAG,GAAG,CAAC,MAAM,SAAS;AAAA,EAC9E;AAAA;AAAA,EAEA,OAAO,GAAG,GAAG;AACX,UAAM,IAAI,EAAE,OAAO,KAAK,GAAG,KAAK,CAAC,GAAG,KAAK,KAAK,GAAG,KAAK,CAAC,EAAC;AACxD,WAAO,KAAK,UAAU,QAAQ,GAAG,KAAK,QAAQ,QAAQ,UAAU,CAAC,GAAG;AAAA,EACtE;AAAA,EACA,WAAW;AACT,WAAO,KAAK,UAAU,UAAU,KAAK,UAAU,QAAQ,MAAM,KAAK,QAAQ,QAAQ,YAAY,CAAA,CAAE,IAAI;AAAA,EACtG;AAAA,EACA,eAAe;AACb,WAAO,KAAK,UAAU;AAAA,EACxB;AAAA;AAAA;AAAA,EAGA,aAAa,GAAG;AACd,WAAO,KAAK,kBAAkB,QAAQ,IAAI,IAAI,CAAC,GAAG,KAAK,QAAQ,QAAQ,wBAAwB,EAAE,KAAK,CAAC,GAAG,KAAK,kBAAkB,KAAK,EAAC,CAAE,GAAG;AAAA,EAC9I;AAAA;AAAA,EAEA,qBAAqB,GAAG;AACtB,UAAM,IAAI,IAAI,IAAI,KAAK,kBAAkB,KAAK;AAC9C,WAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,kBAAkB,QAAQ,GAAG,KAAK,QAAQ,QAAQ,wBAAwB,EAAE,KAAK,CAAC,GAAG,CAAC,EAAC,CAAE,GAAG;AAAA,EAC7I;AAAA,EACA,sBAAsB;AACpB,WAAO,KAAK,kBAAkB,MAAM,SAAS,KAAK,kBAAkB,QAAwB,oBAAI,IAAG,GAAI,KAAK,QAAQ,QAAQ,wBAAwB,EAAE,KAAK,CAAA,EAAE,CAAE,IAAI;AAAA,EACrK;AAAA,EACA,sBAAsB;AACpB,WAAO,CAAC,GAAG,KAAK,kBAAkB,KAAK;AAAA,EACzC;AAAA;AAAA,EAEA,YAAY,GAAG;AACb,UAAM,IAAI,KAAK,MAAM,OAAO,CAAC;AAC7B,QAAI,KAAK,KAAK,kBAAkB,MAAM,IAAI,CAAC,GAAG;AAC5C,YAAM,IAAI,IAAI,IAAI,KAAK,kBAAkB,KAAK;AAC9C,QAAE,OAAO,CAAC,GAAG,KAAK,kBAAkB,QAAQ;AAAA,IAC9C;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAEA,uBAAuB;AACrB,eAAW,KAAK,KAAK,kBAAkB,MAAO,MAAK,MAAM,OAAO,CAAC;AACjE,SAAK,kBAAkB,QAAwB,oBAAI,IAAG,GAAI,KAAK,QAAQ,QAAQ,wBAAwB,EAAE,KAAK,CAAA,EAAE,CAAE;AAAA,EACpH;AAAA;AAAA;AAAA,EAGA,kBAAkB;AAChB,WAAOwP,GAAG,KAAK,cAAc,KAAK,UAAU,KAAK;AAAA,EACnD;AAAA;AAAA,EAEA,oBAAoB,GAAG,GAAG;AACxB,UAAM,IAAI,KAAK,MAAM,OAAO,GAAG,EAAE,aAAa,CAAC,CAAC,GAAG;AACnD,WAAO,KAAK,KAAK,QAAQ,QAAQ,eAAe,EAAE,OAAO,EAAC,CAAE,GAAG;AAAA,EACjE;AAAA;AAAA,EAEA,eAAe,GAAG;AAChB,UAAM,IAAI,IAAI,IAAI,KAAK,UAAU,KAAK;AACtC,WAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,UAAU,QAAQ,GAAG;AAAA,EACtE;AAAA;AAAA,EAEA,GAAG,GAAG,GAAG;AACP,WAAO,KAAK,QAAQ,GAAG,GAAG,CAAC;AAAA,EAC7B;AAAA,EACA,IAAI,GAAG,GAAG;AACR,SAAK,QAAQ,IAAI,GAAG,CAAC;AAAA,EACvB;AAAA,EACA,QAAQ,GAAG,GAAG;AACZ,SAAK,QAAQ,QAAQ,GAAG,CAAC;AAAA,EAC3B;AAAA;AAAA,EAEA,UAAU,GAAG;AACX,WAAO,KAAK,QAAQ,CAAC;AAAA,EACvB;AAAA,EACA,UAAU,GAAG,GAAG;AACd,WAAOxB,GAAE,KAAK,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,QAAQ,CAAC,IAAI,GAAG,KAAK,cAAc,KAAK;EACtF;AAAA;AAAA,EAEA,WAAW,GAAG;AACZ,UAAM,IAAI,KAAK,SAAS,IAAI;AAC5B,QAAIrP,IAAI;AACR,eAAW,KAAK,OAAO,KAAK,CAAC;AAC3BqP,MAAAA,GAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAGrP,IAAI;AACrC,WAAOA,KAAK,KAAK,WAAU,GAAI,KAAK,aAAY,KAAM;AAAA,EACxD;AAAA;AAAA,EAEA,aAAa;AACX,QAAI,KAAK,aAAa,GAAG;AACvB,WAAK,aAAa;AAClB;AAAA,IACF;AACA,SAAK,eAAe;AAAA,EACtB;AAAA;AAAA,EAEA,SAAS;AACP,WAAO,KAAK,WAAU,GAAI;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,eAAe,GAAG;AAChB,SAAK;AACL,QAAI;AACF,QAAC;AAAA,IACH,UAAC;AACC,WAAK,cAAc,KAAK,eAAe,KAAK,KAAK,eAAe,KAAK,aAAa,IAAI,KAAK,eAAe;AAAA,IAC5G;AAAA,EACF;AAAA;AAAA;AAAA,EAGA,eAAe,GAAG;AAChB,SAAK,UAAU;AAAA,EACjB;AAAA;AAAA,EAEA,IAAI,KAAK;AACP,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAEA,UAAU,GAAG;AACX,SAAK,SAAS;AAAA,EAChB;AAAA;AAAA,EAEA,aAAa,GAAG;AACd,QAAI,GAAG;AACP,YAAQ,KAAK,IAAI,KAAK,YAAY,OAAO,SAAS,EAAE,iBAAiB,QAAQ,EAAE,KAAK,GAAG,CAAC,GAAG;AAAA,EAC7F;AAAA;AAAA,EAEA,gBAAgB;AACd,QAAI,GAAG;AACP,aAAS,KAAK,IAAI,KAAK,YAAY,OAAO,SAAS,EAAE,kBAAkB,OAAO,SAAS,EAAE,KAAK,CAAC,MAAM;AAAA,EACvG;AAAA;AAAA,EAEA,aAAa;AACX,QAAI,GAAG;AACP,YAAQ,KAAK,IAAI,KAAK,YAAY,OAAO,SAAS,EAAE,eAAe,QAAQ,EAAE,KAAK,CAAC,GAAG;AAAA,EACxF;AAAA;AAAA,EAEA,iBAAiB,GAAG;AAClB,QAAIN;AACJ,UAAML,KAAKK,IAAI,KAAK,QAAQ,kBAAkB,OAAO,SAASA,EAAE,CAAC;AACjE,WAAOL,IAAI,EAAE,GAAG,KAAK,SAAS,GAAGA,EAAC,IAAK,KAAK;AAAA,EAC9C;AAAA;AAAA,EAEA,mBAAmB,GAAG,IAAI,KAAK,SAAS,OAAO;AAC7C,WAAO,KAAK,iBAAiB,CAAC,EAAE,CAAC;AAAA,EACnC;AAAA;AAAA,EAEA,eAAe;AACb,SAAK,eAAe;AACpB,UAAM,IAAI,KAAK,YAAW,GAAI,IAAI,KAAK,iBAAiB,EAAE,IAAI,GAAG,IAAI,EAAE,gBAAgB,EAAE,iBAAiBW,IAAIyQ;AAAA,MAC5G;AAAA,MACA,KAAK,YAAY;AAAA,MACjB;AAAA,QACE,UAAU,KAAK,SAAQ;AAAA,QACvB,gBAAgB,EAAE,kBAAkB+B,GAAG;AAAA,MAC/C;AAAA,MACM,KAAK;AAAA,IACX,GAAO,IAAIjB,GAAG,KAAK,UAAS,GAAIvR,GAAG,KAAK,EAAE,GAAGD,IAAI4U,GAAG,GAAG,CAAC,GAAGhV,IAAI;AAAA,MACzD,MAAM,EAAE;AAAA,MACR,MAAM;AAAA,MACN,OAAOK;AAAA,MACP,OAAO,KAAK,YAAYA,GAAGD,CAAC;AAAA,IAClC;AACI,WAAO,EAAE,SAAS,YAAY;AAAA,MAC5B,GAAGJ;AAAA,MACH,SAAS6Q;AAAAA,QACPxQ;AAAA,QACA;AAAA,QACA,KAAK,QAAO;AAAA,QACZ;AAAA,UACE,UAAU,KAAK,SAAQ;AAAA,UACvB,cAAc;AAAA,UACd,eAAeqB,GAAE,EAAE,aAAa;AAAA,UAChC,WAAW,KAAK,UAAU;AAAA,UAC1B,YAAYtB;AAAA,UACZ,aAAa,EAAE;AAAA,UACf,gBAAgB,EAAE;AAAA,QAC5B;AAAA,QACQ,KAAK;AAAA,MACb;AAAA,IACA,IAAQ,EAAE,SAAS,aAAa;AAAA,MAC1B,GAAGJ;AAAA,MACH,UAAU6E;AAAAA,QACRxE;AAAA,QACA;AAAA,QACA,KAAK,QAAO;AAAA,QACZ;AAAA,UACE,aAAa,EAAE;AAAA,UACf,aAAa,EAAE;AAAA,UACf,cAAc,EAAE;AAAA,UAChB,mBAAmB,EAAE;AAAA,UACrB,YAAY,EAAE;AAAA,UACd,cAAc,EAAE;AAAA,UAChB,eAAeqB,GAAE,EAAE,aAAa;AAAA,UAChC,YAAYtB;AAAA,QACtB;AAAA,QACQ,KAAK;AAAA,MACb;AAAA,IACA,IAAQ,EAAE,SAAS,SAAS,EAAE,GAAGJ,GAAG,MAAMiU,GAAG5T,GAAG,GAAG,KAAK,QAAO,GAAI,KAAK,IAAID,CAAC,EAAC,IAAK,EAAE,SAAS,aAAa,EAAE,GAAGJ,GAAG,UAAUuU,GAAGlU,GAAG,GAAG,KAAK,EAAE,EAAC,IAAK,EAAE,SAAS,aAAa;AAAA,MACrK,GAAGL;AAAA,MACH,kBAAkBsU;AAAAA,QAChBjU;AAAA,QACA;AAAA,QACA,KAAK,gBAAe;AAAA,QACpB,KAAK;AAAA,MACb;AAAA,IACA,IAAQ,EAAE,SAAS,qBAAqB;AAAA,MAClC,GAAGL;AAAA,MACH,kBAAkB0U;AAAAA,QAChBrU;AAAA,QACA;AAAA,QACA,KAAK,gBAAe;AAAA,QACpB,KAAK,QAAO;AAAA,QACZ;AAAA,UACE,aAAa,EAAE;AAAA,UACf,aAAa,EAAE;AAAA,UACf,cAAc,EAAE;AAAA,UAChB,mBAAmB,EAAE;AAAA,UACrB,cAAc,EAAE;AAAA,QAC1B;AAAA,QACQ,KAAK;AAAA,MACb;AAAA,IACA,IAAQ,EAAE,SAAS,oBAAoB;AAAA,MACjC,GAAGL;AAAA,MACH,iBAAiBgW,GAAG3V,GAAG,GAAG,KAAK,gBAAe,GAAI,KAAK,EAAE;AAAA,IAC/D,IAAQ,EAAE,SAAS,yBAAyB;AAAA,MACtC,GAAGL;AAAA,MACH,sBAAsB8U;AAAA,QACpBzU;AAAA,QACA;AAAA,QACA,KAAK,gBAAe;AAAA,QACpB,KAAK,QAAO;AAAA,QACZ,EAAE,cAAc,GAAG,YAAYD,EAAC;AAAA,QAChC,KAAK;AAAA,MACb;AAAA,IACA,IAAQ,EAAE,SAAS,eAAe;AAAA,MAC5B,GAAGJ;AAAA,MACH,YAAYkU;AAAAA,QACV7T;AAAA,QACA;AAAA,QACA,KAAK,QAAO;AAAA,QACZ;AAAA,UACE,UAAU,KAAK,SAAQ;AAAA,UACvB,cAAc;AAAA,UACd,eAAeqB,GAAE,EAAE,aAAa;AAAA,UAChC,WAAW,KAAK,UAAU;AAAA,UAC1B,YAAYtB;AAAA,QACtB;AAAA,QACQ,KAAK;AAAA,MACb;AAAA,IACA,IAAQJ;AAAA,EACN;AAAA;AAAA,EAEA,UAAU;AACR,WAAO,KAAK,QAAQ,OAAO,OAAO,KAAK,GAAG,KAAK,KAAK,QAAQ,GAAG,IAAI,KAAK,GAAG,IAAG;AAAA,EAChF;AAAA;AAAA,EAEA,WAAW;AACT,WAAO,KAAK,QAAQ,YAAY+U,GAAG,KAAK,QAAQ,MAAM,EAAE;AAAA,EAC1D;AAAA;AAAA,EAEA,MAAM,GAAG;AACP,WAAO,IAAI;AAAA,MACT,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,IAAI,GAAG,KAAK,GAAG,WAAW,CAAC,CAAC;AAAA,IAC3E;AAAA,EACE;AAAA;AAAA,EAEA,YAAY,GAAG,IAAI,IAAI;AACrB,UAAM,IAAI,KAAK,YAAW,GAAI1U,IAAI,KAAK,iBAAiB,EAAE,IAAI,GAAG,IAAIA,EAAE,UAAU,MAAMD,IAAI,CAAC,MAAM,IAAI,KAAK,eAAe,GAAG,EAAE,GAAG,GAAG,UAAU,OAAO,GAAGJ,IAAI,EAAE,UAAUL,IAAI,KAAK,MAAM,EAAE,YAAY;AACtM,QAAIU,EAAE;AACJ,aAAO,OAAOA,EAAE,eAAe,aAAaA,EAAE,YAAY,CAAC,IAAID,EAAEC,EAAE,WAAW,EAAE,OAAOV,CAAC;AAC1F,QAAIK,EAAE,MAAO,QAAOI,EAAE,EAAE,MAAM,UAAS,CAAE,EAAE,OAAOT,CAAC;AACnD,QAAIK,EAAE,OAAQ,QAAOI,EAAE,EAAE,OAAO,QAAQ,MAAM,UAAS,CAAE,EAAE,OAAOT,CAAC;AACnE,QAAIK,EAAE,SAAS;AACb,aAAOI,EAAE,EAAE,SAAS,QAAQ,KAAK,WAAW,OAAO,QAAQ,MAAM,UAAS,CAAE,EAAE,OAAOT,CAAC;AACxF,QAAIc,IAAI,EAAE,cAAc,IAAI,KAAK,GAAG,SAAS,EAAE,YAAY,EAAE,MAAM,EAAC,CAAE;AACtE,QAAI,EAAE,QAAQ;AACZ,aAAO,EAAE,SAAS,KAAK,GAAG,UAAUA,CAAC,CAAC,KAAK,KAAK,GAAG,SAASA,GAAG,CAAC;AAC9D,QAAAA,IAAI,KAAK,GAAG,IAAIA,GAAG,EAAE,MAAM,GAAG;AAChC,aAAO,EAAE,SAAS,KAAK,GAAG,UAAU,CAAC,CAAC,KAAK,KAAK,GAAG,SAASA,GAAG,CAAC;AAC9D,YAAI,KAAK,GAAG,SAAS,GAAG,EAAE,MAAM,GAAG;AAAA,IACvC;AACA,WAAOL,EAAE,EAAE,KAAK,WAAW,OAAO,SAAS,MAAM,UAAS,CAAE,EAAE;AAAA,MAC5D,KAAK,MAAMK,CAAC;AAAA,MACZ,KAAK,MAAM,CAAC;AAAA,IAClB;AAAA,EACE;AAAA,EACA,eAAe;AACb,WAAO,KAAK,QAAQ,QAAQ,YAAY;AAAA,MACtC,OAAO,KAAK,aAAY,EAAG;AAAA,MAC3B,MAAM,KAAK,YAAW;AAAA,IAC5B,CAAK,GAAG,KAAK,QAAQ,iBAAiB,MAAM,KAAK,QAAQ,aAAa,KAAK,SAAQ,CAAE,GAAG;AAAA,EACtF;AAAA;AAAA,EAEA,UAAU;AACR,QAAI;AACJ,SAAK,UAAU,MAAM,KAAK,SAAS;AACnC,eAAW,KAAK,KAAK,gBAAiB,GAAC;AACvC,SAAK,gBAAgB,SAAS,IAAI,IAAI,KAAK,kBAAkB,QAAQ,EAAE,KAAK,IAAI,GAAG,KAAK,gBAAgB,MAAM,KAAK,QAAQ,MAAK;AAAA,EAClI;AACF;AC7hFqX,IAAuEP,KAAE;AAAkB,SAASN,EAAEK,GAAEJ,GAAE,GAAEG,GAAEF,GAAEF,GAAE;AAAC,EAAAC,MAAIA,IAAE;AAAI,MAAIO,GAAED,GAAEI,IAAEV;AAAE,MAAG,SAAQU,EAAE,MAAIJ,KAAKI,IAAE,CAAA,GAAGV,EAAE,CAAOM,KAAP,QAASC,IAAEP,EAAEM,CAAC,IAAEI,EAAEJ,CAAC,IAAEN,EAAEM,CAAC;AAAE,MAAI,IAAE,EAAC,MAAKF,GAAE,OAAMM,GAAE,KAAI,GAAE,KAAIH,GAAE,KAAI,MAAK,IAAG,MAAK,KAAI,GAAE,KAAI,MAAK,KAAI,MAAK,aAAY,QAAO,KAAI,EAAEF,IAAE,KAAI,IAAG,KAAI,GAAE,UAASJ,GAAE,QAAOF,EAAC;AAAE,MAAe,OAAOK,KAAnB,eAAuBG,IAAEH,EAAE,cAAc,MAAIE,KAAKC,EAAE,CAASG,EAAEJ,CAAC,MAAZ,WAAgBI,EAAEJ,CAAC,IAAEC,EAAED,CAAC;AAAG,SAAOJ,GAAE,SAAOA,GAAE,MAAM,CAAC,GAAE;AAAC;ACA1wB,IAAIF,IAAEE,IAAEH,IAAEE,IAAEE,KAAE,GAAEE,KAAE,IAAGC,KAAET,IAAEO,KAAEE,GAAE,KAAIC,KAAED,GAAE,KAAIK,KAAEL,GAAE,QAAOR,KAAEQ,GAAE,KAAIU,KAAEV,GAAE,SAAQE,KAAEF,GAAE;AAAG,SAASI,GAAEb,GAAEG,GAAE;AAAC,EAAAM,GAAE,OAAKA,GAAE,IAAIJ,IAAEL,GAAEM,MAAGH,CAAC,GAAEG,KAAE;AAAE,MAAIJ,IAAEG,GAAE,QAAMA,GAAE,MAAI,EAAC,IAAG,CAAA,GAAG,KAAI,CAAA,EAAE;AAAG,SAAOL,KAAGE,EAAE,GAAG,UAAQA,EAAE,GAAG,KAAK,EAAE,GAAEA,EAAE,GAAGF,CAAC;AAAC;AAAC,SAASe,GAAEf,GAAE;AAAC,SAAOM,KAAE,GAAEM,GAAEgB,IAAE5B,CAAC;AAAC;AAAC,SAASY,GAAEZ,GAAEE,GAAEE,GAAE;AAAC,MAAIE,IAAEO,GAAEV,MAAI,CAAC;AAAE,MAAGG,EAAE,IAAEN,GAAE,CAACM,EAAE,QAAMA,EAAE,KAAG,CAAQsB,GAAE,QAAO1B,CAAC,GAAE,SAASF,GAAE;AAAC,QAAIG,IAAEG,EAAE,MAAIA,EAAE,IAAI,CAAC,IAAEA,EAAE,GAAG,CAAC,GAAED,IAAEC,EAAE,EAAEH,GAAEH,CAAC;AAAE,IAAAG,MAAIE,MAAIC,EAAE,MAAI,CAACD,GAAEC,EAAE,GAAG,CAAC,CAAC,GAAEA,EAAE,IAAI,SAAS,EAAE;AAAA,EAAE,CAAC,GAAEA,EAAE,MAAID,IAAE,CAACA,GAAE,MAAK;AAAC,QAAIG,IAAE,SAASR,GAAEG,GAAEE,GAAE;AAAC,UAAG,CAACC,EAAE,IAAI,IAAI;AAAS,UAAIJ,IAAEI,EAAE,IAAI,IAAI,GAAG,OAAO,SAASN,GAAE;AAAC,eAAOA,EAAE;AAAA,MAAG,CAAC;AAAE,UAAGE,EAAE,MAAM,SAASF,GAAE;AAAC,eAAM,CAACA,EAAE;AAAA,MAAG,CAAC,EAAE,QAAM,CAACS,KAAGA,EAAE,KAAK,MAAKT,GAAEG,GAAEE,CAAC;AAAE,UAAID,IAAEE,EAAE,IAAI,UAAQN;AAAE,aAAOE,EAAE,KAAK,SAASF,GAAE;AAAC,YAAGA,EAAE,KAAI;AAAC,cAAIG,IAAEH,EAAE,GAAG,CAAC;AAAE,UAAAA,EAAE,KAAGA,EAAE,KAAIA,EAAE,MAAI,QAAOG,MAAIH,EAAE,GAAG,CAAC,MAAII,IAAE;AAAA,QAAG;AAAA,MAAC,CAAC,GAAEK,KAAGA,EAAE,KAAK,MAAKT,GAAEG,GAAEE,CAAC,KAAGD;AAAA,IAAC;AAAE,IAAAC,GAAE,MAAI;AAAG,QAAII,IAAEJ,GAAE,uBAAsBE,IAAEF,GAAE;AAAoB,IAAAA,GAAE,sBAAoB,SAASL,GAAEG,GAAEE,GAAE;AAAC,UAAG,KAAK,KAAI;AAAC,YAAIH,IAAEO;AAAE,QAAAA,IAAE,QAAOD,EAAER,GAAEG,GAAEE,CAAC,GAAEI,IAAEP;AAAA,MAAC;AAAC,MAAAK,KAAGA,EAAE,KAAK,MAAKP,GAAEG,GAAEE,CAAC;AAAA,IAAC,GAAEA,GAAE,wBAAsBG;AAAA,EAAC;AAAC,SAAOF,EAAE,OAAKA,EAAE;AAAE;AAAC,SAAS2B,GAAEjC,GAAEE,GAAE;AAAC,MAAIE,IAAES,GAAEV,MAAI,CAAC;AAAE,GAACM,GAAE,OAAKe,GAAEpB,EAAE,KAAIF,CAAC,MAAIE,EAAE,KAAGJ,GAAEI,EAAE,IAAEF,GAAEG,GAAE,IAAI,IAAI,KAAKD,CAAC;AAAE;AAAC,SAASa,GAAEjB,GAAEE,GAAE;AAAC,MAAIE,IAAES,GAAEV,MAAI,CAAC;AAAE,GAACM,GAAE,OAAKe,GAAEpB,EAAE,KAAIF,CAAC,MAAIE,EAAE,KAAGJ,GAAEI,EAAE,IAAEF,GAAEG,GAAE,IAAI,KAAKD,CAAC;AAAE;AAAC,SAAS0B,GAAE9B,GAAE;AAAC,SAAOM,KAAE,GAAE4B,GAAE,WAAU;AAAC,WAAM,EAAC,SAAQlC,EAAC;AAAA,EAAC,GAAE,CAAA,CAAE;AAAC;AAAsN,SAASkC,GAAElC,GAAEK,GAAE;AAAC,MAAIH,IAAEW,GAAEV,MAAI,CAAC;AAAE,SAAOqB,GAAEtB,EAAE,KAAIG,CAAC,MAAIH,EAAE,KAAGF,EAAC,GAAGE,EAAE,MAAIG,GAAEH,EAAE,MAAIF,IAAGE,EAAE;AAAE;AAAqiB,SAASkC,KAAG;AAAC,WAAQpC,GAAEA,IAAEQ,GAAE,MAAK,KAAI;AAAC,QAAIL,IAAEH,EAAE;AAAI,QAAGA,EAAE,OAAKG,EAAE,KAAG;AAAC,MAAAA,EAAE,IAAI,KAAKoC,EAAC,GAAEpC,EAAE,IAAI,KAAK0C,EAAC,GAAE1C,EAAE,MAAI,CAAA;AAAA,IAAE,SAAOE,GAAE;AAAC,MAAAF,EAAE,MAAI,CAAA,GAAGM,GAAE,IAAIJ,GAAEL,EAAE,GAAG;AAAA,IAAC;AAAA,EAAC;AAAC;AAACS,GAAE,MAAI,SAAST,GAAE;AAAC,EAAAK,KAAE,MAAKE,MAAGA,GAAEP,CAAC;AAAC,GAAES,GAAE,KAAG,SAAST,GAAEG,GAAE;AAAC,EAAAH,KAAGG,EAAE,OAAKA,EAAE,IAAI,QAAMH,EAAE,MAAIG,EAAE,IAAI,MAAKQ,MAAGA,GAAEX,GAAEG,CAAC;AAAC,GAAEM,GAAE,MAAI,SAAST,GAAE;AAAC,EAAAU,MAAGA,GAAEV,CAAC,GAAEG,KAAE;AAAE,MAAIC,KAAGC,KAAEL,EAAE,KAAK;AAAI,EAAAI,MAAIF,OAAIG,MAAGD,EAAE,MAAI,CAAA,GAAGC,GAAE,MAAI,CAAA,GAAGD,EAAE,GAAG,KAAK,SAAS,GAAE;AAAC,MAAE,QAAM,EAAE,KAAG,EAAE,MAAK,EAAE,IAAE,EAAE,MAAI;AAAA,EAAM,CAAC,MAAIA,EAAE,IAAI,KAAKmC,EAAC,GAAEnC,EAAE,IAAI,KAAKyC,EAAC,GAAEzC,EAAE,MAAI,CAAA,GAAGD,KAAE,KAAID,KAAEG;AAAC,GAAEI,GAAE,SAAO,SAAST,GAAE;AAAC,EAAAc,MAAGA,GAAEd,CAAC;AAAE,MAAIG,IAAEH,EAAE;AAAI,EAAAG,KAAGA,EAAE,QAAMA,EAAE,IAAI,IAAI,WAAaK,GAAE,KAAKL,CAAC,MAAZ,KAAeC,OAAIK,GAAE,2BAAyBL,KAAEK,GAAE,0BAAwBO,IAAGoB,EAAC,IAAGjC,EAAE,IAAI,GAAG,KAAK,SAAS,GAAE;AAAC,MAAE,MAAI,EAAE,MAAI,EAAE,IAAG,EAAE,IAAE;AAAA,EAAM,CAAC,IAAGD,KAAEG,KAAE;AAAI,GAAEI,GAAE,MAAI,SAAST,GAAEG,GAAE;AAAC,EAAAA,EAAE,KAAK,SAAS,GAAE;AAAC,QAAG;AAAC,QAAE,IAAI,KAAKoC,EAAC,GAAE,EAAE,MAAI,EAAE,IAAI,OAAO,SAASvC,GAAE;AAAC,eAAM,CAACA,EAAE,MAAI6C,GAAE7C,CAAC;AAAA,MAAC,CAAC;AAAA,IAAC,SAAO,GAAE;AAAC,MAAAG,EAAE,KAAK,SAASH,GAAE;AAAC,QAAAA,EAAE,QAAMA,EAAE,MAAI,CAAA;AAAA,MAAG,CAAC,GAAEG,IAAE,IAAGM,GAAE,IAAI,GAAE,EAAE,GAAG;AAAA,IAAC;AAAA,EAAC,CAAC,GAAER,MAAGA,GAAED,GAAEG,CAAC;AAAC,GAAEM,GAAE,UAAQ,SAAST,GAAE;AAAC,EAAAmB,MAAGA,GAAEnB,CAAC;AAAE,MAAIG,GAAEE,IAAEL,EAAE;AAAI,EAAAK,KAAGA,EAAE,QAAMA,EAAE,IAAI,GAAG,KAAK,SAASL,GAAE;AAAC,QAAG;AAACuC,MAAAA,GAAEvC,CAAC;AAAA,IAAC,SAAOA,GAAE;AAAC,MAAAG,IAAEH;AAAA,IAAC;AAAA,EAAC,CAAC,GAAEK,EAAE,MAAI,QAAOF,KAAGM,GAAE,IAAIN,GAAEE,EAAE,GAAG;AAAE;AAAE,IAAIgB,KAAc,OAAO,yBAAnB;AAAyC,SAASL,GAAEhB,GAAE;AAAC,MAAIG,GAAEE,IAAE,WAAU;AAAC,iBAAaH,CAAC,GAAEmB,MAAG,qBAAqBlB,CAAC,GAAE,WAAWH,CAAC;AAAA,EAAC,GAAEE,IAAE,WAAWG,GAAE,EAAE;AAAE,EAAAgB,OAAIlB,IAAE,sBAAsBE,CAAC;AAAE;AAAC,SAASkC,GAAEvC,GAAE;AAAC,MAAIG,IAAEE,IAAEH,IAAEF,EAAE;AAAI,EAAY,OAAOE,KAAnB,eAAuBF,EAAE,MAAI,QAAOE,EAAC,IAAIG,KAAEF;AAAC;AAAC,SAAS0C,GAAE7C,GAAE;AAAC,MAAIG,IAAEE;AAAE,EAAAL,EAAE,MAAIA,EAAE,MAAKK,KAAEF;AAAC;AAAC,SAASqB,GAAExB,GAAEG,GAAE;AAAC,SAAM,CAACH,KAAGA,EAAE,WAASG,EAAE,UAAQA,EAAE,KAAK,SAASA,GAAE,GAAE;AAAC,WAAOA,MAAIH,EAAE,CAAC;AAAA,EAAC,CAAC;AAAC;AAAC,SAAS4B,GAAE5B,GAAEG,GAAE;AAAC,SAAkB,OAAOA,KAAnB,aAAqBA,EAAEH,CAAC,IAAEG;AAAC;ACAljG,IAACF,IAAIW,IAAEC,KAAe,OAAO,SAApB,OAA4B,CAAC,CAAC,OAAO,6BAAiCI,KAAE,CAAA;AAAGf,GAAE,WAAU;AAAC,EAAAD,KAAE,KAAK;AAAC,CAAC,EAAC;AAAG,SAASiB,GAAEd,GAAEC,GAAE;AAACL,EAAAA,GAAEI,CAAC,IAAEC,EAAE,KAAK,MAAKL,GAAEI,CAAC,KAAG,WAAU;AAAA,EAAC,CAAC;AAAC;AAAC,SAASgB,GAAEhB,GAAE;AAAC,MAAGQ,IAAE;AAAC,QAAIZ,IAAEY;AAAE,IAAAA,KAAE,QAAOZ,EAAC;AAAA,EAAE;AAAC,EAAAY,KAAER,KAAGA,EAAE,EAAC;AAAE;AAAC,SAAS6B,GAAE7B,GAAE;AAAC,MAAIJ,IAAE,MAAKG,IAAEC,EAAE,MAAKI,IAAE8lB,GAAUnmB,CAAC;AAAE,EAAAK,EAAE,QAAML;AAAE,MAAII,IAAED,GAAE,WAAU;AAAiB,aAAZF,IAAEJ,GAAEG,IAAEH,EAAE,KAAUG,IAAEA,EAAE,KAAG,KAAGA,EAAE,KAAI;AAAC,MAAAA,EAAE,IAAI,QAAM;AAAE;AAAA,IAAK;AAAC,QAAIG,IAAEG,GAAE,WAAU;AAAC,UAAIL,IAAEI,EAAE,MAAM;AAAM,aAAWJ,MAAJ,IAAM,IAAOA,MAAL,KAAO,KAAGA,KAAG;AAAA,IAAE,CAAC,GAAEG,IAAEE,GAAE,WAAU;AAAC,aAAM,CAAC,MAAM,QAAQH,EAAE,KAAK,KAAG,CAACD,GAAEC,EAAE,KAAK;AAAA,IAAC,CAAC,GAAEI,IAAER,GAAE,WAAU;AAAU,UAAT,KAAK,IAAEgQ,IAAK3P,EAAE,OAAM;AAAC,YAAIP,IAAEM,EAAE;AAAM,QAAGF,EAAE,OAAKA,EAAE,IAAI,OAASA,EAAE,IAAI,IAAI,aAAd,MAAuBA,EAAE,IAAI,IAAI,OAAKJ;AAAA,MAAC;AAAA,IAAC,CAAC,GAAE,IAAEA,EAAE,KAAK;AAAE,WAAAA,EAAE,KAAK,IAAE,WAAU;AAAC,MAAAU,EAAC,GAAG,EAAE,KAAK,IAAI;AAAA,IAAC,GAAQ,CAACH,GAAED,CAAC;AAAA,EAAC,GAAE,CAAA,CAAE,GAAEI,IAAEH,EAAE,CAAC,GAAEO,IAAEP,EAAE,CAAC;AAAE,SAAOG,EAAE,QAAMI,EAAE,KAAI,IAAGA,EAAE;AAAK;AAACmB,GAAE,cAAY;AAAmB,OAAO,iBAAiBvB,GAAE,WAAU,EAAC,aAAY,EAAC,cAAa,IAAG,OAAM,OAAM,GAAE,MAAK,EAAC,cAAa,IAAG,OAAMuB,GAAC,GAAE,OAAM,EAAC,cAAa,IAAG,KAAI,WAAU;AAAC,MAAI7B,IAAE;AAAK,SAAM,EAAC,MAAK,EAAC,IAAI,QAAO;AAAC,WAAOA,EAAE;AAAA,EAAK,EAAC,EAAC;AAAC,EAAC,GAAE,KAAI,EAAC,cAAa,IAAG,OAAM,EAAC,EAAC,CAAC;AAAEc,GAAE,OAAM,SAASd,GAAEJ,GAAE;AAAC,MAAa,OAAOA,EAAE,QAAnB,UAAwB;AAAC,QAAIK,GAAEF,IAAEH,EAAE;AAAM,aAAQM,KAAKH,EAAE,KAAgBG,MAAb,YAAe;AAAC,UAAIE,IAAEL,EAAEG,CAAC;AAAE,MAAGE,aAAaE,OAAOL,MAAEL,EAAE,OAAKK,IAAE,KAAGA,EAAEC,CAAC,IAAEE,GAAEL,EAAEG,CAAC,IAAEE,EAAE;IAAO;AAAA,EAAC;AAAC,EAAAJ,EAAEJ,CAAC;AAAC,CAAC;AAAEkB,GAAE,OAAM,SAASd,GAAEJ,GAAE;AAAM,MAALI,EAAEJ,CAAC,GAAKA,EAAE,SAAOG,IAAE;AAACiB,IAAAA,GAAC;AAAG,QAAIf,GAAEC,IAAEN,EAAE;AAAI,IAAGM,MAAGA,EAAE,QAAM,KAAgBD,IAAEC,EAAE,UAAd,WAAoBA,EAAE,OAAKD,KAAE,SAASD,GAAEJ,GAAE;AAAC,UAAIK;AAAEH,aAAAA,GAAE,WAAU;AAAC,QAAAG,IAAE;AAAA,MAAI,GAAE,EAAC,MAAKL,EAAC,CAAC,GAAEK,EAAE,IAAED,GAASC;AAAA,IAAC,GAAE,WAAU;AAAC,UAAID;AAAE,MAAGS,QAAST,IAAEC,EAAE,MAAX,QAAeD,EAAE,KAAKC,CAAC,IAAEC,EAAE,QAAM,GAAEA,EAAE,SAAS,EAAE;AAAA,IAAC,GAAc,OAAON,EAAE,QAArB,aAA0BA,EAAE,KAAK,eAAaA,EAAE,KAAK,OAAK,EAAE,KAAMoB,GAAEf,CAAC;AAAA,EAAC;AAAC,CAAC;AAAEa,GAAE,OAAM,SAASd,GAAEJ,GAAEK,GAAEF,GAAE;AAACiB,EAAAA,GAAC,GAAYhB,EAAEJ,GAAEK,GAAEF,CAAC;AAAC,CAAC;AAAEe,GAAE,UAAS,SAASd,GAAEJ,GAAE;AAACoB,EAAAA,GAAC;AAAY,MAAIf;AAAE,MAAa,OAAOL,EAAE,QAAnB,aAA0BK,IAAEL,EAAE,MAAK;AAAC,QAAIG,IAAEH,EAAE,MAAKM,IAAEN,EAAE;AAAM,QAAGG,GAAE;AAAC,UAAIK,IAAEH,EAAE;AAAE,UAAGG,EAAE,UAAQD,KAAKC,GAAE;AAAC,YAAIN,IAAEM,EAAED,CAAC;AAAE,QAAYL,MAAT,UAAY,EAAEK,KAAKJ,OAAID,EAAE,KAAIM,EAAED,CAAC,IAAE;AAAA,MAAO;AAAA;AAAM,QAAAC,IAAE,CAAA,GAAGH,EAAE,IAAEG;AAAE,eAAQE,KAAKP,GAAE;AAAC,YAAIM,IAAED,EAAEE,CAAC,GAAEI,IAAEX,EAAEO,CAAC;AAAE,QAAYD,MAAT,UAAYA,IAAEO,GAAEX,GAAEK,GAAEI,GAAER,CAAC,GAAEE,EAAEE,CAAC,IAAED,KAAOA,EAAE,EAAEK,GAAER,CAAC;AAAA,MAAC;AAAA,IAAC;AAAA,EAAC;AAAC,EAAAF,EAAEJ,CAAC;AAAC,CAAC;AAAE,SAASgB,GAAEZ,GAAEJ,GAAEK,GAAEF,GAAE;AAAC,MAAIG,IAAEN,KAAKI,KAAYA,EAAE,oBAAX,QAA2BI,IAAEM,GAAET,CAAC;AAAE,SAAM,EAAC,GAAE,SAASD,GAAEJ,GAAE;AAAC,IAAAQ,EAAE,QAAMJ,GAAED,IAAEH;AAAA,EAAC,GAAE,GAAEE,GAAE,WAAU;AAAC,SAAK,IAAEgQ;AAAE,QAAI7P,IAAEG,EAAE,MAAM;AAAM,IAAGL,EAAEH,CAAC,MAAIK,MAAGF,EAAEH,CAAC,IAAEK,GAAKC,IAAEF,EAAEJ,CAAC,IAAEK,IAAgBA,KAAN,SAAeA,MAAL,MAAcL,EAAE,CAAC,MAAT,OAAYI,EAAE,aAAaJ,GAAEK,CAAC,IAAOD,EAAE,gBAAgBJ,CAAC;AAAA,EAAE,CAAC,EAAC;AAAC;AAACkB,GAAE,WAAU,SAASd,GAAEJ,GAAE;AAAC,MAAa,OAAOA,EAAE,QAAnB,UAAwB;AAAC,QAAIK,IAAEL,EAAE;AAAI,QAAGK,GAAE;AAAC,UAAIF,IAAEE,EAAE;AAAE,UAAGF,GAAE;AAAC,QAAAE,EAAE,IAAE;AAAO,iBAAQC,KAAKH,GAAE;AAAC,cAAIK,IAAEL,EAAEG,CAAC;AAAE,UAAGE,KAAEA,EAAE,EAAC;AAAA,QAAE;AAAA,MAAC;AAAA,IAAC;AAAC,QAAID,IAAEP,EAAE;AAAK,QAAGO,GAAE;AAAC,UAAIL,IAAEF,EAAE;AAAM,eAAQU,KAAKH,EAAE,CAAAL,EAAEQ,CAAC,IAAEH,EAAEG,CAAC;AAAA,IAAC;AAAC,IAAAV,EAAE,OAAK;AAAA,EAAM,OAAK;AAAC,QAAIS,IAAET,EAAE;AAAI,QAAGS,GAAE;AAAC,UAAIK,IAAEL,EAAE;AAAK,MAAGK,MAAGL,EAAE,OAAK,QAAOK,EAAE,EAAC;AAAA,IAAG;AAAA,EAAC;AAAC,EAAAV,EAAEJ,CAAC;AAAC,CAAC;AAAEkB,GAAE,OAAM,SAASd,GAAEJ,GAAEK,GAAEF,GAAE;AAAC,GAAGA,IAAE,KAAOA,MAAJ,OAAMH,EAAE,QAAM,IAAEI,EAAEJ,GAAEK,GAAEF,CAAC;AAAC,CAAC;AAAEC,GAAE,UAAU,wBAAsB,SAASA,GAAEJ,GAAE;AAAC,MAAG,KAAK,IAAI;AAAS,MAAIK,IAAE,KAAK,MAAKF,IAAEE,KAAYA,EAAE,MAAX;AAAa,WAAQC,KAAKN,EAAE;AAAS,MAAG,KAAK,OAAgB,OAAO,KAAK,KAAvB,aAA+B,KAAK,MAAV,IAAY;AAAC,QAAIQ,IAAE,IAAE,KAAK;AAAsC,QAA9B,EAAEL,KAAGK,KAAG,IAAE,KAAK,SAAkB,IAAE,KAAK,KAAK,QAAM;AAAA,EAAE,WAAS,EAAEL,KAAG,IAAE,KAAK,SAAkB,IAAE,KAAK,KAAK;AAAS,WAAQI,KAAKH,EAAE,KAAgBG,MAAb,cAAgBH,EAAEG,CAAC,MAAI,KAAK,MAAMA,CAAC,EAAE;AAAS,WAAQL,KAAK,KAAK,MAAM,KAAG,EAAEA,KAAKE,GAAG;AAAS;AAAQ;AAAE,SAASkmB,GAAUlmB,GAAEJ,GAAE;AAAC,SAAOM,GAAE,WAAU;AAAC,WAAOQ,GAAEV,GAAEJ,CAAC;AAAA,EAAC,GAAE,CAAA,CAAE;AAAC;AAAmI,IAAiL2B,KAAE,SAASvB,GAAE;AAAC,iBAAe,WAAU;AAAC,mBAAeA,CAAC;AAAA,EAAC,CAAC;AAAC;AAAiI,SAASkB,KAAG;AAACX,EAAAA,GAAE,WAAU;AAAO,aAAFP,GAAQA,IAAEa,GAAE,MAAK,IAAG,CAAAhB,GAAE,KAAKG,CAAC;AAAA,EAAC,CAAC;AAAC;AAAC,SAAS8P,KAAG;AAAC,EAAOjP,GAAE,KAAK,IAAI,MAAf,MAAkBjB,GAAE,yBAAuB2B,IAAGL,EAAC;AAAC;ACMz0H,SAASuP,GAAGxQ,GAAG;AACb,SAAO,EAAE,WAAW,IAAI,MAAMA,EAAC;AACjC;AACA,SAASmV,GAAGnV,GAAG;AACb,SAAO,OAAOA,KAAK,YAAYA,MAAM,QAAQA,EAAE,cAAc;AAC/D;AACA,SAAS2B,GAAE3B,GAAGF,GAAGI,GAAGP,GAAG;AACrB,MAAI,CAACK,EAAG,QAAOE;AACf,QAAMD,IAAID,EAAEF,CAAC;AACb,SAAOG,MAAM,SAASC,IAAIiV,GAAGlV,CAAC,IAAIN,IAAoBe,gBAAAA,EAAEyV,IAAI,EAAE,QAAQxW,GAAG,MAAMM,EAAE,KAAI,CAAE,IAAIC,IAAID;AACjG;AACA,IAAI+U,KAAK;AACT,SAASmB,GAAG,EAAE,QAAQnW,GAAG,MAAMF,EAAC,GAAI;AAClC,QAAMI,IAAIkB,GAAE,EAAE;AACd,EAAAlB,EAAE,YAAYA,EAAE,UAAU,YAAY,EAAE8U,EAAE;AAC1C,QAAMrV,IAAIyB,GAAE,IAAI,GAAGnB,IAAImB,GAAEtB,CAAC;AAC1B,EAAAG,EAAE,UAAUH;AACZ,QAAMO,IAAIe,GAAE,EAAE;AACd,SAAO0S,GAAG,MAAM;AACd,UAAMvT,IAAIZ,EAAE;AACZ,QAAI,CAACY,EAAG;AACR,UAAMV,IAAIK,EAAE;AACZ,WAAOG,EAAE,UAAU,IAAIL,EAAE,MAAMH,GAAGU,GAAGN,EAAE,OAAO,GAAG,MAAM;AACrD,MAAAI,EAAE,UAAU,IAAIL,EAAE,QAAQH,CAAC;AAAA,IAC7B;AAAA,EACF,GAAG,CAAA,CAAE,GAAGiU,GAAG,MAAM;AACf,IAAAzT,EAAE,WAAWL,EAAE,OAAOE,EAAE,SAASJ,CAAC;AAAA,EACpC,CAAC,GAAmBY,gBAAAA,EAAE,OAAO,EAAE,YAAY,QAAQ,KAAKf,GAAG;AAC7D;AACA,SAASkQ,MAAK7P,GAAG;AACf,SAAOA,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AACnC;AACA,MAAM8E,KAAqB,oBAAI,QAAO;AACtC,SAASrD,GAAEzB,GAAGF,GAAGI,GAAG;AAClB,MAAI,CAACF,KAAK,CAACF,EAAG;AACd,QAAMH,IAAIK;AACV,EAAA8E,GAAG,IAAInF,CAAC,MAAMmF,GAAG,IAAInF,CAAC,GAAGG,EAAE,OAAO,OAAOI,EAAC,GAAI,EAAE,IAAIP,EAAC,CAAE,CAAC;AAC1D;AACA,SAAS8V,GAAGzV,GAAGF,GAAG;AAChB,MAAI,CAACE,EAAE,OAAQ,QAAO;AACtB,QAAME,IAAI,CAAC,GAAGF,CAAC,EAAE,KAAK,CAACC,GAAGI,MAAMJ,EAAE,aAAaI,EAAE,UAAU;AAC3D,MAAIV,IAAIO,EAAE,CAAC,EAAE;AACb,aAAWD,KAAKC;AACd,IAAAJ,KAAKG,EAAE,eAAeN,IAAIM,EAAE;AAC9B,SAAON;AACT;AACA,MAAM8C,KAAI,EAAE,MAAM,KAAK,MAAM,IAAG,GAAI6T,KAAqB,oBAAI,IAAI,CAAC,IAAI,SAAS,SAAS,QAAQ,MAAM,CAAC,GAAGd,KAAK,eAAehT,KAAI,CAACxC,MAAM,OAAOA,CAAC,EAAE,SAAS,GAAG,GAAG;AAClK,SAASoW,KAAK;AACZ,SAAuBvV,gBAAAA;AAAAA,IACrB;AAAA,IACA;AAAA,MACE,YAAY;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,SAAS;AAAA,MACT,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,gBAAgB;AAAA,MAChB,kBAAkB;AAAA,MAClB,mBAAmB;AAAA,MACnB,eAAe;AAAA,MACf,UAAU;AAAA,QACQH,gBAAAA,EAAE,QAAQ,EAAE,GAAG,KAAK,GAAG,OAAO,OAAO,MAAM,QAAQ,QAAQ,IAAI,MAAK,CAAE;AAAA,QACtEA,gBAAAA,EAAE,QAAQ,EAAE,IAAI,KAAK,IAAI,OAAO,IAAI,MAAM,IAAI,MAAK,CAAE;AAAA,QACrDA,gBAAAA,EAAE,QAAQ,EAAE,IAAI,OAAO,IAAI,KAAK,IAAI,OAAO,IAAI,MAAK,CAAE;AAAA,QACtDA,gBAAAA,EAAE,QAAQ,EAAE,IAAI,OAAO,IAAI,KAAK,IAAI,OAAO,IAAI,MAAK,CAAE;AAAA,MAC9E;AAAA,IACA;AAAA,EACA;AACA;AACA,SAASgW,GAAG1W,GAAG;AACb,MAAI;AACJ,OAAK,IAAIA,EAAE,UAAU,QAAQ,EAAE,OAAQ,QAAOA,EAAE;AAChD,QAAMF,IAAIE,EAAE;AACZ,SAAOF,IAAI,CAACA,EAAE,OAAOA,EAAE,QAAQA,EAAE,GAAG,EAAE,OAAO,CAACH,MAAM,CAAC,CAACA,CAAC,EAAE,QAAQ,CAACA,MAAMA,EAAE,MAAM,KAAK,CAAC,EAAE,QAAQ,CAACA,MAAMA,EAAE,MAAM,GAAG,CAAC,EAAE,OAAO,CAACA,MAAM,CAAC2W,GAAG,IAAI3W,CAAC,CAAC,IAAI,CAAA;AACnJ;AACA,SAASiW,GAAG,EAAE,KAAK5V,GAAG,OAAOF,GAAG,YAAYI,GAAG,SAASP,KAAK;AAC3D,MAAIyC,GAAGwN,GAAGF,GAAGiE,GAAIH;AACjB,QAAMvT,IAAIyC,GAAE/C,EAAE,MAAM,GAAGU,KAAKuP,KAAKxN,IAAIzC,EAAE,UAAU,OAAO,SAASyC,EAAE,iBAAiB,OAAO,SAASwN,EAAE,KAAKxN,CAAC,GAAG,KAAKuR,KAAMjE,IAAI/P,EAAE,UAAU,OAAO,SAAS+P,EAAE,eAAe,OAAO,SAASiE,EAAG,KAAKjE,CAAC,GAAG7P,IAAI6W,GAAG/W,CAAC,GAAGc,IAAI+U,GAAG,KAAKtV,CAAC,GAAGE,IAAIT,EAAE,YAAYM,EAAE,UAAUL,IAAIwB,GAAE,IAAI,GAAG,CAACjB,GAAGY,CAAC,IAAIoB,GAAE,EAAE,GAAGnB,IAAIV,EAAE,OAAON,EAAE,QAAO,CAAE,GAAGW,IAAIL,EAAE,OAAOX,EAAE,MAAMW,EAAE,KAAKX,EAAE,GAAG,IAAIW,EAAE,IAAG,CAAE,GAAG,CAACE,GAAGM,CAAC,IAAIqB,GAAEnB,EAAE,YAAW,CAAE,GAAG,CAACE,GAAGnB,EAAC,IAAIoC,GAAEnB,EAAE,SAAQ,CAAE,GAAGO,IAAI,IAAI,KAAK,eAAe5B,EAAE,QAAQ,EAAE,OAAO,QAAO,CAAE,GAAGwB,IAAI,IAAI,KAAK,eAAexB,EAAE,QAAQ,EAAE,OAAO,OAAM,CAAE,GAAG0C,IAAI,IAAI,KAAK,eAAe1C,EAAE,QAAQ,EAAE,SAAS,QAAO,CAAE,GAAG4C,IAAI,MAAM;AAAA,IACxlB,EAAE,QAAQ,GAAE;AAAA,IACZ,CAAC,GAAGV,MAAMN,EAAE,OAAO,IAAI,KAAK,MAAMM,GAAG,CAAC,CAAC;AAAA,EAC3C,GAAKZ,IAAI,MAAM;AACX,UAAM,IAAIX,EAAE,OAAON,EAAE,QAAO,CAAE;AAC9B,IAAAc,EAAE,EAAE,YAAW,CAAE,GAAGf,GAAE,EAAE,SAAQ,CAAE,GAAGgB,EAAE,EAAE;AAAA,EAC3C,GAAGM,IAAI,CAAC,MAAM;AACZ,UAAMQ,IAAIrB,IAAI,KAAKU,IAAI;AACvB,IAAAJ,EAAE,KAAK,MAAMe,IAAI,EAAE,CAAC,GAAG9B,IAAG8B,IAAI,KAAK,MAAM,EAAE;AAAA,EAC7C,GAAGL,IAAI,CAAC,MAAM;AACZ,IAAAxB,EAAE,SAAS,CAAC,GAAGe,EAAE,EAAE;AAAA,EACrB;AACAW,EAAAA,GAAE,MAAM;AACN,UAAM,IAAI,CAACM,MAAM;AACf,OAACA,EAAE,WAAWA,EAAE,aAAaA,EAAE,QAAQ,OAAOA,EAAE,QAAQ,QAAQA,EAAE,eAAc,GAAIf,EAAC,KAAMe,EAAE,QAAQ,YAAYjB,EAAE,EAAE;AAAA,IACvH,GAAGc,IAAI,CAACG,MAAM;AACZ,MAAApC,EAAE,WAAW,CAACA,EAAE,QAAQ,SAASoC,EAAE,MAAM,KAAKjB,EAAE,EAAE;AAAA,IACpD;AACA,WAAO,SAAS,iBAAiB,WAAW,CAAC,GAAG,SAAS,iBAAiB,aAAac,CAAC,GAAG,MAAM;AAC/F,eAAS,oBAAoB,WAAW,CAAC,GAAG,SAAS,oBAAoB,aAAaA,CAAC;AAAA,IACzF;AAAA,EACF,GAAG,CAAA,CAAE;AACL,QAAMS,MAAK,MAAM;AACf,QAAI7B,EAAG,QAAO,EAAE,OAAO,CAAA,GAAI,MAAM,CAAA,EAAE;AACnC,UAAM,IAAIH,EAAE,KAAK,GAAGE,CAAC,IAAIgC,GAAEtB,IAAI,CAAC,CAAC,KAAK,GAAGW,KAAKvB,EAAE,UAAU,CAAC,IAAIF,IAAI,KAAK,GAAG4B,IAAI1B,EAAE,SAAS,GAAG,EAAE,MAAMuB,EAAC,CAAE,GAAGgS,IAAK,MAAM,KAAK,EAAE,QAAQ,GAAE,GAAI,CAACD,GAAIY,MAAOlU,EAAE,OAAOA,EAAE,IAAI0B,GAAG,EAAE,MAAMwS,EAAE,CAAE,CAAC,CAAC,GAAGC,IAAKZ,EAAG,MAAM,GAAG,CAAC,EAAE,IAAI,CAACD,MAAOvR,EAAE,OAAOuR,CAAE,CAAC;AACtO,WAAO,EAAE,OAAOC,GAAI,MAAMY,EAAE;AAAA,EAC9B,GAAC;AACD,SAAuB5T,gBAAAA,EAAE,OAAO,EAAE,YAAY,gBAAgB,OAAOgP,IAAG2D,IAAK7T,EAAE,eAAe,OAAO,SAAS6T,EAAG,OAAO,GAAG,KAAK5T,GAAG,UAAU;AAAA,IAC3HiB,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,UAAU;AAAA,MAC1CH,gBAAAA,EAAE,OAAO,EAAE,YAAY,mBAAmB,iBAAiB,SAAS,UAAUL,GAAG;AAAA,MACjFQ,gBAAAA,EAAE,OAAO,EAAE,YAAY,mBAAmB,iBAAiB,OAAO,UAAU;AAAA,QAC1EH,gBAAAA;AAAAA,UACd;AAAA,UACA;AAAA,YACE,MAAM;AAAA,YACN,YAAY;AAAA,YACZ,OAAOT,EAAE;AAAA,YACT,cAAcA,EAAE;AAAA,YAChB,SAAS,MAAMD,EAAE,MAAK;AAAA,YACtB,UAAUC,EAAE;AAAA,UACxB;AAAA,QACA;AAAA,QACwBS,gBAAAA;AAAAA,UACd;AAAA,UACA;AAAA,YACE,MAAM;AAAA,YACN,YAAY;AAAA,YACZ,gBAAgB;AAAA,YAChB,OAAOT,EAAE;AAAA,YACT,cAAcA,EAAE;AAAA,YAChB,SAAS,MAAMD,EAAE,KAAI;AAAA,YACrB,UAAUyC,GAAE;AAAA,UACxB;AAAA,QACA;AAAA,QACwB5B,gBAAAA,EAAE,OAAO,EAAE,YAAY,qBAAqB,UAAU;AAAA,UACpDA,gBAAAA;AAAAA,YACd;AAAA,YACA;AAAA,cACE,MAAM;AAAA,cACN,YAAY;AAAA,cACZ,iBAAiB;AAAA,cACjB,iBAAiBV;AAAA,cACjB,OAAO,GAAGL,CAAC;AAAA,cACX,SAAS,MAAMK,IAAIY,EAAE,EAAE,IAAIE,EAAC;AAAA,cAC5B,UAAU;AAAA,gBACQP,gBAAAA,EAAE0V,IAAI,EAAE;AAAA,gBACxBtW;AAAA,cAChB;AAAA,YACA;AAAA,UACA;AAAA,UACUK,KAAqBU,gBAAAA;AAAAA,YACnB;AAAA,YACA;AAAA,cACE,YAAY;AAAA,cACZ,iBAAiBJ,IAAI,UAAU;AAAA,cAC/B,MAAM;AAAA,cACN,cAAcX;AAAA,cACd,UAAU;AAAA,gBACQe,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,UAAU;AAAA,kBAC1CH,gBAAAA;AAAAA,oBACd;AAAA,oBACA;AAAA,sBACE,MAAM;AAAA,sBACN,YAAY;AAAA,sBACZ,cAAcT,EAAE;AAAA,sBAChB,SAAS,MAAMQ,IAAIK,EAAE,CAAC,MAAM,IAAI,CAAC,IAAIO,EAAE,EAAE;AAAA,sBACzC,UAAUoB,GAAE;AAAA,oBAClC;AAAA,kBACA;AAAA,kBACkC/B,gBAAAA,EAAE,QAAQ,EAAE,YAAY,YAAY,UAAUD,IAAID,IAAI,GAAGW,EAAE,OAAO,IAAI,KAAKX,GAAGU,GAAG,CAAC,CAAC,CAAC,IAAIV,CAAC,IAAI;AAAA,kBAC7FE,gBAAAA;AAAAA,oBACd;AAAA,oBACA;AAAA,sBACE,MAAM;AAAA,sBACN,YAAY;AAAA,sBACZ,cAAcT,EAAE;AAAA,sBAChB,SAAS,MAAMQ,IAAIK,EAAE,CAAC,MAAM,IAAI,CAAC,IAAIO,EAAE,CAAC;AAAA,sBACxC,UAAUoB,GAAE;AAAA,oBAClC;AAAA,kBACA;AAAA,gBACA,GAAmB;AAAA,gBACHhC,IAAoBC,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,UAAU6B,EAAE,IAAI,CAAC,GAAGV,MAAsBnB,gBAAAA;AAAAA,kBAC9F;AAAA,kBACA;AAAA,oBACE,MAAM;AAAA,oBACN,YAAY;AAAA,oBACZ,eAAe;AAAA,sBACbF,MAAMQ,EAAE,YAAW,KAAMa,MAAMb,EAAE,SAAQ;AAAA,oBAC/D;AAAA,oBACoB,cAAc;AAAA,sBACZR,MAAMG,EAAE,YAAW,KAAMkB,MAAMlB,EAAE,SAAQ;AAAA,oBAC/D;AAAA,oBACoB,SAAS,MAAMa,EAAE,GAAGhB,CAAC,IAAIgC,GAAEX,IAAI,CAAC,CAAC,KAAK;AAAA,oBACtC,UAAU;AAAA,kBAC9B;AAAA,kBACkB;AAAA,gBAClB,CAAiB,EAAC,CAAE,IAAoBhB,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,UAAU;AAAA,kBAClEyB,GAAE,KAAK,IAAI,CAAC,GAAGT,MAAsBnB,gBAAAA,EAAE,OAAO,EAAE,YAAY,UAAU,UAAU,EAAC,GAAI,OAAOmB,CAAC,EAAE,CAAC;AAAA,kBAChGS,GAAE,MAAM,IAAI,CAAC,MAAM;AACjB,0BAAMT,IAAI,GAAG,EAAE,YAAW,CAAE,IAAIW,GAAE,EAAE,SAAQ,IAAK,CAAC,CAAC,IAAIA,GAAE,EAAE,QAAO,CAAE,CAAC;AACrE,2BAAuB9B,gBAAAA;AAAAA,sBACrB;AAAA,sBACA;AAAA,wBACE,MAAM;AAAA,wBACN,YAAY;AAAA,wBACZ,cAAc,OAAO,EAAE,SAAQ,MAAOQ,CAAC;AAAA,wBACvC,eAAe;AAAA,0BACb,EAAE,YAAW,MAAOF,EAAE,YAAW,KAAM,EAAE,SAAQ,MAAOA,EAAE,SAAQ,KAAM,EAAE,QAAO,MAAOA,EAAE,QAAO;AAAA,wBAC3H;AAAA,wBACwB,cAAc;AAAA,0BACZ,EAAE,YAAW,MAAOL,EAAE,YAAW,KAAM,EAAE,SAAQ,MAAOA,EAAE,SAAQ,KAAM,EAAE,QAAO,MAAOA,EAAE,QAAO;AAAA,wBAC3H;AAAA,wBACwB,SAAS,MAAMa,EAAEK,CAAC;AAAA,wBAClB,UAAU,EAAE,QAAO;AAAA,sBAC3C;AAAA,sBACsBA;AAAA,oBACtB;AAAA,kBACkB,CAAC;AAAA,gBACnB,EAAiB,CAAE;AAAA,cACnB;AAAA,YACA;AAAA,UACA;AAAA,QACA,GAAW;AAAA,QACanB,gBAAAA;AAAAA,UACd;AAAA,UACA;AAAA,YACE,MAAM;AAAA,YACN,YAAY;AAAA,YACZ,gBAAgB;AAAA,YAChB,OAAOT,EAAE;AAAA,YACT,cAAcA,EAAE;AAAA,YAChB,SAAS,MAAMD,EAAE,KAAI;AAAA,YACrB,UAAUyC,GAAE;AAAA,UACxB;AAAA,QACA;AAAA,MACA,GAAS;AAAA,MACa5B,gBAAAA,EAAE,OAAO,EAAE,YAAY,mBAAmB,iBAAiB,OAAO,UAAU;AAAA,QAC1F;AAAA,QACAlB,EAAE,cAA8BkB,gBAAAA;AAAAA,UAC9B;AAAA,UACA;AAAA,YACE,MAAM;AAAA,YACN,YAAY;AAAA,YACZ,oBAAoB;AAAA,YACpB,SAASlB,EAAE;AAAA,YACX,UAAU;AAAA,cACQe,gBAAAA,EAAE,QAAQ,EAAE,YAAY,YAAY,eAAe,QAAQ,UAAU,KAAK;AAAA,cAC1Ff,EAAE;AAAA,YAChB;AAAA,UACA;AAAA,QACA;AAAA,MACA,EAAO,CAAE;AAAA,IACT,GAAO;AAAA,IACHE,EAAE,SAAS,KAAqBa,gBAAAA,EAAE,OAAO,EAAE,YAAY,iBAAiB,MAAM,WAAW,UAAUb,EAAE,IAAI,CAAC,MAAsBa,gBAAAA;AAAAA,MAC9H;AAAA,MACA;AAAA,QACE,MAAM;AAAA,QACN,YAAY;AAAA,QACZ,MAAM;AAAA,QACN,iBAAiB,MAAMR;AAAA,QACvB,eAAe,OAAO,MAAMA,CAAC;AAAA,QAC7B,OAAOD,EAAE,SAASA,EAAE,MAAM,CAAC,KAAK,CAAC;AAAA,QACjC,SAAS,MAAMD,EAAE,WAAW,CAAC;AAAA,QAC7B,UAAUC,EAAE,MAAM,CAAC,KAAK;AAAA,MAChC;AAAA,MACM;AAAA,IACN,CAAK,EAAC,CAAE;AAAA,EACR,GAAK;AACL;AACA,SAAS0P,GAAE3P,GAAG;AACZ,SAAOA,IAAI,KAAK,IAAIA,CAAC,KAAK,OAAOA,CAAC;AACpC;AACA,SAASuV,GAAGvV,GAAG;AACb,QAAMF,KAAK,KAAK,MAAME,CAAC,IAAI,OAAO,QAAQ;AAC1C,SAAO,GAAG2P,GAAE,KAAK,MAAM7P,IAAI,EAAE,CAAC,CAAC,IAAI6P,GAAE7P,IAAI,EAAE,CAAC;AAC9C;AACA,SAAS+W,GAAG7W,GAAG;AACb,QAAMF,IAAI,KAAK,IAAI,GAAG,KAAK,MAAME,CAAC,CAAC;AACnC,SAAO,GAAG2P,GAAE,KAAK,MAAM7P,IAAI,EAAE,CAAC,CAAC,IAAI6P,GAAE7P,IAAI,EAAE,CAAC;AAC9C;AACA,SAASiQ,GAAE/P,GAAGF,GAAG;AACf,MAAI,CAACA,EAAG,QAAO;AACf,QAAMI,IAAI,IAAI,KAAK,eAAeF,GAAGF,CAAC;AACtC,SAAO,CAACH,MAAMO,EAAE,OAAOP,CAAC;AAC1B;AACA,SAASmQ,GAAE9P,GAAGF,GAAGI,GAAG;AAClB,MAAIJ,MAAM,GAAI,QAAO;AACrB,QAAMH,IAAI,IAAI,KAAK,eAAeK,GAAGF,KAAKI,CAAC;AAC3C,SAAO,CAACD,MAAMN,EAAE,OAAOM,CAAC;AAC1B;AACA,SAASgU,GAAGjU,GAAGF,GAAG;AAChB,EAAAE,EAAE,QAAQ,cAAc,EAAE,MAAMF,EAAC,CAAE;AACnC,QAAMI,IAAIF,EAAE,QAAQ,aAAa,IAAI,gBAAgBA,EAAE,QAAQ,YAAY,IAAI,eAAe;AAC9F,EAAAE,MAAMF,EAAE,SAASM,EAAE,YAAYR,CAAC,CAAC,GAAGE,EAAE,WAAWE,CAAC;AACpD;AACA,MAAMU,KAAI,MAAM+V,KAAK;AAAA,EACnB,UAAU,CAAC,WAAW;AAAA,EACtB,WAAW,CAAC,YAAY;AAAA,EACxB,QAAQ,CAAC,SAAS;AAAA,EAClB,UAAU,CAAC,WAAW;AAAA,EACtB,UAAU,CAAC,SAAS,GAAG;AACzB;AACA,SAAST,GAAGlW,GAAGF,GAAG;AAChB,QAAMI,IAAI,OAAO,QAAQyW,EAAE;AAC3B,aAAW,CAAChX,GAAGM,CAAC,KAAKC;AACnB,UAAMJ,KAAK,OAAO,SAASA,EAAEH,CAAC,MAAMM,GAAG,SAASD,CAAC,EAAG,QAAOL;AAC7D,SAAO;AACT;AACA,SAAS2U,GAAGtU,GAAGF,GAAG;AAChB,QAAM,EAAE,KAAKI,GAAG,OAAOP,GAAG,MAAMM,MAAMH,GAAGO,IAAI4B,GAAEnC,EAAE,QAAQ,OAAO,GAAGS,IAAI2V,GAAGlW,EAAE,KAAKF,EAAE,SAAS;AAC5F,MAAI,CAACS,EAAG;AACR,MAAIA,MAAM,YAAY;AACpB,IAAAP,EAAE,eAAc,GAAIE,EAAE,QAAQ,cAAc,EAAE,OAAOP,GAAG;AACxD;AAAA,EACF;AACA,MAAIE,IAAI;AACR,UAAQU,GAAC;AAAA,IACP,KAAK;AACH,MAAAV,IAAI,CAACe;AACL;AAAA,IACF,KAAK;AACH,MAAAf,IAAIe;AACJ;AAAA,IACF,KAAK;AACH,MAAAf,IAAII,MAAM,aAAa,CAACI,IAAI,CAACO,KAAI;AACjC;AAAA,IACF,KAAK;AACH,MAAAf,IAAII,MAAM,aAAaI,IAAIO,KAAI;AAC/B;AAAA,EACN;AACE,EAAAZ,EAAE,eAAc;AAChB,QAAMS,IAAIqB,GAAEnC,EAAE,OAAOA,EAAE,KAAKE,GAAGS,CAAC;AAChC,MAAIJ,EAAE,UAAUP,EAAE,IAAIc,EAAE,OAAOA,EAAE,GAAG,GAAG;AACrC,UAAML,IAAIF,EAAE,aAAaP,EAAE,EAAE;AAC7B,IAAAS,KAAKF,EAAE,QAAQ,aAAa,EAAE,OAAOE,GAAG;AAAA,EAC1C;AACF;AACA,MAAMuX,KAAK,MAAMjC,KAAK;AACtB,SAASxB,GAAGlU,GAAGF,GAAG;AAChB,MAAI;AACJ,QAAMI,IAAI,SAAS,iBAAiBF,GAAGF,CAAC;AACxC,WAAS,IAAII,KAAK,OAAO,SAASA,EAAE,QAAQ,kBAAkB,MAAM,OAAO,SAAS,EAAE,QAAQ,SAAS;AACzG;AACA,SAASuX,GAAGzX,GAAGF,GAAG;AAChB,EAAAE,EAAE,gBAAe;AACjB,QAAM,EAAE,KAAKE,GAAG,OAAOP,GAAG,YAAYM,EAAC,IAAKH,GAAGO,IAAIL,EAAE,SAASO,IAAIP,EAAE;AACpE,MAAIH,IAAI;AACR,QAAMY,IAAI,CAACb,MAAM;AACf,KAACC,KAAK,KAAK,MAAMD,EAAE,UAAUS,GAAGT,EAAE,UAAUW,CAAC,IAAImV,OAAO7V,IAAI,IAAI,SAAS,KAAK,MAAM,SAAS;AAAA,EAC/F,GAAGO,IAAI,CAACR,MAAM;AACZ,QAAIe;AACJ,QAAI,SAAS,oBAAoB,eAAeF,CAAC,GAAG,SAAS,oBAAoB,aAAaL,CAAC,GAAG,SAAS,KAAK,MAAM,SAAS,IAAI,CAACP,EAAG;AACvI,KAACc,IAAIb,EAAE,YAAY,QAAQa,EAAE,KAAKb,CAAC;AACnC,UAAMK,IAAI+T,GAAGtU,EAAE,SAASA,EAAE,OAAO;AACjC,QAAI,CAACO,EAAG;AACR,UAAMY,IAAIT,EAAE,KAAKA,EAAE,KAAKL,CAAC,GAAGK,EAAE,KAAKH,CAAC,GAAG,KAAK;AAC5C,QAAIY,MAAM,EAAG;AACb,UAAMC,IAAIc,GAAEnC,EAAE,OAAOA,EAAE,KAAKoB,IAAI4W,IAAIrX,CAAC;AACrC,QAAIJ,EAAE,UAAUP,EAAE,IAAIqB,EAAE,OAAOA,EAAE,GAAG,GAAG;AACrC,YAAMR,IAAIN,EAAE,aAAaP,EAAE,EAAE;AAC7B,MAAAa,KAAKN,EAAE,QAAQ,aAAa,EAAE,OAAOM,GAAG;AAAA,IAC1C;AAAA,EACF;AACA,WAAS,iBAAiB,eAAeC,CAAC,GAAG,SAAS,iBAAiB,aAAaL,CAAC;AACvF;AACA,SAASoW,GAAGxW,GAAGF,GAAG;AAChB,MAAIE,EAAE,OAAO,QAAQ,sEAAsE;AACzF;AACF,QAAM,EAAE,KAAK,EAAC,IAAKF;AACnB,MAAIG,IAAIH,EAAE,WAAW,IAAI;AACzB,QAAMS,IAAI,CAACE,MAAM;AACf,UAAML,IAAI8T,GAAGzT,EAAE,SAASA,EAAE,OAAO;AACjC,IAAAL,KAAKA,MAAMN,EAAE,cAAc,IAAI,KAAKM,MAAMH,IAAIG;AAAA,EAChD,GAAGP,IAAI,MAAM;AACX,QAAIkB;AACJ,QAAI,SAAS,oBAAoB,eAAeR,CAAC,GAAG,SAAS,oBAAoB,aAAaV,CAAC,GAAG,CAAC,EAAG;AACtG,KAACkB,IAAIjB,EAAE,kBAAkB,QAAQiB,EAAE,KAAKjB,CAAC;AACzC,UAAMW,IAAIH,EAAE,KAAKR,EAAE,SAAS,GAAGM,IAAIE,EAAE,KAAKL,CAAC,GAAG,CAACL,GAAGO,CAAC,IAAIG,EAAE,SAASG,GAAGL,CAAC,IAAI,CAACK,GAAGL,CAAC,IAAI,CAACA,GAAGK,CAAC;AACxF,MAAE,OAAOH,EAAE,YAAYV,CAAC,GAAGU,EAAE,YAAYA,EAAE,IAAIH,GAAG,EAAE,MAAM,EAAC,CAAE,CAAC,CAAC;AAAA,EACjE;AACA,WAAS,iBAAiB,eAAeI,CAAC,GAAG,SAAS,iBAAiB,aAAaV,CAAC;AACvF;AACA,SAASwU,GAAG,EAAE,KAAKrU,GAAG,OAAOF,GAAG,SAASI,KAAK;AAC5C,MAAIO;AACJ,QAAMd,IAAIO,EAAE,UAAU,MAAMD,IAAI,EAAE,MAAMD,EAAE,QAAO,EAAG,KAAI,GAAIK,IAAIyP,GAAEnQ,GAAGO,EAAE,iBAAiB,EAAE,SAAS,QAAO,CAAE,GAAGK,MAAME,IAAIX,EAAE,MAAM,CAAC,MAAM,OAAO,SAASW,EAAE,SAAS,CAAA,GAAI,IAAIP,EAAE,gBAAgB;AAC7L,SAAuBW,gBAAAA;AAAAA,IACrB;AAAA,IACA;AAAA,MACE,YAAY;AAAA,MACZ,oBAAoB,OAAO,CAAC;AAAA,MAC5B,OAAO,cAAcf,EAAE,WAAW;AAAA,MAClC,UAAU;AAAA,QACQe,gBAAAA,EAAE,OAAO,EAAE,YAAY,kBAAkB,MAAM,OAAO,UAAU;AAAA,UAC9E,KAAqBH,gBAAAA,EAAE,OAAO,EAAE,YAAY,0BAA0B,MAAM,gBAAgB;AAAA,UAC5FH,EAAE,IAAI,CAACH,MAAM;AACX,gBAAIY,GAAGL;AACP,kBAAMf,IAAIU,EAAE,OAAOF,EAAE,IAAI,GAAGD,IAAIE,IAAIA,EAAET,CAAC,IAAI,IAAImB,IAAI;AAAA,cACjD,MAAMnB;AAAA,cACN,MAAMO;AAAA,cACN,WAAWC,EAAE;AAAA,cACb,WAAWE,EAAE,WAAWF,EAAE,IAAI;AAAA,cAC9B,SAASA,EAAE;AAAA,cACX,MAAMH;AAAA,YACpB;AACY,mBAAuBS,gBAAAA;AAAAA,cACrB;AAAA,cACA;AAAA,gBACE,YAAY;AAAA,gBACZ,MAAM;AAAA,gBACN,YAAY,OAAON,EAAE,SAAS;AAAA,gBAC9B,OAAOyP,IAAG7O,IAAId,EAAE,eAAe,OAAO,SAASc,EAAE,SAAS;AAAA,gBAC1D,KAAK,CAACR,MAAM;AACV,sBAAIM;AACJ,yBAAOW,GAAEjB,IAAIM,IAAIZ,EAAE,UAAU,OAAO,SAASY,EAAE,mBAAmB,MAAMC,CAAC;AAAA,gBAC3E;AAAA,gBACA,UAAUY,IAAGhB,IAAIT,EAAE,UAAU,OAAO,SAASS,EAAE,kBAAkBI,GAAGZ,GAAGD,EAAE,UAAU;AAAA,cACnG;AAAA,cACcE,EAAE;AAAA,YAChB;AAAA,UACU,CAAC;AAAA,QACX,GAAW;AAAA,QACHN,EAAE,MAAM,IAAI,CAACM,GAAGR,MAAsBiB,gBAAAA,EAAE,OAAO,EAAE,YAAY,gBAAgB,MAAM,OAAO,UAAU;AAAA,UAClG,KAAqBH,gBAAAA,EAAE,OAAO,EAAE,YAAY,mBAAmB,MAAM,aAAa,UAAUN,EAAE,WAAU,CAAE;AAAA,UAC1GA,EAAE,KAAK,IAAI,CAACD,MAAsBO,gBAAAA;AAAAA,YAChCsW;AAAA,YACA;AAAA,cACE,KAAKhX;AAAA,cACL,MAAMG;AAAA,cACN,SAASD;AAAA,cACT,MAAMD;AAAA,YACpB;AAAA,YACYK,EAAE,YAAYH,EAAE,IAAI;AAAA,UAChC,CAAW;AAAA,QACX,EAAS,GAAIP,CAAC,CAAC;AAAA,MACf;AAAA,IACA;AAAA,EACA;AACA;AACA,SAASoX,GAAG;AAAA,EACV,KAAKhX;AAAA,EACL,MAAMF;AAAA,EACN,SAASI;AAAA,EACT,MAAMP;AACR,GAAG;AACD,MAAIa,GAAGM,GAAGI;AACV,QAAMjB,IAAIK,EAAE,OAAOR,EAAE,IAAI,GAAGO,IAAIC,EAAE,WAAWR,EAAE,IAAI,GAAGS,IAAIL,EAAE,WAA2BQ,gBAAAA;AAAAA,IACrF;AAAA,IACA;AAAA,MACE,YAAY;AAAA,MACZ,iBAAiB;AAAA,MACjB,MAAM;AAAA,MACN,UAAU;AAAA,MACV,OAAOgC,GAAExC,EAAE,MAAM,EAAE;AAAA,QACjB,IAAI,KAAK,eAAeA,EAAE,QAAQ,EAAE,WAAW,OAAM,CAAE,EAAE,OAAOD,CAAC;AAAA,MACzE;AAAA,MACM,SAAS,CAACF,MAAM;AACd,QAAAA,EAAE,gBAAe,GAAIkU,GAAGjU,GAAGF,EAAE,IAAI;AAAA,MACnC;AAAA,MACA,UAAUO;AAAA,IAChB;AAAA,EACA,IAAsBK,gBAAAA,EAAE,QAAQ,EAAE,YAAY,cAAc,UAAUL,GAAG,GAAGR,IAAI,EAAE,MAAMI,GAAG,WAAWI,GAAG,SAASP,EAAE,SAAS,SAASA,EAAE,SAAS,MAAMH,EAAC,GAAIc,IAAIkB;AAAAA,KAC3JnB,IAAIN,EAAE,UAAU,OAAO,SAASM,EAAE;AAAA,IACnCX;AAAA,IACAU;AAAA,IACAL,EAAE;AAAA,EACN,GAAK,CAACE,GAAGR,CAAC,IAAIuC,GAAE,EAAE,GAAGhC,IAAIG,EAAE,YAAYR,EAAE,IAAI,GAAGiB,IAAIK,GAAE,EAAE,GAAGJ,IAAI,MAAM;AACjE,QAAID,EAAE,SAAS;AACb,MAAAA,EAAE,UAAU;AACZ;AAAA,IACF;AACA,IAAAf,EAAE,QAAQ,aAAa,EAAE,MAAMF,EAAE,KAAI,CAAE,GAAGI,EAAE,cAAcF,EAAE,OAAOG,GAAGG,EAAE,YAAYA,EAAE,IAAIR,EAAE,MAAM,EAAE,MAAM,EAAC,CAAE,CAAC,CAAC;AAAA,EACjH,GAAGa,IAAI,CAACZ,MAAM;AACZ,IAAAA,EAAE,gBAAe,GAAIH,EAAE,EAAE,GAAGI,EAAE,QAAQ,iBAAiB;AAAA,MACrD,MAAMF,EAAE;AAAA,MACR,WAAW,CAAC,GAAGA,EAAE,QAAQ,GAAGA,EAAE,YAAY;AAAA,MAC1C,cAAcA,EAAE;AAAA,IACtB,CAAK;AAAA,EACH;AACA,SAAuBe,gBAAAA;AAAAA,IACrB;AAAA,IACA;AAAA,MACE,YAAY;AAAA,MACZ,MAAM;AAAA,MACN,aAAaV;AAAA,MACb,cAAc,OAAOL,EAAE,OAAO;AAAA,MAC9B,cAAc,OAAOA,EAAE,OAAO;AAAA,MAC9B,gBAAgB,OAAOA,EAAE,SAAS;AAAA,MAClC,iBAAiB,OAAOA,EAAE,UAAU;AAAA,MACpC,iBAAiB,OAAOA,EAAE,UAAU;AAAA,MACpC,OAAO+P,IAAG/O,IAAIZ,EAAE,eAAe,OAAO,SAASY,EAAE,GAAG;AAAA,MACpD,KAAK,CAACf,MAAM;AACV,YAAIwB;AACJ,eAAOE,GAAE1B,IAAIwB,IAAIrB,EAAE,UAAU,OAAO,SAASqB,EAAE,iBAAiB,MAAM1B,CAAC;AAAA,MACzE;AAAA,MACA,SAASmB;AAAA,MACT,eAAed,EAAE,aAAa,CAACH,MAAMyW,GAAGzW,GAAG;AAAA,QACzC,KAAKC;AAAA,QACL,WAAWG;AAAA,QACX,eAAe,MAAM;AACnB,UAAAY,EAAE,UAAU;AAAA,QACd;AAAA,MACR,CAAO,IAAI;AAAA,MACL,UAAU;AAAA,QACRN;AAAA,QACAX,EAAE,OAAO,OAAO,CAACC,MAAMA,EAAE,YAAY,MAAM,EAAE,IAAI,CAACA,MAAsBW,gBAAAA;AAAAA,UACtEmU;AAAA,UACA;AAAA,YACE,KAAK7U;AAAA,YACL,OAAOD;AAAA,YACP,SAASG;AAAA,YACT,MAAMP;AAAA,YACN,YAAYQ;AAAA,UACxB;AAAA,UACUJ,EAAE;AAAA,QACZ,CAAS;AAAA,QACDD,EAAE,YAAY,KAAqBe,gBAAAA,EAAE,OAAO,EAAE,YAAY,eAAe,UAAU;AAAA,UACjEH,gBAAAA,EAAE,UAAU,EAAE,MAAM,UAAU,YAAY,aAAa,SAASC,GAAG,UAAUgB;AAAAA,aAC1FT,IAAIhB,EAAE,UAAU,OAAO,SAASgB,EAAE;AAAA,YACnC;AAAA,cACE,MAAMjB;AAAA,cACN,WAAWH,EAAE;AAAA,cACb,WAAW,CAAC,GAAGA,EAAE,QAAQ,GAAGA,EAAE,YAAY;AAAA,cAC1C,cAAcA,EAAE;AAAA,cAChB,MAAMH;AAAA,YACpB;AAAA,YACY+C,GAAExC,EAAE,MAAM,EAAE,KAAKJ,EAAE,SAAS;AAAA,YAC5BI,EAAE;AAAA,UACd,GAAa;AAAA,UACHE,KAAqBM,gBAAAA;AAAAA,YACnBqV;AAAA,YACA;AAAA,cACE,KAAK/V;AAAA,cACL,MAAMF;AAAA,cACN,SAASI;AAAA,cACT,MAAMP;AAAA,cACN,SAAS,MAAMC,EAAE,EAAE;AAAA,YACjC;AAAA,UACA;AAAA,QACA,EAAS,CAAE;AAAA,MACX;AAAA,IACA;AAAA,EACA;AACA;AACA,SAASmW,GAAG;AAAA,EACV,KAAK/V;AAAA,EACL,MAAMF;AAAA,EACN,SAASI;AAAA,EACT,MAAMP;AAAA,EACN,SAASM;AACX,GAAG;AACD,QAAMI,IAAIe,GAAE,IAAI,GAAGb,IAAI,IAAI,KAAK,eAAeL,EAAE,UAAU,MAAM;AAAA,IAC/D,SAAS;AAAA,IACT,KAAK;AAAA,IACL,OAAO;AAAA,EACX,CAAG,GAAGL,IAAI,CAAC,GAAGC,EAAE,QAAQ,GAAGA,EAAE,YAAY,EAAE,OAAO,CAACW,MAAMA,EAAE,YAAY,MAAM;AAC3E,SAAOiB,GAAE,MAAM;AACb,UAAMjB,IAAI,CAACb,MAAM;AACf,MAAAS,EAAE,WAAW,CAACA,EAAE,QAAQ,SAAST,EAAE,MAAM,KAAKK,EAAC;AAAA,IACjD,GAAGG,IAAI,CAACR,MAAM;AACZ,MAAAA,EAAE,QAAQ,YAAYK,EAAC;AAAA,IACzB;AACA,WAAO,SAAS,iBAAiB,aAAaQ,CAAC,GAAG,SAAS,iBAAiB,WAAWL,CAAC,GAAG,MAAM;AAC/F,eAAS,oBAAoB,aAAaK,CAAC,GAAG,SAAS,oBAAoB,WAAWL,CAAC;AAAA,IACzF;AAAA,EACF,GAAG,CAACH,CAAC,CAAC,GAAmBY,gBAAAA,EAAE,OAAO,EAAE,YAAY,gBAAgB,MAAM,UAAU,KAAKR,GAAG,SAAS,CAACI,MAAMA,EAAE,gBAAe,GAAI,UAAU;AAAA,IACrHI,gBAAAA,EAAE,OAAO,EAAE,YAAY,uBAAuB,UAAU;AAAA,MACtDH,gBAAAA,EAAE,QAAQ,EAAE,YAAY,sBAAsB,UAAUH,EAAE,OAAOD,EAAE,OAAOR,EAAE,IAAI,CAAC,EAAC,CAAE;AAAA,MACpFY,gBAAAA,EAAE,UAAU,EAAE,MAAM,UAAU,YAAY,sBAAsB,cAAc,KAAK,SAAST,GAAG,UAAU,IAAG,CAAE;AAAA,IACpI,GAAO;AAAA,IACaS,gBAAAA,EAAE,OAAO,EAAE,YAAY,qBAAqB,UAAUb,EAAE,IAAI,CAACY,MAAsBC,gBAAAA;AAAAA,MACjGmU;AAAA,MACA;AAAA,QACE,KAAK7U;AAAA,QACL,OAAOS;AAAA,QACP,SAASP;AAAA,QACT,MAAMP;AAAA,QACN,YAAYW,EAAE,YAAYR,EAAE,IAAI;AAAA,MACxC;AAAA,MACMW,EAAE;AAAA,IACR,CAAK,EAAC,CAAE;AAAA,EACR,GAAK;AACL;AACA,SAASoU,GAAG;AAAA,EACV,KAAK7U;AAAA,EACL,OAAOF;AAAA,EACP,SAASI;AAAA,EACT,MAAMP;AAAA,EACN,YAAYM;AACd,GAAG;AACD,MAAIc,GAAGC;AACP,QAAMX,IAAIH,EAAE,aAAa,MAAMJ,EAAE,aAAa,IAAIS,IAAIP,EAAE,iBAAiB,MAAM,IAAIF,EAAE,EAAE,GAAGD,IAAIuB,GAAE,EAAE,GAAGX,IAAIsP,GAAE7P,EAAE,UAAU,MAAMA,EAAE,eAAe,GAAGE,IAAIN,EAAE,SAAS,KAAKW,IAAIA,EAAEH,EAAE,OAAOR,EAAE,KAAK,CAAC,IAAIQ,EAAE,OAAOR,EAAE,OAAO,OAAO,GAAGF,IAAI,EAAE,OAAOE,GAAG,UAAUA,EAAE,QAAQ,UAAUM,GAAG,MAAMT,EAAC,GAAIQ,IAAIwB;AAAAA,KACzRZ,IAAIb,EAAE,UAAU,OAAO,SAASa,EAAE;AAAA,IACnCnB;AAAA,IACgBiB,gBAAAA,EAAE,QAAQ,EAAE,YAAY,eAAe,UAAU;AAAA,MAC/DT,IAAI,GAAGA,CAAC,MAAM;AAAA,MACdN,EAAE;AAAA,IACR,GAAO;AAAA,IACHI,EAAE;AAAA,EACN;AACE,SAAuBQ,gBAAAA;AAAAA,IACrB;AAAA,IACA;AAAA,MACE,YAAY;AAAA,MACZ,MAAM;AAAA,MACN,UAAU;AAAA,MACV,OAAOmP,IAAG7O,IAAId,EAAE,eAAe,OAAO,SAASc,EAAE,OAAO,GAAGlB,EAAE,UAAU;AAAA,MACvE,gBAAgB,OAAOA,EAAE,MAAM;AAAA,MAC/B,gBAAgBA,EAAE;AAAA,MAClB,iBAAiBA,EAAE;AAAA,MACnB,iBAAiB,OAAOO,CAAC;AAAA,MACzB,qBAAqB,OAAOE,CAAC;AAAA,MAC7B,KAAK,CAACI,MAAM;AACV,YAAIH;AACJ,eAAOiB,GAAEd,IAAIH,IAAIN,EAAE,UAAU,OAAO,SAASM,EAAE,eAAe,MAAMZ,CAAC;AAAA,MACvE;AAAA,MACA,OAAO,kBAAkBE,EAAE,eAAe,mBAAmBA,EAAE,SAAS,uBAAuBA,EAAE,WAAW;AAAA,MAC5G,SAAS,CAACa,MAAM;AACd,YAAIA,EAAE,mBAAmBd,EAAE,SAAS;AAClC,UAAAA,EAAE,UAAU;AACZ;AAAA,QACF;AACA,YAAIc,EAAE,WAAWA,EAAE,SAAS;AAC1B,UAAAX,EAAE,qBAAqBF,EAAE,EAAE;AAC3B;AAAA,QACF;AACA,QAAAE,EAAE,QAAQ,cAAc,EAAE,OAAOF,GAAG,IAAIa,EAAE,cAAa,CAAE,GAAGb,EAAE,OAAO,OAAO,KAAKA,EAAE,KAAK,OAAO;AAAA,MACjG;AAAA,MACA,eAAeO,IAAI,CAACM,MAAM8W,GAAG9W,GAAG;AAAA,QAC9B,KAAKX;AAAA,QACL,OAAOF;AAAA,QACP,YAAYG;AAAA,QACZ,SAAS,MAAM;AACb,UAAAJ,EAAE,UAAU;AAAA,QACd;AAAA,MACR,CAAO,IAAI;AAAA,MACL,WAAWQ,IAAI,CAACM,MAAM2T,GAAG3T,GAAG;AAAA,QAC1B,KAAKX;AAAA,QACL,OAAOF;AAAA,QACP,MAAM;AAAA,QACN,WAAWI,EAAE;AAAA,MACrB,CAAO,IAAI;AAAA,MACL,UAAUC;AAAA,IAChB;AAAA,EACA;AACA;AACA,MAAM4B,KAAI,IAAIgS,KAAK,IAAI2D,KAAK;AAAA,EAC1B,SAAS;AAAA,EACT;AAAA,EACA,aAAa,MAAM;AAAA,EACnB,OAAO;AAAA,EACP;AACF;AACA,SAASnD,GAAGvU,GAAG;AACb,MAAI,CAACA,EAAG,QAAO0X;AACf,MAAI5X,IAAI,GAAGI,IAAI,GAAGP,IAAI;AACtB,QAAMM,IAAI,MAAM;AACd,UAAMI,IAAIL,EAAE,sBAAqB;AACjC,QAAIO,IAAI;AACR,QAAIT,IAAIO,EAAE,MAAM0B,KAAIxB,IAAI,CAACwT,MAAM,IAAI,KAAK,IAAI,GAAGjU,IAAIO,EAAE,GAAG,IAAI0B,MAAKjC,IAAIO,EAAE,SAAS0B,OAAMxB,IAAIwT,MAAM,IAAI,KAAK,IAAI,GAAG1T,EAAE,SAASP,CAAC,IAAIiC,MAAKxB,MAAM,GAAG;AAC5I,YAAMV,IAAIG,EAAE;AACZ,MAAAA,EAAE,aAAaO,GAAGL,KAAKF,EAAE,YAAYH;AAAA,IACvC;AACA,IAAAF,IAAI,sBAAsBM,CAAC;AAAA,EAC7B;AACA,SAAON,IAAI,sBAAsBM,CAAC,GAAG;AAAA,IACnC,OAAOI,GAAG;AACR,MAAAP,IAAIO;AAAA,IACN;AAAA,IACA,aAAa,MAAMH;AAAA,IACnB,OAAO;AACL,2BAAqBP,CAAC;AAAA,IACxB;AAAA,EACJ;AACA;AACA,SAASwU,GAAGnU,GAAG;AACb,SAAOA,EAAE,QAAQ,sBAAsB;AACzC;AACA,SAASsB,GAAEtB,GAAGF,GAAG;AACf,EAAAE,EAAE,eAAc,GAAIA,EAAE,gBAAe;AACrC,QAAM,EAAE,KAAKE,GAAG,OAAOP,GAAG,OAAOM,GAAG,UAAUI,GAAG,MAAME,IAAI,SAAS,MAAMV,EAAC,IAAKC,GAAGW,IAAIJ,EAAE,yBAAyBD,IAAIH,EAAE,aAAaA,EAAE,YAAYL,IAAIa,EAAE,WAAW,IAAI,IAAIA,EAAE,SAASL,GAAGD,IAAIH,EAAE,SAASe,IAAIwT,GAAGJ,GAAG9T,CAAC,CAAC;AACrN,EAAAU,EAAE,OAAOf,EAAE,OAAO;AAClB,QAAMgB,IAAI,CAACR,MAAM;AACf,IAAAO,EAAE,OAAOP,EAAE,OAAO;AAAA,EACpB,GAAGG,IAAI,CAACH,MAAM;AACZ,aAAS,oBAAoB,eAAeQ,CAAC,GAAG,SAAS,oBAAoB,aAAaL,CAAC,GAAGI,EAAE,KAAI;AACpG,UAAMD,IAAI8T,GAAGpU,EAAE,UAAUL,IAAIY,EAAE,YAAW,GAAInB,GAAGW,CAAC;AAClD,QAAIO,MAAM,EAAG;AACb,UAAM,IAAIjB,IAAIoW,GAAGtW,EAAE,OAAOA,EAAE,KAAKE,GAAGiB,GAAGR,CAAC,IAAIwB,GAAEnC,EAAE,OAAOA,EAAE,KAAKmB,GAAGR,CAAC;AAClE,QAAIJ,EAAE,UAAUP,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,GAAG;AACrC,YAAMI,IAAIG,EAAE,aAAaP,EAAE,EAAE;AAC7B,MAAAI,KAAKG,EAAE,QAAQL,IAAI,gBAAgB,aAAa,EAAE,OAAOE,GAAG;AAAA,IAC9D;AAAA,EACF;AACA,WAAS,iBAAiB,eAAeiB,CAAC,GAAG,SAAS,iBAAiB,aAAaL,CAAC;AACvF;AACA,SAAS4V,GAAGvW,GAAGF,GAAG;AAChB,MAAIE,EAAE,OAAO,QAAQ,oBAAoB,EAAG;AAC5C,QAAM,EAAE,KAAKE,GAAG,MAAMP,GAAG,OAAOM,GAAG,UAAUI,GAAG,MAAME,IAAI,QAAO,IAAKT,GAAGD,IAAII,EAAE,aAAaA,EAAE,YAAYQ,IAAIwB,GAAE1B,CAAC,KAAK,IAAIH,IAAI,CAACU,MAAM;AACnI,UAAM,IAAIT,EAAE,sBAAqB,GAAIN,IAAI,EAAE,WAAW,IAAI,IAAI,EAAE,SAASF,GAAG0B,IAAItB,EAAE,cAAcF,MAAM,IAAI,KAAKe,IAAI,EAAE,OAAOf,IAAIoB,IAAI,KAAK,IAAIlB,EAAE,YAAY,KAAK,IAAIA,EAAE,YAAYsB,CAAC,CAAC;AACpL,WAAO,KAAK,MAAMJ,IAAIV,CAAC,IAAIA;AAAA,EAC7B,GAAGb,IAAIQ,EAAEJ,EAAE,OAAO;AAClB,MAAIG,IAAIP,GAAGmB,IAAI;AACf,QAAMC,IAAIuT,GAAGJ,GAAG9T,CAAC,CAAC;AAClB,EAAAW,EAAE,OAAOhB,EAAE,OAAO;AAClB,QAAMW,IAAI,CAACG,MAAM;AACf,QAAIf;AACJ,IAAAiB,EAAE,OAAOF,EAAE,OAAO;AAClB,UAAMI,IAAId,EAAEU,EAAE,OAAO;AACrB,IAAAI,MAAMtB,MAAMmB,IAAI,KAAKZ,IAAIe,GAAGH,OAAOhB,IAAID,EAAE,cAAc,QAAQC,EAAE,KAAKD,GAAG;AAAA,MACvE,UAAU,KAAK,IAAIF,GAAGO,CAAC;AAAA,MACvB,QAAQ,KAAK,IAAIP,GAAGO,CAAC;AAAA,IAC3B,CAAK;AAAA,EACH,GAAGK,IAAI,MAAM;AACX,QAAIe;AACJ,QAAI,SAAS,oBAAoB,eAAeZ,CAAC,GAAG,SAAS,oBAAoB,aAAaH,CAAC,GAAGQ,EAAE,SAASO,IAAIzB,EAAE,cAAc,QAAQyB,EAAE,KAAKzB,GAAG,IAAI,GAAG,CAACiB,EAAG;AAC9J,UAAMD,IAAI,KAAK,IAAIlB,GAAGO,CAAC,GAAGe,IAAI,KAAK,IAAItB,GAAGO,CAAC,GAAGJ,IAAIO,EAAE,QAAQX,GAAG,KAAK;AACpE,IAAAO,EAAE;AAAA,MACAI,EAAE,YAAYA,EAAE,IAAIP,GAAG,EAAE,SAASe,EAAC,CAAE,CAAC;AAAA,MACtCR,EAAE,YAAYA,EAAE,IAAIP,GAAG,EAAE,SAASmB,GAAG,CAAC;AAAA,IAC5C;AAAA,EACE;AACA,WAAS,iBAAiB,eAAeP,CAAC,GAAG,SAAS,iBAAiB,aAAaH,CAAC;AACvF;AACA,SAASuW,GAAG,EAAE,KAAK/W,GAAG,OAAOF,GAAG,SAASI,KAAK;AAC5C,QAAMP,IAAIO,EAAE,UAAU,MAAMD,IAAI,EAAE,MAAMD,EAAE,QAAO,EAAG,KAAI,GAAIK,IAAIyP,GAAEnQ,GAAGO,EAAE,iBAAiB;AAAA,IACtF,SAAS;AAAA,IACT,KAAK;AAAA,EACT,CAAG,GAAGK,IAAIwP,GAAEpQ,GAAGO,EAAE,eAAe,GAAGL,IAAIK,EAAE,eAAe,IAAIO,IAAI,0CAA0CX,EAAE,MAAM,MAAM,KAAKM,IAAIN,EAAE,aAAaA,EAAE,YAAYF,IAAIqC,GAAE/B,EAAE,gBAAgBA,EAAE,gBAAgB,OAAO,KAAK,IAAIC,IAAIiB,GAAE,IAAI,GAAGL,IAAIK,GAAEtB,CAAC;AAC1O,EAAAiB,EAAE,UAAUjB;AACZ,QAAM,CAACkB,GAAGL,CAAC,IAAIwB,GAAE,IAAI;AACrBT,EAAAA,GAAE,MAAM;AACN,UAAM3B,IAAII,EAAE;AACZ,QAAI,CAACJ,EAAG;AACR,UAAMwB,IAAI;AAAA,MACR,aAAaJ,GAAG;AACd,cAAMkB,IAAItB,EAAE,SAASwB,IAAIF,EAAE,aAAaA,EAAE,YAAYpB,KAAIlB,EAAE;AAC5D,YAAIwC,KAAK,KAAKtB,MAAK,EAAG;AACtB,cAAM,KAAK,KAAK,IAAIoB,EAAE,YAAY,KAAK,IAAIA,EAAE,YAAYJ,GAAEd,CAAC,CAAC,CAAC,IAAIkB,EAAE,cAAcE,IAAItB;AACtF,QAAAlB,EAAE,YAAY,KAAK,IAAI,GAAG,KAAK,IAAI,GAAGkB,KAAIlB,EAAE,YAAY,CAAC;AAAA,MAC3D;AAAA,MACA,gBAAgB;AACd,cAAMoB,IAAIJ,EAAE,SAASsB,IAAIlB,EAAE,aAAaA,EAAE,YAAYoB,IAAIxC,EAAE;AAC5D,eAAOsC,KAAK,KAAKE,KAAK,IAAI,OAAOsU,GAAG1V,EAAE,aAAapB,EAAE,YAAYwC,IAAIF,CAAC;AAAA,MACxE;AAAA,IACN;AACI,WAAOrC,EAAE,eAAeuB,CAAC,GAAG,MAAMvB,EAAE,eAAe,IAAI;AAAA,EACzD,GAAG,CAACA,CAAC,CAAC;AACN,QAAMQ,IAAIN,EAAE;AACZwB,EAAAA,GAAE,MAAM;AACN,QAAI,CAAClB,EAAG;AACR,QAAIT,IAAI;AACR,UAAMwB,IAAI,sBAAsB,MAAM;AACpC,MAAAxB,IAAI,sBAAsB,MAAMC,EAAE,aAAaQ,CAAC,CAAC;AAAA,IACnD,CAAC;AACD,WAAO,MAAM;AACX,2BAAqBe,CAAC,GAAG,qBAAqBxB,CAAC;AAAA,IACjD;AAAA,EACF,GAAG,CAACC,CAAC,CAAC;AACN,QAAMc,IAAI,CAACf,GAAGwB,MAAM;AAClB,UAAMJ,IAAIpB,EAAE,sBAAqB;AACjC,QAAIoB,EAAE,WAAW,KAAKf,KAAK,EAAG,QAAON,EAAE;AACvC,UAAMuC,KAAKd,IAAIJ,EAAE,OAAOA,EAAE,SAASf,GAAGmC,IAAI,KAAK,MAAM,KAAK,IAAI,GAAG,KAAK,IAAInC,GAAGiC,CAAC,CAAC,IAAIzC,CAAC,IAAIA;AACxF,WAAOE,EAAE,aAAayC;AAAA,EACxB,GAAG,IAAIzC,EAAE,KAAK,CAAC;AACf,SAAuBe,gBAAAA,EAAE,OAAO,EAAE,YAAY,YAAY,OAAO,iBAAiBf,EAAE,KAAK,MAAM,IAAI,UAAU;AAAA,IAC3Fe,gBAAAA,EAAE,OAAO,EAAE,YAAY,aAAa,MAAM,OAAO,UAAU;AAAA,MACzDH,gBAAAA,EAAE,OAAO,EAAE,YAAY,iBAAgB,CAAE;AAAA,MACzDZ,EAAE,KAAK,IAAI,CAACC,MAAM;AAChB,YAAIwC,GAAGtB;AACP,cAAMM,IAAIjB,EAAE,OAAOP,EAAE,IAAI,GAAGoB,IAAId,IAAIA,EAAEkB,CAAC,IAAI,IAAIc,KAAI;AAAA,UACjD,MAAMd;AAAA,UACN,MAAMJ;AAAA,UACN,WAAWb,EAAE,UAAUP,EAAE,IAAI;AAAA,UAC7B,WAAWO,EAAE,WAAWP,EAAE,IAAI;AAAA,UAC9B,SAASA,EAAE;AAAA,UACX,MAAME;AAAA,QAChB;AACQ,eAAuBS,gBAAAA;AAAAA,UACrB;AAAA,UACA;AAAA,YACE,YAAY;AAAA,YACZ,MAAM;AAAA,YACN,cAAc,OAAOX,EAAE,OAAO;AAAA,YAC9B,aAAaO,EAAE,YAAYP,EAAE,IAAI;AAAA,YACjC,iBAAiBG,EAAE,WAAW,SAAS;AAAA,YACvC,OAAO2P,IAAGtN,IAAIrC,EAAE,eAAe,OAAO,SAASqC,EAAE,SAAS;AAAA,YAC1D,KAAK,CAAClB,MAAM;AACV,kBAAIG;AACJ,qBAAOC,GAAEJ,IAAIG,IAAItB,EAAE,UAAU,OAAO,SAASsB,EAAE,mBAAmB,MAAMa,EAAC;AAAA,YAC3E;AAAA,YACA,SAASnC,EAAE,WAAW,MAAM+T,GAAGjU,GAAGD,EAAE,IAAI,IAAI;AAAA,YAC5C,UAAU4B,IAAGV,IAAIf,EAAE,UAAU,OAAO,SAASe,EAAE,kBAAkBoB,IAAGlB,GAAGjB,EAAE,UAAU;AAAA,UAC/F;AAAA,UACUI,EAAE,YAAYP,EAAE,IAAI;AAAA,QAC9B;AAAA,MACM,CAAC;AAAA,IACP,GAAO;AAAA,IACHF,KAAqBgB,gBAAAA,EAAE,OAAO,EAAE,YAAY,aAAa,MAAM,OAAO,UAAU;AAAA,MAC9DH,gBAAAA,EAAE,OAAO,EAAE,YAAY,iBAAiB,UAAUgC,GAAExC,EAAE,MAAM,EAAE,QAAQ;AAAA,MACtFJ,EAAE,KAAK,IAAI,CAACC,MAAsBW,gBAAAA;AAAAA,QAChC;AAAA,QACA;AAAA,UACE,YAAY;AAAA,UACZ,SAAS,MAAMV,EAAE,QAAQ,aAAa,EAAE,MAAMD,EAAE,MAAM,QAAQ,IAAI;AAAA,UAClE,UAAUA,EAAE,aAAa,OAAO,CAACwB,MAAMA,EAAE,YAAY,MAAM,EAAE,IAAI,CAACA,MAAM;AACtE,gBAAIJ,GAAGkB;AACP,mBAAuB3B,gBAAAA;AAAAA,cACrB;AAAA,cACA;AAAA,gBACE,YAAY;AAAA,gBACZ,gBAAgB;AAAA,gBAChB,iBAAiBa,EAAE;AAAA,gBACnB,OAAOsO,IAAG1O,IAAIjB,EAAE,eAAe,OAAO,SAASiB,EAAE,OAAO,GAAGI,EAAE,UAAU;AAAA,gBACvE,gBAAgBA,EAAE;AAAA,gBAClB,OAAO,kBAAkBA,EAAE,eAAe,mBAAmBA,EAAE,SAAS,uBAAuBA,EAAE,WAAW;AAAA,gBAC5G,SAAS,CAACgB,MAAM;AACd,kBAAAA,EAAE,gBAAe,GAAIvC,EAAE,QAAQ,cAAc,EAAE,OAAOuB,GAAG,IAAIgB,EAAE,cAAa,CAAE,GAAGhB,EAAE,OAAO,OAAO,KAAKA,EAAE,KAAK,OAAO;AAAA,gBACtH;AAAA,gBACA,UAAUI;AAAAA,mBACPU,IAAInC,EAAE,UAAU,OAAO,SAASmC,EAAE;AAAA,kBACnC,EAAE,OAAOd,GAAG,UAAU,IAAI,UAAU,IAAI,MAAMtB,EAAC;AAAA,kBAC/CsB,EAAE;AAAA,kBACFrB,EAAE;AAAA,gBACpB;AAAA,cACA;AAAA,cACcqB,EAAE;AAAA,YAChB;AAAA,UACU,CAAC;AAAA,QACX;AAAA,QACQjB,EAAE,YAAYP,EAAE,IAAI;AAAA,MAC5B,CAAO;AAAA,IACP,GAAO;AAAA,IACac,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,KAAKV,GAAG,UAAU;AAAA,MAClDO,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,OAAO,UAAUD,CAAC,IAAI,UAAUX,EAAE,MAAM,IAAI,CAACC,MAAM;AACnG,YAAIwC,GAAGtB;AACP,cAAMM,IAAIzB,EAAE,aAAaC,EAAE;AAC3B,YAAIoB,IAAI;AACR,QAAApB,EAAE,YAAYoB,IAAIZ,KAAK,IAAIA,EAAED,EAAE,OAAOA,EAAE,IAAIA,EAAE,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,SAASiB,EAAC,CAAE,CAAC,CAAC,IAAIxB,EAAE,SAASwV,GAAGhU,CAAC;AACzG,cAAMc,KAAI,EAAE,MAAMlB,GAAG,SAASI,GAAG,SAASxB,EAAE,SAAS,MAAME,EAAC;AAC5D,eAAuBS,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,cAAc,OAAOX,EAAE,OAAO,GAAG,UAA0BW,gBAAAA;AAAAA,UAClH;AAAA,UACA;AAAA,YACE,YAAY;AAAA,YACZ,OAAOmP,IAAGtN,IAAIrC,EAAE,eAAe,OAAO,SAASqC,EAAE,SAAS;AAAA,YAC1D,KAAK,CAAClB,MAAM;AACV,kBAAIG;AACJ,qBAAOC,GAAEJ,IAAIG,IAAItB,EAAE,UAAU,OAAO,SAASsB,EAAE,mBAAmB,MAAMa,EAAC;AAAA,YAC3E;AAAA,YACA,UAAUV,IAAGV,IAAIf,EAAE,UAAU,OAAO,SAASe,EAAE,kBAAkBoB,IAAGlB,GAAGjB,EAAE,UAAU;AAAA,UAC/F;AAAA,QACA,EAAS,GAAIH,EAAE,SAAS;AAAA,MAClB,CAAC,EAAC,CAAE;AAAA,MACJD,EAAE,KAAK,IAAI,CAACC,GAAGwB,MAAM;AACnB,YAAIJ;AACJ,eAAuBN,gBAAAA;AAAAA,UACrB;AAAA,UACA;AAAA,YACE,YAAY;AAAA,YACZ,cAAc,OAAOd,EAAE,OAAO;AAAA,YAC9B,aAAaO,EAAE,YAAYP,EAAE,IAAI;AAAA,YACjC,OAAO,UAAUU,CAAC;AAAA,YAClB,SAAS,CAAC4B,MAAM;AACd,oBAAME,IAAIzB,EAAEuB,EAAE,eAAeA,EAAE,OAAO;AACtC,cAAArC,EAAE,QAAQ,aAAa;AAAA,gBACrB,MAAMM,EAAE,IAAIA,EAAE,QAAQP,EAAE,MAAM,KAAK,GAAG,EAAE,SAASwC,EAAC,CAAE;AAAA,gBACpD,QAAQ;AAAA,cACxB,CAAe;AAAA,YACH;AAAA,YACA,eAAerC,EAAE,aAAa,CAACmC,MAAMkU,GAAGlU,GAAG;AAAA,cACzC,KAAKrC;AAAA,cACL,MAAMD,EAAE;AAAA,cACR,OAAOD;AAAA,cACP,UAAUuC,EAAE;AAAA,cACZ,MAAMnC,EAAE,gBAAgBA,EAAE;AAAA,cAC1B,WAAWA,EAAE,eAAe,CAACqC,MAAM5B;AAAA,gBACjC4B,IAAI,EAAE,UAAUhB,GAAG,UAAUgB,EAAE,UAAU,QAAQA,EAAE,WAAW;AAAA,cAC9E,IAAkB;AAAA,YAClB,CAAa,IAAI;AAAA,YACL,UAAU;AAAA,cACRrC,EAAE,iBAAiB,CAACH,EAAE,eAA+BW,gBAAAA,EAAE,OAAO,EAAE,YAAY,kBAAkB,OAAO,oBAAmB,CAAE;AAAA,cAC1HX,EAAE,eAA+Bc,gBAAAA,EAAEwU,IAAI,EAAE,UAAU;AAAA,gBACjC3U,gBAAAA,EAAE,OAAO,EAAE,YAAY,kBAAkB,OAAO,gBAAgBX,EAAE,YAAY,MAAM,IAAG,CAAE;AAAA,gBACzFW,gBAAAA;AAAAA,kBACd;AAAA,kBACA;AAAA,oBACE,YAAY;AAAA,oBACZ,OAAO,OAAOX,EAAE,YAAY,SAAS,YAAY,MAAMA,EAAE,YAAY,SAAS;AAAA,kBAClG;AAAA,gBACA;AAAA,cACA,GAAiB;AAAA,eACFiB,KAAK,OAAO,SAASA,EAAE,cAAcO,KAAKnB,IAAI,KAAqBM,gBAAAA;AAAAA,gBAClE;AAAA,gBACA;AAAA,kBACE,YAAY;AAAA,kBACZ,OAAO,QAAQM,EAAE,WAAWlB,EAAE,cAAcM,IAAI,GAAG,aAAaY,EAAE,SAASA,EAAE,YAAYZ,IAAI,GAAG;AAAA,gBAClH;AAAA,cACA;AAAA,cACcL,EAAE,UAAU,OAAO,CAACsC,MAAMA,EAAE,MAAM,YAAY,MAAM,EAAE,IAAI,CAACA,MAAsB3B,gBAAAA;AAAAA,gBAC/EkX;AAAA,gBACA;AAAA,kBACE,KAAK5X;AAAA,kBACL,KAAKqC;AAAA,kBACL,OAAOvC;AAAA,kBACP,SAASI;AAAA,kBACT,MAAMD;AAAA,gBACxB;AAAA,gBACgBoC,EAAE,MAAM;AAAA,cACxB,CAAe;AAAA,gBACClB,IAAIrB,EAAE,iBAAiB,OAAO,SAASqB,EAAE,cAAcI,KAAqBb,gBAAAA,EAAE,OAAO,EAAE,YAAY,iBAAiB,OAAO,OAAOZ,EAAE,aAAa,MAAM,IAAG,CAAE;AAAA,YAC5K;AAAA,UACA;AAAA,UACUQ,EAAE,YAAYP,EAAE,IAAI;AAAA,QAC9B;AAAA,MACM,CAAC;AAAA,IACP,EAAK,CAAE;AAAA,EACP,GAAK;AACL;AACA,SAAS6X,GAAG;AAAA,EACV,KAAK5X;AAAA,EACL,KAAKF;AAAA,EACL,OAAOI;AAAA,EACP,SAASP;AAAA,EACT,MAAMM;AACR,GAAG;AACD,MAAIU,GAAGH;AACP,QAAM,EAAE,OAAOH,MAAMP,GAAGS,IAAIZ,EAAE,aAAa,MAAMU,EAAE,aAAa,IAAIR,IAAIG,EAAE,iBAAiB,MAAM,IAAIK,EAAE,EAAE,GAAGI,IAAI,MAAMX,EAAE,UAAUM,IAAI2P,GAAEpQ,EAAE,UAAU,MAAMA,EAAE,eAAe,GAAGC,IAAIQ,IAAIA,EAAEE,EAAE,OAAOD,EAAE,KAAK,CAAC,IAAIC,EAAE,OAAOD,EAAE,OAAO,OAAO,GAAGF,IAAI,EAAE,OAAOE,GAAG,UAAU,IAAI,UAAUT,GAAG,MAAMK,EAAC,GAAIc,IAAIY;AAAAA,KAChShB,IAAIhB,EAAE,UAAU,OAAO,SAASgB,EAAE;AAAA,IACnCR;AAAA,IACgBU,gBAAAA,EAAE,QAAQ,EAAE,YAAY,eAAe,UAAU;AAAA,MAC/DjB;AAAA,MACA;AAAA,MACAS,EAAE;AAAA,IACR,GAAO;AAAA,IACHV,EAAE;AAAA,EACN,GAAKqB,IAAI,CAACF,MAAMA,EAAE,QAAQ,qBAAqB,KAAKA;AAClD,SAAuBD,gBAAAA;AAAAA,IACrB;AAAA,IACA;AAAA,MACE,YAAY;AAAA,MACZ,gBAAgB;AAAA,MAChB,gBAAgBR,EAAE;AAAA,MAClB,iBAAiBA,EAAE;AAAA,MACnB,qBAAqB,OAAOR,CAAC;AAAA,MAC7B,OAAOgQ,IAAGrP,IAAIb,EAAE,eAAe,OAAO,SAASa,EAAE,OAAO,GAAGH,EAAE,UAAU;AAAA,MACvE,MAAM;AAAA,MACN,UAAU;AAAA,MACV,KAAK,CAACS,MAAM;AACV,YAAI;AACJ,eAAOW,GAAEX,IAAI,IAAInB,EAAE,UAAU,OAAO,SAAS,EAAE,eAAe,MAAMQ,CAAC;AAAA,MACvE;AAAA,MACA,OAAO,yBAAyBL,EAAE,MAAM,YAAYA,EAAE,SAAS,UAAUA,EAAE,MAAMW,CAAC,WAAWA,CAAC,oBAAoBJ,EAAE,eAAe,mBAAmBA,EAAE,SAAS,uBAAuBA,EAAE,WAAW;AAAA,MACrM,SAAS,CAACS,MAAM;AACd,YAAIA,EAAE,gBAAe,GAAIA,EAAE,WAAWA,EAAE,SAAS;AAC/C,UAAAd,EAAE,qBAAqBK,EAAE,EAAE;AAC3B;AAAA,QACF;AACA,QAAAL,EAAE,QAAQ,cAAc,EAAE,OAAOK,GAAG,IAAIS,EAAE,cAAa,CAAE,GAAGT,EAAE,OAAO,OAAO,KAAKA,EAAE,KAAK,OAAO;AAAA,MACjG;AAAA,MACA,WAAWE,IAAI,CAACO,MAAMwT,GAAGxT,GAAG;AAAA,QAC1B,KAAKd;AAAA,QACL,OAAOK;AAAA,QACP,MAAM;AAAA,QACN,MAAMV,EAAE,gBAAgBA,EAAE;AAAA,QAC1B,WAAWA,EAAE;AAAA,MACrB,CAAO,IAAI;AAAA,MACL,eAAeY,IAAI,CAACO,MAAMQ,GAAER,GAAG;AAAA,QAC7B,KAAKd;AAAA,QACL,OAAOK;AAAA,QACP,OAAOH;AAAA,QACP,UAAUc,EAAEF,EAAE,aAAa;AAAA,QAC3B,MAAMnB,EAAE;AAAA,MAChB,CAAO,IAAI;AAAA,MACL,UAAU;AAAA,QACRY,KAAqBG,gBAAAA;AAAAA,UACnB;AAAA,UACA;AAAA,YACE,YAAY;AAAA,YACZ,aAAa;AAAA,YACb,eAAe,CAACI,MAAMQ,GAAER,GAAG;AAAA,cACzB,KAAKd;AAAA,cACL,OAAOK;AAAA,cACP,OAAOH;AAAA,cACP,UAAUc,EAAEF,EAAE,aAAa;AAAA,cAC3B,MAAMnB,EAAE;AAAA,cACR,MAAM;AAAA,YACpB,CAAa;AAAA,UACb;AAAA,QACA;AAAA,QACQoB;AAAA,QACAR,KAAqBG,gBAAAA;AAAAA,UACnB;AAAA,UACA;AAAA,YACE,YAAY;AAAA,YACZ,aAAa;AAAA,YACb,eAAe,CAACI,MAAMQ,GAAER,GAAG;AAAA,cACzB,KAAKd;AAAA,cACL,OAAOK;AAAA,cACP,OAAOH;AAAA,cACP,UAAUc,EAAEF,EAAE,aAAa;AAAA,cAC3B,MAAMnB,EAAE;AAAA,cACR,MAAM;AAAA,YACpB,CAAa;AAAA,UACb;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA;AACA,SAASmX,GAAG,EAAE,KAAK9W,GAAG,OAAOF,GAAG,SAASI,KAAK;AAC5C,QAAMP,IAAIO,EAAE,UAAU,MAAMD,IAAI,EAAE,MAAMD,EAAE,UAAU,KAAI,GAAIK,IAAIqC,GAAExC,EAAE,MAAM,GAAGK,IAAIuP,GAAEnQ,GAAGO,EAAE,eAAe;AAAA,IACrG,SAAS;AAAA,IACT,KAAK;AAAA,IACL,OAAO;AAAA,EACX,CAAG,GAAGL,IAAIK,EAAE,oBAAoB4P,GAAEnQ,GAAGO,EAAE,mBAAmB,EAAE,OAAO,SAAS,KAAK,UAAS,CAAE,IAAI,MAAMO,IAAIsP,GAAEpQ,GAAGO,EAAE,eAAe;AAC9H,SAAOJ,EAAE,UAA0BY,gBAAAA,EAAE,OAAO,EAAE,YAAY,QAAQ,UAA0BA,gBAAAA,EAAE,OAAO,EAAE,YAAY,cAAc,UAAUL,EAAE,UAAU,EAAC,CAAE,IAAoBK,gBAAAA,EAAE,OAAO,EAAE,YAAY,QAAQ,MAAM,QAAQ,UAAUZ,EAAE,KAAK,IAAI,CAACM,MAAsBS,gBAAAA,EAAE,OAAO,EAAE,YAAY,YAAY,cAAc,OAAOT,EAAE,OAAO,GAAG,UAAU;AAAA,IACnUS,gBAAAA,EAAE,OAAO,EAAE,YAAY,mBAAmB,MAAM,WAAW,cAAc,GAAG,UAAU;AAAA,MACpFH,gBAAAA,EAAE,QAAQ,EAAE,YAAY,iBAAiB,UAAUH,IAAIA,EAAED,EAAE,OAAOF,EAAE,IAAI,CAAC,IAAI,GAAE,CAAE;AAAA,MACjGP,KAAqBa,gBAAAA,EAAE,QAAQ,EAAE,YAAY,sBAAsB,UAAUb,EAAES,EAAE,OAAOF,EAAE,IAAI,CAAC,EAAC,CAAE;AAAA,IACxG,GAAO;AAAA,IACHA,EAAE,OAAO,OAAO,CAACR,MAAMA,EAAE,YAAY,MAAM,EAAE,IAAI,CAACA,MAAM;AACtD,UAAIoB,GAAGL;AACP,YAAMR,IAAIP,EAAE,SAASS,EAAE,SAASI,IAAIA,EAAEH,EAAE,OAAOV,EAAE,KAAK,CAAC,IAAIU,EAAE,OAAOV,EAAE,OAAO,OAAO,GAAGmB,IAAI,EAAE,OAAOnB,GAAG,UAAUA,EAAE,QAAQ,UAAUO,GAAG,MAAMF,EAAC;AAC/I,aAAuBY,gBAAAA;AAAAA,QACrB;AAAA,QACA;AAAA,UACE,YAAY;AAAA,UACZ,MAAM;AAAA,UACN,UAAU;AAAA,UACV,iBAAiBjB,EAAE;AAAA,UACnB,OAAOiQ,IAAG7O,IAAId,EAAE,eAAe,OAAO,SAASc,EAAE,OAAO,GAAGpB,EAAE,UAAU;AAAA,UACvE,gBAAgBA,EAAE;AAAA,UAClB,KAAK,CAACY,MAAM;AACV,gBAAIM;AACJ,mBAAOW,GAAEjB,IAAIM,IAAIZ,EAAE,UAAU,OAAO,SAASY,EAAE,eAAe,MAAMC,CAAC;AAAA,UACvE;AAAA,UACA,OAAO,kBAAkBnB,EAAE,eAAe,mBAAmBA,EAAE,SAAS,uBAAuBA,EAAE,WAAW;AAAA,UAC5G,SAAS,CAACY,MAAM;AACd,YAAAR,EAAE,QAAQ,cAAc,EAAE,OAAOJ,GAAG,IAAIY,EAAE,cAAa,CAAE,GAAGZ,EAAE,OAAO,OAAO,KAAKA,EAAE,KAAK,OAAO;AAAA,UACjG;AAAA,UACA,UAAU;AAAA,YACQc,gBAAAA,EAAE,QAAQ,EAAE,YAAY,kBAAkB,UAAUP,GAAG;AAAA,YACvDO,gBAAAA;AAAAA,cACd;AAAA,cACA;AAAA,gBACE,YAAY;AAAA,gBACZ,OAAO,kBAAkBd,EAAE,eAAe;AAAA,cAC1D;AAAA,YACA;AAAA,YAC4Bc,gBAAAA,EAAE,OAAO,EAAE,YAAY,mBAAmB,UAAUiB;AAAAA,eACjEhB,IAAIT,EAAE,UAAU,OAAO,SAASS,EAAE;AAAA,cACnCI;AAAA,cACAnB,EAAE;AAAA,cACFM,EAAE;AAAA,YAChB,EAAa,CAAE;AAAA,UACf;AAAA,QACA;AAAA,QACQN,EAAE;AAAA,MACV;AAAA,IACI,CAAC;AAAA,EACL,EAAG,GAAIU,EAAE,YAAYF,EAAE,IAAI,CAAC,CAAC,GAAG;AAChC;AACA,SAASwW,GAAG,EAAE,KAAK5W,GAAG,OAAOF,GAAG,SAASI,KAAK;AAC5C,QAAMP,IAAIO,EAAE,UAAU,MAAMD,IAAI,IAAI,KAAK,eAAeN,GAAG,EAAE,OAAO,OAAM,CAAE;AAC5E,SAAuBe,gBAAAA,EAAE,OAAO,EAAE,YAAY,cAAc,UAAUZ,EAAE,OAAO,IAAI,CAACO,MAAsBQ,gBAAAA,EAAE,WAAW,EAAE,YAAY,YAAY,UAAU;AAAA,IACzIH,gBAAAA,EAAE,UAAU,EAAE,YAAY,YAAY,UAAUT,EAAE,OAAOK,EAAE,OAAOD,EAAE,IAAI,CAAC,EAAC,CAAE;AAAA,IAC5EK,gBAAAA,EAAE2T,IAAI,EAAE,KAAKrU,GAAG,OAAOK,EAAE,SAAS,SAASH,EAAC,CAAE;AAAA,EAClE,EAAG,GAAII,EAAE,YAAYD,EAAE,IAAI,CAAC,CAAC,GAAG;AAChC;AACA,MAAM6B,KAAI;AACV,SAASsV,GAAG,EAAE,KAAKxX,GAAG,OAAOF,GAAG,SAASI,KAAK;AAC5C,SAAuBW,gBAAAA,EAAE,OAAO,EAAE,YAAY,YAAY,UAAU;AAAA,IAClDH,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,MAAM,OAAO,UAAUZ,EAAE,MAAM,IAAI,CAACH,MAAsBe,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,OAAO,QAAQf,EAAE,OAAO,KAAK,UAAUA,EAAE,MAAK,GAAIA,EAAE,OAAO,CAAC,EAAC,CAAE;AAAA,IAC7Le,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,OAAO,UAAUZ,EAAE,YAAYoC,KAAI,GAAG,OAAO,UAAUpC,EAAE,KAAK,IAAI,CAACH,MAAsBe,gBAAAA,EAAEiU,IAAI,EAAE,KAAK3U,GAAG,KAAKL,GAAG,SAASO,EAAC,GAAIP,EAAE,MAAM,EAAE,CAAC,EAAC,CAAE;AAAA,EACnM,GAAK;AACL;AACA,SAASgV,GAAG;AAAA,EACV,KAAK3U;AAAA,EACL,KAAKF;AAAA,EACL,SAASI;AACX,GAAG;AACD,MAAID;AACJ,QAAM,EAAE,OAAON,EAAC,IAAKG;AACrB,SAAuBY,gBAAAA;AAAAA,IACrB;AAAA,IACA;AAAA,MACE,YAAY;AAAA,MACZ,iBAAiBf,EAAE;AAAA,MACnB,MAAM;AAAA,MACN,UAAU;AAAA,MACV,OAAO,0BAA0BG,EAAE,OAAO,WAAWA,EAAE,QAAQ,SAASA,EAAE,OAAOoC,EAAC,cAAcA,KAAI,GAAG,sBAAsBvC,EAAE,eAAe,mBAAmBA,EAAE,SAAS,uBAAuBA,EAAE,WAAW;AAAA,MAChN,SAAS,CAACU,MAAML,EAAE,QAAQ,cAAc,EAAE,OAAOL,GAAG,IAAIU,EAAE,cAAa,CAAE;AAAA,MACzE,UAAUsB;AAAAA,SACP1B,IAAIC,EAAE,UAAU,OAAO,SAASD,EAAE;AAAA,QACnC,EAAE,OAAON,GAAG,UAAUA,EAAE,QAAQ,UAAU,IAAI,MAAM,EAAE,MAAMK,EAAE,QAAO,EAAG,KAAI,EAAE;AAAA,QAC9EL,EAAE;AAAA,QACFO,EAAE;AAAA,MACV;AAAA,IACA;AAAA,EACA;AACA;AACA,MAAM2X,KAAK;AACX,SAASpB,GAAG,EAAE,KAAKzW,GAAG,OAAOF,GAAG,SAASI,KAAK;AAC5C,SAAuBW,gBAAAA,EAAE,OAAO,EAAE,YAAY,qBAAqB,UAAU;AAAA,IAC3DA,gBAAAA,EAAE,OAAO,EAAE,YAAY,aAAa,MAAM,OAAO,UAAU;AAAA,MACzDH,gBAAAA,EAAE,OAAO,EAAE,YAAY,wBAAwB,UAAUR,EAAE,WAAW,OAAO,aAAa,YAAW,CAAE;AAAA,MACvGQ,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,UAAUZ,EAAE,MAAM,IAAI,CAACH,MAAsBe,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,OAAO,QAAQf,EAAE,OAAO,KAAK,UAAUA,EAAE,MAAK,GAAIA,EAAE,OAAO,CAAC,EAAC,CAAE;AAAA,IACtM,GAAO;AAAA,IACHG,EAAE,MAAM,IAAI,CAACH,MAAM;AACjB,YAAMM,IAAIN,EAAE,YAAYkY,KAAK;AAC7B,aAAuBhX,gBAAAA,EAAE,OAAO,EAAE,YAAY,gBAAgB,MAAM,OAAO,UAAU;AAAA,QACnEA,gBAAAA;AAAAA,UACd;AAAA,UACA;AAAA,YACE,YAAY;AAAA,YACZ,OAAO,wBAAwB,MAAMlB,EAAE,IAAI,QAAQ,CAAC;AAAA,YACpD,UAAU;AAAA,cACRA,EAAE,IAAI,eAA+Be,gBAAAA;AAAAA,gBACnC;AAAA,gBACA;AAAA,kBACE,MAAM;AAAA,kBACN,YAAY;AAAA,kBACZ,iBAAiBf,EAAE,IAAI;AAAA,kBACvB,SAAS,MAAMK,EAAE,eAAeL,EAAE,IAAI,SAAS,EAAE;AAAA,kBACjD,UAAUA,EAAE,IAAI,WAAW,MAAM;AAAA,gBACnD;AAAA,cACA;AAAA,cAC8Be,gBAAAA,EAAE,QAAQ,EAAE,YAAY,kBAAkB,UAAUf,EAAE,IAAI,SAAS,MAAK,CAAE;AAAA,YACxG;AAAA,UACA;AAAA,QACA;AAAA,QACwBe,gBAAAA,EAAE,OAAO,EAAE,YAAY,iBAAiB,OAAO,UAAUT,CAAC,OAAO,UAAUN,EAAE,KAAK,IAAI,CAACU,MAAsBK,gBAAAA,EAAEiU,IAAI,EAAE,KAAK3U,GAAG,KAAKK,GAAG,SAASH,EAAC,GAAIG,EAAE,MAAM,EAAE,CAAC,EAAC,CAAE;AAAA,MACzL,EAAO,GAAIV,EAAE,IAAI,SAAS,EAAE;AAAA,IACxB,CAAC;AAAA,EACL,GAAK;AACL;AACA,SAASsQ,GAAG,EAAE,KAAKjQ,GAAG,OAAOF,GAAG,SAASI,KAAK;AAC5C,QAAMP,IAAI,0CAA0CG,EAAE,MAAM,MAAM;AAClE,SAAuBe,gBAAAA,EAAE,OAAO,EAAE,YAAY,YAAY,OAAO,iBAAiBf,EAAE,QAAQ,MAAM,IAAI,UAAU;AAAA,IAC9Fe,gBAAAA,EAAE,OAAO,EAAE,YAAY,aAAa,MAAM,OAAO,UAAU;AAAA,MACzDH,gBAAAA,EAAE,OAAO,EAAE,YAAY,iBAAgB,CAAE;AAAA,MACzDZ,EAAE,QAAQ,IAAI,CAACG,MAAsBS,gBAAAA,EAAE,OAAO,EAAE,YAAY,iBAAiB,MAAM,gBAAgB,UAAUT,EAAE,IAAI,SAAS,MAAK,GAAIA,EAAE,IAAI,SAAS,EAAE,CAAC;AAAA,IAC7J,GAAO;AAAA,IACaY,gBAAAA,EAAE,OAAO,EAAE,YAAY,aAAa,MAAM,OAAO,UAAU;AAAA,MACzDH,gBAAAA,EAAE,OAAO,EAAE,YAAY,iBAAiB,UAAUgC,GAAExC,EAAE,MAAM,EAAE,QAAQ;AAAA,MACtFJ,EAAE,QAAQ,IAAI,CAACG,MAAsBS,gBAAAA,EAAE,OAAO,EAAE,YAAY,kBAAkB,UAAUT,EAAE,aAAa,IAAI,CAACI,MAAsBK,gBAAAA;AAAAA,QAChI;AAAA,QACA;AAAA,UACE,YAAY;AAAA,UACZ,gBAAgB;AAAA,UAChB,OAAO,kBAAkBL,EAAE,eAAe;AAAA,UAC1C,SAAS,CAACE,MAAMP,EAAE,QAAQ,cAAc,EAAE,OAAOK,GAAG,IAAIE,EAAE,cAAa,CAAE;AAAA,UACzE,UAAUF,EAAE;AAAA,QACtB;AAAA,QACQA,EAAE;AAAA,MACV,CAAO,EAAC,GAAIJ,EAAE,IAAI,SAAS,EAAE,CAAC;AAAA,IAC9B,GAAO;AAAA,IACaY,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,UAAU;AAAA,MAC1CH,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,OAAO,UAAUf,CAAC,IAAI,UAAUG,EAAE,MAAM,IAAI,CAACG,MAAsBS,gBAAAA,EAAE,OAAO,EAAE,YAAY,WAAW,cAAc,OAAOT,EAAE,OAAO,GAAG,UAA0BS,gBAAAA,EAAE,QAAQ,EAAE,YAAY,iBAAiB,UAAUT,EAAE,MAAK,CAAE,EAAC,GAAIA,EAAE,SAAS,CAAC,GAAG;AAAA,MAClSH,EAAE,QAAQ,IAAI,CAACG,MAAsBY,gBAAAA;AAAAA,QACnC;AAAA,QACA;AAAA,UACE,YAAY;AAAA,UACZ,wBAAwBZ,EAAE,IAAI,SAAS;AAAA,UACvC,OAAO,UAAUN,CAAC;AAAA,UAClB,UAAU;AAAA,YACRM,EAAE,UAAU,IAAI,CAACI,MAAM;AACrB,oBAAME,IAAI,MAAMF,EAAE;AAClB,qBAAuBQ,gBAAAA;AAAAA,gBACrB;AAAA,gBACA;AAAA,kBACE,YAAY;AAAA,kBACZ,gBAAgB;AAAA,kBAChB,iBAAiBR,EAAE,MAAM;AAAA,kBACzB,MAAM;AAAA,kBACN,UAAU;AAAA,kBACV,OAAO,yBAAyBA,EAAE,MAAM,YAAYA,EAAE,SAAS,UAAUA,EAAE,MAAME,CAAC,WAAWA,CAAC,oBAAoBF,EAAE,MAAM,eAAe,mBAAmBA,EAAE,MAAM,SAAS;AAAA,kBAC7K,SAAS,CAACR,MAAM;AACd,oBAAAA,EAAE,mBAAmBG,EAAE,QAAQ,cAAc,EAAE,OAAOK,EAAE,OAAO;AAAA,kBACjE;AAAA,kBACA,UAAU;AAAA,oBACRC,EAAE,OAAOD,EAAE,MAAM,OAAO,OAAO;AAAA,oBAC/B;AAAA,oBACAA,EAAE,MAAM;AAAA,kBAC5B;AAAA,gBACA;AAAA,gBACgBA,EAAE,MAAM;AAAA,cACxB;AAAA,YACY,CAAC;AAAA,YACDP,EAAE,aAAa,QAAwBY,gBAAAA,EAAE,OAAO,EAAE,YAAY,iBAAiB,OAAO,OAAOZ,EAAE,SAAS,IAAG,CAAE;AAAA,UACzH;AAAA,QACA;AAAA,QACQG,EAAE,IAAI,SAAS;AAAA,MACvB,CAAO;AAAA,IACP,EAAK,CAAE;AAAA,EACP,GAAK;AACL;AACA,SAAS+P,GAAG,EAAE,KAAKhQ,GAAG,OAAOF,EAAC,GAAI;AAChC,SAAuBe,gBAAAA,EAAE,OAAO,EAAE,YAAY,oBAAoB,OAAO,kBAAkBf,EAAE,QAAQ,MAAM,IAAI,UAAU;AAAA,IACvGY,gBAAAA,EAAE,OAAO,EAAE,YAAY,cAAc,MAAM,OAAO,UAAUZ,EAAE,QAAQ,IAAI,CAACI,MAAsBQ,gBAAAA,EAAE,OAAO,EAAE,YAAY,kBAAkB,MAAM,gBAAgB,UAAUR,EAAE,IAAI,SAAS,MAAK,GAAIA,EAAE,IAAI,SAAS,EAAE,CAAC,EAAC,CAAE;AAAA,IACvNQ,gBAAAA,EAAE,OAAO,EAAE,YAAY,YAAY,MAAM,OAAO,UAAUZ,EAAE,QAAQ,IAAI,CAACI,MAAsBQ,gBAAAA;AAAAA,MAC7G;AAAA,MACA;AAAA,QACE,YAAY;AAAA,QACZ,wBAAwBR,EAAE,IAAI,SAAS;AAAA,QACvC,UAAUA,EAAE,OAAO,IAAI,CAACP,MAAsBkB,gBAAAA;AAAAA,UAC5C;AAAA,UACA;AAAA,YACE,YAAY;AAAA,YACZ,gBAAgB,OAAOlB,EAAE,MAAM;AAAA,YAC/B,iBAAiBA,EAAE;AAAA,YACnB,MAAM;AAAA,YACN,UAAU;AAAA,YACV,OAAO,kBAAkBA,EAAE,eAAe,mBAAmBA,EAAE,SAAS,uBAAuBA,EAAE,WAAW;AAAA,YAC5G,SAAS,CAACM,MAAMD,EAAE,QAAQ,cAAc,EAAE,OAAOL,GAAG,IAAIM,EAAE,cAAa,CAAE;AAAA,YACzE,UAAU;AAAA,cACRN,EAAE,SAAS,KAAKW,EAAE,OAAOX,EAAE,OAAO,OAAO,IAAI;AAAA,cAC7CA,EAAE;AAAA,YAChB;AAAA,UACA;AAAA,UACUA,EAAE;AAAA,QACZ,CAAS;AAAA,MACT;AAAA,MACMO,EAAE,IAAI,SAAS;AAAA,IACrB,CAAK,EAAC,CAAE;AAAA,EACR,GAAK;AACL;AACA,SAASiQ,GAAG,EAAE,KAAKnQ,GAAG,OAAOF,GAAG,SAASI,KAAK;AAC5C,SAAuBQ,gBAAAA,EAAE,OAAO,EAAE,YAAY,0BAA0B,OAAO,mBAAmBZ,EAAE,WAAW,IAAI,UAAUA,EAAE,MAAM,IAAI,CAACH,GAAGM,MAAsBS,gBAAAA,EAAE,OAAO,EAAE,YAAY,aAAa,MAAM,OAAO,UAAUf,EAAE,KAAK,IAAI,CAACU,MAAsBK,gBAAAA;AAAAA,IAC9PwP;AAAA,IACA;AAAA,MACE,KAAKlQ;AAAA,MACL,MAAMK;AAAA,MACN,SAASH;AAAA,IACf;AAAA,IACII,EAAE,YAAYD,EAAE,IAAI;AAAA,EACxB,CAAG,EAAC,GAAI,QAAQJ,CAAC,EAAE,CAAC,EAAC,CAAE;AACvB;AACA,SAASiQ,GAAG;AAAA,EACV,KAAKlQ;AAAA,EACL,MAAMF;AAAA,EACN,SAASI;AACX,GAAG;AACD,QAAMP,IAAIW,EAAE,WAAWR,EAAE,IAAI;AAC7B,SAAuBe,gBAAAA;AAAAA,IACrB;AAAA,IACA;AAAA,MACE,YAAY;AAAA,MACZ,MAAM;AAAA,MACN,aAAaP,EAAE,YAAYR,EAAE,IAAI;AAAA,MACjC,cAAc,OAAOA,EAAE,OAAO;AAAA,MAC9B,cAAc,OAAOA,EAAE,OAAO;AAAA,MAC9B,UAAU;AAAA,QACQY,gBAAAA,EAAE,QAAQ,EAAE,YAAY,cAAc,UAAUf,GAAG;AAAA,QACnDe,gBAAAA,EAAE,OAAO,EAAE,YAAY,gBAAgB,UAAUZ,EAAE,QAAQ,IAAI,CAACG,MAAsBY,gBAAAA,EAAE,OAAO,EAAE,YAAY,YAAY,wBAAwBZ,EAAE,IAAI,SAAS,IAAI,UAAU;AAAA,UAC5KS,gBAAAA,EAAE,QAAQ,EAAE,YAAY,kBAAkB,UAAUT,EAAE,IAAI,SAAS,OAAO;AAAA,UAC1FA,EAAE,OAAO,IAAI,CAACI,MAAM;AAClB,kBAAME,IAAIP,EAAE,iBAAiB,MAAM,IAAIK,EAAE,EAAE;AAC3C,mBAAuBQ,gBAAAA;AAAAA,cACrB;AAAA,cACA;AAAA,gBACE,YAAY;AAAA,gBACZ,gBAAgB,OAAOR,EAAE,MAAM;AAAA,gBAC/B,iBAAiBA,EAAE;AAAA,gBACnB,qBAAqB,OAAOE,CAAC;AAAA,gBAC7B,MAAM;AAAA,gBACN,UAAU;AAAA,gBACV,OAAO,kBAAkBF,EAAE,eAAe,mBAAmBA,EAAE,SAAS,uBAAuBA,EAAE,WAAW;AAAA,gBAC5G,SAAS,CAACR,MAAM;AACd,sBAAIA,EAAE,gBAAe,GAAIA,EAAE,WAAWA,EAAE,SAAS;AAC/C,oBAAAG,EAAE,qBAAqBK,EAAE,EAAE;AAC3B;AAAA,kBACF;AACA,kBAAAL,EAAE,QAAQ,cAAc,EAAE,OAAOK,GAAG,IAAIR,EAAE,cAAa,CAAE,GAAGQ,EAAE,OAAO,OAAO,KAAKA,EAAE,KAAK,OAAO;AAAA,gBACjG;AAAA,gBACA,UAAU;AAAA,kBACRA,EAAE,SAAS,KAAK,GAAGC,EAAE,OAAOD,EAAE,OAAO,OAAO,CAAC;AAAA,kBAC7CA,EAAE;AAAA,gBACpB;AAAA,cACA;AAAA,cACcA,EAAE;AAAA,YAChB;AAAA,UACU,CAAC;AAAA,UACDJ,EAAE,YAAY,KAAqBS,gBAAAA;AAAAA,YACjC;AAAA,YACA;AAAA,cACE,YAAY;AAAA,cACZ,SAAS,CAACL,MAAM;AACd,gBAAAA,EAAE,gBAAe,GAAIL,EAAE,QAAQ,iBAAiB;AAAA,kBAC9C,MAAMF,EAAE;AAAA,kBACR,WAAW,CAAC,GAAGG,EAAE,QAAQ,GAAGA,EAAE,YAAY;AAAA,kBAC1C,cAAcA,EAAE;AAAA,gBAClC,CAAiB;AAAA,cACH;AAAA,cACA,UAAUyC,GAAExC,EAAE,MAAM,EAAE,KAAKD,EAAE,SAAS;AAAA,YACpD;AAAA,UACA;AAAA,QACA,EAAS,GAAIA,EAAE,IAAI,SAAS,EAAE,CAAC,EAAC,CAAE;AAAA,MAClC;AAAA,IACA;AAAA,EACA;AACA;AACA,SAASqQ,GAAG,EAAE,KAAKtQ,GAAG,SAASF,EAAC,GAAI;AAClC,MAAIM;AACJ,QAAMF,IAAIF,EAAE,UAAU,OAAOL,IAAIG,EAAE,aAAa4C,GAAE5C,EAAE,MAAM,EAAE,WAAWG,IAAID,EAAE,mBAAmB,cAAcE,EAAE,IAAI,GAAGG,IAAIL,EAAE,mBAAmB,UAAUE,EAAE,IAAI,GAAGK,IAAI;AAAA,IACrKT,EAAE,cAAc4U,GAAG5U,EAAE,WAAW,IAAI;AAAA,IACpCG,IAAI,GAAG8U,GAAG,UAAU,IAAI9U,CAAC,OAAO;AAAA,IAChCI,KAAK,QAAQA,MAAM,SAAS,UAAU,OAAOA,KAAK,WAAW,GAAGA,CAAC,OAAOA,CAAC,KAAK;AAAA,EAClF,EAAI,OAAO,OAAO,EAAE,KAAK,GAAG,KAAK,QAAQ,IAAIe,GAAE,IAAI;AACjDM,EAAAA,GAAE,OAAO1B,EAAE,UAAU,EAAE,OAAO,GAAG,MAAMA,EAAE,UAAU,IAAI,IAAI,CAACA,CAAC,CAAC;AAC9D,QAAMS,IAAIW,GAAEtB,EAAE,eAAe;AAC7B,SAAOW,EAAE,UAAUX,EAAE,iBAAiB4B,GAAE,MAAM;AAC5C,UAAM9B,IAAI,EAAE;AACZ,QAAI,CAACA,KAAK,OAAO,iBAAiB,IAAK;AACvC,QAAIO,IAAI;AACR,UAAMY,IAAI,IAAI,eAAe,CAACC,MAAM;AAClC,YAAML,IAAIK,EAAE,CAAC,GAAGR,KAAKG,KAAK,OAAO,SAASA,EAAE,YAAY,UAAUf,EAAE;AACpE,2BAAqBO,CAAC,GAAGA,IAAI,sBAAsB,MAAM;AACvD,cAAMW,IAAIL,EAAE;AACZ,YAAI,EAAEK,KAAK,QAAQA,EAAE,QAAS;AAC9B,cAAM,IAAI2U,GAAG3U,GAAGN,CAAC;AACjB,aAAK,MAAMR,EAAE,QAAO,EAAG,QAAQA,EAAE,QAAQ,CAAC,KAAKA,EAAE,WAAW,CAAC;AAAA,MAC/D,CAAC;AAAA,IACH,CAAC;AACD,WAAOe,EAAE,QAAQnB,CAAC,GAAG,MAAM;AACzB,2BAAqBO,CAAC,GAAGY,EAAE,WAAU;AAAA,IACvC;AAAA,EACF,GAAG,CAACf,CAAC,CAAC,GAAmBa,gBAAAA;AAAAA,IACvB;AAAA,IACA;AAAA,MACE,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,KAAKlB;AAAA,MACL,kBAAkBG,EAAE;AAAA,MACpB,uBAAuBO,MAAM,SAAS,SAAS;AAAA,MAC/C,OAAOE;AAAA,MACP,OAAOsP,IAAGzP,IAAIN,EAAE,eAAe,OAAO,SAASM,EAAE,IAAI;AAAA,MACrD,UAAU;AAAA,QACRN,EAAE,kBAAkB,MAAsBY,gBAAAA,EAAEkV,IAAI,EAAE,KAAK5V,GAAG,OAAOE,EAAE,OAAO,YAAYA,EAAE,MAAM,SAASJ,GAAG;AAAA,QAC1FY,gBAAAA,EAAE,OAAO,EAAE,YAAY,QAAQ,aAAaR,EAAE,MAAM,UAAUA,EAAE,UAA0BQ,gBAAAA,EAAE2T,IAAI,EAAE,KAAKrU,GAAG,OAAOE,EAAE,SAAS,SAASJ,EAAC,CAAE,IAAII,EAAE,WAA2BQ,gBAAAA,EAAEqW,IAAI,EAAE,KAAK/W,GAAG,OAAOE,EAAE,UAAU,SAASJ,EAAC,CAAE,IAAII,EAAE,OAAuBQ,gBAAAA,EAAEoW,IAAI,EAAE,KAAK9W,GAAG,OAAOE,EAAE,MAAM,SAASJ,EAAC,CAAE,IAAII,EAAE,aAA6BQ,gBAAAA,EAAEkW,IAAI,EAAE,KAAK5W,GAAG,OAAOE,EAAE,YAAY,SAASJ,EAAC,CAAE,IAAII,EAAE,mBAAmCQ,gBAAAA,EAAEuP,IAAI,EAAE,KAAKjQ,GAAG,OAAOE,EAAE,kBAAkB,SAASJ,EAAC,CAAE,IAAII,EAAE,kBAAkCQ,gBAAAA,EAAEsP,IAAI,EAAE,KAAKhQ,GAAG,OAAOE,EAAE,iBAAiB,SAASJ,EAAC,CAAE,IAAII,EAAE,uBAAuCQ,gBAAAA,EAAEyP,IAAI,EAAE,KAAKnQ,GAAG,OAAOE,EAAE,sBAAsB,SAASJ,EAAC,CAAE,IAAII,EAAE,mBAAmCQ,gBAAAA,EAAE+V,IAAI,EAAE,KAAKzW,GAAG,OAAOE,EAAE,kBAAkB,SAASJ,EAAC,CAAE,IAAII,EAAE,WAA2BQ,gBAAAA,EAAE8W,IAAI,EAAE,KAAKxX,GAAG,OAAOE,EAAE,UAAU,SAASJ,EAAC,CAAE,IAAoBe,gBAAAA,EAAE,OAAO,EAAE,YAAY,eAAe,UAAU;AAAA,UAC55B;AAAA,UACAX,EAAE;AAAA,UACF;AAAA,QACV,EAAS,CAAE,EAAC,CAAE;AAAA,MACd;AAAA,IACA;AAAA,EACA;AACA;AACA,SAASyQ,GAAG3Q,GAAGF,GAAG;AAChB,QAAMI,IAAI,IAAI+U,GAAGnV,CAAC;AAClB,SAAOkU,GAAGc,GAAGxE,IAAI,EAAE,KAAKpQ,GAAG,SAASJ,EAAC,CAAE,GAAGE,CAAC,GAAG;AAAA,IAC5C,KAAKE;AAAA,IACL,UAAU;AACR8T,MAAAA,GAAG,MAAMhU,CAAC,GAAGE,EAAE,QAAO;AAAA,IACxB;AAAA,EACJ;AACA;ACz0CA,MAAM2P,KAAI,CAAC,MAAM,IAAIjQ,EAAE,OAAO,CAAC,IAAI,MAAM6B,KAAI,CAAC,MAAM,IAAI7B,EAAE,YAAY,CAAC,IAAI;AAC3E,SAASsB,GAAE,GAAG;AACZ,SAAO;AAAA,IACL,IAAI,EAAE;AAAA,IACN,SAAS,EAAE;AAAA,IACX,OAAO,EAAE;AAAA,IACT,OAAO2O,GAAE,EAAE,KAAK;AAAA,IAChB,KAAKA,GAAE,EAAE,GAAG;AAAA,IACZ,UAAUpO,GAAE,EAAE,KAAK;AAAA,IACnB,QAAQA,GAAE,EAAE,GAAG;AAAA,IACf,QAAQ,EAAE;AAAA,IACV,KAAK,EAAE;AAAA,IACP,SAAS,EAAE;AAAA,IACX,iBAAiB,EAAE;AAAA,IACnB,aAAa,EAAE;AAAA,IACf,WAAW,EAAE;AAAA,IACb,YAAY,EAAE;AAAA,IACd,eAAe,EAAE;AAAA,IACjB,KAAK;AAAA,EACT;AACA;AACA,SAASW,GAAE,GAAG/B,GAAGK,GAAG;AAClB,QAAMD,IAAI,EAAE,MAAM,EAAE,KAAI;AACxB,SAAOJ,IAAI;AAAA,IACT,GAAGI;AAAA,IACH,GAAGC,KAAK,OAAO,CAAA,IAAK,EAAE,OAAOA,EAAC;AAAA,IAC9B,cAAcd,EAAE,OAAOS,EAAE,YAAY;AAAA,IACrC,YAAYT,EAAE,OAAOS,EAAE,UAAU;AAAA,IACjC,aAAaT,EAAE,OAAOS,EAAE,WAAW;AAAA,IACnC,WAAWT,EAAE,OAAOS,EAAE,SAAS;AAAA,EACnC,IAAMK,KAAK,OAAOD,IAAI,EAAE,GAAGA,GAAG,OAAOC,EAAC;AACtC;AACA,MAAMqP,KAAI;AAAA,EACR;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAG7N,KAAI;AAAA,EACL;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACA,SAASd,GAAE,GAAGf,GAAG;AACf,SAAO,EAAE,UAAUA,CAAC;AACtB;AACK,MAACuQ,KAAKlB;AAAAA,EACT,SAASrP,GAAGK,GAAG;AACb,UAAMD,IAAII,GAAE,IAAI,GAAGe,IAAIf,GAAE,IAAI,GAAGZ,IAAIY,GAAER,CAAC;AACvC,IAAAJ,EAAE,UAAUI;AACZ,UAAMkB,IAAIV,GAAkB,oBAAI,IAAG,CAAE,GAAG,GAAGN,CAAC,IAAIe,GAAE,CAAC,GAAGK,IAAId,GAAE,EAAE,GAAG0B,IAAI1B,GAAE,EAAE,GAAGE,IAAIkB,GAAE,MAAM;AACtF,MAAAN,EAAE,YAAYA,EAAE,UAAU,IAAI,eAAe,MAAM;AACjD,QAAAA,EAAE,UAAU,IAAIY,EAAE,WAAWhC,EAAE,CAACR,MAAMA,IAAI,CAAC;AAAA,MAC7C,CAAC;AAAA,IACH,GAAG,CAAA,CAAE,GAAG2B,IAAIkO;AAAAA,MACV,OAAO;AAAA,QACL,MAAM7P,GAAGK,GAAGe,GAAG;AACb,UAAAI,EAAE,QAAQ,IAAIxB,GAAG,EAAE,IAAIK,GAAG,SAASe,GAAG,GAAGJ,EAAC;AAAA,QAC5C;AAAA,QACA,OAAOhB,GAAGK,GAAG;AACX,gBAAMe,IAAII,EAAE,QAAQ,IAAIxB,CAAC;AACzB,UAAAoB,MAAMA,EAAE,UAAUf,GAAGW,EAAC;AAAA,QACxB;AAAA,QACA,QAAQhB,GAAG;AACT,UAAAwB,EAAE,QAAQ,OAAOxB,CAAC,KAAKgB,EAAC;AAAA,QAC1B;AAAA,MACR;AAAA,MACM,CAACA,CAAC;AAAA,IACR;AACI2B,IAAAA,GAAE,MAAM;AACN,UAAIb,GAAGL;AACP,YAAMzB,IAAIU,EAAE;AACZ,UAAI,CAACV,EAAG;AACR,MAAAwC,EAAE,UAAU;AACZ,YAAMnC,IAAI;AAAA,QACR,cAAc,CAACF,MAAMD,EAAE,QAAQ,eAAeU,GAAE,EAAE,MAAM,gBAAgB,KAAKT,EAAC,CAAE,IAAI;AAAA,QACpF,gBAAgB,CAACA,MAAMD,EAAE,QAAQ,iBAAiBU,GAAE,EAAE,MAAM,kBAAkB,KAAKT,EAAC,CAAE,IAAI;AAAA,QAC1F,kBAAkB,CAACA,MAAMD,EAAE,QAAQ,mBAAmBU,GAAE,EAAE,MAAM,oBAAoB,KAAKT,EAAC,CAAE,IAAI;AAAA,QAChG,kBAAkB,CAACA,MAAMD,EAAE,QAAQ,mBAAmBU,GAAE,EAAE,MAAM,oBAAoB,KAAKT,EAAC,CAAE,IAAI;AAAA,QAChG,iBAAiB,CAACA,MAAMD,EAAE,QAAQ,kBAAkBU,GAAE,EAAE,MAAM,mBAAmB,KAAKT,EAAC,CAAE,IAAI;AAAA,MACrG,GAASiB,IAAI;AAAA,QACL,GAAG8O,GAAGhQ,EAAE,OAAO;AAAA,QACf,OAAOG;AAAA,QACP,YAAYsB;AAAA,QACZ,OAAO;AAAA,UACL,eAAe,CAACxB,MAAM;AACpB,kBAAMP,IAAIM,EAAE,QAAQ;AACpB,YAAAN,KAAKA,EAAE,EAAE,GAAGiB,GAAEV,CAAC,GAAG,IAAIA,EAAE,IAAI;AAAA,UAC9B;AAAA,UACA,iBAAiB,CAACA,MAAM;AACtB,gBAAIP,GAAGK;AACP,oBAAQA,KAAKL,IAAIM,EAAE,SAAS,oBAAoB,OAAO,SAASD,EAAE,KAAKL,GAAGO,CAAC;AAAA,UAC7E;AAAA,UACA,mBAAmB,CAACA,MAAM;AACxB,gBAAIP,GAAGK;AACP,oBAAQA,KAAKL,IAAIM,EAAE,SAAS,sBAAsB,OAAO,SAASD,EAAE,KAAKL,GAAGO,CAAC;AAAA,UAC/E;AAAA,UACA,mBAAmB,CAACA,MAAM;AACxB,gBAAIP,GAAGK;AACP,oBAAQA,KAAKL,IAAIM,EAAE,SAAS,sBAAsB,OAAO,SAASD,EAAE,KAAKL,GAAGO,CAAC;AAAA,UAC/E;AAAA,QACV;AAAA,MACA,GAASC,IAAIwP,GAAE5P,GAAGoB,CAAC;AACb,MAAAS,EAAE,UAAUzB;AACZ,YAAMG,IAAIH,EAAE,KAAKW,IAAI,MAAM;AACzB,cAAMZ,IAAII,EAAE,aAAY;AACxB,eAAO8B,GAAElC,EAAE,MAAMA,EAAE,OAAOA,EAAE,KAAK;AAAA,MACnC,GAAG6B,KAAI;AAAA,QACLzB,EAAE;AAAA,UACA;AAAA,UACA,CAAC,EAAE,OAAOJ,GAAG,IAAIP,EAAC,MAAO;AACvB,gBAAIK,GAAGH;AACP,oBAAQA,KAAKG,IAAIC,EAAE,SAAS,eAAe,OAAO,SAASJ,EAAE,KAAKG,GAAG;AAAA,cACnE,OAAOkB,GAAEhB,CAAC;AAAA,cACV,IAAIP,KAAK;AAAA,cACT,MAAMmB,EAAC;AAAA,YACrB,CAAa;AAAA,UACH;AAAA,QACV;AAAA,QACQR,EAAE;AAAA,UACA;AAAA,UACA,CAAC,EAAE,MAAMJ,GAAG,QAAQP,EAAC,MAAO;AAC1B,gBAAIK,GAAGH;AACP,oBAAQA,KAAKG,IAAIC,EAAE,SAAS,cAAc,OAAO,SAASJ,EAAE,KAAKG,GAAG;AAAA,cAClE,MAAMJ,EAAE,OAAOM,CAAC;AAAA,cAChB,SAASN,EAAE,YAAYM,CAAC;AAAA,cACxB,QAAQP,KAAK;AAAA,cACb,MAAMmB,EAAC;AAAA,YACrB,CAAa;AAAA,UACH;AAAA,QACV;AAAA,QACQR,EAAE;AAAA,UACA;AAAA,UACA,CAAC,EAAE,OAAOJ,GAAG,KAAKP,EAAC,MAAO;AACxB,gBAAIK,GAAGH;AACP,oBAAQA,KAAKG,IAAIC,EAAE,SAAS,WAAW,OAAO,SAASJ,EAAE,KAAKG,GAAG;AAAA,cAC/D,OAAOJ,EAAE,OAAOM,CAAC;AAAA,cACjB,KAAKN,EAAE,OAAOD,CAAC;AAAA,cACf,UAAUC,EAAE,YAAYM,CAAC;AAAA,cACzB,QAAQN,EAAE,YAAYD,CAAC;AAAA,cACvB,MAAMmB,EAAC;AAAA,YACrB,CAAa;AAAA,UACH;AAAA,QACV;AAAA,QACQR,EAAE,GAAG,YAAY,MAAM;AACrB,cAAIJ,GAAGP;AACP,kBAAQA,KAAKO,IAAID,EAAE,SAAS,aAAa,OAAO,SAASN,EAAE,KAAKO,CAAC;AAAA,QACnE,CAAC;AAAA,QACDI,EAAE;AAAA,UACA;AAAA,UACA,CAAC,EAAE,OAAOJ,GAAG,MAAMP,EAAC,MAAO;AACzB,gBAAIK,GAAGH;AACP,oBAAQA,KAAKG,IAAIC,EAAE,SAAS,aAAa,OAAO,SAASJ,EAAE,KAAKG,GAAG;AAAA,cACjE,OAAOJ,EAAE,OAAOM,EAAE,WAAW;AAAA,cAC7B,KAAKN,EAAE,OAAOM,EAAE,SAAS;AAAA,cACzB,UAAUN,EAAE,YAAYM,EAAE,WAAW;AAAA,cACrC,QAAQN,EAAE,YAAYM,EAAE,SAAS;AAAA,cACjC,MAAMkC,GAAEzC,GAAGO,CAAC;AAAA,YAC1B,CAAa;AAAA,UACH;AAAA,QACV;AAAA;AAAA;AAAA,QAGQI,EAAE;AAAA,UACA;AAAA,UACA,CAACJ,MAAM;AACL,gBAAIP,GAAGK;AACP,oBAAQA,KAAKL,IAAIM,EAAE,SAAS,cAAc,OAAO,SAASD,EAAE,KAAKL,GAAGO,EAAE,IAAI,CAACL,MAAMqB,GAAErB,CAAC,CAAC,CAAC;AAAA,UACxF;AAAA,QACV;AAAA,QACQS,EAAE;AAAA,UACA;AAAA,UACA,CAAC,EAAE,OAAOJ,QAAQ;AAChB,gBAAIP,GAAGK;AACP,oBAAQA,KAAKL,IAAIM,EAAE,SAAS,cAAc,OAAO,SAASD,EAAE,KAAKL,GAAG,EAAE,OAAOuB,GAAEhB,CAAC,GAAG,MAAMY,EAAC,GAAI;AAAA,UAChG;AAAA,QACV;AAAA,QACQR,EAAE;AAAA,UACA;AAAA,UACA,CAAC,EAAE,OAAOJ,QAAQ;AAChB,gBAAIP,GAAGK;AACP,oBAAQA,KAAKL,IAAIM,EAAE,SAAS,gBAAgB,OAAO,SAASD,EAAE,KAAKL,GAAG,EAAE,OAAOuB,GAAEhB,CAAC,GAAG,MAAMY,EAAC,GAAI;AAAA,UAClG;AAAA,QACV;AAAA,QACQR,EAAE;AAAA,UACA;AAAA,UACA,CAAC,EAAE,OAAOJ,QAAQ;AAChB,gBAAIP,GAAGK;AACP,oBAAQA,KAAKL,IAAIM,EAAE,SAAS,gBAAgB,OAAO,SAASD,EAAE,KAAKL,GAAG,EAAE,OAAOuB,GAAEhB,CAAC,GAAG,MAAMY,EAAC,GAAI;AAAA,UAClG;AAAA,QACV;AAAA,QACQR,EAAE;AAAA,UACA;AAAA,UACA,CAAC,EAAE,MAAMJ,GAAG,WAAWP,GAAG,cAAcK,QAAQ;AAC9C,gBAAIH,GAAGsC;AACP,oBAAQA,KAAKtC,IAAII,EAAE,SAAS,kBAAkB,OAAO,SAASkC,EAAE,KAAKtC,GAAG;AAAA,cACtE,MAAMD,EAAE,OAAOM,CAAC;AAAA,cAChB,SAASN,EAAE,YAAYM,CAAC;AAAA,cACxB,WAAWP,EAAE,IAAI,CAACqC,MAAMd,GAAEc,CAAC,CAAC;AAAA,cAC5B,cAAchC,EAAE,IAAI,CAACgC,MAAMd,GAAEc,CAAC,CAAC;AAAA,cAC/B,MAAMlB,EAAC;AAAA,YACrB,CAAa;AAAA,UACH;AAAA,QACV;AAAA,QACQR,EAAE;AAAA,UACA;AAAA,UACA,CAAC,EAAE,MAAMJ,QAAQ;AACf,gBAAIP,GAAGK;AACP,oBAAQA,KAAKL,IAAIM,EAAE,SAAS,eAAe,OAAO,SAASD,EAAE,KAAKL,GAAG,EAAE,MAAMC,EAAE,OAAOM,CAAC,GAAG,SAASN,EAAE,YAAYM,CAAC,GAAG;AAAA,UACvH;AAAA,QACV;AAAA,QACQI,EAAE,GAAG,WAAW,CAAC,EAAE,WAAWJ,EAAC,MAAO;AACpC,cAAIP,GAAGK;AACP,kBAAQA,KAAKL,IAAIM,EAAE,SAAS,YAAY,OAAO,SAASD,EAAE,KAAKL,GAAGO,CAAC;AAAA,QACrE,CAAC;AAAA,MACT;AACM,cAAQsB,KAAKK,IAAI5B,EAAE,SAAS,YAAY,QAAQuB,EAAE,KAAKK,GAAGvB,CAAC,GAAG,MAAM;AAClE,QAAAiC,EAAE,UAAU;AACZ,mBAAWrC,KAAK6B,GAAG,CAAA7B,EAAC;AACpB,QAAAC,EAAE,QAAO,GAAIyB,EAAE,UAAU,MAAML,EAAE,QAAQ,MAAK;AAAA,MAChD;AAAA,IACF,GAAG,CAACG,CAAC,CAAC,GAAGI,GAAEpB,GAAG,OAAO,EAAE,QAAQ,MAAM;AACnC,UAAIX;AACJ,eAASA,IAAI6B,EAAE,YAAY,OAAO,SAAS7B,EAAE,QAAQ;AAAA,IACvD,EAAC,IAAK,EAAE;AACR,UAAMsC,IAAIH,GAAE,IAAI,CAACnC,MAAMM,EAAEN,CAAC,CAAC;AAC3B2C,IAAAA,GAAE,MAAM;AACN,UAAIvC;AACJ,YAAMJ,KAAKI,IAAIyB,EAAE,YAAY,OAAO,SAASzB,EAAE;AAC/C,UAAI,CAACJ,EAAG;AACR,YAAMK,IAAI,CAAA;AACV,UAAIe,IAAI;AACR,MAAAe,GAAE,QAAQ,CAAC5B,GAAGQ,MAAM;AAClB,QAAAM,GAAErB,GAAGO,CAAC,MAAM+B,EAAEvB,CAAC,MAAMV,EAAEE,CAAC,IAAI+B,EAAEvB,CAAC,GAAGK,IAAI;AAAA,MACxC,CAAC,GAAGA,KAAKpB,EAAE,WAAWK,CAAC;AAAA,IACzB,GAAGiC,CAAC;AACJ,UAAMrB,IAAIX,EAAE,QAAQY,IAAIJ,GAAEG,CAAC;AAC3B0B,IAAAA,GAAE,MAAM;AACN,UAAItC;AACJ,YAAML,KAAKK,IAAIwB,EAAE,YAAY,OAAO,SAASxB,EAAE;AAC/C,UAAI,EAAE,CAACL,KAAK,CAACiB,IAAI;AACf,YAAIC,EAAE,YAAYD,GAAG;AACnB,UAAAC,EAAE,UAAU;AACZ;AAAA,QACF;AACA,QAAAlB,EAAE,cAAciB,CAAC;AAAA,MACnB;AAAA,IACF,GAAG,CAACA,CAAC,CAAC;AACN,UAAMK,IAAI,CAAA;AACV,eAAW,CAACtB,GAAG,EAAE,IAAIK,GAAG,SAASe,EAAC,CAAE,KAAKI,EAAE,SAAS;AAClD,YAAMpB,IAAIK,GAAEH,GAAGc,CAAC;AAChB,MAAAhB,KAAK,QAAQkB,EAAE,KAAKiB,GAAEnC,GAAGC,GAAGL,CAAC,CAAC;AAAA,IAChC;AACA,WAAuByC,gBAAAA,GAAEC,IAAG,EAAE,UAAU;AAAA,MACtBqN,gBAAAA,GAAE,OAAO,EAAE,KAAKrP,GAAG,WAAWJ,EAAE,WAAW,OAAOA,EAAE,MAAK,CAAE;AAAA,MAC3EgB;AAAA,IACN,GAAO;AAAA,EACL;AACF;AACA,SAASb,GAAE,GAAGH,GAAG;AACf,MAAIK,GAAGD,GAAGmB,GAAG3B,GAAGsB;AAChB,UAAQlB,EAAE,MAAI;AAAA,IACZ,KAAK;AACH,cAAQK,IAAI,EAAE,iBAAiB,OAAO,SAASA,EAAE,KAAK,GAAGE,GAAEP,EAAE,GAAG,CAAC;AAAA,IACnE,KAAK;AACH,cAAQI,IAAI,EAAE,mBAAmB,OAAO,SAASA,EAAE,KAAK,GAAGJ,EAAE,GAAG;AAAA,IAClE,KAAK;AACH,cAAQuB,IAAI,EAAE,qBAAqB,OAAO,SAASA,EAAE,KAAK,GAAGvB,EAAE,GAAG;AAAA,IACpE,KAAK;AACH,cAAQJ,IAAI,EAAE,qBAAqB,OAAO,SAASA,EAAE,KAAK,GAAGI,EAAE,GAAG;AAAA,IACpE,KAAK,mBAAmB;AACtB,YAAME,IAAIF,EAAE;AACZ,cAAQkB,IAAI,EAAE,oBAAoB,OAAO,SAASA,EAAE,KAAK,GAAG;AAAA,QAC1D,MAAMhB,EAAE;AAAA,QACR,WAAWA,EAAE;AAAA,QACb,WAAWA,EAAE,UAAU,IAAIW,EAAC;AAAA,QAC5B,cAAcX,EAAE,aAAa,IAAIW,EAAC;AAAA,QAClC,MAAMX,EAAE;AAAA,MAChB,CAAO;AAAA,IACH;AAAA,IACA;AACE,aAAO;AAAA,EACb;AACA;AACA,SAASK,GAAE,GAAG;AACZ,SAAO;AAAA,IACL,OAAOM,GAAE,EAAE,KAAK;AAAA,IAChB,UAAU,EAAE;AAAA,IACZ,UAAU,EAAE;AAAA,IACZ,MAAM,EAAE;AAAA,EACZ;AACA;AACA,MAAM8O,KAAqB,oBAAI,IAAI;AAAA,EACjC,GAAGD;AAAA,EACH;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,SAASE,GAAG,GAAG;AACb,QAAM5P,IAAI,CAAA;AACV,aAAW,CAACK,GAAGD,CAAC,KAAK,OAAO,QAAQ,CAAC;AACnC,IAAAuP,GAAG,IAAItP,CAAC,MAAML,EAAEK,CAAC,IAAID;AACvB,SAAOJ;AACT;ACrXA;AAEA,IAAIH,KAAI,CAACA,OAAO;AAAA,EACf,IAAI;AAAA,EACJ,OAAOA;AACR,IAAIJ,KAAI,CAACI,OAAO;AAAA,EACf,IAAI;AAAA,EACJ,OAAOA;AACR,IA6II0B,KAAI,MAAM;AAAA,EAAN;AACP,IAAAmB,EAAA,eAAwB,oBAAI,IAAG;AAAA;AAAA,EAC/B,IAAI7C,GAAG;AACN,QAAIJ,IAAI,KAAK,MAAM,IAAII,CAAC;AACxB,WAAOJ,IAAI,KAAK,IAAG,IAAKA,EAAE,YAAYA,EAAE,SAAS,KAAK,MAAM,OAAOI,CAAC,GAAG,QAAQJ,EAAE,OAAO;AAAA,EACzF;AAAA,EACA,IAAII,GAAGJ,GAAG,IAAI,KAAK;AAClB,SAAK,MAAM,IAAII,GAAG;AAAA,MACjB,MAAMJ;AAAA,MACN,WAAW,KAAK,IAAG;AAAA,MACnB,OAAO;AAAA,IACV,CAAG;AAAA,EACF;AAAA,EACA,QAAQ;AACP,SAAK,MAAM,MAAK;AAAA,EACjB;AAAA,EACA,IAAII,GAAG;AACN,QAAIJ,IAAI,KAAK,MAAM,IAAII,CAAC;AACxB,WAAOJ,IAAI,KAAK,IAAG,IAAKA,EAAE,YAAYA,EAAE,SAAS,KAAK,MAAM,OAAOI,CAAC,GAAG,MAAM,KAAK;AAAA,EACnF;AAAA,EACA,OAAOA,GAAG;AACT,SAAK,MAAM,OAAOA,CAAC;AAAA,EACpB;AACD;AACA,SAASa,GAAEb,IAAI,IAAI;AAClB,MAAIJ,IAAII,EAAE,SAAS,IAAI0B,GAAC,GAAI,IAAI1B,EAAE,SAAS,KAAK,IAAIA,EAAE,qBAAqB,CAAC,KAAK,GAAG;AACpF,SAAO,OAAOA,GAAG,MAAM;AACtB,QAAIG,KAAKH,EAAE,QAAQ,UAAU,OAAO,YAAW,GAAID,IAAII,MAAM,OAAOC,IAAI,GAAGD,CAAC,IAAIH,EAAE,QAAQ,GAAG;AAC7F,QAAID,KAAKH,EAAE,IAAIQ,CAAC,GAAG;AAClB,UAAIX,IAAIG,EAAE,IAAIQ,CAAC;AACf,UAAIX,GAAG;AACN,QAAAO,EAAE,WAAWP,GAAGO,EAAE,MAAM,WAAW;AACnC;AAAA,MACD;AAAA,IACD;AACA,UAAM,EAAC,GAAID,KAAKC,EAAE,YAAY,EAAE,SAASA,EAAE,SAAS,MAAM,MAAMJ,EAAE,IAAIQ,GAAGJ,EAAE,UAAU,CAAC,GAAGA,EAAE,MAAM,YAAY;AAAA,EAC9G;AACD;AACQa,GAAC;AAAG,IAACG,KAAI,MAAM;AAAA,EAAN;AAChB,IAAA6B,EAAA,iBAA0B,oBAAI,IAAG;AAAA;AAAA,EACjC,MAAM,QAAQ7C,GAAGJ,GAAG;AACnB,QAAI,KAAK,QAAQ,IAAII,CAAC,EAAG,QAAO,KAAK,QAAQ,IAAIA,CAAC;AAClD,QAAI,IAAIJ,IAAI,QAAQ,MAAM;AACzB,WAAK,QAAQ,OAAOI,CAAC;AAAA,IACtB,CAAC;AACD,WAAO,KAAK,QAAQ,IAAIA,GAAG,CAAC,GAAG;AAAA,EAChC;AAAA,EACA,QAAQ;AACP,SAAK,QAAQ,MAAK;AAAA,EACnB;AACD;AACA,SAASiB,GAAEjB,IAAI,IAAI;AAClB,MAAIJ,IAAII,EAAE,gBAAgB,IAAIgB,GAAC,GAAI,IAAIhB,EAAE,eAAe,IAAI,IAAIA,EAAE,WAAW,CAAC,KAAK;AACnF,SAAO,OAAOA,GAAG,MAAM;AACtB,QAAIG,KAAKH,EAAE,QAAQ,UAAU,OAAO,YAAW;AAC/C,QAAI,CAAC,EAAE,SAASG,CAAC,GAAG;AACnB,YAAM,EAAC;AACP;AAAA,IACD;AACA,QAAIJ,IAAI,GAAGI,CAAC,IAAIH,EAAE,QAAQ,GAAG;AAC7B,SAAKA,EAAE,QAAQ,SAASD,KAAK,IAAI,KAAK,UAAUC,EAAE,QAAQ,IAAI,CAAC;AAC/D,QAAI;AACH,MAAAA,EAAE,WAAW,MAAMJ,EAAE,QAAQG,GAAG,aAAa,MAAM,EAAC,GAAIC,EAAE,SAAS,GAAGA,EAAE,MAAM,UAAU;AAAA,IACzF,SAASJ,GAAG;AACX,YAAMI,EAAE,QAAQJ,GAAGA;AAAA,IACpB;AAAA,EACD;AACD;AACSqB,GAAC;AAkLP,IA4FA8P,KAAK,MAAM;AAAA,EAAN;AACP,IAAAlO,EAAA,eAAQ,IAAInB,GAAC;AAAA;AAAA,EACb,IAAI1B,GAAG;AACN,WAAO,KAAK,MAAM,IAAIA,CAAC;AAAA,EACxB;AAAA,EACA,IAAIA,GAAGJ,GAAG,IAAI,KAAK;AAClB,SAAK,MAAM,IAAII,GAAGJ,GAAG,CAAC;AAAA,EACvB;AAAA,EACA,IAAII,GAAG;AACN,WAAO,KAAK,MAAM,IAAIA,CAAC;AAAA,EACxB;AAAA,EACA,QAAQ;AACP,SAAK,MAAM,MAAK;AAAA,EACjB;AACD,GAAGsB,KAAI,MAAM;AAAA,EAGZ,YAAYtB,IAAI,GAAGJ,IAAI,KAAK;AAF5B,IAAAiD,EAAA;AACA,IAAAA,EAAA;AAEC,SAAK,cAAc7C,GAAG,KAAK,cAAcJ;AAAA,EAC1C;AAAA,EACA,YAAYI,GAAGJ,GAAG;AACjB,QAAI,IAAIA,EAAE,WAAW,UAAUA,EAAE,UAAU,KAAK,IAAIA,EAAE,SAAS;AAC/D,WAAOI,IAAI,KAAK,gBAAgB,KAAK,KAAKJ,EAAE,SAAS;AAAA,EACtD;AAAA,EACA,QAAQI,GAAG;AACV,QAAIJ,IAAI,KAAK,cAAc,MAAMI,IAAI,IAAI,IAAI,KAAK,OAAM,IAAKJ,IAAI;AACjE,WAAO,KAAK,IAAIA,IAAI,GAAG,GAAG;AAAA,EAC3B;AACD,GAAG+P,KAAI,MAAM;AAAA,EAIZ,YAAY3P,GAAG;AAHf,IAAA6C,EAAA,iBAAU;AACV,IAAAA,EAAA,eAAQ,CAAA;AACR,IAAAA,EAAA;AAEC,SAAK,gBAAgB7C;AAAA,EACtB;AAAA,EACA,MAAM,UAAU;AACf,QAAI,KAAK,UAAU,KAAK,eAAe;AACtC,WAAK;AACL;AAAA,IACD;AACA,WAAO,IAAI,QAAQ,CAACA,MAAM;AACzB,WAAK,MAAM,KAAK,MAAM;AACrB,aAAK,WAAWA,EAAC;AAAA,MAClB,CAAC;AAAA,IACF,CAAC;AAAA,EACF;AAAA,EACA,UAAU;AACT,SAAK;AACL,QAAIA,IAAI,KAAK,MAAM,MAAK;AACxB,IAAAA,KAAKA,EAAC;AAAA,EACP;AAAA,EACA,IAAI,UAAU;AACb,WAAO,KAAK,MAAM;AAAA,EACnB;AAAA,EACA,IAAI,SAAS;AACZ,WAAO,KAAK;AAAA,EACb;AACD;AACA,SAASmB,GAAEnB,GAAG;AACb,SAAOA,KAAK,OAAO;AAAA,IAClB,YAAY;AAAA,IACZ,aAAa;AAAA,EACf,IAAK,OAAOA,KAAK,WAAW;AAAA,IAC1B,YAAYA;AAAA,IACZ,aAAa;AAAA,EACf,IAAK,OAAO,WAAW,OAAOA,aAAa,WAAW;AAAA,IACpD,YAAYA;AAAA,IACZ,aAAa;AAAA,EACf,IAAK,OAAO,kBAAkB,OAAOA,aAAa,kBAAkB;AAAA,IAClE,YAAYA;AAAA,IACZ,aAAa;AAAA,EACf,IAAK,OAAO,OAAO,OAAOA,aAAa,OAAO;AAAA,IAC5C,YAAYA;AAAA,IACZ,aAAaA,EAAE,QAAQ;AAAA,EACzB,IAAKA,aAAa,eAAe,YAAY,OAAOA,CAAC,KAAK,OAAO,iBAAiB,OAAOA,aAAa,iBAAiB;AAAA,IACrH,YAAYA;AAAA,IACZ,aAAa;AAAA,EACf,IAAK;AAAA,IACH,YAAY,KAAK,UAAUA,CAAC;AAAA,IAC5B,aAAa;AAAA,EACf;AACA;AACA,SAASyB,GAAEzB,GAAGJ,GAAG;AAChB,SAAOA,IAAII,EAAE,QAAQ,8BAA8B,CAACA,GAAGP,MAAM;AAC5D,QAAIK,IAAIF,EAAEH,CAAC;AACX,QAAIK,MAAM,OAAQ,OAAM,MAAM,4BAA4BL,CAAC,EAAE;AAC7D,WAAO,mBAAmB,OAAOK,CAAC,CAAC;AAAA,EACpC,CAAC,IAAIE;AACN;AACG,IAACwC,KAAI,MAAM/C,GAAE;AAAA,EAQf,YAAY,IAAI,IAAI;AAPpB,IAAAoD,EAAA,6BAAsB,CAAA;AACtB,IAAAA,EAAA,8BAAuB,CAAA;AACvB,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA,yBAAkC,oBAAI,IAAG;AAExC,SAAK,SAAS;AAAA,MACb,SAAS,EAAE,WAAW;AAAA,MACtB,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,mBAAkB;AAAA,MACxE,gBAAgB,EAAE,kBAAkB;AAAA,MACpC,gBAAgB,EAAE,mBAAmB,CAAC7C,MAAMA,KAAK,OAAOA,IAAI;AAAA,MAC5D,eAAe,EAAE,iBAAiB,IAAI+Q,GAAE;AAAA,MACxC,eAAe,EAAE,iBAAiB;AAAA,MAClC,qBAAqB,EAAE,uBAAuB;AAAA,MAC9C,cAAc,EAAE,gBAAgB,CAAA;AAAA,MAChC,SAAS,EAAE;AAAA,IACd,GAAK,KAAK,QAAQ,KAAK,OAAO,eAAe,KAAK,eAAe,KAAK,OAAO,gBAAgB,IAAI,IAAIpB,GAAE,KAAK,OAAO,aAAa,IAAI,MAAM,KAAK,aAAa,EAAE,cAAc;AAAA,EAC3K;AAAA,EACA,MAAM,QAAQlQ,GAAG;;AAChB,QAAI,CAAC,KAAK,oBAAoB,UAAU,CAAC,KAAK,qBAAqB,UAAU,GAACmD,IAAAnD,EAAE,UAAF,QAAAmD,EAAS,YAAW,CAACnD,EAAE,SAAS,CAAC,OAAO,KAAK,KAAK,OAAO,YAAY,EAAE,UAAU,CAACA,EAAE,SAAS,CAACA,EAAE,YAAY,CAACA,EAAE,aAAa,CAAC,KAAK,gBAAgB,CAACA,EAAE,sBAAsB,CAACA,EAAE,OAAQ,QAAO,KAAK,SAASA,CAAC;AAC1R,QAAIK,IAAIL,EAAE,QAAQ;AAAA,MACjB,GAAG,KAAK,OAAO;AAAA,MACf,GAAGA,EAAE;AAAA,IACR,IAAM,KAAK,OAAO,cAAcI,IAAI,KAAK,eAAeJ,EAAE,KAAK,GAAG,IAAI,KAAK,iBAAiBA,EAAE,KAAK,GAAGM,IAAI,KAAK,aAAaN,CAAC;AAC3H,KAAAumB,IAAAlmB,EAAE,YAAF,QAAAkmB,EAAA,KAAAlmB,GAAYC,IAAI,KAAK,gBAAgB,MAAM,KAAK,aAAa,QAAO;AACpE,QAAI;AACH,eAASK,IAAI,GAAGA,KAAKP,GAAGO,KAAK;AAC5B,YAAIF;AACJ,YAAI;AACH,eAAKT,EAAE,WAAW,SAAS,CAACA,EAAE,aAAWwmB,IAAAxmB,EAAE,UAAF,QAAAwmB,EAAS,UAAS;AAC1D,gBAAIrmB,IAAI,KAAK,YAAYH,CAAC,GAAGI,IAAI,KAAK,MAAM,IAAID,CAAC;AACjD,gBAAIC,GAAG;AACN,kBAAID,IAAIC;AACR,qBAAO,KAAK,SAAS;AAAA,gBACpB,QAAQJ,EAAE,UAAU;AAAA,gBACpB,KAAKM,EAAE;AAAA,gBACP,QAAQH,EAAE;AAAA,gBACV,UAAUA,EAAE;AAAA,gBACZ,QAAQ;AAAA,gBACR,IAAI;AAAA,gBACJ,SAAS,EAAE,GAAGG,EAAE,QAAO;AAAA,gBACvB,MAAMN,EAAE;AAAA,gBACR,YAAY;AAAA,cACpB,CAAQ,IAAGymB,IAAApmB,EAAE,cAAF,QAAAomB,EAAA,KAAApmB,GAAcF,KAAImT,IAAAjT,EAAE,cAAF,QAAAiT,EAAA,KAAAjT,IAAiBE,GAAEJ,CAAC;AAAA,YAC3C;AAAA,UACD;AACA,cAAIA,IAAIG;AACR,mBAASC,KAAK,KAAK,oBAAqB,CAAAJ,IAAI,MAAMI,EAAE,UAAUJ,CAAC;AAC/D,UAAAM,IAAI,IAAI,gBAAe,GAAI,KAAK,gBAAgB,IAAIA,CAAC,GAAGT,EAAE,UAAUA,EAAE,OAAO,iBAAiB,SAAS,MAAMS,EAAE,MAAK,GAAI,EAAE,MAAM,IAAI;AACpI,cAAIL,IAAI,YAAY,IAAG,GAAIM,IAAI,MAAM,KAAK,iBAAiBP,GAAG,KAAK,iBAAiBH,EAAE,WAAW,KAAK,OAAO,cAAc,GAAGS,CAAC,GAAGR,KAAI,YAAY,IAAG,IAAKG,GAAGF,IAAIQ;AACjK,UAAAV,EAAE,sBAAsBU,EAAE,SAASR,IAAI,KAAK,sBAAsBQ,GAAGV,EAAE,kBAAkB;AACzF,cAAIe,IAAIf,EAAE,gBAAgB,KAAK,OAAO,qBAAqBQ,IAAI,MAAM,KAAK,cAAcN,GAAGC,GAAGF,IAAGc,CAAC;AAClG,cAAI,CAAC,KAAK,OAAO,eAAeP,EAAE,MAAM,EAAG,OAAM;AAAA,YAChD,SAAS,8BAA8BA,EAAE,MAAM;AAAA,YAC/C,QAAQA,EAAE;AAAA,YACV,YAAYA,EAAE;AAAA,YACd,MAAM;AAAA,UACZ;AACK,cAAIR,EAAE,UAAU;AACf,gBAAIO,IAAIP,EAAE,SAAS,SAASQ,EAAE,IAAI;AAClC,gBAAI,CAACD,EAAE,GAAI,QAAOA;AAAA,UACnB;AACA,UAAAP,EAAE,cAAcQ,EAAE,OAAOR,EAAE,UAAU,UAAUQ,EAAE,IAAI;AACrD,cAAIK,IAAIL;AACR,mBAASD,KAAK,KAAK,qBAAsB,CAAAM,IAAI,MAAMN,EAAE,WAAWM,CAAC;AACjE,eAAKb,EAAE,WAAW,SAAS,CAACA,EAAE,aAAW0mB,IAAA1mB,EAAE,UAAF,QAAA0mB,EAAS,UAAS;AAC1D,gBAAInmB,IAAI,KAAK,YAAYP,CAAC;AAC1B,iBAAK,MAAM,IAAIO,GAAGM,GAAGb,EAAE,MAAM,KAAK;AAAA,UACnC;AACA,kBAAO2mB,IAAAtmB,EAAE,cAAF,QAAAsmB,EAAA,KAAAtmB,GAAcQ,IAAI,KAAK,gBAAgB,OAAOJ,CAAC,GAAG,KAAK,SAAS;AAAA,YACtE,QAAQT,EAAE,UAAU;AAAA,YACpB,KAAKM,EAAE;AAAA,YACP,QAAQO,EAAE;AAAA,YACV,UAAUA,EAAE;AAAA,YACZ,QAAQ;AAAA,YACR,IAAI;AAAA,YACJ,SAAS,EAAE,GAAGP,EAAE,QAAO;AAAA,YACvB,MAAMN,EAAE;AAAA,YACR,YAAYW,IAAI;AAAA,UACtB,CAAM,GAAGJ,GAAEM,CAAC;AAAA,QACR,SAASN,GAAG;AACX,cAAIN;AACJ,cAAIA,IAAIM,aAAa,eAAeA,EAAE,SAAS,iBAAiB;AAAA,YAC/D,SAAS;AAAA,YACT,MAAM;AAAA,UACZ,IAASA,EAAE,SAAS,eAAe;AAAA,YAC7B,SAAS;AAAA,YACT,MAAM;AAAA,UACZ,IAAS;AAAA,YACH,SAASA,EAAE;AAAA,YACX,MAAM;AAAA,YACN,eAAeA;AAAA,UACrB,IAAS,KAAK,mBAAmBA,CAAC,IAAIA,IAAI,KAAK,eAAeA,CAAC,GAAGI,IAAIP,KAAK,EAAE,YAAYO,GAAGV,CAAC,GAAG;AAC1F,aAAA2mB,IAAAvmB,EAAE,YAAF,QAAAumB,EAAA,KAAAvmB,GAAYM,GAAGV;AACf,gBAAIM,KAAI,EAAE,QAAQI,CAAC;AACnB,kBAAM,KAAK,MAAMJ,EAAC;AAClB;AAAA,UACD;AACA,cAAIL,IAAID;AACR,mBAASM,MAAK,KAAK,qBAAsB,CAAAA,GAAE,YAAYL,IAAI,MAAMK,GAAE,QAAQL,CAAC;AAC5E,kBAAOgmB,IAAA7lB,EAAE,YAAF,QAAA6lB,EAAA,KAAA7lB,GAAYH,IAAIO,KAAK,KAAK,gBAAgB,OAAOA,CAAC,GAAG,KAAK,SAAS;AAAA,YACzE,QAAQT,EAAE,UAAU;AAAA,YACpB,KAAKM,EAAE;AAAA,YACP,QAAQJ,EAAE;AAAA,YACV,UAAU;AAAA,YACV,QAAQ;AAAA,YACR,IAAI;AAAA,YACJ,MAAMA,EAAE;AAAA,YACR,SAAS,EAAE,GAAGI,EAAE,QAAO;AAAA,YACvB,MAAMN,EAAE;AAAA,YACR,YAAYW,IAAI;AAAA,UACtB,CAAM,GAAGR,GAAED,CAAC;AAAA,QACR;AAAA,MACD;AACA,UAAIS,IAAI;AAAA,QACP,SAAS;AAAA,QACT,MAAM;AAAA,MACV;AACG,cAAOkmB,IAAAxmB,EAAE,YAAF,QAAAwmB,EAAA,KAAAxmB,GAAYM,IAAI,KAAK,SAAS;AAAA,QACpC,QAAQX,EAAE,UAAU;AAAA,QACpB,KAAKM,EAAE;AAAA,QACP,UAAU;AAAA,QACV,QAAQ;AAAA,QACR,IAAI;AAAA,QACJ,MAAM;AAAA,QACN,SAAS,EAAE,GAAGA,EAAE,QAAO;AAAA,QACvB,MAAMN,EAAE;AAAA,QACR,YAAYI;AAAA,MAChB,CAAI,GAAGD,GAAEQ,CAAC;AAAA,IACR,UAAC;AACA,OAAAmmB,IAAAzmB,EAAE,cAAF,QAAAymB,EAAA,KAAAzmB,IAAiB,KAAK,gBAAgB,KAAK,aAAa,QAAO;AAAA,IAChE;AAAA,EACD;AAAA,EACA,MAAM,SAASL,GAAG;AACjB,QAAIK,IAAI2B,GAAEhC,EAAE,KAAKA,EAAE,MAAM,GAAGI,IAAI,KAAK,SAASC,GAAGL,EAAE,KAAK,GAAG,EAAE,YAAY,GAAG,aAAaM,EAAC,IAAKoB,GAAE1B,EAAE,IAAI,GAAGW,IAAI;AAAA,MAC7G,GAAG,KAAK,OAAO;AAAA,MACf,GAAGX,EAAE;AAAA,IACR;AACE,IAAAM,IAAIK,EAAE,cAAc,IAAIL,IAAI,aAAa,YAAY,OAAOK,EAAE,cAAc;AAC5E,QAAIF,IAAI,IAAI,gBAAe,GAAIR,IAAI,KAAK,iBAAiBD,EAAE,WAAW,KAAK,OAAO,cAAc;AAChG,SAAK,gBAAgB,IAAIS,CAAC;AAC1B,QAAI;AACH,UAAIJ,IAAI,YAAY,IAAG,GAAIK,IAAI,MAAM,KAAK,iBAAiB;AAAA,QAC1D,KAAKN;AAAA,QACL,QAAQJ,EAAE,UAAU;AAAA,QACpB,SAASW;AAAA,QACT,MAAMX,EAAE;AAAA,QACR,QAAQA,EAAE;AAAA,MACd,GAAMC,GAAGQ,CAAC,GAAGH,IAAI,YAAY,IAAG,IAAKD,GAAGH,IAAI,MAAM,KAAK,UAAUQ,GAAGV,EAAE,gBAAgB,KAAK,OAAO,mBAAmB;AAClH,UAAI,CAAC,KAAK,OAAO,eAAeU,EAAE,MAAM,GAAG;AAC1C,YAAIH,IAAIJ,GAAE;AAAA,UACT,SAAS,8BAA8BO,EAAE,MAAM;AAAA,UAC/C,QAAQA,EAAE;AAAA,UACV,YAAYA,EAAE;AAAA,UACd,MAAM;AAAA,QACX,CAAK;AACD,eAAO,KAAK,SAAS;AAAA,UACpB,QAAQV,EAAE,UAAU;AAAA,UACpB,KAAKI;AAAA,UACL,QAAQM,EAAE;AAAA,UACV,UAAUJ;AAAA,UACV,QAAQ;AAAA,UACR,IAAI;AAAA,UACJ,MAAM;AAAA,UACN,SAASK;AAAA,UACT,MAAMX,EAAE;AAAA,UACR,YAAY;AAAA,QACjB,CAAK,GAAG,KAAK,gBAAgB,OAAOS,CAAC,GAAGF;AAAA,MACrC;AACA,aAAO,KAAK,gBAAgB,OAAOE,CAAC,GAAG,KAAK,SAAS;AAAA,QACpD,QAAQT,EAAE,UAAU;AAAA,QACpB,KAAKI;AAAA,QACL,QAAQM,EAAE;AAAA,QACV,UAAUJ;AAAA,QACV,QAAQ;AAAA,QACR,IAAI;AAAA,QACJ,SAASK;AAAA,QACT,MAAMX,EAAE;AAAA,QACR,YAAY;AAAA,MAChB,CAAI,GAAGO,GAAE;AAAA,QACL,QAAQG,EAAE;AAAA,QACV,YAAYA,EAAE;AAAA,QACd,SAASA,EAAE;AAAA,QACX,MAAMR;AAAA,QACN,SAAS;AAAA,UACR,KAAKE;AAAA,UACL,QAAQJ,EAAE,UAAU;AAAA,UACpB,SAASW;AAAA,UACT,MAAMX,EAAE;AAAA,UACR,QAAQA,EAAE;AAAA,QACf;AAAA,QACI,UAAUM;AAAA,MACd,CAAI;AAAA,IACF,SAASC,GAAG;AACX,WAAK,gBAAgB,OAAOE,CAAC;AAC7B,UAAIJ,IAAI;AACR,UAAIE,aAAa,eAAeA,EAAE,SAAS,iBAAiBF,IAAI,YAAYE,EAAE,SAAS,iBAAiBF,IAAI,aAAaE,aAAa,UAAUA,EAAE,SAAS,iBAAiBF,IAAI,YAAYE,EAAE,SAAS,gBAAgBA,EAAE,QAAQ,SAAS,OAAO,IAAIF,IAAI,YAAYE,EAAE,SAAS,gBAAgBF,IAAI,mBAAmB,KAAK,SAAS;AAAA,QACpU,QAAQL,EAAE,UAAU;AAAA,QACpB,KAAKI;AAAA,QACL,UAAU,YAAY,IAAG,KAAM,YAAY,IAAG,IAAK;AAAA,QACnD,QAAQ;AAAA,QACR,IAAI;AAAA,QACJ,MAAMC;AAAA,QACN,SAASM;AAAA,QACT,MAAMX,EAAE;AAAA,QACR,YAAY;AAAA,MAChB,CAAI,GAAGO,aAAa,cAAc;AAC9B,YAAIA,EAAE,SAAS,eAAgB,QAAOJ,GAAE;AAAA,UACvC,SAAS;AAAA,UACT,MAAM;AAAA,QACX,CAAK;AACD,YAAII,EAAE,SAAS,aAAc,QAAOJ,GAAE;AAAA,UACrC,SAAS;AAAA,UACT,MAAM;AAAA,QACX,CAAK;AAAA,MACF;AACA,aAAOI,aAAa,QAAQA,EAAE,SAAS,iBAAiBJ,GAAE;AAAA,QACzD,SAAS;AAAA,QACT,MAAM;AAAA,MACV,CAAI,IAAII,EAAE,SAAS,gBAAgBA,EAAE,QAAQ,SAAS,OAAO,IAAIJ,GAAE;AAAA,QAC/D,SAAS;AAAA,QACT,MAAM;AAAA,MACV,CAAI,IAAIA,GAAE;AAAA,QACN,SAASI,EAAE;AAAA,QACX,MAAMA,EAAE,SAAS,cAAc,kBAAkB;AAAA,MACrD,CAAI,IAAIJ,GAAE;AAAA,QACN,SAAS,OAAOI,CAAC;AAAA,QACjB,MAAM;AAAA,MACV,CAAI;AAAA,IACF;AAAA,EACD;AAAA,EACA,IAAI,GAAGJ,GAAG;AACT,WAAO,KAAK,QAAQ;AAAA,MACnB,GAAGA;AAAA,MACH,KAAK;AAAA,MACL,QAAQ;AAAA,IACX,CAAG;AAAA,EACF;AAAA,EACA,KAAK,GAAGA,GAAGH,GAAG;AACb,WAAO,KAAK,QAAQ;AAAA,MACnB,GAAGA;AAAA,MACH,KAAK;AAAA,MACL,QAAQ;AAAA,MACR,MAAMG;AAAA,IACT,CAAG;AAAA,EACF;AAAA,EACA,IAAI,GAAGA,GAAGH,GAAG;AACZ,WAAO,KAAK,QAAQ;AAAA,MACnB,GAAGA;AAAA,MACH,KAAK;AAAA,MACL,QAAQ;AAAA,MACR,MAAMG;AAAA,IACT,CAAG;AAAA,EACF;AAAA,EACA,MAAM,GAAGA,GAAGH,GAAG;AACd,WAAO,KAAK,QAAQ;AAAA,MACnB,GAAGA;AAAA,MACH,KAAK;AAAA,MACL,QAAQ;AAAA,MACR,MAAMG;AAAA,IACT,CAAG;AAAA,EACF;AAAA,EACA,OAAO,GAAGA,GAAG;AACZ,WAAO,KAAK,QAAQ;AAAA,MACnB,GAAGA;AAAA,MACH,KAAK;AAAA,MACL,QAAQ;AAAA,IACX,CAAG;AAAA,EACF;AAAA,EACA,KAAK,GAAGA,GAAG;AACV,WAAO,KAAK,QAAQ;AAAA,MACnB,GAAGA;AAAA,MACH,KAAK;AAAA,MACL,QAAQ;AAAA,IACX,CAAG;AAAA,EACF;AAAA,EACA,QAAQ,GAAGA,GAAG;AACb,WAAO,KAAK,QAAQ;AAAA,MACnB,GAAGA;AAAA,MACH,KAAK;AAAA,MACL,QAAQ;AAAA,IACX,CAAG;AAAA,EACF;AAAA,EACA,sBAAsB,GAAG;AACxB,WAAO,KAAK,oBAAoB,KAAK,CAAC,GAAG,MAAM;AAC9C,UAAIA,IAAI,KAAK,oBAAoB,QAAQ,CAAC;AAC1C,MAAAA,MAAM,MAAM,KAAK,oBAAoB,OAAOA,GAAG,CAAC;AAAA,IACjD;AAAA,EACD;AAAA,EACA,uBAAuB,GAAG;AACzB,WAAO,KAAK,qBAAqB,KAAK,CAAC,GAAG,MAAM;AAC/C,UAAIA,IAAI,KAAK,qBAAqB,QAAQ,CAAC;AAC3C,MAAAA,MAAM,MAAM,KAAK,qBAAqB,OAAOA,GAAG,CAAC;AAAA,IAClD;AAAA,EACD;AAAA,EACA,oBAAoB;AACnB,SAAK,sBAAsB,CAAA,GAAI,KAAK,uBAAuB,CAAA;AAAA,EAC5D;AAAA,EACA,aAAa;AACZ,SAAK,MAAM,MAAK;AAAA,EACjB;AAAA,EACA,YAAY;AACX,aAAS,KAAK,KAAK,gBAAiB,GAAE,MAAK;AAC3C,SAAK,gBAAgB,MAAK;AAAA,EAC3B;AAAA,EACA,IAAI,iBAAiB;AACpB,WAAO,KAAK,gBAAgB;AAAA,EAC7B;AAAA,EACA,IAAI,aAAa;;AAChB,WAAO;AAAA,MACN,UAAQgD,IAAA,KAAK,iBAAL,gBAAAA,EAAmB,WAAU,KAAK,gBAAgB;AAAA,MAC1D,WAASojB,IAAA,KAAK,iBAAL,gBAAAA,EAAmB,YAAW;AAAA,IAC1C;AAAA,EACC;AAAA,EACA,OAAO,IAAI,IAAI;AACd,QAAIpmB,IAAI,IAAIH,GAAE;AAAA,MACb,SAAS,EAAE,WAAW,KAAK,OAAO;AAAA,MAClC,gBAAgB;AAAA,QACf,GAAG,KAAK,OAAO;AAAA,QACf,GAAG,EAAE;AAAA,MACT;AAAA,MACG,gBAAgB,EAAE,kBAAkB,KAAK,OAAO;AAAA,MAChD,gBAAgB,EAAE,kBAAkB,KAAK,OAAO;AAAA,MAChD,eAAe,EAAE,iBAAiB,KAAK;AAAA,MACvC,eAAe,EAAE,iBAAiB,KAAK,OAAO;AAAA,MAC9C,qBAAqB,EAAE,uBAAuB,KAAK,OAAO;AAAA,MAC1D,cAAc;AAAA,QACb,GAAG,KAAK,OAAO;AAAA,QACf,GAAG,EAAE;AAAA,MACT;AAAA,MACG,SAAS,EAAE;AAAA,IACd,CAAG;AACD,aAASO,KAAK,KAAK,oBAAqB,CAAAJ,EAAE,sBAAsBI,CAAC;AACjE,aAASA,KAAK,KAAK,qBAAsB,CAAAJ,EAAE,uBAAuBI,CAAC;AACnE,WAAOJ;AAAA,EACR;AAAA,EACA,OAAO,SAAS,GAAGA,GAAGH,IAAI,CAAA,GAAI;AAC7B,QAAIK,IAAI,EAAE,GAAGL,EAAC;AACd,eAAS;AACR,UAAIA,IAAI,MAAM,KAAK,IAAI,GAAGK,CAAC;AAC3B,UAAI,CAACL,EAAE,GAAI;AACX,YAAMG,EAAE,SAASH,EAAE,MAAM,IAAI;AAC7B,UAAII,IAAID,EAAE,YAAYH,EAAE,MAAM,MAAMK,CAAC;AACrC,UAAI,CAACD,EAAG;AACR,MAAAC,IAAID;AAAA,IACL;AAAA,EACD;AAAA,EACA,MAAM,KAAK,GAAG,GAAG,IAAI,CAAA,GAAI;;AACxB,QAAIA,IAAI,EAAE,eAAe;AACzB,aAASD,IAAI,GAAGC,MAAM,KAAKD,KAAKC,GAAGD,KAAK;AACvC,UAAIO,IAAI,MAAM,KAAK,IAAI,GAAG,CAAC;AAC3B,UAAI,CAACA,EAAE,QAAOyC,IAAA,EAAE,WAAF,QAAAA,EAAA,QAAWzC,EAAE,MAAM,MAAMP,IAAI,EAAE,MAAMO,EAAE,MAAM,IAAI,GAAI,QAAOA;AAC1E,UAAIN,IAAI,KAAKD,KAAKC,EAAG;AACrB,YAAM,KAAK,MAAM,EAAE,UAAU;AAAA,IAC9B;AACA,WAAOD,GAAE;AAAA,MACR,SAAS,2BAA2BC,CAAC;AAAA,MACrC,MAAM;AAAA,IACT,CAAG;AAAA,EACF;AAAA,EACA,aAAa,GAAG;AACf,QAAID,IAAI6B,GAAE,EAAE,KAAK,EAAE,MAAM;AACzB,WAAO;AAAA,MACN,KAAK,KAAK,SAAS7B,GAAG,EAAE,KAAK;AAAA,MAC7B,QAAQ,EAAE,UAAU;AAAA,MACpB,SAAS;AAAA,QACR,GAAG,KAAK,OAAO;AAAA,QACf,GAAG,EAAE;AAAA,MACT;AAAA,MACG,MAAM,EAAE;AAAA,MACR,QAAQ,EAAE;AAAA,IACb;AAAA,EACC;AAAA,EACA,SAAS,GAAGA,GAAG;AACd,QAAIH,IAAI,KAAK,OAAO,UAAU;AAC9B,QAAIG,GAAG;AACN,UAAII,IAAI,OAAO,KAAKJ,CAAC;AACrB,UAAII,EAAE,SAAS,GAAG;AACjB,YAAIF,IAAI,IAAI,gBAAe;AAC3B,iBAASL,IAAI,GAAGA,IAAIO,EAAE,QAAQP,IAAK,CAAAK,EAAE,OAAOE,EAAEP,CAAC,GAAG,OAAOG,EAAEI,EAAEP,CAAC,CAAC,CAAC,CAAC;AACjE,QAAAA,KAAK,IAAIK,EAAE,SAAQ,CAAE;AAAA,MACtB;AAAA,IACD;AACA,WAAOL;AAAA,EACR;AAAA,EACA,YAAY,GAAG;AACd,QAAIG,IAAI6B,GAAE,EAAE,KAAK,EAAE,MAAM,GAAGhC,IAAI,EAAE,QAAQ,KAAK,UAAU,EAAE,KAAK,IAAI;AACpE,WAAO,GAAG,EAAE,UAAU,KAAK,IAAIG,CAAC,GAAGH,IAAI,MAAMA,IAAI,EAAE;AAAA,EACpD;AAAA,EACA,iBAAiB,GAAGG,GAAGH,GAAG;AACzB,QAAI,EAAE,YAAYK,GAAG,aAAa,EAAC,IAAKqB,GAAE,EAAE,IAAI,GAAGhB,IAAI,EAAE,GAAG,EAAE,QAAO;AACrE,WAAO,IAAIA,EAAE,cAAc,IAAI,IAAIL,aAAa,YAAY,OAAOK,EAAE,cAAc,GAAG,IAAI,QAAQ,CAACN,GAAGE,MAAM;AAC3G,UAAIK,IAAI,WAAW,MAAM;AACxB,QAAAX,EAAE,MAAK,GAAIM,EAAE,IAAI,aAAa,qBAAqB,cAAc,CAAC;AAAA,MACnE,GAAGH,CAAC;AACJ,OAAC,KAAK,OAAO,WAAW,OAAO,EAAE,KAAK;AAAA,QACrC,QAAQ,EAAE;AAAA,QACV,SAASO;AAAA,QACT,MAAML;AAAA,QACN,QAAQL,EAAE;AAAA,MACd,CAAI,EAAE,KAAK,CAACO,MAAM;AACd,qBAAaI,CAAC,GAAGP,EAAEG,CAAC;AAAA,MACrB,GAAG,CAACA,MAAM;AACT,qBAAaI,CAAC,GAAGL,EAAEC,CAAC;AAAA,MACrB,CAAC;AAAA,IACF,CAAC;AAAA,EACF;AAAA,EACA,sBAAsB,GAAGJ,GAAG;;AAC3B,QAAIH,IAAI,SAAS,EAAE,QAAQ,IAAI,gBAAgB,KAAK,KAAK,EAAE,GAAGK,KAAI8C,IAAA,EAAE,SAAF,gBAAAA,EAAQ;AAC1E,QAAI,CAAC9C,EAAG,QAAO;AACf,QAAI,IAAI,GAAGK,IAAI,IAAI,eAAe,EAAE,MAAM,KAAKH,GAAG;AACjD,UAAI,EAAE,MAAMG,GAAG,OAAOJ,MAAM,MAAMD,EAAE,KAAI;AACxC,UAAIK,GAAG;AACN,QAAAH,EAAE,MAAK;AACP;AAAA,MACD;AACA,WAAKD,EAAE,YAAYH,EAAE;AAAA,QACpB,QAAQ;AAAA,QACR,OAAOH;AAAA,QACP,SAASA,IAAI,IAAI,KAAK,MAAM,IAAIA,IAAI,GAAG,IAAI;AAAA,MAC/C,CAAI,GAAGO,EAAE,QAAQD,CAAC;AAAA,IAChB,GAAG;AACH,WAAO,IAAI,SAASI,GAAG;AAAA,MACtB,SAAS,EAAE;AAAA,MACX,QAAQ,EAAE;AAAA,MACV,YAAY,EAAE;AAAA,IACjB,CAAG;AAAA,EACF;AAAA,EACA,MAAM,cAAc,GAAGP,GAAGH,GAAGK,GAAG;AAC/B,QAAI,IAAI,MAAM,KAAK,UAAU,GAAGA,CAAC;AACjC,WAAO;AAAA,MACN,QAAQ,EAAE;AAAA,MACV,YAAY,EAAE;AAAA,MACd,SAAS,EAAE;AAAA,MACX,MAAM;AAAA,MACN,SAASF;AAAA,MACT,UAAUH;AAAA,IACb;AAAA,EACC;AAAA,EACA,MAAM,UAAU,GAAGG,GAAG;AACrB,YAAQA,GAAC;AAAA,MACR,KAAK;AAAQ,eAAO,MAAM,EAAE,KAAI;AAAA,MAChC,KAAK;AAAQ,eAAO,MAAM,EAAE,KAAI;AAAA,MAChC,KAAK;AAAQ,eAAO,MAAM,EAAE,KAAI;AAAA,MAChC,KAAK;AAAe,eAAO,MAAM,EAAE,YAAW;AAAA,MAC9C,KAAK;AAAY,eAAO,MAAM,EAAE,SAAQ;AAAA,MACxC,KAAK;AAAU,eAAO,EAAE;AAAA,MACxB,SAAS;AACR,YAAIA,IAAI,EAAE,QAAQ,IAAI,cAAc,KAAK;AACzC,YAAIA,EAAE,SAAS,kBAAkB,EAAG,QAAO,MAAM,EAAE,KAAI;AACvD,YAAIA,EAAE,SAAS,OAAO,EAAG,QAAO,MAAM,EAAE,KAAI;AAC5C,YAAIA,EAAE,SAAS,qBAAqB,EAAG,QAAO,MAAM,EAAE,SAAQ;AAC9D,YAAIA,EAAE,SAAS,0BAA0B,KAAKA,EAAE,SAAS,QAAQ,KAAKA,EAAE,SAAS,QAAQ,KAAKA,EAAE,SAAS,QAAQ,EAAG,QAAO,MAAM,EAAE,KAAI;AACvI,YAAI;AACH,iBAAO,MAAM,EAAE,KAAI;AAAA,QACpB,QAAQ;AACP,iBAAO,MAAM,EAAE,KAAI;AAAA,QACpB;AAAA,MACD;AAAA,IACH;AAAA,EACC;AAAA,EACA,eAAe,GAAG;AACjB,QAAI,aAAa,cAAc;AAC9B,UAAI,EAAE,SAAS,eAAgB,QAAO;AAAA,QACrC,SAAS;AAAA,QACT,MAAM;AAAA,MACV;AACG,UAAI,EAAE,SAAS,aAAc,QAAO;AAAA,QACnC,SAAS;AAAA,QACT,MAAM;AAAA,MACV;AAAA,IACE;AACA,WAAO,aAAa,QAAQ,EAAE,SAAS,iBAAiB;AAAA,MACvD,SAAS;AAAA,MACT,MAAM;AAAA,IACT,IAAM,EAAE,SAAS,gBAAgB,EAAE,QAAQ,SAAS,OAAO,IAAI;AAAA,MAC5D,SAAS;AAAA,MACT,MAAM;AAAA,IACT,IAAM;AAAA,MACH,SAAS,EAAE;AAAA,MACX,MAAM,EAAE,SAAS,cAAc,kBAAkB;AAAA,MACjD,eAAe;AAAA,IAClB,IAAM;AAAA,MACH,SAAS,OAAO,CAAC;AAAA,MACjB,MAAM;AAAA,MACN,eAAe;AAAA,IAClB;AAAA,EACC;AAAA,EACA,mBAAmB,GAAG;AACrB,WAAO,OAAO,KAAK,YAAY,CAAC,CAAC,KAAK,aAAa,KAAK,UAAU;AAAA,EACnE;AAAA,EACA,eAAe,GAAG;AACjB,WAAO,IAAI,iBAAiB,IAAI,EAAE,eAAe,IAAI,MAAM;AAAA,EAC5D;AAAA,EACA,iBAAiB,GAAG;AACnB,WAAO,IAAI,iBAAiB,IAAI,IAAI,IAAI0B,GAAE,EAAE,aAAa,EAAE,SAAS,IAAI;AAAA,MACvE,aAAa,MAAM;AAAA,MACnB,SAAS,MAAM;AAAA,IAClB;AAAA,EACC;AAAA,EACA,iBAAiB,GAAG;AACnB,WAAO,OAAO,KAAK,WAAW,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc;AAAA,EAC5E;AAAA,EACA,MAAM,GAAG;AACR,WAAO,IAAI,QAAQ,CAAC1B,MAAM,WAAWA,GAAG,CAAC,CAAC;AAAA,EAC3C;AAAA,EACA,SAAS,GAAG;AACX,SAAK,cAAc,KAAK,WAAW,MAAM,CAAC;AAAA,EAC3C;AACD;AAWA,SAASgR,GAAG5Q,GAAG;AACd,SAAO,IAAIwC,GAAExC,CAAC;AACf;AC5kCA,SAASL,GAAEO,IAAI,IAAI;AACjB,QAAM,EAAE,SAAST,IAAI,IAAI,gBAAgBM,IAAI,QAAQG,GAAGI,IAAIH,GAAE;AAAA,IAC5D,SAASV;AAAA,IACT,gBAAgBM;AAAA,EACpB,CAAG;AACD,SAAO;AAAA,IACL,KAAK,CAACH,GAAGI,MAAMM,EAAE,IAAIV,GAAGI,CAAC;AAAA,IACzB,MAAM,CAACJ,GAAGI,GAAGF,MAAMQ,EAAE,KAAKV,GAAGI,GAAGF,CAAC;AAAA,IACjC,KAAK,CAACF,GAAGI,GAAGF,MAAMQ,EAAE,IAAIV,GAAGI,GAAGF,CAAC;AAAA,IAC/B,OAAO,CAACF,GAAGI,GAAGF,MAAMQ,EAAE,MAAMV,GAAGI,GAAGF,CAAC;AAAA,IACnC,QAAQ,CAACF,GAAGI,MAAMM,EAAE,OAAOV,GAAGI,CAAC;AAAA,EACnC;AACA;AACA,SAASI,GAAEF,IAAI,IAAI;AACjB,SAAOP,GAAEO,CAAC;AACZ;;;;;;","x_google_ignoreList":[0,1,2,3,4,6,7,8,11]}
|