UNPKG

@connectycube/chat-widget

Version:

A customizable React chat widget built on the ConnectyCube platform, enabling real-time messaging, calls, and user engagement in any web app.

184 lines 1.79 MB
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t(typeof globalThis<`u`&&globalThis.React?globalThis.React:require("react"),typeof globalThis<`u`&&globalThis.ConnectyCube?globalThis.ConnectyCube:require("connectycube"),typeof globalThis<`u`&&globalThis.ReactDOM?globalThis.ReactDOM:require("react-dom")):typeof define==`function`&&define.amd?define([`react`,`connectycube`,`react-dom`],t):(e=typeof globalThis<`u`?globalThis:e||self,e.ConnectyCubeChatWidget=t(e.React,e.ConnectyCube,e.ReactDOM))})(this,function(e,t,n){var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),u=(e,t)=>{let n={};for(var r in e)i(n,r,{get:e[r],enumerable:!0});return t||i(n,Symbol.toStringTag,{value:`Module`}),n},d=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var s=o(t),l=0,u=s.length,d;l<u;l++)d=s[l],!c.call(e,d)&&d!==n&&i(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(r=a(t,d))||r.enumerable});return e},f=(e,t,n)=>(d(e,t,`default`),n&&d(n,t,`default`)),p=(e,t,n)=>(n=e==null?{}:r(s(e)),d(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e));let m=p(e,1);e=p(e),t=p(t,1),n=p(n,1);var h=e=>typeof e==`string`,g=()=>{let e,t,n=new Promise((n,r)=>{e=n,t=r});return n.resolve=e,n.reject=t,n},_=e=>e==null?``:String(e),v=(e,t,n)=>{e.forEach(e=>{t[e]&&(n[e]=t[e])})},y=/###/g,b=e=>e&&e.includes(`###`)?e.replace(y,`.`):e,x=e=>!e||h(e),S=(e,t,n)=>{let r=h(t)?t.split(`.`):t,i=0;for(;i<r.length-1;){if(x(e))return{};let t=b(r[i]);!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++i}return x(e)?{}:{obj:e,k:b(r[i])}},C=(e,t,n)=>{let{obj:r,k:i}=S(e,t,Object);if(r!==void 0||t.length===1){r[i]=n;return}let a=t[t.length-1],o=t.slice(0,t.length-1),s=S(e,o,Object);for(;s.obj===void 0&&o.length;)a=`${o[o.length-1]}.${a}`,o=o.slice(0,o.length-1),s=S(e,o,Object),s?.obj&&s.obj[`${s.k}.${a}`]!==void 0&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=n},w=(e,t,n,r)=>{let{obj:i,k:a}=S(e,t,Object);i[a]=i[a]||[],i[a].push(n)},T=(e,t)=>{let{obj:n,k:r}=S(e,t);if(n&&Object.prototype.hasOwnProperty.call(n,r))return n[r]},E=(e,t,n)=>{let r=T(e,n);return r===void 0?T(t,n):r},D=(e,t,n)=>{for(let r in t)r!==`__proto__`&&r!==`constructor`&&(Object.prototype.hasOwnProperty.call(e,r)?h(e[r])||e[r]instanceof String||h(t[r])||t[r]instanceof String?n&&(e[r]=t[r]):D(e[r],t[r],n):e[r]=t[r]);return e},ee=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,`\\$&`),O={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`,"/":`&#x2F;`},k=e=>h(e)?e.replace(/[&<>"'\/]/g,e=>O[e]):e,A=class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){let t=this.regExpMap.get(e);if(t!==void 0)return t;let n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}},j=[` `,`,`,`?`,`!`,`;`],te=new A(20),M=(e,t,n)=>{t||=``,n||=``;let r=j.filter(e=>!t.includes(e)&&!n.includes(e));if(r.length===0)return!0;let i=te.getRegExp(`(${r.map(e=>e===`?`?`\\?`:e).join(`|`)})`),a=!i.test(e);if(!a){let t=e.indexOf(n);t>0&&!i.test(e.substring(0,t))&&(a=!0)}return a},ne=(e,t,n=`.`)=>{if(!e)return;if(e[t])return Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0;let r=t.split(n),i=e;for(let e=0;e<r.length;){if(!i||typeof i!=`object`)return;let t,a=``;for(let o=e;o<r.length;++o)if(o!==e&&(a+=n),a+=r[o],t=i[a],t!==void 0){if([`string`,`number`,`boolean`].includes(typeof t)&&o<r.length-1)continue;e+=o-e+1;break}i=t}return i},N=e=>e?.replace(/_/g,`-`),re={type:`logger`,log(e){this.output(`log`,e)},warn(e){this.output(`warn`,e)},error(e){this.output(`error`,e)},output(e,t){console?.[e]?.apply?.(console,t)}},ie=new class e{constructor(e,t={}){this.init(e,t)}init(e,t={}){this.prefix=t.prefix||`i18next:`,this.logger=e||re,this.options=t,this.debug=t.debug}log(...e){return this.forward(e,`log`,``,!0)}warn(...e){return this.forward(e,`warn`,``,!0)}error(...e){return this.forward(e,`error`,``)}deprecate(...e){return this.forward(e,`warn`,`WARNING DEPRECATED: `,!0)}forward(e,t,n,r){return r&&!this.debug?null:(e=e.map(e=>h(e)?e.replace(/[\r\n\x00-\x1F\x7F]/g,` `):e),h(e[0])&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[t](e))}create(t){return new e(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t||=this.options,t.prefix=t.prefix||this.prefix,new e(this.logger,t)}},ae=class{constructor(){this.observers={}}on(e,t){return e.split(` `).forEach(e=>{this.observers[e]||(this.observers[e]=new Map);let n=this.observers[e].get(t)||0;this.observers[e].set(t,n+1)}),this}off(e,t){if(this.observers[e]){if(!t){delete this.observers[e];return}this.observers[e].delete(t)}}once(e,t){let n=(...r)=>{t(...r),this.off(e,n)};return this.on(e,n),this}emit(e,...t){this.observers[e]&&Array.from(this.observers[e].entries()).forEach(([e,n])=>{for(let r=0;r<n;r++)e(...t)}),this.observers[`*`]&&Array.from(this.observers[`*`].entries()).forEach(([n,r])=>{for(let i=0;i<r;i++)n(e,...t)})}},oe=class extends ae{constructor(e,t={ns:[`translation`],defaultNS:`translation`}){super(),this.data=e||{},this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator=`.`),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.includes(e)||this.options.ns.push(e)}removeNamespaces(e){let t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n,r={}){let i=r.keySeparator===void 0?this.options.keySeparator:r.keySeparator,a=r.ignoreJSONStructure===void 0?this.options.ignoreJSONStructure:r.ignoreJSONStructure,o;e.includes(`.`)?o=e.split(`.`):(o=[e,t],n&&(Array.isArray(n)?o.push(...n):h(n)&&i?o.push(...n.split(i)):o.push(n)));let s=T(this.data,o);return!s&&!t&&!n&&e.includes(`.`)&&(e=o[0],t=o[1],n=o.slice(2).join(`.`)),s||!a||!h(n)?s:ne(this.data?.[e]?.[t],n,i)}addResource(e,t,n,r,i={silent:!1}){let a=i.keySeparator===void 0?this.options.keySeparator:i.keySeparator,o=[e,t];n&&(o=o.concat(a?n.split(a):n)),e.includes(`.`)&&(o=e.split(`.`),r=t,t=o[1]),this.addNamespaces(t),C(this.data,o,r),i.silent||this.emit(`added`,e,t,n,r)}addResources(e,t,n,r={silent:!1}){for(let r in n)(h(n[r])||Array.isArray(n[r]))&&this.addResource(e,t,r,n[r],{silent:!0});r.silent||this.emit(`added`,e,t,n)}addResourceBundle(e,t,n,r,i,a={silent:!1,skipCopy:!1}){let o=[e,t];e.includes(`.`)&&(o=e.split(`.`),r=n,n=t,t=o[1]),this.addNamespaces(t);let s=T(this.data,o)||{};a.skipCopy||(n=JSON.parse(JSON.stringify(n))),r?D(s,n,i):s={...s,...n},C(this.data,o,s),a.silent||this.emit(`added`,e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit(`removed`,e,t)}hasResourceBundle(e,t){return this.getResource(e,t)!==void 0}getResourceBundle(e,t){return t||=this.options.defaultNS,this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){let t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find(e=>t[e]&&Object.keys(t[e]).length>0)}toJSON(){return this.data}},se={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,i){return e.forEach(e=>{t=this.processors[e]?.process(t,n,r,i)??t}),t}},ce=Symbol(`i18next/PATH_KEY`);function le(){let e=[],t=Object.create(null),n;return t.get=(r,i)=>(n?.revoke?.(),i===ce?e:(e.push(i),n=Proxy.revocable(r,t),n.proxy)),Proxy.revocable(Object.create(null),t).proxy}function ue(e,t){let{[ce]:n}=e(le()),r=t?.keySeparator??`.`,i=t?.nsSeparator??`:`,a=t?.enableSelector===`strict`;if(n.length>1&&i){let e=t?.ns,o=a?Array.isArray(e)?e:e?[e]:null:Array.isArray(e)?e:null;if(o&&(a?o:o.length>1?o.slice(1):[]).includes(n[0]))return`${n[0]}${i}${n.slice(1).join(r)}`}return n.join(r)}var de=e=>!h(e)&&typeof e!=`boolean`&&typeof e!=`number`,fe=class e extends ae{constructor(e,t={}){super(),v([`resourceStore`,`languageUtils`,`pluralResolver`,`interpolator`,`backendConnector`,`i18nFormat`,`utils`],e,this),this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator=`.`),this.logger=ie.create(`translator`),this.checkedLoadedFor={}}changeLanguage(e){e&&(this.language=e)}exists(e,t={interpolation:{}}){let n={...t};if(e==null)return!1;let r=this.resolve(e,n);if(r?.res===void 0)return!1;let i=de(r.res);return!(n.returnObjects===!1&&i)}extractFromKey(e,t){let n=t.nsSeparator===void 0?this.options.nsSeparator:t.nsSeparator;n===void 0&&(n=`:`);let r=t.keySeparator===void 0?this.options.keySeparator:t.keySeparator,i=t.ns||this.options.defaultNS||[],a=n&&e.includes(n),o=!this.options.userDefinedKeySeparator&&!t.keySeparator&&!this.options.userDefinedNsSeparator&&!t.nsSeparator&&!M(e,n,r);if(a&&!o){let t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:h(i)?[i]:i};let a=e.split(n);(n!==r||n===r&&this.options.ns.includes(a[0]))&&(i=a.shift()),e=a.join(r)}return{key:e,namespaces:h(i)?[i]:i}}translate(t,n,r){let i=typeof n==`object`?{...n}:n;if(typeof i!=`object`&&this.options.overloadTranslationOptionHandler&&(i=this.options.overloadTranslationOptionHandler(arguments)),typeof i==`object`&&(i={...i}),i||={},t==null)return``;typeof t==`function`&&(t=ue(t,{...this.options,...i})),Array.isArray(t)||(t=[String(t)]),t=t.map(e=>typeof e==`function`?ue(e,{...this.options,...i}):String(e));let a=i.returnDetails===void 0?this.options.returnDetails:i.returnDetails,o=i.keySeparator===void 0?this.options.keySeparator:i.keySeparator,{key:s,namespaces:c}=this.extractFromKey(t[t.length-1],i),l=c[c.length-1],u=i.nsSeparator===void 0?this.options.nsSeparator:i.nsSeparator;u===void 0&&(u=`:`);let d=i.lng||this.language,f=i.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(d?.toLowerCase()===`cimode`)return f?a?{res:`${l}${u}${s}`,usedKey:s,exactUsedKey:s,usedLng:d,usedNS:l,usedParams:this.getUsedParamsDetails(i)}:`${l}${u}${s}`:a?{res:s,usedKey:s,exactUsedKey:s,usedLng:d,usedNS:l,usedParams:this.getUsedParamsDetails(i)}:s;let p=this.resolve(t,i),m=p?.res,g=p?.usedKey||s,_=p?.exactUsedKey||s,v=[`[object Number]`,`[object Function]`,`[object RegExp]`],y=i.joinArrays===void 0?this.options.joinArrays:i.joinArrays,b=!this.i18nFormat||this.i18nFormat.handleAsObject,x=i.count!==void 0&&!h(i.count),S=e.hasDefaultValue(i),C=x?this.pluralResolver.getSuffix(d,i.count,i):``,w=i.ordinal&&x?this.pluralResolver.getSuffix(d,i.count,{ordinal:!1}):``,T=x&&!i.ordinal&&i.count===0,E=T&&i[`defaultValue${this.options.pluralSeparator}zero`]||i[`defaultValue${C}`]||i[`defaultValue${w}`]||i.defaultValue,D=m;b&&!m&&S&&(D=E);let ee=de(D),O=Object.prototype.toString.apply(D);if(b&&D&&ee&&!v.includes(O)&&!(h(y)&&Array.isArray(D))){if(!i.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn(`accessing an object - but returnObjects options is not enabled!`);let e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(g,D,{...i,ns:c}):`key '${s} (${this.language})' returned an object instead of string.`;return a?(p.res=e,p.usedParams=this.getUsedParamsDetails(i),p):e}if(o){let e=Array.isArray(D),t=e?[]:{},n=e?_:g;for(let e in D)if(Object.prototype.hasOwnProperty.call(D,e)){let r=`${n}${o}${e}`;S&&!m?t[e]=this.translate(r,{...i,defaultValue:de(E)?E[e]:void 0,joinArrays:!1,ns:c}):t[e]=this.translate(r,{...i,joinArrays:!1,ns:c}),t[e]===r&&(t[e]=D[e])}m=t}}else if(b&&h(y)&&Array.isArray(m))m=m.join(y),m&&=this.extendTranslation(m,t,i,r);else{let e=!1,n=!1;!this.isValidLookup(m)&&S&&(e=!0,m=E),this.isValidLookup(m)||(n=!0,m=s);let a=(i.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&n?void 0:m,c=S&&E!==m&&this.options.updateMissing;if(n||e||c){if(this.logger.log(c?`updateKey`:`missingKey`,d,l,x&&!c?`${s}${this.pluralResolver.getSuffix(d,i.count,i)}`:s,c?E:m),o){let e=this.resolve(s,{...i,keySeparator:!1});e&&e.res&&this.logger.warn(`Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.`)}let e=[],t=this.languageUtils.getFallbackCodes(this.options.fallbackLng,i.lng||this.language);if(this.options.saveMissingTo===`fallback`&&t&&t[0])for(let n=0;n<t.length;n++)e.push(t[n]);else this.options.saveMissingTo===`all`?e=this.languageUtils.toResolveHierarchy(i.lng||this.language):e.push(i.lng||this.language);let n=(e,t,n)=>{let r=S&&n!==m?n:a;this.options.missingKeyHandler?this.options.missingKeyHandler(e,l,t,r,c,i):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(e,l,t,r,c,i),this.emit(`missingKey`,e,l,t,m)};this.options.saveMissing&&(this.options.saveMissingPlurals&&x?e.forEach(e=>{let t=this.pluralResolver.getSuffixes(e,i);T&&i[`defaultValue${this.options.pluralSeparator}zero`]&&!t.includes(`${this.options.pluralSeparator}zero`)&&t.push(`${this.options.pluralSeparator}zero`),t.forEach(t=>{n([e],s+t,i[`defaultValue${t}`]||E)})}):n(e,s,E))}m=this.extendTranslation(m,t,i,p,r),n&&m===s&&this.options.appendNamespaceToMissingKey&&(m=`${l}${u}${s}`),(n||e)&&this.options.parseMissingKeyHandler&&(m=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}${u}${s}`:s,e?m:void 0,i))}return a?(p.res=m,p.usedParams=this.getUsedParamsDetails(i),p):m}extendTranslation(e,t,n,r,i){if(this.i18nFormat?.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});let a=h(e)&&(n?.interpolation?.skipOnVariables===void 0?this.options.interpolation.skipOnVariables:n.interpolation.skipOnVariables),o;if(a){let t=e.match(this.interpolator.nestingRegexp);o=t&&t.length}let s=n.replace&&!h(n.replace)?n.replace:n;if(this.options.interpolation.defaultVariables&&(s={...this.options.interpolation.defaultVariables,...s}),e=this.interpolator.interpolate(e,s,n.lng||this.language||r.usedLng,n),a){let t=e.match(this.interpolator.nestingRegexp),r=t&&t.length;o<r&&(n.nest=!1)}!n.lng&&r&&r.res&&(n.lng=this.language||r.usedLng),n.nest!==!1&&(e=this.interpolator.nest(e,(...e)=>i?.[0]===e[0]&&!n.context?(this.logger.warn(`It seems you are nesting recursively key: ${e[0]} in key: ${t[0]}`),null):this.translate(...e,t),n)),n.interpolation&&this.interpolator.reset()}let a=n.postProcess||this.options.postProcess,o=h(a)?[a]:a;return e!=null&&o?.length&&n.applyPostProcessor!==!1&&(e=se.handle(o,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...r,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e,t={}){let n,r,i,a,o;return h(e)&&(e=[e]),Array.isArray(e)&&(e=e.map(e=>typeof e==`function`?ue(e,{...this.options,...t}):e)),e.forEach(e=>{if(this.isValidLookup(n))return;let s=this.extractFromKey(e,t),c=s.key;r=c;let l=s.namespaces;this.options.fallbackNS&&(l=l.concat(this.options.fallbackNS));let u=t.count!==void 0&&!h(t.count),d=u&&!t.ordinal&&t.count===0,f=t.context!==void 0&&(h(t.context)||typeof t.context==`number`)&&t.context!==``,p=t.lngs?t.lngs:this.languageUtils.toResolveHierarchy(t.lng||this.language,t.fallbackLng);l.forEach(e=>{this.isValidLookup(n)||(o=e,!this.checkedLoadedFor[`${p[0]}-${e}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(o)&&(this.checkedLoadedFor[`${p[0]}-${e}`]=!0,this.logger.warn(`key "${r}" for languages "${p.join(`, `)}" won't get resolved as namespace "${o}" was not yet loaded`,`This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!`)),p.forEach(r=>{if(this.isValidLookup(n))return;a=r;let o=[c];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(o,c,r,e,t);else{let e;u&&(e=this.pluralResolver.getSuffix(r,t.count,t));let n=`${this.options.pluralSeparator}zero`,i=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(u&&(t.ordinal&&e.startsWith(i)&&o.push(c+e.replace(i,this.options.pluralSeparator)),o.push(c+e),d&&o.push(c+n)),f){let r=`${c}${this.options.contextSeparator||`_`}${t.context}`;o.push(r),u&&(t.ordinal&&e.startsWith(i)&&o.push(r+e.replace(i,this.options.pluralSeparator)),o.push(r+e),d&&o.push(r+n))}}let s;for(;s=o.pop();)this.isValidLookup(n)||(i=s,n=this.getResource(r,e,s,t))}))})}),{res:n,usedKey:r,exactUsedKey:i,usedLng:a,usedNS:o}}isValidLookup(e){return e!==void 0&&!(!this.options.returnNull&&e===null)&&!(!this.options.returnEmptyString&&e===``)}getResource(e,t,n,r={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(e,t,n,r):this.resourceStore.getResource(e,t,n,r)}getUsedParamsDetails(e={}){let t=[`defaultValue`,`ordinal`,`context`,`replace`,`lng`,`lngs`,`fallbackLng`,`ns`,`keySeparator`,`nsSeparator`,`returnObjects`,`returnDetails`,`joinArrays`,`postProcess`,`interpolation`],n=e.replace&&!h(e.replace),r=n?e.replace:e;if(n&&e.count!==void 0&&(r.count=e.count),this.options.interpolation.defaultVariables&&(r={...this.options.interpolation.defaultVariables,...r}),!n){r={...r};for(let e of t)delete r[e]}return r}static hasDefaultValue(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&t.startsWith(`defaultValue`)&&e[t]!==void 0)return!0;return!1}},pe=class{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=ie.create(`languageUtils`)}getScriptPartFromCode(e){if(e=N(e),!e||!e.includes(`-`))return null;let t=e.split(`-`);return t.length===2||(t.pop(),t[t.length-1].toLowerCase()===`x`)?null:this.formatLanguageCode(t.join(`-`))}getLanguagePartFromCode(e){if(e=N(e),!e||!e.includes(`-`))return e;let t=e.split(`-`);return this.formatLanguageCode(t[0])}formatLanguageCode(e){if(h(e)&&e.includes(`-`)){let t;try{t=Intl.getCanonicalLocales(e)[0]}catch{}return t&&this.options.lowerCaseLng&&(t=t.toLowerCase()),t||(this.options.lowerCaseLng?e.toLowerCase():e)}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return(this.options.load===`languageOnly`||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.includes(e)}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach(e=>{if(t)return;let n=this.formatLanguageCode(e);(!this.options.supportedLngs||this.isSupportedCode(n))&&(t=n)}),!t&&this.options.supportedLngs&&e.forEach(e=>{if(t)return;let n=this.getScriptPartFromCode(e);if(this.isSupportedCode(n))return t=n;let r=this.getLanguagePartFromCode(e);if(this.isSupportedCode(r))return t=r;t=this.options.supportedLngs.find(e=>e===r?!0:!e.includes(`-`)&&!r.includes(`-`)?!1:!!(e.includes(`-`)&&!r.includes(`-`)&&e.slice(0,e.indexOf(`-`))===r||e.startsWith(r)&&r.length>1))}),t||=this.getFallbackCodes(this.options.fallbackLng)[0],t}getFallbackCodes(e,t){if(!e)return[];if(typeof e==`function`&&(e=e(t)),h(e)&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];let n=e[t];return n||=e[this.getScriptPartFromCode(t)],n||=e[this.formatLanguageCode(t)],n||=e[this.getLanguagePartFromCode(t)],n||=e.default,n||[]}toResolveHierarchy(e,t){let n=this.getFallbackCodes((t===!1?[]:t)||this.options.fallbackLng||[],e),r=[],i=e=>{e&&(this.isSupportedCode(e)?r.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return h(e)&&(e.includes(`-`)||e.includes(`_`))?(this.options.load!==`languageOnly`&&i(this.formatLanguageCode(e)),this.options.load!==`languageOnly`&&this.options.load!==`currentOnly`&&i(this.getScriptPartFromCode(e)),this.options.load!==`currentOnly`&&i(this.getLanguagePartFromCode(e))):h(e)&&i(this.formatLanguageCode(e)),n.forEach(e=>{r.includes(e)||i(this.formatLanguageCode(e))}),r}},me={zero:0,one:1,two:2,few:3,many:4,other:5},he={select:e=>e===1?`one`:`other`,resolvedOptions:()=>({pluralCategories:[`one`,`other`]})},ge=class{constructor(e,t={}){this.languageUtils=e,this.options=t,this.logger=ie.create(`pluralResolver`),this.pluralRulesCache={}}clearCache(){this.pluralRulesCache={}}getRule(e,t={}){let n=N(e===`dev`?`en`:e),r=t.ordinal?`ordinal`:`cardinal`,i=JSON.stringify({cleanedCode:n,type:r});if(i in this.pluralRulesCache)return this.pluralRulesCache[i];let a;try{a=new Intl.PluralRules(n,{type:r})}catch{if(typeof Intl>`u`)return this.logger.error(`No Intl support, please use an Intl polyfill!`),he;if(!e.match(/-|_/))return he;let n=this.languageUtils.getLanguagePartFromCode(e);a=this.getRule(n,t)}return this.pluralRulesCache[i]=a,a}needsPlural(e,t={}){let n=this.getRule(e,t);return n||=this.getRule(`dev`,t),n?.resolvedOptions().pluralCategories.length>1}getPluralFormsOfKey(e,t,n={}){return this.getSuffixes(e,n).map(e=>`${t}${e}`)}getSuffixes(e,t={}){let n=this.getRule(e,t);return n||=this.getRule(`dev`,t),n?n.resolvedOptions().pluralCategories.sort((e,t)=>me[e]-me[t]).map(e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:``}${e}`):[]}getSuffix(e,t,n={}){let r=this.getRule(e,n);return r?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:``}${r.select(t)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix(`dev`,t,n))}},_e=(e,t,n,r=`.`,i=!0)=>{let a=E(e,t,n);return!a&&i&&h(n)&&(a=ne(e,n,r),a===void 0&&(a=ne(t,n,r))),a},ve=e=>e.replace(/\$/g,`$$$$`),ye=class{constructor(e={}){this.logger=ie.create(`interpolator`),this.options=e,this.format=e?.interpolation?.format||(e=>e),this.init(e)}init(e={}){e.interpolation||={escapeValue:!0};let{escape:t,escapeValue:n,useRawValueToEscape:r,prefix:i,prefixEscaped:a,suffix:o,suffixEscaped:s,formatSeparator:c,unescapeSuffix:l,unescapePrefix:u,nestingPrefix:d,nestingPrefixEscaped:f,nestingSuffix:p,nestingSuffixEscaped:m,nestingOptionsSeparator:h,maxReplaces:g,alwaysFormat:_}=e.interpolation;this.escape=t===void 0?k:t,this.escapeValue=n===void 0?!0:n,this.useRawValueToEscape=r===void 0?!1:r,this.prefix=i?ee(i):a||`{{`,this.suffix=o?ee(o):s||`}}`,this.formatSeparator=c||`,`,this.unescapePrefix=l?``:u?ee(u):`-`,this.unescapeSuffix=this.unescapePrefix?``:l?ee(l):``,this.nestingPrefix=d?ee(d):f||ee(`$t(`),this.nestingSuffix=p?ee(p):m||ee(`)`),this.nestingOptionsSeparator=h||`,`,this.maxReplaces=g||1e3,this.alwaysFormat=_===void 0?!1:_,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){let e=(e,t)=>e?.source===t?(e.lastIndex=0,e):new RegExp(t,`g`);this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(e,t,n,r){let i,a,o,s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},c=e=>{if(!e.includes(this.formatSeparator)){let i=_e(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(i,void 0,n,{...r,...t,interpolationkey:e}):i}let i=e.split(this.formatSeparator),a=i.shift().trim(),o=i.join(this.formatSeparator).trim();return this.format(_e(t,s,a,this.options.keySeparator,this.options.ignoreJSONStructure),o,n,{...r,...t,interpolationkey:a})};this.resetRegExp(),!this.escapeValue&&typeof e==`string`&&/\$t\([^)]*\{[^}]*\{\{/.test(e)&&this.logger.warn(`nesting options string contains interpolated variables with escapeValue: false — if any of those values are attacker-controlled they can inject additional nesting options (e.g. redirect lng/ns). Sanitise untrusted input before passing it to t(), or keep escapeValue: true.`);let l=r?.missingInterpolationHandler||this.options.missingInterpolationHandler,u=r?.interpolation?.skipOnVariables===void 0?this.options.interpolation.skipOnVariables:r.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>ve(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?ve(this.escape(e)):ve(e)}].forEach(t=>{for(o=0;i=t.regex.exec(e);){let n=i[1].trim();if(a=c(n),a===void 0)if(typeof l==`function`){let t=l(e,i,r);a=h(t)?t:``}else if(r&&Object.prototype.hasOwnProperty.call(r,n))a=``;else if(u){a=i[0];continue}else this.logger.warn(`missed to pass in variable ${n} for interpolating ${e}`),a=``;else!h(a)&&!this.useRawValueToEscape&&(a=_(a));let s=t.safeValue(a);if(e=e.replace(i[0],s),u?(t.regex.lastIndex+=a.length,t.regex.lastIndex-=i[0].length):t.regex.lastIndex=0,o++,o>=this.maxReplaces)break}}),e}nest(e,t,n={}){let r,i,a,o=(e,t)=>{let n=this.nestingOptionsSeparator;if(!e.includes(n))return e;let r=e.split(RegExp(`${ee(n)}[ ]*{`)),i=`{${r[1]}`;e=r[0],i=this.interpolate(i,a);let o=i.match(/'/g),s=i.match(/"/g);((o?.length??0)%2==0&&!s||(s?.length??0)%2!=0)&&(i=i.replace(/'/g,`"`));try{a=JSON.parse(i),t&&(a={...t,...a})}catch(t){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,t),`${e}${n}${i}`}return a.defaultValue&&a.defaultValue.includes(this.prefix)&&delete a.defaultValue,e};for(;r=this.nestingRegexp.exec(e);){let s=[];a={...n},a=a.replace&&!h(a.replace)?a.replace:a,a.applyPostProcessor=!1,delete a.defaultValue;let c=/{.*}/.test(r[1])?r[1].lastIndexOf(`}`)+1:r[1].indexOf(this.formatSeparator);if(c!==-1&&(s=r[1].slice(c).split(this.formatSeparator).map(e=>e.trim()).filter(Boolean),r[1]=r[1].slice(0,c)),i=t(o.call(this,r[1].trim(),a),a),i&&r[0]===e&&!h(i))return i;h(i)||(i=_(i)),i||=(this.logger.warn(`missed to resolve ${r[1]} for nesting ${e}`),``),s.length&&(i=s.reduce((e,t)=>this.format(e,t,n.lng,{...n,interpolationkey:r[1].trim()}),i.trim())),e=e.replace(r[0],i),this.regexp.lastIndex=0}return e}},be=e=>{let t=e.toLowerCase().trim(),n={};if(e.includes(`(`)){let r=e.split(`(`);t=r[0].toLowerCase().trim();let i=r[1].slice(0,-1);t===`currency`&&!i.includes(`:`)?n.currency||=i.trim():t===`relativetime`&&!i.includes(`:`)?n.range||=i.trim():i.split(`;`).forEach(e=>{if(e){let[t,...r]=e.split(`:`),i=r.join(`:`).trim().replace(/^'+|'+$/g,``),a=t.trim();n[a]||(n[a]=i),i===`false`&&(n[a]=!1),i===`true`&&(n[a]=!0),isNaN(i)||(n[a]=parseInt(i,10))}})}return{formatName:t,formatOptions:n}},xe=e=>{let t={};return(n,r,i)=>{let a=i;i&&i.interpolationkey&&i.formatParams&&i.formatParams[i.interpolationkey]&&i[i.interpolationkey]&&(a={...a,[i.interpolationkey]:void 0});let o=r+JSON.stringify(a),s=t[o];return s||(s=e(N(r),i),t[o]=s),s(n)}},Se=e=>(t,n,r)=>e(N(n),r)(t),Ce=class{constructor(e={}){this.logger=ie.create(`formatter`),this.options=e,this.init(e)}init(e,t={interpolation:{}}){this.formatSeparator=t.interpolation.formatSeparator||`,`;let n=t.cacheInBuiltFormats?xe:Se;this.formats={number:n((e,t)=>{let n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)}),currency:n((e,t)=>{let n=new Intl.NumberFormat(e,{...t,style:`currency`});return e=>n.format(e)}),datetime:n((e,t)=>{let n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)}),relativetime:n((e,t)=>{let n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||`day`)}),list:n((e,t)=>{let n=new Intl.ListFormat(e,{...t});return e=>n.format(e)})}}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=xe(t)}format(e,t,n,r={}){if(!t||e==null)return e;let i=t.split(this.formatSeparator),a=[];for(let e=0;e<i.length;e++){let t=i[e];for(;t.indexOf(`(`)>-1&&!t.includes(`)`)&&e+1<i.length;)t=`${t}${this.formatSeparator}${i[++e]}`;a.push(t)}return a.reduce((e,t)=>{let{formatName:i,formatOptions:a}=be(t);if(this.formats[i]){let t=e;try{let o=r?.formatParams?.[r.interpolationkey]||{},s=o.locale||o.lng||r.locale||r.lng||n;t=this.formats[i](e,s,{...a,...r,...o})}catch(e){this.logger.warn(e)}return t}else this.logger.warn(`there was no format function for ${i}`);return e},e)}},we=(e,t)=>{e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)},Te=class extends ae{constructor(e,t,n,r={}){super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=r,this.logger=ie.create(`backendConnector`),this.waitingReads=[],this.maxParallelReads=r.maxParallelReads||10,this.readingCalls=0,this.maxRetries=r.maxRetries>=0?r.maxRetries:5,this.retryTimeout=r.retryTimeout>=1?r.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(n,r.backend,r)}queueLoad(e,t,n,r){let i={},a={},o={},s={};return e.forEach(e=>{let r=!0;t.forEach(t=>{let o=`${e}|${t}`;!n.reload&&this.store.hasResourceBundle(e,t)?this.state[o]=2:this.state[o]<0||(this.state[o]===1?a[o]===void 0&&(a[o]=!0):(this.state[o]=1,r=!1,a[o]===void 0&&(a[o]=!0),i[o]===void 0&&(i[o]=!0),s[t]===void 0&&(s[t]=!0)))}),r||(o[e]=!0)}),(Object.keys(i).length||Object.keys(a).length)&&this.queue.push({pending:a,pendingCount:Object.keys(a).length,loaded:{},errors:[],callback:r}),{toLoad:Object.keys(i),pending:Object.keys(a),toLoadLanguages:Object.keys(o),toLoadNamespaces:Object.keys(s)}}loaded(e,t,n){let r=e.split(`|`),i=r[0],a=r[1];t&&this.emit(`failedLoading`,i,a,t),!t&&n&&this.store.addResourceBundle(i,a,n,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&n&&(this.state[e]=0);let o={};this.queue.forEach(n=>{w(n.loaded,[i],a),we(n,e),t&&n.errors.push(t),n.pendingCount===0&&!n.done&&(Object.keys(n.loaded).forEach(e=>{o[e]||(o[e]={});let t=n.loaded[e];t.length&&t.forEach(t=>{o[e][t]===void 0&&(o[e][t]=!0)})}),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())}),this.emit(`loaded`,o),this.queue=this.queue.filter(e=>!e.done)}read(e,t,n,r=0,i=this.retryTimeout,a){if(!e.length)return a(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:e,ns:t,fcName:n,tried:r,wait:i,callback:a});return}this.readingCalls++;let o=(o,s)=>{if(this.readingCalls--,this.waitingReads.length>0){let e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}if(o&&s&&r<this.maxRetries){setTimeout(()=>{this.read(e,t,n,r+1,i*2,a)},i);return}a(o,s)},s=this.backend[n].bind(this.backend);if(s.length===2){try{let n=s(e,t);n&&typeof n.then==`function`?n.then(e=>o(null,e)).catch(o):o(null,n)}catch(e){o(e)}return}return s(e,t,o)}prepareLoading(e,t,n={},r){if(!this.backend)return this.logger.warn(`No backend was added via i18next.use. Will not load resources.`),r&&r();h(e)&&(e=this.languageUtils.toResolveHierarchy(e)),h(t)&&(t=[t]);let i=this.queueLoad(e,t,n,r);if(!i.toLoad.length)return i.pending.length||r(),null;i.toLoad.forEach(e=>{this.loadOne(e)})}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e,t=``){let n=e.split(`|`),r=n[0],i=n[1];this.read(r,i,`read`,void 0,void 0,(n,a)=>{n&&this.logger.warn(`${t}loading namespace ${i} for language ${r} failed`,n),!n&&a&&this.logger.log(`${t}loaded namespace ${i} for language ${r}`,a),this.loaded(e,n,a)})}saveMissing(e,t,n,r,i,a={},o=()=>{}){if(this.services?.utils?.hasLoadedNamespace&&!this.services?.utils?.hasLoadedNamespace(t)){this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,`This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!`);return}if(!(n==null||n===``)){if(this.backend?.create){let s={...a,isUpdate:i},c=this.backend.create.bind(this.backend);if(c.length<6)try{let i;i=c.length===5?c(e,t,n,r,s):c(e,t,n,r),i&&typeof i.then==`function`?i.then(e=>o(null,e)).catch(o):o(null,i)}catch(e){o(e)}else c(e,t,n,r,o,s)}!e||!e[0]||this.store.addResource(e[0],t,n,r)}}},Ee=()=>({debug:!1,initAsync:!0,ns:[`translation`],defaultNS:[`translation`],fallbackLng:[`dev`],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:`all`,preload:!1,keySeparator:`.`,nsSeparator:`:`,pluralSeparator:`_`,contextSeparator:`_`,enableSelector:!1,partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:`fallback`,saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if(typeof e[1]==`object`&&(t=e[1]),h(e[1])&&(t.defaultValue=e[1]),h(e[2])&&(t.tDescription=e[2]),typeof e[2]==`object`||typeof e[3]==`object`){let n=e[3]||e[2];Object.keys(n).forEach(e=>{t[e]=n[e]})}return t},interpolation:{escapeValue:!0,prefix:`{{`,suffix:`}}`,formatSeparator:`,`,unescapePrefix:`-`,nestingPrefix:`$t(`,nestingSuffix:`)`,nestingOptionsSeparator:`,`,maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),De=e=>(h(e.ns)&&(e.ns=[e.ns]),h(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),h(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&!e.supportedLngs.includes(`cimode`)&&(e.supportedLngs=e.supportedLngs.concat([`cimode`])),e),Oe=()=>{},ke=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(t=>{typeof e[t]==`function`&&(e[t]=e[t].bind(e))})},Ae=class e extends ae{constructor(e={},t){if(super(),this.options=De(e),this.services={},this.logger=ie,this.modules={external:[]},ke(this),t&&!this.isInitialized&&!e.isClone){if(!this.options.initAsync)return this.init(e,t),this;setTimeout(()=>{this.init(e,t)},0)}}init(e={},t){this.isInitializing=!0,typeof e==`function`&&(t=e,e={}),e.defaultNS==null&&e.ns&&(h(e.ns)?e.defaultNS=e.ns:e.ns.includes(`translation`)||(e.defaultNS=e.ns[0]));let n=Ee();this.options={...n,...this.options,...De(e)},this.options.interpolation={...n.interpolation,...this.options.interpolation},e.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=e.keySeparator),e.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=e.nsSeparator),typeof this.options.overloadTranslationOptionHandler!=`function`&&(this.options.overloadTranslationOptionHandler=n.overloadTranslationOptionHandler);let r=e=>e?typeof e==`function`?new e:e:null;if(!this.options.isClone){this.modules.logger?ie.init(r(this.modules.logger),this.options):ie.init(null,this.options);let e;e=this.modules.formatter?this.modules.formatter:Ce;let t=new pe(this.options);this.store=new oe(this.options.resources,this.options);let n=this.services;n.logger=ie,n.resourceStore=this.store,n.languageUtils=t,n.pluralResolver=new ge(t,{prepend:this.options.pluralSeparator}),e&&(n.formatter=r(e),n.formatter.init&&n.formatter.init(n,this.options),this.options.interpolation.format=n.formatter.format.bind(n.formatter)),n.interpolator=new ye(this.options),n.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},n.backendConnector=new Te(r(this.modules.backend),n.resourceStore,n,this.options),n.backendConnector.on(`*`,(e,...t)=>{this.emit(e,...t)}),this.modules.languageDetector&&(n.languageDetector=r(this.modules.languageDetector),n.languageDetector.init&&n.languageDetector.init(n,this.options.detection,this.options)),this.modules.i18nFormat&&(n.i18nFormat=r(this.modules.i18nFormat),n.i18nFormat.init&&n.i18nFormat.init(this)),this.translator=new fe(this.services,this.options),this.translator.on(`*`,(e,...t)=>{this.emit(e,...t)}),this.modules.external.forEach(e=>{e.init&&e.init(this)})}if(this.format=this.options.interpolation.format,t||=Oe,this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){let e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&e[0]!==`dev`&&(this.options.lng=e[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn(`init: no languageDetector is used and no lng is defined`),[`getResource`,`hasResourceBundle`,`getResourceBundle`,`getDataByLanguage`].forEach(e=>{this[e]=(...t)=>this.store[e](...t)}),[`addResource`,`addResources`,`addResourceBundle`,`removeResourceBundle`].forEach(e=>{this[e]=(...t)=>(this.store[e](...t),this)});let i=g(),a=()=>{let e=(e,n)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn(`init: i18next is already initialized. You should call init just once!`),this.isInitialized=!0,this.options.isClone||this.logger.log(`initialized`,this.options),this.emit(`initialized`,this.options),i.resolve(n),t(e,n)};if((this.languages||this.isLanguageChangingTo)&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initAsync?a():setTimeout(a,0),i}loadResources(e,t=Oe){let n=t,r=h(e)?e:this.language;if(typeof e==`function`&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if(r?.toLowerCase()===`cimode`&&(!this.options.preload||this.options.preload.length===0))return n();let e=[],t=t=>{t&&t!==`cimode`&&this.services.languageUtils.toResolveHierarchy(t).forEach(t=>{t!==`cimode`&&(e.includes(t)||e.push(t))})};r?t(r):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(e=>t(e)),this.options.preload?.forEach?.(e=>t(e)),this.services.backendConnector.load(e,this.options.ns,e=>{!e&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),n(e)})}else n(null)}reloadResources(e,t,n){let r=g();return typeof e==`function`&&(n=e,e=void 0),typeof t==`function`&&(n=t,t=void 0),e||=this.languages,t||=this.options.ns,n||=Oe,this.services.backendConnector.reload(e,t,e=>{r.resolve(),n(e)}),r}use(e){if(!e)throw Error(`You are passing an undefined module! Please check the object you are passing to i18next.use()`);if(!e.type)throw Error(`You are passing a wrong module! Please check the object you are passing to i18next.use()`);return e.type===`backend`&&(this.modules.backend=e),(e.type===`logger`||e.log&&e.warn&&e.error)&&(this.modules.logger=e),e.type===`languageDetector`&&(this.modules.languageDetector=e),e.type===`i18nFormat`&&(this.modules.i18nFormat=e),e.type===`postProcessor`&&se.addPostProcessor(e),e.type===`formatter`&&(this.modules.formatter=e),e.type===`3rdParty`&&this.modules.external.push(e),this}setResolvedLanguage(e){if(!(!e||!this.languages)&&![`cimode`,`dev`].includes(e)){for(let e=0;e<this.languages.length;e++){let t=this.languages[e];if(![`cimode`,`dev`].includes(t)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}!this.resolvedLanguage&&!this.languages.includes(e)&&this.store.hasLanguageSomeTranslations(e)&&(this.resolvedLanguage=e,this.languages.unshift(e))}}changeLanguage(e,t){this.isLanguageChangingTo=e;let n=g();this.emit(`languageChanging`,e);let r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},i=(i,a)=>{a?this.isLanguageChangingTo===e&&(r(a),this.translator.changeLanguage(a),this.isLanguageChangingTo=void 0,this.emit(`languageChanged`,a),this.logger.log(`languageChanged`,a)):this.isLanguageChangingTo=void 0,n.resolve((...e)=>this.t(...e)),t&&t(i,(...e)=>this.t(...e))},a=t=>{!e&&!t&&this.services.languageDetector&&(t=[]);let n=h(t)?t:t&&t[0],a=this.store.hasLanguageSomeTranslations(n)?n:this.services.languageUtils.getBestMatchFromCodes(h(t)?[t]:t);a&&(this.language||r(a),this.translator.language||this.translator.changeLanguage(a),this.services.languageDetector?.cacheUserLanguage?.(a)),this.loadResources(a,e=>{i(e,a)})};return!e&&this.services.languageDetector&&!this.services.languageDetector.async?a(this.services.languageDetector.detect()):!e&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(e),n}getFixedT(e,t,n,r){let i=r?.scopeNs,a=(e,t,...r)=>{let o;o=typeof t==`object`?{...t}:this.options.overloadTranslationOptionHandler([e,t].concat(r)),o.lng=o.lng||a.lng,o.lngs=o.lngs||a.lngs;let s=o.ns!==void 0&&o.ns!==null;o.ns=o.ns||a.ns,o.keyPrefix!==``&&(o.keyPrefix=o.keyPrefix||n||a.keyPrefix);let c={...this.options,...o};Array.isArray(i)&&!s&&(c.ns=i),typeof o.keyPrefix==`function`&&(o.keyPrefix=ue(o.keyPrefix,c));let l=this.options.keySeparator||`.`,u;return o.keyPrefix&&Array.isArray(e)?u=e.map(e=>(typeof e==`function`&&(e=ue(e,c)),`${o.keyPrefix}${l}${e}`)):(typeof e==`function`&&(e=ue(e,c)),u=o.keyPrefix?`${o.keyPrefix}${l}${e}`:e),this.t(u,o)};return h(e)?a.lng=e:a.lngs=e,a.ns=t,a.keyPrefix=n,a}t(...e){return this.translator?.translate(...e)}exists(...e){return this.translator?.exists(...e)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e,t={}){if(!this.isInitialized)return this.logger.warn(`hasLoadedNamespace: i18next was not initialized`,this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn(`hasLoadedNamespace: i18n.languages were undefined or empty`,this.languages),!1;let n=t.lng||this.resolvedLanguage||this.languages[0],r=this.options?this.options.fallbackLng:!1,i=this.languages[this.languages.length-1];if(n.toLowerCase()===`cimode`)return!0;let a=(e,t)=>{let n=this.services.backendConnector.state[`${e}|${t}`];return n===-1||n===0||n===2};if(t.precheck){let e=t.precheck(this,a);if(e!==void 0)return e}return!!(this.hasResourceBundle(n,e)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||a(n,e)&&(!r||a(i,e)))}loadNamespaces(e,t){let n=g();return this.options.ns?(h(e)&&(e=[e]),e.forEach(e=>{this.options.ns.includes(e)||this.options.ns.push(e)}),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){let n=g();h(e)&&(e=[e]);let r=this.options.preload||[],i=e.filter(e=>!r.includes(e)&&this.services.languageUtils.isSupportedCode(e));return i.length?(this.options.preload=r.concat(i),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}dir(e){if(e||=this.resolvedLanguage||(this.languages?.length>0?this.languages[0]:this.language),!e)return`rtl`;try{let t=new Intl.Locale(e);if(t&&t.getTextInfo){let e=t.getTextInfo();if(e&&e.direction)return e.direction}}catch{}let t=`ar.shu.sqr.ssh.xaa.yhd.yud.aao.abh.abv.acm.acq.acw.acx.acy.adf.ads.aeb.aec.afb.ajp.apc.apd.arb.arq.ars.ary.arz.auz.avl.ayh.ayl.ayn.ayp.bbz.pga.he.iw.ps.pbt.pbu.pst.prp.prd.ug.ur.ydd.yds.yih.ji.yi.hbo.men.xmn.fa.jpr.peo.pes.prs.dv.sam.ckb`.split(`.`),n=this.services?.languageUtils||new pe(Ee());return e.toLowerCase().indexOf(`-latn`)>1?`ltr`:t.includes(n.getLanguagePartFromCode(e))||e.toLowerCase().indexOf(`-arab`)>1?`rtl`:`ltr`}static createInstance(t={},n){let r=new e(t,n);return r.createInstance=e.createInstance,r}cloneInstance(t={},n=Oe){let r=t.forkResourceStore;r&&delete t.forkResourceStore;let i={...this.options,...t,isClone:!0},a=new e(i);if((t.debug!==void 0||t.prefix!==void 0)&&(a.logger=a.logger.clone(t)),[`store`,`services`,`language`].forEach(e=>{a[e]=this[e]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},r&&(a.store=new oe(Object.keys(this.store.data).reduce((e,t)=>(e[t]={...this.store.data[t]},e[t]=Object.keys(e[t]).reduce((n,r)=>(n[r]={...e[t][r]},n),e[t]),e),{}),i),a.services.resourceStore=a.store),t.interpolation){let e={...Ee().interpolation,...this.options.interpolation,...t.interpolation},n={...i,interpolation:e};a.services.interpolator=new ye(n)}return a.translator=new fe(a.services,i),a.translator.on(`*`,(e,...t)=>{a.emit(e,...t)}),a.init(i,n),a.translator.options=i,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}.createInstance();Ae.createInstance,Ae.dir,Ae.init,Ae.loadResources,Ae.reloadResources,Ae.use,Ae.changeLanguage,Ae.getFixedT,Ae.t,Ae.exists,Ae.setDefaultNamespace,Ae.hasLoadedNamespace,Ae.loadNamespaces,Ae.loadLanguages;var je=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);Re(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},Me={},Ne=(e,t,n,r)=>{Re(n)&&Me[n]||(Re(n)&&(Me[n]=new Date),je(e,t,n,r))},Pe=(e,t)=>()=>{if(e.isInitialized)t();else{let n=()=>{setTimeout(()=>{e.off(`initialized`,n)},0),t()};e.on(`initialized`,n)}},Fe=(e,t,n)=>{e.loadNamespaces(t,Pe(e,n))},Ie=(e,t,n,r)=>{if(Re(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return Fe(e,n,r);n.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,Pe(e,r))},Le=(e,t,n={})=>!t.languages||!t.languages.length?(Ne(t,`NO_LANGUAGES`,`i18n.languages were undefined or empty`,{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,r)=>{if(n.bindI18n&&n.bindI18n.indexOf(`languageChanging`)>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}),Re=e=>typeof e==`string`,ze=e=>typeof e==`object`&&!!e,Be=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,Ve={"&amp;":`&`,"&#38;":`&`,"&lt;":`<`,"&#60;":`<`,"&gt;":`>`,"&#62;":`>`,"&apos;":`'`,"&#39;":`'`,"&quot;":`"`,"&#34;":`"`,"&nbsp;":` `,"&#160;":` `,"&copy;":`©`,"&#169;":`©`,"&reg;":`®`,"&#174;":`®`,"&hellip;":`…`,"&#8230;":`…`,"&#x2F;":`/`,"&#47;":`/`},He=e=>Ve[e],Ue={bindI18n:`languageChanged`,bindI18nStore:``,transEmptyNodeValue:``,transSupportBasicHtmlNodes:!0,transWrapTextNodes:``,transKeepBasicHtmlNodesFor:[`br`,`strong`,`i`,`p`],useSuspense:!0,unescape:e=>e.replace(Be,He),transDefaultProps:void 0},We=(e={})=>{Ue={...Ue,...e}},Ge=()=>Ue,Ke,qe=e=>{Ke=e},Je=()=>Ke,Ye={type:`3rdParty`,init(e){We(e.options.react),qe(e)}},Xe=(0,e.createContext)(),Ze=class{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}},Qe=l((e=>{var t=typeof globalThis<`u`&&globalThis.React?globalThis.React:require("react");function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var r=typeof Object.is==`function`?Object.is:n,i=t.useState,a=t.useEffect,o=t.useLayoutEffect,s=t.useDebugValue;function c(e,t){var n=t(),r=i({inst:{value:n,getSnapshot:t}}),c=r[0].inst,u=r[1];return o(function(){c.value=n,c.getSnapshot=t,l(c)&&u({inst:c})},[e,n,t]),a(function(){return l(c)&&u({inst:c}),e(function(){l(c)&&u({inst:c})})},[e]),s(n),n}function l(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}catch{return!0}}function u(e,t){return t()}var d=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?u:c;e.useSyncExternalStore=t.useSyncExternalStore===void 0?d:t.useSyncExternalStore})),$e=l(((e,t)=>{t.exports=Qe()}))(),et={t:(e,t)=>{if(Re(t))return t;if(ze(t)&&Re(t.defaultValue))return t.defaultValue;if(typeof e==`function`)return``;if(Array.isArray(e)){let t=e[e.length-1];return typeof t==`function`?``:t}return e},ready:!1},tt=()=>()=>{},nt=(t,n={})=>{let{i18n:r}=n,{i18n:i,defaultNS:a}=(0,e.useContext)(Xe)||{},o=r||i||Je();o&&!o.reportNamespaces&&(o.reportNamespaces=new Ze),o||Ne(o,`NO_I18NEXT_INSTANCE`,`useTranslation: You will need to pass in an i18next instance by using initReactI18next`);let s=(0,e.useMemo)(()=>({...Ge(),...o?.options?.react,...n}),[o,n]),{useSuspense:c,keyPrefix:l}=s,u=t||a||o?.options?.defaultNS,d=Re(u)?[u]:u||[`translation`],f=(0,e.useMemo)(()=>d,d);o?.reportNamespaces?.addUsedNamespaces?.(f);let p=(0,e.useRef)(0),m=(0,e.useCallback)(e=>{if(!o)return tt;let{bindI18n:t,bindI18nStore:n}=s,r=()=>{p.current+=1,e()};return t&&o.on(t,r),n&&o.store.on(n,r),()=>{t&&t.split(` `).forEach(e=>o.off(e,r)),n&&n.split(` `).forEach(e=>o.store.off(e,r))}},[o,s]),h=(0,e.useRef)(),g=(0,e.useCallback)(()=>{if(!o)return et;let e=!!(o.isInitialized||o.initializedStoreOnce)&&f.every(e=>Le(e,o,s)),t=n.lng||o.language,r=p.current,i=h.current;if(i&&i.ready===e&&i.lng===t&&i.keyPrefix===l&&i.revision===r)return i;let a={t:o.getFixedT(t,s.nsMode===`fallback`?f:f[0],l,{scopeNs:f}),ready:e,lng:t,keyPrefix:l,revision:r};return h.current=a,a},[o,f,l,s,n.lng]),[_,v]=(0,e.useState)(0),{t:y,ready:b}=(0,$e.useSyncExternalStore)(m,g,g);(0,e.useEffect)(()=>{if(o&&!b&&!c){let e=()=>v(e=>e+1);n.lng?Ie(o,n.lng,f,e):Fe(o,f,e)}},[o,n.lng,f,b,c,_]);let x=o||{},S=(0,e.useRef)(null),C=(0,e.useRef)(),w=e=>{let t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;let n=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(n,`__original`))try{Object.defineProperty(n,"__original",{value:e,writable:!1,enumerable:!1,configurable:!1})}catch{}return n},T=(0,e.useMemo)(()=>{let e=x,t=e?.language,n=e;e&&(S.current&&S.current.__original===e&&C.current===t?n=S.current:(n=w(e),S.current=n,C.current=t));let r=!b&&!c?(...e)=>(Ne(o,`USE_T_BEFORE_READY`,`useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.`),y(...e)):y,i=[r,n,b];return i.t=r,i.i18n=n,i.ready=b,i},[y,x,b,x.resolvedLanguage,x.language,x.languages]);if(o&&c&&!b)throw new Promise(e=>{let t=()=>e();n.lng?Ie(o,n.lng,f,t):Fe(o,f,t)});return T},rt=(e=[])=>e.slice().filter(Boolean).sort((e,t)=>e.id-t.id).reduce((e,{id:t})=>`${e}:${t}`,lt),it=e=>new Promise(t=>setTimeout(t,e)),at=e=>e.replace(/@supports\s*\(\(*\s*-webkit-hyphens\s*:\s*none\s*\)*\s*and\s*\(not\s*\(margin-trim\s*:\s*inline\)\)\s*\)\s*or\s*\(\(*\s*-moz-orient\s*:\s*inline\s*\)*\s*and\s*\(not\s*\(color\s*:\s*rgb\(from\s+red\s+r\s+g\s+b\)\)\)\s*\)\s*\{\s*([\s\S]*?)\s*\}/gm,(e,t)=>t.trim()),ot=()=>typeof window<`u`&&typeof document<`u`,st=function(e){return e.WRAPPER=`data-connectycube-chat-widget-wrapper`,e.FOCUSED=`data-connectycube-chat-widget-focused`,e}({}),ct=`15px`,lt=`external_id`,ut=`::current_user`,dt=function(e){return e.GET_SUMMARY=`ai:get-summary`,e.CHANGE_TONE=`ai:change-tone`,e.DEFAULT=`ai:default`,e}({}),ft=function(e){return e.LAST_7_DAYS=`last-7-days`,e.LAST_DAY=`last-day`,e.UNREADS=`unreads`,e}({}),pt=function(e){return e.POSITIVE=`positive`,e.NEGATIVE=`negative`,e.CRINGE=`cringe`,e}({}),mt=function(e){return e.AI_TEXT_SUMMARY=`ai-text-summary`,e}({}),ht={AddMembers:`إضافة أعضاء`,Admin:`مسؤول`,areTyping:`يكتبون`,Cancel:`إلغاء`,ChatName:`اسم الغرفة`,ChatNameRequired:`اسم الغرفة مطلوب`,Chat:`غررفة`,Chats:`الغرف`,ChooseChat:`اختر غرفة`,Continue:`متابعة`,CreateGroupChat:`إنشاء مجموعة`,Delete:`حذف`,Draft:`مسودة`,"EnterMessage...":`أدخل رسالة...`,EnterUserName:`أدخل اسم المستخدم`,ExitChat:`مغادرة الغرفة`,ExitChatConfirm:`هل أنت متأكد من أنك تريد مغادرة هذه الغرفة؟`,FileTypeNotSupported:`تنسيق الملف غير مدعوم`,isTyping:`يكتب`,me:`أنا`,Members:`الأعضاء`,members:`الأعضاء`,NewGroup:`مجموعة جديدة`,NewMessage:`رسالة جديدة`,NoChats:`ابدأ دردشتك الأولى و انظر ما سيحدث!`,NoMessages:`لا توجد رسائل بعد`,NoOnlineUsers:`لا يوجد مستخدمين متصلين`,Profile:`الملف الشخصي`,RemoveMembers:`إزالة الأعضاء`,"RemoveMembers?":`هل أنت متأكد من أنك تريد إزالة الأعضاء؟`,Reset:`إعادة تعيين`,"Search...":`ابحث...`,Select:`اختار`,Send:`ارسل`,StartChat:`بدء غرفة`,NewUserChatDialogTitle:`إرسال رسالة إلى المستخدم`,NewGroupChatDialogTitle:`بدء مجموعة جديدة`,"typing...":`يكتب...`,Users:`المستخدمون`,you:`أنت`,Video:`فيديو`,Call:`مكالمة`,Block:`حظر`,UnBlock:`إلغاء الحظر`,Report:`إبلاغ`,ReportUser:`إبلاغ المستخدم`,WhatsWrongWithThisUser:`ما المشكلة مع هذا المستخدم؟`,ProvideReason:`سبب الإبلاغ`,ReportCreatedSuccessfully:`تم إنشاء الإبلاغ بنجاح`,ReportSubmitFailed:`فشل في تقديم الإبلاغ`,MyProfile:`ملفي الشخصي`,YouBlocked:`أنت محظور من قبل هذا المستخدم`,BlockList:`قائمة الحظر`,AddToBlockList:`إضافة إلى قائمة الحظر`,"AddToBlockList?":`هل أنت متأكد من أنك تريد إضافة {{name}} إلى قائمة الحظر؟`,RemoveFromBlockList:`إزالة من قائمة الحظر`,"RemoveFromBlockList?":`هل أنت متأكد من أنك تريد إزالة {{name}} من قائمة الحظر؟`,BlockListEmpty:`قائمة الحظر فارغة`,NotificationSettings:`إعدادات الإشعارات`,Notifications:`الإشعارات`,NotificationSound:`صوت الإشعار`,PushNotifications:`الإشعارات الدفعية`,PleaseWait:`يرجى الانتظار`,Available:`متاح`,Busy:`مشغول`,Away:`بعيد`,Online:`متصل`,LastSeen:`آخر ظهور`,IncomingCall:`مكالمة واردة`,IncomingAudioCall:`مكالمة صوتية واردة من {{name}}`,IncomingVideoCall:`مكالمة فيديو واردة من {{name}}`,Accept:`قبول`,Reject:`رفض`,RejectedCall:`{{name}} رفض المكالمة`,MissedCall:`مكالمة فائتة من {{name}}`,AuthForm:{Login:`تسجيل الدخول`,Password:`كلمة المرور`,Register:`التسجيل`,Registration:`التسجيل`,LoginRequired:`تسجيل الدخول مطلوب`,LoginMinLimit:`يجب أن يكون تسجيل الدخول على الأقل {{limit}} حرف`,LoginMaxLimit:`يجب أن يكون تسجيل الدخول على الأكثر {{limit}} حرف`,PasswordRequired:`كلمة المرور مطلوبة`,PasswordMinLimit:`يجب أن تكون كلمة المرور على الأقل {{limit}} حرف`,PasswordMaxLimit:`يجب أن تكون كلمة المرور على الأكثر {{limit}} حرف`,LoginDescription:`أدخل تسجيل الدخول وكلمة المرور للوصول إلى حسابك`,RegisterDescription:`املأ النموذج أدناه للتسجيل`,"ToRegister?":`ليس لديك حساب؟`,"ToLogin?":`لديك حساب بالفعل؟`},SingleViewForm:{Title:`قدم بيانات الاتصال الخاصة بك لبدء غرفة`,Subtitle:`لن نشارك عنوان بريدك الإلكتروني. يتم استخدام عنوان بريدك الإلكتروني فقط للتواصل معك`,NamePlaceholder:`الاسم`,NameRequired:`الاسم مطلوب`,EmailPlaceholder:`البريد الإلكتروني`,EmailRequired:`البريد الإلكتروني مطلوب`,EmailInvalid:`تنسيق البريد الإلكتروني غير صالح`,AcceptTermsAndConditions:`قبول الشروط والأحكام`,AcceptTermsAndConditionsError:`يجب عليك قبول الشروط والأحكام`,TermsAndConditionsText:`بالنقر على هذا المربع، توافق على`,TermsAndConditionsLink:`الشروط والأحكام`,RememberMe:`تذكرني`,RememberMeText:`هذا جهازي الخاص`,Next:`التالي`},SingleViewChatError:`الخصم(ون) للغرفة غير موجود`,Information:`المعلومات`,AI:{GetSummary:`الحصول على ملخص`,ChangeMessageTone:`تغيير نبرة الرسالة`,SummaryMessageTitle:`هذه الرسالة خاصة بك فقط`,forLast7Days:`لآخر ٧ أيام`,forLastDay:`للأمس`,forUnreads:`للرسائل غير المقروءة`,MessageTone:`تغيير نبرة الرسالة`,EmptyMessageTone:`لا يمكن تغيير نبرة الرسالة الفارغة`,positive:`إيجابي`,negative:`سلبي`,cringe:`محرج`},CallHistory:{RejectedIncoming:`مكالمة واردة مرفوضة`,RejectedOutgoing:`مكالمة صادرة مرفوضة`,Unanswered:`غير مستجوبة`,Missed:`مكالمة فائتة`,Canceled:`ملغاة`,Ended:`منتهية`,videoCall:`مكالمة فيديو`,audioCall:`مكالمة صوتية`,defaultCall:`مكالمة`},DragAndDrop:`اسحب وضع الملفات هنا`},gt={AddMembers:`Add members`,Admin:`Admin`,areTyping:`are typing`,Cancel:`Cancel`,ChatName:`Chat name`,ChatNameRequired:`Chat name is required`,Chat:`Chat`,Chats:`Chats`,ChooseChat:`Choose a chat`,Continue:`Continue`,CreateGroupChat:`Create group chat`,Delete:`Delete`,Draft:`Draft`,"EnterMessage...":`Enter message...`,EnterUserName:`Enter user name`,ExitChat:`Exit chat`,ExitChatConfirm:`Are you sure you want to leave this chat?`,FileTypeNotSupported:`File format is not supported`,isTyping:`is typing`,me:`me`,Members:`Members`,members:`members`,NewGroup:`New group`,NewMessage:`New message`,NoChats:`Begin your first chat and see what happens!`,NoMessages:`No messages yet`,NoOnlineUsers:`No online users`,Profile:`Profile`,RemoveMembers:`Remove members`,"RemoveMembers?":`Are you sure you want to remove members?`,Reset:`Reset`,"Search...":`Search...`,Select:`Select`,Send:`Send`,StartChat:`Start chat`,NewUserChatDialogTitle:`Send message to user`,NewGroupChatDialogTitle:`Start a new Group`,"typing...":`typing...`,Users:`Users`,you:`you`,Video:`Video`,Call:`Call`,Block:`Block`,UnBlock:`Unblock`,Report:`Report`,ReportUser:`Report user`,WhatsWrongWithThisUser:`What's wrong with this user?`,ProvideReason:`Reason for reporting`,ReportCreatedSuccessfully:`Report has been created successfully`,ReportSubmitFailed:`Failed to submit report`,MyProfile:`My profile`,YouBlocked:`You are blocked by this user`,BlockList:`Block list`,AddToBlockList:`Add to block list`,"AddToBlockList?":`Are you sure you want to add {{name}} to block list?`,RemoveFromBlockList:`Remove from block list`,"RemoveFromBlockList?":`Are you sure you want to remove {{name}} from block list?`,BlockListEmpty:`Block list is empty`,NotificationSettings:`Notification settings`,Notifications:`Notifications`,NotificationSound:`Notification sound`,PushNotifications:`Push notifications`,PleaseWait:`Please wait`,Available:`Available`,Busy:`Busy`,Away:`Away`,Online:`Online`,LastSeen:`Last seen`,IncomingCall:`Incoming call`,IncomingAudioCall:`Incoming audio call from {{name}}`,IncomingVideoCall:`Incoming video call from {{name}}`,Accept:`Accept`,Reject:`Reject`,RejectedCall:`{{name}} rejected the call`,MissedCall:`Missed call from {{name}}`,AuthForm:{Login:`Login`,Password:`Password`,Register:`Register`,Registration:`Registration`,LoginRequired:`Login is required`,LoginMinLimit:`Login must be at least {{limit}} symbols`,LoginMaxLimit:`Login must be at most {{limit}} symbols`,PasswordRequired:`Login is required`,PasswordMinLimit:`Password must be at least {{limit}} symbols`,PasswordMaxLimit:`Password must be at most {{limit}} symbols`,LoginDescription:`Enter your login and password to access your account`,RegisterDescription:`Fill in the form below to sign up`,"ToRegister?":`Don't have an account?`,"ToLogin?":`Already have an account?`},SingleViewForm:{Title:`Submit your contact data to start a chat`,Subtitle:`We will not share your email address. Your email address is used solely to contact you`,NamePlaceholder:`Name`,NameRequired:`Name is required`,EmailPlaceholder:`Email`,EmailRequired:`Email is required`,EmailInvalid:`Invalid email format`,AcceptTermsAndConditions:`Accept terms and conditions`,AcceptTermsAndConditionsError:`You must accept the terms and conditions`,TermsAndConditionsText:`By clicking this checkbox, you agree to the`,TermsAndConditionsLink:`terms and conditions`,RememberMe:`Remember me`,RememberMeText:`This is my private device`,Next:`Next`},SingleViewChatError:`Opponent(s) for the chat not found`,Information:`Information`,AI:{GetSummary:`Get summary`,ChangeMessageTone:`Change message tone`,SummaryMessageTitle:`Only you can see this message`,forLast7Days:`for last 7 days`,forLastDay:`for last day`,forUnreads:`for unreads`,MessageTone:`Change message tone`,EmptyMessageTone:`Can't change tone of empty message`,positive:`positive`,negative:`negative`,cringe:`cringe`},CallHistory:{RejectedIncoming:`Rejected incoming`,RejectedOutgoing:`Rejected outgoing`,Unanswered:`Unanswered`,Missed:`Missed`,Canceled:`Canceled`,Ended:`Ended`,videoCall:`video call`,audioCall:`audio call`,defaultCall:`call`},DragAndDrop:`Drop files here`},_t={AddMembers:`Προσθήκη μελών`,Admin:`Διαχειριστής`,areTyping:`είναι`,Cancel:`Ακύρωση`,ChatName:`Όνομα συνομιλίας`,ChatNameRequired:`Το όνομα συνομιλίας είναι υποχρεωτικό`,Chat:`Συνομιλία`,Chats:`Συνομιλίες`,ChooseChat:`Επιλέξτε συνομιλία`,Continue:`Συνέχεια`,CreateGroupChat:`Δημιουργία ομαδικής συνομιλίας`,Delete:`Διαγραφή`,Draft:`Πρόχειρο`,"EnterMessage...":`Εισάγετε μήνυμα...`,EnterUserName:`Εισάγετε όνομα χρήστη`,ExitChat:`Έξοδος από τη συνομιλία`,ExitChatConfirm:`Είστε σίγουροι ότι θέλετε να φύγετε από αυτή τη συνομιλία;`,FileTypeNotSupported:`Η μορφή αρχείου δεν υποστηρίζεται`,isTyping:`είναι`,me:`εγώ`,Members:`Μέλη`,members:`μέλη`,NewGroup:`Νέα ομάδα`,NewMessage:`Νέο μήνυμα`,NoChats:`Επιλέξτε κάποιο χρήστη από τη λίστα Χρήστες και ξεκινήστε την πρώτη σας συνομιλία!`,NoMessages:`Δεν υπάρχουν μηνύματα`,NoOnlineUsers:`Δεν υπάρχουν συνδεδεμένοι χρήστες`,Profile:`Προφίλ`,RemoveMembers:`Αφαίρεση μελών`,"RemoveMembers?":`Είστε σίγουροι ότι θέλετε να αφαιρέσετε τα μέλη;`,Reset:`Επαναφορά`,"Search...":`Αναζήτηση...`,Select:`Επιλογή`,Send:`Αποστολή`,StartChat:`Έναρξη συνομιλίας`,NewUserChatDialogTitle:`Αποστολή μηνύματος σε μέλος`,NewGroupChatDialogTitle:`Δημιουργία νέας ομάδας`,"typing...":`πληκτρολογεί...`,Users:`Χρήστες`,you:`εσύ`,Video:`Βίντεο`,Call:`Κλήση`,Block:`Block`,UnBlock:`Unblock`,Report:`Αναφορά`,ReportUser:`Αναφορά χρήστη`,WhatsWrongWithThisUser:`Τι θέλετε να αναφέρετε για αυτόν το χρήστη;`,ProvideReason:`Λόγος αναφοράς`,ReportCreatedSuccessfully:`Η αναφορά για το χρήστη έγινε`,ReportSubmitFailed:`Σφάλμα στη δημιουργία αναφοράς`,MyProfile:`Το προφίλ μου`,YouBlocked:`Αυτός ο χρήστης σας έχει κάνει Block`,BlockList:`Λίστα Blocked χρηστών`,AddToBlockList:`Προσθήκη στη λίστα Blocked`,"AddToBlockList?":`Σίγουρα θέλετε να προσθέσετε το χρήστη {{name}} στη λίστα Blocked;`,RemoveFromBlockList:`Αφαίρεση από τη λίστα Blocked`,"RemoveFromBlockList?":`Σίγουρα θέλετε να αφαιρέσετε το χρήστη {{name}} από τη λίστα Blocked;`,BlockListEmpty:`Η Blocked λίστα είναι άδεια`,NotificationSettings:`Ρυθμίσεις ειδοποιήσεων`,Notifications:`Ειδοποιήσεις`,NotificationSound:`Ήχος ειδοποίησης`,PushNotifications:`Ειδοποιήσεις push`,PleaseWait:`Παρακαλώ περιμένετε`,Available:`Διαθέσιμος/η`,Busy:`Απασχολημένος/η`,Away:`Απουσιάζω`,Online:`Συνδεδεμένος/η`,LastSeen:`Τελευταία εμφάνιση`,IncomingCall:`Εισερχόμενη κλήση`,IncomingAudioCall:`Εισερχόμενη κλήση ήχου από τον χρήστη {{name}}`,IncomingVideoCall:`Εισερχόμενη κλήση βίντεο από τον χρήστη {{name}}`,Accept:`Αποδοχή`,Reject:`Απόρριψη`,RejectedCall:`Ο χρήστης {{name}} απέρριψε την κλήση`,MissedCall:`Αναπάντητη κλήση από τον χρήστη {{name}}`,AuthForm:{Login:`Σύνδεση`,Password:`Κωδικός πρόσβασης`,Register:`Εγγραφή`,Registration:`Εγγραφή`,LoginRequired:`Το όνομα χρήστη είναι υποχρεωτικό`,LoginMinLimit:`Το όνομα χρήστη πρέπει να έχει τουλάχιστον {{limit}} χαρακτήρες`,LoginMaxLimit:`Το όνομα χρήστη πρέπει να έχει το πολύ {{limit}} χαρακτήρες`,PasswordRequired:`Ο κωδικός πρόσβασης είναι υποχρεωτικός`,PasswordMinLimit:`Ο κωδικός πρόσβασης πρέπει να έχει τουλάχιστον {{limit}} χαρακτήρες`,PasswordMaxLimit:`Ο κωδικός πρόσβασης πρέπει να έχει το πολύ {{limit}} χαρακτήρες`,LoginDescription:`Εισάγετε το όνομα χρήστη και τον κωδικό πρόσβασης για να αποκτήσετε πρόσβαση στον λογαριασμό σας`,RegisterDescription:`Συμπληρώστε την παρακάτω φόρμα για να εγγραφείτε`,"ToRegister?":`Δεν έχετε λογαριασμό;`,"ToLogin?":`Έχετε ήδη λογαριασμό;`},SingleViewForm:{Title:`Υποβάλετε τα στοιχεία επικοινωνίας σας για να ξεκινήσετε μια συνομιλία`,Subtitle:`Δεν θα κοινοποιήσουμε τη διεύθυνση email σας. Η διεύθυνση email σας χρησιμοποιείται αποκλειστικά για να επικοινωνήσουμε μαζί σας.`,NamePlaceholder:`Όνομα`,NameRequired:`Το όνομα είναι υποχρεωτικό`,EmailPlaceholder:`E-mail`,EmailRequired:`Απαιτείται email`,Emailnvalid:`Μη έγκυρη μορφή email`,AcceptTermsAndConditions:`Αποδοχή όρων και προϋποθέσεων`,AcceptTermsAndConditionsError:`Πρέπει να αποδεχτείτε τους όρους και τις προϋποθέσεις`,TermsAndConditionsText:`Κάνοντας κλικ σε αυτό το πλαίσιο, συμφωνείτε με τους`,TermsAndConditionsLink:`όρους και προϋποθέσεις`,RememberMe:`Να με θυμάσαι`,RememberMeText:`Αυτή είναι η προσωπική μου συσκευή`,Next:`Επόμενο`},SingleViewChatError:`Δεν βρέθηκαν αντίπαλοι για τη συνομιλία`,Information:`Πληροφορίες`,AI:{GetSummary:`Λήψη σύνοψης`,ChangeMessageTone:`Αλλαγή τόνου μηνύματος`,SummaryMessageTitle:`Μόνο εσείς μπορείτε να δείτε αυτό το μήνυμα`,forLast7Days:`για τις τελευταίες 7 ημέρες`,forLastDay:`για την τελευταία ημέρα`,forUnreads:`για μη αναγνωσμένα`,MessageTone:`Αλλαγή τόνου μηνύματος`,EmptyMessageTone:`Δεν είναι δυνατή η αλλαγή του τόνου ενός κενού μηνύματος`,positive:`θετικός`,negative:`αρνητικός`,cringe:`κρίμα`},CallHistory:{RejectedIncoming:`Απορρίφθηκε εισερχόμενη κλήση`,RejectedOutgoing:`Απορρίφθηκε εξερχόμενη κλήση`,Unanswered:`Μη απαντημένη κλήση`,Missed:`Αναπάντητη κλήση`,Canceled:`Ακυρώθηκε`,Ended:`Ολοκληρώθηκε`,videoCall:`βιντεοκλήση`,audioCall:`ηχητική κλήση`,defaultCall:`κλήση`},DragAndDrop:`Αποθέστε αρχεία εδώ`},vt={AddMembers:`Añadir miembros`,Admin:`Administrador`,areTyping:`están escribiendo`,Cancel:`Cancelar`,ChatName:`Nombre del chat`,ChatNameRequired:`El nombre del chat es obligatorio`,Chat:`Chat`,Chats:`Chats`,ChooseChat:`Elegir un chat`,Continue:`Continuar`,CreateGroupChat:`Crear chat de grupo`,Delete:`Eliminar`,Draft:`Borrador`,"EnterMessage...":`Escribe un mensaje...`,EnterUserName:`Introduce el nombre de usuario`,ExitChat:`Salir del chat`,ExitChatConfirm:`¿Estás seguro de que quieres salir de este chat?`,FileTypeNotSupported:`El formato de archivo no es compatible`,isTyping:`está escribiendo`,me:`yo`,Members:`Miembros`,members:`miembros`,NewGroup:`Nuevo grupo`,NewMessage:`Nuevo mensaje`,NoChats:`¡Inicia tu primer chat y mira qué pasa!`,NoMessages:`Aún no hay mensajes`,NoOnlineUsers:`No hay usuarios en línea`,Profile:`Perfil`,RemoveMembers:`Eliminar miembros`,"RemoveMembers?":`¿Seguro que quieres eliminar a los miembros?`,Reset:`Restablecer`,"Search...":`Buscar...`,Select:`Seleccionar`,Send:`Enviar`,StartChat:`Iniciar chat`,NewUserChatDialogTitle:`Enviar mensaje al usuario`,NewGroupChatDialogTitle:`Iniciar un nuevo grupo`,"typing...":`escribiendo...`,Users:`Usuarios`,you:`tú`,Video:`Vídeo`,Call:`Llamada`,Block:`Bloquear`,UnBlock:`Desbloquear`,Report:`Reportar`,ReportUser:`Reportar usuario`,WhatsWrongWithThisUser:`¿Qué ocurre con este usuario?`,ProvideReason:`Motivo del reporte`,ReportCreatedSuccessfully:`El reporte se ha creado correctamente`,ReportSubmitFailed:`Error al enviar el reporte`,MyProfile:`Mi perfil`,YouBlocked:`Este usuario te ha bloqueado`,BlockList:`Lista de bloqueados`,AddToBlockList:`Añadir a la lista de bloqueados`,"AddToBlockList?":`¿Seguro que quieres añadir a {{name}} a la lista de bloqueados?`,RemoveFromBlockList:`Eliminar de la lista de bloqueados`,"RemoveFromBlockList?":`¿Seguro que quieres eliminar a {{name}} de la lista de bloqueados?`,BlockListEmpty:`La lista de bloqueados está vacía`,NotificationSettings:`Configuración de notificaciones`,Notifications:`Notificaciones`,NotificationSound:`Sonido de notificación`,PushNotifications:`Notificaciones push`,PleaseWait:`Por favor, espera`,Available:`Disponible`,Busy:`Ocupado`,Away:`Ausente`,Online:`En línea`,LastSeen:`Última vez visto`,IncomingCall:`Llamada entrante`,IncomingAudioCall:`Llamada de audio entrante de {{name}}`,IncomingVideoCall:`Llamada de vídeo entrante de {{name}}`,Accept:`Aceptar`,Reject:`Rechazar`,RejectedCall:`{{name}} rechazó la llamada`,MissedCall:`Llamada perdida de {{name}}`,AuthForm:{Login:`Iniciar sesión`,Password:`Contraseña`,Register:`Registrarse`,Registration:`Registro`,LoginRequired:`El usuario es obligatorio`,LoginMinLimit:`El usuario debe tener al menos {{limit}} caracteres`,LoginMaxLimit:`El usuario debe tener como máximo {{limit}} caracteres`,PasswordRequired:`La contraseña es obligatoria`,PasswordMinLimit:`La contraseña debe tener al menos {{limit}} caracteres`,PasswordMaxLimit:`La contraseña debe tener como máximo {{limit}} caracteres`,LoginDescription:`Introduce tu usuario y contraseña para acceder a tu cuenta`,RegisterDescription:`Rellena el formulario para registrarte`,"ToRegister?":`¿No tienes una cuenta?`,"ToLogin?":`¿Ya tienes una cuenta?`},SingleViewForm:{Title:`Envía tus datos de contacto para iniciar un chat`,Subtitle:`No compartiremos tu dirección de correo electrónico. Se utilizará únicamente para contactarte`,NamePlaceholder:`Nombre`,NameRequired:`El nombre es obligatorio`,EmailPlaceholder:`Correo electrónico`,EmailRequired:`El correo electrónico es obligatorio`,EmailInvalid:`Formato de correo electrónico no válido`,AcceptTermsAndConditions:`Aceptar términos y condiciones`,AcceptTermsAndConditionsError:`Debes aceptar los términos y condiciones`,TermsAndConditionsText:`Al marcar esta casilla, aceptas los`,TermsAndConditionsLink:`términos y condiciones`,RememberMe:`Recordarme`,RememberMeText:`Este es mi dispositivo privado`,Next:`Siguiente`},SingleViewChatError:`No se encontraron los participantes del chat`,Information:`Información`,AI:{GetSummary:`Obtener resumen`,ChangeMessageTone:`Cambiar el tono del mensaje`,SummaryMessageTitle:`Solo tú puedes ver este mensaje`,forLast7Days:`de los últimos 7 días`,forLastDay:`del último día`,forUnreads:`de los no leídos`,MessageTone:`Cambiar tono del mensaje`,EmptyMessageTone:`No se puede cambiar el tono de un mensaje vacío`,positive:`positivo`,negative:`negativo`,cringe:`vergonzoso`},CallHistory:{RejectedIncoming:`Entrante rechazada`,RejectedOutgoing:`Saliente rechazada`,Unanswered:`No respondida`,Missed:`Perdida`,Canceled:`Cancelada`,Ended:`Finalizada`,videoCall:`videollamada`,audioCall:`llamada de audio`,defaultCall:`llamada`},DragAndDrop:`Suelta los archivos aquí`},yt={AddMembers:`Додати учасників`,Admin:`Адмін`,areTyping:`пишуть`,Cancel:`Скасувати`,ChatName:`Назва чату`,ChatNameRequired:`Назва чату є обов'язковою`,Chat:`Чат`,Chats:`Чати`,ChooseChat:`Оберіть чат`,Continue:`Продовжити`,CreateGroupChat:`Створити груповий чат`,Delete:`Видалити`,Draft:`Чернетка`,"EnterMessage...":`Введіть повідомлення...`,EnterUserName:`Введіть ім'я користувача`,ExitChat:`Вийти з чату`,ExitChatConfirm:`Ви впевнені, що хочете вийти з цього чату?`,FileTypeNotSupported:`Формат файлу не підтримується`,isTyping:`пише`,me:`я`,Members:`Учасники`,members:`учасники`,NewGroup:`Нова група`,NewMessage:`Нове повідомлення`,NoChats:`Почніть свою першу розмову та подивіться, що станеться!`,NoMessages:`Поки що немає повідомлень`,NoOnlineUsers:`Немає онлайн-користувачів`,Profile:`Профіль`,RemoveMembers:`Видалити учасників`,"RemoveMembers?":`Ви впевнені, що хочете видалити учасників?`,Reset:`Скинути`,"Search...":`Пошук...`,Select:`Вибрати`,Send:`Надіслати`,StartChat:`Розпочати чат`,NewUserChatDialogTitle:`Новий чат з користувачем`,NewGroupChatDialogTitle:`Нова група`,"typing...":`друкує...`,Users:`Користувачі`,you:`ви`,Video:`Відео`,Call:`Виклик`,Block:`Заблокувати`,UnBlock:`Розблокувати`,Report:`Поскаржитися`,ReportUser:`Поскаржитися на користувача`,WhatsWrongWithThisUser:`Що не так з цим користувачем?`,ProvideReason:`Підстава`,ReportCreatedSuccessfully:`Звіт поданий успішно`,ReportSubmitFailed:`Помилка при поданні звіту`,MyProfile:`Мій профіль`,YouBlocked:`Цей користувача вас заблокував`,BlockList:`Список заблокованих`,AddToBlockList:`Додати до списку заблокованих`,"AddToBlockList?":`Ви впевнені, що хочете додати {{name}} до списку заблокованих?`,RemoveFromBlockList:`Видалити зі списку заблокованих`,"RemoveFromBlockList?":`Ви впевнені, що хочете видалити {{name}} зі списку заблокованих?`,BlockListEmpty:`Список заблокованих порожній`,NotificationSettings:`Налаштування сповіщень`,Notifications:`Сповіщення`,NotificationSound:`Звук сповіщення`,PushNotifications:`Push-сповіщення`,PleaseWait:`Будь ласка, зачекайте`,Available:`Присутній`,Busy:`Зайнятий`,Away:`Відсутній`,Online:`В мережі`,LastSeen:`Був у мережі`,IncomingCall:`Вхідний виклик`,IncomingAudioCall:`Вхідний аудіо виклик від {{name}}`,IncomingVideoCall:`Вхідний відео виклик від {{name}}`,Accept:`Прийняти`,Reject:`Відхилити`,RejectedCall:`{{name}} відхилив виклик`,MissedCall:`Пропущений виклик від {{name}}`,AuthForm:{Login:`Логін`,Password:`Пароль`,Register:`Зареєструвати`,Registration:`Реєстрація`,LoginRequired:`Логін є обов'язковим`,LoginMinLimit:`Логін має містити щонайменше {{limit}} символів`,LoginMaxLimit:`Логін має містити не більше {{limit}} символів`,PasswordRequired:`Пароль є обов'язковим`,PasswordMinLimit:`Пароль має містити щонайменше {{limit}} символів`,PasswordMaxLimit:`Пароль має містити не більше {{limit}} символів`,LoginDescription:`Введіть ваш логін та пароль для доступу до акаунту`,RegisterDescription:`Заповніть форму нижче для реєстрації`,"ToRegister?":`Ще не маєте акаунту?`,"ToLogin?":`Вже маєте акаунт?`},SingleViewForm:{Title:`Введіть свою електронну пошту, щоб почати чат`,Subtitle:`Ми не будемо передавати вашу електронну пошту. Ваша електронна пошта використовується виключно для зв'язку з вами`,NamePlaceholder:`Ім'я`,NameRequired:`Ім'я є обов'язковим`,EmailPlaceholder:`Електронна пошта`,EmailRequired:`Електронна пошта є обов'язковою`,EmailInvalid:`Невірний формат електронної пошти`,AcceptTermsAndConditions:`Прийняти умови та положення`,AcceptTermsAndConditionsError:`Ви повинні прийняти умови та положення`,TermsAndConditionsText:`Натискаючи цю галочку, ви погоджуєтесь з`,TermsAndConditionsLink:`умовами та положеннями`,RememberMe:`Запам'ятати мене`,RememberMeText:`Це мій приватний пристрій`,Next:`Далі`},SingleViewChatError:`Опонента(ів) для чату не знайдено`,Information:`Інформація`,AI:{GetSummary:`Отримати резюме`,ChangeMessageTone:`Змінити тон повідомлення`,SummaryMessageTitle:`Тільки ти можеш бачити це повідомлення`,forLast7Days:`за останні 7 днів`,forLastDay:`за останній день`,forUnreads:`для непрочитаних`,MessageTone:`Змінити тон повідомлення`,EmptyMessageTone:`Неможливо змінити тон пустого повідомлення`,positive:`позитивний`,negative:`негативний`,cringe:`крінж`},CallHistory:{RejectedIncoming:`Відхилений вхідний`,RejectedOutgoing:`Відхилений вихідний`,Unanswered:`Неприйнятий`,Missed:`Пропущений`,Canceled:`Скасований`,Ended:`Завершений`,videoCall:`відео виклик`,audioCall:`аудіо виклик`,defaultCall:`виклик`},DragAndDrop:`Перетягніть файли сюди`},bt={en:`English`,ar:`Arabic`,el:`Greek`,es:`Spanish`,ua:`Ukrainian`},xt=ot()&&localStorage.getItem(`translation`)||`en`;Ae.use(Ye).init({resources:{en:{translation:gt},ar:{translation:ht},el:{translation:_t},es:{translation:vt},ua:{translation:yt}},lng:xt,fallbackLng:`en`,interpolation:{escapeValue:!1}});var St=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},Ct=(e=>e?St(e):St),wt=e=>e;function Tt(e,t=wt){let n=m.default.useSyncExternalStore(e.subscribe,m.default.useCallback(()=>t(e.getState()),[e,t]),m.default.useCallback(()=>t(e.getInitialState()),[e,t]));return m.default.useDebugValue(n),n}var Et=e=>{let t=Ct(e),n=e=>Tt(t,e);return Object.assign(n,t),n},Dt=(e=>e?Et(e):Et),Ot=function(e){return e.CHATS=`chats`,e.USERS=`users`,e}({}),kt={activeTab:`chats`},At=Dt(e=>({...kt,setActiveTab:t=>e({activeTab:t}),resetActiveTab:()=>e({activeTab:kt.activeTab})})),jt=()=>{At.setState({activeTab:`chats`})},Mt={visible:!1,title:``},Nt=Dt(e=>({...Mt,showAlertBusy:(t=``)=>e({visible:!0,title:t}),hideAlertBusy:()=>e({visible:!1,title:Mt.title})})),Pt=()=>{Nt.setState({visible:!1,title:Mt.title})},{CHAT_WIDGET_CONNECTYCUBE_SINGLE_VIEW_CHAT_EXTERNAL_ID:Ft,CHAT_WIDGET_CONNECTYCUBE_SINGLE_VIEW_CHAT_NAME:It,CHAT_WIDGET_CONNECTYCUBE_SINGLE_VIEW_CHAT_PHOTO:Lt,CHAT_WIDGET_CONNECTYCUBE_SINGLE_VIEW_CHAT_OPPONENTS_IDS:Rt}={BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1},zt=function(e){return e.SINGLE=`1on1`,e.GROUP=`group`,e}({}),Bt={defaultChat:null,singleViewChat:{externalId:Ft,opponentUserIds:Rt,name:It,photo:Lt}},Vt=Dt(e=>({...Bt,setDefaultChat:t=>e({defaultChat:t}),setSingleViewChat:t=>e({singleViewChat:t}),resetDefaultChat:()=>e({defaultChat:Bt.defaultChat}),resetSingleViewChat:()=>e({singleViewChat:Bt.singleViewChat})})),Ht=e=>{Vt.setState(e)},Ut=()=>{Vt.setState(Bt)},Wt={opened:!1,splitView:!1,singleView:!1,showChatStatus:!1,showChatActionsAsMenu:!0,showOnlineUsersTab:!1,hideNewChatButton:!1,hideNewUserChatOption:!1,hideNewGroupChatOption:!1,imgLogoSource:`/logo.png`},Gt=Dt((e,t)=>({...Wt,setOpened:t=>e({opened:t}),setSplitView:t=>e({splitView:t}),setSingleView:t=>e({singleView:t,splitView:!1}),setShowChatStatus:t=>e({showChatStatus:t}),setShowChatActionsAsMenu:t=>e({showChatActionsAsMenu:t}),setShowOnlineUsersTab:t=>e({showOnlineUsersTab:t}),setHideNewChatButton:t=>e({hideNewChatButton:t}),setHideNewUserChatOption:t=>e({hideNewUserChatOption:t}),setHideNewGroupChatOption:t=>e({hideNewGroupChatOption:t}),setImgLogoSource:t=>e({imgLogoSource:t}),toggleOpened:()=>e({opened:!t().opened}),resetOpened:()=>e({opened:Wt.opened}),resetSplitView:()=>e({splitView:Wt.splitView}),resetSingleView:()=>e({singleView:Wt.singleView}),resetShowChatStatus:()=>e({showChatStatus:Wt.showChatStatus}),resetShowChatActionsAsMenu:()=>e({showChatActionsAsMenu:Wt.showChatActionsAsMenu}),resetShowOnlineUsersTab:()=>e({showOnlineUsersTab:Wt.showOnlineUsersTab}),resetHideNewChatButton:()=>e({hideNewChatButton:Wt.hideNewChatButton}),resetHideNewUserChatOption:()=>e({hideNewUserChatOption:Wt.hideNewUserChatOption}),resetHideNewGroupChatOption:()=>e({hideNewGroupChatOption:Wt.hideNewGroupChatOption}),resetImgLogoSource:()=>e({imgLogoSource:Wt.imgLogoSource})})),Kt=e=>{Gt.setState(e)},qt=()=>{Gt.setState(Wt)},Jt=e=>Symbol.iterator in e,Yt=e=>`entries`in e,Xt=(e,t)=>{let n=e instanceof Map?e:new Map(e.entries()),r=t instanceof Map?t:new Map(t.entries());if(n.size!==r.size)return!1;for(let[e,t]of n)if(!r.has(e)||!Object.is(t,r.get(e)))return!1;return!0},Zt=(e,t)=>{let n=e[Symbol.iterator](),r=t[Symbol.iterator](),i=n.next(),a=r.next();for(;!i.done&&!a.done;){if(!Object.is(i.value,a.value))return!1;i=n.next(),a=r.next()}return!!i.done&&!!a.done};function Qt(e,t){return Object.is(e,t)?!0:typeof e!=`object`||!e||typeof t!=`object`||!t||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)?!1:Jt(e)&&Jt(t)?Yt(e)&&Yt(t)?Xt(e,t):Zt(e,t):Xt({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}function $t(e){let t=m.default.useRef(void 0);return n=>{let r=e(n);return Qt(t.current,r)?t.current:t.current=r}}var en=e=>(t,n,r)=>{let i=r.subscribe;return r.subscribe=((e,t,n)=>{let a=e;if(t){let i=n?.equalityFn||Object.is,o=e(r.getState());a=n=>{let r=e(n);if(!i(o,r)){let e=o;t(o=r,e)}},n?.fireImmediately&&t(o,o)}return i(a)}),e(t,n,r)},tn=u({ActiveMedia:()=>Bn,CallDataType:()=>Vn,ChatStatus:()=>kn,ConnectyCube:()=>t.default,MessageStatus:()=>Dn,getConnectyCubeConfig:()=>rn,initConnectyCube:()=>nn,setConnectyCubeConfig:()=>an,useAddressBook:()=>$n,useBlockList:()=>er,useChat:()=>lr,useConnectyCube:()=>gr,useLinkPreview:()=>ur,useUsers:()=>nr,useVideochat:()=>hr});f(tn,typeof globalThis<`u`&&globalThis.ConnectyCube?globalThis.ConnectyCube:require("connectycube"));var nn=(e,n)=>{t.default.init(e,n)},rn=()=>t.default.service?.sdkInstance?.config,an=(e={})=>t.default.service?.sdkInstance?.config?.set?.(e),on=e=>function(t){let n=(0,m.useRef)(e.getState()[t]);return(0,m.useEffect)(()=>{let r=e.subscribe(e=>e[t],e=>{n.current=e});return()=>r()},[t]),n},sn=(e,t)=>`[@connectycube/react@6.3.0]${e?`[${e}]`:``}${t?`[${t}]`:``}`,cn=(e,t,...n)=>console.log(`${sn(e,t)}[Log]:`,...n),ln=(e,t,...n)=>console.info(`${sn(e,t)}[Info]:`,...n),un=(e,t,...n)=>console.warn(`${sn(e,t)}[Warn]:`,...n),dn=(e,t,...n)=>console.error(`${sn(e,t)}[Error]:`,...n),fn=e=>({log:(t,...n)=>cn(e,t,...n),info:(t,...n)=>ln(e,t,...n),warn:(t,...n)=>un(e,t,...n),error:(t,...n)=>dn(e,t,...n)}),pn=fn(`useAddressBook`),mn=fn(`useBlockList`),hn=fn(`useChat`),gn=fn(`useConnectyCube`),_n=fn(`useLinkPreview`),vn=fn(`useUsers`),yn=fn(`useVideochat`),bn=Dt()(en(e=>({contacts:[],registeredUsers:[],setContacts:t=>{e({contacts:t})},setRegisteredUsers:t=>{e({registeredUsers:t})},resetAddressBookStore:()=>{e({contacts:[],registeredUsers:[]}),pn.info(`resetAddressBookStore`)}}))),xn=e=>{let t;if(typeof e==`string`){let n=new Date(e).getTime();t=isNaN(n)?void 0:n}else typeof e==`number`&&(t=1e3*e);return t},Sn=e=>xn(e.last_message_date_sent)||xn(e.updated_at)||xn(e.created_at)||0,Cn=(e,t)=>Sn(t)-Sn(e),wn=(e,t)=>{let n={total:0};return e.forEach(({_id:e,unread_messages_count:r=0})=>{let i=t===e?0:r;n[e]=i,n.total+=i}),n};function Tn(){return{dialogs:[],totalDialogsReached:!1,selectedDialog:void 0,activatedDialogs:new Set,privateDialogsIds:{},unreadMessagesCount:{total:0}}}var En=Dt()(en((e,t)=>({...Tn(),upsertDialog:n=>{let r=[n,...(t().dialogs||[]).filter(e=>e._id!==n._id)];e({dialogs:r,unreadMessagesCount:wn(r)})},upsertDialogs:n=>{let r=[...t().dialogs||[],...n],i=Array.from(new Map(r.map(e=>[e._id,e])).values()).sort(Cn);e({dialogs:i,unreadMessagesCount:wn(i)})},updateDialog:(n,r)=>{let i=(t().dialogs||[]).map(e=>e._id===n?{...e,...r}:e).sort(Cn);e({dialogs:i,unreadMessagesCount:wn(i)})},updateDialogOnMessage:(n,r,i=!1)=>{let a=t().selectedDialog,o=(t().dialogs||[]).map(e=>e._id===n?{...e,unread_messages_count:i||a&&a._id===r.dialog_id?e.unread_messages_count:(e.unread_messages_count||0)+1,last_message:r.body,last_message_date_sent:i?e.last_message_date_sent:parseInt(String(r.extension?.date_sent??e.last_message_date_sent??0),10),last_message_id:i?e.last_message_id:r.id,last_message_status:i?e.last_message_status:e.last_message_id===r.id?null:e.last_message_status}:e).sort(Cn);e({dialogs:o,unreadMessagesCount:wn(o)})},updateDialogOnReadMessage:n=>{let r=(t().dialogs||[]).map(e=>e._id===n?{...e,unread_messages_count:Math.max(0,e.unread_messages_count-1)}:e);e({dialogs:r,unreadMessagesCount:wn(r)})},addParticipantsToDialog:(n,r)=>{e({dialogs:(t().dialogs||[]).map(e=>e._id===n?{...e,occupants_ids:Array.from(new Set([...e.occupants_ids,...r]))}:e).sort(Cn)})},removeParticipantsFromDialog:(n,r)=>{e({dialogs:(t().dialogs||[]).map(e=>e._id===n?{...e,occupants_ids:e.occupants_ids.filter(e=>!r.includes(e))}:e).sort(Cn)})},removeDialog:n=>{let r=(t().dialogs||[]).filter(e=>e._id!==n);e({dialogs:r,unreadMessagesCount:wn(r)})},setSelectedDialog:n=>{e({selectedDialog:n,unreadMessagesCount:wn(t().dialogs||[],n?._id)})},resetSelectedDialog:()=>{e({selectedDialog:Tn().selectedDialog})},activateDialog:n=>{let r=t().activatedDialogs??new Set;e({activatedDialogs:new Set([...r,n])})},resetActivatedDialogs:()=>{e({activatedDialogs:Tn().activatedDialogs})},addPrivateDialogId:(n,r)=>{e({privateDialogsIds:{...t().privateDialogsIds||{},[n]:r}})},removePrivateDialogId:n=>{let r={...t().privateDialogsIds};delete r[n],e({privateDialogsIds:r})},setTotalDialogsReached:t=>{e({totalDialogsReached:t})},resetTotalDialogsReached:()=>{e({totalDialogsReached:Tn().totalDialogsReached})},resetDialogsStore:()=>{e(Tn())}}))),Dn;(function(e){e.WAIT=`wait`,e.LOST=`lost`,e.SENT=`sent`,e.READ=`read`})(Dn||={});var On=Dt()(en((e,t)=>({messages:{},totalMessagesReached:[],addMessage:(n,r)=>{let i=t().messages||{},a=i[n]||[],o=a.findIndex(e=>e._id===r._id),s=o>=0?a.map((e,t)=>t===o?{...e,...r}:e):[...a,r];e({messages:{...i,[n]:s}})},addMessages:(n,r,i=!0)=>{let a=t().messages||{},o=a[n]||[],s=new Set(o.map(e=>e._id)),c=new Map(r.map(e=>[e._id,e])),l=o.map(e=>c.get(e._id)??e),u=r.filter(e=>!s.has(e._id)),d=i?[...u,...l]:[...l,...u];e({messages:{...a,[n]:d}})},updateMessage:(n,r,i)=>{let a=t().messages||{},o=(a[n]||[]).map(e=>e._id===r?{...e,...i}:e);e({messages:{...a,[n]:o}})},updateMessageStatus:(n,r,i,a)=>{let o=t().messages||{},s=(o[n]||[]).map(e=>e._id===r?{...e,read_ids:a?e.read_ids?[...new Set([...e.read_ids,a])]:[a]:e.read_ids,read:i===Dn.READ?1:e.read,status:i===Dn.SENT&&e.status===Dn.LOST?e.status:i}:e);e({messages:{...o,[n]:s}})},markMessagesAsLost:()=>{let n=t().messages||{};e({messages:Object.fromEntries(Object.entries(n).map(([e,t])=>[e,t.map(e=>e.status===Dn.WAIT?{...e,status:Dn.LOST}:e)]))})},removeMessages:(n,r)=>{let i=t().messages||{},a=(i[n]||[]).filter(e=>!r.includes(e._id));e({messages:{...i,[n]:a}})},clearMessages:n=>{e({messages:{...t().messages||{},[n]:[]}})},setTotalMessagesReached:(n,r)=>{let i=t().totalMessagesReached,a=new Set(i);r?a.add(n):a.delete(n),e({totalMessagesReached:Array.from(a)})},resetTotalMessagesReached:()=>{e({totalMessagesReached:[]})},resetMessagesStore:()=>{e({messages:{},totalMessagesReached:[]})}}))),kn;function An(){return{attachedChatListeners:new Set,isOnline:navigator.onLine??!0,isConnected:!1,chatStatus:kn.DISCONNECTED,pingInterval:null,isNetworkStatusHandling:!1}}(function(e){e.DISCONNECTED=`disconnected`,e.CONNECTING=`connecting`,e.CONNECTED=`connected`,e.NOT_AUTHORIZED=`not-authorized`,e.ERROR=`error`})(kn||={});var jn=Dt()(en((e,n)=>({...An(),attachChatListeners:r=>{let i=n().attachedChatListeners??new Set,a=new Set(i);Object.entries(r).forEach(([e,n])=>{let r=e;a.has(r)||(t.default.chat?.addListener(r,n),a.add(r))}),e({attachedChatListeners:a})},handleNetworkStatus:()=>{let{isNetworkStatusHandling:t,setIsOnline:r}=n();if(!t)try{window?.addEventListener(`online`,async()=>{await r(!0),hn.info(`Network is online`,`🟢`)}),window?.addEventListener(`offline`,async()=>{await r(!1),hn.info(`Network is offline`,`🔴`)})}catch(e){throw e}finally{e({isNetworkStatusHandling:!0})}},setIsOnline:async r=>{let{isOnline:i,chatStatus:a,setChatStatus:o}=n();if(r!==i)if(e({isOnline:r}),r&&a!==kn.ERROR)a!==kn.DISCONNECTED&&a!==kn.NOT_AUTHORIZED||o(kn.CONNECTING);else try{await t.default.chat?.pingWithTimeout(1e3),o(kn.CONNECTED)}catch{let{resetTotalDialogsReached:e,resetActivatedDialogs:n}=En.getState(),{resetTotalMessagesReached:r,markMessagesAsLost:i}=On.getState();t.default.chat?.terminate(),o(kn.DISCONNECTED),e(),r(),n(),i()}},setIsConnected:r=>{let{isConnected:i,pingInterval:a,setIsOnline:o}=n();r!==i&&(e({isConnected:r}),a&&(clearInterval(a),e({pingInterval:An().pingInterval})),r)&&(hn.info(`chat is connected`,`start "pingWithTimeout"`),e({pingInterval:setInterval(async()=>{try{await t.default.chat?.pingWithTimeout(1e3),await o(!0)}catch(e){hn.error(`ping chat`,e),await o(!1),setTimeout(async()=>{try{await t.default.chat?.pingWithTimeout(1e3),await o(!0)}catch(e){hn.error(`ping chat (reserved)`,e),await o(!1)}},5e3)}},4e4)}))},setChatStatus:t=>{e({chatStatus:t})},resetChatStore:()=>{e(An())}})));function Mn(){return{blockedUsers:new Set,blockListName:`DEFAULT`,isFetchInited:!1,isFetched:!1}}var Nn=Dt()(en((e,n)=>({...Mn(),fetchBlockList:async()=>{n().isFetched||n().isFetchInited||(jn.subscribe(e=>e.isConnected,async(n,r)=>{if(n===r)return;if(!n)return void mn.warn(`fetchBlockList`,`chat is not connected`);let i=await t.default.chat.privacylist.getNames();i?.default&&e({isFetched:!0,blockedUsers:(await t.default.chat.privacylist.getList(i.default)).items.reduce((e,n)=>(n.action===t.PrivacyListAction.DENY&&e.add(+n.user_id),e),new Set),blockListName:i.default})},{fireImmediately:!0}),e({isFetchInited:!0}))},setBlockedUsers:t=>{e({blockedUsers:t})},resetBlockListStore:()=>{e(Mn())}}))),Pn=Dt()(en((e,t)=>({currentSession:null,currentUserId:null,currentUser:null,setCurrentUserId:t=>{e({currentUserId:t})},resetCurrentUserId:()=>{e({currentUserId:null})},setCurrentSession:t=>{e({currentSession:t,currentUserId:t.user_id,currentUser:t?.user})},updateCurrentSession:n=>{let r=t().currentSession;r?e({currentSession:{...r,...n}}):gn.error(`updateCurrentSession`,`Has no session to update`)},resetCurrentSession:()=>{let t={currentSession:null,currentUserId:null,currentUser:null};e({currentSession:t.currentSession,currentUserId:t.currentUserId})},resetConnectyCubeStore:()=>{e({currentSession:null,currentUserId:null,currentUser:null})}}))),Fn=new Map,In=Dt()(en((e,t)=>({lastActivity:{},shouldFetchLastActivity:{},upsertLastActivity:(n,r)=>{e({lastActivity:{...t().lastActivity,[n]:r},shouldFetchLastActivity:{...t().shouldFetchLastActivity,[n]:!1}}),function(e){let t=Fn.get(e);t!==void 0&&(clearTimeout(t),Fn.delete(e))}(n),Fn.set(n,setTimeout(function r(){Fn.delete(n),t().lastActivity[n]!==void 0&&(e(e=>{let t=e.lastActivity[n];return{lastActivity:{...e.lastActivity,[n]:t>0?t+15:t},shouldFetchLastActivity:{...e.shouldFetchLastActivity,[n]:!0}}}),t().lastActivity[n]!==void 0&&Fn.set(n,setTimeout(r,15e3)))},15e3))},resetLastActivityStore:()=>{(function(){for(let e of Fn.values())clearTimeout(e);Fn.clear()})(),e({lastActivity:{},shouldFetchLastActivity:{}})}}))),Ln=Dt()(en(e=>({messageEvent:void 0,messageSystemEvent:void 0,messageSentEvent:void 0,messageReadEvent:void 0,messageEditEvent:void 0,messageDeleteEvent:void 0,messageErrorEvent:void 0,setMessageEvent:t=>{e({messageEvent:t})},setMessageSystemEvent:t=>{e({messageSystemEvent:t})},setMessageSentEvent:t=>{e({messageSentEvent:t})},setMessageReadEvent:t=>{e({messageReadEvent:t})},setMessageEditEvent:t=>{e({messageEditEvent:t})},setMessageDeleteEvent:t=>{e({messageDeleteEvent:t})},setMessageErrorEvent:t=>{e({messageErrorEvent:t})},resetMessageEventStore:()=>{e({messageEvent:void 0,messageSystemEvent:void 0,messageSentEvent:void 0,messageReadEvent:void 0,messageEditEvent:void 0,messageDeleteEvent:void 0,messageErrorEvent:void 0})}}))),Rn=Dt()(en((e,t)=>({typingStatus:{},typingTimers:{},setTypingStatus:(n,r,i)=>{let a=t().typingStatus||{},o=a[n]?new Set(a[n]):new Set;i?o.add(r):o.delete(r),e({typingStatus:{...a,[n]:[...o]}})},addTypingTimer:(n,r,i)=>{let a=t().typingTimers||{},o=a[n]||{};e({typingTimers:{...a,[n]:{...o,[r]:i}}})},clearTypingTimer:(n,r)=>{let i=t().typingTimers||{},a=i[n]||{};clearTimeout(a[r]);let{[r]:o,...s}=a;e({typingTimers:{...i,[n]:s}})},resetTypingStatusStore:()=>{e({typingStatus:{},typingTimers:{}})}}))),zn=Dt()(en((e,t)=>({users:{},usersLastRequestAt:{},onlineUsers:{},onlineUsersLastRequestAt:0,onlineUsersCount:0,upsertUser:n=>{e({users:{...t().users,[n.id]:n}})},upsertUsers:n=>{e({users:n.reduce((e,t)=>({...e,[t.id]:t}),{...t().users})})},upsertUsersLastRequestAt:n=>{e({usersLastRequestAt:{...t().usersLastRequestAt,...n}})},setOnlineUsers:t=>{e({onlineUsers:t.reduce((e,t)=>({...e,[t.id]:t}),{})})},updateOnlineUser:n=>{t().onlineUsers[n.id]&&e({onlineUsers:{...t().onlineUsers,[n.id]:n}})},updateOnlineUsers:n=>{e({onlineUsers:n.reduce((e,t)=>e[t.id]?{...e,[t.id]:t}:e,{...t().onlineUsers})})},setOnlineUsersLastRequestAt:t=>{e({onlineUsersLastRequestAt:t})},setOnlineUsersCount:t=>{e({onlineUsersCount:t})},resetUsersStore:()=>{e({users:{},usersLastRequestAt:{},onlineUsers:{},onlineUsersLastRequestAt:0,onlineUsersCount:0})}}))),Bn,Vn;function Hn(){return{activeCall:null,incomingCall:null,incomingCallCallData:null,incomingCallStopData:null,activeCallAcceptData:null,activeCallRejectData:null,activeCallStopData:null,activeCallNotAnswerData:null,activeCallConnectionStateData:null,deviceChangeEvent:null,localStream:null,remoteStreams:{},userMediaParams:{video:!0,audio:!0},displayMediaParams:{video:!0,audio:!1},activeMedia:Bn.USER,participantsIDs:new Set,attachedVideochatListeners:new Set}}(function(e){e[e.USER=0]=`USER`,e[e.DISPLAY=1]=`DISPLAY`})(Bn||={}),function(e){e.ON_CALL=`onCall`,e.ON_STOP_CALLING=`onStopCalling`,e.ON_ACCEPT=`onAccept`,e.ON_REJECT=`onReject`,e.ON_STOP=`onStop`,e.ON_NOT_ANSWER=`onNotAnswer`,e.ON_CONNECTION_STATE=`onConnectionState`}(Vn||={});var Un=Dt()(en((e,n)=>({...Hn(),setActiveCall:t=>{e({activeCall:t})},resetActiveCall:()=>{e({activeCall:Hn().activeCall})},setIncomingCall:t=>{e({incomingCall:t})},resetIncomingCall:()=>{e({incomingCall:Hn().incomingCall})},setDeviceChangeEvent:t=>{e({deviceChangeEvent:t})},upsertSessionData:(t,n)=>{switch(t){case Vn.ON_CALL:e({incomingCallCallData:n});break;case Vn.ON_STOP_CALLING:e({incomingCallStopData:n});break;case Vn.ON_ACCEPT:e({activeCallAcceptData:n});break;case Vn.ON_REJECT:e({activeCallRejectData:n});break;case Vn.ON_STOP:e({activeCallStopData:n});break;case Vn.ON_NOT_ANSWER:e({activeCallNotAnswerData:n});break;case Vn.ON_CONNECTION_STATE:e({activeCallConnectionStateData:n})}},resetSessionData:t=>{let n=Hn();switch(t){case Vn.ON_CALL:e({incomingCallCallData:n.incomingCallCallData});break;case Vn.ON_STOP_CALLING:e({incomingCallStopData:n.incomingCallStopData});break;case Vn.ON_ACCEPT:e({activeCallAcceptData:n.activeCallAcceptData});break;case Vn.ON_REJECT:e({activeCallRejectData:n.activeCallRejectData});break;case Vn.ON_STOP:e({activeCallStopData:n.activeCallStopData});break;case Vn.ON_NOT_ANSWER:e({activeCallNotAnswerData:n.activeCallNotAnswerData});break;case Vn.ON_CONNECTION_STATE:e({activeCallConnectionStateData:n.activeCallConnectionStateData});break;default:e({incomingCallCallData:n.incomingCallCallData,incomingCallStopData:n.incomingCallStopData,activeCallAcceptData:n.activeCallAcceptData,activeCallRejectData:n.activeCallRejectData,activeCallStopData:n.activeCallStopData,activeCallNotAnswerData:n.activeCallNotAnswerData,activeCallConnectionStateData:n.activeCallConnectionStateData,deviceChangeEvent:n.deviceChangeEvent})}},setLocalStream:t=>{e({localStream:t})},resetLocalStream:()=>{e({localStream:Hn().localStream})},addRemoteStream:(t,r)=>{e({remoteStreams:{...n().remoteStreams,[t]:r}})},removeRemoteStream:t=>{let r={...n().remoteStreams};delete r[t],e({remoteStreams:r})},resetRemoteStreams:()=>{e({remoteStreams:Hn().remoteStreams})},saveUserMediaParams:t=>{e({userMediaParams:t})},resetUserMediaParams:()=>{e({userMediaParams:Hn().userMediaParams})},saveDisplayMediaParams:t=>{e({displayMediaParams:t})},resetDisplayMediaParams:()=>{e({displayMediaParams:Hn().displayMediaParams})},saveActiveMedia:t=>{e({activeMedia:t})},setParticipantsIDs:t=>{e({participantsIDs:new Set(t)})},participantDidEnter:t=>{let r=new Set([...n().participantsIDs]);r.add(t),e({participantsIDs:r})},participantDidLeave:t=>{let r=new Set([...n().participantsIDs]);r.delete(t),e({participantsIDs:r})},attachVideochatListeners:r=>{let i=n().attachedVideochatListeners??new Set,a=new Set(i);Object.entries(r).forEach(([e,n])=>{let r=e;a.has(r)||(t.default.videochat?.addListener(r,n),a.add(r))}),e({attachedVideochatListeners:a})},resetVideochatStore:()=>{e(Hn())}}))),Wn=on(Nn),Gn=on(jn),Kn=on(Pn),qn=on(En),Jn=on(In),Yn=on(On),Xn=on(Rn),Zn=on(zn),Qn=on(Un),$n=()=>{let[e,n,r,i,a]=bn($t(e=>[e.contacts,e.registeredUsers,e.setContacts,e.setRegisteredUsers,e.resetAddressBookStore]));return{contacts:e,registeredUsers:n,uploadAddressBook:async(e=[],n={})=>await t.default.addressbook.uploadAddressBook(e,n),getAddressBook:async e=>{let n=await t.default.addressbook.get(e);return r(n),n},getRegisteredUsers:async(e=!1)=>{let n=await t.default.addressbook.getRegisteredUsers(e);return i(n.items??[]),n},resetAddressBookState:()=>{a(),pn.info(`resetAddressBookState`)}}},er=()=>{let[e,n,r,i,a]=Nn($t(e=>[e.blockedUsers,e.blockListName,e.setBlockedUsers,e.fetchBlockList,e.resetBlockListStore])),o=Gn(`isConnected`),s=Wn(`isFetched`),c=async(i,a)=>{if(!o.current)return void mn.warn(`upsert`,`${a} user ${i} failed, chat is not connected`);let c=new Set(e),l={name:n,items:[{user_id:i,action:a,mutualBlock:!0}]};try{a===t.PrivacyListAction.DENY?c.add(i):a===t.PrivacyListAction.ALLOW&&c.delete(i),s.current?(await t.default.chat.privacylist.setAsDefault(null),await t.default.chat.privacylist.update(l),c.size>0&&await t.default.chat.privacylist.setAsDefault(n)):(await t.default.chat.privacylist.create(l),await t.default.chat.privacylist.setAsDefault(n))}catch(e){mn.error(`upsert`,e);return}finally{r(c)}},l=t=>e.has(t);return(0,m.useEffect)(()=>{i()},[]),{blockedUsers:Array.from(e),blockUser:async e=>{l(e)?mn.warn(`block`,`user ${e} is already blocked`):await c(e,t.PrivacyListAction.DENY)},unblockUser:async e=>{l(e)?await c(e,t.PrivacyListAction.ALLOW):mn.warn(`unblock`,`user ${e} is not blocked`)},isBlockedUser:l,resetBlockListState:()=>{a(),mn.info(`resetBlockListState`)}}},tr=100,nr=()=>{let e=Pn(e=>e.currentUserId),[n,r,i,a,o,s,c,l,u,d,f,p]=zn($t(e=>[e.users,e.upsertUser,e.upsertUsers,e.upsertUsersLastRequestAt,e.onlineUsers,e.setOnlineUsers,e.updateOnlineUser,e.updateOnlineUsers,e.setOnlineUsersLastRequestAt,e.onlineUsersCount,e.setOnlineUsersCount,e.resetUsersStore])),h=Zn(`usersLastRequestAt`),g=Zn(`onlineUsersLastRequestAt`),_=Zn(`onlineUsers`),v=async e=>{let{items:n}=await t.default.users.getV2(e),r={};return i(n),l(n),n.forEach(e=>{r[e.id]=Date.now()}),a(r),n},y=(0,m.useCallback)(async n=>{let{items:r}=await t.default.users.getV2({full_name:{start_with:n},limit:tr}),{items:i}=await t.default.users.getV2({login:{start_with:n},limit:tr}),a=new Map;return[...r,...i].forEach(e=>{a.set(e.id,e)}),Array.from(a.values()).filter(t=>t.id!==e)},[e]),b=async()=>{let e=d;try{let{count:n}=await t.default.users.getOnlineCount();e=n,f(e)}catch(e){vn.error(`getOnlineCount`,e)}return e};return{users:n,fetchUsers:v,fetchUserById:async(e,i=!1)=>{let o=h.current[e]??0,s=Date.now(),l=n[e],u=l;if(i||l===void 0||s-o>=3e4){let n=(await t.default.users.getV2({id:e,limit:1}))?.items?.[0];n&&(r(n),c(n),a({[e]:Date.now()}),u=n)}return u},fetchUsersByIds:async e=>{let t=e.filter(e=>!n[e]);return t.length>0?v({limit:tr,id:{in:t}}):e.map(e=>n[e]).filter(Boolean)},searchUsers:y,onlineUsers:Object.values(o),fetchAllOnlineUsers:async(e=!1)=>{if(e||Date.now()-g.current>=3e4){let e=await(async()=>{let e=await b(),n=[];try{let r=tr,a=0;for(;a<e;)n.push(t.default.users.listOnline({limit:r,offset:a}).then(({users:e})=>e)),a+=r;let o=(await Promise.all(n)).flat();return i(o),s(o),o}catch(e){return vn.error(`listOnline`,e),null}})();return e===null?Object.values(_.current):(u(Date.now()),e)}return Object.values(_.current)},fetchOnlineUsers:async e=>{try{let{users:n}=await t.default.users.listOnline(e);return i(n),s(n),u(0),n}catch(e){return vn.error(`listOnlineWithParams`,e),[]}},onlineUsersCount:d,fetchOnlineUsersCount:b,resetUsersState:()=>{p(),vn.info(`resetUsersState`)}}},rr=`dialog/NEW_DIALOG`,ir=`dialog/ADDED_TO_DIALOG`,ar=`dialog/REMOVED_FROM_DIALOG`,or=`dialog/ADD_PARTICIPANTS`,sr=`dialog/REMOVE_PARTICIPANTS`,cr=`dialog/DELETE_DIALOG`,lr=()=>{let{fetchUsersByIds:e}=nr(),[n,r,i]=Pn($t(e=>[e.currentUserId,e.setCurrentUserId,e.resetCurrentUserId])),[a,o,s]=In($t(e=>[e.lastActivity,e.upsertLastActivity,e.resetLastActivityStore])),[c,l,u,d,f,p,h,g,_,v,y,b,x,S,C,w,T,E,D,ee,O]=En($t(e=>[e.dialogs,e.upsertDialog,e.upsertDialogs,e.updateDialog,e.updateDialogOnMessage,e.updateDialogOnReadMessage,e.addParticipantsToDialog,e.removeParticipantsFromDialog,e.removeDialog,e.selectedDialog,e.setSelectedDialog,e.resetSelectedDialog,e.activateDialog,e.resetActivatedDialogs,e.addPrivateDialogId,e.removePrivateDialogId,e.unreadMessagesCount,e.totalDialogsReached,e.setTotalDialogsReached,e.resetTotalDialogsReached,e.resetDialogsStore])),[k,A,j,te,M,ne,N,re,ie,ae,oe,se]=On($t(e=>[e.messages,e.addMessage,e.addMessages,e.updateMessage,e.updateMessageStatus,e.markMessagesAsLost,e.removeMessages,e.clearMessages,e.totalMessagesReached,e.setTotalMessagesReached,e.resetTotalMessagesReached,e.resetMessagesStore])),[ce,le,ue,de,fe,pe,me,he,ge,_e,ve,ye,be,xe,Se]=Ln($t(e=>[e.messageEvent,e.messageSystemEvent,e.messageSentEvent,e.messageReadEvent,e.messageEditEvent,e.messageDeleteEvent,e.messageErrorEvent,e.setMessageEvent,e.setMessageSystemEvent,e.setMessageSentEvent,e.setMessageReadEvent,e.setMessageEditEvent,e.setMessageDeleteEvent,e.setMessageErrorEvent,e.resetMessageEventStore])),[Ce,we,Te,Ee,De,Oe,ke,Ae,je]=jn($t(e=>[e.isOnline,e.setIsOnline,e.isConnected,e.chatStatus,e.setIsConnected,e.setChatStatus,e.handleNetworkStatus,e.attachChatListeners,e.resetChatStore])),[Me,Ne,Pe,Fe,Ie]=Rn($t(e=>[e.typingStatus,e.setTypingStatus,e.addTypingTimer,e.clearTypingTimer,e.resetTypingStatusStore])),Le=Kn(`currentUserId`),Re=Gn(`chatStatus`),ze=Yn(`messages`),Be=qn(`dialogs`),Ve=qn(`selectedDialog`),He=qn(`activatedDialogs`),Ue=qn(`privateDialogsIds`),We=Xn(`typingTimers`),Ge=Jn(`lastActivity`),Ke=Jn(`shouldFetchLastActivity`),qe=async(e=kn.DISCONNECTED)=>{let n=!1;return t.default.chat.isConnected&&(n=await t.default.chat.disconnect(),De(!1),i(),Se(),Ie(),Oe(e),Ye()),n},Je=(e=kn.DISCONNECTED)=>{t.default.chat.terminate(),Oe(e),Ye(),ne()},Ye=()=>{S(),ee(),oe()},Xe=(0,m.useCallback)(()=>{je(),O(),se(),Se(),Ie(),s(),hn.info(`resetChatState`)},[je,O,se,Se,Ie,s]),Ze=async n=>{let r={sort_desc:`date_sent`,limit:100,skip:0,...n},{items:i,skip:a,limit:o,total_entries:s}=await t.default.chat.dialog.list(r);D(a+o>=s),u(i);let c=i.flatMap(e=>e.occupants_ids),l=Array.from(new Set(c));return e(l),i},Qe=async(e,n=0)=>{try{let r=await(async(e,n={})=>{let r={chat_dialog_id:e,sort_desc:`date_sent`,limit:100,skip:0,...n};try{let{items:n,skip:i,limit:a}=await t.default.chat.message.list(r),o=ze.current[e]??[],s=i+a>n.length+o.length;return ae(e,s),n.sort((e,t)=>e._id.toString().localeCompare(t._id.toString())).map(e=>{let n=e.attachments?.map(e=>({...e,url:t.default.storage.privateUrl(e.uid)}));return{...e,attachments:n,status:e.read?Dn.READ:Dn.SENT}})}catch(e){if(e&&typeof e==`object`&&`code`in e&&e.code===404)return[];throw e}})(e,{skip:n});return j(e,r),r}catch(e){throw e}},$e=async e=>Qe(e),et=e=>{if(e??=v,!e)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);if(e.type!==t.DialogType.PRIVATE)return;let r=e.occupants_ids.find(e=>e!==n);return r&&C(r,e._id),r},tt=e=>Be.current.find(n=>n.type===t.DialogType.PRIVATE&&n.occupants_ids.includes(e)),nt=async e=>{let n={read:1,chat_dialog_id:e._id};await t.default.chat.message.update(``,n),d(e._id,{unread_messages_count:0})},rt=t.default.chat.helpers.getBsonObjectId,it=(e,t,r={})=>{if(t??=v,!t)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);let i=et(t),a=at(e,null,t,i,r);ot(a,e,t._id,n,i,void 0,!1,r)},at=(e,n,r,i,a)=>{let o={type:r.type===t.DialogType.PRIVATE?t.ChatType.CHAT:t.ChatType.GROUPCHAT,body:e,extension:{save_to_history:1,dialog_id:r._id,...a,...n?{attachments:n}:{}}};return t.default.chat.send(r.type===t.DialogType.PRIVATE?i:r._id,o)},ot=(e,t,n,r,i,a,o,s)=>{let c=Math.round(new Date().getTime()/1e3),l={...s||{},_id:e,created_at:c,updated_at:c,chat_dialog_id:n,message:t,sender_id:r,recipient_id:i,date_sent:c,read:0,read_ids:[r],delivered_ids:[r],views_count:0,attachments:a||[],reactions:{},pending:o,status:Re.current===kn.CONNECTED?Dn.WAIT:Dn.LOST},u={last_message:l.message,last_message_user_id:l.sender_id,last_message_date_sent:l.date_sent,last_message_id:l._id,last_message_status:l.status};d(n,u),A(n,l)},st=(e,t,n,r={})=>{lt(n,e,{dialogId:t,...r})},ct=(e,t,r=[],i={})=>{let a=t._id,o=t.occupants_ids.filter(e=>!r.includes(e)&&e!==n);st(e,a,o,i)},lt=(e,n,r={})=>{let i=Array.isArray(e)?e:[e],a={body:n,extension:r};i.forEach(e=>{t.default.chat.sendSystemMessage(e,a)})},ut=(e,t)=>{typeof e==`number`&&typeof t==`number`&&t>=0&&o(e,t)},dt=()=>{Re.current!==kn.CONNECTING&&(Oe(kn.DISCONNECTED),Ye()),ne()},ft=()=>{Oe(kn.CONNECTED)},pt=async(e={})=>{e?.condition===`not-authorized`||e?.text===`Password not verified`||e?.name===`SASLError`?await qe(kn.NOT_AUTHORIZED)||Je(kn.NOT_AUTHORIZED):Oe(kn.ERROR)},mt=(e,n)=>{if(he({userId:e,message:n}),e===Le.current||n.delay&&n.type===t.ChatType.CHAT)return;let r=n.dialog_id,i=n.id,a=n.body||``,o=n.type===t.ChatType.CHAT?Le.current:void 0,s=n.extension,c=s?.attachments,l=c?.length?c.map(e=>({...e,url:t.default.storage.privateUrl(e.uid)})):void 0,u=(ze.current[r]??[]).some(({_id:e})=>e===i);ot(i,a,r,e,o,l,!1,s??void 0),Ne(r,e,!1),Fe(r,e),f(r,n,u)},ht=(e,t)=>{xe({messageId:e,error:t})},gt=(e,t)=>{_e({lost:e,sent:t});let n=t?Dn.SENT:e?Dn.LOST:void 0,r=t?t.id:e?e.id:void 0,i=t?.extension,a=e?.extension,o=i?.dialog_id??a?.dialog_id;n&&r&&o&&(M(o,r,n),d(o,{last_message_status:n}))},_t=async n=>{let r=n.extension,i=r?.dialogId;if(i==null)return;let a=n.userId;if(ge({message:n}),a!==Le.current)switch(n.body){case rr:case ir:{let n=(await t.default.chat.dialog.list({_id:i})).items[0];e(n.occupants_ids),l(n);break}case cr:await t.default.chat.dialog.delete(i),_(i),re(i);break;case or:{let t=String(r?.addedParticipantsIds??``).split(`,`).map(Number);e(t),h(i,t);break}case sr:{let e=String(r?.removedParticipantsIds??``).split(`,`).map(Number);g(i,e);break}case ar:g(i,[a])}},vt=(e,t,n)=>{ve({messageId:e,dialogId:t,userId:n}),n!==Le.current&&(M(t,e,Dn.READ,n),d(t,{last_message_status:Dn.READ}))},yt=(e,n,r)=>{let i=r||(e=>{let n=Ue.current?.[e];if(!n){let r=Be.current.find(n=>n.type===t.DialogType.PRIVATE&&et(n)===e);r&&(n=r._id,C(e,n))}return n})(n);if(i&&n&&n!==Le.current)if(Ne(i,n,e),e){We.current?.[i][n]&&Fe(i,n);let e=setTimeout(()=>{Ne(i,n,!1),Fe(i,n)},6e3);Pe(i,n,e)}else Ne(i,n,!1),Fe(i,n)},bt=(e,t,n,r,i)=>{ye({messageId:e,dialogId:r,userId:i,updatedBody:n,isLast:t}),te(r,e,{body:n}),t&&f(r,{id:e,body:n},!0)},xt=(e,t,n)=>{be({messageId:e,dialogId:t,userId:n}),N(t,[e])};return(0,m.useEffect)(()=>{Ae({[t.ChatEvent.DISCONNECTED]:dt,[t.ChatEvent.RECONNECTED]:ft,[t.ChatEvent.ERROR]:pt,[t.ChatEvent.MESSAGE]:mt,[t.ChatEvent.ERROR_MESSAGE]:ht,[t.ChatEvent.SENT_MESSAGE]:gt,[t.ChatEvent.SYSTEM_MESSAGE]:_t,[t.ChatEvent.READ_MESSAGE]:vt,[t.ChatEvent.TYPING_MESSAGE]:yt,[t.ChatEvent.UPDATE_MESSAGE]:bt,[t.ChatEvent.DELETE_MESSAGE]:xt});try{ke()}catch{hn.warn(`Automatic network status handling is not supported. Handle the status manually and set it using the "dangerouslySetIsOnline(isOnline: boolean)" method.`)}},[]),{isConnected:Te,chatStatus:Ee,connect:async e=>{Oe(kn.CONNECTING);try{let n=await t.default.chat.connect(e);return n&&(Oe(kn.CONNECTED),De(n),r(e.userId)),n}catch(e){return Oe(kn.DISCONNECTED),console.error(`Failed to connect due to ${e}`),!1}},terminate:Je,disconnect:qe,dialogs:c,selectedDialog:v,totalDialogsReached:E,unreadMessagesCount:T,selectDialog:async e=>{if(!e)return b();e._id!==Ve.current?._id&&(y(e),He.current?.has(e._id)||(await $e(e._id),x(e._id)),e.unread_messages_count>0&&await nt(e).catch(e=>{}))},unselectDialog:b,createChat:async(r,i)=>{let a={type:t.DialogType.PRIVATE,occupants_ids:[r],extensions:i},o=await t.default.chat.dialog.create(a);return l(o),ae(o._id,!0),C(r,o._id),st(rr,o._id,r),n&&e([r,n]),o},createGroupChat:async(r,i,a,o)=>{let s={name:i,photo:a,type:t.DialogType.GROUP,occupants_ids:r,extensions:o},c=await t.default.chat.dialog.create(s);return l(c),ae(c._id,!0),st(rr,c._id,r),n&&e([...r,n]),c},markDialogAsRead:nt,addUsersToGroupChat:async n=>{if(!v)throw Error(`No dialog selected`);let r=v._id,i={push_all:{occupants_ids:n}};await t.default.chat.dialog.update(r,i),ct(or,v,[],{addedParticipantsIds:n.join()}),st(ir,r,n),e(n);let a={occupants_ids:Array.from(new Set([...v.occupants_ids,...n]))};d(r,a),y({...v,...a})},removeUsersFromGroupChat:async e=>{if(!v)throw Error(`No dialog selected`);let n=v._id,r={pull_all:{occupants_ids:e}};await t.default.chat.dialog.update(n,r),st(sr,n,e),ct(sr,v,e,{removedParticipantsIds:e.join()});let i={occupants_ids:v.occupants_ids.filter(t=>!e.includes(t))};d(n,i),y({...v,...i})},leaveGroupChat:async e=>{if(e??=v,!e)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);let n=e._id;ct(ar,e),await t.default.chat.dialog.delete(n),_(n),re(n),b()},deleteChat:async e=>{if(e??=v,!e)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);let n=e._id,r=et(e);r&&(w(r),st(cr,n,r)),await t.default.chat.dialog.delete(n),_(n),re(n),b()},deleteGroupChat:async e=>{if(e??=v,!e)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);if(e.user_id!==n)throw Error(`Only the group chat owner can delete the group chat.`);let r=e._id;ct(cr,e),await t.default.chat.dialog.delete(r,{force:1}),_(r),re(r),b()},fetchDialogs:Ze,fetchNextDialogs:async()=>{let e=Be.current.length;return Ze({skip:e})},getDialogOpponentId:et,getPrivateDialogByUserId:tt,messages:k,totalMessagesReached:ie,fetchMessages:$e,fetchNextMessages:async e=>{let t=(ze.current[e]??[]).length;return Qe(e,t)},sendMessage:it,sendMessageByUserId:(e,t,n={})=>{let r=tt(t);if(!r)throw Error(`Dialog not found.`);it(e,r,n)},sendAttachment:async(e,r)=>{if(r??=v,!r)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);let i=r._id,a=et(r),o=Date.now()+``,s=e.map((e,t)=>({uid:`local-${o}-${t}`,type:e.type,url:URL.createObjectURL(e)}));ot(o,`Attachment`,i,n,a,s,!0);let c=e.map(e=>{let{name:n,type:r,size:i}=e,a={file:e,name:n,type:r,size:i,public:!1};return t.default.storage.createAndUpload(a)}),l=(await Promise.all(c)).map(({uid:e,content_type:n=``})=>({uid:e,type:n,url:t.default.storage.privateUrl(e)})),u={_id:at(`Attachment`,l,r,a),attachments:s,pending:!1,status:Re.current===kn.CONNECTED?Dn.WAIT:Dn.LOST};te(i,o,u)},sendSignal:lt,readMessage:(e,n,r)=>{t.default.chat.sendReadStatus({messageId:e,userId:n,dialogId:r}),M(r,e,Dn.READ,n),p(r)},editMessage:(e,n,r)=>{if(r??=v,!r)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);let i=r._id,a=r.type===t.DialogType.PRIVATE?et(r):i,o=r.last_message_id===e;t.default.chat.editMessage({to:a,body:n,dialogId:i,originMessageId:e,last:o}),te(i,e,{message:n})},deleteMessages:async(e,n=[],r=!1)=>{if(e??=v,!e)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);if(!n||n.length===0)throw Error(`No messages to delete. You need to provide a message id or messages ids via function argument.`);await t.default.chat.message.delete(n,{force:+!!r}),N(e._id,n)},clearChatHistory:async e=>{if(e??=v,!e)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);await t.default.chat.dialog.clearHistory(e._id),re(e._id)},generateTempMessageId:rt,addTempMessage:(e,t,n={})=>{if(t??=v,!t)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);let r=Math.round(new Date().getTime()/1e3),i=e||rt(),a={created_at:r,updated_at:r,date_sent:r,message:typeof n.body==`string`?n.body:``,sender_id:0,...n,_id:e||i,chat_dialog_id:t._id,custom:!0};return A(t._id,a),i},updateTempMessage:(e,t,n={})=>{if(t??=v,!t)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);let r=n.body??n.message,i={...n,updated_at:Math.round(new Date().getTime()/1e3),chat_dialog_id:t._id,...typeof r==`string`?{message:r}:{},custom:!0};te(t._id,e,i)},messageEvent:ce,messageErrorEvent:me,messageSentEvent:ue,messageReadEvent:de,messageEditEvent:fe,messageDeleteEvent:pe,messageSystemEvent:le,lastActivity:a,getLastActivity:async(e,n=!1)=>{let r=Ge.current[e],i=Ke.current[e];if(!n&&typeof r==`number`&&!i)return r;try{let{seconds:n}=await t.default.chat.getLastUserActivity(e);return o(e,n),n}catch(t){return hn.error(`getLastActivity`,{userId:e,error:t}),null}},subscribeToLastActivity:e=>{t.default.chat.subscribeToUserLastActivityStatus(e),t.default.chat.addListener(t.ChatEvent.USER_LAST_ACTIVITY,ut)},unsubscribeFromLastActivity:e=>{t.default.chat.unsubscribeFromUserLastActivityStatus(e),t.default.chat.removeListener(t.ChatEvent.USER_LAST_ACTIVITY)},isOnline:Ce,dangerouslySetIsOnline:we,typingStatus:Me,sendTypingStatus:(e,n=!0)=>{if(e??=v,!e)throw Error(`No dialog provided. You need to provide a dialog via function argument or select a dialog via 'selectDialog'.`);let r=e.type===t.DialogType.PRIVATE?et(e):e._id;n?t.default.chat.sendIsTypingStatus(r):t.default.chat.sendIsStopTypingStatus(r)},resetChatState:Xe}},ur=()=>({getLinkPreview:async e=>t.default.linkpreview.get(e),clearLinkPreviewCache:()=>{t.default.linkpreview.cache.clear(),_n.info(`clearLinkPreviewCache`)}}),dr=`audio-mute`,fr=`audio-unmute`,pr=`video-mute`,mr=`video-unmute`,hr=()=>{let[e,n]=(0,m.useState)(0),[r,i,a,o,s,c,l,u,d,f,p,h,g,_,v,y,b,x,S,C,w,T,E,D,ee,O,k,A,j,te,M,ne,N]=Un($t(e=>[e.activeCall,e.setActiveCall,e.incomingCall,e.setIncomingCall,e.resetIncomingCall,e.activeMedia,e.saveActiveMedia,e.userMediaParams,e.saveUserMediaParams,e.displayMediaParams,e.saveDisplayMediaParams,e.localStream,e.setLocalStream,e.remoteStreams,e.addRemoteStream,e.removeRemoteStream,e.deviceChangeEvent,e.setDeviceChangeEvent,e.incomingCallCallData,e.incomingCallStopData,e.activeCallAcceptData,e.activeCallRejectData,e.activeCallStopData,e.activeCallNotAnswerData,e.activeCallConnectionStateData,e.resetSessionData,e.participantsIDs,e.setParticipantsIDs,e.upsertSessionData,e.participantDidEnter,e.participantDidLeave,e.attachVideochatListeners,e.resetVideochatStore])),re=Qn(`activeCall`),ie=Qn(`incomingCall`),ae=(0,m.useCallback)(async e=>{if(a){let{currentUserID:t,initiatorID:n,opponentsIDs:r}=a,i=[...r,n].filter(e=>e!==t);O(),A(i);try{await ce(a),a.accept(e),s()}catch(t){yn.error(`acceptCall`,t),a.stop(e)}finally{s()}}},[a]),oe=(0,m.useCallback)(e=>{a?.reject(e),s()},[a]),se=(0,m.useCallback)(e=>{N(),r?.stop(e)},[r]),ce=(0,m.useCallback)(async e=>{let n=c===Bn.DISPLAY?await e.getDisplayMedia(f):await e.getUserMedia(u);e.callType===t.CallType.AUDIO&&n.getVideoTracks().forEach(e=>e.enabled=!1),g(n),i(e)},[c,u,f]),le=(e,t)=>{e.initiatorID!==e.currentUserID&&(o(e),j(Vn.ON_CALL,{userInfo:t}),yn.log(`onCall`,{session:e,ext:t}))},ue=(e,t,n)=>{te(t),j(Vn.ON_ACCEPT,{userID:t,userInfo:n}),yn.log(`onAccept`,{session:e,userID:t,ext:n})},de=(e,t,n)=>{M(t),j(Vn.ON_REJECT,{userID:t,userInfo:n}),yn.log(`onReject`,{session:e,userID:t,ext:n})},fe=(e,t,n)=>{re.current?.ID===e.ID&&(M(t),y(t),j(Vn.ON_STOP,{userID:t,userInfo:n})),ie.current?.ID===e.ID&&(j(Vn.ON_STOP_CALLING,{userID:t,userInfo:n}),s()),yn.log(`onStop`,{session:e,userID:t,ext:n})},pe=(e,t)=>{M(t),j(Vn.ON_NOT_ANSWER,{userID:t}),yn.log(`onNotAnswer`,{session:e,userID:t})},me=(e,t,n)=>{v(t,n),yn.log(`onRemoteStream`,{session:e,userID:t,stream:n})},he=(e,t,n)=>{j(Vn.ON_CONNECTION_STATE,{userID:t,connectionState:n}),yn.log(`onConnectionState`,{session:e,userID:t,connectionState:n})},ge=e=>{x(e),yn.log(`onDevicesChange`,{event:e})},_e=(0,m.useMemo)(()=>{let e=h?.getAudioTracks();return!e||e.length===0||e.every(e=>!e.enabled)},[h,e]),ve=(0,m.useMemo)(()=>{let e=h?.getVideoTracks();return!e||e.length===0||e.every(e=>!e.enabled)},[h,e]),ye=(0,m.useCallback)(async e=>{if(r){switch(e){case dr:r.mute(t.MediaType.AUDIO);break;case pr:r.mute(t.MediaType.VIDEO);break;case fr:r.unmute(t.MediaType.AUDIO);break;case mr:r.unmute(t.MediaType.VIDEO)}n(e=>e+1)}},[r]);return(0,m.useEffect)(()=>{r&&k.size===0&&se()},[r,k]),(0,m.useEffect)(()=>{ne({[t.CallEvent.CALL]:le,[t.CallEvent.ACCEPT]:ue,[t.CallEvent.REJECT]:de,[t.CallEvent.STOP]:fe,[t.CallEvent.NOT_ANSWER]:pe,[t.CallEvent.REMOTE_STREAM]:me,[t.CallEvent.CONNECTION_STATE]:he,[t.CallEvent.DEVICES]:ge})},[]),{startCall:async(e=[],n=t.CallType.VIDEO,r)=>{let i=Array.isArray(e)?e:[e],a=t.default.videochat.createNewSession(i,n);try{O(),A(i),await ce(a),a.call(r)}catch(e){yn.error(`startCall`,e),A([])}},acceptCall:ae,rejectCall:oe,stopCall:se,activeCall:r,incomingCall:a,deviceChangeEvent:b,incomingCallCallData:S,incomingCallStopData:C,activeCallAcceptData:w,activeCallRejectData:T,activeCallStopData:E,activeCallNotAnswerData:D,activeCallConnectionStateData:ee,resetSessionData:O,participantsIds:Array.from(k),activeMedia:c,setActiveMedia:async e=>{e&&l(e)},localStream:h,remoteStreams:_,getUserMedia:async e=>{try{let t=await r?.getUserMedia(e??u);return l(Bn.USER),t}catch(e){yn.error(`getUserMedia`,{error:e})}},getDisplayMedia:async e=>{try{let t=await r?.getDisplayMedia(e??f);return l(Bn.DISPLAY),t}catch(e){yn.error(`getDisplayMedia`,{error:e})}},getMediaDevices:async e=>{try{return await t.default.videochat.getMediaDevices(e)}catch(e){yn.error(`getMediaDevices`,{error:e})}},switchMediaTracks:async e=>{try{return await r?.switchMediaTracks(e)}catch(e){yn.error(`switchMediaTracks`,{error:e})}},userMediaParams:u,setUserMediaParams:async e=>{e&&d(e)},displayMediaParams:f,setDisplayMediaParams:async e=>{e&&p(e)},isLocalAudioMuted:_e,muteAudio:()=>{ye(dr)},unmuteAudio:()=>{ye(fr)},isLocalVideoMuted:ve,muteVideo:()=>{ye(pr)},unmuteVideo:()=>{ye(mr)},resetVideochatState:()=>{N(),yn.info(`resetVideochatState`)}}},gr=()=>{let e=$n(),n=er(),r=lr(),i=ur(),a=nr(),o=hr(),[s,c,l,u,d,f]=Pn($t(e=>[e.currentSession,e.currentUserId,e.currentUser,e.setCurrentSession,e.updateCurrentSession,e.resetConnectyCubeStore])),p=async e=>{let n=await t.default.createSession(e);return h(n),n},m=async(e,n=!0)=>{let r=null,{email:i,login:a,password:o}=e;try{i?r=await p({email:i,password:o}):a&&(r=await p({login:a,password:o}))}catch(s){if(s?.code!==404||!n||!o||!i&&!a)throw s;{let n=(await t.default.users.signup(e)).user;n.email?r=await p({email:n.email,password:o}):n.login&&(r=await p({login:n.login,password:o}))}}return r},h=e=>{t.default.setSession(e),u(e)},g=()=>{e.resetAddressBookState(),n.resetBlockListState(),r.resetChatState(),i.clearLinkPreviewCache(),a.resetUsersState(),o.resetVideochatState(),f(),gn.info(`resetConnectyCubeState`)};return{currentSession:s,currentUserId:c,currentUser:l,createSession:p,createEmptySession:()=>p(),createGuestSession:e=>p({guest:`1`,full_name:e}),createUserSession:m,setSession:h,getSession:async()=>{let e=await t.default.getSession();return u(e),e},destroySession:async()=>{await t.default.destroySession(),g()},loginUser:async e=>(await m(e,!1))?.user??null,signupUser:async e=>(await m(e,!0))?.user??null,updateUser:async e=>{let{user:n}=await t.default.users.update(e);return d({user:n,user_id:n.id}),n},deleteUser:async()=>{await t.default.users.delete(),d({user:null,user_id:void 0})},resetConnectyCubeState:g,...e,...n,...r,...i,...a,...o}},_r=`@connectycube/chat-widget:draftMessages`,vr=()=>{try{let e=ot()?localStorage?.getItem(_r):null;return e?JSON.parse(e):{}}catch(e){return console.error(`Could not load state from localStorage`,e),{}}},yr=e=>{if(ot())try{let t=JSON.stringify(e);localStorage?.setItem(_r,t)}catch(e){console.error(`Could not save state to localStorage`,e)}},br=()=>{if(ot())try{localStorage?.removeItem(_r)}catch(e){console.error(`Could not clear state from localStorage`,e)}},xr=vr(),Sr=Dt(e=>({draftMessages:xr,setDraftMessages:t=>{e({draftMessages:t}),yr(t)},upsertDraftMessage:t=>{e(e=>{let n={...e.draftMessages,...t};return yr(n),{draftMessages:n}})},deleteDraftMessage:t=>{e(e=>{let n={...e.draftMessages};return delete n[t],yr(n),{draftMessages:n}})},resetDraftMessages:()=>{e({draftMessages:xr}),yr(xr)}})),Cr=()=>{br(),Sr.setState({draftMessages:{}})},wr=async({hardwareOnly:e=!0,debug:t=!1}={})=>{let{cookieEnabled:n,deviceMemory:r,doNotTrack:i,hardwareConcurrency:a,language:o,languages:s,maxTouchPoints:c,platform:l,userAgent:u,vendor:d}=window.navigator,{width:f,height:p,colorDepth:m,pixelDepth:h}=/Mobi|Android|iPhone|iPad|iPod/i.test(navigator.userAgent)?window.screen:{},g=new Date().getTimezoneOffset(),_=Intl.DateTimeFormat().resolvedOptions().timeZone,v=`ontouchstart`in window,y=window.devicePixelRatio,b=Tr(t),x=await kr(t),S=Or(),C=Er(t),w=Dr(),T=e?{audioInfo:S,audio:x,canvas:b,colorDepth:m,deviceMemory:r,devicePixelRatio:y,hardwareConcurrency:a,height:p,maxTouchPoints:c,pixelDepth:h,platform:l,touchSupport:v,webgl:C,webglInfo:w,width:f}:{audioInfo:S,audio:x,canvas:b,colorDepth:m,cookieEnabled:n,deviceMemory:r,devicePixelRatio:y,doNotTrack:i,hardwareConcurrency:a,height:p,language:o,languages:s,maxTouchPoints:c,pixelDepth:h,platform:l,timezone:_,timezoneOffset:g,touchSupport:v,userAgent:u,vendor:d,webgl:C,webglInfo:w,width:f};return t&&console.log(`Fingerprint data:`,JSON.stringify(T,null,2)),Mr(JSON.stringify(T,null,2))},Tr=e=>{try{let t=document.createElement(`canvas`),n=t.getContext(`2d`),r="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`~1!2@3#4$5%6^7&8*9(0)-_=+[{]}|;:',<.>/?";n.textBaseline=`top`,n.font=`14px 'Arial'`,n.textBaseline=`alphabetic`,n.fillStyle=`#f60`,n.fillRect(125,1,62,20),n.fillStyle=`#069`,n.fillText(r,2,15),n.fillStyle=`rgba(102, 204, 0, 0.7)`,n.fillText(r,4,17);let i=t.toDataURL();return e?document.body.appendChild(t):n.clearRect(0,0,t.width,t.height),Mr(i)}catch{return null}},Er=e=>{try{let t=document.createElement(`canvas`),n=t.getContext(`webgl`);t.width=256,t.height=128;let r=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,r);let i=new Float32Array([-.2,-.9,0,.4,-.26,0,0,.7321,0]);n.bufferData(n.ARRAY_BUFFER,i,n.STATIC_DRAW),r.itemSize=3,r.numItems=3;let a=n.createProgram(),o=n.createShader(n.VERTEX_SHADER);n.shaderSource(o,`attribute vec2 attrVertex;varying vec2 varyinTexCoordinate;uniform vec2 uniformOffset;void main(){varyinTexCoordinate=attrVertex+uniformOffset;gl_Position=vec4(attrVertex,0,1);}`),n.compileShader(o);let s=n.createShader(n.FRAGMENT_SHADER);n.shaderSource(s,`precision mediump float;varying vec2 varyinTexCoordinate;void main() {gl_FragColor=vec4(varyinTexCoordinate,0,1);}`),n.compileShader(s),n.attachShader(a,o),n.attachShader(a,s),n.linkProgram(a),n.useProgram(a),a.vertexPosAttrib=n.getAttribLocation(a,`attrVertex`),a.offsetUniform=n.getUniformLocation(a,`uniformOffset`),n.enableVertexAttribArray(a.vertexPosArray),n.vertexAttribPointer(a.vertexPosAttrib,r.itemSize,n.FLOAT,!1,0,0),n.uniform2f(a.offsetUniform,1,1),n.drawArrays(n.TRIANGLE_STRIP,0,r.numItems);let c=new Uint8Array(t.width*t.height*4);n.readPixels(0,0,t.width,t.height,n.RGBA,n.UNSIGNED_BYTE,c);let l=JSON.stringify(c).replace(/,?"[0-9]+":/g,``);return e?document.body.appendChild(t):n.clear(n.COLOR_BUFFER_BIT|n.DEPTH_BUFFER_BIT|n.STENCIL_BUFFER_BIT),Mr(l)}catch{return null}},Dr=()=>{try{let e=document.createElement(`canvas`).getContext(`webgl`);return{VERSION:String(e.getParameter(e.VERSION)),SHADING_LANGUAGE_VERSION:String(e.getParameter(e.SHADING_LANGUAGE_VERSION)),VENDOR:String(e.getParameter(e.VENDOR)),SUPPORTED_EXTENSIONS:String(e.getSupportedExtensions())}}catch{return null}},Or=()=>{try{let e=new(window.OfflineAudioContext||window.webkitOfflineAudioContext)(1,44100,44100);return{sampleRate:e.sampleRate,channelCount:e.destination.maxChannelCount,outputLatency:e.outputLatency,state:e.state,baseLatency:e.baseLatency}}catch{return null}},kr=async e=>{try{let t=new(window.OfflineAudioContext||window.webkitOfflineAudioContext)(1,44100,44100),n=t.createOscillator();n.type=`sine`,n.frequency.value=440,n.connect(t.destination),n.start();let r=await t.startRendering(),i=r.getChannelData(0).reduce((e,t)=>e+Math.abs(t),0).toString();if(e){let e=Ar(r),t=URL.createObjectURL(e),n=document.createElement(`audio`);n.controls=!0,n.src=t,document.body.appendChild(n)}return Mr(i)}catch{return null}},Ar=e=>{let t=e.numberOfChannels,n=e.length*t*2+44,r=new ArrayBuffer(n),i=new DataView(r);jr(i,0,`RIFF`),i.setUint32(4,n-8,!0),jr(i,8,`WAVE`),jr(i,12,`fmt `),i.setUint32(16,16,!0),i.setUint16(20,1,!0),i.setUint16(22,t,!0),i.setUint32(24,e.sampleRate,!0),i.setUint32(28,e.sampleRate*t*2,!0),i.setUint16(32,t*2,!0),i.setUint16(34,16,!0),jr(i,36,`data`),i.setUint32(40,n-44,!0);let a=44;for(let n=0;n<e.length;n++)for(let r=0;r<t;r++){let t=e.getChannelData(r)[n],o=Math.max(-1,Math.min(1,t))*32767;i.setInt16(a,o,!0),a+=2}return new Blob([i],{type:`audio/wav`})},jr=(e,t,n)=>{for(let r=0;r<n.length;r++)e.setUint8(t+r,n.charCodeAt(r))},Mr=e=>{let t=e.length&3,n=e.length-t,r=3432918353,i=461845907,a,o,s;for(let t=0;t<n;t++)s=e.charCodeAt(t)&255|(e.charCodeAt(++t)&255)<<8|(e.charCodeAt(++t)&255)<<16|(e.charCodeAt(++t)&255)<<24,++t,s=(s&65535)*r+(((s>>>16)*r&65535)<<16)&4294967295,s=s<<15|s>>>17,s=(s&65535)*i+(((s>>>16)*i&65535)<<16)&4294967295,a^=s,a=a<<13|a>>>19,o=(a&65535)*5+(((a>>>16)*5&65535)<<16)&4294967295,a=(o&65535)+27492+(((o>>>16)+58964&65535)<<16);let c=n-1;switch(s=0,t){case 3:s^=(e.charCodeAt(c+2)&255)<<16;break;case 2:s^=(e.charCodeAt(c+1)&255)<<8;break;case 1:s^=e.charCodeAt(c)&255;break}return s=(s&65535)*r+(((s>>>16)*r&65535)<<16)&4294967295,s=s<<15|s>>>17,s=(s&65535)*i+(((s>>>16)*i&65535)<<16)&4294967295,a^=s,a^=e.length,a^=a>>>16,a=(a&65535)*2246822507+(((a>>>16)*2246822507&65535)<<16)&4294967295,a^=a>>>13,a=(a&65535)*3266489909+(((a>>>16)*3266489909&65535)<<16)&4294967295,a^=a>>>16,a>>>0};typeof window<`u`&&(window.getBrowserFingerprint=wr);var Nr=function(e){return e.AVAILABLE=`available`,e.AWAY=`away`,e.BUSY=`busy`,e.UNKNOWN=`unknown`,e}({}),Pr=function(e){return e.UPDATE_USER=`user/UPDATE`,e}({}),Fr=`@connectycube/chat-widget:session`,Ir=`@connectycube/chat-widget:guest`,Lr=`@connectycube/chat-widget:rememberMe`,Rr=`widget_`,zr=async e=>{let n=!ai();if(n){let n=Xr();n&&(t.default.setSession(n),await Jr(n,e))}return n},Br=async()=>{let e=Xr()?.user?.login,t=typeof e==`string`&&(await si(e)).substring(0,32);return e&&t?await Vr(e,t):null},Vr=async(e,n)=>{let r=await t.default.createSession({login:e,password:n});return Yr(r,yi()),r},Hr=async e=>{let t=ui(e?.userId),n=(await si(t)).substring(0,32),r;try{r=await Vr(t,n),await Jr(r,e)}catch(i){if(i?.code===404)r=await Gr(t,n,e);else throw i}return r},Ur=async()=>{try{await t.default.destroySession(),Zr()}catch(e){console.error(e)}},Wr=()=>t.default.service?.getSession()||null,Gr=async(e,n,r)=>{let i={login:e,password:n,full_name:r?.userName||e};return r?.userId&&(i.external_id=r.userId.toString()),r?.userEmail&&(i.email=r.userEmail),r?.userAvatar&&(i.avatar=r.userAvatar),r?.userProfileLink&&(i.website=r.userProfileLink),await t.default.users.signup(i),Vr(e,n)},Kr=(e={})=>t.default.service?.sdkInstance?.config?.set?.(e),qr=async(e,t)=>{let n=t?.user_id??ii(),r=t?.token??ri(),i=n&&r?{userId:n,password:r}:null;return i?e(i):Promise.reject(Error(`[useConnectyCube.connect] Missing userId and password`))},Jr=async(e,n)=>{let r={};if(n?.userId&&e?.user?.external_id!==n.userId.toString()&&(r.external_id=n.userId.toString()),n?.userName&&e?.user?.full_name!==n.userName&&(r.full_name=n.userName),n?.userEmail&&e?.user?.email!==n.userEmail&&(r.email=n.userEmail),n?.userAvatar&&e?.user?.avatar!==n.userAvatar&&(r.avatar=n.userAvatar),n?.userProfileLink&&e?.user?.website!==n.userProfileLink&&(r.website=n.userProfileLink),Object.keys(r).length>0){let{user:n}=await t.default.users.update(r);n&&(e.user=n,Yr(e,yi()))}return e},Yr=(e,t=!1)=>{ot()&&!t&&localStorage.setItem(Fr,JSON.stringify(e))},Xr=()=>{let e=ot()&&localStorage.getItem(Fr);return e?JSON.parse(e):yi()?Wr():null},Zr=()=>{ot()&&(localStorage.removeItem(Fr),localStorage.removeItem(_r))},Qr=()=>{let e=Xr();return e?e.user:null},$r=e=>{if(typeof e?.custom_data==`string`)try{return JSON.parse(e.custom_data)}catch(e){return console.error(`Error parsing custom data:`,e),null}return null},ei=()=>$r(Qr()),ti=e=>{let{userStatus:t}=$r(e||Qr())||{},n=typeof t==`string`?t.toLowerCase():`available`;return n===`away`?`away`:n===`busy`?`busy`:n===`unknown`?`unknown`:`available`},ni=async(e,n=!1)=>{let r=ei(),i=Object.assign({},r,e),a=JSON.stringify(i),o=Xr(),s=Qr();return s=s&&n?{...s,custom_data:a}:(await t.default.users.update({custom_data:a})).user,o&&Yr({...o,user:s},yi()),s},ri=()=>{let e=Xr();return e?e.token:null},ii=()=>{let e=Xr();return e?e.user_id:null},ai=()=>{let e=(yi()?null:Xr())?.updated_at??new Date(0).toISOString(),t=new Date(e).getTime();return Date.now()-t>6e4*119},oi=e=>{let t=Xr();return t?!!(e&&t.user?.external_id!==e):!1},si=async e=>{let t=new TextEncoder().encode(e),n;try{n=await crypto.subtle.digest(`SHA-256`,t)}catch{n=new Uint8Array(t.length).map(()=>Math.random()*256|0).buffer}return Array.from(new Uint8Array(n)).map(e=>e.toString(16).padStart(2,`0`)).join(``)},ci=(e,t=!0)=>e?e.full_name||e.login||`Unknown:${e.id}`:t?`Unknown`:``,li=e=>e?/^(https?:\/\/|\/|\.\/|\.\.\/)/.test(e)?e:t.default.storage.privateUrl(e):``,ui=e=>e?`${Rr}${e}`:`${Rr}${Math.random().toString(36).substring(2,14)}`,di=async(e,n)=>t.default.data.create(`UserReports`,{reportedUserId:e,reason:n}),fi=async e=>{let n=await wr(),r=ii(),i=btoa(`${r}:${n}`),{endpoint:a,auth:o,p256dh:s}=e??{};if(a&&o&&s&&i)return t.default.pushnotifications.subscriptions.create({notification_channels:tn.NotificationChannel.WEB,push_token:{environment:`production`,web_endpoint:a,web_auth:o,web_p256dh:s},device:{platform:tn.DevicePlatform.WEB,udid:btoa(`${r}:${n}`)}})},pi=async()=>{let e=(await t.default.pushnotifications.subscriptions.list()).map(({subscription:e})=>t.default.pushnotifications.subscriptions.delete(e.id));return Promise.all(e)},mi=!!t.default.videochat,hi=(e=!1)=>{ot()&&(e?localStorage.setItem(Lr,`1`):localStorage.removeItem(Lr))},gi=(e=!1)=>{ot()&&(e?localStorage.setItem(Ir,`1`):localStorage.removeItem(Ir))},_i=()=>ot()?!!localStorage.getItem(Lr):!1,vi=()=>ot()?!!localStorage.getItem(Ir):!1,yi=()=>vi()&&!_i(),{CHAT_WIDGET_CONNECTYCUBE_TERMS_AND_CONDITIONS:bi}={BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1},xi={userAuthorized:!1,attachmentsAccept:`*/*`,enableUserLogin:!1,enableCalls:!1,enableUserStatuses:!1,enableLastSeen:!1,enableContentReporting:!1,enableBlockList:!1,enableUrlPreview:!1,limitUrlsPreviews:1,termsAndConditions:bi},Si=Dt(e=>({...xi,setUserAuthorized:t=>e({userAuthorized:t}),setAttachmentsAccept:t=>e({attachmentsAccept:t}),setEnableUserLogin:t=>e({enableUserLogin:t}),setEnableCalls:t=>e({enableCalls:t&&mi}),setEnableUserStatuses:t=>e({enableUserStatuses:t}),setEnableLastSeen:t=>e({enableLastSeen:t}),setEnableContentReporting:t=>e({enableContentReporting:t}),setEnableBlockList:t=>e({enableBlockList:t}),setEnableUrlPreview:t=>e({enableUrlPreview:t}),setLimitUrlsPreviews:t=>e({limitUrlsPreviews:t>5?5:t}),setTermsAndConditions:t=>e({termsAndConditions:t}),resetUserAuthorized:()=>e({userAuthorized:xi.userAuthorized}),resetAttachmentsAccept:()=>e({attachmentsAccept:xi.attachmentsAccept}),resetEnableUserLogin:()=>e({enableUserLogin:xi.enableUserLogin}),resetEnableCalls:()=>e({enableCalls:xi.enableCalls}),resetEnableUserStatuses:()=>e({enableUserStatuses:xi.enableUserStatuses}),resetEnableLastSeen:()=>e({enableLastSeen:xi.enableLastSeen}),resetEnableContentReporting:()=>e({enableContentReporting:xi.enableContentReporting}),resetEnableBlockList:()=>e({enableBlockList:xi.enableBlockList}),resetEnableUrlPreview:()=>e({enableUrlPreview:xi.enableUrlPreview}),resetLimitUrlsPreviews:()=>e({limitUrlsPreviews:xi.limitUrlsPreviews}),resetTermsAndConditions:()=>e({termsAndConditions:xi.termsAndConditions})})),Ci=e=>{e.limitUrlsPreviews&&=e.limitUrlsPreviews>5?5:e.limitUrlsPreviews,Si.setState(e)},wi=()=>{Si.setState(xi)},{CHAT_WIDGET_CONNECTYCUBE_WEB_PUSH_VAPID_PUBLIC_KEY:Ti,CHAT_WIDGET_CONNECTYCUBE_WEB_PUSH_SERVICE_WORKER_PATH:Ei}={BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1},Di={muted:!1,showNotifications:!1,playSound:!0,webPushNotifications:!1,webPushVapidPublicKey:Ti,serviceWorkerPath:Ei},Oi=Dt(e=>({...Di,setMuted:t=>e({muted:t}),resetMuted:()=>e({muted:Di.muted}),setShowNotifications:t=>e({showNotifications:t}),resetShowNotifications:()=>e({showNotifications:Di.showNotifications}),setPlaySound:t=>e({playSound:t}),resetPlaySound:()=>e({playSound:Di.playSound}),setWebPushNotifications:t=>e({webPushNotifications:t}),resetWebPushNotifications:()=>e({webPushNotifications:Di.webPushNotifications}),setWebPushVapidPublicKey:t=>e({webPushVapidPublicKey:t}),resetWebPushVapidPublicKey:()=>e({webPushVapidPublicKey:Di.webPushVapidPublicKey}),setServiceWorkerPath:t=>e({serviceWorkerPath:t}),resetServiceWorkerPath:()=>e({serviceWorkerPath:Di.serviceWorkerPath})})),ki=e=>{Oi.setState(e)},Ai=()=>{Oi.setState(Di)},ji={quickActions:{title:``,description:``,actions:[]}},Mi=Dt(e=>({...ji,setQuickActions:t=>e({quickActions:t}),resetQuickActions:()=>e({quickActions:ji.quickActions})})),Ni=e=>{Mi.setState(e)},Pi=()=>{Mi.setState(ji)},Fi={requestOnlineUsersInterval:300,enableOnlineUsersBadge:!1,onlineUsersCount:0},Ii=Dt(e=>({requestOnlineUsersInterval:Fi.requestOnlineUsersInterval,enableOnlineUsersBadge:Fi.enableOnlineUsersBadge,onlineUsersCount:Fi.onlineUsersCount,setRequestOnlineUsersInterval:t=>{e({requestOnlineUsersInterval:typeof t==`number`?t>30?t:30:Fi.requestOnlineUsersInterval})},setEnableOnlineUsersBadge:t=>e({enableOnlineUsersBadge:t}),setOnlineUsersCount:t=>e({onlineUsersCount:t}),resetRequestOnlineUsersInterval:()=>e({requestOnlineUsersInterval:Fi.requestOnlineUsersInterval}),resetEnableOnlineUsersBadge:()=>e({enableOnlineUsersBadge:Fi.enableOnlineUsersBadge}),resetOnlineUsersCount:()=>e({onlineUsersCount:Fi.onlineUsersCount})})),Li=()=>{Ii.setState({onlineUsersCount:0})},Ri={fetchedCount:0,queue:[],urlPreviews:new Map,isProcessing:!1},zi=Dt((e,n)=>({...Ri,addUrls:async r=>{let i=n(),a=r.filter(e=>!i.urlPreviews.has(e)&&!i.queue.includes(e));if(i.isProcessing||a.length===0)return;e({queue:[...i.queue,...a],isProcessing:!0});let o=i.fetchedCount,s=new Map(i.urlPreviews);for(let e of a)try{let n=await t.default.linkpreview.get(e);s.set(e,n),o++}catch(t){console.warn(`Failed to fetch link preview for ${e}`,t)}e({urlPreviews:s,fetchedCount:o,isProcessing:!1,queue:[]})},matchUrlsFromMessage:(e=``)=>{let t=Si.getState().limitUrlsPreviews;return(e.match(/https?:\/\/[^\s]+/g)||[]).slice(0,t)}})),Bi=()=>{zi.setState(Ri)},Vi=Dt(e=>({visible:!1,userId:void 0,showProfile:t=>e({visible:!0,userId:t}),hideProfile:()=>e({visible:!1,userId:void 0})})),Hi=()=>{Vi.setState({visible:!1,userId:void 0})},Ui=Dt(e=>({unreadCount:0,setUnreadCount:t=>e({unreadCount:t}),resetUnreadCount:()=>e({unreadCount:0})})),Wi=()=>{Ui.setState({unreadCount:0})},Gi=async()=>`Notification`in window?Notification.permission===`granted`?!0:await Notification.requestPermission()===`granted`?(console.log(`Notifications are enabled`),!0):(console.warn(`Notifications are disabled`),!1):(console.error(`Notifications are not supported in this browser`),!1),Ki=async e=>{let t=!1;try{e&&`serviceWorker`in navigator&&(t=!!await navigator.serviceWorker.register(e,{type:`module`}))}catch(e){throw Error(`Registration failed: ${e}`)}return t},qi=async e=>{try{if(e&&`serviceWorker`in navigator)return navigator.serviceWorker.getRegistration(e)}catch(e){throw Error(`Get registration failed: ${e}`)}},Ji=e=>{let{endpoint:t=``,keys:n={}}=e?.toJSON()??{},{p256dh:r=``,auth:i=``}=n;return{endpoint:t,p256dh:r,auth:i}},Yi=async(e,t)=>{let n=await qi(e),r=null;return n?.pushManager&&(r=await n.pushManager.getSubscription(),!r&&t&&(r=await n?.pushManager.subscribe({applicationServerKey:t,userVisibleOnly:!0})??null)),r},Xi=async e=>(await Yi(e))?.unsubscribe()??!1,Zi=()=>{let e=ei(),{showNotifications:t,playSound:n,webPushNotifications:r}=Oi.getState();return{userStatus:e?.userStatus??Nr.AVAILABLE,isNotifications:e?.notifications??t,isNotificationSound:e?.notificationSound??n,isPushNotifications:e?.pushNotifications??r}},Qi=Zi(),$i=Dt(e=>({...Qi,setUserStatus:async(t,n)=>{await ni({userStatus:t},n),e({userStatus:t})},setIsNotifications:async(t,n)=>{await ni({notifications:t},n),e({isNotifications:t})},setIsNotificationSound:async(t,n)=>{await ni({notificationSound:t},n),e({isNotificationSound:t})},setIsPushNotifications:async(t,n)=>{let r=await ea(t);await ni({pushNotifications:r},n),e({isPushNotifications:r})}})),ea=async e=>{let{serviceWorkerPath:t,webPushVapidPublicKey:n}=Oi.getState(),r=!1;try{e?(await fi(Ji(await Yi(t,n))),r=!0):(await Xi(t),await pi())}catch(e){console.error(`Error managing push notifications subscription:`,e)}return r},ta=async()=>{let e=Zi(),t=await ea(e.isPushNotifications);$i.setState({...e,isPushNotifications:t})},{CHAT_WIDGET_CONNECTYCUBE_GOOGLE_GENERATIVE_AI_API_KEY:na}={BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1},ra={changeMessageTone:!1,textSummarization:!1,apiKey:na},ia=Dt(e=>({...ra,setChangeMessageTone:t=>e({changeMessageTone:!!t}),setTextSummarization:t=>e({textSummarization:!!t}),setApiKey:t=>e({apiKey:t}),resetChangeMessageTone:()=>e({changeMessageTone:ra.changeMessageTone}),resetTextSummarization:()=>e({textSummarization:ra.textSummarization}),resetApiKey:()=>e({apiKey:ra.apiKey})})),aa=Dt(e=>({onMessageBeforeSend:void 0,onMessageBeforeDisplay:void 0,setMessageTransforms:({onMessageBeforeSend:t,onMessageBeforeDisplay:n})=>e({onMessageBeforeSend:t,onMessageBeforeDisplay:n})})),oa=Dt(e=>({shadowRoot:ot()?document:{},shadowPortal:ot()?document.body:null,setShadowRoot:t=>e({shadowRoot:t??document,shadowPortal:t??document.body})})),sa={chat:{streamManagement:{enable:!0}}},ca=({creds:e,config:t={},user:n={},enableUserLogin:r})=>{let i=(0,m.useRef)(!1),a=Object.assign(sa,t),o=Gt(e=>e.singleView),s=Si(e=>e.setUserAuthorized);gi(o),(0,m.useEffect)(()=>{i.current||(i.current=!0,nn(e,a),Ci({userAuthorized:!ai()}),!r&&oi(n.userId)?(console.info(`[useAppAuthorization] user changed to id: ${n.userId}, name: ${n.userName}`),Zr(),s(!1)):zr(n))},[])},la=({open:e=Wt.opened,embedView:t=!1,splitView:n=Wt.splitView,singleView:r=Wt.singleView,showChatStatus:i=Wt.showChatStatus,showChatActionsAsMenu:a=Wt.showChatActionsAsMenu,showOnlineUsersTab:o=Wt.showOnlineUsersTab,hideNewChatButton:s=Wt.hideNewChatButton,hideNewUserChatOption:c=Wt.hideNewUserChatOption,hideNewGroupChatOption:l=Wt.hideNewGroupChatOption,imgLogoSource:u=Wt.imgLogoSource,muted:d=Di.muted,showNotifications:f=Di.showNotifications,playSound:p=Di.playSound,webPushNotifications:h=Di.webPushNotifications,serviceWorkerPath:g=Di.serviceWorkerPath,webPushVapidPublicKey:_=Di.webPushVapidPublicKey,attachmentsAccept:v=xi.attachmentsAccept,enableUserLogin:y=xi.enableUserLogin,enableCalls:b=xi.enableCalls,enableUserStatuses:x=xi.enableUserStatuses,enableLastSeen:S=xi.enableLastSeen,enableContentReporting:C=xi.enableContentReporting,enableBlockList:w=xi.enableBlockList,enableUrlPreview:T=xi.enableUrlPreview,limitUrlsPreviews:E=xi.limitUrlsPreviews,termsAndConditions:D=xi.termsAndConditions,quickActions:ee=ji.quickActions,defaultChat:O=Bt.defaultChat,singleViewChat:k=Bt.singleViewChat,enableOnlineUsersBadge:A=Fi.enableOnlineUsersBadge,getOnlineUsersInterval:j=Fi.requestOnlineUsersInterval,ai:te=ra,onUnreadCountChange:M,onOnlineUsersCountChange:ne,onOpenChange:N,onMessageBeforeSend:re,onMessageBeforeDisplay:ie})=>{let[ae,oe,se]=Gt($t(e=>[e.opened,e.setOpened,e.toggleOpened])),ce=Ui(e=>e.unreadCount),[le,ue,de]=Ii($t(e=>[e.onlineUsersCount,e.setRequestOnlineUsersInterval,e.setEnableOnlineUsersBadge])),[fe,pe,me]=ia($t(e=>[e.setChangeMessageTone,e.setTextSummarization,e.setApiKey])),he=aa(e=>e.setMessageTransforms);(0,m.useEffect)(()=>{he({onMessageBeforeSend:re,onMessageBeforeDisplay:ie})},[re,ie,he]),(0,m.useEffect)(()=>{Kt({opened:t||e,splitView:n&&!r,singleView:r,showChatStatus:i,showChatActionsAsMenu:a,showOnlineUsersTab:o&&!r,hideNewChatButton:s,hideNewUserChatOption:c,hideNewGroupChatOption:l,imgLogoSource:u})},[e,t,n,r,i,a,o,s,c,l,u]),(0,m.useEffect)(()=>{ki({muted:d,showNotifications:f,playSound:p,webPushNotifications:h,webPushVapidPublicKey:_,serviceWorkerPath:g})},[d,f,p,h,_,g]),(0,m.useEffect)(()=>{Ci({attachmentsAccept:v,enableUserLogin:y,enableCalls:b,enableUserStatuses:x,enableLastSeen:S,enableContentReporting:C,enableBlockList:w,enableUrlPreview:T,limitUrlsPreviews:E,termsAndConditions:D})},[v,y,b,x,S,C,w,T,E,D]),(0,m.useEffect)(()=>{Ni({quickActions:ee})},[ee]),(0,m.useEffect)(()=>{Ht({defaultChat:O,singleViewChat:k})},[O,k]),(0,m.useEffect)(()=>{ue(j)},[j,ue]),(0,m.useEffect)(()=>{de(A)},[A,de]),(0,m.useEffect)(()=>{let{changeMessageTone:e,textSummarization:t,apiKey:n}=te;typeof e==`boolean`&&fe(e),typeof t==`boolean`&&pe(t),typeof n==`string`&&me(n)},[te,fe,pe,me]),(0,m.useEffect)(()=>{ne?.(le)},[le,ne]),(0,m.useEffect)(()=>{M?.(ce)},[ce,M]),(0,m.useEffect)(()=>{N?.(ae)},[ae,N]),(0,m.useEffect)(()=>{typeof window?.ConnectyCubeChatWidget==`object`?(window.ConnectyCubeChatWidget.open=()=>oe(!0),window.ConnectyCubeChatWidget.close=()=>oe(!1),window.ConnectyCubeChatWidget.toggle=se):window.ConnectyCubeChatWidget={open:()=>oe(!0),close:()=>oe(!1),toggle:se},setTimeout(()=>{window.ConnectyCubeChatWidget?.initialNotification&&(window?.ConnectyCubeChatWidget)?.open?.()},1e3)},[oe,se])};function ua(e){let t=(0,m.useRef)(null),[n,r]=Oi($t(e=>[e.muted,e.playSound])),i=Si(e=>e.enableUserStatuses),[a,o]=$i($t(e=>[e.userStatus,e.isNotificationSound])),s=i&&(a===Nr.BUSY||a===Nr.AWAY),c=n||s;return(0,m.useEffect)(()=>(t.current=new Audio(e),()=>{t.current&&=(t.current.pause(),null)}),[e]),{play:(e=!1)=>{!c&&r&&o&&t.current&&(t.current.loop=e,t.current.currentTime=0,t.current.play().catch(e=>{console.error(`Error playing audio:`,e)}))},stop:()=>{t.current&&(t.current.pause(),t.current.currentTime=0)}}}var da=`data:audio/mpeg;base64,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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kGRBD/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kGRBD/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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AAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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AGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kGRBD/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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j/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kGRBD/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqCgwWQPbLoceHaRKdGI/CwWFtE8tMh9G4MB0M6ZV5SrPFnwtLToxD4MDEPNYdsquQkxh4E0MtQR5ozi0oxUOc1or5hUSBNox0YtuLMoS9EMIYSc6Gd5HdOSwlFWyR6XgsSpPFBoxVuEZWoUapWE3MhRsD+JO6aFWyP4EGM8b2FycGd5eViVKBPNCFewQ5NX1HgNbcwqJKnGo2TOYT12yMcGdkfyQXzitucz56xJ1DjFKcm5wKuaMyrSUONC2S9bPXypS6XWHcV8rUOLyRZDyaIWqHbiqkAXNPwAFpMDQWWNbVmni7QTgZCAhPG9zeLsQsUh6r4UF8oHiLMhgQxDHFn6nLeXhTvlYyKyZjUbXGy/OdiZHinOA/EIYIs8rmpC5sROEIywKxlELDoUo9bMrFAf6mQg6zsOCCSs81YyiTgxEZIXwnCtOtjZhN1W5E4cGRPqcI+PB5AQw7zP/7kmStD/AAAGkAAAAIAAANIAAAARshtHQDMenAAAA0gAAABLfKAfYYDRuVX2Th6hqyaHefZoKxYOeNRD3ycWDnd6XYDeAiLMdjhRU+o1wQs03KKz6hPCeAn2lsOiJljZ5C5oXg50Usp8IeWqrP9XGegkSP+QVwNPcKKzwCUFgqSgQgkifUjWpwTZTvBP1X4Dezv9zkZxQQnIFrPp7xRXQmbvssK3EamIeOojbGhfBMA68b1AcX0xAVA8dCeH52YyI4DKOxPq1BUAAAOUFxTEpQVB5EYWIeixxiEnyKWuaQxHZbHMDhyTzuwd2fDg9SMpRHK5+WD4WqMbxdIQ8YRbyaPIb1ncGx9FRiamgSzZ0i0ooJp05DfPR3jP0u5XOLZVB9hcoeo/LdnP8mZN2NtjP1cwVEUB1tVLwVZRhb4rAxmmq6SN7WatFQ4rTGztWG+G/n1hVSp5ljrlZZWpaXIk5gNbdO33ms8pUImLPhwgoefwQAc4SMetHvjQQx4fzK8qi1Wi1XETwcxLIjJAVGeMsuaHlzscCsa1G2iwhfhqxjvz//+5Jk/4j3i2wrEfh5ggAADSAAAAEagbK4x7H3AAAANIAAAAQZEMIMOAuByOPXLep3bQlHF48hN65Ua0p4MZ8qWOYWwoS5s8B4zqdVUUZ1v2yDSivH2U9WSsJkREUaZbVU3uX0/eQlbXzXVbOj3qvebVCl2/3tPrLbOZKHq9SGgRkW8savOhTvYw0CWLDmhbPdeWGwpnsE9FS8iqggJ15iOFIOJVO0Ky0edSKy8ZOIYyVtu8Odg1aajyNMN1R4Y2ei4ZFNvMwQBAQpAQiABgAAgBAQH6EIgMkDw7OcTKpzw4kiZsJhjIwmHAF/AcbAcBzAbTNVit42gKhwSDACDeBnwoGzJjuA5HYDypgEIWU0SmHuCOxpgSpgYEqASHAsf+O9BZowWIBf8niKB8N/kEoE/ELi0uT4xhyr6ZOHTdNSA0Q28zHIGSMjF/91Ghpcg5saAWEFcQnFRKpPCLjNh6//W6CJuRAuNTcUucLAuEjwDgAnQZER8OaH+Dfift//Z0GRTUab9ZOA3MJ06GFERyxcJWUGC0G/////dD////Uio+oA//uSZNuABtdtLwU94AAAAA0goAABG1IRD7nKAAAAADSDAAAAAAAJgEQCwVBsEAkEAxYEHiUAl4BBAzJB0kTCRgAGGHiHgMFD0mBAouAFQdGkxcFFmKG24LRe9bBVKzR24+bXpaXiIxhOXkUEYhAar1wSqZe9WEKhg+XMYbjYuwmJLl+u1xoLpxiWSynoOr7p/ygTkpkHxt+8Yu79atJ9SSxzPlT4IczCPwxAnyiTV5XJvr2/5D3ML33aP7kvwqy/6tHqYobdr8LMswu4c5Tc3eo5ZjK5nc/Lr0snY5EJydidqUw3uYp/zovu5/9H//9bPt2992j/C1///IY5X/DdH9wYAAEYfyF5GQyDHhgGYLMIEtIwHwDwMRLMIjCwQ6cweAIHMEQCmDADwCIykoIkHQB0wHIDQMC9AkxYDaBgACDgE6Pgf2AB9KoBAkQYyIGdQAbGgBmUoY6URmVqgZhMDioGfDAHDSgRYgJKVomoGILgQDAJEh04FgpFi2YkaeRrwvsDYEF+QbqCtBDh0uspJHF/GIFvof4QnJ8W0Zoh1q5Mt//7kmS/gAb3Y8zubwACAAANIMAAABt5bzA5+gAAAAA0gwAAAOILChRchFB3FoWaUh1pJInJxaKP/E2jYIGLmHNGeGWHcOggJldF1my6n//PkNLRfIsWUEkjBH0dby65rQAB+bsZBAMAoAtTBHgPswMYEjMBkDPDGcRtI16fVbMfqKXzHIAyUwUgF9MD3AvDBRwd4wZcCGMFPAJjACQAZi8CwzKAAAweMYxku13+rB0REdCyBwYVS0tMHmDUOikyKA1s+v+nX///9XZ625x2wsdLkQiMK+2SIgAwB8AmMAiAOzANwGYwGwDrMExDoDbnqkY91c4yoIswbBowGAEwrBgwyC00EDNX0tAldGXwZZgzIY0M9KDJg2fOKi0s08hJFTTZaGTITUet7Lnfo/Uv//9fd+1Y4chBhcsudapMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkoQjzoB5H13ygAAAADSDgAAEM7HkhT/RkwAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoBP/GAY+Hpk8mGfkGbpihhMAh+elPipmNaBC5gtoEgPAdJKAdGAXAJ5gHoDgYJqA9IiyIriZ25OzoP7OrCLKA6OVWNRkm1c4eueTbSiLzM3/TzN3v//8n/r///+X/0+qf36fI6VKQk0SYxsOFnJADsaIABgHYBgYCoAXmBHgJBghgE+YVqFIH3mPPRj04JgYNgAWnPl5jayYGxGLQZ2kew6UiTJfr0yIRvUPqBBIY9EOw55GNeJjjrRT5rX51dN6+iExpP///v///////5/2b/lvvPbVG0AVlIUeNKaOWeTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZLAI83dpxrOfKMIAAA0gAAABDf2vGm/spogAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoAAQ240QADAMABUwFMAEDgSEiCMxYWoP41ADTH/ACYwc0A/O+YjOmowtrFIgVlG6yQRGXZ9MrkMA622S7i6N5mLchHqUQK7Ttm7+xE6P9O739v//t///////6fn/8xFfKM+6UXzoDTVIP2SxsaDgCoBAOBgOYBmYHQBGGEwhJJ6QTVmY12CamDFARB1rqaOvmWLBjbec69rEj8omcGHpn2G4g/zChkBEYjHOHWFZO9BO96a7G+ie3/v///bp/+f/////3/J0/5Lsz1V9mrazDKqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmSpCfNPYUbT+ymiAAANIAAAAQzNpR1P7KbAAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoAAARGS6tEgIBDAGQBkwEIBIMCXAtTBlgtw46OFYMSMBejBCwJM3pgM4QDLzUyZCPGSmDyyNv5L3R/aV4jRmecQFHFkW8eLKOerZ4Ea55ml790d3lv9f/f//6O3k62wjuFVMfLG0ITjJAAGAB0wBQBQMBPApTArgWgwdsVxOjk+hzFQws8wUIEQNUqMzOYTMREMvlM8eWRYCReWW8CH7rpprWiDROyGUSszsmQgtUe7X7Cf+tvTa6f/////T5Wf////T+n/g3Q9ol8WH/lqgBdsdVMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+5JkqYjzLR5Ia/spsAAADSAAAAENeYMa7/BGyAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAAgnY0QADACwCghAVTAFAKIwE0FnMDqFWDVO/bg60r4ytQExwIQxQDoxdBsxYB42IB4eAeTSOdp3Tt3aVt2cOcqAU6riwdrBghLJALyZf8fooR/q/pd///t9HNblFG0wiEnBsx3WMgAwA4AhMABAQAYA+hUEWMAEEQTDD8Rcw6icwILownFEwrA0aIAiIIampRCRSGVSwOH7rQTWJbVuEVcOoaRFAijlVMCI0eGjCD8iNZPf7f/9f/2+r/870gJiJNoUVTEFNRTMuOTkuNVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//uSZKKI8xUZR1P9EUAAAA0gAAABDBRpIa/0pQAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAA0pLGQADAIwC4wB4BNMApAjDAUATEwOcSYNWI1VDqmUjGowSoIQ8IhiCBBiMDZqgEaJUhi1LTnTt2eVlzFUK8MikiwxwaTv8SDWpc1iNH6/2fq//+r53X/gKTwE4FjY0EFHPZXCgAYBQAXmAWgIRgJADuYEWCCGC8B/5wzNz+Yh0D+mBrgSxiwNmBQgYwEJjkeHISIpGLRmriZnebgnQcpgqs26B18ogHWx3NhmKd9nSEYegohghv9mz/////Zlv8hHOUAmFXGlkVUxBTUUzLjk5LjVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7kmSmCPMVHsfT/RFAAAANIAAAAQz0mx9P8EbAAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVAABZqNEEAx6OjKRJNBno3lATCdQ/A9ni4KMbzB6jBfgH8OA/wuAhmASgKhgHADqYJAA/prSkCdimXKujAxkySUeCIt0ODKerdoNSEd7pej/XRCNf9jfo/////t/////8/5f/fvQ7QbOylg1ylGQ5SOOM12cYABjQmZiIGsD52KcYOoC3nSFov5inAE6YJCAAAeo8BjGwFHoGDoAduwLNJo6+eT1L179M2uZLTJ89TRTmR0+yZn84VVDJFTRwsSFYdyNH6Pzv///Kdn9Tljq1SojmA0xMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+5JkqojziWvG058QwAAADSAAAAEMXHkhTf6CQAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVbjSAAMArAEggCdCASMwRgAeMLVAvT+HCRkx/sB5MHOAUjxWs0FtMWaAbFmOyrPKEQVmOuf8ibO72Yl0KcodUWLQSMmE2JyMa+je6VK5b+hnK6r///X//////V/+f9W/7fQTQTExv4iZmHKH8xhJuWJBADQBSYByAFmA3AHhgcoFKYSsFOHnMvOxjUALEYMKBMnWPBpC8ZermROB2Twu+kA4SO6Wk2EHnS+jHHRdF1iyi6xJrXARi9UlXZvVdZ9PsjafZvb6f/7////r/7f//O/qMv0PqLKwxjNGhTEFNRTMuOTkuNVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//uSZK4I82lpRpv7KaIAAA0gAAABDb2fHU/spogAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVAAEJuMlgAGgA5gFgB0YDWBCmBvAlRhJYkaeVloxmNChL5gxAHkbBT5mU3mVisZLNZ0s7o4P3KJfgzos/RkIVitMocrDVvYS5kRLNQWi50n7T/62101Z/r/9f//r//9P///3/9i7YX5mYwoWUFAs2sZ3bEIwBowAcBHMA4AkjAhwUcwXwTuOFZ4pDERAogwQcDzNHIoyoTDKozMoD47IRED5YLghzigmlthpEKRrHeInixd1QeMHkZ6M5wQ1yNS1Do337vZPb//////v/////7f//Vts1B2UY7xNtZtZyKkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmSwCfN8Z8bT/BGwAAANIAAAAQ3Vkx1P8KaIAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoAAY5I0QADADAC0ZAWDACQKcwDoFqMC/FbTRovoM49scyUP4xjH8xPDcxcBYxdBU2PBUmAiD5zt5Dot9wFzGKrTspXUKpbudiilkKypcx0vdaIhXs7f7+//r//////////5v0/9f2R8KshavQrQFFqxGZLbEAAYREhgYhmAT4YKipgG4h0Y5Jh4GBhhERABbmAOAJRgFQAQTAP4cA+g4JlULnXzh2+oIuy3CNC9mNCClDZz4szzUQ2JSVKnhos5IHuQf1MWX6v/0///K9vq79gsBIhvVVMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+5JkqwjzgmpHU/0RQgAADSAAAAEMhHkhrnxDQAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQABni0aBAMAiALzAIwEwwC4CLMBfBKjBBhIU2EPRPPApHMhS6BgdjQdGIAHmI4QGpIUJwy4TVAaZtQxLpUG70uvOigCHM9u4FFDxFQZMs7z3q7f/7f//lv/YsaOc00OaQfhcQm7EQADAMwDYwD4BNMBbAhDAsASEwc0RgOiEy1jFIQiwwQoCpMihgwIHzG40MgE854WURoyGIyy5efZp9ZhEFrZAMEyjLnaFOPMzddkrVNTf/r/////9v/////l///b46svgPuCBsBbTCpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uQZKeI8xQfR9P9ETAAAA0gAAABDTWDHU/wRogAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgABDUjRAANANzVUI4JtP76DCiA58+BeqHMcoBwzBjQG4wIgAKAACMYA0AsmAXgPBggoEIj7LqWvknpoU8Ner84qUJ9DsMJKPZinNEjvbYr1z2tX//pX+v///T//////p+n/uvxBXR8w7QqoOHoVopW5GjALQBwwEgAZMB9AJDA8AFMwm8F+PXaSXDG5QJ4WDDTlz0x9TJFYwJ1Ngf2VTIkOs/XUZYCdXdhFVAS6ElGkSWZXNGudWR1y1e2qr6/T3n//////+3//v/6///R0fqfzkM8RMzJX1JJVTEFNRTMuOTkuNVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//uSZK2N84FrRtN/KNIAAA0gAAABDSGbHG/spogAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQAASTjQAAMAoACx4CiMCMACDBFwEcwtAFIP3XPajH8ALgwc8BpPEcjRnAyNpMGiDSpRn8QExKdnaTiSoE+5dXOL1VxIaHhCV1qxYUqTrRPMnqdu/////////7f1/y/+36+q+ifl7lapTOQ21RrDhGdrRAAKAB4wDYAUMBrASzA3ALowkkLxPKCh/zGewYkwXoCiOtezS2EzZUMpazzXVTSN0lDYZ+fq0Zv0QXYEese4qMDrGe6q4mrbpbe1vXyL6fr//6f/J1M//////v+Ty07t89UvfhowAWNEE0xBTUUzLjk5LjVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7kmSuCPNya8bT+ymgAAANIAAAAQ2ZmR1P7KbIAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVATfIAAgAQMAzASzAcgKQwPcFrMKEFeD3R/uwxx4LeMG1BITbC6M7HwzWYzLh4PKIIOA8MW5jM7ZG6rGvdlxjoLmo8pjNVHR0iikLzaORu2vr/////3b8vVP/////X+f++o+XUW8xGEx6AqVM5UYVGMClHIySAFAB8wAIBIMAtAlzAeAVAwVsUNN6Y6NT+2mzPA9jIUiTFMRzFgLDFUNTXMPR4AIvLKPAi6PyPMKWWlKAOvGIzPXmHtsQHQylayGW69F/oyf//+X/9f/////v+n6vnf4l8/tqsDa7xpdMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+5JkrwjzhWrGM/wpsgAADSAAAAENjYUdT/RFCAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQAAA0pbrFEQYAOAOCAA/CgD0YAmCJmA0CGRlR+FEapREYrmCYfC0YZA8YggKAiANLgAVrorctnla8vEmURHujHGO4pEhisZWFxVmddcFtVHT1fIPT0c73f7////K/Z+FOdKmhQkGDYVBJkujaABgCgBOYAWAhGAEAPZgDYIkYDEIZmVD4UJpxD5gqWhgiJJhOAYsPICIIBS8ljPDGo3NwZIp/M52UKCZXcogwlmIpthRAwgoKTI5aiSzQXlEQw3+/6v//89/ZUpBoQ7DUqVjggqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZKkI80AnSGv9KUAAAA0gAAABDQR7Ia/0RMAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqAAJNyxoEAwCMAuMAkASzANQIQwGoEjMElEaja1sxo9ZjYycLMwDDQFBqYegoYhBSagBik1IZFvrJ14N0GfLwdQS0W4GDGOiuL4UgVFXqdaNnCRfM2O/7Z+o7///K93W3ebD0sVCJ8GQgZWBabiAABgHwB+YCaAsGA5ASZgaYJ4YRYJgnhC7o5jFQS+YKSBYGXAaYFFRjokmTTIdfOCNMPEXqueOPNHHktbXNPUfnXNUw1DloynwsjGKchvOMv7L7/9P6zfTtmdv/////8t//jx/+pz/IMR/xxhqZywbjKkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmSwCPNTHkfT/RFAAAANIAAAAQ59pxtP8OaAAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqAInESAAYB6AaGArAH5gRIDAYIABqmFOhph8wk2IY6yDKGDOAKpyouYOnmJrRlD6fZEo/QyHrRbzabKROrGiF5GMN2si8bnbT3b/VrP/VH6N3///9On6U////1+v/X+gs3NIQpgmZ0dVRhjOMZLcSMA0AIzAVwBYwJIAbMEXAPDCzgTs/dU91MfwAeTBxwAc7hSMwZAqzgWINPlFgY9N9ylfTrgd3bhHIBtiSogViLTwl12zbMZqV+6z7dWvT////+i/Vv///+n2H/9PYxCqNZ0CPEHM5WmKAyN1MQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+5JkrYnzZGzGu/spoAAADSAAAAENpasa7+xGyAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAAg5bGgAAEAVDQDQYDKAImBnAJRhEIK6d6QgJmMGgXJgrwC0cmrmZp5iSUYOwmotrwTYUJkv164CI2TEGhw60NERFDvc94fEbCx0uh6Vnkqv6V/r/6///p7v1WoGUi8GHoOG0uRkAABwBQYCSAVmBIAOhgkIIiYXUIXH/04NBkHQRwYPiB2m6lcZwQhlU4mRkgcsTiV7+RuUZqTpajwZUPdgoEWBtMdXFALtdklgDjrVzffd6f/+N/T+3r//lb/////2/P/59AYUqTD0feAMpoJSBSCbCTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZKuI8xweR9P7KaAAAA0gAAABDkWvGO/wRsgAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgACHckQQAFQAswBoA4MBNAgTAqgSQwdMRpOiIyzzFNQkkwTgDeNOo0ymVzKBCMilE5+V0IIuEBZWb/7f1T6Kz72rXQoZetrxL5m9mzZP1Nznt1Wf00f/11O///2I5dhB5KVSWFw+oOvOjibushAABIA0FQEMwB4CEMBbBKzBDhIg2EfRMPGpSMwTZMah0MSA2MTQhMSAkNSgqSDkwWGJ3v7q/7zpHGmoSRLxABGotndN7qu/yurV/62Zj+J5xYgZiP8If/+d/+j/XvuZYW1WhEPDw6SK0xBTUUzLjk5LjVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7kmSrCPNOH0dT/DGgAAANIAAAAQ1klx9P9MTAAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAAl5LWQADADACcGgJhKBImADAnxgJomqZBhvfmhc6mJhtGIozmHoQmJwAAonwVYaMEnvWrye6Y3EmShGjTkEdJnFDuQ6eoMpkFFBM6wzu1eT9X//mf9v+ynnUsACxjlRQ+eBESsGeTZmALgEhgBwCGYAmA9GAUAiJgQIhMZsZgWGz8MGGBYmAwhA4RAgdjD4BzSwCU8pALlqZe22KlVUpnMJbnGwco9mUqMVQBdLTr//fv/1v///1/7t/m0//0//+3vp6M26KyO3qbRJjiCpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkqAnzLCBH0/0pQAAADSAAAAENFashT/SkwAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoAARnJCQADALgDswDMBWMBIAlzAiQUYwXQTpOFP4pzELgnUwM8DIMNDcwyBjIQjMmjo7OQkIZ4OmZ/TjFUfe7YgaFzO7xQ49Zt0QSL2T9f68i/dNv/7f////q//+zf9P//7ex5p6lY5OhTCi8kBoSQAAAyCPjJxVM7oo3BKTCRRIA8rDRqMZzCOjBXAKMDNIEAcNQMZkgDIxpA6QdwtOJ0vMpkuX900Za284k5hfRSN0j+zXsUVsDBfM/T//LALX6v+cwQ+3+oyfeXKxcmeDYFBo2TCYYqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZKuI82hqR1P8KaIAAA0gAAABDQh7G05+okAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgABSUjRAAMAwAJzASQC4wHYBJMDjAnjCUgpE85d6DMaWBNzBcQDY4IaMIRDBFExtsOzeFhZoBc7tyPKDqdfmScDKaqFM456p4aymcyct/7fT3XSf//Vv1////9Po3/p+//VbV2VaJTo7kuHuQQoDOxgAAGAUgCxgIwAWYD6ABGB6ACZhPIEYe0UQGGN8gDRgyAA8dClmVq5gCwMOpjz+z6SjC2fnPRHhzalhMVcCLoxQ6Y/PpEyk7//7//59P//9f/////p/9/y/1RJCU1YjRLZXPdUGR5xtUxBTUUzLjk5LjVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7kmSsiPNta8dT+xGgAAANIAAAAQ05qR1P7KaIAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQACCbkZAAAwBiEAP5gOwBIYHaA7mE1A9h6o61cY2sCFGDHgPJ1jgaEwGSrJiTkcA9MPlAdhM91/F9DPGzXXSvyev9UcMummlZKEAkxJVjCAwuoBPv9D93527///0c/0AbFGDmjVgsWTcbLOD/IAAYAnMBCANDAjQIEwRgEqMLVEjT+ENGsx/sJpMHiA+jc6zM3oMy0cDJqLOkpcuhD4AHIy/u9wiXsqB7iUoYsSCNoXdDoybl6K1v//tRHT///x//P//////+T+R5z+k7slDWId0a6zsMZMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+5Jkq4jzWB9HU/tBoAAADSAAAAENYa8Yz/BGgAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAAg05EQACUAcMAbASTAVgJgwL0FdMH2FPjrofFAxZwK2MFZBCzWCgMzGIzKSzKxaO/GAaBcOSOMS907aiKEC2fuVzMPPkYxhikqdDuYiDkYEg7ml2VyOg+799Ml85///r6bsifUAAA8BE4DB4YD4RMkkSAAMAAAHRQBEMAXAiTATgTIwO8SfNWM1UTsGXTKg2jGMczEUNTE4GjEkHTVEIUmJ+WX7wQ/fiEBBrGd0o6FKUtnY1K0Q6CyMiz26m/dOT6dXb///T/+n/////3/T+u5acLy1odj42sAYJTEFNRTMuOTkuNVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//uSZK6I83cfxtP8KbAAAA0gAAABDaWfH6/0RQgAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAAAImWaNAAGAGgDwEAQxGA+CEEVMAQEPjDHcRYxeiYwnL8wuFIwwBQIIMaIQWmhRGcFgO8/z4CPEjIU6smGndtgioZ/OiVBpSnaLdvgXs/7//9H/t8oI7g7GAMVFLxU7HEm5G2AAYA8AXmAMgJxgDwEeYCGCbGBgCWJpTOxqciS+YqmQCRHDhPMRADMSQSNVwWSZhUhy0hendlFWd6K4hwdntIivssqCk9vay3zE7IR211KI7mfyX+z/+rs86HUzOUMJmigkexUxBTUUzLjk5LjVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7kmSkiPMJHkhr/RkwAAANIAAAAQzMwR9P9EUAAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQAACcbZAAMdkQyEZzMKqNXWkwc8VqOji+jjFKQrgwQYDbAxmNgMNBcDJowAywUQPHFkEQGHCk1ra7qOpTW1aSLrWgSjU1adl1PqSMSINCyEA8Ej0FGp0Pkrrk/FPrMf//K9v4YcBHQsLFRAOUDAjW8BlGiAADASgE0wF8BgMCWAmTBDwT4wrgTZPwB4NTHqgmEwacCqJoqMkYxoXTI6COxpISAMPB06kXkd6mODPq8wTVAm1TOgzuz0xjOj5U6p9/c3v////+3/Vv/////p/f/vUWGuJkO3O+UKnKxBiucQKQVMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+5JksYjzgB5G05+okAAADSAAAAEOMa8ZT/CmiAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAABm40QADAOQCwwFYAvMCNASDBDAJ8wrUKQPvQefDHpwS4wbAAtOhMTG1UAsBi0GdlHqmjIYZGfnsoZVEIdnQrgzqEO8jFVmqVVpBxz6I5qXe71fr3vX39P////l//7P//+v4j/y0cth5XKqPnK7lqCYkcVDHEzAMABcwFUAIEgSUaCMzC1AAA/jkALMf8AKDBzwEE75iM6ajC2sUiixLKdzQNHt0/DhiEO6WPA2VqkDIMFWnQI3dtmqcq5Fv/VPp9On///9P/////t9X/v4PlTKzIdLgmc0xhWAxTEFNRTMuOTkuNVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//uSZK6J86RpxtP7EaIAAA0gAAABDOmnGu/sRogAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAA2nbGgAA4AeAwDAYDGATmBkAOxhCoP+dw0u4mLyghZgrADocqxmcqZkSUYqvnCs7DJXMQThfY/XCWToEcwhGekqjHa3nuhtXad0yapkUZ+WDP/////093OKVe1aGEhcCpPBN4OE1YCAAwCMAhMBQAVjArQNMwdINEOibmADFNAbAwTMCnOOcjRE4zk/MsUD5lhXcYp5jM7du1AaPbUIRByXS4o7O6tRYAo4wSsXImZUaWeX71f9f+v//r7UZsd2KEro5QTQ0ckxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmSkivMtK0fT+xGwAAANIAAAAQxAfR8v7EbAAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgACqVbSAAHABcwA4BCMA9AizAlATowZsTFOPo25TEmQnUwRgDuNJo0yuUTKg2MokM62S0LIvLI3SEF1NMixlxJvoIK4KNeyRxQmukHmucdRaxLmwAHaXVf9X/7P/q7O2+TBwYsssRi+ppI53LIgCDAAQBglAOTACAHgwDUENMCsEHDQVb5I4QhgyBL8xOF4w4CQxBA8w+BA0oBJOOQRed6eu3dkEt+pZrMx44Uy1BoSn1HTbDSq7/W4wnZ//9//8r2+q6cY84CYeGOdICtMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+5JkpwjzUBlHU/wpsAAADSAAAAEMXGUhT/RFAAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQACTckaAAMASAKzABwEwCASIXBQDABBNcw4PfrMSp3MDDaMMRfMNwVFiYIiaHrCQJUc5TaQvfg1m7dcLQ52iCslDHzilaYAJJgPMeKuq0ovZ/r/9v/+zLfGNoCd7DRFQqCKBQFpbGiADD4wMPE0xSijJ0xMDlEnjVhtVYwqUJQMBuAwwSIALEQDIYEAyQHQOnCENKIifRznW3eaqvQsYpsUlMupk1uq3qMUKIjiM0khfP+DTmTDbNLvzmv//RzuvZOnrzEqK73KTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZKSI8xoex9P9EUAAAA0gAAABDIR5H05+okAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqAAKeWxkAAxMLzF5CMjHc0XBDBeA/84Zm6BMQ8B/zA1wJgDFgZAwKDAMZCUDHY6A5CQgwqbF3cxdqtRy59LvtWWUEkaMwO6lbVmSDSbgcHzp4/Z53/T/v1/8/5bv6bqzEgLOGBBLDLTgkuNoAAGPx0ZUJZoM8G8oGYTqH6Hs8XBRjeoPcYL8BAhAIGFwEMwCUBSMA6AdTBHgIFH6Mh5kR2oH+7FFEM2VhAyBBWldBpTbJUyiNrzqXLo8lj+v/M///3//6X/bf//v/1/b+rI8tcXNOsynuLvBZZkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmStCPM/HkfTn6iQAAANIAAAAQ4lmRtOfKMIAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoAASlLCAADALgCMwEkAgMB6ALzA6wGwwmYHhPVDWuTGzgNMwYEAIOQLjGEwRKphbgb++LFlQCvTycbibX5BBovmRDDBF2pdJwqXVWP7e3//7//+/6f//P////6fp/W31Mlk6oV6NOrSC1B6pjkKAAMAlADAgCJEgPcwPIAUMJ3Anz2ih/sxv0BlMGSASDqVszNdMQWgq6mLwLcLocGkZ+vuwhXK7mZxRb6jSj0lk2CdlXX7eyehWb3fR2/+3////p//9//P9Gb+3zUOujkoLkuqWF1SqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkqwjzV2zHU/spoAAADSAAAAENLacc7+ymgAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoAAgU5EAABIAxMBBAEzAhgEgwQUC/MKuDAj6x4rox44GUMHBArzyIw1RyM9ZTKIA86MUHhyVxy2dvfBVDpabiY5NmQMp0V5iPAEUjq37W2ZOz/+mv7f1////f//7f+T8/+l37wn1NUcIJCeFEPjBWkcIJABzALgDgwG0CDMDeBLjCTxIs8rTRjMaHCXzBigO42CnTMZtMrFQySazpJ1QoldJT4EOkptEJGC49EMWJlYCqr8Vj9Uq6B9Cokq/VOdPt////6f///l//+f//5H/vKneK9BYorx5wDdO91TEFNRTMuOTkuNVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//uSZK6J83BmxtP7EbIAAA0gAAABDa2bG0/wpsgAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAAARqS2skADIAcAQC8wCQBoMBhA9TBHg8Q2a2umPRnsMxSzMZBkMPA0MPQhMOAqNDAsWfOQ/FKdxnPX4DLAWyuWDRWo7nHbOGefDAAQePlkU3RB+t3+a/6NH9X/qriomlsDFLItct5JOSNEAGADAEYyAjGADgR5gFwJ4YFGJgme7bb5vvNpj8bxiuNpiCFJicBhiaB5qyCJMAFHOS7ArPP++09fhOQCpPVxmOGZTrDmfDMT7nA3aTFeHXi/9H6+n/2/7O1JTccWeGBlKSJ0DiqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmSpCPM7Hshr/RlAAAANIAAAAQ0giR9P9GUAAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgAAmcjJAAMAhANDAEAGEwAsCoMAUBcTATxYIyU79+NB7MID3MLhsMPgQKxZBxcgLLSYCoSLLBkUrl5Hll2VkHhrMjIOnJW6CbraZP19+237r/1/2////f//6f//X//4uvBJXARWWFhWW0mqQABgEABeYBGAmGAXARJgLoJQYIQJBmwh6Jp4FIpkSXAUDsaD4w+A8xJCA1LCpIGNBq/clTN/6zrR+u7yVumvjwy0BFjNQb+8JE1T3x1Y167ygp/Qn+Hv//q7/T3ZqoFSdDJMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkpwjzP2PHU/0RMgAADSAAAAEMnHkfT/TEwAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoAAIm5EQADANQDgwDwBPMBbAhDArgSEwcsRgOiCy1DFIQiwwQwCnMhhYwIHTGo0MhE058V0apaKbDFz9cZqPVTNBVlgjoR50oDcKH70uWQZKItRuu/lv8d/9X193odvsKxpA6aBcwF+TATAEMwGMBQMCaAgzBIQRAwuQQrP/lwcTILAgcwcsCANQA4CFYxEZzHKOOYpovjDQdc9unbF/tPhO98YMvTJYSj9bL1d/pqhnX/If//3//+Un///p/9P39W+qcgprHmxZwmjYukeXpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uQZKiJ8zEeR1P8EaAAAA0gAAABDQ2XGM/wpogAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqAAAJ1tAAAwDcAmMBUAITAkQCwwRQBjMLLBtD9XFOwx90C4KA4E69FMpYyRiMGhzcpVeUyOEVv72MxwxDdCYinmhAWorOaON7XcfNeqmTfs2rIv////u3z+v/u3///3/8/9vuzzzHUvquqaD5qKcptnc8rgtOMkAAwCgALIgJowIwAIMEXASTC0AUY/dc9oMfuAujBzQGc8ZyNIcjIWswSINMlGBxChmtuz6FZkWHn7wYphboR2OQFaSinMEUy9P9UvP0Xf8lfbX/27f7L////b/5vS/OQ2Vkkdqd9TFQIsDadLNuAAGTvaADgB4wFAAmMCBAaTA5AIowvsPRPlgm0zHcwd8wW4AyOQrMzOhzHxqMXoE3WiS/kCHiAx2ERJCM5tl24KBQECRRVgFBJqbEViQjAOaPawusdAiaBkuANuKOJAKHdSM5xsjFaMnlC8i9joEAoPZPro0bc6RtChhjlDEyMT/5//uSZLKI85tqxtP7OaIAAA0gAAABDg2hGu/sRsgAADSAAAAEa7bbZHq78X1A3L1UE2/aOa+/rypVtNGjRt/1BAox6y0nerTRwmCZ9iDFBQwRGG4WjaEgrBiBGcAw7VCRAHwTlCUF20EUqAA7ttbbImSeOeRo/dhwTMBBQFCQ2eyDAILBwbL2LOMWCoEBsz2RTERoGk6aLSZisoGfigYTID2hx6pm0RyFgFcg7eaJkAkJrjQqfBUcxyADVPcypAFsMsQ6pvaOkBWAasaMZjIggp4qUrCABJyhB0ECTBcNiRdNMhSCCdiSKC21JpeMGSIaqvdORtVTt2VwzBvVTukyxkbnLsjLJHTe9nEMtfeB7GVu6196Hka3FmcQTL5XPRi7L5RZjdaXzFFG60sob8otSyC5G+lLG6CWQxSv/QQ5E5dDm5ZN0cMTL9yi9DfxEYQHxmQzPf8IhHP6fy9ts954i/5/69UATJ3Y41ENSqTWmo7cyOWpwLQG4lJtBeAB08ETPiAI4OhBIyXZa1O5iqXzT0xXQYMyFzFhoAZc8MHO1K3doP/7kmT/gPYyaUbL/EmgAAANIAAAAR89I1muaw64AAA0gAAABJFDSYBFDgCQChKwVAKLROTAJ5E5ZGEnw2EnUdcnZTyyU4cyQKVYTeNqSrbi0k3dhTG9Y0+xJtFuoqi/5XdfY3pv4wv+WEtw5Fjkc7EXle2u9N4TZDxCUMLErhJgkSynkK3WhWJ37pyerVvQGSwEh29MZWCYRqHScQRFJuWSk67v1TA2LRyfXdZEERVPNVou+kUiJ7X2tjFDRYVIkWpkKEKhprUMcWJrkIgSbVjBE+Uv0xS600RMi1WMCImq/IiAMGpdMhDKHI0stGOSpZEKpetVjG0LMiElqaGDWWys+OUsFnIt6rpbmZH+UiFhCKSWpuCwJE1Us0mQilCKUWoAIALXFzLBOLoEQCk4yesusimzZCCIZYRSki8VmoliYqGdu4qE0tFJUSkTUkT1c6wWBIVPQ0sQnA01CesGTf7zTZi7VkOgJI1tTkST1b/YuXEoRo505SA2PtgEo7jWzruNW3yqDUm1xpDJvtf0JJLPSlEkxJJ71UwJKf2qEISMxUv/+5Jk3g70dinNi3kyYgAADSAAAAEVfbUMB7EtwAAANIAAAARLnmVOeuJQgjq72rVpJJr2HT1a5ZdEdGUdcbMUJ21rNMmPEo9aetq11qzNDoSlZ6RJE1fvXslMLBkn0glpj2rYCeVx4KxiOYsUaZW2RLjKrNQGJ9iGiSUkJaIdG5FIxaYsxFK6bVFS5/FyRyrZ1KXcfyxCowwVAJCOS0E2wqk1mMJjgnCUZIKUeRxKiQ1PCsP2HSMRyW4JIkmpjQLhWegySlkxJIQmGCoGxOXxnDYal4cixAfGKweh/GSsRQGkwplAVFwEVxsfjiXQBQ9JoPBScGCXT5ecnic1L1VNCsIwht6nMFDU5HgMDw1BxE6duSnVq6jx3B49ZGZBKc5ULUOIipVLdU31Uoy2niaKzh4Ro+qVTEFNRTMuOTkuNVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVJhVnqs2qoKjgafGKFChFKKUkQqaluEJLnksia6rv//uSZP+L9ZFquimJY3IAAA0gAAABHAm0vAex/QAAADSAAAAEZb96yaNb2nLrTZl/Ww6PrmLZjFbGjIyVNLtWretOtPLl3yySVJyerYlz1rrUp7XrbASicmPmaXJJNodOtLj662pyJL5y7AZHzS6+mIknrTzQlGYAwVPeyewGT/1TCUqZiaeZWuwLly560kQUjMsSJCgrnWCozPY5J4SLUChM4cSJAwVLORIo/TaCFMtyX/+T///zVlBAwcecsB1D/WUHHL+Wo5GrBQQIHLFDBUJCbpeatMoSE3T+mdzL9/Wrm7m5WzLSVLBDlWjkvF0aSAV1jcCUvFMppF6y9NyGHL0+tmWoG6fNVyVMhN0v2tMpk0LF6a0lTJkNh9zzITZiqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmTOCPU6bK6JLDXwAAANIAAAAQ5lmILADZOgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kGRBD/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kGRBD/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uQZEEP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kGRBD/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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BKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uQZEEP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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AAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5BkQQ/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kGRBD/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq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qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkxBTUUzLjk5LjWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7kmRAj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy45OS41qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+5JkQI/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTEFNRTMuOTkuNaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq//uSZECP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqg==`;function fa(){let e=ua(da),{getDialogOpponentId:t,startCall:n,activeCall:r,activeCallAcceptData:i,activeCallRejectData:a}=gr(),o=t();return(0,m.useEffect)(()=>{(!r||i||a)&&e.stop()},[r,i,a,e]),{startVideoCall:()=>{typeof o==`number`&&(n(o,tn.CallType.VIDEO),e.play(!0))},startAudioCall:()=>{typeof o==`number`&&(n(o,tn.CallType.AUDIO),e.play(!0))}}}var pa=Dt(e=>({startCallDate:null,setStartCallDate:()=>e({startCallDate:Date.now()}),resetStartCallDate:()=>e({startCallDate:null})}));function ma(){let{sendMessage:e,sendMessageByUserId:t,incomingCall:n,activeCall:r,activeCallAcceptData:i,activeCallStopData:a,activeCallNotAnswerData:o,resetSessionData:s}=gr(),[c,l,u]=pa($t(e=>[e.startCallDate,e.setStartCallDate,e.resetStartCallDate])),d=(n,r,i)=>{let a={callHistory:!0,callType:i,duration:c?Math.floor((Date.now()-c)/1e3):0};r?t(n,r,a):e(n,void 0,a),u()},f=()=>{l()},p=e=>{d(`reject`,e,n?.callType)},h=e=>{d(c?`hungUp`:`cancel`,e,r?.callType)},g=e=>{d(`notAnswer`,e,r?.callType)};return(0,m.useEffect)(()=>{i&&(l(),s(Vn.ON_ACCEPT))},[i]),(0,m.useEffect)(()=>{a&&(u(),s(Vn.ON_STOP))},[a]),(0,m.useEffect)(()=>{o&&(g(o?.userID),s(Vn.ON_NOT_ANSWER))},[o]),{sendAcceptCall:f,sendRejectCall:p,sendHungUpCall:h,sendNotAnswerCall:g}}var ha=()=>{let{isConnected:e,dialogs:t,selectedDialog:n,getDialogOpponentId:r,getLastActivity:i,subscribeToLastActivity:a,unsubscribeFromLastActivity:o}=gr(),s=Gt(e=>e.opened),c=Si(e=>e.enableLastSeen),l=(0,m.useRef)(void 0),u=(0,m.useRef)({}),d=(0,m.useRef)(0),f=async()=>{if(Date.now()-d.current<3e4)return;let n=new Set,a=[...t].sort((e,t)=>new Date(t.updated_at??0).getTime()-new Date(e.updated_at??0).getTime());for(let e=0;e<a.length;e++){let t=r(a[e]);if(typeof t==`number`&&(n.add(t),n.size>=10))break}let o=async()=>{await Promise.all([...n].map(e=>i(e,!1))),d.current=Date.now()};e?await o():u.current.fetchLastActivities=o},p=()=>{let t=r();if(!t)return;let n=()=>{a(t),l.current=t};e?i(t,!0).finally(()=>n()):u.current.subscribeToUserLastActivity=n},h=()=>{let t=l.current;if(!t)return;let n=()=>{o(t),l.current=void 0};e?n():u.current.unsubscribeFromUserLastActivity=n};(0,m.useEffect)(()=>{c&&s&&f()},[c,s]),(0,m.useEffect)(()=>{c&&(h(),n&&p())},[c,n]),(0,m.useEffect)(()=>{c&&e&&(u.current.unsubscribeFromUserLastActivity?.(),u.current.subscribeToUserLastActivity?.(),u.current.fetchLastActivities?.(),u.current={})},[c,e])},ga=`data:audio/mpeg;base64,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VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVEAwAEAqqNia2BXsibLiPoqT/RjS0OaodnSN4T4c5YDWRqiTp/JFfYIciaSZYQg6CgrJDbmuhITiNzTKIqcOL1dKrEIiGhtAuxCmKpCIRXWP01pDQkJfTbLSsQSAkX02zMEJUPFTvxGQgkIcz9SubieZYjOk7jzq4xHIUikeDtYv/+rJsyyBAD/ZqcbLR6WUyAAANIAAAAQAAAaQAAAAgAAA0gAAABNy8CUupF7kffNTlCXolR6ZFUpJF8X97pkVSqUk7DcCUrEEpnC9y9P6dyZmZ21q2rap0SQ6FRDJB+ePuXgTN9/fW27m5WzLSHCwGVVViVUxBTUUzLjk5LjVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=`;function _a(){let[e,t,n,r,i,a,o]=Oi($t(e=>[e.muted,e.showNotifications,e.serviceWorkerPath,e.webPushVapidPublicKey,e.webPushNotifications,e.setShowNotifications,e.setWebPushNotifications])),s=Si(e=>e.enableUserStatuses),[c,l]=$i($t(e=>[e.userStatus,e.isNotifications])),u=s&&(c===Nr.BUSY||c===Nr.AWAY),d=e||u,{users:f,dialogs:p,fetchDialogs:h}=gr(),g=ua(ga),_=async e=>p.find(({_id:t})=>t===e)??(await h({_id:e}))?.[0],v=async(e=``,t=``,r=`/logo.png`)=>{if(Notification.permission===`granted`){let i=n?await qi(n):null;return i?i.showNotification(e,{body:t,icon:r}):new Notification(e,{body:t,icon:r})}else console.warn(`Notifications are disabled`)},y=async(e=``,n=``,r=`/logo.png`)=>{if(!d&&(g.play(),t&&l))return v(e,n,r)};return(0,m.useEffect)(()=>{let e=n&&r&&i;!d&&(t||e)&&Gi().then(t=>{t&&e?Ki(n).then(o):(a(!1),o(!1))})},[d,t,n,r,i,a,o]),{showNotification:v,notifyWithSound:y,notifyOnMessage:async(e,{body:t,dialog_id:n})=>{if(typeof n==`string`&&typeof t==`string`){let r=await _(n),i=f[e],a=i?.full_name||i?.login||`Unknown`,o=r?.type===3,s=o?r?.name||a:`${a} in ${r?.name}`,c=o&&i?.avatar||r?.photo||void 0;return y(s,t,c)}},playAudio:g.play}}function va(){let[e,t]=(0,m.useState)(document.hasFocus());return(0,m.useEffect)(()=>{let e=()=>t(!0),n=()=>t(!1);return window.addEventListener(`focus`,e),window.addEventListener(`blur`,n),()=>{window.removeEventListener(`focus`,e),window.removeEventListener(`blur`,n)}},[]),{isFocused:e,isBlurred:!e}}function ya(e,t){let n=null,r=function(...r){n!==null&&clearTimeout(n),n=setTimeout(()=>{e.apply(this,r)},t)};return r.cancel=()=>{n!==null&&clearTimeout(n)},r}var ba=(e={})=>{let{width:t=640,timeout:n=200}=e,[r,i]=(0,m.useState)(window.innerWidth>=640);return(0,m.useEffect)(()=>{let e=ya(()=>{i(e=>{let n=window.innerWidth>=t;return n===e?e:n})},n);return window.addEventListener(`resize`,e),e(),()=>{window.removeEventListener(`resize`,e),e.cancel()}},[r,t,n]),{isWideScreen:r,isNarrowScreen:!r}};function xa(e,t=0,n=!0,r=`seconds`){let i=(0,m.useRef)(null),a=(0,m.useRef)(e),o=(0,m.useMemo)(()=>{switch(r){case`days`:return 864e5;case`hours`:return 36e5;case`minutes`:return 6e4;case`seconds`:return 1e3;default:return 1}},[r]),s=(0,m.useCallback)((e=!1)=>{i.current&&(clearInterval(i.current),e&&(i.current=null))},[]);(0,m.useEffect)(()=>{a.current=e},[e]),(0,m.useEffect)(()=>(n?(s(),a.current?.(),i.current=setInterval(()=>{a.current?.()},t*o)):s(!0),()=>s(!0)),[s,t,n,o])}function Sa(e,t=!1){let{t:n}=nt(),{users:r,typingStatus:i,getDialogOpponentId:a}=gr();return(0,m.useMemo)(()=>{if(e){let o=i[e._id]??[];if(e.type===tn.DialogType.PRIVATE)return a(e)===o[0]?n(`typing...`):void 0;if(o.length>0){let e=o.map(e=>ci(r[e])).join(),i=o.length>1?n(`areTyping`):n(`isTyping`);return t?`${i}: ${e}`:`${e} ${i}`}}},[e,t,i,r,n,a])}var Ca=async(e=!1)=>{jt(),Pt(),Cr(),Li(),Bi(),Hi(),Wi(),await ta(),e&&(Ut(),qt(),wi(),Ai(),Pi())},wa=l((e=>{var t=typeof globalThis<`u`&&globalThis.React?globalThis.React:require("react"),n=Symbol.for(`react.element`),r=Symbol.for(`react.fragment`),i=Object.prototype.hasOwnProperty,a=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,o={key:!0,ref:!0,__self:!0,__source:!0};function s(e,t,r){var s,c={},l=null,u=null;for(s in r!==void 0&&(l=``+r),t.key!==void 0&&(l=``+t.key),t.ref!==void 0&&(u=t.ref),t)i.call(t,s)&&!o.hasOwnProperty(s)&&(c[s]=t[s]);if(e&&e.defaultProps)for(s in t=e.defaultProps,t)c[s]===void 0&&(c[s]=t[s]);return{$$typeof:n,type:e,key:l,ref:u,props:c,_owner:a.current}}e.Fragment=r,e.jsx=s,e.jsxs=s})),P=l(((e,t)=>{t.exports=wa()}))();function Ta(e,t=[]){let n=[];function r(t,r){let i=m.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=m.useMemo(()=>o,Object.values(o));return(0,P.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o,s={}){let{optional:c=!1}=s,l=o?.[e]?.[a]||i,u=m.useContext(l);if(u)return u;if(r!==void 0)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>m.createContext(e));return function(n){let r=n?.[e]||t;return m.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,Ea(i,...t)]}function Ea(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return m.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function Da(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function Oa(...e){return t=>{let n=!1,r=e.map(e=>{let r=Da(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():Da(e[t],null)}}}}function ka(...e){return m.useCallback(Oa(...e),e)}typeof window<`u`&&window.document&&window.document.createElement;function F(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)}}var Aa=globalThis?.document?m.useLayoutEffect:()=>{},ja=m.useId||(()=>void 0),Ma=0;function Na(e){let[t,n]=m.useState(ja());return Aa(()=>{e||n(e=>e??String(Ma++))},[e]),e||(t?`radix-${t}`:``)}var Pa=m.useInsertionEffect||Aa;function Fa({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=Ia({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=m.useRef(e!==void 0);m.useEffect(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,m.useCallback(t=>{if(s){let n=La(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function Ia({defaultProp:e,onChange:t}){let[n,r]=m.useState(e),i=m.useRef(n),a=m.useRef(t);return Pa(()=>{a.current=t},[t]),m.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function La(e){return typeof e==`function`}function Ra(e){let t=m.forwardRef((t,n)=>{let{children:r,...i}=t,a=null,o=!1,s=[];qa(r)&&typeof Za==`function`&&(r=Za(r._payload)),m.Children.forEach(r,e=>{if(Ga(e)){o=!0;let t=e,n=`child`in t.props?t.props.child:t.props.children;qa(n)&&typeof Za==`function`&&(n=Za(n._payload)),a=Ha(t,n),s.push(a?.props?.children)}else s.push(e)}),a?a=m.cloneElement(a,void 0,s):!o&&m.Children.count(r)===1&&m.isValidElement(r)&&(a=r);let c=a?Wa(a):void 0,l=ka(n,c);if(!a){if(r||r===0)throw Error(o?Xa(e):Ya(e));return r}let u=Ua(i,a.props??{});return a.type!==m.Fragment&&(u.ref=n?l:c),m.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}var za=Ra(`Slot`),Ba=Symbol.for(`radix.slottable`);function Va(e){let t=e=>`child`in e?e.children(e.child):e.children;return t.displayName=`${e}.Slottable`,t.__radixId=Ba,t}var Ha=(e,t)=>{if(`child`in e.props){let t=e.props.child;return m.isValidElement(t)?m.cloneElement(t,void 0,e.props.children(t.props.children)):null}return m.isValidElement(t)?t:null};function Ua(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function Wa(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function Ga(e){return m.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===Ba}var Ka=Symbol.for(`react.lazy`);function qa(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===Ka&&`_payload`in e&&Ja(e._payload)}function Ja(e){return typeof e==`object`&&!!e&&`then`in e}var Ya=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,Xa=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,Za=m.use,Qa=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=Ra(`Primitive.${t}`),r=m.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,P.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function $a(e,t){e&&n.flushSync(()=>e.dispatchEvent(t))}function eo(e){let t=m.useRef(e);return m.useEffect(()=>{t.current=e}),m.useMemo(()=>((...e)=>t.current?.(...e)),[])}var to=`DismissableLayer`,no=`dismissableLayer.update`,ro=`dismissableLayer.pointerDownOutside`,io=`dismissableLayer.focusOutside`,ao,oo=m.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),so=m.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:o,onInteractOutside:s,onDismiss:c,...l}=e,u=m.useContext(oo),[d,f]=m.useState(null),p=d?.ownerDocument??globalThis?.document,[,h]=m.useState({}),g=ka(t,f),_=Array.from(u.layers),[v]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),y=v?_.indexOf(v):-1,b=d?_.indexOf(d):-1,x=u.layersWithOutsidePointerEventsDisabled.size>0,S=b>=y,C=m.useRef(!1),w=po(e=>{a?.(e),s?.(e),e.defaultPrevented||c?.()},{ownerDocument:p,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:C,dismissableSurfaces:u.dismissableSurfaces,shouldHandlePointerDownOutside:m.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...u.branches].some(t=>t.contains(e));return S&&!t},[u.branches,S])}),T=mo(e=>{if(r&&C.current)return;let t=e.target;[...u.branches].some(e=>e.contains(t))||(o?.(e),s?.(e),e.defaultPrevented||c?.())},p),E=d?b===_.length-1:!1,D=eo(e=>{e.key===`Escape`&&(i?.(e),!e.defaultPrevented&&c&&(e.preventDefault(),c()))});return m.useEffect(()=>{if(E)return p.addEventListener(`keydown`,D,{capture:!0}),()=>p.removeEventListener(`keydown`,D,{capture:!0})},[p,E,D]),m.useEffect(()=>{if(d)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(ao=p.body.style.pointerEvents,p.body.style.pointerEvents=`none`),u.layersWithOutsidePointerEventsDisabled.add(d)),u.layers.add(d),ho(),()=>{n&&(u.layersWithOutsidePointerEventsDisabled.delete(d),u.layersWithOutsidePointerEventsDisabled.size===0&&(p.body.style.pointerEvents=ao))}},[d,p,n,u]),m.useEffect(()=>()=>{d&&(u.layers.delete(d),u.layersWithOutsidePointerEventsDisabled.delete(d),ho())},[d,u]),m.useEffect(()=>{let e=()=>h({});return document.addEventListener(no,e),()=>document.removeEventListener(no,e)},[]),(0,P.jsx)(Qa.div,{...l,ref:g,style:{pointerEvents:x?S?`auto`:`none`:void 0,...e.style},onFocusCapture:F(e.onFocusCapture,T.onFocusCapture),onBlurCapture:F(e.onBlurCapture,T.onBlurCapture),onPointerDownCapture:F(e.onPointerDownCapture,w.onPointerDownCapture)})});so.displayName=to;var co=`DismissableLayerBranch`,lo=m.forwardRef((e,t)=>{let n=m.useContext(oo),r=m.useRef(null),i=ka(t,r);return m.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,P.jsx)(Qa.div,{...e,ref:i})});lo.displayName=co;function uo(){let e=m.useContext(oo),[t,n]=m.useState(null);return m.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}var fo=()=>!0;function po(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a,shouldHandlePointerDownOutside:o=fo}=t,s=eo(e),c=m.useRef(!1),l=m.useRef(!1),u=m.useRef(new Map),d=m.useRef(()=>{});return m.useEffect(()=>{function e(){l.current=!1,i.current=!1,u.current.clear()}function t(){return Array.from(u.current.values()).some(Boolean)}function f(e){if(!l.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{l.current&&d.current()},0)}function p(e){l.current&&u.current.set(e.type,!1)}let m=a=>{if(a.target&&!c.current){let f=function(){n.removeEventListener(`click`,d.current);let r=t();e(),r||go(ro,s,p,{discrete:!0})};if(!o(a.target)){n.removeEventListener(`click`,d.current),e(),c.current=!1;return}let p={originalEvent:a};l.current=!0,i.current=r&&a.button===0,u.current.clear(),!r||a.button!==0?f():(n.removeEventListener(`click`,d.current),d.current=f,n.addEventListener(`click`,d.current,{once:!0}))}else n.removeEventListener(`click`,d.current),e();c.current=!1},h=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of h)n.addEventListener(e,f,!0),n.addEventListener(e,p);let g=window.setTimeout(()=>{n.addEventListener(`pointerdown`,m)},0);return()=>{window.clearTimeout(g),n.removeEventListener(`pointerdown`,m),n.removeEventListener(`click`,d.current);for(let e of h)n.removeEventListener(e,f,!0),n.removeEventListener(e,p)}},[n,s,r,i,a,o]),{onPointerDownCapture:()=>c.current=!0}}function mo(e,t=globalThis?.document){let n=eo(e),r=m.useRef(!1);return m.useEffect(()=>{let e=e=>{e.target&&!r.current&&go(io,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function ho(){let e=new CustomEvent(no);document.dispatchEvent(e)}function go(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?$a(i,a):i.dispatchEvent(a)}var _o=`focusScope.autoFocusOnMount`,vo=`focusScope.autoFocusOnUnmount`,yo={bubbles:!1,cancelable:!0},bo=`FocusScope`,xo=m.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=m.useState(null),l=eo(i),u=eo(a),d=m.useRef(null),f=ka(t,c),p=m.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;m.useEffect(()=>{if(r){let e=function(e){if(p.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:Oo(d.current,{select:!0})},t=function(e){if(p.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||Oo(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&Oo(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,p.paused]),m.useEffect(()=>{if(s){ko.add(p);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent(_o,yo);s.addEventListener(_o,l),s.dispatchEvent(t),t.defaultPrevented||(So(Mo(wo(s)),{select:!0}),document.activeElement===e&&Oo(s))}return()=>{s.removeEventListener(_o,l),setTimeout(()=>{let t=new CustomEvent(vo,yo);s.addEventListener(vo,u),s.dispatchEvent(t),t.defaultPrevented||Oo(e??document.body,{select:!0}),s.removeEventListener(vo,u),ko.remove(p)},0)}}},[s,l,u,p]);let h=m.useCallback(e=>{if(!n&&!r||p.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=Co(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&Oo(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&Oo(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,p.paused]);return(0,P.jsx)(Qa.div,{tabIndex:-1,...o,ref:f,onKeyDown:h})});xo.displayName=bo;function So(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(Oo(r,{select:t}),document.activeElement!==n)return}function Co(e){let t=wo(e);return[To(t,e),To(t.reverse(),e)]}function wo(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function To(e,t){let n=typeof t.checkVisibility==`function`&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):Eo(r,{upTo:t})))return r}function Eo(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function Do(e){return e instanceof HTMLInputElement&&`select`in e}function Oo(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&Do(e)&&t&&e.select()}}var ko=Ao();function Ao(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=jo(e,t),e.unshift(t)},remove(t){e=jo(e,t),e[0]?.resume()}}}function jo(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Mo(e){return e.filter(e=>e.tagName!==`A`)}var No=`Portal`,Po=m.forwardRef((e,t)=>{let{container:r,...i}=e,[a,o]=m.useState(!1);Aa(()=>o(!0),[]);let s=r||a&&globalThis?.document?.body;return s?n.createPortal((0,P.jsx)(Qa.div,{...i,ref:t}),s):null});Po.displayName=No;function Fo(e,t){return m.useReducer((e,n)=>t[e][n]??e,e)}var Io=e=>{let{present:t,children:n}=e,r=Lo(t),i=typeof n==`function`?n({present:r.isPresent}):m.Children.only(n),a=zo(r.ref,Vo(i));return typeof n==`function`||r.isPresent?m.cloneElement(i,{ref:a}):null};Io.displayName=`Presence`;function Lo(e){let[t,n]=m.useState(),r=m.useRef(null),i=m.useRef(e),a=m.useRef(`none`),o=m.useRef(void 0),[s,c]=Fo(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return m.useEffect(()=>{s===`mounted`?(a.current=o.current??Bo(r.current),o.current=void 0):a.current=`none`},[s]),Aa(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,s=Bo(t);e?(o.current=s,c(`MOUNT`)):s===`none`||t?.display===`none`?c(`UNMOUNT`):c(n&&r!==s?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,c]),Aa(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=a=>{let o=Bo(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(c(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},s=e=>{e.target===t&&(a.current=Bo(r.current))};return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}else c(`ANIMATION_END`)},[t,c]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:m.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,o.current=Bo(t)}else r.current=null;n(e)},[])}}function Ro(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function zo(...e){let t=m.useRef(e);return t.current=e,m.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=Ro(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;e<i.length;e++){let t=i[e];typeof t==`function`?t():Ro(n[e],null)}}},[])}function Bo(e){return e?.animationName||`none`}function Vo(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Ho=0,Uo=null;function Wo(){m.useEffect(()=>{Uo||={start:Go(),end:Go()};let{start:e,end:t}=Uo;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),Ho++,()=>{Ho===1&&(Uo?.start.remove(),Uo?.end.remove(),Uo=null),Ho=Math.max(0,Ho-1)}},[])}function Go(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var Ko=function(){return Ko=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},Ko.apply(this,arguments)};function qo(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function Jo(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var Yo=`right-scroll-bar-position`,Xo=`width-before-scroll-bar`,Zo=`with-scroll-bars-hidden`,Qo=`--removed-body-scroll-bar-size`;function $o(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function es(t,n){var r=(0,e.useState)(function(){return{value:t,callback:n,facade:{get current(){return r.value},set current(e){var t=r.value;t!==e&&(r.value=e,r.callback(e,t))}}}})[0];return r.callback=n,r.facade}var ts=typeof window<`u`?e.useLayoutEffect:e.useEffect,ns=new WeakMap;function rs(e,t){var n=es(t||null,function(t){return e.forEach(function(e){return $o(e,t)})});return ts(function(){var t=ns.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||$o(e,null)}),i.forEach(function(e){r.has(e)||$o(e,a)})}ns.set(n,e)},[e]),n}function is(e){return e}function as(e,t){t===void 0&&(t=is);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function os(e){e===void 0&&(e={});var t=as(null);return t.options=Ko({async:!0,ssr:!1},e),t}var ss=function(t){var n=t.sideCar,r=qo(t,[`sideCar`]);if(!n)throw Error("Sidecar: please provide `sideCar` property to import the right car");var i=n.read();if(!i)throw Error(`Sidecar medium not found`);return e.createElement(i,Ko({},r))};ss.isSideCarExport=!0;function cs(e,t){return e.useMedium(t),ss}var ls=os(),us=function(){},ds=e.forwardRef(function(t,n){var r=e.useRef(null),i=e.useState({onScrollCapture:us,onWheelCapture:us,onTouchMoveCapture:us}),a=i[0],o=i[1],s=t.forwardProps,c=t.children,l=t.className,u=t.removeScrollBar,d=t.enabled,f=t.shards,p=t.sideCar,m=t.noRelative,h=t.noIsolation,g=t.inert,_=t.allowPinchZoom,v=t.as,y=v===void 0?`div`:v,b=t.gapMode,x=qo(t,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),S=p,C=rs([r,n]),w=Ko(Ko({},x),a);return e.createElement(e.Fragment,null,d&&e.createElement(S,{sideCar:ls,removeScrollBar:u,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:o,allowPinchZoom:!!_,lockRef:r,gapMode:b}),s?e.cloneElement(e.Children.only(c),Ko(Ko({},w),{ref:C})):e.createElement(y,Ko({},w,{className:l,ref:C}),c))});ds.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},ds.classNames={fullWidth:Xo,zeroRight:Yo};var fs,ps=function(){if(fs)return fs;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function ms(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=ps();return t&&e.setAttribute(`nonce`,t),e}function hs(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function gs(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var _s=function(){var e=0,t=null;return{add:function(n){e==0&&(t=ms())&&(hs(t,n),gs(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},vs=function(){var t=_s();return function(n,r){e.useEffect(function(){return t.add(n),function(){t.remove()}},[n&&r])}},ys=function(){var e=vs();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},bs={left:0,top:0,right:0,gap:0},xs=function(e){return parseInt(e||``,10)||0},Ss=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[xs(n),xs(r),xs(i)]},Cs=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return bs;var t=Ss(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},ws=ys(),Ts=`data-scroll-locked`,Es=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
  .${Zo} {
   overflow: hidden ${r};
   padding-right: ${s}px ${r};
  }
  body[${Ts}] {
    overflow: hidden ${r};
    overscroll-behavior: contain;
    ${[t&&`position: relative ${r};`,n===`margin`&&`
    padding-left: ${i}px;
    padding-top: ${a}px;
    padding-right: ${o}px;
    margin-left:0;
    margin-top:0;
    margin-right: ${s}px ${r};
    `,n===`padding`&&`padding-right: ${s}px ${r};`].filter(Boolean).join(``)}
  }
  
  .${Yo} {
    right: ${s}px ${r};
  }
  
  .${Xo} {
    margin-right: ${s}px ${r};
  }
  
  .${Yo} .${Yo} {
    right: 0 ${r};
  }
  
  .${Xo} .${Xo} {
    margin-right: 0 ${r};
  }
  
  body[${Ts}] {
    ${Qo}: ${s}px;
  }
`},Ds=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},Os=function(){e.useEffect(function(){return document.body.setAttribute(Ts,(Ds()+1).toString()),function(){var e=Ds()-1;e<=0?document.body.removeAttribute(Ts):document.body.setAttribute(Ts,e.toString())}},[])},ks=function(t){var n=t.noRelative,r=t.noImportant,i=t.gapMode,a=i===void 0?`margin`:i;Os();var o=e.useMemo(function(){return Cs(a)},[a]);return e.createElement(ws,{styles:Es(o,!n,a,r?``:`!important`)})},As=!1;if(typeof window<`u`)try{var js=Object.defineProperty({},"passive",{get:function(){return As=!0,!0}});window.addEventListener(`test`,js,js),window.removeEventListener(`test`,js,js)}catch{As=!1}var Ms=As?{passive:!1}:!1,Ns=function(e){return e.tagName===`TEXTAREA`},Ps=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!Ns(e)&&n[t]===`visible`)},Fs=function(e){return Ps(e,`overflowY`)},Is=function(e){return Ps(e,`overflowX`)},Ls=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),Bs(e,r)){var i=Vs(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Rs=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},zs=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},Bs=function(e,t){return e===`v`?Fs(t):Is(t)},Vs=function(e,t){return e===`v`?Rs(t):zs(t)},Hs=function(e,t){return e===`h`&&t===`rtl`?-1:1},Us=function(e,t,n,r,i){var a=Hs(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=Vs(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&Bs(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},Ws=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Gs=function(e){return[e.deltaX,e.deltaY]},Ks=function(e){return e&&`current`in e?e.current:e},qs=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Js=function(e){return`
  .block-interactivity-${e} {pointer-events: none;}
  .allow-interactivity-${e} {pointer-events: all;}
`},Ys=0,Xs=[];function Zs(t){var n=e.useRef([]),r=e.useRef([0,0]),i=e.useRef(),a=e.useState(Ys++)[0],o=e.useState(ys)[0],s=e.useRef(t);e.useEffect(function(){s.current=t},[t]),e.useEffect(function(){if(t.inert){document.body.classList.add(`block-interactivity-${a}`);var e=Jo([t.lockRef.current],(t.shards||[]).map(Ks),!0).filter(Boolean);return e.forEach(function(e){return e.classList.add(`allow-interactivity-${a}`)}),function(){document.body.classList.remove(`block-interactivity-${a}`),e.forEach(function(e){return e.classList.remove(`allow-interactivity-${a}`)})}}},[t.inert,t.lockRef.current,t.shards]);var c=e.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!s.current.allowPinchZoom;var n=Ws(e),a=r.current,o=`deltaX`in e?e.deltaX:a[0]-n[0],c=`deltaY`in e?e.deltaY:a[1]-n[1],l,u=e.target,d=Math.abs(o)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=Ls(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=Ls(d,u)),!m)return!1;if(!i.current&&`changedTouches`in e&&(o||c)&&(i.current=l),!l)return!0;var h=i.current||l;return Us(h,t,e,h===`h`?o:c,!0)},[]),l=e.useCallback(function(e){var t=e;if(!(!Xs.length||Xs[Xs.length-1]!==o)){var r=`deltaY`in t?Gs(t):Ws(t),i=n.current.filter(function(e){return e.name===t.type&&(e.target===t.target||t.target===e.shadowParent)&&qs(e.delta,r)})[0];if(i&&i.should){t.cancelable&&t.preventDefault();return}if(!i){var a=(s.current.shards||[]).map(Ks).filter(Boolean).filter(function(e){return e.contains(t.target)});(a.length>0?c(t,a[0]):!s.current.noIsolation)&&t.cancelable&&t.preventDefault()}}},[]),u=e.useCallback(function(e,t,r,i){var a={name:e,delta:t,target:r,should:i,shadowParent:Qs(r)};n.current.push(a),setTimeout(function(){n.current=n.current.filter(function(e){return e!==a})},1)},[]),d=e.useCallback(function(e){r.current=Ws(e),i.current=void 0},[]),f=e.useCallback(function(e){u(e.type,Gs(e),e.target,c(e,t.lockRef.current))},[]),p=e.useCallback(function(e){u(e.type,Ws(e),e.target,c(e,t.lockRef.current))},[]);e.useEffect(function(){return Xs.push(o),t.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:p}),document.addEventListener(`wheel`,l,Ms),document.addEventListener(`touchmove`,l,Ms),document.addEventListener(`touchstart`,d,Ms),function(){Xs=Xs.filter(function(e){return e!==o}),document.removeEventListener(`wheel`,l,Ms),document.removeEventListener(`touchmove`,l,Ms),document.removeEventListener(`touchstart`,d,Ms)}},[]);var m=t.removeScrollBar,h=t.inert;return e.createElement(e.Fragment,null,h?e.createElement(o,{styles:Js(a)}):null,m?e.createElement(ks,{noRelative:t.noRelative,gapMode:t.gapMode}):null)}function Qs(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var $s=cs(ls,Zs),ec=e.forwardRef(function(t,n){return e.createElement(ds,Ko({},t,{ref:n,sideCar:$s}))});ec.classNames=ds.classNames;var tc=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},nc=new WeakMap,rc=new WeakMap,ic={},ac=0,oc=function(e){return e&&(e.host||oc(e.parentNode))},sc=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=oc(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},cc=function(e,t,n,r){var i=sc(t,Array.isArray(e)?e:[e]);ic[n]||(ic[n]=new WeakMap);var a=ic[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(nc.get(e)||0)+1,l=(a.get(e)||0)+1;nc.set(e,c),a.set(e,l),o.push(e),c===1&&i&&rc.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),ac++,function(){o.forEach(function(e){var t=nc.get(e)-1,i=a.get(e)-1;nc.set(e,t),a.set(e,i),t||(rc.has(e)||e.removeAttribute(r),rc.delete(e)),i||e.removeAttribute(n)}),ac--,ac||(nc=new WeakMap,nc=new WeakMap,rc=new WeakMap,ic={})}},lc=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||tc(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),cc(r,i,n,`aria-hidden`)):function(){return null}},uc=`Dialog`,[dc,fc]=Ta(uc),[pc,mc]=dc(uc),hc=e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!0}=e,s=m.useRef(null),c=m.useRef(null),[l,u]=Fa({prop:r,defaultProp:i??!1,onChange:a,caller:uc});return(0,P.jsx)(pc,{scope:t,triggerRef:s,contentRef:c,contentId:Na(),titleId:Na(),descriptionId:Na(),open:l,onOpenChange:u,onOpenToggle:m.useCallback(()=>u(e=>!e),[u]),modal:o,children:n})};hc.displayName=uc;var gc=`DialogTrigger`,_c=m.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=mc(gc,n),a=ka(t,i.triggerRef);return(0,P.jsx)(Qa.button,{type:`button`,"aria-haspopup":`dialog`,"aria-expanded":i.open,"aria-controls":i.open?i.contentId:void 0,"data-state":Lc(i.open),...r,ref:a,onClick:F(e.onClick,i.onOpenToggle)})});_c.displayName=gc;var vc=`DialogPortal`,[yc,bc]=dc(vc,{forceMount:void 0}),xc=e=>{let{__scopeDialog:t,forceMount:n,children:r,container:i}=e,a=mc(vc,t);return(0,P.jsx)(yc,{scope:t,forceMount:n,children:m.Children.map(r,e=>(0,P.jsx)(Io,{present:n||a.open,children:(0,P.jsx)(Po,{asChild:!0,container:i,children:e})}))})};xc.displayName=vc;var Sc=`DialogOverlay`,Cc=m.forwardRef((e,t)=>{let n=bc(Sc,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=mc(Sc,e.__scopeDialog);return a.modal?(0,P.jsx)(Io,{present:r||a.open,children:(0,P.jsx)(Tc,{...i,ref:t})}):null});Cc.displayName=Sc;var wc=Ra(`DialogOverlay.RemoveScroll`),Tc=m.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=mc(Sc,n),a=ka(t,uo());return(0,P.jsx)(ec,{as:wc,allowPinchZoom:!0,shards:[i.contentRef],children:(0,P.jsx)(Qa.div,{"data-state":Lc(i.open),...r,ref:a,style:{pointerEvents:`auto`,...r.style}})})}),Ec=`DialogContent`,Dc=m.forwardRef((e,t)=>{let n=bc(Ec,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=mc(Ec,e.__scopeDialog);return(0,P.jsx)(Io,{present:r||a.open,children:a.modal?(0,P.jsx)(Oc,{...i,ref:t}):(0,P.jsx)(kc,{...i,ref:t})})});Dc.displayName=Ec;var Oc=m.forwardRef((e,t)=>{let n=mc(Ec,e.__scopeDialog),r=m.useRef(null),i=ka(t,n.contentRef,r);return m.useEffect(()=>{let e=r.current;if(e)return lc(e)},[]),(0,P.jsx)(Ac,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:F(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:F(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()}),onFocusOutside:F(e.onFocusOutside,e=>e.preventDefault())})}),kc=m.forwardRef((e,t)=>{let n=mc(Ec,e.__scopeDialog),r=m.useRef(!1),i=m.useRef(!1);return(0,P.jsx)(Ac,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})}),Ac=m.forwardRef((e,t)=>{let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,...o}=e,s=mc(Ec,n);return Wo(),(0,P.jsx)(P.Fragment,{children:(0,P.jsx)(xo,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,P.jsx)(so,{role:`dialog`,id:s.contentId,"aria-describedby":s.descriptionId,"aria-labelledby":s.titleId,"data-state":Lc(s.open),...o,ref:t,deferPointerDownOutside:!0,onDismiss:()=>s.onOpenChange(!1)})})})}),jc=`DialogTitle`,Mc=m.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=mc(jc,n);return(0,P.jsx)(Qa.h2,{id:i.titleId,...r,ref:t})});Mc.displayName=jc;var Nc=`DialogDescription`,Pc=m.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=mc(Nc,n);return(0,P.jsx)(Qa.p,{id:i.descriptionId,...r,ref:t})});Pc.displayName=Nc;var Fc=`DialogClose`,Ic=m.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=mc(Fc,n);return(0,P.jsx)(Qa.button,{type:`button`,...r,ref:t,onClick:F(e.onClick,()=>i.onOpenChange(!1))})});Ic.displayName=Fc;function Lc(e){return e?`open`:`closed`}var Rc=`AlertDialog`,[zc,Bc]=Ta(Rc,[fc]),Vc=fc(),Hc=e=>{let{__scopeAlertDialog:t,...n}=e,r=Vc(t);return(0,P.jsx)(hc,{...r,...n,modal:!0})};Hc.displayName=Rc;var Uc=`AlertDialogTrigger`,Wc=m.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=Vc(n);return(0,P.jsx)(_c,{...i,...r,ref:t})});Wc.displayName=Uc;var Gc=`AlertDialogPortal`,Kc=e=>{let{__scopeAlertDialog:t,...n}=e,r=Vc(t);return(0,P.jsx)(xc,{...r,...n})};Kc.displayName=Gc;var qc=`AlertDialogOverlay`,Jc=m.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=Vc(n);return(0,P.jsx)(Cc,{...i,...r,ref:t})});Jc.displayName=qc;var Yc=`AlertDialogContent`,[Xc,Zc]=zc(Yc),Qc=m.forwardRef((e,t)=>{let{__scopeAlertDialog:n,children:r,...i}=e,a=Vc(n),o=ka(t,m.useRef(null)),s=m.useRef(null);return(0,P.jsx)(Xc,{scope:n,cancelRef:s,children:(0,P.jsx)(Dc,{role:`alertdialog`,...a,...i,ref:o,onOpenAutoFocus:F(i.onOpenAutoFocus,e=>{e.preventDefault(),s.current?.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:r})})});Qc.displayName=Yc;var $c=`AlertDialogTitle`,el=m.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=Vc(n);return(0,P.jsx)(Mc,{...i,...r,ref:t})});el.displayName=$c;var tl=`AlertDialogDescription`,nl=m.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=Vc(n);return(0,P.jsx)(Pc,{...i,...r,ref:t})});nl.displayName=tl;var rl=`AlertDialogAction`,il=m.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=Vc(n);return(0,P.jsx)(Ic,{...i,...r,ref:t})});il.displayName=rl;var al=`AlertDialogCancel`,ol=m.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,{cancelRef:i}=Zc(al,n),a=Vc(n),o=ka(t,i);return(0,P.jsx)(Ic,{...a,...r,ref:o})});ol.displayName=al;var sl=Hc,cl=Wc,ll=Kc,ul=Jc,dl=Qc,fl=il,pl=ol,ml=el,hl=nl;function gl(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=gl(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function _l(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=gl(e))&&(r&&(r+=` `),r+=t);return r}var vl=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},yl=(e,t)=>({classGroupId:e,validator:t}),bl=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),xl=`-`,Sl=[],Cl=`arbitrary..`,wl=e=>{let t=Dl(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return El(e);let n=e.split(xl);return Tl(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?vl(i,t):t:i||Sl}return n[e]||Sl}}},Tl=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=Tl(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(xl):e.slice(t).join(xl),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},El=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?Cl+r:void 0})(),Dl=e=>{let{theme:t,classGroups:n}=e;return Ol(n,t)},Ol=(e,t)=>{let n=bl();for(let r in e){let i=e[r];kl(i,n,r,t)}return n},kl=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];Al(i,t,n,r)}},Al=(e,t,n,r)=>{if(typeof e==`string`){jl(e,t,n);return}if(typeof e==`function`){Ml(e,t,n,r);return}Nl(e,t,n,r)},jl=(e,t,n)=>{let r=e===``?t:Pl(t,e);r.classGroupId=n},Ml=(e,t,n,r)=>{if(Fl(e)){kl(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(yl(n,e))},Nl=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];kl(o,Pl(t,a),n,r)}},Pl=(e,t)=>{let n=e,r=t.split(xl),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=bl(),n.nextPart.set(t,i)),n=i}return n},Fl=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,Il=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},Ll=`!`,Rl=`:`,zl=[],Bl=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),Vl=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===Rl){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(Ll)?(c=s.slice(0,-1),l=!0):s.startsWith(Ll)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return Bl(t,l,c,u)};if(t){let e=t+Rl,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):Bl(zl,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},Hl=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},Ul=e=>({cache:Il(e.cacheSize),parseClassName:Vl(e),sortModifiers:Hl(e),postfixLookupClassGroupIds:Wl(e),...wl(e)}),Wl=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},Gl=/\s+/,Kl=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(Gl),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h){l=t+(l.length>0?` `+l:l);continue}if(g=r(p),!g){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+Ll:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e<b.length;++e){let t=b[e];s.push(v+t)}l=t+(l.length>0?` `+l:l)}return l},ql=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=Jl(n))&&(i&&(i+=` `),i+=r);return i},Jl=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=Jl(e[r]))&&(n&&(n+=` `),n+=t);return n},Yl=(e,...t)=>{let n,r,i,a,o=o=>(n=Ul(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=Kl(e,n);return i(e,a),a};return a=o,(...e)=>a(ql(...e))},Xl=[],Zl=e=>{let t=t=>t[e]||Xl;return t.isThemeGetter=!0,t},Ql=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,$l=/^\((?:(\w[\w-]*):)?(.+)\)$/i,eu=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,tu=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,nu=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,ru=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,iu=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,au=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,ou=e=>eu.test(e),su=e=>!!e&&!Number.isNaN(Number(e)),cu=e=>!!e&&Number.isInteger(Number(e)),lu=e=>e.endsWith(`%`)&&su(e.slice(0,-1)),uu=e=>tu.test(e),du=()=>!0,fu=e=>nu.test(e)&&!ru.test(e),pu=()=>!1,mu=e=>iu.test(e),hu=e=>au.test(e),gu=e=>!I(e)&&!L(e),_u=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),vu=e=>Nu(e,Lu,pu),I=e=>Ql.test(e),yu=e=>Nu(e,Ru,fu),bu=e=>Nu(e,zu,su),xu=e=>Nu(e,Vu,du),Su=e=>Nu(e,Bu,pu),Cu=e=>Nu(e,Fu,pu),wu=e=>Nu(e,Iu,hu),Tu=e=>Nu(e,Hu,mu),L=e=>$l.test(e),Eu=e=>Pu(e,Ru),Du=e=>Pu(e,Bu),Ou=e=>Pu(e,Fu),ku=e=>Pu(e,Lu),Au=e=>Pu(e,Iu),ju=e=>Pu(e,Hu,!0),Mu=e=>Pu(e,Vu,!0),Nu=(e,t,n)=>{let r=Ql.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Pu=(e,t,n=!1)=>{let r=$l.exec(e);return r?r[1]?t(r[1]):n:!1},Fu=e=>e===`position`||e===`percentage`,Iu=e=>e===`image`||e===`url`,Lu=e=>e===`length`||e===`size`||e===`bg-size`,Ru=e=>e===`length`,zu=e=>e===`number`,Bu=e=>e===`family-name`,Vu=e=>e===`number`||e===`weight`,Hu=e=>e===`shadow`,Uu=Yl(()=>{let e=Zl(`color`),t=Zl(`font`),n=Zl(`text`),r=Zl(`font-weight`),i=Zl(`tracking`),a=Zl(`leading`),o=Zl(`breakpoint`),s=Zl(`container`),c=Zl(`spacing`),l=Zl(`radius`),u=Zl(`shadow`),d=Zl(`inset-shadow`),f=Zl(`text-shadow`),p=Zl(`drop-shadow`),m=Zl(`blur`),h=Zl(`perspective`),g=Zl(`aspect`),_=Zl(`ease`),v=Zl(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),L,I],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[L,I,c],T=()=>[ou,`full`,`auto`,...w()],E=()=>[cu,`none`,`subgrid`,L,I],D=()=>[`auto`,{span:[`full`,cu,L,I]},cu,L,I],ee=()=>[cu,`auto`,L,I],O=()=>[`auto`,`min`,`max`,`fr`,L,I],k=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],A=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],j=()=>[`auto`,...w()],te=()=>[ou,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],M=()=>[ou,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],ne=()=>[ou,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],N=()=>[e,L,I],re=()=>[...b(),Ou,Cu,{position:[L,I]}],ie=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ae=()=>[`auto`,`cover`,`contain`,ku,vu,{size:[L,I]}],oe=()=>[lu,Eu,yu],se=()=>[``,`none`,`full`,l,L,I],ce=()=>[``,su,Eu,yu],le=()=>[`solid`,`dashed`,`dotted`,`double`],ue=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],de=()=>[su,lu,Ou,Cu],fe=()=>[``,`none`,m,L,I],pe=()=>[`none`,su,L,I],me=()=>[`none`,su,L,I],he=()=>[su,L,I],ge=()=>[ou,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[uu],breakpoint:[uu],color:[du],container:[uu],"drop-shadow":[uu],ease:[`in`,`out`,`in-out`],font:[gu],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[uu],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[uu],shadow:[uu],spacing:[`px`,su],text:[uu],"text-shadow":[uu],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,ou,I,L,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,L,I]}],"container-named":[_u],columns:[{columns:[su,I,L,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[cu,`auto`,L,I]}],basis:[{basis:[ou,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[su,ou,`auto`,`initial`,`none`,I]}],grow:[{grow:[``,su,L,I]}],shrink:[{shrink:[``,su,L,I]}],order:[{order:[cu,`first`,`last`,`none`,L,I]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":ee()}],"col-end":[{"col-end":ee()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:D()}],"row-start":[{"row-start":ee()}],"row-end":[{"row-end":ee()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":O()}],"auto-rows":[{"auto-rows":O()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...k(),`normal`]}],"justify-items":[{"justify-items":[...A(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...A()]}],"align-content":[{content:[`normal`,...k()]}],"align-items":[{items:[...A(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...A(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":k()}],"place-items":[{"place-items":[...A(),`baseline`]}],"place-self":[{"place-self":[`auto`,...A()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:j()}],mx:[{mx:j()}],my:[{my:j()}],ms:[{ms:j()}],me:[{me:j()}],mbs:[{mbs:j()}],mbe:[{mbe:j()}],mt:[{mt:j()}],mr:[{mr:j()}],mb:[{mb:j()}],ml:[{ml:j()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:te()}],"inline-size":[{inline:[`auto`,...M()]}],"min-inline-size":[{"min-inline":[`auto`,...M()]}],"max-inline-size":[{"max-inline":[`none`,...M()]}],"block-size":[{block:[`auto`,...ne()]}],"min-block-size":[{"min-block":[`auto`,...ne()]}],"max-block-size":[{"max-block":[`none`,...ne()]}],w:[{w:[s,`screen`,...te()]}],"min-w":[{"min-w":[s,`screen`,`none`,...te()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...te()]}],h:[{h:[`screen`,`lh`,...te()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...te()]}],"max-h":[{"max-h":[`screen`,`lh`,...te()]}],"font-size":[{text:[`base`,n,Eu,yu]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,Mu,xu]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,lu,I]}],"font-family":[{font:[Du,Su,t]}],"font-features":[{"font-features":[I]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,L,I]}],"line-clamp":[{"line-clamp":[su,`none`,L,bu]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,L,I]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,L,I]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:N()}],"text-color":[{text:N()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...le(),`wavy`]}],"text-decoration-thickness":[{decoration:[su,`from-font`,`auto`,L,yu]}],"text-decoration-color":[{decoration:N()}],"underline-offset":[{"underline-offset":[su,`auto`,L,I]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"tab-size":[{tab:[cu,L,I]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,L,I]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,L,I]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:re()}],"bg-repeat":[{bg:ie()}],"bg-size":[{bg:ae()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},cu,L,I],radial:[``,L,I],conic:[cu,L,I]},Au,wu]}],"bg-color":[{bg:N()}],"gradient-from-pos":[{from:oe()}],"gradient-via-pos":[{via:oe()}],"gradient-to-pos":[{to:oe()}],"gradient-from":[{from:N()}],"gradient-via":[{via:N()}],"gradient-to":[{to:N()}],rounded:[{rounded:se()}],"rounded-s":[{"rounded-s":se()}],"rounded-e":[{"rounded-e":se()}],"rounded-t":[{"rounded-t":se()}],"rounded-r":[{"rounded-r":se()}],"rounded-b":[{"rounded-b":se()}],"rounded-l":[{"rounded-l":se()}],"rounded-ss":[{"rounded-ss":se()}],"rounded-se":[{"rounded-se":se()}],"rounded-ee":[{"rounded-ee":se()}],"rounded-es":[{"rounded-es":se()}],"rounded-tl":[{"rounded-tl":se()}],"rounded-tr":[{"rounded-tr":se()}],"rounded-br":[{"rounded-br":se()}],"rounded-bl":[{"rounded-bl":se()}],"border-w":[{border:ce()}],"border-w-x":[{"border-x":ce()}],"border-w-y":[{"border-y":ce()}],"border-w-s":[{"border-s":ce()}],"border-w-e":[{"border-e":ce()}],"border-w-bs":[{"border-bs":ce()}],"border-w-be":[{"border-be":ce()}],"border-w-t":[{"border-t":ce()}],"border-w-r":[{"border-r":ce()}],"border-w-b":[{"border-b":ce()}],"border-w-l":[{"border-l":ce()}],"divide-x":[{"divide-x":ce()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":ce()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...le(),`hidden`,`none`]}],"divide-style":[{divide:[...le(),`hidden`,`none`]}],"border-color":[{border:N()}],"border-color-x":[{"border-x":N()}],"border-color-y":[{"border-y":N()}],"border-color-s":[{"border-s":N()}],"border-color-e":[{"border-e":N()}],"border-color-bs":[{"border-bs":N()}],"border-color-be":[{"border-be":N()}],"border-color-t":[{"border-t":N()}],"border-color-r":[{"border-r":N()}],"border-color-b":[{"border-b":N()}],"border-color-l":[{"border-l":N()}],"divide-color":[{divide:N()}],"outline-style":[{outline:[...le(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[su,L,I]}],"outline-w":[{outline:[``,su,Eu,yu]}],"outline-color":[{outline:N()}],shadow:[{shadow:[``,`none`,u,ju,Tu]}],"shadow-color":[{shadow:N()}],"inset-shadow":[{"inset-shadow":[`none`,d,ju,Tu]}],"inset-shadow-color":[{"inset-shadow":N()}],"ring-w":[{ring:ce()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:N()}],"ring-offset-w":[{"ring-offset":[su,yu]}],"ring-offset-color":[{"ring-offset":N()}],"inset-ring-w":[{"inset-ring":ce()}],"inset-ring-color":[{"inset-ring":N()}],"text-shadow":[{"text-shadow":[`none`,f,ju,Tu]}],"text-shadow-color":[{"text-shadow":N()}],opacity:[{opacity:[su,L,I]}],"mix-blend":[{"mix-blend":[...ue(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":ue()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[su]}],"mask-image-linear-from-pos":[{"mask-linear-from":de()}],"mask-image-linear-to-pos":[{"mask-linear-to":de()}],"mask-image-linear-from-color":[{"mask-linear-from":N()}],"mask-image-linear-to-color":[{"mask-linear-to":N()}],"mask-image-t-from-pos":[{"mask-t-from":de()}],"mask-image-t-to-pos":[{"mask-t-to":de()}],"mask-image-t-from-color":[{"mask-t-from":N()}],"mask-image-t-to-color":[{"mask-t-to":N()}],"mask-image-r-from-pos":[{"mask-r-from":de()}],"mask-image-r-to-pos":[{"mask-r-to":de()}],"mask-image-r-from-color":[{"mask-r-from":N()}],"mask-image-r-to-color":[{"mask-r-to":N()}],"mask-image-b-from-pos":[{"mask-b-from":de()}],"mask-image-b-to-pos":[{"mask-b-to":de()}],"mask-image-b-from-color":[{"mask-b-from":N()}],"mask-image-b-to-color":[{"mask-b-to":N()}],"mask-image-l-from-pos":[{"mask-l-from":de()}],"mask-image-l-to-pos":[{"mask-l-to":de()}],"mask-image-l-from-color":[{"mask-l-from":N()}],"mask-image-l-to-color":[{"mask-l-to":N()}],"mask-image-x-from-pos":[{"mask-x-from":de()}],"mask-image-x-to-pos":[{"mask-x-to":de()}],"mask-image-x-from-color":[{"mask-x-from":N()}],"mask-image-x-to-color":[{"mask-x-to":N()}],"mask-image-y-from-pos":[{"mask-y-from":de()}],"mask-image-y-to-pos":[{"mask-y-to":de()}],"mask-image-y-from-color":[{"mask-y-from":N()}],"mask-image-y-to-color":[{"mask-y-to":N()}],"mask-image-radial":[{"mask-radial":[L,I]}],"mask-image-radial-from-pos":[{"mask-radial-from":de()}],"mask-image-radial-to-pos":[{"mask-radial-to":de()}],"mask-image-radial-from-color":[{"mask-radial-from":N()}],"mask-image-radial-to-color":[{"mask-radial-to":N()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[su]}],"mask-image-conic-from-pos":[{"mask-conic-from":de()}],"mask-image-conic-to-pos":[{"mask-conic-to":de()}],"mask-image-conic-from-color":[{"mask-conic-from":N()}],"mask-image-conic-to-color":[{"mask-conic-to":N()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:re()}],"mask-repeat":[{mask:ie()}],"mask-size":[{mask:ae()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,L,I]}],filter:[{filter:[``,`none`,L,I]}],blur:[{blur:fe()}],brightness:[{brightness:[su,L,I]}],contrast:[{contrast:[su,L,I]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,ju,Tu]}],"drop-shadow-color":[{"drop-shadow":N()}],grayscale:[{grayscale:[``,su,L,I]}],"hue-rotate":[{"hue-rotate":[su,L,I]}],invert:[{invert:[``,su,L,I]}],saturate:[{saturate:[su,L,I]}],sepia:[{sepia:[``,su,L,I]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,L,I]}],"backdrop-blur":[{"backdrop-blur":fe()}],"backdrop-brightness":[{"backdrop-brightness":[su,L,I]}],"backdrop-contrast":[{"backdrop-contrast":[su,L,I]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,su,L,I]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[su,L,I]}],"backdrop-invert":[{"backdrop-invert":[``,su,L,I]}],"backdrop-opacity":[{"backdrop-opacity":[su,L,I]}],"backdrop-saturate":[{"backdrop-saturate":[su,L,I]}],"backdrop-sepia":[{"backdrop-sepia":[``,su,L,I]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,L,I]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[su,`initial`,L,I]}],ease:[{ease:[`linear`,`initial`,_,L,I]}],delay:[{delay:[su,L,I]}],animate:[{animate:[`none`,v,L,I]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,L,I]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:pe()}],"rotate-x":[{"rotate-x":pe()}],"rotate-y":[{"rotate-y":pe()}],"rotate-z":[{"rotate-z":pe()}],scale:[{scale:me()}],"scale-x":[{"scale-x":me()}],"scale-y":[{"scale-y":me()}],"scale-z":[{"scale-z":me()}],"scale-3d":[`scale-3d`],skew:[{skew:he()}],"skew-x":[{"skew-x":he()}],"skew-y":[{"skew-y":he()}],transform:[{transform:[L,I,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:ge()}],"translate-x":[{"translate-x":ge()}],"translate-y":[{"translate-y":ge()}],"translate-z":[{"translate-z":ge()}],"translate-none":[`translate-none`],zoom:[{zoom:[cu,L,I]}],accent:[{accent:N()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:N()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,L,I]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":N()}],"scrollbar-track-color":[{"scrollbar-track":N()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,L,I]}],fill:[{fill:[`none`,...N()]}],"stroke-w":[{stroke:[su,Eu,yu,bu]}],stroke:[{stroke:[`none`,...N()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Wu(...e){return Uu(_l(e))}function Gu(e,t,n,r,i,a,o){let s=new Date().toISOString();return{_id:e,name:t,description:null,photo:a||null,type:n,user_id:i,created_at:s,updated_at:s,last_message:null,last_message_id:null,last_message_user_id:null,last_message_status:null,occupants_ids:r,admins_ids:[i],unread_messages_count:0,extensions:o}}var Ku=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,qu=_l,Ju=(e,t)=>n=>{if(t?.variants==null)return qu(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Ku(t)||Ku(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return qu(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)};function R(...e){return Uu(_l(e))}function Yu(e=8){return(Date.now()/Math.random()).toString(36).replace(`.`,``).slice(0,e)}function Xu(e){return typeof e==`string`&&e.length>0?`${e[0]?.toUpperCase()}${e.slice(1)}`:``}var Zu=Ju(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*=size-])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,{variants:{variant:{default:`bg-primary text-primary-foreground shadow-xs hover:bg-primary/90`,destructive:`bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50`,secondary:`bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2 has-[>svg]:px-3`,sm:`h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5`,lg:`h-10 rounded-md px-6 has-[>svg]:px-4`,icon:`size-9`}},defaultVariants:{variant:`default`,size:`default`}});function Qu({asChild:e=!1,variant:t,size:n,className:r,...i},a){let o=e?za:`button`;return m.createElement(o,{ref:a,...i,className:R(Zu({variant:t,size:n,className:r}),`transition-all ease-out duration-300`)})}var $u=m.forwardRef(Qu);$u.displayName=`Button`;function ed({...e}){return m.createElement(sl,{"data-slot":`alert-dialog`,...e})}function td({...e}){return e.container=oa(e=>e.shadowPortal),m.createElement(ll,{"data-slot":`alert-dialog-portal`,...e})}function nd({className:e,...t}){return m.createElement(ul,{"data-slot":`alert-dialog-overlay`,className:Wu(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50`,e),...t})}function rd({className:e,...t}){return m.createElement(td,null,m.createElement(nd,null),m.createElement(dl,{"data-slot":`alert-dialog-content`,className:Wu(`bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2em)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg`,e),...t}))}function id({className:e,...t}){return m.createElement(`div`,{"data-slot":`alert-dialog-header`,className:Wu(`flex flex-col gap-2 text-center sm:text-left`,e),...t})}function ad({className:e,...t}){return m.createElement(ml,{"data-slot":`alert-dialog-title`,className:Wu(`text-lg font-semibold`,e),...t})}var od=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),sd=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),cd=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),ld=e=>{let t=cd(e);return t.charAt(0).toUpperCase()+t.slice(1)},ud={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},dd=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},fd=(0,m.createContext)({}),pd=()=>(0,m.useContext)(fd),md=(0,m.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>{let{size:l=24,strokeWidth:u=2,absoluteStrokeWidth:d=!1,color:f=`currentColor`,className:p=``}=pd()??{},h=r??d?Number(n??u)*24/Number(t??l):n??u;return(0,m.createElement)(`svg`,{ref:c,...ud,width:t??l??ud.width,height:t??l??ud.height,stroke:e??f,strokeWidth:h,className:od(`lucide`,p,i),...!a&&!dd(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,m.createElement)(e,t)),...Array.isArray(a)?a:[a]])}),hd=(e,t)=>{let n=(0,m.forwardRef)(({className:n,...r},i)=>(0,m.createElement)(md,{ref:i,iconNode:t,className:od(`lucide-${sd(ld(e))}`,`lucide-${e}`,n),...r}));return n.displayName=ld(e),n},gd=hd(`ban`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}]]),_d=hd(`check-check`,[[`path`,{d:`M18 6 7 17l-5-5`,key:`116fxf`}],[`path`,{d:`m22 10-7.5 7.5L13 16`,key:`ke71qq`}]]),vd=hd(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),yd=hd(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),bd=hd(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),xd=hd(`ellipsis`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`19`,cy:`12`,r:`1`,key:`1wjl8i`}],[`circle`,{cx:`5`,cy:`12`,r:`1`,key:`1pcz8c`}]]),Sd=hd(`file-plus-corner`,[[`path`,{d:`M11.35 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5.35`,key:`17jvcc`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 19h6`,key:`bvotb8`}],[`path`,{d:`M17 16v6`,key:`18yu1i`}]]),Cd=hd(`file-x-corner`,[[`path`,{d:`M11 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5`,key:`1jo35a`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`m15 17 5 5`,key:`36xl1x`}],[`path`,{d:`m20 17-5 5`,key:`vdz27y`}]]),wd=hd(`file`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}]]),Td=hd(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),Ed=hd(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),Dd=hd(`loader`,[[`path`,{d:`M12 2v4`,key:`3427ic`}],[`path`,{d:`m16.2 7.8 2.9-2.9`,key:`r700ao`}],[`path`,{d:`M18 12h4`,key:`wj9ykh`}],[`path`,{d:`m16.2 16.2 2.9 2.9`,key:`1bxg5t`}],[`path`,{d:`M12 18v4`,key:`jadmvz`}],[`path`,{d:`m4.9 19.1 2.9-2.9`,key:`bwix9q`}],[`path`,{d:`M2 12h4`,key:`j09sii`}],[`path`,{d:`m4.9 4.9 2.9 2.9`,key:`giyufr`}]]),Od=hd(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),kd=hd(`maximize`,[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v3`,key:`1dcmit`}],[`path`,{d:`M21 8V5a2 2 0 0 0-2-2h-3`,key:`1e4gt3`}],[`path`,{d:`M3 16v3a2 2 0 0 0 2 2h3`,key:`wsl5sc`}],[`path`,{d:`M16 21h3a2 2 0 0 0 2-2v-3`,key:`18trek`}]]),Ad=hd(`mic-off`,[[`path`,{d:`M12 19v3`,key:`npa21l`}],[`path`,{d:`M15 9.34V5a3 3 0 0 0-5.68-1.33`,key:`1gzdoj`}],[`path`,{d:`M16.95 16.95A7 7 0 0 1 5 12v-2`,key:`cqa7eg`}],[`path`,{d:`M18.89 13.23A7 7 0 0 0 19 12v-2`,key:`16hl24`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M9 9v3a3 3 0 0 0 5.12 2.12`,key:`r2i35w`}]]),jd=hd(`mic`,[[`path`,{d:`M12 19v3`,key:`npa21l`}],[`path`,{d:`M19 10v2a7 7 0 0 1-14 0v-2`,key:`1vc78b`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`13`,rx:`3`,key:`s6n7sd`}]]),Md=hd(`minimize`,[[`path`,{d:`M8 3v3a2 2 0 0 1-2 2H3`,key:`hohbtr`}],[`path`,{d:`M21 8h-3a2 2 0 0 1-2-2V3`,key:`5jw1f3`}],[`path`,{d:`M3 16h3a2 2 0 0 1 2 2v3`,key:`198tvr`}],[`path`,{d:`M16 21v-3a2 2 0 0 1 2-2h3`,key:`ph8mxp`}]]),Nd=hd(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),Pd=hd(`phone-incoming`,[[`path`,{d:`M16 2v6h6`,key:`1mfrl5`}],[`path`,{d:`m22 2-6 6`,key:`6f0sa0`}],[`path`,{d:`M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384`,key:`9njp5v`}]]),Fd=hd(`phone-missed`,[[`path`,{d:`m16 2 6 6`,key:`1gw87d`}],[`path`,{d:`m22 2-6 6`,key:`6f0sa0`}],[`path`,{d:`M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384`,key:`9njp5v`}]]),Id=hd(`phone-outgoing`,[[`path`,{d:`m16 8 6-6`,key:`oawc05`}],[`path`,{d:`M22 8V2h-6`,key:`oqy2zc`}],[`path`,{d:`M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384`,key:`9njp5v`}]]),Ld=hd(`phone-off`,[[`path`,{d:`M10.1 13.9a14 14 0 0 0 3.732 2.668 1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2 18 18 0 0 1-12.728-5.272`,key:`1wngk7`}],[`path`,{d:`M22 2 2 22`,key:`y4kqgn`}],[`path`,{d:`M4.76 13.582A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 .244.473`,key:`10hv5p`}]]),Rd=hd(`phone`,[[`path`,{d:`M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384`,key:`9njp5v`}]]),zd=hd(`picture-in-picture-2`,[[`path`,{d:`M21 9V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v10c0 1.1.9 2 2 2h4`,key:`daa4of`}],[`rect`,{width:`10`,height:`7`,x:`12`,y:`13`,rx:`2`,key:`1nb8gs`}]]),Bd=hd(`screen-share-off`,[[`path`,{d:`M13 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-3`,key:`i8wdob`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m22 3-5 5`,key:`12jva0`}],[`path`,{d:`m17 3 5 5`,key:`k36vhe`}]]),Vd=hd(`screen-share`,[[`path`,{d:`M13 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-3`,key:`i8wdob`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m17 8 5-5`,key:`fqif7o`}],[`path`,{d:`M17 3h5v5`,key:`1o3tu8`}]]),Hd=hd(`search`,[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]),Ud=hd(`send-horizontal`,[[`path`,{d:`M3.714 3.048a.498.498 0 0 0-.683.627l2.843 7.627a2 2 0 0 1 0 1.396l-2.842 7.627a.498.498 0 0 0 .682.627l18-8.5a.5.5 0 0 0 0-.904z`,key:`117uat`}],[`path`,{d:`M6 12h16`,key:`s4cdu5`}]]),Wd=hd(`sparkles`,[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]]),Gd=hd(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),Kd=hd(`video-off`,[[`path`,{d:`M10.66 6H14a2 2 0 0 1 2 2v2.5l5.248-3.062A.5.5 0 0 1 22 7.87v8.196`,key:`w8jjjt`}],[`path`,{d:`M16 16a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h2`,key:`1xawa7`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),qd=hd(`video`,[[`path`,{d:`m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5`,key:`ftymec`}],[`rect`,{x:`2`,y:`6`,width:`14`,height:`12`,rx:`2`,key:`158x01`}]]),Jd=hd(`wand-sparkles`,[[`path`,{d:`m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72`,key:`ul74o6`}],[`path`,{d:`m14 7 3 3`,key:`1r5n42`}],[`path`,{d:`M5 6v4`,key:`ilb8ba`}],[`path`,{d:`M19 14v4`,key:`blhpug`}],[`path`,{d:`M10 2v2`,key:`7u0qdc`}],[`path`,{d:`M7 8H3`,key:`zfb6yr`}],[`path`,{d:`M21 16h-4`,key:`1cnmox`}],[`path`,{d:`M11 3H9`,key:`1obp7u`}]]),Yd=hd(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),Xd=({loading:e=!1,layout:t=`flow`,type:n=`default`,...r})=>{let i=n===`circle`?Ed:Dd;if(!e)return null;let a=m.createElement(i,{strokeWidth:2.5,...r,className:R(`animate-spin text-ring`,t===`flow`&&`mx-auto`,r?.className)});switch(t){case`absolute`:return m.createElement(`div`,{className:`absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2`},a);case`centered`:return m.createElement(`div`,{className:`flex items-center justify-center size-full`},a);case`overlay`:return m.createElement(`div`,{className:`flex items-center justify-center size-full absolute bg-muted/50`},a);default:return a}};Xd.displayName=`Spinner`;var Zd=()=>{let[e,t]=Nt($t(e=>[e.visible,e.title]));return m.default.createElement(ed,{open:e},m.default.createElement(rd,{className:`size-auto`},m.default.createElement(id,null,m.default.createElement(ad,{className:`self-center`},m.default.createElement(`div`,{className:`flex items-center space-x-4`},m.default.createElement(`span`,null,t),m.default.createElement(Xd,{loading:!0}))))))};function Qd(e){if(!e||typeof document>`u`)return;let t=document.head||document.getElementsByTagName(`head`)[0],n=document.createElement(`style`);n.type=`text/css`,t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}var $d=e=>{switch(e){case`success`:return nf;case`info`:return af;case`warning`:return rf;case`error`:return of;default:return null}},ef=Array(12).fill(0),tf=({visible:e,className:t})=>m.default.createElement(`div`,{className:[`sonner-loading-wrapper`,t].filter(Boolean).join(` `),"data-visible":e},m.default.createElement(`div`,{className:`sonner-spinner`},ef.map((e,t)=>m.default.createElement(`div`,{className:`sonner-loading-bar`,key:`spinner-bar-${t}`})))),nf=m.default.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`},m.default.createElement(`path`,{fillRule:`evenodd`,d:`M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z`,clipRule:`evenodd`})),rf=m.default.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,height:`20`,width:`20`},m.default.createElement(`path`,{fillRule:`evenodd`,d:`M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z`,clipRule:`evenodd`})),af=m.default.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`},m.default.createElement(`path`,{fillRule:`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z`,clipRule:`evenodd`})),of=m.default.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`},m.default.createElement(`path`,{fillRule:`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z`,clipRule:`evenodd`})),sf=m.default.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`},m.default.createElement(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),m.default.createElement(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})),cf=()=>{let[e,t]=m.default.useState(document.hidden);return m.default.useEffect(()=>{let e=()=>{t(document.hidden)};return document.addEventListener(`visibilitychange`,e),()=>window.removeEventListener(`visibilitychange`,e)},[]),e},lf=1,uf=new class{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{let t=this.subscribers.indexOf(e);this.subscribers.splice(t,1)}),this.publish=e=>{this.subscribers.forEach(t=>t(e))},this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]},this.create=e=>{let{message:t,...n}=e,r=typeof e?.id==`number`||e.id?.length>0?e.id:lf++,i=this.toasts.find(e=>e.id===r),a=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(r)&&this.dismissedToasts.delete(r),i?this.toasts=this.toasts.map(n=>n.id===r?(this.publish({...n,...e,id:r,title:t}),{...n,...e,id:r,dismissible:a,title:t}):n):this.addToast({title:t,...n,dismissible:a,id:r}),r},this.dismiss=e=>(e?(this.dismissedToasts.add(e),requestAnimationFrame(()=>this.subscribers.forEach(t=>t({id:e,dismiss:!0})))):this.toasts.forEach(e=>{this.subscribers.forEach(t=>t({id:e.id,dismiss:!0}))}),e),this.message=(e,t)=>this.create({...t,message:e}),this.error=(e,t)=>this.create({...t,message:e,type:`error`}),this.success=(e,t)=>this.create({...t,type:`success`,message:e}),this.info=(e,t)=>this.create({...t,type:`info`,message:e}),this.warning=(e,t)=>this.create({...t,type:`warning`,message:e}),this.loading=(e,t)=>this.create({...t,type:`loading`,message:e}),this.promise=(e,t)=>{if(!t)return;let n;t.loading!==void 0&&(n=this.create({...t,promise:e,type:`loading`,message:t.loading,description:typeof t.description==`function`?void 0:t.description}));let r=Promise.resolve(e instanceof Function?e():e),i=n!==void 0,a,o=r.then(async e=>{if(a=[`resolve`,e],m.default.isValidElement(e))i=!1,this.create({id:n,type:`default`,message:e});else if(ff(e)&&!e.ok){i=!1;let r=typeof t.error==`function`?await t.error(`HTTP error! status: ${e.status}`):t.error,a=typeof t.description==`function`?await t.description(`HTTP error! status: ${e.status}`):t.description,o=typeof r==`object`&&!m.default.isValidElement(r)?r:{message:r};this.create({id:n,type:`error`,description:a,...o})}else if(e instanceof Error){i=!1;let r=typeof t.error==`function`?await t.error(e):t.error,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!m.default.isValidElement(r)?r:{message:r};this.create({id:n,type:`error`,description:a,...o})}else if(t.success!==void 0){i=!1;let r=typeof t.success==`function`?await t.success(e):t.success,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!m.default.isValidElement(r)?r:{message:r};this.create({id:n,type:`success`,description:a,...o})}}).catch(async e=>{if(a=[`reject`,e],t.error!==void 0){i=!1;let r=typeof t.error==`function`?await t.error(e):t.error,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!m.default.isValidElement(r)?r:{message:r};this.create({id:n,type:`error`,description:a,...o})}}).finally(()=>{i&&(this.dismiss(n),n=void 0),t.finally==null||t.finally.call(t)}),s=()=>new Promise((e,t)=>o.then(()=>a[0]===`reject`?t(a[1]):e(a[1])).catch(t));return typeof n!=`string`&&typeof n!=`number`?{unwrap:s}:Object.assign(n,{unwrap:s})},this.custom=(e,t)=>{let n=t?.id||lf++;return this.create({jsx:e(n),id:n,...t}),n},this.getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},df=(e,t)=>{let n=t?.id||lf++;return uf.addToast({title:e,...t,id:n}),n},ff=e=>e&&typeof e==`object`&&`ok`in e&&typeof e.ok==`boolean`&&`status`in e&&typeof e.status==`number`,pf=Object.assign(df,{success:uf.success,info:uf.info,warning:uf.warning,error:uf.error,custom:uf.custom,message:uf.message,promise:uf.promise,dismiss:uf.dismiss,loading:uf.loading},{getHistory:()=>uf.toasts,getToasts:()=>uf.getActiveToasts()});Qd(`[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}`);function mf(e){return e.label!==void 0}var hf=3,gf=`24px`,_f=`16px`,vf=4e3,yf=356,bf=14,xf=45,Sf=200;function Cf(...e){return e.filter(Boolean).join(` `)}function wf(e){let[t,n]=e.split(`-`),r=[];return t&&r.push(t),n&&r.push(n),r}var Tf=e=>{let{invert:t,toast:n,unstyled:r,interacting:i,setHeights:a,visibleToasts:o,heights:s,index:c,toasts:l,expanded:u,removeToast:d,defaultRichColors:f,closeButton:p,style:h,cancelButtonStyle:g,actionButtonStyle:_,className:v=``,descriptionClassName:y=``,duration:b,position:x,gap:S,expandByDefault:C,classNames:w,icons:T,closeButtonAriaLabel:E=`Close toast`}=e,[D,ee]=m.default.useState(null),[O,k]=m.default.useState(null),[A,j]=m.default.useState(!1),[te,M]=m.default.useState(!1),[ne,N]=m.default.useState(!1),[re,ie]=m.default.useState(!1),[ae,oe]=m.default.useState(!1),[se,ce]=m.default.useState(0),[le,ue]=m.default.useState(0),de=m.default.useRef(n.duration||b||vf),fe=m.default.useRef(null),pe=m.default.useRef(null),me=c===0,he=c+1<=o,ge=n.type,_e=n.dismissible!==!1,ve=n.className||``,ye=n.descriptionClassName||``,be=m.default.useMemo(()=>s.findIndex(e=>e.toastId===n.id)||0,[s,n.id]),xe=m.default.useMemo(()=>n.closeButton??p,[n.closeButton,p]),Se=m.default.useMemo(()=>n.duration||b||vf,[n.duration,b]),Ce=m.default.useRef(0),we=m.default.useRef(0),Te=m.default.useRef(0),Ee=m.default.useRef(null),[De,Oe]=x.split(`-`),ke=m.default.useMemo(()=>s.reduce((e,t,n)=>n>=be?e:e+t.height,0),[s,be]),Ae=cf(),je=n.invert||t,Me=ge===`loading`;we.current=m.default.useMemo(()=>be*S+ke,[be,ke]),m.default.useEffect(()=>{de.current=Se},[Se]),m.default.useEffect(()=>{j(!0)},[]),m.default.useEffect(()=>{let e=pe.current;if(e){let t=e.getBoundingClientRect().height;return ue(t),a(e=>[{toastId:n.id,height:t,position:n.position},...e]),()=>a(e=>e.filter(e=>e.toastId!==n.id))}},[a,n.id]),m.default.useLayoutEffect(()=>{if(!A)return;let e=pe.current,t=e.style.height;e.style.height=`auto`;let r=e.getBoundingClientRect().height;e.style.height=t,ue(r),a(e=>e.find(e=>e.toastId===n.id)?e.map(e=>e.toastId===n.id?{...e,height:r}:e):[{toastId:n.id,height:r,position:n.position},...e])},[A,n.title,n.description,a,n.id,n.jsx,n.action,n.cancel]);let Ne=m.default.useCallback(()=>{M(!0),ce(we.current),a(e=>e.filter(e=>e.toastId!==n.id)),setTimeout(()=>{d(n)},Sf)},[n,d,a,we]);m.default.useEffect(()=>{if(n.promise&&ge===`loading`||n.duration===1/0||n.type===`loading`)return;let e;return u||i||Ae?(()=>{if(Te.current<Ce.current){let e=new Date().getTime()-Ce.current;de.current-=e}Te.current=new Date().getTime()})():de.current!==1/0&&(Ce.current=new Date().getTime(),e=setTimeout(()=>{n.onAutoClose==null||n.onAutoClose.call(n,n),Ne()},de.current)),()=>clearTimeout(e)},[u,i,n,ge,Ae,Ne]),m.default.useEffect(()=>{n.delete&&(Ne(),n.onDismiss==null||n.onDismiss.call(n,n))},[Ne,n.delete]);function Pe(){return T?.loading?m.default.createElement(`div`,{className:Cf(w?.loader,n?.classNames?.loader,`sonner-loader`),"data-visible":ge===`loading`},T.loading):m.default.createElement(tf,{className:Cf(w?.loader,n?.classNames?.loader),visible:ge===`loading`})}let Fe=n.icon||T?.[ge]||$d(ge);return m.default.createElement(`li`,{tabIndex:0,ref:pe,className:Cf(v,ve,w?.toast,n?.classNames?.toast,w?.default,w?.[ge],n?.classNames?.[ge]),"data-sonner-toast":``,"data-rich-colors":n.richColors??f,"data-styled":!(n.jsx||n.unstyled||r),"data-mounted":A,"data-promise":!!n.promise,"data-swiped":ae,"data-removed":te,"data-visible":he,"data-y-position":De,"data-x-position":Oe,"data-index":c,"data-front":me,"data-swiping":ne,"data-dismissible":_e,"data-type":ge,"data-invert":je,"data-swipe-out":re,"data-swipe-direction":O,"data-expanded":!!(u||C&&A),"data-testid":n.testId,style:{"--index":c,"--toasts-before":c,"--z-index":l.length-c,"--offset":`${te?se:we.current}px`,"--initial-height":C?`auto`:`${le}px`,...h,...n.style},onDragEnd:()=>{N(!1),ee(null),Ee.current=null},onPointerDown:e=>{e.button!==2&&(Me||!_e||(fe.current=new Date,ce(we.current),e.target.setPointerCapture(e.pointerId),e.target.tagName!==`BUTTON`&&(N(!0),Ee.current={x:e.clientX,y:e.clientY})))},onPointerUp:()=>{if(re||!_e)return;Ee.current=null;let e=Number(pe.current?.style.getPropertyValue(`--swipe-amount-x`).replace(`px`,``)||0),t=Number(pe.current?.style.getPropertyValue(`--swipe-amount-y`).replace(`px`,``)||0),r=new Date().getTime()-fe.current?.getTime(),i=D===`x`?e:t,a=Math.abs(i)/r;if(Math.abs(i)>=xf||a>.11){ce(we.current),n.onDismiss==null||n.onDismiss.call(n,n),k(D===`x`?e>0?`right`:`left`:t>0?`down`:`up`),Ne(),ie(!0);return}else{var o,s;(o=pe.current)==null||o.style.setProperty(`--swipe-amount-x`,`0px`),(s=pe.current)==null||s.style.setProperty(`--swipe-amount-y`,`0px`)}oe(!1),N(!1),ee(null)},onPointerMove:t=>{var n,r;if(!Ee.current||!_e||window.getSelection()?.toString().length>0)return;let i=t.clientY-Ee.current.y,a=t.clientX-Ee.current.x,o=e.swipeDirections??wf(x);!D&&(Math.abs(a)>1||Math.abs(i)>1)&&ee(Math.abs(a)>Math.abs(i)?`x`:`y`);let s={x:0,y:0},c=e=>1/(1.5+Math.abs(e)/20);if(D===`y`){if(o.includes(`top`)||o.includes(`bottom`))if(o.includes(`top`)&&i<0||o.includes(`bottom`)&&i>0)s.y=i;else{let e=i*c(i);s.y=Math.abs(e)<Math.abs(i)?e:i}}else if(D===`x`&&(o.includes(`left`)||o.includes(`right`)))if(o.includes(`left`)&&a<0||o.includes(`right`)&&a>0)s.x=a;else{let e=a*c(a);s.x=Math.abs(e)<Math.abs(a)?e:a}(Math.abs(s.x)>0||Math.abs(s.y)>0)&&oe(!0),(n=pe.current)==null||n.style.setProperty(`--swipe-amount-x`,`${s.x}px`),(r=pe.current)==null||r.style.setProperty(`--swipe-amount-y`,`${s.y}px`)}},xe&&!n.jsx&&ge!==`loading`?m.default.createElement(`button`,{"aria-label":E,"data-disabled":Me,"data-close-button":!0,onClick:Me||!_e?()=>{}:()=>{Ne(),n.onDismiss==null||n.onDismiss.call(n,n)},className:Cf(w?.closeButton,n?.classNames?.closeButton)},T?.close??sf):null,(ge||n.icon||n.promise)&&n.icon!==null&&(T?.[ge]!==null||n.icon)?m.default.createElement(`div`,{"data-icon":``,className:Cf(w?.icon,n?.classNames?.icon)},n.promise||n.type===`loading`&&!n.icon?n.icon||Pe():null,n.type===`loading`?null:Fe):null,m.default.createElement(`div`,{"data-content":``,className:Cf(w?.content,n?.classNames?.content)},m.default.createElement(`div`,{"data-title":``,className:Cf(w?.title,n?.classNames?.title)},n.jsx?n.jsx:typeof n.title==`function`?n.title():n.title),n.description?m.default.createElement(`div`,{"data-description":``,className:Cf(y,ye,w?.description,n?.classNames?.description)},typeof n.description==`function`?n.description():n.description):null),m.default.isValidElement(n.cancel)?n.cancel:n.cancel&&mf(n.cancel)?m.default.createElement(`button`,{"data-button":!0,"data-cancel":!0,style:n.cancelButtonStyle||g,onClick:e=>{mf(n.cancel)&&_e&&(n.cancel.onClick==null||n.cancel.onClick.call(n.cancel,e),Ne())},className:Cf(w?.cancelButton,n?.classNames?.cancelButton)},n.cancel.label):null,m.default.isValidElement(n.action)?n.action:n.action&&mf(n.action)?m.default.createElement(`button`,{"data-button":!0,"data-action":!0,style:n.actionButtonStyle||_,onClick:e=>{mf(n.action)&&(n.action.onClick==null||n.action.onClick.call(n.action,e),!e.defaultPrevented&&Ne())},className:Cf(w?.actionButton,n?.classNames?.actionButton)},n.action.label):null)};function Ef(){if(typeof window>`u`||typeof document>`u`)return`ltr`;let e=document.documentElement.getAttribute(`dir`);return e===`auto`||!e?window.getComputedStyle(document.documentElement).direction:e}function Df(e,t){let n={};return[e,t].forEach((e,t)=>{let r=t===1,i=r?`--mobile-offset`:`--offset`,a=r?_f:gf;function o(e){[`top`,`right`,`bottom`,`left`].forEach(t=>{n[`${i}-${t}`]=typeof e==`number`?`${e}px`:e})}typeof e==`number`||typeof e==`string`?o(e):typeof e==`object`?[`top`,`right`,`bottom`,`left`].forEach(t=>{e[t]===void 0?n[`${i}-${t}`]=a:n[`${i}-${t}`]=typeof e[t]==`number`?`${e[t]}px`:e[t]}):o(a)}),n}var Of=m.default.forwardRef(function(e,t){let{id:r,invert:i,position:a=`bottom-right`,hotkey:o=[`altKey`,`KeyT`],expand:s,closeButton:c,className:l,offset:u,mobileOffset:d,theme:f=`light`,richColors:p,duration:h,style:g,visibleToasts:_=hf,toastOptions:v,dir:y=Ef(),gap:b=bf,icons:x,containerAriaLabel:S=`Notifications`}=e,[C,w]=m.default.useState([]),T=m.default.useMemo(()=>r?C.filter(e=>e.toasterId===r):C.filter(e=>!e.toasterId),[C,r]),E=m.default.useMemo(()=>Array.from(new Set([a].concat(T.filter(e=>e.position).map(e=>e.position)))),[T,a]),[D,ee]=m.default.useState([]),[O,k]=m.default.useState(!1),[A,j]=m.default.useState(!1),[te,M]=m.default.useState(f===`system`?typeof window<`u`&&window.matchMedia&&window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:f),ne=m.default.useRef(null),N=o.join(`+`).replace(/Key/g,``).replace(/Digit/g,``),re=m.default.useRef(null),ie=m.default.useRef(!1),ae=m.default.useCallback(e=>{w(t=>(t.find(t=>t.id===e.id)?.delete||uf.dismiss(e.id),t.filter(({id:t})=>t!==e.id)))},[]);return m.default.useEffect(()=>uf.subscribe(e=>{if(e.dismiss){requestAnimationFrame(()=>{w(t=>t.map(t=>t.id===e.id?{...t,delete:!0}:t))});return}setTimeout(()=>{n.default.flushSync(()=>{w(t=>{let n=t.findIndex(t=>t.id===e.id);return n===-1?[e,...t]:[...t.slice(0,n),{...t[n],...e},...t.slice(n+1)]})})})}),[C]),m.default.useEffect(()=>{if(f!==`system`){M(f);return}if(f===`system`&&(window.matchMedia&&window.matchMedia(`(prefers-color-scheme: dark)`).matches?M(`dark`):M(`light`)),typeof window>`u`)return;let e=window.matchMedia(`(prefers-color-scheme: dark)`);try{e.addEventListener(`change`,({matches:e})=>{M(e?`dark`:`light`)})}catch{e.addListener(({matches:e})=>{try{M(e?`dark`:`light`)}catch(e){console.error(e)}})}},[f]),m.default.useEffect(()=>{C.length<=1&&k(!1)},[C]),m.default.useEffect(()=>{let e=e=>{if(o.every(t=>e[t]||e.code===t)){var t;k(!0),(t=ne.current)==null||t.focus()}e.code===`Escape`&&(document.activeElement===ne.current||ne.current?.contains(document.activeElement))&&k(!1)};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[o]),m.default.useEffect(()=>{if(ne.current)return()=>{re.current&&(re.current.focus({preventScroll:!0}),re.current=null,ie.current=!1)}},[ne.current]),m.default.createElement(`section`,{ref:t,"aria-label":`${S} ${N}`,tabIndex:-1,"aria-live":`polite`,"aria-relevant":`additions text`,"aria-atomic":`false`,suppressHydrationWarning:!0},E.map((t,n)=>{let[r,a]=t.split(`-`);return T.length?m.default.createElement(`ol`,{key:t,dir:y===`auto`?Ef():y,tabIndex:-1,ref:ne,className:l,"data-sonner-toaster":!0,"data-sonner-theme":te,"data-y-position":r,"data-x-position":a,style:{"--front-toast-height":`${D[0]?.height||0}px`,"--width":`${yf}px`,"--gap":`${b}px`,...g,...Df(u,d)},onBlur:e=>{ie.current&&!e.currentTarget.contains(e.relatedTarget)&&(ie.current=!1,re.current&&=(re.current.focus({preventScroll:!0}),null))},onFocus:e=>{e.target instanceof HTMLElement&&e.target.dataset.dismissible===`false`||ie.current||(ie.current=!0,re.current=e.relatedTarget)},onMouseEnter:()=>k(!0),onMouseMove:()=>k(!0),onMouseLeave:()=>{A||k(!1)},onDragEnd:()=>k(!1),onPointerDown:e=>{e.target instanceof HTMLElement&&e.target.dataset.dismissible===`false`||j(!0)},onPointerUp:()=>j(!1)},T.filter(e=>!e.position&&n===0||e.position===t).map((n,r)=>m.default.createElement(Tf,{key:n.id,icons:x,index:r,toast:n,defaultRichColors:p,duration:v?.duration??h,className:v?.className,descriptionClassName:v?.descriptionClassName,invert:i,visibleToasts:_,closeButton:v?.closeButton??c,interacting:A,position:t,style:v?.style,unstyled:v?.unstyled,classNames:v?.classNames,cancelButtonStyle:v?.cancelButtonStyle,actionButtonStyle:v?.actionButtonStyle,closeButtonAriaLabel:v?.closeButtonAriaLabel,removeToast:ae,toasts:T.filter(e=>e.position==n.position),heights:D.filter(e=>e.position==n.position),setHeights:ee,expandByDefault:s,gap:b,expanded:O,swipeDirections:e.swipeDirections}))):null}))}),kf=({customButton:e})=>{let{stopCall:t,activeCall:n,getUserMedia:r,getDisplayMedia:i,activeMedia:a,muteVideo:o,unmuteVideo:s,isLocalVideoMuted:c,muteAudio:l,unmuteAudio:u,isLocalAudioMuted:d}=gr(),f=a===Bn.DISPLAY,{sendHungUpCall:p}=ma(),h=(0,m.useCallback)(()=>{c?s():o()},[c,o,s]),g=(0,m.useCallback)(()=>{d?u():l()},[d,l,u]),_=(0,m.useCallback)(()=>{t(),p(n?.initiatorID)},[n,t,p]),v=(0,m.useCallback)(()=>{f?r():i()},[f,i,r]);return m.default.createElement(`div`,{className:`flex flex-row items-center justify-center bg-gray-800 rounded-full p-2 gap-x-4`},m.default.createElement(`button`,{onClick:h,className:`bg-gray-600 hover:bg-gray-500 rounded-full p-2`},c?m.default.createElement(Kd,{className:`text-background`}):m.default.createElement(qd,{className:`text-background`})),m.default.createElement(`button`,{onClick:g,className:`bg-gray-600 hover:bg-gray-500 rounded-full p-2`},d?m.default.createElement(Ad,{className:`text-background`}):m.default.createElement(jd,{className:`text-background`})),m.default.createElement(`button`,{onClick:_,className:`bg-red-600 hover:bg-red-700 rounded-full p-2`},m.default.createElement(Rd,{className:`text-background`,style:{transform:`rotate(135deg)`}})),e||m.default.createElement(`div`,{className:`p-1.5`},m.default.createElement(`div`,{className:`size-7`})),m.default.createElement(`button`,{onClick:v,className:`bg-gray-600 hover:bg-gray-500 rounded-full p-2`},f?m.default.createElement(Bd,{className:`text-background`}):m.default.createElement(Vd,{className:`text-background`})))},Af=`data:audio/mpeg;base64,//OAZAAKQFleB6ekAQ1wBuY/QBgCPKrvm/gKxWRTnE0EMIQXBQahv37I8eRKU1//CEIWuKwQAAAAAAGAwxgOAgcggD5/AhzBAHwfB8Poyjqw/KAh//5Q5//WD/+Jw/8EAQBAEP/8EK0UlglgV41E6jhcEAQg+DgIAgcg+D4Py4Pg+/T/P/4IHP/B9/z//+UnP2f///KO5v/+UBAMIewGpMAAiUy6lHLJaBFkhKBm8ZbICRnU6goLsOKCMI+vzDekuZ4MQnRcBFk1DJuaUSA1Pv/zgmQzESGHbt/MTAES6bbIy4+IAHw1IONJ1IAUILpLbg1mOFUyLyKbVc/W+c061mKpRTnCLOoZwtzjI3WWUEbbygfrbeKTMKjdHatvlxfra+oz+ies++tupiiPybbf9Y7V/v+42ari+X3pIJA8EH+Pf4J+GGrQyigJIoYufF9Zd7ZkXhW1aCp4LUhcoi0QoHiZQQYnlqRaq/vtUmr//9b6ljVNv46P8i8NFnX////////o/9v/UoAAHEBPFLWA1mhYbjhEmVK6g0z2FMiDU1Yr//OCZBoPuXldL+3MARCZor5f0GgAcy7/IDe7Lv613qiOG8yJdLpFTUhoDhgbmCyistm6IvC8lWutETqA2YrG5m6ItIzInwipBTH1JC1F9v1r/1fMQ1EL/DiGuXUUvoFZL6FRt9c6Oouo+ZIppOrrbf6Nf///UPk1RwAA/oF9Av46VepI2gRRcJq3yOHlH7zIgoqMki85kDqAA+PU1/mD/qNij9dP/r////k0kga//28x//O/r//////Bp9WgAFxAvWm6YFxmtq2Z4St9EG1uHGL/84JkFQ7ZdVUvbLGRDgmmwl5oDyJY87tWkV7Ll/jwqfx/fLl//bIx3X1LdvldPQygbhwDkOnMObv1nAwcL4smqSzQmjIJQn0t1stgx4YT15xyNEoI+uxfr8xISr//z+/7mI4X/PF3+a0n+lXqb//6QpJ/yW3/ucAUlgCtpdADdA3rYFtIdJC6Kiogq6nXIg21GbNUP4DeNzf8dN+kFW/yrfKOUEv9HM52Ogxv/9PQg4ASMTICdlkPu4ztOgwcBMsLDIKMxS2IgCEAIAEwqAAsK//zgmQiD/13OH9vzSwQoaKtvpnmclqU2sWQlAC9XnbNae/ywAAiT/x1N5B5dqKpgMgoAo34BA1AmQ5xBVLyMcz/UiDrBdLxqpSqAJY4kg7LqRDsJ09ecmAVVv7fWPgTlBL//zX/U6n/sl+p7f/V//+iJaxgbjAdsLwD+coHQayKTJqhxQM7NfBQMopRaKkh0hUBVf+bf5DB6RdqsXq1fzrfKVZPf7/mA4f+7/jeS/////////O1wATRvsCrWqzUdbsQABmACCYYO4RxlVpFmNcC//OCZBsPgXc2L3ttPA/pppm8BiIK+YG4DhhgGikwVrzu09EHBVFW/9WuYpPJ495aTpShacjMVXE0bGEQCyKDZi7qz3E9vUumHND2cTpszCyPaDoqTYK4j30UmJwrv/dtlLECBNlpd//9L/7/2/3pf/v//9IYZyA5EAbUcA1vLc06Rr2rDka03OGRPion1NUlkoWrsbH0ToeQB/LC1ft/mw8GaFaK4tJ9nX2mP5lWe//5HDbf/LKAGRAPWFjAZ08xqUR9gZg42CRM9SJNZIQwLaf/84JEGwvJd0jfrcQBmOrqnb9aoAPUpJyrlLm2nOZ4VqOugJcO2kqs3MCIAHlrfppfXIcLiNDdAsGKRjRME10+cNn2Wm3//3Gl//+v/////////7KNRSq18AFIAt+6MBnT1NUleGwqBEYE9Dk0YVa8P6w5v9SfH+c13bCsDRQKJeTMy+QwUoBoBKZuh//yHC5iocXaiM8O3dNS0VDqJJ9CgfFJh+R40TUz6KKfoilf//1f/////////0SCq0gAHD+Gw2f1+fyEGBcbvg/9C2IgPP/zgmQVD1DLYy7M4AEQUZbaWYxQAoy10ApYLJAcQWShJZV2g4R1GXVKF7WeLEvyi9fqRWU5SNgCARtArpSFvwS9Em/wLhYnF343eoGa6p7UNQP8OSyX6593/y/+Wvw3/7r50ks5hQ///dcTf87//qJ6o///wwDjv/+imMFC0CBMJi0AC04nm84XQzMAqSD4j4k2WU73H4/L7qphURZOBknwFAtNGBn39v///mGTPqLH+R0f//////////5dp1VZUj3NocDd28meTIGoykBMqhVf//OCZBUO6SlcAM3QABBi3tgBimgAq0OjEJVF+EYQgAgeVgWBqWFsAMrEAUEiyQF6osJqBnGwtxqUh6HYQYhxjNCuaJMRQkjxOlkoGSjc626RiS5xIsjYmCCnH2aoL3HznjO6lu05osqlV7/bS5R3/5h/+d/Zr/q60ALigKAbgOupD6RsJdYoZLgO0eSQEIbLAm5rWyaK/fdS7LX/pIPJ5BRXx/PfH1O9f6////////////Uc//5n/kUQAfSzTpKDJbGCyqetHhkUWGPBuUAZklv/84JkGA1dLU4D7lABDvMSzl/NaAHVPzDurONSxElKhkBN+BEQAHvA5g0MYksTRtLJeMRoLSROldb0zVFFFvKNaU2RbSU9NLRHSL4njVFLrNbf/R+///b//lArPSXTzE0UTWefdPf/1cBbUBKgigLhaL6jMGYvDAn6SkL7KJLROsTQhAsktqs29vqVf///5NIiT///6X///////////////k00akABEHKDh4AfmagmgkqqQ5vOhgTJEKBSCobVWeonWuf3cB8wp4/OtVMtfYHUz//zgmQtDJVRVR9o6KsNWxa6NpgF5gz/Czqh+h00WOb1es1L38o5VlxT/80Cpn6kZ2d/QAJ51TmO9+n//+KnyTOZyQIw1GQXUM9cT5JIACkDKEAYPqEVDoGIcePOYHkbXke1jjlgBNiwmruy3qnE6/b/+r/6Itrf//9H///////hHiUgE2B206/gN37FuMOOEBh/QqHBCg7sMrlE3SNVltf9bZT3V2AZc0owhAGgKza5b2rl3ebaJCc1D1zhCLpvk2UsaYgKfv1EABZR//r/gtal//OCZE8MyYtVH23ngw1jFtr+UAXmSz+qf///hYtrTyyKhtW2f9fS///9wkPUgNopDejuAnG27BC0xTBGG4Xw1IuFz0ZQllv6t7/Fw1v6+kr/8XBf/v+v+d9v/////+LxF6JAAZC5FLOAIajr4UL4JSjsUafApPAQDKwtOKdzkNZCB7//TYLW44z7OHDMR4aHIXezcI72NKeG3lzsAoxHlt8qTw1jGaXN2o1UtMFPLH2t6YLJ3+t/Mf1R3PS0UPW1/2//1k8dHposrVus2okQAH3/84Jkbw2RN08fbe2FDoMSyl45lEqA7qZeIB9QUC993NWAxucXdbgMjrfebPlRDV2DwT5utPdxUf/42//r/r///3//6mf////////yWhAACcK3d+EAynIHgRa4sAgYQ51qLxhyBYqDKAqGQ3JIylI3efw7gkNYxnomwUYBTEvMBDLhTNQxOTaXTjMLg57vRGkDiaLszkQpWOk02BUkdBPpdQsQyIpfX9T/zFq9/////1jSUX////6wApaAHcrsKB9j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`;function jf({id:e,stream:t,mirror:n,className:r,muted:i,...a},o){let s=m.useRef(null),c=m.useMemo(()=>e??`stream-${Yu()}`,[e]),l=typeof i==`boolean`?i:!1,u=n?`scale-x-[-1]`:``;return m.useImperativeHandle(o,()=>s.current||{},[]),m.useEffect(()=>{if(s.current&&t){s.current.srcObject=t;let e=()=>{try{s.current?.play()}catch(e){console.error(`Error playing video:`,e)}};s.current.onloadedmetadata=()=>{queueMicrotask(e)}}},[t]),t?m.createElement(`video`,{ref:s,id:c,autoPlay:!0,playsInline:!0,muted:l,...a,className:R(`size-full object-contain`,u,r)}):null}var Mf=m.forwardRef(jf);Mf.displayName=`StreamView`;function Nf({muted:e,mirror:t,...n},r){let i=typeof e==`boolean`?e:!0,a=typeof t==`boolean`?t:!0;return m.createElement(Mf,{ref:r,muted:i,mirror:a,...n})}var Pf=m.forwardRef(Nf);Pf.displayName=`LocalStreamView`;function Ff({muted:e,mirror:t,...n},r){let i=typeof e==`boolean`?e:!1,a=typeof t==`boolean`?t:!1;return m.createElement(Mf,{ref:r,muted:i,mirror:a,...n})}var If=m.forwardRef(Ff);If.displayName=`RemoteStreamView`;function Lf({element:e,pipElement:t,navElement:n,hideIconElement:r,showIconElement:i,fullscreenButtonProps:a,fullscreenButtonIconProps:o,pipProps:s,pipButtonProps:c,pipButtonIconProps:l,...u},d){let f=m.useRef(null),[p,h]=m.useState(!1),[g,_]=m.useState(!1),v=m.useCallback(async()=>{let e=f.current;if(e)try{document.fullscreenElement?(await document.exitFullscreen(),h(!1),_(!1)):(await e.requestFullscreen(),h(!0),_(!0))}catch(e){console.error(`Fullscreen error:`,e)}},[]),y=m.useCallback(()=>{t&&_(e=>!e)},[t]);return m.useImperativeHandle(d,()=>({...f.current||{},isFullscreen:p,isPictureInPicture:g,toggleFullscreen:v,togglePictureInPicture:y}),[p,g,v,y]),m.useEffect(()=>{let e=()=>{h(!!document.fullscreenElement),_(!!document.fullscreenElement)};return document.addEventListener(`fullscreenchange`,e),()=>document.removeEventListener(`fullscreenchange`,e)},[]),m.createElement(`div`,{ref:f,...u,className:R(`relative flex items-center justify-center size-full`,u?.className)},e,m.createElement(`button`,{onClick:v,...a,className:R(`absolute top-2 right-2 p-1 rounded-md bg-black/50 text-white hover:bg-black/80 z-10 shadow-xs shadow-white/25`,a?.className)},p?r||m.createElement(Md,o):i||m.createElement(kd,o)),m.createElement(`div`,{className:`absolute size-full p-2 flex flex-col justify-end items-center`},p&&t&&m.createElement(`div`,{className:`relative size-full flex items-end justify-end`},g&&m.createElement(`div`,{...s,className:R(`max-w-1/4 max-h-1/4 aspect-4/3 overflow-hidden rounded-md shadow-md shadow-white/25`,s?.className)},t),m.createElement(`button`,{onClick:y,...c,className:R(`absolute bottom-2 right-2 p-1 rounded-md bg-black/50 text-white hover:bg-black/80 z-10 shadow-xs shadow-white/25`,c?.className)},m.createElement(zd,l))),p&&n))}var Rf=m.forwardRef(Lf);Rf.displayName=`FullscreenStreamView`;var zf=()=>{let{t:e}=nt(),t=ua(Af),{users:n,activeCall:r,participantsIds:i,remoteStreams:a,localStream:o,activeCallRejectData:s,activeMedia:c}=gr(),l=(0,m.useRef)(!1),u=(0,m.useMemo)(()=>i.reduce((e,t)=>(a[t]&&(e[t]=a[t]),e),{}),[i,a]);return(0,m.useEffect)(()=>{l.current&&!r&&t.play(),l.current=!!r},[r,t]),(0,m.useEffect)(()=>{if(r&&s){let{userID:t}=s,r=ci(t?n[t]:null);pf.info(e(`RejectedCall`,{name:r}))}},[r,s,n,e]),r?m.default.createElement(`div`,{className:`fixed flex flex-col items-center justify-center inset-0 z-101 bg-black/85 size-full p-4`},m.default.createElement(`div`,{className:`flex-1 flex items-center justify-center h-[calc(100%-6.5em)]`},m.default.createElement(`div`,{className:`flex flex-col items-center justify-center gap-2 bg-gray-800 p-2 rounded-lg my-2 max-h-full max-w-[calc((100vh-6.5em)*2/3)]`},Object.entries(u).map(([e,t])=>m.default.createElement(`div`,{className:`flex items-center justify-center bg-black rounded-md overflow-hidden h-[calc(50%-1.5em)]`,key:`${e}-stream`},m.default.createElement(Rf,{element:m.default.createElement(If,{id:`${e}-stream`,stream:t}),pipElement:m.default.createElement(Pf,{id:`pip-local-stream`,stream:o,mirror:c===Bn.USER}),navElement:m.default.createElement(kf,null)}))),m.default.createElement(`div`,{className:`flex items-center justify-center bg-black rounded-sm overflow-hidden h-[calc(50%-1.5em)]`,key:`local-stream`},m.default.createElement(Pf,{id:`main-local-stream`,stream:o,mirror:c===Bn.USER})))),m.default.createElement(kf,null)):null},Bf=`data:audio/mpeg;base64,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rJpI//qybELr/4AH24jD5nqAANHQ+P3O0ABc1bE1ubyAAmErqj8y8AGHXJrQ8rb/+bRQoYMFiyafzIlLi+v//g68ykh0EDSh0aqreLDO1Bv//+ZRAXILKg5cs2FhoYmmvLxdF7f///10jyIKLLOFskDQUW+0qp7PKaO////+quokxRUCQ7SE6luJF1bMqrW6XHV3/////+CX2dR+HTmnmfhy31h7eNbLuO9f+P///////LKSbv0csp6Wjllyrbn5RrXcd///r+73//////////+7N+xrG3nU3etnP/aozAyB5BmBnBmD4XDYXDYbBYcdihmk/xb9rder/jBiiBfkQgf4WwSNTOf5KBxForYML/jjPk/jwlgxW7/8sBK14vReIU72uP/+r2F8qHjff1hW3///GaVAxq1yUEGtN+uP///AlnjvIcWd5jcGurfOP///+3QXN+wVcXN4+i/ec6tj///////s8OBM6fwH0z+WFEiP60Vv7qhMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//qybJ0CAA/wAABpBwAACAAADSDgAAEAAAGkAAAAIAAANIAAAARMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy45OS41VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV`,Vf=()=>{let{t:e}=nt(),{users:t,fetchUserById:n,acceptCall:r,rejectCall:i,incomingCall:a,incomingCallStopData:o,resetSessionData:s}=gr(),{sendAcceptCall:c,sendRejectCall:l}=ma(),u=ua(Bf),d=e(`IncomingCall`),[f,p]=(0,m.useState)(d),h=()=>{u.stop(),r(),c()},g=(0,m.useCallback)(()=>{u.stop(),i(),l(a?.initiatorID)},[a,u,i,l]),_=(0,m.useCallback)(async(e=0)=>ci(t[e]??await n(e,!0)),[t,n]),v=(0,m.useCallback)(async()=>{let t=d;if(a){let n=await _(a.initiatorID),r=a.callType===tn.CallType.VIDEO?`IncomingVideoCall`:`IncomingAudioCall`;t=e(r,{name:n})}queueMicrotask(()=>p(t))},[e,a,d,_]),y=(0,m.useCallback)(async()=>{if(o){let{userID:t}=o,n=await _(t);pf.info(e(`MissedCall`,{name:n})),s(Vn.ON_STOP_CALLING)}},[e,o,_,s]);return(0,m.useEffect)(()=>{v()},[v]),(0,m.useEffect)(()=>{y()},[y]),(0,m.useEffect)(()=>{a?u.play(!0):u.stop()},[a,u]),a?m.default.createElement(`div`,{className:`bg-black/50 fixed inset-0 z-101 flex items-center justify-center`},m.default.createElement(`div`,{className:`bg-white p-4 rounded-lg shadow-xl text-center`},m.default.createElement(`h2`,{className:`text-xl font-bold mb-4`},f),m.default.createElement(`div`,{className:`flex justify-center gap-2`},m.default.createElement(`button`,{onClick:h,className:`flex flex-row gap-2 items-center bg-green-500 hover:bg-green-600 px-3 py-2 rounded-full text-background`},m.default.createElement(`span`,{className:`font-bold`},e(`Accept`)),m.default.createElement(Rd,{className:`size-5`})),m.default.createElement(`button`,{onClick:g,className:`flex flex-row gap-2 items-center bg-red-500 hover:bg-red-600 px-3 py-2 rounded-full text-background`},m.default.createElement(`span`,{className:`font-bold`},e(`Reject`)),m.default.createElement(Ld,{className:`size-5`}))))):null},Hf=()=>{let{activeCall:e,incomingCall:t}=gr();return e?m.createElement(zf,null):t?m.createElement(Vf,null):null},Uf=`/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--tw-scrollbar-thumb:#0000;--tw-scrollbar-track:#0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-green-200:oklch(92.5% .084 155.995);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-950:oklch(28.2% .091 267.935);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-black:#000;--color-white:#fff;--spacing:.25em;--container-sm:24rem;--container-lg:32em;--text-xs:.75em;--text-xs--line-height:calc(1 / .75);--text-sm:.875em;--text-sm--line-height:calc(1.25 / .875);--text-base:1em;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125em;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-6xl:3.75em;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-widest:.1em;--radius-xs:.125em;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--text-2xl:1.5em;--radius:.625em;--radius-2xl:1em}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}button:not(:disabled),[role=button]:not(:disabled),[data-slot=button]:not(:disabled){cursor:pointer}@supports ((-moz-appearance:none)){*{scrollbar-color:initial;scrollbar-width:initial}}}@layer components;@layer utilities{.\\@container\\/card-header{container:card-header/inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.-top-2{top:calc(var(--spacing) * -2)}.-top-px{top:-1px}.top-0{top:0}.top-0\\.5{top:calc(var(--spacing) * .5)}.top-1{top:var(--spacing)}.top-1\\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-4{top:calc(var(--spacing) * 4)}.top-\\[50\\%\\]{top:50%}.right-0{right:0}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-\\[calc\\(100\\%-1em\\)\\]{right:calc(100% - 1em)}.bottom-0{bottom:0}.bottom-1{bottom:var(--spacing)}.bottom-2{bottom:calc(var(--spacing) * 2)}.bottom-3{bottom:calc(var(--spacing) * 3)}.bottom-13{bottom:calc(var(--spacing) * 13)}.bottom-16{bottom:calc(var(--spacing) * 16)}.left-0{left:0}.left-0\\.5{left:calc(var(--spacing) * .5)}.left-1\\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-5{left:calc(var(--spacing) * 5)}.left-\\[50\\%\\]{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-101{z-index:101}.z-\\[50\\]{z-index:50}.col-span-1{grid-column:span 1/span 1}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-2{margin:calc(var(--spacing) * 2)}.m-4{margin:calc(var(--spacing) * 4)}.m-8{margin:calc(var(--spacing) * 8)}.mx-1{margin-inline:var(--spacing)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing)}.my-2{margin-block:calc(var(--spacing) * 2)}.my-5{margin-block:calc(var(--spacing) * 5)}.-mt-px{margin-top:-1px}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-3{margin-right:calc(var(--spacing) * 3)}.mr-12{margin-right:calc(var(--spacing) * 12)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-px{margin-bottom:1px}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.ml-9{margin-left:calc(var(--spacing) * 9)}.ml-12{margin-left:calc(var(--spacing) * 12)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.flex\\!{display:flex!important}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.aspect-4\\/3{aspect-ratio:4/3}.aspect-square{aspect-ratio:1}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3\\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-4\\.5{width:calc(var(--spacing) * 4.5);height:calc(var(--spacing) * 4.5)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-13{width:calc(var(--spacing) * 13);height:calc(var(--spacing) * 13)}.size-\\[50px\\]{width:50px;height:50px}.size-auto{width:auto;height:auto}.size-full{width:100%;height:100%}.h-0{height:0}.h-2\\/5{height:40%}.h-3\\.5{height:calc(var(--spacing) * 3.5)}.h-3\\/5{height:60%}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-13{height:calc(var(--spacing) * 13)}.h-\\[1\\.15em\\]{height:1.15em}.h-\\[33\\%\\]{height:33%}.h-\\[150px\\]{height:150px}.h-\\[640px\\]{height:640px}.h-\\[768px\\]{height:768px}.h-\\[960px\\]{height:960px}.h-\\[calc\\(50\\%-1\\.5em\\)\\]{height:calc(50% - 1.5em)}.h-\\[calc\\(100\\%-1px\\)\\]{height:calc(100% - 1px)}.h-\\[calc\\(100\\%-4\\.25em\\)\\]{height:calc(100% - 4.25em)}.h-\\[calc\\(100\\%-6\\.5em\\)\\]{height:calc(100% - 6.5em)}.h-\\[calc\\(100\\%-7\\.25em\\)\\]{height:calc(100% - 7.25em)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\\(--radix-dropdown-menu-content-available-height\\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-1\\/4{max-height:25%}.max-h-5{max-height:calc(var(--spacing) * 5)}.max-h-24{max-height:calc(var(--spacing) * 24)}.max-h-25{max-height:calc(var(--spacing) * 25)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-\\[30px\\]{max-height:30px}.max-h-\\[50vh\\]{max-height:50vh}.max-h-\\[360px\\]{max-height:360px}.max-h-\\[calc\\(100\\%-5em\\)\\]{max-height:calc(100% - 5em)}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-5{min-height:calc(var(--spacing) * 5)}.min-h-8{min-height:calc(var(--spacing) * 8)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-\\[15px\\]{min-height:15px}.w-1\\/2{width:50%}.w-1\\/6{width:16.6667%}.w-2\\/3{width:66.6667%}.w-2\\/5{width:40%}.w-3\\/4{width:75%}.w-3\\/5{width:60%}.w-5\\/6{width:83.3333%}.w-7\\/8{width:87.5%}.w-8{width:calc(var(--spacing) * 8)}.w-\\[50\\%\\]{width:50%}.w-\\[100px\\]{width:100px}.w-\\[220px\\]{width:220px}.w-\\[360px\\]{width:360px}.w-\\[540px\\]{width:540px}.w-\\[1024px\\]{width:1024px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-1\\/4{max-width:25%}.max-w-60{max-width:calc(var(--spacing) * 60)}.max-w-72{max-width:calc(var(--spacing) * 72)}.max-w-120{max-width:calc(var(--spacing) * 120)}.max-w-\\[360px\\]{max-width:360px}.max-w-\\[calc\\(\\(100vh-6\\.5em\\)\\*2\\/3\\)\\]{max-width:calc(66.6667vh - 4.33333em)}.max-w-\\[calc\\(100\\%-1\\.5em\\)\\]{max-width:calc(100% - 1.5em)}.max-w-\\[calc\\(100\\%-2em\\)\\]{max-width:calc(100% - 2em)}.max-w-full{max-width:100%}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:0}.min-w-4{min-width:calc(var(--spacing) * 4)}.min-w-6{min-width:calc(var(--spacing) * 6)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-50{min-width:calc(var(--spacing) * 50)}.min-w-\\[8em\\]{min-width:8em}.min-w-\\[calc\\(100\\%-360px\\)\\]{min-width:calc(100% - 360px)}.flex-1{flex:1}.flex-\\[0_0_70\\%\\]{flex:0 0 70%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.origin-\\(--radix-dropdown-menu-content-transform-origin\\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\\(--radix-tooltip-content-transform-origin\\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\\[-50\\%\\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\\[-50\\%\\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\\[calc\\(-50\\%-2px\\)\\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-98{--tw-scale-x:98%;--tw-scale-y:98%;--tw-scale-z:98%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-x-\\[-1\\]{--tw-scale-x:-1;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-rows-\\[auto_auto\\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.self-center{align-self:center}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overflow-y-scroll{overflow-y:scroll}.rounded{border-radius:.25rem}.rounded-\\[2px\\]{border-radius:2px}.rounded-\\[4px\\]{border-radius:4px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-l-\\[0\\.25em\\]{border-left-style:var(--tw-border-style);border-left-width:.25em}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-600{border-color:var(--color-gray-600)}.border-green-200{border-color:var(--color-green-200)}.border-green-600{border-color:var(--color-green-600)}.border-input{border-color:var(--input)}.border-orange-600{border-color:var(--color-orange-600)}.border-primary-foreground{border-color:var(--primary-foreground)}.border-red-600{border-color:var(--color-red-600)}.border-ring{border-color:var(--ring)}.border-transparent{border-color:#0000}.border-yellow-600{border-color:var(--color-yellow-600)}.border-l-ring{border-left-color:var(--ring)}.bg-background{background-color:var(--background)}.bg-black{background-color:var(--color-black)}.bg-black\\/20{background-color:#0003}@supports (color:color-mix(in lab, red, red)){.bg-black\\/20{background-color:color-mix(in oklab, var(--color-black) 20%, transparent)}}.bg-black\\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-black\\/85{background-color:#000000d9}@supports (color:color-mix(in lab, red, red)){.bg-black\\/85{background-color:color-mix(in oklab, var(--color-black) 85%, transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-200{background-color:var(--color-blue-200)}.bg-blue-300{background-color:var(--color-blue-300)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-gray-600{background-color:var(--color-gray-600)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-600{background-color:var(--color-green-600)}.bg-muted{background-color:var(--muted)}.bg-muted-foreground{background-color:var(--muted-foreground)}.bg-muted\\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-orange-500{background-color:var(--color-orange-500)}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-600{background-color:var(--color-red-600)}.bg-red-600\\/10{background-color:#e400141a}@supports (color:color-mix(in lab, red, red)){.bg-red-600\\/10{background-color:color-mix(in oklab, var(--color-red-600) 10%, transparent)}}.bg-red-700{background-color:var(--color-red-700)}.bg-ring,.bg-ring\\/5{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.bg-ring\\/5{background-color:color-mix(in oklab, var(--ring) 5%, transparent)}}.bg-ring\\/10{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.bg-ring\\/10{background-color:color-mix(in oklab, var(--ring) 10%, transparent)}}.bg-ring\\/20{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.bg-ring\\/20{background-color:color-mix(in oklab, var(--ring) 20%, transparent)}}.bg-ring\\/25{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.bg-ring\\/25{background-color:color-mix(in oklab, var(--ring) 25%, transparent)}}.bg-ring\\/30{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.bg-ring\\/30{background-color:color-mix(in oklab, var(--ring) 30%, transparent)}}.bg-ring\\/90{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.bg-ring\\/90{background-color:color-mix(in oklab, var(--ring) 90%, transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-yellow-500{background-color:var(--color-yellow-500)}.bg-linear-to-t{--tw-gradient-position:to top}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-t{--tw-gradient-position:to top in oklab}}.bg-linear-to-t{background-image:linear-gradient(var(--tw-gradient-stops))}.from-blue-700{--tw-gradient-from:var(--color-blue-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-current{fill:currentColor}.fill-primary{fill:var(--primary)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-1{padding:var(--spacing)}.p-1\\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\\[3px\\]{padding:3px}.px-1{padding-inline:var(--spacing)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0{padding-block:0}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\\.5{padding-block:calc(var(--spacing) * 2.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-px{padding-top:1px}.pr-1\\.5{padding-right:calc(var(--spacing) * 1.5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-0\\!{padding-left:0!important}.pl-0\\.5{padding-left:calc(var(--spacing) * .5)}.pl-1{padding-left:var(--spacing)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-2\\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-8{padding-left:calc(var(--spacing) * 8)}.pl-10{padding-left:calc(var(--spacing) * 10)}.text-center{text-align:center}.text-left{text-align:left}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-background{color:var(--background)}.text-black{color:var(--color-black)}.text-blue-500{color:var(--color-blue-500)}.text-blue-600{color:var(--color-blue-600)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-foreground,.text-foreground\\/80{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\\/80{color:color-mix(in oklab, var(--foreground) 80%, transparent)}}.text-gray-300{color:var(--color-gray-300)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-muted{color:var(--muted)}.text-muted-foreground{color:var(--muted-foreground)}.text-orange-500{color:var(--color-orange-500)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-ring{color:var(--ring)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.text-yellow-500{color:var(--color-yellow-500)}.capitalize{text-transform:capitalize}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-white\\/25{--tw-shadow-color:#ffffff40}@supports (color:color-mix(in lab, red, red)){.shadow-white\\/25{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-white) 25%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-ring\\/50{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.ring-ring\\/50{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[color\\,box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-250{--tw-duration:.25s;transition-duration:.25s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.running{animation-play-state:running}.group-focus-within\\:text-ring:is(:where(.group):focus-within *){color:var(--ring)}@media (hover:hover){.group-hover\\:scale-102:is(:where(.group):hover *){--tw-scale-x:102%;--tw-scale-y:102%;--tw-scale-z:102%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\\:rotate-90:is(:where(.group):hover *){rotate:90deg}.group-hover\\:text-blue-700:is(:where(.group):hover *){color:var(--color-blue-700)}.group-hover\\:text-foreground:is(:where(.group):hover *){color:var(--foreground)}}.group-data-\\[disabled\\=true\\]\\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\\[disabled\\=true\\]\\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\\[state\\=open\\]\\:scale-110:is(:where(.group)[data-state=open] *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-data-\\[state\\=open\\]\\:rotate-90:is(:where(.group)[data-state=open] *){rotate:90deg}.peer-disabled\\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.selection\\:bg-blue-300 ::selection{background-color:var(--color-blue-300)}.selection\\:bg-blue-300::selection{background-color:var(--color-blue-300)}.selection\\:bg-primary ::selection{background-color:var(--primary)}.selection\\:bg-primary::selection{background-color:var(--primary)}.selection\\:bg-ring\\/50 ::selection{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.selection\\:bg-ring\\/50 ::selection{background-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.selection\\:bg-ring\\/50::selection{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.selection\\:bg-ring\\/50::selection{background-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.selection\\:text-blue-950 ::selection{color:var(--color-blue-950)}.selection\\:text-blue-950::selection{color:var(--color-blue-950)}.selection\\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\\:inline-flex::file-selector-button{display:inline-flex}.file\\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\\:bg-transparent::file-selector-button{background-color:#0000}.file\\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.last-of-type\\:border-b:last-of-type{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}@media (hover:hover){.hover\\:bg-accent:hover{background-color:var(--accent)}.hover\\:bg-black\\/80:hover{background-color:#000c}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-black\\/80:hover{background-color:color-mix(in oklab, var(--color-black) 80%, transparent)}}.hover\\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\\:bg-blue-100:hover{background-color:var(--color-blue-100)}.hover\\:bg-blue-500:hover{background-color:var(--color-blue-500)}.hover\\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\\:bg-destructive\\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-destructive\\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\\:bg-gray-500:hover{background-color:var(--color-gray-500)}.hover\\:bg-green-600:hover{background-color:var(--color-green-600)}.hover\\:bg-primary\\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-primary\\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}.hover\\:bg-red-600:hover{background-color:var(--color-red-600)}.hover\\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\\:bg-ring:hover,.hover\\:bg-ring\\/5:hover{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-ring\\/5:hover{background-color:color-mix(in oklab, var(--ring) 5%, transparent)}}.hover\\:bg-ring\\/10:hover{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-ring\\/10:hover{background-color:color-mix(in oklab, var(--ring) 10%, transparent)}}.hover\\:bg-ring\\/20:hover{background-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-ring\\/20:hover{background-color:color-mix(in oklab, var(--ring) 20%, transparent)}}.hover\\:bg-secondary\\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-secondary\\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\\:bg-white:hover{background-color:var(--color-white)}.hover\\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\\:text-blue-600:hover{color:var(--color-blue-600)}.hover\\:text-blue-700:hover{color:var(--color-blue-700)}.hover\\:text-gray-600:hover{color:var(--color-gray-600)}.hover\\:text-ring:hover{color:var(--ring)}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-100:hover{opacity:1}.hover\\:shadow:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\\:drop-shadow-\\[0_0_5px_\\#3b82f6aa\\]:hover{--tw-drop-shadow-size:drop-shadow(0 0 5px var(--tw-drop-shadow-color,#3b82f6aa));--tw-drop-shadow:var(--tw-drop-shadow-size);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.focus\\:bg-accent:focus{background-color:var(--accent)}.focus\\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\\:ring:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-\\[3px\\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\\:outline-ring:focus-visible{outline-color:var(--ring)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-50:disabled{opacity:.5}.has-data-\\[slot\\=card-action\\]\\:grid-cols-\\[1fr_auto\\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\\[\\>svg\\]\\:px-2\\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\\[\\>svg\\]\\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\\[\\>svg\\]\\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.data-\\[inset\\]\\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\\[state\\=active\\]\\:bg-background[data-state=active]{background-color:var(--background)}.data-\\[state\\=active\\]\\:bg-blue-200[data-state=active]{background-color:var(--color-blue-200)}.data-\\[state\\=active\\]\\:shadow-sm[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\\[state\\=checked\\]\\:translate-x-\\[calc\\(100\\%-2px\\)\\][data-state=checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[state\\=checked\\]\\:border-ring[data-state=checked]{border-color:var(--ring)}.data-\\[state\\=checked\\]\\:bg-ring[data-state=checked]{background-color:var(--ring)}.data-\\[state\\=checked\\]\\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\\[state\\=closed\\]\\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\\[state\\=open\\]\\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\\[state\\=open\\]\\:bg-accent[data-state=open]{background-color:var(--accent)}.data-\\[state\\=open\\]\\:text-accent-foreground[data-state=open]{color:var(--accent-foreground)}.data-\\[state\\=open\\]\\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\\[state\\=open\\]\\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\\[state\\=open\\]\\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked]{--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\\[state\\=unchecked\\]\\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\\[variant\\=destructive\\]\\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.data-\\[variant\\=destructive\\]\\:focus\\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}@media (width>=40rem){.sm\\:max-w-lg{max-width:var(--container-lg)}.sm\\:flex-row{flex-direction:row}.sm\\:justify-end{justify-content:flex-end}.sm\\:text-left{text-align:left}}@media (width>=48rem){.md\\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\\:border-input:is(.dark *){border-color:var(--input)}.dark\\:bg-destructive\\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-destructive\\/60:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 60%, transparent)}}.dark\\:bg-input\\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-input\\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}@media (hover:hover){.dark\\:hover\\:bg-accent\\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-accent\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}}.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\\:data-\\[state\\=active\\]\\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\\:data-\\[state\\=active\\]\\:bg-input\\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-\\[state\\=active\\]\\:bg-input\\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\\:data-\\[state\\=active\\]\\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\\:data-\\[state\\=checked\\]\\:bg-primary-foreground:is(.dark *)[data-state=checked]{background-color:var(--primary-foreground)}.dark\\:data-\\[state\\=checked\\]\\:bg-ring:is(.dark *)[data-state=checked]{background-color:var(--ring)}.dark\\:data-\\[state\\=unchecked\\]\\:bg-foreground:is(.dark *)[data-state=unchecked]{background-color:var(--foreground)}.dark\\:data-\\[state\\=unchecked\\]\\:bg-input\\/80:is(.dark *)[data-state=unchecked]{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-\\[state\\=unchecked\\]\\:bg-input\\/80:is(.dark *)[data-state=unchecked]{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:size-5 svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_svg\\:not\\(\\[class\\*\\=size-\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\\[\\&_svg\\:not\\(\\[class\\*\\=text-\\]\\)\\]\\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\\[\\.border-b\\]\\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\\[\\.border-t\\]\\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}:is(.data-\\[variant\\=destructive\\]\\:\\*\\:\\[svg\\]\\:\\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)!important}.\\[\\&\\>svg\\]\\:pointer-events-none>svg{pointer-events:none}.\\[\\&\\>svg\\]\\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}@media (hover:hover){a.\\[a\\&\\]\\:hover\\:bg-accent:hover{background-color:var(--accent)}a.\\[a\\&\\]\\:hover\\:bg-destructive\\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){a.\\[a\\&\\]\\:hover\\:bg-destructive\\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}a.\\[a\\&\\]\\:hover\\:bg-primary\\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){a.\\[a\\&\\]\\:hover\\:bg-primary\\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}a.\\[a\\&\\]\\:hover\\:bg-secondary\\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){a.\\[a\\&\\]\\:hover\\:bg-secondary\\/90:hover{background-color:color-mix(in oklab, var(--secondary) 90%, transparent)}}a.\\[a\\&\\]\\:hover\\:text-accent-foreground:hover{color:var(--accent-foreground)}}*,:after,:before,::backdrop{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*,:after,:before,::backdrop{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}*,:after,:before,::backdrop{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--foreground)}:is(*) *{font-family:inherit;font-size:inherit;font-weight:inherit;font-style:inherit;line-height:inherit;color:inherit}:is(:is(*) .overflow-auto,:is(*) .overflow-x-auto,:is(*) .overflow-y-auto,:is(*) .overflow-scroll,:is(*) .overflow-x-scroll,:is(*) .overflow-y-scroll)::-webkit-scrollbar-track{background-color:var(--scrollbar-track);border-radius:var(--scrollbar-track-radius)}:is(:is(*) .overflow-auto,:is(*) .overflow-x-auto,:is(*) .overflow-y-auto,:is(*) .overflow-scroll,:is(*) .overflow-x-scroll,:is(*) .overflow-y-scroll)::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--scrollbar-thumb-radius)}:is(:is(*) .overflow-auto,:is(*) .overflow-x-auto,:is(*) .overflow-y-auto,:is(*) .overflow-scroll,:is(*) .overflow-x-scroll,:is(*) .overflow-y-scroll)::-webkit-scrollbar-corner{background-color:var(--scrollbar-corner);border-radius:var(--scrollbar-corner-radius)}@supports ((-moz-appearance:none)){:is(*) .overflow-auto,:is(*) .overflow-x-auto,:is(*) .overflow-y-auto,:is(*) .overflow-scroll,:is(*) .overflow-x-scroll,:is(*) .overflow-y-scroll{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb,initial) var(--scrollbar-track,initial)}}:is(:is(*) .overflow-auto,:is(*) .overflow-x-auto,:is(*) .overflow-y-auto,:is(*) .overflow-scroll,:is(*) .overflow-x-scroll,:is(*) .overflow-y-scroll)::-webkit-scrollbar{width:8px;height:8px;display:block}:is(*) .overflow-auto,:is(*) .overflow-x-auto,:is(*) .overflow-y-auto,:is(*) .overflow-scroll,:is(*) .overflow-x-scroll,:is(*) .overflow-y-scroll{scrollbar-width:thin;--tw-scrollbar-thumb:var(--color-gray-300);--tw-scrollbar-track:var(--color-gray-100);scrollbar-color:var(--tw-scrollbar-thumb) var(--tw-scrollbar-track);--scrollbar-thumb:oklch(87.2% .01 258.338);--scrollbar-thumb-radius:9999px;--scrollbar-track:oklch(96.7% .003 264.542);--scrollbar-track-radius:9999px}:is(:is(*) .overflow-auto,:is(*) .overflow-x-auto,:is(*) .overflow-y-auto,:is(*) .overflow-scroll,:is(*) .overflow-x-scroll,:is(*) .overflow-y-scroll)::-webkit-scrollbar-thumb:hover{--tw-scrollbar-thumb:var(--color-gray-400);scrollbar-color:var(--tw-scrollbar-thumb) var(--tw-scrollbar-track)}:is(:is(*) .overflow-auto,:is(*) .overflow-x-auto,:is(*) .overflow-y-auto,:is(*) .overflow-scroll,:is(*) .overflow-x-scroll,:is(*) .overflow-y-scroll)::-webkit-scrollbar-thumb:hover{--scrollbar-thumb:oklch(70.7% .022 261.325)}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:host{--background:oklch(100% 0 0);--foreground:oklch(14.1% .005 285.823);--card:oklch(100% 0 0);--card-foreground:oklch(14.1% .005 285.823);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.1% .005 285.823);--primary:oklch(21% .006 285.885);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(96.7% .001 286.375);--secondary-foreground:oklch(21% .006 285.885);--muted:oklch(96.7% .001 286.375);--muted-foreground:oklch(55.2% .016 285.938);--accent:oklch(96.7% .001 286.375);--accent-foreground:oklch(21% .006 285.885);--destructive:oklch(57.7% .245 27.325);--border:oklch(92% .004 286.32);--input:oklch(92% .004 286.32);--ring:oklch(62.3% .214 259.815);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.1% .005 285.823);--sidebar-primary:oklch(21% .006 285.885);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(96.7% .001 286.375);--sidebar-accent-foreground:oklch(21% .006 285.885);--sidebar-border:oklch(92% .004 286.32);--sidebar-ring:oklch(70.5% .015 286.067)}.dark{--background:oklch(14.1% .005 285.823);--foreground:oklch(98.5% 0 0);--card:oklch(21% .006 285.885);--card-foreground:oklch(98.5% 0 0);--popover:oklch(21% .006 285.885);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92% .004 286.32);--primary-foreground:oklch(21% .006 285.885);--secondary:oklch(27.4% .006 286.033);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(27.4% .006 286.033);--muted-foreground:oklch(70.5% .015 286.067);--accent:oklch(27.4% .006 286.033);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.2% 1 213.938);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(21% .006 285.885);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(27.4% .006 286.033);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.2% .016 285.938)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scrollbar-thumb{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-scrollbar-track{syntax:"<color>";inherits:false;initial-value:#0000}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}`,Wf=({children:e})=>{let t=oa(e=>e.setShadowRoot),r=m.useRef(null),i=m.useRef(null),[a,o]=m.useState(null);return m.useEffect(()=>{if(i.current&&!r.current){let e=new CSSStyleSheet;e.replaceSync(at(Uf)),r.current=i.current.attachShadow({mode:`open`}),r.current.adoptedStyleSheets=[e],t(r.current)}},[]),m.useEffect(()=>{r.current&&o((0,n.createPortal)(e,r.current))},[e]),m.createElement(`div`,{"data-connectycube-chat-widget-wrapper":`size-full`},m.createElement(Of,null),m.createElement(`div`,{ref:i,"data-connectycube-chat-widget-wrapper":`size-full`},a))},Gf=({children:e,embedded:t=!1,style:n={}})=>{let[r,i,a]=Gt($t(e=>[e.opened,e.splitView,e.singleView])),o=m.useMemo(()=>window?.matchMedia(`(pointer: coarse)`).matches??!1,[]),s=m.useMemo(()=>({fontSize:ct,fontWeight:`400`,...n}),[n]),c=m.useMemo(()=>Wu(`overflow-hidden flex flex-col items-center justify-center text-center bg-gray-800 text-black border border-gray-300`,t?`relative`:r?`fixed`:`hidden`,t?``:`bottom-16 right-3`,t?`w-full`:i?`w-[1024px]`:a?`w-[360px]`:`w-[540px]`,t?`h-full`:i?`h-[768px]`:a?`h-[640px]`:`h-[960px]`,t?``:`max-h-[calc(100%-5em)]`,t?``:`max-w-[calc(100%-1.5em)]`,t?``:`rounded-lg shadow-lg z-[50]`),[t,i,r,a]),l=m.useCallback(e=>{t||(e?document.body.setAttribute(st.FOCUSED,`lock-scroll`):document.body.removeAttribute(st.FOCUSED))},[t]),u=m.useCallback(()=>{o||l(!0)},[l,o]),d=m.useCallback(()=>{o||l(!1)},[l,o]);return m.useEffect(()=>{o&&l(r)},[l,o,r]),m.useEffect(()=>{let e=new CSSStyleSheet;e.replaceSync(`
      body[${st.FOCUSED}='lock-scroll'] {
        overflow: hidden;
      }
      [${st.WRAPPER}='size-full'] {
        width: 100%;
        height: 100%;
        font-size: ${n.fontSize??`15px`};
        font-weight: ${n.fontWeight??`400`};
      }
    `),document.adoptedStyleSheets=[...document.adoptedStyleSheets,e]},[]),m.createElement(`div`,{onMouseEnter:u,onMouseLeave:d,className:c,style:s},e)},Kf={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},qf=m.default.createContext&&m.default.createContext(Kf),Jf=[`attr`,`size`,`title`];function Yf(e,t){if(e==null)return{};var n,r,i=Xf(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function Xf(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function Zf(){return Zf=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Zf.apply(null,arguments)}function Qf(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function $f(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?Qf(Object(n),!0).forEach(function(t){ep(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Qf(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function ep(e,t,n){return(t=tp(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function tp(e){var t=np(e,`string`);return typeof t==`symbol`?t:t+``}function np(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function rp(e){return e&&e.map((e,t)=>m.default.createElement(e.tag,$f({key:t},e.attr),rp(e.child)))}function ip(e){return t=>m.default.createElement(ap,Zf({attr:$f({},e.attr)},t),rp(e.child))}function ap(e){var t=t=>{var n=e.attr,r=e.size,i=e.title,a=Yf(e,Jf),o=r||t.size||`1em`,s;return t.className&&(s=t.className),e.className&&(s=(s?s+` `:``)+e.className),m.default.createElement(`svg`,Zf({stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`},t.attr,n,a,{className:s,style:$f($f({color:e.color||t.color},t.style),e.style),height:o,width:o,xmlns:`http://www.w3.org/2000/svg`}),i&&m.default.createElement(`title`,null,i),e.children)};return qf===void 0?t(Kf):m.default.createElement(qf.Consumer,null,e=>t(e))}function op(e){return ip({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M312 372c-7.7 0-14 6.3-14 14 0 9.9-8.1 18-18 18H94c-9.9 0-18-8.1-18-18V126c0-9.9 8.1-18 18-18h186c9.9 0 18 8.1 18 18 0 7.7 6.3 14 14 14s14-6.3 14-14c0-25.4-20.6-46-46-46H94c-25.4 0-46 20.6-46 46v260c0 25.4 20.6 46 46 46h186c25.4 0 46-20.6 46-46 0-7.7-6.3-14-14-14z`},child:[]},{tag:`path`,attr:{d:`M372.9 158.1c-2.6-2.6-6.1-4.1-9.9-4.1-3.7 0-7.3 1.4-9.9 4.1-5.5 5.5-5.5 14.3 0 19.8l65.2 64.2H162c-7.7 0-14 6.3-14 14s6.3 14 14 14h256.6L355 334.2c-5.4 5.4-5.4 14.3 0 19.8l.1.1c2.7 2.5 6.2 3.9 9.8 3.9 3.8 0 7.3-1.4 9.9-4.1l82.6-82.4c4.3-4.3 6.5-9.3 6.5-14.7 0-5.3-2.3-10.3-6.5-14.5l-84.5-84.2z`},child:[]}]})(e)}function sp(e){return ip({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M217.9 256L345 129c9.4-9.4 9.4-24.6 0-33.9-9.4-9.4-24.6-9.3-34 0L167 239c-9.1 9.1-9.3 23.7-.7 33.1L310.9 417c4.7 4.7 10.9 7 17 7s12.3-2.3 17-7c9.4-9.4 9.4-24.6 0-33.9L217.9 256z`},child:[]}]})(e)}var cp=`Avatar`,[lp,up]=Ta(cp),dp=[0,()=>void 0],[fp,pp]=lp(cp),mp=m.forwardRef((e,t)=>{let{__scopeAvatar:n,...r}=e,[i,a]=m.useState(`idle`),[o,s]=xp();return(0,P.jsx)(fp,{scope:n,imageLoadingStatus:i,setImageLoadingStatus:a,imageCount:o,setImageCount:s,children:(0,P.jsx)(Qa.span,{...r,ref:t})})});mp.displayName=cp;var hp=`AvatarImage`,gp=m.forwardRef((e,t)=>{let{__scopeAvatar:n,src:r,onLoadingStatusChange:i,...a}=e,o=pp(hp,n);Sp(o.setImageCount);let s=yp(r,{referrerPolicy:a.referrerPolicy,crossOrigin:a.crossOrigin,loadingStatus:o.imageLoadingStatus,setLoadingStatus:o.setImageLoadingStatus}),c=eo(e=>{i?.(e)}),l=m.useRef(s);return Aa(()=>{let e=l.current;l.current=s,s!==e&&c(s)},[s,c]),s===`loaded`?(0,P.jsx)(Qa.img,{...a,ref:t,src:r}):null});gp.displayName=hp;var _p=`AvatarFallback`,vp=m.forwardRef((e,t)=>{let{__scopeAvatar:n,delayMs:r,...i}=e,a=pp(_p,n),[o,s]=m.useState(r===void 0);return m.useEffect(()=>{if(r!==void 0){let e=window.setTimeout(()=>s(!0),r);return()=>window.clearTimeout(e)}},[r]),o&&a.imageLoadingStatus!==`loaded`?(0,P.jsx)(Qa.span,{...i,ref:t}):null});vp.displayName=_p;function yp(e,{loadingStatus:t,setLoadingStatus:n,referrerPolicy:r,crossOrigin:i}){return Aa(()=>{if(!e){n(`error`);return}let t=new window.Image,a=e=>{let t=e.currentTarget;n(bp(t))},o=()=>n(`error`);return t.addEventListener(`load`,a),t.addEventListener(`error`,o),r&&(t.referrerPolicy=r),t.crossOrigin=i??null,t.src=e,n(bp(t)),()=>{t.removeEventListener(`load`,a),t.removeEventListener(`error`,o),n(`idle`)}},[e,i,r,n]),t}function bp(e){return e.complete?e.naturalWidth>0?`loaded`:`error`:`loading`}function xp(){let e=dp;{e=m.useState(0);let[t]=e,n=m.useRef(!1);m.useEffect(()=>{t>1&&!n.current&&(n.current=!0,console.warn("Avatar: Only one `Avatar.Image` component should be rendered per `Avatar.Root`, but multiple were detected. This will lead to unexpected behavior."))},[t])}return e}function Sp(e){m.useEffect(()=>(e(e=>e+1),()=>{e(e=>e-1)}),[e])}function Cp({status:e,...t}){switch(e){case`available`:return m.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,fill:`currentColor`,viewBox:`0 0 16 16`,...t,className:R(`rounded-full size-4.5 text-green-600 bg-white`,t?.className)},m.createElement(`path`,{d:`M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z`}));case`busy`:return m.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,fill:`currentColor`,viewBox:`0 0 16 16`,...t,className:R(`rounded-full size-4.5 text-red-600 bg-white`,t?.className)},m.createElement(`path`,{d:`M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1z`}));case`away`:return m.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,fill:`currentColor`,viewBox:`0 0 16 16`,...t,className:R(`rounded-full size-4.5 text-yellow-500 bg-white`,t?.className)},m.createElement(`path`,{d:`M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8 3.5a.5.5 0 0 0-1 0V9a.5.5 0 0 0 .252.434l3.5 2a.5.5 0 0 0 .496-.868L8 8.71z`}));case`unknown`:return m.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,fill:`currentColor`,viewBox:`0 0 16 16`,...t,className:R(`rounded-full size-4.5 text-gray-500 bg-white`,t?.className)},m.createElement(`path`,{d:`M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.496 6.033h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286a.237.237 0 0 0 .241.247m2.325 6.443c.61 0 1.029-.394 1.029-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94 0 .533.425.927 1.01.927z`}));default:return null}}Cp.displayName=`PresenceBadge`;function wp({badge:e=!0,status:t,label:n,badgeProps:r,labelProps:i,...a}){let o=Xu(n||t);return m.createElement(`div`,{...a,className:R(`flex items-center gap-2`,a?.className)},e&&m.createElement(Cp,{status:t,...r}),m.createElement(`span`,i,o))}wp.displayName=`Presence`;function Tp(e){let t=e?.trim().split(/\s+/).filter(Boolean)??[];return(t.length>1?`${t[0]?.[0]}${t[1]?.[0]}`:t[0]?.slice(0,2)??`NA`).toUpperCase()}function Ep({src:e,name:t=`NA`,fallbackIconElement:n,online:r,presence:i,className:a,onlineProps:o,presenceProps:s,imageProps:c,fallbackProps:l,...u},d){let f=Tp(t);return m.createElement(mp,{ref:d,...u,className:R(`relative flex size-8 shrink-0 rounded-full`,a)},m.createElement(gp,{...c,src:e,className:R(`aspect-square size-full rounded-full overflow-hidden object-cover`,c?.className)}),m.createElement(vp,{...l,className:R(`bg-muted size-full rounded-full flex items-center justify-center`,l?.className)},n||f),r&&m.createElement(`div`,{...o,className:R(`absolute top-0 right-0 rounded-full border-2 bg-green-600 border-green-200 size-3.5`,o?.className)}),m.createElement(Cp,{status:i,...s,className:R(`absolute bottom-0 right-0`,s?.className)}))}var Dp=m.memo(m.forwardRef(Ep));Dp.displayName=`Avatar`;var Op=365.2425,kp=6048e5,Ap=864e5,jp=43200,Mp=1440,Np=3600*24;Np*7,Np*Op/12*3;var Pp=Symbol.for(`constructDateFrom`);function Fp(e,t){return typeof e==`function`?e(t):e&&typeof e==`object`&&Pp in e?e[Pp](t):e instanceof Date?new e.constructor(t):new Date(t)}function Ip(e,t){return Fp(t||e,e)}function Lp(e,t,n){return Fp(n?.in||e,+Ip(e)+t)}var Rp={};function zp(){return Rp}function Bp(e,t){let n=zp(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,i=Ip(e,t?.in),a=i.getDay(),o=(a<r?7:0)+a-r;return i.setDate(i.getDate()-o),i.setHours(0,0,0,0),i}function Vp(e,t){return Bp(e,{...t,weekStartsOn:1})}function Hp(e,t){let n=Ip(e,t?.in),r=n.getFullYear(),i=Fp(n,0);i.setFullYear(r+1,0,4),i.setHours(0,0,0,0);let a=Vp(i),o=Fp(n,0);o.setFullYear(r,0,4),o.setHours(0,0,0,0);let s=Vp(o);return n.getTime()>=a.getTime()?r+1:n.getTime()>=s.getTime()?r:r-1}function Up(e){let t=Ip(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),e-+n}function Wp(e,...t){let n=Fp.bind(null,e||t.find(e=>typeof e==`object`));return t.map(n)}function Gp(e,t){let n=Ip(e,t?.in);return n.setHours(0,0,0,0),n}function Kp(e,t,n){let[r,i]=Wp(n?.in,e,t),a=Gp(r),o=Gp(i),s=+a-Up(a),c=+o-Up(o);return Math.round((s-c)/Ap)}function qp(e,t){let n=Hp(e,t),r=Fp(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),Vp(r)}function Jp(e,t,n){return Lp(e,t*1e3,n)}function Yp(e,t){let n=Ip(e)-+Ip(t);return n<0?-1:n>0?1:n}function Xp(e){return Fp(e,Date.now())}function Zp(e,t,n){let[r,i]=Wp(n?.in,e,t);return+Gp(r)==+Gp(i)}function Qp(e){return e instanceof Date||typeof e==`object`&&Object.prototype.toString.call(e)===`[object Date]`}function $p(e){return!(!Qp(e)&&typeof e!=`number`||isNaN(+Ip(e)))}function em(e,t,n){let[r,i]=Wp(n?.in,e,t),a=r.getFullYear()-i.getFullYear(),o=r.getMonth()-i.getMonth();return a*12+o}function tm(e){return t=>{let n=(e?Math[e]:Math.trunc)(t);return n===0?0:n}}function nm(e,t){return Ip(e)-+Ip(t)}function rm(e,t){let n=Ip(e,t?.in);return n.setHours(23,59,59,999),n}function im(e,t){let n=Ip(e,t?.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function am(e,t){let n=Ip(e,t?.in);return+rm(n,t)==+im(n,t)}function om(e,t,n){let[r,i,a]=Wp(n?.in,e,e,t),o=Yp(i,a),s=Math.abs(em(i,a));if(s<1)return 0;i.getMonth()===1&&i.getDate()>27&&i.setDate(30),i.setMonth(i.getMonth()-o*s);let c=Yp(i,a)===-o;am(r)&&s===1&&Yp(r,a)===1&&(c=!1);let l=o*(s-+c);return l===0?0:l}function sm(e,t,n){let r=nm(e,t)/1e3;return tm(n?.roundingMethod)(r)}function cm(e,t){let n=Ip(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}var lm={lessThanXSeconds:{one:`less than a second`,other:`less than {{count}} seconds`},xSeconds:{one:`1 second`,other:`{{count}} seconds`},halfAMinute:`half a minute`,lessThanXMinutes:{one:`less than a minute`,other:`less than {{count}} minutes`},xMinutes:{one:`1 minute`,other:`{{count}} minutes`},aboutXHours:{one:`about 1 hour`,other:`about {{count}} hours`},xHours:{one:`1 hour`,other:`{{count}} hours`},xDays:{one:`1 day`,other:`{{count}} days`},aboutXWeeks:{one:`about 1 week`,other:`about {{count}} weeks`},xWeeks:{one:`1 week`,other:`{{count}} weeks`},aboutXMonths:{one:`about 1 month`,other:`about {{count}} months`},xMonths:{one:`1 month`,other:`{{count}} months`},aboutXYears:{one:`about 1 year`,other:`about {{count}} years`},xYears:{one:`1 year`,other:`{{count}} years`},overXYears:{one:`over 1 year`,other:`over {{count}} years`},almostXYears:{one:`almost 1 year`,other:`almost {{count}} years`}},um=(e,t,n)=>{let r,i=lm[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?`in `+r:r+` ago`:r};function dm(e){return(t={})=>{let n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}var fm={date:dm({formats:{full:`EEEE, MMMM do, y`,long:`MMMM do, y`,medium:`MMM d, y`,short:`MM/dd/yyyy`},defaultWidth:`full`}),time:dm({formats:{full:`h:mm:ss a zzzz`,long:`h:mm:ss a z`,medium:`h:mm:ss a`,short:`h:mm a`},defaultWidth:`full`}),dateTime:dm({formats:{full:`{{date}} 'at' {{time}}`,long:`{{date}} 'at' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},pm={lastWeek:`'last' eeee 'at' p`,yesterday:`'yesterday at' p`,today:`'today at' p`,tomorrow:`'tomorrow at' p`,nextWeek:`eeee 'at' p`,other:`P`},mm=(e,t,n,r)=>pm[e];function hm(e){return(t,n)=>{let r=n?.context?String(n.context):`standalone`,i;if(r===`formatting`&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=n?.width?String(n.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=n?.width?String(n.width):e.defaultWidth;i=e.values[r]||e.values[t]}let a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}var gm={ordinalNumber:(e,t)=>{let n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+`st`;case 2:return n+`nd`;case 3:return n+`rd`}return n+`th`},era:hm({values:{narrow:[`B`,`A`],abbreviated:[`BC`,`AD`],wide:[`Before Christ`,`Anno Domini`]},defaultWidth:`wide`}),quarter:hm({values:{narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Q1`,`Q2`,`Q3`,`Q4`],wide:[`1st quarter`,`2nd quarter`,`3rd quarter`,`4th quarter`]},defaultWidth:`wide`,argumentCallback:e=>e-1}),month:hm({values:{narrow:[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],wide:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`]},defaultWidth:`wide`}),day:hm({values:{narrow:[`S`,`M`,`T`,`W`,`T`,`F`,`S`],short:[`Su`,`Mo`,`Tu`,`We`,`Th`,`Fr`,`Sa`],abbreviated:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],wide:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`]},defaultWidth:`wide`}),dayPeriod:hm({values:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`}},defaultWidth:`wide`,formattingValues:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`}},defaultFormattingWidth:`wide`})};function _m(e){return(t,n={})=>{let r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;let o=a[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?ym(s,e=>e.test(o)):vm(s,e=>e.test(o)),l;l=e.valueCallback?e.valueCallback(c):c,l=n.valueCallback?n.valueCallback(l):l;let u=t.slice(o.length);return{value:l,rest:u}}}function vm(e,t){for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function ym(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function bm(e){return(t,n={})=>{let r=t.match(e.matchPattern);if(!r)return null;let i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;let s=t.slice(i.length);return{value:o,rest:s}}}var xm={code:`en-US`,formatDistance:um,formatLong:fm,formatRelative:mm,localize:gm,match:{ordinalNumber:bm({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:_m({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:`any`}),quarter:_m({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:_m({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:`any`}),day:_m({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:`any`}),dayPeriod:_m({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:`any`})},options:{weekStartsOn:0,firstWeekContainsDate:1}};function Sm(e,t){let n=Ip(e,t?.in);return Kp(n,cm(n))+1}function Cm(e,t){let n=Ip(e,t?.in),r=Vp(n)-+qp(n);return Math.round(r/kp)+1}function wm(e,t){let n=Ip(e,t?.in),r=n.getFullYear(),i=zp(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,o=Fp(t?.in||e,0);o.setFullYear(r+1,0,a),o.setHours(0,0,0,0);let s=Bp(o,t),c=Fp(t?.in||e,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);let l=Bp(c,t);return+n>=+s?r+1:+n>=+l?r:r-1}function Tm(e,t){let n=zp(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,i=wm(e,t),a=Fp(t?.in||e,0);return a.setFullYear(i,0,r),a.setHours(0,0,0,0),Bp(a,t)}function Em(e,t){let n=Ip(e,t?.in),r=Bp(n,t)-+Tm(n,t);return Math.round(r/kp)+1}function Dm(e,t){return(e<0?`-`:``)+Math.abs(e).toString().padStart(t,`0`)}var Om={y(e,t){let n=e.getFullYear(),r=n>0?n:1-n;return Dm(t===`yy`?r%100:r,t.length)},M(e,t){let n=e.getMonth();return t===`M`?String(n+1):Dm(n+1,2)},d(e,t){return Dm(e.getDate(),t.length)},a(e,t){let n=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.toUpperCase();case`aaa`:return n;case`aaaaa`:return n[0];default:return n===`am`?`a.m.`:`p.m.`}},h(e,t){return Dm(e.getHours()%12||12,t.length)},H(e,t){return Dm(e.getHours(),t.length)},m(e,t){return Dm(e.getMinutes(),t.length)},s(e,t){return Dm(e.getSeconds(),t.length)},S(e,t){let n=t.length,r=e.getMilliseconds();return Dm(Math.trunc(r*10**(n-3)),t.length)}},km={am:`am`,pm:`pm`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},Am={G:function(e,t,n){let r=+(e.getFullYear()>0);switch(t){case`G`:case`GG`:case`GGG`:return n.era(r,{width:`abbreviated`});case`GGGGG`:return n.era(r,{width:`narrow`});default:return n.era(r,{width:`wide`})}},y:function(e,t,n){if(t===`yo`){let t=e.getFullYear(),r=t>0?t:1-t;return n.ordinalNumber(r,{unit:`year`})}return Om.y(e,t)},Y:function(e,t,n,r){let i=wm(e,r),a=i>0?i:1-i;return t===`YY`?Dm(a%100,2):t===`Yo`?n.ordinalNumber(a,{unit:`year`}):Dm(a,t.length)},R:function(e,t){return Dm(Hp(e),t.length)},u:function(e,t){return Dm(e.getFullYear(),t.length)},Q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`Q`:return String(r);case`QQ`:return Dm(r,2);case`Qo`:return n.ordinalNumber(r,{unit:`quarter`});case`QQQ`:return n.quarter(r,{width:`abbreviated`,context:`formatting`});case`QQQQQ`:return n.quarter(r,{width:`narrow`,context:`formatting`});default:return n.quarter(r,{width:`wide`,context:`formatting`})}},q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`q`:return String(r);case`qq`:return Dm(r,2);case`qo`:return n.ordinalNumber(r,{unit:`quarter`});case`qqq`:return n.quarter(r,{width:`abbreviated`,context:`standalone`});case`qqqqq`:return n.quarter(r,{width:`narrow`,context:`standalone`});default:return n.quarter(r,{width:`wide`,context:`standalone`})}},M:function(e,t,n){let r=e.getMonth();switch(t){case`M`:case`MM`:return Om.M(e,t);case`Mo`:return n.ordinalNumber(r+1,{unit:`month`});case`MMM`:return n.month(r,{width:`abbreviated`,context:`formatting`});case`MMMMM`:return n.month(r,{width:`narrow`,context:`formatting`});default:return n.month(r,{width:`wide`,context:`formatting`})}},L:function(e,t,n){let r=e.getMonth();switch(t){case`L`:return String(r+1);case`LL`:return Dm(r+1,2);case`Lo`:return n.ordinalNumber(r+1,{unit:`month`});case`LLL`:return n.month(r,{width:`abbreviated`,context:`standalone`});case`LLLLL`:return n.month(r,{width:`narrow`,context:`standalone`});default:return n.month(r,{width:`wide`,context:`standalone`})}},w:function(e,t,n,r){let i=Em(e,r);return t===`wo`?n.ordinalNumber(i,{unit:`week`}):Dm(i,t.length)},I:function(e,t,n){let r=Cm(e);return t===`Io`?n.ordinalNumber(r,{unit:`week`}):Dm(r,t.length)},d:function(e,t,n){return t===`do`?n.ordinalNumber(e.getDate(),{unit:`date`}):Om.d(e,t)},D:function(e,t,n){let r=Sm(e);return t===`Do`?n.ordinalNumber(r,{unit:`dayOfYear`}):Dm(r,t.length)},E:function(e,t,n){let r=e.getDay();switch(t){case`E`:case`EE`:case`EEE`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`EEEEE`:return n.day(r,{width:`narrow`,context:`formatting`});case`EEEEEE`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},e:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`e`:return String(a);case`ee`:return Dm(a,2);case`eo`:return n.ordinalNumber(a,{unit:`day`});case`eee`:return n.day(i,{width:`abbreviated`,context:`formatting`});case`eeeee`:return n.day(i,{width:`narrow`,context:`formatting`});case`eeeeee`:return n.day(i,{width:`short`,context:`formatting`});default:return n.day(i,{width:`wide`,context:`formatting`})}},c:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`c`:return String(a);case`cc`:return Dm(a,t.length);case`co`:return n.ordinalNumber(a,{unit:`day`});case`ccc`:return n.day(i,{width:`abbreviated`,context:`standalone`});case`ccccc`:return n.day(i,{width:`narrow`,context:`standalone`});case`cccccc`:return n.day(i,{width:`short`,context:`standalone`});default:return n.day(i,{width:`wide`,context:`standalone`})}},i:function(e,t,n){let r=e.getDay(),i=r===0?7:r;switch(t){case`i`:return String(i);case`ii`:return Dm(i,t.length);case`io`:return n.ordinalNumber(i,{unit:`day`});case`iii`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`iiiii`:return n.day(r,{width:`narrow`,context:`formatting`});case`iiiiii`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},a:function(e,t,n){let r=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`});case`aaa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`aaaaa`:return n.dayPeriod(r,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(r,{width:`wide`,context:`formatting`})}},b:function(e,t,n){let r=e.getHours(),i;switch(i=r===12?km.noon:r===0?km.midnight:r/12>=1?`pm`:`am`,t){case`b`:case`bb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`bbb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`bbbbb`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},B:function(e,t,n){let r=e.getHours(),i;switch(i=r>=17?km.evening:r>=12?km.afternoon:r>=4?km.morning:km.night,t){case`B`:case`BB`:case`BBB`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`BBBBB`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},h:function(e,t,n){if(t===`ho`){let t=e.getHours()%12;return t===0&&(t=12),n.ordinalNumber(t,{unit:`hour`})}return Om.h(e,t)},H:function(e,t,n){return t===`Ho`?n.ordinalNumber(e.getHours(),{unit:`hour`}):Om.H(e,t)},K:function(e,t,n){let r=e.getHours()%12;return t===`Ko`?n.ordinalNumber(r,{unit:`hour`}):Dm(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t===`ko`?n.ordinalNumber(r,{unit:`hour`}):Dm(r,t.length)},m:function(e,t,n){return t===`mo`?n.ordinalNumber(e.getMinutes(),{unit:`minute`}):Om.m(e,t)},s:function(e,t,n){return t===`so`?n.ordinalNumber(e.getSeconds(),{unit:`second`}):Om.s(e,t)},S:function(e,t){return Om.S(e,t)},X:function(e,t,n){let r=e.getTimezoneOffset();if(r===0)return`Z`;switch(t){case`X`:return Mm(r);case`XXXX`:case`XX`:return Nm(r);default:return Nm(r,`:`)}},x:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`x`:return Mm(r);case`xxxx`:case`xx`:return Nm(r);default:return Nm(r,`:`)}},O:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`O`:case`OO`:case`OOO`:return`GMT`+jm(r,`:`);default:return`GMT`+Nm(r,`:`)}},z:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`z`:case`zz`:case`zzz`:return`GMT`+jm(r,`:`);default:return`GMT`+Nm(r,`:`)}},t:function(e,t,n){return Dm(Math.trunc(e/1e3),t.length)},T:function(e,t,n){return Dm(+e,t.length)}};function jm(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=Math.trunc(r/60),a=r%60;return a===0?n+String(i):n+String(i)+t+Dm(a,2)}function Mm(e,t){return e%60==0?(e>0?`-`:`+`)+Dm(Math.abs(e)/60,2):Nm(e,t)}function Nm(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=Dm(Math.trunc(r/60),2),a=Dm(r%60,2);return n+i+t+a}var Pm=(e,t)=>{switch(e){case`P`:return t.date({width:`short`});case`PP`:return t.date({width:`medium`});case`PPP`:return t.date({width:`long`});default:return t.date({width:`full`})}},Fm=(e,t)=>{switch(e){case`p`:return t.time({width:`short`});case`pp`:return t.time({width:`medium`});case`ppp`:return t.time({width:`long`});default:return t.time({width:`full`})}},Im={p:Fm,P:(e,t)=>{let n=e.match(/(P+)(p+)?/)||[],r=n[1],i=n[2];if(!i)return Pm(e,t);let a;switch(r){case`P`:a=t.dateTime({width:`short`});break;case`PP`:a=t.dateTime({width:`medium`});break;case`PPP`:a=t.dateTime({width:`long`});break;default:a=t.dateTime({width:`full`});break}return a.replace(`{{date}}`,Pm(r,t)).replace(`{{time}}`,Fm(i,t))}},Lm=/^D+$/,Rm=/^Y+$/,zm=[`D`,`DD`,`YY`,`YYYY`];function Bm(e){return Lm.test(e)}function Vm(e){return Rm.test(e)}function Hm(e,t,n){let r=Um(e,t,n);if(console.warn(r),zm.includes(e))throw RangeError(r)}function Um(e,t,n){let r=e[0]===`Y`?`years`:`days of the month`;return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}var Wm=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Gm=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Km=/^'([^]*?)'?$/,qm=/''/g,Jm=/[a-zA-Z]/;function Ym(e,t,n){let r=zp(),i=n?.locale??r.locale??xm,a=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,o=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,s=Ip(e,n?.in);if(!$p(s))throw RangeError(`Invalid time value`);let c=t.match(Gm).map(e=>{let t=e[0];if(t===`p`||t===`P`){let n=Im[t];return n(e,i.formatLong)}return e}).join(``).match(Wm).map(e=>{if(e===`''`)return{isToken:!1,value:`'`};let t=e[0];if(t===`'`)return{isToken:!1,value:Xm(e)};if(Am[t])return{isToken:!0,value:e};if(t.match(Jm))throw RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}});i.localize.preprocessor&&(c=i.localize.preprocessor(s,c));let l={firstWeekContainsDate:a,weekStartsOn:o,locale:i};return c.map(r=>{if(!r.isToken)return r.value;let a=r.value;(!n?.useAdditionalWeekYearTokens&&Vm(a)||!n?.useAdditionalDayOfYearTokens&&Bm(a))&&Hm(a,t,String(e));let o=Am[a[0]];return o(s,a,i.localize,l)}).join(``)}function Xm(e){let t=e.match(Km);return t?t[1].replace(qm,`'`):e}function Zm(e,t,n){let r=zp(),i=n?.locale??r.locale??xm,a=Yp(e,t);if(isNaN(a))throw RangeError(`Invalid time value`);let o=Object.assign({},n,{addSuffix:n?.addSuffix,comparison:a}),[s,c]=Wp(n?.in,...a>0?[t,e]:[e,t]),l=sm(c,s),u=(Up(c)-Up(s))/1e3,d=Math.round((l-u)/60),f;if(d<2)return n?.includeSeconds?l<5?i.formatDistance(`lessThanXSeconds`,5,o):l<10?i.formatDistance(`lessThanXSeconds`,10,o):l<20?i.formatDistance(`lessThanXSeconds`,20,o):l<40?i.formatDistance(`halfAMinute`,0,o):l<60?i.formatDistance(`lessThanXMinutes`,1,o):i.formatDistance(`xMinutes`,1,o):d===0?i.formatDistance(`lessThanXMinutes`,1,o):i.formatDistance(`xMinutes`,d,o);if(d<45)return i.formatDistance(`xMinutes`,d,o);if(d<90)return i.formatDistance(`aboutXHours`,1,o);if(d<1440){let e=Math.round(d/60);return i.formatDistance(`aboutXHours`,e,o)}else if(d<2520)return i.formatDistance(`xDays`,1,o);else if(d<43200){let e=Math.round(d/Mp);return i.formatDistance(`xDays`,e,o)}else if(d<43200*2)return f=Math.round(d/jp),i.formatDistance(`aboutXMonths`,f,o);if(f=om(c,s),f<12){let e=Math.round(d/jp);return i.formatDistance(`xMonths`,e,o)}else{let e=f%12,t=Math.trunc(f/12);return e<3?i.formatDistance(`aboutXYears`,t,o):e<9?i.formatDistance(`overXYears`,t,o):i.formatDistance(`almostXYears`,t+1,o)}}function Qm(e,t){return Zm(e,Xp(e),t)}function $m(e,t,n){let[r,i]=Wp(n?.in,e,t);return+Bp(r,n)==+Bp(i,n)}function eh(e,t){return Zp(Fp(t?.in||e,e),Xp(t?.in||e))}function th(e,t,n){return Jp(e,-t,n)}var nh={lessThanXSeconds:{one:`أقل من ثانية`,two:`أقل من ثانيتين`,threeToTen:`أقل من {{count}} ثواني`,other:`أقل من {{count}} ثانية`},xSeconds:{one:`ثانية واحدة`,two:`ثانيتان`,threeToTen:`{{count}} ثواني`,other:`{{count}} ثانية`},halfAMinute:`نصف دقيقة`,lessThanXMinutes:{one:`أقل من دقيقة`,two:`أقل من دقيقتين`,threeToTen:`أقل من {{count}} دقائق`,other:`أقل من {{count}} دقيقة`},xMinutes:{one:`دقيقة واحدة`,two:`دقيقتان`,threeToTen:`{{count}} دقائق`,other:`{{count}} دقيقة`},aboutXHours:{one:`ساعة واحدة تقريباً`,two:`ساعتين تقريبا`,threeToTen:`{{count}} ساعات تقريباً`,other:`{{count}} ساعة تقريباً`},xHours:{one:`ساعة واحدة`,two:`ساعتان`,threeToTen:`{{count}} ساعات`,other:`{{count}} ساعة`},xDays:{one:`يوم واحد`,two:`يومان`,threeToTen:`{{count}} أيام`,other:`{{count}} يوم`},aboutXWeeks:{one:`أسبوع واحد تقريبا`,two:`أسبوعين تقريبا`,threeToTen:`{{count}} أسابيع تقريبا`,other:`{{count}} أسبوعا تقريبا`},xWeeks:{one:`أسبوع واحد`,two:`أسبوعان`,threeToTen:`{{count}} أسابيع`,other:`{{count}} أسبوعا`},aboutXMonths:{one:`شهر واحد تقريباً`,two:`شهرين تقريبا`,threeToTen:`{{count}} أشهر تقريبا`,other:`{{count}} شهرا تقريباً`},xMonths:{one:`شهر واحد`,two:`شهران`,threeToTen:`{{count}} أشهر`,other:`{{count}} شهرا`},aboutXYears:{one:`سنة واحدة تقريباً`,two:`سنتين تقريبا`,threeToTen:`{{count}} سنوات تقريباً`,other:`{{count}} سنة تقريباً`},xYears:{one:`سنة واحد`,two:`سنتان`,threeToTen:`{{count}} سنوات`,other:`{{count}} سنة`},overXYears:{one:`أكثر من سنة`,two:`أكثر من سنتين`,threeToTen:`أكثر من {{count}} سنوات`,other:`أكثر من {{count}} سنة`},almostXYears:{one:`ما يقارب سنة واحدة`,two:`ما يقارب سنتين`,threeToTen:`ما يقارب {{count}} سنوات`,other:`ما يقارب {{count}} سنة`}},rh=(e,t,n)=>{let r=nh[e],i;return i=typeof r==`string`?r:t===1?r.one:t===2?r.two:t<=10?r.threeToTen.replace(`{{count}}`,String(t)):r.other.replace(`{{count}}`,String(t)),n?.addSuffix?n.comparison&&n.comparison>0?`خلال `+i:`منذ `+i:i},ih={date:dm({formats:{full:`EEEE، do MMMM y`,long:`do MMMM y`,medium:`d MMM y`,short:`dd/MM/yyyy`},defaultWidth:`full`}),time:dm({formats:{full:`HH:mm:ss`,long:`HH:mm:ss`,medium:`HH:mm:ss`,short:`HH:mm`},defaultWidth:`full`}),dateTime:dm({formats:{full:`{{date}} 'عند الساعة' {{time}}`,long:`{{date}} 'عند الساعة' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},ah={lastWeek:`eeee 'الماضي عند الساعة' p`,yesterday:`'الأمس عند الساعة' p`,today:`'اليوم عند الساعة' p`,tomorrow:`'غدا عند الساعة' p`,nextWeek:`eeee 'القادم عند الساعة' p`,other:`P`},oh={code:`ar`,formatDistance:rh,formatLong:ih,formatRelative:e=>ah[e],localize:{ordinalNumber:e=>String(e),era:hm({values:{narrow:[`ق`,`ب`],abbreviated:[`ق.م.`,`ب.م.`],wide:[`قبل الميلاد`,`بعد الميلاد`]},defaultWidth:`wide`}),quarter:hm({values:{narrow:[`1`,`2`,`3`,`4`],abbreviated:[`ر1`,`ر2`,`ر3`,`ر4`],wide:[`الربع الأول`,`الربع الثاني`,`الربع الثالث`,`الربع الرابع`]},defaultWidth:`wide`,argumentCallback:e=>e-1}),month:hm({values:{narrow:[`ي`,`ف`,`م`,`أ`,`م`,`ي`,`ي`,`أ`,`س`,`أ`,`ن`,`د`],abbreviated:[`يناير`,`فبراير`,`مارس`,`أبريل`,`مايو`,`يونيو`,`يوليو`,`أغسطس`,`سبتمبر`,`أكتوبر`,`نوفمبر`,`ديسمبر`],wide:[`يناير`,`فبراير`,`مارس`,`أبريل`,`مايو`,`يونيو`,`يوليو`,`أغسطس`,`سبتمبر`,`أكتوبر`,`نوفمبر`,`ديسمبر`]},defaultWidth:`wide`}),day:hm({values:{narrow:[`ح`,`ن`,`ث`,`ر`,`خ`,`ج`,`س`],short:[`أحد`,`اثنين`,`ثلاثاء`,`أربعاء`,`خميس`,`جمعة`,`سبت`],abbreviated:[`أحد`,`اثنين`,`ثلاثاء`,`أربعاء`,`خميس`,`جمعة`,`سبت`],wide:[`الأحد`,`الاثنين`,`الثلاثاء`,`الأربعاء`,`الخميس`,`الجمعة`,`السبت`]},defaultWidth:`wide`}),dayPeriod:hm({values:{narrow:{am:`ص`,pm:`م`,morning:`الصباح`,noon:`الظهر`,afternoon:`بعد الظهر`,evening:`المساء`,night:`الليل`,midnight:`منتصف الليل`},abbreviated:{am:`ص`,pm:`م`,morning:`الصباح`,noon:`الظهر`,afternoon:`بعد الظهر`,evening:`المساء`,night:`الليل`,midnight:`منتصف الليل`},wide:{am:`ص`,pm:`م`,morning:`الصباح`,noon:`الظهر`,afternoon:`بعد الظهر`,evening:`المساء`,night:`الليل`,midnight:`منتصف الليل`}},defaultWidth:`wide`,formattingValues:{narrow:{am:`ص`,pm:`م`,morning:`في الصباح`,noon:`الظهر`,afternoon:`بعد الظهر`,evening:`في المساء`,night:`في الليل`,midnight:`منتصف الليل`},abbreviated:{am:`ص`,pm:`م`,morning:`في الصباح`,noon:`الظهر`,afternoon:`بعد الظهر`,evening:`في المساء`,night:`في الليل`,midnight:`منتصف الليل`},wide:{am:`ص`,pm:`م`,morning:`في الصباح`,noon:`الظهر`,afternoon:`بعد الظهر`,evening:`في المساء`,night:`في الليل`,midnight:`منتصف الليل`}},defaultFormattingWidth:`wide`})},match:{ordinalNumber:bm({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:_m({matchPatterns:{narrow:/[قب]/,abbreviated:/[قب]\.م\./,wide:/(قبل|بعد) الميلاد/},defaultMatchWidth:`wide`,parsePatterns:{any:[/قبل/,/بعد/]},defaultParseWidth:`any`}),quarter:_m({matchPatterns:{narrow:/^[1234]/i,abbreviated:/ر[1234]/,wide:/الربع (الأول|الثاني|الثالث|الرابع)/},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:_m({matchPatterns:{narrow:/^[أيفمسند]/,abbreviated:/^(يناير|فبراير|مارس|أبريل|مايو|يونيو|يوليو|أغسطس|سبتمبر|أكتوبر|نوفمبر|ديسمبر)/,wide:/^(يناير|فبراير|مارس|أبريل|مايو|يونيو|يوليو|أغسطس|سبتمبر|أكتوبر|نوفمبر|ديسمبر)/},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^ي/i,/^ف/i,/^م/i,/^أ/i,/^م/i,/^ي/i,/^ي/i,/^أ/i,/^س/i,/^أ/i,/^ن/i,/^د/i],any:[/^يناير/i,/^فبراير/i,/^مارس/i,/^أبريل/i,/^مايو/i,/^يونيو/i,/^يوليو/i,/^أغسطس/i,/^سبتمبر/i,/^أكتوبر/i,/^نوفمبر/i,/^ديسمبر/i]},defaultParseWidth:`any`}),day:_m({matchPatterns:{narrow:/^[حنثرخجس]/i,short:/^(أحد|اثنين|ثلاثاء|أربعاء|خميس|جمعة|سبت)/i,abbreviated:/^(أحد|اثنين|ثلاثاء|أربعاء|خميس|جمعة|سبت)/i,wide:/^(الأحد|الاثنين|الثلاثاء|الأربعاء|الخميس|الجمعة|السبت)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^ح/i,/^ن/i,/^ث/i,/^ر/i,/^خ/i,/^ج/i,/^س/i],wide:[/^الأحد/i,/^الاثنين/i,/^الثلاثاء/i,/^الأربعاء/i,/^الخميس/i,/^الجمعة/i,/^السبت/i],any:[/^أح/i,/^اث/i,/^ث/i,/^أر/i,/^خ/i,/^ج/i,/^س/i]},defaultParseWidth:`any`}),dayPeriod:_m({matchPatterns:{narrow:/^(ص|م|منتصف الليل|الظهر|بعد الظهر|في الصباح|في المساء|في الليل)/,any:/^(ص|م|منتصف الليل|الظهر|بعد الظهر|في الصباح|في المساء|في الليل)/},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^ص/,pm:/^م/,midnight:/منتصف الليل/,noon:/الظهر/,afternoon:/بعد الظهر/,morning:/في الصباح/,evening:/في المساء/,night:/في الليل/}},defaultParseWidth:`any`})},options:{weekStartsOn:6,firstWeekContainsDate:1}},sh={lessThanXSeconds:{one:`λιγότερο από ένα δευτερόλεπτο`,other:`λιγότερο από {{count}} δευτερόλεπτα`},xSeconds:{one:`1 δευτερόλεπτο`,other:`{{count}} δευτερόλεπτα`},halfAMinute:`μισό λεπτό`,lessThanXMinutes:{one:`λιγότερο από ένα λεπτό`,other:`λιγότερο από {{count}} λεπτά`},xMinutes:{one:`1 λεπτό`,other:`{{count}} λεπτά`},aboutXHours:{one:`περίπου 1 ώρα`,other:`περίπου {{count}} ώρες`},xHours:{one:`1 ώρα`,other:`{{count}} ώρες`},xDays:{one:`1 ημέρα`,other:`{{count}} ημέρες`},aboutXWeeks:{one:`περίπου 1 εβδομάδα`,other:`περίπου {{count}} εβδομάδες`},xWeeks:{one:`1 εβδομάδα`,other:`{{count}} εβδομάδες`},aboutXMonths:{one:`περίπου 1 μήνας`,other:`περίπου {{count}} μήνες`},xMonths:{one:`1 μήνας`,other:`{{count}} μήνες`},aboutXYears:{one:`περίπου 1 χρόνο`,other:`περίπου {{count}} χρόνια`},xYears:{one:`1 χρόνο`,other:`{{count}} χρόνια`},overXYears:{one:`πάνω από 1 χρόνο`,other:`πάνω από {{count}} χρόνια`},almostXYears:{one:`περίπου 1 χρόνο`,other:`περίπου {{count}} χρόνια`}},ch=(e,t,n)=>{let r,i=sh[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,String(t)),n?.addSuffix?n.comparison&&n.comparison>0?`σε `+r:r+` πριν`:r},lh={date:dm({formats:{full:`EEEE, d MMMM y`,long:`d MMMM y`,medium:`d MMM y`,short:`d/M/yy`},defaultWidth:`full`}),time:dm({formats:{full:`h:mm:ss a zzzz`,long:`h:mm:ss a z`,medium:`h:mm:ss a`,short:`h:mm a`},defaultWidth:`full`}),dateTime:dm({formats:{full:`{{date}} - {{time}}`,long:`{{date}} - {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},uh={lastWeek:e=>{switch(e.getDay()){case 6:return`'το προηγούμενο' eeee 'στις' p`;default:return`'την προηγούμενη' eeee 'στις' p`}},yesterday:`'χθες στις' p`,today:`'σήμερα στις' p`,tomorrow:`'αύριο στις' p`,nextWeek:`eeee 'στις' p`,other:`P`},dh={code:`el`,formatDistance:ch,formatLong:lh,formatRelative:(e,t)=>{let n=uh[e];return typeof n==`function`?n(t):n},localize:{ordinalNumber:(e,t)=>{let n=Number(e),r=t?.unit,i;return i=r===`year`||r===`month`?`ος`:r===`week`||r===`dayOfYear`||r===`day`||r===`hour`||r===`date`?`η`:`ο`,n+i},era:hm({values:{narrow:[`πΧ`,`μΧ`],abbreviated:[`π.Χ.`,`μ.Χ.`],wide:[`προ Χριστού`,`μετά Χριστόν`]},defaultWidth:`wide`}),quarter:hm({values:{narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Τ1`,`Τ2`,`Τ3`,`Τ4`],wide:[`1ο τρίμηνο`,`2ο τρίμηνο`,`3ο τρίμηνο`,`4ο τρίμηνο`]},defaultWidth:`wide`,argumentCallback:e=>e-1}),month:hm({values:{narrow:[`Ι`,`Φ`,`Μ`,`Α`,`Μ`,`Ι`,`Ι`,`Α`,`Σ`,`Ο`,`Ν`,`Δ`],abbreviated:[`Ιαν`,`Φεβ`,`Μάρ`,`Απρ`,`Μάι`,`Ιούν`,`Ιούλ`,`Αύγ`,`Σεπ`,`Οκτ`,`Νοέ`,`Δεκ`],wide:[`Ιανουάριος`,`Φεβρουάριος`,`Μάρτιος`,`Απρίλιος`,`Μάιος`,`Ιούνιος`,`Ιούλιος`,`Αύγουστος`,`Σεπτέμβριος`,`Οκτώβριος`,`Νοέμβριος`,`Δεκέμβριος`]},defaultWidth:`wide`,formattingValues:{narrow:[`Ι`,`Φ`,`Μ`,`Α`,`Μ`,`Ι`,`Ι`,`Α`,`Σ`,`Ο`,`Ν`,`Δ`],abbreviated:[`Ιαν`,`Φεβ`,`Μαρ`,`Απρ`,`Μαΐ`,`Ιουν`,`Ιουλ`,`Αυγ`,`Σεπ`,`Οκτ`,`Νοε`,`Δεκ`],wide:[`Ιανουαρίου`,`Φεβρουαρίου`,`Μαρτίου`,`Απριλίου`,`Μαΐου`,`Ιουνίου`,`Ιουλίου`,`Αυγούστου`,`Σεπτεμβρίου`,`Οκτωβρίου`,`Νοεμβρίου`,`Δεκεμβρίου`]},defaultFormattingWidth:`wide`}),day:hm({values:{narrow:[`Κ`,`Δ`,`T`,`Τ`,`Π`,`Π`,`Σ`],short:[`Κυ`,`Δε`,`Τρ`,`Τε`,`Πέ`,`Πα`,`Σά`],abbreviated:[`Κυρ`,`Δευ`,`Τρί`,`Τετ`,`Πέμ`,`Παρ`,`Σάβ`],wide:[`Κυριακή`,`Δευτέρα`,`Τρίτη`,`Τετάρτη`,`Πέμπτη`,`Παρασκευή`,`Σάββατο`]},defaultWidth:`wide`}),dayPeriod:hm({values:{narrow:{am:`πμ`,pm:`μμ`,midnight:`μεσάνυχτα`,noon:`μεσημέρι`,morning:`πρωί`,afternoon:`απόγευμα`,evening:`βράδυ`,night:`νύχτα`},abbreviated:{am:`π.μ.`,pm:`μ.μ.`,midnight:`μεσάνυχτα`,noon:`μεσημέρι`,morning:`πρωί`,afternoon:`απόγευμα`,evening:`βράδυ`,night:`νύχτα`},wide:{am:`π.μ.`,pm:`μ.μ.`,midnight:`μεσάνυχτα`,noon:`μεσημέρι`,morning:`πρωί`,afternoon:`απόγευμα`,evening:`βράδυ`,night:`νύχτα`}},defaultWidth:`wide`})},match:{ordinalNumber:bm({matchPattern:/^(\d+)(ος|η|ο)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:_m({matchPatterns:{narrow:/^(πΧ|μΧ)/i,abbreviated:/^(π\.?\s?χ\.?|π\.?\s?κ\.?\s?χ\.?|μ\.?\s?χ\.?|κ\.?\s?χ\.?)/i,wide:/^(προ Χριστο(ύ|υ)|πριν απ(ό|ο) την Κοιν(ή|η) Χρονολογ(ί|ι)α|μετ(ά|α) Χριστ(ό|ο)ν|Κοιν(ή|η) Χρονολογ(ί|ι)α)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^π/i,/^(μ|κ)/i]},defaultParseWidth:`any`}),quarter:_m({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^τ[1234]/i,wide:/^[1234]ο? τρ(ί|ι)μηνο/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:_m({matchPatterns:{narrow:/^[ιφμαμιιασονδ]/i,abbreviated:/^(ιαν|φεβ|μ[άα]ρ|απρ|μ[άα][ιΐ]|ιο[ύυ]ν|ιο[ύυ]λ|α[ύυ]γ|σεπ|οκτ|νο[έε]|δεκ)/i,wide:/^(μ[άα][ιΐ]|α[ύυ]γο[υύ]στ)(ος|ου)|(ιανου[άα]ρ|φεβρου[άα]ρ|μ[άα]ρτ|απρ[ίι]λ|ιο[ύυ]ν|ιο[ύυ]λ|σεπτ[έε]μβρ|οκτ[ώω]βρ|νο[έε]μβρ|δεκ[έε]μβρ)(ιος|ίου)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^ι/i,/^φ/i,/^μ/i,/^α/i,/^μ/i,/^ι/i,/^ι/i,/^α/i,/^σ/i,/^ο/i,/^ν/i,/^δ/i],any:[/^ια/i,/^φ/i,/^μ[άα]ρ/i,/^απ/i,/^μ[άα][ιΐ]/i,/^ιο[ύυ]ν/i,/^ιο[ύυ]λ/i,/^α[ύυ]/i,/^σ/i,/^ο/i,/^ν/i,/^δ/i]},defaultParseWidth:`any`}),day:_m({matchPatterns:{narrow:/^[κδτπσ]/i,short:/^(κυ|δε|τρ|τε|π[εέ]|π[αά]|σ[αά])/i,abbreviated:/^(κυρ|δευ|τρι|τετ|πεμ|παρ|σαβ)/i,wide:/^(κυριακ(ή|η)|δευτ(έ|ε)ρα|τρ(ί|ι)τη|τετ(ά|α)ρτη|π(έ|ε)μπτη|παρασκευ(ή|η)|σ(ά|α)ββατο)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^κ/i,/^δ/i,/^τ/i,/^τ/i,/^π/i,/^π/i,/^σ/i],any:[/^κ/i,/^δ/i,/^τρ/i,/^τε/i,/^π[εέ]/i,/^π[αά]/i,/^σ/i]},defaultParseWidth:`any`}),dayPeriod:_m({matchPatterns:{narrow:/^(πμ|μμ|μεσ(ά|α)νυχτα|μεσημ(έ|ε)ρι|πρω(ί|ι)|απ(ό|ο)γευμα|βρ(ά|α)δυ|ν(ύ|υ)χτα)/i,any:/^([πμ]\.?\s?μ\.?|μεσ(ά|α)νυχτα|μεσημ(έ|ε)ρι|πρω(ί|ι)|απ(ό|ο)γευμα|βρ(ά|α)δυ|ν(ύ|υ)χτα)/i},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^πμ|π\.\s?μ\./i,pm:/^μμ|μ\.\s?μ\./i,midnight:/^μεσάν/i,noon:/^μεσημ(έ|ε)/i,morning:/πρω(ί|ι)/i,afternoon:/απ(ό|ο)γευμα/i,evening:/βρ(ά|α)δυ/i,night:/ν(ύ|υ)χτα/i}},defaultParseWidth:`any`})},options:{weekStartsOn:1,firstWeekContainsDate:4}},fh={lessThanXSeconds:{one:`menos de un segundo`,other:`menos de {{count}} segundos`},xSeconds:{one:`1 segundo`,other:`{{count}} segundos`},halfAMinute:`medio minuto`,lessThanXMinutes:{one:`menos de un minuto`,other:`menos de {{count}} minutos`},xMinutes:{one:`1 minuto`,other:`{{count}} minutos`},aboutXHours:{one:`alrededor de 1 hora`,other:`alrededor de {{count}} horas`},xHours:{one:`1 hora`,other:`{{count}} horas`},xDays:{one:`1 día`,other:`{{count}} días`},aboutXWeeks:{one:`alrededor de 1 semana`,other:`alrededor de {{count}} semanas`},xWeeks:{one:`1 semana`,other:`{{count}} semanas`},aboutXMonths:{one:`alrededor de 1 mes`,other:`alrededor de {{count}} meses`},xMonths:{one:`1 mes`,other:`{{count}} meses`},aboutXYears:{one:`alrededor de 1 año`,other:`alrededor de {{count}} años`},xYears:{one:`1 año`,other:`{{count}} años`},overXYears:{one:`más de 1 año`,other:`más de {{count}} años`},almostXYears:{one:`casi 1 año`,other:`casi {{count}} años`}},ph=(e,t,n)=>{let r,i=fh[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?`en `+r:`hace `+r:r},mh={date:dm({formats:{full:`EEEE, d 'de' MMMM 'de' y`,long:`d 'de' MMMM 'de' y`,medium:`d MMM y`,short:`dd/MM/y`},defaultWidth:`full`}),time:dm({formats:{full:`HH:mm:ss zzzz`,long:`HH:mm:ss z`,medium:`HH:mm:ss`,short:`HH:mm`},defaultWidth:`full`}),dateTime:dm({formats:{full:`{{date}} 'a las' {{time}}`,long:`{{date}} 'a las' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},hh={lastWeek:`'el' eeee 'pasado a la' p`,yesterday:`'ayer a la' p`,today:`'hoy a la' p`,tomorrow:`'mañana a la' p`,nextWeek:`eeee 'a la' p`,other:`P`},gh={lastWeek:`'el' eeee 'pasado a las' p`,yesterday:`'ayer a las' p`,today:`'hoy a las' p`,tomorrow:`'mañana a las' p`,nextWeek:`eeee 'a las' p`,other:`P`},_h={code:`es`,formatDistance:ph,formatLong:mh,formatRelative:(e,t,n,r)=>t.getHours()===1?hh[e]:gh[e],localize:{ordinalNumber:(e,t)=>Number(e)+`º`,era:hm({values:{narrow:[`AC`,`DC`],abbreviated:[`AC`,`DC`],wide:[`antes de cristo`,`después de cristo`]},defaultWidth:`wide`}),quarter:hm({values:{narrow:[`1`,`2`,`3`,`4`],abbreviated:[`T1`,`T2`,`T3`,`T4`],wide:[`1º trimestre`,`2º trimestre`,`3º trimestre`,`4º trimestre`]},defaultWidth:`wide`,argumentCallback:e=>Number(e)-1}),month:hm({values:{narrow:[`e`,`f`,`m`,`a`,`m`,`j`,`j`,`a`,`s`,`o`,`n`,`d`],abbreviated:[`ene`,`feb`,`mar`,`abr`,`may`,`jun`,`jul`,`ago`,`sep`,`oct`,`nov`,`dic`],wide:[`enero`,`febrero`,`marzo`,`abril`,`mayo`,`junio`,`julio`,`agosto`,`septiembre`,`octubre`,`noviembre`,`diciembre`]},defaultWidth:`wide`}),day:hm({values:{narrow:[`d`,`l`,`m`,`m`,`j`,`v`,`s`],short:[`do`,`lu`,`ma`,`mi`,`ju`,`vi`,`sá`],abbreviated:[`dom`,`lun`,`mar`,`mié`,`jue`,`vie`,`sáb`],wide:[`domingo`,`lunes`,`martes`,`miércoles`,`jueves`,`viernes`,`sábado`]},defaultWidth:`wide`}),dayPeriod:hm({values:{narrow:{am:`a`,pm:`p`,midnight:`mn`,noon:`md`,morning:`mañana`,afternoon:`tarde`,evening:`tarde`,night:`noche`},abbreviated:{am:`AM`,pm:`PM`,midnight:`medianoche`,noon:`mediodia`,morning:`mañana`,afternoon:`tarde`,evening:`tarde`,night:`noche`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`medianoche`,noon:`mediodia`,morning:`mañana`,afternoon:`tarde`,evening:`tarde`,night:`noche`}},defaultWidth:`wide`,formattingValues:{narrow:{am:`a`,pm:`p`,midnight:`mn`,noon:`md`,morning:`de la mañana`,afternoon:`de la tarde`,evening:`de la tarde`,night:`de la noche`},abbreviated:{am:`AM`,pm:`PM`,midnight:`medianoche`,noon:`mediodia`,morning:`de la mañana`,afternoon:`de la tarde`,evening:`de la tarde`,night:`de la noche`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`medianoche`,noon:`mediodia`,morning:`de la mañana`,afternoon:`de la tarde`,evening:`de la tarde`,night:`de la noche`}},defaultFormattingWidth:`wide`})},match:{ordinalNumber:bm({matchPattern:/^(\d+)(º)?/i,parsePattern:/\d+/i,valueCallback:function(e){return parseInt(e,10)}}),era:_m({matchPatterns:{narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,wide:/^(antes de cristo|antes de la era com[uú]n|despu[eé]s de cristo|era com[uú]n)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^ac/i,/^dc/i],wide:[/^(antes de cristo|antes de la era com[uú]n)/i,/^(despu[eé]s de cristo|era com[uú]n)/i]},defaultParseWidth:`any`}),quarter:_m({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:_m({matchPatterns:{narrow:/^[efmajsond]/i,abbreviated:/^(ene|feb|mar|abr|may|jun|jul|ago|sep|oct|nov|dic)/i,wide:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^e/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^en/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i]},defaultParseWidth:`any`}),day:_m({matchPatterns:{narrow:/^[dlmjvs]/i,short:/^(do|lu|ma|mi|ju|vi|s[áa])/i,abbreviated:/^(dom|lun|mar|mi[ée]|jue|vie|s[áa]b)/i,wide:/^(domingo|lunes|martes|mi[ée]rcoles|jueves|viernes|s[áa]bado)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^do/i,/^lu/i,/^ma/i,/^mi/i,/^ju/i,/^vi/i,/^sa/i]},defaultParseWidth:`any`}),dayPeriod:_m({matchPatterns:{narrow:/^(a|p|mn|md|(de la|a las) (mañana|tarde|noche))/i,any:/^([ap]\.?\s?m\.?|medianoche|mediodia|(de la|a las) (mañana|tarde|noche))/i},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mn/i,noon:/^md/i,morning:/mañana/i,afternoon:/tarde/i,evening:/tarde/i,night:/noche/i}},defaultParseWidth:`any`})},options:{weekStartsOn:1,firstWeekContainsDate:1}};function vh(e,t){if(e.one!==void 0&&t===1)return e.one;let n=t%10,r=t%100;return n===1&&r!==11?e.singularNominative.replace(`{{count}}`,String(t)):n>=2&&n<=4&&(r<10||r>20)?e.singularGenitive.replace(`{{count}}`,String(t)):e.pluralGenitive.replace(`{{count}}`,String(t))}function yh(e){return(t,n)=>n&&n.addSuffix?n.comparison&&n.comparison>0?e.future?vh(e.future,t):`за `+vh(e.regular,t):e.past?vh(e.past,t):vh(e.regular,t)+` тому`:vh(e.regular,t)}var bh={lessThanXSeconds:yh({regular:{one:`менше секунди`,singularNominative:`менше {{count}} секунди`,singularGenitive:`менше {{count}} секунд`,pluralGenitive:`менше {{count}} секунд`},future:{one:`менше, ніж за секунду`,singularNominative:`менше, ніж за {{count}} секунду`,singularGenitive:`менше, ніж за {{count}} секунди`,pluralGenitive:`менше, ніж за {{count}} секунд`}}),xSeconds:yh({regular:{singularNominative:`{{count}} секунда`,singularGenitive:`{{count}} секунди`,pluralGenitive:`{{count}} секунд`},past:{singularNominative:`{{count}} секунду тому`,singularGenitive:`{{count}} секунди тому`,pluralGenitive:`{{count}} секунд тому`},future:{singularNominative:`за {{count}} секунду`,singularGenitive:`за {{count}} секунди`,pluralGenitive:`за {{count}} секунд`}}),halfAMinute:(e,t)=>t&&t.addSuffix?t.comparison&&t.comparison>0?`за півхвилини`:`півхвилини тому`:`півхвилини`,lessThanXMinutes:yh({regular:{one:`менше хвилини`,singularNominative:`менше {{count}} хвилини`,singularGenitive:`менше {{count}} хвилин`,pluralGenitive:`менше {{count}} хвилин`},future:{one:`менше, ніж за хвилину`,singularNominative:`менше, ніж за {{count}} хвилину`,singularGenitive:`менше, ніж за {{count}} хвилини`,pluralGenitive:`менше, ніж за {{count}} хвилин`}}),xMinutes:yh({regular:{singularNominative:`{{count}} хвилина`,singularGenitive:`{{count}} хвилини`,pluralGenitive:`{{count}} хвилин`},past:{singularNominative:`{{count}} хвилину тому`,singularGenitive:`{{count}} хвилини тому`,pluralGenitive:`{{count}} хвилин тому`},future:{singularNominative:`за {{count}} хвилину`,singularGenitive:`за {{count}} хвилини`,pluralGenitive:`за {{count}} хвилин`}}),aboutXHours:yh({regular:{singularNominative:`близько {{count}} години`,singularGenitive:`близько {{count}} годин`,pluralGenitive:`близько {{count}} годин`},future:{singularNominative:`приблизно за {{count}} годину`,singularGenitive:`приблизно за {{count}} години`,pluralGenitive:`приблизно за {{count}} годин`}}),xHours:yh({regular:{singularNominative:`{{count}} годину`,singularGenitive:`{{count}} години`,pluralGenitive:`{{count}} годин`}}),xDays:yh({regular:{singularNominative:`{{count}} день`,singularGenitive:`{{count}} днi`,pluralGenitive:`{{count}} днів`}}),aboutXWeeks:yh({regular:{singularNominative:`близько {{count}} тижня`,singularGenitive:`близько {{count}} тижнів`,pluralGenitive:`близько {{count}} тижнів`},future:{singularNominative:`приблизно за {{count}} тиждень`,singularGenitive:`приблизно за {{count}} тижні`,pluralGenitive:`приблизно за {{count}} тижнів`}}),xWeeks:yh({regular:{singularNominative:`{{count}} тиждень`,singularGenitive:`{{count}} тижні`,pluralGenitive:`{{count}} тижнів`}}),aboutXMonths:yh({regular:{singularNominative:`близько {{count}} місяця`,singularGenitive:`близько {{count}} місяців`,pluralGenitive:`близько {{count}} місяців`},future:{singularNominative:`приблизно за {{count}} місяць`,singularGenitive:`приблизно за {{count}} місяці`,pluralGenitive:`приблизно за {{count}} місяців`}}),xMonths:yh({regular:{singularNominative:`{{count}} місяць`,singularGenitive:`{{count}} місяці`,pluralGenitive:`{{count}} місяців`}}),aboutXYears:yh({regular:{singularNominative:`близько {{count}} року`,singularGenitive:`близько {{count}} років`,pluralGenitive:`близько {{count}} років`},future:{singularNominative:`приблизно за {{count}} рік`,singularGenitive:`приблизно за {{count}} роки`,pluralGenitive:`приблизно за {{count}} років`}}),xYears:yh({regular:{singularNominative:`{{count}} рік`,singularGenitive:`{{count}} роки`,pluralGenitive:`{{count}} років`}}),overXYears:yh({regular:{singularNominative:`більше {{count}} року`,singularGenitive:`більше {{count}} років`,pluralGenitive:`більше {{count}} років`},future:{singularNominative:`більше, ніж за {{count}} рік`,singularGenitive:`більше, ніж за {{count}} роки`,pluralGenitive:`більше, ніж за {{count}} років`}}),almostXYears:yh({regular:{singularNominative:`майже {{count}} рік`,singularGenitive:`майже {{count}} роки`,pluralGenitive:`майже {{count}} років`},future:{singularNominative:`майже за {{count}} рік`,singularGenitive:`майже за {{count}} роки`,pluralGenitive:`майже за {{count}} років`}})},xh=(e,t,n)=>(n||={},bh[e](t,n)),Sh={date:dm({formats:{full:`EEEE, do MMMM y 'р.'`,long:`do MMMM y 'р.'`,medium:`d MMM y 'р.'`,short:`dd.MM.y`},defaultWidth:`full`}),time:dm({formats:{full:`H:mm:ss zzzz`,long:`H:mm:ss z`,medium:`H:mm:ss`,short:`H:mm`},defaultWidth:`full`}),dateTime:dm({formats:{full:`{{date}} 'о' {{time}}`,long:`{{date}} 'о' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},Ch=[`неділю`,`понеділок`,`вівторок`,`середу`,`четвер`,`п’ятницю`,`суботу`];function wh(e){let t=Ch[e];switch(e){case 0:case 3:case 5:case 6:return`'у минулу `+t+` о' p`;case 1:case 2:case 4:return`'у минулий `+t+` о' p`}}function Th(e){return`'у `+Ch[e]+` о' p`}function Eh(e){let t=Ch[e];switch(e){case 0:case 3:case 5:case 6:return`'у наступну `+t+` о' p`;case 1:case 2:case 4:return`'у наступний `+t+` о' p`}}var Dh={lastWeek:(e,t,n)=>{let r=Ip(e),i=r.getDay();return $m(r,t,n)?Th(i):wh(i)},yesterday:`'вчора о' p`,today:`'сьогодні о' p`,tomorrow:`'завтра о' p`,nextWeek:(e,t,n)=>{let r=Ip(e),i=r.getDay();return $m(r,t,n)?Th(i):Eh(i)},other:`P`},Oh={code:`uk`,formatDistance:xh,formatLong:Sh,formatRelative:(e,t,n,r)=>{let i=Dh[e];return typeof i==`function`?i(t,n,r):i},localize:{ordinalNumber:(e,t)=>{let n=String(t?.unit),r=Number(e),i;return i=n===`date`?r===3||r===23?`-є`:`-е`:n===`minute`||n===`second`||n===`hour`?`-а`:`-й`,r+i},era:hm({values:{narrow:[`до н.е.`,`н.е.`],abbreviated:[`до н. е.`,`н. е.`],wide:[`до нашої ери`,`нашої ери`]},defaultWidth:`wide`}),quarter:hm({values:{narrow:[`1`,`2`,`3`,`4`],abbreviated:[`1-й кв.`,`2-й кв.`,`3-й кв.`,`4-й кв.`],wide:[`1-й квартал`,`2-й квартал`,`3-й квартал`,`4-й квартал`]},defaultWidth:`wide`,argumentCallback:e=>e-1}),month:hm({values:{narrow:[`С`,`Л`,`Б`,`К`,`Т`,`Ч`,`Л`,`С`,`В`,`Ж`,`Л`,`Г`],abbreviated:[`січ.`,`лют.`,`берез.`,`квіт.`,`трав.`,`черв.`,`лип.`,`серп.`,`верес.`,`жовт.`,`листоп.`,`груд.`],wide:[`січень`,`лютий`,`березень`,`квітень`,`травень`,`червень`,`липень`,`серпень`,`вересень`,`жовтень`,`листопад`,`грудень`]},defaultWidth:`wide`,formattingValues:{narrow:[`С`,`Л`,`Б`,`К`,`Т`,`Ч`,`Л`,`С`,`В`,`Ж`,`Л`,`Г`],abbreviated:[`січ.`,`лют.`,`берез.`,`квіт.`,`трав.`,`черв.`,`лип.`,`серп.`,`верес.`,`жовт.`,`листоп.`,`груд.`],wide:[`січня`,`лютого`,`березня`,`квітня`,`травня`,`червня`,`липня`,`серпня`,`вересня`,`жовтня`,`листопада`,`грудня`]},defaultFormattingWidth:`wide`}),day:hm({values:{narrow:[`Н`,`П`,`В`,`С`,`Ч`,`П`,`С`],short:[`нд`,`пн`,`вт`,`ср`,`чт`,`пт`,`сб`],abbreviated:[`нед`,`пон`,`вів`,`сер`,`чтв`,`птн`,`суб`],wide:[`неділя`,`понеділок`,`вівторок`,`середа`,`четвер`,`п’ятниця`,`субота`]},defaultWidth:`wide`}),dayPeriod:hm({values:{narrow:{am:`ДП`,pm:`ПП`,midnight:`півн.`,noon:`пол.`,morning:`ранок`,afternoon:`день`,evening:`веч.`,night:`ніч`},abbreviated:{am:`ДП`,pm:`ПП`,midnight:`півн.`,noon:`пол.`,morning:`ранок`,afternoon:`день`,evening:`веч.`,night:`ніч`},wide:{am:`ДП`,pm:`ПП`,midnight:`північ`,noon:`полудень`,morning:`ранок`,afternoon:`день`,evening:`вечір`,night:`ніч`}},defaultWidth:`any`,formattingValues:{narrow:{am:`ДП`,pm:`ПП`,midnight:`півн.`,noon:`пол.`,morning:`ранку`,afternoon:`дня`,evening:`веч.`,night:`ночі`},abbreviated:{am:`ДП`,pm:`ПП`,midnight:`півн.`,noon:`пол.`,morning:`ранку`,afternoon:`дня`,evening:`веч.`,night:`ночі`},wide:{am:`ДП`,pm:`ПП`,midnight:`північ`,noon:`полудень`,morning:`ранку`,afternoon:`дня`,evening:`веч.`,night:`ночі`}},defaultFormattingWidth:`wide`})},match:{ordinalNumber:bm({matchPattern:/^(\d+)(-?(е|й|є|а|я))?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:_m({matchPatterns:{narrow:/^((до )?н\.?\s?е\.?)/i,abbreviated:/^((до )?н\.?\s?е\.?)/i,wide:/^(до нашої ери|нашої ери|наша ера)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^д/i,/^н/i]},defaultParseWidth:`any`}),quarter:_m({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^[1234](-?[иі]?й?)? кв.?/i,wide:/^[1234](-?[иі]?й?)? квартал/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:_m({matchPatterns:{narrow:/^[слбктчвжг]/i,abbreviated:/^(січ|лют|бер(ез)?|квіт|трав|черв|лип|серп|вер(ес)?|жовт|лис(топ)?|груд)\.?/i,wide:/^(січень|січня|лютий|лютого|березень|березня|квітень|квітня|травень|травня|червня|червень|липень|липня|серпень|серпня|вересень|вересня|жовтень|жовтня|листопад[а]?|грудень|грудня)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^с/i,/^л/i,/^б/i,/^к/i,/^т/i,/^ч/i,/^л/i,/^с/i,/^в/i,/^ж/i,/^л/i,/^г/i],any:[/^сі/i,/^лю/i,/^б/i,/^к/i,/^т/i,/^ч/i,/^лип/i,/^се/i,/^в/i,/^ж/i,/^лис/i,/^г/i]},defaultParseWidth:`any`}),day:_m({matchPatterns:{narrow:/^[нпвсч]/i,short:/^(нд|пн|вт|ср|чт|пт|сб)\.?/i,abbreviated:/^(нед|пон|вів|сер|че?тв|птн?|суб)\.?/i,wide:/^(неділ[яі]|понеділ[ок][ка]|вівтор[ок][ка]|серед[аи]|четвер(га)?|п\W*?ятниц[яі]|субот[аи])/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^н/i,/^п/i,/^в/i,/^с/i,/^ч/i,/^п/i,/^с/i],any:[/^н/i,/^п[он]/i,/^в/i,/^с[ер]/i,/^ч/i,/^п\W*?[ят]/i,/^с[уб]/i]},defaultParseWidth:`any`}),dayPeriod:_m({matchPatterns:{narrow:/^([дп]п|півн\.?|пол\.?|ранок|ранку|день|дня|веч\.?|ніч|ночі)/i,abbreviated:/^([дп]п|півн\.?|пол\.?|ранок|ранку|день|дня|веч\.?|ніч|ночі)/i,wide:/^([дп]п|північ|полудень|ранок|ранку|день|дня|вечір|вечора|ніч|ночі)/i},defaultMatchWidth:`wide`,parsePatterns:{any:{am:/^дп/i,pm:/^пп/i,midnight:/^півн/i,noon:/^пол/i,morning:/^р/i,afternoon:/^д[ен]/i,evening:/^в/i,night:/^н/i}},defaultParseWidth:`any`})},options:{weekStartsOn:1,firstWeekContainsDate:1}},kh={en:xm,el:dh,ua:Oh,es:_h,ar:oh};function Ah(e,t,n,r){if(e===0)return r;let i=kh[t]??xm,a=Qm(th(new Date,e),{locale:i,addSuffix:!0});return n?`${n} ${a}`:a}function jh({seconds:e,language:t=`en`,text:n=``,onlineText:r=`Online`,...i},a){if(e==null||typeof e!=`number`||!Number.isFinite(e))return null;let o=Ah(e,t,n,r);return m.createElement(`span`,{ref:a,...i,className:R(`text-xs text-muted-foreground`,i?.className)},o)}var Mh=m.memo(m.forwardRef(jh));Mh.displayName=`LastActivity`;function Nh(e){let t=e+`CollectionProvider`,[n,r]=Ta(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=e=>{let{scope:t,children:n}=e,r=m.useRef(null),a=m.useRef(new Map).current;return(0,P.jsx)(i,{scope:t,itemMap:a,collectionRef:r,children:n})};o.displayName=t;let s=e+`CollectionSlot`,c=Ra(s),l=m.forwardRef((e,t)=>{let{scope:n,children:r}=e,i=ka(t,a(s,n).collectionRef);return(0,P.jsx)(c,{ref:i,children:r})});l.displayName=s;let u=e+`CollectionItemSlot`,d=`data-radix-collection-item`,f=Ra(u),p=m.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=m.useRef(null),s=ka(t,o),c=a(u,n);return m.useEffect(()=>(c.itemMap.set(o,{ref:o,...i}),()=>void c.itemMap.delete(o))),(0,P.jsx)(f,{[d]:``,ref:s,children:r})});p.displayName=u;function h(t){let n=a(e+`CollectionConsumer`,t);return m.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:o,Slot:l,ItemSlot:p},h,r]}var Ph=m.createContext(void 0);function Fh(e){let t=m.useContext(Ph);return e||t||`ltr`}var Ih=[`top`,`right`,`bottom`,`left`],Lh=Math.min,Rh=Math.max,zh=Math.round,Bh=Math.floor,Vh=e=>({x:e,y:e}),Hh={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Uh(e,t,n){return Rh(e,Lh(t,n))}function Wh(e,t){return typeof e==`function`?e(t):e}function Gh(e){return e.split(`-`)[0]}function Kh(e){return e.split(`-`)[1]}function qh(e){return e===`x`?`y`:`x`}function Jh(e){return e===`y`?`height`:`width`}function Yh(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Xh(e){return qh(Yh(e))}function Zh(e,t,n){n===void 0&&(n=!1);let r=Kh(e),i=Xh(e),a=Jh(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=og(o)),[o,og(o)]}function Qh(e){let t=og(e);return[$h(e),t,$h(t)]}function $h(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var eg=[`left`,`right`],tg=[`right`,`left`],ng=[`top`,`bottom`],rg=[`bottom`,`top`];function ig(e,t,n){switch(e){case`top`:case`bottom`:return n?t?tg:eg:t?eg:tg;case`left`:case`right`:return t?ng:rg;default:return[]}}function ag(e,t,n,r){let i=Kh(e),a=ig(Gh(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map($h)))),a}function og(e){let t=Gh(e);return Hh[t]+e.slice(t.length)}function sg(e){return{top:0,right:0,bottom:0,left:0,...e}}function cg(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:sg(e)}function lg(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function ug(e,t,n){let{reference:r,floating:i}=e,a=Yh(t),o=Xh(t),s=Jh(o),c=Gh(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(Kh(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}async function dg(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=Wh(t,e),p=cg(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=lg(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=lg(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var fg=50,pg=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:dg},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=ug(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<fg&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=ug(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},mg=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=Wh(e,t)||{};if(l==null)return{};let d=cg(u),f={x:n,y:r},p=Xh(i),m=Jh(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=Lh(d[_],T),D=Lh(d[v],T),ee=E,O=C-h[m]-D,k=C/2-h[m]/2+w,A=Uh(ee,k,O),j=!c.arrow&&Kh(i)!=null&&k!==A&&a.reference[m]/2-(k<ee?E:D)-h[m]/2<0,te=j?k<ee?k-ee:k-O:0;return{[p]:f[p]+te,data:{[p]:A,centerOffset:k-A-te,...j&&{alignmentOffset:te}},reset:j}}}),hg=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=Wh(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=Gh(r),_=Yh(o),v=Gh(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[og(o)]:Qh(o)),x=p!==`none`;!d&&x&&b.push(...ag(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=Zh(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==Yh(t))||T.every(e=>Yh(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=Yh(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function gg(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function _g(e){return Ih.some(t=>e[t]>=0)}var vg=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=Wh(e,t);switch(i){case`referenceHidden`:{let e=gg(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:_g(e)}}}case`escaped`:{let e=gg(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:_g(e)}}}default:return{}}}}},yg=new Set([`left`,`top`]);async function bg(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Gh(n),s=Kh(n),c=Yh(n)===`y`,l=yg.has(o)?-1:1,u=a&&c?-1:1,d=Wh(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var xg=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await bg(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},Sg=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=Wh(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=Yh(Gh(i)),p=qh(f),m=u[p],h=u[f];if(o){let e=p===`y`?`top`:`left`,t=p===`y`?`bottom`:`right`,n=m+d[e],r=m-d[t];m=Uh(n,m,r)}if(s){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=h+d[e],r=h-d[t];h=Uh(n,h,r)}let g=c.fn({...t,[p]:m,[f]:h});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:o,[f]:s}}}}}},Cg=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=Wh(e,t),u={x:n,y:r},d=Yh(i),f=qh(d),p=u[f],m=u[d],h=Wh(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=yg.has(Gh(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},wg=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=Wh(e,t),u=await o.detectOverflow(t,l),d=Gh(i),f=Kh(i),p=Yh(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=Lh(h-u[g],v),x=Lh(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=Rh(u.left,0),t=Rh(u.right,0),n=Rh(u.top,0),r=Rh(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:Rh(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:Rh(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function Tg(){return typeof window<`u`}function Eg(e){return kg(e)?(e.nodeName||``).toLowerCase():`#document`}function Dg(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Og(e){return((kg(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function kg(e){return Tg()?e instanceof Node||e instanceof Dg(e).Node:!1}function Ag(e){return Tg()?e instanceof Element||e instanceof Dg(e).Element:!1}function jg(e){return Tg()?e instanceof HTMLElement||e instanceof Dg(e).HTMLElement:!1}function Mg(e){return!Tg()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof Dg(e).ShadowRoot}function Ng(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=Wg(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function Pg(e){return/^(table|td|th)$/.test(Eg(e))}function Fg(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var Ig=/transform|translate|scale|rotate|perspective|filter/,Lg=/paint|layout|strict|content/,Rg=e=>!!e&&e!==`none`,zg;function Bg(e){let t=Ag(e)?Wg(e):e;return Rg(t.transform)||Rg(t.translate)||Rg(t.scale)||Rg(t.rotate)||Rg(t.perspective)||!Hg()&&(Rg(t.backdropFilter)||Rg(t.filter))||Ig.test(t.willChange||``)||Lg.test(t.contain||``)}function Vg(e){let t=Kg(e);for(;jg(t)&&!Ug(t);){if(Bg(t))return t;if(Fg(t))return null;t=Kg(t)}return null}function Hg(){return zg??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),zg}function Ug(e){return/^(html|body|#document)$/.test(Eg(e))}function Wg(e){return Dg(e).getComputedStyle(e)}function Gg(e){return Ag(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Kg(e){if(Eg(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Mg(e)&&e.host||Og(e);return Mg(t)?t.host:t}function qg(e){let t=Kg(e);return Ug(t)?e.ownerDocument?e.ownerDocument.body:e.body:jg(t)&&Ng(t)?t:qg(t)}function Jg(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=qg(e),i=r===e.ownerDocument?.body,a=Dg(r);if(i){let e=Yg(a);return t.concat(a,a.visualViewport||[],Ng(r)?r:[],e&&n?Jg(e):[])}else return t.concat(r,Jg(r,[],n))}function Yg(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Xg(e){let t=Wg(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=jg(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=zh(n)!==a||zh(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Zg(e){return Ag(e)?e:e.contextElement}function Qg(e){let t=Zg(e);if(!jg(t))return Vh(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Xg(t),o=(a?zh(n.width):n.width)/r,s=(a?zh(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var $g=Vh(0);function e_(e){let t=Dg(e);return!Hg()||!t.visualViewport?$g:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function t_(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Dg(e)?!1:t}function n_(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Zg(e),o=Vh(1);t&&(r?Ag(r)&&(o=Qg(r)):o=Qg(e));let s=t_(a,n,r)?e_(a):Vh(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=Dg(a),t=r&&Ag(r)?Dg(r):r,n=e,i=Yg(n);for(;i&&r&&t!==n;){let e=Qg(i),t=i.getBoundingClientRect(),r=Wg(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=Dg(i),i=Yg(n)}}return lg({width:u,height:d,x:c,y:l})}function r_(e,t){let n=Gg(e).scrollLeft;return t?t.left+n:n_(Og(e)).left+n}function i_(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-r_(e,n),y:n.top+t.scrollTop}}function a_(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=Og(r),s=t?Fg(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=Vh(1),u=Vh(0),d=jg(r);if((d||!d&&!a)&&((Eg(r)!==`body`||Ng(o))&&(c=Gg(r)),d)){let e=n_(r);l=Qg(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?i_(o,c):Vh(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function o_(e){return Array.from(e.getClientRects())}function s_(e){let t=Og(e),n=Gg(e),r=e.ownerDocument.body,i=Rh(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=Rh(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+r_(e),s=-n.scrollTop;return Wg(r).direction===`rtl`&&(o+=Rh(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var c_=25;function l_(e,t){let n=Dg(e),r=Og(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=Hg();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=r_(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=c_&&(a-=o)}else l<=c_&&(a+=l);return{width:a,height:o,x:s,y:c}}function u_(e,t){let n=n_(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=jg(e)?Qg(e):Vh(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function d_(e,t,n){let r;if(t===`viewport`)r=l_(e,n);else if(t===`document`)r=s_(Og(e));else if(Ag(t))r=u_(t,n);else{let n=e_(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return lg(r)}function f_(e,t){let n=Kg(e);return n===t||!Ag(n)||Ug(n)?!1:Wg(n).position===`fixed`||f_(n,t)}function p_(e,t){let n=t.get(e);if(n)return n;let r=Jg(e,[],!1).filter(e=>Ag(e)&&Eg(e)!==`body`),i=null,a=Wg(e).position===`fixed`,o=a?Kg(e):e;for(;Ag(o)&&!Ug(o);){let t=Wg(o),n=Bg(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&(i.position===`absolute`||i.position===`fixed`)||Ng(o)&&!n&&f_(e,o))?r=r.filter(e=>e!==o):i=t,o=Kg(o)}return t.set(e,r),r}function m_(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?Fg(t)?[]:p_(t,this._c):[].concat(n),r],o=d_(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=d_(t,a[e],i);s=Rh(n.top,s),c=Lh(n.right,c),l=Lh(n.bottom,l),u=Rh(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function h_(e){let{width:t,height:n}=Xg(e);return{width:t,height:n}}function g_(e,t,n){let r=jg(t),i=Og(t),a=n===`fixed`,o=n_(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=Vh(0);function l(){c.x=r_(i)}if(r||!r&&!a)if((Eg(t)!==`body`||Ng(i))&&(s=Gg(t)),r){let e=n_(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?i_(i,s):Vh(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function __(e){return Wg(e).position===`static`}function v_(e,t){if(!jg(e)||Wg(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return Og(e)===n&&(n=n.ownerDocument.body),n}function y_(e,t){let n=Dg(e);if(Fg(e))return n;if(!jg(e)){let t=Kg(e);for(;t&&!Ug(t);){if(Ag(t)&&!__(t))return t;t=Kg(t)}return n}let r=v_(e,t);for(;r&&Pg(r)&&__(r);)r=v_(r,t);return r&&Ug(r)&&__(r)&&!Bg(r)?n:r||Vg(e)||n}var b_=async function(e){let t=this.getOffsetParent||y_,n=this.getDimensions,r=await n(e.floating);return{reference:g_(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function x_(e){return Wg(e).direction===`rtl`}var S_={convertOffsetParentRelativeRectToViewportRelativeRect:a_,getDocumentElement:Og,getClippingRect:m_,getOffsetParent:y_,getElementRects:b_,getClientRects:o_,getDimensions:h_,getScale:Qg,isElement:Ag,isRTL:x_};function C_(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function w_(e,t){let n=null,r,i=Og(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=Bh(d),h=Bh(i.clientWidth-(u+f)),g=Bh(i.clientHeight-(d+p)),_=Bh(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:Rh(0,Lh(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!C_(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function T_(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Zg(e),u=i||a?[...l?Jg(l):[],...t?Jg(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?w_(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?n_(e):null;c&&g();function g(){let t=n_(e);h&&!C_(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var E_=xg,D_=Sg,O_=hg,k_=wg,A_=vg,j_=mg,M_=Cg,N_=(e,t,n)=>{let r=new Map,i={platform:S_,...n},a={...i.platform,_c:r};return pg(e,t,{...i,platform:a})},P_=typeof document<`u`?m.useLayoutEffect:function(){};function F_(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!F_(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!F_(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function I_(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function L_(e,t){let n=I_(e);return Math.round(t*n)/n}function R_(e){let t=m.useRef(e);return P_(()=>{t.current=e}),t}function z_(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:r=`absolute`,middleware:i=[],platform:a,elements:{reference:o,floating:s}={},transform:c=!0,whileElementsMounted:l,open:u}=e,[d,f]=m.useState({x:0,y:0,strategy:r,placement:t,middlewareData:{},isPositioned:!1}),[p,h]=m.useState(i);F_(p,i)||h(i);let[g,_]=m.useState(null),[v,y]=m.useState(null),b=m.useCallback(e=>{e!==w.current&&(w.current=e,_(e))},[]),x=m.useCallback(e=>{e!==T.current&&(T.current=e,y(e))},[]),S=o||g,C=s||v,w=m.useRef(null),T=m.useRef(null),E=m.useRef(d),D=l!=null,ee=R_(l),O=R_(a),k=R_(u),A=m.useCallback(()=>{if(!w.current||!T.current)return;let e={placement:t,strategy:r,middleware:p};O.current&&(e.platform=O.current),N_(w.current,T.current,e).then(e=>{let t={...e,isPositioned:k.current!==!1};j.current&&!F_(E.current,t)&&(E.current=t,n.flushSync(()=>{f(t)}))})},[p,t,r,O,k]);P_(()=>{u===!1&&E.current.isPositioned&&(E.current.isPositioned=!1,f(e=>({...e,isPositioned:!1})))},[u]);let j=m.useRef(!1);P_(()=>(j.current=!0,()=>{j.current=!1}),[]),P_(()=>{if(S&&(w.current=S),C&&(T.current=C),S&&C){if(ee.current)return ee.current(S,C,A);A()}},[S,C,A,ee,D]);let te=m.useMemo(()=>({reference:w,floating:T,setReference:b,setFloating:x}),[b,x]),M=m.useMemo(()=>({reference:S,floating:C}),[S,C]),ne=m.useMemo(()=>{let e={position:r,left:0,top:0};if(!M.floating)return e;let t=L_(M.floating,d.x),n=L_(M.floating,d.y);return c?{...e,transform:`translate(`+t+`px, `+n+`px)`,...I_(M.floating)>=1.5&&{willChange:`transform`}}:{position:r,left:t,top:n}},[r,c,M.floating,d.x,d.y]);return m.useMemo(()=>({...d,update:A,refs:te,elements:M,floatingStyles:ne}),[d,A,te,M,ne])}var B_=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:j_({element:r.current,padding:i}).fn(n):r?j_({element:r,padding:i}).fn(n):{}}}},V_=(e,t)=>{let n=E_(e);return{name:n.name,fn:n.fn,options:[e,t]}},H_=(e,t)=>{let n=D_(e);return{name:n.name,fn:n.fn,options:[e,t]}},U_=(e,t)=>({fn:M_(e).fn,options:[e,t]}),W_=(e,t)=>{let n=O_(e);return{name:n.name,fn:n.fn,options:[e,t]}},G_=(e,t)=>{let n=k_(e);return{name:n.name,fn:n.fn,options:[e,t]}},K_=(e,t)=>{let n=A_(e);return{name:n.name,fn:n.fn,options:[e,t]}},q_=(e,t)=>{let n=B_(e);return{name:n.name,fn:n.fn,options:[e,t]}},J_=`Arrow`,Y_=m.forwardRef((e,t)=>{let{children:n,width:r=10,height:i=5,...a}=e;return(0,P.jsx)(Qa.svg,{...a,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,P.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})});Y_.displayName=J_;var X_=Y_;function Z_(e){let[t,n]=m.useState(void 0);return Aa(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var Q_=`Popper`,[$_,ev]=Ta(Q_),[tv,nv]=$_(Q_),rv=e=>{let{__scopePopper:t,children:n}=e,[r,i]=m.useState(null),[a,o]=m.useState(void 0);return(0,P.jsx)(tv,{scope:t,anchor:r,onAnchorChange:i,placementState:a,setPlacementState:o,children:n})};rv.displayName=Q_;var iv=`PopperAnchor`,av=m.forwardRef((e,t)=>{let{__scopePopper:n,virtualRef:r,...i}=e,a=nv(iv,n),o=m.useRef(null),s=a.onAnchorChange,c=ka(t,m.useCallback(e=>{o.current=e,e&&s(e)},[s])),l=m.useRef(null);m.useEffect(()=>{if(!r)return;let e=l.current;l.current=r.current,e!==l.current&&s(l.current)});let u=a.placementState&&hv(a.placementState),d=u?.[0],f=u?.[1];return r?null:(0,P.jsx)(Qa.div,{"data-radix-popper-side":d,"data-radix-popper-align":f,...i,ref:c})});av.displayName=iv;var ov=`PopperContent`,[sv,cv]=$_(ov),lv=m.forwardRef((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,arrowPadding:s=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d=`partial`,hideWhenDetached:f=!1,updatePositionStrategy:p=`optimized`,onPlaced:h,...g}=e,_=nv(ov,n),[v,y]=m.useState(null),b=ka(t,y),[x,S]=m.useState(null),C=Z_(x),w=C?.width??0,T=C?.height??0,E=r+(a===`center`?``:`-`+a),D=typeof u==`number`?u:{top:0,right:0,bottom:0,left:0,...u},ee=Array.isArray(l)?l:[l],O=ee.length>0,k={padding:D,boundary:ee.filter(pv),altBoundary:O},{refs:A,floatingStyles:j,placement:te,isPositioned:M,middlewareData:ne}=z_({strategy:`fixed`,placement:E,whileElementsMounted:(...e)=>T_(...e,{animationFrame:p===`always`}),elements:{reference:_.anchor},middleware:[V_({mainAxis:i+T,alignmentAxis:o}),c&&H_({mainAxis:!0,crossAxis:!1,limiter:d===`partial`?U_():void 0,...k}),c&&W_({...k}),G_({...k,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),x&&q_({element:x,padding:s}),mv({arrowWidth:w,arrowHeight:T}),f&&K_({strategy:`referenceHidden`,...k,boundary:O?k.boundary:void 0})]}),N=_.setPlacementState;Aa(()=>(N(te),()=>{N(void 0)}),[te,N]);let[re,ie]=hv(te),ae=eo(h);Aa(()=>{M&&ae?.()},[M,ae]);let oe=ne.arrow?.x,se=ne.arrow?.y,ce=ne.arrow?.centerOffset!==0,[le,ue]=m.useState();return Aa(()=>{v&&ue(window.getComputedStyle(v).zIndex)},[v]),(0,P.jsx)(`div`,{ref:A.setFloating,"data-radix-popper-content-wrapper":``,style:{...j,transform:M?j.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:le,"--radix-popper-transform-origin":[ne.transformOrigin?.x,ne.transformOrigin?.y].join(` `),...ne.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,P.jsx)(sv,{scope:n,placedSide:re,placedAlign:ie,onArrowChange:S,arrowX:oe,arrowY:se,shouldHideArrow:ce,children:(0,P.jsx)(Qa.div,{"data-side":re,"data-align":ie,...g,ref:b,style:{...g.style,animation:M?void 0:`none`}})})})});lv.displayName=ov;var uv=`PopperArrow`,dv={top:`bottom`,right:`left`,bottom:`top`,left:`right`},fv=m.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,i=cv(uv,n),a=dv[i.placedSide];return(0,P.jsx)(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:(0,P.jsx)(X_,{...r,ref:t,style:{...r.style,display:`block`}})})});fv.displayName=uv;function pv(e){return e!==null}var mv=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=hv(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}});function hv(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var gv=rv,_v=av,vv=lv,yv=fv,bv=!1;function xv(){let[e,t]=m.useState(bv);return m.useEffect(()=>{bv||(bv=!0,t(!0))},[]),e}var Sv=m.useSyncExternalStore;function Cv(){return()=>{}}function wv(){return Sv(Cv,()=>!0,()=>!1)}var Tv=typeof Sv==`function`?wv:xv,Ev=`rovingFocusGroup.onEntryFocus`,Dv={bubbles:!1,cancelable:!0},Ov=`RovingFocusGroup`,[kv,Av,jv]=Nh(Ov),[Mv,Nv]=Ta(Ov,[jv]),[Pv,Fv]=Mv(Ov),Iv=m.forwardRef((e,t)=>(0,P.jsx)(kv.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,P.jsx)(kv.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,P.jsx)(Lv,{...e,ref:t})})}));Iv.displayName=Ov;var Lv=m.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:a,currentTabStopId:o,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:c,onEntryFocus:l,preventScrollOnEntryFocus:u=!1,...d}=e,f=m.useRef(null),p=ka(t,f),h=Fh(a),[g,_]=Fa({prop:o,defaultProp:s??null,onChange:c,caller:Ov}),[v,y]=m.useState(!1),b=eo(l),x=Av(n),S=m.useRef(!1),[C,w]=m.useState(0);return m.useEffect(()=>{let e=f.current;if(e)return e.addEventListener(Ev,b),()=>e.removeEventListener(Ev,b)},[b]),(0,P.jsx)(Pv,{scope:n,orientation:r,dir:h,loop:i,currentTabStopId:g,onItemFocus:m.useCallback(e=>_(e),[_]),onItemShiftTab:m.useCallback(()=>y(!0),[]),onFocusableItemAdd:m.useCallback(()=>w(e=>e+1),[]),onFocusableItemRemove:m.useCallback(()=>w(e=>e-1),[]),children:(0,P.jsx)(Qa.div,{tabIndex:v||C===0?-1:0,"data-orientation":r,...d,ref:p,style:{outline:`none`,...e.style},onMouseDown:F(e.onMouseDown,()=>{S.current=!0}),onFocus:F(e.onFocus,e=>{let t=!S.current;if(e.target===e.currentTarget&&t&&!v){let t=new CustomEvent(Ev,Dv);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=x().filter(e=>e.focusable);Uv([e.find(e=>e.active),e.find(e=>e.id===g),...e].filter(Boolean).map(e=>e.ref.current),u)}}S.current=!1}),onBlur:F(e.onBlur,()=>y(!1))})})}),Rv=`RovingFocusGroupItem`,zv=m.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=Na(),l=a||c,u=Fv(Rv,n),d=u.currentTabStopId===l,f=Av(n),{onFocusableItemAdd:p,onFocusableItemRemove:h,currentTabStopId:g}=u,_=Tv();return Aa(()=>{if(!(!_||!r))return p(),()=>h()},[_,r,p,h]),m.useEffect(()=>{if(!(_||!r))return p(),()=>h()},[_,r,p,h]),(0,P.jsx)(kv.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,P.jsx)(Qa.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:F(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:F(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:F(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=Hv(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?Wv(n,r+1):n.slice(r+1)}setTimeout(()=>Uv(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:g!=null}):o})})});zv.displayName=Rv;var Bv={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function Vv(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function Hv(e,t,n){let r=Vv(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return Bv[r]}function Uv(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function Wv(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var Gv=Iv,Kv=zv,qv=[`Enter`,` `],Jv=[`ArrowDown`,`PageUp`,`Home`],Yv=[`ArrowUp`,`PageDown`,`End`],Xv=[...Jv,...Yv],Zv={ltr:[...qv,`ArrowRight`],rtl:[...qv,`ArrowLeft`]},Qv={ltr:[`ArrowLeft`],rtl:[`ArrowRight`]},$v=`Menu`,[ey,ty,ny]=Nh($v),[ry,iy]=Ta($v,[ny,ev,Nv]),ay=ev(),oy=Nv(),[sy,cy]=ry($v),[ly,uy]=ry($v),dy=e=>{let{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:a,modal:o=!0}=e,s=ay(t),[c,l]=m.useState(null),u=m.useRef(!1),d=eo(a),f=Fh(i);return m.useEffect(()=>{let e=()=>{u.current=!0,document.addEventListener(`pointerdown`,t,{capture:!0,once:!0}),document.addEventListener(`pointermove`,t,{capture:!0,once:!0})},t=()=>u.current=!1;return document.addEventListener(`keydown`,e,{capture:!0}),()=>{document.removeEventListener(`keydown`,e,{capture:!0}),document.removeEventListener(`pointerdown`,t,{capture:!0}),document.removeEventListener(`pointermove`,t,{capture:!0})}},[]),m.useEffect(()=>{if(!n)return;let e=()=>d(!1);return window.addEventListener(`blur`,e),()=>window.removeEventListener(`blur`,e)},[n,d]),(0,P.jsx)(gv,{...s,children:(0,P.jsx)(sy,{scope:t,open:n,onOpenChange:d,content:c,onContentChange:l,children:(0,P.jsx)(ly,{scope:t,onClose:m.useCallback(()=>d(!1),[d]),isUsingKeyboardRef:u,dir:f,modal:o,children:r})})})};dy.displayName=$v;var fy=`MenuAnchor`,py=m.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=ay(n);return(0,P.jsx)(_v,{...i,...r,ref:t})});py.displayName=fy;var my=`MenuPortal`,[hy,gy]=ry(my,{forceMount:void 0}),_y=e=>{let{__scopeMenu:t,forceMount:n,children:r,container:i}=e,a=cy(my,t);return(0,P.jsx)(hy,{scope:t,forceMount:n,children:(0,P.jsx)(Io,{present:n||a.open,children:(0,P.jsx)(Po,{asChild:!0,container:i,children:r})})})};_y.displayName=my;var vy=`MenuContent`,[yy,by]=ry(vy),xy=m.forwardRef((e,t)=>{let n=gy(vy,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=cy(vy,e.__scopeMenu),o=uy(vy,e.__scopeMenu);return(0,P.jsx)(ey.Provider,{scope:e.__scopeMenu,children:(0,P.jsx)(Io,{present:r||a.open,children:(0,P.jsx)(ey.Slot,{scope:e.__scopeMenu,children:o.modal?(0,P.jsx)(Sy,{...i,ref:t}):(0,P.jsx)(Cy,{...i,ref:t})})})})}),Sy=m.forwardRef((e,t)=>{let n=cy(vy,e.__scopeMenu),r=m.useRef(null),i=ka(t,r);return m.useEffect(()=>{let e=r.current;if(e)return lc(e)},[]),(0,P.jsx)(Ty,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:F(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),Cy=m.forwardRef((e,t)=>{let n=cy(vy,e.__scopeMenu);return(0,P.jsx)(Ty,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),wy=Ra(`MenuContent.ScrollLock`),Ty=m.forwardRef((e,t)=>{let{__scopeMenu:n,loop:r=!1,trapFocus:i,onOpenAutoFocus:a,onCloseAutoFocus:o,disableOutsidePointerEvents:s,onEntryFocus:c,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,disableOutsideScroll:h,...g}=e,_=cy(vy,n),v=uy(vy,n),y=ay(n),b=oy(n),x=ty(n),[S,C]=m.useState(null),w=m.useRef(null),T=ka(t,w,_.onContentChange),E=m.useRef(0),D=m.useRef(``),ee=m.useRef(0),O=m.useRef(null),k=m.useRef(`right`),A=m.useRef(0),j=h?ec:m.Fragment,te=h?{as:wy,allowPinchZoom:!0}:void 0,M=e=>{let t=D.current+e,n=x().filter(e=>!e.disabled),r=document.activeElement,i=n.find(e=>e.ref.current===r)?.textValue,a=lb(n.map(e=>e.textValue),t,i),o=n.find(e=>e.textValue===a)?.ref.current;(function e(t){D.current=t,window.clearTimeout(E.current),t!==``&&(E.current=window.setTimeout(()=>e(``),1e3))})(t),o&&setTimeout(()=>o.focus())};m.useEffect(()=>()=>window.clearTimeout(E.current),[]),Wo();let ne=m.useCallback(e=>k.current===O.current?.side&&db(e,O.current?.area),[]);return(0,P.jsx)(yy,{scope:n,searchRef:D,onItemEnter:m.useCallback(e=>{ne(e)&&e.preventDefault()},[ne]),onItemLeave:m.useCallback(e=>{ne(e)||(w.current?.focus(),C(null))},[ne]),onTriggerLeave:m.useCallback(e=>{ne(e)&&e.preventDefault()},[ne]),pointerGraceTimerRef:ee,onPointerGraceIntentChange:m.useCallback(e=>{O.current=e},[]),children:(0,P.jsx)(j,{...te,children:(0,P.jsx)(xo,{asChild:!0,trapped:i,onMountAutoFocus:F(a,e=>{e.preventDefault(),w.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:o,children:(0,P.jsx)(so,{asChild:!0,disableOutsidePointerEvents:s,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,children:(0,P.jsx)(Gv,{asChild:!0,...b,dir:v.dir,orientation:`vertical`,loop:r,currentTabStopId:S,onCurrentTabStopIdChange:C,onEntryFocus:F(c,e=>{v.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,P.jsx)(vv,{role:`menu`,"aria-orientation":`vertical`,"data-state":ib(_.open),"data-radix-menu-content":``,dir:v.dir,...y,...g,ref:T,style:{outline:`none`,...g.style},onKeyDown:F(g.onKeyDown,e=>{let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1;t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&M(e.key));let i=w.current;if(e.target!==i||!Xv.includes(e.key))return;e.preventDefault();let a=x().filter(e=>!e.disabled).map(e=>e.ref.current);Yv.includes(e.key)&&a.reverse(),sb(a)}),onBlur:F(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(E.current),D.current=``)}),onPointerMove:F(e.onPointerMove,fb(e=>{let t=e.target,n=A.current!==e.clientX;if(e.currentTarget.contains(t)&&n){let t=e.clientX>A.current?`right`:`left`;k.current=t,A.current=e.clientX}}))})})})})})})});xy.displayName=vy;var Ey=`MenuGroup`,Dy=m.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,P.jsx)(Qa.div,{role:`group`,...r,ref:t})});Dy.displayName=Ey;var Oy=`MenuLabel`,ky=m.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,P.jsx)(Qa.div,{...r,ref:t})});ky.displayName=Oy;var Ay=`MenuItem`,jy=`menu.itemSelect`,My=m.forwardRef((e,t)=>{let{disabled:n=!1,onSelect:r,...i}=e,a=m.useRef(null),o=uy(Ay,e.__scopeMenu),s=by(Ay,e.__scopeMenu),c=ka(t,a),l=m.useRef(!1),u=()=>{let e=a.current;if(!n&&e){let t=new CustomEvent(jy,{bubbles:!0,cancelable:!0});e.addEventListener(jy,e=>r?.(e),{once:!0}),$a(e,t),t.defaultPrevented?l.current=!1:o.onClose()}};return(0,P.jsx)(Ny,{...i,ref:c,disabled:n,onClick:F(e.onClick,u),onPointerDown:t=>{e.onPointerDown?.(t),l.current=!0},onPointerUp:F(e.onPointerUp,e=>{l.current||e.currentTarget?.click()}),onKeyDown:F(e.onKeyDown,e=>{n||e.target!==e.currentTarget||s.searchRef.current!==``&&e.key===` `||qv.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})});My.displayName=Ay;var Ny=m.forwardRef((e,t)=>{let{__scopeMenu:n,disabled:r=!1,textValue:i,...a}=e,o=by(Ay,n),s=oy(n),c=m.useRef(null),l=ka(t,c),[u,d]=m.useState(!1),[f,p]=m.useState(``);return m.useEffect(()=>{let e=c.current;e&&p((e.textContent??``).trim())},[a.children]),(0,P.jsx)(ey.ItemSlot,{scope:n,disabled:r,textValue:i??f,children:(0,P.jsx)(Kv,{asChild:!0,...s,focusable:!r,children:(0,P.jsx)(Qa.div,{role:`menuitem`,"data-highlighted":u?``:void 0,"aria-disabled":r||void 0,"data-disabled":r?``:void 0,...a,ref:l,onPointerMove:F(e.onPointerMove,fb(e=>{r?o.onItemLeave(e):(o.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:F(e.onPointerLeave,fb(e=>o.onItemLeave(e))),onFocus:F(e.onFocus,()=>d(!0)),onBlur:F(e.onBlur,()=>d(!1))})})})}),Py=`MenuCheckboxItem`,Fy=m.forwardRef((e,t)=>{let{checked:n=!1,onCheckedChange:r,...i}=e;return(0,P.jsx)(Uy,{scope:e.__scopeMenu,checked:n,children:(0,P.jsx)(My,{role:`menuitemcheckbox`,"aria-checked":ab(n)?`mixed`:n,...i,ref:t,"data-state":ob(n),onSelect:F(i.onSelect,()=>r?.(ab(n)?!0:!n),{checkForDefaultPrevented:!1})})})});Fy.displayName=Py;var Iy=`MenuRadioGroup`,[Ly,Ry]=ry(Iy,{value:void 0,onValueChange:()=>{}}),zy=m.forwardRef((e,t)=>{let{value:n,onValueChange:r,...i}=e,a=eo(r);return(0,P.jsx)(Ly,{scope:e.__scopeMenu,value:n,onValueChange:a,children:(0,P.jsx)(Dy,{...i,ref:t})})});zy.displayName=Iy;var By=`MenuRadioItem`,Vy=m.forwardRef((e,t)=>{let{value:n,...r}=e,i=Ry(By,e.__scopeMenu),a=n===i.value;return(0,P.jsx)(Uy,{scope:e.__scopeMenu,checked:a,children:(0,P.jsx)(My,{role:`menuitemradio`,"aria-checked":a,...r,ref:t,"data-state":ob(a),onSelect:F(r.onSelect,()=>i.onValueChange?.(n),{checkForDefaultPrevented:!1})})})});Vy.displayName=By;var Hy=`MenuItemIndicator`,[Uy,Wy]=ry(Hy,{checked:!1}),Gy=m.forwardRef((e,t)=>{let{__scopeMenu:n,forceMount:r,...i}=e,a=Wy(Hy,n);return(0,P.jsx)(Io,{present:r||ab(a.checked)||a.checked===!0,children:(0,P.jsx)(Qa.span,{...i,ref:t,"data-state":ob(a.checked)})})});Gy.displayName=Hy;var Ky=`MenuSeparator`,qy=m.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,P.jsx)(Qa.div,{role:`separator`,"aria-orientation":`horizontal`,...r,ref:t})});qy.displayName=Ky;var Jy=`MenuArrow`,Yy=m.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=ay(n);return(0,P.jsx)(yv,{...i,...r,ref:t})});Yy.displayName=Jy;var Xy=`MenuSub`,[Zy,Qy]=ry(Xy),$y=e=>{let{__scopeMenu:t,children:n,open:r=!1,onOpenChange:i}=e,a=cy(Xy,t),o=ay(t),[s,c]=m.useState(null),[l,u]=m.useState(null),d=eo(i);return m.useEffect(()=>(a.open===!1&&d(!1),()=>d(!1)),[a.open,d]),(0,P.jsx)(gv,{...o,children:(0,P.jsx)(sy,{scope:t,open:r,onOpenChange:d,content:l,onContentChange:u,children:(0,P.jsx)(Zy,{scope:t,contentId:Na(),triggerId:Na(),trigger:s,onTriggerChange:c,children:n})})})};$y.displayName=Xy;var eb=`MenuSubTrigger`,tb=m.forwardRef((e,t)=>{let n=cy(eb,e.__scopeMenu),r=uy(eb,e.__scopeMenu),i=Qy(eb,e.__scopeMenu),a=by(eb,e.__scopeMenu),o=m.useRef(null),{pointerGraceTimerRef:s,onPointerGraceIntentChange:c}=a,l={__scopeMenu:e.__scopeMenu},u=m.useCallback(()=>{o.current&&window.clearTimeout(o.current),o.current=null},[]);m.useEffect(()=>u,[u]),m.useEffect(()=>{let e=s.current;return()=>{window.clearTimeout(e),c(null)}},[s,c]);let d=ka(t,i.onTriggerChange);return(0,P.jsx)(py,{asChild:!0,...l,children:(0,P.jsx)(Ny,{id:i.triggerId,"aria-haspopup":`menu`,"aria-expanded":n.open,"aria-controls":n.open?i.contentId:void 0,"data-state":ib(n.open),...e,ref:d,onClick:t=>{e.onClick?.(t),!(e.disabled||t.defaultPrevented)&&(t.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:F(e.onPointerMove,fb(t=>{a.onItemEnter(t),!t.defaultPrevented&&!e.disabled&&!n.open&&!o.current&&(a.onPointerGraceIntentChange(null),o.current=window.setTimeout(()=>{n.onOpenChange(!0),u()},100))})),onPointerLeave:F(e.onPointerLeave,fb(e=>{u();let t=n.content?.getBoundingClientRect();if(t){let r=n.content?.dataset.side,i=r===`right`,o=i?-5:5,c=t[i?`left`:`right`],l=t[i?`right`:`left`];a.onPointerGraceIntentChange({area:[{x:e.clientX+o,y:e.clientY},{x:c,y:t.top},{x:l,y:t.top},{x:l,y:t.bottom},{x:c,y:t.bottom}],side:r}),window.clearTimeout(s.current),s.current=window.setTimeout(()=>a.onPointerGraceIntentChange(null),300)}else{if(a.onTriggerLeave(e),e.defaultPrevented)return;a.onPointerGraceIntentChange(null)}})),onKeyDown:F(e.onKeyDown,t=>{e.disabled||t.target!==t.currentTarget||a.searchRef.current!==``&&t.key===` `||Zv[r.dir].includes(t.key)&&(n.onOpenChange(!0),n.content?.focus(),t.preventDefault())})})})});tb.displayName=eb;var nb=`MenuSubContent`,rb=m.forwardRef((e,t)=>{let n=gy(vy,e.__scopeMenu),{forceMount:r=n.forceMount,align:i=`start`,...a}=e,o=cy(vy,e.__scopeMenu),s=uy(vy,e.__scopeMenu),c=Qy(nb,e.__scopeMenu),l=m.useRef(null),u=ka(t,l);return(0,P.jsx)(ey.Provider,{scope:e.__scopeMenu,children:(0,P.jsx)(Io,{present:r||o.open,children:(0,P.jsx)(ey.Slot,{scope:e.__scopeMenu,children:(0,P.jsx)(Ty,{id:c.contentId,"aria-labelledby":c.triggerId,...a,ref:u,align:i,side:s.dir===`rtl`?`left`:`right`,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{s.isUsingKeyboardRef.current&&l.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:F(e.onFocusOutside,e=>{e.target!==c.trigger&&o.onOpenChange(!1)}),onEscapeKeyDown:F(e.onEscapeKeyDown,e=>{s.onClose(),e.preventDefault()}),onKeyDown:F(e.onKeyDown,e=>{let t=e.currentTarget.contains(e.target),n=Qv[s.dir].includes(e.key);t&&n&&(o.onOpenChange(!1),c.trigger?.focus(),e.preventDefault())})})})})})});rb.displayName=nb;function ib(e){return e?`open`:`closed`}function ab(e){return e===`indeterminate`}function ob(e){return ab(e)?`indeterminate`:e?`checked`:`unchecked`}function sb(e){let t=document.activeElement;for(let n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function cb(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function lb(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=cb(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function ub(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function db(e,t){return t?ub({x:e.clientX,y:e.clientY},t):!1}function fb(e){return t=>t.pointerType===`mouse`?e(t):void 0}var pb=dy,mb=py,hb=_y,gb=xy,_b=Dy,vb=ky,yb=My,bb=Fy,xb=zy,Sb=Vy,Cb=Gy,wb=qy,Tb=Yy,Eb=$y,Db=tb,Ob=rb,kb=`DropdownMenu`,[Ab,jb]=Ta(kb,[iy]),Mb=iy(),[Nb,Pb]=Ab(kb),Fb=e=>{let{__scopeDropdownMenu:t,children:n,dir:r,open:i,defaultOpen:a,onOpenChange:o,modal:s=!0}=e,c=Mb(t),l=m.useRef(null),[u,d]=Fa({prop:i,defaultProp:a??!1,onChange:o,caller:kb});return(0,P.jsx)(Nb,{scope:t,triggerId:Na(),triggerRef:l,contentId:Na(),open:u,onOpenChange:d,onOpenToggle:m.useCallback(()=>d(e=>!e),[d]),modal:s,children:(0,P.jsx)(pb,{...c,open:u,onOpenChange:d,dir:r,modal:s,children:n})})};Fb.displayName=kb;var Ib=`DropdownMenuTrigger`,Lb=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,disabled:r=!1,...i}=e,a=Pb(Ib,n),o=Mb(n),s=ka(t,a.triggerRef);return(0,P.jsx)(mb,{asChild:!0,...o,children:(0,P.jsx)(Qa.button,{type:`button`,id:a.triggerId,"aria-haspopup":`menu`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,disabled:r,...i,ref:s,onPointerDown:F(e.onPointerDown,e=>{!r&&e.button===0&&e.ctrlKey===!1&&(a.onOpenToggle(),a.open||e.preventDefault())}),onKeyDown:F(e.onKeyDown,e=>{r||([`Enter`,` `].includes(e.key)&&a.onOpenToggle(),e.key===`ArrowDown`&&a.onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(e.key)&&e.preventDefault())})})})});Lb.displayName=Ib;var Rb=`DropdownMenuPortal`,zb=e=>{let{__scopeDropdownMenu:t,...n}=e,r=Mb(t);return(0,P.jsx)(hb,{...r,...n})};zb.displayName=Rb;var Bb=`DropdownMenuContent`,Vb=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Pb(Bb,n),a=Mb(n),o=m.useRef(!1);return(0,P.jsx)(gb,{id:i.contentId,"aria-labelledby":i.triggerId,...a,...r,ref:t,onCloseAutoFocus:F(e.onCloseAutoFocus,e=>{o.current||i.triggerRef.current?.focus(),o.current=!1,e.preventDefault()}),onInteractOutside:F(e.onInteractOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;(!i.modal||r)&&(o.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});Vb.displayName=Bb;var Hb=`DropdownMenuGroup`,Ub=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(_b,{...i,...r,ref:t})});Ub.displayName=Hb;var Wb=`DropdownMenuLabel`,Gb=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(vb,{...i,...r,ref:t})});Gb.displayName=Wb;var Kb=`DropdownMenuItem`,qb=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(yb,{...i,...r,ref:t})});qb.displayName=Kb;var Jb=`DropdownMenuCheckboxItem`,Yb=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(bb,{...i,...r,ref:t})});Yb.displayName=Jb;var Xb=`DropdownMenuRadioGroup`,Zb=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(xb,{...i,...r,ref:t})});Zb.displayName=Xb;var Qb=`DropdownMenuRadioItem`,$b=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(Sb,{...i,...r,ref:t})});$b.displayName=Qb;var ex=`DropdownMenuItemIndicator`,tx=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(Cb,{...i,...r,ref:t})});tx.displayName=ex;var nx=`DropdownMenuSeparator`,rx=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(wb,{...i,...r,ref:t})});rx.displayName=nx;var ix=`DropdownMenuArrow`,ax=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(Tb,{...i,...r,ref:t})});ax.displayName=ix;var ox=e=>{let{__scopeDropdownMenu:t,children:n,open:r,onOpenChange:i,defaultOpen:a}=e,o=Mb(t),[s,c]=Fa({prop:r,defaultProp:a??!1,onChange:i,caller:`DropdownMenuSub`});return(0,P.jsx)(Eb,{...o,open:s,onOpenChange:c,children:n})},sx=`DropdownMenuSubTrigger`,cx=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(Db,{...i,...r,ref:t})});cx.displayName=sx;var lx=`DropdownMenuSubContent`,ux=m.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Mb(n);return(0,P.jsx)(Ob,{...i,...r,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});ux.displayName=lx;var dx=Fb,fx=Lb,px=zb,mx=Vb,hx=Ub,gx=qb,_x=ox,vx=cx,yx=ux;function bx({...e}){return m.createElement(dx,{"data-slot":`dropdown-menu`,...e})}function xx({...e}){return e.container=oa(e=>e.shadowPortal),m.createElement(px,{"data-slot":`dropdown-menu-portal`,...e})}function Sx({...e}){return m.createElement(fx,{"data-slot":`dropdown-menu-trigger`,...e})}function Cx({className:e,sideOffset:t=4,...n}){return m.createElement(xx,null,m.createElement(mx,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:Wu(`bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8em] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md`,e),...n}))}function wx({...e}){return m.createElement(hx,{"data-slot":`dropdown-menu-group`,...e})}function Tx({className:e,inset:t,variant:n=`default`,...r}){return m.createElement(gx,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:Wu(`focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*=text-])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=size-])]:size-4`,e),...r})}function Ex({...e}){return m.createElement(_x,{"data-slot":`dropdown-menu-sub`,...e})}function Dx({className:e,inset:t,children:n,...r}){return m.createElement(vx,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":t,className:Wu(`focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8`,e),...r},n,m.createElement(yd,{className:`ml-auto size-4`}))}function Ox({className:e,...t}){return m.createElement(yx,{"data-slot":`dropdown-menu-sub-content`,className:Wu(`bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8em] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg`,e),...t})}function kx({title:e=``,description:t=``,cancelTitle:n=`Cancel`,actionTitle:r=`Confirm`,onCancel:i=()=>{},onConfirm:a=()=>{},rootProps:o,triggerElement:s,triggerProps:c,open:l,onOpenChange:u,portalProps:d,overlayProps:f,contentProps:p,headerProps:h,titleProps:g,descriptionProps:_,footerProps:v,cancelProps:y,cancelButtonProps:b,actionProps:x,actionButtonProps:S,...C},w){return m.createElement(`div`,{ref:w,...C},m.createElement(sl,{...o,...l!==void 0&&{open:l},...u!==void 0&&{onOpenChange:u}},s!=null&&m.createElement(cl,{asChild:!0,...c},s),m.createElement(ll,d,m.createElement(ul,{...f,className:R(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50`,f?.className)}),m.createElement(dl,{...p,className:R(`bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2em)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg`,p?.className)},m.createElement(`div`,{...h,className:R(`flex flex-col gap-2 text-center sm:text-left`,h?.className)},m.createElement(ml,{...g,className:R(`text-lg font-semibold`,g?.className)},e),m.createElement(hl,{..._,className:R(`text-muted-foreground text-sm`,_?.className)},t)),m.createElement(`div`,{...v,className:R(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,v?.className)},m.createElement(pl,{...y,onClick:i},m.createElement($u,{variant:`outline`,...b},n)),m.createElement(fl,{...x,onClick:a},m.createElement($u,S,r)))))))}var Ax=m.forwardRef(kx);Ax.displayName=`AlertDialog`;var jx=()=>{let{t:e}=nt(),{selectedDialog:t,leaveGroupChat:n}=gr(),{startVideoCall:r,startAudioCall:i}=fa(),a=Si(e=>e.enableCalls),o=oa(e=>e.shadowPortal),[s,c]=Gt($t(e=>[e.singleView,e.showChatActionsAsMenu])),[l,u]=m.default.useState(!1),d=a&&t?.type===tn.DialogType.PRIVATE,f=!s,p=m.default.useCallback(()=>{n(),u(!1)},[n]),h=m.default.createElement(bx,{modal:!1},m.default.createElement(Sx,{className:`group p-2 rounded-full cursor-pointer hover:bg-ring/10 transition-all duration-200 ease-out`},m.default.createElement(xd,{className:`text-foreground transition-all duration-200 ease-out group-hover:scale-110 group-hover:rotate-90 group-data-[state=open]:rotate-90 group-data-[state=open]:scale-110`})),m.default.createElement(Cx,{align:`start`,className:`transition-all duration-200 ease-out`},d&&m.default.createElement(m.default.Fragment,null,m.default.createElement(Tx,{className:`group cursor-pointer gap-2 transition-all duration-200 ease-out`,onClick:i},m.default.createElement(Rd,{className:`text-foreground group-hover:text-blue-700 group-hover:scale-110 transition-all duration-200 ease-out size-5 shrink-0`}),m.default.createElement(`span`,null,e(`Call`))),m.default.createElement(Tx,{className:`group cursor-pointer gap-2 transition-all duration-200 ease-out`,onClick:r},m.default.createElement(qd,{className:`text-foreground group-hover:text-blue-700 group-hover:scale-110 transition-all duration-200 ease-out size-5 shrink-0`}),m.default.createElement(`span`,null,e(`Video`)))),f&&m.default.createElement(Tx,{className:`group cursor-pointer gap-2 transition-all duration-200 ease-out`,onClick:()=>u(!0)},m.default.createElement(Od,{className:`text-foreground group-hover:text-blue-700 group-hover:scale-110 transition-all duration-200 ease-out size-5 shrink-0`}),m.default.createElement(`span`,null,e(`ExitChat`))))),g=m.default.createElement(m.default.Fragment,null,d&&m.default.createElement(m.default.Fragment,null,m.default.createElement(`button`,{className:`group p-2 rounded-full cursor-pointer hover:bg-ring/10 transition-all duration-200 ease-out`,onClick:i},m.default.createElement(Rd,{className:`text-foreground group-hover:scale-110 transition-all duration-200 ease-out`})),m.default.createElement(`button`,{className:`group p-2 rounded-full cursor-pointer hover:bg-ring/10 transition-all duration-200 ease-out`,onClick:r},m.default.createElement(qd,{className:`text-foreground group-hover:scale-110 transition-all duration-200 ease-out`}))),f&&m.default.createElement(`div`,{className:`group p-2 rounded-full cursor-pointer hover:bg-ring/10 transition-all duration-200 ease-out`,onClick:()=>u(!0)},m.default.createElement(Od,{className:`text-foreground group-hover:scale-110 transition-all duration-200 ease-out size-6`})));return m.default.createElement(`div`,{className:`flex flex-row`},d||f?c?h:g:null,f&&m.default.createElement(Ax,{open:l,onOpenChange:u,onConfirm:p,triggerElement:c?void 0:m.default.createElement(`div`,{className:`group p-2 rounded-full cursor-pointer hover:bg-ring/10 transition-all duration-200 ease-out`},m.default.createElement(Od,{className:`text-foreground group-hover:scale-110 transition-all duration-200 ease-out size-6`})),title:e(`ExitChat`),description:e(`ExitChatConfirm`),cancelTitle:e(`Cancel`),actionTitle:e(`ExitChat`),portalProps:{container:o},actionButtonProps:{className:`bg-blue-500 hover:bg-blue-700`}}))},Mx=m.default.memo(()=>{let{t:e,i18n:t}=nt(),n=Vi(e=>e.showProfile),[r,i]=Si($t(e=>[e.enableUserStatuses,e.enableLastSeen])),a=Gt(e=>e.singleView),{users:o,selectedDialog:s,lastActivity:c,getDialogOpponentId:l,unselectDialog:u}=gr(),d=l(),f=Sa(s),p=d?c[d]:void 0,h=typeof p==`number`&&p===0,g=r&&d&&h?ti(o[d]):void 0,_=()=>{n(d)};return m.default.createElement(`div`,{className:`flex justify-between relative items-center`},m.default.createElement(`div`,{className:`flex items-center relative`},!a&&m.default.createElement(sp,{onClick:()=>{u()},className:`mr-2 cursor-pointer block min-w-6 size-6`}),m.default.createElement(`div`,{className:`flex items-center justify-center mr-3 size-13 rounded-full cursor-pointer`,onClick:_},m.default.createElement(Dp,{src:li(s?.photo),name:s?.name,className:`size-13 ${s?.photo?`bg-blue-100`:`bg-blue-300`}`,online:h,presence:g})),m.default.createElement(`div`,{className:`flex flex-col items-start`},m.default.createElement(`span`,{className:`text-black font-medium cursor-pointer line-clamp-1 break-all`,onClick:_},s?.name??``),!a&&m.default.createElement(`div`,{className:`flex items-center pt-1 max-h-5`},f?m.default.createElement(`span`,{className:`text-xs text-gray-500 italic line-clamp-2 min-h-5 text-left leading-none pl-0.5`},f):i&&typeof p==`number`?m.default.createElement(Mh,{seconds:p,language:t.language,text:e(`LastSeen`),onlineText:e(`Online`),className:`italic line-clamp-2 min-h-5 text-left leading-none pl-0.5`}):null))),m.default.createElement(jx,null))}),Nx=`Label`,Px=m.forwardRef((e,t)=>(0,P.jsx)(Qa.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));Px.displayName=Nx;var Fx=Px;function Ix({...e},t){return m.createElement(Fx,{ref:t,...e,className:R(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e?.className)})}var Lx=m.forwardRef(Ix);Lx.displayName=`Label`;var Rx=(e,t)=>{if(e.length===0)return!1;let n=typeof t==`string`?t.split(/\s*,\s*|\s+/).map(e=>e.toLowerCase().trim()):null;return n===null||n.length===0?!1:e.every(e=>{let{type:t,size:r}=e;if(typeof t!=`string`||typeof r!=`number`||r<=0||t.length===0)return!1;let i=t.toLowerCase(),[a,o]=i.split(`/`);return n.some(e=>e.startsWith(`*`)||e===i||a&&e.endsWith(`/*`)&&e.startsWith(a)||e.startsWith(`.`)&&e.slice(1)===o)})},zx=(e,t,n,r,i)=>{let a=Array.from(e||[]).filter(Boolean);a.length!==0&&(Rx(a,t)?r(n?a:a[0]?[a[0]]:[]):i())};function Bx({onSelectFile:e=()=>{},onInvalidFile:t=()=>{},multiple:n=!1,accept:r=`*/*`,iconElement:i,labelProps:a,iconProps:o,...s},c){let l=i=>{zx(i.currentTarget.files,r,n,e,t),i.currentTarget.value=``};return m.createElement(Lx,{...a,htmlFor:`file-uploader`,className:R(`group p-2 rounded-full hover:bg-ring/10 transition-all duration-200 ease-out cursor-pointer`,a?.className)},i||m.createElement(Nd,{...o,className:R(`text-foreground group-hover:scale-110 transition-all duration-200 ease-out`,o?.className)}),m.createElement(`input`,{ref:c,id:`file-uploader`,type:`file`,multiple:n,accept:r,onChange:l,...s,className:R(`hidden`,s?.className)}))}var Vx=m.forwardRef(Bx);Vx.displayName=`FilePickerInput`;function Hx({onSelectFile:e=()=>{},onInvalidFile:t=()=>{},multiple:n=!1,accept:r=`*/*`,children:i,iconElement:a,placeholder:o,dropZoneProps:s,placeholderContainerProps:c,iconProps:l,placeholderProps:u,...d},f){let[p,h]=m.useState(!1),g=e=>{e.preventDefault(),e.stopPropagation()},_=i=>{g(i),h(!1),zx(i.dataTransfer.files,r,n,e,t),i.dataTransfer.clearData()};return m.createElement(`div`,{ref:f,onDragEnter:e=>{g(e),e.dataTransfer.items&&e.dataTransfer.items.length>0&&h(!0)},onDragLeave:e=>{e.currentTarget.contains(e.relatedTarget)||h(!1)},onDragOver:g,...d,className:R(`relative size-full min-h-0`,d?.className)},i,m.createElement(`div`,{onDrop:_,...s,className:R(`absolute top-0 left-0 size-full`,`flex items-center justify-center`,`transition-all duration-300 ease-out`,`border-2 border-dashed border-ring bg-ring/25 rounded-md`,p?`opacity-100 pointer-events-auto visible scale-100`:`opacity-0 pointer-events-none invisible scale-98`,s?.className)},m.createElement(`div`,{...c,className:R(`bg-muted flex flex-row items-center gap-2 rounded-full py-2 px-4 transition-all`,p?`scale-100`:`scale-90`,c?.className)},a||m.createElement(Sd,{absoluteStrokeWidth:!0,...l,className:R(`text-ring size-6`,l?.className)}),m.createElement(`span`,{...u,className:R(`text-ring text-md font-bold`,u?.className)},o||`Drop files here`))))}var Ux=m.forwardRef(Hx);Ux.displayName=`FilePickerDropzone`;var Wx=`vercel.ai.error`,Gx=Symbol.for(Wx),Kx,qx,z=class e extends (qx=Error,Kx=Gx,qx){constructor({name:e,message:t,cause:n}){super(t),this[Kx]=!0,this.name=e,this.cause=n}static isInstance(t){return e.hasMarker(t,Wx)}static hasMarker(e,t){let n=Symbol.for(t);return typeof e==`object`&&!!e&&n in e&&typeof e[n]==`boolean`&&e[n]===!0}},Jx=`AI_APICallError`,Yx=`vercel.ai.error.${Jx}`,Xx=Symbol.for(Yx),Zx,Qx,$x=class extends (Qx=z,Zx=Xx,Qx){constructor({message:e,url:t,requestBodyValues:n,statusCode:r,responseHeaders:i,responseBody:a,cause:o,isRetryable:s=r!=null&&(r===408||r===409||r===429||r>=500),data:c}){super({name:Jx,message:e,cause:o}),this[Zx]=!0,this.url=t,this.requestBodyValues=n,this.statusCode=r,this.responseHeaders=i,this.responseBody=a,this.isRetryable=s,this.data=c}static isInstance(e){return z.hasMarker(e,Yx)}},eS=`AI_EmptyResponseBodyError`,tS=`vercel.ai.error.${eS}`,nS=Symbol.for(tS),rS,iS,aS=class extends (iS=z,rS=nS,iS){constructor({message:e=`Empty response body`}={}){super({name:eS,message:e}),this[rS]=!0}static isInstance(e){return z.hasMarker(e,tS)}};function oS(e){return e==null?`unknown error`:typeof e==`string`?e:e instanceof Error?e.toString():JSON.stringify(e)}var sS=`AI_InvalidArgumentError`,cS=`vercel.ai.error.${sS}`,lS=Symbol.for(cS),uS,dS,fS=class extends (dS=z,uS=lS,dS){constructor({message:e,cause:t,argument:n}){super({name:sS,message:e,cause:t}),this[uS]=!0,this.argument=n}static isInstance(e){return z.hasMarker(e,cS)}},pS=`AI_InvalidPromptError`,mS=`vercel.ai.error.${pS}`,hS=Symbol.for(mS),gS,_S,vS=class extends (_S=z,gS=hS,_S){constructor({prompt:e,message:t,cause:n}){super({name:pS,message:`Invalid prompt: ${t}`,cause:n}),this[gS]=!0,this.prompt=e}static isInstance(e){return z.hasMarker(e,mS)}},yS=`AI_JSONParseError`,bS=`vercel.ai.error.${yS}`,xS=Symbol.for(bS),SS,CS,wS=class extends (CS=z,SS=xS,CS){constructor({text:e,cause:t}){super({name:yS,message:`JSON parsing failed: Text: ${e}.
Error message: ${oS(t)}`,cause:t}),this[SS]=!0,this.text=e}static isInstance(e){return z.hasMarker(e,bS)}},TS=`AI_LoadAPIKeyError`,ES=`vercel.ai.error.${TS}`,DS=Symbol.for(ES),OS,kS,AS=class extends (kS=z,OS=DS,kS){constructor({message:e}){super({name:TS,message:e}),this[OS]=!0}static isInstance(e){return z.hasMarker(e,ES)}},jS=`AI_NoSuchProviderReferenceError`,MS=`vercel.ai.error.${jS}`,NS=Symbol.for(MS),PS,FS,IS=class extends (FS=z,PS=NS,FS){constructor({provider:e,reference:t,message:n=`No provider reference found for provider '${e}'. Available providers: ${Object.keys(t).join(`, `)}`}){super({name:jS,message:n}),this[PS]=!0,this.provider=e,this.reference=t}static isInstance(e){return z.hasMarker(e,MS)}},LS=`AI_TooManyEmbeddingValuesForCallError`,RS=`vercel.ai.error.${LS}`,zS=Symbol.for(RS),BS,VS,HS=class extends (VS=z,BS=zS,VS){constructor(e){super({name:LS,message:`Too many values for a single embedding call. The ${e.provider} model "${e.modelId}" can only embed up to ${e.maxEmbeddingsPerCall} values per call, but ${e.values.length} values were provided.`}),this[BS]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}static isInstance(e){return z.hasMarker(e,RS)}},US=`AI_TypeValidationError`,WS=`vercel.ai.error.${US}`,GS=Symbol.for(WS),KS,qS,JS=class e extends (qS=z,KS=GS,qS){constructor({value:e,cause:t,context:n}){let r=`Type validation failed`;if(n?.field&&(r+=` for ${n.field}`),n?.entityName||n?.entityId){r+=` (`;let e=[];n.entityName&&e.push(n.entityName),n.entityId&&e.push(`id: "${n.entityId}"`),r+=e.join(`, `),r+=`)`}super({name:US,message:`${r}: Value: ${JSON.stringify(e)}.
Error message: ${oS(t)}`,cause:t}),this[KS]=!0,this.value=e,this.context=n}static isInstance(e){return z.hasMarker(e,WS)}static wrap({value:t,cause:n,context:r}){return e.isInstance(n)&&n.value===t&&n.context?.field===r?.field&&n.context?.entityName===r?.entityName&&n.context?.entityId===r?.entityId?n:new e({value:t,cause:n,context:r})}},YS=`AI_UnsupportedFunctionalityError`,XS=`vercel.ai.error.${YS}`,ZS=Symbol.for(XS),QS,$S,eC=class extends ($S=z,QS=ZS,$S){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:YS,message:t}),this[QS]=!0,this.functionality=e}static isInstance(e){return z.hasMarker(e,XS)}},tC;function B(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,"_zod",{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,"name",{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,"name",{value:e}),o}var nC=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},rC=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(tC=globalThis).__zod_globalConfig??(tC.__zod_globalConfig={});var iC=globalThis.__zod_globalConfig;function aC(e){return e&&Object.assign(iC,e),iC}function oC(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function sC(e,t){return typeof t==`bigint`?t.toString():t}function cC(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}throw Error(`cached value already set`)}}}function lC(e){return e==null}function uC(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function dC(e,t){let n=e/t,r=Math.round(n),i=2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}var fC=Symbol(`evaluating`);function pC(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==fC)return r===void 0&&(r=fC,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function mC(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function hC(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function gC(e){return JSON.stringify(e)}function _C(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var vC=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function yC(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var bC=cC(()=>{if(iC.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function xC(e){if(yC(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(yC(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function SC(e){return xC(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var CC=new Set([`string`,`number`,`symbol`]);function wC(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function TC(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function V(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function EC(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var DC={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function OC(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return TC(e,hC(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return mC(this,`shape`,e),e},checks:[]}))}function kC(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return TC(e,hC(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return mC(this,`shape`,r),r},checks:[]}))}function AC(e,t){if(!xC(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return TC(e,hC(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return mC(this,`shape`,n),n}}))}function jC(e,t){if(!xC(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return TC(e,hC(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return mC(this,`shape`,n),n}}))}function MC(e,t){if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);return TC(e,hC(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return mC(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function NC(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return TC(t,hC(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return mC(this,`shape`,i),i},checks:[]}))}function PC(e,t,n){return TC(t,hC(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return mC(this,`shape`,i),i}}))}function FC(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function IC(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function LC(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function RC(e){return typeof e==`string`?e:e?.message}function zC(e,t,n){let r=e.message?e.message:RC(e.inst?._zod.def?.error?.(e))??RC(t?.error?.(e))??RC(n.customError?.(e))??RC(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function BC(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function VC(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}var HC=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,sC,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},UC=B(`$ZodError`,HC),WC=B(`$ZodError`,HC,{Parent:Error});function GC(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function KC(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i];i===e.length-1?(r[n]=r[n]||{_errors:[]},r[n]._errors.push(t(a))):r[n]=r[n]||{_errors:[]},r=r[n],i++}}}};return r(e),n}var qC=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new nC;if(o.issues.length){let t=new((i?.Err)??e)(o.issues.map(e=>zC(e,a,aC())));throw vC(t,i?.callee),t}return o.value},JC=e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new((i?.Err)??e)(o.issues.map(e=>zC(e,a,aC())));throw vC(t,i?.callee),t}return o.value},YC=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new nC;return a.issues.length?{success:!1,error:new(e??UC)(a.issues.map(e=>zC(e,i,aC())))}:{success:!0,data:a.value}},XC=YC(WC),ZC=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>zC(e,i,aC())))}:{success:!0,data:a.value}},QC=ZC(WC),$C=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return qC(e)(t,n,i)},ew=e=>(t,n,r)=>qC(e)(t,n,r),tw=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return JC(e)(t,n,i)},nw=e=>async(t,n,r)=>JC(e)(t,n,r),rw=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return YC(e)(t,n,i)},iw=e=>(t,n,r)=>YC(e)(t,n,r),aw=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return ZC(e)(t,n,i)},ow=e=>async(t,n,r)=>ZC(e)(t,n,r),sw=/^[cC][0-9a-z]{6,}$/,cw=/^[0-9a-z]+$/,lw=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,uw=/^[0-9a-vA-V]{20}$/,dw=/^[A-Za-z0-9]{27}$/,fw=/^[a-zA-Z0-9_-]{21}$/,pw=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,mw=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,hw=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,gw=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,_w=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;function vw(){return new RegExp(_w,`u`)}var yw=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,bw=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,xw=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Sw=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Cw=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,ww=/^[A-Za-z0-9_-]*$/,Tw=/^https?$/,Ew=/^\+[1-9]\d{6,14}$/,Dw=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,Ow=RegExp(`^${Dw}$`);function kw(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Aw(e){return RegExp(`^${kw(e)}$`)}function jw(e){let t=kw({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${Dw}T(?:${r})$`)}var Mw=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Nw=/^-?\d+$/,Pw=/^-?\d+(?:\.\d+)?$/,Fw=/^(?:true|false)$/i,Iw=/^null$/i,Lw=/^[^A-Z]*$/,Rw=/^[^a-z]*$/,zw=B(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Bw={number:`number`,bigint:`bigint`,object:`date`},Vw=B(`$ZodCheckLessThan`,(e,t)=>{zw.init(e,t);let n=Bw[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Hw=B(`$ZodCheckGreaterThan`,(e,t)=>{zw.init(e,t);let n=Bw[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Uw=B(`$ZodCheckMultipleOf`,(e,t)=>{zw.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):dC(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Ww=B(`$ZodCheckNumberFormat`,(e,t)=>{zw.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=DC[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Nw)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Gw=B(`$ZodCheckMaxLength`,(e,t)=>{var n;zw.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!lC(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=BC(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Kw=B(`$ZodCheckMinLength`,(e,t)=>{var n;zw.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!lC(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=BC(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),qw=B(`$ZodCheckLengthEquals`,(e,t)=>{var n;zw.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!lC(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=BC(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Jw=B(`$ZodCheckStringFormat`,(e,t)=>{var n,r;zw.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Yw=B(`$ZodCheckRegex`,(e,t)=>{Jw.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Xw=B(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Lw,Jw.init(e,t)}),Zw=B(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=Rw,Jw.init(e,t)}),Qw=B(`$ZodCheckIncludes`,(e,t)=>{zw.init(e,t);let n=wC(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),$w=B(`$ZodCheckStartsWith`,(e,t)=>{zw.init(e,t);let n=RegExp(`^${wC(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),eT=B(`$ZodCheckEndsWith`,(e,t)=>{zw.init(e,t);let n=RegExp(`.*${wC(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),tT=B(`$ZodCheckOverwrite`,(e,t)=>{zw.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),nT=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>`  ${e}`)];return new e(...t,n.join(`
`))}},rT={major:4,minor:4,patch:3},iT=B(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=rT;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=FC(e),i;for(let a of t){if(a._zod.def.when){if(IC(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new nC;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=FC(e,t))});else{if(e.issues.length===t)continue;r||=FC(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(FC(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new nC;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new nC;return o.then(e=>t(e,r,a))}return t(o,r,a)}}pC(e,`~standard`,()=>({validate:t=>{try{let n=XC(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return QC(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),aT=B(`$ZodString`,(e,t)=>{iT.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Mw(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),oT=B(`$ZodStringFormat`,(e,t)=>{Jw.init(e,t),aT.init(e,t)}),sT=B(`$ZodGUID`,(e,t)=>{t.pattern??=mw,oT.init(e,t)}),cT=B(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=hw(e)}else t.pattern??=hw();oT.init(e,t)}),lT=B(`$ZodEmail`,(e,t)=>{t.pattern??=gw,oT.init(e,t)}),uT=B(`$ZodURL`,(e,t)=>{oT.init(e,t),e._zod.check=n=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===Tw.source&&!/^https?:\/\//i.test(r)){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}let i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),dT=B(`$ZodEmoji`,(e,t)=>{t.pattern??=vw(),oT.init(e,t)}),fT=B(`$ZodNanoID`,(e,t)=>{t.pattern??=fw,oT.init(e,t)}),pT=B(`$ZodCUID`,(e,t)=>{t.pattern??=sw,oT.init(e,t)}),mT=B(`$ZodCUID2`,(e,t)=>{t.pattern??=cw,oT.init(e,t)}),hT=B(`$ZodULID`,(e,t)=>{t.pattern??=lw,oT.init(e,t)}),gT=B(`$ZodXID`,(e,t)=>{t.pattern??=uw,oT.init(e,t)}),_T=B(`$ZodKSUID`,(e,t)=>{t.pattern??=dw,oT.init(e,t)}),vT=B(`$ZodISODateTime`,(e,t)=>{t.pattern??=jw(t),oT.init(e,t)}),yT=B(`$ZodISODate`,(e,t)=>{t.pattern??=Ow,oT.init(e,t)}),bT=B(`$ZodISOTime`,(e,t)=>{t.pattern??=Aw(t),oT.init(e,t)}),xT=B(`$ZodISODuration`,(e,t)=>{t.pattern??=pw,oT.init(e,t)}),ST=B(`$ZodIPv4`,(e,t)=>{t.pattern??=yw,oT.init(e,t),e._zod.bag.format=`ipv4`}),CT=B(`$ZodIPv6`,(e,t)=>{t.pattern??=bw,oT.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),wT=B(`$ZodCIDRv4`,(e,t)=>{t.pattern??=xw,oT.init(e,t)}),TT=B(`$ZodCIDRv6`,(e,t)=>{t.pattern??=Sw,oT.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function ET(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var DT=B(`$ZodBase64`,(e,t)=>{t.pattern??=Cw,oT.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{ET(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function OT(e){if(!ww.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return ET(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var kT=B(`$ZodBase64URL`,(e,t)=>{t.pattern??=ww,oT.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{OT(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),AT=B(`$ZodE164`,(e,t)=>{t.pattern??=Ew,oT.init(e,t)});function jT(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var MT=B(`$ZodJWT`,(e,t)=>{oT.init(e,t),e._zod.check=n=>{jT(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),NT=B(`$ZodNumber`,(e,t)=>{iT.init(e,t),e._zod.pattern=e._zod.bag.pattern??Pw,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),PT=B(`$ZodNumberFormat`,(e,t)=>{Ww.init(e,t),NT.init(e,t)}),FT=B(`$ZodBoolean`,(e,t)=>{iT.init(e,t),e._zod.pattern=Fw,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),IT=B(`$ZodNull`,(e,t)=>{iT.init(e,t),e._zod.pattern=Iw,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),LT=B(`$ZodAny`,(e,t)=>{iT.init(e,t),e._zod.parse=e=>e}),RT=B(`$ZodUnknown`,(e,t)=>{iT.init(e,t),e._zod.parse=e=>e}),zT=B(`$ZodNever`,(e,t)=>{iT.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function BT(e,t,n){e.issues.length&&t.issues.push(...LC(n,e.issues)),t.value[n]=e.value}var VT=B(`$ZodArray`,(e,t)=>{iT.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>BT(t,n,e))):BT(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function HT(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...LC(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function UT(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=EC(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function WT(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>HT(e,n,i,t,u,d))):HT(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var GT=B(`$ZodObject`,(e,t)=>{if(iT.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,"shape",{get:()=>{let n={...e};return Object.defineProperty(t,"shape",{value:n}),n}})}let n=cC(()=>UT(t));pC(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=yC,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>HT(n,t,e,s,r,i))):HT(a,t,e,s,r,i)}return i?WT(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),KT=B(`$ZodObjectJIT`,(e,t)=>{GT.init(e,t);let n=e._zod.parse,r=cC(()=>UT(t)),i=e=>{let t=new nT([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=gC(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=gC(r),s=e[r],c=s?._zod?.optin===`optional`,l=s?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),c&&l?t.write(`
        if (${n}.issues.length) {
          if (${o} in input) {
            payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
              ...iss,
              path: iss.path ? [${o}, ...iss.path] : [${o}]
            })));
          }
        }
        
        if (${n}.value === undefined) {
          if (${o} in input) {
            newResult[${o}] = undefined;
          }
        } else {
          newResult[${o}] = ${n}.value;
        }
        
      `):c?t.write(`
        if (${n}.issues.length) {
          payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
            ...iss,
            path: iss.path ? [${o}, ...iss.path] : [${o}]
          })));
        }
        
        if (${n}.value === undefined) {
          if (${o} in input) {
            newResult[${o}] = undefined;
          }
        } else {
          newResult[${o}] = ${n}.value;
        }
        
      `):t.write(`
        const ${n}_present = ${o} in input;
        if (${n}.issues.length) {
          payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
            ...iss,
            path: iss.path ? [${o}, ...iss.path] : [${o}]
          })));
        }
        if (!${n}_present && !${n}.issues.length) {
          payload.issues.push({
            code: "invalid_type",
            expected: "nonoptional",
            input: undefined,
            path: [${o}]
          });
        }

        if (${n}_present) {
          if (${n}.value === undefined) {
            newResult[${o}] = undefined;
          } else {
            newResult[${o}] = ${n}.value;
          }
        }

      `)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=yC,s=!iC.jitless,c=s&&bC.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?WT([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function qT(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!FC(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>zC(e,r,aC())))}),t)}var JT=B(`$ZodUnion`,(e,t)=>{iT.init(e,t),pC(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),pC(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),pC(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),pC(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>uC(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>qT(t,r,e,i)):qT(o,r,e,i)}}),YT=B(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,JT.init(e,t);let n=e._zod.parse;pC(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=cC(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!yC(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),XT=B(`$ZodIntersection`,(e,t)=>{iT.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>QT(e,t,n)):QT(e,i,a)}});function ZT(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(xC(e)&&xC(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=ZT(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=ZT(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function QT(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),FC(e))return e;let o=ZT(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var $T=B(`$ZodRecord`,(e,t)=>{iT.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!xC(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>zC(e,r,aC())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...LC(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...LC(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&Pw.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>zC(e,r,aC())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...LC(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...LC(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),eE=B(`$ZodEnum`,(e,t)=>{iT.init(e,t);let n=oC(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>CC.has(typeof e)).map(e=>typeof e==`string`?wC(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),tE=B(`$ZodLiteral`,(e,t)=>{if(iT.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?wC(e):e?wC(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),nE=B(`$ZodTransform`,(e,t)=>{iT.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new rC(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n.fallback=!0,n));if(i instanceof Promise)throw new nC;return n.value=i,n.fallback=!0,n}});function rE(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var iE=B(`$ZodOptional`,(e,t)=>{iT.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,pC(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),pC(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${uC(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>rE(e,r)):rE(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),aE=B(`$ZodExactOptional`,(e,t)=>{iE.init(e,t),pC(e._zod,`values`,()=>t.innerType._zod.values),pC(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),oE=B(`$ZodNullable`,(e,t)=>{iT.init(e,t),pC(e._zod,`optin`,()=>t.innerType._zod.optin),pC(e._zod,`optout`,()=>t.innerType._zod.optout),pC(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${uC(e.source)}|null)$`):void 0}),pC(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),sE=B(`$ZodDefault`,(e,t)=>{iT.init(e,t),e._zod.optin=`optional`,pC(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>cE(e,t)):cE(r,t)}});function cE(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var lE=B(`$ZodPrefault`,(e,t)=>{iT.init(e,t),e._zod.optin=`optional`,pC(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),uE=B(`$ZodNonOptional`,(e,t)=>{iT.init(e,t),pC(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>dE(t,e)):dE(i,e)}});function dE(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var fE=B(`$ZodCatch`,(e,t)=>{iT.init(e,t),e._zod.optin=`optional`,pC(e._zod,`optout`,()=>t.innerType._zod.optout),pC(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>zC(e,n,aC()))},input:e.value}),e.issues=[],e.fallback=!0),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>zC(e,n,aC()))},input:e.value}),e.issues=[],e.fallback=!0),e)}}),pE=B(`$ZodPipe`,(e,t)=>{iT.init(e,t),pC(e._zod,`values`,()=>t.in._zod.values),pC(e._zod,`optin`,()=>t.in._zod.optin),pC(e._zod,`optout`,()=>t.out._zod.optout),pC(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>mE(e,t.in,n)):mE(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>mE(e,t.out,n)):mE(r,t.out,n)}});function mE(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var hE=B(`$ZodReadonly`,(e,t)=>{iT.init(e,t),pC(e._zod,`propValues`,()=>t.innerType._zod.propValues),pC(e._zod,`values`,()=>t.innerType._zod.values),pC(e._zod,`optin`,()=>t.innerType?._zod?.optin),pC(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(gE):gE(r)}});function gE(e){return e.value=Object.freeze(e.value),e}var _E=B(`$ZodLazy`,(e,t)=>{iT.init(e,t),pC(e._zod,`innerType`,()=>{let e=t;return e._cachedInner||=t.getter(),e._cachedInner}),pC(e._zod,`pattern`,()=>e._zod.innerType?._zod?.pattern),pC(e._zod,`propValues`,()=>e._zod.innerType?._zod?.propValues),pC(e._zod,`optin`,()=>e._zod.innerType?._zod?.optin??void 0),pC(e._zod,`optout`,()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),vE=B(`$ZodCustom`,(e,t)=>{zw.init(e,t),iT.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>yE(t,n,r,e));yE(i,n,r,e)}});function yE(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(VC(e))}}var bE,xE=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function SE(){return new xE}(bE=globalThis).__zod_globalRegistry??(bE.__zod_globalRegistry=SE());var CE=globalThis.__zod_globalRegistry;function wE(e,t){return new e({type:`string`,...V(t)})}function TE(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...V(t)})}function EE(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...V(t)})}function DE(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...V(t)})}function OE(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...V(t)})}function kE(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...V(t)})}function AE(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...V(t)})}function jE(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...V(t)})}function ME(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...V(t)})}function NE(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...V(t)})}function PE(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...V(t)})}function FE(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...V(t)})}function IE(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...V(t)})}function LE(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...V(t)})}function RE(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...V(t)})}function zE(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...V(t)})}function BE(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...V(t)})}function VE(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...V(t)})}function HE(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...V(t)})}function UE(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...V(t)})}function WE(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...V(t)})}function GE(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...V(t)})}function KE(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...V(t)})}function qE(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...V(t)})}function JE(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...V(t)})}function YE(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...V(t)})}function XE(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...V(t)})}function ZE(e,t){return new e({type:`number`,checks:[],...V(t)})}function QE(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...V(t)})}function $E(e,t){return new e({type:`boolean`,...V(t)})}function eD(e,t){return new e({type:`null`,...V(t)})}function tD(e){return new e({type:`any`})}function nD(e){return new e({type:`unknown`})}function rD(e,t){return new e({type:`never`,...V(t)})}function iD(e,t){return new Vw({check:`less_than`,...V(t),value:e,inclusive:!1})}function aD(e,t){return new Vw({check:`less_than`,...V(t),value:e,inclusive:!0})}function oD(e,t){return new Hw({check:`greater_than`,...V(t),value:e,inclusive:!1})}function sD(e,t){return new Hw({check:`greater_than`,...V(t),value:e,inclusive:!0})}function cD(e,t){return new Uw({check:`multiple_of`,...V(t),value:e})}function lD(e,t){return new Gw({check:`max_length`,...V(t),maximum:e})}function uD(e,t){return new Kw({check:`min_length`,...V(t),minimum:e})}function dD(e,t){return new qw({check:`length_equals`,...V(t),length:e})}function fD(e,t){return new Yw({check:`string_format`,format:`regex`,...V(t),pattern:e})}function pD(e){return new Xw({check:`string_format`,format:`lowercase`,...V(e)})}function mD(e){return new Zw({check:`string_format`,format:`uppercase`,...V(e)})}function hD(e,t){return new Qw({check:`string_format`,format:`includes`,...V(t),includes:e})}function gD(e,t){return new $w({check:`string_format`,format:`starts_with`,...V(t),prefix:e})}function _D(e,t){return new eT({check:`string_format`,format:`ends_with`,...V(t),suffix:e})}function vD(e){return new tT({check:`overwrite`,tx:e})}function yD(e){return vD(t=>t.normalize(e))}function bD(){return vD(e=>e.trim())}function xD(){return vD(e=>e.toLowerCase())}function SD(){return vD(e=>e.toUpperCase())}function CD(){return vD(e=>_C(e))}function wD(e,t,n){return new e({type:`array`,element:t,...V(n)})}function TD(e,t,n){let r=V(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function ED(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...V(n)})}function DD(e,t){let n=OD(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(VC(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=t.value,r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(VC(r))}},e(t.value,t)),t);return n}function OD(e,t){let n=new zw({check:`custom`,...V(t)});return n._zod.check=e,n}function kD(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??CE,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function AD(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,AD(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&ND(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function jD(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>

Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function MD(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,o[e.defId]=e.def)}e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:FD(t,`input`,e.processors),output:FD(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function ND(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return ND(r.element,n);if(r.type===`set`)return ND(r.valueType,n);if(r.type===`lazy`)return ND(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`)return ND(r.innerType,n);if(r.type===`intersection`)return ND(r.left,n)||ND(r.right,n);if(r.type===`record`||r.type===`map`)return ND(r.keyType,n)||ND(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:ND(r.in,n)||ND(r.out,n);if(r.type===`object`){for(let e in r.shape)if(ND(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(ND(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(ND(e,n))return!0;return!!(r.rest&&ND(r.rest,n))}return!1}var PD=(e,t={})=>n=>{let r=kD({...n,processors:t});return AD(e,r),jD(r,e),MD(r,e)},FD=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=kD({...i??{},target:a,io:t,processors:n});return AD(e,o),jD(o,e),MD(o,e)},ID={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},LD=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=ID[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},RD=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`;let d=typeof u==`number`&&u>=(a??-1/0),f=typeof l==`number`&&l<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;d?p?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l:typeof o==`number`&&(i.maximum=o),typeof c==`number`&&(i.multipleOf=c)},zD=(e,t,n,r)=>{n.type=`boolean`},BD=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`BigInt cannot be represented in JSON Schema`)},VD=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Symbols cannot be represented in JSON Schema`)},HD=(e,t,n,r)=>{t.target===`openapi-3.0`?(n.type=`string`,n.nullable=!0,n.enum=[null]):n.type=`null`},UD=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Undefined cannot be represented in JSON Schema`)},WD=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Void cannot be represented in JSON Schema`)},GD=(e,t,n,r)=>{n.not={}},KD=(e,t,n,r)=>{},qD=(e,t,n,r)=>{},JD=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`)},YD=(e,t,n,r)=>{let i=e._zod.def,a=oC(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},XD=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},ZD=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`NaN cannot be represented in JSON Schema`)},QD=(e,t,n,r)=>{let i=n,a=e._zod.pattern;if(!a)throw Error(`Pattern not found in template literal`);i.type=`string`,i.pattern=a.source},$D=(e,t,n,r)=>{let i=n,a={type:`string`,format:`binary`,contentEncoding:`binary`},{minimum:o,maximum:s,mime:c}=e._zod.bag;o!==void 0&&(a.minLength=o),s!==void 0&&(a.maxLength=s),c?c.length===1?(a.contentMediaType=c[0],Object.assign(i,a)):(Object.assign(i,a),i.anyOf=c.map(e=>({contentMediaType:e}))):Object.assign(i,a)},eO=(e,t,n,r)=>{n.type=`boolean`},tO=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},nO=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Function types cannot be represented in JSON Schema`)},rO=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},iO=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Map cannot be represented in JSON Schema`)},aO=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Set cannot be represented in JSON Schema`)},oO=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=AD(a.element,t,{...r,path:[...r.path,`items`]})},sO=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=AD(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=AD(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},cO=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>AD(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},lO=(e,t,n,r)=>{let i=e._zod.def,a=AD(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=AD(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},uO=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`array`;let o=t.target===`draft-2020-12`?`prefixItems`:`items`,s=t.target===`draft-2020-12`||t.target===`openapi-3.0`?`items`:`additionalItems`,c=a.items.map((e,n)=>AD(e,t,{...r,path:[...r.path,o,n]})),l=a.rest?AD(a.rest,t,{...r,path:[...r.path,s,...t.target===`openapi-3.0`?[a.items.length]:[]]}):null;t.target===`draft-2020-12`?(i.prefixItems=c,l&&(i.items=l)):t.target===`openapi-3.0`?(i.items={anyOf:c},l&&i.items.anyOf.push(l),i.minItems=c.length,l||(i.maxItems=c.length)):(i.items=c,l&&(i.additionalItems=l));let{minimum:u,maximum:d}=e._zod.bag;typeof u==`number`&&(i.minItems=u),typeof d==`number`&&(i.maxItems=d)},dO=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=AD(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else(t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=AD(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=AD(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},fO=(e,t,n,r)=>{let i=e._zod.def,a=AD(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},pO=(e,t,n,r)=>{let i=e._zod.def;AD(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},mO=(e,t,n,r)=>{let i=e._zod.def;AD(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},hO=(e,t,n,r)=>{let i=e._zod.def;AD(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},gO=(e,t,n,r)=>{let i=e._zod.def;AD(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},_O=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;AD(o,t,r);let s=t.seen.get(e);s.ref=o},vO=(e,t,n,r)=>{let i=e._zod.def;AD(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},yO=(e,t,n,r)=>{let i=e._zod.def;AD(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},bO=(e,t,n,r)=>{let i=e._zod.def;AD(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},xO=(e,t,n,r)=>{let i=e._zod.innerType;AD(i,t,r);let a=t.seen.get(e);a.ref=i},SO={string:LD,number:RD,boolean:zD,bigint:BD,symbol:VD,null:HD,undefined:UD,void:WD,never:GD,any:KD,unknown:qD,date:JD,enum:YD,literal:XD,nan:ZD,template_literal:QD,file:$D,success:eO,custom:tO,function:nO,transform:rO,map:iO,set:aO,array:oO,object:sO,union:cO,intersection:lO,tuple:uO,record:dO,nullable:fO,nonoptional:pO,default:mO,prefault:hO,catch:gO,pipe:_O,readonly:vO,promise:yO,optional:bO,lazy:xO};function CO(e,t){if(`_idmap`in e){let n=e,r=kD({...t,processors:SO}),i={};for(let e of n._idmap.entries()){let[t,n]=e;AD(n,r)}let a={};r.external={registry:n,uri:t?.uri,defs:i};for(let e of n._idmap.entries()){let[t,n]=e;jD(r,n),a[t]=MD(r,n)}return Object.keys(i).length>0&&(a.__shared={[r.target===`draft-2020-12`?`$defs`:`definitions`]:i}),{schemas:a}}let n=kD({...t,processors:SO});return AD(e,n),jD(n,e),MD(n,e)}var wO=B(`ZodISODateTime`,(e,t)=>{vT.init(e,t),XO.init(e,t)});function TO(e){return qE(wO,e)}var EO=B(`ZodISODate`,(e,t)=>{yT.init(e,t),XO.init(e,t)});function DO(e){return JE(EO,e)}var OO=B(`ZodISOTime`,(e,t)=>{bT.init(e,t),XO.init(e,t)});function kO(e){return YE(OO,e)}var AO=B(`ZodISODuration`,(e,t)=>{xT.init(e,t),XO.init(e,t)});function jO(e){return XE(AO,e)}var MO=B(`ZodError`,(e,t)=>{UC.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>KC(e,t)},flatten:{value:t=>GC(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,sC,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,sC,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),NO=qC(MO),PO=JC(MO),FO=YC(MO),IO=ZC(MO),LO=$C(MO),RO=ew(MO),zO=tw(MO),BO=nw(MO),VO=rw(MO),HO=iw(MO),UO=aw(MO),WO=ow(MO),GO=new WeakMap;function KO(e,t,n){let r=Object.getPrototypeOf(e),i=GO.get(r);if(i||(i=new Set,GO.set(r,i)),!i.has(t)){i.add(t);for(let e in n){let t=n[e];Object.defineProperty(r,e,{configurable:!0,enumerable:!1,get(){let n=t.bind(this);return Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:n}),n},set(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:t})}})}}}var qO=B(`ZodType`,(e,t)=>(iT.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:FD(e,`input`),output:FD(e,`output`)}}),e.toJSONSchema=PD(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(t,n)=>NO(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>FO(e,t,n),e.parseAsync=async(t,n)=>PO(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>IO(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>LO(e,t,n),e.decode=(t,n)=>RO(e,t,n),e.encodeAsync=async(t,n)=>zO(e,t,n),e.decodeAsync=async(t,n)=>BO(e,t,n),e.safeEncode=(t,n)=>VO(e,t,n),e.safeDecode=(t,n)=>HO(e,t,n),e.safeEncodeAsync=async(t,n)=>UO(e,t,n),e.safeDecodeAsync=async(t,n)=>WO(e,t,n),KO(e,`ZodType`,{check(...e){let t=this.def;return this.clone(hC(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return TC(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(pA(e,t))},superRefine(e,t){return this.check(mA(e,t))},overwrite(e){return this.check(vD(e))},optional(){return Kk(this)},exactOptional(){return Jk(this)},nullable(){return Xk(this)},nullish(){return Kk(Xk(this))},nonoptional(e){return nA(this,e)},array(){return W(this)},or(e){return Nk([this,e])},and(e){return Lk(this,e)},transform(e){return oA(this,Wk(e))},default(e){return Qk(this,e)},prefault(e){return eA(this,e)},catch(e){return iA(this,e)},pipe(e){return oA(this,e)},readonly(){return cA(this)},describe(e){let t=this.clone();return CE.add(t,{description:e}),t},meta(...e){if(e.length===0)return CE.get(this);let t=this.clone();return CE.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e){return e(this)}}),Object.defineProperty(e,"description",{get(){return CE.get(e)?.description},configurable:!0}),e)),JO=B(`_ZodString`,(e,t)=>{aT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>LD(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,KO(e,`_ZodString`,{regex(...e){return this.check(fD(...e))},includes(...e){return this.check(hD(...e))},startsWith(...e){return this.check(gD(...e))},endsWith(...e){return this.check(_D(...e))},min(...e){return this.check(uD(...e))},max(...e){return this.check(lD(...e))},length(...e){return this.check(dD(...e))},nonempty(...e){return this.check(uD(1,...e))},lowercase(e){return this.check(pD(e))},uppercase(e){return this.check(mD(e))},trim(){return this.check(bD())},normalize(...e){return this.check(yD(...e))},toLowerCase(){return this.check(xD())},toUpperCase(){return this.check(SD())},slugify(){return this.check(CD())}})}),YO=B(`ZodString`,(e,t)=>{aT.init(e,t),JO.init(e,t),e.email=t=>e.check(TE(ZO,t)),e.url=t=>e.check(jE(ek,t)),e.jwt=t=>e.check(KE(hk,t)),e.emoji=t=>e.check(ME(tk,t)),e.guid=t=>e.check(EE(QO,t)),e.uuid=t=>e.check(DE($O,t)),e.uuidv4=t=>e.check(OE($O,t)),e.uuidv6=t=>e.check(kE($O,t)),e.uuidv7=t=>e.check(AE($O,t)),e.nanoid=t=>e.check(NE(nk,t)),e.guid=t=>e.check(EE(QO,t)),e.cuid=t=>e.check(PE(rk,t)),e.cuid2=t=>e.check(FE(ik,t)),e.ulid=t=>e.check(IE(ak,t)),e.base64=t=>e.check(UE(fk,t)),e.base64url=t=>e.check(WE(pk,t)),e.xid=t=>e.check(LE(ok,t)),e.ksuid=t=>e.check(RE(sk,t)),e.ipv4=t=>e.check(zE(ck,t)),e.ipv6=t=>e.check(BE(lk,t)),e.cidrv4=t=>e.check(VE(uk,t)),e.cidrv6=t=>e.check(HE(dk,t)),e.e164=t=>e.check(GE(mk,t)),e.datetime=t=>e.check(TO(t)),e.date=t=>e.check(DO(t)),e.time=t=>e.check(kO(t)),e.duration=t=>e.check(jO(t))});function H(e){return wE(YO,e)}var XO=B(`ZodStringFormat`,(e,t)=>{oT.init(e,t),JO.init(e,t)}),ZO=B(`ZodEmail`,(e,t)=>{lT.init(e,t),XO.init(e,t)}),QO=B(`ZodGUID`,(e,t)=>{sT.init(e,t),XO.init(e,t)}),$O=B(`ZodUUID`,(e,t)=>{cT.init(e,t),XO.init(e,t)}),ek=B(`ZodURL`,(e,t)=>{uT.init(e,t),XO.init(e,t)}),tk=B(`ZodEmoji`,(e,t)=>{dT.init(e,t),XO.init(e,t)}),nk=B(`ZodNanoID`,(e,t)=>{fT.init(e,t),XO.init(e,t)}),rk=B(`ZodCUID`,(e,t)=>{pT.init(e,t),XO.init(e,t)}),ik=B(`ZodCUID2`,(e,t)=>{mT.init(e,t),XO.init(e,t)}),ak=B(`ZodULID`,(e,t)=>{hT.init(e,t),XO.init(e,t)}),ok=B(`ZodXID`,(e,t)=>{gT.init(e,t),XO.init(e,t)}),sk=B(`ZodKSUID`,(e,t)=>{_T.init(e,t),XO.init(e,t)}),ck=B(`ZodIPv4`,(e,t)=>{ST.init(e,t),XO.init(e,t)}),lk=B(`ZodIPv6`,(e,t)=>{CT.init(e,t),XO.init(e,t)}),uk=B(`ZodCIDRv4`,(e,t)=>{wT.init(e,t),XO.init(e,t)}),dk=B(`ZodCIDRv6`,(e,t)=>{TT.init(e,t),XO.init(e,t)}),fk=B(`ZodBase64`,(e,t)=>{DT.init(e,t),XO.init(e,t)}),pk=B(`ZodBase64URL`,(e,t)=>{kT.init(e,t),XO.init(e,t)}),mk=B(`ZodE164`,(e,t)=>{AT.init(e,t),XO.init(e,t)}),hk=B(`ZodJWT`,(e,t)=>{MT.init(e,t),XO.init(e,t)}),gk=B(`ZodNumber`,(e,t)=>{NT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>RD(e,t,n,r),KO(e,`ZodNumber`,{gt(e,t){return this.check(oD(e,t))},gte(e,t){return this.check(sD(e,t))},min(e,t){return this.check(sD(e,t))},lt(e,t){return this.check(iD(e,t))},lte(e,t){return this.check(aD(e,t))},max(e,t){return this.check(aD(e,t))},int(e){return this.check(vk(e))},safe(e){return this.check(vk(e))},positive(e){return this.check(oD(0,e))},nonnegative(e){return this.check(sD(0,e))},negative(e){return this.check(iD(0,e))},nonpositive(e){return this.check(aD(0,e))},multipleOf(e,t){return this.check(cD(e,t))},step(e,t){return this.check(cD(e,t))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function U(e){return ZE(gk,e)}var _k=B(`ZodNumberFormat`,(e,t)=>{PT.init(e,t),gk.init(e,t)});function vk(e){return QE(_k,e)}var yk=B(`ZodBoolean`,(e,t)=>{FT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zD(e,t,n,r)});function bk(e){return $E(yk,e)}var xk=B(`ZodNull`,(e,t)=>{IT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>HD(e,t,n,r)});function Sk(e){return eD(xk,e)}var Ck=B(`ZodAny`,(e,t)=>{LT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function wk(){return tD(Ck)}var Tk=B(`ZodUnknown`,(e,t)=>{RT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Ek(){return nD(Tk)}var Dk=B(`ZodNever`,(e,t)=>{zT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>GD(e,t,n,r)});function Ok(e){return rD(Dk,e)}var kk=B(`ZodArray`,(e,t)=>{VT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>oO(e,t,n,r),e.element=t.element,KO(e,`ZodArray`,{min(e,t){return this.check(uD(e,t))},nonempty(e){return this.check(uD(1,e))},max(e,t){return this.check(lD(e,t))},length(e,t){return this.check(dD(e,t))},unwrap(){return this.element}})});function W(e,t){return wD(kk,e,t)}var Ak=B(`ZodObject`,(e,t)=>{KT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>sO(e,t,n,r),pC(e,`shape`,()=>t.shape),KO(e,`ZodObject`,{keyof(){return Vk(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:Ek()})},loose(){return this.clone({...this._zod.def,catchall:Ek()})},strict(){return this.clone({...this._zod.def,catchall:Ok()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return AC(this,e)},safeExtend(e){return jC(this,e)},merge(e){return MC(this,e)},pick(e){return OC(this,e)},omit(e){return kC(this,e)},partial(...e){return NC(Gk,this,e[0])},required(...e){return PC(tA,this,e[0])}})});function G(e,t){return new Ak({type:`object`,shape:e??{},...V(t)})}function jk(e,t){return new Ak({type:`object`,shape:e,catchall:Ek(),...V(t)})}var Mk=B(`ZodUnion`,(e,t)=>{JT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>cO(e,t,n,r),e.options=t.options});function Nk(e,t){return new Mk({type:`union`,options:e,...V(t)})}var Pk=B(`ZodDiscriminatedUnion`,(e,t)=>{Mk.init(e,t),YT.init(e,t)});function Fk(e,t,n){return new Pk({type:`union`,options:t,discriminator:e,...V(n)})}var Ik=B(`ZodIntersection`,(e,t)=>{XT.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>lO(e,t,n,r)});function Lk(e,t){return new Ik({type:`intersection`,left:e,right:t})}var Rk=B(`ZodRecord`,(e,t)=>{$T.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>dO(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function zk(e,t,n){return!t||!t._zod?new Rk({type:`record`,keyType:H(),valueType:e,...V(t)}):new Rk({type:`record`,keyType:e,valueType:t,...V(n)})}var Bk=B(`ZodEnum`,(e,t)=>{eE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>YD(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Bk({...t,checks:[],...V(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Bk({...t,checks:[],...V(r),entries:i})}});function Vk(e,t){return new Bk({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...V(t)})}var Hk=B(`ZodLiteral`,(e,t)=>{tE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>XD(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function K(e,t){return new Hk({type:`literal`,values:Array.isArray(e)?e:[e],...V(t)})}var Uk=B(`ZodTransform`,(e,t)=>{nE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>rO(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new rC(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(VC(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(VC(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=i,n.fallback=!0,n)}});function Wk(e){return new Uk({type:`transform`,transform:e})}var Gk=B(`ZodOptional`,(e,t)=>{iE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>bO(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Kk(e){return new Gk({type:`optional`,innerType:e})}var qk=B(`ZodExactOptional`,(e,t)=>{aE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>bO(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Jk(e){return new qk({type:`optional`,innerType:e})}var Yk=B(`ZodNullable`,(e,t)=>{oE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>fO(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Xk(e){return new Yk({type:`nullable`,innerType:e})}var Zk=B(`ZodDefault`,(e,t)=>{sE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>mO(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Qk(e,t){return new Zk({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():SC(t)}})}var $k=B(`ZodPrefault`,(e,t)=>{lE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>hO(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function eA(e,t){return new $k({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():SC(t)}})}var tA=B(`ZodNonOptional`,(e,t)=>{uE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>pO(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function nA(e,t){return new tA({type:`nonoptional`,innerType:e,...V(t)})}var rA=B(`ZodCatch`,(e,t)=>{fE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>gO(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function iA(e,t){return new rA({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var aA=B(`ZodPipe`,(e,t)=>{pE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_O(e,t,n,r),e.in=t.in,e.out=t.out});function oA(e,t){return new aA({type:`pipe`,in:e,out:t})}var sA=B(`ZodReadonly`,(e,t)=>{hE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>vO(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function cA(e){return new sA({type:`readonly`,innerType:e})}var lA=B(`ZodLazy`,(e,t)=>{_E.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xO(e,t,n,r),e.unwrap=()=>e._zod.def.getter()});function uA(e){return new lA({type:`lazy`,getter:e})}var dA=B(`ZodCustom`,(e,t)=>{vE.init(e,t),qO.init(e,t),e._zod.processJSONSchema=(t,n,r)=>tO(e,t,n,r)});function fA(e,t){return TD(dA,e??(()=>!0),t)}function pA(e,t={}){return ED(dA,e,t)}function mA(e,t){return DD(e,t)}function hA(e,t={}){let n=new dA({type:`custom`,check:`custom`,fn:t=>t instanceof e,abort:!0,...V(t)});return n._zod.bag.Class=e,n._zod.check=t=>{t.value instanceof e||t.issues.push({code:`invalid_type`,expected:e.name,input:t.value,inst:n,path:[...n._zod.def.path??[]]})},n}var gA;(function(e){e.assertEqual=e=>{};function t(e){}e.assertIs=t;function n(e){throw Error()}e.assertNever=n,e.arrayToEnum=e=>{let t={};for(let n of e)t[n]=n;return t},e.getValidEnumValues=t=>{let n=e.objectKeys(t).filter(e=>typeof t[t[e]]!=`number`),r={};for(let e of n)r[e]=t[e];return e.objectValues(r)},e.objectValues=t=>e.objectKeys(t).map(function(e){return t[e]}),e.objectKeys=typeof Object.keys==`function`?e=>Object.keys(e):e=>{let t=[];for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=(e,t)=>{for(let n of e)if(t(n))return n},e.isInteger=typeof Number.isInteger==`function`?e=>Number.isInteger(e):e=>typeof e==`number`&&Number.isFinite(e)&&Math.floor(e)===e;function r(e,t=` | `){return e.map(e=>typeof e==`string`?`'${e}'`:e).join(t)}e.joinValues=r,e.jsonStringifyReplacer=(e,t)=>typeof t==`bigint`?t.toString():t})(gA||={});var _A;(function(e){e.mergeShapes=(e,t)=>({...e,...t})})(_A||={});var q=gA.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),vA=e=>{switch(typeof e){case`undefined`:return q.undefined;case`string`:return q.string;case`number`:return Number.isNaN(e)?q.nan:q.number;case`boolean`:return q.boolean;case`function`:return q.function;case`bigint`:return q.bigint;case`symbol`:return q.symbol;case`object`:return Array.isArray(e)?q.array:e===null?q.null:e.then&&typeof e.then==`function`&&e.catch&&typeof e.catch==`function`?q.promise:typeof Map<`u`&&e instanceof Map?q.map:typeof Set<`u`&&e instanceof Set?q.set:typeof Date<`u`&&e instanceof Date?q.date:q.object;default:return q.unknown}},J=gA.arrayToEnum([`invalid_type`,`invalid_literal`,`custom`,`invalid_union`,`invalid_union_discriminator`,`invalid_enum_value`,`unrecognized_keys`,`invalid_arguments`,`invalid_return_type`,`invalid_date`,`invalid_string`,`too_small`,`too_big`,`invalid_intersection_types`,`not_multiple_of`,`not_finite`]),yA=class e extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name=`ZodError`,this.issues=e}format(e){let t=e||function(e){return e.message},n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`)i.unionErrors.map(r);else if(i.code===`invalid_return_type`)r(i.returnTypeError);else if(i.code===`invalid_arguments`)r(i.argumentsError);else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(this),n}static assert(t){if(!(t instanceof e))throw Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,gA.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=e=>e.message){let t=Object.create(null),n=[];for(let r of this.issues)if(r.path.length>0){let n=r.path[0];t[n]=t[n]||[],t[n].push(e(r))}else n.push(e(r));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}};yA.create=e=>new yA(e);var bA=(e,t)=>{let n;switch(e.code){case J.invalid_type:n=e.received===q.undefined?`Required`:`Expected ${e.expected}, received ${e.received}`;break;case J.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,gA.jsonStringifyReplacer)}`;break;case J.unrecognized_keys:n=`Unrecognized key(s) in object: ${gA.joinValues(e.keys,`, `)}`;break;case J.invalid_union:n=`Invalid input`;break;case J.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${gA.joinValues(e.options)}`;break;case J.invalid_enum_value:n=`Invalid enum value. Expected ${gA.joinValues(e.options)}, received '${e.received}'`;break;case J.invalid_arguments:n=`Invalid function arguments`;break;case J.invalid_return_type:n=`Invalid function return type`;break;case J.invalid_date:n=`Invalid date`;break;case J.invalid_string:typeof e.validation==`object`?`includes`in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position==`number`&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):`startsWith`in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:`endsWith`in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:gA.assertNever(e.validation):n=e.validation===`regex`?`Invalid`:`Invalid ${e.validation}`;break;case J.too_small:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at least`:`more than`} ${e.minimum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at least`:`over`} ${e.minimum} character(s)`:e.type===`number`||e.type===`bigint`?`Number must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${e.minimum}`:e.type===`date`?`Date must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${new Date(Number(e.minimum))}`:`Invalid input`;break;case J.too_big:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at most`:`less than`} ${e.maximum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at most`:`under`} ${e.maximum} character(s)`:e.type===`number`?`Number must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`bigint`?`BigInt must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`date`?`Date must be ${e.exact?`exactly`:e.inclusive?`smaller than or equal to`:`smaller than`} ${new Date(Number(e.maximum))}`:`Invalid input`;break;case J.custom:n=`Invalid input`;break;case J.invalid_intersection_types:n=`Intersection results could not be merged`;break;case J.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case J.not_finite:n=`Number must be finite`;break;default:n=t.defaultError,gA.assertNever(e)}return{message:n}},xA=bA;function SA(){return xA}var CA=e=>{let{data:t,path:n,errorMaps:r,issueData:i}=e,a=[...n,...i.path||[]],o={...i,path:a};if(i.message!==void 0)return{...i,path:a,message:i.message};let s=``,c=r.filter(e=>!!e).slice().reverse();for(let e of c)s=e(o,{data:t,defaultError:s}).message;return{...i,path:a,message:s}};function Y(e,t){let n=SA(),r=CA({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===bA?void 0:bA].filter(e=>!!e)});e.common.issues.push(r)}var wA=class e{constructor(){this.value=`valid`}dirty(){this.value===`valid`&&(this.value=`dirty`)}abort(){this.value!==`aborted`&&(this.value=`aborted`)}static mergeArray(e,t){let n=[];for(let r of t){if(r.status===`aborted`)return TA;r.status===`dirty`&&e.dirty(),n.push(r.value)}return{status:e.value,value:n}}static async mergeObjectAsync(t,n){let r=[];for(let e of n){let t=await e.key,n=await e.value;r.push({key:t,value:n})}return e.mergeObjectSync(t,r)}static mergeObjectSync(e,t){let n={};for(let r of t){let{key:t,value:i}=r;if(t.status===`aborted`||i.status===`aborted`)return TA;t.status===`dirty`&&e.dirty(),i.status===`dirty`&&e.dirty(),t.value!==`__proto__`&&(i.value!==void 0||r.alwaysSet)&&(n[t.value]=i.value)}return{status:e.value,value:n}}},TA=Object.freeze({status:`aborted`}),EA=e=>({status:`dirty`,value:e}),DA=e=>({status:`valid`,value:e}),OA=e=>e.status===`aborted`,kA=e=>e.status===`dirty`,AA=e=>e.status===`valid`,jA=e=>typeof Promise<`u`&&e instanceof Promise,X;(function(e){e.errToObj=e=>typeof e==`string`?{message:e}:e||{},e.toString=e=>typeof e==`string`?e:e?.message})(X||={});var MA=class{constructor(e,t,n,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=r}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},NA=(e,t)=>{if(AA(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw Error(`Validation failed but no issues detected.`);return{success:!1,get error(){if(this._error)return this._error;let t=new yA(e.common.issues);return this._error=t,this._error}}};function PA(e){if(!e)return{};let{errorMap:t,invalid_type_error:n,required_error:r,description:i}=e;if(t&&(n||r))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(t,i)=>{let{message:a}=e;return t.code===`invalid_enum_value`?{message:a??i.defaultError}:i.data===void 0?{message:a??r??i.defaultError}:t.code===`invalid_type`?{message:a??n??i.defaultError}:{message:i.defaultError}},description:i}}var FA=class{get description(){return this._def.description}_getType(e){return vA(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:vA(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new wA,ctx:{common:e.parent.common,data:e.data,parsedType:vA(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(jA(t))throw Error(`Synchronous parse encountered promise.`);return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){let n={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:vA(e)};return NA(n,this._parseSync({data:e,path:n.path,parent:n}))}"~validate"(e){let t={common:{issues:[],async:!!this[`~standard`].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:vA(e)};if(!this[`~standard`].async)try{let n=this._parseSync({data:e,path:[],parent:t});return AA(n)?{value:n.value}:{issues:t.common.issues}}catch(e){e?.message?.toLowerCase()?.includes(`encountered`)&&(this[`~standard`].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(e=>AA(e)?{value:e.value}:{issues:t.common.issues})}async parseAsync(e,t){let n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){let n={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:vA(e)},r=this._parse({data:e,path:n.path,parent:n});return NA(n,await(jA(r)?r:Promise.resolve(r)))}refine(e,t){let n=e=>typeof t==`string`||t===void 0?{message:t}:typeof t==`function`?t(e):t;return this._refinement((t,r)=>{let i=e(t),a=()=>r.addIssue({code:J.custom,...n(t)});return typeof Promise<`u`&&i instanceof Promise?i.then(e=>e?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,t){return this._refinement((n,r)=>e(n)?!0:(r.addIssue(typeof t==`function`?t(n,r):t),!1))}_refinement(e){return new Rj({schema:this,typeName:Z.ZodEffects,effect:{type:`refinement`,refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this[`~standard`]={version:1,vendor:`zod`,validate:e=>this[`~validate`](e)}}optional(){return zj.create(this,this._def)}nullable(){return Bj.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return yj.create(this)}promise(){return Lj.create(this,this._def)}or(e){return Sj.create([this,e],this._def)}and(e){return Ej.create(this,e,this._def)}transform(e){return new Rj({...PA(this._def),schema:this,typeName:Z.ZodEffects,effect:{type:`transform`,transform:e}})}default(e){let t=typeof e==`function`?e:()=>e;return new Vj({...PA(this._def),innerType:this,defaultValue:t,typeName:Z.ZodDefault})}brand(){return new Wj({typeName:Z.ZodBranded,type:this,...PA(this._def)})}catch(e){let t=typeof e==`function`?e:()=>e;return new Hj({...PA(this._def),innerType:this,catchValue:t,typeName:Z.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Gj.create(this,e)}readonly(){return Kj.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},IA=/^c[^\s-]{8,}$/i,LA=/^[0-9a-z]+$/,RA=/^[0-9A-HJKMNP-TV-Z]{26}$/i,zA=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,BA=/^[a-z0-9_-]{21}$/i,VA=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,HA=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,UA=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,WA=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,GA,KA=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,qA=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,JA=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,YA=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,XA=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ZA=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,QA=`((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))`,$A=RegExp(`^${QA}$`);function ej(e){let t=`[0-5]\\d`;e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision??(t=`${t}(\\.\\d+)?`);let n=e.precision?`+`:`?`;return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${n}`}function tj(e){return RegExp(`^${ej(e)}$`)}function nj(e){let t=`${QA}T${ej(e)}`,n=[];return n.push(e.local?`Z?`:`Z`),e.offset&&n.push(`([+-]\\d{2}:?\\d{2})`),t=`${t}(${n.join(`|`)})`,RegExp(`^${t}$`)}function rj(e,t){return!!((t===`v4`||!t)&&KA.test(e)||(t===`v6`||!t)&&JA.test(e))}function ij(e,t){if(!VA.test(e))return!1;try{let[n]=e.split(`.`);if(!n)return!1;let r=n.replace(/-/g,`+`).replace(/_/g,`/`).padEnd(n.length+(4-n.length%4)%4,`=`),i=JSON.parse(atob(r));return!(typeof i!=`object`||!i||`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&i.alg!==t)}catch{return!1}}function aj(e,t){return!!((t===`v4`||!t)&&qA.test(e)||(t===`v6`||!t)&&YA.test(e))}var oj=class e extends FA{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==q.string){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.string,received:t.parsedType}),TA}let t=new wA,n;for(let r of this._def.checks)if(r.kind===`min`)e.data.length<r.value&&(n=this._getOrReturnCtx(e,n),Y(n,{code:J.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`max`)e.data.length>r.value&&(n=this._getOrReturnCtx(e,n),Y(n,{code:J.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`length`){let i=e.data.length>r.value,a=e.data.length<r.value;(i||a)&&(n=this._getOrReturnCtx(e,n),i?Y(n,{code:J.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}):a&&Y(n,{code:J.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}),t.dirty())}else if(r.kind===`email`)UA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`email`,code:J.invalid_string,message:r.message}),t.dirty());else if(r.kind===`emoji`)GA||=new RegExp(WA,`u`),GA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`emoji`,code:J.invalid_string,message:r.message}),t.dirty());else if(r.kind===`uuid`)zA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`uuid`,code:J.invalid_string,message:r.message}),t.dirty());else if(r.kind===`nanoid`)BA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`nanoid`,code:J.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid`)IA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`cuid`,code:J.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid2`)LA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`cuid2`,code:J.invalid_string,message:r.message}),t.dirty());else if(r.kind===`ulid`)RA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`ulid`,code:J.invalid_string,message:r.message}),t.dirty());else if(r.kind===`url`)try{new URL(e.data)}catch{n=this._getOrReturnCtx(e,n),Y(n,{validation:`url`,code:J.invalid_string,message:r.message}),t.dirty()}else r.kind===`regex`?(r.regex.lastIndex=0,r.regex.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`regex`,code:J.invalid_string,message:r.message}),t.dirty())):r.kind===`trim`?e.data=e.data.trim():r.kind===`includes`?e.data.includes(r.value,r.position)||(n=this._getOrReturnCtx(e,n),Y(n,{code:J.invalid_string,validation:{includes:r.value,position:r.position},message:r.message}),t.dirty()):r.kind===`toLowerCase`?e.data=e.data.toLowerCase():r.kind===`toUpperCase`?e.data=e.data.toUpperCase():r.kind===`startsWith`?e.data.startsWith(r.value)||(n=this._getOrReturnCtx(e,n),Y(n,{code:J.invalid_string,validation:{startsWith:r.value},message:r.message}),t.dirty()):r.kind===`endsWith`?e.data.endsWith(r.value)||(n=this._getOrReturnCtx(e,n),Y(n,{code:J.invalid_string,validation:{endsWith:r.value},message:r.message}),t.dirty()):r.kind===`datetime`?nj(r).test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{code:J.invalid_string,validation:`datetime`,message:r.message}),t.dirty()):r.kind===`date`?$A.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{code:J.invalid_string,validation:`date`,message:r.message}),t.dirty()):r.kind===`time`?tj(r).test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{code:J.invalid_string,validation:`time`,message:r.message}),t.dirty()):r.kind===`duration`?HA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`duration`,code:J.invalid_string,message:r.message}),t.dirty()):r.kind===`ip`?rj(e.data,r.version)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`ip`,code:J.invalid_string,message:r.message}),t.dirty()):r.kind===`jwt`?ij(e.data,r.alg)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`jwt`,code:J.invalid_string,message:r.message}),t.dirty()):r.kind===`cidr`?aj(e.data,r.version)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`cidr`,code:J.invalid_string,message:r.message}),t.dirty()):r.kind===`base64`?XA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`base64`,code:J.invalid_string,message:r.message}),t.dirty()):r.kind===`base64url`?ZA.test(e.data)||(n=this._getOrReturnCtx(e,n),Y(n,{validation:`base64url`,code:J.invalid_string,message:r.message}),t.dirty()):gA.assertNever(r);return{status:t.value,value:e.data}}_regex(e,t,n){return this.refinement(t=>e.test(t),{validation:t,code:J.invalid_string,...X.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(e){return this._addCheck({kind:`email`,...X.errToObj(e)})}url(e){return this._addCheck({kind:`url`,...X.errToObj(e)})}emoji(e){return this._addCheck({kind:`emoji`,...X.errToObj(e)})}uuid(e){return this._addCheck({kind:`uuid`,...X.errToObj(e)})}nanoid(e){return this._addCheck({kind:`nanoid`,...X.errToObj(e)})}cuid(e){return this._addCheck({kind:`cuid`,...X.errToObj(e)})}cuid2(e){return this._addCheck({kind:`cuid2`,...X.errToObj(e)})}ulid(e){return this._addCheck({kind:`ulid`,...X.errToObj(e)})}base64(e){return this._addCheck({kind:`base64`,...X.errToObj(e)})}base64url(e){return this._addCheck({kind:`base64url`,...X.errToObj(e)})}jwt(e){return this._addCheck({kind:`jwt`,...X.errToObj(e)})}ip(e){return this._addCheck({kind:`ip`,...X.errToObj(e)})}cidr(e){return this._addCheck({kind:`cidr`,...X.errToObj(e)})}datetime(e){return typeof e==`string`?this._addCheck({kind:`datetime`,precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:`datetime`,precision:e?.precision===void 0?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...X.errToObj(e?.message)})}date(e){return this._addCheck({kind:`date`,message:e})}time(e){return typeof e==`string`?this._addCheck({kind:`time`,precision:null,message:e}):this._addCheck({kind:`time`,precision:e?.precision===void 0?null:e?.precision,...X.errToObj(e?.message)})}duration(e){return this._addCheck({kind:`duration`,...X.errToObj(e)})}regex(e,t){return this._addCheck({kind:`regex`,regex:e,...X.errToObj(t)})}includes(e,t){return this._addCheck({kind:`includes`,value:e,position:t?.position,...X.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:`startsWith`,value:e,...X.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:`endsWith`,value:e,...X.errToObj(t)})}min(e,t){return this._addCheck({kind:`min`,value:e,...X.errToObj(t)})}max(e,t){return this._addCheck({kind:`max`,value:e,...X.errToObj(t)})}length(e,t){return this._addCheck({kind:`length`,value:e,...X.errToObj(t)})}nonempty(e){return this.min(1,X.errToObj(e))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:`trim`}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toLowerCase`}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toUpperCase`}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind===`datetime`)}get isDate(){return!!this._def.checks.find(e=>e.kind===`date`)}get isTime(){return!!this._def.checks.find(e=>e.kind===`time`)}get isDuration(){return!!this._def.checks.find(e=>e.kind===`duration`)}get isEmail(){return!!this._def.checks.find(e=>e.kind===`email`)}get isURL(){return!!this._def.checks.find(e=>e.kind===`url`)}get isEmoji(){return!!this._def.checks.find(e=>e.kind===`emoji`)}get isUUID(){return!!this._def.checks.find(e=>e.kind===`uuid`)}get isNANOID(){return!!this._def.checks.find(e=>e.kind===`nanoid`)}get isCUID(){return!!this._def.checks.find(e=>e.kind===`cuid`)}get isCUID2(){return!!this._def.checks.find(e=>e.kind===`cuid2`)}get isULID(){return!!this._def.checks.find(e=>e.kind===`ulid`)}get isIP(){return!!this._def.checks.find(e=>e.kind===`ip`)}get isCIDR(){return!!this._def.checks.find(e=>e.kind===`cidr`)}get isBase64(){return!!this._def.checks.find(e=>e.kind===`base64`)}get isBase64url(){return!!this._def.checks.find(e=>e.kind===`base64url`)}get minLength(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}};oj.create=e=>new oj({checks:[],typeName:Z.ZodString,coerce:e?.coerce??!1,...PA(e)});function sj(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=(t.toString().split(`.`)[1]||``).length,i=n>r?n:r;return Number.parseInt(e.toFixed(i).replace(`.`,``))%Number.parseInt(t.toFixed(i).replace(`.`,``))/10**i}var cj=class e extends FA{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==q.number){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.number,received:t.parsedType}),TA}let t,n=new wA;for(let r of this._def.checks)r.kind===`int`?gA.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),Y(t,{code:J.invalid_type,expected:`integer`,received:`float`,message:r.message}),n.dirty()):r.kind===`min`?(r.inclusive?e.data<r.value:e.data<=r.value)&&(t=this._getOrReturnCtx(e,t),Y(t,{code:J.too_small,minimum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`max`?(r.inclusive?e.data>r.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),Y(t,{code:J.too_big,maximum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`multipleOf`?sj(e.data,r.value)!==0&&(t=this._getOrReturnCtx(e,t),Y(t,{code:J.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):r.kind===`finite`?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),Y(t,{code:J.not_finite,message:r.message}),n.dirty()):gA.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,X.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,X.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,X.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,X.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:X.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(e){return this._addCheck({kind:`int`,message:X.toString(e)})}positive(e){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:X.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:X.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:X.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:X.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:X.toString(t)})}finite(e){return this._addCheck({kind:`finite`,message:X.toString(e)})}safe(e){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:X.toString(e)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:X.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind===`int`||e.kind===`multipleOf`&&gA.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let n of this._def.checks)if(n.kind===`finite`||n.kind===`int`||n.kind===`multipleOf`)return!0;else n.kind===`min`?(t===null||n.value>t)&&(t=n.value):n.kind===`max`&&(e===null||n.value<e)&&(e=n.value);return Number.isFinite(t)&&Number.isFinite(e)}};cj.create=e=>new cj({checks:[],typeName:Z.ZodNumber,coerce:e?.coerce||!1,...PA(e)});var lj=class e extends FA{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==q.bigint)return this._getInvalidInput(e);let t,n=new wA;for(let r of this._def.checks)r.kind===`min`?(r.inclusive?e.data<r.value:e.data<=r.value)&&(t=this._getOrReturnCtx(e,t),Y(t,{code:J.too_small,type:`bigint`,minimum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`max`?(r.inclusive?e.data>r.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),Y(t,{code:J.too_big,type:`bigint`,maximum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`multipleOf`?e.data%r.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),Y(t,{code:J.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):gA.assertNever(r);return{status:n.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.bigint,received:t.parsedType}),TA}gte(e,t){return this.setLimit(`min`,e,!0,X.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,X.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,X.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,X.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:X.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!1,message:X.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:X.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:X.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:X.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:X.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}};lj.create=e=>new lj({checks:[],typeName:Z.ZodBigInt,coerce:e?.coerce??!1,...PA(e)});var uj=class extends FA{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==q.boolean){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.boolean,received:t.parsedType}),TA}return DA(e.data)}};uj.create=e=>new uj({typeName:Z.ZodBoolean,coerce:e?.coerce||!1,...PA(e)});var dj=class e extends FA{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==q.date){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.date,received:t.parsedType}),TA}if(Number.isNaN(e.data.getTime()))return Y(this._getOrReturnCtx(e),{code:J.invalid_date}),TA;let t=new wA,n;for(let r of this._def.checks)r.kind===`min`?e.data.getTime()<r.value&&(n=this._getOrReturnCtx(e,n),Y(n,{code:J.too_small,message:r.message,inclusive:!0,exact:!1,minimum:r.value,type:`date`}),t.dirty()):r.kind===`max`?e.data.getTime()>r.value&&(n=this._getOrReturnCtx(e,n),Y(n,{code:J.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:`date`}),t.dirty()):gA.assertNever(r);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(e,t){return this._addCheck({kind:`min`,value:e.getTime(),message:X.toString(t)})}max(e,t){return this._addCheck({kind:`max`,value:e.getTime(),message:X.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e==null?null:new Date(e)}get maxDate(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e==null?null:new Date(e)}};dj.create=e=>new dj({checks:[],coerce:e?.coerce||!1,typeName:Z.ZodDate,...PA(e)});var fj=class extends FA{_parse(e){if(this._getType(e)!==q.symbol){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.symbol,received:t.parsedType}),TA}return DA(e.data)}};fj.create=e=>new fj({typeName:Z.ZodSymbol,...PA(e)});var pj=class extends FA{_parse(e){if(this._getType(e)!==q.undefined){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.undefined,received:t.parsedType}),TA}return DA(e.data)}};pj.create=e=>new pj({typeName:Z.ZodUndefined,...PA(e)});var mj=class extends FA{_parse(e){if(this._getType(e)!==q.null){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.null,received:t.parsedType}),TA}return DA(e.data)}};mj.create=e=>new mj({typeName:Z.ZodNull,...PA(e)});var hj=class extends FA{constructor(){super(...arguments),this._any=!0}_parse(e){return DA(e.data)}};hj.create=e=>new hj({typeName:Z.ZodAny,...PA(e)});var gj=class extends FA{constructor(){super(...arguments),this._unknown=!0}_parse(e){return DA(e.data)}};gj.create=e=>new gj({typeName:Z.ZodUnknown,...PA(e)});var _j=class extends FA{_parse(e){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.never,received:t.parsedType}),TA}};_j.create=e=>new _j({typeName:Z.ZodNever,...PA(e)});var vj=class extends FA{_parse(e){if(this._getType(e)!==q.undefined){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.void,received:t.parsedType}),TA}return DA(e.data)}};vj.create=e=>new vj({typeName:Z.ZodVoid,...PA(e)});var yj=class e extends FA{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),r=this._def;if(t.parsedType!==q.array)return Y(t,{code:J.invalid_type,expected:q.array,received:t.parsedType}),TA;if(r.exactLength!==null){let e=t.data.length>r.exactLength.value,i=t.data.length<r.exactLength.value;(e||i)&&(Y(t,{code:e?J.too_big:J.too_small,minimum:i?r.exactLength.value:void 0,maximum:e?r.exactLength.value:void 0,type:`array`,inclusive:!0,exact:!0,message:r.exactLength.message}),n.dirty())}if(r.minLength!==null&&t.data.length<r.minLength.value&&(Y(t,{code:J.too_small,minimum:r.minLength.value,type:`array`,inclusive:!0,exact:!1,message:r.minLength.message}),n.dirty()),r.maxLength!==null&&t.data.length>r.maxLength.value&&(Y(t,{code:J.too_big,maximum:r.maxLength.value,type:`array`,inclusive:!0,exact:!1,message:r.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((e,n)=>r.type._parseAsync(new MA(t,e,t.path,n)))).then(e=>wA.mergeArray(n,e));let i=[...t.data].map((e,n)=>r.type._parseSync(new MA(t,e,t.path,n)));return wA.mergeArray(n,i)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:X.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:X.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:X.toString(n)}})}nonempty(e){return this.min(1,e)}};yj.create=(e,t)=>new yj({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Z.ZodArray,...PA(t)});function bj(e){if(e instanceof xj){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=zj.create(bj(r))}return new xj({...e._def,shape:()=>t})}else if(e instanceof yj)return new yj({...e._def,type:bj(e.element)});else if(e instanceof zj)return zj.create(bj(e.unwrap()));else if(e instanceof Bj)return Bj.create(bj(e.unwrap()));else if(e instanceof Dj)return Dj.create(e.items.map(e=>bj(e)));else return e}var xj=class e extends FA{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),t=gA.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==q.object){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.object,received:t.parsedType}),TA}let{status:t,ctx:n}=this._processInputParams(e),{shape:r,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof _j&&this._def.unknownKeys===`strip`))for(let e in n.data)i.includes(e)||a.push(e);let o=[];for(let e of i){let t=r[e],i=n.data[e];o.push({key:{status:`valid`,value:e},value:t._parse(new MA(n,i,n.path,e)),alwaysSet:e in n.data})}if(this._def.catchall instanceof _j){let e=this._def.unknownKeys;if(e===`passthrough`)for(let e of a)o.push({key:{status:`valid`,value:e},value:{status:`valid`,value:n.data[e]}});else if(e===`strict`)a.length>0&&(Y(n,{code:J.unrecognized_keys,keys:a}),t.dirty());else if(e!==`strip`)throw Error(`Internal ZodObject error: invalid unknownKeys value.`)}else{let e=this._def.catchall;for(let t of a){let r=n.data[t];o.push({key:{status:`valid`,value:t},value:e._parse(new MA(n,r,n.path,t)),alwaysSet:t in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let e=[];for(let t of o){let n=await t.key,r=await t.value;e.push({key:n,value:r,alwaysSet:t.alwaysSet})}return e}).then(e=>wA.mergeObjectSync(t,e)):wA.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(t){return X.errToObj,new e({...this._def,unknownKeys:`strict`,...t===void 0?{}:{errorMap:(e,n)=>{let r=this._def.errorMap?.(e,n).message??n.defaultError;return e.code===`unrecognized_keys`?{message:X.errToObj(t).message??r}:{message:r}}}})}strip(){return new e({...this._def,unknownKeys:`strip`})}passthrough(){return new e({...this._def,unknownKeys:`passthrough`})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:Z.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let n={};for(let e of gA.objectKeys(t))t[e]&&this.shape[e]&&(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}omit(t){let n={};for(let e of gA.objectKeys(this.shape))t[e]||(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}deepPartial(){return bj(this)}partial(t){let n={};for(let e of gA.objectKeys(this.shape)){let r=this.shape[e];t&&!t[e]?n[e]=r:n[e]=r.optional()}return new e({...this._def,shape:()=>n})}required(t){let n={};for(let e of gA.objectKeys(this.shape))if(t&&!t[e])n[e]=this.shape[e];else{let t=this.shape[e];for(;t instanceof zj;)t=t._def.innerType;n[e]=t}return new e({...this._def,shape:()=>n})}keyof(){return Pj(gA.objectKeys(this.shape))}};xj.create=(e,t)=>new xj({shape:()=>e,unknownKeys:`strip`,catchall:_j.create(),typeName:Z.ZodObject,...PA(t)}),xj.strictCreate=(e,t)=>new xj({shape:()=>e,unknownKeys:`strict`,catchall:_j.create(),typeName:Z.ZodObject,...PA(t)}),xj.lazycreate=(e,t)=>new xj({shape:e,unknownKeys:`strip`,catchall:_j.create(),typeName:Z.ZodObject,...PA(t)});var Sj=class extends FA{_parse(e){let{ctx:t}=this._processInputParams(e),n=this._def.options;function r(e){for(let t of e)if(t.result.status===`valid`)return t.result;for(let n of e)if(n.result.status===`dirty`)return t.common.issues.push(...n.ctx.common.issues),n.result;let n=e.map(e=>new yA(e.ctx.common.issues));return Y(t,{code:J.invalid_union,unionErrors:n}),TA}if(t.common.async)return Promise.all(n.map(async e=>{let n={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:n}),ctx:n}})).then(r);{let e,r=[];for(let i of n){let n={...t,common:{...t.common,issues:[]},parent:null},a=i._parseSync({data:t.data,path:t.path,parent:n});if(a.status===`valid`)return a;a.status===`dirty`&&!e&&(e={result:a,ctx:n}),n.common.issues.length&&r.push(n.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;let i=r.map(e=>new yA(e));return Y(t,{code:J.invalid_union,unionErrors:i}),TA}}get options(){return this._def.options}};Sj.create=(e,t)=>new Sj({options:e,typeName:Z.ZodUnion,...PA(t)});var Cj=e=>e instanceof Mj?Cj(e.schema):e instanceof Rj?Cj(e.innerType()):e instanceof Nj?[e.value]:e instanceof Fj?e.options:e instanceof Ij?gA.objectValues(e.enum):e instanceof Vj?Cj(e._def.innerType):e instanceof pj?[void 0]:e instanceof mj?[null]:e instanceof zj?[void 0,...Cj(e.unwrap())]:e instanceof Bj?[null,...Cj(e.unwrap())]:e instanceof Wj||e instanceof Kj?Cj(e.unwrap()):e instanceof Hj?Cj(e._def.innerType):[],wj=class e extends FA{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==q.object)return Y(t,{code:J.invalid_type,expected:q.object,received:t.parsedType}),TA;let n=this.discriminator,r=t.data[n],i=this.optionsMap.get(r);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(Y(t,{code:J.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),TA)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){let i=new Map;for(let e of n){let n=Cj(e.shape[t]);if(!n.length)throw Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let r of n){if(i.has(r))throw Error(`Discriminator property ${String(t)} has duplicate value ${String(r)}`);i.set(r,e)}}return new e({typeName:Z.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...PA(r)})}};function Tj(e,t){let n=vA(e),r=vA(t);if(e===t)return{valid:!0,data:e};if(n===q.object&&r===q.object){let n=gA.objectKeys(t),r=gA.objectKeys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Tj(e[n],t[n]);if(!r.valid)return{valid:!1};i[n]=r.data}return{valid:!0,data:i}}else if(n===q.array&&r===q.array){if(e.length!==t.length)return{valid:!1};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Tj(i,a);if(!o.valid)return{valid:!1};n.push(o.data)}return{valid:!0,data:n}}else if(n===q.date&&r===q.date&&+e==+t)return{valid:!0,data:e};else return{valid:!1}}var Ej=class extends FA{_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=(e,r)=>{if(OA(e)||OA(r))return TA;let i=Tj(e.value,r.value);return i.valid?((kA(e)||kA(r))&&t.dirty(),{status:t.value,value:i.data}):(Y(n,{code:J.invalid_intersection_types}),TA)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([e,t])=>r(e,t)):r(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Ej.create=(e,t,n)=>new Ej({left:e,right:t,typeName:Z.ZodIntersection,...PA(n)});var Dj=class e extends FA{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==q.array)return Y(n,{code:J.invalid_type,expected:q.array,received:n.parsedType}),TA;if(n.data.length<this._def.items.length)return Y(n,{code:J.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),TA;!this._def.rest&&n.data.length>this._def.items.length&&(Y(n,{code:J.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),t.dirty());let r=[...n.data].map((e,t)=>{let r=this._def.items[t]||this._def.rest;return r?r._parse(new MA(n,e,n.path,t)):null}).filter(e=>!!e);return n.common.async?Promise.all(r).then(e=>wA.mergeArray(t,e)):wA.mergeArray(t,r)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};Dj.create=(e,t)=>{if(!Array.isArray(e))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new Dj({items:e,typeName:Z.ZodTuple,rest:null,...PA(t)})};var Oj=class e extends FA{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==q.object)return Y(n,{code:J.invalid_type,expected:q.object,received:n.parsedType}),TA;let r=[],i=this._def.keyType,a=this._def.valueType;for(let e in n.data)r.push({key:i._parse(new MA(n,e,n.path,e)),value:a._parse(new MA(n,n.data[e],n.path,e)),alwaysSet:e in n.data});return n.common.async?wA.mergeObjectAsync(t,r):wA.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof FA?new e({keyType:t,valueType:n,typeName:Z.ZodRecord,...PA(r)}):new e({keyType:oj.create(),valueType:t,typeName:Z.ZodRecord,...PA(n)})}},kj=class extends FA{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==q.map)return Y(n,{code:J.invalid_type,expected:q.map,received:n.parsedType}),TA;let r=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([e,t],a)=>({key:r._parse(new MA(n,e,n.path,[a,`key`])),value:i._parse(new MA(n,t,n.path,[a,`value`]))}));if(n.common.async){let e=new Map;return Promise.resolve().then(async()=>{for(let n of a){let r=await n.key,i=await n.value;if(r.status===`aborted`||i.status===`aborted`)return TA;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}})}else{let e=new Map;for(let n of a){let r=n.key,i=n.value;if(r.status===`aborted`||i.status===`aborted`)return TA;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}}};kj.create=(e,t,n)=>new kj({valueType:t,keyType:e,typeName:Z.ZodMap,...PA(n)});var Aj=class e extends FA{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==q.set)return Y(n,{code:J.invalid_type,expected:q.set,received:n.parsedType}),TA;let r=this._def;r.minSize!==null&&n.data.size<r.minSize.value&&(Y(n,{code:J.too_small,minimum:r.minSize.value,type:`set`,inclusive:!0,exact:!1,message:r.minSize.message}),t.dirty()),r.maxSize!==null&&n.data.size>r.maxSize.value&&(Y(n,{code:J.too_big,maximum:r.maxSize.value,type:`set`,inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());let i=this._def.valueType;function a(e){let n=new Set;for(let r of e){if(r.status===`aborted`)return TA;r.status===`dirty`&&t.dirty(),n.add(r.value)}return{status:t.value,value:n}}let o=[...n.data.values()].map((e,t)=>i._parse(new MA(n,e,n.path,t)));return n.common.async?Promise.all(o).then(e=>a(e)):a(o)}min(t,n){return new e({...this._def,minSize:{value:t,message:X.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:X.toString(n)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};Aj.create=(e,t)=>new Aj({valueType:e,minSize:null,maxSize:null,typeName:Z.ZodSet,...PA(t)});var jj=class e extends FA{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==q.function)return Y(t,{code:J.invalid_type,expected:q.function,received:t.parsedType}),TA;function n(e,n){return CA({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,SA(),bA].filter(e=>!!e),issueData:{code:J.invalid_arguments,argumentsError:n}})}function r(e,n){return CA({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,SA(),bA].filter(e=>!!e),issueData:{code:J.invalid_return_type,returnTypeError:n}})}let i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof Lj){let e=this;return DA(async function(...t){let o=new yA([]),s=await e._def.args.parseAsync(t,i).catch(e=>{throw o.addIssue(n(t,e)),o}),c=await Reflect.apply(a,this,s);return await e._def.returns._def.type.parseAsync(c,i).catch(e=>{throw o.addIssue(r(c,e)),o})})}else{let e=this;return DA(function(...t){let o=e._def.args.safeParse(t,i);if(!o.success)throw new yA([n(t,o.error)]);let s=Reflect.apply(a,this,o.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new yA([r(s,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:Dj.create(t).rest(gj.create())})}returns(t){return new e({...this._def,returns:t})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(t,n,r){return new e({args:t||Dj.create([]).rest(gj.create()),returns:n||gj.create(),typeName:Z.ZodFunction,...PA(r)})}},Mj=class extends FA{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};Mj.create=(e,t)=>new Mj({getter:e,typeName:Z.ZodLazy,...PA(t)});var Nj=class extends FA{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return Y(t,{received:t.data,code:J.invalid_literal,expected:this._def.value}),TA}return{status:`valid`,value:e.data}}get value(){return this._def.value}};Nj.create=(e,t)=>new Nj({value:e,typeName:Z.ZodLiteral,...PA(t)});function Pj(e,t){return new Fj({values:e,typeName:Z.ZodEnum,...PA(t)})}var Fj=class e extends FA{_parse(e){if(typeof e.data!=`string`){let t=this._getOrReturnCtx(e),n=this._def.values;return Y(t,{expected:gA.joinValues(n),received:t.parsedType,code:J.invalid_type}),TA}if(this._cache||=new Set(this._def.values),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return Y(t,{received:t.data,code:J.invalid_enum_value,options:n}),TA}return DA(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(t,n=this._def){return e.create(t,{...this._def,...n})}exclude(t,n=this._def){return e.create(this.options.filter(e=>!t.includes(e)),{...this._def,...n})}};Fj.create=Pj;var Ij=class extends FA{_parse(e){let t=gA.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==q.string&&n.parsedType!==q.number){let e=gA.objectValues(t);return Y(n,{expected:gA.joinValues(e),received:n.parsedType,code:J.invalid_type}),TA}if(this._cache||=new Set(gA.getValidEnumValues(this._def.values)),!this._cache.has(e.data)){let e=gA.objectValues(t);return Y(n,{received:n.data,code:J.invalid_enum_value,options:e}),TA}return DA(e.data)}get enum(){return this._def.values}};Ij.create=(e,t)=>new Ij({values:e,typeName:Z.ZodNativeEnum,...PA(t)});var Lj=class extends FA{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==q.promise&&t.common.async===!1?(Y(t,{code:J.invalid_type,expected:q.promise,received:t.parsedType}),TA):DA((t.parsedType===q.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}};Lj.create=(e,t)=>new Lj({type:e,typeName:Z.ZodPromise,...PA(t)});var Rj=class extends FA{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Z.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=this._def.effect||null,i={addIssue:e=>{Y(n,e),e.fatal?t.abort():t.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),r.type===`preprocess`){let e=r.transform(n.data,i);if(n.common.async)return Promise.resolve(e).then(async e=>{if(t.value===`aborted`)return TA;let r=await this._def.schema._parseAsync({data:e,path:n.path,parent:n});return r.status===`aborted`?TA:r.status===`dirty`||t.value===`dirty`?EA(r.value):r});{if(t.value===`aborted`)return TA;let r=this._def.schema._parseSync({data:e,path:n.path,parent:n});return r.status===`aborted`?TA:r.status===`dirty`||t.value===`dirty`?EA(r.value):r}}if(r.type===`refinement`){let e=e=>{let t=r.refinement(e,i);if(n.common.async)return Promise.resolve(t);if(t instanceof Promise)throw Error(`Async refinement encountered during synchronous parse operation. Use .parseAsync instead.`);return e};if(n.common.async===!1){let r=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return r.status===`aborted`?TA:(r.status===`dirty`&&t.dirty(),e(r.value),{status:t.value,value:r.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(n=>n.status===`aborted`?TA:(n.status===`dirty`&&t.dirty(),e(n.value).then(()=>({status:t.value,value:n.value}))))}if(r.type===`transform`)if(n.common.async===!1){let e=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!AA(e))return TA;let a=r.transform(e.value,i);if(a instanceof Promise)throw Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);return{status:t.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(e=>AA(e)?Promise.resolve(r.transform(e.value,i)).then(e=>({status:t.value,value:e})):TA);gA.assertNever(r)}};Rj.create=(e,t,n)=>new Rj({schema:e,typeName:Z.ZodEffects,effect:t,...PA(n)}),Rj.createWithPreprocess=(e,t,n)=>new Rj({schema:t,effect:{type:`preprocess`,transform:e},typeName:Z.ZodEffects,...PA(n)});var zj=class extends FA{_parse(e){return this._getType(e)===q.undefined?DA(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};zj.create=(e,t)=>new zj({innerType:e,typeName:Z.ZodOptional,...PA(t)});var Bj=class extends FA{_parse(e){return this._getType(e)===q.null?DA(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Bj.create=(e,t)=>new Bj({innerType:e,typeName:Z.ZodNullable,...PA(t)});var Vj=class extends FA{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return t.parsedType===q.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};Vj.create=(e,t)=>new Vj({innerType:e,typeName:Z.ZodDefault,defaultValue:typeof t.default==`function`?t.default:()=>t.default,...PA(t)});var Hj=class extends FA{_parse(e){let{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},r=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return jA(r)?r.then(e=>({status:`valid`,value:e.status===`valid`?e.value:this._def.catchValue({get error(){return new yA(n.common.issues)},input:n.data})})):{status:`valid`,value:r.status===`valid`?r.value:this._def.catchValue({get error(){return new yA(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Hj.create=(e,t)=>new Hj({innerType:e,typeName:Z.ZodCatch,catchValue:typeof t.catch==`function`?t.catch:()=>t.catch,...PA(t)});var Uj=class extends FA{_parse(e){if(this._getType(e)!==q.nan){let t=this._getOrReturnCtx(e);return Y(t,{code:J.invalid_type,expected:q.nan,received:t.parsedType}),TA}return{status:`valid`,value:e.data}}};Uj.create=e=>new Uj({typeName:Z.ZodNaN,...PA(e)});var Wj=class extends FA{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}},Gj=class e extends FA{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let e=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?TA:e.status===`dirty`?(t.dirty(),EA(e.value)):this._def.out._parseAsync({data:e.value,path:n.path,parent:n})})();{let e=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?TA:e.status===`dirty`?(t.dirty(),{status:`dirty`,value:e.value}):this._def.out._parseSync({data:e.value,path:n.path,parent:n})}}static create(t,n){return new e({in:t,out:n,typeName:Z.ZodPipeline})}},Kj=class extends FA{_parse(e){let t=this._def.innerType._parse(e),n=e=>(AA(e)&&(e.value=Object.freeze(e.value)),e);return jA(t)?t.then(e=>n(e)):n(t)}unwrap(){return this._def.innerType}};Kj.create=(e,t)=>new Kj({innerType:e,typeName:Z.ZodReadonly,...PA(t)}),xj.lazycreate;var Z;(function(e){e.ZodString=`ZodString`,e.ZodNumber=`ZodNumber`,e.ZodNaN=`ZodNaN`,e.ZodBigInt=`ZodBigInt`,e.ZodBoolean=`ZodBoolean`,e.ZodDate=`ZodDate`,e.ZodSymbol=`ZodSymbol`,e.ZodUndefined=`ZodUndefined`,e.ZodNull=`ZodNull`,e.ZodAny=`ZodAny`,e.ZodUnknown=`ZodUnknown`,e.ZodNever=`ZodNever`,e.ZodVoid=`ZodVoid`,e.ZodArray=`ZodArray`,e.ZodObject=`ZodObject`,e.ZodUnion=`ZodUnion`,e.ZodDiscriminatedUnion=`ZodDiscriminatedUnion`,e.ZodIntersection=`ZodIntersection`,e.ZodTuple=`ZodTuple`,e.ZodRecord=`ZodRecord`,e.ZodMap=`ZodMap`,e.ZodSet=`ZodSet`,e.ZodFunction=`ZodFunction`,e.ZodLazy=`ZodLazy`,e.ZodLiteral=`ZodLiteral`,e.ZodEnum=`ZodEnum`,e.ZodEffects=`ZodEffects`,e.ZodNativeEnum=`ZodNativeEnum`,e.ZodOptional=`ZodOptional`,e.ZodNullable=`ZodNullable`,e.ZodDefault=`ZodDefault`,e.ZodCatch=`ZodCatch`,e.ZodPromise=`ZodPromise`,e.ZodBranded=`ZodBranded`,e.ZodPipeline=`ZodPipeline`,e.ZodReadonly=`ZodReadonly`})(Z||={}),oj.create,cj.create,Uj.create,lj.create,uj.create,dj.create,fj.create,pj.create,mj.create,hj.create,gj.create,_j.create,vj.create,yj.create,xj.create,xj.strictCreate,Sj.create,wj.create,Ej.create,Dj.create,Oj.create,kj.create,Aj.create,jj.create,Mj.create,Nj.create,Fj.create,Ij.create,Lj.create,Rj.create,zj.create,Bj.create,Rj.createWithPreprocess,Gj.create;var qj=class extends Error{constructor(e,t){super(e),this.name=`ParseError`,this.type=t.type,this.field=t.field,this.value=t.value,this.line=t.line}},Jj=10,Yj=13,Xj=32;function Zj(e){}function Qj(e){if(typeof e==`function`)throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=Zj,onError:n=Zj,onRetry:r=Zj,onComment:i,maxBufferSize:a}=e,o=[],s=0,c=!0,l,u=``,d=0,f,p=!1;function m(e){if(p)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(c&&(c=!1,e.charCodeAt(0)===239&&e.charCodeAt(1)===187&&e.charCodeAt(2)===191&&(e=e.slice(3))),o.length===0){let t=g(e);t!==``&&(o.push(t),s=t.length),h();return}if(e.indexOf(`
`)===-1&&e.indexOf(`\r`)===-1){o.push(e),s+=e.length,h();return}o.push(e);let t=o.join(``);o.length=0,s=0;let n=g(t);n!==``&&(o.push(n),s=n.length),h()}function h(){a!==void 0&&(s+u.length<=a||(p=!0,o.length=0,s=0,l=void 0,u=``,d=0,f=void 0,n(new qj(`Buffered data exceeded max buffer size of ${a} characters`,{type:`max-buffer-size-exceeded`}))))}function g(e){let n=0;if(e.indexOf(`\r`)===-1){let r=e.indexOf(`
`,n);for(;r!==-1;){if(n===r){d>0&&t({id:l,event:f,data:u}),l=void 0,u=``,d=0,f=void 0,n=r+1,r=e.indexOf(`
`,n);continue}let i=e.charCodeAt(n);if($j(e,n,i)){let i=e.charCodeAt(n+5)===Xj?n+6:n+5,a=e.slice(i,r);if(d===0&&e.charCodeAt(r+1)===Jj){t({id:l,event:f,data:a}),l=void 0,u=``,f=void 0,n=r+2,r=e.indexOf(`
`,n);continue}u=d===0?a:`${u}
${a}`,d++}else eM(e,n,i)?f=e.slice(e.charCodeAt(n+6)===Xj?n+7:n+6,r)||void 0:_(e,n,r);n=r+1,r=e.indexOf(`
`,n)}return e.slice(n)}for(;n<e.length;){let t=e.indexOf(`\r`,n),r=e.indexOf(`
`,n),i=-1;if(t!==-1&&r!==-1?i=t<r?t:r:t===-1?r!==-1&&(i=r):i=t===e.length-1?-1:t,i===-1)break;_(e,n,i),n=i+1,e.charCodeAt(n-1)===Yj&&e.charCodeAt(n)===Jj&&n++}return e.slice(n)}function _(e,t,n){if(t===n){y();return}let r=e.charCodeAt(t);if($j(e,t,r)){let r=e.charCodeAt(t+5)===Xj?t+6:t+5,i=e.slice(r,n);u=d===0?i:`${u}
${i}`,d++;return}if(eM(e,t,r)){f=e.slice(e.charCodeAt(t+6)===Xj?t+7:t+6,n)||void 0;return}if(r===105&&e.charCodeAt(t+1)===100&&e.charCodeAt(t+2)===58){let r=e.slice(e.charCodeAt(t+3)===Xj?t+4:t+3,n);l=r.includes(`\0`)?void 0:r;return}if(r===58){if(i){let r=e.slice(t,n);i(r.slice(e.charCodeAt(t+1)===Xj?2:1))}return}let a=e.slice(t,n),o=a.indexOf(`:`);if(o===-1){v(a,``,a);return}let s=a.slice(0,o),c=a.charCodeAt(o+1)===Xj?2:1;v(s,a.slice(o+c),a)}function v(e,t,i){switch(e){case`event`:f=t||void 0;break;case`data`:u=d===0?t:`${u}
${t}`,d++;break;case`id`:l=t.includes(`\0`)?void 0:t;break;case`retry`:/^\d+$/.test(t)?r(parseInt(t,10)):n(new qj(`Invalid \`retry\` value: "${t}"`,{type:`invalid-retry`,value:t,line:i}));break;default:n(new qj(`Unknown field "${e.length>20?`${e.slice(0,20)}\u2026`:e}"`,{type:`unknown-field`,field:e,value:t,line:i}));break}}function y(){d>0&&t({id:l,event:f,data:u}),l=void 0,u=``,d=0,f=void 0}function b(e={}){if(e.consume&&o.length>0){let e=o.join(``);_(e,0,e.length)}c=!0,l=void 0,u=``,d=0,f=void 0,o.length=0,s=0,p=!1}return{feed:m,reset:b}}function $j(e,t,n){return n===100&&e.charCodeAt(t+1)===97&&e.charCodeAt(t+2)===116&&e.charCodeAt(t+3)===97&&e.charCodeAt(t+4)===58}function eM(e,t,n){return n===101&&e.charCodeAt(t+1)===118&&e.charCodeAt(t+2)===101&&e.charCodeAt(t+3)===110&&e.charCodeAt(t+4)===116&&e.charCodeAt(t+5)===58}var tM=class extends TransformStream{constructor({onError:e,onRetry:t,onComment:n,maxBufferSize:r}={}){let i;super({start(a){i=Qj({onEvent:e=>{a.enqueue(e)},onError(t){typeof e==`function`&&e(t),(e===`terminate`||t.type===`max-buffer-size-exceeded`)&&a.error(t)},onRetry:t,onComment:n,maxBufferSize:r})},transform(e){i.feed(e)}})}},nM=Symbol.for(`workflow-serialize`),rM=Symbol.for(`workflow-deserialize`);function iM(e){return e===void 0?[]:Array.isArray(e)?e:[e]}function aM(...e){return e.reduce((e,t)=>({...e,...t??{}}),{})}var{btoa:oM,atob:sM}=globalThis;function cM(e){let t=sM(e.replace(/-/g,`+`).replace(/_/g,`/`));return Uint8Array.from(t,e=>e.codePointAt(0))}function lM(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCodePoint(e[n]);return oM(t)}function uM(e){return e instanceof Uint8Array?lM(e):e}function dM(e){return e.type===`text`?new TextEncoder().encode(e.text):e.data instanceof Uint8Array?e.data:e.data instanceof ArrayBuffer?new Uint8Array(e.data):cM(e.data)}async function fM(e,t){if(e==null)return Promise.resolve();let n=t?.abortSignal;return new Promise((t,r)=>{if(n?.aborted){r(pM());return}let i=setTimeout(()=>{a(),t()},e),a=()=>{clearTimeout(i),n?.removeEventListener(`abort`,o)},o=()=>{a(),r(pM())};n?.addEventListener(`abort`,o)})}function pM(){return new DOMException(`Delay was aborted`,`AbortError`)}var mM=[{mediaType:`image/gif`,bytesPrefix:[71,73,70]},{mediaType:`image/png`,bytesPrefix:[137,80,78,71]},{mediaType:`image/jpeg`,bytesPrefix:[255,216]},{mediaType:`image/webp`,bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:`image/bmp`,bytesPrefix:[66,77]},{mediaType:`image/tiff`,bytesPrefix:[73,73,42,0]},{mediaType:`image/tiff`,bytesPrefix:[77,77,0,42]},{mediaType:`image/avif`,bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:`image/heic`,bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}],hM=[{mediaType:`application/pdf`,bytesPrefix:[37,80,68,70]}],gM=[{mediaType:`audio/mpeg`,bytesPrefix:[255,251]},{mediaType:`audio/mpeg`,bytesPrefix:[255,250]},{mediaType:`audio/mpeg`,bytesPrefix:[255,243]},{mediaType:`audio/mpeg`,bytesPrefix:[255,242]},{mediaType:`audio/mpeg`,bytesPrefix:[255,227]},{mediaType:`audio/mpeg`,bytesPrefix:[255,226]},{mediaType:`audio/wav`,bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:`audio/ogg`,bytesPrefix:[79,103,103,83]},{mediaType:`audio/flac`,bytesPrefix:[102,76,97,67]},{mediaType:`audio/aac`,bytesPrefix:[64,21,0,0]},{mediaType:`audio/mp4`,bytesPrefix:[102,116,121,112]},{mediaType:`audio/webm`,bytesPrefix:[26,69,223,163]}],_M=[{mediaType:`video/mp4`,bytesPrefix:[0,0,0,null,102,116,121,112]},{mediaType:`video/webm`,bytesPrefix:[26,69,223,163]},{mediaType:`video/quicktime`,bytesPrefix:[0,0,0,20,102,116,121,112,113,116]},{mediaType:`video/x-msvideo`,bytesPrefix:[82,73,70,70]}],vM=e=>{let t=typeof e==`string`?cM(e):e,n=(t[6]&127)<<21|(t[7]&127)<<14|(t[8]&127)<<7|t[9]&127;return t.slice(n+10)};function yM(e){return typeof e==`string`&&e.startsWith(`SUQz`)||typeof e!=`string`&&e.length>10&&e[0]===73&&e[1]===68&&e[2]===51?vM(e):e}function bM({data:e,signatures:t}){let n=yM(e),r=typeof n==`string`?cM(n.substring(0,Math.min(n.length,24))):n;for(let e of t)if(r.length>=e.bytesPrefix.length&&e.bytesPrefix.every((e,t)=>e===null||r[t]===e))return e.mediaType}var xM={image:mM,audio:gM,video:_M,application:hM};function SM({data:e,topLevelType:t}){if(t===void 0)return bM({data:e,signatures:[...mM,...hM,...gM,..._M]});let n=xM[t];if(n!==void 0)return bM({data:e,signatures:n})}function CM(e){let t=e.indexOf(`/`);return t===-1?e:e.substring(0,t)}function wM(e){let t=e.indexOf(`/`);if(t===-1)return!1;let n=e.substring(t+1);return n.length>0&&n!==`*`}async function TM(e){try{await e.body?.cancel()}catch{}}var EM=`AI_DownloadError`,DM=`vercel.ai.error.${EM}`,OM=Symbol.for(DM),kM,AM,jM=class extends (AM=z,kM=OM,AM){constructor({url:e,statusCode:t,statusText:n,cause:r,message:i=r==null?`Failed to download ${e}: ${t} ${n}`:`Failed to download ${e}: ${r}`}){super({name:EM,message:i,cause:r}),this[kM]=!0,this.url=e,this.statusCode=t,this.statusText=n}static isInstance(e){return z.hasMarker(e,DM)}};function MM(e=globalThis){return e.window!=null}function NM(e){let t;try{t=new URL(e)}catch{throw new jM({url:e,message:`Invalid URL: ${e}`})}if(t.protocol===`data:`)return;if(t.protocol!==`http:`&&t.protocol!==`https:`)throw new jM({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let n=t.hostname.toLowerCase().replace(/\.+$/,``);if(!n)throw new jM({url:e,message:`URL must have a hostname`});if(n===`localhost`||n.endsWith(`.local`)||n.endsWith(`.localhost`))throw new jM({url:e,message:`URL with hostname ${n} is not allowed`});if(n.startsWith(`[`)&&n.endsWith(`]`)){if(LM(n.slice(1,-1)))throw new jM({url:e,message:`URL with IPv6 address ${n} is not allowed`});return}if(PM(n)){if(FM(n))throw new jM({url:e,message:`URL with IP address ${n} is not allowed`});return}}function PM(e){let t=e.split(`.`);return t.length===4?t.every(e=>{let t=Number(e);return Number.isInteger(t)&&t>=0&&t<=255&&String(t)===e}):!1}function FM(e){let[t,n,r]=e.split(`.`).map(Number);return t===0||t===10||t===100&&n>=64&&n<=127||t===127||t===169&&n===254||t===172&&n>=16&&n<=31||t===192&&n===0&&r===0||t===192&&n===168||t===198&&(n===18||n===19)||t>=240}function IM(e){let t=e.toLowerCase(),n=t.indexOf(`%`);n!==-1&&(t=t.slice(0,n));let r=t.split(`::`);if(r.length>2)return null;let i=e=>{if(e===``)return[];let t=[],n=e.split(`:`);for(let e=0;e<n.length;e++){let r=n[e];if(r.includes(`.`)){if(e!==n.length-1||!PM(r))return null;let[i,a,o,s]=r.split(`.`).map(Number);t.push(i<<8|a,o<<8|s);continue}if(!/^[0-9a-f]{1,4}$/.test(r))return null;t.push(parseInt(r,16))}return t},a=i(r[0]);if(a===null)return null;if(r.length===2){let e=i(r[1]);if(e===null)return null;let t=8-a.length-e.length;return t<0?null:[...a,...Array(t).fill(0),...e]}return a.length===8?a:null}function LM(e){let t=IM(e);if(t===null)return!0;let n=e=>t.slice(0,e).every(e=>e===0);return n(7)&&(t[7]===0||t[7]===1)||(t[0]&65024)==64512||(t[0]&65472)==65152||(t[0]&65472)==65216||(t[0]&65280)==65280?!0:n(6)||n(5)&&t[5]===65535||n(4)&&t[4]===65535&&t[5]===0||t[0]===100&&t[1]===65435&&t[2]===0&&t[3]===0&&t[4]===0&&t[5]===0||t[0]===100&&t[1]===65435&&t[2]===1?FM(`${t[6]>>8&255}.${t[6]&255}.${t[7]>>8&255}.${t[7]&255}`):!1}var RM=10;async function zM({url:e,headers:t,abortSignal:n,maxRedirects:r=RM}){let i={signal:n};t!==void 0&&(i.headers=t);let a=e;for(let t=0;t<=r;t++){NM(a);let t=await fetch(a,{...i,redirect:`manual`});if(t.type===`opaqueredirect`){if(!MM())throw new jM({url:e,message:`Redirect from ${a} could not be validated and was blocked`});return await fetch(a,{...i,redirect:`follow`})}let n=t.headers.get(`location`);if(t.status>=300&&t.status<400&&n){await TM(t),a=new URL(n,a).toString();continue}return t}throw new jM({url:e,message:`Too many redirects (max ${r})`})}var BM=2*1024*1024*1024;async function VM({response:e,url:t,maxBytes:n=BM}){let r=e.headers.get(`content-length`);if(r!=null){let i=parseInt(r,10);if(!isNaN(i)&&i>n)throw await TM(e),new jM({url:t,message:`Download of ${t} exceeded maximum size of ${n} bytes (Content-Length: ${i}).`})}let i=e.body;if(i==null)return new Uint8Array;let a=i.getReader(),o=[],s=0;try{for(;;){let{done:e,value:r}=await a.read();if(e)break;if(s+=r.length,s>n)throw new jM({url:t,message:`Download of ${t} exceeded maximum size of ${n} bytes.`});o.push(r)}}finally{try{await a.cancel()}finally{a.releaseLock()}}let c=new Uint8Array(s),l=0;for(let e of o)c.set(e,l),l+=e.length;return c}function HM(e){return Object.fromEntries([...e.headers])}function UM(...e){return e.filter(e=>e!=null)}var WM=({prefix:e,size:t=16,alphabet:n=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`,separator:r=`-`}={})=>{let i=()=>{let e=n.length,r=Array(t);for(let i=0;i<t;i++)r[i]=n[Math.random()*e|0];return r.join(``)};if(e==null)return i;if(n.includes(r))throw new fS({argument:`separator`,message:`The separator "${r}" must not be part of the alphabet "${n}".`});return()=>`${e}${r}${i()}`},GM=WM();function KM(e){return(e instanceof Error||e instanceof DOMException)&&(e.name===`AbortError`||e.name===`ResponseAborted`||e.name===`TimeoutError`)}var qM=[`fetch failed`,`failed to fetch`],JM=[`ConnectionRefused`,`ConnectionClosed`,`FailedToOpenSocket`,`ECONNRESET`,`ECONNREFUSED`,`ETIMEDOUT`,`EPIPE`];function YM(e){if(!(e instanceof Error))return!1;let t=e.code;return!!(typeof t==`string`&&JM.includes(t))}function XM({error:e,url:t,requestBodyValues:n}){if(KM(e))return e;if(e instanceof TypeError&&qM.includes(e.message.toLowerCase())){let r=e.cause;if(r!=null)return new $x({message:`Cannot connect to API: ${r.message}`,cause:r,url:t,requestBodyValues:n,isRetryable:!0})}return YM(e)?new $x({message:`Cannot connect to API: ${e.message}`,cause:e,url:t,requestBodyValues:n,isRetryable:!0}):e}function ZM(e=globalThis){return e.window?`runtime/browser`:e.navigator?.userAgent?`runtime/${e.navigator.userAgent.toLowerCase()}`:e.process?.versions?.node?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?`runtime/vercel-edge`:`runtime/unknown`}function QM(e){if(e==null)return{};let t={};if(e instanceof Headers)e.forEach((e,n)=>{t[n.toLowerCase()]=e});else{Array.isArray(e)||(e=Object.entries(e));for(let[n,r]of e)r!=null&&(t[n.toLowerCase()]=r)}return t}function $M(e,...t){let n=new Headers(QM(e)),r=n.get(`user-agent`)||``;return n.set(`user-agent`,[r,...t].filter(Boolean).join(` `)),Object.fromEntries(n.entries())}var eN=`5.0.5`,tN=()=>globalThis.fetch,nN=async({url:e,headers:t={},successfulResponseHandler:n,failedResponseHandler:r,abortSignal:i,fetch:a=tN()})=>{try{let o=await a(e,{method:`GET`,headers:$M(t,`ai-sdk/provider-utils/${eN}`,ZM()),signal:i}),s=HM(o);if(!o.ok){let t;try{t=await r({response:o,url:e,requestBodyValues:{}})}catch(t){throw KM(t)||$x.isInstance(t)?t:new $x({message:`Failed to process error response`,cause:t,statusCode:o.status,url:e,responseHeaders:s,requestBodyValues:{}})}throw t.value}try{return await n({response:o,url:e,requestBodyValues:{}})}catch(t){throw t instanceof Error&&(KM(t)||$x.isInstance(t))?t:new $x({message:`Failed to process successful response`,cause:t,statusCode:o.status,url:e,responseHeaders:s,requestBodyValues:{}})}}catch(t){throw XM({error:t,url:e,requestBodyValues:{}})}};function rN(e){return globalThis.Buffer?.isBuffer(e)??!1}function iN(e,t){try{return new URL(e).origin===new URL(t).origin}catch{return!1}}function aN(e){return typeof e==`object`&&!!e&&!(e instanceof Uint8Array)&&!(e instanceof URL)&&!(e instanceof ArrayBuffer)&&!rN(e)&&!(`type`in e)}function oN({mediaType:e,url:t,supportedUrls:n}){t=t.toLowerCase(),e=e.toLowerCase();let r=!e.includes(`/`);return Object.entries(n).map(([e,t])=>{let n=e.toLowerCase();return n===`*`||n===`*/*`?{mediaTypePrefix:``,regexes:t}:{mediaTypePrefix:n.replace(/\*/,``),regexes:t}}).filter(({mediaTypePrefix:t})=>t===``?!0:r?`${e}/`===t:e.startsWith(t)).flatMap(({regexes:e})=>e).some(e=>e.test(t))}function sN({apiKey:e,environmentVariableName:t,apiKeyParameterName:n=`apiKey`,description:r}){if(typeof e==`string`)return e;if(e!=null)throw new AS({message:`${r} API key must be a string.`});if(typeof process>`u`)throw new AS({message:`${r} API key is missing. Pass it using the '${n}' parameter. Environment variables are not supported in this environment.`});if(e=process.env[t],e==null)throw new AS({message:`${r} API key is missing. Pass it using the '${n}' parameter or the ${t} environment variable.`});if(typeof e!=`string`)throw new AS({message:`${r} API key must be a string. The value of the ${t} environment variable is not a string.`});return e}function cN({settingValue:e,environmentVariableName:t}){if(typeof e==`string`||!(e!=null||typeof process>`u`)&&(e=process.env[t],!(e==null||typeof e!=`string`)))return e}function lN(e){return e!==void 0&&e!==`provider-default`}function uN({reasoning:e,effortMap:t,warnings:n}){let r=t[e];if(r==null){n.push({type:`unsupported`,feature:`reasoning`,details:`reasoning "${e}" is not supported by this model.`});return}return r!==e&&n.push({type:`compatibility`,feature:`reasoning`,details:`reasoning "${e}" is not directly supported by this model. mapped to effort "${r}".`}),r}var dN={minimal:.02,low:.1,medium:.3,high:.6,xhigh:.9};function fN({reasoning:e,maxOutputTokens:t,maxReasoningBudget:n,minReasoningBudget:r=1024,budgetPercentages:i=dN,warnings:a}){let o=i[e];if(o==null){a.push({type:`unsupported`,feature:`reasoning`,details:`reasoning "${e}" is not supported by this model.`});return}return Math.min(n,Math.max(r,Math.round(t*o)))}var pN=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,mN=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function hN(e){let t=JSON.parse(e);return typeof t!=`object`||!t||pN.test(e)===!1&&mN.test(e)===!1?t:gN(t)}function gN(e){let t=[e];for(;t.length;){let e=t;t=[];for(let n of e){if(Object.prototype.hasOwnProperty.call(n,`__proto__`)||Object.prototype.hasOwnProperty.call(n,`constructor`)&&n.constructor!==null&&typeof n.constructor==`object`&&Object.prototype.hasOwnProperty.call(n.constructor,`prototype`))throw SyntaxError(`Object contains forbidden prototype property`);for(let e in n){let r=n[e];r&&typeof r==`object`&&t.push(r)}}}return e}function _N(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return hN(e)}try{return hN(e)}finally{Error.stackTraceLimit=t}}function vN(e){if(e.type===`object`||Array.isArray(e.type)&&e.type.includes(`object`)){e.additionalProperties=!1;let{properties:t}=e;if(t!=null)for(let e of Object.keys(t))t[e]=yN(t[e])}e.items!=null&&(e.items=Array.isArray(e.items)?e.items.map(yN):yN(e.items)),e.anyOf!=null&&(e.anyOf=e.anyOf.map(yN)),e.allOf!=null&&(e.allOf=e.allOf.map(yN)),e.oneOf!=null&&(e.oneOf=e.oneOf.map(yN));let{definitions:t}=e;if(t!=null)for(let e of Object.keys(t))t[e]=yN(t[e]);return e}function yN(e){return typeof e==`boolean`?e:vN(e)}var bN=Symbol(`Let zodToJsonSchema decide on which parser to use`),xN={name:void 0,$refStrategy:`root`,basePath:[`#`],effectStrategy:`input`,pipeStrategy:`all`,dateStrategy:`format:date-time`,mapStrategy:`entries`,removeAdditionalStrategy:`passthrough`,allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:`definitions`,strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:`escape`,applyRegexFlags:!1,emailStrategy:`format:email`,base64Strategy:`contentEncoding:base64`,nameStrategy:`ref`},SN=e=>typeof e==`string`?{...xN,name:e}:{...xN,...e};function CN(){return{}}function wN(e,t){let n={type:`array`};return e.type?._def&&e.type?._def?.typeName!==Z.ZodAny&&(n.items=hP(e.type._def,{...t,currentPath:[...t.currentPath,`items`]})),e.minLength&&(n.minItems=e.minLength.value),e.maxLength&&(n.maxItems=e.maxLength.value),e.exactLength&&(n.minItems=e.exactLength.value,n.maxItems=e.exactLength.value),n}function TN(e){let t={type:`integer`,format:`int64`};if(!e.checks)return t;for(let n of e.checks)switch(n.kind){case`min`:n.inclusive?t.minimum=n.value:t.exclusiveMinimum=n.value;break;case`max`:n.inclusive?t.maximum=n.value:t.exclusiveMaximum=n.value;break;case`multipleOf`:t.multipleOf=n.value;break}return t}function EN(){return{type:`boolean`}}function DN(e,t){return hP(e.type._def,t)}var ON=(e,t)=>hP(e.innerType._def,t);function kN(e,t,n){let r=n??t.dateStrategy;if(Array.isArray(r))return{anyOf:r.map(n=>kN(e,t,n))};switch(r){case`string`:case`format:date-time`:return{type:`string`,format:`date-time`};case`format:date`:return{type:`string`,format:`date`};case`integer`:return AN(e)}}var AN=e=>{let t={type:`integer`,format:`unix-time`};for(let n of e.checks)switch(n.kind){case`min`:t.minimum=n.value;break;case`max`:t.maximum=n.value;break}return t};function jN(e,t){return{...hP(e.innerType._def,t),default:e.defaultValue()}}function MN(e,t){return t.effectStrategy===`input`?hP(e.schema._def,t):CN()}function NN(e){return{type:`string`,enum:Array.from(e.values)}}var PN=e=>`type`in e&&e.type===`string`?!1:`allOf`in e;function FN(e,t){let n=[hP(e.left._def,{...t,currentPath:[...t.currentPath,`allOf`,`0`]}),hP(e.right._def,{...t,currentPath:[...t.currentPath,`allOf`,`1`]})].filter(e=>!!e),r=[];return n.forEach(e=>{if(PN(e))r.push(...e.allOf);else{let t=e;if(`additionalProperties`in e&&e.additionalProperties===!1){let{additionalProperties:n,...r}=e;t=r}r.push(t)}}),r.length?{allOf:r}:void 0}function IN(e){let t=typeof e.value;return t!==`bigint`&&t!==`number`&&t!==`boolean`&&t!==`string`?{type:Array.isArray(e.value)?`array`:`object`}:{type:t===`bigint`?`integer`:t,const:e.value}}var LN=void 0,RN={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(LN===void 0&&(LN=RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)),LN),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function zN(e,t){let n={type:`string`};if(e.checks)for(let r of e.checks)switch(r.kind){case`min`:n.minLength=typeof n.minLength==`number`?Math.max(n.minLength,r.value):r.value;break;case`max`:n.maxLength=typeof n.maxLength==`number`?Math.min(n.maxLength,r.value):r.value;break;case`email`:switch(t.emailStrategy){case`format:email`:UN(n,`email`,r.message,t);break;case`format:idn-email`:UN(n,`idn-email`,r.message,t);break;case`pattern:zod`:WN(n,RN.email,r.message,t);break}break;case`url`:UN(n,`uri`,r.message,t);break;case`uuid`:UN(n,`uuid`,r.message,t);break;case`regex`:WN(n,r.regex,r.message,t);break;case`cuid`:WN(n,RN.cuid,r.message,t);break;case`cuid2`:WN(n,RN.cuid2,r.message,t);break;case`startsWith`:WN(n,RegExp(`^${BN(r.value,t)}`),r.message,t);break;case`endsWith`:WN(n,RegExp(`${BN(r.value,t)}$`),r.message,t);break;case`datetime`:UN(n,`date-time`,r.message,t);break;case`date`:UN(n,`date`,r.message,t);break;case`time`:UN(n,`time`,r.message,t);break;case`duration`:UN(n,`duration`,r.message,t);break;case`length`:n.minLength=typeof n.minLength==`number`?Math.max(n.minLength,r.value):r.value,n.maxLength=typeof n.maxLength==`number`?Math.min(n.maxLength,r.value):r.value;break;case`includes`:WN(n,RegExp(BN(r.value,t)),r.message,t);break;case`ip`:r.version!==`v6`&&UN(n,`ipv4`,r.message,t),r.version!==`v4`&&UN(n,`ipv6`,r.message,t);break;case`base64url`:WN(n,RN.base64url,r.message,t);break;case`jwt`:WN(n,RN.jwt,r.message,t);break;case`cidr`:r.version!==`v6`&&WN(n,RN.ipv4Cidr,r.message,t),r.version!==`v4`&&WN(n,RN.ipv6Cidr,r.message,t);break;case`emoji`:WN(n,RN.emoji(),r.message,t);break;case`ulid`:WN(n,RN.ulid,r.message,t);break;case`base64`:switch(t.base64Strategy){case`format:binary`:UN(n,`binary`,r.message,t);break;case`contentEncoding:base64`:n.contentEncoding=`base64`;break;case`pattern:zod`:WN(n,RN.base64,r.message,t);break}break;case`nanoid`:WN(n,RN.nanoid,r.message,t);case`toLowerCase`:case`toUpperCase`:case`trim`:break;default:}return n}function BN(e,t){return t.patternStrategy===`escape`?HN(e):e}var VN=new Set(`ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789`);function HN(e){let t=``;for(let n=0;n<e.length;n++)VN.has(e[n])||(t+=`\\`),t+=e[n];return t}function UN(e,t,n,r){e.format||e.anyOf?.some(e=>e.format)?(e.anyOf||=[],e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...n&&r.errorMessages&&{errorMessage:{format:n}}})):e.format=t}function WN(e,t,n,r){e.pattern||e.allOf?.some(e=>e.pattern)?(e.allOf||=[],e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:GN(t,r),...n&&r.errorMessages&&{errorMessage:{pattern:n}}})):e.pattern=GN(t,r)}function GN(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let n={i:e.flags.includes(`i`),m:e.flags.includes(`m`),s:e.flags.includes(`s`)},r=n.i?e.source.toLowerCase():e.source,i=``,a=!1,o=!1,s=!1;for(let e=0;e<r.length;e++){if(a){i+=r[e],a=!1;continue}if(n.i){if(o){if(r[e].match(/[a-z]/)){s?(i+=r[e],i+=`${r[e-2]}-${r[e]}`.toUpperCase(),s=!1):r[e+1]===`-`&&r[e+2]?.match(/[a-z]/)?(i+=r[e],s=!0):i+=`${r[e]}${r[e].toUpperCase()}`;continue}}else if(r[e].match(/[a-z]/)){i+=`[${r[e]}${r[e].toUpperCase()}]`;continue}}if(n.m){if(r[e]===`^`){i+=`(^|(?<=[\r
]))`;continue}else if(r[e]===`$`){i+=`($|(?=[\r
]))`;continue}}if(n.s&&r[e]===`.`){i+=o?`${r[e]}\r
`:`[${r[e]}\r
]`;continue}i+=r[e],r[e]===`\\`?a=!0:o&&r[e]===`]`?o=!1:!o&&r[e]===`[`&&(o=!0)}try{new RegExp(i)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join(`/`)} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return i}function KN(e,t){let n={type:`object`,additionalProperties:hP(e.valueType._def,{...t,currentPath:[...t.currentPath,`additionalProperties`]})??t.allowedAdditionalProperties};if(e.keyType?._def.typeName===Z.ZodString&&e.keyType._def.checks?.length){let{type:r,...i}=zN(e.keyType._def,t);return{...n,propertyNames:i}}else if(e.keyType?._def.typeName===Z.ZodEnum)return{...n,propertyNames:{enum:e.keyType._def.values}};else if(e.keyType?._def.typeName===Z.ZodBranded&&e.keyType._def.type._def.typeName===Z.ZodString&&e.keyType._def.type._def.checks?.length){let{type:r,...i}=DN(e.keyType._def,t);return{...n,propertyNames:i}}return n}function qN(e,t){return t.mapStrategy===`record`?KN(e,t):{type:`array`,maxItems:125,items:{type:`array`,items:[hP(e.keyType._def,{...t,currentPath:[...t.currentPath,`items`,`items`,`0`]})||CN(),hP(e.valueType._def,{...t,currentPath:[...t.currentPath,`items`,`items`,`1`]})||CN()],minItems:2,maxItems:2}}}function JN(e){let t=e.values,n=Object.keys(e.values).filter(e=>typeof t[t[e]]!=`number`).map(e=>t[e]),r=Array.from(new Set(n.map(e=>typeof e)));return{type:r.length===1?r[0]===`string`?`string`:`number`:[`string`,`number`],enum:n}}function YN(){return{not:CN()}}function XN(){return{type:`null`}}var ZN={ZodString:`string`,ZodNumber:`number`,ZodBigInt:`integer`,ZodBoolean:`boolean`,ZodNull:`null`};function QN(e,t){let n=e.options instanceof Map?Array.from(e.options.values()):e.options;if(n.every(e=>e._def.typeName in ZN&&(!e._def.checks||!e._def.checks.length))){let e=n.reduce((e,t)=>{let n=ZN[t._def.typeName];return n&&!e.includes(n)?[...e,n]:e},[]);return{type:e.length>1?e:e[0]}}else if(n.every(e=>e._def.typeName===`ZodLiteral`&&!e.description)){let e=n.reduce((e,t)=>{let n=typeof t._def.value;switch(n){case`string`:case`number`:case`boolean`:return[...e,n];case`bigint`:return[...e,`integer`];case`object`:if(t._def.value===null)return[...e,`null`];default:return e}},[]);if(e.length===n.length){let t=e.filter((e,t,n)=>n.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:n.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(n.every(e=>e._def.typeName===`ZodEnum`))return{type:`string`,enum:n.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return $N(e,t)}var $N=(e,t)=>{let n=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((e,n)=>hP(e._def,{...t,currentPath:[...t.currentPath,`anyOf`,`${n}`]})).filter(e=>!!e&&(!t.strictUnions||typeof e==`object`&&Object.keys(e).length>0));return n.length?{anyOf:n}:void 0};function eP(e,t){if([`ZodString`,`ZodNumber`,`ZodBigInt`,`ZodBoolean`,`ZodNull`].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[ZN[e.innerType._def.typeName],`null`]};let n=hP(e.innerType._def,{...t,currentPath:[...t.currentPath,`anyOf`,`0`]});return n&&{anyOf:[n,{type:`null`}]}}function tP(e){let t={type:`number`};if(!e.checks)return t;for(let n of e.checks)switch(n.kind){case`int`:t.type=`integer`;break;case`min`:n.inclusive?t.minimum=n.value:t.exclusiveMinimum=n.value;break;case`max`:n.inclusive?t.maximum=n.value:t.exclusiveMaximum=n.value;break;case`multipleOf`:t.multipleOf=n.value;break}return t}function nP(e,t){let n={type:`object`,properties:{}},r=[],i=e.shape();for(let e in i){let a=i[e];if(a===void 0||a._def===void 0)continue;let o=iP(a),s=hP(a._def,{...t,currentPath:[...t.currentPath,`properties`,e],propertyPath:[...t.currentPath,`properties`,e]});s!==void 0&&(n.properties[e]=s,o||r.push(e))}r.length&&(n.required=r);let a=rP(e,t);return a!==void 0&&(n.additionalProperties=a),n}function rP(e,t){if(e.catchall._def.typeName!==`ZodNever`)return hP(e.catchall._def,{...t,currentPath:[...t.currentPath,`additionalProperties`]});switch(e.unknownKeys){case`passthrough`:return t.allowedAdditionalProperties;case`strict`:return t.rejectedAdditionalProperties;case`strip`:return t.removeAdditionalStrategy===`strict`?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function iP(e){try{return e.isOptional()}catch{return!0}}var aP=(e,t)=>{if(t.currentPath.toString()===t.propertyPath?.toString())return hP(e.innerType._def,t);let n=hP(e.innerType._def,{...t,currentPath:[...t.currentPath,`anyOf`,`1`]});return n?{anyOf:[{not:CN()},n]}:CN()},oP=(e,t)=>{if(t.pipeStrategy===`input`)return hP(e.in._def,t);if(t.pipeStrategy===`output`)return hP(e.out._def,t);let n=hP(e.in._def,{...t,currentPath:[...t.currentPath,`allOf`,`0`]});return{allOf:[n,hP(e.out._def,{...t,currentPath:[...t.currentPath,`allOf`,n?`1`:`0`]})].filter(e=>e!==void 0)}};function sP(e,t){return hP(e.type._def,t)}function cP(e,t){let n={type:`array`,uniqueItems:!0,items:hP(e.valueType._def,{...t,currentPath:[...t.currentPath,`items`]})};return e.minSize&&(n.minItems=e.minSize.value),e.maxSize&&(n.maxItems=e.maxSize.value),n}function lP(e,t){return e.rest?{type:`array`,minItems:e.items.length,items:e.items.map((e,n)=>hP(e._def,{...t,currentPath:[...t.currentPath,`items`,`${n}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[]),additionalItems:hP(e.rest._def,{...t,currentPath:[...t.currentPath,`additionalItems`]})}:{type:`array`,minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,n)=>hP(e._def,{...t,currentPath:[...t.currentPath,`items`,`${n}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[])}}function uP(){return{not:CN()}}function dP(){return CN()}var fP=(e,t)=>hP(e.innerType._def,t),pP=(e,t,n)=>{switch(t){case Z.ZodString:return zN(e,n);case Z.ZodNumber:return tP(e);case Z.ZodObject:return nP(e,n);case Z.ZodBigInt:return TN(e);case Z.ZodBoolean:return EN();case Z.ZodDate:return kN(e,n);case Z.ZodUndefined:return uP();case Z.ZodNull:return XN();case Z.ZodArray:return wN(e,n);case Z.ZodUnion:case Z.ZodDiscriminatedUnion:return QN(e,n);case Z.ZodIntersection:return FN(e,n);case Z.ZodTuple:return lP(e,n);case Z.ZodRecord:return KN(e,n);case Z.ZodLiteral:return IN(e);case Z.ZodEnum:return NN(e);case Z.ZodNativeEnum:return JN(e);case Z.ZodNullable:return eP(e,n);case Z.ZodOptional:return aP(e,n);case Z.ZodMap:return qN(e,n);case Z.ZodSet:return cP(e,n);case Z.ZodLazy:return()=>e.getter()._def;case Z.ZodPromise:return sP(e,n);case Z.ZodNaN:case Z.ZodNever:return YN();case Z.ZodEffects:return MN(e,n);case Z.ZodAny:return CN();case Z.ZodUnknown:return dP();case Z.ZodDefault:return jN(e,n);case Z.ZodBranded:return DN(e,n);case Z.ZodReadonly:return fP(e,n);case Z.ZodCatch:return ON(e,n);case Z.ZodPipeline:return oP(e,n);case Z.ZodFunction:case Z.ZodVoid:case Z.ZodSymbol:return;default:return(e=>void 0)(t)}},mP=(e,t)=>{let n=0;for(;n<e.length&&n<t.length&&e[n]===t[n];n++);return[(e.length-n).toString(),...t.slice(n)].join(`/`)};function hP(e,t,n=!1){let r=t.seen.get(e);if(t.override){let i=t.override?.call(t,e,t,r,n);if(i!==bN)return i}if(r&&!n){let e=gP(r,t);if(e!==void 0)return e}let i={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,i);let a=pP(e,e.typeName,t),o=typeof a==`function`?hP(a(),t):a;if(o&&_P(e,t,o),t.postProcess){let n=t.postProcess(o,e,t);return i.jsonSchema=o,n}return i.jsonSchema=o,o}var gP=(e,t)=>{switch(t.$refStrategy){case`root`:return{$ref:e.path.join(`/`)};case`relative`:return{$ref:mP(t.currentPath,e.path)};case`none`:case`seen`:return e.path.length<t.currentPath.length&&e.path.every((e,n)=>t.currentPath[n]===e)?(console.warn(`Recursive reference detected at ${t.currentPath.join(`/`)}! Defaulting to any`),CN()):t.$refStrategy===`seen`?CN():void 0}},_P=(e,t,n)=>(e.description&&(n.description=e.description),n),vP=e=>{let t=SN(e),n=t.name===void 0?t.basePath:[...t.basePath,t.definitionPath,t.name];return{...t,currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([e,n])=>[n._def,{def:n._def,path:[...t.basePath,t.definitionPath,e],jsonSchema:void 0}]))}},yP=(e,t)=>{let n=vP(t),r=typeof t==`object`&&t.definitions?Object.entries(t.definitions).reduce((e,[t,r])=>({...e,[t]:hP(r._def,{...n,currentPath:[...n.basePath,n.definitionPath,t]},!0)??CN()}),{}):void 0,i=typeof t==`string`?t:t?.nameStrategy===`title`?void 0:t?.name,a=hP(e._def,i===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,i]},!1)??CN(),o=typeof t==`object`&&t.name!==void 0&&t.nameStrategy===`title`?t.name:void 0;o!==void 0&&(a.title=o);let s=i===void 0?r?{...a,[n.definitionPath]:r}:a:{$ref:[...n.$refStrategy===`relative`?[]:n.basePath,n.definitionPath,i].join(`/`),[n.definitionPath]:{...r,[i]:a}};return s.$schema=`http://json-schema.org/draft-07/schema#`,s},bP=Symbol.for(`vercel.ai.schema`);function xP(e){let t;return()=>(t??=e(),t)}function SP(e,{validate:t}={}){return{[bP]:!0,_type:void 0,get jsonSchema(){return typeof e==`function`&&(e=e()),e},validate:t}}function CP(e){return typeof e==`object`&&!!e&&bP in e&&e[bP]===!0&&`jsonSchema`in e&&`validate`in e}function wP(e){return e==null?SP({type:`object`,properties:{},additionalProperties:!1}):CP(e)?e:`~standard`in e?e[`~standard`].vendor===`zod`?kP(e):TP(e):e()}function TP(e){return SP(()=>vN(e[`~standard`].jsonSchema.input({target:`draft-07`})),{validate:async t=>{let n=await e[`~standard`].validate(t);return`value`in n?{success:!0,value:n.value}:{success:!1,error:new JS({value:t,cause:n.issues})}}})}function EP(e,t){let n=t?.useReferences??!1;return SP(()=>yP(e,{$refStrategy:n?`root`:`none`}),{validate:async t=>{let n=await e.safeParseAsync(t);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function DP(e,t){let n=t?.useReferences??!1;return SP(()=>vN(CO(e,{target:`draft-7`,io:`input`,reused:n?`ref`:`inline`})),{validate:async t=>{let n=await IO(e,t);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function OP(e){return`_zod`in e}function kP(e,t){return OP(e)?DP(e,t):EP(e,t)}async function AP({value:e,schema:t,context:n}){let r=await jP({value:e,schema:t,context:n});if(!r.success)throw JS.wrap({value:e,cause:r.error,context:n});return r.value}async function jP({value:e,schema:t,context:n}){let r=wP(t);try{if(r.validate==null)return{success:!0,value:e,rawValue:e};let t=await r.validate(e);return t.success?{success:!0,value:t.value,rawValue:e}:{success:!1,error:JS.wrap({value:e,cause:t.error,context:n}),rawValue:e}}catch(t){return{success:!1,error:JS.wrap({value:e,cause:t,context:n}),rawValue:e}}}async function MP({text:e,schema:t}){try{let n=_N(e);return t==null?n:await AP({value:n,schema:t})}catch(t){throw wS.isInstance(t)||JS.isInstance(t)?t:new wS({text:e,cause:t})}}async function NP({text:e,schema:t}){try{let n=_N(e);return t==null?{success:!0,value:n,rawValue:n}:await jP({value:n,schema:t})}catch(t){return{success:!1,error:wS.isInstance(t)?t:new wS({text:e,cause:t}),rawValue:void 0}}}function PP({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new tM).pipeThrough(new TransformStream({async transform({data:e},n){e!==`[DONE]`&&n.enqueue(await NP({text:e,schema:t}))}}))}async function FP({provider:e,providerOptions:t,schema:n}){if(t?.[e]==null)return;let r=await jP({value:t[e],schema:n});if(!r.success)throw new fS({argument:`providerOptions`,message:`invalid ${e} provider options`,cause:r.error});return r.value}var IP=()=>globalThis.fetch,LP=async({url:e,headers:t,body:n,failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o})=>await RP({url:e,headers:{"Content-Type":`application/json`,...t},body:{content:JSON.stringify(n),values:n},failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o}),RP=async({url:e,headers:t={},body:n,successfulResponseHandler:r,failedResponseHandler:i,abortSignal:a,fetch:o=IP()})=>{try{let s=await o(e,{method:`POST`,headers:$M(t,`ai-sdk/provider-utils/${eN}`,ZM()),body:n.content,signal:a}),c=HM(s);if(!s.ok){let t;try{t=await i({response:s,url:e,requestBodyValues:n.values})}catch(t){throw KM(t)||$x.isInstance(t)?t:new $x({message:`Failed to process error response`,cause:t,statusCode:s.status,url:e,responseHeaders:c,requestBodyValues:n.values})}throw t.value}try{return await r({response:s,url:e,requestBodyValues:n.values})}catch(t){throw t instanceof Error&&(KM(t)||$x.isInstance(t))?t:new $x({message:`Failed to process successful response`,cause:t,statusCode:s.status,url:e,responseHeaders:c,requestBodyValues:n.values})}}catch(t){throw XM({error:t,url:e,requestBodyValues:n.values})}};function zP(e){return e}function BP({id:e,inputSchema:t,outputSchema:n,supportsDeferredResults:r}){return({onInputStart:i,onInputDelta:a,onInputAvailable:o,...s})=>zP({type:`provider`,isProviderExecuted:!0,id:e,args:s,inputSchema:t,outputSchema:n,onInputStart:i,onInputDelta:a,onInputAvailable:o,supportsDeferredResults:r})}async function VP(e){return typeof e==`function`&&(e=e()),Promise.resolve(e)}function HP({part:e}){if(wM(e.mediaType))return e.mediaType;if(e.data.type===`data`){let t=SM({data:e.data.data,topLevelType:CM(e.mediaType)});if(t)return t;throw new eC({functionality:`file of media type "${e.mediaType}" must specify subtype since it could not be auto-detected`})}throw new eC({functionality:`file of media type "${e.mediaType}" must specify subtype since it is not passed as inline bytes`})}function UP({reference:e,provider:t}){let n=e[t];if(n!=null)return n;throw new IS({provider:t,reference:e})}var WP=({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:n=2,abortSignal:r,shouldRetry:i,getDelayInMs:a=({exponentialBackoffDelay:e})=>e,createRetryError:o=({message:e})=>Error(e)})=>async s=>GP(s,{maxRetries:e,delayInMs:t,backoffFactor:n,abortSignal:r,shouldRetry:i,getDelayInMs:a,createRetryError:o});async function GP(e,{maxRetries:t,delayInMs:n,backoffFactor:r,abortSignal:i,shouldRetry:a,getDelayInMs:o,createRetryError:s},c=[]){try{return await e()}catch(l){if(KM(l)||t===0)throw l;let u=oS(l),d=[...c,l],f=d.length;if(f>t)throw s({message:`Failed after ${f} attempts. Last error: ${u}`,reason:`maxRetriesExceeded`,errors:d});if(await a(l)&&f<=t)return await fM(o({error:l,exponentialBackoffDelay:n}),{abortSignal:i}),GP(e,{maxRetries:t,delayInMs:r*n,backoffFactor:r,abortSignal:i,shouldRetry:a,getDelayInMs:o,createRetryError:s},d);throw f===1?l:s({message:`Failed after ${f} attempts with non-retryable error: '${u}'`,reason:`errorNotRetryable`,errors:d})}}var KP=new TextDecoder;async function qP({response:e,url:t}){return KP.decode(await VM({response:e,url:t}))}var JP=({errorSchema:e,errorToMessage:t,isRetryable:n})=>async({response:r,url:i,requestBodyValues:a})=>{let o=await qP({response:r,url:i}),s=HM(r);if(o.trim()===``)return{responseHeaders:s,value:new $x({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:s,responseBody:o,isRetryable:n?.(r)})};try{let c=await MP({text:o,schema:e});return{responseHeaders:s,value:new $x({message:t(c),url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:s,responseBody:o,data:c,isRetryable:n?.(r,c)})}}catch{return{responseHeaders:s,value:new $x({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:s,responseBody:o,isRetryable:n?.(r)})}}},YP=e=>async({response:t})=>{let n=HM(t);if(t.body==null)throw new aS({});return{responseHeaders:n,value:PP({stream:t.body,schema:e})}},XP=e=>async({response:t,url:n,requestBodyValues:r})=>{let i=await qP({response:t,url:n}),a=await NP({text:i,schema:e}),o=HM(t);if(!a.success)throw new $x({message:`Invalid JSON response`,cause:a.error,statusCode:t.status,responseHeaders:o,responseBody:i,url:n,requestBodyValues:r});return{responseHeaders:o,value:a.value,rawValue:a.rawValue}};function ZP(e){if(e==null)return!0;let t=typeof e;return t===`string`||t===`number`||t===`boolean`?!0:t===`function`||t===`symbol`||t===`bigint`?!1:Array.isArray(e)?e.every(ZP):Object.getPrototypeOf(e)===Object.prototype?Object.values(e).every(ZP):!1}function QP(e){let t={};for(let[n,r]of Object.entries(e.config))if(n===`headers`){let e=$P(r);ZP(e)&&(t[n]=e)}else ZP(r)&&(t[n]=r);return{modelId:e.modelId,config:t}}function $P(e){let t=e;if(typeof e==`function`&&(t=e()),t instanceof Promise)throw Error(`Promise returned from resolveSync`);return t}new TextDecoder;function eF(e){return e?.replace(/\/$/,``)}function tF(e){return e!=null&&typeof e.execute==`function`}function nF(e){return e!=null&&typeof e[Symbol.asyncIterator]==`function`}async function*rF({tool:e,input:t,options:n}){let r=e.execute(t,n);if(nF(r)){let e;for await(let t of r)e=t,yield{type:`preliminary`,output:t};yield{type:`final`,output:e}}else yield{type:`final`,output:await r}}var iF=l(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{SYMBOL_FOR_REQ_CONTEXT:()=>u,getContext:()=>d}),t.exports=c(l);var u=Symbol.for(`@vercel/request-context`);function d(){return globalThis[u]?.get?.()??{}}0&&(t.exports={SYMBOL_FOR_REQ_CONTEXT:u,getContext:d})})),aF=l(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>u,RefreshAccessTokenFailedError:()=>d}),t.exports=c(l);var u=class extends Error{constructor(){super(`No authentication found. Please log in with the Vercel CLI (vercel login).`),this.name=`AccessTokenMissingError`}},d=class extends Error{constructor(e){super(`Failed to refresh authentication token.`,{cause:e}),this.name=`RefreshAccessTokenFailedError`}};0&&(t.exports={AccessTokenMissingError:u,RefreshAccessTokenFailedError:d})})),oF=l(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>d.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>d.RefreshAccessTokenFailedError,getContext:()=>u.getContext,getVercelOidcToken:()=>f,getVercelOidcTokenSync:()=>p,getVercelToken:()=>m}),t.exports=c(l);var u=iF(),d=aF();async function f(){return``}function p(){return``}async function m(){throw Error(`getVercelToken is not supported in browser environments`)}0&&(t.exports={AccessTokenMissingError,RefreshAccessTokenFailedError,getContext,getVercelOidcToken:f,getVercelOidcTokenSync:p,getVercelToken:m})}))(),sF=`ai-gateway-realtime.v1`,cF=`ai-gateway-auth.`,lF=`ai-gateway-team.`;function uF(e,t){let n=[sF,`${cF}${e}`];return t?.teamIdOrSlug&&n.push(`${lF}${dF(t.teamIdOrSlug)}`),n}function dF(e){let t=new TextEncoder().encode(e),n=``;for(let e of t)n+=String.fromCharCode(e);return btoa(n).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/u,``)}var fF=Symbol.for(`vercel.ai.gateway.error`),pF,mF,hF=class e extends (mF=Error,pF=fF,mF){constructor({message:e,statusCode:t=500,cause:n,generationId:r,isRetryable:i=t!=null&&(t===408||t===409||t===429||t>=500)}){super(r?`${e} [${r}]`:e),this[pF]=!0,this.statusCode=t,this.cause=n,this.generationId=r,this.isRetryable=i}static isInstance(t){return e.hasMarker(t)}static hasMarker(e){return typeof e==`object`&&!!e&&fF in e&&e[fF]===!0}},gF=`GatewayAuthenticationError`,_F=`vercel.ai.gateway.error.${gF}`,vF=Symbol.for(_F),yF,bF,xF=class e extends (bF=hF,yF=vF,bF){constructor({message:e=`Authentication failed`,statusCode:t=401,cause:n,generationId:r}={}){super({message:e,statusCode:t,cause:n,generationId:r}),this[yF]=!0,this.name=gF,this.type=`authentication_error`}static isInstance(e){return hF.hasMarker(e)&&vF in e}static createContextualError({apiKeyProvided:t,oidcTokenProvided:n,statusCode:r=401,cause:i,generationId:a}){let o;return o=t?`AI Gateway authentication failed: Invalid API key or token.

Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys

Provide an API key or Vercel access token via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.`:n?`AI Gateway authentication failed: Invalid OIDC token.

Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.

Alternatively, use an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
or pass a Vercel access token via the 'apiKey' option.`:`AI Gateway authentication failed: No authentication provided.

Option 1 - API key:
Create an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.

Option 2 - Vercel access token:
Pass a Vercel personal access token or Vercel app access token via the 'apiKey' option.

Option 3 - OIDC token:
Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,new e({message:o,statusCode:r,cause:i,generationId:a})}},SF=`GatewayInvalidRequestError`,CF=`vercel.ai.gateway.error.${SF}`,wF=Symbol.for(CF),TF,EF,DF=class extends (EF=hF,TF=wF,EF){constructor({message:e=`Invalid request`,statusCode:t=400,cause:n,generationId:r}={}){super({message:e,statusCode:t,cause:n,generationId:r}),this[TF]=!0,this.name=SF,this.type=`invalid_request_error`}static isInstance(e){return hF.hasMarker(e)&&wF in e}},OF=`GatewayRateLimitError`,kF=`vercel.ai.gateway.error.${OF}`,AF=Symbol.for(kF),jF,MF,NF=class extends (MF=hF,jF=AF,MF){constructor({message:e=`Rate limit exceeded`,statusCode:t=429,cause:n,generationId:r}={}){super({message:e,statusCode:t,cause:n,generationId:r}),this[jF]=!0,this.name=OF,this.type=`rate_limit_exceeded`}static isInstance(e){return hF.hasMarker(e)&&AF in e}},PF=`GatewayModelNotFoundError`,FF=`vercel.ai.gateway.error.${PF}`,IF=Symbol.for(FF),LF=xP(()=>kP(G({modelId:H()}))),RF,zF,BF=class extends (zF=hF,RF=IF,zF){constructor({message:e=`Model not found`,statusCode:t=404,modelId:n,cause:r,generationId:i}={}){super({message:e,statusCode:t,cause:r,generationId:i}),this[RF]=!0,this.name=PF,this.type=`model_not_found`,this.modelId=n}static isInstance(e){return hF.hasMarker(e)&&IF in e}},VF=`GatewayInternalServerError`,HF=`vercel.ai.gateway.error.${VF}`,UF=Symbol.for(HF),WF,GF,KF=class extends (GF=hF,WF=UF,GF){constructor({message:e=`Internal server error`,statusCode:t=500,cause:n,generationId:r}={}){super({message:e,statusCode:t,cause:n,generationId:r}),this[WF]=!0,this.name=VF,this.type=`internal_server_error`}static isInstance(e){return hF.hasMarker(e)&&UF in e}},qF=`GatewayFailedDependencyError`,JF=`vercel.ai.gateway.error.${qF}`,YF=Symbol.for(JF),XF,ZF,QF=class extends (ZF=hF,XF=YF,ZF){constructor({message:e=`Failed dependency`,statusCode:t=424,cause:n,generationId:r}={}){super({message:e,statusCode:t,cause:n,generationId:r}),this[XF]=!0,this.name=qF,this.type=`failed_dependency`}static isInstance(e){return hF.hasMarker(e)&&YF in e}},$F=`GatewayForbiddenError`,eI=`vercel.ai.gateway.error.${$F}`,tI=Symbol.for(eI),nI,rI,iI=class extends (rI=hF,nI=tI,rI){constructor({message:e=`Forbidden`,statusCode:t=403,cause:n,generationId:r}={}){super({message:e,statusCode:t,cause:n,generationId:r}),this[nI]=!0,this.name=$F,this.type=`forbidden`}static isInstance(e){return hF.hasMarker(e)&&tI in e}},aI=`GatewayResponseError`,oI=`vercel.ai.gateway.error.${aI}`,sI=Symbol.for(oI),cI,lI,uI=class extends (lI=hF,cI=sI,lI){constructor({message:e=`Invalid response from Gateway`,statusCode:t=502,response:n,validationError:r,cause:i,generationId:a}={}){super({message:e,statusCode:t,cause:i,generationId:a}),this[cI]=!0,this.name=aI,this.type=`response_error`,this.response=n,this.validationError=r}static isInstance(e){return hF.hasMarker(e)&&sI in e}};async function dI({response:e,statusCode:t,defaultMessage:n=`Gateway request failed`,cause:r,authMethod:i}){let a=await jP({value:e,schema:fI});if(!a.success){let i=typeof e==`object`&&e&&`generationId`in e?e.generationId:void 0;return new uI({message:`Invalid error response format: ${n}`,statusCode:t,response:e,validationError:a.error,cause:r,generationId:i})}let o=a.value,s=o.error.type,c=o.error.message,l=o.generationId??void 0;switch(s){case`authentication_error`:return xF.createContextualError({apiKeyProvided:i===`api-key`,oidcTokenProvided:i===`oidc`,statusCode:t,cause:r,generationId:l});case`invalid_request_error`:return new DF({message:c,statusCode:t,cause:r,generationId:l});case`rate_limit_exceeded`:return new NF({message:c,statusCode:t,cause:r,generationId:l});case`model_not_found`:{let e=await jP({value:o.error.param,schema:LF});return new BF({message:c,statusCode:t,modelId:e.success?e.value.modelId:void 0,cause:r,generationId:l})}case`internal_server_error`:return new KF({message:c,statusCode:t,cause:r,generationId:l});case`failed_dependency`:return new QF({message:c,statusCode:t,cause:r,generationId:l});case`forbidden`:return new iI({message:c,statusCode:t,cause:r,generationId:l});default:return new KF({message:c,statusCode:t,cause:r,generationId:l})}}var fI=xP(()=>kP(G({error:G({message:H(),type:H().nullish(),param:Ek().nullish(),code:Nk([H(),U()]).nullish()}),generationId:H().nullish()})));function pI(e){if(e.data!==void 0)return e.data;if(e.responseBody!=null)try{return _N(e.responseBody)}catch{return e.responseBody}return{}}var mI=`GatewayTimeoutError`,hI=`vercel.ai.gateway.error.${mI}`,gI=Symbol.for(hI),_I,vI,yI=class e extends (vI=hF,_I=gI,vI){constructor({message:e=`Request timed out`,statusCode:t=408,cause:n,generationId:r}={}){super({message:e,statusCode:t,cause:n,generationId:r}),this[_I]=!0,this.name=mI,this.type=`timeout_error`}static isInstance(e){return hF.hasMarker(e)&&gI in e}static createTimeoutError({originalMessage:t,statusCode:n=408,cause:r,generationId:i}){let a=`Gateway request timed out: ${t}

    This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`;return new e({message:a,statusCode:n,cause:r,generationId:i})}};function bI(e){if(!(e instanceof Error))return!1;let t=e.code;return typeof t==`string`?[`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`UND_ERR_CONNECT_TIMEOUT`].includes(t):!1}async function xI(e,t){return hF.isInstance(e)?e:bI(e)?yI.createTimeoutError({originalMessage:e instanceof Error?e.message:`Unknown error`,cause:e}):$x.isInstance(e)?e.cause&&bI(e.cause)?yI.createTimeoutError({originalMessage:e.message,cause:e}):await dI({response:pI(e),statusCode:e.statusCode??500,defaultMessage:`Gateway request failed`,cause:e,authMethod:t}):await dI({response:{},statusCode:500,defaultMessage:e instanceof Error?`Gateway request failed: ${e.message}`:`Unknown Gateway error`,cause:e,authMethod:t})}var SI=`ai-gateway-auth-method`,CI=`x-vercel-ai-gateway-team`;async function wI(e){let t=await jP({value:e[SI],schema:TI});return t.success?t.value:void 0}var TI=xP(()=>kP(Nk([K(`api-key`),K(`oidc`)]))),EI=[`embedding`,`image`,`language`,`realtime`,`reranking`,`speech`,`transcription`,`video`],DI=class{constructor(e){this.config=e}async getAvailableModels(){try{let{value:e}=await nN({url:`${this.config.baseURL}/config`,headers:this.config.headers?await VP(this.config.headers):void 0,successfulResponseHandler:XP(OI),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),fetch:this.config.fetch});return e}catch(e){throw await xI(e)}}async getCredits(){try{let{value:e}=await nN({url:`${new URL(this.config.baseURL).origin}/v1/credits`,headers:this.config.headers?await VP(this.config.headers):void 0,successfulResponseHandler:XP(kI),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),fetch:this.config.fetch});return e}catch(e){throw await xI(e)}}},OI=xP(()=>kP(G({models:W(G({id:H(),name:H(),description:H().nullish(),pricing:G({input:H(),output:H(),input_cache_read:H().nullish(),input_cache_write:H().nullish()}).transform(({input:e,output:t,input_cache_read:n,input_cache_write:r})=>({input:e,output:t,...n?{cachedInputTokens:n}:{},...r?{cacheCreationInputTokens:r}:{}})).nullish(),specification:G({specificationVersion:K(`v4`),provider:H(),modelId:H()}),modelType:H().nullish()})).transform(e=>e.filter(e=>e.modelType==null||EI.includes(e.modelType)))}))),kI=xP(()=>kP(G({balance:H(),total_used:H()}).transform(({balance:e,total_used:t})=>({balance:e,totalUsed:t})))),AI=class{constructor(e){this.config=e}async getSpendReport(e){try{let t=new URL(this.config.baseURL),n=new URLSearchParams;n.set(`start_date`,e.startDate),n.set(`end_date`,e.endDate),e.groupBy&&n.set(`group_by`,e.groupBy),e.datePart&&n.set(`date_part`,e.datePart),e.userId&&n.set(`user_id`,e.userId),e.model&&n.set(`model`,e.model),e.provider&&n.set(`provider`,e.provider),e.credentialType&&n.set(`credential_type`,e.credentialType),e.tags&&e.tags.length>0&&n.set(`tags`,e.tags.join(`,`));let{value:r}=await nN({url:`${t.origin}/v1/report?${n.toString()}`,headers:this.config.headers?await VP(this.config.headers):void 0,successfulResponseHandler:XP(jI),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),fetch:this.config.fetch});return r}catch(e){throw await xI(e)}}},jI=xP(()=>kP(G({results:W(G({day:H().optional(),hour:H().optional(),user:H().optional(),model:H().optional(),tag:H().optional(),provider:H().optional(),credential_type:Vk([`byok`,`system`]).optional(),total_cost:U(),market_cost:U().optional(),input_tokens:U().optional(),output_tokens:U().optional(),cached_input_tokens:U().optional(),cache_creation_input_tokens:U().optional(),reasoning_tokens:U().optional(),request_count:U().optional()}).transform(({credential_type:e,total_cost:t,market_cost:n,input_tokens:r,output_tokens:i,cached_input_tokens:a,cache_creation_input_tokens:o,reasoning_tokens:s,request_count:c,...l})=>({...l,...e===void 0?{}:{credentialType:e},totalCost:t,...n===void 0?{}:{marketCost:n},...r===void 0?{}:{inputTokens:r},...i===void 0?{}:{outputTokens:i},...a===void 0?{}:{cachedInputTokens:a},...o===void 0?{}:{cacheCreationInputTokens:o},...s===void 0?{}:{reasoningTokens:s},...c===void 0?{}:{requestCount:c}})))}))),MI=class{constructor(e){this.config=e}async getGenerationInfo(e){try{let{value:t}=await nN({url:`${new URL(this.config.baseURL).origin}/v1/generation?id=${encodeURIComponent(e.id)}`,headers:this.config.headers?await VP(this.config.headers):void 0,successfulResponseHandler:XP(NI),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),fetch:this.config.fetch});return t}catch(e){throw await xI(e)}}},NI=xP(()=>kP(G({data:G({id:H(),total_cost:U(),upstream_inference_cost:U(),usage:U(),created_at:H(),model:H(),is_byok:bk(),provider_name:H(),streamed:bk(),finish_reason:H(),latency:U(),generation_time:U(),native_tokens_prompt:U(),native_tokens_completion:U(),native_tokens_reasoning:U(),native_tokens_cached:U(),native_tokens_cache_creation:U(),billable_web_search_calls:U()}).transform(({total_cost:e,upstream_inference_cost:t,created_at:n,is_byok:r,provider_name:i,finish_reason:a,generation_time:o,native_tokens_prompt:s,native_tokens_completion:c,native_tokens_reasoning:l,native_tokens_cached:u,native_tokens_cache_creation:d,billable_web_search_calls:f,...p})=>({...p,totalCost:e,upstreamInferenceCost:t,createdAt:n,isByok:r,providerName:i,finishReason:a,generationTime:o,promptTokens:s,completionTokens:c,reasoningTokens:l,cachedTokens:u,cacheCreationTokens:d,billableWebSearchCalls:f}))}).transform(({data:e})=>e))),PI=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`,this.supportedUrls={"*/*":[/.*/]}}static[nM](e){return QP({modelId:e.modelId,config:e.config})}static[rM](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs(e){let{abortSignal:t,...n}=e;return{args:this.maybeEncodeFileParts(n),warnings:[]}}async doGenerate(e){let{args:t,warnings:n}=await this.getArgs(e),{abortSignal:r}=e,i=this.config.headers?await VP(this.config.headers):void 0;try{let{responseHeaders:a,value:o,rawValue:s}=await LP({url:this.getUrl(),headers:aM(i,e.headers,this.getModelConfigHeaders(this.modelId,!1),await VP(this.config.o11yHeaders)),body:t,successfulResponseHandler:XP(wk()),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),...r&&{abortSignal:r},fetch:this.config.fetch});return{...o,request:{body:t},response:{headers:a,body:s},warnings:n}}catch(e){throw await xI(e,await wI(i??{}))}}async doStream(e){let{args:t,warnings:n}=await this.getArgs(e),{abortSignal:r}=e,i=this.config.headers?await VP(this.config.headers):void 0;try{let{value:a,responseHeaders:o}=await LP({url:this.getUrl(),headers:aM(i,e.headers,this.getModelConfigHeaders(this.modelId,!0),await VP(this.config.o11yHeaders)),body:t,successfulResponseHandler:YP(wk()),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),...r&&{abortSignal:r},fetch:this.config.fetch});return{stream:a.pipeThrough(new TransformStream({start(e){n.length>0&&e.enqueue({type:`stream-start`,warnings:n})},transform(t,n){if(t.success){let r=t.value;if(r.type===`raw`&&!e.includeRawChunks)return;r.type===`response-metadata`&&r.timestamp&&typeof r.timestamp==`string`&&(r.timestamp=new Date(r.timestamp)),n.enqueue(r)}else n.error(t.error)}})),request:{body:t},response:{headers:o}}}catch(e){throw await xI(e,await wI(i??{}))}}maybeEncodeFileParts(e){for(let t of e.prompt)if(Array.isArray(t.content)){for(let e of t.content)if(e.type===`file`||e.type===`reasoning-file`)e.data=FI(e.data);else if(e.type===`tool-result`&&e.output.type===`content`)for(let t of e.output.value)t.type===`file`&&(t.data=FI(t.data))}return e}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(e,t){return{"ai-language-model-specification-version":`4`,"ai-language-model-id":e,"ai-language-model-streaming":String(t)}}};function FI(e){if(e.type===`data`){let t=e.data;if(t instanceof Uint8Array)return{...e,data:Buffer.from(t).toString(`base64`)}}return e}var II=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`,this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}static[nM](e){return QP({modelId:e.modelId,config:e.config})}static[rM](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:n,providerOptions:r}){let i=this.config.headers?await VP(this.config.headers):void 0;try{let{responseHeaders:a,value:o,rawValue:s}=await LP({url:this.getUrl(),headers:aM(i,t??{},this.getModelConfigHeaders(),await VP(this.config.o11yHeaders)),body:{values:e,...r?{providerOptions:r}:{}},successfulResponseHandler:XP(RI),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),...n&&{abortSignal:n},fetch:this.config.fetch});return{embeddings:o.embeddings,usage:o.usage??void 0,providerMetadata:o.providerMetadata,response:{headers:a,body:s},warnings:o.warnings??[]}}catch(e){throw await xI(e,await wI(i??{}))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":`4`,"ai-model-id":this.modelId}}},LI=Fk(`type`,[G({type:K(`unsupported`),feature:H(),details:H().optional()}),G({type:K(`compatibility`),feature:H(),details:H().optional()}),G({type:K(`deprecated`),setting:H(),message:H()}),G({type:K(`other`),message:H()})]),RI=xP(()=>kP(G({embeddings:W(W(U())),usage:G({tokens:U()}).nullish(),warnings:W(LI).optional(),providerMetadata:zk(H(),zk(H(),Ek())).optional()}))),zI=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`,this.maxImagesPerCall=2**53-1}static[nM](e){return QP({modelId:e.modelId,config:e.config})}static[rM](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doGenerate({prompt:e,n:t,size:n,aspectRatio:r,seed:i,files:a,mask:o,providerOptions:s,headers:c,abortSignal:l}){let u=this.config.headers?await VP(this.config.headers):void 0;try{let{responseHeaders:d,value:f}=await LP({url:this.getUrl(),headers:aM(u,c??{},this.getModelConfigHeaders(),await VP(this.config.o11yHeaders)),body:{prompt:e,n:t,...n&&{size:n},...r&&{aspectRatio:r},...i&&{seed:i},...s&&{providerOptions:s},...a&&{files:a.map(e=>BI(e))},...o&&{mask:BI(o)}},successfulResponseHandler:XP(WI),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),...l&&{abortSignal:l},fetch:this.config.fetch});return{images:f.images,warnings:f.warnings??[],providerMetadata:f.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:d},...f.usage!=null&&{usage:{inputTokens:f.usage.inputTokens??void 0,outputTokens:f.usage.outputTokens??void 0,totalTokens:f.usage.totalTokens??void 0}}}}catch(e){throw await xI(e,await wI(u??{}))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":`4`,"ai-model-id":this.modelId}}};function BI(e){return e.type===`file`&&e.data instanceof Uint8Array?{...e,data:lM(e.data)}:e}var VI=G({images:W(Ek()).optional()}).catchall(Ek()),HI=Fk(`type`,[G({type:K(`unsupported`),feature:H(),details:H().optional()}),G({type:K(`compatibility`),feature:H(),details:H().optional()}),G({type:K(`deprecated`),setting:H(),message:H()}),G({type:K(`other`),message:H()})]),UI=G({inputTokens:U().nullish(),outputTokens:U().nullish(),totalTokens:U().nullish()}),WI=G({images:W(H()),warnings:W(HI).optional(),providerMetadata:zk(H(),VI).optional(),usage:UI.optional()}),GI=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`,this.maxVideosPerCall=2**53-1}get provider(){return this.config.provider}async doGenerate({prompt:e,n:t,aspectRatio:n,resolution:r,duration:i,fps:a,seed:o,generateAudio:s,image:c,frameImages:l,inputReferences:u,providerOptions:d,headers:f,abortSignal:p}){let m=this.config.headers?await VP(this.config.headers):void 0;try{let{responseHeaders:h,value:g}=await LP({url:this.getUrl(),headers:aM(m,f??{},this.getModelConfigHeaders(),await VP(this.config.o11yHeaders),{accept:`text/event-stream`}),body:{prompt:e,n:t,...n&&{aspectRatio:n},...r&&{resolution:r},...i&&{duration:i},...a&&{fps:a},...o&&{seed:o},...s!==void 0&&{generateAudio:s},...d&&{providerOptions:d},...c&&{image:KI(c)},...l&&{frameImages:l.map(e=>({...e,image:KI(e.image)}))},...u&&{inputReferences:u.map(e=>KI(e))}},successfulResponseHandler:async({response:e,url:t,requestBodyValues:n})=>{if(e.body==null)throw new $x({message:`SSE response body is empty`,url:t,requestBodyValues:n,statusCode:e.status});let r=PP({stream:e.body,schema:XI}).getReader(),{done:i,value:a}=await r.read();if(r.releaseLock(),i||!a)throw new $x({message:`SSE stream ended without a data event`,url:t,requestBodyValues:n,statusCode:e.status});if(!a.success)throw new $x({message:`Failed to parse video SSE event`,cause:a.error,url:t,requestBodyValues:n,statusCode:e.status});let o=a.value;if(o.type===`error`)throw new $x({message:o.message,statusCode:o.statusCode,url:t,requestBodyValues:n,responseHeaders:Object.fromEntries([...e.headers]),responseBody:JSON.stringify(o),data:{error:{message:o.message,type:o.errorType,param:o.param}}});return{value:{videos:o.videos,warnings:o.warnings,providerMetadata:o.providerMetadata},responseHeaders:Object.fromEntries([...e.headers])}},failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),...p&&{abortSignal:p},fetch:this.config.fetch});return{videos:g.videos,warnings:g.warnings??[],providerMetadata:g.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:h}}}catch(e){throw await xI(e,await wI(m??{}))}}getUrl(){return`${this.config.baseURL}/video-model`}getModelConfigHeaders(){return{"ai-video-model-specification-version":`4`,"ai-model-id":this.modelId}}};function KI(e){return e.type===`file`&&e.data instanceof Uint8Array?{...e,data:lM(e.data)}:e}var qI=G({videos:W(Ek()).optional()}).catchall(Ek()),JI=Nk([G({type:K(`url`),url:H(),mediaType:H()}),G({type:K(`base64`),data:H(),mediaType:H()})]),YI=Fk(`type`,[G({type:K(`unsupported`),feature:H(),details:H().optional()}),G({type:K(`compatibility`),feature:H(),details:H().optional()}),G({type:K(`deprecated`),setting:H(),message:H()}),G({type:K(`other`),message:H()})]),XI=Fk(`type`,[G({type:K(`result`),videos:W(JI),warnings:W(YI).optional(),providerMetadata:zk(H(),qI).optional()}),G({type:K(`error`),message:H(),errorType:H(),statusCode:U(),param:Ek().nullable()})]),ZI=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}get provider(){return this.config.provider}async doRerank({documents:e,query:t,topN:n,headers:r,abortSignal:i,providerOptions:a}){let o=this.config.headers?await VP(this.config.headers):void 0;try{let{responseHeaders:s,value:c,rawValue:l}=await LP({url:this.getUrl(),headers:aM(o,r??{},this.getModelConfigHeaders(),await VP(this.config.o11yHeaders)),body:{documents:e,query:t,...n==null?{}:{topN:n},...a?{providerOptions:a}:{}},successfulResponseHandler:XP($I),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),...i&&{abortSignal:i},fetch:this.config.fetch});return{ranking:c.ranking,providerMetadata:c.providerMetadata,response:{headers:s,body:l},warnings:c.warnings??[]}}catch(e){throw await xI(e,await wI(o??{}))}}getUrl(){return`${this.config.baseURL}/reranking-model`}getModelConfigHeaders(){return{"ai-reranking-model-specification-version":`4`,"ai-model-id":this.modelId}}},QI=Fk(`type`,[G({type:K(`unsupported`),feature:H(),details:H().optional()}),G({type:K(`compatibility`),feature:H(),details:H().optional()}),G({type:K(`deprecated`),setting:H(),message:H()}),G({type:K(`other`),message:H()})]),$I=xP(()=>kP(G({ranking:W(G({index:U(),relevanceScore:U()})),warnings:W(QI).optional(),providerMetadata:zk(H(),zk(H(),Ek())).optional()}))),eL=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}get provider(){return this.config.provider}async doGenerate({text:e,voice:t,outputFormat:n,instructions:r,speed:i,language:a,providerOptions:o,headers:s,abortSignal:c}){let l=this.config.headers?await VP(this.config.headers):void 0;try{let{responseHeaders:u,value:d,rawValue:f}=await LP({url:this.getUrl(),headers:aM(l,s??{},this.getModelConfigHeaders(),await VP(this.config.o11yHeaders)),body:{text:e,...t&&{voice:t},...n&&{outputFormat:n},...r&&{instructions:r},...i!=null&&{speed:i},...a&&{language:a},...o&&{providerOptions:o}},successfulResponseHandler:XP(rL),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),...c&&{abortSignal:c},fetch:this.config.fetch});return{audio:d.audio,warnings:d.warnings??[],providerMetadata:d.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:u,body:f}}}catch(e){throw await xI(e,await wI(l??{}))}}getUrl(){return`${this.config.baseURL}/speech-model`}getModelConfigHeaders(){return{"ai-speech-model-specification-version":`4`,"ai-model-id":this.modelId}}},tL=G({}).catchall(Ek()),nL=Fk(`type`,[G({type:K(`unsupported`),feature:H(),details:H().optional()}),G({type:K(`compatibility`),feature:H(),details:H().optional()}),G({type:K(`deprecated`),setting:H(),message:H()}),G({type:K(`other`),message:H()})]),rL=G({audio:H(),warnings:W(nL).optional(),providerMetadata:zk(H(),tL).optional()}),iL=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}get provider(){return this.config.provider}async doGenerate({audio:e,mediaType:t,providerOptions:n,headers:r,abortSignal:i}){let a=this.config.headers?await VP(this.config.headers):void 0;try{let{responseHeaders:o,value:s,rawValue:c}=await LP({url:this.getUrl(),headers:aM(a,r??{},this.getModelConfigHeaders(),await VP(this.config.o11yHeaders)),body:{audio:e instanceof Uint8Array?lM(e):e,mediaType:t,...n&&{providerOptions:n}},successfulResponseHandler:XP(sL),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),...i&&{abortSignal:i},fetch:this.config.fetch});return{text:s.text,segments:s.segments??[],language:s.language??void 0,durationInSeconds:s.durationInSeconds??void 0,warnings:s.warnings??[],providerMetadata:s.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:o,body:c}}}catch(e){throw await xI(e,await wI(a??{}))}}getUrl(){return`${this.config.baseURL}/transcription-model`}getModelConfigHeaders(){return{"ai-transcription-model-specification-version":`4`,"ai-model-id":this.modelId}}},aL=G({}).catchall(Ek()),oL=Fk(`type`,[G({type:K(`unsupported`),feature:H(),details:H().optional()}),G({type:K(`compatibility`),feature:H(),details:H().optional()}),G({type:K(`deprecated`),setting:H(),message:H()}),G({type:K(`other`),message:H()})]),sL=G({text:H(),segments:W(G({text:H(),startSecond:U(),endSecond:U()})).optional(),language:H().nullish(),durationInSeconds:U().nullish(),warnings:W(oL).optional(),providerMetadata:zk(H(),aL).optional()}),cL=class{constructor(e,t){this.specificationVersion=`v4`,this.modelId=e,this.provider=t.provider,this.config=t}async doCreateClientSecret(e){let t=await this.config.createClientSecret({modelId:this.modelId,...e?.expiresAfterSeconds!=null&&{expiresAfterSeconds:e.expiresAfterSeconds}});return{token:t.token,url:lL(this.config.baseURL,this.modelId),...t.expiresAt!=null&&{expiresAt:t.expiresAt}}}getWebSocketConfig(e){return{url:e.url,protocols:uF(e.token,{teamIdOrSlug:this.config.teamIdOrSlug})}}parseServerEvent(e){return e}serializeClientEvent(e){return e}buildSessionConfig(e){return e}};function lL(e,t){let n=new URL(`${e.replace(/^http/,`ws`)}/realtime-model`);return n.searchParams.set(`ai-model-id`,t),n.toString()}var uL=BP({id:`gateway.exa_search`,inputSchema:xP(()=>kP(G({query:H().describe(`Natural-language web search query. This is required.`),type:Vk([`auto`,`fast`,`instant`]).optional().describe(`Search method. Use auto for the default balance of speed and quality.`),num_results:U().optional().describe(`Maximum number of results to return (1-100, default: 10).`),category:Vk([`company`,`people`,`research paper`,`news`,`personal site`,`financial report`]).optional().describe(`Optional content category to focus results.`),user_location:H().optional().describe(`Two-letter ISO country code such as 'US'.`),include_domains:W(H()).optional().describe(`Only return results from these domains.`),exclude_domains:W(H()).optional().describe(`Exclude results from these domains.`),start_published_date:H().optional().describe(`Only return links published after this ISO 8601 date.`),end_published_date:H().optional().describe(`Only return links published before this ISO 8601 date.`),contents:G({text:Nk([bk(),G({max_characters:U().optional(),include_html_tags:bk().optional(),verbosity:Vk([`compact`,`standard`,`full`]).optional(),include_sections:W(Vk([`header`,`navigation`,`banner`,`body`,`sidebar`,`footer`,`metadata`])).optional(),exclude_sections:W(Vk([`header`,`navigation`,`banner`,`body`,`sidebar`,`footer`,`metadata`])).optional()})]).optional(),highlights:Nk([bk(),G({query:H().optional(),max_characters:U().optional()})]).optional(),max_age_hours:U().optional(),livecrawl_timeout:U().optional(),subpages:U().optional(),subpage_target:Nk([H(),W(H())]).optional(),extras:G({links:U().optional(),image_links:U().optional()}).optional()}).optional().describe(`Controls extracted page content and freshness.`)}))),outputSchema:xP(()=>kP(Nk([G({requestId:H(),searchType:H().optional(),resolvedSearchType:H().optional(),results:W(G({title:H(),url:H(),id:H(),publishedDate:H().nullable().optional(),author:H().nullable().optional(),image:H().nullable().optional(),favicon:H().nullable().optional(),text:H().optional(),highlights:W(H()).optional(),highlightScores:W(U()).optional(),summary:H().optional(),subpages:W(wk()).optional(),extras:G({links:W(H()).optional(),imageLinks:W(H()).optional()}).optional()})),costDollars:G({total:U().optional(),search:zk(U()).optional()}).optional()}),G({error:Vk([`api_error`,`rate_limit`,`timeout`,`invalid_input`,`configuration_error`,`execution_error`,`unknown`]),statusCode:U().optional(),message:H()})])))}),dL=(e={})=>uL(e),fL=BP({id:`gateway.parallel_search`,inputSchema:xP(()=>kP(G({objective:H().describe(`Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters.`),search_queries:W(H()).optional().describe(`Optional search queries to supplement the objective. Maximum 200 characters per query.`),mode:Vk([`one-shot`,`agentic`]).optional().describe(`Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.`),max_results:U().optional().describe(`Maximum number of results to return (1-20). Defaults to 10 if not specified.`),source_policy:G({include_domains:W(H()).optional().describe(`Limit results to these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page).`),exclude_domains:W(H()).optional().describe(`Exclude results from these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page).`),after_date:H().optional().describe(`Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time.`)}).optional().describe(`Source policy for controlling which domains to include/exclude and freshness.`),excerpts:G({max_chars_per_result:U().optional().describe(`Maximum characters per result.`),max_chars_total:U().optional().describe(`Maximum total characters across all results.`)}).optional().describe(`Excerpt configuration for controlling result length.`),fetch_policy:G({max_age_seconds:U().optional().describe(`Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.`)}).optional().describe(`Fetch policy for controlling content freshness.`)}))),outputSchema:xP(()=>kP(Nk([G({searchId:H(),results:W(G({url:H(),title:H(),excerpt:H(),publishDate:H().nullable().optional(),relevanceScore:U().optional()}))}),G({error:Vk([`api_error`,`rate_limit`,`timeout`,`invalid_input`,`configuration_error`,`unknown`]),statusCode:U().optional(),message:H()})])))}),pL=(e={})=>fL(e),mL=BP({id:`gateway.perplexity_search`,inputSchema:xP(()=>kP(G({query:Nk([H(),W(H())]).describe(`Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries.`),max_results:U().optional().describe(`Maximum number of search results to return (1-20, default: 10)`),max_tokens_per_page:U().optional().describe(`Maximum number of tokens to extract per search result page (256-2048, default: 2048)`),max_tokens:U().optional().describe(`Maximum total tokens across all search results (default: 25000, max: 1000000)`),country:H().optional().describe(`Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')`),search_domain_filter:W(H()).optional().describe(`List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']`),search_language_filter:W(H()).optional().describe(`List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']`),search_after_date:H().optional().describe(`Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter.`),search_before_date:H().optional().describe(`Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter.`),last_updated_after_filter:H().optional().describe(`Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter.`),last_updated_before_filter:H().optional().describe(`Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter.`),search_recency_filter:Vk([`day`,`week`,`month`,`year`]).optional().describe(`Filter results by relative time period. Cannot be used with search_after_date or search_before_date.`)}))),outputSchema:xP(()=>kP(Nk([G({results:W(G({title:H(),url:H(),snippet:H(),date:H().optional(),lastUpdated:H().optional()})),id:H()}),G({error:Vk([`api_error`,`rate_limit`,`timeout`,`invalid_input`,`unknown`]),statusCode:U().optional(),message:H()})])))}),hL={exaSearch:dL,parallelSearch:pL,perplexitySearch:(e={})=>mL(e)};async function gL(){return(0,oF.getContext)().headers?.[`x-vercel-id`]}var _L=`4.0.13`,vL=`0.0.1`,yL=G({token:H(),expiresAt:U().nullish()});function bL(e={}){let t=null,n=null,r=e.metadataCacheRefreshMillis??1e3*60*5,i=0,a=eF(e.baseURL)??`https://ai-gateway.vercel.sh/v4/ai`,o=t=>$M({Authorization:`Bearer ${t.token}`,"ai-gateway-protocol-version":vL,[SI]:t.authMethod,...e.teamIdOrSlug==null?{}:{[CI]:e.teamIdOrSlug},...e.headers},`ai-sdk/gateway/${_L}`),s=async()=>{try{return o(await SL(e))}catch(e){throw xF.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},c=async()=>{try{return await SL(e)}catch(e){throw xF.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},l=async t=>{CL();let n=await c(),r=o(n),i=new URL(`/v1/realtime/client-secrets`,a).toString();try{let{value:n}=await LP({url:i,headers:r,body:{model:t.modelId,...t.expiresAfterSeconds!=null&&{expiresIn:t.expiresAfterSeconds}},successfulResponseHandler:XP(yL),failedResponseHandler:JP({errorSchema:wk(),errorToMessage:e=>e}),fetch:e.fetch});return{token:n.token,...n.expiresAt!=null&&{expiresAt:n.expiresAt}}}catch(e){throw await xI(e,await wI(r))}},u=()=>{let e=cN({settingValue:void 0,environmentVariableName:`VERCEL_DEPLOYMENT_ID`}),t=cN({settingValue:void 0,environmentVariableName:`VERCEL_ENV`}),n=cN({settingValue:void 0,environmentVariableName:`VERCEL_REGION`}),r=cN({settingValue:void 0,environmentVariableName:`VERCEL_PROJECT_ID`});return async()=>{let i=await gL();return{...e&&{"ai-o11y-deployment-id":e},...t&&{"ai-o11y-environment":t},...n&&{"ai-o11y-region":n},...i&&{"ai-o11y-request-id":i},...r&&{"ai-o11y-project-id":r}}}},d=t=>new PI(t,{provider:`gateway`,baseURL:a,headers:s,fetch:e.fetch,o11yHeaders:u()}),f=async()=>{var o;let c=((o=e._internal)?.currentDate)?.call(o).getTime()??Date.now();return(!t||c-i>r)&&(i=c,t=new DI({baseURL:a,headers:s,fetch:e.fetch}).getAvailableModels().then(e=>(n=e,e)).catch(async e=>{throw await xI(e,await wI(await s()))})),n?Promise.resolve(n):t},p=async()=>new DI({baseURL:a,headers:s,fetch:e.fetch}).getCredits().catch(async e=>{throw await xI(e,await wI(await s()))}),m=async t=>new AI({baseURL:a,headers:s,fetch:e.fetch}).getSpendReport(t).catch(async e=>{throw await xI(e,await wI(await s()))}),h=async t=>new MI({baseURL:a,headers:s,fetch:e.fetch}).getGenerationInfo(t).catch(async e=>{throw await xI(e,await wI(await s()))}),g=function(e){if(new.target)throw Error(`The Gateway Provider model function cannot be called with the new keyword.`);return d(e)};g.specificationVersion=`v4`,g.getAvailableModels=f,g.getCredits=p,g.getSpendReport=m,g.getGenerationInfo=h,g.imageModel=t=>new zI(t,{provider:`gateway`,baseURL:a,headers:s,fetch:e.fetch,o11yHeaders:u()}),g.languageModel=d;let _=t=>new II(t,{provider:`gateway`,baseURL:a,headers:s,fetch:e.fetch,o11yHeaders:u()});g.embeddingModel=_,g.textEmbeddingModel=_,g.videoModel=t=>new GI(t,{provider:`gateway`,baseURL:a,headers:s,fetch:e.fetch,o11yHeaders:u()});let v=t=>new ZI(t,{provider:`gateway`,baseURL:a,headers:s,fetch:e.fetch,o11yHeaders:u()});g.rerankingModel=v,g.reranking=v;let y=t=>new eL(t,{provider:`gateway`,baseURL:a,headers:s,fetch:e.fetch,o11yHeaders:u()});g.speechModel=y,g.speech=y;let b=t=>new iL(t,{provider:`gateway`,baseURL:a,headers:s,fetch:e.fetch,o11yHeaders:u()});g.transcriptionModel=b,g.transcription=b;let x=t=>new cL(t,{provider:`gateway.realtime`,baseURL:a,teamIdOrSlug:e.teamIdOrSlug,createClientSecret:l});return g.experimental_realtime=Object.assign(e=>x(e),{getToken:async e=>{let{model:t,...n}=e,r=await x(t).doCreateClientSecret(n);return{token:r.token,url:r.url,...r.expiresAt!=null&&{expiresAt:r.expiresAt}}}}),g.chat=g.languageModel,g.embedding=g.embeddingModel,g.image=g.imageModel,g.video=g.videoModel,g.tools=hL,g}var xL=bL();async function SL(e){let t=cN({settingValue:e.apiKey,environmentVariableName:`AI_GATEWAY_API_KEY`});return t?{token:t,authMethod:`api-key`}:{token:await(0,oF.getVercelOidcToken)(),authMethod:`oidc`}}function CL(){if(globalThis.window!==void 0)throw Error(`AI Gateway realtime client secrets must be minted server-side: minting needs your Gateway credential, which must never reach the browser. Call gateway.experimental_realtime.getToken() from your server and pass the returned token to the client.`)}var wL=Object.defineProperty,TL=(e,t)=>{for(var n in t)wL(e,n,{get:t[n],enumerable:!0})},EL=`AI_InvalidArgumentError`,DL=`vercel.ai.error.${EL}`,OL=Symbol.for(DL),kL,AL=class extends z{constructor({parameter:e,value:t,message:n}){super({name:EL,message:`Invalid argument for parameter ${e}: ${n}`}),this[kL]=!0,this.parameter=e,this.value=t}static isInstance(e){return z.hasMarker(e,DL)}};kL=OL;var jL=`AI_InvalidToolApprovalError`,ML=`vercel.ai.error.${jL}`,NL=Symbol.for(ML),PL,FL=class extends z{constructor({approvalId:e}){super({name:jL,message:`Tool approval response references unknown approvalId: "${e}". No matching tool-approval-request found in message history.`}),this[PL]=!0,this.approvalId=e}static isInstance(e){return z.hasMarker(e,ML)}};PL=NL;var IL=`AI_InvalidToolApprovalSignatureError`,LL=`vercel.ai.error.${IL}`,RL=Symbol.for(LL),zL,BL=class extends z{constructor({approvalId:e,toolCallId:t,reason:n}){super({name:IL,message:`Tool approval signature verification failed for approval "${e}" (tool call "${t}"): ${n}`}),this[zL]=!0,this.approvalId=e,this.toolCallId=t}static isInstance(e){return z.hasMarker(e,LL)}};zL=RL;var VL=`AI_InvalidToolInputError`,HL=`vercel.ai.error.${VL}`,UL=Symbol.for(HL),WL,GL=class extends z{constructor({toolInput:e,toolName:t,cause:n,message:r=`Invalid input for tool ${t}: ${oS(n)}`}){super({name:VL,message:r,cause:n}),this[WL]=!0,this.toolInput=e,this.toolName=t}static isInstance(e){return z.hasMarker(e,HL)}};WL=UL;var KL=`AI_ToolCallNotFoundForApprovalError`,qL=`vercel.ai.error.${KL}`,JL=Symbol.for(qL),YL,XL=class extends z{constructor({toolCallId:e,approvalId:t}){super({name:KL,message:`Tool call "${e}" not found for approval request "${t}".`}),this[YL]=!0,this.toolCallId=e,this.approvalId=t}static isInstance(e){return z.hasMarker(e,qL)}};YL=JL;var ZL=`AI_MissingToolResultsError`,QL=`vercel.ai.error.${ZL}`,$L=Symbol.for(QL),eR,tR=class extends z{constructor({toolCallIds:e}){super({name:ZL,message:`Tool result${e.length>1?`s are`:` is`} missing for tool call${e.length>1?`s`:``} ${e.join(`, `)}.`}),this[eR]=!0,this.toolCallIds=e}static isInstance(e){return z.hasMarker(e,QL)}};eR=$L;var nR=`AI_NoObjectGeneratedError`,rR=`vercel.ai.error.${nR}`,iR=Symbol.for(rR),aR,oR=class extends z{constructor({message:e=`No object generated.`,cause:t,text:n,response:r,usage:i,finishReason:a}){super({name:nR,message:e,cause:t}),this[aR]=!0,this.text=n,this.response=r,this.usage=i,this.finishReason=a}static isInstance(e){return z.hasMarker(e,rR)}};aR=iR;var sR=`AI_NoOutputGeneratedError`,cR=`vercel.ai.error.${sR}`,lR=Symbol.for(cR),uR,dR=class extends z{constructor({message:e=`No output generated.`,cause:t}={}){super({name:sR,message:e,cause:t}),this[uR]=!0}static isInstance(e){return z.hasMarker(e,cR)}};uR=lR;var fR=`AI_NoSuchToolError`,pR=`vercel.ai.error.${fR}`,mR=Symbol.for(pR),hR,gR=class extends z{constructor({toolName:e,availableTools:t=void 0,message:n=`Model tried to call unavailable tool '${e}'. ${t===void 0?`No tools are available.`:`Available tools: ${t.join(`, `)}.`}`}){super({name:fR,message:n}),this[hR]=!0,this.toolName=e,this.availableTools=t}static isInstance(e){return z.hasMarker(e,pR)}};hR=mR;var _R=`AI_ToolCallRepairError`,vR=`vercel.ai.error.${_R}`,yR=Symbol.for(vR),bR,xR=class extends z{constructor({cause:e,originalError:t,message:n=`Error repairing tool call: ${oS(e)}`}){super({name:_R,message:n,cause:e}),this[bR]=!0,this.originalError=t}static isInstance(e){return z.hasMarker(e,vR)}};bR=yR;var SR=class extends z{constructor(e){super({name:`AI_UnsupportedModelVersionError`,message:`Unsupported model version ${e.version} for provider "${e.provider}" and model "${e.modelId}". AI SDK 5 only supports models that implement specification version "v2".`}),this.version=e.version,this.provider=e.provider,this.modelId=e.modelId}},CR=`AI_InvalidDataContentError`,wR=`vercel.ai.error.${CR}`,TR=Symbol.for(wR),ER,DR=class extends z{constructor({content:e,cause:t,message:n=`Invalid data content. Expected a base64 string, Uint8Array, ArrayBuffer, or Buffer, but got ${typeof e}.`}){super({name:CR,message:n,cause:t}),this[ER]=!0,this.content=e}static isInstance(e){return z.hasMarker(e,wR)}};ER=TR;var OR=`AI_InvalidMessageRoleError`,kR=`vercel.ai.error.${OR}`,AR=Symbol.for(kR),jR,MR=class extends z{constructor({role:e,message:t=`Invalid message role: '${e}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:OR,message:t}),this[jR]=!0,this.role=e}static isInstance(e){return z.hasMarker(e,kR)}};jR=AR;var NR=`AI_RetryError`,PR=`vercel.ai.error.${NR}`,FR=Symbol.for(PR),IR,LR=class extends z{constructor({message:e,reason:t,errors:n}){super({name:NR,message:e}),this[IR]=!0,this.reason=t,this.errors=n,this.lastError=n[n.length-1]}static isInstance(e){return z.hasMarker(e,PR)}};IR=FR;function RR({warning:e,provider:t,model:n}){let r=`AI SDK Warning${t!=null&&n!=null?` (${t} / ${n})`:``}:`;switch(e.type){case`unsupported`:{let t=`${r} The feature "${e.feature}" is not supported.`;return e.details&&(t+=` ${e.details}`),t}case`compatibility`:{let t=`${r} The feature "${e.feature}" is used in a compatibility mode.`;return e.details&&(t+=` ${e.details}`),t}case`deprecated`:return`${r} Deprecated: "${e.setting}". ${e.message}`;case`other`:return`${r} ${e.message}`;default:return`${r} ${JSON.stringify(e,null,2)}`}}var zR=`AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.`,BR=!1,VR=e=>{if(e.warnings.length===0)return;let t=globalThis.AI_SDK_LOG_WARNINGS;if(t!==!1){if(typeof t==`function`){t(e);return}BR||(BR=!0,console.info(zR));for(let t of e.warnings){let n=RR({warning:t,provider:e.provider,model:e.model});typeof process<`u`&&typeof process.emitWarning==`function`?process.emitWarning(n,{type:t.type===`deprecated`?`DeprecationWarning`:`Warning`}):console.warn(n)}}};function HR({provider:e,modelId:t}){VR({warnings:[{type:`compatibility`,feature:`specificationVersion`,details:`Using v2 specification compatibility mode. Some features may not be available.`}],provider:e,model:t})}function UR(e){return e.specificationVersion===`v3`?e:(HR({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get(e,t){return t===`specificationVersion`?`v3`:e[t]}}))}function WR(e){if(e.specificationVersion===`v4`)return e;let t=e.specificationVersion===`v2`?UR(e):e;return new Proxy(t,{get(e,t){return t===`specificationVersion`?`v4`:e[t]}})}function GR(e){return e.specificationVersion===`v3`?e:(HR({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get(e,t){return t===`specificationVersion`?`v3`:e[t]}}))}function KR(e){if(e.specificationVersion===`v4`)return e;let t=e.specificationVersion===`v2`?GR(e):e;return new Proxy(t,{get(e,t){return t===`specificationVersion`?`v4`:e[t]}})}function qR(e){return e.specificationVersion===`v3`?e:(HR({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get(e,t){switch(t){case`specificationVersion`:return`v3`;case`doGenerate`:return async(...t)=>{let n=await e.doGenerate(...t);return{...n,finishReason:YR(n.finishReason),usage:XR(n.usage)}};case`doStream`:return async(...t)=>{let n=await e.doStream(...t);return{...n,stream:JR(n.stream)}};default:return e[t]}}}))}function JR(e){return e.pipeThrough(new TransformStream({transform(e,t){switch(e.type){case`finish`:t.enqueue({...e,finishReason:YR(e.finishReason),usage:XR(e.usage)});break;default:t.enqueue(e);break}}}))}function YR(e){return{unified:e===`unknown`?`other`:e,raw:void 0}}function XR(e){return{inputTokens:{total:e.inputTokens,noCache:void 0,cacheRead:e.cachedInputTokens,cacheWrite:void 0},outputTokens:{total:e.outputTokens,text:void 0,reasoning:e.reasoningTokens}}}function ZR(e){if(e.specificationVersion===`v4`)return e;let t=e.specificationVersion===`v2`?qR(e):e;return new Proxy(t,{get(e,t){return t===`specificationVersion`?`v4`:e[t]}})}function QR(e){return e.specificationVersion===`v4`?e:new Proxy(e,{get(e,t){return t===`specificationVersion`?`v4`:e[t]}})}function $R(e){return e.specificationVersion===`v3`?e:(HR({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get(e,t){return t===`specificationVersion`?`v3`:e[t]}}))}function ez(e){if(e.specificationVersion===`v4`)return e;let t=e.specificationVersion===`v2`?$R(e):e;return new Proxy(t,{get(e,t){return t===`specificationVersion`?`v4`:e[t]}})}function tz(e){return e.specificationVersion===`v3`?e:(HR({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get(e,t){return t===`specificationVersion`?`v3`:e[t]}}))}function nz(e){if(e.specificationVersion===`v4`)return e;let t=e.specificationVersion===`v2`?tz(e):e;return new Proxy(t,{get(e,t){return t===`specificationVersion`?`v4`:e[t]}})}function rz(e){if(`specificationVersion`in e&&e.specificationVersion===`v3`)return e;let t=e;return{specificationVersion:`v3`,languageModel:e=>qR(t.languageModel(e)),embeddingModel:e=>UR(t.textEmbeddingModel(e)),imageModel:e=>GR(t.imageModel(e)),transcriptionModel:t.transcriptionModel?e=>tz(t.transcriptionModel(e)):void 0,speechModel:t.speechModel?e=>$R(t.speechModel(e)):void 0,rerankingModel:void 0}}function iz(e){if(`specificationVersion`in e&&e.specificationVersion===`v4`)return e;let t=!(`specificationVersion`in e)||e.specificationVersion!==`v3`?rz(e):e;return{specificationVersion:`v4`,languageModel:e=>ZR(t.languageModel(e)),embeddingModel:e=>WR(t.embeddingModel(e)),imageModel:e=>KR(t.imageModel(e)),transcriptionModel:t.transcriptionModel?e=>nz(t.transcriptionModel(e)):void 0,speechModel:t.speechModel?e=>ez(t.speechModel(e)):void 0,rerankingModel:t.rerankingModel?e=>QR(t.rerankingModel(e)):void 0}}function az(e){if(typeof e==`string`)return oz().languageModel(e);if(![`v4`,`v3`,`v2`].includes(e.specificationVersion)){let t=e;throw new SR({version:t.specificationVersion,provider:t.provider,modelId:t.modelId})}return ZR(e)}function oz(){return iz(globalThis.AI_SDK_DEFAULT_PROVIDER??xL)}function sz(e){return e.map(e=>cz(e))}function cz(e){return e instanceof URL?new URL(e.href):Array.isArray(e)?e.map(e=>cz(e)):e instanceof Uint8Array?new Uint8Array(e):e instanceof ArrayBuffer?e.slice(0):e instanceof Date?new Date(e):typeof e==`object`&&e?Object.fromEntries(Object.entries(e).map(([e,t])=>[e,cz(t)])):e}var lz=`7.0.17`,uz=async({url:e,maxBytes:t,abortSignal:n})=>{let r=e.toString();try{let e=await zM({url:r,headers:$M({},`ai-sdk/${lz}`,ZM()),abortSignal:n});if(!e.ok)throw await TM(e),new jM({url:r,statusCode:e.status,statusText:e.statusText});return{data:await VM({response:e,url:r,maxBytes:t??BM}),mediaType:e.headers.get(`content-type`)??void 0}}catch(e){throw jM.isInstance(e)?e:new jM({url:r,cause:e})}},dz=(e=uz)=>t=>Promise.all(t.map(async t=>t.isUrlSupportedByModel?null:await e(t)));function fz(e){try{let[t,n]=e.split(`,`);return{mediaType:t.split(`;`)[0].split(`:`)[1],base64Content:n}}catch{return{mediaType:void 0,base64Content:void 0}}}function pz(e){if(typeof e!=`object`||!e)return!1;let t=e.type;return t===`data`||t===`url`||t===`reference`||t===`text`}function mz(e){if(e.protocol===`data:`){let{mediaType:t,base64Content:n}=fz(e.toString());if(t==null||n==null)throw new DR({content:e,message:`Invalid data URL format in content ${e.toString()}`});return{data:{type:`data`,data:n},mediaType:t}}return{data:{type:`url`,url:e},mediaType:void 0}}function hz(e){return e instanceof Uint8Array?{data:{type:`data`,data:e},mediaType:void 0}:e instanceof ArrayBuffer||rN(e)?{data:{type:`data`,data:new Uint8Array(e)},mediaType:void 0}:{data:{type:`data`,data:e},mediaType:void 0}}function gz(e){if(pz(e))switch(e.type){case`data`:if(typeof e.data==`string`&&e.data.startsWith(`data:`))throw new DR({content:e.data,message:`Data URLs are not valid inline data. Pass them as { type: "url", url } instead.`});return hz(e.data);case`url`:return mz(e.url);case`reference`:return{data:{type:`reference`,reference:e.reference},mediaType:void 0};case`text`:return{data:{type:`text`,text:e.text},mediaType:void 0}}if(e instanceof URL)return mz(e);if(typeof e==`string`)try{return mz(new URL(e))}catch{return hz(e)}return aN(e)?{data:{type:`reference`,reference:e},mediaType:void 0}:hz(e)}async function _z({prompt:e,supportedUrls:t,download:n=dz(),provider:r}){let i=await bz(e.messages,n,t),a=new Map;for(let t of e.messages)if(t.role===`assistant`&&Array.isArray(t.content))for(let e of t.content)e.type===`tool-approval-request`&&`approvalId`in e&&`toolCallId`in e&&a.set(e.approvalId,e.toolCallId);let o=new Set;for(let t of e.messages)if(t.role===`tool`){for(let e of t.content)if(e.type===`tool-approval-response`){let t=a.get(e.approvalId);t&&o.add(t)}}let s=[...e.instructions==null?[]:typeof e.instructions==`string`?[{role:`system`,content:e.instructions}]:iM(e.instructions).map(e=>({role:`system`,content:e.content,providerOptions:e.providerOptions})),...e.messages.map(e=>vz({message:e,downloadedAssets:i,provider:r}))],c=[];for(let e of s){if(e.role!==`tool`){c.push(e);continue}let t=c.at(-1);t?.role===`tool`?t.content.push(...e.content):c.push(e)}let l=new Set;for(let e of c)switch(e.role){case`assistant`:for(let t of e.content)t.type===`tool-call`&&!t.providerExecuted&&l.add(t.toolCallId);break;case`tool`:for(let t of e.content)t.type===`tool-result`&&l.delete(t.toolCallId);break;case`user`:case`system`:for(let e of o)l.delete(e);if(l.size>0)throw new tR({toolCallIds:Array.from(l)});break}for(let e of o)l.delete(e);if(l.size>0)throw new tR({toolCallIds:Array.from(l)});return c.filter(e=>e.role!==`tool`||e.content.length>0)}function vz({message:e,downloadedAssets:t,provider:n}){let r=[],i=e.role;switch(i){case`system`:return{role:`system`,content:e.content,providerOptions:e.providerOptions};case`user`:{if(typeof e.content==`string`)return{role:`user`,content:[{type:`text`,text:e.content}],providerOptions:e.providerOptions};let n={role:`user`,content:e.content.map(e=>(e.type===`image`&&r.push({type:`deprecated`,setting:`"image" content part`,message:`The "image" content part type is deprecated. Use a "file" part with mediaType: 'image' (or a more specific image/* subtype) instead.`}),yz(e))).map(e=>xz(e,t)).filter(e=>e.type!==`text`||e.text!==``),providerOptions:e.providerOptions};return r.length>0&&VR({warnings:r}),n}case`assistant`:{if(typeof e.content==`string`)return{role:`assistant`,content:[{type:`text`,text:e.content}],providerOptions:e.providerOptions};let i={role:`assistant`,content:e.content.filter(e=>e.type!==`text`||e.text!==``||e.providerOptions!=null).filter(e=>e.type!==`tool-approval-request`).map(e=>{let i=e.providerOptions;switch(e.type){case`custom`:return{type:`custom`,kind:e.kind,providerOptions:i};case`file`:{let{data:t,mediaType:n}=gz(e.data);return{type:`file`,data:t,filename:e.filename,mediaType:n??e.mediaType,providerOptions:i}}case`reasoning`:return{type:`reasoning`,text:e.text,providerOptions:i};case`reasoning-file`:{let{data:t,mediaType:n}=gz(e.data);if(t.type!==`data`&&t.type!==`url`)throw Error(`Unsupported reasoning-file data type: ${t.type}`);return{type:`reasoning-file`,data:t,mediaType:n??e.mediaType,providerOptions:i}}case`text`:return{type:`text`,text:e.text,providerOptions:i};case`tool-call`:return{type:`tool-call`,toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,providerExecuted:e.providerExecuted,providerOptions:i};case`tool-result`:return{type:`tool-result`,toolCallId:e.toolCallId,toolName:e.toolName,output:Sz({output:e.output,provider:n,warnings:r,downloadedAssets:t}),providerOptions:i}}}),providerOptions:e.providerOptions};return r.length>0&&VR({warnings:r}),i}case`tool`:{let i={role:`tool`,content:e.content.filter(e=>e.type!==`tool-approval-response`||e.providerExecuted).map(e=>{switch(e.type){case`tool-result`:return{type:`tool-result`,toolCallId:e.toolCallId,toolName:e.toolName,output:Sz({output:e.output,provider:n,warnings:r,downloadedAssets:t}),providerOptions:e.providerOptions};case`tool-approval-response`:return{type:`tool-approval-response`,approvalId:e.approvalId,approved:e.approved,reason:e.reason}}}),providerOptions:e.providerOptions};return r.length>0&&VR({warnings:r}),i}default:throw new MR({role:i})}}function yz(e){return e.type===`image`?{type:`file`,data:e.image,mediaType:e.mediaType??`image`,providerOptions:e.providerOptions}:e}async function bz(e,t,n){let r=[];for(let t of e){if(t.role===`user`&&Array.isArray(t.content))for(let e of t.content){let t=yz(e);t.type===`file`&&r.push(t)}if(t.role===`tool`){for(let e of t.content)if(e.type===`tool-result`&&e.output.type===`content`)for(let t of e.output.value)t.type===`file`&&r.push(t)}if(t.role===`assistant`&&Array.isArray(t.content)){for(let e of t.content)if(e.type===`tool-result`&&e.output.type===`content`)for(let t of e.output.value)t.type===`file`&&r.push(t)}}let i=r.map(e=>{let t=e.mediaType,{data:n}=gz(e.data);return{mediaType:t,data:n}}).filter(e=>e.data.type===`url`).map(e=>({url:e.data.url,isUrlSupportedByModel:e.mediaType!=null&&oN({url:e.data.url.toString(),mediaType:e.mediaType,supportedUrls:n})})),a=await t(i);return Object.fromEntries(a.map((e,t)=>e==null?null:[i[t].url.toString(),{data:e.data,mediaType:e.mediaType}]).filter(e=>e!=null))}function xz(e,t){if(e.type===`text`)return{type:`text`,text:e.text,providerOptions:e.providerOptions};let{data:n,mediaType:r}=gz(e.data),i=r??e.mediaType,a=n;if(a.type===`url`){let e=t[a.url.toString()];e&&(a={type:`data`,data:e.data},e.mediaType!=null&&(i==null||!wM(i))&&(i=e.mediaType))}if(a.type===`data`&&(a.data instanceof Uint8Array||typeof a.data==`string`)){let e=SM({data:a.data,topLevelType:`image`});e!=null&&(i=e)}if(i==null)throw Error(`Media type is missing for file part`);return{type:`file`,mediaType:i,filename:e.filename,data:a,providerOptions:e.providerOptions}}function Sz({output:e,provider:t,warnings:n=[],downloadedAssets:r}){return e.type===`content`?{type:`content`,value:e.value.map(e=>{switch(e.type){case`file`:{let t=xz(e,r);if(t.type!==`file`)throw Error(`Expected tool result file content to convert to file.`);return t}case`file-data`:return n.push({type:`deprecated`,setting:`"tool-result" content of type "file-data"`,message:`The "file-data" type for tool result content is deprecated. Use the "file" type with mediaType and { type: 'data', data } instead.`}),{type:`file`,data:{type:`data`,data:e.data},filename:e.filename,mediaType:e.mediaType,providerOptions:e.providerOptions};case`file-url`:{let t=e.mediaType??Tz(e.url),r=`The "file-url" type for tool result content is deprecated. Use the "file" type with mediaType and { type: 'url', url } instead.`;if(!e.mediaType){let n=t===`application/octet-stream`?`Unable to infer media type from URL. Defaulting to 'application/octet-stream'.`:`Inferred media type '${t}' from URL.`;r=`The "file-url" tool result content part with URL "${e.url}" is missing a "mediaType". ${n} ${r}`}return n.push({type:`deprecated`,setting:`"tool-result" content of type "file-url"`,message:r}),{type:`file`,data:{type:`url`,url:new URL(e.url)},mediaType:t,providerOptions:e.providerOptions}}case`file-id`:return n.push({type:`deprecated`,setting:`"tool-result" content of type "file-id"`,message:`The "file-id" type for tool result content is deprecated. Use the "file" type with mediaType and { type: 'reference', reference } instead.`}),{type:`file`,data:{type:`reference`,reference:Cz({fileId:e.fileId,provider:t})},mediaType:`application`,providerOptions:e.providerOptions};case`file-reference`:return n.push({type:`deprecated`,setting:`"tool-result" content of type "file-reference"`,message:`The "file-reference" type for tool result content is deprecated. Use the "file" type with mediaType and { type: 'reference', reference } instead.`}),{type:`file`,data:{type:`reference`,reference:e.providerReference},mediaType:`application`,providerOptions:e.providerOptions};case`image-data`:return n.push({type:`deprecated`,setting:`"tool-result" content of type "image-data"`,message:`The "image-data" type for tool result content is deprecated. Use the "file" type with mediaType and { type: 'data', data } instead.`}),{type:`file`,data:{type:`data`,data:e.data},mediaType:e.mediaType,providerOptions:e.providerOptions};case`image-url`:return n.push({type:`deprecated`,setting:`"tool-result" content of type "image-url"`,message:`The "image-url" type for tool result content is deprecated. Use the "file" type with mediaType 'image' (or a specific image/* subtype) and { type: 'url', url } instead.`}),{type:`file`,data:{type:`url`,url:new URL(e.url)},mediaType:`image`,providerOptions:e.providerOptions};case`image-file-id`:return n.push({type:`deprecated`,setting:`"tool-result" content of type "image-file-id"`,message:`The "image-file-id" type for tool result content is deprecated. Use the "file" type with mediaType and { type: 'reference', reference } instead.`}),{type:`file`,data:{type:`reference`,reference:Cz({fileId:e.fileId,provider:t})},mediaType:`image`,providerOptions:e.providerOptions};case`image-file-reference`:return n.push({type:`deprecated`,setting:`"tool-result" content of type "image-file-reference"`,message:`The "image-file-reference" type for tool result content is deprecated. Use the "file" type with mediaType and { type: 'reference', reference } instead.`}),{type:`file`,data:{type:`reference`,reference:e.providerReference},mediaType:`image`,providerOptions:e.providerOptions};default:return e}})}:e}function Cz({fileId:e,provider:t}){if(typeof e==`object`)return e;if(t==null)throw Error(`Cannot convert string fileId to provider reference without a provider ID. Use a Record<string, string> fileId or switch to the file-reference type.`);return{[t]:e}}var wz={jpg:`image/jpeg`,jpeg:`image/jpeg`,png:`image/png`,gif:`image/gif`,webp:`image/webp`,svg:`image/svg+xml`,avif:`image/avif`,heic:`image/heic`,bmp:`image/bmp`,tiff:`image/tiff`,tif:`image/tiff`,pdf:`application/pdf`,mp4:`video/mp4`,webm:`video/webm`,mp3:`audio/mpeg`,wav:`audio/wav`,ogg:`audio/ogg`};function Tz(e,t=`application/octet-stream`){try{let t=new URL(e).pathname.split(`.`).pop()?.toLowerCase();if(t&&Object.hasOwn(wz,t))return wz[t]}catch{}return t}async function Ez({toolCallId:e,input:t,output:n,tool:r,errorMode:i}){return i===`text`?{type:`error-text`,value:oS(n)}:i===`json`?{type:`error-json`,value:Dz(n)}:r?.toModelOutput?await r.toModelOutput({toolCallId:e,input:t,output:n}):typeof n==`string`?{type:`text`,value:n}:{type:`json`,value:Dz(n)}}function Dz(e){return e===void 0?null:e}function Oz({maxOutputTokens:e,temperature:t,topP:n,topK:r,presencePenalty:i,frequencyPenalty:a,seed:o,stopSequences:s,reasoning:c}){if(e!=null){if(!Number.isInteger(e))throw new AL({parameter:`maxOutputTokens`,value:e,message:`maxOutputTokens must be an integer`});if(e<1)throw new AL({parameter:`maxOutputTokens`,value:e,message:`maxOutputTokens must be >= 1`})}if(t!=null&&typeof t!=`number`)throw new AL({parameter:`temperature`,value:t,message:`temperature must be a number`});if(n!=null&&typeof n!=`number`)throw new AL({parameter:`topP`,value:n,message:`topP must be a number`});if(r!=null&&typeof r!=`number`)throw new AL({parameter:`topK`,value:r,message:`topK must be a number`});if(i!=null&&typeof i!=`number`)throw new AL({parameter:`presencePenalty`,value:i,message:`presencePenalty must be a number`});if(a!=null&&typeof a!=`number`)throw new AL({parameter:`frequencyPenalty`,value:a,message:`frequencyPenalty must be a number`});if(o!=null&&!Number.isInteger(o))throw new AL({parameter:`seed`,value:o,message:`seed must be an integer`});return{maxOutputTokens:e,temperature:t,topP:n,topK:r,presencePenalty:i,frequencyPenalty:a,stopSequences:s,seed:o,reasoning:c}}function kz({toolChoice:e}){return e==null?{type:`auto`}:typeof e==`string`?{type:e}:{type:`tool`,toolName:e.toolName}}function Az(e){return e!=null&&Object.keys(e).length>0}async function jz({tools:e,toolOrder:t,toolsContext:n={},experimental_sandbox:r}){if(!Az(e))return;let i=[];for(let[a,o]of Mz({tools:e,toolOrder:t})){let e=o.type;switch(e){case void 0:case`dynamic`:case`function`:{let e=Nz({tool:o,toolName:a,toolsContext:n,experimental_sandbox:r}),t=o.providerOptions,s=o.inputExamples,c=o.strict;i.push({type:`function`,name:a,inputSchema:await wP(o.inputSchema).jsonSchema,...e==null?{}:{description:e},...s==null?{}:{inputExamples:s},...t==null?{}:{providerOptions:t},...c==null?{}:{strict:c}});break}case`provider`:i.push({type:`provider`,name:a,id:o.id,args:o.args});break;default:throw Error(`Unsupported tool type: ${e}`)}}return i}function Mz({tools:e,toolOrder:t}){if(t==null)return Object.entries(e);let n=Object.entries(e),r=n.filter(([e])=>t.includes(e)).sort(([e],[n])=>t.indexOf(e)-t.indexOf(n)),i=n.filter(([e])=>!t.includes(e)).sort(([e],[t])=>e<t?-1:+(e>t));return[...r,...i]}function Nz({tool:e,toolName:t,toolsContext:n,experimental_sandbox:r}){return e.description===void 0?void 0:typeof e.description==`string`?e.description:e.description({context:n[t],experimental_sandbox:r})}function Pz(e){if(e!=null)return typeof e==`number`?e:e.totalMs}function Fz(e){if(!(e==null||typeof e==`number`))return e.stepMs}function Iz(e,t){if(!(e==null||typeof e==`number`))return e.tools?.[`${t}Ms`]??e.toolMs}var Lz=uA(()=>Nk([Sk(),H(),U(),bk(),zk(H(),Lz.optional()),W(Lz)])),Rz=zk(H(),zk(H(),Lz.optional())),zz=Nk([H(),hA(Uint8Array),hA(ArrayBuffer),fA(rN,{message:`Must be a Buffer`})]),Bz=zk(H(),H()),Vz=G({type:K(`text`),text:H(),providerOptions:Rz.optional()}),Hz=G({type:K(`image`),image:Nk([zz,hA(URL),Bz]),mediaType:H().optional(),providerOptions:Rz.optional()}),Uz=Fk(`type`,[G({type:K(`data`),data:zz}),G({type:K(`url`),url:hA(URL)}),G({type:K(`reference`),reference:Bz}),G({type:K(`text`),text:H()})]),Wz=Fk(`type`,[G({type:K(`data`),data:zz}),G({type:K(`url`),url:hA(URL)})]),Gz=G({type:K(`file`),data:Nk([Uz,zz,hA(URL),Bz]),filename:H().optional(),mediaType:H(),providerOptions:Rz.optional()}),Kz=G({type:K(`reasoning`),text:H(),providerOptions:Rz.optional()}),qz=G({type:K(`custom`),kind:H().transform(e=>e),providerOptions:Rz.optional()}),Jz=G({type:K(`reasoning-file`),data:Nk([Wz,zz,hA(URL)]),mediaType:H(),providerOptions:Rz.optional()}),Yz=G({type:K(`tool-call`),toolCallId:H(),toolName:H(),input:Ek(),providerOptions:Rz.optional(),providerExecuted:bk().optional()}),Xz=Fk(`type`,[G({type:K(`text`),value:H(),providerOptions:Rz.optional()}),G({type:K(`json`),value:Lz,providerOptions:Rz.optional()}),G({type:K(`execution-denied`),reason:H().optional(),providerOptions:Rz.optional()}),G({type:K(`error-text`),value:H(),providerOptions:Rz.optional()}),G({type:K(`error-json`),value:Lz,providerOptions:Rz.optional()}),G({type:K(`content`),value:W(Nk([G({type:K(`text`),text:H(),providerOptions:Rz.optional()}),G({type:K(`file`),data:Uz,mediaType:H(),filename:H().optional(),providerOptions:Rz.optional()}),G({type:K(`file-data`),data:H(),mediaType:H(),filename:H().optional(),providerOptions:Rz.optional()}),G({type:K(`file-url`),url:H(),mediaType:H().optional(),providerOptions:Rz.optional()}),G({type:K(`file-id`),fileId:Nk([H(),zk(H(),H())]),providerOptions:Rz.optional()}),G({type:K(`file-reference`),providerReference:zk(H(),H()),providerOptions:Rz.optional()}),G({type:K(`image-data`),data:H(),mediaType:H(),providerOptions:Rz.optional()}),G({type:K(`image-url`),url:H(),providerOptions:Rz.optional()}),G({type:K(`image-file-id`),fileId:Nk([H(),zk(H(),H())]),providerOptions:Rz.optional()}),G({type:K(`image-file-reference`),providerReference:zk(H(),H()),providerOptions:Rz.optional()}),G({type:K(`custom`),providerOptions:Rz.optional()})]))})]),Zz=G({type:K(`tool-result`),toolCallId:H(),toolName:H(),output:Xz,providerOptions:Rz.optional()}),Qz=G({type:K(`tool-approval-request`),approvalId:H(),toolCallId:H()}),$z=G({type:K(`tool-approval-response`),approvalId:H(),approved:bk(),reason:H().optional()}),eB=Nk([G({role:K(`system`),content:H(),providerOptions:Rz.optional()}),G({role:K(`user`),content:Nk([H(),W(Nk([Vz,Hz,Gz]))]),providerOptions:Rz.optional()}),G({role:K(`assistant`),content:Nk([H(),W(Nk([Vz,qz,Gz,Kz,Jz,Yz,Zz,Qz]))]),providerOptions:Rz.optional()}),G({role:K(`tool`),content:W(Nk([Zz,$z])),providerOptions:Rz.optional()})]);async function tB({allowSystemInMessages:e=!1,system:t,instructions:n=t,prompt:r,messages:i}){if(r==null&&i==null)throw new vS({prompt:r,message:`prompt or messages must be defined`});if(r!=null&&i!=null)throw new vS({prompt:r,message:`prompt and messages cannot be defined at the same time`});if(typeof n!=`string`&&!iM(n).every(e=>e.role===`system`))throw new vS({prompt:r,message:`instructions must be a string, SystemModelMessage, or array of SystemModelMessage`});if(r!=null&&typeof r==`string`)i=[{role:`user`,content:r}];else if(r!=null&&Array.isArray(r))i=r;else if(i==null)throw new vS({prompt:r,message:`prompt or messages must be defined`});if(i.length===0)throw new vS({prompt:r,message:`messages must not be empty`});if(!e&&i.some(e=>e.role===`system`))throw new vS({prompt:r,message:`System messages are not allowed in the prompt or messages fields. Use the instructions option instead.`});let a=await jP({value:i,schema:W(eB)});if(!a.success)throw new vS({prompt:r,message:`The messages do not match the ModelMessage[] schema.`,cause:a.error});return{messages:i,instructions:n}}function nB(e){if(!xF.isInstance(e))return e;let t=(process==null?void 0:`production`)===`production`,n=`https://ai-sdk.dev/unauthenticated-ai-gateway`;return t?new z({name:`GatewayError`,message:`Unauthenticated. Configure AI_GATEWAY_API_KEY or use a provider module. Learn more: ${n}`}):Object.assign(Error(`\x1B[1m\x1B[31mUnauthenticated request to AI Gateway.\x1B[0m

To authenticate, set the \x1B[33mAI_GATEWAY_API_KEY\x1B[0m environment variable with your API key.

Alternatively, you can use a provider module instead of the AI Gateway.

Learn more: \x1B[34m${n}\x1B[0m

`),{name:`GatewayAuthenticationError`})}function rB(e){return{inputTokens:e.inputTokens.total,inputTokenDetails:{noCacheTokens:e.inputTokens.noCache,cacheReadTokens:e.inputTokens.cacheRead,cacheWriteTokens:e.inputTokens.cacheWrite},outputTokens:e.outputTokens.total,outputTokenDetails:{textTokens:e.outputTokens.text,reasoningTokens:e.outputTokens.reasoning},totalTokens:aB(e.inputTokens.total,e.outputTokens.total),raw:e.raw}}function iB(e,t){return{inputTokens:aB(e.inputTokens,t.inputTokens),inputTokenDetails:{noCacheTokens:aB(e.inputTokenDetails?.noCacheTokens,t.inputTokenDetails?.noCacheTokens),cacheReadTokens:aB(e.inputTokenDetails?.cacheReadTokens,t.inputTokenDetails?.cacheReadTokens),cacheWriteTokens:aB(e.inputTokenDetails?.cacheWriteTokens,t.inputTokenDetails?.cacheWriteTokens)},outputTokens:aB(e.outputTokens,t.outputTokens),outputTokenDetails:{textTokens:aB(e.outputTokenDetails?.textTokens,t.outputTokenDetails?.textTokens),reasoningTokens:aB(e.outputTokenDetails?.reasoningTokens,t.outputTokenDetails?.reasoningTokens)},totalTokens:aB(e.totalTokens,t.totalTokens)}}function aB(e,t){return e==null&&t==null?void 0:(e??0)+(t??0)}function oB(...e){let t=UM(...e).map(e=>e instanceof AbortSignal?e:AbortSignal.timeout(e));return t.length===0?void 0:t.length===1?t[0]:AbortSignal.any(t)}function sB(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;let n={...e};for(let r in t)if(!(r===`__proto__`||r===`constructor`||r===`prototype`)&&Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];if(i===void 0)continue;let a=r in e?e[r]:void 0,o=typeof i==`object`&&!!i&&!Array.isArray(i)&&!(i instanceof Date)&&!(i instanceof RegExp),s=typeof a==`object`&&!!a&&!Array.isArray(a)&&!(a instanceof Date)&&!(a instanceof RegExp);o&&s?n[r]=sB(a,i):n[r]=i}return n}function cB(){return(globalThis==null?void 0:globalThis.performance)?.now()??Date.now()}async function lB(e){await Promise.all(iM(e.callbacks).map(async t=>{try{await t?.(e.event)}catch{}}))}function uB({error:e,exponentialBackoffDelay:t}){let n=$x.isInstance(e)?e.responseHeaders:$x.isInstance(e.cause)?e.cause.responseHeaders:void 0;if(!n)return t;let r,i=n[`retry-after-ms`];if(i){let e=parseFloat(i);Number.isNaN(e)||(r=e)}let a=n[`retry-after`];if(a&&r===void 0){let e=parseFloat(a);r=Number.isNaN(e)?Date.parse(a)-Date.now():e*1e3}return r!=null&&!Number.isNaN(r)&&0<=r&&(r<60*1e3||r<t)?r:t}var dB=({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:n=2,abortSignal:r}={})=>WP({maxRetries:e,initialDelayInMs:t,backoffFactor:n,abortSignal:r,shouldRetry:e=>e instanceof Error&&($x.isInstance(e)&&e.isRetryable===!0||hF.isInstance(e)&&e.isRetryable===!0),getDelayInMs:({error:e,exponentialBackoffDelay:t})=>uB({error:e,exponentialBackoffDelay:t}),createRetryError:({message:e,reason:t,errors:n})=>new LR({message:e,reason:t,errors:n})});function fB({maxRetries:e,abortSignal:t}){if(e!=null){if(!Number.isInteger(e))throw new AL({parameter:`maxRetries`,value:e,message:`maxRetries must be an integer`});if(e<0)throw new AL({parameter:`maxRetries`,value:e,message:`maxRetries must be >= 0`})}let n=e??2;return{maxRetries:n,retry:dB({maxRetries:n,abortSignal:t})}}function pB({abortController:e,label:t,timeoutMs:n}){if(!(e==null||n==null))return setTimeout(()=>e.abort(new DOMException(`${t} timeout of ${n}ms exceeded`,`TimeoutError`)),n)}function mB({tokens:e,durationMs:t}){let n=1e3*(e??0)/(t??0);return Number.isFinite(n)?n:0}function hB({messages:e}){let t=e.at(-1);if(t?.role!=`tool`)return{approvedToolApprovals:[],deniedToolApprovals:[]};let n={};for(let t of e)if(t.role===`assistant`&&typeof t.content!=`string`){let e=t.content;for(let t of e)t.type===`tool-call`&&(n[t.toolCallId]=t)}let r={};for(let t of e)if(t.role===`assistant`&&typeof t.content!=`string`){let e=t.content;for(let t of e)t.type===`tool-approval-request`&&(r[t.approvalId]=t)}let i={};for(let e of t.content)e.type===`tool-result`&&(i[e.toolCallId]=e);let a=[],o=[],s=t.content.filter(e=>e.type===`tool-approval-response`);for(let e of s){let t=r[e.approvalId];if(t==null)throw new FL({approvalId:e.approvalId});if(i[t.toolCallId]!=null)continue;let s=n[t.toolCallId];if(s==null)throw new XL({toolCallId:t.toolCallId,approvalId:t.approvalId});let c={approvalRequest:t,approvalResponse:e,toolCall:s};e.approved?a.push(c):o.push(c)}return{approvedToolApprovals:a,deniedToolApprovals:o}}async function gB({toolName:e,context:t,contextSchema:n}){return n==null?t:await AP({value:t,schema:n,context:{field:`tool context`,entityName:e}})}async function _B({toolCall:e,tools:t,toolsContext:n,callId:r,messages:i,abortSignal:a,timeout:o,experimental_sandbox:s,onPreliminaryToolResult:c,onToolExecutionStart:l,onToolExecutionEnd:u,executeToolInTelemetryContext:d=async({execute:e})=>await e(),runInTracingChannelSpan:f=async({execute:e})=>await e()}){let{toolName:p,toolCallId:m,input:h}=e,g=t?.[p];if(!tF(g))return;let _=await gB({toolName:p,context:n?.[p],contextSchema:g.contextSchema}),v={toolCall:e,messages:i,toolContext:_},y={callId:r,...v};return await f({type:`executeTool`,event:y,execute:async()=>{let t;await lB({event:y,callbacks:l});let n=oB(a,Iz(o,p)),f=0;try{await d({callId:r,toolCallId:m,...v,execute:async()=>{let r=cB();try{let r=rF({tool:g,input:h,options:{toolCallId:m,messages:i,abortSignal:n,context:_,experimental_sandbox:s}});for await(let n of r)n.type===`preliminary`?c?.({...e,type:`tool-result`,output:n.output,preliminary:!0}):t=n.output}finally{f=cB()-r}}})}catch(t){let n={type:`tool-error`,toolCallId:m,toolName:p,input:h,error:t,dynamic:g.type===`dynamic`,...e.providerMetadata==null?{}:{providerMetadata:e.providerMetadata},...e.toolMetadata==null?{}:{toolMetadata:e.toolMetadata}};return await lB({event:{...y,toolOutput:n,toolExecutionMs:f},callbacks:u}),{output:n,toolExecutionMs:f}}let b={type:`tool-result`,toolCallId:m,toolName:p,input:h,output:t,dynamic:g.type===`dynamic`,...e.providerMetadata==null?{}:{providerMetadata:e.providerMetadata},...e.toolMetadata==null?{}:{toolMetadata:e.toolMetadata}};return await lB({event:{...y,toolOutput:b,toolExecutionMs:f},callbacks:u}),{output:b,toolExecutionMs:f}}})}function vB({tools:e,activeTools:t}){return e==null||t==null?e:Object.fromEntries(Object.entries(e).filter(([e])=>t.includes(e)))}var yB=class{constructor({data:e,mediaType:t}){let n=e instanceof Uint8Array;this.base64Data=n?void 0:e,this.uint8ArrayData=n?e:void 0,this.mediaType=t}get base64(){return this.base64Data??=lM(this.uint8ArrayData),this.base64Data}get uint8Array(){return this.uint8ArrayData??=cM(this.base64Data),this.uint8ArrayData}};TL({},{array:()=>wB,choice:()=>TB,json:()=>EB,object:()=>CB,text:()=>SB});function bB(e){let t=[`ROOT`],n=-1,r=null,i=0;function a(e){return e>=`0`&&e<=`9`||e>=`A`&&e<=`F`||e>=`a`&&e<=`f`}function o(e,i,a){switch(e){case`"`:n=i,t.pop(),t.push(a),t.push(`INSIDE_STRING`);break;case`f`:case`t`:case`n`:n=i,r=i,t.pop(),t.push(a),t.push(`INSIDE_LITERAL`);break;case`-`:t.pop(),t.push(a),t.push(`INSIDE_NUMBER`);break;case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:n=i,t.pop(),t.push(a),t.push(`INSIDE_NUMBER`);break;case`{`:n=i,t.pop(),t.push(a),t.push(`INSIDE_OBJECT_START`);break;case`[`:n=i,t.pop(),t.push(a),t.push(`INSIDE_ARRAY_START`);break}}function s(e,r){switch(e){case`,`:t.pop(),t.push(`INSIDE_OBJECT_AFTER_COMMA`);break;case`}`:n=r,t.pop();break}}function c(e,r){switch(e){case`,`:t.pop(),t.push(`INSIDE_ARRAY_AFTER_COMMA`);break;case`]`:n=r,t.pop();break}}for(let l=0;l<e.length;l++){let u=e[l];switch(t[t.length-1]){case`ROOT`:o(u,l,`FINISH`);break;case`INSIDE_OBJECT_START`:switch(u){case`"`:t.pop(),t.push(`INSIDE_OBJECT_KEY`);break;case`}`:n=l,t.pop();break}break;case`INSIDE_OBJECT_AFTER_COMMA`:switch(u){case`"`:t.pop(),t.push(`INSIDE_OBJECT_KEY`);break}break;case`INSIDE_OBJECT_KEY`:switch(u){case`"`:t.pop(),t.push(`INSIDE_OBJECT_AFTER_KEY`);break}break;case`INSIDE_OBJECT_AFTER_KEY`:switch(u){case`:`:t.pop(),t.push(`INSIDE_OBJECT_BEFORE_VALUE`);break}break;case`INSIDE_OBJECT_BEFORE_VALUE`:o(u,l,`INSIDE_OBJECT_AFTER_VALUE`);break;case`INSIDE_OBJECT_AFTER_VALUE`:s(u,l);break;case`INSIDE_STRING`:switch(u){case`"`:t.pop(),n=l;break;case`\\`:t.push(`INSIDE_STRING_ESCAPE`);break;default:n=l}break;case`INSIDE_ARRAY_START`:switch(u){case`]`:n=l,t.pop();break;default:n=l,o(u,l,`INSIDE_ARRAY_AFTER_VALUE`);break}break;case`INSIDE_ARRAY_AFTER_VALUE`:switch(u){case`,`:t.pop(),t.push(`INSIDE_ARRAY_AFTER_COMMA`);break;case`]`:n=l,t.pop();break;default:n=l;break}break;case`INSIDE_ARRAY_AFTER_COMMA`:o(u,l,`INSIDE_ARRAY_AFTER_VALUE`);break;case`INSIDE_STRING_ESCAPE`:t.pop(),u===`u`?(i=0,t.push(`INSIDE_STRING_UNICODE_ESCAPE`)):n=l;break;case`INSIDE_STRING_UNICODE_ESCAPE`:a(u)&&(i++,i===4&&(t.pop(),n=l));break;case`INSIDE_NUMBER`:switch(u){case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:n=l;break;case`e`:case`E`:case`-`:case`.`:break;case`,`:t.pop(),t[t.length-1]===`INSIDE_ARRAY_AFTER_VALUE`&&c(u,l),t[t.length-1]===`INSIDE_OBJECT_AFTER_VALUE`&&s(u,l);break;case`}`:t.pop(),t[t.length-1]===`INSIDE_OBJECT_AFTER_VALUE`&&s(u,l);break;case`]`:t.pop(),t[t.length-1]===`INSIDE_ARRAY_AFTER_VALUE`&&c(u,l);break;default:t.pop();break}break;case`INSIDE_LITERAL`:{let i=e.substring(r,l+1);!`false`.startsWith(i)&&!`true`.startsWith(i)&&!`null`.startsWith(i)?(t.pop(),t[t.length-1]===`INSIDE_OBJECT_AFTER_VALUE`?s(u,l):t[t.length-1]===`INSIDE_ARRAY_AFTER_VALUE`&&c(u,l)):n=l;break}}}let l=e.slice(0,n+1);for(let n=t.length-1;n>=0;n--)switch(t[n]){case`INSIDE_STRING`:l+=`"`;break;case`INSIDE_OBJECT_KEY`:case`INSIDE_OBJECT_AFTER_KEY`:case`INSIDE_OBJECT_AFTER_COMMA`:case`INSIDE_OBJECT_START`:case`INSIDE_OBJECT_BEFORE_VALUE`:case`INSIDE_OBJECT_AFTER_VALUE`:l+=`}`;break;case`INSIDE_ARRAY_START`:case`INSIDE_ARRAY_AFTER_COMMA`:case`INSIDE_ARRAY_AFTER_VALUE`:l+=`]`;break;case`INSIDE_LITERAL`:{let t=e.substring(r,e.length);`true`.startsWith(t)?l+=`true`.slice(t.length):`false`.startsWith(t)?l+=`false`.slice(t.length):`null`.startsWith(t)&&(l+=`null`.slice(t.length))}}return l}async function xB(e){if(e===void 0)return{value:void 0,state:`undefined-input`};let t=await NP({text:e});return t.success?{value:t.value,state:`successful-parse`}:(t=await NP({text:bB(e)}),t.success?{value:t.value,state:`repaired-parse`}:{value:void 0,state:`failed-parse`})}var SB=()=>({name:`text`,responseFormat:Promise.resolve({type:`text`}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){}}),CB=({schema:e,name:t,description:n})=>{let r=wP(e);return{name:`object`,responseFormat:VP(r.jsonSchema).then(e=>({type:`json`,schema:e,...t!=null&&{name:t},...n!=null&&{description:n}})),async parseCompleteOutput({text:e},t){let n=await NP({text:e});if(!n.success)throw new oR({message:`No object generated: could not parse the response.`,cause:n.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let i=await jP({value:n.value,schema:r});if(!i.success)throw new oR({message:`No object generated: response did not match schema.`,cause:i.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return i.value},async parsePartialOutput({text:e}){let t=await xB(e);switch(t.state){case`failed-parse`:case`undefined-input`:return;case`repaired-parse`:case`successful-parse`:return{partial:t.value}}},createElementStreamTransform(){}}},wB=({element:e,name:t,description:n})=>{let r=wP(e);return{name:`array`,responseFormat:VP(r.jsonSchema).then(e=>{let{$schema:r,...i}=e;return{type:`json`,schema:{$schema:`http://json-schema.org/draft-07/schema#`,type:`object`,properties:{elements:{type:`array`,items:i}},required:[`elements`],additionalProperties:!1},...t!=null&&{name:t},...n!=null&&{description:n}}}),async parseCompleteOutput({text:e},t){let n=await NP({text:e});if(!n.success)throw new oR({message:`No object generated: could not parse the response.`,cause:n.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let i=n.value;if(typeof i!=`object`||!i||!(`elements`in i)||!Array.isArray(i.elements))throw new oR({message:`No object generated: response did not match schema.`,cause:new JS({value:i,cause:`response must be an object with an elements array`}),text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let a=[];for(let n of i.elements){let i=await jP({value:n,schema:r});if(!i.success)throw new oR({message:`No object generated: response did not match schema.`,cause:i.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});a.push(i.value)}return a},async parsePartialOutput({text:e}){let t=await xB(e);switch(t.state){case`failed-parse`:case`undefined-input`:return;case`repaired-parse`:case`successful-parse`:{let e=t.value;if(typeof e!=`object`||!e||!(`elements`in e)||!Array.isArray(e.elements))return;let n=t.state===`repaired-parse`&&e.elements.length>0?e.elements.slice(0,-1):e.elements,i=[];for(let e of n){let t=await jP({value:e,schema:r});t.success&&i.push(t.value)}return{partial:i}}}},createElementStreamTransform(){let e=0;return new TransformStream({transform({partialOutput:t},n){if(t!=null)for(;e<t.length;e++)n.enqueue(t[e])}})}}},TB=({options:e,name:t,description:n})=>({name:`choice`,responseFormat:Promise.resolve({type:`json`,schema:{$schema:`http://json-schema.org/draft-07/schema#`,type:`object`,properties:{result:{type:`string`,enum:e}},required:[`result`],additionalProperties:!1},...t!=null&&{name:t},...n!=null&&{description:n}}),async parseCompleteOutput({text:t},n){let r=await NP({text:t});if(!r.success)throw new oR({message:`No object generated: could not parse the response.`,cause:r.error,text:t,response:n.response,usage:n.usage,finishReason:n.finishReason});let i=r.value;if(typeof i!=`object`||!i||!(`result`in i)||typeof i.result!=`string`||!e.includes(i.result))throw new oR({message:`No object generated: response did not match schema.`,cause:new JS({value:i,cause:`response must be an object that contains a choice value.`}),text:t,response:n.response,usage:n.usage,finishReason:n.finishReason});return i.result},async parsePartialOutput({text:t}){let n=await xB(t);switch(n.state){case`failed-parse`:case`undefined-input`:return;case`repaired-parse`:case`successful-parse`:{let t=n.value;if(typeof t!=`object`||!t||!(`result`in t)||typeof t.result!=`string`)return;let r=e.filter(e=>e.startsWith(t.result));return n.state===`successful-parse`?r.includes(t.result)?{partial:t.result}:void 0:r.length===1?{partial:r[0]}:void 0}}},createElementStreamTransform(){}}),EB=({name:e,description:t}={})=>({name:`json`,responseFormat:Promise.resolve({type:`json`,...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:e},t){let n=await NP({text:e});if(!n.success)throw new oR({message:`No object generated: could not parse the response.`,cause:n.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return n.value},async parsePartialOutput({text:e}){let t=await xB(e);switch(t.state){case`failed-parse`:case`undefined-input`:return;case`repaired-parse`:case`successful-parse`:return t.value===void 0?void 0:{partial:t.value}}},createElementStreamTransform(){}});async function DB({toolCall:e,tools:t,repairToolCall:n,refineToolInput:r,messages:i,instructions:a}){try{if(t==null){if(e.providerExecuted&&e.dynamic)return await OB({toolCall:await kB(e),refineToolInput:r});throw new gR({toolName:e.toolName})}try{return await OB({toolCall:await AB({toolCall:e,tools:t}),refineToolInput:r})}catch(o){if(n==null||!(gR.isInstance(o)||GL.isInstance(o)))throw o;let s=null;try{s=await n({toolCall:e,tools:t,inputSchema:async({toolName:e})=>{let{inputSchema:n}=t[e];return await wP(n).jsonSchema},instructions:a,system:a,messages:i,error:o})}catch(e){throw new xR({cause:e,originalError:o})}if(s==null)throw o;return await OB({toolCall:await AB({toolCall:s,tools:t}),refineToolInput:r})}}catch(n){let r=await NP({text:e.input}),i=r.success?r.value:e.input,a=t?.[e.toolName];return{type:`tool-call`,toolCallId:e.toolCallId,toolName:e.toolName,input:i,dynamic:!0,invalid:!0,error:n,title:a?.title,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,...a?.metadata==null?{}:{toolMetadata:a.metadata}}}}async function OB({toolCall:e,refineToolInput:t}){let n=t?.[e.toolName];return n==null?e:{...e,input:await n(e.input)}}async function kB(e){let t=e.input.trim()===``?{success:!0,value:{}}:await NP({text:e.input});if(t.success===!1)throw new GL({toolName:e.toolName,toolInput:e.input,cause:t.error});return{type:`tool-call`,toolCallId:e.toolCallId,toolName:e.toolName,input:t.value,providerExecuted:!0,dynamic:!0,providerMetadata:e.providerMetadata}}async function AB({toolCall:e,tools:t}){let n=e.toolName,r=t[n];if(r==null){if(e.providerExecuted&&e.dynamic)return await kB(e);throw new gR({toolName:e.toolName,availableTools:Object.keys(t)})}let i=wP(r.inputSchema),a=e.input.trim()===``?await jP({value:{},schema:i}):await NP({text:e.input,schema:i});if(a.success===!1)throw new GL({toolName:n,toolInput:e.input,cause:a.error});return r.type===`dynamic`?{type:`tool-call`,toolCallId:e.toolCallId,toolName:e.toolName,input:a.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,...r.metadata==null?{}:{toolMetadata:r.metadata},dynamic:!0,title:r.title}:{type:`tool-call`,toolCallId:e.toolCallId,toolName:n,input:a.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,...r.metadata==null?{}:{toolMetadata:r.metadata},title:r.title}}function jB(e){return typeof e==`object`&&e&&`type`in e?e.type===`data`?e.data:e.url:e}function MB(e){return e.map(e=>e.type===`reasoning`?{type:`reasoning`,text:e.text,...e.providerMetadata==null?{}:{providerOptions:e.providerMetadata}}:{type:`reasoning-file`,data:e.file.base64,mediaType:e.file.mediaType,...e.providerMetadata==null?{}:{providerOptions:e.providerMetadata}})}function NB(e){return e.map(e=>{if(e.type===`reasoning`)return{type:`reasoning`,text:e.text,...e.providerOptions==null?{}:{providerMetadata:e.providerOptions}};let t=jB(e.data);return{type:`reasoning-file`,file:new yB({data:t instanceof ArrayBuffer?new Uint8Array(t):t instanceof URL?t.toString():t,mediaType:e.mediaType}),...e.providerOptions==null?{}:{providerMetadata:e.providerOptions}}})}async function PB({tools:e,toolCall:t,toolApproval:n,messages:r,toolsContext:i,runtimeContext:a}){if(n!=null&&typeof n==`function`)return FB(await n({toolCall:t,tools:e,toolsContext:i,messages:r,runtimeContext:a}));let o=t.toolName,s=e?.[o],c=t.input,l=n?.[o];return l==null?s?.needsApproval==null?{type:`not-applicable`}:(typeof s.needsApproval==`function`?await s.needsApproval(c,{toolCallId:t.toolCallId,messages:r,context:await gB({toolName:o,context:i?.[o],contextSchema:s?.contextSchema})}):s.needsApproval)?{type:`user-approval`}:{type:`not-applicable`}:FB(typeof l==`function`?await l(c,{toolCallId:t.toolCallId,messages:r,toolContext:await gB({toolName:o,context:i?.[o],contextSchema:s?.contextSchema}),runtimeContext:a}):l)}function FB(e){return e===void 0?{type:`not-applicable`}:typeof e==`string`?{type:e}:e}function IB(...e){return async t=>{await Promise.allSettled(e.map(async e=>{await e?.(t)}))}}var LB=`ai:telemetry`;function RB(){return typeof process<`u`&&process.release?.name===`node`}var zB;async function BB(){if(RB())return zB??=Promise.resolve(VB(`node:diagnostics_channel`)),zB}function VB(e){let t=globalThis.process;try{return(t?.getBuiltinModule)?.call(t,e)}catch{return}}async function HB(e,t){let n=await BB(),r=(n?.tracingChannel)?.call(n,LB);if(r==null||r.hasSubscribers===!1)return await t();let i,a,o,s=!1,c=!1,l=()=>{try{i=Promise.resolve(t())}catch(e){i=Promise.reject(e)}return i=i.then(e=>(a=e,s=!0,e),e=>{throw o=e,c=!0,e}),i};try{return await r.tracePromise(l,e)}catch{if(c)throw o;return s?a:i==null?await t():await i}}function UB({message:e,completion:t}){if(!RB())return;let n=VB(`node:diagnostics_channel`),r=VB(`node:async_hooks`),i=(n?.tracingChannel)?.call(n,LB);if(i==null||i.hasSubscribers===!1||r==null){Promise.resolve(t).catch(()=>{});return}let a=e,o,s=!1,c=e=>{try{e()}catch{}},l=({result:e,error:t})=>{s||(s=!0,t!==void 0&&(a.error=t,c(()=>i.error.publish(a))),e!==void 0&&(a.result=e),c(()=>i.asyncEnd.publish(a)))};return c(()=>{i.start.runStores(a,()=>{o=new r.AsyncResource(`ai.telemetry`)})}),c(()=>i.end.publish(a)),Promise.resolve(t).then(e=>l({result:e}),e=>l({error:e})),{run:e=>o==null?e():o.runInAsyncScope(e)}}function WB(){return globalThis.AI_SDK_TELEMETRY_INTEGRATIONS??[]}function GB(e,t){return Object.assign(Object.create(Object.getPrototypeOf(e)),e,t)}function KB({telemetry:e}){if(e?.isEnabled===!1)return{};let t=e?.integrations,n=t==null?WB():iM(t),r={recordInputs:e?.recordInputs,recordOutputs:e?.recordOutputs,functionId:e?.functionId},i=e=>{let t=IB(...n.map(t=>t[e]?.bind(t)).filter(Boolean).map(e=>t=>e(GB(t,r))));return async e=>{await t(e)}},a=n.map(e=>e.executeLanguageModelCall?.bind(e)).filter(Boolean),o=n.map(e=>e.executeTool?.bind(e)).filter(Boolean);return{runInTracingChannelSpan:async({type:e,event:t,execute:n})=>await HB({type:e,event:GB(t,r)},n),startTracingChannelContext:({type:e,event:t,completion:n})=>UB({message:{type:e,event:GB(t,r)},completion:n}),onStart:i(`onStart`),onStepStart:i(`onStepStart`),onLanguageModelCallStart:i(`onLanguageModelCallStart`),onLanguageModelCallEnd:i(`onLanguageModelCallEnd`),onToolExecutionStart:i(`onToolExecutionStart`),onToolExecutionEnd:i(`onToolExecutionEnd`),onStepEnd:IB(i(`onStepEnd`),i(`onStepFinish`)),onObjectStepStart:i(`onObjectStepStart`),onObjectStepEnd:i(`onObjectStepEnd`),onEmbedStart:i(`onEmbedStart`),onEmbedEnd:i(`onEmbedEnd`),onRerankStart:i(`onRerankStart`),onRerankEnd:i(`onRerankEnd`),onEnd:i(`onEnd`),onAbort:i(`onAbort`),onError:i(`onError`),executeLanguageModelCall:async({execute:e,...t})=>{let n=GB(t,r),i=e;for(let e of a){let t=i;i=()=>e({...n,execute:t})}return await HB({type:`languageModelCall`,event:n},i)},executeTool:async({execute:e,...t})=>{let n=GB(t,r),i=e;for(let e of o){let t=i;i=()=>e({...n,execute:t})}return await i()}}}function qB(e){let t=e.map(e=>`text`in e?e.text:``).join(``);return t.length>0?t:void 0}var JB=class{constructor({callId:e,stepNumber:t,provider:n,modelId:r,runtimeContext:i,toolsContext:a,content:o,finishReason:s,rawFinishReason:c,usage:l,performance:u,warnings:d,request:f,response:p,providerMetadata:m}){this.callId=e,this.stepNumber=t,this.model={provider:n,modelId:r},this.runtimeContext=i,this.toolsContext=a,this.content=o,this.finishReason=s,this.rawFinishReason=c,this.usage=l,this.performance=u,this.warnings=d,this.request=f,this.response=p,this.providerMetadata=m}get text(){return this.content.filter(e=>e.type===`text`).map(e=>e.text).join(``)}get reasoning(){return MB(this.content.filter(e=>e.type===`reasoning`||e.type===`reasoning-file`))}get reasoningText(){return qB(this.reasoning)}get files(){return this.content.filter(e=>e.type===`file`).map(e=>e.file)}get sources(){return this.content.filter(e=>e.type===`source`)}get toolCalls(){return this.content.filter(e=>e.type===`tool-call`)}get staticToolCalls(){return this.toolCalls.filter(e=>e.dynamic!==!0)}get dynamicToolCalls(){return this.toolCalls.filter(e=>e.dynamic===!0)}get toolResults(){return this.content.filter(e=>e.type===`tool-result`)}get staticToolResults(){return this.toolResults.filter(e=>e.dynamic!==!0)}get dynamicToolResults(){return this.toolResults.filter(e=>e.dynamic===!0)}};function YB({context:e,includeContext:t}){return e==null?{}:Object.fromEntries(Object.entries(e).filter(([e])=>t?.[e]===!0))}function XB({step:e,includeRuntimeContext:t,includeToolsContext:n}){return new JB({callId:e.callId,stepNumber:e.stepNumber,provider:e.model.provider,modelId:e.model.modelId,runtimeContext:YB({context:e.runtimeContext,includeContext:t}),toolsContext:ZB({toolsContext:e.toolsContext,includeToolsContext:n}),content:e.content,finishReason:e.finishReason,rawFinishReason:e.rawFinishReason,usage:e.usage,performance:e.performance,warnings:e.warnings,request:e.request,response:e.response,providerMetadata:e.providerMetadata})}function ZB({toolsContext:e,includeToolsContext:t}){return t==null?{}:Object.fromEntries(Object.entries(e).map(([e,n])=>[e,QB({toolName:e,toolContext:n,includeToolsContext:t})]))}function QB({toolName:e,toolContext:t,includeToolsContext:n}){return YB({context:t,includeContext:n?.[e]})}function $B({telemetry:e,includeRuntimeContext:t,includeToolsContext:n}){let r=KB({telemetry:e});return{...r,onStart:e=>r.onStart?.call(r,{...e,runtimeContext:YB({context:e.runtimeContext,includeContext:t}),toolsContext:ZB({toolsContext:e.toolsContext,includeToolsContext:n})}),onStepStart:e=>r.onStepStart?.call(r,{...e,runtimeContext:YB({context:e.runtimeContext,includeContext:t}),steps:e.steps.map(e=>XB({step:e,includeRuntimeContext:t,includeToolsContext:n})),toolsContext:ZB({toolsContext:e.toolsContext,includeToolsContext:n})}),onStepEnd:e=>r.onStepEnd?.call(r,XB({step:e,includeRuntimeContext:t,includeToolsContext:n})),onStepFinish:e=>r.onStepEnd?.call(r,XB({step:e,includeRuntimeContext:t,includeToolsContext:n})),onEnd:e=>r.onEnd?.call(r,(r=>({...e,runtimeContext:YB({context:e.runtimeContext,includeContext:t}),steps:r,finalStep:r.at(-1),toolsContext:ZB({toolsContext:e.toolsContext,includeToolsContext:n})}))(e.steps.map(e=>XB({step:e,includeRuntimeContext:t,includeToolsContext:n})))),onAbort:e=>r.onAbort?.call(r,{...e,steps:e.steps.map(e=>XB({step:e,includeRuntimeContext:t,includeToolsContext:n}))}),onToolExecutionStart:e=>r.onToolExecutionStart?.call(r,{...e,toolContext:QB({toolName:e.toolCall.toolName,toolContext:e.toolContext,includeToolsContext:n})}),onToolExecutionEnd:e=>r.onToolExecutionEnd?.call(r,{...e,toolContext:QB({toolName:e.toolCall.toolName,toolContext:e.toolContext,includeToolsContext:n})})}}function eV(e){return({steps:t})=>t.length===e}async function tV({stopConditions:e,steps:t}){return(await Promise.all(e.map(e=>e({steps:t})))).some(e=>e)}function nV(e,t){return e==null&&t==null?void 0:(e??0)+(t??0)}async function rV({content:e,tools:t}){let n=[],r=new Map,i=[];for(let n of e)if(n.type!==`source`&&!((n.type===`tool-result`||n.type===`tool-error`)&&!n.providerExecuted)&&!(n.type===`text`&&n.text.length===0))switch(n.type){case`text`:i.push({type:`text`,text:n.text,providerOptions:n.providerMetadata});break;case`custom`:i.push({type:`custom`,kind:n.kind,providerOptions:n.providerMetadata});break;case`reasoning`:i.push({type:`reasoning`,text:n.text,providerOptions:n.providerMetadata});break;case`file`:i.push({type:`file`,data:n.file.base64,mediaType:n.file.mediaType,providerOptions:n.providerMetadata});break;case`reasoning-file`:i.push({type:`reasoning-file`,data:n.file.base64,mediaType:n.file.mediaType,providerOptions:n.providerMetadata});break;case`tool-call`:r.has(n.toolCallId)||r.set(n.toolCallId,r.size),i.push({type:`tool-call`,toolCallId:n.toolCallId,toolName:n.toolName,input:n.invalid&&typeof n.input!=`object`?{}:n.input,providerExecuted:n.providerExecuted,providerOptions:n.providerMetadata});break;case`tool-result`:{let e=await Ez({toolCallId:n.toolCallId,input:n.input,tool:t?.[n.toolName],output:n.output,errorMode:`none`});i.push({type:`tool-result`,toolCallId:n.toolCallId,toolName:n.toolName,output:e,providerOptions:n.providerMetadata});break}case`tool-error`:{let e=await Ez({toolCallId:n.toolCallId,input:n.input,tool:t?.[n.toolName],output:n.error,errorMode:`json`});i.push({type:`tool-result`,toolCallId:n.toolCallId,toolName:n.toolName,output:e,providerOptions:n.providerMetadata});break}case`tool-approval-request`:i.push({type:`tool-approval-request`,approvalId:n.approvalId,toolCallId:n.toolCall.toolCallId,isAutomatic:n.isAutomatic,...n.signature==null?{}:{signature:n.signature}});break}i.length>0&&n.push({role:`assistant`,content:i});let a=[];for(let n of e){if(n.type!==`tool-approval-response`&&n.type!==`tool-result`&&n.type!==`tool-error`)continue;if(n.type===`tool-approval-response`){a.push({type:`tool-approval-response`,approvalId:n.approvalId,approved:n.approved,reason:n.reason,providerExecuted:n.providerExecuted}),n.approved===!1&&a.push({type:`tool-result`,toolCallId:n.toolCall.toolCallId,toolName:n.toolCall.toolName,output:{type:`execution-denied`,reason:n.reason}});continue}if(n.providerExecuted)continue;let e=await Ez({toolCallId:n.toolCallId,input:n.input,tool:t?.[n.toolName],output:n.type===`tool-result`?n.output:n.error,errorMode:n.type===`tool-error`?`text`:`none`});a.push({type:`tool-result`,toolCallId:n.toolCallId,toolName:n.toolName,output:e,...n.providerMetadata==null?{}:{providerOptions:n.providerMetadata}})}return a.length>0&&n.push({role:`tool`,content:iV({toolResultContent:a,toolCallOrder:r})}),n}function iV({toolResultContent:e,toolCallOrder:t}){let n=e.filter(e=>e.type===`tool-result`).map((e,t)=>({part:e,index:t})).sort((e,n)=>{let r=t.get(e.part.toolCallId),i=t.get(n.part.toolCallId);return r==null&&i==null?e.index-n.index:r==null?1:i==null?-1:r-i||e.index-n.index}).map(({part:e})=>e),r=0;return e.map(e=>e.type===`tool-result`?n[r++]:e)}var aV=new TextEncoder;function oV(e){return typeof e!=`object`||!e?JSON.stringify(e):Array.isArray(e)?`[${e.map(oV).join(`,`)}]`:`{${Object.keys(e).sort().map(t=>`${JSON.stringify(t)}:${oV(e[t])}`).join(`,`)}}`}function sV(e){return lM(e).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/g,``)}function cV(e){return cM(e)}async function lV(e){let t=typeof e==`string`?aV.encode(e):e;return crypto.subtle.importKey(`raw`,t,{name:`HMAC`,hash:`SHA-256`},!1,[`sign`,`verify`])}async function uV(e){let t=oV(e),n=await crypto.subtle.digest(`SHA-256`,aV.encode(t));return sV(new Uint8Array(n))}function dV(e,t,n,r){return aV.encode(`${e}
${t}
${n}
${r}`)}async function fV({secret:e,approvalId:t,toolCallId:n,toolName:r,input:i}){let a=await lV(e),o=dV(t,n,r,await uV(i)),s=await crypto.subtle.sign(`HMAC`,a,o);return sV(new Uint8Array(s))}async function pV({secret:e,signature:t,approvalId:n,toolCallId:r,toolName:i,input:a}){let o=await lV(e),s=dV(n,r,i,await uV(a)),c=cV(t);return crypto.subtle.verify(`HMAC`,o,c,s)}async function mV({secret:e,approvalId:t,toolCallId:n,toolName:r,input:i}){if(e!=null)return fV({secret:e,approvalId:t,toolCallId:n,toolName:r,input:i})}async function hV({approvedToolApprovals:e,tools:t,toolApproval:n,messages:r,toolsContext:i,runtimeContext:a,toolApprovalSecret:o}){let s=[],c=[];for(let l of e){let{toolCall:e,approvalRequest:u}=l,d=t?.[e.toolName];if(o!=null){if(u.signature==null)throw new BL({approvalId:u.approvalId,toolCallId:e.toolCallId,reason:`missing signature`});if(!await pV({secret:o,signature:u.signature,approvalId:u.approvalId,toolCallId:e.toolCallId,toolName:e.toolName,input:e.input}))throw new BL({approvalId:u.approvalId,toolCallId:e.toolCallId,reason:`invalid signature`})}if(tF(d)&&d.inputSchema!=null){let t=await jP({value:e.input,schema:wP(d.inputSchema)});if(!t.success)throw new GL({toolName:e.toolName,toolInput:JSON.stringify(e.input),cause:t.error})}let f=await PB({tools:t,toolApproval:n,toolCall:e,messages:r,toolsContext:i,runtimeContext:a});f.type===`denied`?c.push({...l,approvalResponse:{...l.approvalResponse,approved:!1,reason:f.reason??l.approvalResponse.reason}}):s.push(l)}return{approvedToolApprovals:s,deniedToolApprovals:c}}var gV=WM({prefix:`aitxt`,size:24}),_V=WM({prefix:`call`,size:24});async function vV({model:e,tools:t,toolChoice:n,instructions:r,system:i,prompt:a,messages:o,allowSystemInMessages:s,maxRetries:c,abortSignal:l,timeout:u,headers:d,stopWhen:f=eV(1),experimental_sandbox:p,output:m,toolApproval:h,experimental_toolApprovalSecret:g,experimental_telemetry:_,telemetry:v=_,providerOptions:y,activeTools:b,toolOrder:x,prepareStep:S,experimental_repairToolCall:C,experimental_refineToolInput:w,experimental_download:T,runtimeContext:E={},toolsContext:D={},experimental_include:ee,include:O=ee,_internal:{generateId:k=gV,generateCallId:A=_V,now:j=cB}={},onStart:te,experimental_onStart:M,onStepStart:ne,experimental_onStepStart:N,onLanguageModelCallStart:re,experimental_onLanguageModelCallStart:ie,onLanguageModelCallEnd:ae,experimental_onLanguageModelCallEnd:oe,onToolExecutionStart:se,onToolExecutionEnd:ce,experimental_onToolCallStart:le,experimental_onToolCallFinish:ue,onStepEnd:de,onStepFinish:fe,onFinish:pe,onEnd:me=pe,...he}){O={requestBody:O?.requestBody??!1,requestMessages:O?.requestMessages??!1,responseBody:O?.responseBody??!1};let ge=az(e),_e=iM(f),ve=te??M,ye=ne??N,be=re??ie,xe=ae??oe,Se=se??le,Ce=ce??ue,we=de??fe,Te=Pz(u),Ee=Fz(u),De=Ee==null?void 0:new AbortController,Oe=oB(l,Te,De?.signal),{maxRetries:ke,retry:Ae}=fB({maxRetries:c,abortSignal:Oe}),je=Oz(he),Me=$M(d??{},`ai/${lz}`),Ne=await tB({instructions:r,system:i,prompt:a,messages:o,allowSystemInMessages:s}),Pe=A(),Fe=$B({telemetry:v,includeRuntimeContext:v?.includeRuntimeContext,includeToolsContext:v?.includeToolsContext}),Ie=Fe.runInTracingChannelSpan??(async({execute:e})=>await e()),Le={callId:Pe,operationId:`ai.generateText`,provider:ge.provider,modelId:ge.modelId,instructions:Ne.instructions,messages:Ne.messages,tools:t,toolChoice:n,activeTools:b,toolOrder:x,maxOutputTokens:je.maxOutputTokens,temperature:je.temperature,topP:je.topP,topK:je.topK,presencePenalty:je.presencePenalty,frequencyPenalty:je.frequencyPenalty,stopSequences:je.stopSequences,seed:je.seed,reasoning:je.reasoning,maxRetries:ke,timeout:u,headers:Me,providerOptions:y,output:m,runtimeContext:E,toolsContext:D};return await Ie({type:`generateText`,event:Le,execute:async()=>{await lB({event:Le,callbacks:[ve,Fe.onStart]});try{let e=Ne.messages,r=[],{approvedToolApprovals:i,deniedToolApprovals:a}=hB({messages:e}),{approvedToolApprovals:o,deniedToolApprovals:s}=await hV({approvedToolApprovals:i.filter(e=>!e.toolCall.providerExecuted),tools:t,toolApproval:h,messages:e,toolsContext:D,runtimeContext:E,toolApprovalSecret:g}),c=[...a,...s];if(c.length>0||o.length>0){let n=await yV({toolCalls:o.map(e=>e.toolCall),tools:t,callId:Pe,messages:e,abortSignal:Oe,timeout:u,experimental_sandbox:p,toolsContext:D,onToolExecutionStart:e=>lB({event:e,callbacks:[Se,Fe.onToolExecutionStart]}),onToolExecutionEnd:e=>lB({event:e,callbacks:[Ce,Fe.onToolExecutionEnd]}),executeToolInTelemetryContext:Fe.executeTool,runInTracingChannelSpan:Ie}),i=[];for(let e of n){let n=e.output,r=await Ez({toolCallId:n.toolCallId,input:n.input,tool:t?.[n.toolName],output:n.type===`tool-result`?n.output:n.error,errorMode:n.type===`tool-error`?`text`:`none`});i.push({type:`tool-result`,toolCallId:n.toolCallId,toolName:n.toolName,output:r})}for(let e of c)i.push({type:`tool-result`,toolCallId:e.toolCall.toolCallId,toolName:e.toolCall.toolName,output:{type:`execution-denied`,reason:e.approvalResponse.reason,...e.toolCall.providerExecuted&&{providerOptions:{openai:{approvalId:e.approvalResponse.approvalId}}}}});r.push({role:`tool`,content:i})}let l=Oz(he),d,f=[],_=[],v=[],ee=[],A=[],te=Ne.instructions,M=[...e,...r],ne=new Map;do{let i=pB({abortController:De,label:`Step`,timeoutMs:Ee}),a=A.length;try{await Ie({type:`step`,event:{callId:Pe,stepNumber:a},execute:async()=>{let i=[...r,...A.flatMap(e=>e.response.messages)],o=M,s=await S?.({model:ge,steps:A,stepNumber:A.length,instructions:te,initialInstructions:Ne.instructions,messages:o,initialMessages:e,responseMessages:i,runtimeContext:E,toolsContext:D,experimental_sandbox:p}),c=s?.experimental_sandbox??p,N=az(s?.model??ge),re=s?.instructions??s?.system??te,ie=await _z({prompt:{instructions:re,messages:s?.messages??o},supportedUrls:await N.supportedUrls,download:T,provider:N.provider.split(`.`)[0]});E=s?.runtimeContext??E,D=s?.toolsContext??D;let ae=vB({tools:t,activeTools:s?.activeTools??b}),oe=s?.toolOrder??x,se=await jz({tools:ae,toolOrder:oe,toolsContext:D,experimental_sandbox:c}),ce=kz({toolChoice:s?.toolChoice??n}),le=s?.messages??o,ue=sB(y,s?.providerOptions);await lB({event:{callId:Pe,provider:N.provider,modelId:N.modelId,stepNumber:a,instructions:re,messages:le,tools:t,toolChoice:s?.toolChoice??n,activeTools:s?.activeTools??b,toolOrder:oe,steps:[...A],providerOptions:ue,output:m,runtimeContext:E,promptMessages:ie,stepTools:se,stepToolChoice:ce,toolsContext:D},callbacks:[ye,Fe.onStepStart]});let de={provider:N.provider,modelId:N.modelId,instructions:re,messages:le,tools:se,...l},fe={callId:Pe,...de},pe=j();await lB({event:fe,callbacks:[be,Fe.onLanguageModelCallStart]});let me=Fe.executeLanguageModelCall??(async({execute:e})=>await e());d=await Ae(async()=>{let e=await me({...fe,execute:async()=>await N.doGenerate({...l,tools:se,toolChoice:ce,responseFormat:await m?.responseFormat,prompt:ie,providerOptions:ue,abortSignal:Oe,headers:Me})}),t={id:e.response?.id??k(),timestamp:e.response?.timestamp??new Date,modelId:e.response?.modelId??N.modelId,headers:e.response?.headers,body:e.response?.body};return{...e,response:t}});let he=j()-pe,_e=rB(d.usage),ve=await Promise.all(d.content.filter(e=>e.type===`tool-call`).map(e=>DB({toolCall:e,tools:t,repairToolCall:C,refineToolInput:w,instructions:re,messages:le}))),Te={},Ee={},De=new Set,ke=xV({content:d.content,toolCalls:ve,toolOutputs:[],toolApprovalRequests:[],toolApprovalResponses:[],tools:t});await lB({event:{callId:Pe,provider:N.provider,modelId:N.modelId,finishReason:d.finishReason.unified,usage:_e,content:ke,responseId:d.response.id,performance:{responseTimeMs:he,effectiveOutputTokensPerSecond:mB({tokens:_e.outputTokens,durationMs:he}),outputTokensPerSecond:void 0,inputTokensPerSecond:void 0,effectiveTotalTokensPerSecond:mB({tokens:nV(_e.inputTokens,_e.outputTokens),durationMs:he}),timeToFirstOutputMs:void 0}},callbacks:[xe,Fe.onLanguageModelCallEnd]});for(let e of ve){if(e.invalid)continue;let n=t?.[e.toolName];if(n==null)continue;n?.onInputAvailable!=null&&await n.onInputAvailable({input:e.input,toolCallId:e.toolCallId,messages:le,abortSignal:Oe,context:E});let r=await PB({tools:t,toolApproval:h,toolCall:e,messages:le,toolsContext:D,runtimeContext:E});if(r.type===`not-applicable`)continue;let i=k(),a=await mV({secret:g,approvalId:i,toolCallId:e.toolCallId,toolName:e.toolName,input:e.input});switch(r.type){case`user-approval`:Te[e.toolCallId]={type:`tool-approval-request`,approvalId:i,toolCall:e,...a==null?{}:{signature:a}},De.add(e.toolCallId);break;case`approved`:Te[e.toolCallId]={type:`tool-approval-request`,approvalId:i,toolCall:e,isAutomatic:!0,...a==null?{}:{signature:a}},Ee[e.toolCallId]={type:`tool-approval-response`,approvalId:i,toolCall:e,approved:!0,reason:r.reason,providerExecuted:e.providerExecuted};break;case`denied`:Te[e.toolCallId]={type:`tool-approval-request`,approvalId:i,toolCall:e,isAutomatic:!0,...a==null?{}:{signature:a}},Ee[e.toolCallId]={type:`tool-approval-response`,approvalId:i,toolCall:e,approved:!1,reason:r.reason,providerExecuted:e.providerExecuted},De.add(e.toolCallId);break}}let je=ve.filter(e=>e.invalid&&e.dynamic);_=[];for(let e of je)_.push({type:`tool-error`,toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,error:oS(e.error),dynamic:!0});f=ve.filter(e=>!e.providerExecuted),v=Object.values(Ee),ee=v.filter(e=>e.approved===!1);let Le={};if(t!=null){let e=await yV({toolCalls:f.filter(e=>!e.invalid&&!De.has(e.toolCallId)),tools:t,callId:Pe,messages:le,abortSignal:Oe,timeout:u,experimental_sandbox:c,toolsContext:D,onToolExecutionStart:e=>lB({event:e,callbacks:[Se,Fe.onToolExecutionStart]}),onToolExecutionEnd:e=>lB({event:e,callbacks:[Ce,Fe.onToolExecutionEnd]}),executeToolInTelemetryContext:Fe.executeTool,runInTracingChannelSpan:Ie});for(let t of e)Le[t.output.toolCallId]=t.toolExecutionMs,_.push(t.output)}let Re=j()-pe,ze={effectiveOutputTokensPerSecond:mB({tokens:_e.outputTokens,durationMs:he}),outputTokensPerSecond:void 0,inputTokensPerSecond:void 0,effectiveTotalTokensPerSecond:mB({tokens:nV(_e.inputTokens,_e.outputTokens),durationMs:he}),stepTimeMs:Re,responseTimeMs:he,toolExecutionMs:Le,timeToFirstOutputMs:void 0};for(let e of ve){if(!e.providerExecuted)continue;let n=t?.[e.toolName];n?.type===`provider`&&n.supportsDeferredResults&&(d.content.some(t=>t.type===`tool-result`&&t.toolCallId===e.toolCallId)||ne.set(e.toolCallId,{toolName:e.toolName}))}for(let e of d.content)e.type===`tool-result`&&ne.delete(e.toolCallId);let Be=xV({content:d.content,toolCalls:ve,toolOutputs:_,toolApprovalRequests:Object.values(Te),toolApprovalResponses:v,tools:t}),Ve=await rV({content:Be,tools:t}),He={...d.request,body:O.requestBody?d.request?.body:void 0,messages:O.requestMessages?sz(le):void 0},Ue={...d.response,messages:sz(Ve),body:O.responseBody?d.response?.body:void 0},We=new JB({callId:Pe,stepNumber:a,provider:N.provider,modelId:N.modelId,runtimeContext:E,content:Be,finishReason:d.finishReason.unified,rawFinishReason:d.finishReason.raw,usage:_e,performance:ze,warnings:d.warnings,providerMetadata:d.providerMetadata,request:He,response:Ue,toolsContext:D});return VR({warnings:d.warnings??[],provider:N.provider,model:N.modelId}),A.push(We),te=re,M=[...le,...Ve],await lB({event:We,callbacks:[we,Fe.onStepEnd]}),We}})}finally{i!=null&&clearTimeout(i)}}while((f.length>0&&_.length+ee.length===f.length||ne.size>0)&&!await tV({stopConditions:_e,steps:A}));let N=A[A.length-1],re=A.reduce((e,t)=>iB(e,t.usage),{inputTokens:void 0,inputTokenDetails:{noCacheTokens:void 0,cacheReadTokens:void 0,cacheWriteTokens:void 0},outputTokens:void 0,outputTokenDetails:{textTokens:void 0,reasoningTokens:void 0},totalTokens:void 0}),ie=A.flatMap(e=>e.files),ae=A.flatMap(e=>e.sources),oe=A.flatMap(e=>e.toolCalls),se=A.flatMap(e=>e.staticToolCalls),ce=A.flatMap(e=>e.dynamicToolCalls),le=A.flatMap(e=>e.toolResults),ue=A.flatMap(e=>e.staticToolResults),de=A.flatMap(e=>e.dynamicToolResults),fe=A.flatMap(e=>e.warnings??[]);await lB({event:{callId:Pe,stepNumber:N.stepNumber,model:N.model,runtimeContext:N.runtimeContext,finishReason:N.finishReason,rawFinishReason:N.rawFinishReason,usage:re,totalUsage:re,content:A.flatMap(e=>e.content),text:N.text,reasoning:N.reasoning,reasoningText:N.reasoningText,files:ie,sources:ae,toolCalls:oe,staticToolCalls:se,dynamicToolCalls:ce,toolResults:le,staticToolResults:ue,dynamicToolResults:de,responseMessages:[...r,...A.flatMap(e=>e.response.messages)],warnings:fe,request:N.request,response:N.response,providerMetadata:N.providerMetadata,steps:A,finalStep:N,toolsContext:D},callbacks:[me,Fe.onEnd]});let pe;return N.finishReason===`stop`&&(pe=await(m??SB()).parseCompleteOutput({text:N.text},{response:N.response,usage:N.usage,finishReason:N.finishReason})),new bV({initialResponseMessages:r,steps:A,totalUsage:re,output:pe})}catch(e){throw await Fe.onError?.call(Fe,{callId:Pe,error:e}),nB(e)}}})}async function yV({toolCalls:e,tools:t,callId:n,messages:r,abortSignal:i,timeout:a,experimental_sandbox:o,toolsContext:s,onToolExecutionStart:c,onToolExecutionEnd:l,executeToolInTelemetryContext:u,runInTracingChannelSpan:d}){return(await Promise.all(e.map(async e=>await _B({toolCall:e,tools:t,callId:n,messages:r,abortSignal:i,timeout:a,experimental_sandbox:o,toolsContext:s,onToolExecutionStart:c,onToolExecutionEnd:l,executeToolInTelemetryContext:u,runInTracingChannelSpan:d})))).filter(e=>e!=null)}var bV=class{constructor(e){this.initialResponseMessages=e.initialResponseMessages,this.steps=e.steps,this._output=e.output,this.totalUsage=e.totalUsage}get finalStep(){return this.steps.at(-1)}get content(){return this.steps.flatMap(e=>e.content)}get text(){return this.finalStep.text}get files(){return this.steps.flatMap(e=>e.files)}get reasoningText(){return this.finalStep.reasoningText}get reasoning(){return NB(this.finalStep.reasoning)}get toolCalls(){return this.steps.flatMap(e=>e.toolCalls)}get staticToolCalls(){return this.steps.flatMap(e=>e.staticToolCalls)}get dynamicToolCalls(){return this.steps.flatMap(e=>e.dynamicToolCalls)}get toolResults(){return this.steps.flatMap(e=>e.toolResults)}get staticToolResults(){return this.steps.flatMap(e=>e.staticToolResults)}get dynamicToolResults(){return this.steps.flatMap(e=>e.dynamicToolResults)}get sources(){return this.steps.flatMap(e=>e.sources)}get finishReason(){return this.finalStep.finishReason}get rawFinishReason(){return this.finalStep.rawFinishReason}get warnings(){return this.steps.flatMap(e=>e.warnings??[])}get providerMetadata(){return this.finalStep.providerMetadata}get response(){return this.finalStep.response}get responseMessages(){return[...this.initialResponseMessages,...this.steps.flatMap(e=>e.response.messages)]}get request(){return this.finalStep.request}get usage(){return this.totalUsage}get output(){if(this._output==null)throw new dR;return this._output}};function xV({content:e,toolCalls:t,toolOutputs:n,toolApprovalRequests:r,toolApprovalResponses:i,tools:a}){let o=[],s=[],c=[],l=new Set(i.map(e=>e.toolCall.toolCallId));for(let n of e)switch(n.type){case`text`:case`reasoning`:case`custom`:case`source`:o.push(n);break;case`file`:case`reasoning-file`:o.push({type:n.type,file:new yB({data:n.data.type===`data`?n.data.data:n.data.url.toString(),mediaType:n.mediaType}),...n.providerMetadata==null?{}:{providerMetadata:n.providerMetadata}});break;case`tool-call`:o.push(t.find(e=>e.toolCallId===n.toolCallId));break;case`tool-result`:{let e=t.find(e=>e.toolCallId===n.toolCallId);if(e==null){let e=a?.[n.toolName];if(!(e?.type===`provider`&&e.supportsDeferredResults))throw Error(`Tool call ${n.toolCallId} not found.`);n.isError?o.push({type:`tool-error`,toolCallId:n.toolCallId,toolName:n.toolName,input:void 0,error:n.result,providerExecuted:!0,dynamic:n.dynamic,...n.providerMetadata==null?{}:{providerMetadata:n.providerMetadata},...e?.metadata==null?{}:{toolMetadata:e.metadata}}):o.push({type:`tool-result`,toolCallId:n.toolCallId,toolName:n.toolName,input:void 0,output:n.result,providerExecuted:!0,dynamic:n.dynamic,...n.providerMetadata==null?{}:{providerMetadata:n.providerMetadata},...e?.metadata==null?{}:{toolMetadata:e.metadata}});break}n.isError?o.push({type:`tool-error`,toolCallId:n.toolCallId,toolName:n.toolName,input:e.input,error:n.result,providerExecuted:!0,dynamic:e.dynamic,...n.providerMetadata==null?{}:{providerMetadata:n.providerMetadata},...e.toolMetadata==null?{}:{toolMetadata:e.toolMetadata}}):o.push({type:`tool-result`,toolCallId:n.toolCallId,toolName:n.toolName,input:e.input,output:n.result,providerExecuted:!0,dynamic:e.dynamic,...n.providerMetadata==null?{}:{providerMetadata:n.providerMetadata},...e.toolMetadata==null?{}:{toolMetadata:e.toolMetadata}});break}case`tool-approval-request`:{let e=t.find(e=>e.toolCallId===n.toolCallId);if(e==null)throw new XL({toolCallId:n.toolCallId,approvalId:n.approvalId});o.push({type:`tool-approval-request`,approvalId:n.approvalId,toolCall:e});break}}for(let e of n)l.has(e.toolCallId)?s.push(e):c.push(e);return[...o,...c,...r,...i,...s]}TransformStream,zk(H(),Lz.optional()),WM({prefix:`aitxt`,size:24}),WM({prefix:`call`,size:24}),WM({prefix:`aitxt`,size:24}),WM({prefix:`call`,size:24}),zk(H(),Lz.optional()),zk(H(),H()),WM({prefix:`call`,size:24}),WM({prefix:`call`,size:24}),WM({prefix:`aiobj`,size:24}),WM({prefix:`aiobj`,size:24}),WM({prefix:`call`,size:24});function SV(e){return ip({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M48 176v.66a17.38 17.38 0 0 1-4.2 11.23v.05C38.4 194.32 32 205.74 32 224c0 16.55 5.3 28.23 11.68 35.91A19 19 0 0 1 48 272a32 32 0 0 0 32 32h8a8 8 0 0 0 8-8V152a8 8 0 0 0-8-8h-8a32 32 0 0 0-32 32m404.18 10.55-.93-.17a4 4 0 0 1-3.25-3.93V62c0-12.64-8.39-24-20.89-28.32-11.92-4.11-24.34-.76-31.68 8.53a431 431 0 0 1-51.31 51.69c-23.63 20-46.24 34.25-67 42.31a8 8 0 0 0-5.15 7.47V299a16 16 0 0 0 9.69 14.69c19.34 8.29 40.24 21.83 62 40.28a434 434 0 0 1 51.68 52.16 26.22 26.22 0 0 0 21.1 9.87 33 33 0 0 0 10.44-1.74C439.71 410 448 399.05 448 386.4V265.53a4 4 0 0 1 3.33-3.94l.85-.14C461.8 258.84 480 247.67 480 224s-18.2-34.84-27.82-37.45M240 320V152a8 8 0 0 0-8-8h-96a8 8 0 0 0-8 8v304a24 24 0 0 0 24 24h52.45a32.66 32.66 0 0 0 25.93-12.45 31.65 31.65 0 0 0 5.21-29.05c-1.62-5.18-3.63-11-5.77-17.19-7.91-22.9-18.34-37.07-21.12-69.32A32 32 0 0 0 240 320`},child:[]}]})(e)}function CV(e){return ip({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M256 256c-13.47 0-26.94-2.39-37.44-7.17l-148-67.49C63.79 178.26 48 169.25 48 152.24s15.79-26 22.58-29.12l149.28-68.07c20.57-9.4 51.61-9.4 72.19 0l149.37 68.07c6.79 3.09 22.58 12.1 22.58 29.12s-15.79 26-22.58 29.11l-148 67.48C282.94 253.61 269.47 256 256 256m176.76-100.86`},child:[]},{tag:`path`,attr:{d:`M441.36 226.81 426.27 220l-38.77 17.74-94 43c-10.5 4.8-24 7.19-37.44 7.19s-26.93-2.39-37.42-7.19l-94.07-43L85.79 220l-15.22 6.84C63.79 229.93 48 239 48 256s15.79 26.08 22.56 29.17l148 67.63C229 357.6 242.49 360 256 360s26.94-2.4 37.44-7.19l147.87-67.61c6.81-3.09 22.69-12.11 22.69-29.2s-15.77-26.07-22.64-29.19`},child:[]},{tag:`path`,attr:{d:`m441.36 330.8-15.09-6.8-38.77 17.73-94 42.95c-10.5 4.78-24 7.18-37.44 7.18s-26.93-2.39-37.42-7.18l-94.07-43L85.79 324l-15.22 6.84C63.79 333.93 48 343 48 360s15.79 26.07 22.56 29.15l148 67.59C229 461.52 242.54 464 256 464s26.88-2.48 37.38-7.27l147.92-67.57c6.82-3.08 22.7-12.1 22.7-29.16s-15.77-26.07-22.64-29.2`},child:[]}]})(e)}function wV(e){return ip({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{fill:`none`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`48`,d:`m184 112 144 144-144 144`},child:[]}]})(e)}var TV=({activeKey:e,setActiveKey:t,enabled:n,aiModel:r})=>{let{i18n:i,t:a}=nt(),o=bt[i.language],s=(0,m.useRef)(``),{users:c,messages:l,selectedDialog:u,currentUserId:d,addTempMessage:f,updateTempMessage:p,generateTempMessageId:h}=gr(),g=u?._id??``,_=(0,m.useMemo)(()=>l[g]??[],[l,g]),v=e===dt.GET_SUMMARY,y=(0,m.useCallback)(e=>t(e?dt.GET_SUMMARY:dt.DEFAULT),[t]),b=(0,m.useCallback)(async e=>{let t=new Date,n=_.map(e=>e.attachments&&e.attachments.length>0?{...e,message:JSON.stringify(e.attachments)}:e),i=n,l=``;switch(e){case ft.LAST_7_DAYS:{let e=new Date(t.getFullYear(),t.getMonth(),t.getDate()-7).getTime()/1e3;i=n.filter(({date_sent:t,custom:n})=>t>e&&!n);break}case ft.LAST_DAY:{let e=new Date(t.getFullYear(),t.getMonth(),t.getDate()-1).getTime()/1e3;i=n.filter(({date_sent:t,custom:n})=>t>e&&!n);break}case ft.UNREADS:i=n.filter(({read:e,custom:t})=>e===0&&!t);break;default:break}i.forEach(({sender_id:e,message:t})=>{let n=ci(c[e]);l+=`- ${e===d?`${n}${ut}`:n}: ${t}\n`}),s.current=h(),f(s.current,u,{tag:mt.AI_TEXT_SUMMARY,title:a(`AI.SummaryMessageTitle`),body:`...`,pending:!0,filter:e});try{let e=await vV({model:r,prompt:`
            You are a helpful assistant. Please provide a concise summary of the following chat messages in ${o}.
            Use bullet points or a short paragraph. Focus on meaningful conversation and skip system messages or irrelevant technical info.
            Each line is a message from a participant. If a username ends with "${ut}", it means that message was sent by ME (the user requesting this summary). In this summary, I will address you informally, using "you" in a familiar way.
            If a message includes attachments (serialized as JSON), try to understand what they are and include relevant info in the summary — for example, if it contains an image, video, or file name.
            Messages: ${l}
          `});p(s.current,u,{body:e.text,pending:!1})}catch(e){p(s.current,u,{body:`AI Text Summary Error :(`,pending:!1,error:e})}},[a,o,r,c,_,d,u,f,p,h]);if(n)return m.default.createElement(Ex,{key:`ai:get-summary`,open:v,onOpenChange:y},m.default.createElement(Dx,{className:`flex items-center gap-2 cursor-pointer text-sm`},m.default.createElement(CV,{className:`text-gray-700 size-6`}),a(`AI.GetSummary`)),m.default.createElement(xx,null,m.default.createElement(Ox,null,m.default.createElement(Tx,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>b(ft.LAST_7_DAYS)},m.default.createElement(wV,{className:`text-gray-700 size-4`}),a(`AI.forLast7Days`)),m.default.createElement(Tx,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>b(ft.LAST_DAY)},m.default.createElement(wV,{className:`text-gray-700 size-4`}),a(`AI.forLastDay`)),m.default.createElement(Tx,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>b(ft.UNREADS)},m.default.createElement(wV,{className:`text-gray-700 size-4`}),a(`AI.forUnreads`)))))},EV=({activeKey:e,setActiveKey:t,enabled:n,aiModel:r,message:i,changeMessage:a,setProcessing:o})=>{let{i18n:s,t:c}=nt(),l=bt[s.language],u=e===dt.CHANGE_TONE,d=(0,m.useCallback)(e=>t(e?dt.CHANGE_TONE:dt.DEFAULT),[t]),f=(0,m.useCallback)(async e=>{if(!i){pf.info(c(`AI.EmptyMessageTone`));return}o(!0);try{let t=await vV({model:r,prompt:`
            Rewrite the text "${i}" in ${e} tone.
            Use its original language, or ${l} if unclear.
            Avoid using italicized emotional interjections. Instead, express the same emotions directly using plain text or appropriate emojis.
            Keep all meaning. Output only the rewritten text.
          `});a?.(t.text)}catch(e){console.error(e)}finally{o(!1)}},[c,l,r,i,a,o]);if(n)return m.default.createElement(Ex,{key:dt.CHANGE_TONE,open:u,onOpenChange:d},m.default.createElement(Dx,{className:`flex items-center gap-2 cursor-pointer text-sm`},m.default.createElement(SV,{className:`text-gray-700 size-6`}),c(`AI.MessageTone`)),m.default.createElement(xx,null,m.default.createElement(Ox,null,m.default.createElement(Tx,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>f(pt.POSITIVE)},m.default.createElement(wV,{className:`text-gray-700 size-4`}),c(`AI.positive`)),m.default.createElement(Tx,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>f(pt.NEGATIVE)},m.default.createElement(wV,{className:`text-gray-700 size-4`}),c(`AI.negative`)),m.default.createElement(Tx,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>f(pt.CRINGE)},m.default.createElement(wV,{className:`text-gray-700 size-4`}),c(`AI.cringe`)))))},DV=`4.0.9`,OV=JP({errorSchema:xP(()=>kP(G({error:G({code:U().nullable(),message:H(),status:H()})}))),errorToMessage:e=>e.error.message}),kV=Nk([G({text:H()}),G({inlineData:G({mimeType:H(),data:H()})}),G({fileData:G({fileUri:H(),mimeType:H()})})]),AV=xP(()=>kP(G({outputDimensionality:U().optional(),taskType:Vk([`SEMANTIC_SIMILARITY`,`CLASSIFICATION`,`CLUSTERING`,`RETRIEVAL_DOCUMENT`,`RETRIEVAL_QUERY`,`QUESTION_ANSWERING`,`FACT_VERIFICATION`,`CODE_RETRIEVAL_QUERY`]).optional(),content:W(W(kV).min(1).nullable()).optional()}))),jV=class e{constructor(e,t){this.specificationVersion=`v4`,this.maxEmbeddingsPerCall=100,this.supportsParallelCalls=!0,this.modelId=e,this.config=t}static[nM](e){return QP({modelId:e.modelId,config:e.config})}static[rM](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:n,providerOptions:r}){let i=await FP({provider:`google`,providerOptions:r,schema:AV});if(e.length>this.maxEmbeddingsPerCall)throw new HS({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:e});let a=aM(this.config.headers?await VP(this.config.headers):void 0,t),o=i?.content;if(o!=null&&o.length!==e.length)throw Error(`The number of multimodal content entries (${o.length}) must match the number of values (${e.length}).`);if(e.length===1){let t=o?.[0],r=e[0]?[{text:e[0]}]:[],s=t==null?[{text:e[0]}]:[...r,...t],{responseHeaders:c,value:l,rawValue:u}=await LP({url:`${this.config.baseURL}/models/${this.modelId}:embedContent`,headers:a,body:{model:`models/${this.modelId}`,content:{parts:s},outputDimensionality:i?.outputDimensionality,taskType:i?.taskType},failedResponseHandler:OV,successfulResponseHandler:XP(NV),abortSignal:n,fetch:this.config.fetch});return{warnings:[],embeddings:[l.embedding.values],usage:void 0,response:{headers:c,body:u}}}let{responseHeaders:s,value:c,rawValue:l}=await LP({url:`${this.config.baseURL}/models/${this.modelId}:batchEmbedContents`,headers:a,body:{requests:e.map((e,t)=>{let n=o?.[t],r=e?[{text:e}]:[];return{model:`models/${this.modelId}`,content:{role:`user`,parts:n==null?[{text:e}]:[...r,...n]},outputDimensionality:i?.outputDimensionality,taskType:i?.taskType}})},failedResponseHandler:OV,successfulResponseHandler:XP(MV),abortSignal:n,fetch:this.config.fetch});return{warnings:[],embeddings:c.embeddings.map(e=>e.values),usage:void 0,response:{headers:s,body:l}}}},MV=xP(()=>kP(G({embeddings:W(G({values:W(U())}))}))),NV=xP(()=>kP(G({embedding:G({values:W(U())})})));function PV(e){if(e==null)return{inputTokens:{total:void 0,noCache:void 0,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:void 0,text:void 0,reasoning:void 0},raw:void 0};let t=e.promptTokenCount??0,n=e.candidatesTokenCount??0,r=e.cachedContentTokenCount??0,i=e.thoughtsTokenCount??0;return{inputTokens:{total:t,noCache:t-r,cacheRead:r,cacheWrite:void 0},outputTokens:{total:n+i,text:n,reasoning:i},raw:e}}function FV(e,t=!0){if(e==null)return;if(IV(e))return t?void 0:typeof e==`object`&&e.description?{type:`object`,description:e.description}:{type:`object`};if(typeof e==`boolean`)return{type:`boolean`,properties:{}};let{type:n,description:r,required:i,properties:a,items:o,allOf:s,anyOf:c,oneOf:l,format:u,const:d,minLength:f,enum:p}=e,m={};if(r&&(m.description=r),i&&(m.required=i),u&&(m.format=u),d!==void 0&&(m.enum=[d]),n)if(Array.isArray(n)){let e=n.includes(`null`),t=n.filter(e=>e!==`null`);t.length===0?m.type=`null`:(m.anyOf=t.map(e=>({type:e})),e&&(m.nullable=!0))}else m.type=n;if(p!==void 0&&(m.enum=p),a!=null&&(m.properties=Object.entries(a).reduce((e,[t,n])=>(e[t]=FV(n,!1),e),{})),o&&(m.items=Array.isArray(o)?o.map(e=>FV(e,!1)):FV(o,!1)),s&&(m.allOf=s.map(e=>FV(e,!1))),c)if(c.some(e=>typeof e==`object`&&e?.type===`null`)){let e=c.filter(e=>!(typeof e==`object`&&e?.type===`null`));if(e.length===1){let t=FV(e[0],!1);typeof t==`object`&&(m.nullable=!0,Object.assign(m,t))}else m.anyOf=e.map(e=>FV(e,!1)),m.nullable=!0}else m.anyOf=c.map(e=>FV(e,!1));return l&&(m.oneOf=l.map(e=>FV(e,!1))),f!==void 0&&(m.minLength=f),m}function IV(e){return typeof e==`object`&&!!e&&e.type===`object`&&(e.properties==null||Object.keys(e.properties).length===0)&&!e.additionalProperties}var LV=`skip_thought_signature_validator`,RV=/^data:([^;,]+);base64,(.+)$/s;function zV(e){let t=RV.exec(e);if(t!=null)return{mediaType:t[1],data:t[2]}}function BV(e){let t=zV(e);if(t!=null)return{inlineData:{mimeType:t.mediaType,data:t.data}}}function VV(e,t,n,r){let i=[],a=[];for(let e of n)switch(e.type){case`text`:a.push(e.text);break;case`file`:if(e.data.type===`data`)i.push({inlineData:{mimeType:HP({part:e}),data:uM(e.data.data)}});else if(e.data.type===`url`){let t=BV(e.data.url.toString());t==null?a.push(JSON.stringify(e)):i.push(t)}else a.push(JSON.stringify(e));break;default:a.push(JSON.stringify(e));break}e.push({functionResponse:{...r==null?{}:{id:r},name:t,response:{name:t,content:a.length>0?a.join(`
`):`Tool executed successfully.`},...i.length>0?{parts:i}:{}}})}function HV(e,t,n,r){for(let i of n)switch(i.type){case`text`:e.push({functionResponse:{...r==null?{}:{id:r},name:t,response:{name:t,content:i.text}}});break;case`file`:i.data.type===`data`&&CM(i.mediaType)===`image`?e.push({inlineData:{mimeType:HP({part:i}),data:uM(i.data.data)}},{text:`Tool executed successfully and returned this image as a response`}):e.push({text:JSON.stringify(i)});break;default:e.push({text:JSON.stringify(i)});break}}function UV(e,t){let n=[],r=[],i=!0,a=t?.isGemmaModel??!1,o=t?.isGemini3Model??!1,s=t?.onWarning,c=t?.providerOptionsNames??[`google`],l=!c.includes(`google`),u=t?.supportsFunctionResponseParts??!0,d=!1,f=[],p=e=>(f.push(e),d=!0,LV),m=e=>{for(let t of c){let n=e.providerOptions?.[t];if(n!=null)return n}return l?e.providerOptions?.google:e.providerOptions?.googleVertex??e.providerOptions?.vertex};for(let{role:t,content:a}of e)switch(t){case`system`:if(!i)throw new eC({functionality:`system messages are only supported at the beginning of the conversation`});n.push({text:a});break;case`user`:{i=!1;let e=[];for(let t of a)switch(t.type){case`text`:e.push({text:t.text});break;case`file`:switch(t.data.type){case`url`:e.push({fileData:{mimeType:HP({part:t}),fileUri:t.data.url.toString()}});break;case`reference`:if(l)throw new eC({functionality:`file parts with provider references`});e.push({fileData:{mimeType:HP({part:t}),fileUri:UP({reference:t.data.reference,provider:`google`})}});break;case`text`:e.push({inlineData:{mimeType:wM(t.mediaType)?t.mediaType:`text/plain`,data:uM(new TextEncoder().encode(t.data.text))}});break;case`data`:e.push({inlineData:{mimeType:HP({part:t}),data:uM(t.data.data)}});break}break}r.push({role:`user`,parts:e});break}case`assistant`:i=!1,r.push({role:`model`,parts:a.map(e=>{let t=m(e),n=t?.thoughtSignature==null?void 0:String(t.thoughtSignature);switch(e.type){case`text`:return e.text.length===0?void 0:{text:e.text,thoughtSignature:n};case`reasoning`:return e.text.length===0?void 0:{text:e.text,thought:!0,thoughtSignature:n};case`reasoning-file`:switch(e.data.type){case`url`:throw new eC({functionality:`File data URLs in assistant messages are not supported`});case`data`:return{inlineData:{mimeType:e.mediaType,data:uM(e.data.data)},thought:!0,thoughtSignature:n}}break;case`file`:switch(e.data.type){case`url`:throw new eC({functionality:`File data URLs in assistant messages are not supported`});case`reference`:if(l)throw new eC({functionality:`file parts with provider references`});return{fileData:{mimeType:e.mediaType,fileUri:UP({reference:e.data.reference,provider:`google`})},...t?.thought===!0?{thought:!0}:{},thoughtSignature:n};case`text`:return{inlineData:{mimeType:wM(e.mediaType)?e.mediaType:`text/plain`,data:uM(new TextEncoder().encode(e.data.text))},...t?.thought===!0?{thought:!0}:{},thoughtSignature:n};case`data`:return{inlineData:{mimeType:e.mediaType,data:uM(e.data.data)},...t?.thought===!0?{thought:!0}:{},thoughtSignature:n}}break;case`tool-call`:{let r=t?.serverToolCallId==null?void 0:String(t.serverToolCallId),i=t?.serverToolType==null?void 0:String(t.serverToolType),a=n??(o?p(e.toolName):void 0);return r&&i?{toolCall:{toolType:i,args:typeof e.input==`string`?_N(e.input):e.input,id:r},thoughtSignature:a}:{functionCall:{...e.toolCallId==null?{}:{id:e.toolCallId},name:e.toolName,args:e.input},thoughtSignature:a}}case`tool-result`:{let r=t?.serverToolCallId==null?void 0:String(t.serverToolCallId),i=t?.serverToolType==null?void 0:String(t.serverToolType);return r&&i?{toolResponse:{toolType:i,response:e.output.type===`json`?e.output.value:{},id:r},thoughtSignature:n}:void 0}}}).filter(e=>e!==void 0)});break;case`tool`:{i=!1;let e=[];for(let t of a){if(t.type===`tool-approval-response`)continue;let n=m(t),i=n?.serverToolCallId==null?void 0:String(n.serverToolCallId),a=n?.serverToolType==null?void 0:String(n.serverToolType);if(i&&a){let e=n?.thoughtSignature==null?void 0:String(n.thoughtSignature);if(r.length>0){let n=r[r.length-1];if(n.role===`model`){n.parts.push({toolResponse:{toolType:a,response:t.output.type===`json`?t.output.value:{},id:i},thoughtSignature:e});continue}}}let o=t.output;o.type===`content`?u?VV(e,t.toolName,o.value,t.toolCallId):HV(e,t.toolName,o.value,t.toolCallId):e.push({functionResponse:{...t.toolCallId==null?{}:{id:t.toolCallId},name:t.toolName,response:{name:t.toolName,content:o.type===`execution-denied`?o.reason??`Tool call execution denied.`:o.value}}})}r.push({role:`user`,parts:e});break}}if(a&&n.length>0&&r.length>0&&r[0].role===`user`){let e=n.map(e=>e.text).join(`

`);r[0].parts.unshift({text:e+`

`})}if(d&&s!=null){let e=Array.from(new Set(f));s({type:`other`,message:`Replayed ${f.length} \`functionCall\` part(s) for a Gemini 3 model without a \`thoughtSignature\` (tools: ${e.map(e=>`\`${e}\``).join(`, `)}). Injected the documented \`skip_thought_signature_validator\` sentinel to keep the request from failing with HTTP 400. The likely cause is application code that drops \`providerOptions.google.thoughtSignature\` when persisting or serializing assistant tool-call messages. See https://ai.google.dev/gemini-api/docs/thought-signatures.`})}return{systemInstruction:n.length>0&&!a?{parts:n}:void 0,contents:r}}function WV(e){return e.includes(`/`)?e:`models/${e}`}var GV=xP(()=>kP(G({responseModalities:W(Vk([`TEXT`,`IMAGE`])).optional(),thinkingConfig:G({thinkingBudget:U().optional(),includeThoughts:bk().optional(),thinkingLevel:Vk([`minimal`,`low`,`medium`,`high`]).optional()}).optional(),cachedContent:H().optional(),structuredOutputs:bk().optional(),safetySettings:W(G({category:Vk([`HARM_CATEGORY_UNSPECIFIED`,`HARM_CATEGORY_HATE_SPEECH`,`HARM_CATEGORY_DANGEROUS_CONTENT`,`HARM_CATEGORY_HARASSMENT`,`HARM_CATEGORY_SEXUALLY_EXPLICIT`,`HARM_CATEGORY_CIVIC_INTEGRITY`]),threshold:Vk([`HARM_BLOCK_THRESHOLD_UNSPECIFIED`,`BLOCK_LOW_AND_ABOVE`,`BLOCK_MEDIUM_AND_ABOVE`,`BLOCK_ONLY_HIGH`,`BLOCK_NONE`,`OFF`])})).optional(),threshold:Vk([`HARM_BLOCK_THRESHOLD_UNSPECIFIED`,`BLOCK_LOW_AND_ABOVE`,`BLOCK_MEDIUM_AND_ABOVE`,`BLOCK_ONLY_HIGH`,`BLOCK_NONE`,`OFF`]).optional(),audioTimestamp:bk().optional(),labels:zk(H(),H()).optional(),mediaResolution:Vk([`MEDIA_RESOLUTION_UNSPECIFIED`,`MEDIA_RESOLUTION_LOW`,`MEDIA_RESOLUTION_MEDIUM`,`MEDIA_RESOLUTION_HIGH`]).optional(),imageConfig:G({aspectRatio:Vk([`1:1`,`2:3`,`3:2`,`3:4`,`4:3`,`4:5`,`5:4`,`9:16`,`16:9`,`21:9`,`1:8`,`8:1`,`1:4`,`4:1`]).optional(),imageSize:Vk([`1K`,`2K`,`4K`,`512`]).optional()}).optional(),retrievalConfig:G({latLng:G({latitude:U(),longitude:U()}).optional()}).optional(),streamFunctionCallArguments:bk().optional(),serviceTier:Vk([`standard`,`flex`,`priority`]).optional(),sharedRequestType:Vk([`priority`,`flex`,`standard`]).optional(),requestType:Vk([`shared`]).optional()})));function KV({tools:e,toolChoice:t,modelId:n,isVertexProvider:r=!1}){e=e?.length?e:void 0;let i=[],a=[`gemini-flash-latest`,`gemini-flash-lite-latest`,`gemini-pro-latest`].some(e=>e===n),o=n.includes(`gemini-2`)||n.includes(`gemini-3`)||n.includes(`nano-banana`)||a,s=n.includes(`gemini-3`),c=n.includes(`gemini-2.5`)||n.includes(`gemini-3`);if(e==null)return{tools:void 0,toolConfig:void 0,toolWarnings:i};let l=e.some(e=>e.type===`function`),u=e.some(e=>e.type===`provider`);if(l&&u&&!s&&i.push({type:`unsupported`,feature:`combination of function and provider-defined tools`}),u){let n=[];if(e.filter(e=>e.type===`provider`).forEach(e=>{switch(e.id){case`google.google_search`:o?n.push({googleSearch:{...e.args}}):i.push({type:`unsupported`,feature:`provider-defined tool ${e.id}`,details:`Google Search requires Gemini 2.0 or newer.`});break;case`google.enterprise_web_search`:o?n.push({enterpriseWebSearch:{}}):i.push({type:`unsupported`,feature:`provider-defined tool ${e.id}`,details:`Enterprise Web Search requires Gemini 2.0 or newer.`});break;case`google.url_context`:o?n.push({urlContext:{}}):i.push({type:`unsupported`,feature:`provider-defined tool ${e.id}`,details:`The URL context tool is not supported with other Gemini models than Gemini 2.`});break;case`google.code_execution`:o?n.push({codeExecution:{}}):i.push({type:`unsupported`,feature:`provider-defined tool ${e.id}`,details:`The code execution tool is not supported with other Gemini models than Gemini 2.`});break;case`google.file_search`:c?n.push({fileSearch:{...e.args}}):i.push({type:`unsupported`,feature:`provider-defined tool ${e.id}`,details:`The file search tool is only supported with Gemini 2.5 models and Gemini 3 models.`});break;case`google.vertex_rag_store`:o?n.push({retrieval:{vertex_rag_store:{rag_resources:{rag_corpus:e.args.ragCorpus},similarity_top_k:e.args.topK}}}):i.push({type:`unsupported`,feature:`provider-defined tool ${e.id}`,details:`The RAG store tool is not supported with other Gemini models than Gemini 2.`});break;case`google.google_maps`:o?n.push({googleMaps:{}}):i.push({type:`unsupported`,feature:`provider-defined tool ${e.id}`,details:`The Google Maps grounding tool is not supported with Gemini models other than Gemini 2 or newer.`});break;default:i.push({type:`unsupported`,feature:`provider-defined tool ${e.id}`});break}}),l&&s&&n.length>0){let a=[];for(let t of e)t.type===`function`&&a.push({name:t.name,description:t.description??``,parameters:FV(t.inputSchema)});let o={functionCallingConfig:{mode:`VALIDATED`},...!r&&{includeServerSideToolInvocations:!0}};if(t!=null)switch(t.type){case`auto`:break;case`none`:o.functionCallingConfig={mode:`NONE`};break;case`required`:o.functionCallingConfig={mode:`ANY`};break;case`tool`:o.functionCallingConfig={mode:`ANY`,allowedFunctionNames:[t.toolName]};break}return{tools:[...n,{functionDeclarations:a}],toolConfig:o,toolWarnings:i}}return{tools:n.length>0?n:void 0,toolConfig:void 0,toolWarnings:i}}let d=[],f=!1;for(let t of e)switch(t.type){case`function`:d.push({name:t.name,description:t.description??``,parameters:FV(t.inputSchema)}),t.strict===!0&&(f=!0);break;default:i.push({type:`unsupported`,feature:`function tool ${t.name}`});break}if(t==null)return{tools:[{functionDeclarations:d}],toolConfig:f?{functionCallingConfig:{mode:`VALIDATED`}}:void 0,toolWarnings:i};let p=t.type;switch(p){case`auto`:return{tools:[{functionDeclarations:d}],toolConfig:{functionCallingConfig:{mode:f?`VALIDATED`:`AUTO`}},toolWarnings:i};case`none`:return{tools:[{functionDeclarations:d}],toolConfig:{functionCallingConfig:{mode:`NONE`}},toolWarnings:i};case`required`:return{tools:[{functionDeclarations:d}],toolConfig:{functionCallingConfig:{mode:f?`VALIDATED`:`ANY`}},toolWarnings:i};case`tool`:return{tools:[{functionDeclarations:d}],toolConfig:{functionCallingConfig:{mode:f?`VALIDATED`:`ANY`,allowedFunctionNames:[t.toolName]}},toolWarnings:i};default:throw new eC({functionality:`tool choice type: ${p}`})}}var qV=class{constructor(){this.accumulatedArgs={},this.jsonText=``,this.pathStack=[],this.stringOpen=!1}processPartialArgs(e){let t=``;for(let n of e){let e=n.jsonPath.replace(/^\$\./,``);if(!e)continue;let r=JV(e),i=QV(this.accumulatedArgs,r);if(n.stringValue!=null&&i!==void 0){let e=JSON.stringify(n.stringValue).slice(1,-1);$V(this.accumulatedArgs,r,i+n.stringValue),t+=e;continue}let a=eH(n);a!=null&&($V(this.accumulatedArgs,r,a.value),t+=this.emitNavigationTo(r,n,a.json))}return this.jsonText+=t,{currentJSON:this.accumulatedArgs,textDelta:t}}finalize(){let e=JSON.stringify(this.accumulatedArgs);return{finalJSON:e,closingDelta:e.slice(this.jsonText.length)}}ensureRoot(){return this.pathStack.length===0?(this.pathStack.push({segment:``,isArray:!1,childCount:0}),`{`):``}emitNavigationTo(e,t,n){let r=``;this.stringOpen&&=(r+=`"`,!1),r+=this.ensureRoot();let i=e.slice(0,-1),a=e[e.length-1],o=this.findCommonStackDepth(i);return r+=this.closeDownTo(o),r+=this.openDownTo(i,a),r+=this.emitLeaf(a,t,n),r}findCommonStackDepth(e){let t=Math.min(this.pathStack.length-1,e.length),n=0;for(let r=0;r<t&&this.pathStack[r+1].segment===e[r];r++)n++;return n+1}closeDownTo(e){let t=``;for(;this.pathStack.length>e;){let e=this.pathStack.pop();t+=e.isArray?`]`:`}`}return t}openDownTo(e,t){let n=``,r=this.pathStack.length-1;for(let i=r;i<e.length;i++){let r=e[i],a=this.pathStack[this.pathStack.length-1];a.childCount>0&&(n+=`,`),a.childCount++,typeof r==`string`&&(n+=`${JSON.stringify(r)}:`);let o=typeof(i+1<e.length?e[i+1]:t)==`number`;n+=o?`[`:`{`,this.pathStack.push({segment:r,isArray:o,childCount:0})}return n}emitLeaf(e,t,n){let r=``,i=this.pathStack[this.pathStack.length-1];return i.childCount>0&&(r+=`,`),i.childCount++,typeof e==`string`&&(r+=`${JSON.stringify(e)}:`),t.stringValue!=null&&t.willContinue?(r+=n.slice(0,-1),this.stringOpen=!0):r+=n,r}};function JV(e){let t=[];for(let n of e.split(`.`)){let e=n.indexOf(`[`);if(e===-1)t.push(n);else{e>0&&t.push(n.slice(0,e));for(let e of n.matchAll(/\[(\d+)\]/g))t.push(parseInt(e[1],10))}}return t}var YV=Object.prototype.hasOwnProperty;function XV(e,t){return YV.call(e,t)}function ZV(e,t,n){Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0})}function QV(e,t){let n=e;for(let e of t){if(typeof n!=`object`||!n)return;let t=n;if(!XV(t,e))return;n=t[e]}return n}function $V(e,t,n){let r=e;for(let e=0;e<t.length-1;e++){let n=t[e],i=t[e+1];(!XV(r,n)||r[n]==null)&&ZV(r,n,typeof i==`number`?[]:{}),r=r[n]}ZV(r,t[t.length-1],n)}function eH(e){let t=e.stringValue??e.numberValue??e.boolValue;if(t!=null)return{value:t,json:JSON.stringify(t)};if(`nullValue`in e)return{value:null,json:`null`}}function tH({finishReason:e,hasToolCalls:t}){switch(e){case`STOP`:return t?`tool-calls`:`stop`;case`MAX_TOKENS`:return`length`;case`IMAGE_SAFETY`:case`RECITATION`:case`SAFETY`:case`BLOCKLIST`:case`PROHIBITED_CONTENT`:case`SPII`:return`content-filter`;case`MALFORMED_FUNCTION_CALL`:return`error`;default:return`other`}}var nH=class e{constructor(e,t){this.specificationVersion=`v4`,this.modelId=e,this.config=t,this.generateId=t.generateId??GM}static[nM](e){return QP({modelId:e.modelId,config:e.config})}static[rM](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}get supportedUrls(){var e;return(e=this.config).supportedUrls?.call(e)??{}}async getArgs({prompt:e,maxOutputTokens:t,temperature:n,topP:r,topK:i,frequencyPenalty:a,presencePenalty:o,stopSequences:s,responseFormat:c,seed:l,tools:u,toolChoice:d,reasoning:f,providerOptions:p},{isStreaming:m=!1}={}){let h=[],g=this.config.provider.includes(`vertex`)?[`googleVertex`,`vertex`]:[`google`],_;for(let e of g)if(_=await FP({provider:e,providerOptions:p,schema:GV}),_!=null)break;_==null&&!g.includes(`google`)&&(_=await FP({provider:`google`,providerOptions:p,schema:GV}));let v=this.config.provider.startsWith(`google.vertex.`);u?.some(e=>e.type===`provider`&&e.id===`google.vertex_rag_store`)&&!v&&h.push({type:`other`,message:`The 'vertex_rag_store' tool is only supported with the Google Vertex provider and might not be supported or could behave unexpectedly with the current Google provider (${this.config.provider}).`}),_?.streamFunctionCallArguments&&!v&&h.push({type:`other`,message:`'streamFunctionCallArguments' is only supported on the Vertex AI API and will be ignored with the current Google provider (${this.config.provider}). See https://docs.cloud.google.com/vertex-ai/generative-ai/docs/multimodal/function-calling#streaming-fc`}),_?.serviceTier&&v&&h.push({type:`other`,message:`'serviceTier' is a Gemini API option and is not supported on Vertex AI. Use 'sharedRequestType' (and optionally 'requestType') instead. See https://docs.cloud.google.com/vertex-ai/generative-ai/docs/priority-paygo`}),(_?.sharedRequestType||_?.requestType)&&!v&&h.push({type:`other`,message:`'sharedRequestType' and 'requestType' are Vertex AI options and are ignored with the current Google provider (${this.config.provider}).`});let y=v&&(_?.sharedRequestType||_?.requestType)?{..._.sharedRequestType&&{"X-Vertex-AI-LLM-Shared-Request-Type":_.sharedRequestType},..._.requestType&&{"X-Vertex-AI-LLM-Request-Type":_.requestType}}:void 0,b=v?void 0:_?.serviceTier,x=this.modelId.toLowerCase().startsWith(`gemma-`),S=/^gemini-3[.-]/.test(this.modelId),{contents:C,systemInstruction:w}=UV(e,{isGemmaModel:x,isGemini3Model:S,onWarning:e=>h.push(e),providerOptionsNames:g,supportsFunctionResponseParts:S}),{tools:T,toolConfig:E,toolWarnings:D}=KV({tools:u,toolChoice:d,modelId:this.modelId,isVertexProvider:v}),ee=oH({reasoning:f,modelId:this.modelId,warnings:h}),O=_?.thinkingConfig||ee?{...ee,..._?.thinkingConfig}:void 0,k=m&&v?_?.streamFunctionCallArguments??!1:void 0,A=E||k||_?.retrievalConfig?{...E,...k&&{functionCallingConfig:{...E?.functionCallingConfig,streamFunctionCallArguments:!0}},..._?.retrievalConfig&&{retrievalConfig:_.retrievalConfig}}:void 0;return{args:{generationConfig:{maxOutputTokens:t,temperature:n,topK:i,topP:r,frequencyPenalty:a,presencePenalty:o,stopSequences:s,seed:l,responseMimeType:c?.type===`json`?`application/json`:void 0,responseSchema:c?.type===`json`&&c.schema!=null&&(_?.structuredOutputs??!0)?FV(c.schema):void 0,..._?.audioTimestamp&&{audioTimestamp:_.audioTimestamp},responseModalities:_?.responseModalities,thinkingConfig:O,..._?.mediaResolution&&{mediaResolution:_.mediaResolution},..._?.imageConfig&&{imageConfig:_.imageConfig}},contents:C,systemInstruction:x?void 0:w,safetySettings:_?.safetySettings,tools:T,toolConfig:A,cachedContent:_?.cachedContent,labels:_?.labels,serviceTier:b},warnings:[...h,...D],providerOptionsNames:g,extraHeaders:y}}async doGenerate(e){let{args:t,warnings:n,providerOptionsNames:r,extraHeaders:i}=await this.getArgs(e),a=e=>Object.fromEntries(r.map(t=>[t,e])),o=aM(this.config.headers?await VP(this.config.headers):void 0,e.headers,i),{responseHeaders:s,value:c,rawValue:l}=await LP({url:`${this.config.baseURL}/${WV(this.modelId)}:generateContent`,headers:o,body:t,failedResponseHandler:OV,successfulResponseHandler:XP(_H),abortSignal:e.abortSignal,fetch:this.config.fetch}),u=c.candidates[0],d=[],f=u.content?.parts??[],p=c.usageMetadata,m,h;for(let e of f)if(`executableCode`in e&&e.executableCode?.code){let t=this.config.generateId();m=t,d.push({type:`tool-call`,toolCallId:t,toolName:`code_execution`,input:JSON.stringify(e.executableCode),providerExecuted:!0})}else if(`codeExecutionResult`in e&&e.codeExecutionResult)d.push({type:`tool-result`,toolCallId:m,toolName:`code_execution`,result:{outcome:e.codeExecutionResult.outcome,output:e.codeExecutionResult.output??``}}),m=void 0;else if(`text`in e&&e.text!=null){let t=e.thoughtSignature?a({thoughtSignature:e.thoughtSignature}):void 0;if(e.text.length===0){if(t!=null&&d.length>0){let e=d[d.length-1];e.providerMetadata=t}}else d.push({type:e.thought===!0?`reasoning`:`text`,text:e.text,providerMetadata:t})}else if(`functionCall`in e&&e.functionCall.name!=null)d.push({type:`tool-call`,toolCallId:e.functionCall.id??this.config.generateId(),toolName:e.functionCall.name,input:JSON.stringify(e.functionCall.args??{}),providerMetadata:e.thoughtSignature?a({thoughtSignature:e.thoughtSignature}):void 0});else if(`inlineData`in e){let t=e.thought===!0,n=!!e.thoughtSignature;d.push({type:t?`reasoning-file`:`file`,data:{type:`data`,data:e.inlineData.data},mediaType:e.inlineData.mimeType,providerMetadata:n?a({thoughtSignature:e.thoughtSignature}):void 0})}else if(`toolCall`in e&&e.toolCall){let t=e.toolCall.id??this.config.generateId();h=t,d.push({type:`tool-call`,toolCallId:t,toolName:`server:${e.toolCall.toolType}`,input:JSON.stringify(e.toolCall.args??{}),providerExecuted:!0,dynamic:!0,providerMetadata:e.thoughtSignature?a({thoughtSignature:e.thoughtSignature,serverToolCallId:t,serverToolType:e.toolCall.toolType}):a({serverToolCallId:t,serverToolType:e.toolCall.toolType})})}else if(`toolResponse`in e&&e.toolResponse){let t=h??e.toolResponse.id??this.config.generateId();d.push({type:`tool-result`,toolCallId:t,toolName:`server:${e.toolResponse.toolType}`,result:e.toolResponse.response??{},providerMetadata:e.thoughtSignature?a({thoughtSignature:e.thoughtSignature,serverToolCallId:t,serverToolType:e.toolResponse.toolType}):a({serverToolCallId:t,serverToolType:e.toolResponse.toolType})}),h=void 0}let g=lH({groundingMetadata:u.groundingMetadata,generateId:this.config.generateId})??[];for(let e of g)d.push(e);return{content:d,finishReason:{unified:tH({finishReason:u.finishReason,hasToolCalls:d.some(e=>e.type===`tool-call`&&!e.providerExecuted)}),raw:u.finishReason??void 0},usage:PV(p),warnings:n,providerMetadata:a({promptFeedback:c.promptFeedback??null,groundingMetadata:u.groundingMetadata??null,urlContextMetadata:u.urlContextMetadata??null,safetyRatings:u.safetyRatings??null,usageMetadata:p??null,finishMessage:u.finishMessage??null,serviceTier:p?.serviceTier??null}),request:{body:t},response:{headers:s,body:l}}}async doStream(e){let{args:t,warnings:n,providerOptionsNames:r,extraHeaders:i}=await this.getArgs(e,{isStreaming:!0}),a=e=>Object.fromEntries(r.map(t=>[t,e])),o=aM(this.config.headers?await VP(this.config.headers):void 0,e.headers,i),{responseHeaders:s,value:c}=await LP({url:`${this.config.baseURL}/${WV(this.modelId)}:streamGenerateContent?alt=sse`,headers:o,body:t,failedResponseHandler:OV,successfulResponseHandler:YP(vH),abortSignal:e.abortSignal,fetch:this.config.fetch}),l={unified:`other`,raw:void 0},u,d,f=null,p=null,m=this.config.generateId,h=!1,g=null,_=null,v=0,y=new Set,b,x,S=[],C=e=>{let t=S.pop();if(t==null)return;let{finalJSON:n,closingDelta:r}=t.accumulator.finalize();r.length>0&&e.enqueue({type:`tool-input-delta`,id:t.toolCallId,delta:r,providerMetadata:t.providerMetadata}),e.enqueue({type:`tool-input-end`,id:t.toolCallId,providerMetadata:t.providerMetadata}),e.enqueue({type:`tool-call`,toolCallId:t.toolCallId,toolName:t.toolName,input:n,providerMetadata:t.providerMetadata}),h=!0};return{stream:c.pipeThrough(new TransformStream({start(e){e.enqueue({type:`stream-start`,warnings:n})},transform(t,n){if(e.includeRawChunks&&n.enqueue({type:`raw`,rawValue:t.rawValue}),!t.success){n.enqueue({type:`error`,error:t.error});return}let r=t.value,i=r.usageMetadata;i!=null&&(u=i);let o=r.candidates?.[0];if(o==null)return;let s=o.content;o.groundingMetadata!=null&&(f=o.groundingMetadata),o.urlContextMetadata!=null&&(p=o.urlContextMetadata);let c=lH({groundingMetadata:o.groundingMetadata,generateId:m});if(c!=null)for(let e of c)e.sourceType===`url`&&!y.has(e.url)&&(y.add(e.url),n.enqueue(e));if(s!=null){let e=s.parts??[];for(let t of e)if(`executableCode`in t&&t.executableCode?.code){let e=m();b=e,n.enqueue({type:`tool-call`,toolCallId:e,toolName:`code_execution`,input:JSON.stringify(t.executableCode),providerExecuted:!0})}else if(`codeExecutionResult`in t&&t.codeExecutionResult){let e=b;e&&(n.enqueue({type:`tool-result`,toolCallId:e,toolName:`code_execution`,result:{outcome:t.codeExecutionResult.outcome,output:t.codeExecutionResult.output??``}}),b=void 0)}else if(`text`in t&&t.text!=null){let e=t.thoughtSignature?a({thoughtSignature:t.thoughtSignature}):void 0;t.text.length===0?e!=null&&g!==null&&n.enqueue({type:`text-delta`,id:g,delta:``,providerMetadata:e}):t.thought===!0?(g!==null&&(n.enqueue({type:`text-end`,id:g}),g=null),_===null&&(_=String(v++),n.enqueue({type:`reasoning-start`,id:_,providerMetadata:e})),n.enqueue({type:`reasoning-delta`,id:_,delta:t.text,providerMetadata:e})):(_!==null&&(n.enqueue({type:`reasoning-end`,id:_}),_=null),g===null&&(g=String(v++),n.enqueue({type:`text-start`,id:g,providerMetadata:e})),n.enqueue({type:`text-delta`,id:g,delta:t.text,providerMetadata:e}))}else if(`inlineData`in t){g!==null&&(n.enqueue({type:`text-end`,id:g}),g=null),_!==null&&(n.enqueue({type:`reasoning-end`,id:_}),_=null);let e=t.thought===!0,r=t.thoughtSignature?a({thoughtSignature:t.thoughtSignature}):void 0;n.enqueue({type:e?`reasoning-file`:`file`,mediaType:t.inlineData.mimeType,data:{type:`data`,data:t.inlineData.data},providerMetadata:r})}else if(`toolCall`in t&&t.toolCall){let e=t.toolCall.id??m();x=e;let r=a({...t.thoughtSignature?{thoughtSignature:t.thoughtSignature}:{},serverToolCallId:e,serverToolType:t.toolCall.toolType});n.enqueue({type:`tool-call`,toolCallId:e,toolName:`server:${t.toolCall.toolType}`,input:JSON.stringify(t.toolCall.args??{}),providerExecuted:!0,dynamic:!0,providerMetadata:r})}else if(`toolResponse`in t&&t.toolResponse){let e=x??t.toolResponse.id??m(),r=a({...t.thoughtSignature?{thoughtSignature:t.thoughtSignature}:{},serverToolCallId:e,serverToolType:t.toolResponse.toolType});n.enqueue({type:`tool-result`,toolCallId:e,toolName:`server:${t.toolResponse.toolType}`,result:t.toolResponse.response??{},providerMetadata:r}),x=void 0}for(let t of e){if(!(`functionCall`in t))continue;let e=t.thoughtSignature?a({thoughtSignature:t.thoughtSignature}):void 0,r=t.functionCall.partialArgs!=null||t.functionCall.name!=null&&t.functionCall.willContinue===!0,i=t.functionCall.name==null&&t.functionCall.args==null&&t.functionCall.partialArgs==null&&t.functionCall.willContinue==null,o=t.functionCall.name!=null&&t.functionCall.args!=null&&t.functionCall.partialArgs==null,s=t.functionCall.name!=null&&t.functionCall.args==null&&t.functionCall.partialArgs==null&&t.functionCall.willContinue!==!0;if(r){if(t.functionCall.name!=null){let r=t.functionCall.id??m(),i=new qV;if(S.push({toolCallId:r,toolName:t.functionCall.name,accumulator:i,providerMetadata:e}),n.enqueue({type:`tool-input-start`,id:r,toolName:t.functionCall.name,providerMetadata:e}),t.functionCall.partialArgs!=null){let a=t.functionCall.partialArgs,{textDelta:o}=i.processPartialArgs(a);o.length>0&&n.enqueue({type:`tool-input-delta`,id:r,delta:o,providerMetadata:e}),t.functionCall.willContinue!==!0&&a.every(e=>e.willContinue!==!0)&&C(n)}}else if(t.functionCall.partialArgs!=null&&S.length>0){let r=S[S.length-1],i=t.functionCall.partialArgs,{textDelta:a}=r.accumulator.processPartialArgs(i);a.length>0&&n.enqueue({type:`tool-input-delta`,id:r.toolCallId,delta:a,providerMetadata:e}),t.functionCall.willContinue!==!0&&i.every(e=>e.willContinue!==!0)&&C(n)}}else if(i&&S.length>0)C(n);else if(o){let r=t.functionCall.id??m(),i=t.functionCall.name,a=typeof t.functionCall.args==`string`?t.functionCall.args:JSON.stringify(t.functionCall.args??{});n.enqueue({type:`tool-input-start`,id:r,toolName:i,providerMetadata:e}),n.enqueue({type:`tool-input-delta`,id:r,delta:a,providerMetadata:e}),n.enqueue({type:`tool-input-end`,id:r,providerMetadata:e}),n.enqueue({type:`tool-call`,toolCallId:r,toolName:i,input:a,providerMetadata:e}),h=!0}else if(s){let r=t.functionCall.id??m(),i=t.functionCall.name;n.enqueue({type:`tool-input-start`,id:r,toolName:i,providerMetadata:e}),n.enqueue({type:`tool-input-end`,id:r,providerMetadata:e}),n.enqueue({type:`tool-call`,toolCallId:r,toolName:i,input:`{}`,providerMetadata:e}),h=!0}}}o.finishReason!=null&&(l={unified:tH({finishReason:o.finishReason,hasToolCalls:h}),raw:o.finishReason},d=a({promptFeedback:r.promptFeedback??null,groundingMetadata:f,urlContextMetadata:p,safetyRatings:o.safetyRatings??null,usageMetadata:i??null,finishMessage:o.finishMessage??null,serviceTier:u?.serviceTier??null}))},flush(e){g!==null&&e.enqueue({type:`text-end`,id:g}),_!==null&&e.enqueue({type:`reasoning-end`,id:_}),e.enqueue({type:`finish`,finishReason:l,usage:PV(u),providerMetadata:d})}})),response:{headers:s},request:{body:t}}}};function rH(e){return/gemini-3[\.\-]/i.test(e)||/gemini-3$/i.test(e)}function iH(){return 65536}function aH(e){let t=e.toLowerCase();return t.includes(`2.5-pro`)||t.includes(`gemini-3-pro-image`)?32768:24576}function oH({reasoning:e,modelId:t,warnings:n}){if(lN(e))return rH(t)&&!t.includes(`gemini-3-pro-image`)?sH({reasoning:e,warnings:n}):cH({reasoning:e,modelId:t,warnings:n})}function sH({reasoning:e,warnings:t}){if(e===`none`)return{thinkingLevel:`minimal`};let n=uN({reasoning:e,effortMap:{minimal:`minimal`,low:`low`,medium:`medium`,high:`high`,xhigh:`high`},warnings:t});if(n!=null)return{thinkingLevel:n}}function cH({reasoning:e,modelId:t,warnings:n}){if(e===`none`)return{thinkingBudget:0};let r=fN({reasoning:e,maxOutputTokens:iH(),maxReasoningBudget:aH(t),minReasoningBudget:0,warnings:n});if(r!=null)return{thinkingBudget:r}}function lH({groundingMetadata:e,generateId:t}){if(!e?.groundingChunks)return;let n=[];for(let r of e.groundingChunks)if(r.web!=null)n.push({type:`source`,sourceType:`url`,id:t(),url:r.web.uri,title:r.web.title??void 0});else if(r.image!=null)n.push({type:`source`,sourceType:`url`,id:t(),url:r.image.sourceUri,title:r.image.title??void 0});else if(r.retrievedContext!=null){let e=r.retrievedContext.uri,i=r.retrievedContext.fileSearchStore;if(e&&(e.startsWith(`http://`)||e.startsWith(`https://`)))n.push({type:`source`,sourceType:`url`,id:t(),url:e,title:r.retrievedContext.title??void 0});else if(e){let i=r.retrievedContext.title??`Unknown Document`,a=`application/octet-stream`,o;e.endsWith(`.pdf`)?(a=`application/pdf`,o=e.split(`/`).pop()):e.endsWith(`.txt`)?(a=`text/plain`,o=e.split(`/`).pop()):e.endsWith(`.docx`)?(a=`application/vnd.openxmlformats-officedocument.wordprocessingml.document`,o=e.split(`/`).pop()):e.endsWith(`.doc`)?(a=`application/msword`,o=e.split(`/`).pop()):(e.match(/\.(md|markdown)$/)&&(a=`text/markdown`),o=e.split(`/`).pop()),n.push({type:`source`,sourceType:`document`,id:t(),mediaType:a,title:i,filename:o})}else if(i){let e=r.retrievedContext.title??`Unknown Document`;n.push({type:`source`,sourceType:`document`,id:t(),mediaType:`application/octet-stream`,title:e,filename:i.split(`/`).pop()})}}else r.maps!=null&&r.maps.uri&&n.push({type:`source`,sourceType:`url`,id:t(),url:r.maps.uri,title:r.maps.title??void 0});return n.length>0?n:void 0}var uH=()=>G({webSearchQueries:W(H()).nullish(),imageSearchQueries:W(H()).nullish(),retrievalQueries:W(H()).nullish(),searchEntryPoint:G({renderedContent:H()}).nullish(),groundingChunks:W(G({web:G({uri:H(),title:H().nullish()}).nullish(),image:G({sourceUri:H(),imageUri:H(),title:H().nullish(),domain:H().nullish()}).nullish(),retrievedContext:G({uri:H().nullish(),title:H().nullish(),text:H().nullish(),fileSearchStore:H().nullish()}).nullish(),maps:G({uri:H().nullish(),title:H().nullish(),text:H().nullish(),placeId:H().nullish()}).nullish()})).nullish(),groundingSupports:W(G({segment:G({startIndex:U().nullish(),endIndex:U().nullish(),text:H().nullish()}).nullish(),segment_text:H().nullish(),groundingChunkIndices:W(U()).nullish(),supportChunkIndices:W(U()).nullish(),confidenceScores:W(U()).nullish(),confidenceScore:W(U()).nullish()})).nullish(),retrievalMetadata:Nk([G({webDynamicRetrievalScore:U()}),G({})]).nullish()}),dH=G({jsonPath:H(),stringValue:H().nullish(),numberValue:U().nullish(),boolValue:bk().nullish(),nullValue:Ek().nullish(),willContinue:bk().nullish()}),fH=()=>G({parts:W(Nk([G({functionCall:G({id:H().nullish(),name:H().nullish(),args:Ek().nullish(),partialArgs:W(dH).nullish(),willContinue:bk().nullish()}),thoughtSignature:H().nullish()}),G({inlineData:G({mimeType:H(),data:H()}),thought:bk().nullish(),thoughtSignature:H().nullish()}),G({toolCall:G({toolType:H(),args:Ek().nullish(),id:H()}),thoughtSignature:H().nullish()}),G({toolResponse:G({toolType:H(),response:Ek().nullish(),id:H()}),thoughtSignature:H().nullish()}),G({executableCode:G({language:H(),code:H()}).nullish(),codeExecutionResult:G({outcome:H(),output:H().nullish()}).nullish(),text:H().nullish(),thought:bk().nullish(),thoughtSignature:H().nullish()})])).nullish()}),pH=()=>G({category:H().nullish(),probability:H().nullish(),probabilityScore:U().nullish(),severity:H().nullish(),severityScore:U().nullish(),blocked:bk().nullish()}),mH=W(G({modality:H(),tokenCount:U()})).nullish(),hH=G({cachedContentTokenCount:U().nullish(),thoughtsTokenCount:U().nullish(),promptTokenCount:U().nullish(),candidatesTokenCount:U().nullish(),totalTokenCount:U().nullish(),trafficType:H().nullish(),serviceTier:H().nullish(),promptTokensDetails:mH,candidatesTokensDetails:mH}),gH=()=>G({urlMetadata:W(G({retrievedUrl:H(),urlRetrievalStatus:H()})).nullish()}),_H=xP(()=>kP(G({candidates:W(G({content:fH().nullish().or(G({}).strict()),finishReason:H().nullish(),finishMessage:H().nullish(),safetyRatings:W(pH()).nullish(),groundingMetadata:uH().nullish(),urlContextMetadata:gH().nullish()})),usageMetadata:hH.nullish(),promptFeedback:G({blockReason:H().nullish(),safetyRatings:W(pH()).nullish()}).nullish()}))),vH=xP(()=>kP(G({candidates:W(G({content:fH().nullish(),finishReason:H().nullish(),finishMessage:H().nullish(),safetyRatings:W(pH()).nullish(),groundingMetadata:uH().nullish(),urlContextMetadata:gH().nullish()})).nullish(),usageMetadata:hH.nullish(),promptFeedback:G({blockReason:H().nullish(),safetyRatings:W(pH()).nullish()}).nullish()}))),yH=BP({id:`google.code_execution`,inputSchema:G({language:H().describe(`The programming language of the code.`),code:H().describe(`The code to be executed.`)}),outputSchema:G({outcome:H().describe(`The outcome of the execution (e.g., "OUTCOME_OK").`),output:H().describe(`The output from the code execution.`)})}),bH=BP({id:`google.enterprise_web_search`,inputSchema:xP(()=>kP(G({}))),outputSchema:xP(()=>kP(G({})))});jk({fileSearchStoreNames:W(H()).describe("The names of the file_search_stores to retrieve from. Example: `fileSearchStores/my-file-search-store-123`"),topK:U().int().positive().describe(`The number of file search retrieval chunks to retrieve.`).optional(),metadataFilter:H().describe(`Metadata filter to apply to the file search retrieval documents. See https://google.aip.dev/160 for the syntax of the filter expression.`).optional()});var xH=BP({id:`google.file_search`,inputSchema:xP(()=>kP(G({}))),outputSchema:xP(()=>kP(G({})))}),SH=BP({id:`google.google_maps`,inputSchema:xP(()=>kP(G({}))),outputSchema:xP(()=>kP(G({})))}),CH=jk({searchTypes:G({webSearch:G({}).optional(),imageSearch:G({}).optional()}).optional(),timeRangeFilter:G({startTime:H(),endTime:H()}).optional()}),wH={googleSearch:BP({id:`google.google_search`,inputSchema:xP(()=>kP(G({}))),outputSchema:xP(()=>kP(G({})))}),enterpriseWebSearch:bH,googleMaps:SH,urlContext:BP({id:`google.url_context`,inputSchema:xP(()=>kP(G({}))),outputSchema:xP(()=>kP(G({})))}),fileSearch:xH,codeExecution:yH,vertexRagStore:BP({id:`google.vertex_rag_store`,inputSchema:xP(()=>kP(G({}))),outputSchema:xP(()=>kP(G({})))})},TH=xP(()=>kP(G({personGeneration:Vk([`dont_allow`,`allow_adult`,`allow_all`]).nullish(),aspectRatio:Vk([`1:1`,`3:4`,`4:3`,`9:16`,`16:9`]).nullish(),googleSearch:CH.optional()}))),EH=class e{constructor(e,t,n){this.modelId=e,this.settings=t,this.config=n,this.specificationVersion=`v4`}static[nM](e){return QP({modelId:e.modelId,config:e.config})}static[rM](t){return new e(t.modelId,{},t.config)}get maxImagesPerCall(){return this.settings.maxImagesPerCall==null?DH(this.modelId)?10:4:this.settings.maxImagesPerCall}get provider(){return this.config.provider}async doGenerate(e){return DH(this.modelId)?this.doGenerateGemini(e):this.doGenerateImagen(e)}async doGenerateImagen(e){var t;let{prompt:n,n:r=1,size:i,aspectRatio:a=`1:1`,seed:o,providerOptions:s,headers:c,abortSignal:l,files:u,mask:d}=e,f=[];if(u!=null&&u.length>0)throw Error(`Google Gemini API does not support image editing with Imagen models. Use Google Vertex AI (@ai-sdk/google-vertex) for image editing capabilities.`);if(d!=null)throw Error(`Google Gemini API does not support image editing with masks. Use Google Vertex AI (@ai-sdk/google-vertex) for image editing capabilities.`);i!=null&&f.push({type:`unsupported`,feature:`size`,details:"This model does not support the `size` option. Use `aspectRatio` instead."}),o!=null&&f.push({type:`unsupported`,feature:`seed`,details:"This model does not support the `seed` option through this provider."});let p=await FP({provider:`google`,providerOptions:s,schema:TH}),m=((t=this.config._internal)?.currentDate)?.call(t)??new Date,h={sampleCount:r};if(a!=null&&(h.aspectRatio=a),p){let{googleSearch:e,...t}=p;e!=null&&f.push({type:`unsupported`,feature:`googleSearch`,details:`Google Search grounding is only supported on Gemini image models.`}),Object.assign(h,t)}let g={instances:[{prompt:n}],parameters:h},{responseHeaders:_,value:v}=await LP({url:`${this.config.baseURL}/models/${this.modelId}:predict`,headers:aM(this.config.headers?await VP(this.config.headers):void 0,c),body:g,failedResponseHandler:OV,successfulResponseHandler:XP(OH),abortSignal:l,fetch:this.config.fetch});return{images:v.predictions.map(e=>e.bytesBase64Encoded),warnings:f,providerMetadata:{google:{images:v.predictions.map(()=>({}))}},response:{timestamp:m,modelId:this.modelId,headers:_}}}async doGenerateGemini(e){var t;let{prompt:n,n:r,size:i,aspectRatio:a,seed:o,providerOptions:s,headers:c,abortSignal:l,files:u,mask:d}=e,f=[];if(d!=null)throw Error(`Gemini image models do not support mask-based image editing.`);if(r!=null&&r>1)throw Error(`Gemini image models do not support generating a set number of images per call. Use n=1 or omit the n parameter.`);i!=null&&f.push({type:`unsupported`,feature:`size`,details:"This model does not support the `size` option. Use `aspectRatio` instead."});let p=[];if(n!=null&&p.push({type:`text`,text:n}),u!=null&&u.length>0)for(let e of u)e.type===`url`?p.push({type:`file`,data:{type:`url`,url:new URL(e.url)},mediaType:`image/*`}):p.push({type:`file`,data:{type:`data`,data:typeof e.data==`string`?e.data:new Uint8Array(e.data)},mediaType:e.mediaType});let m=[{role:`user`,content:p}],h=await FP({provider:`google`,providerOptions:s,schema:TH}),{googleSearch:g,..._}=s?.google??{},v=await new nH(this.modelId,{provider:this.config.provider,baseURL:this.config.baseURL,headers:this.config.headers??{},fetch:this.config.fetch,generateId:this.config.generateId??GM}).doGenerate({prompt:m,seed:o,providerOptions:{google:{responseModalities:[`IMAGE`],imageConfig:a?{aspectRatio:a}:void 0,..._}},tools:h?.googleSearch==null?void 0:[{type:`provider`,id:`google.google_search`,name:`google_search`,args:h.googleSearch}],headers:c,abortSignal:l}),y=((t=this.config._internal)?.currentDate)?.call(t)??new Date,b=[];for(let e of v.content)e.type===`file`&&e.mediaType.startsWith(`image/`)&&e.data.type===`data`&&b.push(uM(e.data.data));return{images:b,warnings:f,providerMetadata:{google:{...v.providerMetadata?.google??{},images:b.map(()=>({}))}},response:{timestamp:y,modelId:this.modelId,headers:v.response?.headers},usage:v.usage?{inputTokens:v.usage.inputTokens.total,outputTokens:v.usage.outputTokens.total,totalTokens:(v.usage.inputTokens.total??0)+(v.usage.outputTokens.total??0)}:void 0}}};function DH(e){return e.startsWith(`gemini-`)}var OH=xP(()=>kP(G({predictions:W(G({bytesBase64Encoded:H()})).default([])}))),kH=class{constructor(e){this.config=e,this.specificationVersion=`v4`}get provider(){return this.config.provider}async uploadFile(e){let t=await FP({provider:`google`,providerOptions:e.providerOptions,schema:jH}),n=this.config.headers(),r=this.config.fetch??globalThis.fetch,i=[];e.filename!=null&&i.push({type:`unsupported`,feature:`filename`});let a=dM(e.data),o=e.mediaType,s=t?.displayName,c=await r(`${this.config.baseURL.replace(/\/v1beta$/,``)}/upload/v1beta/files`,{method:`POST`,headers:{...n,"X-Goog-Upload-Protocol":`resumable`,"X-Goog-Upload-Command":`start`,"X-Goog-Upload-Header-Content-Length":String(a.length),"X-Goog-Upload-Header-Content-Type":o,"Content-Type":`application/json`},body:JSON.stringify({file:{...s==null?{}:{display_name:s}}})});if(!c.ok){let e=await c.text();throw new z({name:`GOOGLE_FILES_UPLOAD_ERROR`,message:`Failed to initiate resumable upload: ${c.status} ${e}`})}let l=c.headers.get(`x-goog-upload-url`);if(!l)throw new z({name:`GOOGLE_FILES_UPLOAD_ERROR`,message:`No upload URL returned from initiation request`});let u=await r(l,{method:`POST`,headers:{"Content-Length":String(a.length),"X-Goog-Upload-Offset":`0`,"X-Goog-Upload-Command":`upload, finalize`},body:a});if(!u.ok){let e=await u.text();throw new z({name:`GOOGLE_FILES_UPLOAD_ERROR`,message:`Failed to upload file data: ${u.status} ${e}`})}let d=(await u.json()).file,f=t?.pollIntervalMs??2e3,p=t?.pollTimeoutMs??3e5,m=Date.now();for(;d.state===`PROCESSING`;){if(Date.now()-m>p)throw new z({name:`GOOGLE_FILES_UPLOAD_TIMEOUT`,message:`File processing timed out after ${p}ms`});await fM(f);let{value:e}=await nN({url:`${this.config.baseURL}/${d.name}`,headers:aM(n),successfulResponseHandler:XP(AH),failedResponseHandler:OV,fetch:this.config.fetch});d=e}if(d.state===`FAILED`)throw new z({name:`GOOGLE_FILES_UPLOAD_FAILED`,message:`File processing failed for ${d.name}`});return{warnings:i,providerReference:{google:d.uri},mediaType:d.mimeType??e.mediaType,providerMetadata:{google:{name:d.name,displayName:d.displayName,mimeType:d.mimeType,sizeBytes:d.sizeBytes,state:d.state,uri:d.uri,...d.createTime==null?{}:{createTime:d.createTime},...d.updateTime==null?{}:{updateTime:d.updateTime},...d.expirationTime==null?{}:{expirationTime:d.expirationTime},...d.sha256Hash==null?{}:{sha256Hash:d.sha256Hash}}}}}},AH=xP(()=>kP(G({name:H(),displayName:H().nullish(),mimeType:H(),sizeBytes:H().nullish(),createTime:H().nullish(),updateTime:H().nullish(),expirationTime:H().nullish(),sha256Hash:H().nullish(),uri:H(),state:H()}))),jH=xP(()=>kP(jk({displayName:H().nullish(),pollIntervalMs:U().positive().nullish(),pollTimeoutMs:U().positive().nullish()}))),MH=xP(()=>kP(jk({pollIntervalMs:U().positive().nullish(),pollTimeoutMs:U().positive().nullish(),personGeneration:Vk([`dont_allow`,`allow_adult`,`allow_all`]).nullish(),negativePrompt:H().nullish(),referenceImages:W(G({bytesBase64Encoded:H().nullish(),gcsUri:H().nullish()})).nullish()})));function NH(e){return e.frameImages?.find(e=>e.frameType===`first_frame`)?.image}function PH(e){return NH(e)??e.image}function FH(e){return e.frameImages?.find(e=>e.frameType===`last_frame`)?.image}function IH(e){if(!(e.frameImages!=null&&e.frameImages.length>0))return e.inputReferences!=null&&e.inputReferences.length>0?e.inputReferences:void 0}function LH(e,t){if(e.type===`url`){if(e.url.startsWith(`gs://`))return{gcsUri:e.url,mimeType:`image/png`};t.push({type:`unsupported`,feature:`URL-based image input`,details:`Google Generative AI video models require base64-encoded images or GCS URIs. URL will be ignored.`});return}let n=typeof e.data==`string`?e.data:lM(e.data);return{inlineData:{mimeType:e.mediaType||`image/png`,data:n}}}function RH(e){return e.bytesBase64Encoded?{inlineData:{mimeType:`image/png`,data:e.bytesBase64Encoded}}:e.gcsUri?{gcsUri:e.gcsUri}:e}function zH(e,t){let n=LH(e,t);return n==null?void 0:{image:n,referenceType:`asset`}}var BH=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}get provider(){return this.config.provider}get maxVideosPerCall(){return 4}async doGenerate(e){var t;let n=((t=this.config._internal)?.currentDate)?.call(t)??new Date,r=[],i=await FP({provider:`google`,providerOptions:e.providerOptions,schema:MH}),a=[{}],o=a[0];e.prompt!=null&&(o.prompt=e.prompt);let s=PH(e);if(s!=null){let e=LH(s,r);e!=null&&(o.image=e)}let c=FH(e);if(c!=null){let e=LH(c,r);e!=null&&(o.lastFrame=e)}let l=IH(e);l==null?i?.referenceImages!=null&&(o.referenceImages=i.referenceImages.map(e=>RH(e))):o.referenceImages=l.flatMap(e=>{let t=zH(e,r);return t==null?[]:[t]});let u={sampleCount:e.n};if(e.aspectRatio&&(u.aspectRatio=e.aspectRatio),e.resolution&&(u.resolution={"1280x720":`720p`,"1920x1080":`1080p`,"3840x2160":`4k`}[e.resolution]||e.resolution),e.duration&&(u.durationSeconds=e.duration),e.seed&&(u.seed=e.seed),i!=null){let e=i;e.personGeneration!==void 0&&e.personGeneration!==null&&(u.personGeneration=e.personGeneration),e.negativePrompt!==void 0&&e.negativePrompt!==null&&(u.negativePrompt=e.negativePrompt);for(let[t,n]of Object.entries(e))[`pollIntervalMs`,`pollTimeoutMs`,`personGeneration`,`negativePrompt`,`referenceImages`].includes(t)||(u[t]=n)}let{value:d}=await LP({url:`${this.config.baseURL}/models/${this.modelId}:predictLongRunning`,headers:aM(await VP(this.config.headers),e.headers),body:{instances:a,parameters:u},successfulResponseHandler:XP(VH),failedResponseHandler:OV,abortSignal:e.abortSignal,fetch:this.config.fetch}),f=d.name;if(!f)throw new z({name:`GOOGLE_VIDEO_GENERATION_ERROR`,message:`No operation name returned from API`});let p=i?.pollIntervalMs??1e4,m=i?.pollTimeoutMs??6e5,h=Date.now(),g=d,_;for(;!g.done;){if(Date.now()-h>m)throw new z({name:`GOOGLE_VIDEO_GENERATION_TIMEOUT`,message:`Video generation timed out after ${m}ms`});if(await fM(p),e.abortSignal?.aborted)throw new z({name:`GOOGLE_VIDEO_GENERATION_ABORTED`,message:`Video generation request was aborted`});let{value:t,responseHeaders:n}=await nN({url:`${this.config.baseURL}/${f}`,headers:aM(await VP(this.config.headers),e.headers),successfulResponseHandler:XP(VH),failedResponseHandler:OV,abortSignal:e.abortSignal,fetch:this.config.fetch});g=t,_=n}if(g.error)throw new z({name:`GOOGLE_VIDEO_GENERATION_FAILED`,message:`Video generation failed: ${g.error.message}`});let v=g.response;if(!v?.generateVideoResponse?.generatedSamples||v.generateVideoResponse.generatedSamples.length===0)throw new z({name:`GOOGLE_VIDEO_GENERATION_ERROR`,message:`No videos in response. Response: ${JSON.stringify(g)}`});let y=[],b=[],x=(await VP(this.config.headers))?.[`x-goog-api-key`];for(let e of v.generateVideoResponse.generatedSamples)if(e.video?.uri){let t=x&&iN(e.video.uri,this.config.baseURL)?`${e.video.uri}${e.video.uri.includes(`?`)?`&`:`?`}key=${x}`:e.video.uri;y.push({type:`url`,url:t,mediaType:`video/mp4`}),b.push({uri:e.video.uri})}if(y.length===0)throw new z({name:`GOOGLE_VIDEO_GENERATION_ERROR`,message:`No valid videos in response`});return{videos:y,warnings:r,response:{timestamp:n,modelId:this.modelId,headers:_},providerMetadata:{google:{videos:b}}}}},VH=G({name:H().nullish(),done:bk().nullish(),error:G({code:U().nullish(),message:H(),status:H().nullish()}).nullish(),response:G({generateVideoResponse:G({generatedSamples:W(G({video:G({uri:H().nullish()}).nullish()})).nullish()}).nullish()}).nullish()}),HH=xP(()=>kP(G({candidates:W(G({content:G({parts:W(G({inlineData:G({mimeType:H().nullish(),data:H().nullish()}).nullish()})).nullish()}).nullish()})).nullish()}))),UH=G({prebuiltVoiceConfig:G({voiceName:H()})}),WH=xP(()=>kP(G({multiSpeakerVoiceConfig:G({speakerVoiceConfigs:W(G({speaker:H(),voiceConfig:UH}))}).optional()}))),GH=`Kore`,KH=24e3,qH=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}static[nM](e){return QP({modelId:e.modelId,config:e.config})}static[rM](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({text:e,voice:t=GH,outputFormat:n,instructions:r,speed:i,language:a,providerOptions:o}){let s=[],c=this.config.provider.includes(`vertex`)?[`googleVertex`,`vertex`]:[`google`],l;for(let e of c)if(l=await FP({provider:e,providerOptions:o,schema:WH}),l!=null)break;l==null&&!c.includes(`google`)&&(l=await FP({provider:`google`,providerOptions:o,schema:WH}));let u=l?.multiSpeakerVoiceConfig,d=u?{multiSpeakerVoiceConfig:u}:{voiceConfig:{prebuiltVoiceConfig:{voiceName:t}}},f=e;r!=null&&(u?s.push({type:`unsupported`,feature:`instructions`,details:"Google Gemini TTS ignores `instructions` when `multiSpeakerVoiceConfig` is set, because prepending them would break multi-speaker transcript parsing."}):f=`${r}: ${e}`),i!=null&&s.push({type:`unsupported`,feature:`speed`,details:"Google Gemini TTS models do not support the `speed` option. It was ignored."}),a!=null&&s.push({type:`unsupported`,feature:`language`,details:"Google Gemini TTS models do not support the `language` option. Language is detected automatically from the input text."});let p=`wav`;return n===`pcm`?p=`pcm`:n!=null&&n!==`wav`&&s.push({type:`unsupported`,feature:`outputFormat`,details:`Unsupported output format: ${n}. Using wav instead.`}),{requestBody:{contents:[{role:`user`,parts:[{text:f}]}],generationConfig:{responseModalities:[`AUDIO`],speechConfig:d}},warnings:s,outputFormat:p}}async doGenerate(e){var t;let n=((t=this.config._internal)?.currentDate)?.call(t)??new Date,{requestBody:r,warnings:i,outputFormat:a}=await this.getArgs(e),{value:o,responseHeaders:s,rawValue:c}=await LP({url:`${this.config.baseURL}/models/${this.modelId}:generateContent`,headers:aM(this.config.headers?await VP(this.config.headers):void 0,e.headers),body:r,failedResponseHandler:OV,successfulResponseHandler:XP(HH),abortSignal:e.abortSignal,fetch:this.config.fetch}),l,u;for(let e of o.candidates??[]){for(let t of e.content?.parts??[])if(t.inlineData?.data){l=t.inlineData.data,u=t.inlineData.mimeType??void 0;break}if(l!=null)break}let d=JH(u)??KH,f=l==null?new Uint8Array:cM(l),p=a===`pcm`||f.length===0?f:YH(f,d);return a===`pcm`&&f.length>0&&i.push({type:`unsupported`,feature:`outputFormat`,details:`Returning raw PCM audio (signed 16-bit little-endian, mono, ${d} Hz). These bytes have no container header and are not directly playable; see providerMetadata.google for the sample rate and mime type.`}),{audio:p,warnings:i,request:{body:JSON.stringify(r)},response:{timestamp:n,modelId:this.modelId,headers:s,body:c},providerMetadata:{google:{sampleRate:d,mimeType:u??null}}}}};function JH(e){if(e==null)return;let t=/rate=(\d+)/.exec(e);return t?Number.parseInt(t[1],10):void 0}function YH(e,t){let n=t*2,r=e.length,i=new ArrayBuffer(44+r),a=new DataView(i);XH(a,0,`RIFF`),a.setUint32(4,36+r,!0),XH(a,8,`WAVE`),XH(a,12,`fmt `),a.setUint32(16,16,!0),a.setUint16(20,1,!0),a.setUint16(22,1,!0),a.setUint32(24,t,!0),a.setUint32(28,n,!0),a.setUint16(32,2,!0),a.setUint16(34,16,!0),XH(a,36,`data`),a.setUint32(40,r,!0);let o=new Uint8Array(i);return o.set(e,44),o}function XH(e,t,n){for(let r=0;r<n.length;r++)e.setUint8(t+r,n.charCodeAt(r))}function ZH(e){if(e==null)return{inputTokens:{total:void 0,noCache:void 0,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:void 0,text:void 0,reasoning:void 0},raw:void 0};let t=e.total_input_tokens??0,n=e.total_output_tokens??0,r=e.total_thought_tokens??0,i=e.total_cached_tokens??0;return{inputTokens:{total:e.total_input_tokens??void 0,noCache:e.total_input_tokens==null?void 0:t-i,cacheRead:e.total_cached_tokens??void 0,cacheWrite:void 0},outputTokens:{total:e.total_output_tokens==null&&e.total_thought_tokens==null?void 0:n+r,text:e.total_output_tokens??void 0,reasoning:e.total_thought_tokens??void 0},raw:e}}function QH(e){let t=e?.output_tokens_by_modality;if(t==null)return;let n={};for(let e of t)e?.modality!=null&&e.tokens!=null&&(n[e.modality]=e.tokens);return Object.keys(n).length>0?n:void 0}var $H={pdf:`application/pdf`,txt:`text/plain`,md:`text/markdown`,markdown:`text/markdown`,doc:`application/msword`,docx:`application/vnd.openxmlformats-officedocument.wordprocessingml.document`};function eU(e){let t=e.toLowerCase();for(let[e,n]of Object.entries($H))if(t.endsWith(`.${e}`))return n;return`application/octet-stream`}function tU(e){let t=e.split(`/`),n=t[t.length-1];return n&&n.length>0?n:void 0}function nU({annotation:e,generateId:t}){switch(e.type){case`url_citation`:{let n=e;return n.url==null||n.url.length===0?void 0:{type:`source`,sourceType:`url`,id:t(),url:n.url,...n.title==null?{}:{title:n.title}}}case`file_citation`:{let n=e,r=n.url??n.document_uri??n.file_name;if(r==null||r.length===0)return;if(r.startsWith(`http://`)||r.startsWith(`https://`))return{type:`source`,sourceType:`url`,id:t(),url:r,...n.file_name==null?{}:{title:n.file_name}};let i=n.file_name??tU(r),a=eU(r);return{type:`source`,sourceType:`document`,id:t(),mediaType:a,title:n.file_name??i??r,...i==null?{}:{filename:i}}}case`place_citation`:{let n=e;return n.url==null||n.url.length===0?void 0:{type:`source`,sourceType:`url`,id:t(),url:n.url,...n.name==null?{}:{title:n.name}}}default:return}}function rU({block:e,generateId:t}){let n=[];switch(e.type){case`url_context_result`:{let r=e.result??[];for(let e of r)e?.url==null||e.url.length===0||e.status!=null&&e.status!==`success`||n.push({type:`source`,sourceType:`url`,id:t(),url:e.url});break}case`google_search_result`:{let r=e.result??[];for(let e of r){let r=e?.url;r==null||r.length===0||n.push({type:`source`,sourceType:`url`,id:t(),url:r,...e.title==null?{}:{title:e.title}})}break}case`google_maps_result`:{let r=e.result??[];for(let e of r)for(let r of e.places??[])r.url==null||r.url.length===0||n.push({type:`source`,sourceType:`url`,id:t(),url:r.url,...r.name==null?{}:{title:r.name}});break}case`file_search_result`:{let r=e.result??[];for(let e of r){if(typeof e!=`object`||!e)continue;let r=e,i=r.url??r.document_uri??r.file_name;if(i==null||i.length===0)continue;if(i.startsWith(`http://`)||i.startsWith(`https://`)){n.push({type:`source`,sourceType:`url`,id:t(),url:i,...r.title==null?{}:{title:r.title}});continue}let a=r.file_name??tU(i),o=eU(i);n.push({type:`source`,sourceType:`document`,id:t(),mediaType:o,title:r.title??r.file_name??a??i,...a==null?{}:{filename:a}})}break}default:break}return n}function iU({annotations:e,generateId:t}){if(e==null)return[];let n=new Set,r=[];for(let i of e){let e=nU({annotation:i,generateId:t});if(e==null)continue;let a=e.sourceType===`url`?`url:${e.url}`:`doc:${e.filename??e.title}`;n.has(a)||(n.add(a),r.push(e))}return r}function aU({status:e,hasFunctionCall:t}){switch(e){case`completed`:return t?`tool-calls`:`stop`;case`requires_action`:return`tool-calls`;case`failed`:return`error`;case`incomplete`:return`length`;case`cancelled`:return`other`;default:return`other`}}var oU=new Set([`google_search_call`,`code_execution_call`,`url_context_call`,`file_search_call`,`google_maps_call`,`mcp_server_tool_call`]),sU=new Set([`google_search_result`,`code_execution_result`,`url_context_result`,`file_search_result`,`google_maps_result`,`mcp_server_tool_result`]);function cU(e){return e.replace(/_call$/,``)}function lU(e){return e.replace(/_result$/,``)}function uU({warnings:e,generateId:t,includeRawChunks:n,serviceTier:r}){let i,a,o=r,s,c=!1,l=new Map,u=new Set;function d(e){return e.sourceType===`url`?`url:${e.url}`:`doc:${e.filename??e.title}`}return new TransformStream({start(t){t.enqueue({type:`stream-start`,warnings:e})},transform(e,r){if(n&&r.enqueue({type:`raw`,rawValue:e.rawValue}),!e.success){s=`failed`,r.enqueue({type:`error`,error:e.error});return}let f=e.value,p=f.event_type;switch(p){case`interaction.created`:{let e=f.interaction;i=e?.id!=null&&e.id.length>0?e.id:void 0;let t=e?.created,n;if(typeof t==`string`){let e=new Date(t);Number.isNaN(e.getTime())||(n=e)}r.enqueue({type:`response-metadata`,...i==null?{}:{id:i},modelId:e?.model,...n?{timestamp:n}:{}});break}case`step.start`:{let e=f,n=e.step,a=e.index,o=`${i??`interaction`}:${a}`,s=n?.type;if(s===`model_output`){let e=n?.content?.[0];if(e?.type===`text`){l.set(a,{kind:`text`,id:o,emittedSourceKeys:new Set}),r.enqueue({type:`text-start`,id:o});let n=iU({annotations:e.annotations,generateId:t});for(let e of n){let t=d(e);u.has(t)||(u.add(t),r.enqueue(e))}}else e?.type===`image`?l.set(a,{kind:`image`,id:o,...e.data==null?{}:{data:e.data},...e.mime_type==null?{}:{mimeType:e.mime_type},...e.uri==null?{}:{uri:e.uri}}):l.set(a,{kind:`pending_model_output`,id:o})}else if(s===`thought`){let e=n?.signature;if(l.set(a,{kind:`reasoning`,id:o,...e==null?{}:{signature:e}}),r.enqueue({type:`reasoning-start`,id:o}),Array.isArray(n?.summary))for(let e of n.summary)e?.type===`text`&&typeof e.text==`string`&&r.enqueue({type:`reasoning-delta`,id:o,delta:e.text})}else if(s===`function_call`){let e=n?.id??o,t=n?.name??`unknown`;c=!0;let i={kind:`function_call`,id:o,toolCallId:e,toolName:t,argumentsAccum:``,...n?.signature==null?{}:{signature:n.signature}};l.set(a,i),r.enqueue({type:`tool-input-start`,id:e,toolName:t})}else if(s!=null&&oU.has(s)){let e=s===`mcp_server_tool_call`?n?.name??`mcp_server_tool`:cU(s),t={kind:`builtin_tool_call`,id:o,blockType:s,toolCallId:n?.id??o,toolName:e,arguments:n?.arguments??{},callEmitted:!1};l.set(a,t)}else if(s!=null&&sU.has(s)){let e=s===`mcp_server_tool_result`?n?.name??`mcp_server_tool`:lU(s),t={kind:`builtin_tool_result`,id:o,blockType:s,callId:n?.call_id??o,toolName:e,result:n?.result??null,...n?.is_error==null?{}:{isError:n.is_error},resultEmitted:!1};l.set(a,t)}else l.set(a,{kind:`unknown`,id:o});break}case`step.delta`:{let e=f,n=l.get(e.index);if(n==null)break;let a=e.delta?.type;if(n.kind===`pending_model_output`&&(a===`text`||a===`text_annotation`||a===`text_annotation_delta`)){let t={kind:`text`,id:n.id,emittedSourceKeys:new Set};l.set(e.index,t),n=t,r.enqueue({type:`text-start`,id:t.id})}if(a===`image`&&(n.kind===`pending_model_output`||n.kind===`text`||n.kind===`image`)){let t=e.delta,a={};i!=null&&(a.interactionId=i);let o=Object.keys(a).length>0?{google:a}:void 0;t?.data!=null&&t.data.length>0?r.enqueue({type:`file`,mediaType:t.mime_type??`image/png`,data:{type:`data`,data:t.data},...o?{providerMetadata:o}:{}}):t?.uri!=null&&t.uri.length>0&&r.enqueue({type:`file`,mediaType:t.mime_type??`image/png`,data:{type:`url`,url:new URL(t.uri)},...o?{providerMetadata:o}:{}}),n.kind===`image`&&(n.data=void 0,n.uri=void 0);break}if(a===`video`&&(n.kind===`pending_model_output`||n.kind===`text`)){let t=e.delta,n={};i!=null&&(n.interactionId=i);let a=Object.keys(n).length>0?{google:n}:void 0;t?.data!=null&&t.data.length>0?r.enqueue({type:`file`,mediaType:t.mime_type??`video/mp4`,data:{type:`data`,data:t.data},...a?{providerMetadata:a}:{}}):t?.uri!=null&&t.uri.length>0&&r.enqueue({type:`file`,mediaType:t.mime_type??`video/mp4`,data:{type:`url`,url:new URL(t.uri)},...a?{providerMetadata:a}:{}});break}let o=e.delta;if(n.kind===`text`&&o?.type===`text`){let e=o.text??``;e.length>0&&r.enqueue({type:`text-delta`,id:n.id,delta:e})}else if(n.kind===`text`&&(o?.type===`text_annotation`||o?.type===`text_annotation_delta`)){let e=iU({annotations:o.annotations,generateId:t});for(let t of e){let e=d(t);u.has(e)||(u.add(e),n.emittedSourceKeys.add(e),r.enqueue(t))}}else if(n.kind===`image`&&o?.type===`image`)o.data!=null&&(n.data=o.data),o.mime_type!=null&&(n.mimeType=o.mime_type),o.uri!=null&&(n.uri=o.uri);else if(n.kind===`reasoning`){if(o?.type===`thought_summary`){let e=o.content;e?.type===`text`&&typeof e.text==`string`&&r.enqueue({type:`reasoning-delta`,id:n.id,delta:e.text})}else if(o?.type===`thought_signature`){let e=o.signature;e!=null&&(n.signature=e)}}else if(n.kind===`function_call`&&o?.type===`arguments_delta`){let e=typeof o.arguments==`string`?o.arguments:``;e.length>0&&(n.argumentsAccum+=e,r.enqueue({type:`tool-input-delta`,id:n.toolCallId,delta:e})),o.id!=null&&(n.toolCallId=o.id),o.signature!=null&&(n.signature=o.signature),c=!0}else n.kind===`builtin_tool_call`&&o?.type===n.blockType?(o.id!=null&&(n.toolCallId=o.id),o.arguments!=null&&typeof o.arguments==`object`&&(n.arguments=o.arguments),o.name!=null&&n.blockType===`mcp_server_tool_call`&&(n.toolName=o.name)):n.kind===`builtin_tool_result`&&o?.type===n.blockType&&(o.call_id!=null&&(n.callId=o.call_id),o.result!==void 0&&(n.result=o.result),o.is_error!=null&&(n.isError=o.is_error),o.name!=null&&n.blockType===`mcp_server_tool_result`&&(n.toolName=o.name));break}case`step.stop`:{let e=f,n=l.get(e.index);if(n==null)break;if(n.kind===`text`){let e=i==null?void 0:{google:{interactionId:i}};r.enqueue({type:`text-end`,id:n.id,...e?{providerMetadata:e}:{}})}else if(n.kind===`reasoning`){let e={};n.signature!=null&&(e.signature=n.signature),i!=null&&(e.interactionId=i);let t=Object.keys(e).length>0?{google:e}:void 0;r.enqueue({type:`reasoning-end`,id:n.id,...t?{providerMetadata:t}:{}})}else if(n.kind===`image`){let e={};i!=null&&(e.interactionId=i);let t=Object.keys(e).length>0?{google:e}:void 0;n.data!=null&&n.data.length>0?r.enqueue({type:`file`,mediaType:n.mimeType??`image/png`,data:{type:`data`,data:n.data},...t?{providerMetadata:t}:{}}):n.uri!=null&&n.uri.length>0&&r.enqueue({type:`file`,mediaType:n.mimeType??`image/png`,data:{type:`url`,url:new URL(n.uri)},...t?{providerMetadata:t}:{}})}else if(n.kind===`function_call`){let e=n.argumentsAccum.length>0?n.argumentsAccum:`{}`;r.enqueue({type:`tool-input-end`,id:n.toolCallId});let t={};n.signature!=null&&(t.signature=n.signature),i!=null&&(t.interactionId=i);let a=Object.keys(t).length>0?{google:t}:void 0;r.enqueue({type:`tool-call`,toolCallId:n.toolCallId,toolName:n.toolName,input:e,...a?{providerMetadata:a}:{}})}else if(n.kind===`builtin_tool_call`&&!n.callEmitted)r.enqueue({type:`tool-call`,toolCallId:n.toolCallId,toolName:n.toolName,input:JSON.stringify(n.arguments??{}),providerExecuted:!0}),n.callEmitted=!0;else if(n.kind===`builtin_tool_result`&&!n.resultEmitted){r.enqueue({type:`tool-result`,toolCallId:n.callId,toolName:n.toolName,result:n.result??null}),n.resultEmitted=!0;let e=rU({block:{type:n.blockType,call_id:n.callId,result:n.result},generateId:t});for(let t of e){let e=d(t);u.has(e)||(u.add(e),r.enqueue(t))}}l.delete(e.index);break}case`interaction.status_update`:case`interaction.in_progress`:case`interaction.requires_action`:{let e=f;s=e.status==null?p===`interaction.requires_action`?`requires_action`:`in_progress`:e.status;break}case`interaction.completed`:{let e=f.interaction;e?.id!=null&&e.id.length>0&&(i=e.id),e?.status!=null&&(s=e.status),e?.usage!=null&&(a=e.usage),e?.service_tier!=null&&(o=e.service_tier);break}case`error`:{let e=f;s=`failed`;let t=e.error??{message:`Unknown interaction error`};r.enqueue({type:`error`,error:t});break}default:break}},flush(e){let t={unified:aU({status:s,hasFunctionCall:c}),raw:s},n=QH(a),r={google:{...i==null?{}:{interactionId:i},...o==null?{}:{serviceTier:o},...n==null?{}:{outputTokensByModality:n}}};e.enqueue({type:`finish`,finishReason:t,usage:ZH(a),providerMetadata:r})}})}function dU({prompt:e,previousInteractionId:t,store:n,mediaResolution:r}){let i=[],a=t!=null&&n===!1,o=t!=null&&n!==!1;a&&i.push({type:`other`,message:`google.interactions: providerOptions.google.previousInteractionId was set together with store: false. These are incoherent (the prior interaction cannot be referenced when nothing was stored on the server); the full history will be sent and previous_interaction_id will still be emitted.`});let s=o?pU({prompt:e,previousInteractionId:t}):e,c=[],l=[];for(let e of s)switch(e.role){case`system`:c.push(e.content);break;case`user`:{let t=[];for(let n of e.content)if(n.type===`text`)t.push({type:`text`,text:n.text});else if(n.type===`file`){let e=fU({part:n,warnings:i,mediaResolution:r});e!=null&&t.push(e)}let n=_U(t);n.length>0&&l.push({type:`user_input`,content:n});break}case`assistant`:{let t=[],n=()=>{t.length>0&&(l.push({type:`model_output`,content:t}),t=[])};for(let a of e.content)if(a.type===`text`)t.push({type:`text`,text:a.text});else if(a.type===`reasoning`){n();let e=a.providerOptions?.google?.signature;l.push({type:`thought`,...e==null?{}:{signature:e},summary:a.text.length>0?[{type:`text`,text:a.text}]:void 0})}else if(a.type===`file`){let e=fU({part:a,warnings:i,mediaResolution:r});e!=null&&t.push(e)}else if(a.type===`tool-call`){n();let e=a.providerOptions?.google?.signature,t=typeof a.input==`string`?mU(a.input):a.input??{};l.push({type:`function_call`,id:a.toolCallId,name:a.toolName,arguments:t,...e==null?{}:{signature:e}})}else i.push({type:`other`,message:`google.interactions: unsupported assistant content part type "${a.type}"; part dropped.`});n();break}case`tool`:{let t=[];for(let n of e.content){if(n.type!==`tool-result`){i.push({type:`other`,message:`google.interactions: unsupported tool message part type "${n.type}"; part dropped.`});continue}let e=hU({toolCallId:n.toolCallId,toolName:n.toolName,output:n.output,signature:n.providerOptions?.google?.signature,warnings:i});t.push(e)}t.length>0&&l.push({type:`user_input`,content:t});break}}return{input:l,systemInstruction:c.length>0?c.join(`

`):void 0,warnings:i}}function fU({part:e,warnings:t,mediaResolution:n}){if(e.data.type===`text`)return{type:`text`,text:e.data.text};let r=CM(e.mediaType),i;switch(r){case`image`:i=`image`;break;case`audio`:i=`audio`;break;case`video`:i=`video`;break;case`application`:i=`document`;break;default:i=void 0}if(i==null){t.push({type:`other`,message:`google.interactions: unsupported file media type "${e.mediaType}"; part dropped.`});return}let a=n!=null&&(i===`image`||i===`video`)?{resolution:n}:{};switch(e.data.type){case`data`:{let t=HP({part:e});return{type:i,data:uM(e.data.data),mime_type:t,...a}}case`url`:return{type:i,uri:e.data.url.toString(),...wM(e.mediaType)?{mime_type:e.mediaType}:{},...a};case`reference`:{let t=UP({reference:e.data.reference,provider:`google`});return{type:i,uri:t,...wM(e.mediaType)?{mime_type:e.mediaType}:{},...a}}}}function pU({prompt:e,previousInteractionId:t}){let n=[],r=new Set;for(let i of e){if(i.role===`assistant`){if(i.content.some(e=>e.providerOptions?.google?.interactionId===t)){for(let e of i.content)e.type===`tool-call`&&r.add(e.toolCallId);continue}n.push(i);continue}if(i.role===`tool`){let e=i.content.filter(e=>e.type===`tool-result`?!r.has(e.toolCallId):!0);if(e.length===0)continue;n.push({...i,content:e});continue}n.push(i)}return n}function mU(e){try{let t=_N(e);return typeof t==`object`&&t&&!Array.isArray(t)?t:{value:t}}catch{return{value:e}}}function hU({toolCallId:e,toolName:t,output:n,signature:r,warnings:i}){let a={type:`function_result`,call_id:e,name:t,...r==null?{}:{signature:r}};switch(n.type){case`text`:return{...a,result:n.value};case`json`:return{...a,result:JSON.stringify(n.value)};case`error-text`:return{...a,is_error:!0,result:n.value};case`error-json`:return{...a,is_error:!0,result:JSON.stringify(n.value)};case`execution-denied`:return{...a,is_error:!0,result:n.reason??`Tool execution denied by user.`};case`content`:{let e=[];for(let t of n.value)if(t.type===`text`)e.push({type:`text`,text:t.text});else if(t.type===`file`){if(CM(t.mediaType)!==`image`){i.push({type:`other`,message:`google.interactions: tool-result file with mediaType "${t.mediaType}" is not supported (Interactions \`function_result.result\` accepts only text and image content); part dropped.`});continue}let n=gU({part:t,warnings:i});n!=null&&e.push(n)}else i.push({type:`other`,message:`google.interactions: tool-result content part type "${t.type}" is not supported; part dropped.`});return{...a,result:e}}}}function gU({part:e,warnings:t}){switch(e.data.type){case`data`:{let t=wM(e.mediaType)?e.mediaType:HP({part:{type:`file`,mediaType:e.mediaType,data:e.data}});return{type:`image`,data:uM(e.data.data),mime_type:t}}case`url`:return{type:`image`,uri:e.data.url.toString(),...wM(e.mediaType)?{mime_type:e.mediaType}:{}};case`reference`:return{type:`image`,uri:UP({reference:e.data.reference,provider:`google`}),...wM(e.mediaType)?{mime_type:e.mediaType}:{}};case`text`:t.push({type:`other`,message:'google.interactions: tool-result image part with `data.type === "text"` is not representable as an image; part dropped.'});return}}function _U(e){if(e.length<2)return e;let t=[];for(let n of e){let e=t[t.length-1];if(n.type===`text`&&e!=null&&e.type===`text`&&e.annotations==null&&n.annotations==null){let r={type:`text`,text:`${e.text}

${n.text}`};t[t.length-1]=r;continue}t.push(n)}return t}var vU=()=>G({modality:H().nullish(),tokens:U().nullish()}).loose(),yU=()=>G({total_input_tokens:U().nullish(),total_output_tokens:U().nullish(),total_thought_tokens:U().nullish(),total_cached_tokens:U().nullish(),total_tool_use_tokens:U().nullish(),total_tokens:U().nullish(),input_tokens_by_modality:W(vU()).nullish(),output_tokens_by_modality:W(vU()).nullish(),cached_tokens_by_modality:W(vU()).nullish(),tool_use_tokens_by_modality:W(vU()).nullish(),grounding_tool_count:W(G({type:H().nullish(),count:U().nullish()}).loose()).nullish()}).loose(),bU=()=>Vk([`in_progress`,`requires_action`,`completed`,`failed`,`cancelled`,`incomplete`]),xU=()=>Nk([G({type:K(`url_citation`),url:H().nullish(),title:H().nullish(),start_index:U().nullish(),end_index:U().nullish()}).loose(),G({type:K(`file_citation`),file_name:H().nullish(),document_uri:H().nullish(),url:H().nullish(),page_number:U().nullish(),media_id:H().nullish(),start_index:U().nullish(),end_index:U().nullish(),custom_metadata:zk(H(),Ek()).nullish()}).loose(),G({type:K(`place_citation`),name:H().nullish(),url:H().nullish(),place_id:H().nullish(),start_index:U().nullish(),end_index:U().nullish()}).loose(),G({type:H()}).loose()]),SU=()=>G({type:H(),text:H().nullish(),data:H().nullish(),mime_type:H().nullish()}).loose(),CU=()=>Nk([G({type:K(`text`),text:H(),annotations:W(xU()).nullish()}).loose(),G({type:K(`image`),data:H().nullish(),mime_type:H().nullish(),resolution:Vk([`low`,`medium`,`high`,`ultra_high`]).nullish(),uri:H().nullish()}).loose(),G({type:K(`video`),data:H().nullish(),mime_type:H().nullish(),uri:H().nullish()}).loose(),G({type:H()}).loose()]),wU=[`google_search_call`,`code_execution_call`,`url_context_call`,`file_search_call`,`google_maps_call`,`mcp_server_tool_call`],TU=[`google_search_result`,`code_execution_result`,`url_context_result`,`file_search_result`,`google_maps_result`,`mcp_server_tool_result`],EU=()=>Nk([G({type:K(`user_input`),content:W(CU()).nullish()}).loose(),G({type:K(`model_output`),content:W(CU()).nullish()}).loose(),G({type:K(`function_call`),id:H(),name:H(),arguments:zk(H(),Ek()).nullish(),signature:H().nullish()}).loose(),G({type:K(`thought`),signature:H().nullish(),summary:W(SU()).nullish()}).loose(),G({type:Vk(wU),id:H(),arguments:zk(H(),Ek()).nullish(),name:H().nullish(),server_name:H().nullish(),search_type:H().nullish(),signature:H().nullish()}).loose(),G({type:Vk(TU),call_id:H(),result:Ek().nullish(),is_error:bk().nullish(),name:H().nullish(),server_name:H().nullish(),signature:H().nullish()}).loose(),G({type:H()}).loose()]),DU=xP(()=>kP(G({id:H().nullish(),created:H().nullish(),updated:H().nullish(),status:bU(),model:H().nullish(),agent:H().nullish(),steps:W(EU()).nullish(),usage:yU().nullish(),service_tier:H().nullish(),previous_interaction_id:H().nullish(),response_modalities:W(H()).nullish()}).loose())),OU=xP(()=>kP((()=>{let e=bU(),t=xU(),n=SU(),r=G({event_type:K(`interaction.created`),event_id:H().nullish(),interaction:G({id:H().nullish(),created:H().nullish(),model:H().nullish(),agent:H().nullish(),status:e.nullish()}).loose()}).loose(),i=G({event_type:K(`step.start`),event_id:H().nullish(),index:U(),step:EU()}).loose(),a=G({type:K(`text`),text:H()}).loose(),o=G({type:K(`thought_summary`),content:n.nullish()}).loose(),s=G({type:K(`thought_signature`),signature:H().nullish()}).loose(),c=G({type:K(`arguments_delta`),arguments:H().nullish(),id:H().nullish(),signature:H().nullish()}).loose(),l=G({type:Vk([`text_annotation_delta`,`text_annotation`]),annotations:W(t).nullish()}).loose(),u=Nk([a,G({type:K(`image`),data:H().nullish(),mime_type:H().nullish(),resolution:Vk([`low`,`medium`,`high`,`ultra_high`]).nullish(),uri:H().nullish()}).loose(),G({type:K(`video`),data:H().nullish(),mime_type:H().nullish(),uri:H().nullish()}).loose(),o,s,c,l,G({type:Vk(wU),id:H().nullish(),arguments:zk(H(),Ek()).nullish(),name:H().nullish(),server_name:H().nullish(),search_type:H().nullish(),signature:H().nullish()}).loose(),G({type:Vk(TU),call_id:H().nullish(),result:Ek().nullish(),is_error:bk().nullish(),name:H().nullish(),server_name:H().nullish(),signature:H().nullish()}).loose(),G({type:H()}).loose()]);return Nk([r,i,G({event_type:K(`step.delta`),event_id:H().nullish(),index:U(),delta:u}).loose(),G({event_type:K(`step.stop`),event_id:H().nullish(),index:U()}).loose(),G({event_type:K(`interaction.status_update`),event_id:H().nullish(),interaction_id:H().nullish(),status:e.nullish()}).loose(),G({event_type:K(`interaction.in_progress`),event_id:H().nullish(),interaction_id:H().nullish(),status:e.nullish()}).loose(),G({event_type:K(`interaction.requires_action`),event_id:H().nullish(),interaction_id:H().nullish(),status:e.nullish()}).loose(),G({event_type:K(`interaction.completed`),event_id:H().nullish(),interaction:G({id:H().nullish(),status:e.nullish(),usage:yU().nullish(),service_tier:H().nullish()}).loose()}).loose(),G({event_type:K(`error`),event_id:H().nullish(),error:G({code:H().nullish(),message:H().nullish()}).loose().nullish()}).loose(),G({event_type:H()}).loose()])})())),kU=xP(()=>kP(G({previousInteractionId:H().nullish(),store:bk().nullish(),agent:H().nullish(),agentConfig:Nk([G({type:K(`dynamic`)}).loose(),G({type:K(`deep-research`),thinkingSummaries:Vk([`auto`,`none`]).nullish(),visualization:Vk([`off`,`auto`]).nullish(),collaborativePlanning:bk().nullish()})]).nullish(),thinkingLevel:Vk([`minimal`,`low`,`medium`,`high`]).nullish(),thinkingSummaries:Vk([`auto`,`none`]).nullish(),responseFormat:W(Nk([G({type:K(`text`),mimeType:H().nullish(),schema:Ek().nullish()}).loose(),G({type:K(`image`),mimeType:H().nullish(),aspectRatio:Vk([`1:1`,`2:3`,`3:2`,`3:4`,`4:3`,`4:5`,`5:4`,`9:16`,`16:9`,`21:9`,`1:8`,`8:1`,`1:4`,`4:1`]).nullish(),imageSize:Vk([`1K`,`2K`,`4K`,`512`]).nullish()}).loose(),G({type:K(`audio`),mimeType:H().nullish()}).loose()])).nullish(),imageConfig:G({aspectRatio:Vk([`1:1`,`2:3`,`3:2`,`3:4`,`4:3`,`4:5`,`5:4`,`9:16`,`16:9`,`21:9`,`1:8`,`8:1`,`1:4`,`4:1`]).nullish(),imageSize:Vk([`1K`,`2K`,`4K`,`512`]).nullish()}).nullish(),mediaResolution:Vk([`low`,`medium`,`high`,`ultra_high`]).nullish(),responseModalities:W(Vk([`text`,`image`,`audio`,`video`,`document`])).nullish(),serviceTier:Vk([`flex`,`standard`,`priority`]).nullish(),systemInstruction:H().nullish(),signature:H().nullish(),interactionId:H().nullish(),pollingTimeoutMs:U().int().positive().nullish(),background:bk().nullish(),environment:Nk([H(),G({type:K(`remote`),sources:W(Nk([G({type:K(`gcs`),source:H(),target:H().nullish()}),G({type:K(`repository`),source:H(),target:H().nullish()}),G({type:K(`inline`),content:H(),target:H()})])).nullish(),network:Nk([K(`disabled`),G({allowlist:W(G({domain:H(),transform:W(zk(H(),H())).nullish()}))})]).nullish()})]).nullish()})));function AU({signature:e,interactionId:t}){let n={};return e!=null&&(n.signature=e),t!=null&&(n.interactionId=t),Object.keys(n).length>0?{providerMetadata:{google:n}}:{}}var jU=new Set([`google_search_call`,`code_execution_call`,`url_context_call`,`file_search_call`,`google_maps_call`,`mcp_server_tool_call`]),MU=new Set([`google_search_result`,`code_execution_result`,`url_context_result`,`file_search_result`,`google_maps_result`,`mcp_server_tool_result`]);function NU(e){return e.replace(/_call$/,``)}function PU(e){return e.replace(/_result$/,``)}function FU({steps:e,generateId:t,interactionId:n}){let r=[],i=!1;if(e==null)return{content:r,hasFunctionCall:i};for(let a of e){if(typeof a!=`object`||!a)continue;let e=a.type;if(typeof e==`string`)switch(e){case`user_input`:break;case`model_output`:{let e=a.content??[];for(let i of e){if(typeof i!=`object`||!i)continue;let e=i.type;if(e===`text`){let e=i.text??``,a=i.annotations;r.push({type:`text`,text:e,...AU({interactionId:n})});let o=iU({annotations:a,generateId:t});for(let e of o)r.push(e)}else if(e===`image`){let e=i;e.data!=null&&e.data.length>0?r.push({type:`file`,mediaType:e.mime_type??`image/png`,data:{type:`data`,data:e.data},...AU({interactionId:n})}):e.uri!=null&&e.uri.length>0&&r.push({type:`file`,mediaType:e.mime_type??`image/png`,data:{type:`url`,url:new URL(e.uri)},...AU({interactionId:n})})}else if(e===`video`){let e=i;e.data!=null&&e.data.length>0?r.push({type:`file`,mediaType:e.mime_type??`video/mp4`,data:{type:`data`,data:e.data},...AU({interactionId:n})}):e.uri!=null&&e.uri.length>0&&r.push({type:`file`,mediaType:e.mime_type??`video/mp4`,data:{type:`url`,url:new URL(e.uri)},...AU({interactionId:n})})}}break}case`thought`:{let e=a,t=(Array.isArray(e.summary)?e.summary:[]).filter(e=>e?.type===`text`&&typeof e.text==`string`).map(e=>e.text).join(`
`);r.push({type:`reasoning`,text:t,...AU({signature:e.signature,interactionId:n})});break}case`function_call`:{i=!0;let e=a;r.push({type:`tool-call`,toolCallId:e.id,toolName:e.name,input:JSON.stringify(e.arguments??{}),...AU({signature:e.signature,interactionId:n})});break}default:if(jU.has(e)){let n=a,i=e===`mcp_server_tool_call`?n.name??`mcp_server_tool`:NU(e),o=JSON.stringify(n.arguments??{});r.push({type:`tool-call`,toolCallId:n.id??t(),toolName:i,input:o,providerExecuted:!0})}else if(MU.has(e)){let n=a,i=e===`mcp_server_tool_result`?n.name??`mcp_server_tool`:PU(e);r.push({type:`tool-result`,toolCallId:n.call_id??t(),toolName:i,result:n.result??null});let o=rU({block:a,generateId:t});for(let e of o)r.push(e)}break}}return{content:r,hasFunctionCall:i}}var IU=()=>globalThis.fetch;async function LU({baseURL:e,interactionId:t,headers:n,fetch:r=IU()}){if(t==null||t.length===0)return;let i=`${e}/interactions/${encodeURIComponent(t)}/cancel`;try{let e=await r(i,{method:`POST`,headers:$M(aM({"Content-Type":`application/json`},n),ZM()),body:`{}`});try{await e.text()}catch{}}catch{}}var RU=new Set([`completed`,`failed`,`cancelled`,`incomplete`]);function zU(e){return e!=null&&RU.has(e)}var BU=1e3,VU=1e4,HU=1800*1e3;async function UU({baseURL:e,interactionId:t,headers:n,fetch:r,abortSignal:i,initialDelayMs:a=BU,maxDelayMs:o=VU,timeoutMs:s=HU}){if(t==null||t.length===0)throw Error(`google.interactions: cannot poll a background interaction without an id. The POST response did not include an interaction id.`);let c=Date.now(),l=a,u=`${e}/interactions/${encodeURIComponent(t)}`,d=()=>LU({baseURL:e,interactionId:t,headers:n,fetch:r});try{for(;;){if(i?.aborted)throw await d(),new DOMException(`Polling was aborted`,`AbortError`);if(Date.now()-c>s)throw Error(`google.interactions: timed out polling interaction ${t} after ${s}ms.`);await fM(l,{abortSignal:i});let{value:e,rawValue:a,responseHeaders:f}=await nN({url:u,headers:n,failedResponseHandler:OV,successfulResponseHandler:XP(DU),abortSignal:i,fetch:r});if(zU(e.status))return{response:e,rawResponse:a,responseHeaders:f};l=Math.min(l*2,o)}}catch(e){throw KM(e)&&await d(),e}}function WU({tools:e,toolChoice:t}){let n=[],r=e?.length?e:void 0;if(r==null)return{tools:void 0,toolChoice:void 0,toolWarnings:n};let i=[];for(let e of r){if(e.type===`function`){i.push({type:`function`,name:e.name,description:e.description??``,parameters:e.inputSchema});continue}if(e.type===`provider`){let t=e.args??{};switch(e.id){case`google.google_search`:{let e=t.searchTypes,n;if(typeof e==`object`&&e){let t=[];e.webSearch!=null&&t.push(`web_search`),e.imageSearch!=null&&t.push(`image_search`),t.length>0&&(n=t)}i.push({type:`google_search`,...n==null?{}:{search_types:n}});break}case`google.code_execution`:i.push({type:`code_execution`});break;case`google.url_context`:i.push({type:`url_context`});break;case`google.file_search`:i.push({type:`file_search`,...t.fileSearchStoreNames==null?{}:{file_search_store_names:t.fileSearchStoreNames},...t.topK==null?{}:{top_k:t.topK},...t.metadataFilter==null?{}:{metadata_filter:t.metadataFilter}});break;case`google.google_maps`:i.push({type:`google_maps`,...t.latitude==null?{}:{latitude:t.latitude},...t.longitude==null?{}:{longitude:t.longitude},...t.enableWidget==null?{}:{enable_widget:t.enableWidget}});break;case`google.computer_use`:i.push({type:`computer_use`,environment:t.environment??`browser`,...t.excludedPredefinedFunctions==null?{}:{excludedPredefinedFunctions:t.excludedPredefinedFunctions}});break;case`google.mcp_server`:i.push({type:`mcp_server`,...t.name==null?{}:{name:t.name},...t.url==null?{}:{url:t.url},...t.headers==null?{}:{headers:t.headers},...t.allowedTools==null?{}:{allowed_tools:t.allowedTools}});break;case`google.retrieval`:{let e=t.vertexAiSearchConfig??void 0;i.push({type:`retrieval`,...t.retrievalTypes==null?{retrieval_types:[`vertex_ai_search`]}:{retrieval_types:t.retrievalTypes},...e==null?{}:{vertex_ai_search_config:e}});break}default:n.push({type:`unsupported`,feature:`provider-defined tool ${e.id}`,details:`provider-defined tool ${e.id} is not supported by google.interactions; tool dropped.`});break}continue}n.push({type:`unsupported`,feature:`tool of type ${e.type}`,details:`Only function tools and google.* provider-defined tools are supported by google.interactions; tool dropped.`})}let a=i.some(e=>e.type===`function`),o;if(t!=null&&a)switch(t.type){case`auto`:o=`auto`;break;case`required`:o=`any`;break;case`none`:o=`none`;break;case`tool`:o={allowed_tools:{mode:`validated`,tools:[t.toolName]}};break}return{tools:i.length>0?i:void 0,toolChoice:o,toolWarnings:n}}var GU=3,KU=500;function qU({baseURL:e,interactionId:t,headers:n,fetch:r,abortSignal:i,maxRetries:a=GU,retryDelayMs:o=KU}){if(t.length===0)throw Error(`google.interactions: cannot stream a background interaction without an id.`);let s={...n,accept:`text/event-stream`},c,l=!1,u=0,d=!1,f,p=new AbortController,m=()=>p.abort();i!=null&&(i.aborted?p.abort():i.addEventListener(`abort`,m,{once:!0}));let h=p.signal;function g(){let n=`${e}/interactions/${encodeURIComponent(t)}`,r=new URLSearchParams({stream:`true`});return c!=null&&r.set(`last_event_id`,c),`${n}?${r.toString()}`}async function _(){let{value:e}=await nN({url:g(),headers:s,failedResponseHandler:OV,successfulResponseHandler:YP(OU),abortSignal:h,fetch:r});return e.getReader()}return new ReadableStream({async start(s){try{for(;!l&&!h.aborted;){if(f==null)try{f=await _(),d=!1}catch(e){if(KM(e)||h.aborted){s.error(e);return}if(u++,u>=a){s.error(e);return}await fM(o*u,{abortSignal:h});continue}try{let{done:e,value:t}=await f.read();if(e){if(f=void 0,l)break;if(d)u=0;else{if(u++,u>=a){s.error(Error(`google.interactions: SSE stream closed without producing any events.`));return}await fM(o*u,{abortSignal:h})}continue}if(d=!0,t.success){let e=t.value;typeof e.event_id==`string`&&e.event_id.length>0&&(c=e.event_id),(e.event_type===`interaction.completed`||e.event_type===`error`)&&(l=!0)}s.enqueue(t)}catch(e){if(KM(e)||h.aborted){s.error(e);return}if(f=void 0,u++,u>=a){s.error(e);return}await fM(o*u,{abortSignal:h})}}s.close()}catch(e){s.error(e)}finally{i?.removeEventListener(`abort`,m),f?.cancel().catch(()=>{}),f=void 0,h.aborted&&!l&&await LU({baseURL:e,interactionId:t,headers:n,fetch:r})}},cancel(){p.abort(),f?.cancel().catch(()=>{}),f=void 0}})}function JU({response:e,warnings:t,generateId:n,includeRawChunks:r,headerServiceTier:i}){return new ReadableStream({start(a){a.enqueue({type:`stream-start`,warnings:t});let o=typeof e.id==`string`&&e.id.length>0?e.id:void 0,s,c=e.created;if(typeof c==`string`){let e=new Date(c);Number.isNaN(e.getTime())||(s=e)}a.enqueue({type:`response-metadata`,...o==null?{}:{id:o},modelId:e.model??void 0,...s?{timestamp:s}:{}}),r&&a.enqueue({type:`raw`,rawValue:e});let{content:l,hasFunctionCall:u}=FU({steps:e.steps??null,generateId:n,interactionId:o}),d=0,f=()=>`${o??`agent`}:${d++}`;for(let e of l)switch(e.type){case`text`:{let t=f(),n=e.providerMetadata;a.enqueue({type:`text-start`,id:t}),e.text.length>0&&a.enqueue({type:`text-delta`,id:t,delta:e.text}),a.enqueue({type:`text-end`,id:t,...n?{providerMetadata:n}:{}});break}case`reasoning`:{let t=f(),n=e.providerMetadata;a.enqueue({type:`reasoning-start`,id:t}),e.text.length>0&&a.enqueue({type:`reasoning-delta`,id:t,delta:e.text}),a.enqueue({type:`reasoning-end`,id:t,...n?{providerMetadata:n}:{}});break}case`tool-call`:{let t=e.providerMetadata;a.enqueue({type:`tool-input-start`,id:e.toolCallId,toolName:e.toolName,...e.providerExecuted?{providerExecuted:e.providerExecuted}:{}}),a.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:e.input}),a.enqueue({type:`tool-input-end`,id:e.toolCallId}),a.enqueue({type:`tool-call`,toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,...e.providerExecuted?{providerExecuted:e.providerExecuted}:{},...t?{providerMetadata:t}:{}});break}case`tool-result`:a.enqueue({type:`tool-result`,toolCallId:e.toolCallId,toolName:e.toolName,result:e.result});break;case`source`:case`file`:a.enqueue(e);break;default:break}let p=e.service_tier??i,m={unified:aU({status:e.status,hasFunctionCall:u}),raw:e.status},h={google:{...o==null?{}:{interactionId:o},...p==null?{}:{serviceTier:p}}};a.enqueue({type:`finish`,finishReason:m,usage:ZH(e.usage),providerMetadata:h}),a.close()}})}var YU=class e{constructor(e,t){this.specificationVersion=`v4`,typeof e==`string`?(this.modelId=e,this.agent=void 0):`managedAgent`in e?(this.modelId=e.managedAgent,this.agent=e.managedAgent):(this.modelId=e.agent,this.agent=e.agent),this.config=t}static[nM](e){return{...QP({modelId:e.modelId,config:e.config}),agent:e.agent}}static[rM](t){return new e(t.agent==null?t.modelId:{agent:t.agent},t.config)}get provider(){return this.config.provider}get supportedUrls(){return this.config.supportedUrls?this.config.supportedUrls():{"image/*":[/^https?:\/\/.+/],"application/pdf":[/^https?:\/\/.+/],"audio/*":[/^https?:\/\/.+/],"video/*":[/^https?:\/\/(www\.)?youtube\.com\/watch\?v=.+/,/^https?:\/\/youtu\.be\/.+/,/^gs:\/\/.+/]}}async getArgs(e){let t=[],n=await FP({provider:`google`,providerOptions:e.providerOptions,schema:kU}),r=this.agent!=null,i=e.tools!=null&&e.tools.length>0,a,o;if(i&&r)t.push({type:`other`,message:`google.interactions: tools are not supported when an agent is set; tools will be omitted from the request body.`});else if(i){let n=WU({tools:e.tools,toolChoice:e.toolChoice});a=n.tools,o=n.toolChoice,t.push(...n.toolWarnings)}let s=[];if(e.responseFormat?.type===`json`)if(r)t.push({type:`other`,message:`google.interactions: structured output (responseFormat) is not supported when an agent is set; responseFormat will be ignored.`});else{let t={type:`text`,mime_type:`application/json`,...e.responseFormat.schema==null?{}:{schema:e.responseFormat.schema}};s.push(t)}if(n?.responseFormat!=null)for(let e of n.responseFormat)e.type===`text`?s.push(XU({type:`text`,mime_type:e.mimeType??void 0,schema:e.schema??void 0})):e.type===`image`?s.push(XU({type:`image`,mime_type:e.mimeType??void 0,aspect_ratio:e.aspectRatio??void 0,image_size:e.imageSize??void 0})):e.type===`audio`&&s.push(XU({type:`audio`,mime_type:e.mimeType??void 0}));let{input:c,systemInstruction:l,warnings:u}=dU({prompt:e.prompt,previousInteractionId:n?.previousInteractionId??void 0,store:n?.store??void 0,mediaResolution:n?.mediaResolution??void 0});t.push(...u);let d=l,f=n?.systemInstruction??void 0;d!=null&&f!=null?t.push({type:`other`,message:`google.interactions: both AI SDK system message and providerOptions.google.systemInstruction were set; using the AI SDK system message.`}):d==null&&f!=null&&(d=f);let p;if(r){let r=[];e.temperature!=null&&r.push(`temperature`),e.topP!=null&&r.push(`topP`),e.seed!=null&&r.push(`seed`),e.stopSequences!=null&&e.stopSequences.length>0&&r.push(`stopSequences`),e.maxOutputTokens!=null&&r.push(`maxOutputTokens`),n?.thinkingLevel!=null&&r.push(`thinkingLevel`),n?.thinkingSummaries!=null&&r.push(`thinkingSummaries`),n?.imageConfig!=null&&r.push(`imageConfig`),r.length>0&&t.push({type:`other`,message:`google.interactions: ${r.join(`, `)} ${r.length===1?`is`:`are`} not supported when an agent is set; use providerOptions.google.agentConfig instead. Dropped from the request body.`}),p=void 0}else if(p=XU({temperature:e.temperature??void 0,top_p:e.topP??void 0,seed:e.seed??void 0,stop_sequences:e.stopSequences!=null&&e.stopSequences.length>0?e.stopSequences:void 0,max_output_tokens:e.maxOutputTokens??void 0,thinking_level:n?.thinkingLevel??void 0,thinking_summaries:n?.thinkingSummaries??void 0,tool_choice:o}),n?.imageConfig!=null){let e=s.some(e=>e.type===`image`);t.push({type:`other`,message:e?`google.interactions: providerOptions.google.imageConfig is deprecated and was ignored because providerOptions.google.responseFormat already supplies an image entry. Use responseFormat exclusively.`:`google.interactions: providerOptions.google.imageConfig is deprecated. Use providerOptions.google.responseFormat with a { type: "image", ... } entry instead.`}),e||s.push({type:`image`,mime_type:`image/png`,...n.imageConfig.aspectRatio==null?{}:{aspect_ratio:n.imageConfig.aspectRatio},...n.imageConfig.imageSize==null?{}:{image_size:n.imageConfig.imageSize}})}let m;if(r&&n?.agentConfig!=null){let e=n.agentConfig;e.type===`deep-research`?m=XU({type:`deep-research`,thinking_summaries:e.thinkingSummaries??void 0,visualization:e.visualization??void 0,collaborative_planning:e.collaborativePlanning??void 0}):e.type===`dynamic`&&(m={type:`dynamic`})}let h;if(n?.environment!=null)if(!r)t.push({type:`other`,message:`google.interactions: environment is only supported when an agent is set; environment will be omitted from the request body.`});else if(typeof n.environment==`string`)h=n.environment;else{let e=n.environment,t=e.sources?.map(e=>e.type===`inline`?{type:`inline`,content:e.content,target:e.target}:XU({type:e.type,source:e.source,target:e.target??void 0})),r;e.network===`disabled`?r=`disabled`:e.network!=null&&(r={allowlist:e.network.allowlist.map(e=>XU({domain:e.domain,transform:e.transform??void 0}))}),h=XU({type:`remote`,sources:t!=null&&t.length>0?t:void 0,network:r})}return{args:XU({...r?{agent:this.agent}:{model:this.modelId},input:c,system_instruction:d,tools:a,response_format:s.length>0?s:void 0,response_modalities:n?.responseModalities==null?void 0:n.responseModalities,previous_interaction_id:n?.previousInteractionId??void 0,service_tier:n?.serviceTier??void 0,store:n?.store??void 0,generation_config:p!=null&&Object.keys(p).length>0?p:void 0,agent_config:m,environment:h,background:n?.background??void 0}),warnings:t,isAgent:r,isBackground:n?.background===!0,pollingTimeoutMs:n?.pollingTimeoutMs??void 0}}async doGenerate(e){let{args:t,warnings:n,isAgent:r,pollingTimeoutMs:i}=await this.getArgs(e),a=`${this.config.baseURL}/interactions`,o=aM(this.config.headers?await VP(this.config.headers):void 0,e.headers),{responseHeaders:s,value:c,rawValue:l}=await LP({url:a,headers:o,body:t,failedResponseHandler:OV,successfulResponseHandler:XP(DU),abortSignal:e.abortSignal,fetch:this.config.fetch});if(r&&!zU(c.status)){let t=await UU({baseURL:this.config.baseURL,interactionId:c.id,headers:o,fetch:this.config.fetch,abortSignal:e.abortSignal,timeoutMs:i});c=t.response,l=t.rawResponse,s=t.responseHeaders??s}let u=typeof c.id==`string`&&c.id.length>0?c.id:void 0,{content:d,hasFunctionCall:f}=FU({steps:c.steps??null,generateId:this.config.generateId??GM,interactionId:u}),p={unified:aU({status:c.status,hasFunctionCall:f}),raw:c.status},m=c.service_tier??s?.[`x-gemini-service-tier`]??void 0,h=QH(c.usage),g={google:{...u==null?{}:{interactionId:u},...m==null?{}:{serviceTier:m},...h==null?{}:{outputTokensByModality:h}}},_;if(typeof c.created==`string`){let e=new Date(c.created);Number.isNaN(e.getTime())||(_=e)}return{content:d,finishReason:p,usage:ZH(c.usage),warnings:n,providerMetadata:g,request:{body:t},response:{headers:s,body:l,...u==null?{}:{id:u},..._?{timestamp:_}:{},modelId:c.model??void 0}}}async doStream(e){let{args:t,warnings:n,isBackground:r,pollingTimeoutMs:i}=await this.getArgs(e),a=`${this.config.baseURL}/interactions`,o=aM(this.config.headers?await VP(this.config.headers):void 0,e.headers);if(r)return this.doStreamBackground({args:t,warnings:n,url:a,mergedHeaders:o,options:e,pollingTimeoutMs:i});let s={...t,stream:!0},{responseHeaders:c,value:l}=await LP({url:a,headers:o,body:s,failedResponseHandler:OV,successfulResponseHandler:YP(OU),abortSignal:e.abortSignal,fetch:this.config.fetch}),u=c?.[`x-gemini-service-tier`],d=uU({warnings:n,generateId:this.config.generateId??GM,includeRawChunks:e.includeRawChunks,serviceTier:u});return{stream:l.pipeThrough(d),request:{body:s},response:{headers:c}}}async doStreamBackground({args:e,warnings:t,url:n,mergedHeaders:r,options:i,pollingTimeoutMs:a}){let{responseHeaders:o,value:s}=await LP({url:n,headers:r,body:e,failedResponseHandler:OV,successfulResponseHandler:XP(DU),abortSignal:i.abortSignal,fetch:this.config.fetch}),c=s.id;if(c==null||c.length===0)throw Error(`google.interactions: background POST response did not include an interaction id; cannot stream the result.`);let l=o?.[`x-gemini-service-tier`];if(zU(s.status))return{stream:JU({response:s,warnings:t,generateId:this.config.generateId??GM,includeRawChunks:i.includeRawChunks,headerServiceTier:l}),request:{body:e},response:{headers:o}};let u=qU({baseURL:this.config.baseURL,interactionId:c,headers:r,fetch:this.config.fetch,abortSignal:i.abortSignal}),d=uU({warnings:t,generateId:this.config.generateId??GM,includeRawChunks:i.includeRawChunks,serviceTier:l});return{stream:u.pipeThrough(d),request:{body:e},response:{headers:o}}}};function XU(e){let t={};for(let[n,r]of Object.entries(e))r!==void 0&&(t[n]=r);return t}function ZU(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var QU=class{constructor(){this.turnCounter=0,this.hasAudio=!1,this.hasText=!1,this.hasTranscript=!1,this.turnClosed=!1,this.inputAudioRate=16e3}get responseId(){return`google-resp-${this.turnCounter}`}get itemId(){return`google-item-${this.turnCounter}`}beginTurnIfClosed(){this.turnClosed&&=(this.turnCounter++,this.hasAudio=!1,this.hasText=!1,this.hasTranscript=!1,!1)}parseServerEvent(e){let t=e;return t.setupComplete==null?t.toolCall==null?t.toolCallCancellation==null?t.serverContent==null?t.inputTranscription?.text==null?{type:`custom`,rawType:String(Object.keys(t)[0]),raw:e}:{type:`input-transcription-completed`,itemId:`google-input-${this.turnCounter}`,transcript:t.inputTranscription.text,raw:e}:this.parseServerContent(t.serverContent,e):{type:`custom`,rawType:`toolCallCancellation`,raw:e}:(this.beginTurnIfClosed(),(t.toolCall.functionCalls??[]).flatMap(t=>{let n=JSON.stringify(t.args??{});return[{type:`function-call-arguments-delta`,responseId:this.responseId,itemId:this.itemId,callId:t.id,delta:n,raw:e},{type:`function-call-arguments-done`,responseId:this.responseId,itemId:this.itemId,callId:t.id,name:t.name,arguments:n,raw:e}]})):{type:`session-created`,raw:e}}parseServerContent(e,t){let n=[];if(e.interrupted&&n.push({type:`speech-started`,raw:t}),e.modelTurn?.parts){this.beginTurnIfClosed();for(let r of e.modelTurn.parts)r.inlineData?.data&&(this.hasAudio=!0,n.push({type:`audio-delta`,responseId:this.responseId,itemId:this.itemId,delta:r.inlineData.data,raw:t})),r.text&&(this.hasText=!0,n.push({type:`text-delta`,responseId:this.responseId,itemId:this.itemId,delta:r.text,raw:t}))}return e.outputTranscription?.text&&(this.hasTranscript=!0,n.push({type:`audio-transcript-delta`,responseId:this.responseId,itemId:this.itemId,delta:e.outputTranscription.text,raw:t})),e.inputTranscription?.text&&n.push({type:`input-transcription-completed`,itemId:`google-input-${this.turnCounter}`,transcript:e.inputTranscription.text,raw:t}),e.turnComplete&&(this.hasAudio&&n.push({type:`audio-done`,responseId:this.responseId,itemId:this.itemId,raw:t}),this.hasText&&n.push({type:`text-done`,responseId:this.responseId,itemId:this.itemId,raw:t}),this.hasTranscript&&n.push({type:`audio-transcript-done`,responseId:this.responseId,itemId:this.itemId,raw:t}),n.push({type:`response-done`,responseId:this.responseId,status:`completed`,raw:t}),this.turnClosed=!0),n.length===0?{type:`custom`,rawType:`serverContent`,raw:t}:n.length===1?n[0]:n}serializeClientEvent(e,t){switch(e.type){case`session-update`:return e.config.inputAudioFormat?.rate!=null&&(this.inputAudioRate=e.config.inputAudioFormat.rate),{setup:eW(e.config,t)};case`input-audio-append`:return{realtimeInput:{audio:{data:e.audio,mimeType:`audio/pcm;rate=${this.inputAudioRate}`}}};case`input-audio-commit`:return{realtimeInput:{audioStreamEnd:!0}};case`input-audio-clear`:case`response-create`:case`response-cancel`:case`conversation-item-truncate`:return null;case`conversation-item-create`:{let t=e.item;switch(t.type){case`text-message`:return{realtimeInput:{text:t.text}};case`function-call-output`:return $U(t);case`audio-message`:return null}break}}return null}};async function $U(e){let t=await NP({text:e.output}),n=t.success?t.value:{};return{toolResponse:{functionResponses:[{id:e.callId,name:e.name,response:n}]}}}function eW(e,t){let n={model:WV(t)},r={};if(e?.outputModalities==null?r.responseModalities=[`AUDIO`]:r.responseModalities=e.outputModalities.map(e=>e.toUpperCase()),e?.voice!=null&&(r.speechConfig={voiceConfig:{prebuiltVoiceConfig:{voiceName:e.voice}}}),n.generationConfig=r,e?.instructions!=null&&(n.systemInstruction={parts:[{text:e.instructions}]}),e?.tools!=null&&e.tools.length>0&&(n.tools=[{functionDeclarations:e.tools.map(e=>({name:e.name,description:e.description,parameters:FV(e.parameters)}))}]),e?.inputAudioTranscription!=null&&(n.inputAudioTranscription={}),e?.outputAudioTranscription!=null&&(n.outputAudioTranscription={}),e?.providerOptions==null)return n;let{google:i,...a}=e.providerOptions;Object.assign(n,a);let o=ZU(i)?i:void 0;return o?.translationConfig!=null&&(n.generationConfig={...ZU(n.generationConfig)?n.generationConfig:r,translationConfig:o.translationConfig}),n}var tW=`google.ai.generativelanguage.v1alpha.GenerativeService.BidiGenerateContentConstrained`;function nW(e){let t=new URL(e),n=t.pathname.split(`/`),r=n.at(-1);return(r===`v1beta`||r===`v1alpha`)&&(n.pop(),t.pathname=n.join(`/`)||`/`),t}function rW(e){let t=nW(e);return t.pathname=`${t.pathname.replace(/\/$/,``)}/v1alpha/auth_tokens`,t.toString()}function iW(e){let t=nW(e);return t.protocol=t.protocol===`https:`?`wss:`:`ws:`,t.pathname=`${t.pathname.replace(/\/$/,``)}/ws/${tW}`,t.toString()}var aW=class{constructor(e,t){this.specificationVersion=`v4`,this.mapper=new QU,this.modelId=e,this.provider=t.provider,this.config=t}async doCreateClientSecret(e){let t=this.config.fetch??fetch,n=this.config.headers()[`x-goog-api-key`];if(!n)throw Error(`Google Generative AI API key is required for realtime token creation.`);let r=Date.now(),i=(e.expiresAfterSeconds??60)*1e3,a=new Date(r+i).toISOString(),o=new Date(r+i+1800*1e3).toISOString(),s=eW(e.sessionConfig,this.modelId),c=await t(`${rW(this.config.baseURL)}?key=${encodeURIComponent(n)}`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({uses:0,expireTime:o,newSessionExpireTime:a,bidiGenerateContentSetup:s})});if(!c.ok){let e=await c.text();throw Error(`Google realtime auth token request failed: ${c.status} ${e}`)}let l=await c.json();return{token:l.name,url:iW(this.config.baseURL),expiresAt:l.expireTime?Math.floor(new Date(l.expireTime).getTime()/1e3):void 0}}getWebSocketConfig(e){return{url:`${e.url}?access_token=${encodeURIComponent(e.token)}`}}parseServerEvent(e){return this.mapper.parseServerEvent(e)}serializeClientEvent(e){return this.mapper.serializeClientEvent(e,this.modelId)}buildSessionConfig(e){return eW(e,this.modelId)}},oW=[`text/html`,`text/css`,`text/plain`,`text/xml`,`text/csv`,`text/rtf`,`text/javascript`,`application/json`,`application/pdf`,`image/bmp`,`image/jpeg`,`image/png`,`image/webp`,`video/mp4`,`video/mpeg`,`video/quicktime`,`video/avi`,`video/x-flv`,`video/mpg`,`video/webm`,`video/wmv`,`video/3gpp`],sW=/^https:\/\/.*$/;function cW(e){return/(^|\/)gemini-/.test(e)&&!/(^|\/)gemini-2\.0/.test(e)}function lW(e={}){let t=eF(e.baseURL)??`https://generativelanguage.googleapis.com/v1beta`,n=e.name??`google.generative-ai`,r=()=>$M({"x-goog-api-key":sN({apiKey:e.apiKey,environmentVariableName:`GOOGLE_GENERATIVE_AI_API_KEY`,description:`Google Generative AI`}),...e.headers},`ai-sdk/google/${DV}`),i=i=>new nH(i,{provider:n,baseURL:t,headers:r,generateId:e.generateId??GM,supportedUrls:()=>({"*":[RegExp(`^${t}/files/.*$`),RegExp(`^https://(?:www\\.)?youtube\\.com/watch\\?v=[\\w-]+(?:&[\\w=&.-]*)?$`),RegExp(`^https://youtu\\.be/[\\w-]+(?:\\?[\\w=&.-]*)?$`)],...cW(i)?Object.fromEntries(oW.map(e=>[e,[sW]])):{}}),fetch:e.fetch}),a=i=>new jV(i,{provider:n,baseURL:t,headers:r,fetch:e.fetch}),o=(i,a={})=>new EH(i,a,{provider:n,baseURL:t,headers:r,fetch:e.fetch}),s=()=>new kH({provider:n,baseURL:t,headers:r,fetch:e.fetch}),c=i=>new BH(i,{provider:n,baseURL:t,headers:r,fetch:e.fetch,generateId:e.generateId??GM}),l=i=>new aW(i,{provider:`${n}.realtime`,baseURL:t,headers:r,fetch:e.fetch}),u=i=>new qH(i,{provider:`${n}.speech`,baseURL:t,headers:r,fetch:e.fetch}),d=Object.assign(e=>l(e),{getToken:async e=>{let t=await l(e.model).doCreateClientSecret({sessionConfig:e.sessionConfig,expiresAfterSeconds:e.expiresAfterSeconds});return{token:t.token,url:t.url,expiresAt:t.expiresAt}}}),f=i=>new YU(i,{provider:`${n}.interactions`,baseURL:t,headers:r,generateId:e.generateId??GM,fetch:e.fetch}),p=function(e){if(new.target)throw Error(`The Google Generative AI model function cannot be called with the new keyword.`);return i(e)};return p.specificationVersion=`v4`,p.languageModel=i,p.chat=i,p.generativeAI=i,p.embedding=a,p.embeddingModel=a,p.textEmbedding=a,p.textEmbeddingModel=a,p.image=o,p.imageModel=o,p.video=c,p.videoModel=c,p.experimental_realtime=d,p.files=s,p.speech=u,p.speechModel=u,p.interactions=f,p.tools=wH,p}lW();var uW=({inputMessage:e,changeInputMessage:t,setProcessing:n})=>{let[r,i]=(0,m.useState)(dt.DEFAULT),[a,o,s]=ia($t(e=>[e.apiKey,e.changeMessageTone,e.textSummarization])),c=(0,m.useMemo)(()=>lW({apiKey:a}),[a])(`gemini-2.5-flash`);if(s||o)return m.default.createElement(bx,null,m.default.createElement(Sx,{className:`group p-2 rounded-full cursor-pointer hover:bg-ring/10 transition-all duration-200 ease-out focus-visible:outline-none focus-visible:ring-0`},m.default.createElement(Jd,{className:`text-foreground group-hover:scale-110 transition-all duration-200 ease-out`})),m.default.createElement(Cx,{side:`left`,align:`end`},m.default.createElement(wx,null,m.default.createElement(TV,{activeKey:r,setActiveKey:i,enabled:s,aiModel:c}),m.default.createElement(EV,{activeKey:r,setActiveKey:i,enabled:o,aiModel:c,message:e,changeMessage:t,setProcessing:n}))))};function dW(){return dW=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},dW.apply(null,arguments)}function fW(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var pW=e.useLayoutEffect,mW=function(t){var n=e.default.useRef(t);return pW(function(){n.current=t}),n},hW=function(e,t){if(typeof e==`function`){e(t);return}e.current=t},gW=function(t,n){var r=e.default.useRef();return e.default.useCallback(function(e){t.current=e,r.current&&hW(r.current,null),r.current=n,n&&hW(n,e)},[n])},_W={"min-height":`0`,"max-height":`none`,height:`0`,visibility:`hidden`,overflow:`hidden`,position:`absolute`,"z-index":`-1000`,top:`0`,right:`0`,display:`block`},vW=function(e){Object.keys(_W).forEach(function(t){e.style.setProperty(t,_W[t],`important`)})},yW=null,bW=function(e,t){var n=e.scrollHeight;return t.sizingStyle.boxSizing===`border-box`?n+t.borderSize:n-t.paddingSize};function xW(e,t,n,r){n===void 0&&(n=1),r===void 0&&(r=1/0),yW||(yW=document.createElement(`textarea`),yW.setAttribute(`tabindex`,`-1`),yW.setAttribute(`aria-hidden`,`true`),vW(yW)),yW.parentNode===null&&document.body.appendChild(yW);var i=e.paddingSize,a=e.borderSize,o=e.sizingStyle,s=o.boxSizing;Object.keys(o).forEach(function(e){var t=e;yW.style[t]=o[t]}),vW(yW),yW.value=t;var c=bW(yW,e);yW.value=t,c=bW(yW,e),yW.value=`x`;var l=yW.scrollHeight-i,u=l*n;s===`border-box`&&(u=u+i+a),c=Math.max(u,c);var d=l*r;return s===`border-box`&&(d=d+i+a),c=Math.min(d,c),[c,l]}var SW=function(){},CW=function(e,t){return e.reduce(function(e,n){return e[n]=t[n],e},{})},wW=[`borderBottomWidth`,`borderLeftWidth`,`borderRightWidth`,`borderTopWidth`,`boxSizing`,`fontFamily`,`fontSize`,`fontStyle`,`fontWeight`,`letterSpacing`,`lineHeight`,`paddingBottom`,`paddingLeft`,`paddingRight`,`paddingTop`,`tabSize`,`textIndent`,`textRendering`,`textTransform`,`width`,`wordBreak`,`wordSpacing`,`scrollbarGutter`],TW=!!document.documentElement.currentStyle,EW=function(e){var t=window.getComputedStyle(e);if(t===null)return null;var n=CW(wW,t),r=n.boxSizing;return r===``?null:(TW&&r===`border-box`&&(n.width=parseFloat(n.width)+parseFloat(n.borderRightWidth)+parseFloat(n.borderLeftWidth)+parseFloat(n.paddingRight)+parseFloat(n.paddingLeft)+`px`),{sizingStyle:n,paddingSize:parseFloat(n.paddingBottom)+parseFloat(n.paddingTop),borderSize:parseFloat(n.borderBottomWidth)+parseFloat(n.borderTopWidth)})};function DW(t,n,r){var i=mW(r);e.useLayoutEffect(function(){var e=function(e){return i.current(e)};if(t)return t.addEventListener(n,e),function(){return t.removeEventListener(n,e)}},[])}var OW=function(e,t){DW(document.body,`reset`,function(n){e.current.form===n.target&&t(n)})},kW=function(e){DW(window,`resize`,e)},AW=function(e){DW(document.fonts,`loadingdone`,e)},jW=[`cacheMeasurements`,`maxRows`,`minRows`,`onChange`,`onHeightChange`],MW=e.forwardRef(function(t,n){var r=t.cacheMeasurements,i=t.maxRows,a=t.minRows,o=t.onChange,s=o===void 0?SW:o,c=t.onHeightChange,l=c===void 0?SW:c,u=fW(t,jW),d=u.value!==void 0,f=e.useRef(null),p=gW(f,n),m=e.useRef(0),h=e.useRef(),g=function(){var e=f.current,t=r&&h.current?h.current:EW(e);if(t){h.current=t;var n=xW(t,e.value||e.placeholder||`x`,a,i),o=n[0],s=n[1];m.current!==o&&(m.current=o,e.style.setProperty(`height`,o+`px`,`important`),l(o,{rowHeight:s}))}};return e.useLayoutEffect(g),OW(f,function(){if(!d){var e=f.current.value;requestAnimationFrame(function(){var t=f.current;t&&e!==t.value&&g()})}}),kW(g),AW(g),e.createElement(`textarea`,dW({},u,{onChange:function(e){d||g(),s(e)},ref:p}))});function NW({onSend:e=()=>{},iconElement:t,iconProps:n,...r},i){return m.createElement(Lx,{ref:i,...r,onClick:e,className:R(`group rounded-full py-2 pl-2.5 pr-1.5 cursor-pointer bg-ring/90 hover:bg-ring`,r?.className)},t||m.createElement(Ud,{...n,className:R(`text-background group-hover:scale-110 transition-all duration-200 ease-out`,n?.className)}))}var PW=m.forwardRef(NW);PW.displayName=`ChatInputSend`;function FW({pending:e=!1,draft:t,onSend:n=()=>{},onDraft:r=()=>{},onTyping:i=()=>{},onHeightGrow:a=()=>{},hideChatInputSend:o=!1,chatInputSendProps:s,containerProps:c,children:l,...u},d){let[f,p]=m.useState(),h=m.useRef(null),g=m.useRef(0),_=m.useRef(!1),v=m.useRef(void 0),y=()=>{_.current=!1,i(!1),v.current&&=(clearTimeout(v.current),void 0)},b=e=>{u.onChange?.(e);let{data:t}=e.nativeEvent;p(e.target.value),!_.current&&typeof t==`string`&&t.length>0&&(_.current=!0,i(!0)),clearTimeout(v.current),v.current=setTimeout(y,5e3)},x=async()=>{y(),typeof f==`string`&&f.length>0&&(n(f.trim()),p(``),h.current?.focus())},S=(e,t)=>{u.onHeightChange?.(e,t),!(!e&&!t)&&(e!==g.current&&a({height:e,shift:e>g.current?t.rowHeight:-t.rowHeight}),g.current=e)},C=e=>{u.onKeyDown?.(e),e.key===`Enter`&&e.shiftKey===!1&&(e.preventDefault(),x())};return m.useEffect(()=>{let e=h.current;return y(),queueMicrotask(()=>p(t)),e?.focus(),()=>{r(e?.value)}},[u.key]),m.useLayoutEffect(()=>{u.value!==void 0&&queueMicrotask(()=>{p(String(u.value)),h.current?.focus()})},[u.value]),m.useImperativeHandle(d,()=>h.current||{},[]),m.createElement(`div`,{...c,className:R(`flex items-end gap-2`,c?.className)},m.createElement(MW,{name:`textarea-autosize`,ref:h,autoFocus:!0,minRows:1,maxRows:8,...u,value:f,onChange:b,onKeyDown:C,onHeightChange:S,className:R(`file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-11 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,`resize-none py-2.5`,e&&`pointer-events-none bg-muted-foreground border-ring ring-ring/50 animate-pulse`,u?.className)}),!o&&m.createElement(PW,{onSend:x,...s}),l)}var IW=m.forwardRef(FW);IW.displayName=`ChatInput`;var LW=m.default.memo(({onSendMessage:e,onSendAttachment:t,onHeightGrow:n})=>{let{t:r}=nt(),i=Si(e=>e.attachmentsAccept),[a,o,s]=Sr($t(e=>[e.draftMessages,e.upsertDraftMessage,e.deleteDraftMessage])),{selectedDialog:c,sendTypingStatus:l}=gr(),u=c?._id??``,d=a[u]??``,[f,p]=m.default.useState(d),[h,g]=m.default.useState(!1),_=(0,m.useRef)(null);return m.default.createElement(IW,{ref:_,key:u,value:f,pending:h,placeholder:r(`EnterMessage...`),draft:d,onSend:t=>{t&&e(t.trim())},onDraft:(e=``)=>{e.length>0?o({[u]:e}):s(u)},onTyping:e=>{l(c,e)},onHeightGrow:n,onChange:e=>{p(e.target.value)},className:`selection:bg-ring/50 selection:text-blue-950`,containerProps:{className:`border-t mx-2 py-2`}},m.default.createElement(Vx,{multiple:!0,accept:i,onSelectFile:e=>{t(e)},onInvalidFile:()=>pf.warning(r(`FileTypeNotSupported`))}),m.default.createElement(uW,{inputMessage:f,changeInputMessage:(e=``)=>{p(e),_.current?.focus()},setProcessing:g}))});function RW({title:e,titles:t=[],rowProps:n,...r},i){let a=typeof e==`string`?[e,...t]:t;return m.createElement(`div`,{ref:i,...r,className:R(`absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2`,r?.className)},a.map((e,t)=>m.createElement(`div`,{key:`placeholder-text-${t}`,...n,className:R(`text-center text-muted-foreground`,n?.className)},e)))}var zW=m.forwardRef(RW);zW.displayName=`PlaceholderText`;function BW({pending:e=!1,children:t,...n},r){return m.createElement(`a`,{ref:r,target:`_blank`,rel:`noopener noreferrer`,...n,className:R(`group relative min-h-8 min-w-8 w-full flex items-center justify-center rounded-md overflow-hidden bg-ring/10 hover:bg-ring/20 transition-color duration-300 ease-out cursor-pointer`,n?.className)},t,m.createElement(Xd,{loading:e,layout:`overlay`}))}var VW=m.forwardRef(BW);VW.displayName=`AttachmentLink`;function HW({uid:e,url:t,pending:n=!1,containerProps:r,...i},a){let o=`attachment_audio_${e||Yu()}`;return m.createElement(`div`,{...r,className:R(`relative min-h-8 min-w-8 w-full rounded-md overflow-hidden`,r?.className)},m.createElement(`audio`,{ref:a,src:t,id:o,controls:!0,...i}),m.createElement(Xd,{loading:n,layout:`overlay`}))}var UW=m.forwardRef(HW);function WW({uid:e,url:t,maxSize:n=360,pending:r=!1,onReady:i=()=>{},containerProps:a,...o},s){let c=`attachment_video_${e||Yu()}`,l=`${n}px`,u=m.useRef(null),[d,f]=m.useState({maxHeight:l,maxWidth:l}),p=e=>{let t=u.current;if(t){let{videoWidth:r,videoHeight:a}=t,s=r/a||1,c=s<1?l:`${Math.round(n/s)}px`,u=s<1?`${Math.round(n*s)}px`:l;f({height:c,width:u,maxHeight:c,maxWidth:u}),o.onCanPlay?.(e),i()}};return m.useImperativeHandle(s,()=>u.current||{},[]),m.createElement(`div`,{...a,className:R(`relative min-h-20 w-full rounded-md overflow-hidden`,a?.className)},m.createElement(`video`,{id:c,ref:u,src:t,controls:!0,preload:`metadata`,style:d,...o,onCanPlay:p,className:R(`size-full`,o?.className)}),m.createElement(Xd,{loading:r,layout:`overlay`}))}var GW=m.forwardRef(WW);GW.displayName=`AttachmentVideo`;function KW({uid:e,url:t,pending:n=!1,onReady:r=()=>{},linkProps:i,...a},o){let s=`attachment_image_${e||Yu()}`,c=e=>{a.onLoad?.(e),r()};return m.createElement(VW,{href:t,pending:n,...i},m.createElement(`img`,{ref:o,src:t,id:s,alt:`attachment`,...a,className:R(`rounded-md object-cover min-h-8 min-w-8 max-h-[360px] group-hover:scale-102 transition-transform duration-300 ease-out`,a?.className),onLoad:c}))}var qW=m.forwardRef(KW);qW.displayName=`AttachmentImage`;function JW({url:e,name:t,pending:n=!1,iconElement:r,linkProps:i,...a}){let o=`attachment_file_${a.id||Yu()}`;return m.createElement(VW,{href:e,pending:n,...i,className:R(`flex-row gap-1.5 p-2 hover:shadow`,i?.className)},r||m.createElement(wd,{id:o,...a,className:R(`size-5 shrink-0 text-foreground/80 group-hover:text-foreground duration-300 ease-out`,a?.className)}),t&&m.createElement(`span`,{className:`font-medium line-clamp-1 break-all text-foreground/80 group-hover:text-foreground duration-300 ease-out`},t))}JW.displayName=`AttachmentFile`;function YW({name:e=`Unknown file`,pending:t=!1,iconElement:n,containerProps:r,...i}){let a=`attachment_failed_${i.id||Yu()}`;return m.createElement(`div`,{...r,className:R(`relative min-h-8 min-w-8 w-full flex flex-row items-center justify-center gap-2 px-2 bg-red-600/10 rounded-md overflow-hidden`,r?.className)},n||m.createElement(Cd,{id:a,...i,className:R(`size-6 shrink-0 text-red-600`,i?.className)}),m.createElement(`span`,{className:`font-medium line-clamp-1 break-all text-red-600`},e),m.createElement(Xd,{loading:t,layout:`overlay`}))}YW.displayName=`AttachmentFailed`;function XW({mimeType:e,onReady:t=()=>{},containerProps:n={},linkProps:r={},...i}){let[a=``]=e?.split(`/`)||[];if(!i.url)return m.createElement(YW,i);switch(a){case`image`:return m.createElement(qW,{onReady:t,linkProps:r,...i});case`video`:return m.createElement(GW,{onReady:t,containerProps:n,...i});case`audio`:return m.createElement(UW,{containerProps:n,...i});default:return m.createElement(JW,{name:e,containerProps:n,...i})}}var ZW=m.memo(XW);ZW.displayName=`Attachment`;var QW=`aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4w0s2x0a2z0ure5ba0by2idu3namex4d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dad1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2odyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3nd0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rck0msd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0axi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp3ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2oodside6rk0s2ld3w2s1tc1f3xbox3erox4ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2`,$W=`ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2`,eG=`numeric`,tG=`ascii`,nG=`alpha`,rG=`asciinumeric`,iG=`alphanumeric`,aG=`domain`,oG=`emoji`,sG=`scheme`,cG=`slashscheme`,lG=`whitespace`;function uG(e,t){return e in t||(t[e]=[]),t[e]}function dG(e,t,n){t[eG]&&(t[rG]=!0,t[iG]=!0),t[tG]&&(t[rG]=!0,t[nG]=!0),t[rG]&&(t[iG]=!0),t[nG]&&(t[iG]=!0),t[iG]&&(t[aG]=!0),t[oG]&&(t[aG]=!0);for(let r in t){let t=uG(r,n);t.indexOf(e)<0&&t.push(e)}}function fG(e,t){let n={};for(let r in t)t[r].indexOf(e)>=0&&(n[r]=!0);return n}function pG(e=null){this.j={},this.jr=[],this.jd=null,this.t=e}pG.groups={},pG.prototype={accepts(){return!!this.t},go(e){let t=this,n=t.j[e];if(n)return n;for(let n=0;n<t.jr.length;n++){let r=t.jr[n][0],i=t.jr[n][1];if(i&&r.test(e))return i}return t.jd},has(e,t=!1){return t?e in this.j:!!this.go(e)},ta(e,t,n,r){for(let i=0;i<e.length;i++)this.tt(e[i],t,n,r)},tr(e,t,n,r){r||=pG.groups;let i;return t&&t.j?i=t:(i=new pG(t),n&&r&&dG(t,n,r)),this.jr.push([e,i]),i},ts(e,t,n,r){let i=this,a=e.length;if(!a)return i;for(let t=0;t<a-1;t++)i=i.tt(e[t]);return i.tt(e[a-1],t,n,r)},tt(e,t,n,r){r||=pG.groups;let i=this;if(t&&t.j)return i.j[e]=t,t;let a=t,o,s=i.go(e);return s?(o=new pG,Object.assign(o.j,s.j),o.jr.push.apply(o.jr,s.jr),o.jd=s.jd,o.t=s.t):o=new pG,a&&(r&&(o.t&&typeof o.t==`string`?dG(a,Object.assign(fG(o.t,r),n),r):n&&dG(a,n,r)),o.t=a),i.j[e]=o,o}};var mG=(e,t,n,r,i)=>e.ta(t,n,r,i),hG=(e,t,n,r,i)=>e.tr(t,n,r,i),gG=(e,t,n,r,i)=>e.ts(t,n,r,i),Q=(e,t,n,r,i)=>e.tt(t,n,r,i),_G=`WORD`,vG=`UWORD`,yG=`ASCIINUMERICAL`,bG=`ALPHANUMERICAL`,xG=`LOCALHOST`,SG=`TLD`,CG=`UTLD`,wG=`SCHEME`,TG=`SLASH_SCHEME`,EG=`NUM`,DG=`WS`,OG=`NL`,kG=`OPENBRACE`,AG=`CLOSEBRACE`,jG=`OPENBRACKET`,MG=`CLOSEBRACKET`,NG=`OPENPAREN`,PG=`CLOSEPAREN`,FG=`OPENANGLEBRACKET`,IG=`CLOSEANGLEBRACKET`,LG=`FULLWIDTHLEFTPAREN`,RG=`FULLWIDTHRIGHTPAREN`,zG=`LEFTCORNERBRACKET`,BG=`RIGHTCORNERBRACKET`,VG=`LEFTWHITECORNERBRACKET`,HG=`RIGHTWHITECORNERBRACKET`,UG=`FULLWIDTHLESSTHAN`,WG=`FULLWIDTHGREATERTHAN`,GG=`AMPERSAND`,KG=`APOSTROPHE`,qG=`ASTERISK`,JG=`AT`,YG=`BACKSLASH`,XG=`BACKTICK`,ZG=`CARET`,QG=`COLON`,$G=`COMMA`,eK=`DOLLAR`,tK=`DOT`,nK=`EQUALS`,rK=`EXCLAMATION`,iK=`HYPHEN`,aK=`PERCENT`,oK=`PIPE`,sK=`PLUS`,cK=`POUND`,lK=`QUERY`,uK=`QUOTE`,dK=`FULLWIDTHMIDDLEDOT`,fK=`SEMI`,pK=`SLASH`,mK=`TILDE`,hK=`UNDERSCORE`,gK=`EMOJI`,_K=`SYM`,vK=Object.freeze({__proto__:null,ALPHANUMERICAL:bG,AMPERSAND:GG,APOSTROPHE:KG,ASCIINUMERICAL:yG,ASTERISK:qG,AT:JG,BACKSLASH:YG,BACKTICK:XG,CARET:ZG,CLOSEANGLEBRACKET:IG,CLOSEBRACE:AG,CLOSEBRACKET:MG,CLOSEPAREN:PG,COLON:QG,COMMA:$G,DOLLAR:eK,DOT:tK,EMOJI:gK,EQUALS:nK,EXCLAMATION:rK,FULLWIDTHGREATERTHAN:WG,FULLWIDTHLEFTPAREN:LG,FULLWIDTHLESSTHAN:UG,FULLWIDTHMIDDLEDOT:dK,FULLWIDTHRIGHTPAREN:RG,HYPHEN:iK,LEFTCORNERBRACKET:zG,LEFTWHITECORNERBRACKET:VG,LOCALHOST:xG,NL:OG,NUM:EG,OPENANGLEBRACKET:FG,OPENBRACE:kG,OPENBRACKET:jG,OPENPAREN:NG,PERCENT:aK,PIPE:oK,PLUS:sK,POUND:cK,QUERY:lK,QUOTE:uK,RIGHTCORNERBRACKET:BG,RIGHTWHITECORNERBRACKET:HG,SCHEME:wG,SEMI:fK,SLASH:pK,SLASH_SCHEME:TG,SYM:_K,TILDE:mK,TLD:SG,UNDERSCORE:hK,UTLD:CG,UWORD:vG,WORD:_G,WS:DG}),yK=/[a-z]/,bK=/\p{L}/u,xK=/\p{Emoji}/u,SK=/\d/,CK=/\s/,wK=`\r`,TK=`
`,EK=`️`,DK=`‍`,OK=``,kK=null,AK=null;function jK(e=[]){let t={};pG.groups=t;let n=new pG;kK??=FK(QW),AK??=FK($W),Q(n,`'`,KG),Q(n,`{`,kG),Q(n,`}`,AG),Q(n,`[`,jG),Q(n,`]`,MG),Q(n,`(`,NG),Q(n,`)`,PG),Q(n,`<`,FG),Q(n,`>`,IG),Q(n,`(`,LG),Q(n,`)`,RG),Q(n,`「`,zG),Q(n,`」`,BG),Q(n,`『`,VG),Q(n,`』`,HG),Q(n,`<`,UG),Q(n,`>`,WG),Q(n,`&`,GG),Q(n,`*`,qG),Q(n,`@`,JG),Q(n,"`",XG),Q(n,`^`,ZG),Q(n,`:`,QG),Q(n,`,`,$G),Q(n,`$`,eK),Q(n,`.`,tK),Q(n,`=`,nK),Q(n,`!`,rK),Q(n,`-`,iK),Q(n,`%`,aK),Q(n,`|`,oK),Q(n,`+`,sK),Q(n,`#`,cK),Q(n,`?`,lK),Q(n,`"`,uK),Q(n,`/`,pK),Q(n,`;`,fK),Q(n,`~`,mK),Q(n,`_`,hK),Q(n,`\\`,YG),Q(n,`・`,dK);let r=hG(n,SK,EG,{[eG]:!0});hG(r,SK,r);let i=hG(r,yK,yG,{[rG]:!0}),a=hG(r,bK,bG,{[iG]:!0}),o=hG(n,yK,_G,{[tG]:!0});hG(o,SK,i),hG(o,yK,o),hG(i,SK,i),hG(i,yK,i);let s=hG(n,bK,vG,{[nG]:!0});hG(s,yK),hG(s,SK,a),hG(s,bK,s),hG(a,SK,a),hG(a,yK),hG(a,bK,a);let c=Q(n,TK,OG,{[lG]:!0}),l=Q(n,wK,DG,{[lG]:!0}),u=hG(n,CK,DG,{[lG]:!0});Q(n,OK,u),Q(l,TK,c),Q(l,OK,u),hG(l,CK,u),Q(u,wK),Q(u,TK),hG(u,CK,u),Q(u,OK,u);let d=hG(n,xK,gK,{[oG]:!0});Q(d,`#`),hG(d,xK,d),Q(d,EK,d);let f=Q(d,DK);Q(f,`#`),hG(f,xK,d);let p=[[yK,o],[SK,i]],m=[[yK,null],[bK,s],[SK,a]];for(let e=0;e<kK.length;e++)PK(n,kK[e],SG,_G,p);for(let e=0;e<AK.length;e++)PK(n,AK[e],CG,vG,m);dG(SG,{tld:!0,ascii:!0},t),dG(CG,{utld:!0,alpha:!0},t),PK(n,`file`,wG,_G,p),PK(n,`mailto`,wG,_G,p),PK(n,`http`,TG,_G,p),PK(n,`https`,TG,_G,p),PK(n,`ftp`,TG,_G,p),PK(n,`ftps`,TG,_G,p),dG(wG,{scheme:!0,ascii:!0},t),dG(TG,{slashscheme:!0,ascii:!0},t),e=e.sort((e,t)=>e[0]>t[0]?1:-1);for(let t=0;t<e.length;t++){let r=e[t][0],i=e[t][1]?{[sG]:!0}:{[cG]:!0};r.indexOf(`-`)>=0?i[aG]=!0:yK.test(r)?SK.test(r)?i[rG]=!0:i[tG]=!0:i[eG]=!0,gG(n,r,r,i)}return gG(n,`localhost`,xG,{ascii:!0}),n.jd=new pG(_K),{start:n,tokens:Object.assign({groups:t},vK)}}function MK(e,t){let n=NK(t.replace(/[A-Z]/g,e=>e.toLowerCase())),r=n.length,i=[],a=0,o=0;for(;o<r;){let s=e,c=null,l=0,u=null,d=-1,f=-1;for(;o<r&&(c=s.go(n[o]));)s=c,s.accepts()?(d=0,f=0,u=s):d>=0&&(d+=n[o].length,f++),l+=n[o].length,a+=n[o].length,o++;a-=d,o-=f,l-=d,i.push({t:u.t,v:t.slice(a-l,a),s:a-l,e:a})}return i}function NK(e){let t=[],n=e.length,r=0;for(;r<n;){let i=e.charCodeAt(r),a,o=i<55296||i>56319||r+1===n||(a=e.charCodeAt(r+1))<56320||a>57343?e[r]:e.slice(r,r+2);t.push(o),r+=o.length}return t}function PK(e,t,n,r,i){let a,o=t.length;for(let n=0;n<o-1;n++){let o=t[n];e.j[o]?a=e.j[o]:(a=new pG(r),a.jr=i.slice(),e.j[o]=a),e=a}return a=new pG(n),a.jr=i.slice(),e.j[t[o-1]]=a,a}function FK(e){let t=[],n=[],r=0;for(;r<e.length;){let i=0;for(;`0123456789`.indexOf(e[r+i])>=0;)i++;if(i>0){t.push(n.join(``));for(let t=parseInt(e.substring(r,r+i),10);t>0;t--)n.pop();r+=i}else n.push(e[r]),r++}return t}var IK={defaultProtocol:`http`,events:null,format:RK,formatHref:RK,nl2br:!1,tagName:`a`,target:null,rel:null,validate:!0,truncate:1/0,className:null,attributes:null,ignoreTags:[],render:null};function LK(e,t=null){let n=Object.assign({},IK);e&&(n=Object.assign(n,e instanceof LK?e.o:e));let r=n.ignoreTags,i=[];for(let e=0;e<r.length;e++)i.push(r[e].toUpperCase());this.o=n,t&&(this.defaultRender=t),this.ignoreTags=i}LK.prototype={o:IK,ignoreTags:[],defaultRender(e){return e},check(e){return this.get(`validate`,e.toString(),e)},get(e,t,n){let r=t!=null,i=this.o[e];return i&&(typeof i==`object`?(i=n.t in i?i[n.t]:IK[e],typeof i==`function`&&r&&(i=i(t,n))):typeof i==`function`&&r&&(i=i(t,n.t,n)),i)},getObj(e,t,n){let r=this.o[e];return typeof r==`function`&&t!=null&&(r=r(t,n.t,n)),r},render(e){let t=e.render(this);return(this.get(`render`,null,e)||this.defaultRender)(t,e.t,e)}};function RK(e){return e}function zK(e,t){this.t=`token`,this.v=e,this.tk=t}zK.prototype={isLink:!1,toString(){return this.v},toHref(e){return this.toString()},toFormattedString(e){let t=this.toString(),n=e.get(`truncate`,t,this),r=e.get(`format`,t,this);return n&&r.length>n?r.substring(0,n)+`…`:r},toFormattedHref(e){return e.get(`formatHref`,this.toHref(e.get(`defaultProtocol`)),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(e=IK.defaultProtocol){return{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(e),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(e){return{type:this.t,value:this.toFormattedString(e),isLink:this.isLink,href:this.toFormattedHref(e),start:this.startIndex(),end:this.endIndex()}},validate(e){return e.get(`validate`,this.toString(),this)},render(e){let t=this,n=this.toHref(e.get(`defaultProtocol`)),r=e.get(`formatHref`,n,this),i=e.get(`tagName`,n,t),a=this.toFormattedString(e),o={},s=e.get(`className`,n,t),c=e.get(`target`,n,t),l=e.get(`rel`,n,t),u=e.getObj(`attributes`,n,t),d=e.getObj(`events`,n,t);return o.href=r,s&&(o.class=s),c&&(o.target=c),l&&(o.rel=l),u&&Object.assign(o,u),{tagName:i,attributes:o,content:a,eventListeners:d}}};function BK(e,t){class n extends zK{constructor(t,n){super(t,n),this.t=e}}for(let e in t)n.prototype[e]=t[e];return n.t=e,n}var VK=BK(`email`,{isLink:!0,toHref(){return`mailto:`+this.toString()}}),HK=BK(`text`),UK=BK(`nl`),WK=BK(`url`,{isLink:!0,toHref(e=IK.defaultProtocol){return this.hasProtocol()?this.v:`${e}://${this.v}`},hasProtocol(){let e=this.tk;return e.length>=2&&e[0].t!==xG&&e[1].t===QG}}),GK=e=>new pG(e);function KK({groups:e}){let t=e.domain.concat([GG,qG,JG,YG,XG,ZG,eK,nK,iK,EG,aK,oK,sK,cK,pK,_K,mK,hK]),n=[KG,QG,$G,tK,rK,aK,lK,uK,fK,FG,IG,kG,AG,MG,jG,NG,PG,LG,RG,zG,BG,VG,HG,UG,WG],r=[GG,KG,qG,YG,XG,ZG,eK,nK,iK,kG,AG,aK,oK,sK,cK,lK,pK,_K,mK,hK],i=GK(),a=Q(i,mK);mG(a,r,a),mG(a,e.domain,a);let o=GK(),s=GK(),c=GK();mG(i,e.domain,o),mG(i,e.scheme,s),mG(i,e.slashscheme,c),mG(o,r,a),mG(o,e.domain,o);let l=Q(o,JG);Q(a,JG,l),Q(s,JG,l),Q(c,JG,l);let u=Q(a,tK);mG(u,r,a),mG(u,e.domain,a);let d=GK();mG(l,e.domain,d),mG(d,e.domain,d);let f=Q(d,tK);mG(f,e.domain,d);let p=GK(VK);mG(f,e.tld,p),mG(f,e.utld,p),Q(l,xG,p);let m=Q(d,iK);Q(m,iK,m),mG(m,e.domain,d),mG(p,e.domain,d),Q(p,tK,f),Q(p,iK,m);let h=Q(o,iK),g=Q(o,tK);Q(h,iK,h),mG(h,e.domain,o),mG(g,r,a),mG(g,e.domain,o);let _=GK(WK);mG(g,e.tld,_),mG(g,e.utld,_),mG(_,e.domain,o),mG(_,r,a),Q(_,tK,g),Q(_,iK,h),Q(_,JG,l);let v=Q(_,QG),y=GK(WK);mG(v,e.numeric,y);let b=GK(WK),x=GK();mG(b,t,b),mG(b,n,x),mG(x,t,b),mG(x,n,x),Q(_,pK,b),Q(y,pK,b);let S=Q(s,QG),C=Q(Q(Q(c,QG),pK),pK);mG(s,e.domain,o),Q(s,tK,g),Q(s,iK,h),mG(c,e.domain,o),Q(c,tK,g),Q(c,iK,h),mG(S,e.domain,b),Q(S,pK,b),Q(S,lK,b),mG(C,e.domain,b),mG(C,t,b),Q(C,pK,b);let w=[[kG,AG],[jG,MG],[NG,PG],[FG,IG],[LG,RG],[zG,BG],[VG,HG],[UG,WG]];for(let e=0;e<w.length;e++){let[r,i]=w[e],a=Q(b,r);Q(x,r,a);let o=GK(WK);mG(a,t,o);let s=GK();mG(a,n,s),Q(a,i,b),mG(o,t,o),mG(o,n,s),mG(s,t,o),mG(s,n,s),Q(o,i,b),Q(s,i,b)}return Q(i,xG,_),Q(i,OG,UK),{start:i,tokens:vK}}function qK(e,t,n){let r=n.length,i=0,a=[],o=[];for(;i<r;){let s=e,c=null,l=null,u=0,d=null,f=-1;for(;i<r&&!(c=s.go(n[i].t));)o.push(n[i++]);for(;i<r&&(l=c||s.go(n[i].t));)c=null,s=l,s.accepts()?(f=0,d=s):f>=0&&f++,i++,u++;if(f<0)i-=u,i<r&&(o.push(n[i]),i++);else{o.length>0&&(a.push(JK(HK,t,o)),o=[]),i-=f,u-=f;let e=d.t,r=n.slice(i-u,i);a.push(JK(e,t,r))}}return o.length>0&&a.push(JK(HK,t,o)),a}function JK(e,t,n){let r=n[0].s,i=n[n.length-1].e;return new e(t.slice(r,i),n)}var YK={scanner:null,parser:null,tokenQueue:[],pluginQueue:[],customSchemes:[],initialized:!1};function XK(){YK.scanner=jK(YK.customSchemes);for(let e=0;e<YK.tokenQueue.length;e++)YK.tokenQueue[e][1]({scanner:YK.scanner});YK.parser=KK(YK.scanner.tokens);for(let e=0;e<YK.pluginQueue.length;e++)YK.pluginQueue[e][1]({scanner:YK.scanner,parser:YK.parser});return YK.initialized=!0,YK}function ZK(e){return YK.initialized||XK(),qK(YK.parser.start,e,MK(YK.scanner.start,e))}ZK.scan=MK;function QK(e,t,n){let r=ZK(e),i=[];for(let e=0;e<r.length;e++){let a=r[e];if(a.t===`nl`&&t.get(`nl2br`)){let e=`__linkify-el-${n.elementId++}`;i.push(m.createElement(`br`,{key:e}))}else if(!a.isLink||!t.check(a))i.push(a.toString());else{let e=t.render(a);if(!(`key`in e.props)){let t=`__linkify-el-${n.elementId++}`,r=Object.assign({key:t},e.props);e=m.cloneElement(e,r)}i.push(e)}}return i}function $K(e,t,n){if(m.Children.count(e.props.children)===0)return e;let r=[];m.Children.forEach(e.props.children,e=>{typeof e==`string`?r.push.apply(r,QK(e,t,n)):m.isValidElement(e)?typeof e.type==`string`&&t.ignoreTags.indexOf(e.type.toUpperCase())>=0?r.push(e):r.push($K(e,t,n)):r.push(e)});let i=`__linkify-el-${n.elementId++}`,a=Object.assign({key:i},e.props);return m.cloneElement(e,a,r)}var eq=e=>{let t=0,n=({tagName:e,attributes:n,content:r})=>(n.key=`__linkify-lnk-${t++}`,n.class&&(n.className=n.class,delete n.class),m.createElement(e,n,r)),r={key:`__linkify-wrapper`};for(let t in e)t!==`options`&&t!==`as`&&t!==`tagName`&&t!==`children`&&(r[t]=e[t]);let i=new LK(e.options,n),a=e.as||e.tagName||m.Fragment||`span`,o=e.children;return $K(m.createElement(a,r,o),i,{elementId:0})},tq={target:`_blank`,rel:`noopener noreferrer`},nq=[`w-full`,`w-3/4`,`w-1/2`];function rq({text:e,pending:t=!1,onReady:n=()=>{},linkifyProps:r,skeletonContainerProps:i,skeletonLineProps:a,skeletonLinesClassNames:o=nq,...s},c){let l=m.useRef(t),u=m.useMemo(()=>({...tq,...r,className:R(`text-blue-500 hover:text-blue-600 hover:underline`,r?.className)}),[r]);return m.useEffect(()=>{l.current&&!t&&n(),l.current=t},[t,n]),t?m.createElement(`div`,{...i,className:R(`flex items-start flex-col size-full`,i?.className)},o.map((e,t)=>m.createElement(`span`,{...a,key:`${e}_${t}`,className:R(`bg-muted-foreground animate-pulse rounded-md my-1 h-4`,a?.className,e)}))):m.createElement(`p`,{ref:c,...s,className:R(`wrap-break-word text-base`,s?.className)},m.createElement(eq,{options:u},e))}var iq=m.memo(m.forwardRef(rq));iq.displayName=`LinkifyText`;var aq=({fromMe:e,status:t,...n})=>{let r=t===`hungUp`?Rd:e?Id:t===`reject`?Pd:Fd;return m.createElement(r,{...n,className:R(`size-4`,t===`hungUp`?`text-green-500`:`text-red-500`,n?.className)})};aq.displayName=`StatusCall`;var oq=new Map,sq=new WeakMap,cq=0,lq;function uq(e){return e?sq.has(e)?sq.get(e):(cq+=1,sq.set(e,cq.toString()),sq.get(e)):`0`}function dq(e){return Object.keys(e).sort().filter(t=>e[t]!==void 0).map(t=>`${t}_${t===`root`?uq(e.root):e[t]}`).toString()}function fq(e){let t=dq(e),n=oq.get(t);if(!n){let r=new Map,i,a=new IntersectionObserver(t=>{t.forEach(t=>{let n=t.isIntersecting&&i.some(e=>t.intersectionRatio>=e);e.trackVisibility&&t.isVisible===void 0&&(t.isVisible=n),[...r.get(t.target)??[]].forEach(e=>{e(n,t)})})},e);i=a.thresholds||(Array.isArray(e.threshold)?e.threshold:[e.threshold||0]),n={id:t,observer:a,elements:r},oq.set(t,n)}return n}function pq(e,t,n={},r=lq){if(window.IntersectionObserver===void 0&&r!==void 0){let i=e.getBoundingClientRect();return t(r,{isIntersecting:r,target:e,intersectionRatio:typeof n.threshold==`number`?n.threshold:0,time:0,boundingClientRect:i,intersectionRect:i,rootBounds:i}),()=>{}}let{id:i,observer:a,elements:o}=fq(n),s=o.get(e)||[];return o.has(e)||o.set(e,s),s.push(t),a.observe(e),function(){s.splice(s.indexOf(t),1),s.length===0&&(o.delete(e),a.unobserve(e)),o.size===0&&(a.disconnect(),oq.delete(i))}}m.Component;function mq({threshold:e,delay:t,trackVisibility:n,rootMargin:r,root:i,triggerOnce:a,skip:o,initialInView:s,fallbackInView:c,onChange:l}={}){let[u,d]=m.useState(null),f=m.useRef(l),p=m.useRef(s),[h,g]=m.useState({inView:!!s,entry:void 0});f.current=l,m.useEffect(()=>{if(p.current===void 0&&(p.current=s),o||!u)return;let l;return l=pq(u,(e,t)=>{let n=p.current;p.current=e,!(n===void 0&&!e)&&(g({inView:e,entry:t}),f.current&&f.current(e,t),t.isIntersecting&&a&&l&&(l(),l=void 0))},{root:i,rootMargin:r,threshold:e,trackVisibility:n,delay:t},c),()=>{l&&l()}},[Array.isArray(e)?e.toString():e,u,i,r,a,o,n,c,t]);let _=h.entry?.target,v=m.useRef(void 0);!u&&_&&!a&&!o&&v.current!==_&&(v.current=_,g({inView:!!s,entry:void 0}),p.current=s);let y=[d,h.inView,h.entry];return y.ref=y[0],y.inView=y[1],y.entry=y[2],y}(`useInsertionEffect`in m?m.useInsertionEffect:void 0)??m.useLayoutEffect??m.useEffect;var hq={en:xm,el:dh,ua:Oh,es:_h,ar:oh};function gq(e,t=`en`,n=!1){let r=hq[t]??xm;return n?Qm(e,{locale:r,addSuffix:!0}):eh(e)?Ym(e,`p`,{locale:r}):(e=>{let t=Kp(new Date,e);return t>=0&&t<=6})(e)?Ym(e,`eeee`,{locale:r}):Ym(e,`P`,{locale:r})}function _q({date:e,language:t,distanceToNow:n,...r},i){return e?m.createElement(`span`,{ref:i,...r,className:R(`text-xs text-muted-foreground`,r?.className)},gq(e,t,n)):null}var vq=m.memo(m.forwardRef(_q));vq.displayName=`FormattedDate`;var yq=({status:e,...t})=>{switch(e){case`wait`:return m.createElement(bd,{...t,className:R(`text-gray-500 size-4`,t?.className)});case`sent`:return m.createElement(vd,{...t,className:R(`text-gray-500 size-4`,t?.className)});case`read`:return m.createElement(_d,{...t,className:R(`text-gray-500 size-4`,t?.className)});case`lost`:return m.createElement(gd,{...t,className:R(`text-red-500 size-4`,t?.className)});default:return null}};yq.displayName=`StatusSent`;function bq({onView:e=()=>{},isLast:t,children:n,...r},i){let[a,o]=mq({threshold:.1}),s=m.useRef(!1),c=m.useRef(null),l=m.useCallback(e=>{c.current=e,a(e)},[a]);return m.useEffect(()=>{o!==s.current&&(s.current=o,e(o))},[o,e]),m.useImperativeHandle(i,()=>c.current||{},[]),m.createElement(`div`,{ref:l,...r,className:R(`mt-2`,t&&`mb-2`,o&&`view`,r?.className)},n)}var xq=m.forwardRef(bq);function Sq({fromMe:e,sameSenderAbove:t,title:n,senderName:r,senderAvatar:i,date:a=new Date,language:o=`en`,statusSent:s,avatarProps:c,bubbleProps:l,titleProps:u,formattedDateProps:d,statusSentProps:f,children:p,...h},g){let _=!!((c||i)&&!t),v=!!((c||i)&&t);return m.createElement(xq,{ref:g,...h,className:R(`flex relative text-left whitespace-pre-wrap`,e?`self-end flex-row-reverse ml-12`:`self-start mr-12`,t&&`mt-1`)},_&&m.createElement(Dp,{name:r,src:i,imageProps:{className:`bg-blue-200`},fallbackProps:{className:`bg-blue-200`},...c,className:R(`mt-1 mr-1`,c?.className)}),m.createElement(`div`,{className:R(`relative flex flex-col min-w-50 max-w-120 rounded-xl px-2 pt-2 pb-6 shadow-sm`,e?`bg-gray-200`:`bg-blue-200`,v&&`ml-9`,l?.className)},(n||r)&&m.createElement(`span`,{...u,className:R(`font-semibold`,n&&`mb-1 py-1.5 text-xs text-muted-foreground italic border-b`,u?.className)},n||r),p,m.createElement(`div`,{className:`absolute bottom-1 right-2 flex items-center gap-1 italic`},m.createElement(vq,{date:a,language:o,distanceToNow:!0,...d}),m.createElement(yq,{status:s,...f}))))}var Cq=m.memo(m.forwardRef(Sq));Cq.displayName=`ChatBubbleMessage`;function wq({info:e=``,iconElement:t,date:n=new Date,language:r=`en`,infoProps:i,formattedDateProps:a,...o},s){return m.createElement(xq,{ref:s,...o,className:R(`flex items-center justify-center gap-2 rounded-full w-fit bg-ring/20 mx-auto px-3 py-1.5 mt-2`)},t,m.createElement(`span`,{...i,className:R(`text-sm mb-px`,i?.className)},e),m.createElement(vq,{date:n,language:r,distanceToNow:!0,...a}))}var Tq=m.memo(m.forwardRef(wq));Tq.displayName=`ChatBubbleInfo`;var Eq=e=>{if(e.length===0)return e;let t=document.createElement(`div`);return t.innerHTML=e,t.textContent.trim()};function Dq({thin:e=!1,title:t=``,description:n=``,icon:r,iconFallbackElement:i,image:a,onReady:o=()=>{},titleContainerProps:s,iconProps:c,iconFallbackProps:l,titleProps:u,descriptionProps:d,imageContainerProps:f,imageProps:p,...h},g){let[_,v]=m.useState(r),[y,b]=m.useState(a),x=e=>{p?.onLoad?.(e),o()},S=e=>{c?.onError?.(e),v(void 0)},C=e=>{p?.onError?.(e),b(void 0)};return m.createElement(`a`,{ref:g,target:`_blank`,rel:`noopener noreferrer`,...h,className:R(`transition-color duration-300 ease-out`,`grid items-start gap-2 p-2 mt-1 overflow-hidden rounded border-l-4 border-l-ring bg-white hover:bg-ring/20`,e?`grid-cols-3`:`grid-cols-1`,h?.className)},m.createElement(`div`,{...s,className:R(`flex items-start gap-2`,e?`col-span-3`:`col-span-1`,s?.className)},_?m.createElement(`img`,{alt:`icon`,src:_,...c,onError:S,className:R(`size-5`,c?.className)}):i||m.createElement(Td,{...l,className:R(`size-5`,l?.className)}),m.createElement(`span`,{...u,className:R(`text-sm font-bold`,e?`line-clamp-1`:`line-clamp-2`,u?.className)},Eq(t))),n&&m.createElement(`span`,{...d,className:R(`text-sm line-clamp-5`,e?y?`col-span-2`:`col-span-3`:`col-span-1`,d?.className)},Eq(n)),y&&m.createElement(`div`,{...f,className:R(`flex items-center justify-center`,f?.className)},m.createElement(`img`,{alt:`banner`,src:y,...p,onLoad:x,onError:C,className:R(`rounded max-w-full object-contain`,e?`max-h-25`:`max-h-60`,p?.className)})))}var Oq=m.memo(m.forwardRef(Dq));Oq.displayName=`LinkPreview`;var kq=({id:e,text:t=``,onReady:n=()=>{}})=>{let[r,i,a,o]=zi($t(e=>[e.addUrls,e.matchUrlsFromMessage,e.urlPreviews,e.fetchedCount])),s=i(t),c=(0,m.useRef)(o);return(0,m.useEffect)(()=>{s&&r(s)},[s]),(0,m.useEffect)(()=>{o>c.current&&(c.current=o,n())},[o]),m.default.createElement(`div`,{className:`flex flex-col gap-1`},s.map((t,r,i)=>{let o=a.get(t);if(o){let t=`link_preview_${e||Yu()}_${r}`,a=i.length>1,{url:s,title:c,description:l,images:u,favicons:d}=o;return m.default.createElement(Oq,{key:t,href:s,thin:a,title:c,description:l,icon:d?.[0],image:u?.[0],onReady:n})}return null}))};function Aq(e){let t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60,i=e=>String(e).padStart(2,`0`);return t>0?`${t}:${i(n)}:${i(r)}`:`${i(n)}:${i(r)}`}var jq=({isLast:e,message:t,prevMessage:n,scrollToBottom:r=()=>{}})=>{let{isConnected:i,selectedDialog:a,currentUserId:o,users:s,readMessage:c}=gr(),l=Si(e=>e.enableUrlPreview),u=aa(e=>e.onMessageBeforeDisplay),{t:d,i18n:f}=nt(),p=f.language,h=a?._id??``,g=t._id,_=t.message||t.body,v=typeof _==`string`&&typeof u==`function`?u(_):_,y=e=>{r(g,e)},b=()=>{i&&!x&&!ee&&!t.read&&!t.callHistory&&c(g,t.sender_id,h)},x=o===t.sender_id,S={date:typeof t.date_sent==`number`?t.date_sent*1e3:new Date,language:p};if(t.callHistory){let n=_,r=Number(t.callType),i=``;switch(n){case`reject`:i+=d(x?`CallHistory.RejectedIncoming`:`CallHistory.RejectedOutgoing`);break;case`notAnswer`:i+=d(x?`CallHistory.Unanswered`:`CallHistory.Missed`);break;case`cancel`:i+=d(x?`CallHistory.Canceled`:`CallHistory.Missed`);break;default:i+=d(`CallHistory.Ended`);break}return i+=` `,i+=r===tn.CallType.VIDEO?d(`CallHistory.videoCall`):r===tn.CallType.AUDIO?d(`CallHistory.audioCall`):d(`CallHistory.defaultCall`),t.duration&&(i+=` - ${Aq(Number(t.duration))}`),m.default.createElement(Tq,{isLast:e,info:i,formattedDateProps:S,iconElement:m.default.createElement(aq,{fromMe:x,status:n})})}let C=a?.type===tn.DialogType.GROUP,w=n?.sender_id===t.sender_id&&!n.callHistory&&!n.custom,T=C&&!x?s[t.sender_id]:void 0,E=T?ci(T,!0):void 0,D=T?li(T?.avatar):void 0,ee=!!t.custom&&t.tag===mt.AI_TEXT_SUMMARY,O=t.attachments?.[0],k=ee?{fallbackIconElement:m.default.createElement(Wd,{className:`text-orange-500`})}:void 0,A=O?{className:`mb-2`}:void 0;return m.default.createElement(Cq,{isLast:e,fromMe:x,sameSenderAbove:w,title:t.title,senderName:E,senderAvatar:D,onView:b,avatarProps:k,titleProps:A,formattedDateProps:S,statusSent:t.status},O?m.default.createElement(ZW,{uid:O.uid,url:O.url,mimeType:O.type,pending:t.pending,onReady:y}):m.default.createElement(iq,{text:v,pending:t.pending,onReady:y}),l&&m.default.createElement(kq,{id:g,text:v,onReady:y}))},Mq=null,{min:Nq,max:Pq,abs:Fq,floor:Iq}=Math,Lq=(e,t,n)=>Nq(n,Pq(t,e)),Rq=e=>[...e].sort((e,t)=>e-t),zq=typeof queueMicrotask==`function`?queueMicrotask:e=>{Promise.resolve().then(e)},Bq=()=>{let e;return[new Promise(t=>{e=t}),e]},Vq=e=>{let t;return()=>(e&&=(t=e(),void 0),t)},Hq=(e,t,n)=>{let r=n?`unshift`:`push`;for(let n=0;n<t;n++)e[r](-1);return e},Uq=(e,t)=>{let n=e.t[t];return n===-1?e.o:n},Wq=(e,t,n)=>{let r=e.t[t]===-1;return e.t[t]=n,e.i=Nq(t,e.i),r},Gq=(e,t)=>{if(!e.l)return 0;if(e.i>=t)return e.u[t];e.i<0&&(e.u[0]=0,e.i=0);let n=e.i,r=e.u[n];for(;n<t;)r+=Uq(e,n),e.u[++n]=r;return e.i=t,r},Kq=(e,t,n=0,r=e.l-1)=>{let i=n;for(;n<=r;){let a=Iq((n+r)/2);Gq(e,a)<=t?(i=a,n=a+1):r=a-1}return Lq(i,0,e.l-1)},qq=(e,t,n)=>{let r=t-e.l;return e.i=n?-1:Nq(t-1,e.i),e.l=t,r>0?(Hq(e.u,r),Hq(e.t,r,n),e.o*r):(e.u.splice(r),(n?e.t.splice(0,-r):e.t.splice(r)).reduce((t,n)=>t-(n===-1?e.o:n),0))},Jq=typeof window<`u`,Yq=e=>e.documentElement,Xq=e=>e.ownerDocument,Zq=e=>e.defaultView,Qq=Vq(()=>!!/iP(hone|od|ad)/.test(navigator.userAgent)||navigator.platform===`MacIntel`&&navigator.maxTouchPoints>0),$q=Vq(()=>`scrollBehavior`in Yq(document).style),eJ=e=>Pq(e.h(),e.p()),tJ=(e,t=40,n=0,r,i=!1)=>{let a=!!n,o=1,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=Mq,g=[0,a?Pq(n-1,0):-1],_=0,v=!1,y=((e,t,n)=>({o:t,t:n?Hq(n.slice(0,Nq(e,n.length)),Pq(0,e-n.length)):Hq([],e),l:e,i:-1,u:Hq([],e+1)}))(e,r?r[1]:t,r&&r[0]),b=new Set,x=()=>l-c,S=()=>x()+d+u,C=(e,t)=>((e,t,n,r)=>{if(r=Nq(r,e.l-1),Gq(e,r)<=t){let i=Kq(e,n,r);return[Kq(e,t,r,i),i]}{let i=Kq(e,t,void 0,r);return[i,Kq(e,n,i)]}})(y,e,t,g[0]),w=()=>Gq(y,y.l),T=(e,t)=>{let n=Gq(y,e)-d;return t?w()-n-E(e):n},E=e=>Uq(y,e),D=(e,t=-1)=>y.t[e]===t,ee=e=>{e&&(Qq()&&p!==0||h&&m===1?d+=e:u+=e)};return{v:()=>{b.clear()},m:()=>o,_:()=>(e=>[e.t.slice(),e.o])(y),S:(e=200)=>{if(!v||a)return g;let t,n;if(f)[t,n]=g;else{let r=Pq(0,S()),a=r+s;i||(e=Pq(0,e),p!==1&&(r-=e),p!==2&&(a+=e)),[t,n]=g=C(Pq(0,r),Pq(0,a)),h&&(t=Nq(t,h[0]),n=Pq(n,h[1]))}return[Pq(t,0),Nq(n,y.l-1)]},$:e=>Kq(y,e-c),I:D,k:T,R:E,T:()=>y.l,C:()=>l,M:()=>p!==0,p:()=>s,O:()=>c,h:w,H:()=>(f=u,u=0,[f,m===2]),W:(e,t)=>{let n=[e,t];return b.add(n),()=>{b.delete(n)}},B:(e,t)=>{let n,r,g=0;switch(e){case 1:{if(t===l&&m===0)break;let e=f;f=0;let n=t-l,i=Fq(n);e&&i<Fq(e)+1||m!==0||(p=n<0?2:1),a&&=!1,l=t,g=4;let o=x();o>=-s&&o<=w()&&(g+=1,r=i>s);break}case 2:g=8,p!==0&&(n=!0,g+=1),p=0,m=0,h=Mq;break;case 3:{let e=t.filter(([e,t])=>!D(e,t));if(!e.length)break;ee(e.reduce((e,[t,n])=>{let r;if(m===2)r=!0;else if(h&&m===1)r=t<h[0];else{let e=x(),n=T(t),i=E(t);r=p!==1&&m===0?n+i<=e:n<e&&n+i<e+s}return r&&(e+=n-E(t)),e},0));for(let[t,n]of e){let e=E(t),r=Wq(y,t,n);i&&(_+=r?n:n-e)}i&&s&&_>s&&(ee(((e,t)=>{let n=0,r=[];e.t.forEach((e,i)=>{e!==-1&&(r.push(e),i<t&&n++)}),e.i=-1;let i=Rq(r),a=i.length,o=a/2|0,s=a%2==0?(i[o-1]+i[o])/2:i[o],c=e.o;return((e.o=s)-c)*Pq(t-n,0)})(y,Kq(y,S()))),i=!1),g=3,r=!0;break}case 4:s!==t&&(s||(v=r=!0),s=t,g=3);break;case 5:t[1]?(ee(qq(y,t[0],!0)),m=2,g=1):(qq(y,t[0]),g=1);break;case 6:c=t;break;case 7:m=1;break;case 8:h=C(t,t+s),g=1}g&&(o=1+(2147483647&o),n&&d&&(u+=d,d=0),b.forEach(([e,t])=>{g&e&&t(r)}))}}},nJ=setTimeout,rJ=(e,t)=>t?-e:e,iJ=(e,t,n,r,i,a)=>{let o=Date.now,s=0,c=!1,l=!1,u=!1,d=!1,f=(()=>{let t,n=()=>{t!=Mq&&clearTimeout(t)},r=()=>{n(),t=nJ(()=>{t=Mq,(()=>{if(c||l)return c=!1,void f();u=!1,e.B(2)})()},150)};return r.J=n,r})(),p=()=>{s=o(),u&&(d=!0),a&&e.B(6,a()),e.B(1,r()),f()},m=t=>{if(c||!e.M()||t.ctrlKey)return;let r=o()-s;150>r&&50<r&&(n?t.deltaX:t.deltaY)&&(c=!0)},h=()=>{l=!0,u=d=!1},g=()=>{l=!1,Qq()&&(u=!0)};return t.addEventListener(`scroll`,p),t.addEventListener(`wheel`,m,{passive:!0}),t.addEventListener(`touchstart`,h,{passive:!0}),t.addEventListener(`touchend`,g,{passive:!0}),{A:()=>{t.removeEventListener(`scroll`,p),t.removeEventListener(`wheel`,m),t.removeEventListener(`touchstart`,h),t.removeEventListener(`touchend`,g),f.J()},L:()=>{let[t,n]=e.H();t&&(i(t,n,d),d=!1,n&&e.p()>e.h()&&e.B(1,r()))}}},aJ=(e,t,n)=>{let r;return[async(i,a)=>{if(!await t())return;r&&r();let o=()=>{let[t,n]=Bq();return r=()=>{n(!1)},e.p()&&nJ(r,150),[t,e.W(2,()=>{n(!0)})]};if(a&&$q())e.B(8,i()),zq(async()=>{for(;;){let t=!0;for(let[n,r]=e.S();n<=r;n++)if(e.I(n)){t=!1;break}if(t)break;let[n,r]=o();try{if(!await n)return}finally{r()}}e.B(7),n(i(),a)});else for(;;){let[t,r]=o();try{if(e.B(7),n(i()),!await t)return}finally{r()}}},()=>{r&&r()}]},oJ=(e,t)=>{let n,r,i=Bq(),a=!1,o=t?`scrollLeft`:`scrollTop`,s=t?`overflowX`:`overflowY`,[c,l]=aJ(e,()=>i[0],(e,r)=>{e=rJ(e,a),r?n.scrollTo({[t?`left`:`top`]:e,behavior:`smooth`}):n[o]=e});return{N(c,u){n=u,t&&(a=getComputedStyle(u).direction===`rtl`),r=iJ(e,u,t,()=>rJ(u[o],a),(t,n,r)=>{if(r){let e=u.style,t=e[s];e[s]=`hidden`,nJ(()=>{e[s]=t})}u[o]=rJ(e.C()+t,a),n&&l()}),i[1](!0)},v(){r&&r.A(),i[1](!1),i=Bq()},P:()=>a,V(e){c(()=>e)},X(t){t+=e.C(),c(()=>t)},Y(t,{align:n,smooth:r,offset:i=0}={}){if(t=Lq(t,0,e.T()-1),n===`nearest`){let r=e.k(t),i=e.C();if(r<i)n=`start`;else{if(!(r+e.R(t)>i+e.p()))return;n=`end`}}c(()=>i+e.O()+e.k(t)+(n===`end`?e.R(t)-e.p():n===`center`?(e.R(t)-e.p())/2:0),r)},q:()=>{r&&r.L()}}},sJ=e=>{let t;return{j(n){(t||=new(Zq(Xq(n))).ResizeObserver(e)).observe(n)},D(e){t.unobserve(e)},A(){t&&t.disconnect()}}},cJ=(e,t)=>{let n,r=t?`width`:`height`,i=new WeakMap,a=sJ(t=>{let a=[];for(let{target:o,contentRect:s}of t)if(o.offsetParent)if(o===n)e.B(4,s[r]);else{let e=i.get(o);e!=Mq&&a.push([e,s[r]])}a.length&&e.B(3,a)});return{G(e){a.j(n=e)},U:(e,t)=>(i.set(e,t),a.j(e),()=>{i.delete(e),a.D(e)}),v:a.A}},lJ=Jq?m.useLayoutEffect:m.useEffect,uJ=`current`,dJ=(e,t)=>{if(Array.isArray(e))for(let n of e)dJ(n,t);else e==null||typeof e==`boolean`||t.push(e)},fJ=(e,t)=>e.key??`_`+t,pJ=e=>{let t=(0,m.useRef)(null);return t[uJ]||(t[uJ]=e())},mJ=e=>{let t=(0,m.useRef)(e);return lJ(()=>{t[uJ]=e},[e]),t},hJ=(0,m.memo)(({Z:e,ee:t,te:n,oe:r,ne:i,re:a,se:o,ie:s})=>{let c=(0,m.useRef)(null);lJ(()=>t(c[uJ],n),[n]);let l=(0,m.useMemo)(()=>{let e={contain:`layout style`,position:i&&s?void 0:`absolute`,[o?`height`:`width`]:`100%`,[o?`top`:`left`]:0,[o?`left`:`top`]:r,visibility:!i||s?void 0:`hidden`};return o&&(e.display=`inline-flex`),e},[r,i,s,o]);return(0,P.jsx)(a,typeof a==`string`?{ref:c,style:l,children:e}:{ref:c,style:l,index:n,children:e})}),gJ=(e,t)=>(0,m.useMemo)(()=>{if(typeof e==`function`)return[n=>e(t[n],n),t.length];let n=(e=>{let t=[];return dJ(e,t),t})(e);return[e=>n[e],n.length]},[e,t]),_J=(0,m.forwardRef)(({children:e,data:t,bufferSize:r,itemSize:i,shift:a,horizontal:o,keepMounted:s,cache:c,startMargin:l=0,ssrCount:u,as:d=`div`,item:f=`div`,scrollRef:p,onScroll:h,onScrollEnd:g},_)=>{let[v,y]=gJ(e,t),b=(0,m.useRef)(null),x=(0,m.useRef)(!!u),S=mJ(h),C=mJ(g),[w,T,E,D]=pJ(()=>{let e=!!o,t=tJ(y,i,u,c,!i);return[t,cJ(t,e),oJ(t,e),e]});y!==w.T()&&w.B(5,[y,a]),l!==w.O()&&w.B(6,l);let[ee,O]=(0,m.useReducer)(w.m,void 0,w.m),k=w.M(),A=w.h(),j=E.P(),te=[],M=e=>{let t=v(e);return(0,P.jsx)(hJ,{ee:T.U,te:e,oe:w.k(e,j),ne:w.I(e),re:f,Z:t,se:D,ie:x[uJ]},fJ(t,e))};if(lJ(()=>{x[uJ]=!1,w.W(1,e=>{e?(0,n.flushSync)(O):O()}),w.W(4,()=>{S[uJ]&&S[uJ](w.C())}),w.W(8,()=>{C[uJ]&&C[uJ]()});let e=b[uJ],t=t=>{T.G(t),E.N(e,t)};return p?zq(()=>{p[uJ]&&t(p[uJ])}):t(e.parentElement),()=>{w.v(),T.v(),E.v()}},[]),lJ(()=>{E.q()},[ee]),(0,m.useImperativeHandle)(_,()=>({get cache(){return w._()},get scrollOffset(){return w.C()},get scrollSize(){return eJ(w)},get viewportSize(){return w.p()},findItemIndex:w.$,getItemOffset:w.k,getItemSize:w.R,scrollToIndex:E.Y,scrollTo:E.V,scrollBy:E.X}),[]),s){let e=new Set(s);for(let[t,n]=w.S(r);t<=n;t++)e.add(t);Rq([...e]).forEach(e=>{te.push(M(e))})}else for(let[e,t]=w.S(r);e<=t;e++)te.push(M(e));return(0,P.jsx)(d,{ref:b,style:{contain:`size style`,overflowAnchor:`none`,flex:`none`,position:`relative`,width:D?A:`100%`,height:D?`100%`:A,pointerEvents:k?`none`:void 0},children:te})}),vJ=(0,m.forwardRef)(({children:e,data:t,bufferSize:n,itemSize:r,shift:i,horizontal:a,keepMounted:o,cache:s,ssrCount:c,item:l,onScroll:u,onScrollEnd:d,style:f,...p},m)=>(0,P.jsx)(`div`,{...p,style:{display:a?`inline-block`:`block`,[a?`overflowX`:`overflowY`]:`auto`,contain:`strict`,width:`100%`,height:`100%`,...f},children:(0,P.jsx)(_J,{ref:m,data:t,bufferSize:n,itemSize:r,shift:i,horizontal:a,keepMounted:o,cache:s,ssrCount:c,item:l,onScroll:u,onScrollEnd:d,children:e})}));function yJ({title:e,description:t,actions:n=[],onAction:r=()=>{},containerProps:i,titleProps:a,descriptionProps:o,actionProps:s,...c},l){return n.length?m.createElement(`div`,{ref:l,...i,className:R(`flex flex-col h-full overflow-y-auto py-2`,i?.className)},m.createElement(`div`,{className:`grow`}),m.createElement(`div`,{...c,className:R(`grid gap-2 m-4`,c?.className)},e&&m.createElement(`h2`,{...a,className:R(`font-medium text-foreground text-lg`,a?.className)},e),t&&m.createElement(`span`,{...o,className:R(`text-sm text-muted-foreground mb-4`,o?.className)},t),n.map((e,t)=>m.createElement(`div`,{key:t,...s,className:R(`w-full border p-2 rounded-md wrap-break-word cursor-pointer overflow-hidden text-ellipsis bg-ring/5 hover:bg-ring/20 transition-colors duration-200 ease-out`,s?.className),onClick:()=>r(e)},e)))):null}var bJ=m.forwardRef(yJ);bJ.displayName=`QuickActions`;function xJ({children:e,...t}){return m.createElement(`div`,{...t,className:R(`relative size-full min-h-0`,t?.className)},e)}function SJ({key:e,loading:t=!1,textareaMeasurement:n,offsetToReach:r=200,onScrollStartReached:i,onScrollEndReached:a,onListReset:o,onListCreate:s,onListGrow:c,enableFilePickerDropzone:l=!0,containerProps:u,filePickerDropzoneProps:d,quickActionsProps:f,children:p,quickActionsVisible:h,minItemsCount:g=1,shift:_=!1,...v},y){let b=l?Ux:xJ,x=l?d:u,S=Array.isArray(p)?p.length:Array.isArray(v.data)?v.data.length:0,C=m.useRef(0),w=m.useRef(void 0),[T,E]=m.useState(!1),[D,ee]=m.useState(_),O=m.useRef(null),k=()=>{queueMicrotask(()=>{E(!0),queueMicrotask(()=>E(!1))})},A=async e=>{v.onScroll?.(e),O.current&&(typeof i==`function`&&e<r&&i(),typeof a==`function`&&O.current.viewportSize+e+r>O.current.scrollSize&&a())},j=m.useCallback((e=!1)=>{!O.current||S===0||(e||O.current.scrollSize-O.current.scrollOffset<O.current.viewportSize*2)&&requestAnimationFrame(()=>{O.current?.scrollToIndex(S-1,{align:`start`})})},[S]);return m.useEffect(()=>{e!==w.current&&(k(),o?.(w.current,e),w.current=e,C.current=0)},[e,o]),m.useEffect(()=>{if(C.current===0&&S>0&&(k(),s?.(),C.current=S,j(!0)),S>C.current){let e=D;c?.(),C.current=S,e?queueMicrotask(()=>ee(!1)):j()}},[S,D,s,c,j]),m.useEffect(()=>{O.current?.scrollBy(n.shift)},[n]),m.useImperativeHandle(y,()=>({...O.current||{},scrollToBottom:j,setShift:ee}),[j]),T?null:g>S?h?m.createElement(bJ,f):m.createElement(Xd,{loading:!0,layout:`centered`}):m.createElement(b,x,m.createElement(Xd,{loading:t,className:`my-5`}),m.createElement(`div`,{className:`flex flex-col h-full overflow-y-auto px-2`},m.createElement(`div`,{className:`grow`}),m.createElement(_J,{ref:O,onScroll:A,shift:D,...v},p)))}var CJ=m.forwardRef(SJ);CJ.displayName=`ChatList`;var wJ=({onSendMessage:e,onSendAttachment:t,textareaMeasurement:n})=>{let{t:r}=nt(),{selectedDialog:i,messages:a,fetchNextMessages:o,totalMessagesReached:s}=gr(),c=Gt(e=>e.singleView),[l,u]=Si($t(e=>[e.attachmentsAccept,e.enableUrlPreview])),d=zi(e=>e.matchUrlsFromMessage),f=Mi(e=>e.quickActions),p=i?._id??``,h=(0,m.useMemo)(()=>a[p]??[],[a,p]),g=s.includes(p),_=(0,m.useRef)(new Set),v=(0,m.useRef)(null),[y,b]=(0,m.useState)(!1),x=(0,m.useRef)(!1),S=(0,m.useRef)(null),C=async()=>{g||x.current||(x.current=!0,b(!0),S.current?.setShift(!0),await o(p),b(!1),x.current=!1)},w=(0,m.useCallback)((e,t=!1)=>{_.current.has(e)&&!t||(_.current.add(e),v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{requestAnimationFrame(()=>{S.current?.scrollToBottom(t),v.current=null})},t?100:300))},[]),T=(0,m.useCallback)(e=>{let t=e.attachments?.[0]?.type||``,n=u?d(e.message):[];return[`video`,`image`].some(e=>t.startsWith(e))||n.length>0},[u,d]),E=(0,m.useMemo)(()=>h.reduce((e,t,n)=>(T(t)&&e.push(n),e),[]),[h,T]),D=(0,m.useMemo)(()=>h.map((e,t,n)=>{let r=t===n.length-1,i=n[t-1];return m.default.createElement(jq,{key:e._id,message:e,prevMessage:i,isLast:r,scrollToBottom:w})}),[h,w]);return i?m.default.createElement(CJ,{ref:S,key:p,loading:y,keepMounted:E,minItemsCount:c?2:1,onScrollStartReached:C,onListReset:()=>{_.current=new Set},textareaMeasurement:n,quickActionsVisible:a[p]!==void 0,quickActionsProps:{...f,onAction:e},filePickerDropzoneProps:{accept:l,onSelectFile:t,onInvalidFile:()=>pf.warning(r(`FileTypeNotSupported`)),placeholder:r(`DragAndDrop`)}},D):c?m.default.createElement(Xd,{loading:!0,layout:`centered`}):m.default.createElement(zW,{title:r(`ChooseChat`),className:`text-lg text-gray-500`})},TJ=e=>e.type===`checkbox`,EJ=e=>e instanceof Date,DJ=e=>e==null,OJ=e=>typeof e==`object`,kJ=e=>!DJ(e)&&!Array.isArray(e)&&OJ(e)&&!EJ(e),AJ=e=>kJ(e)&&e.target?TJ(e.target)?e.target.checked:e.target.value:e,jJ=(e,t)=>t.split(`.`).some((t,n,r)=>!isNaN(Number(t))&&e.has(r.slice(0,n).join(`.`))),MJ=e=>{let t=e.constructor&&e.constructor.prototype;return kJ(t)&&t.hasOwnProperty(`isPrototypeOf`)},NJ=typeof window<`u`&&window.HTMLElement!==void 0&&typeof document<`u`;function PJ(e){if(e instanceof Date)return new Date(e);let t=typeof FileList<`u`&&e instanceof FileList;if(NJ&&(e instanceof Blob||t))return e;let n=Array.isArray(e);if(!n&&!(kJ(e)&&MJ(e)))return e;let r=n?[]:Object.create(Object.getPrototypeOf(e));for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=PJ(e[t]));return r}var FJ={BLUR:`blur`,FOCUS_OUT:`focusout`,CHANGE:`change`,SUBMIT:`submit`,TRIGGER:`trigger`,VALID:`valid`},IJ={onBlur:`onBlur`,onChange:`onChange`,onSubmit:`onSubmit`,onTouched:`onTouched`,all:`all`},LJ={max:`max`,min:`min`,maxLength:`maxLength`,minLength:`minLength`,pattern:`pattern`,required:`required`,validate:`validate`},RJ=`root`,zJ=[`__proto__`,`constructor`,`prototype`],BJ=/^\w*$/,VJ=e=>BJ.test(e),HJ=e=>e===void 0,UJ=/[.[\]'"]/,WJ=e=>e.split(UJ).filter(Boolean),$=(e,t,n)=>{if(!t||!kJ(e))return n;let r=VJ(t)?[t]:WJ(t);if(r.some(e=>zJ.includes(e)))return n;let i=r.reduce((e,t)=>DJ(e)?void 0:e[t],e);return HJ(i)||i===e?HJ(e[t])?n:e[t]:i},GJ=e=>typeof e==`boolean`,KJ=e=>typeof e==`function`,qJ=(e,t,n)=>{let r=-1,i=VJ(t)?[t]:WJ(t),a=i.length,o=a-1;for(;++r<a;){let t=i[r],a=n;if(r!==o){let n=e[t];a=kJ(n)||Array.isArray(n)?n:isNaN(+i[r+1])?{}:[]}if(zJ.includes(t))return;e[t]=a,e=e[t]}},JJ=m.default.createContext(null);JJ.displayName=`HookFormControlContext`;var YJ=(e,t,n,r=!0)=>{let i={};for(let a in e)Object.defineProperty(i,a,{get:()=>{let i=a;return t._proxyFormState[i]!==IJ.all&&(t._proxyFormState[i]=!r||IJ.all),n&&(n[i]=!0),e[i]}});return i},XJ=NJ?m.default.useLayoutEffect:m.default.useEffect,ZJ=e=>typeof e==`string`,QJ=(e,t,n,r,i)=>ZJ(e)?(r&&t.watch.add(e),$(n,e,i)):Array.isArray(e)?e.map(e=>(r&&t.watch.add(e),$(n,e))):(r&&(t.watchAll=!0),n),$J=e=>DJ(e)||!OJ(e),eY=(e,t)=>t.length===0&&!Array.isArray(e)&&!MJ(e);function tY(e,t,n=new WeakMap){if(e===t)return!0;if($J(e)||$J(t))return Object.is(e,t);if(EJ(e)&&EJ(t))return Object.is(e.getTime(),t.getTime());let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;if(eY(e,r)||eY(t,i))return Object.is(e,t);if(!r.length&&Array.isArray(e)!==Array.isArray(t))return!1;let a=n.get(e);if(a&&a.has(t))return!0;if(a)a.add(t);else{let r=new WeakSet;r.add(t),n.set(e,r)}for(let i of r){let r=e[i];if(!(i in t))return!1;if(i!==`ref`){let e=t[i];if(EJ(r)&&EJ(e)||(kJ(r)||Array.isArray(r))&&(kJ(e)||Array.isArray(e))?!tY(r,e,n):!Object.is(r,e))return!1}}return!0}var nY=e=>{let t={};for(let n of Object.keys(e))if(OJ(e[n])&&e[n]!==null&&!EJ(e[n])){let r=nY(e[n]);for(let e of Object.keys(r))t[`${n}.${e}`]=r[e]}else t[n]=e[n];return t},rY=m.default.createContext(null);rY.displayName=`HookFormContext`;var iY=(e,t,n,r,i)=>t?{...n[e],types:{...n[e]&&n[e].types?n[e].types:{},[r]:i||!0}}:{},aY=e=>Array.isArray(e)?e.filter(Boolean):[],oY=e=>Array.isArray(e)?e:[e],sY=()=>{let e=[];return{get observers(){return e},next:t=>{for(let n of e)n.next&&n.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter(e=>e!==t)}}),unsubscribe:()=>{e=[]}}};function cY(e,t){let n={};for(let r in e)if(e.hasOwnProperty(r)){let i=e[r],a=t[r];if(i&&kJ(i)&&a){let e=cY(i,a);kJ(e)&&(n[r]=e)}else e[r]&&(n[r]=a)}return n}var lY=e=>kJ(e)&&!Object.keys(e).length,uY=e=>e.type===`file`,dY=e=>{if(!NJ)return!1;let t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},fY=e=>e.type===`select-multiple`,pY=e=>e.type===`radio`,mY=e=>pY(e)||TJ(e),hY=e=>dY(e)&&e.isConnected;function gY(e,t){let n=t.slice(0,-1).length,r=0;for(;r<n;){if(DJ(e)){e=void 0;break}e=e[t[r]],r++}return e}function _Y(e){for(let t in e)if(e.hasOwnProperty(t)&&!HJ(e[t]))return!1;return!0}function vY(e,t){if(ZJ(t)&&Object.prototype.hasOwnProperty.call(e,t))return delete e[t],e;let n=Array.isArray(t)?t:VJ(t)?[t]:WJ(t);if(n.some(e=>zJ.includes(String(e))))return e;let r=n.length===1?e:gY(e,n),i=n.length-1,a=n[i];return r&&delete r[a],i!==0&&(kJ(r)&&lY(r)||Array.isArray(r)&&_Y(r))&&vY(e,n.slice(0,-1)),e}var yY=e=>{for(let t in e)if(KJ(e[t]))return!0;return!1};function bY(e){return Array.isArray(e)||kJ(e)&&!yY(e)}function xY(e,t={}){for(let n in e){let r=e[n];bY(r)?(t[n]=Array.isArray(r)?[]:{},xY(r,t[n])):HJ(r)||(t[n]=!0)}return t}function SY(e){if(e!==!1){if(e===!0)return!0;if(Array.isArray(e)){let t=e.map(e=>SY(e));return t.some(e=>e!==void 0)?t:void 0}if(kJ(e)){let t={};for(let n in e){let r=SY(e[n]);HJ(r)||(t[n]=r)}return Object.keys(t).length?t:void 0}}}function CY(e,t,n){n||=xY(t);for(let r in e){let i=e[r];if(bY(i))HJ(t)||$J(n[r])?n[r]=xY(i,Array.isArray(i)?[]:{}):CY(i,DJ(t)?{}:t[r],n[r]);else{let e=t[r];n[r]=!tY(i,e)}}return SY(n)||{}}var wY={value:!1,isValid:!1},TY={value:!0,isValid:!0},EY=e=>{if(Array.isArray(e)){if(e.length>1){let t=e.filter(e=>e&&e.checked&&!e.disabled).map(e=>e.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!HJ(e[0].attributes.value)?HJ(e[0].value)||e[0].value===``?TY:{value:e[0].value,isValid:!0}:TY:wY}return wY},DY=(e,{valueAsNumber:t,valueAsDate:n,setValueAs:r})=>HJ(e)?e:t?e===``?NaN:e&&+e:n&&ZJ(e)?new Date(e):r?r(e):e,OY={isValid:!1,value:null},kY=e=>Array.isArray(e)?e.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e,OY):OY;function AY(e){let t=e.ref;return uY(t)?t.files:pY(t)?kY(e.refs).value:fY(t)?[...t.selectedOptions].map(({value:e})=>e):TJ(t)?EY(e.refs).value:DY(HJ(t.value)?e.ref.value:t.value,e)}var jY=(e,t,n,r)=>{let i={};for(let n of e){let e=$(t,n);e&&qJ(i,n,e._f)}return{criteriaMode:n,names:[...e],fields:i,shouldUseNativeValidation:r}},MY=e=>e instanceof RegExp,NY=e=>HJ(e)?e:MY(e)?e.source:kJ(e)?MY(e.value)?e.value.source:e.value:e,PY=e=>({isOnSubmit:!e||e===IJ.onSubmit,isOnBlur:e===IJ.onBlur,isOnChange:e===IJ.onChange,isOnAll:e===IJ.all,isOnTouch:e===IJ.onTouched}),FY=`AsyncFunction`,IY=e=>{if(!e||!e.validate)return!1;if(KJ(e.validate))return e.validate.constructor.name===FY;if(kJ(e.validate)){for(let t in e.validate)if(e.validate[t].constructor.name===FY)return!0}return!1},LY=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),RY=(e,t,n)=>{if(n)return!1;if(t.watchAll||t.watch.has(e))return!0;for(let n of t.watch)if(e.startsWith(n)&&e.charAt(n.length)===`.`)return!0;return!1},zY=(e,t,n,r)=>{for(let i of n||Object.keys(e)){let n=$(e,i);if(n){let{_f:e,...a}=n;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],i)&&!r||e.ref&&t(e.ref,e.name)&&!r)return!0;if(zY(a,t))break}else if(kJ(a)&&zY(a,t))break}}};function BY(e,t,n){let r=$(e,n);if(r||VJ(n))return{error:r,name:n};let i=n.split(`.`);for(;i.length;){let r=i.join(`.`),a=$(t,r),o=$(e,r);if(a&&!Array.isArray(a)&&n!==r)return{name:n};if(o&&o.type)return{name:r,error:o};if(o&&o.root&&o.root.type)return{name:`${r}.root`,error:o.root};i.pop()}return{name:n}}var VY=(e,t,n,r)=>{n(e);let{name:i,...a}=e,o=Object.keys(a);return!o.length||r&&o.length>=Object.keys(t).length||o.find(e=>t[e]===(!r||IJ.all))},HY=(e,t,n)=>!e||!t||e===t||oY(e).some(e=>e&&(n?e===t||e.startsWith(t+`.`):e.startsWith(t)||t.startsWith(e))),UY=(e,t,n,r,i)=>i.isOnAll?!1:!n&&i.isOnTouch?!(t||e):(n?r.isOnBlur:i.isOnBlur)?!e:(n?r.isOnChange:i.isOnChange)?e:!0,WY=(e,t)=>!aY($(e,t)).length&&vY(e,t),GY=(e,t,n)=>{let r=$(e,n),i=Array.isArray(r)?r:[];return qJ(i,RJ,t[n]),qJ(e,n,i),e};function KY(e,t,n=`validate`){if(ZJ(e)||Array.isArray(e)&&e.every(ZJ)||GJ(e)&&!e)return{type:n,message:ZJ(e)?e:``,ref:t}}var qY=e=>kJ(e)&&!MY(e)?e:{value:e,message:``},JY=async(e,t,n,r,i,a)=>{let{ref:o,refs:s,required:c,maxLength:l,minLength:u,min:d,max:f,pattern:p,validate:m,name:h,valueAsNumber:g,mount:_}=e._f,v=$(n,h);if(!_||t.has(h))return{};let y=s?s[0]:o,b=e=>{if(i&&y.reportValidity){let t=GJ(e)?``:e||``;s?s.forEach(e=>e.setCustomValidity(t)):y.setCustomValidity(t),y.reportValidity()}},x={},S=pY(o),C=TJ(o),w=S||C,T=(g||uY(o))&&HJ(o.value)&&HJ(v)||dY(o)&&o.value===``||v===``||Array.isArray(v)&&!v.length,E=iY.bind(null,h,r,x),D=(e,t,n,r=LJ.maxLength,i=LJ.minLength)=>{let a=e?t:n;x[h]={type:e?r:i,message:a,ref:o,...E(e?r:i,a)}};if(a?!Array.isArray(v)||!v.length:c&&(!w&&(T||DJ(v))||GJ(v)&&!v||C&&!EY(s).isValid||S&&!kY(s).isValid)){let{value:e,message:t}=ZJ(c)?{value:!!c,message:c}:qY(c);if(e&&(x[h]={type:LJ.required,message:t,ref:y,...E(LJ.required,t)},!r))return b(t),x}if(!T&&(!DJ(d)||!DJ(f))){let e,t,n=qY(f),i=qY(d);if(!DJ(v)&&!isNaN(v)){let r=o.valueAsNumber||v&&+v;DJ(n.value)||(e=r>n.value),DJ(i.value)||(t=r<i.value)}else{let r=o.valueAsDate||new Date(v),a=e=>new Date(new Date().toDateString()+` `+e),s=o.type==`time`,c=o.type==`week`;ZJ(n.value)&&v&&(e=s?a(v)>a(n.value):c?v>n.value:r>new Date(n.value)),ZJ(i.value)&&v&&(t=s?a(v)<a(i.value):c?v<i.value:r<new Date(i.value))}if((e||t)&&(D(!!e,n.message,i.message,LJ.max,LJ.min),!r))return b(x[h].message),x}if((l||u)&&!T&&(ZJ(v)||a&&Array.isArray(v))){let e=qY(l),t=qY(u),n=!DJ(e.value)&&v.length>+e.value,i=!DJ(t.value)&&v.length<+t.value;if((n||i)&&(D(n,e.message,t.message),!r))return b(x[h].message),x}if(p&&!T&&ZJ(v)){let{value:e,message:t}=qY(p);if(MY(e)&&!v.match(e)&&(x[h]={type:LJ.pattern,message:t,ref:o,...E(LJ.pattern,t)},!r))return b(t),x}if(m){if(KJ(m)){let e=KY(await m(v,n),y);if(e&&(x[h]={...e,...E(LJ.validate,e.message)},!r))return b(e.message),x}else if(kJ(m)){let e={};for(let t in m){if(!lY(e)&&!r)break;let i=KY(await m[t](v,n),y,t);i&&(e={...i,...E(t,i.message)},b(i.message),r&&(x[h]=e))}if(!lY(e)&&(x[h]={ref:y,...e},!r))return x}}return b(!0),x},YY={mode:IJ.onSubmit,reValidateMode:IJ.onChange,shouldFocusError:!0},XY=`form`,ZY={submitCount:0,isDirty:!1,isReady:!1,isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{}};function QY(e={}){let t={...YY,...e},n={...PJ(ZY),isLoading:KJ(t.defaultValues),errors:t.errors||{},disabled:t.disabled||!1},r={},i=(kJ(t.defaultValues)||kJ(t.values))&&PJ(t.defaultValues||t.values)||{},a=t.shouldUnregister?{}:PJ(i),o={action:!1,mount:!1,watch:!1,keepIsValid:!1},s={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set,registerName:new Set},c,l=0,u=0,d=PY(t.mode),f=PY(t.reValidateMode),p={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},m={...p},h={...m},g={array:sY(),state:sY()},_=t.criteriaMode===IJ.all,v=e=>t=>{clearTimeout(l),l=setTimeout(e,t)},y=async e=>{if(!o.keepIsValid&&!t.disabled&&(m.isValid||h.isValid||e)){let e;t.resolver?(e=lY((await O()).errors),b()):e=await j({fields:r,onlyCheckValid:!0,eventType:FJ.VALID}),e!==n.isValid&&g.state.next({isValid:e})}},b=(e,r)=>{!t.disabled&&(m.isValidating||m.validatingFields||h.isValidating||h.validatingFields)&&((e||Array.from(s.mount)).forEach(e=>{e&&(r?qJ(n.validatingFields,e,r):vY(n.validatingFields,e))}),g.state.next({validatingFields:n.validatingFields,isValidating:!lY(n.validatingFields)}))},x=()=>{n.dirtyFields=CY(i,a)},S=(e,i=[],s,c,l=!0,u=!0)=>{if(c&&s&&!t.disabled){if(o.action=!0,u&&Array.isArray($(r,e))){let t=s($(r,e),c.argA,c.argB);l&&qJ(r,e,t)}if(u&&Array.isArray($(n.errors,e))){let t=s($(n.errors,e),c.argA,c.argB);l&&qJ(n.errors,e,t),WY(n.errors,e)}if((m.touchedFields||h.touchedFields)&&u&&Array.isArray($(n.touchedFields,e))){let t=s($(n.touchedFields,e),c.argA,c.argB);l&&qJ(n.touchedFields,e,t)}(m.dirtyFields||h.dirtyFields)&&x(),g.state.next({name:e,isDirty:M(e,i),dirtyFields:n.dirtyFields,errors:n.errors,isValid:n.isValid})}else qJ(a,e,i)},C=(e,t)=>{qJ(n.errors,e,t),n.errors={...n.errors},g.state.next({errors:n.errors})},w=e=>{n.errors=e,g.state.next({errors:n.errors,isValid:!1})},T=e=>{let t=VJ(e)?[e]:WJ(e),n=a,r=i;for(let e=0;e<t.length-1;e++){let i=t[e];if(n=DJ(n)?n:n[i],r=DJ(r)?r:r[i],n===null&&r!==null)return!0}return!1},E=(t,c,l,u)=>{let d=$(r,t);if(d){if(T(t))return;let r=HJ($(a,t)),f=$(a,t,HJ(l)?$(i,t):l);HJ(f)||u&&u.defaultChecked||c?qJ(a,t,c?f:AY(d._f)):re(t,f),o.mount&&!o.action&&(y(),r&&n.isDirty&&(m.isDirty||h.isDirty)&&(M()||(n.isDirty=!1,g.state.next({...n}))),e.shouldUnregister&&r&&!HJ($(a,t))&&RY(t,s)&&(o.watch=!0))}},D=(e,r,o,s,c)=>{let l=!1,u=!1,d={name:e};if(!t.disabled){if(!o||s){let t=tY($(i,e),r);(m.isDirty||h.isDirty)&&(u=n.isDirty,n.isDirty=d.isDirty=!t||M(),l=u!==d.isDirty),u=!!$(n.dirtyFields,e),t===n.isDirty?t?vY(n.dirtyFields,e):qJ(n.dirtyFields,e,!0):n.dirtyFields=CY(i,a),d.dirtyFields=n.dirtyFields,l||=(m.dirtyFields||h.dirtyFields)&&u!==!t}if(o){let t=$(n.touchedFields,e);t||(qJ(n.touchedFields,e,o),d.touchedFields=n.touchedFields,l||=(m.touchedFields||h.touchedFields)&&t!==o)}l&&c&&g.state.next(d)}return l?d:{}},ee=(e,r,i,a)=>{let o=$(n.errors,e),s=(m.isValid||h.isValid)&&GJ(r)&&n.isValid!==r;if(t.delayError&&i?(c=v(()=>C(e,i)),c(t.delayError)):(clearTimeout(l),c=null,i?qJ(n.errors,e,i):vY(n.errors,e),n.errors={...n.errors}),(i?!tY(o,i):o)||!lY(a)||s){let t={...a,...s&&GJ(r)?{isValid:r}:{},errors:n.errors,name:e};n={...n,...t},g.state.next(t)}},O=async e=>(b(e,!0),await t.resolver(a,t.context,jY(e||s.mount,r,t.criteriaMode,t.shouldUseNativeValidation))),k=async e=>{let{errors:t}=await O(e);if(b(e),e){for(let r of e){let e=$(t,r);e?s.array.has(r)&&kJ(e)&&!Object.keys(e).some(e=>!Number.isNaN(Number(e)))?GY(n.errors,{[r]:e},r):qJ(n.errors,r,e):vY(n.errors,r)}n.errors={...n.errors}}else n.errors=t;return t},A=async({name:t,eventType:r})=>{if(e.validate){let i=await e.validate({formValues:a,formState:n,name:t,eventType:r});if(kJ(i))for(let e in i){let t=i[e];t&&me(`${XY}.${e}`,{message:ZJ(t.message)?t.message:``,type:t.type||LJ.validate})}else ZJ(i)||!i?me(XY,{message:i||``,type:LJ.validate}):pe(XY);return i}return!0},j=async({fields:r,onlyCheckValid:i,name:o,eventType:c,context:l={valid:!0,runRootValidation:!1}})=>{if(e.validate&&(l.runRootValidation=!0,!await A({name:o,eventType:c})&&(l.valid=!1,i)))return l.valid;for(let o in r){let u=r[o];if(u){let{_f:r,...d}=u;if(r){let o=s.array.has(r.name),c=u._f&&IY(u._f),d=m.validatingFields||m.isValidating||h.validatingFields||h.isValidating;c&&d&&b([r.name],!0);let f=await JY(u,s.disabled,a,_,t.shouldUseNativeValidation&&!i,o);if(c&&d&&b([r.name]),f[r.name]&&(l.valid=!1,i)||(!i&&($(f,r.name)?o?GY(n.errors,f,r.name):qJ(n.errors,r.name,f[r.name]):vY(n.errors,r.name)),e.shouldUseNativeValidation&&f[r.name]))break}!lY(d)&&await j({context:l,onlyCheckValid:i,fields:d,name:o,eventType:c})}}return l.valid},te=()=>{for(let e of s.unMount){let t=$(r,e);t&&(t._f.refs?t._f.refs.every(e=>!hY(e)):!hY(t._f.ref))&&ve(e)}s.unMount=new Set},M=(e,n)=>!t.disabled&&(e&&n&&qJ(a,e,n),!tY(o.mount?a:i,i)),ne=(e,t,n)=>QJ(e,s,{...o.mount?a:HJ(t)?i:ZJ(e)?{[e]:t}:t},n,t),N=e=>aY($(o.mount?a:i,e,t.shouldUnregister?$(i,e,[]):[])),re=(e,t,n={},i=!1,o=!1)=>{let s=$(r,e),c=t;if(s){let n=s._f;n&&(!n.disabled&&qJ(a,e,DY(t,n)),c=dY(n.ref)&&DJ(t)?``:t,fY(n.ref)?[...n.ref.options].forEach(e=>e.selected=c.includes(e.value)):n.refs?TJ(n.ref)?n.refs.forEach(e=>{(!e.defaultChecked||!e.disabled)&&(Array.isArray(c)?e.checked=!!c.find(t=>t===e.value):e.checked=c===e.value||!!c)}):n.refs.forEach(e=>e.checked=e.value===c):uY(n.ref)?n.ref.value=``:(n.ref.value=c,!n.ref.type&&!o&&g.state.next({name:e,values:i?a:PJ(a)})))}(n.shouldDirty||n.shouldTouch)&&D(e,c,n.shouldTouch,n.shouldDirty,!o),n.shouldValidate&&ue(e)},ie=(e,t,n,i=!1,a=!1)=>{for(let o in t){if(!t.hasOwnProperty(o))return;let c=t[o],l=e+`.`+o,u=$(r,l);(s.array.has(e)||kJ(c)||u&&!u._f)&&!EJ(c)?ie(l,c,n,i,a):re(l,c,n,i,a)}},ae=(e,t,i,c,l=!1)=>{let u=$(r,e),d=s.array.has(e),f=c?t:PJ(t),p=tY($(a,e),f);if(p||qJ(a,e,f),d)g.array.next({name:e,values:c?a:PJ(a)}),(m.isDirty||m.dirtyFields||h.isDirty||h.dirtyFields)&&i.shouldDirty&&(x(),l||g.state.next({name:e,dirtyFields:n.dirtyFields,isDirty:M(e,f)}));else{let t=Array.isArray(f)&&!f.length||lY(f);!u||u._f||DJ(f)||t?re(e,f,i,c,l):ie(e,f,i,c,l)}if(!p&&!l){let t=RY(e,s),r=c?a:PJ(a);g.state.next({...t&&n,name:o.mount||t?e:void 0,values:r})}},oe=(e,t,n={})=>ae(e,t,n,!1),se=(e,t={})=>{let r=KJ(e)?e(a):e;if(!tY(a,r)){a={...a,...r};let e=nY(r);for(let n of s.mount)n in e&&ae(n,e[n],t,!0,!0);g.state.next({...n,name:void 0,type:void 0,...u?{values:a}:{}}),t.shouldValidate&&y()}},ce=async i=>{o.mount=!0;let l=i.target,p=l.name,v=!0,x=$(r,p),S=e=>{v=Number.isNaN(e)||EJ(e)&&isNaN(e.getTime())||tY(e,$(a,p,e))};if(x){let o,C,w=l.type?AY(x._f):AJ(i),T=i.type===FJ.BLUR||i.type===FJ.FOCUS_OUT,E=!LY(x._f)&&!e.validate&&!t.resolver&&!$(n.errors,p)&&!x._f.deps,k=E||UY(T,$(n.touchedFields,p),n.isSubmitted,f,d),te=RY(p,s,T);qJ(a,p,w),T?(!l||!l.readOnly)&&(x._f.onBlur&&x._f.onBlur(i),c&&c(0)):x._f.onChange&&x._f.onChange(i);let M=D(p,w,T),ne=!lY(M)||te;if(!T&&g.state.next({name:p,type:i.type,...u?{values:PJ(a)}:{}}),k)return(!E||!n.isValid)&&(m.isValid||h.isValid)&&(t.mode===`onBlur`?T&&y():T||y()),ne&&g.state.next({name:p,...te?{}:M});if(!t.resolver&&e.validate&&await A({name:p,eventType:i.type}),!T&&te&&g.state.next({...n}),t.resolver){let{errors:e}=await O([p]);if(b([p]),S(w),!v){!lY(M)&&g.state.next(M);return}let t=BY(n.errors,r,p),i=BY(e,r,t.name||p);o=i.error,p=i.name,C=lY(e)}else b([p],!0),o=(await JY(x,s.disabled,a,_,t.shouldUseNativeValidation))[p],b([p]),S(w),v&&(o?C=!1:(m.isValid||h.isValid)&&(C=await j({fields:r,onlyCheckValid:!0,name:p,eventType:i.type})));v&&(x._f.deps&&(!Array.isArray(x._f.deps)||x._f.deps.length>0)&&ue(x._f.deps),ee(p,C,o,M))}},le=(e,t)=>{if($(n.errors,t)&&e.focus)return e.focus(),1},ue=async(e,i={})=>{let a,o,c=oY(e);if(t.resolver){let t=await k(HJ(e)?e:c);a=lY(t),o=e?!c.some(e=>$(t,e)):a}else e?(o=(await Promise.all(c.map(async e=>{let t=$(r,e);return await j({fields:t&&t._f?{[e]:t}:t,eventType:FJ.TRIGGER})}))).every(Boolean),!(!o&&!n.isValid)&&y()):o=a=await j({fields:r,name:e,eventType:FJ.TRIGGER});return g.state.next({...!ZJ(e)||(m.isValid||h.isValid)&&a!==n.isValid?{}:{name:e},...t.resolver||!e?{isValid:a}:{},errors:n.errors}),i.shouldFocus&&!o&&zY(r,le,e?c:s.mount),o},de=(e,t)=>{let r={...o.mount?a:i};return t&&(r=cY(t.dirtyFields?n.dirtyFields:n.touchedFields,r)),HJ(e)?r:ZJ(e)?$(r,e):e.map(e=>$(r,e))},fe=(e,t)=>({invalid:!!$((t||n).errors,e),isDirty:!!$((t||n).dirtyFields,e),error:$((t||n).errors,e),isValidating:!!$(n.validatingFields,e),isTouched:!!$((t||n).touchedFields,e)}),pe=e=>{let t=e?oY(e):void 0;t?.forEach(e=>vY(n.errors,e)),t?t.forEach(e=>{g.state.next({name:e,errors:n.errors})}):g.state.next({errors:{}})},me=(e,t,i)=>{let a=($(r,e,{_f:{}})._f||{}).ref,{ref:o,message:s,type:c,...l}=$(n.errors,e)||{};qJ(n.errors,e,{...l,...t,ref:a}),g.state.next({name:e,errors:n.errors,isValid:!1}),i&&i.shouldFocus&&a&&a.focus&&a.focus()},he=(e,t)=>{if(KJ(e)){u++;let{unsubscribe:n}=g.state.subscribe({next:n=>`values`in n&&e(n.values||ne(void 0,t),n)}),r=!1;return{unsubscribe:()=>{r||(r=!0,u--,n())}}}return ne(e,t,!0)},ge=e=>{let t=!!e.formState?.values;t&&u++;let{unsubscribe:r}=g.state.subscribe({next:t=>{if(HY(e.name,t.name,e.exact)&&VY(t,e.formState||m,Oe,e.reRenderRoot)){let r={...a};e.callback({values:r,...n,...t,defaultValues:i})}}});if(!t)return r;let o=!1;return()=>{o||(o=!0,u--,r())}},_e=e=>(o.mount=!0,h={...h,...e.formState},ge({...e,formState:{...p,...e.formState}})),ve=(e,o={})=>{for(let c of e?oY(e):s.mount)s.mount.delete(c),s.array.delete(c),o.keepValue||(vY(r,c),vY(a,c)),!o.keepError&&vY(n.errors,c),!o.keepDirty&&vY(n.dirtyFields,c),!o.keepTouched&&vY(n.touchedFields,c),!o.keepIsValidating&&vY(n.validatingFields,c),!t.shouldUnregister&&!o.keepDefaultValue&&vY(i,c);g.state.next({values:PJ(a)}),g.state.next({...n,...o.keepDirty?{isDirty:M()}:{}}),!o.keepIsValid&&y()},ye=({disabled:e,name:t})=>{if(GJ(e)&&o.mount||e||s.disabled.has(t)){let n=s.disabled.has(t)!==!!e;e?s.disabled.add(t):s.disabled.delete(t),n&&o.mount&&!o.action&&y()}},be=(e,n={})=>{let a=$(r,e),c=GJ(n.disabled)||GJ(t.disabled),l=!s.registerName.has(e)&&a&&a._f&&!a._f.mount;return qJ(r,e,{...a||{},_f:{...a&&a._f?a._f:{ref:{name:e}},name:e,mount:!0,...n}}),s.mount.add(e),a&&!l?ye({disabled:GJ(n.disabled)?n.disabled:t.disabled,name:e}):E(e,!0,n.value),{...c?{disabled:n.disabled||t.disabled}:{},...t.progressive?{required:!!n.required,min:NY(n.min),max:NY(n.max),minLength:NY(n.minLength),maxLength:NY(n.maxLength),pattern:NY(n.pattern)}:{},name:e,onChange:ce,onBlur:ce,ref:c=>{if(c){s.registerName.add(e),be(e,n),s.registerName.delete(e),a=$(r,e);let t=HJ(c.value)&&c.querySelectorAll&&c.querySelectorAll(`input,select,textarea`)[0]||c,o=mY(t),l=a._f.refs||[];if(o?l.find(e=>e===t):t===a._f.ref)return;qJ(r,e,{_f:{...a._f,...o?{refs:[...l.filter(hY),t,...Array.isArray($(i,e))?[{}]:[]],ref:{type:t.type,name:e}}:{ref:t}}}),E(e,!1,void 0,t)}else a=$(r,e,{}),a._f&&(a._f.mount=!1),(t.shouldUnregister||n.shouldUnregister)&&!(jJ(s.array,e)&&o.action)&&s.unMount.add(e)}}},xe=()=>t.shouldFocusError&&!t.shouldUseNativeValidation&&zY(r,le,s.mount),Se=e=>{GJ(e)&&(g.state.next({disabled:e}),zY(r,(t,n)=>{let i=$(r,n);i&&(t.disabled=i._f.disabled||e,Array.isArray(i._f.refs)&&i._f.refs.forEach(t=>{t.disabled=i._f.disabled||e}))},0,!1))},Ce=(e,i)=>async o=>{let c;o&&(o.preventDefault&&o.preventDefault(),o.persist&&o.persist());let l=PJ(a);if(g.state.next({isSubmitting:!0}),t.resolver){let{errors:e,values:t}=await O();b(),n.errors=e,l=PJ(t)}else await j({fields:r,eventType:FJ.SUBMIT});if(s.disabled.size)for(let e of s.disabled)vY(l,e);if(vY(n.errors,RJ),lY(n.errors)){g.state.next({errors:{}});try{await e(l,o)}catch(e){c=e}}else i&&await i({...n.errors},o),xe(),setTimeout(xe);if(g.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:lY(n.errors)&&!c,submitCount:n.submitCount+1,errors:n.errors}),c)throw c},we=(e,t={})=>{$(r,e)&&(HJ(t.defaultValue)?oe(e,PJ($(i,e))):(oe(e,t.defaultValue),qJ(i,e,PJ(t.defaultValue))),t.keepTouched||vY(n.touchedFields,e),t.keepDirty||(vY(n.dirtyFields,e),n.isDirty=t.defaultValue?M(e,PJ($(i,e))):M()),t.keepError||(vY(n.errors,e),m.isValid&&y()),g.state.next({...n}))},Te=(e,c={})=>{let l=e?PJ(e):i,u=PJ(l),d=lY(e),f=u;if(c.keepDefaultValues||(i=l),!c.keepValues){if(c.keepDirtyValues){let e=new Set([...s.mount,...Object.keys(CY(i,a))]);for(let t of Array.from(e)){let e=$(n.dirtyFields,t),r=$(a,t),i=$(f,t);e&&!HJ(r)?qJ(f,t,r):!e&&!HJ(i)&&oe(t,i)}}else{if(NJ&&HJ(e))for(let e of s.mount){let t=$(r,e);if(t&&t._f){let e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(dY(e)){let t=e.closest(`form`);if(t){t.reset();break}}}}if(c.keepFieldsRef)for(let e of s.mount)oe(e,$(f,e));else r={}}if(t.shouldUnregister){if(a=c.keepDefaultValues?PJ(i):{},c.keepFieldsRef)for(let e of s.mount)qJ(a,e,$(f,e))}else a=PJ(f);g.array.next({values:{...f}}),g.state.next({name:void 0,type:void 0,values:{...f}})}s={mount:c.keepDirtyValues?s.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:``},o.mount=!m.isValid||!!c.keepIsValid||!!c.keepDirtyValues||!t.shouldUnregister&&!lY(f),o.watch=!!t.shouldUnregister,o.keepIsValid=!!c.keepIsValid,o.action=!1,c.keepErrors||(n.errors={}),g.state.next({submitCount:c.keepSubmitCount?n.submitCount:0,isDirty:d?!1:c.keepDirty?n.isDirty:c.keepValues?M():!!(c.keepDefaultValues&&!tY(e,i)),isSubmitted:c.keepIsSubmitted?n.isSubmitted:!1,dirtyFields:d?{}:c.keepDirtyValues?c.keepDefaultValues&&a?CY(i,a):n.dirtyFields:c.keepDefaultValues&&e?CY(i,e):c.keepDirty?n.dirtyFields:{},touchedFields:c.keepTouched?n.touchedFields:{},errors:c.keepErrors?n.errors:{},isSubmitSuccessful:c.keepIsSubmitSuccessful?n.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},Ee=(e,n)=>Te(KJ(e)?e(a):e,{...t.resetOptions,...n}),De=(e,t={})=>{let n=$(r,e),i=n&&n._f;if(i){let e=i.refs?i.refs[0]:i.ref;e.focus&&setTimeout(()=>{e.focus(),t.shouldSelect&&KJ(e.select)&&e.select()})}},Oe=e=>{let{name:t,type:r,values:i,...a}=e;n={...n,...a}},ke={control:{register:be,unregister:ve,getFieldState:fe,handleSubmit:Ce,setError:me,_subscribe:ge,_runSchema:O,_updateIsValidating:b,_focusError:xe,_getWatch:ne,_getDirty:M,_setValid:y,_setFieldArray:S,_setDisabledField:ye,_setErrors:w,_getFieldArray:N,_reset:Te,_resetDefaultValues:()=>KJ(t.defaultValues)&&t.defaultValues().then(e=>{Ee(e,t.resetOptions),g.state.next({isLoading:!1})}),_removeUnmounted:te,_disableForm:Se,_subjects:g,_proxyFormState:m,get _fields(){return r},get _formValues(){return a},get _state(){return o},set _state(e){o=e},get _defaultValues(){return i},get _names(){return s},set _names(e){s=e},get _formState(){return n},get _options(){return t},set _options(e){t={...t,...e},d=PY(t.mode),f=PY(t.reValidateMode)}},subscribe:_e,trigger:ue,register:be,handleSubmit:Ce,watch:he,setValue:oe,setValues:se,getValues:de,reset:Ee,resetField:we,resetDefaultValues:(e,t={})=>{if(i=PJ(e),!t.keepDirty){let e=CY(i,a);n.dirtyFields=e,n.isDirty=!lY(e)}t.keepIsValid||y(),g.state.next({...n,defaultValues:i})},clearErrors:pe,unregister:ve,setError:me,setFocus:De,getFieldState:fe};return{...ke,formControl:ke}}function $Y(e={}){let t=m.default.useRef(void 0),n=m.default.useRef(void 0),r=m.default.useRef(e.formControl),[i,a]=m.default.useState(()=>({...PJ(ZY),isLoading:KJ(e.defaultValues),errors:e.errors||{},disabled:e.disabled||!1,defaultValues:KJ(e.defaultValues)?void 0:e.defaultValues}));if(!t.current||e.formControl&&r.current!==e.formControl)if(r.current=e.formControl,e.formControl)t.current={...e.formControl,formState:i},e.defaultValues&&!KJ(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{let{formControl:n,...r}=QY(e);t.current={...r,formState:i}}let o=t.current.control;return o._options=e,XJ(()=>{let e=o._subscribe({formState:o._proxyFormState,callback:()=>a({...o._formState,defaultValues:o._defaultValues}),reRenderRoot:!0});return a(e=>({...e,isReady:!0})),o._formState.isReady=!0,e},[o]),m.default.useEffect(()=>o._disableForm(e.disabled),[o,e.disabled]),m.default.useEffect(()=>{e.mode&&(o._options.mode=e.mode),e.reValidateMode&&(o._options.reValidateMode=e.reValidateMode)},[o,e.mode,e.reValidateMode]),m.default.useEffect(()=>{e.errors&&(o._setErrors(e.errors),o._focusError())},[o,e.errors]),m.default.useEffect(()=>{e.shouldUnregister&&o._subjects.state.next({values:o._getWatch()})},[o,e.shouldUnregister]),m.default.useEffect(()=>{if(o._proxyFormState.isDirty){let e=o._getDirty();e!==i.isDirty&&o._subjects.state.next({isDirty:e})}},[o,i.isDirty]),m.default.useEffect(()=>{e.values&&!tY(e.values,n.current)?(o._reset(e.values,{keepFieldsRef:!0,...o._options.resetOptions}),o._options.resetOptions?.keepIsValid||o._setValid(),n.current=e.values,a(e=>({...e}))):o._resetDefaultValues()},[o,e.values]),m.default.useEffect(()=>{o._state.mount||(o._setValid(),o._state.mount=!0),o._state.watch&&(o._state.watch=!1,o._subjects.state.next({...o._formState})),o._removeUnmounted()}),t.current.formState=m.default.useMemo(()=>YJ(i,o),[o,i]),t.current}function eX(e){let t=m.useRef({value:e,previous:e});return m.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var tX=`Checkbox`,[nX,rX]=Ta(tX),[iX,aX]=nX(tX);function oX(e){let{__scopeCheckbox:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:u=`on`,internal_do_not_use_render:d}=e,[f,p]=Fa({prop:n,defaultProp:i??!1,onChange:c,caller:tX}),[h,g]=m.useState(null),[_,v]=m.useState(null),y=m.useRef(!1),b=h?!!o||!!h.closest(`form`):!0,x={checked:f,disabled:a,setChecked:p,control:h,setControl:g,name:s,form:o,value:u,hasConsumerStoppedPropagationRef:y,required:l,defaultChecked:hX(i)?!1:i,isFormControl:b,bubbleInput:_,setBubbleInput:v};return(0,P.jsx)(iX,{scope:t,...x,children:mX(d)?d(x):r})}var sX=`CheckboxTrigger`,cX=m.forwardRef(({__scopeCheckbox:e,onKeyDown:t,onClick:n,...r},i)=>{let{control:a,value:o,disabled:s,checked:c,required:l,setControl:u,setChecked:d,hasConsumerStoppedPropagationRef:f,isFormControl:p,bubbleInput:h}=aX(sX,e),g=ka(i,u),_=m.useRef(c);return m.useEffect(()=>{let e=a?.form;if(e){let t=()=>d(_.current);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[a,d]),(0,P.jsx)(Qa.button,{type:`button`,role:`checkbox`,"aria-checked":hX(c)?`mixed`:c,"aria-required":l,"data-state":gX(c),"data-disabled":s?``:void 0,disabled:s,value:o,...r,ref:g,onKeyDown:F(t,e=>{e.key===`Enter`&&e.preventDefault()}),onClick:F(n,e=>{d(e=>hX(e)?!0:!e),h&&p&&(f.current=e.isPropagationStopped(),f.current||e.stopPropagation())})})});cX.displayName=sX;var lX=m.forwardRef((e,t)=>{let{__scopeCheckbox:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,P.jsx)(oX,{__scopeCheckbox:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(cX,{...d,ref:t,__scopeCheckbox:n}),e&&(0,P.jsx)(pX,{__scopeCheckbox:n})]})})});lX.displayName=tX;var uX=`CheckboxIndicator`,dX=m.forwardRef((e,t)=>{let{__scopeCheckbox:n,forceMount:r,...i}=e,a=aX(uX,n);return(0,P.jsx)(Io,{present:r||hX(a.checked)||a.checked===!0,children:(0,P.jsx)(Qa.span,{"data-state":gX(a.checked),"data-disabled":a.disabled?``:void 0,...i,ref:t,style:{pointerEvents:`none`,...e.style}})})});dX.displayName=uX;var fX=`CheckboxBubbleInput`,pX=m.forwardRef(({__scopeCheckbox:e,...t},n)=>{let{control:r,hasConsumerStoppedPropagationRef:i,checked:a,defaultChecked:o,required:s,disabled:c,name:l,value:u,form:d,bubbleInput:f,setBubbleInput:p}=aX(fX,e),h=ka(n,p),g=eX(a),_=Z_(r);m.useEffect(()=>{let e=f;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set,r=!i.current;if(g!==a&&n){let t=new Event(`click`,{bubbles:r});e.indeterminate=hX(a),n.call(e,hX(a)?!1:a),e.dispatchEvent(t)}},[f,g,a,i]);let v=m.useRef(hX(a)?!1:a);return(0,P.jsx)(Qa.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:o??v.current,required:s,disabled:c,name:l,value:u,form:d,...t,tabIndex:-1,ref:h,style:{...t.style,..._,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})});pX.displayName=fX;function mX(e){return typeof e==`function`}function hX(e){return e===`indeterminate`}function gX(e){return hX(e)?`indeterminate`:e?`checked`:`unchecked`}function _X({iconElement:e,iconProps:t,indicatorProps:n,...r},i){return m.createElement(lX,{ref:i,...r,className:R(`peer border-input dark:bg-input/30 data-[state=checked]:bg-ring data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-ring data-[state=checked]:border-ring focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50`,r?.className)},m.createElement(dX,{...n,className:R(`flex items-center justify-center text-current transition-none`,n?.className)},e||m.createElement(vd,{...t,className:R(`size-3.5`,t?.className)})))}var vX=m.forwardRef(_X);vX.displayName=`Checkbox`;function yX(e,t){return m.createElement(`input`,{ref:t,...e,className:R(`file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-10 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,e?.className)})}var bX=m.forwardRef(yX);bX.displayName=`Input`;var xX=({onSendMessage:e=()=>{}})=>{let{t}=nt(),n=Si(e=>e.termsAndConditions),[r,i]=(0,m.useState)(!1),[a,o]=(0,m.useState)(!0),{register:s,handleSubmit:c}=$Y({mode:`onChange`});return m.default.createElement(`form`,{onSubmit:c(n=>{if(r){if(e(`Name: ${n.name}\nEmail: ${n.email}`),typeof a==`boolean`)if(hi(a),a){let e=Wr();e&&Yr(e)}else Zr()}else pf(t(`SingleViewForm.AcceptTermsAndConditionsError`))},({email:e,name:t})=>{e&&pf(e.message),t&&pf(t.message)}),className:`size-full flex flex-col-reverse overflow-y-auto py-2`},m.default.createElement(`div`,{className:`grid gap-6 m-8`},m.default.createElement(`div`,{className:`grid gap-2`},m.default.createElement(`h2`,{className:`font-medium text-lg text-left`},t(`SingleViewForm.Title`)),m.default.createElement(`p`,{className:`text-gray-600 text-left`},t(`SingleViewForm.Subtitle`))),m.default.createElement(bX,{type:`name`,autoComplete:`text`,className:`selection:bg-blue-300 selection:text-blue-950`,placeholder:t(`SingleViewForm.NamePlaceholder`),...s(`name`,{required:t(`SingleViewForm.NameRequired`)})}),m.default.createElement(bX,{type:`email`,autoComplete:`email`,className:`selection:bg-blue-300 selection:text-blue-950`,placeholder:t(`SingleViewForm.EmailPlaceholder`),...s(`email`,{required:t(`SingleViewForm.EmailRequired`),pattern:{value:/^\S+@\S+\.\S+$/,message:t(`SingleViewForm.EmailInvalid`)}})}),m.default.createElement(`div`,{className:`grid gap-8`},m.default.createElement(`div`,{className:`flex items-start gap-2`},m.default.createElement(vX,{id:`terms_and_conditions`,checked:r,onCheckedChange:i}),m.default.createElement(`div`,{className:`grid gap-1`},m.default.createElement(Lx,{htmlFor:`terms_and_conditions`,className:`cursor-pointer`},t(`SingleViewForm.AcceptTermsAndConditions`)),m.default.createElement(`p`,{className:`text-muted-foreground text-sm text-left`},`${t(`SingleViewForm.TermsAndConditionsText`)} `,m.default.createElement(`a`,{href:n,target:`_blank`,rel:`noopener noreferrer`,className:`text-blue-500 underline hover:text-blue-700 font-semibold`},t(`SingleViewForm.TermsAndConditionsLink`))))),m.default.createElement(`div`,{className:`flex items-start gap-2`},m.default.createElement(vX,{id:`remember_me`,checked:a,onCheckedChange:o}),m.default.createElement(`div`,{className:`grid gap-1`},m.default.createElement(Lx,{htmlFor:`remember_me`,className:`cursor-pointer`},t(`SingleViewForm.RememberMe`)),m.default.createElement(`p`,{className:`text-muted-foreground text-sm text-left`},t(`SingleViewForm.RememberMeText`)))),m.default.createElement(`div`,{className:`flex items-center justify-center`},m.default.createElement($u,{type:`submit`,className:`bg-blue-500 hover:bg-blue-700 w-auto p-4 text-md font-bold`},t(`SingleViewForm.Next`))))))},SX=()=>{let[e,t]=(0,m.useState)({height:0,shift:0}),{t:n}=nt(),{users:r,fetchUserById:i,sendMessage:a,selectedDialog:o,createChat:s,createGroupChat:c,selectDialog:l,sendAttachment:u,getDialogOpponentId:d,messages:f,isBlockedUser:p}=gr(),h=Sr(e=>e.deleteDraftMessage),g=aa(e=>e.onMessageBeforeSend),_=Si(e=>e.enableUserStatuses),v=Gt(e=>e.singleView),y=o?d(o):null,b=y?p(y):!1,x=y&&_?ti(r[y]):Nr.AVAILABLE,S=o&&!b&&x!==Nr.AWAY,C=o?._id??``,w=v&&f[C]?.length===0,T=async e=>{let t=typeof g==`function`?g(e):e;if(C.startsWith(`external_id`)){let e=await D();a(t,e)}else a(t);h(C)},E=async e=>{if(C.startsWith(`external_id`)){let t=await D();u(e,t)}else u(e)},D=async()=>{let e=o?.type===tn.DialogType.PRIVATE?await s(o?.occupants_ids?.filter(e=>e!==o?.user_id)[0],o?.extensions):await c(o?.occupants_ids||[],o?.name||``,o?.photo||void 0,o?.extensions);return await l(e),e};return(0,m.useEffect)(()=>{_&&y&&i(y)},[_,y]),m.default.createElement(`div`,{className:`flex size-full bg-white flex-row-reverse overflow-hidden relative`},m.default.createElement(`div`,{className:`flex flex-col justify-between size-full overflow-hidden bg-white transition-all duration-200`},m.default.createElement(`div`,{className:`h-auto bg-white border-b border-gray-300 py-2 mx-2`},o?m.default.createElement(Mx,null):m.default.createElement(`div`,{className:`flex items-center justify-center w-full h-13`},m.default.createElement(`span`,{className:`text-center text-lg font-semibold `},n(v?`Chat`:`Chats`)))),w?m.default.createElement(xX,{onSendMessage:T}):m.default.createElement(m.default.Fragment,null,m.default.createElement(wJ,{onSendMessage:T,onSendAttachment:E,textareaMeasurement:e}),S&&m.default.createElement(LW,{onSendMessage:T,onSendAttachment:E,onHeightGrow:t}))))},CX=`Tabs`,[wX,TX]=Ta(CX,[Nv]),EX=Nv(),[DX,OX]=wX(CX),kX=m.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,onValueChange:i,defaultValue:a,orientation:o=`horizontal`,dir:s,activationMode:c=`automatic`,...l}=e,u=Fh(s),[d,f]=Fa({prop:r,onChange:i,defaultProp:a??``,caller:CX});return(0,P.jsx)(DX,{scope:n,baseId:Na(),value:d,onValueChange:f,orientation:o,dir:u,activationMode:c,children:(0,P.jsx)(Qa.div,{dir:u,"data-orientation":o,...l,ref:t})})});kX.displayName=CX;var AX=`TabsList`,jX=m.forwardRef((e,t)=>{let{__scopeTabs:n,loop:r=!0,...i}=e,a=OX(AX,n),o=EX(n);return(0,P.jsx)(Gv,{asChild:!0,...o,orientation:a.orientation,dir:a.dir,loop:r,children:(0,P.jsx)(Qa.div,{role:`tablist`,"aria-orientation":a.orientation,...i,ref:t})})});jX.displayName=AX;var MX=`TabsTrigger`,NX=m.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,disabled:i=!1,...a}=e,o=OX(MX,n),s=EX(n),c=IX(o.baseId,r),l=LX(o.baseId,r),u=r===o.value;return(0,P.jsx)(Kv,{asChild:!0,...s,focusable:!i,active:u,children:(0,P.jsx)(Qa.button,{type:`button`,role:`tab`,"aria-selected":u,"aria-controls":l,"data-state":u?`active`:`inactive`,"data-disabled":i?``:void 0,disabled:i,id:c,...a,ref:t,onMouseDown:F(e.onMouseDown,e=>{!i&&e.button===0&&e.ctrlKey===!1?o.onValueChange(r):e.preventDefault()}),onKeyDown:F(e.onKeyDown,e=>{i||e.target!==e.currentTarget||[` `,`Enter`].includes(e.key)&&o.onValueChange(r)}),onFocus:F(e.onFocus,()=>{let e=o.activationMode!==`manual`;!u&&!i&&e&&o.onValueChange(r)})})})});NX.displayName=MX;var PX=`TabsContent`,FX=m.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,forceMount:i,children:a,...o}=e,s=OX(PX,n),c=IX(s.baseId,r),l=LX(s.baseId,r),u=r===s.value,d=m.useRef(u);return m.useEffect(()=>{let e=requestAnimationFrame(()=>d.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,P.jsx)(Io,{present:i||u,children:({present:n})=>(0,P.jsx)(Qa.div,{"data-state":u?`active`:`inactive`,"data-orientation":s.orientation,role:`tabpanel`,"aria-labelledby":c,hidden:!n,id:l,tabIndex:0,...o,ref:t,style:{...e.style,animationDuration:d.current?`0s`:void 0},children:n&&a})})});FX.displayName=PX;function IX(e,t){return`${e}-trigger-${t}`}function LX(e,t){return`${e}-content-${t}`}var RX=kX,zX=jX,BX=NX,VX=FX;function HX({className:e,...t}){return m.createElement(RX,{"data-slot":`tabs`,className:Wu(`flex flex-col gap-2`,e),...t})}function UX({className:e,...t}){return m.createElement(zX,{"data-slot":`tabs-list`,className:Wu(`bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]`,e),...t})}function WX({className:e,...t}){return m.createElement(BX,{"data-slot":`tabs-trigger`,className:Wu(`data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=size-])]:size-4`,e),...t})}function GX({className:e,...t}){return m.createElement(VX,{"data-slot":`tabs-content`,className:Wu(`flex-1 outline-none`,e),...t})}function KX(e){return ip({tag:`svg`,attr:{fill:`currentColor`,viewBox:`0 0 16 16`},child:[{tag:`path`,attr:{d:`M12.146.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1 0 .708l-10 10a.5.5 0 0 1-.168.11l-5 2a.5.5 0 0 1-.65-.65l2-5a.5.5 0 0 1 .11-.168zM11.207 2.5 13.5 4.793 14.793 3.5 12.5 1.207zm1.586 3L10.5 3.207 4 9.707V10h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.293zm-9.761 5.175-.106.106-1.528 3.821 3.821-1.528.106-.106A.5.5 0 0 1 5 12.5V12h-.5a.5.5 0 0 1-.5-.5V11h-.5a.5.5 0 0 1-.468-.325`},child:[]}]})(e)}function qX({...e}){return m.createElement(hc,{"data-slot":`dialog`,...e})}function JX({...e}){return m.createElement(_c,{"data-slot":`dialog-trigger`,...e})}function YX({...e}){return e.container=oa(e=>e.shadowPortal),m.createElement(xc,{"data-slot":`dialog-portal`,...e})}function XX({...e}){return m.createElement(Ic,{"data-slot":`dialog-close`,...e})}function ZX({className:e,...t}){return m.createElement(Cc,{"data-slot":`dialog-overlay`,className:Wu(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50`,e),...t})}function QX({className:e,children:t,...n}){return m.createElement(YX,null,m.createElement(ZX,null),m.createElement(Dc,{onWheel:e=>{e.stopPropagation()},onTouchMove:e=>{e.stopPropagation()},"data-slot":`dialog-content`,className:Wu(`pointer-events-none bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2em)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg`,e),...n},t,m.createElement(Ic,{className:`ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=size-])]:size-4`},m.createElement(Yd,null),m.createElement(`span`,{className:`sr-only`},`Close`))))}function $X({className:e,...t}){return m.createElement(`div`,{"data-slot":`dialog-header`,className:Wu(`flex flex-col gap-2 text-center sm:text-left`,e),...t})}function eZ({className:e,...t}){return m.createElement(Mc,{"data-slot":`dialog-title`,className:Wu(`text-lg leading-none font-semibold`,e),...t})}function tZ({className:e,...t}){return m.createElement(Pc,{"data-slot":`dialog-description`,className:Wu(`text-muted-foreground text-sm`,e),...t})}function nZ(e){return ip({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z`},child:[]}]})(e)}var rZ=m.default.memo(({id:e,name:t,avatar:n,onStartChat:r,chatType:i,isSelected:a,onSelectUser:o})=>{let{t:s}=nt();return m.default.createElement(`div`,{className:`flex items-center justify-between relative pb-2 px-2`,key:e},m.default.createElement(`div`,{className:`flex items-center flex-[0_0_70%] gap-2`},m.default.createElement(Dp,{src:li(n),name:t,className:`size-13 bg-blue-300`}),m.default.createElement(`div`,{className:`text-left`},m.default.createElement(`p`,{className:`text-black`},t))),i===`private`?m.default.createElement($u,{type:`button`,className:`bg-blue-500 hover:bg-blue-700`,onClick:()=>{r(e)}},s(`StartChat`)):m.default.createElement($u,{type:`button`,className:`bg-blue-500 hover:bg-blue-700`,onClick:()=>{o(e,!a)}},s(a?`Delete`:`Select`)))}),iZ=m.default.memo(({avatar:e,name:t})=>m.default.createElement(`div`,{key:t,className:`flex flex-col items-center justify-start w-[100px] px-1`},m.default.createElement(Dp,{src:li(e),name:t,className:`size-10 bg-blue-300`}),m.default.createElement(`p`,{className:`text-center truncate w-full`},t))),aZ=`data:image/jpeg;base64,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lMwaMCL95/wDU0UalHrPNYQXcWSaXjX3S/kQLVio9xObYfUvPI7+tlsGTBTc2ZwKPGxShFBVvbhQVb24UFW9uFBVvbhQVb24UFW9uFBVvbhQVb24UFW9uFBVvbhQVb24UFW9uFBVvbhQVb24UFW9uFBVvbhHgB724Gphga2B7CaQl9hGlQmLMvGAYrD+nnHKo2sZ+QoKt7cKCre3Cgq3twoKt7cKCre3Cgq3twoKt7cKCre3Cgq3twoKt7cKCre3Cgq3twoJ724QlgSi/wDbcEq/0ymayihx4YhIoSKqHSqHSqHSqHSqEp1CU6hKdQlOoezNmrCC1HjQQChnvLhQz3lwoZ7y4UM95cKGe8uFDPeXChnvLhQz3lwoZ7y4UM95cKGe8uFDPeXChnvLhQz3lwoZ7y4UM95cKGe8uFDPeXChnvLhQz3lwoZ7y4UM95cKGe8uFDPeXChnvLhQz3lwoat5cKGreXChq3lwoat5cKGreXChq3lwoat5cKGreXChq3lwoat5cKGreXChq3lwoat5cKGreXChq3lwoat5cKGreXChq3lwoat5cKGreXChq3lwoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3ChK3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3ChK3twoSt7cKEre3ChK3twoSt7cKEre3ChK3twoSt7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3Chq3twoat7cKGre3ChK3twoSt7cKEre3ChK3twoSt7cKEre3ChK3twoSt7cKEre3AsZCmTMuhDCOlUOlUJTqEp1CU6hKdQlOoSnUJTqHSqHSqCzJiprjlBLiwChK3twoSt7cKEre3A0MmKmBn0seESKHSqHSqHSqHSqHSqHSqHSqHSqEiqhIoSKCWP+lU0g148AoSt7cKEre3Cgq3twoKt7cKCre3Cgq3twoKt7cKCre3Cgq3twoKt7cKCre3Cgq3twoKt7cKCre3Cgq3twoKt7cKCre3Cgq3twoKt7cKCre3BODtGKmClnAg8bGIz6lW3Y4Qph7Q4VJxcaMU7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8U7hXincK8Iwhq3U3UzjSWLilD/wDLR//EAC0QAAECAgcIAwEBAQAAAAAAAAEAESExIFFhcZHw8RAwQEFQgaHRYLHB4XCw/9oACAEBAAE/If8AmNkEwHdEHIiCt2VsIhyLFVA4qqRnBWTBZICtCtS1xa4tcWuLXFrmxBXNhzQrYYLOGxAfPzQHmWKCAF5kdkC8qB5Yycf6oZQC5J7RRFIS5B7lE0iB2RnvoRJMj36AISQHI8UA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X0LHPle5fafHPYDvXu7mDALaBIFMHqwjbjcAJgVrQqaFTQqaFTQqaFTQqaFTQqaFTQqaFTQqaFTQqaFQlASDZQ/CmRwZOyKkcCgAXe4sBfqKR5kk3hTQKaFTQqaFTQqaFTQqaFTQqaFTQqaFTQ6PYvOBJqImnXGWjj2tJe1Z5r9i2qbbYz1GtbrWqAcCmND1REVpNNJppNNJppNNJppNNJppNNJppNNJppNNJppNNJppNNBpoNNBpoNNBpoNNBpoNNBpoVNCpoVNCpoVNCpoVNCpoVNCpoVNKppVNKppVNKppVNKppVNKppVNKJpRNKJpRNKJpRNKJpRNKJpRNCJoRNCJoRNCJoRNCJoRNCJpRNKJpRNKJpRNKJpRNKJpRNKJpBNKJpRNKJpRNKJpRNKJpRNKJpRNGJohNEJohNEJohNEJohNEJoxNCJoxNGJoxNGJoxNGJoxNGJoBNAJoBNAJoBNAJphNMJphGNIkAcayUDVUtdjvUa1GtTrWa1ns3a7FWDyMbAPlaYTTCaYSYlgQNqhANen4mLZ/VZZr6MREWSrJVhmvWUe1oo9rSx7QOAGTDe5qZaATRCSAnamgU0KmhU0KmhU0KmhU0KmhU0KmhU0KmhU0KmhU0KmhUeN+AVA8G6KWQSJOmRENcmVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKymVlMrKZWUysplZTKym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B/8Av6VPPAgF1agqgqwAgAAAAgAAgAAEQACgAAAqAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAACgQAAJAAAABwQAKQAAAAKAAAAKAAAAAAAAAKgAgAKoI4c0EgMouQwIcusAI48kIIo4qguQAgAAAAgFIgAACQACAAAAKAAAAAABwAAAAAAAAAAAAAAAAAAAAAAAAAAHAQABCQAASVgAEagAAAAKAAAAKAAAAAAAAAKgAgAKgAAAggAAAKAAAAKAAAAAAAAAAgbqAAgAAAAgFgAAFoAAIwAAA6AAAAAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAJYAAEgAAAgEwAB4AAAAAKAAAAKAAAAAAAAAKgAgAKgAAAggAAAKAAAAKAAAAAAAAAAgA0gAgAAAAgFgAABAAAAwAAIaAAAAAAMwAAAAAAAAAAAAAAAAAAAAAAAAAAAKwAOAAAKgBwAFwAAAAAKAAAAKAAAAAAAAAKgAgAKgAAAggAAAKAAAAKAAAAAAAAAAgAAAAgAAAAgFgAAEAAAKgAAIaAAAAAAPQAAAAAAAAAAAAAAAAAAAAAAAAAAALAQKQAAggBQABwAAAAAKAAAAKAAAAAAAAAKgAgAKgAAAggAAAKAAAAKAAAAAAAAAAgAAAAgAAAAgEgAABwAAKQAAK6AAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOQKgAAgwAgAFwAAAAAKAAAAKAAAAAAAAAKgAgAKgAAAggAAAKAAAAKAAAAAAAAAAgAAAAgAAAAgBgAAMQAAMwAAIqAAAAAFwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQABSwwAwANAAAAAAKAAAAKAAAAAAAAAKgAgAKgAAAggAAAKAAAAKAAAAAAAAAAgAAAAgAAAAgBqAACQAANQAAA6AAAAAHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAQAwAQAEgAAAAAKAAAAKAAAAAAAAAKgAgAKgAAAggAAAKAAAAKAAAAAAAAAAgAAAAgAAAAgEqAAKAAAEAAACaAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJwACwAwBgACAAAAAAKAAAAKAAAAAAAAAKgAgAKgAAAggAAAKAAAAKAAAAAAAAAAgAAAAgAAAAgBoAAAAAAAgABqqAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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s9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz07PTs9Oz0fOGkLoyyVRWoVCtFrSH+L7ykpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKThD1/+Ov/AP/Z`,oZ=m.default.memo(({users:e,onCreateChat:t})=>{let{t:n}=nt(),{register:r,handleSubmit:i,formState:{errors:a,isSubmitting:o}}=$Y(),s=(0,m.useMemo)(()=>e.map(e=>m.default.createElement(iZ,{key:e.id,name:ci(e),avatar:e.avatar||``})),[e]);return m.default.createElement(`form`,{onSubmit:i(async e=>{o||await t(e.name)}),className:`pt-8`},m.default.createElement(`div`,{className:`flex justify-center mb-6`},m.default.createElement(`img`,{src:aZ,key:`group_chat`,alt:`Group chat`,className:`w-[220px] h-[150px] object-contain`})),m.default.createElement(bX,{className:`selection:bg-blue-300 selection:text-blue-950`,type:`text`,placeholder:n(`ChatName`),...r(`name`,{required:n(`ChatNameRequired`)})}),a.name&&m.default.createElement(`span`,{className:`text-red-500 text-sm`},a.name.message),m.default.createElement(`div`,{className:`flex flex-wrap w-full mx-auto mt-4 overflow-x-auto`},s),m.default.createElement(`div`,{className:`text-center mt-4`},m.default.createElement($u,{type:`submit`,className:`px-3 bg-blue-500 hover:bg-blue-700`,disabled:o},n(`CreateGroupChat`))))}),sZ=3,cZ=m.default.memo(({chatType:e,addUsersMode:t,onFinish:n})=>{let{t:r}=nt(),{searchUsers:i,createChat:a,createGroupChat:o,addUsersToGroupChat:s,selectDialog:c,selectedDialog:l}=gr(),[u,d]=(0,m.useState)({}),[f,p]=(0,m.useState)(``),[h,g]=(0,m.useState)([]),[_,v]=(0,m.useState)(!1),y=async e=>{if(e.preventDefault(),f.length<sZ){pf.warning(`Min search term is ${sZ} chars`);return}let n=await i(f);g(t?n.filter(e=>!l?.occupants_ids?.includes(e.id)):n)},b=(0,m.useMemo)(()=>h.map(t=>m.default.createElement(rZ,{key:t.id,id:t.id,name:ci(t),onStartChat:async e=>{n();let t=await a(e);await c(t)},avatar:t.avatar||``,chatType:e,isSelected:!!u[t.id],onSelectUser:(e,n)=>{n?d({...u,[e]:t}):(delete u[e],d({...u}))}})),[h,u,e,a,c,n]),x=r(t?`AddMembers`:e===`group`?`NewGroupChatDialogTitle`:`NewUserChatDialogTitle`);return m.default.createElement(`div`,{className:`flex flex-col`},m.default.createElement($X,null,m.default.createElement(eZ,null,x),m.default.createElement(Pc,null)),!_&&m.default.createElement(`div`,{className:`flex-column w-full`},m.default.createElement(`form`,{className:`flex items-center space-x-2 py-4`},m.default.createElement(`div`,{className:`grid flex-1 gap-2`},m.default.createElement(Lx,{htmlFor:`link`,className:`sr-only`},`Link`),m.default.createElement(bX,{id:`link`,placeholder:r(`EnterUserName`),onChange:e=>p(e.target.value),className:`selection:bg-blue-300 selection:text-blue-950`})),m.default.createElement($u,{type:`submit`,size:`sm`,className:`px-3 bg-blue-500 hover:bg-blue-700`,onClick:y},m.default.createElement(nZ,null))),m.default.createElement(`div`,{className:`max-h-[50vh] px-2 pt-4 pb-2 overflow-y-auto ${h.length>0?`border-y`:``}`},b),e===`group`&&Object.values(u).length>0&&m.default.createElement(m.default.Fragment,null,m.default.createElement(`div`,{className:`flex py-4 gap-2 overflow-x-auto`},Object.values(u).map(e=>m.default.createElement(iZ,{key:e.id,avatar:e.avatar||``,name:ci(e)}))),m.default.createElement(`div`,{className:`text-center`},m.default.createElement($u,{type:`button`,className:`px-4 mt-4 items-center bg-blue-500 hover:bg-blue-700`,onClick:async()=>{t?(n(),await s(Object.values(u).map(e=>e.id))):v(!0)}},r(t?`AddMembers`:`CreateGroupChat`))))),_&&m.default.createElement(oZ,{users:Object.values(u),onCreateChat:async e=>{n();let t=await o(Object.values(u).map(e=>e.id),e);await c(t)}}))}),lZ=Ju(`inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90`,secondary:`border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90`,destructive:`border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground`}},defaultVariants:{variant:`default`}});function uZ({className:e,variant:t,asChild:n=!1,...r},i){let a=n?za:`span`;return m.createElement(a,{ref:i,...r,className:R(lZ({variant:t}),e)})}var dZ=m.forwardRef(uZ);dZ.displayName=`Badge`;function fZ({index:e=-1,isPrivateDialog:t,selected:n,onSelect:r=()=>{},onView:i=()=>{},name:a,photo:o,userOnline:s,userPresence:c,hasGroupIcon:l,lastSentStatus:u,lastSentDate:d,lastSenderName:f,lastMessage:p,typingStatusText:h,draft:g,draftLabel:_=`Draft`,unreadCount:v=0,language:y=`en`,divider:b=`bottom`,avatarProps:x,contentProps:S,headerProps:C,headerLeftProps:w,groupIconProps:T,nameProps:E,headerRightProps:D,statusSentIconProps:ee,formattedDateProps:O,footerProps:k,lastMessageProps:A,draftLabelProps:j,lastSenderNameProps:te,unreadBadgeProps:M,dividerProps:ne,...N},re){let ie=m.useRef(null),ae=o||x?.src,oe=a||x?.name,se=t?s||x?.online:!1,ce=t?c||x?.presence:void 0,le=b===`top`||b===`both`&&e===0,ue=b===`bottom`||b===`both`,[de,fe]=mq({threshold:.1}),pe=m.useRef(!1),me=m.useCallback(e=>{de(e)},[de]);return m.useImperativeHandle(re,()=>ie.current||{},[]),m.useEffect(()=>{fe!==pe.current&&(pe.current=fe,i(fe))},[fe,i]),m.createElement(`div`,{ref:me,...N,onClick:r,className:R(`flex items-start gap-2 px-2 flex-1 cursor-pointer`,`transition-colors duration-200 ease-out`,`${n?`border-l-[0.25em] pl-1 border-l-ring bg-ring/20`:`hover:bg-ring/5`}`,N?.className)},m.createElement(Dp,{src:ae,name:oe,online:se,presence:ce,...x,className:R(`size-13 my-2 ${o?`bg-ring/10`:`bg-ring/30`}`,x?.className)}),m.createElement(`div`,{...S,className:R(`relative self-stretch flex-1 flex-col min-w-0 text-foreground`,S?.className)},m.createElement(`div`,{...C,className:R(`flex items-center justify-between gap-1`,C?.className)},m.createElement(`div`,{...w,className:R(`flex items-center gap-1 min-w-0 flex-1`,w?.className)},!t&&l&&m.createElement(Gd,{...T,className:R(`text-muted-foreground size-4 min-w-4 shrink-0`,T?.className)}),m.createElement(`span`,{...E,className:R(`font-medium text-left line-clamp-1 min-w-0 break-all overflow-hidden`,E?.className)},a)),m.createElement(`div`,{...D,className:R(`flex items-center gap-1`,D?.className)},m.createElement(yq,{status:u,...ee}),m.createElement(vq,{date:d,language:y,...O}))),m.createElement(`div`,{...k,className:R(`flex items-start justify-between gap-1 min-w-0`,k?.className)},m.createElement(`span`,{...A,className:R(`text-sm text-left text-muted-foreground break-all wrap-break-word line-clamp-2 min-w-0 overflow-hidden`,A?.className)},h||(g?m.createElement(`span`,null,m.createElement(`span`,{...j,className:R(`text-red-500 font-medium`,j?.className)},`${_}: `),g):m.createElement(`span`,null,f&&m.createElement(`span`,{...te,className:R(`font-semibold`,te?.className)},`${f}: `),p))),v>0&&m.createElement(dZ,{...M,className:R(`bg-ring text-background text-xs rounded-full p-1 h-6 min-w-6 mt-0.5`,M?.className)},v)),le&&m.createElement(`div`,{...ne,className:R(`absolute -top-px left-0 right-0 border-t`,ne?.className)}),ue&&m.createElement(`div`,{className:`absolute bottom-0 left-0 right-0 border-b`})))}var pZ=m.memo(m.forwardRef(fZ));pZ.displayName=`DialogItem`;var mZ=({index:e,dialog:t})=>{let[n,r]=m.default.useState(!1),{t:i,i18n:a}=nt(),o=Sr(e=>e.draftMessages),[s,c]=Si($t(e=>[e.enableUserStatuses,e.enableLastSeen])),{users:l,selectedDialog:u,selectDialog:d,currentUserId:f,lastActivity:p,getDialogOpponentId:h,getLastActivity:g}=gr(),_=h(t),v=Sa(t,!0),y=t.type===tn.DialogType.PRIVATE,b=t.last_message_user_id===f,x=_?p[_]:void 0,S=typeof x==`number`&&x===0,C=t._id===u?._id,w=s&&_&&S?ti(l[_]):void 0,T=o[t._id],E=aa(e=>e.onMessageBeforeDisplay),D=t.last_message||i(`NoMessages`),ee=typeof D==`string`&&typeof E==`function`?E(D):D,O=t.last_message_date_sent?t.last_message_date_sent*1e3:t.created_at,k=b?t.last_message_status:void 0,A=t.type===tn.DialogType.GROUP&&t.last_message_user_id?b?i(`me`):ci(l[t.last_message_user_id]):``;return xa((0,m.useCallback)(()=>{y&&_&&g(_)},[g,y,_]),30,n),m.default.createElement(pZ,{onView:e=>{r(e)},index:e,isPrivateDialog:y,selected:C,onSelect:async()=>{await d(t)},photo:li(t.photo),userOnline:c&&S,userPresence:w,name:t.name,hasGroupIcon:!0,lastSentStatus:k,lastSentDate:O,lastSenderName:A,lastMessage:ee,typingStatusText:v,draft:T,draftLabel:i(`Draft`),unreadCount:t.unread_messages_count,language:a.language,divider:`both`})};function hZ({onSearch:e=()=>{},onCancel:t=()=>{},hasSearchIcon:n=!0,hasCancelIcon:r=!0,searchIconProps:i,cancelIconProps:a,containerProps:o,...s},c){let[l,u]=m.useState(``),d=t=>{let n=t.target.value;u(n),e(n.toLowerCase())},f=()=>{u(``),t()};return m.createElement(`div`,{...o,className:R(`group relative`,o?.className)},n&&m.createElement(Hd,{...i,className:R(`absolute top-1/2 left-2 transform -translate-y-1/2 size-5 text-muted-foreground group-focus-within:text-ring`,i?.className)}),m.createElement(bX,{ref:c,name:`search`,placeholder:s?.placeholder||`Search...`,value:l,onChange:d,...s,className:R(`placeholder:text-muted-foreground focus-visible:ring-ring/50 focus-visible:ring flex`,n?`pl-10`:`pl-3`,r?`pr-10`:`pr-3`,s?.className)}),r&&m.createElement(Yd,{onClick:f,...a,className:R(`absolute top-1/2 right-2 transform -translate-y-1/2 size-5 text-muted-foreground cursor-pointer hover:text-ring transition-all duration-300 ease-out`,l.length>0?`opacity-100 scale-100`:`opacity-0 scale-75 pointer-events-none`,a?.className)}))}var gZ=m.forwardRef(hZ);gZ.displayName=`Search`;var _Z=()=>m.createElement(`div`,{className:`flex flex-row gap-2 mx-2 border-b`},m.createElement(`div`,{className:`size-13 my-2 rounded-full bg-muted animate-pulse`}),m.createElement(`div`,{className:`flex-1 text-muted`},m.createElement(`div`,{className:`flex flex-row items-center justify-between h-6`},m.createElement(`div`,{className:`w-2/3 h-4 rounded-full bg-muted animate-pulse`}),m.createElement(`div`,{className:`w-1/6 h-3.5 rounded-full bg-muted animate-pulse`})),m.createElement(`div`,{className:`flex flex-col items-start justify-around h-10`},m.createElement(`div`,{className:`w-7/8 h-3.5 rounded-full bg-muted animate-pulse`}),m.createElement(`div`,{className:`w-5/6 h-3.5 rounded-full bg-muted animate-pulse`}))));function vZ({children:e,pending:t,pendingListLength:n=5,offsetToReach:r=50,placeholderVisible:i,placeholderTitles:a=[`No dialogs yet.`,`Start a conversation!`],onScrollStartReached:o,onScrollEndReached:s,...c},l){let u=m.useRef(null),d=Array.from({length:n}).map((e,t)=>m.createElement(_Z,{key:`pending_dialog_item_${t}`}));return m.useImperativeHandle(l,()=>u.current||{},[]),i?m.createElement(zW,{titles:a,className:`text-base text-muted`}):m.createElement(vJ,{ref:u,onScroll:async e=>{c.onScroll?.(e),u.current&&(typeof o==`function`&&e<r&&o(),typeof s==`function`&&u.current.viewportSize+e+r>u.current.scrollSize&&s())},className:`size-full overflow-y-scroll`,...c},t?d:e)}var yZ=m.forwardRef(vZ);yZ.displayName=`DialogsList`;var bZ=()=>{let{t:e}=nt(),{isConnected:t,dialogs:n,fetchNextDialogs:r,totalDialogsReached:i}=gr(),[a,o]=(0,m.useState)(!1),[s,c]=(0,m.useState)(``),l=[`${e(`NoMessages`)}.`,e(`NoChats`)],u=n.length===0,d=u&&!t,f=async()=>{!a&&!i&&(o(!0),await r(),o(!1))},p=(0,m.useMemo)(()=>n.reduce((e,t,n)=>{let{_id:r,name:i,extensions:a}=t,o=s&&i.toLowerCase().includes(s),c=s&&a&&Object.values(a).some(e=>new String(e).toLowerCase().includes(s));return(!s||o||c)&&e.push(m.default.createElement(mZ,{key:r,index:n,dialog:t})),e},[]),[n,s]);return m.default.createElement(m.default.Fragment,null,m.default.createElement(gZ,{onSearch:c,onCancel:()=>c(``),placeholder:e(`Search...`),className:`selection:bg-ring/50 selection:text-blue-950`,containerProps:{className:`mx-2 py-2 border-b`}}),m.default.createElement(yZ,{pending:d,placeholderVisible:u,placeholderTitles:l,onScrollEndReached:f,className:`-mt-px pt-px`},p),m.default.createElement(Xd,{loading:a,layout:`absolute`}))},xZ=()=>{let{t:e}=nt(),[t,n,r,i]=Gt($t(e=>[e.hideNewChatButton,e.showOnlineUsersTab,e.hideNewUserChatOption,e.hideNewGroupChatOption])),[a,o]=(0,m.useState)(`private`),[s,c]=(0,m.useState)(!1);return m.default.createElement(`div`,{className:`flex flex-col h-full`},m.default.createElement(bZ,null),!t&&m.default.createElement(qX,{modal:!0,open:s,onOpenChange:c},m.default.createElement(bx,{modal:!1},m.default.createElement(Sx,{className:`absolute right-3 size-12 bg-blue-500 hover:bg-blue-700 rounded-full flex items-center justify-center ${n?`bottom-13`:`bottom-1`}`},m.default.createElement(KX,{className:`text-white size-6`})),m.default.createElement(Cx,{align:`start`},!i&&m.default.createElement(JX,{asChild:!0},m.default.createElement(Tx,{onClick:()=>{o(`group`)}},e(`NewGroup`))),!r&&m.default.createElement(JX,{asChild:!0},m.default.createElement(Tx,{onClick:()=>{o(`private`)}},e(`NewMessage`))))),m.default.createElement(QX,{className:`flex flex-col`},m.default.createElement(cZ,{chatType:a,onFinish:()=>{console.log(`onFinish`),c(!1)}}))))},SZ=(0,m.memo)(({userId:e,avatar:t,userName:n,status:r})=>{let i=At(e=>e.setActiveTab),{dialogs:a,fetchDialogs:o,selectDialog:s,currentUserId:c}=gr(),l=async(e,t=!0)=>{await s(e),t&&i(Ot.CHATS)};return m.default.createElement(`div`,{className:`relative hover:bg-ring/5 cursor-pointer border-t last-of-type:border-b flex items-center gap-2 mx-2 p-2 transition-colors duration-250 ease-out`,onClick:async()=>{let r=[c,e],i=a.find(e=>e.type===3&&r.every(t=>e.occupants_ids.includes(t)));if(!i){let e=await o({type:3,occupants_ids:{all:r}});e.length>0&&(i=e[0])}if(i){await l(i);return}let s=Gu(`${lt}:${e.toString()}`,n,3,r,c,t);l(s,!1)}},m.default.createElement(Dp,{src:li(t),name:n,className:`size-11 ${t?`bg-ring/10`:`bg-ring/30`}`,presence:r,presenceProps:{className:`size-4`}}),m.default.createElement(`p`,{className:`text-foreground text-left font-medium`},n))}),CZ=(0,m.memo)(({searchTerm:e})=>{let{t}=nt(),{fetchAllOnlineUsers:n,onlineUsers:r}=gr(),i=(0,m.useMemo)(()=>{let t=e?.toLowerCase();return r.reduce((e,n)=>{let r=ci(n),i=ti(n);return(!t||r.toLowerCase().includes(t))&&e.push(m.default.createElement(SZ,{key:n.id,userId:n.id,avatar:n.avatar||void 0,userName:r,status:i})),e},[])},[e,r]);return(0,m.useEffect)(()=>{n()},[]),i.length>0?m.default.createElement(m.default.Fragment,null,i):m.default.createElement(zW,{title:t(`NoOnlineUsers`),className:`text-base text-gray-500`})}),wZ=()=>{let{t:e}=nt(),[t,n]=(0,m.useState)(``);return m.default.createElement(`div`,{className:`flex flex-col h-full`},m.default.createElement(gZ,{type:`text`,name:`search`,onSearch:e=>n(e),onCancel:()=>n(``),placeholder:e(`Search...`),className:`selection:bg-blue-300 selection:text-blue-950`,containerProps:{className:`m-2`}}),m.default.createElement(`div`,{className:`overflow-y-auto h-full overflow-x-hidden`},m.default.createElement(CZ,{searchTerm:t})))},TZ=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),EZ=`VisuallyHidden`,DZ=m.forwardRef((e,t)=>(0,P.jsx)(Qa.span,{...e,ref:t,style:{...TZ,...e.style}}));DZ.displayName=EZ;var OZ=DZ,[kZ,AZ]=Ta(`Tooltip`,[ev]),jZ=ev(),MZ=`TooltipProvider`,NZ=700,PZ=`tooltip.open`,[FZ,IZ]=kZ(MZ),LZ=e=>{let{__scopeTooltip:t,delayDuration:n=NZ,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=m.useRef(!0),s=m.useRef(!1),c=m.useRef(0);return m.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,P.jsx)(FZ,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:m.useCallback(()=>{r<=0||(window.clearTimeout(c.current),o.current=!1)},[r]),onClose:m.useCallback(()=>{r<=0||(window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r))},[r]),isPointerInTransitRef:s,onPointerInTransitChange:m.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})};LZ.displayName=MZ;var RZ=`Tooltip`,[zZ,BZ]=kZ(RZ),VZ=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=IZ(RZ,e.__scopeTooltip),l=jZ(t),[u,d]=m.useState(null),f=Na(),p=m.useRef(0),h=o??c.disableHoverableContent,g=s??c.delayDuration,_=m.useRef(!1),[v,y]=Fa({prop:r,defaultProp:i??!1,onChange:e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(PZ))):c.onClose(),a?.(e)},caller:RZ}),b=m.useMemo(()=>v?_.current?`delayed-open`:`instant-open`:`closed`,[v]),x=m.useCallback(()=>{window.clearTimeout(p.current),p.current=0,_.current=!1,y(!0)},[y]),S=m.useCallback(()=>{window.clearTimeout(p.current),p.current=0,y(!1)},[y]),C=m.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{_.current=!0,y(!0),p.current=0},g)},[g,y]);return m.useEffect(()=>()=>{p.current&&=(window.clearTimeout(p.current),0)},[]),(0,P.jsx)(gv,{...l,children:(0,P.jsx)(zZ,{scope:t,contentId:f,open:v,stateAttribute:b,trigger:u,onTriggerChange:d,onTriggerEnter:m.useCallback(()=>{c.isOpenDelayedRef.current?C():x()},[c.isOpenDelayedRef,C,x]),onTriggerLeave:m.useCallback(()=>{h?S():(window.clearTimeout(p.current),p.current=0)},[S,h]),onOpen:x,onClose:S,disableHoverableContent:h,children:n})})};VZ.displayName=RZ;var HZ=`TooltipTrigger`,UZ=m.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=BZ(HZ,n),a=IZ(HZ,n),o=jZ(n),s=ka(t,m.useRef(null),i.onTriggerChange),c=m.useRef(!1),l=m.useRef(!1),u=m.useCallback(()=>c.current=!1,[]);return m.useEffect(()=>()=>document.removeEventListener(`pointerup`,u),[u]),(0,P.jsx)(_v,{asChild:!0,...o,children:(0,P.jsx)(Qa.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:s,onPointerMove:F(e.onPointerMove,e=>{e.pointerType!==`touch`&&!l.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),l.current=!0)}),onPointerLeave:F(e.onPointerLeave,()=>{i.onTriggerLeave(),l.current=!1}),onPointerDown:F(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener(`pointerup`,u,{once:!0})}),onFocus:F(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:F(e.onBlur,i.onClose),onClick:F(e.onClick,i.onClose)})})});UZ.displayName=HZ;var WZ=`TooltipPortal`,[GZ,KZ]=kZ(WZ,{forceMount:void 0}),qZ=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=BZ(WZ,t);return(0,P.jsx)(GZ,{scope:t,forceMount:n,children:(0,P.jsx)(Io,{present:n||a.open,children:(0,P.jsx)(Po,{asChild:!0,container:i,children:r})})})};qZ.displayName=WZ;var JZ=`TooltipContent`,YZ=m.forwardRef((e,t)=>{let n=KZ(JZ,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=BZ(JZ,e.__scopeTooltip);return(0,P.jsx)(Io,{present:r||o.open,children:o.disableHoverableContent?(0,P.jsx)(eQ,{side:i,...a,ref:t}):(0,P.jsx)(XZ,{side:i,...a,ref:t})})}),XZ=m.forwardRef((e,t)=>{let n=BZ(JZ,e.__scopeTooltip),r=IZ(JZ,e.__scopeTooltip),i=m.useRef(null),a=ka(t,i),[o,s]=m.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=m.useCallback(()=>{s(null),d(!1)},[d]),p=m.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=iQ(r,rQ(r,n.getBoundingClientRect())),a=aQ(t.getBoundingClientRect()),o=sQ([...i,...a]);s(o),d(!0)},[d]);return m.useEffect(()=>()=>f(),[f]),m.useEffect(()=>{if(c&&u){let e=e=>p(e,u),t=e=>p(e,c);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),m.useEffect(()=>{if(o){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!oQ(n,o);r?f():i&&(f(),l())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,P.jsx)(eQ,{...e,ref:a})}),[ZZ,QZ]=kZ(RZ,{isInside:!1}),$Z=Va(`TooltipContent`),eQ=m.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,c=BZ(JZ,n),l=jZ(n),{onClose:u}=c;return m.useEffect(()=>(document.addEventListener(PZ,u),()=>document.removeEventListener(PZ,u)),[u]),m.useEffect(()=>{if(c.trigger){let e=e=>{e.target instanceof Node&&e.target.contains(c.trigger)&&u()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[c.trigger,u]),(0,P.jsx)(so,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:u,children:(0,P.jsxs)(vv,{"data-state":c.stateAttribute,...l,...s,ref:t,style:{...s.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,P.jsx)($Z,{children:r}),(0,P.jsx)(ZZ,{scope:n,isInside:!0,children:(0,P.jsx)(OZ,{id:c.contentId,role:`tooltip`,children:i||r})})]})})});YZ.displayName=JZ;var tQ=`TooltipArrow`,nQ=m.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=jZ(n);return QZ(tQ,n).isInside?null:(0,P.jsx)(yv,{...i,...r,ref:t})});nQ.displayName=tQ;function rQ(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function iQ(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function aQ(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function oQ(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function sQ(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),cQ(t)}function cQ(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var lQ=LZ,uQ=VZ,dQ=UZ,fQ=qZ,pQ=YZ,mQ=nQ;function hQ({status:e=`unknown`,statusColorConfig:t={unknown:`bg-gray-500 border-gray-600`},statusProps:n,tooltipProviderProps:r,tooltipProps:i,tooltipTriggerProps:a,tooltipPortalProps:o,tooltipContentProps:s,tooltipArrowProps:c,tooltip:l,disabled:u,className:d,...f},p){return u?null:m.createElement(`div`,{ref:p,...f,className:R(`absolute top-0 left-0`,d)},m.createElement(lQ,r,m.createElement(uQ,i,m.createElement(dQ,{asChild:!0,...a},m.createElement(`div`,{...n,className:R(`rounded-full size-4 border border-primary-foreground`,t[e],n?.className)})),m.createElement(fQ,o,m.createElement(pQ,{...s,className:R(`bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance`,s?.className)},m.createElement(`span`,null,l||e||`unknown`),m.createElement(mQ,{...c,className:R(`bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px]`,c?.className)}))))))}var gQ=m.forwardRef(hQ);gQ.displayName=`StatusIndicator`;var _Q=`w-[50%] h-9 hover:bg-blue-50 data-[state=active]:bg-blue-200`,vQ=()=>{let{t:e}=nt(),t=oa(e=>e.shadowPortal),[n,r]=At($t(e=>[e.activeTab,e.setActiveTab])),i=Si(e=>e.enableUserStatuses),[a,o]=Gt($t(e=>[e.showChatStatus,e.showOnlineUsersTab])),s=Vi(e=>e.showProfile),{fetchDialogs:c,unselectDialog:l,currentUserId:u,chatStatus:d,unreadMessagesCount:f}=gr(),{notifyWithSound:p}=_a(),h=(0,m.useRef)(null),g=(0,m.useRef)(f.total),_=(0,m.useRef)(f.total),v=Qr(),y=ci(v),b=i?ti(v):void 0,x=e=>{l(),r(e===`chats`?Ot.CHATS:Ot.USERS)},S=()=>{s(u)},C=async()=>{g.current=_.current,await c(),await it(1e3),_.current>g.current&&p(`${_.current} unread messages`)};return(0,m.useEffect)(()=>{c()},[]),(0,m.useEffect)(()=>{d===h.current&&C(),d===kn.CONNECTED&&(h.current=kn.CONNECTED)},[d]),(0,m.useEffect)(()=>{_.current=f.total},[f.total]),m.default.createElement(`div`,{className:`flex size-full flex-col bg-white border-r border-gray-300 relative transition-transform`},m.default.createElement(gQ,{disabled:!a,status:d,statusColorConfig:{[kn.NOT_AUTHORIZED]:`bg-orange-500 border-orange-600`,[kn.DISCONNECTED]:`bg-red-500 border-red-600`,[kn.CONNECTING]:`bg-yellow-500 border-yellow-600`,[kn.CONNECTED]:`bg-green-500 border-green-600`,[kn.ERROR]:`bg-red-500 border-red-600`},className:`top-0.5 left-0.5`,tooltipPortalProps:{container:t},tooltipProps:{delayDuration:200}}),m.default.createElement(`div`,{className:`flex items-center flex-row p-2 mx-2 border-b bg-white cursor-pointer select-none`,onClick:S},m.default.createElement(Dp,{src:li(v?.avatar),name:y,className:`size-13 ${v?.avatar?`bg-blue-100`:`bg-blue-300`}`,presence:b}),m.default.createElement(`p`,{className:`text-center font-medium ml-2 truncate`},y)),m.default.createElement(HX,{value:n,onValueChange:x,className:`${o?`h-[calc(100%-7.25em)]`:`h-[calc(100%-4.25em)]`}`},m.default.createElement(GX,{value:Ot.CHATS,className:`${o?`h-[calc(100%-7.25em)]`:`h-[calc(100%-4.25em)]`}`},m.default.createElement(xZ,null)),o&&m.default.createElement(GX,{value:Ot.USERS,className:`h-[calc(100%-7.25em)]`},m.default.createElement(wZ,null)),m.default.createElement(UX,{className:`w-full gap-2 bg-transparent absolute bottom-0 p-2 ${o?`h-12`:`h-0`}`},o&&m.default.createElement(`div`,{className:`bg-white flex w-full gap-2`},m.default.createElement(WX,{value:Ot.CHATS,className:_Q},e(`Chats`)),m.default.createElement(WX,{value:Ot.USERS,className:_Q},e(`Users`))))))};function yQ(e){return ip({tag:`svg`,attr:{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`},child:[{tag:`path`,attr:{d:`M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2`},child:[]},{tag:`circle`,attr:{cx:`8.5`,cy:`7`,r:`4`},child:[]},{tag:`line`,attr:{x1:`20`,y1:`8`,x2:`20`,y2:`14`},child:[]},{tag:`line`,attr:{x1:`23`,y1:`11`,x2:`17`,y2:`11`},child:[]}]})(e)}function bQ(e){return ip({tag:`svg`,attr:{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`},child:[{tag:`path`,attr:{d:`M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2`},child:[]},{tag:`circle`,attr:{cx:`8.5`,cy:`7`,r:`4`},child:[]},{tag:`line`,attr:{x1:`23`,y1:`11`,x2:`17`,y2:`11`},child:[]}]})(e)}var xQ=m.default.memo(({userId:e,name:t,avatar:n})=>{let{t:r,i18n:i}=nt(),a=Si(e=>e.enableLastSeen),o=oa(e=>e.shadowPortal),{lastActivity:s,selectedDialog:c,currentUserId:l,removeUsersFromGroupChat:u}=gr(),d=()=>{u([e])},f=c?.user_id===l,p=c?.user_id===e,h=f&&l!==e,g=e===l?void 0:s[e];return m.default.createElement(`div`,{className:`flex items-center p-2 gap-2`},m.default.createElement(Dp,{src:li(n),name:t,className:`size-13 bg-blue-300`}),m.default.createElement(`div`,{className:`flex items-center justify-between w-full`},m.default.createElement(`div`,{className:`flex flex-col items-start`},m.default.createElement(`p`,{className:`text-black font-medium`},t),a&&typeof g==`number`?m.default.createElement(Mh,{seconds:g,language:i.language,text:r(`LastSeen`),onlineText:r(`Online`),className:`text-gray-500 text-sm`}):null),h&&m.default.createElement(Ax,{triggerElement:m.default.createElement(bQ,{className:`cursor-pointer text-gray-700 size-6`}),title:r(`RemoveMembers`),description:r(`RemoveMembers?`),cancelTitle:r(`Cancel`),actionTitle:r(`Continue`),onConfirm:d,portalProps:{container:o},actionButtonProps:{className:`bg-blue-500 hover:bg-blue-700`}}),p&&m.default.createElement(`span`,{className:`text-blue-600 font-bold ml-2`},r(`Admin`))))}),SQ=m.default.memo(()=>{let[e,t]=(0,m.useState)(!1),{t:n}=nt(),{users:r,selectedDialog:i}=gr(),{occupants_ids:a=[]}=i||{},o=(0,m.useMemo)(()=>a.map(e=>{let t=r[e];return t?m.default.createElement(xQ,{userId:t.id,name:ci(t),avatar:t.avatar,key:e}):null}),[r,a]);return m.default.createElement(`div`,{className:`flex flex-col h-3/5`},m.default.createElement(`div`,{className:`flex items-center justify-between border-b py-2 px-4`},m.default.createElement(`span`,{className:`font-medium`},n(`Members`)),m.default.createElement(qX,{modal:!0,open:e,onOpenChange:t},m.default.createElement(JX,{asChild:!0},m.default.createElement(yQ,{className:`cursor-pointer size-7`})),m.default.createElement(QX,null,m.default.createElement(cZ,{chatType:`group`,addUsersMode:!0,onFinish:()=>t(!1)})))),m.default.createElement(`div`,{className:`overflow-y-auto pr-3`},o))}),CQ=m.default.memo(({userId:e})=>{let{t}=nt(),[n,r]=m.default.useState(``);return m.default.createElement(`div`,null,m.default.createElement($X,null,m.default.createElement(eZ,null,t(`ReportUser`)),m.default.createElement(Pc,null,t(`WhatsWrongWithThisUser`))),m.default.createElement(`form`,{className:`flex items-center space-x-2 py-4`},m.default.createElement(`div`,{className:`grid flex-1 gap-2`},m.default.createElement(bX,{name:`report_reason`,placeholder:t(`ProvideReason`),value:n,onChange:e=>r(e.target.value)})),m.default.createElement(XX,{asChild:!0},m.default.createElement($u,{type:`button`,size:`sm`,className:`px-3 bg-blue-500 hover:bg-blue-700`,onClick:async()=>{let r=n.trim();if(r)try{await di(e,r),pf.info(t(`ReportCreatedSuccessfully`))}catch(e){pf.error(`${t(`ReportSubmitFailed`)}: ${JSON.stringify(e)}`)}}},t(`Send`)))))}),wQ=m.default.memo(({user:e})=>{let{t}=nt(),n=oa(e=>e.shadowPortal),{isBlockedUser:r,blockUser:i,unblockUser:a}=gr(),{id:o=0,website:s=``}=e??{},c=ci(e),l=r(o),[u,d]=Si($t(e=>[e.enableContentReporting,e.enableBlockList])),[f,p]=Nt($t(e=>[e.showAlertBusy,e.hideAlertBusy]));return m.default.createElement(`div`,{className:`ml-3 mt-3 text-left text-base`},s?m.default.createElement(`div`,null,m.default.createElement(`a`,{href:s,target:`_blank`,rel:`noreferrer`,className:`text-blue-500 pt-1 wrap-break-word mt-2`},s),m.default.createElement(`hr`,{className:`h-px my-2 bg-gray-200 border-0`})):null,m.default.createElement(`div`,{className:`flex flex-col`},d&&m.default.createElement(Ax,{triggerElement:m.default.createElement(`p`,{className:`pl-0! my-2 font-medium text-red-500 justify-start cursor-pointer hover:underline underline-offset-4`},t(l?`UnBlock`:`Block`)),title:t(l?`RemoveFromBlockList`:`AddToBlockList`),description:t(l?`RemoveFromBlockList?`:`AddToBlockList?`,{name:c}),cancelTitle:t(`Cancel`),actionTitle:t(`Continue`),onConfirm:async()=>{try{f(`${t(`PleaseWait`)}...`),l?await a(o):await i(o)}catch(e){console.error(`Block/unblock user [error]:`,e)}finally{p()}},portalProps:{container:n},actionButtonProps:{className:`bg-blue-500 hover:bg-blue-700`}}),u&&m.default.createElement(qX,{modal:!0},m.default.createElement(JX,{className:`pl-0! justify-start text-blue-500 cursor-pointer text-left font-medium underline-offset-4 hover:underline`},t(`Report`)),m.default.createElement(QX,null,m.default.createElement(CQ,{userId:o})))))}),TQ=m.default.memo(({user:e})=>{let t=Vi(e=>e.showProfile);if(!e)return null;let n=ci(e),r=li(e.avatar);return m.default.createElement(`div`,{key:`blockedUser:${e.id}`,className:`flex items-center p-2 gap-2 cursor-pointer hover:bg-blue-50`,onClick:()=>{t(e.id)}},m.default.createElement(Dp,{src:li(r),name:n,className:`size-13 bg-blue-300`}),m.default.createElement(`div`,{className:`flex items-center justify-between w-full`},m.default.createElement(`div`,{className:`flex flex-col items-start`},m.default.createElement(`p`,{className:`text-black font-medium`},n))))}),EQ=()=>{let{t:e}=nt(),{users:t,blockedUsers:n}=gr(),r=e(`BlockList`),i=(0,m.useMemo)(()=>{let r=n.length>0;return m.default.createElement(`div`,{className:`max-h-[50vh] overflow-y-auto ${r?`border-y`:`relative`}`},r?n.map(e=>m.default.createElement(TQ,{key:`blocked_user:${e}`,user:t[e]})):m.default.createElement(`div`,{className:`h-12 w-full`},m.default.createElement(zW,{title:e(`BlockListEmpty`)})))},[n,t,e]);return m.default.createElement(qX,{modal:!0},m.default.createElement(JX,{className:`mx-4 pl-0! justify-start text-blue-500 cursor-pointer text-left font-medium underline-offset-4 hover:underline`},r),m.default.createElement(QX,null,m.default.createElement($X,null,m.default.createElement(eZ,null,r),m.default.createElement(tZ,null)),i))},DQ=`Switch`,[OQ,kQ]=Ta(DQ),[AQ,jQ]=OQ(DQ);function MQ(e){let{__scopeSwitch:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:u=`on`,internal_do_not_use_render:d}=e,[f,p]=Fa({prop:n,defaultProp:i??!1,onChange:c,caller:DQ}),[h,g]=m.useState(null),[_,v]=m.useState(null),y={checked:f,setChecked:p,disabled:a,control:h,setControl:g,name:s,form:o,value:u,hasConsumerStoppedPropagationRef:m.useRef(!1),required:l,defaultChecked:i,isFormControl:h?!!o||!!h.closest(`form`):!0,bubbleInput:_,setBubbleInput:v};return(0,P.jsx)(AQ,{scope:t,...y,children:BQ(d)?d(y):r})}var NQ=`SwitchTrigger`,PQ=m.forwardRef(({__scopeSwitch:e,onClick:t,...n},r)=>{let{control:i,form:a,value:o,disabled:s,checked:c,required:l,setControl:u,setChecked:d,hasConsumerStoppedPropagationRef:f,isFormControl:p,bubbleInput:h}=jQ(NQ,e),g=ka(r,u),_=m.useRef(c);return m.useEffect(()=>{let e=a?i?.ownerDocument.getElementById(a):i?.form;if(e instanceof HTMLFormElement){let t=()=>d(_.current);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[i,a,d]),(0,P.jsx)(Qa.button,{type:`button`,role:`switch`,"aria-checked":c,"aria-required":l,"data-state":VQ(c),"data-disabled":s?``:void 0,disabled:s,value:o,...n,ref:g,onClick:F(t,e=>{d(e=>!e),h&&p&&(f.current=e.isPropagationStopped(),f.current||e.stopPropagation())})})});PQ.displayName=NQ;var FQ=m.forwardRef((e,t)=>{let{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,P.jsx)(MQ,{__scopeSwitch:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(PQ,{...d,ref:t,__scopeSwitch:n}),e&&(0,P.jsx)(zQ,{__scopeSwitch:n})]})})});FQ.displayName=DQ;var IQ=`SwitchThumb`,LQ=m.forwardRef((e,t)=>{let{__scopeSwitch:n,...r}=e,i=jQ(IQ,n);return(0,P.jsx)(Qa.span,{"data-state":VQ(i.checked),"data-disabled":i.disabled?``:void 0,...r,ref:t})});LQ.displayName=IQ;var RQ=`SwitchBubbleInput`,zQ=m.forwardRef(({__scopeSwitch:e,...t},n)=>{let{control:r,hasConsumerStoppedPropagationRef:i,checked:a,defaultChecked:o,required:s,disabled:c,name:l,value:u,form:d,bubbleInput:f,setBubbleInput:p}=jQ(RQ,e),h=ka(n,p),g=eX(a),_=Z_(r);m.useEffect(()=>{let e=f;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set,r=!i.current;if(g!==a&&n){let t=new Event(`click`,{bubbles:r});n.call(e,a),e.dispatchEvent(t)}},[f,g,a,i]);let v=m.useRef(a);return(0,P.jsx)(Qa.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:o??v.current,required:s,disabled:c,name:l,value:u,form:d,...t,tabIndex:-1,ref:h,style:{...t.style,..._,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})});zQ.displayName=RQ;function BQ(e){return typeof e==`function`}function VQ(e){return e?`checked`:`unchecked`}function HQ(e){return m.createElement(FQ,{...e,className:R(`peer data-[state=checked]:bg-ring data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15em] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring disabled:cursor-not-allowed disabled:opacity-50`,e?.className)},m.createElement(LQ,{className:R(`bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0`)}))}var UQ=()=>{let{t:e}=nt(),[t,n,r,i]=Oi($t(e=>[e.muted,e.showNotifications,e.playSound,e.webPushNotifications])),[a,o,s,c,l,u]=$i($t(e=>[e.isNotifications,e.isNotificationSound,e.isPushNotifications,e.setIsNotifications,e.setIsNotificationSound,e.setIsPushNotifications])),d=t||!n,f=t||!r,p=t||!i,[h,g]=m.default.useState(!1),_=e=>`transition-all duration-200 ease-out hover:bg-ring/10 rounded-full p-2.5 w-full flex! items-between justify-between ${e?`text-muted-foreground cursor-not-allowed`:`cursor-pointer`}`;return m.default.createElement(`div`,{className:`flex flex-col space-y-2 relative`},m.default.createElement(Xd,{loading:h,layout:`absolute`}),m.default.createElement(`span`,{className:`mt-2 text-base font-medium select-none text-left mx-4`},e(`NotificationSettings`)),m.default.createElement(`div`,{className:`w-full border-b p-2 space-y-2`},m.default.createElement(Lx,{htmlFor:`notifications-state`,className:_(d)},m.default.createElement(`span`,null,e(`Notifications`)),m.default.createElement(HQ,{id:`notifications-state`,checked:a&&!d,onCheckedChange:async()=>{g(!0),await c(!a),g(!1)},disabled:d})),m.default.createElement(Lx,{htmlFor:`notification-sounds-state`,className:_(f)},m.default.createElement(`span`,null,e(`NotificationSound`)),m.default.createElement(HQ,{id:`notification-sounds-state`,checked:o&&!f,onCheckedChange:async()=>{g(!0),await l(!o),g(!1)},disabled:f})),m.default.createElement(Lx,{htmlFor:`push-notifications-state`,className:_(p)},m.default.createElement(`span`,null,e(`PushNotifications`)),m.default.createElement(HQ,{id:`push-notifications-state`,checked:s&&!p,onCheckedChange:async()=>{g(!0),await u(!s),g(!1)},disabled:p}))))},WQ=()=>m.default.createElement(`div`,{className:`flex flex-col space-y-2`},m.default.createElement(UQ,null),m.default.createElement(EQ,null)),GQ=()=>{let{t:e}=nt(),t=ci(Qr(),!1),{onlineUsers:n,dialogs:r,getDialogOpponentId:i,sendSignal:a}=gr(),o=Ii(e=>e.enableOnlineUsersBadge),[s,c]=$i($t(e=>[e.userStatus,e.setUserStatus])),l=(0,m.useMemo)(()=>o?[...new Set(n.map(e=>e.id))]:[],[n,o]),u=(0,m.useMemo)(()=>{if(l.length>=10)return l;let e=new Set(l),t=[...r].sort((e,t)=>new Date(t.updated_at??0).getTime()-new Date(e.updated_at??0).getTime());for(let n=0;n<t.length;n++){let r=i(t[n]);if(typeof r==`number`&&!e.has(r)&&e.add(r),e.size>=10)break}return[...e]},[l,r,i]),d=(0,m.useCallback)(async e=>{try{await c(e),a(u,`user/UPDATE`,{userStatus:e})}catch(e){console.error(`Error updating user status:`,e)}},[u,c,a]);return m.default.createElement(`div`,{className:`flex flex-row justify-between gap-2 absolute bottom-0 left-0 w-full z-10 p-2 pl-5`},m.default.createElement(`p`,{className:`text-white truncate`},t),m.default.createElement(bx,{modal:!1},m.default.createElement(Sx,{className:`flex items-center justify-center rounded-full pl-2 pr-3 py-1 bg-gray-100 hover:bg-white text-foreground text-sm font-bold`},m.default.createElement(wp,{status:s,label:e(Xu(s))})),m.default.createElement(Cx,{align:`start`,className:`text-sm font-bold`},m.default.createElement(Tx,{onClick:()=>d(Nr.AVAILABLE)},m.default.createElement(wp,{status:Nr.AVAILABLE,label:e(Xu(Nr.AVAILABLE))})),m.default.createElement(Tx,{onClick:()=>d(Nr.BUSY)},m.default.createElement(wp,{status:Nr.BUSY,label:e(Xu(Nr.BUSY))})),m.default.createElement(Tx,{onClick:()=>d(Nr.AWAY)},m.default.createElement(wp,{status:Nr.AWAY,label:e(Xu(Nr.AWAY))})))))},KQ=m.default.memo(({profileClassName:e})=>{let{t,i18n:n}=nt(),{users:r,selectedDialog:i,lastActivity:a,currentUserId:o,disconnect:s,terminate:c}=gr(),[l,u,d,f]=Si($t(e=>[e.enableUserStatuses,e.enableUserLogin,e.resetUserAuthorized,e.enableLastSeen])),[p,h,g]=Vi($t(e=>[e.visible,e.userId,e.hideProfile])),_=Gt(e=>e.singleView),v=o===h,y=i?.type===tn.DialogType.GROUP&&!h,b=v?Qr():h?r[h]:null,x=`profile:${h||i?._id}`,S=li(b?.avatar||i?.photo),C=b?ci(b,!1):i?.name,w=C?C.slice(0,2).toUpperCase():`NA`,T=h&&!y?a[h]:void 0;return(0,m.useEffect)(()=>{Hi()},[i]),m.default.createElement(`div`,{className:`flex flex-col absolute right-0 top-0 size-full z-20 border-l border-gray-200 bg-white transition-transform duration-200 ${p?`translate-x-0`:`translate-x-full`} ${e}`},m.default.createElement(`div`,{className:`border-b p-2`},m.default.createElement(`div`,{className:`flex items-center h-13`},m.default.createElement(sp,{onClick:g,className:`cursor-pointer size-6`}),m.default.createElement(`span`,{className:`mx-auto text-lg font-medium`},t(_?`Information`:v?`MyProfile`:`Profile`)),u&&v?m.default.createElement(op,{onClick:async()=>{await s()||c(),await Ca(),await Ur(),d()},className:`cursor-pointer size-6`}):m.default.createElement(`span`,{className:`size-6`}))),m.default.createElement(`div`,{className:`h-2/5 w-full relative overflow-hidden`},S?m.default.createElement(`img`,{src:S,key:x,alt:`User Photo`,className:`size-full object-cover`}):m.default.createElement(`div`,{className:`flex items-center justify-center size-full bg-blue-300 text-white text-6xl`},m.default.createElement(`span`,null,w)),l&&v?m.default.createElement(GQ,null):m.default.createElement(`div`,{className:`absolute bottom-2 left-5 text-white z-10`},m.default.createElement(`p`,{className:`text-left`},C),_?m.default.createElement(m.default.Fragment,null):y?m.default.createElement(`p`,{className:`text-sm text-gray-300 text-left`},`${i?.occupants_ids.length} ${t(`members`)}`):f&&typeof T==`number`?m.default.createElement(Mh,{seconds:T,language:n.language,text:t(`LastSeen`),onlineText:t(`Online`),className:`text-sm text-gray-300 text-left`}):null),m.default.createElement(`div`,{className:`absolute bottom-0 left-0 w-full h-[33%] bg-linear-to-t from-blue-700 to-transparent`})),v?m.default.createElement(WQ,null):_?m.default.createElement(m.default.Fragment,null):y?m.default.createElement(SQ,null):m.default.createElement(wQ,{user:b}))}),qQ=()=>{let{t:e}=nt(),t=(0,m.useRef)(void 0),n=(0,m.useRef)(void 0),r=(0,m.useRef)(void 0),{onlineUsersCount:i,fetchAllOnlineUsers:a,fetchUserById:o,fetchUsers:s,selectedDialog:c,connect:l,unreadMessagesCount:u,messageEvent:d,messageSystemEvent:f,messageErrorEvent:p,currentUserId:h,fetchDialogs:g,dialogs:_,selectDialog:v,chatStatus:y}=gr(),b=Si(e=>e.enableUserStatuses),[x,S]=$i($t(e=>[e.userStatus,e.setUserStatus])),[C,w,T]=Ii($t(e=>[e.enableOnlineUsersBadge,e.setOnlineUsersCount,e.requestOnlineUsersInterval])),E=Ui(e=>e.setUnreadCount),[D,ee,O]=Gt($t(e=>[e.opened,e.splitView,e.singleView])),[k,A,j]=Vt($t(e=>[e.defaultChat,e.setDefaultChat,e.singleViewChat])),te=At(e=>e.setActiveTab),{notifyOnMessage:M}=_a(),{isWideScreen:ne}=ba(),{isFocused:N}=va(),re=ee&&ne,ie=re?`w-2/5 max-w-[360px]`:`${c?`hidden`:`w-full`}`,ae=O?`size-full`:re?`w-3/5 flex-1`:`${c?`w-full`:`hidden`}`,oe=re?`w-3/5 min-w-[calc(100%-360px)]`:``;E(u?.total??0),w(i),xa(()=>a(),T,C),ha();let se=async()=>{let e=await Br();await qr(l,e)},ce=async()=>{let{externalId:t,opponentUserIds:n,name:r,photo:i}=j,a=typeof n==`string`?n.split(/,\s*|\s+/).filter(Boolean):n,o=await s({external_id:{in:a}});if(o.length<1){pf.error(e(`SingleViewChatError`));return}let c=t??rt(o),l=a.length>1?zt.GROUP:zt.SINGLE;A({id:c,name:r,photo:i,opponentUserId:a,type:l})},le=async e=>{let{type:t,opponentUserId:n,id:r,name:i=``,photo:a,metadata:o={}}=e??{};if(!n)throw`Missing 'defaultChat.opponentUserId' prop`;let c=t===zt.SINGLE?3:2;if(c===2&&!i)throw`Missing 'defaultChat.name' prop`;let l=await s({external_id:{in:Array.isArray(n)?n:[n]}}),u=h||Qr()?.id;if(!u)throw`Missing 'currentUserId'. Are you logged in?`;let d=[u,...l.map(({id:e})=>e)],f=rt(l),p={externalId:r,...o},m=_.find(e=>e.extensions?.externalId==r);if(!m){let e=await g({extensions:{externalId:r}});e.length>0&&(m=e[0])}if(m){await ue(m);return}let v=Gu(f,i,c,d,u,a,p);ue(v)},ue=async e=>{await v(e),te(Ot.CHATS)};return(0,m.useEffect)(()=>{qr(l),ta()},[]),(0,m.useEffect)(()=>{if(d!==t.current){t.current=d;let{userId:e,message:n}=d||{},r=c?._id===n?.dialog_id,i=e!==h,a=n?.delay&&n?.type===tn.ChatType.CHAT;e&&n&&i&&!a&&(!r||!N||!D)&&M(e,n)}},[d,h,c,N,D,M]),(0,m.useEffect)(()=>{if(p!==r.current){r.current=p;let{messageId:t,error:n}=p||{};t&&(console.warn(`[Error] processing message (${t}): ${n?.info||`unknown`}`),pf.warning(e(`YouBlocked`)))}},[p,e]),(0,m.useEffect)(()=>{if(f!==n.current){n.current=f;let{message:e}=f||{};if(e&&b)switch(e.body){case Pr.UPDATE_USER:h===e.userId&&e.extension?.userStatus!==x?S(e.extension?.userStatus,!0):o(e.userId,!0);break;default:break}}},[f,b,x,h,o,S]),(0,m.useEffect)(()=>{y===kn.NOT_AUTHORIZED&&se()},[y]),(0,m.useEffect)(()=>{k&&le(k).then(()=>{})},[k]),(0,m.useEffect)(()=>{O&&ce()},[O]),m.default.createElement(`div`,{className:`flex size-full`},!O&&m.default.createElement(`div`,{className:ie},m.default.createElement(vQ,null)),m.default.createElement(`div`,{className:ae},m.default.createElement(SX,null)),m.default.createElement(KQ,{profileClassName:oe}))};function JQ({className:e,...t}){return m.createElement(`div`,{"data-slot":`card`,className:Wu(`bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm`,e),...t})}function YQ({className:e,...t}){return m.createElement(`div`,{"data-slot":`card-header`,className:Wu(`@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6`,e),...t})}function XQ({className:e,...t}){return m.createElement(`div`,{"data-slot":`card-title`,className:Wu(`text-lg font-semibold`,e),...t})}function ZQ({className:e,...t}){return m.createElement(`div`,{"data-slot":`card-description`,className:Wu(`text-muted-foreground text-sm`,e),...t})}function QQ({className:e,...t}){return m.createElement(`div`,{"data-slot":`card-action`,className:Wu(`col-start-2 row-span-2 row-start-1 self-start justify-self-end`,e),...t})}function $Q({className:e,...t}){return m.createElement(`div`,{"data-slot":`card-content`,className:Wu(`px-6`,e),...t})}function e$({className:e,...t}){return m.createElement(`div`,{"data-slot":`card-footer`,className:Wu(`flex items-center px-6 [.border-t]:pt-6`,e),...t})}var t$=()=>{let{t:e}=nt(),t=Gt(e=>e.imgLogoSource),n=Si(e=>e.setUserAuthorized),[r,i]=Nt($t(e=>[e.showAlertBusy,e.hideAlertBusy])),a=Qr(),[o,s]=m.useState(!!a),{reset:c,register:l,handleSubmit:u,formState:{errors:d},setError:f}=$Y(),p=l(`login`,{required:e(`AuthForm.LoginRequired`),minLength:{value:3,message:e(`AuthForm.LoginMinLimit`,{limit:3})},maxLength:{value:70,message:e(`AuthForm.LoginMaxLimit`,{limit:70})}}),h=l(`password`,{required:e(`AuthForm.PasswordRequired`),minLength:{value:6,message:e(`AuthForm.PasswordMinLimit`,{limit:6})},maxLength:{value:40,message:e(`AuthForm.PasswordMaxLimit`,{limit:40})}}),g=async({login:t,password:a})=>{r(`${e(`PleaseWait`)}...`);try{o?await Vr(t,a):await Gr(t,a),n(!0)}catch(e){let{info:t}=e??{info:{errors:[]}},n=t?.errors??[],r,i,a,o;if(Array.isArray(n)?o=n?.[0]:(r=n.base?.[0],i=n.login?.[0],a=n.password?.[0]),r||i){let e=`[error] ${r??i??`login`}`;f(`login`,{type:`manual`,message:e})}else if(a){let e=`[error] ${a??`password`}`;f(`password`,{type:`manual`,message:e})}else{let e=`[error] ${o??`unknown`}`;f(`password`,{type:`manual`,message:e})}}finally{i()}},_=()=>{c(),s(!o)};return m.createElement(`div`,{className:`flex justify-center items-center size-full p-2 bg-background`},m.createElement(JQ,{className:`w-full max-w-sm`},m.createElement(YQ,{className:`flex flex-col items-center gap-6`},m.createElement(`img`,{src:t,key:`logo_img`,alt:`Logo`,className:`max-h-24 max-w-72 object-contain`}),m.createElement(XQ,{className:`text-lg font-bold`},e(o?`AuthForm.Login`:`AuthForm.Registration`)),m.createElement(ZQ,null,e(o?`AuthForm.LoginDescription`:`AuthForm.RegisterDescription`))),m.createElement($Q,null,m.createElement(`form`,{onSubmit:u(g)},m.createElement(`div`,{className:`flex flex-col gap-2`},m.createElement(`div`,{className:`grid`},m.createElement(Lx,{htmlFor:`auth-login`},e(`AuthForm.Login`)),m.createElement(bX,{id:`auth-login`,type:`text`,className:`selection:bg-blue-300 selection:text-blue-950 mt-2`,autoComplete:`username`,defaultValue:a?.login??``,...p}),m.createElement(`div`,{className:`h-6 relative`},d.login&&m.createElement(`span`,{className:`text-red-500 text-xs w-full absolute top-1 left-0`},d.login.message))),m.createElement(`div`,{className:`grid`},m.createElement(Lx,{htmlFor:`auth-password`},e(`AuthForm.Password`)),m.createElement(bX,{id:`auth-password`,type:`password`,className:`selection:bg-blue-300 selection:text-blue-950 mt-2`,autoComplete:o?`current-password`:`new-password`,...h}),m.createElement(`div`,{className:`h-6 relative`},d.password&&m.createElement(`span`,{className:`text-red-500 text-xs w-full absolute top-1 left-0`},d.password.message)))),m.createElement(e$,{className:`flex flex-col gap-4 pt-6`},m.createElement($u,{type:`submit`,className:`w-full bg-blue-500 hover:bg-blue-700 text-white font-semibold rounded-md text-base p-2`},e(o?`AuthForm.Login`:`AuthForm.Register`)),m.createElement(QQ,{className:`mx-auto text-sm`},e(o?`AuthForm.ToRegister?`:`AuthForm.ToLogin?`),m.createElement($u,{type:`button`,variant:`link`,onClick:_,className:`font-semibold text-md px-2 py-0`},e(o?`AuthForm.Register`:`AuthForm.Login`))))))))},n$=()=>{let{t:e}=nt(),t=Si(e=>e.setUserAuthorized),n=Gt(e=>e.imgLogoSource),r=async()=>{try{await Hr()&&t(!0)}catch(e){let t=e?.errors?.base?.[0]??`Login error`;pf.error(t),console.error(`Login error`,e)}};return m.createElement(`div`,{className:`flex justify-center items-center size-full p-2 bg-background`},m.createElement(JQ,{className:`w-full max-w-sm`},m.createElement(YQ,{className:`flex flex-col items-center gap-6`},m.createElement(`img`,{src:n,key:`logo_img`,alt:`Logo`,className:`max-w-60`}),m.createElement(XQ,{className:`text-lg font-bold`}),m.createElement(ZQ,null)),m.createElement($Q,null,m.createElement(Xd,{loading:!0}),m.createElement(e$,{className:`flex flex-col gap-4 pt-6`},m.createElement($u,{onClick:async()=>{await Ca(),await Ur(),r()},className:`w-full bg-red-500 hover:bg-red-700 text-white font-semibold rounded-md text-base p-2`},e(`Reset`))))))},r$=({user:e,enabledUserLogin:t})=>{let{disconnect:n,connect:r,terminate:i}=gr(),[a,o]=Si($t(e=>[e.userAuthorized,e.setUserAuthorized])),s=m.useCallback(async()=>{if(!(a||t))try{await Hr(e)&&o(!0)}catch(e){console.error(e?.info?.errors?.login?.[0]??`Login error`)}},[a,e,t,o]),c=async()=>{Kr({on:{sessionExpired:async(e,t)=>{try{let e=await Br();e&&(console.info(`[sessionExpired] session restored successfully`),t(e),await n()||i(),await qr(r,e))}catch(e){console.error(`[sessionExpired] session restore failed`,e)}}}})};return m.useEffect(()=>{s(),c()},[]),a?m.createElement(qQ,null):t?m.createElement(t$,null):m.createElement(n$,null)};function i$(e){return ip({tag:`svg`,attr:{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`},child:[{tag:`path`,attr:{d:`M7.9 20A9 9 0 1 0 4 16.1L2 22Z`},child:[]},{tag:`path`,attr:{d:`M8 12h.01`},child:[]},{tag:`path`,attr:{d:`M12 12h.01`},child:[]},{tag:`path`,attr:{d:`M16 12h.01`},child:[]}]})(e)}var a$=({style:e={}})=>{let[t,n]=Ii($t(e=>[e.enableOnlineUsersBadge,e.onlineUsersCount]));return t&&n>0?m.default.createElement(dZ,{className:`border-none flex justify-center items-center bg-green-600 text-white text-sm font-bold rounded-full h-6 min-w-6 px-1 py-0`,style:{...e}},n):null},o$=({style:e={}})=>{let t=Ui(e=>e.unreadCount);return t>0?m.default.createElement(dZ,{className:`border-none flex justify-center items-center absolute -top-2 right-[calc(100%-1em)] bg-red-700 text-white text-sm font-bold rounded-full h-6 min-w-6 px-1 py-0`,style:{...e}},t):null},s$=({lng:e,title:t,style:n={},badgeStyle:r={},onlineBadgeStyle:i={}})=>{let{t:a}=nt(),o=Gt(e=>e.toggleOpened),s=m.useMemo(()=>t??a(`Chat`,{lng:e}),[t,e,a]);return m.createElement($u,{onClick:o,className:`fixed bottom-3 right-3 bg-blue-500 hover:bg-blue-500 [&_svg]:size-5 text-white rounded-full text-lg hover:drop-shadow-[0_0_5px_#3b82f6aa] z-50`,style:{...n}},m.createElement(i$,{className:`size-6`}),s,m.createElement(a$,{style:i}),m.createElement(o$,{style:r}))};function c$({active:e,onDismiss:t,disableClickOutside:n=!1,disableEscKeyPress:r=!1,disabled:i,...a},o){let s=m.useRef(null);m.useImperativeHandle(o,()=>s.current||{},[]);let c=m.useCallback(r=>{!n&&e&&r.target===s.current&&t()},[n,e,t]),l=m.useCallback(n=>{!r&&e&&n.key===`Escape`&&t()},[r,e,t]);return m.useEffect(()=>{if(!r&&e)return document.addEventListener(`keydown`,l),()=>document.removeEventListener(`keydown`,l)},[r,e,l]),i||!e?null:m.createElement(`div`,{ref:s,"aria-hidden":!0,...a,onClick:c,onTouchStart:c,className:R(`fixed top-0 left-0 size-full bg-black/20`,a?.className)})}var l$=m.forwardRef(c$);return l$.displayName=`DismissLayer`,`serviceWorker`in navigator&&navigator.serviceWorker.addEventListener(`message`,e=>{e.data?.action===`connectycube-chat-widget-sw/initialNotification`&&(typeof window.ConnectyCubeChatWidget==`object`?window.ConnectyCubeChatWidget.initialNotification=e.data:window.ConnectyCubeChatWidget={initialNotification:e.data})}),({appId:e,authKey:t,config:n,userId:r,userName:i,userEmail:a,userAvatar:o,userProfileLink:s,translation:c=`en`,disableClickOutside:l=!1,disableEscKeyPress:u=!1,hideWidgetButton:d=!1,buttonTitle:f,portalStyle:p={},overlayStyle:h={},buttonStyle:g={},badgeStyle:_={},onlineBadgeStyle:v={},...y})=>{let{i18n:b}=nt(),x=!!y.enableCalls,S=!!y.enableUserLogin,C=!!y.embedView,w={userId:r,userName:i,userEmail:a,userAvatar:o,userProfileLink:s},T={appId:e,authKey:t};la(y),ca({creds:T,config:n,user:w,enableUserLogin:S});let[E,D]=Gt($t(e=>[e.opened,e.resetOpened]));return(0,m.useEffect)(()=>{b.changeLanguage(c)},[c,b]),m.default.createElement(Wf,null,m.default.createElement(Zd,null),m.default.createElement(Gf,{embedded:C,style:p},m.default.createElement(r$,{user:w,enabledUserLogin:S})),m.default.createElement(l$,{active:E,onDismiss:D,disabled:C,disableClickOutside:l,disableEscKeyPress:u,style:h}),!C&&!d&&m.default.createElement(s$,{lng:c,title:f,style:g,badgeStyle:_,onlineBadgeStyle:v}),x&&m.default.createElement(Hf,null))}});