@bitrix24/b24jssdk 0.1.7 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,15 @@
1
- (function(j,I){typeof exports=="object"&&typeof module<"u"?I(exports):typeof define=="function"&&define.amd?define(["exports"],I):(j=typeof globalThis<"u"?globalThis:j||self,I(j.B24Js=j.B24Js||{}))})(this,function(j){"use strict";var I=(r=>(r.desktop="desktop",r.log="log",r.info="info",r.warn="warn",r.error="error",r.trace="trace",r))(I||{});const je=new Map;je.set("title",["%c#title#","color: #959ca4; font-style: italic; padding: 0 6px; border-top: 1px solid #ccc; border-left: 1px solid #ccc; border-bottom: 1px solid #ccc"]),je.set("desktop",["%cDESKTOP","color: white; font-style: italic; background-color: #29619b; padding: 0 6px; border: 1px solid #29619b"]),je.set("log",["%cLOG","color: #2a323b; font-style: italic; background-color: #ccc; padding: 0 6px; border: 1px solid #ccc"]),je.set("info",["%cINFO","color: #fff; font-style: italic; background-color: #6b7f96; padding: 0 6px; border: 1px solid #6b7f96"]),je.set("warn",["%cWARNING","color: #f0a74f; font-style: italic; padding: 0 6px; border: 1px solid #f0a74f"]),je.set("error",["%cERROR","color: white; font-style: italic; background-color: #8a3232; padding: 0 6px; border: 1px solid #8a3232"]),je.set("trace",["%cTRACE","color: #2a323b; font-style: italic; background-color: #ccc; padding: 0 6px; border: 1px solid #ccc"]);class be{#e;#t={desktop:!0,log:!1,info:!1,warn:!1,error:!0,trace:!0};static build(e,t=!1){const n=new be(e);return t&&(n.enable("log"),n.enable("info"),n.enable("warn")),n}constructor(e){this.#e=e}#r(e){const t=[],n=[];if(je.has("title")){const s=je.get("title");s[0]&&(t.push(s[0].replace("#title#",this.#e)),n.push(s[1]||""))}if(je.has(e)){const s=je.get(e);s[0]&&(t.push(s[0]),n.push(s[1]||""))}return[t.join(""),...n]}setConfig(e){for(const t in e)this.#t[t]=e[t]}enable(e){return typeof this.#t[e]>"u"?!1:(this.#t[e]=!0,!0)}disable(e){return typeof this.#t[e]>"u"?!1:(this.#t[e]=!1,!0)}isEnabled(e){return this.#t[e]}desktop(...e){this.isEnabled("desktop")&&console.log(...this.#r("desktop"),...e)}log(...e){this.isEnabled("log")&&console.log(...this.#r("log"),...e)}info(...e){this.isEnabled("info")&&console.info(...this.#r("info"),...e)}warn(...e){this.isEnabled("warn")&&console.warn(...this.#r("warn"),...e)}error(...e){this.isEnabled("error")&&console.error(...this.#r("error"),...e)}trace(...e){this.isEnabled("trace")&&console.trace(...this.#r("trace"),...e)}}var Hn=(r=>(r.undefined="undefined",r.any="any",r.integer="integer",r.boolean="boolean",r.double="double",r.date="date",r.datetime="datetime",r.string="string",r.text="text",r.file="file",r.array="array",r.object="object",r.user="user",r.location="location",r.crmCategory="crm_category",r.crmStatus="crm_status",r.crmCurrency="crm_currency",r))(Hn||{});const Zo=Function.prototype.toString.call(Object);let Go=class{getTag(e){return Object.prototype.toString.call(e)}isString(e){return e===""?!0:e?typeof e=="string"||e instanceof String:!1}isStringFilled(e){return this.isString(e)&&e!==""}isFunction(e){return e===null?!1:typeof e=="function"||e instanceof Function}isObject(e){return!!e&&(typeof e=="object"||typeof e=="function")}isObjectLike(e){return!!e&&typeof e=="object"}isPlainObject(e){if(!this.isObjectLike(e)||this.getTag(e)!=="[object Object]")return!1;const t=Object.getPrototypeOf(e);if(t===null)return!0;const n=t.hasOwnProperty("constructor")&&t.constructor;return typeof n=="function"&&Function.prototype.toString.call(n)===Zo}isJsonRpcRequest(e){return typeof e=="object"&&e&&"jsonrpc"in e&&this.isStringFilled(e.jsonrpc)&&"method"in e&&this.isStringFilled(e.method)}isJsonRpcResponse(e){return typeof e=="object"&&e&&"jsonrpc"in e&&this.isStringFilled(e.jsonrpc)&&"id"in e&&("result"in e||"error"in e)}isBoolean(e){return e===!0||e===!1}isNumber(e){return!Number.isNaN(e)&&typeof e=="number"}isInteger(e){return this.isNumber(e)&&e%1===0}isFloat(e){return this.isNumber(e)&&!this.isInteger(e)}isNil(e){return e==null}isArray(e){return!this.isNil(e)&&Array.isArray(e)}isArrayFilled(e){return this.isArray(e)&&e.length>0}isArrayLike(e){return!this.isNil(e)&&!this.isFunction(e)&&e.length>-1&&e.length<=Number.MAX_SAFE_INTEGER}isDate(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Date]"}isDomNode(e){return this.isObjectLike(e)&&!this.isPlainObject(e)&&"nodeType"in e}isElementNode(e){return this.isDomNode(e)&&e.nodeType===Node.ELEMENT_NODE}isTextNode(e){return this.isDomNode(e)&&e.nodeType===Node.TEXT_NODE}isMap(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Map]"}isSet(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Set]"}isWeakMap(e){return this.isObjectLike(e)&&this.getTag(e)==="[object WeakMap]"}isWeakSet(e){return this.isObjectLike(e)&&this.getTag(e)==="[object WeakSet]"}isPrototype(e){return(typeof(e&&e.constructor)=="function"&&e.constructor.prototype||Object.prototype)===e}isRegExp(e){return this.isObjectLike(e)&&this.getTag(e)==="[object RegExp]"}isNull(e){return e===null}isUndefined(e){return typeof e>"u"}isArrayBuffer(e){return this.isObjectLike(e)&&this.getTag(e)==="[object ArrayBuffer]"}isTypedArray(e){const t=/^\[object (?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)]$/;return this.isObjectLike(e)&&t.test(this.getTag(e))}isBlob(e){return this.isObjectLike(e)&&this.isNumber(e.size)&&this.isString(e.type)&&this.isFunction(e.slice)}isFile(e){return this.isBlob(e)&&this.isString(e.name)&&(this.isNumber(e.lastModified)||this.isObjectLike(e.lastModifiedDate))}isFormData(e){return e instanceof FormData}clone(e,t=!0){let n,s,i;if(e===null)return null;if(this.isDomNode(e))n=e.cloneNode(t);else if(typeof e=="object")if(this.isArray(e))for(n=[],s=0,i=e.length;s<i;s++)typeof e[s]=="object"&&t?n[s]=this.clone(e[s],t):n[s]=e[s];else{n={},e.constructor&&(this.isDate(e)?n=new Date(e):n=new e.constructor);for(s in e)e.hasOwnProperty(s)&&(typeof e[s]=="object"&&t?n[s]=this.clone(e[s],t):n[s]=e[s])}else n=e;return n}};const R=new Go;class ut extends Error{}class Yo extends ut{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class Ko extends ut{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class Qo extends ut{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class vt extends ut{}class qn extends ut{constructor(e){super(`Invalid unit ${e}`)}}class Se extends ut{}class et extends ut{constructor(){super("Zone is an abstract class")}}const C="numeric",Ue="short",Ne="long",or={year:C,month:C,day:C},zn={year:C,month:Ue,day:C},Xo={year:C,month:Ue,day:C,weekday:Ue},Jn={year:C,month:Ne,day:C},Zn={year:C,month:Ne,day:C,weekday:Ne},Gn={hour:C,minute:C},Yn={hour:C,minute:C,second:C},Kn={hour:C,minute:C,second:C,timeZoneName:Ue},Qn={hour:C,minute:C,second:C,timeZoneName:Ne},Xn={hour:C,minute:C,hourCycle:"h23"},es={hour:C,minute:C,second:C,hourCycle:"h23"},ts={hour:C,minute:C,second:C,hourCycle:"h23",timeZoneName:Ue},rs={hour:C,minute:C,second:C,hourCycle:"h23",timeZoneName:Ne},ns={year:C,month:C,day:C,hour:C,minute:C},ss={year:C,month:C,day:C,hour:C,minute:C,second:C},is={year:C,month:Ue,day:C,hour:C,minute:C},os={year:C,month:Ue,day:C,hour:C,minute:C,second:C},ea={year:C,month:Ue,day:C,weekday:Ue,hour:C,minute:C},as={year:C,month:Ne,day:C,hour:C,minute:C,timeZoneName:Ue},cs={year:C,month:Ne,day:C,hour:C,minute:C,second:C,timeZoneName:Ue},ls={year:C,month:Ne,day:C,weekday:Ne,hour:C,minute:C,timeZoneName:Ne},us={year:C,month:Ne,day:C,weekday:Ne,hour:C,minute:C,second:C,timeZoneName:Ne};class Wt{get type(){throw new et}get name(){throw new et}get ianaName(){return this.name}get isUniversal(){throw new et}offsetName(e,t){throw new et}formatOffset(e,t){throw new et}offset(e){throw new et}equals(e){throw new et}get isValid(){throw new et}}let jr=null;class ar extends Wt{static get instance(){return jr===null&&(jr=new ar),jr}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return Ms(e,t,n)}formatOffset(e,t){return zt(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}}let cr={};function ta(r){return cr[r]||(cr[r]=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:r,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"})),cr[r]}const ra={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function na(r,e){const t=r.format(e).replace(/\u200E/g,""),n=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(t),[,s,i,o,c,a,u,l]=n;return[o,s,i,c,a,u,l]}function sa(r,e){const t=r.formatToParts(e),n=[];for(let s=0;s<t.length;s++){const{type:i,value:o}=t[s],c=ra[i];i==="era"?n[c]=o:$(c)||(n[c]=parseInt(o,10))}return n}let lr={};class Ge extends Wt{static create(e){return lr[e]||(lr[e]=new Ge(e)),lr[e]}static resetCache(){lr={},cr={}}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch{return!1}}constructor(e){super(),this.zoneName=e,this.valid=Ge.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return Ms(e,t,n,this.name)}formatOffset(e,t){return zt(this.offset(e),t)}offset(e){const t=new Date(e);if(isNaN(t))return NaN;const n=ta(this.name);let[s,i,o,c,a,u,l]=n.formatToParts?sa(n,t):na(n,t);c==="BC"&&(s=-Math.abs(s)+1);const f=pr({year:s,month:i,day:o,hour:a===24?0:a,minute:u,second:l,millisecond:0});let d=+t;const p=d%1e3;return d-=p>=0?p:1e3+p,(f-d)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}}let hs={};function ia(r,e={}){const t=JSON.stringify([r,e]);let n=hs[t];return n||(n=new Intl.ListFormat(r,e),hs[t]=n),n}let Ur={};function Br(r,e={}){const t=JSON.stringify([r,e]);let n=Ur[t];return n||(n=new Intl.DateTimeFormat(r,e),Ur[t]=n),n}let $r={};function oa(r,e={}){const t=JSON.stringify([r,e]);let n=$r[t];return n||(n=new Intl.NumberFormat(r,e),$r[t]=n),n}let Wr={};function aa(r,e={}){const{base:t,...n}=e,s=JSON.stringify([r,n]);let i=Wr[s];return i||(i=new Intl.RelativeTimeFormat(r,e),Wr[s]=i),i}let Vt=null;function ca(){return Vt||(Vt=new Intl.DateTimeFormat().resolvedOptions().locale,Vt)}let fs={};function la(r){let e=fs[r];if(!e){const t=new Intl.Locale(r);e="getWeekInfo"in t?t.getWeekInfo():t.weekInfo,fs[r]=e}return e}function ua(r){const e=r.indexOf("-x-");e!==-1&&(r=r.substring(0,e));const t=r.indexOf("-u-");if(t===-1)return[r];{let n,s;try{n=Br(r).resolvedOptions(),s=r}catch{const a=r.substring(0,t);n=Br(a).resolvedOptions(),s=a}const{numberingSystem:i,calendar:o}=n;return[s,i,o]}}function ha(r,e,t){return(t||e)&&(r.includes("-u-")||(r+="-u"),t&&(r+=`-ca-${t}`),e&&(r+=`-nu-${e}`)),r}function fa(r){const e=[];for(let t=1;t<=12;t++){const n=U.utc(2009,t,1);e.push(r(n))}return e}function da(r){const e=[];for(let t=1;t<=7;t++){const n=U.utc(2016,11,13+t);e.push(r(n))}return e}function ur(r,e,t,n){const s=r.listingMode();return s==="error"?null:s==="en"?t(e):n(e)}function pa(r){return r.numberingSystem&&r.numberingSystem!=="latn"?!1:r.numberingSystem==="latn"||!r.locale||r.locale.startsWith("en")||new Intl.DateTimeFormat(r.intl).resolvedOptions().numberingSystem==="latn"}class ga{constructor(e,t,n){this.padTo=n.padTo||0,this.floor=n.floor||!1;const{padTo:s,floor:i,...o}=n;if(!t||Object.keys(o).length>0){const c={useGrouping:!1,...n};n.padTo>0&&(c.minimumIntegerDigits=n.padTo),this.inf=oa(e,c)}}format(e){if(this.inf){const t=this.floor?Math.floor(e):e;return this.inf.format(t)}else{const t=this.floor?Math.floor(e):Yr(e,3);return ue(t,this.padTo)}}}class ma{constructor(e,t,n){this.opts=n,this.originalZone=void 0;let s;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){const o=-1*(e.offset/60),c=o>=0?`Etc/GMT+${o}`:`Etc/GMT${o}`;e.offset!==0&&Ge.create(c).valid?(s=c,this.dt=e):(s="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,s=e.zone.name):(s="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);const i={...this.opts};i.timeZone=i.timeZone||s,this.dtf=Br(t,i)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(t=>{if(t.type==="timeZoneName"){const n=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...t,value:n}}else return t}):e}resolvedOptions(){return this.dtf.resolvedOptions()}}class ya{constructor(e,t,n){this.opts={style:"long",...n},!t&&Rs()&&(this.rtf=aa(e,n))}format(e,t){return this.rtf?this.rtf.format(e,t):Ba(t,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}}const wa={firstDay:1,minimalDays:4,weekend:[6,7]};class K{static fromOpts(e){return K.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,t,n,s,i=!1){const o=e||ne.defaultLocale,c=o||(i?"en-US":ca()),a=t||ne.defaultNumberingSystem,u=n||ne.defaultOutputCalendar,l=Zr(s)||ne.defaultWeekSettings;return new K(c,a,u,l,o)}static resetCache(){Vt=null,Ur={},$r={},Wr={}}static fromObject({locale:e,numberingSystem:t,outputCalendar:n,weekSettings:s}={}){return K.create(e,t,n,s)}constructor(e,t,n,s,i){const[o,c,a]=ua(e);this.locale=o,this.numberingSystem=t||c||null,this.outputCalendar=n||a||null,this.weekSettings=s,this.intl=ha(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=i,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=pa(this)),this.fastNumbersCached}listingMode(){const e=this.isEnglish(),t=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&t?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:K.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,Zr(e.weekSettings)||this.weekSettings,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,t=!1){return ur(this,e,js,()=>{const n=t?{month:e,day:"numeric"}:{month:e},s=t?"format":"standalone";return this.monthsCache[s][e]||(this.monthsCache[s][e]=fa(i=>this.extract(i,n,"month"))),this.monthsCache[s][e]})}weekdays(e,t=!1){return ur(this,e,$s,()=>{const n=t?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},s=t?"format":"standalone";return this.weekdaysCache[s][e]||(this.weekdaysCache[s][e]=da(i=>this.extract(i,n,"weekday"))),this.weekdaysCache[s][e]})}meridiems(){return ur(this,void 0,()=>Ws,()=>{if(!this.meridiemCache){const e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[U.utc(2016,11,13,9),U.utc(2016,11,13,19)].map(t=>this.extract(t,e,"dayperiod"))}return this.meridiemCache})}eras(e){return ur(this,e,Vs,()=>{const t={era:e};return this.eraCache[e]||(this.eraCache[e]=[U.utc(-40,1,1),U.utc(2017,1,1)].map(n=>this.extract(n,t,"era"))),this.eraCache[e]})}extract(e,t,n){const s=this.dtFormatter(e,t),i=s.formatToParts(),o=i.find(c=>c.type.toLowerCase()===n);return o?o.value:null}numberFormatter(e={}){return new ga(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new ma(e,this.intl,t)}relFormatter(e={}){return new ya(this.intl,this.isEnglish(),e)}listFormatter(e={}){return ia(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:Ls()?la(this.locale):wa}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}}let Vr=null;class Te extends Wt{static get utcInstance(){return Vr===null&&(Vr=new Te(0)),Vr}static instance(e){return e===0?Te.utcInstance:new Te(e)}static parseSpecifier(e){if(e){const t=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(t)return new Te(gr(t[1],t[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${zt(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${zt(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,t){return zt(this.fixed,t)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}}class ba extends Wt{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function tt(r,e){if($(r)||r===null)return e;if(r instanceof Wt)return r;if(Ta(r)){const t=r.toLowerCase();return t==="default"?e:t==="local"||t==="system"?ar.instance:t==="utc"||t==="gmt"?Te.utcInstance:Te.parseSpecifier(t)||Ge.create(r)}else return rt(r)?Te.instance(r):typeof r=="object"&&"offset"in r&&typeof r.offset=="function"?r:new ba(r)}const Hr={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},ds={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},Sa=Hr.hanidec.replace(/[\[|\]]/g,"").split("");function _a(r){let e=parseInt(r,10);if(isNaN(e)){e="";for(let t=0;t<r.length;t++){const n=r.charCodeAt(t);if(r[t].search(Hr.hanidec)!==-1)e+=Sa.indexOf(r[t]);else for(const s in ds){const[i,o]=ds[s];n>=i&&n<=o&&(e+=n-i)}}return parseInt(e,10)}else return e}let kt={};function va(){kt={}}function Be({numberingSystem:r},e=""){const t=r||"latn";return kt[t]||(kt[t]={}),kt[t][e]||(kt[t][e]=new RegExp(`${Hr[t]}${e}`)),kt[t][e]}let ps=()=>Date.now(),gs="system",ms=null,ys=null,ws=null,bs=60,Ss,_s=null;class ne{static get now(){return ps}static set now(e){ps=e}static set defaultZone(e){gs=e}static get defaultZone(){return tt(gs,ar.instance)}static get defaultLocale(){return ms}static set defaultLocale(e){ms=e}static get defaultNumberingSystem(){return ys}static set defaultNumberingSystem(e){ys=e}static get defaultOutputCalendar(){return ws}static set defaultOutputCalendar(e){ws=e}static get defaultWeekSettings(){return _s}static set defaultWeekSettings(e){_s=Zr(e)}static get twoDigitCutoffYear(){return bs}static set twoDigitCutoffYear(e){bs=e%100}static get throwOnInvalid(){return Ss}static set throwOnInvalid(e){Ss=e}static resetCaches(){K.resetCache(),Ge.resetCache(),U.resetCache(),va()}}class $e{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const vs=[0,31,59,90,120,151,181,212,243,273,304,334],ks=[0,31,60,91,121,152,182,213,244,274,305,335];function Me(r,e){return new $e("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${r}, which is invalid`)}function qr(r,e,t){const n=new Date(Date.UTC(r,e-1,t));r<100&&r>=0&&n.setUTCFullYear(n.getUTCFullYear()-1900);const s=n.getUTCDay();return s===0?7:s}function Es(r,e,t){return t+(Ht(r)?ks:vs)[e-1]}function Ts(r,e){const t=Ht(r)?ks:vs,n=t.findIndex(i=>i<e),s=e-t[n];return{month:n+1,day:s}}function zr(r,e){return(r-e+7)%7+1}function hr(r,e=4,t=1){const{year:n,month:s,day:i}=r,o=Es(n,s,i),c=zr(qr(n,s,i),t);let a=Math.floor((o-c+14-e)/7),u;return a<1?(u=n-1,a=qt(u,e,t)):a>qt(n,e,t)?(u=n+1,a=1):u=n,{weekYear:u,weekNumber:a,weekday:c,...yr(r)}}function Os(r,e=4,t=1){const{weekYear:n,weekNumber:s,weekday:i}=r,o=zr(qr(n,1,e),t),c=Tt(n);let a=s*7+i-o-7+e,u;a<1?(u=n-1,a+=Tt(u)):a>c?(u=n+1,a-=Tt(n)):u=n;const{month:l,day:h}=Ts(u,a);return{year:u,month:l,day:h,...yr(r)}}function Jr(r){const{year:e,month:t,day:n}=r,s=Es(e,t,n);return{year:e,ordinal:s,...yr(r)}}function As(r){const{year:e,ordinal:t}=r,{month:n,day:s}=Ts(e,t);return{year:e,month:n,day:s,...yr(r)}}function Is(r,e){if(!$(r.localWeekday)||!$(r.localWeekNumber)||!$(r.localWeekYear)){if(!$(r.weekday)||!$(r.weekNumber)||!$(r.weekYear))throw new vt("Cannot mix locale-based week fields with ISO-based week fields");return $(r.localWeekday)||(r.weekday=r.localWeekday),$(r.localWeekNumber)||(r.weekNumber=r.localWeekNumber),$(r.localWeekYear)||(r.weekYear=r.localWeekYear),delete r.localWeekday,delete r.localWeekNumber,delete r.localWeekYear,{minDaysInFirstWeek:e.getMinDaysInFirstWeek(),startOfWeek:e.getStartOfWeek()}}else return{minDaysInFirstWeek:4,startOfWeek:1}}function ka(r,e=4,t=1){const n=fr(r.weekYear),s=xe(r.weekNumber,1,qt(r.weekYear,e,t)),i=xe(r.weekday,1,7);return n?s?i?!1:Me("weekday",r.weekday):Me("week",r.weekNumber):Me("weekYear",r.weekYear)}function Ea(r){const e=fr(r.year),t=xe(r.ordinal,1,Tt(r.year));return e?t?!1:Me("ordinal",r.ordinal):Me("year",r.year)}function Cs(r){const e=fr(r.year),t=xe(r.month,1,12),n=xe(r.day,1,dr(r.year,r.month));return e?t?n?!1:Me("day",r.day):Me("month",r.month):Me("year",r.year)}function Ns(r){const{hour:e,minute:t,second:n,millisecond:s}=r,i=xe(e,0,23)||e===24&&t===0&&n===0&&s===0,o=xe(t,0,59),c=xe(n,0,59),a=xe(s,0,999);return i?o?c?a?!1:Me("millisecond",s):Me("second",n):Me("minute",t):Me("hour",e)}function $(r){return typeof r>"u"}function rt(r){return typeof r=="number"}function fr(r){return typeof r=="number"&&r%1===0}function Ta(r){return typeof r=="string"}function Oa(r){return Object.prototype.toString.call(r)==="[object Date]"}function Rs(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function Ls(){try{return typeof Intl<"u"&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch{return!1}}function Aa(r){return Array.isArray(r)?r:[r]}function Fs(r,e,t){if(r.length!==0)return r.reduce((n,s)=>{const i=[e(s),s];return n&&t(n[0],i[0])===n[0]?n:i},null)[1]}function Ia(r,e){return e.reduce((t,n)=>(t[n]=r[n],t),{})}function Et(r,e){return Object.prototype.hasOwnProperty.call(r,e)}function Zr(r){if(r==null)return null;if(typeof r!="object")throw new Se("Week settings must be an object");if(!xe(r.firstDay,1,7)||!xe(r.minimalDays,1,7)||!Array.isArray(r.weekend)||r.weekend.some(e=>!xe(e,1,7)))throw new Se("Invalid week settings");return{firstDay:r.firstDay,minimalDays:r.minimalDays,weekend:Array.from(r.weekend)}}function xe(r,e,t){return fr(r)&&r>=e&&r<=t}function Ca(r,e){return r-e*Math.floor(r/e)}function ue(r,e=2){const t=r<0;let n;return t?n="-"+(""+-r).padStart(e,"0"):n=(""+r).padStart(e,"0"),n}function nt(r){if(!($(r)||r===null||r===""))return parseInt(r,10)}function ht(r){if(!($(r)||r===null||r===""))return parseFloat(r)}function Gr(r){if(!($(r)||r===null||r==="")){const e=parseFloat("0."+r)*1e3;return Math.floor(e)}}function Yr(r,e,t=!1){const n=10**e;return(t?Math.trunc:Math.round)(r*n)/n}function Ht(r){return r%4===0&&(r%100!==0||r%400===0)}function Tt(r){return Ht(r)?366:365}function dr(r,e){const t=Ca(e-1,12)+1,n=r+(e-t)/12;return t===2?Ht(n)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][t-1]}function pr(r){let e=Date.UTC(r.year,r.month-1,r.day,r.hour,r.minute,r.second,r.millisecond);return r.year<100&&r.year>=0&&(e=new Date(e),e.setUTCFullYear(r.year,r.month-1,r.day)),+e}function Ps(r,e,t){return-zr(qr(r,1,e),t)+e-1}function qt(r,e=4,t=1){const n=Ps(r,e,t),s=Ps(r+1,e,t);return(Tt(r)-n+s)/7}function Kr(r){return r>99?r:r>ne.twoDigitCutoffYear?1900+r:2e3+r}function Ms(r,e,t,n=null){const s=new Date(r),i={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};n&&(i.timeZone=n);const o={timeZoneName:e,...i},c=new Intl.DateTimeFormat(t,o).formatToParts(s).find(a=>a.type.toLowerCase()==="timezonename");return c?c.value:null}function gr(r,e){let t=parseInt(r,10);Number.isNaN(t)&&(t=0);const n=parseInt(e,10)||0,s=t<0||Object.is(t,-0)?-n:n;return t*60+s}function xs(r){const e=Number(r);if(typeof r=="boolean"||r===""||Number.isNaN(e))throw new Se(`Invalid unit value ${r}`);return e}function mr(r,e){const t={};for(const n in r)if(Et(r,n)){const s=r[n];if(s==null)continue;t[e(n)]=xs(s)}return t}function zt(r,e){const t=Math.trunc(Math.abs(r/60)),n=Math.trunc(Math.abs(r%60)),s=r>=0?"+":"-";switch(e){case"short":return`${s}${ue(t,2)}:${ue(n,2)}`;case"narrow":return`${s}${t}${n>0?`:${n}`:""}`;case"techie":return`${s}${ue(t,2)}${ue(n,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function yr(r){return Ia(r,["hour","minute","second","millisecond"])}const Na=["January","February","March","April","May","June","July","August","September","October","November","December"],Ds=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Ra=["J","F","M","A","M","J","J","A","S","O","N","D"];function js(r){switch(r){case"narrow":return[...Ra];case"short":return[...Ds];case"long":return[...Na];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const Us=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Bs=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],La=["M","T","W","T","F","S","S"];function $s(r){switch(r){case"narrow":return[...La];case"short":return[...Bs];case"long":return[...Us];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const Ws=["AM","PM"],Fa=["Before Christ","Anno Domini"],Pa=["BC","AD"],Ma=["B","A"];function Vs(r){switch(r){case"narrow":return[...Ma];case"short":return[...Pa];case"long":return[...Fa];default:return null}}function xa(r){return Ws[r.hour<12?0:1]}function Da(r,e){return $s(e)[r.weekday-1]}function ja(r,e){return js(e)[r.month-1]}function Ua(r,e){return Vs(e)[r.year<0?0:1]}function Ba(r,e,t="always",n=!1){const s={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},i=["hours","minutes","seconds"].indexOf(r)===-1;if(t==="auto"&&i){const h=r==="days";switch(e){case 1:return h?"tomorrow":`next ${s[r][0]}`;case-1:return h?"yesterday":`last ${s[r][0]}`;case 0:return h?"today":`this ${s[r][0]}`}}const o=Object.is(e,-0)||e<0,c=Math.abs(e),a=c===1,u=s[r],l=n?a?u[1]:u[2]||u[1]:a?s[r][0]:r;return o?`${c} ${l} ago`:`in ${c} ${l}`}function Hs(r,e){let t="";for(const n of r)n.literal?t+=n.val:t+=e(n.val);return t}const $a={D:or,DD:zn,DDD:Jn,DDDD:Zn,t:Gn,tt:Yn,ttt:Kn,tttt:Qn,T:Xn,TT:es,TTT:ts,TTTT:rs,f:ns,ff:is,fff:as,ffff:ls,F:ss,FF:os,FFF:cs,FFFF:us};class _e{static create(e,t={}){return new _e(e,t)}static parseFormat(e){let t=null,n="",s=!1;const i=[];for(let o=0;o<e.length;o++){const c=e.charAt(o);c==="'"?(n.length>0&&i.push({literal:s||/^\s+$/.test(n),val:n}),t=null,n="",s=!s):s||c===t?n+=c:(n.length>0&&i.push({literal:/^\s+$/.test(n),val:n}),n=c,t=c)}return n.length>0&&i.push({literal:s||/^\s+$/.test(n),val:n}),i}static macroTokenToFormatOpts(e){return $a[e]}constructor(e,t){this.opts=t,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,t){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...t}).format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){return this.dtFormatter(e.start,t).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0){if(this.opts.forceSimple)return ue(e,t);const n={...this.opts};return t>0&&(n.padTo=t),this.loc.numberFormatter(n).format(e)}formatDateTimeFromString(e,t){const n=this.loc.listingMode()==="en",s=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",i=(d,p)=>this.loc.extract(e,d,p),o=d=>e.isOffsetFixed&&e.offset===0&&d.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,d.format):"",c=()=>n?xa(e):i({hour:"numeric",hourCycle:"h12"},"dayperiod"),a=(d,p)=>n?ja(e,d):i(p?{month:d}:{month:d,day:"numeric"},"month"),u=(d,p)=>n?Da(e,d):i(p?{weekday:d}:{weekday:d,month:"long",day:"numeric"},"weekday"),l=d=>{const p=_e.macroTokenToFormatOpts(d);return p?this.formatWithSystemDefault(e,p):d},h=d=>n?Ua(e,d):i({era:d},"era"),f=d=>{switch(d){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return o({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return o({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return o({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return c();case"d":return s?i({day:"numeric"},"day"):this.num(e.day);case"dd":return s?i({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return u("short",!0);case"cccc":return u("long",!0);case"ccccc":return u("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return u("short",!1);case"EEEE":return u("long",!1);case"EEEEE":return u("narrow",!1);case"L":return s?i({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return s?i({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return a("short",!0);case"LLLL":return a("long",!0);case"LLLLL":return a("narrow",!0);case"M":return s?i({month:"numeric"},"month"):this.num(e.month);case"MM":return s?i({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return a("short",!1);case"MMMM":return a("long",!1);case"MMMMM":return a("narrow",!1);case"y":return s?i({year:"numeric"},"year"):this.num(e.year);case"yy":return s?i({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return s?i({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return s?i({year:"numeric"},"year"):this.num(e.year,6);case"G":return h("short");case"GG":return h("long");case"GGGGG":return h("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return l(d)}};return Hs(_e.parseFormat(t),f)}formatDurationFromString(e,t){const n=a=>{switch(a[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},s=a=>u=>{const l=n(u);return l?this.num(a.get(l),u.length):u},i=_e.parseFormat(t),o=i.reduce((a,{literal:u,val:l})=>u?a:a.concat(l),[]),c=e.shiftTo(...o.map(n).filter(a=>a));return Hs(i,s(c))}}const qs=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function Ot(...r){const e=r.reduce((t,n)=>t+n.source,"");return RegExp(`^${e}$`)}function At(...r){return e=>r.reduce(([t,n,s],i)=>{const[o,c,a]=i(e,s);return[{...t,...o},c||n,a]},[{},null,1]).slice(0,2)}function It(r,...e){if(r==null)return[null,null];for(const[t,n]of e){const s=t.exec(r);if(s)return n(s)}return[null,null]}function zs(...r){return(e,t)=>{const n={};let s;for(s=0;s<r.length;s++)n[r[s]]=nt(e[t+s]);return[n,null,t+s]}}const Js=/(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/,Wa=`(?:${Js.source}?(?:\\[(${qs.source})\\])?)?`,Qr=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,Zs=RegExp(`${Qr.source}${Wa}`),Xr=RegExp(`(?:T${Zs.source})?`),Va=/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,Ha=/(\d{4})-?W(\d\d)(?:-?(\d))?/,qa=/(\d{4})-?(\d{3})/,za=zs("weekYear","weekNumber","weekDay"),Ja=zs("year","ordinal"),Za=/(\d{4})-(\d\d)-(\d\d)/,Gs=RegExp(`${Qr.source} ?(?:${Js.source}|(${qs.source}))?`),Ga=RegExp(`(?: ${Gs.source})?`);function Ct(r,e,t){const n=r[e];return $(n)?t:nt(n)}function Ya(r,e){return[{year:Ct(r,e),month:Ct(r,e+1,1),day:Ct(r,e+2,1)},null,e+3]}function Nt(r,e){return[{hours:Ct(r,e,0),minutes:Ct(r,e+1,0),seconds:Ct(r,e+2,0),milliseconds:Gr(r[e+3])},null,e+4]}function Jt(r,e){const t=!r[e]&&!r[e+1],n=gr(r[e+1],r[e+2]),s=t?null:Te.instance(n);return[{},s,e+3]}function Zt(r,e){const t=r[e]?Ge.create(r[e]):null;return[{},t,e+1]}const Ka=RegExp(`^T?${Qr.source}$`),Qa=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function Xa(r){const[e,t,n,s,i,o,c,a,u]=r,l=e[0]==="-",h=a&&a[0]==="-",f=(d,p=!1)=>d!==void 0&&(p||d&&l)?-d:d;return[{years:f(ht(t)),months:f(ht(n)),weeks:f(ht(s)),days:f(ht(i)),hours:f(ht(o)),minutes:f(ht(c)),seconds:f(ht(a),a==="-0"),milliseconds:f(Gr(u),h)}]}const ec={GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function en(r,e,t,n,s,i,o){const c={year:e.length===2?Kr(nt(e)):nt(e),month:Ds.indexOf(t)+1,day:nt(n),hour:nt(s),minute:nt(i)};return o&&(c.second=nt(o)),r&&(c.weekday=r.length>3?Us.indexOf(r)+1:Bs.indexOf(r)+1),c}const tc=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function rc(r){const[,e,t,n,s,i,o,c,a,u,l,h]=r,f=en(e,s,n,t,i,o,c);let d;return a?d=ec[a]:u?d=0:d=gr(l,h),[f,new Te(d)]}function nc(r){return r.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}const sc=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,ic=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,oc=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function Ys(r){const[,e,t,n,s,i,o,c]=r;return[en(e,s,n,t,i,o,c),Te.utcInstance]}function ac(r){const[,e,t,n,s,i,o,c]=r;return[en(e,c,t,n,s,i,o),Te.utcInstance]}const cc=Ot(Va,Xr),lc=Ot(Ha,Xr),uc=Ot(qa,Xr),hc=Ot(Zs),Ks=At(Ya,Nt,Jt,Zt),fc=At(za,Nt,Jt,Zt),dc=At(Ja,Nt,Jt,Zt),pc=At(Nt,Jt,Zt);function gc(r){return It(r,[cc,Ks],[lc,fc],[uc,dc],[hc,pc])}function mc(r){return It(nc(r),[tc,rc])}function yc(r){return It(r,[sc,Ys],[ic,Ys],[oc,ac])}function wc(r){return It(r,[Qa,Xa])}const bc=At(Nt);function Sc(r){return It(r,[Ka,bc])}const _c=Ot(Za,Ga),vc=Ot(Gs),kc=At(Nt,Jt,Zt);function Ec(r){return It(r,[_c,Ks],[vc,kc])}const Qs="Invalid Duration",Xs={weeks:{days:7,hours:7*24,minutes:7*24*60,seconds:7*24*60*60,milliseconds:7*24*60*60*1e3},days:{hours:24,minutes:24*60,seconds:24*60*60,milliseconds:24*60*60*1e3},hours:{minutes:60,seconds:60*60,milliseconds:60*60*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},Tc={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:91*24,minutes:91*24*60,seconds:91*24*60*60,milliseconds:91*24*60*60*1e3},months:{weeks:4,days:30,hours:30*24,minutes:30*24*60,seconds:30*24*60*60,milliseconds:30*24*60*60*1e3},...Xs},De=146097/400,Rt=146097/4800,Oc={years:{quarters:4,months:12,weeks:De/7,days:De,hours:De*24,minutes:De*24*60,seconds:De*24*60*60,milliseconds:De*24*60*60*1e3},quarters:{months:3,weeks:De/28,days:De/4,hours:De*24/4,minutes:De*24*60/4,seconds:De*24*60*60/4,milliseconds:De*24*60*60*1e3/4},months:{weeks:Rt/7,days:Rt,hours:Rt*24,minutes:Rt*24*60,seconds:Rt*24*60*60,milliseconds:Rt*24*60*60*1e3},...Xs},ft=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],Ac=ft.slice(0).reverse();function st(r,e,t=!1){const n={values:t?e.values:{...r.values,...e.values||{}},loc:r.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||r.conversionAccuracy,matrix:e.matrix||r.matrix};return new Z(n)}function ei(r,e){let t=e.milliseconds??0;for(const n of Ac.slice(1))e[n]&&(t+=e[n]*r[n].milliseconds);return t}function ti(r,e){const t=ei(r,e)<0?-1:1;ft.reduceRight((n,s)=>{if($(e[s]))return n;if(n){const i=e[n]*t,o=r[s][n],c=Math.floor(i/o);e[s]+=c*t,e[n]-=c*o*t}return s},null),ft.reduce((n,s)=>{if($(e[s]))return n;if(n){const i=e[n]%1;e[n]-=i,e[s]+=i*r[n][s]}return s},null)}function Ic(r){const e={};for(const[t,n]of Object.entries(r))n!==0&&(e[t]=n);return e}class Z{constructor(e){const t=e.conversionAccuracy==="longterm"||!1;let n=t?Oc:Tc;e.matrix&&(n=e.matrix),this.values=e.values,this.loc=e.loc||K.create(),this.conversionAccuracy=t?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=n,this.isLuxonDuration=!0}static fromMillis(e,t){return Z.fromObject({milliseconds:e},t)}static fromObject(e,t={}){if(e==null||typeof e!="object")throw new Se(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new Z({values:mr(e,Z.normalizeUnit),loc:K.fromObject(t),conversionAccuracy:t.conversionAccuracy,matrix:t.matrix})}static fromDurationLike(e){if(rt(e))return Z.fromMillis(e);if(Z.isDuration(e))return e;if(typeof e=="object")return Z.fromObject(e);throw new Se(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,t){const[n]=wc(e);return n?Z.fromObject(n,t):Z.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,t){const[n]=Sc(e);return n?Z.fromObject(n,t):Z.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,t=null){if(!e)throw new Se("need to specify a reason the Duration is invalid");const n=e instanceof $e?e:new $e(e,t);if(ne.throwOnInvalid)throw new Qo(n);return new Z({invalid:n})}static normalizeUnit(e){const t={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e&&e.toLowerCase()];if(!t)throw new qn(e);return t}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){const n={...t,floor:t.round!==!1&&t.floor!==!1};return this.isValid?_e.create(this.loc,n).formatDurationFromString(this,e):Qs}toHuman(e={}){if(!this.isValid)return Qs;const t=ft.map(n=>{const s=this.values[n];return $(s)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:n.slice(0,-1)}).format(s)}).filter(n=>n);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(t)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=Yr(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;const t=this.toMillis();return t<0||t>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},U.fromMillis(t,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?ei(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e),n={};for(const s of ft)(Et(t.values,s)||Et(this.values,s))&&(n[s]=t.get(s)+this.get(s));return st(this,{values:n},!0)}minus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e);return this.plus(t.negate())}mapUnits(e){if(!this.isValid)return this;const t={};for(const n of Object.keys(this.values))t[n]=xs(e(this.values[n],n));return st(this,{values:t},!0)}get(e){return this[Z.normalizeUnit(e)]}set(e){if(!this.isValid)return this;const t={...this.values,...mr(e,Z.normalizeUnit)};return st(this,{values:t})}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:n,matrix:s}={}){const o={loc:this.loc.clone({locale:e,numberingSystem:t}),matrix:s,conversionAccuracy:n};return st(this,o)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;const e=this.toObject();return ti(this.matrix,e),st(this,{values:e},!0)}rescale(){if(!this.isValid)return this;const e=Ic(this.normalize().shiftToAll().toObject());return st(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(o=>Z.normalizeUnit(o));const t={},n={},s=this.toObject();let i;for(const o of ft)if(e.indexOf(o)>=0){i=o;let c=0;for(const u in n)c+=this.matrix[u][o]*n[u],n[u]=0;rt(s[o])&&(c+=s[o]);const a=Math.trunc(c);t[o]=a,n[o]=(c*1e3-a*1e3)/1e3}else rt(s[o])&&(n[o]=s[o]);for(const o in n)n[o]!==0&&(t[i]+=o===i?n[o]:n[o]/this.matrix[i][o]);return ti(this.matrix,t),st(this,{values:t},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const e={};for(const t of Object.keys(this.values))e[t]=this.values[t]===0?0:-this.values[t];return st(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function t(n,s){return n===void 0||n===0?s===void 0||s===0:n===s}for(const n of ft)if(!t(this.values[n],e.values[n]))return!1;return!0}}const Lt="Invalid Interval";function Cc(r,e){return!r||!r.isValid?se.invalid("missing or invalid start"):!e||!e.isValid?se.invalid("missing or invalid end"):e<r?se.invalid("end before start",`The end of an interval must be after its start, but you had start=${r.toISO()} and end=${e.toISO()}`):null}class se{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(e,t=null){if(!e)throw new Se("need to specify a reason the Interval is invalid");const n=e instanceof $e?e:new $e(e,t);if(ne.throwOnInvalid)throw new Ko(n);return new se({invalid:n})}static fromDateTimes(e,t){const n=Yt(e),s=Yt(t),i=Cc(n,s);return i??new se({start:n,end:s})}static after(e,t){const n=Z.fromDurationLike(t),s=Yt(e);return se.fromDateTimes(s,s.plus(n))}static before(e,t){const n=Z.fromDurationLike(t),s=Yt(e);return se.fromDateTimes(s.minus(n),s)}static fromISO(e,t){const[n,s]=(e||"").split("/",2);if(n&&s){let i,o;try{i=U.fromISO(n,t),o=i.isValid}catch{o=!1}let c,a;try{c=U.fromISO(s,t),a=c.isValid}catch{a=!1}if(o&&a)return se.fromDateTimes(i,c);if(o){const u=Z.fromISO(s,t);if(u.isValid)return se.after(i,u)}else if(a){const u=Z.fromISO(n,t);if(u.isValid)return se.before(c,u)}}return se.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get isValid(){return this.invalidReason===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(e).get(e):NaN}count(e="milliseconds",t){if(!this.isValid)return NaN;const n=this.start.startOf(e,t);let s;return t?.useLocaleWeeks?s=this.end.reconfigure({locale:n.locale}):s=this.end,s=s.startOf(e,t),Math.floor(s.diff(n,e).get(e))+(s.valueOf()!==this.end.valueOf())}hasSame(e){return this.isValid?this.isEmpty()||this.e.minus(1).hasSame(this.s,e):!1}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return this.isValid?this.s>e:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:t}={}){return this.isValid?se.fromDateTimes(e||this.s,t||this.e):this}splitAt(...e){if(!this.isValid)return[];const t=e.map(Yt).filter(o=>this.contains(o)).sort((o,c)=>o.toMillis()-c.toMillis()),n=[];let{s}=this,i=0;for(;s<this.e;){const o=t[i]||this.e,c=+o>+this.e?this.e:o;n.push(se.fromDateTimes(s,c)),s=c,i+=1}return n}splitBy(e){const t=Z.fromDurationLike(e);if(!this.isValid||!t.isValid||t.as("milliseconds")===0)return[];let{s:n}=this,s=1,i;const o=[];for(;n<this.e;){const c=this.start.plus(t.mapUnits(a=>a*s));i=+c>+this.e?this.e:c,o.push(se.fromDateTimes(n,i)),n=i,s+=1}return o}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return this.isValid?+this.e==+e.s:!1}abutsEnd(e){return this.isValid?+e.e==+this.s:!1}engulfs(e){return this.isValid?this.s<=e.s&&this.e>=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;const t=this.s>e.s?this.s:e.s,n=this.e<e.e?this.e:e.e;return t>=n?null:se.fromDateTimes(t,n)}union(e){if(!this.isValid)return this;const t=this.s<e.s?this.s:e.s,n=this.e>e.e?this.e:e.e;return se.fromDateTimes(t,n)}static merge(e){const[t,n]=e.sort((s,i)=>s.s-i.s).reduce(([s,i],o)=>i?i.overlaps(o)||i.abutsStart(o)?[s,i.union(o)]:[s.concat([i]),o]:[s,o],[[],null]);return n&&t.push(n),t}static xor(e){let t=null,n=0;const s=[],i=e.map(a=>[{time:a.s,type:"s"},{time:a.e,type:"e"}]),o=Array.prototype.concat(...i),c=o.sort((a,u)=>a.time-u.time);for(const a of c)n+=a.type==="s"?1:-1,n===1?t=a.time:(t&&+t!=+a.time&&s.push(se.fromDateTimes(t,a.time)),t=null);return se.merge(s)}difference(...e){return se.xor([this].concat(e)).map(t=>this.intersection(t)).filter(t=>t&&!t.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:Lt}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=or,t={}){return this.isValid?_e.create(this.s.loc.clone(t),e).formatInterval(this):Lt}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:Lt}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:Lt}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:Lt}toFormat(e,{separator:t=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`:Lt}toDuration(e,t){return this.isValid?this.e.diff(this.s,e,t):Z.invalid(this.invalidReason)}mapEndpoints(e){return se.fromDateTimes(e(this.s),e(this.e))}}class wr{static hasDST(e=ne.defaultZone){const t=U.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return Ge.isValidZone(e)}static normalizeZone(e){return tt(e,ne.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getWeekendDays().slice()}static months(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null,outputCalendar:i="gregory"}={}){return(s||K.create(t,n,i)).months(e)}static monthsFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null,outputCalendar:i="gregory"}={}){return(s||K.create(t,n,i)).months(e,!0)}static weekdays(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null}={}){return(s||K.create(t,n,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null}={}){return(s||K.create(t,n,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return K.create(e).meridiems()}static eras(e="short",{locale:t=null}={}){return K.create(t,null,"gregory").eras(e)}static features(){return{relative:Rs(),localeWeek:Ls()}}}function ri(r,e){const t=s=>s.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),n=t(e)-t(r);return Math.floor(Z.fromMillis(n).as("days"))}function Nc(r,e,t){const n=[["years",(a,u)=>u.year-a.year],["quarters",(a,u)=>u.quarter-a.quarter+(u.year-a.year)*4],["months",(a,u)=>u.month-a.month+(u.year-a.year)*12],["weeks",(a,u)=>{const l=ri(a,u);return(l-l%7)/7}],["days",ri]],s={},i=r;let o,c;for(const[a,u]of n)t.indexOf(a)>=0&&(o=a,s[a]=u(r,e),c=i.plus(s),c>e?(s[a]--,r=i.plus(s),r>e&&(c=r,s[a]--,r=i.plus(s))):r=c);return[r,s,c,o]}function Rc(r,e,t,n){let[s,i,o,c]=Nc(r,e,t);const a=e-s,u=t.filter(h=>["hours","minutes","seconds","milliseconds"].indexOf(h)>=0);u.length===0&&(o<e&&(o=s.plus({[c]:1})),o!==s&&(i[c]=(i[c]||0)+a/(o-s)));const l=Z.fromObject(i,n);return u.length>0?Z.fromMillis(a,n).shiftTo(...u).plus(l):l}const Lc="missing Intl.DateTimeFormat.formatToParts support";function Y(r,e=t=>t){return{regex:r,deser:([t])=>e(_a(t))}}const ni="[ \xA0]",si=new RegExp(ni,"g");function Fc(r){return r.replace(/\./g,"\\.?").replace(si,ni)}function ii(r){return r.replace(/\./g,"").replace(si," ").toLowerCase()}function We(r,e){return r===null?null:{regex:RegExp(r.map(Fc).join("|")),deser:([t])=>r.findIndex(n=>ii(t)===ii(n))+e}}function oi(r,e){return{regex:r,deser:([,t,n])=>gr(t,n),groups:e}}function br(r){return{regex:r,deser:([e])=>e}}function Pc(r){return r.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Mc(r,e){const t=Be(e),n=Be(e,"{2}"),s=Be(e,"{3}"),i=Be(e,"{4}"),o=Be(e,"{6}"),c=Be(e,"{1,2}"),a=Be(e,"{1,3}"),u=Be(e,"{1,6}"),l=Be(e,"{1,9}"),h=Be(e,"{2,4}"),f=Be(e,"{4,6}"),d=m=>({regex:RegExp(Pc(m.val)),deser:([y])=>y,literal:!0}),g=(m=>{if(r.literal)return d(m);switch(m.val){case"G":return We(e.eras("short"),0);case"GG":return We(e.eras("long"),0);case"y":return Y(u);case"yy":return Y(h,Kr);case"yyyy":return Y(i);case"yyyyy":return Y(f);case"yyyyyy":return Y(o);case"M":return Y(c);case"MM":return Y(n);case"MMM":return We(e.months("short",!0),1);case"MMMM":return We(e.months("long",!0),1);case"L":return Y(c);case"LL":return Y(n);case"LLL":return We(e.months("short",!1),1);case"LLLL":return We(e.months("long",!1),1);case"d":return Y(c);case"dd":return Y(n);case"o":return Y(a);case"ooo":return Y(s);case"HH":return Y(n);case"H":return Y(c);case"hh":return Y(n);case"h":return Y(c);case"mm":return Y(n);case"m":return Y(c);case"q":return Y(c);case"qq":return Y(n);case"s":return Y(c);case"ss":return Y(n);case"S":return Y(a);case"SSS":return Y(s);case"u":return br(l);case"uu":return br(c);case"uuu":return Y(t);case"a":return We(e.meridiems(),0);case"kkkk":return Y(i);case"kk":return Y(h,Kr);case"W":return Y(c);case"WW":return Y(n);case"E":case"c":return Y(t);case"EEE":return We(e.weekdays("short",!1),1);case"EEEE":return We(e.weekdays("long",!1),1);case"ccc":return We(e.weekdays("short",!0),1);case"cccc":return We(e.weekdays("long",!0),1);case"Z":case"ZZ":return oi(new RegExp(`([+-]${c.source})(?::(${n.source}))?`),2);case"ZZZ":return oi(new RegExp(`([+-]${c.source})(${n.source})?`),2);case"z":return br(/[a-z_+-/]{1,256}?/i);case" ":return br(/[^\S\n\r]/);default:return d(m)}})(r)||{invalidReason:Lc};return g.token=r,g}const xc={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function Dc(r,e,t){const{type:n,value:s}=r;if(n==="literal"){const a=/^\s+$/.test(s);return{literal:!a,val:a?" ":s}}const i=e[n];let o=n;n==="hour"&&(e.hour12!=null?o=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?o="hour12":o="hour24":o=t.hour12?"hour12":"hour24");let c=xc[o];if(typeof c=="object"&&(c=c[i]),c)return{literal:!1,val:c}}function jc(r){return[`^${r.map(t=>t.regex).reduce((t,n)=>`${t}(${n.source})`,"")}$`,r]}function Uc(r,e,t){const n=r.match(e);if(n){const s={};let i=1;for(const o in t)if(Et(t,o)){const c=t[o],a=c.groups?c.groups+1:1;!c.literal&&c.token&&(s[c.token.val[0]]=c.deser(n.slice(i,i+a))),i+=a}return[n,s]}else return[n,{}]}function Bc(r){const e=i=>{switch(i){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}};let t=null,n;return $(r.z)||(t=Ge.create(r.z)),$(r.Z)||(t||(t=new Te(r.Z)),n=r.Z),$(r.q)||(r.M=(r.q-1)*3+1),$(r.h)||(r.h<12&&r.a===1?r.h+=12:r.h===12&&r.a===0&&(r.h=0)),r.G===0&&r.y&&(r.y=-r.y),$(r.u)||(r.S=Gr(r.u)),[Object.keys(r).reduce((i,o)=>{const c=e(o);return c&&(i[c]=r[o]),i},{}),t,n]}let tn=null;function $c(){return tn||(tn=U.fromMillis(1555555555555)),tn}function Wc(r,e){if(r.literal)return r;const t=_e.macroTokenToFormatOpts(r.val),n=ui(t,e);return n==null||n.includes(void 0)?r:n}function ai(r,e){return Array.prototype.concat(...r.map(t=>Wc(t,e)))}class ci{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=ai(_e.parseFormat(t),e),this.units=this.tokens.map(n=>Mc(n,e)),this.disqualifyingUnit=this.units.find(n=>n.invalidReason),!this.disqualifyingUnit){const[n,s]=jc(this.units);this.regex=RegExp(n,"i"),this.handlers=s}}explainFromTokens(e){if(this.isValid){const[t,n]=Uc(e,this.regex,this.handlers),[s,i,o]=n?Bc(n):[null,null,void 0];if(Et(n,"a")&&Et(n,"H"))throw new vt("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:t,matches:n,result:s,zone:i,specificOffset:o}}else return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}}function li(r,e,t){return new ci(r,t).explainFromTokens(e)}function Vc(r,e,t){const{result:n,zone:s,specificOffset:i,invalidReason:o}=li(r,e,t);return[n,s,i,o]}function ui(r,e){if(!r)return null;const n=_e.create(e,r).dtFormatter($c()),s=n.formatToParts(),i=n.resolvedOptions();return s.map(o=>Dc(o,r,i))}const rn="Invalid DateTime",hi=864e13;function Gt(r){return new $e("unsupported zone",`the zone "${r.name}" is not supported`)}function nn(r){return r.weekData===null&&(r.weekData=hr(r.c)),r.weekData}function sn(r){return r.localWeekData===null&&(r.localWeekData=hr(r.c,r.loc.getMinDaysInFirstWeek(),r.loc.getStartOfWeek())),r.localWeekData}function dt(r,e){const t={ts:r.ts,zone:r.zone,c:r.c,o:r.o,loc:r.loc,invalid:r.invalid};return new U({...t,...e,old:t})}function fi(r,e,t){let n=r-e*60*1e3;const s=t.offset(n);if(e===s)return[n,e];n-=(s-e)*60*1e3;const i=t.offset(n);return s===i?[n,s]:[r-Math.min(s,i)*60*1e3,Math.max(s,i)]}function Sr(r,e){r+=e*60*1e3;const t=new Date(r);return{year:t.getUTCFullYear(),month:t.getUTCMonth()+1,day:t.getUTCDate(),hour:t.getUTCHours(),minute:t.getUTCMinutes(),second:t.getUTCSeconds(),millisecond:t.getUTCMilliseconds()}}function _r(r,e,t){return fi(pr(r),e,t)}function di(r,e){const t=r.o,n=r.c.year+Math.trunc(e.years),s=r.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,i={...r.c,year:n,month:s,day:Math.min(r.c.day,dr(n,s))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},o=Z.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),c=pr(i);let[a,u]=fi(c,t,r.zone);return o!==0&&(a+=o,u=r.zone.offset(a)),{ts:a,o:u}}function Ft(r,e,t,n,s,i){const{setZone:o,zone:c}=t;if(r&&Object.keys(r).length!==0||e){const a=e||c,u=U.fromObject(r,{...t,zone:a,specificOffset:i});return o?u:u.setZone(c)}else return U.invalid(new $e("unparsable",`the input "${s}" can't be parsed as ${n}`))}function vr(r,e,t=!0){return r.isValid?_e.create(K.create("en-US"),{allowZ:t,forceSimple:!0}).formatDateTimeFromString(r,e):null}function on(r,e){const t=r.c.year>9999||r.c.year<0;let n="";return t&&r.c.year>=0&&(n+="+"),n+=ue(r.c.year,t?6:4),e?(n+="-",n+=ue(r.c.month),n+="-",n+=ue(r.c.day)):(n+=ue(r.c.month),n+=ue(r.c.day)),n}function pi(r,e,t,n,s,i){let o=ue(r.c.hour);return e?(o+=":",o+=ue(r.c.minute),(r.c.millisecond!==0||r.c.second!==0||!t)&&(o+=":")):o+=ue(r.c.minute),(r.c.millisecond!==0||r.c.second!==0||!t)&&(o+=ue(r.c.second),(r.c.millisecond!==0||!n)&&(o+=".",o+=ue(r.c.millisecond,3))),s&&(r.isOffsetFixed&&r.offset===0&&!i?o+="Z":r.o<0?(o+="-",o+=ue(Math.trunc(-r.o/60)),o+=":",o+=ue(Math.trunc(-r.o%60))):(o+="+",o+=ue(Math.trunc(r.o/60)),o+=":",o+=ue(Math.trunc(r.o%60)))),i&&(o+="["+r.zone.ianaName+"]"),o}const gi={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},Hc={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},qc={ordinal:1,hour:0,minute:0,second:0,millisecond:0},mi=["year","month","day","hour","minute","second","millisecond"],zc=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],Jc=["year","ordinal","hour","minute","second","millisecond"];function Zc(r){const e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[r.toLowerCase()];if(!e)throw new qn(r);return e}function yi(r){switch(r.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return Zc(r)}}function Gc(r){return Er[r]||(kr===void 0&&(kr=ne.now()),Er[r]=r.offset(kr)),Er[r]}function wi(r,e){const t=tt(e.zone,ne.defaultZone);if(!t.isValid)return U.invalid(Gt(t));const n=K.fromObject(e);let s,i;if($(r.year))s=ne.now();else{for(const a of mi)$(r[a])&&(r[a]=gi[a]);const o=Cs(r)||Ns(r);if(o)return U.invalid(o);const c=Gc(t);[s,i]=_r(r,c,t)}return new U({ts:s,zone:t,loc:n,o:i})}function bi(r,e,t){const n=$(t.round)?!0:t.round,s=(o,c)=>(o=Yr(o,n||t.calendary?0:2,!0),e.loc.clone(t).relFormatter(t).format(o,c)),i=o=>t.calendary?e.hasSame(r,o)?0:e.startOf(o).diff(r.startOf(o),o).get(o):e.diff(r,o).get(o);if(t.unit)return s(i(t.unit),t.unit);for(const o of t.units){const c=i(o);if(Math.abs(c)>=1)return s(c,o)}return s(r>e?-0:0,t.units[t.units.length-1])}function Si(r){let e={},t;return r.length>0&&typeof r[r.length-1]=="object"?(e=r[r.length-1],t=Array.from(r).slice(0,r.length-1)):t=Array.from(r),[e,t]}let kr,Er={};class U{constructor(e){const t=e.zone||ne.defaultZone;let n=e.invalid||(Number.isNaN(e.ts)?new $e("invalid input"):null)||(t.isValid?null:Gt(t));this.ts=$(e.ts)?ne.now():e.ts;let s=null,i=null;if(!n)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(t))[s,i]=[e.old.c,e.old.o];else{const c=rt(e.o)&&!e.old?e.o:t.offset(this.ts);s=Sr(this.ts,c),n=Number.isNaN(s.year)?new $e("invalid input"):null,s=n?null:s,i=n?null:c}this._zone=t,this.loc=e.loc||K.create(),this.invalid=n,this.weekData=null,this.localWeekData=null,this.c=s,this.o=i,this.isLuxonDateTime=!0}static now(){return new U({})}static local(){const[e,t]=Si(arguments),[n,s,i,o,c,a,u]=t;return wi({year:n,month:s,day:i,hour:o,minute:c,second:a,millisecond:u},e)}static utc(){const[e,t]=Si(arguments),[n,s,i,o,c,a,u]=t;return e.zone=Te.utcInstance,wi({year:n,month:s,day:i,hour:o,minute:c,second:a,millisecond:u},e)}static fromJSDate(e,t={}){const n=Oa(e)?e.valueOf():NaN;if(Number.isNaN(n))return U.invalid("invalid input");const s=tt(t.zone,ne.defaultZone);return s.isValid?new U({ts:n,zone:s,loc:K.fromObject(t)}):U.invalid(Gt(s))}static fromMillis(e,t={}){if(rt(e))return e<-hi||e>hi?U.invalid("Timestamp out of range"):new U({ts:e,zone:tt(t.zone,ne.defaultZone),loc:K.fromObject(t)});throw new Se(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,t={}){if(rt(e))return new U({ts:e*1e3,zone:tt(t.zone,ne.defaultZone),loc:K.fromObject(t)});throw new Se("fromSeconds requires a numerical input")}static fromObject(e,t={}){e=e||{};const n=tt(t.zone,ne.defaultZone);if(!n.isValid)return U.invalid(Gt(n));const s=K.fromObject(t),i=mr(e,yi),{minDaysInFirstWeek:o,startOfWeek:c}=Is(i,s),a=ne.now(),u=$(t.specificOffset)?n.offset(a):t.specificOffset,l=!$(i.ordinal),h=!$(i.year),f=!$(i.month)||!$(i.day),d=h||f,p=i.weekYear||i.weekNumber;if((d||l)&&p)throw new vt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(f&&l)throw new vt("Can't mix ordinal dates with month/day");const g=p||i.weekday&&!d;let m,y,w=Sr(a,u);g?(m=zc,y=Hc,w=hr(w,o,c)):l?(m=Jc,y=qc,w=Jr(w)):(m=mi,y=gi);let _=!1;for(const M of m){const J=i[M];$(J)?_?i[M]=y[M]:i[M]=w[M]:_=!0}const b=g?ka(i,o,c):l?Ea(i):Cs(i),k=b||Ns(i);if(k)return U.invalid(k);const S=g?Os(i,o,c):l?As(i):i,[E,N]=_r(S,u,n),x=new U({ts:E,zone:n,o:N,loc:s});return i.weekday&&d&&e.weekday!==x.weekday?U.invalid("mismatched weekday",`you can't specify both a weekday of ${i.weekday} and a date of ${x.toISO()}`):x.isValid?x:U.invalid(x.invalid)}static fromISO(e,t={}){const[n,s]=gc(e);return Ft(n,s,t,"ISO 8601",e)}static fromRFC2822(e,t={}){const[n,s]=mc(e);return Ft(n,s,t,"RFC 2822",e)}static fromHTTP(e,t={}){const[n,s]=yc(e);return Ft(n,s,t,"HTTP",t)}static fromFormat(e,t,n={}){if($(e)||$(t))throw new Se("fromFormat requires an input string and a format");const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0}),[c,a,u,l]=Vc(o,e,t);return l?U.invalid(l):Ft(c,a,n,`format ${t}`,e,u)}static fromString(e,t,n={}){return U.fromFormat(e,t,n)}static fromSQL(e,t={}){const[n,s]=Ec(e);return Ft(n,s,t,"SQL",e)}static invalid(e,t=null){if(!e)throw new Se("need to specify a reason the DateTime is invalid");const n=e instanceof $e?e:new $e(e,t);if(ne.throwOnInvalid)throw new Yo(n);return new U({invalid:n})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){const n=ui(e,K.fromObject(t));return n?n.map(s=>s?s.val:null).join(""):null}static expandFormat(e,t={}){return ai(_e.parseFormat(e),K.fromObject(t)).map(s=>s.val).join("")}static resetCache(){kr=void 0,Er={}}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?nn(this).weekYear:NaN}get weekNumber(){return this.isValid?nn(this).weekNumber:NaN}get weekday(){return this.isValid?nn(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?sn(this).weekday:NaN}get localWeekNumber(){return this.isValid?sn(this).weekNumber:NaN}get localWeekYear(){return this.isValid?sn(this).weekYear:NaN}get ordinal(){return this.isValid?Jr(this.c).ordinal:NaN}get monthShort(){return this.isValid?wr.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?wr.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?wr.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?wr.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];const e=864e5,t=6e4,n=pr(this.c),s=this.zone.offset(n-e),i=this.zone.offset(n+e),o=this.zone.offset(n-s*t),c=this.zone.offset(n-i*t);if(o===c)return[this];const a=n-o*t,u=n-c*t,l=Sr(a,o),h=Sr(u,c);return l.hour===h.hour&&l.minute===h.minute&&l.second===h.second&&l.millisecond===h.millisecond?[dt(this,{ts:a}),dt(this,{ts:u})]:[this]}get isInLeapYear(){return Ht(this.year)}get daysInMonth(){return dr(this.year,this.month)}get daysInYear(){return this.isValid?Tt(this.year):NaN}get weeksInWeekYear(){return this.isValid?qt(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?qt(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){const{locale:t,numberingSystem:n,calendar:s}=_e.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:n,outputCalendar:s}}toUTC(e=0,t={}){return this.setZone(Te.instance(e),t)}toLocal(){return this.setZone(ne.defaultZone)}setZone(e,{keepLocalTime:t=!1,keepCalendarTime:n=!1}={}){if(e=tt(e,ne.defaultZone),e.equals(this.zone))return this;if(e.isValid){let s=this.ts;if(t||n){const i=e.offset(this.ts),o=this.toObject();[s]=_r(o,i,e)}return dt(this,{ts:s,zone:e})}else return U.invalid(Gt(e))}reconfigure({locale:e,numberingSystem:t,outputCalendar:n}={}){const s=this.loc.clone({locale:e,numberingSystem:t,outputCalendar:n});return dt(this,{loc:s})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;const t=mr(e,yi),{minDaysInFirstWeek:n,startOfWeek:s}=Is(t,this.loc),i=!$(t.weekYear)||!$(t.weekNumber)||!$(t.weekday),o=!$(t.ordinal),c=!$(t.year),a=!$(t.month)||!$(t.day),u=c||a,l=t.weekYear||t.weekNumber;if((u||o)&&l)throw new vt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(a&&o)throw new vt("Can't mix ordinal dates with month/day");let h;i?h=Os({...hr(this.c,n,s),...t},n,s):$(t.ordinal)?(h={...this.toObject(),...t},$(t.day)&&(h.day=Math.min(dr(h.year,h.month),h.day))):h=As({...Jr(this.c),...t});const[f,d]=_r(h,this.o,this.zone);return dt(this,{ts:f,o:d})}plus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e);return dt(this,di(this,t))}minus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e).negate();return dt(this,di(this,t))}startOf(e,{useLocaleWeeks:t=!1}={}){if(!this.isValid)return this;const n={},s=Z.normalizeUnit(e);switch(s){case"years":n.month=1;case"quarters":case"months":n.day=1;case"weeks":case"days":n.hour=0;case"hours":n.minute=0;case"minutes":n.second=0;case"seconds":n.millisecond=0;break}if(s==="weeks")if(t){const i=this.loc.getStartOfWeek(),{weekday:o}=this;o<i&&(n.weekNumber=this.weekNumber-1),n.weekday=i}else n.weekday=1;if(s==="quarters"){const i=Math.ceil(this.month/3);n.month=(i-1)*3+1}return this.set(n)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?_e.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):rn}toLocaleString(e=or,t={}){return this.isValid?_e.create(this.loc.clone(t),e).formatDateTime(this):rn}toLocaleParts(e={}){return this.isValid?_e.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:t=!1,suppressMilliseconds:n=!1,includeOffset:s=!0,extendedZone:i=!1}={}){if(!this.isValid)return null;const o=e==="extended";let c=on(this,o);return c+="T",c+=pi(this,o,t,n,s,i),c}toISODate({format:e="extended"}={}){return this.isValid?on(this,e==="extended"):null}toISOWeekDate(){return vr(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:t=!1,includeOffset:n=!0,includePrefix:s=!1,extendedZone:i=!1,format:o="extended"}={}){return this.isValid?(s?"T":"")+pi(this,o==="extended",t,e,n,i):null}toRFC2822(){return vr(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return vr(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?on(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:t=!1,includeOffsetSpace:n=!0}={}){let s="HH:mm:ss.SSS";return(t||e)&&(n&&(s+=" "),t?s+="z":e&&(s+="ZZ")),vr(this,s,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():rn}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};const t={...this.c};return e.includeConfig&&(t.outputCalendar=this.outputCalendar,t.numberingSystem=this.loc.numberingSystem,t.locale=this.loc.locale),t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t="milliseconds",n={}){if(!this.isValid||!e.isValid)return Z.invalid("created by diffing an invalid DateTime");const s={locale:this.locale,numberingSystem:this.numberingSystem,...n},i=Aa(t).map(Z.normalizeUnit),o=e.valueOf()>this.valueOf(),c=o?this:e,a=o?e:this,u=Rc(c,a,i,s);return o?u.negate():u}diffNow(e="milliseconds",t={}){return this.diff(U.now(),e,t)}until(e){return this.isValid?se.fromDateTimes(this,e):this}hasSame(e,t,n){if(!this.isValid)return!1;const s=e.valueOf(),i=this.setZone(e.zone,{keepLocalTime:!0});return i.startOf(t,n)<=s&&s<=i.endOf(t,n)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;const t=e.base||U.fromObject({},{zone:this.zone}),n=e.padding?this<t?-e.padding:e.padding:0;let s=["years","months","days","hours","minutes","seconds"],i=e.unit;return Array.isArray(e.unit)&&(s=e.unit,i=void 0),bi(t,this.plus(n),{...e,numeric:"always",units:s,unit:i})}toRelativeCalendar(e={}){return this.isValid?bi(e.base||U.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...e){if(!e.every(U.isDateTime))throw new Se("min requires all arguments be DateTimes");return Fs(e,t=>t.valueOf(),Math.min)}static max(...e){if(!e.every(U.isDateTime))throw new Se("max requires all arguments be DateTimes");return Fs(e,t=>t.valueOf(),Math.max)}static fromFormatExplain(e,t,n={}){const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0});return li(o,e,t)}static fromStringExplain(e,t,n={}){return U.fromFormatExplain(e,t,n)}static buildFormatParser(e,t={}){const{locale:n=null,numberingSystem:s=null}=t,i=K.fromOpts({locale:n,numberingSystem:s,defaultToEN:!0});return new ci(i,e)}static fromFormatParser(e,t,n={}){if($(e)||$(t))throw new Se("fromFormatParser requires an input string and a format parser");const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0});if(!o.equals(t.locale))throw new Se(`fromFormatParser called with a locale of ${o}, but the format parser was created for ${t.locale}`);const{result:c,zone:a,specificOffset:u,invalidReason:l}=t.explainFromTokens(e);return l?U.invalid(l):Ft(c,a,n,`format ${t.format}`,e,u)}static get DATE_SHORT(){return or}static get DATE_MED(){return zn}static get DATE_MED_WITH_WEEKDAY(){return Xo}static get DATE_FULL(){return Jn}static get DATE_HUGE(){return Zn}static get TIME_SIMPLE(){return Gn}static get TIME_WITH_SECONDS(){return Yn}static get TIME_WITH_SHORT_OFFSET(){return Kn}static get TIME_WITH_LONG_OFFSET(){return Qn}static get TIME_24_SIMPLE(){return Xn}static get TIME_24_WITH_SECONDS(){return es}static get TIME_24_WITH_SHORT_OFFSET(){return ts}static get TIME_24_WITH_LONG_OFFSET(){return rs}static get DATETIME_SHORT(){return ns}static get DATETIME_SHORT_WITH_SECONDS(){return ss}static get DATETIME_MED(){return is}static get DATETIME_MED_WITH_SECONDS(){return os}static get DATETIME_MED_WITH_WEEKDAY(){return ea}static get DATETIME_FULL(){return as}static get DATETIME_FULL_WITH_SECONDS(){return cs}static get DATETIME_HUGE(){return ls}static get DATETIME_HUGE_WITH_SECONDS(){return us}}function Yt(r){if(U.isDateTime(r))return r;if(r&&r.valueOf&&rt(r.valueOf()))return U.fromJSDate(r);if(r&&typeof r=="object")return U.fromObject(r);throw new Se(`Unknown datetime argument: ${r}, of type ${typeof r}`)}const an={};let cn;const Yc=new Uint8Array(16),ye=[];for(let r=0;r<256;++r)ye.push((r+256).toString(16).slice(1));function Kc(r,e,t){return r.msecs??=-1/0,r.seq??=0,e>r.msecs?(r.seq=t[6]<<23|t[7]<<16|t[8]<<8|t[9],r.msecs=e):(r.seq=Math.trunc(r.seq+1),r.seq===0&&r.msecs++),r}function Qc(r,e,t,n,s=0){return n||(n=new Uint8Array(16),s=0),e??=Date.now(),t??=r[6]*127<<24|r[7]<<16|r[8]<<8|r[9],n[s++]=e/1099511627776&255,n[s++]=e/4294967296&255,n[s++]=e/16777216&255,n[s++]=e/65536&255,n[s++]=e/256&255,n[s++]=e&255,n[s++]=112|t>>>28&15,n[s++]=t>>>20&255,n[s++]=128|t>>>14&63,n[s++]=t>>>6&255,n[s++]=t<<2&255|r[10]&3,n[s++]=r[11],n[s++]=r[12],n[s++]=r[13],n[s++]=r[14],n[s++]=r[15],n}function Xc(r,e=0){return(ye[r[e]]+ye[r[e+1]]+ye[r[e+2]]+ye[r[e+3]]+"-"+ye[r[e+4]]+ye[r[e+5]]+"-"+ye[r[e+6]]+ye[r[e+7]]+"-"+ye[r[e+8]]+ye[r[e+9]]+"-"+ye[r[e+10]]+ye[r[e+11]]+ye[r[e+12]]+ye[r[e+13]]+ye[r[e+14]]+ye[r[e+15]]).toLowerCase()}function el(){const r=Date.now();if(!cn){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported.");cn=crypto.getRandomValues.bind(crypto)}const e=cn(Yc);Kc(an,r,e);const t=Qc(e,an.msecs,an.seq,void 0,void 0);return Xc(t)}const tl=/[&<>'"]/g,rl=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34)/g,nl={"&":"&amp","<":"&lt",">":"&gt","'":"&#39",'"':"&quot"},sl={"&amp":"&","&#38":"&","&lt":"<","&#60":"<","&gt":">","&#62":">","&apos":"'","&#39":"'","&quot":'"',"&#34":'"'};class il{getRandom(e=8){return[...Array(e)].map(()=>Math.trunc(Math.random()*36).toString(36)).join("")}getUniqId(){return"xxxxxxxx-xlsx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=Math.trunc(Math.random()*16);return(e==="x"?t:t&3|8).toString(16)})}getUuidRfc4122(){return el()}encode(e){return R.isString(e)?e.replace(tl,t=>nl[t]):e}decode(e){return R.isString(e)?e.replace(rl,t=>sl[t]):e}toNumber(e){const t=Number.parseFloat(e);return R.isNumber(t)?t:0}toInteger(e){return this.toNumber(Number.parseInt(e,10))}toBoolean(e,t=[]){const n=R.isString(e)?e.toLowerCase():e;return["true","y","1",1,!0,...t].includes(n)}toCamelCase(e){if(!R.isStringFilled(e))return e;const t=/[-_\s]+(.)?/g;return t.test(e)?(e=e.toLowerCase(),e=e.replace(t,(n,s)=>s?s.toUpperCase():""),e[0].toLowerCase()+e.substring(1)):e.match(/^[A-Z]+$/)?e.toLowerCase():e[0].toLowerCase()+e.slice(1)}toPascalCase(e){return R.isStringFilled(e)?this.capitalize(this.toCamelCase(e)):e}toKebabCase(e){if(!R.isStringFilled(e))return e;const t=e.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g);return t?t.map(n=>n.toLowerCase()).join("-"):e}capitalize(e){return R.isStringFilled(e)?e[0].toUpperCase()+e.substring(1):e}numberFormat(e,t=0,n=".",s=","){const i=Number.isFinite(e)?e:0,o=Number.isFinite(t)?Math.abs(t):0,c=(o?((a,u)=>{const l=Math.pow(10,u);return Math.round(a*l)/l})(i,o):Math.round(i)).toString().split(".");return c[0].length>3&&(c[0]=c[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,s)),(c[1]||"").length<o&&(c[1]=c[1]||"",c[1]+=new Array(o-c[1].length+1).join("0")),c.join(n)}toDateTime(e,t,n){return!(typeof t>"u")&&R.isStringFilled(t)?U.fromFormat(e,t,n):U.fromISO(e,n)}getDateForLog(){return U.now().toFormat("y-MM-dd HH:mm:ss")}buildQueryString(e){let t="";for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n];R.isArray(s)?s.forEach((i,o)=>{t+=encodeURIComponent(n+"["+o+"]")+"="+encodeURIComponent(i)+"&"}):t+=encodeURIComponent(n)+"="+encodeURIComponent(s)+"&"}return t.length>0&&(t=t.substring(0,t.length-1)),t}}const W=new il;let ge="";try{ge=navigator?.userAgent.toLowerCase()}catch{ge="?"}let ol=class{isOpera(){return ge.includes("opera")}isIE(){return"attachEvent"in document&&!this.isOpera()}isIE6(){return ge.includes("msie 6")}isIE7(){return ge.includes("msie 7")}isIE8(){return ge.includes("msie 8")}isIE9(){return"documentMode"in document&&document.documentMode>=9}isIE10(){return"documentMode"in document&&document.documentMode>=10}isSafari(){return ge.includes("safari")&&!ge.includes("chrome")}isFirefox(){return ge.includes("firefox")}isChrome(){return ge.includes("chrome")}detectIEVersion(){if(this.isOpera()||this.isSafari()||this.isFirefox()||this.isChrome())return-1;let e=-1;if(window.MSStream&&!window.ActiveXObject&&"ActiveXObject"in window?e=11:this.isIE10()?e=10:this.isIE9()?e=9:this.isIE()&&(e=8),e===-1||e===8){if(navigator.appName==="Microsoft Internet Explorer"){const t=new RegExp("MSIE ([0-9]+[.0-9]*)"),n=navigator.userAgent.match(t);R.isArrayLike(n)&&n.length>0&&(e=Number.parseFloat(n[1]))}if(navigator.appName==="Netscape"){e=11;const t=new RegExp("Trident/.*rv:([0-9]+[.0-9]*)");if(t.exec(navigator.userAgent)!=null){const n=navigator.userAgent.match(t);R.isArrayLike(n)&&n.length>0&&(e=Number.parseFloat(n[1]))}}}return e}isIE11(){return this.detectIEVersion()>=11}isMac(){return ge.includes("macintosh")}isWin(){return ge.includes("windows")}isLinux(){return ge.includes("linux")&&!this.isAndroid()}isAndroid(){return ge.includes("android")}isIPad(){return ge.includes("ipad;")||this.isMac()&&this.isTouchDevice()}isIPhone(){return ge.includes("iphone;")}isIOS(){return this.isIPad()||this.isIPhone()}isMobile(){return this.isIPhone()||this.isIPad()||this.isAndroid()||ge.includes("mobile")||ge.includes("touch")}isRetina(){return(window.devicePixelRatio&&window.devicePixelRatio>=2)===!0}isTouchDevice(){return"ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0}isDoctype(e){const t=e||document;return t.compatMode?t.compatMode==="CSS1Compat":t.documentElement&&t.documentElement.clientHeight}isLocalStorageSupported(){try{return localStorage.setItem("test","test"),localStorage.removeItem("test"),!0}catch{return!1}}detectAndroidVersion(){const e=new RegExp("Android ([0-9]+[.0-9]*)");if(e.exec(navigator.userAgent)!=null){const t=navigator.userAgent.match(e);if(R.isArrayLike(t)&&t.length>0)return Number.parseFloat(t[1])}return 0}};const _i=new ol,vi={sleep:1e3,speed:.001,amount:30},ln={sleep:600,speed:.01,amount:30*5};var ki=(r=>(r.undefined="UNDEFINED",r.lead="CRM_LEAD",r.deal="CRM_DEAL",r.contact="CRM_CONTACT",r.company="CRM_COMPANY",r.oldInvoice="CRM_INVOICE",r.invoice="CRM_SMART_INVOICE",r.quote="CRM_QUOTE",r.requisite="CRM_REQUISITE",r))(ki||{}),Ei=(r=>(r[r.undefined=0]="undefined",r[r.lead=1]="lead",r[r.deal=2]="deal",r[r.contact=3]="contact",r[r.company=4]="company",r[r.oldInvoice=5]="oldInvoice",r[r.invoice=31]="invoice",r[r.quote=7]="quote",r[r.requisite=8]="requisite",r))(Ei||{}),ee=(r=>(r.App="app",r.Profile="profile",r.Currency="currency",r.AppOptions="appOptions",r.UserOptions="userOptions",r))(ee||{});const pt={Free:"F",Demo:"D",Trial:"T",Paid:"P",Local:"L",Subscription:"S"},Ti={[pt.Free]:"Free",[pt.Demo]:"Demo",[pt.Trial]:"Trial",[pt.Paid]:"Paid",[pt.Local]:"Local",[pt.Subscription]:"Subscription"},gt={MainSettings:"MainSettings",UfList:"UfList",UfPage:"UfPage"};var Ye=(r=>(r.NotSet="notSet",r.JsonArray="jsonArray",r.JsonObject="jsonObject",r.FloatVal="float",r.IntegerVal="integer",r.BoolYN="boolYN",r.StringVal="string",r))(Ye||{}),te=(r=>(r.Undefined="undefined",r.WebSocket="webSocket",r.LongPolling="longPolling",r))(te||{}),Re=(r=>(r.PullConfig="bx-pull-config",r.WebsocketBlocked="bx-pull-websocket-blocked",r.LongPollingBlocked="bx-pull-longpolling-blocked",r.LoggingEnabled="bx-pull-logging-enabled",r))(Re||{}),Le=(r=>(r.Online="online",r.Offline="offline",r.Connecting="connect",r))(Le||{}),Tr=(r=>(r[r.Unknown=0]="Unknown",r[r.Client=1]="Client",r[r.Backend=2]="Backend",r))(Tr||{}),Fe=(r=>(r.Server="server",r.Client="client",r.Online="online",r.Status="status",r.Revision="revision",r))(Fe||{}),ve=(r=>(r[r.NORMAL_CLOSURE=1e3]="NORMAL_CLOSURE",r[r.SERVER_DIE=1001]="SERVER_DIE",r[r.CONFIG_REPLACED=3e3]="CONFIG_REPLACED",r[r.CHANNEL_EXPIRED=3001]="CHANNEL_EXPIRED",r[r.SERVER_RESTARTED=3002]="SERVER_RESTARTED",r[r.CONFIG_EXPIRED=3003]="CONFIG_EXPIRED",r[r.MANUAL=3004]="MANUAL",r[r.STUCK=3005]="STUCK",r[r.WRONG_CHANNEL_ID=4010]="WRONG_CHANNEL_ID",r))(ve||{}),Kt=(r=>(r.CHANNEL_EXPIRE="CHANNEL_EXPIRE",r.CONFIG_EXPIRE="CONFIG_EXPIRE",r.SERVER_RESTART="SERVER_RESTART",r))(Kt||{}),un=(r=>(r.Shared="shared",r.Personal="personal",r))(un||{});const hn={Parse:{code:-32700,message:"Parse error"},InvalidRequest:{code:-32600,message:"Invalid Request"},MethodNotFound:{code:-32601,message:"Method not found"},InvalidParams:{code:-32602,message:"Invalid params"},Internal:{code:-32603,message:"Internal error"}};var He=(r=>(r.Publish="publish",r.GetUsersLastSeen="getUsersLastSeen",r.Ping="ping",r.ListChannels="listChannels",r.SubscribeStatusChange="subscribeStatusChange",r.UnsubscribeStatusChange="unsubscribeStatusChange",r))(He||{});class Pt{_errorCollection;_data;constructor(){this._errorCollection=new Set,this._data=null}get isSuccess(){return this._errorCollection.size===0}setData(e){return this._data=e,this}getData(){return this._data}addError(e){return e instanceof Error?this._errorCollection.add(e):this._errorCollection.add(new Error(e.toString())),this}addErrors(e){for(const t of e)t instanceof Error?this._errorCollection.add(t):this._errorCollection.add(new Error(t.toString()));return this}getErrors(){return this._errorCollection.values()}getErrorMessages(){return[...this.getErrors()].map(e=>e.message)}toString(){return this.isSuccess?`Result (success): data: ${JSON.stringify(this._data)}`:`Result (failure): errors: ${this.getErrorMessages().join(", ")}`}}class Qt extends Error{cause;_status;_answerError;constructor(e){const t=`${e.answerError.error}${e.answerError.errorDescription?": "+e.answerError.errorDescription:""}`;super(t),this.cause=e.cause||null,this.name=this.constructor.name,this._status=e.status,this._answerError=e.answerError}get answerError(){return this._answerError}get status(){return this._status}set status(e){this._status=e}toString(){return`${this.answerError.error}${this.answerError.errorDescription?": "+this.answerError.errorDescription:""} (${this.status})`}}class fn extends Pt{_status;_query;_data;constructor(e,t,n){if(super(),this._data=e,this._query=structuredClone(t),this._status=n,typeof this._data.error<"u"){const s=typeof this._data.error=="string"?this._data:this._data.error;this.addError(new Qt({status:this._status,answerError:{error:s.error||"",errorDescription:s.error_description||""}}))}}setData(e){throw new Error("AjaxResult not support setData()")}getData(){return this._data}isMore(){return R.isNumber(this._data?.next)}getTotal(){return W.toInteger(this._data?.total)}getStatus(){return this._status}getQuery(){return this._query}async getNext(e){return this.isMore()&&this.isSuccess?(this._query.start=Number.parseInt(this._data?.next),e.call(this._query.method,this._query.params,this._query.start)):Promise.resolve(!1)}}let al=class{#e;#t;#r;_logger=null;constructor(){this.#e=vi,this.#r=0,this.#t=0}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}get params(){return{...this.#e}}set params(e){this.#e=e,this.getLogger().log("new restriction manager params",e)}check(e=""){return new Promise(t=>{if(this.#s(),this.#i())return this.getLogger().log(`>> no sleep >>> ${e}`,this.#n()),this.#o(),t(null);{const n=i=>{this.getLogger().info(`>> go sleep >>> ${e}`,this.#n()),setTimeout(()=>{i()},this.#e.sleep)},s=()=>{if(this.#s(),this.#i())return this.getLogger().info(`<< stop sleep <<< ${e}`,this.#n()),this.#o(),t(null);n(s)};n(s)}})}#n(){return`${this.#r.toFixed(4)} from ${this.#e.amount}`}#s(){this.#t>0&&(this.#r-=(Date.now()-this.#t)*this.#e.speed,this.#r<0&&(this.#r=0)),this.#t=Date.now()}#o(){this.#r++}#i(){return this.#r<this.#e.amount}};const cl="X-Request-ID",ll="bx24_request_id",ul="bx24_sdk_ver";let hl=class{getQueryStringParameterName(){return ll}getQueryStringSdkParameterName(){return ul}generate(){return W.getUuidRfc4122()}getRequestId(){return this.generate()}getHeaderFieldName(){return cl}};function Oi(r,e){return function(){return r.apply(e,arguments)}}const{toString:fl}=Object.prototype,{getPrototypeOf:dn}=Object,Or=(r=>e=>{const t=fl.call(e);return r[t]||(r[t]=t.slice(8,-1).toLowerCase())})(Object.create(null)),Ve=r=>(r=r.toLowerCase(),e=>Or(e)===r),Ar=r=>e=>typeof e===r,{isArray:Mt}=Array,Xt=Ar("undefined");function dl(r){return r!==null&&!Xt(r)&&r.constructor!==null&&!Xt(r.constructor)&&Pe(r.constructor.isBuffer)&&r.constructor.isBuffer(r)}const Ai=Ve("ArrayBuffer");function pl(r){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(r):e=r&&r.buffer&&Ai(r.buffer),e}const gl=Ar("string"),Pe=Ar("function"),Ii=Ar("number"),Ir=r=>r!==null&&typeof r=="object",ml=r=>r===!0||r===!1,Cr=r=>{if(Or(r)!=="object")return!1;const e=dn(r);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in r)&&!(Symbol.iterator in r)},yl=Ve("Date"),wl=Ve("File"),bl=Ve("Blob"),Sl=Ve("FileList"),_l=r=>Ir(r)&&Pe(r.pipe),vl=r=>{let e;return r&&(typeof FormData=="function"&&r instanceof FormData||Pe(r.append)&&((e=Or(r))==="formdata"||e==="object"&&Pe(r.toString)&&r.toString()==="[object FormData]"))},kl=Ve("URLSearchParams"),[El,Tl,Ol,Al]=["ReadableStream","Request","Response","Headers"].map(Ve),Il=r=>r.trim?r.trim():r.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function er(r,e,{allOwnKeys:t=!1}={}){if(r===null||typeof r>"u")return;let n,s;if(typeof r!="object"&&(r=[r]),Mt(r))for(n=0,s=r.length;n<s;n++)e.call(null,r[n],n,r);else{const i=t?Object.getOwnPropertyNames(r):Object.keys(r),o=i.length;let c;for(n=0;n<o;n++)c=i[n],e.call(null,r[c],c,r)}}function Ci(r,e){e=e.toLowerCase();const t=Object.keys(r);let n=t.length,s;for(;n-- >0;)if(s=t[n],e===s.toLowerCase())return s;return null}const mt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ni=r=>!Xt(r)&&r!==mt;function pn(){const{caseless:r}=Ni(this)&&this||{},e={},t=(n,s)=>{const i=r&&Ci(e,s)||s;Cr(e[i])&&Cr(n)?e[i]=pn(e[i],n):Cr(n)?e[i]=pn({},n):Mt(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n<s;n++)arguments[n]&&er(arguments[n],t);return e}const Cl=(r,e,t,{allOwnKeys:n}={})=>(er(e,(s,i)=>{t&&Pe(s)?r[i]=Oi(s,t):r[i]=s},{allOwnKeys:n}),r),Nl=r=>(r.charCodeAt(0)===65279&&(r=r.slice(1)),r),Rl=(r,e,t,n)=>{r.prototype=Object.create(e.prototype,n),r.prototype.constructor=r,Object.defineProperty(r,"super",{value:e.prototype}),t&&Object.assign(r.prototype,t)},Ll=(r,e,t,n)=>{let s,i,o;const c={};if(e=e||{},r==null)return e;do{for(s=Object.getOwnPropertyNames(r),i=s.length;i-- >0;)o=s[i],(!n||n(o,r,e))&&!c[o]&&(e[o]=r[o],c[o]=!0);r=t!==!1&&dn(r)}while(r&&(!t||t(r,e))&&r!==Object.prototype);return e},Fl=(r,e,t)=>{r=String(r),(t===void 0||t>r.length)&&(t=r.length),t-=e.length;const n=r.indexOf(e,t);return n!==-1&&n===t},Pl=r=>{if(!r)return null;if(Mt(r))return r;let e=r.length;if(!Ii(e))return null;const t=new Array(e);for(;e-- >0;)t[e]=r[e];return t},Ml=(r=>e=>r&&e instanceof r)(typeof Uint8Array<"u"&&dn(Uint8Array)),xl=(r,e)=>{const n=(r&&r[Symbol.iterator]).call(r);let s;for(;(s=n.next())&&!s.done;){const i=s.value;e.call(r,i[0],i[1])}},Dl=(r,e)=>{let t;const n=[];for(;(t=r.exec(e))!==null;)n.push(t);return n},jl=Ve("HTMLFormElement"),Ul=r=>r.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,n,s){return n.toUpperCase()+s}),Ri=(({hasOwnProperty:r})=>(e,t)=>r.call(e,t))(Object.prototype),Bl=Ve("RegExp"),Li=(r,e)=>{const t=Object.getOwnPropertyDescriptors(r),n={};er(t,(s,i)=>{let o;(o=e(s,i,r))!==!1&&(n[i]=o||s)}),Object.defineProperties(r,n)},$l=r=>{Li(r,(e,t)=>{if(Pe(r)&&["arguments","caller","callee"].indexOf(t)!==-1)return!1;const n=r[t];if(Pe(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+t+"'")})}})},Wl=(r,e)=>{const t={},n=s=>{s.forEach(i=>{t[i]=!0})};return Mt(r)?n(r):n(String(r).split(e)),t},Vl=()=>{},Hl=(r,e)=>r!=null&&Number.isFinite(r=+r)?r:e,gn="abcdefghijklmnopqrstuvwxyz",Fi="0123456789",Pi={DIGIT:Fi,ALPHA:gn,ALPHA_DIGIT:gn+gn.toUpperCase()+Fi},ql=(r=16,e=Pi.ALPHA_DIGIT)=>{let t="";const{length:n}=e;for(;r--;)t+=e[Math.random()*n|0];return t};function zl(r){return!!(r&&Pe(r.append)&&r[Symbol.toStringTag]==="FormData"&&r[Symbol.iterator])}const Jl=r=>{const e=new Array(10),t=(n,s)=>{if(Ir(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;const i=Mt(n)?[]:{};return er(n,(o,c)=>{const a=t(o,s+1);!Xt(a)&&(i[c]=a)}),e[s]=void 0,i}}return n};return t(r,0)},Zl=Ve("AsyncFunction"),Gl=r=>r&&(Ir(r)||Pe(r))&&Pe(r.then)&&Pe(r.catch),Mi=((r,e)=>r?setImmediate:e?((t,n)=>(mt.addEventListener("message",({source:s,data:i})=>{s===mt&&i===t&&n.length&&n.shift()()},!1),s=>{n.push(s),mt.postMessage(t,"*")}))(`axios@${Math.random()}`,[]):t=>setTimeout(t))(typeof setImmediate=="function",Pe(mt.postMessage)),Yl=typeof queueMicrotask<"u"?queueMicrotask.bind(mt):typeof process<"u"&&process.nextTick||Mi,v={isArray:Mt,isArrayBuffer:Ai,isBuffer:dl,isFormData:vl,isArrayBufferView:pl,isString:gl,isNumber:Ii,isBoolean:ml,isObject:Ir,isPlainObject:Cr,isReadableStream:El,isRequest:Tl,isResponse:Ol,isHeaders:Al,isUndefined:Xt,isDate:yl,isFile:wl,isBlob:bl,isRegExp:Bl,isFunction:Pe,isStream:_l,isURLSearchParams:kl,isTypedArray:Ml,isFileList:Sl,forEach:er,merge:pn,extend:Cl,trim:Il,stripBOM:Nl,inherits:Rl,toFlatObject:Ll,kindOf:Or,kindOfTest:Ve,endsWith:Fl,toArray:Pl,forEachEntry:xl,matchAll:Dl,isHTMLForm:jl,hasOwnProperty:Ri,hasOwnProp:Ri,reduceDescriptors:Li,freezeMethods:$l,toObjectSet:Wl,toCamelCase:Ul,noop:Vl,toFiniteNumber:Hl,findKey:Ci,global:mt,isContextDefined:Ni,ALPHABET:Pi,generateString:ql,isSpecCompliantForm:zl,toJSONObject:Jl,isAsyncFn:Zl,isThenable:Gl,setImmediate:Mi,asap:Yl};function H(r,e,t,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=r,this.name="AxiosError",e&&(this.code=e),t&&(this.config=t),n&&(this.request=n),s&&(this.response=s,this.status=s.status?s.status:null)}v.inherits(H,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:v.toJSONObject(this.config),code:this.code,status:this.status}}});const xi=H.prototype,Di={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(r=>{Di[r]={value:r}}),Object.defineProperties(H,Di),Object.defineProperty(xi,"isAxiosError",{value:!0}),H.from=(r,e,t,n,s,i)=>{const o=Object.create(xi);return v.toFlatObject(r,o,function(a){return a!==Error.prototype},c=>c!=="isAxiosError"),H.call(o,r.message,e,t,n,s),o.cause=r,o.name=r.name,i&&Object.assign(o,i),o};const Kl=null;function mn(r){return v.isPlainObject(r)||v.isArray(r)}function ji(r){return v.endsWith(r,"[]")?r.slice(0,-2):r}function Ui(r,e,t){return r?r.concat(e).map(function(s,i){return s=ji(s),!t&&i?"["+s+"]":s}).join(t?".":""):e}function Ql(r){return v.isArray(r)&&!r.some(mn)}const Xl=v.toFlatObject(v,{},null,function(e){return/^is[A-Z]/.test(e)});function Nr(r,e,t){if(!v.isObject(r))throw new TypeError("target must be an object");e=e||new FormData,t=v.toFlatObject(t,{metaTokens:!0,dots:!1,indexes:!1},!1,function(g,m){return!v.isUndefined(m[g])});const n=t.metaTokens,s=t.visitor||l,i=t.dots,o=t.indexes,a=(t.Blob||typeof Blob<"u"&&Blob)&&v.isSpecCompliantForm(e);if(!v.isFunction(s))throw new TypeError("visitor must be a function");function u(p){if(p===null)return"";if(v.isDate(p))return p.toISOString();if(!a&&v.isBlob(p))throw new H("Blob is not supported. Use a Buffer instead.");return v.isArrayBuffer(p)||v.isTypedArray(p)?a&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function l(p,g,m){let y=p;if(p&&!m&&typeof p=="object"){if(v.endsWith(g,"{}"))g=n?g:g.slice(0,-2),p=JSON.stringify(p);else if(v.isArray(p)&&Ql(p)||(v.isFileList(p)||v.endsWith(g,"[]"))&&(y=v.toArray(p)))return g=ji(g),y.forEach(function(_,b){!(v.isUndefined(_)||_===null)&&e.append(o===!0?Ui([g],b,i):o===null?g:g+"[]",u(_))}),!1}return mn(p)?!0:(e.append(Ui(m,g,i),u(p)),!1)}const h=[],f=Object.assign(Xl,{defaultVisitor:l,convertValue:u,isVisitable:mn});function d(p,g){if(!v.isUndefined(p)){if(h.indexOf(p)!==-1)throw Error("Circular reference detected in "+g.join("."));h.push(p),v.forEach(p,function(y,w){(!(v.isUndefined(y)||y===null)&&s.call(e,y,v.isString(w)?w.trim():w,g,f))===!0&&d(y,g?g.concat(w):[w])}),h.pop()}}if(!v.isObject(r))throw new TypeError("data must be an object");return d(r),e}function Bi(r){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(r).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function yn(r,e){this._pairs=[],r&&Nr(r,this,e)}const $i=yn.prototype;$i.append=function(e,t){this._pairs.push([e,t])},$i.toString=function(e){const t=e?function(n){return e.call(this,n,Bi)}:Bi;return this._pairs.map(function(s){return t(s[0])+"="+t(s[1])},"").join("&")};function eu(r){return encodeURIComponent(r).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Wi(r,e,t){if(!e)return r;const n=t&&t.encode||eu,s=t&&t.serialize;let i;if(s?i=s(e,t):i=v.isURLSearchParams(e)?e.toString():new yn(e,t).toString(n),i){const o=r.indexOf("#");o!==-1&&(r=r.slice(0,o)),r+=(r.indexOf("?")===-1?"?":"&")+i}return r}class Vi{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){v.forEach(this.handlers,function(n){n!==null&&e(n)})}}const Hi={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},tu={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:yn,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},wn=typeof window<"u"&&typeof document<"u",bn=typeof navigator=="object"&&navigator||void 0,ru=wn&&(!bn||["ReactNative","NativeScript","NS"].indexOf(bn.product)<0),nu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",su=wn&&window.location.href||"http://localhost",Oe={...{__proto__:null,hasBrowserEnv:wn,hasStandardBrowserEnv:ru,hasStandardBrowserWebWorkerEnv:nu,navigator:bn,origin:su},...tu};function iu(r,e){return Nr(r,new Oe.classes.URLSearchParams,Object.assign({visitor:function(t,n,s,i){return Oe.isNode&&v.isBuffer(t)?(this.append(n,t.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function ou(r){return v.matchAll(/\w+|\[(\w*)]/g,r).map(e=>e[0]==="[]"?"":e[1]||e[0])}function au(r){const e={},t=Object.keys(r);let n;const s=t.length;let i;for(n=0;n<s;n++)i=t[n],e[i]=r[i];return e}function qi(r){function e(t,n,s,i){let o=t[i++];if(o==="__proto__")return!0;const c=Number.isFinite(+o),a=i>=t.length;return o=!o&&v.isArray(s)?s.length:o,a?(v.hasOwnProp(s,o)?s[o]=[s[o],n]:s[o]=n,!c):((!s[o]||!v.isObject(s[o]))&&(s[o]=[]),e(t,n,s[o],i)&&v.isArray(s[o])&&(s[o]=au(s[o])),!c)}if(v.isFormData(r)&&v.isFunction(r.entries)){const t={};return v.forEachEntry(r,(n,s)=>{e(ou(n),s,t,0)}),t}return null}function cu(r,e,t){if(v.isString(r))try{return(e||JSON.parse)(r),v.trim(r)}catch(n){if(n.name!=="SyntaxError")throw n}return(0,JSON.stringify)(r)}const tr={transitional:Hi,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",s=n.indexOf("application/json")>-1,i=v.isObject(e);if(i&&v.isHTMLForm(e)&&(e=new FormData(e)),v.isFormData(e))return s?JSON.stringify(qi(e)):e;if(v.isArrayBuffer(e)||v.isBuffer(e)||v.isStream(e)||v.isFile(e)||v.isBlob(e)||v.isReadableStream(e))return e;if(v.isArrayBufferView(e))return e.buffer;if(v.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let c;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return iu(e,this.formSerializer).toString();if((c=v.isFileList(e))||n.indexOf("multipart/form-data")>-1){const a=this.env&&this.env.FormData;return Nr(c?{"files[]":e}:e,a&&new a,this.formSerializer)}}return i||s?(t.setContentType("application/json",!1),cu(e)):e}],transformResponse:[function(e){const t=this.transitional||tr.transitional,n=t&&t.forcedJSONParsing,s=this.responseType==="json";if(v.isResponse(e)||v.isReadableStream(e))return e;if(e&&v.isString(e)&&(n&&!this.responseType||s)){const o=!(t&&t.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(c){if(o)throw c.name==="SyntaxError"?H.from(c,H.ERR_BAD_RESPONSE,this,null,this.response):c}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Oe.classes.FormData,Blob:Oe.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};v.forEach(["delete","get","head","post","put","patch"],r=>{tr.headers[r]={}});const lu=v.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),uu=r=>{const e={};let t,n,s;return r&&r.split(`
2
- `).forEach(function(o){s=o.indexOf(":"),t=o.substring(0,s).trim().toLowerCase(),n=o.substring(s+1).trim(),!(!t||e[t]&&lu[t])&&(t==="set-cookie"?e[t]?e[t].push(n):e[t]=[n]:e[t]=e[t]?e[t]+", "+n:n)}),e},zi=Symbol("internals");function rr(r){return r&&String(r).trim().toLowerCase()}function Rr(r){return r===!1||r==null?r:v.isArray(r)?r.map(Rr):String(r)}function hu(r){const e=Object.create(null),t=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=t.exec(r);)e[n[1]]=n[2];return e}const fu=r=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(r.trim());function Sn(r,e,t,n,s){if(v.isFunction(n))return n.call(this,e,t);if(s&&(e=t),!!v.isString(e)){if(v.isString(n))return e.indexOf(n)!==-1;if(v.isRegExp(n))return n.test(e)}}function du(r){return r.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,t,n)=>t.toUpperCase()+n)}function pu(r,e){const t=v.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(r,n+t,{value:function(s,i,o){return this[n].call(this,e,s,i,o)},configurable:!0})})}let Ae=class{constructor(e){e&&this.set(e)}set(e,t,n){const s=this;function i(c,a,u){const l=rr(a);if(!l)throw new Error("header name must be a non-empty string");const h=v.findKey(s,l);(!h||s[h]===void 0||u===!0||u===void 0&&s[h]!==!1)&&(s[h||a]=Rr(c))}const o=(c,a)=>v.forEach(c,(u,l)=>i(u,l,a));if(v.isPlainObject(e)||e instanceof this.constructor)o(e,t);else if(v.isString(e)&&(e=e.trim())&&!fu(e))o(uu(e),t);else if(v.isHeaders(e))for(const[c,a]of e.entries())i(a,c,n);else e!=null&&i(t,e,n);return this}get(e,t){if(e=rr(e),e){const n=v.findKey(this,e);if(n){const s=this[n];if(!t)return s;if(t===!0)return hu(s);if(v.isFunction(t))return t.call(this,s,n);if(v.isRegExp(t))return t.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=rr(e),e){const n=v.findKey(this,e);return!!(n&&this[n]!==void 0&&(!t||Sn(this,this[n],n,t)))}return!1}delete(e,t){const n=this;let s=!1;function i(o){if(o=rr(o),o){const c=v.findKey(n,o);c&&(!t||Sn(n,n[c],c,t))&&(delete n[c],s=!0)}}return v.isArray(e)?e.forEach(i):i(e),s}clear(e){const t=Object.keys(this);let n=t.length,s=!1;for(;n--;){const i=t[n];(!e||Sn(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){const t=this,n={};return v.forEach(this,(s,i)=>{const o=v.findKey(n,i);if(o){t[o]=Rr(s),delete t[i];return}const c=e?du(i):String(i).trim();c!==i&&delete t[i],t[c]=Rr(s),n[c]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return v.forEach(this,(n,s)=>{n!=null&&n!==!1&&(t[s]=e&&v.isArray(n)?n.join(", "):n)}),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,t])=>e+": "+t).join(`
3
- `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach(s=>n.set(s)),n}static accessor(e){const n=(this[zi]=this[zi]={accessors:{}}).accessors,s=this.prototype;function i(o){const c=rr(o);n[c]||(pu(s,o),n[c]=!0)}return v.isArray(e)?e.forEach(i):i(e),this}};Ae.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),v.reduceDescriptors(Ae.prototype,({value:r},e)=>{let t=e[0].toUpperCase()+e.slice(1);return{get:()=>r,set(n){this[t]=n}}}),v.freezeMethods(Ae);function _n(r,e){const t=this||tr,n=e||t,s=Ae.from(n.headers);let i=n.data;return v.forEach(r,function(c){i=c.call(t,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function Ji(r){return!!(r&&r.__CANCEL__)}function xt(r,e,t){H.call(this,r??"canceled",H.ERR_CANCELED,e,t),this.name="CanceledError"}v.inherits(xt,H,{__CANCEL__:!0});function Zi(r,e,t){const n=t.config.validateStatus;!t.status||!n||n(t.status)?r(t):e(new H("Request failed with status code "+t.status,[H.ERR_BAD_REQUEST,H.ERR_BAD_RESPONSE][Math.floor(t.status/100)-4],t.config,t.request,t))}function gu(r){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(r);return e&&e[1]||""}function mu(r,e){r=r||10;const t=new Array(r),n=new Array(r);let s=0,i=0,o;return e=e!==void 0?e:1e3,function(a){const u=Date.now(),l=n[i];o||(o=u),t[s]=a,n[s]=u;let h=i,f=0;for(;h!==s;)f+=t[h++],h=h%r;if(s=(s+1)%r,s===i&&(i=(i+1)%r),u-o<e)return;const d=l&&u-l;return d?Math.round(f*1e3/d):void 0}}function yu(r,e){let t=0,n=1e3/e,s,i;const o=(u,l=Date.now())=>{t=l,s=null,i&&(clearTimeout(i),i=null),r.apply(null,u)};return[(...u)=>{const l=Date.now(),h=l-t;h>=n?o(u,l):(s=u,i||(i=setTimeout(()=>{i=null,o(s)},n-h)))},()=>s&&o(s)]}const Lr=(r,e,t=3)=>{let n=0;const s=mu(50,250);return yu(i=>{const o=i.loaded,c=i.lengthComputable?i.total:void 0,a=o-n,u=s(a),l=o<=c;n=o;const h={loaded:o,total:c,progress:c?o/c:void 0,bytes:a,rate:u||void 0,estimated:u&&c&&l?(c-o)/u:void 0,event:i,lengthComputable:c!=null,[e?"download":"upload"]:!0};r(h)},t)},Gi=(r,e)=>{const t=r!=null;return[n=>e[0]({lengthComputable:t,total:r,loaded:n}),e[1]]},Yi=r=>(...e)=>v.asap(()=>r(...e)),wu=Oe.hasStandardBrowserEnv?function(){const e=Oe.navigator&&/(msie|trident)/i.test(Oe.navigator.userAgent),t=document.createElement("a");let n;function s(i){let o=i;return e&&(t.setAttribute("href",o),o=t.href),t.setAttribute("href",o),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:t.pathname.charAt(0)==="/"?t.pathname:"/"+t.pathname}}return n=s(window.location.href),function(o){const c=v.isString(o)?s(o):o;return c.protocol===n.protocol&&c.host===n.host}}():function(){return function(){return!0}}(),bu=Oe.hasStandardBrowserEnv?{write(r,e,t,n,s,i){const o=[r+"="+encodeURIComponent(e)];v.isNumber(t)&&o.push("expires="+new Date(t).toGMTString()),v.isString(n)&&o.push("path="+n),v.isString(s)&&o.push("domain="+s),i===!0&&o.push("secure"),document.cookie=o.join("; ")},read(r){const e=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(r){this.write(r,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function Su(r){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(r)}function _u(r,e){return e?r.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):r}function Ki(r,e){return r&&!Su(e)?_u(r,e):e}const Qi=r=>r instanceof Ae?{...r}:r;function yt(r,e){e=e||{};const t={};function n(u,l,h){return v.isPlainObject(u)&&v.isPlainObject(l)?v.merge.call({caseless:h},u,l):v.isPlainObject(l)?v.merge({},l):v.isArray(l)?l.slice():l}function s(u,l,h){if(v.isUndefined(l)){if(!v.isUndefined(u))return n(void 0,u,h)}else return n(u,l,h)}function i(u,l){if(!v.isUndefined(l))return n(void 0,l)}function o(u,l){if(v.isUndefined(l)){if(!v.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function c(u,l,h){if(h in e)return n(u,l);if(h in r)return n(void 0,u)}const a={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:c,headers:(u,l)=>s(Qi(u),Qi(l),!0)};return v.forEach(Object.keys(Object.assign({},r,e)),function(l){const h=a[l]||s,f=h(r[l],e[l],l);v.isUndefined(f)&&h!==c||(t[l]=f)}),t}const Xi=r=>{const e=yt({},r);let{data:t,withXSRFToken:n,xsrfHeaderName:s,xsrfCookieName:i,headers:o,auth:c}=e;e.headers=o=Ae.from(o),e.url=Wi(Ki(e.baseURL,e.url),r.params,r.paramsSerializer),c&&o.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):"")));let a;if(v.isFormData(t)){if(Oe.hasStandardBrowserEnv||Oe.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if((a=o.getContentType())!==!1){const[u,...l]=a?a.split(";").map(h=>h.trim()).filter(Boolean):[];o.setContentType([u||"multipart/form-data",...l].join("; "))}}if(Oe.hasStandardBrowserEnv&&(n&&v.isFunction(n)&&(n=n(e)),n||n!==!1&&wu(e.url))){const u=s&&i&&bu.read(i);u&&o.set(s,u)}return e},vu=typeof XMLHttpRequest<"u"&&function(r){return new Promise(function(t,n){const s=Xi(r);let i=s.data;const o=Ae.from(s.headers).normalize();let{responseType:c,onUploadProgress:a,onDownloadProgress:u}=s,l,h,f,d,p;function g(){d&&d(),p&&p(),s.cancelToken&&s.cancelToken.unsubscribe(l),s.signal&&s.signal.removeEventListener("abort",l)}let m=new XMLHttpRequest;m.open(s.method.toUpperCase(),s.url,!0),m.timeout=s.timeout;function y(){if(!m)return;const _=Ae.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders()),k={data:!c||c==="text"||c==="json"?m.responseText:m.response,status:m.status,statusText:m.statusText,headers:_,config:r,request:m};Zi(function(E){t(E),g()},function(E){n(E),g()},k),m=null}"onloadend"in m?m.onloadend=y:m.onreadystatechange=function(){!m||m.readyState!==4||m.status===0&&!(m.responseURL&&m.responseURL.indexOf("file:")===0)||setTimeout(y)},m.onabort=function(){m&&(n(new H("Request aborted",H.ECONNABORTED,r,m)),m=null)},m.onerror=function(){n(new H("Network Error",H.ERR_NETWORK,r,m)),m=null},m.ontimeout=function(){let b=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const k=s.transitional||Hi;s.timeoutErrorMessage&&(b=s.timeoutErrorMessage),n(new H(b,k.clarifyTimeoutError?H.ETIMEDOUT:H.ECONNABORTED,r,m)),m=null},i===void 0&&o.setContentType(null),"setRequestHeader"in m&&v.forEach(o.toJSON(),function(b,k){m.setRequestHeader(k,b)}),v.isUndefined(s.withCredentials)||(m.withCredentials=!!s.withCredentials),c&&c!=="json"&&(m.responseType=s.responseType),u&&([f,p]=Lr(u,!0),m.addEventListener("progress",f)),a&&m.upload&&([h,d]=Lr(a),m.upload.addEventListener("progress",h),m.upload.addEventListener("loadend",d)),(s.cancelToken||s.signal)&&(l=_=>{m&&(n(!_||_.type?new xt(null,r,m):_),m.abort(),m=null)},s.cancelToken&&s.cancelToken.subscribe(l),s.signal&&(s.signal.aborted?l():s.signal.addEventListener("abort",l)));const w=gu(s.url);if(w&&Oe.protocols.indexOf(w)===-1){n(new H("Unsupported protocol "+w+":",H.ERR_BAD_REQUEST,r));return}m.send(i||null)})},ku=(r,e)=>{const{length:t}=r=r?r.filter(Boolean):[];if(e||t){let n=new AbortController,s;const i=function(u){if(!s){s=!0,c();const l=u instanceof Error?u:this.reason;n.abort(l instanceof H?l:new xt(l instanceof Error?l.message:l))}};let o=e&&setTimeout(()=>{o=null,i(new H(`timeout ${e} of ms exceeded`,H.ETIMEDOUT))},e);const c=()=>{r&&(o&&clearTimeout(o),o=null,r.forEach(u=>{u.unsubscribe?u.unsubscribe(i):u.removeEventListener("abort",i)}),r=null)};r.forEach(u=>u.addEventListener("abort",i));const{signal:a}=n;return a.unsubscribe=()=>v.asap(c),a}},Eu=function*(r,e){let t=r.byteLength;if(t<e){yield r;return}let n=0,s;for(;n<t;)s=n+e,yield r.slice(n,s),n=s},Tu=async function*(r,e){for await(const t of Ou(r))yield*Eu(t,e)},Ou=async function*(r){if(r[Symbol.asyncIterator]){yield*r;return}const e=r.getReader();try{for(;;){const{done:t,value:n}=await e.read();if(t)break;yield n}}finally{await e.cancel()}},eo=(r,e,t,n)=>{const s=Tu(r,e);let i=0,o,c=a=>{o||(o=!0,n&&n(a))};return new ReadableStream({async pull(a){try{const{done:u,value:l}=await s.next();if(u){c(),a.close();return}let h=l.byteLength;if(t){let f=i+=h;t(f)}a.enqueue(new Uint8Array(l))}catch(u){throw c(u),u}},cancel(a){return c(a),s.return()}},{highWaterMark:2})},Fr=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",to=Fr&&typeof ReadableStream=="function",Au=Fr&&(typeof TextEncoder=="function"?(r=>e=>r.encode(e))(new TextEncoder):async r=>new Uint8Array(await new Response(r).arrayBuffer())),ro=(r,...e)=>{try{return!!r(...e)}catch{return!1}},Iu=to&&ro(()=>{let r=!1;const e=new Request(Oe.origin,{body:new ReadableStream,method:"POST",get duplex(){return r=!0,"half"}}).headers.has("Content-Type");return r&&!e}),no=64*1024,vn=to&&ro(()=>v.isReadableStream(new Response("").body)),Pr={stream:vn&&(r=>r.body)};Fr&&(r=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!Pr[e]&&(Pr[e]=v.isFunction(r[e])?t=>t[e]():(t,n)=>{throw new H(`Response type '${e}' is not supported`,H.ERR_NOT_SUPPORT,n)})})})(new Response);const Cu=async r=>{if(r==null)return 0;if(v.isBlob(r))return r.size;if(v.isSpecCompliantForm(r))return(await new Request(Oe.origin,{method:"POST",body:r}).arrayBuffer()).byteLength;if(v.isArrayBufferView(r)||v.isArrayBuffer(r))return r.byteLength;if(v.isURLSearchParams(r)&&(r=r+""),v.isString(r))return(await Au(r)).byteLength},Nu=async(r,e)=>{const t=v.toFiniteNumber(r.getContentLength());return t??Cu(e)},kn={http:Kl,xhr:vu,fetch:Fr&&(async r=>{let{url:e,method:t,data:n,signal:s,cancelToken:i,timeout:o,onDownloadProgress:c,onUploadProgress:a,responseType:u,headers:l,withCredentials:h="same-origin",fetchOptions:f}=Xi(r);u=u?(u+"").toLowerCase():"text";let d=ku([s,i&&i.toAbortSignal()],o),p;const g=d&&d.unsubscribe&&(()=>{d.unsubscribe()});let m;try{if(a&&Iu&&t!=="get"&&t!=="head"&&(m=await Nu(l,n))!==0){let k=new Request(e,{method:"POST",body:n,duplex:"half"}),S;if(v.isFormData(n)&&(S=k.headers.get("content-type"))&&l.setContentType(S),k.body){const[E,N]=Gi(m,Lr(Yi(a)));n=eo(k.body,no,E,N)}}v.isString(h)||(h=h?"include":"omit");const y="credentials"in Request.prototype;p=new Request(e,{...f,signal:d,method:t.toUpperCase(),headers:l.normalize().toJSON(),body:n,duplex:"half",credentials:y?h:void 0});let w=await fetch(p);const _=vn&&(u==="stream"||u==="response");if(vn&&(c||_&&g)){const k={};["status","statusText","headers"].forEach(x=>{k[x]=w[x]});const S=v.toFiniteNumber(w.headers.get("content-length")),[E,N]=c&&Gi(S,Lr(Yi(c),!0))||[];w=new Response(eo(w.body,no,E,()=>{N&&N(),g&&g()}),k)}u=u||"text";let b=await Pr[v.findKey(Pr,u)||"text"](w,r);return!_&&g&&g(),await new Promise((k,S)=>{Zi(k,S,{data:b,headers:Ae.from(w.headers),status:w.status,statusText:w.statusText,config:r,request:p})})}catch(y){throw g&&g(),y&&y.name==="TypeError"&&/fetch/i.test(y.message)?Object.assign(new H("Network Error",H.ERR_NETWORK,r,p),{cause:y.cause||y}):H.from(y,y&&y.code,r,p)}})};v.forEach(kn,(r,e)=>{if(r){try{Object.defineProperty(r,"name",{value:e})}catch{}Object.defineProperty(r,"adapterName",{value:e})}});const so=r=>`- ${r}`,Ru=r=>v.isFunction(r)||r===null||r===!1,io={getAdapter:r=>{r=v.isArray(r)?r:[r];const{length:e}=r;let t,n;const s={};for(let i=0;i<e;i++){t=r[i];let o;if(n=t,!Ru(t)&&(n=kn[(o=String(t)).toLowerCase()],n===void 0))throw new H(`Unknown adapter '${o}'`);if(n)break;s[o||"#"+i]=n}if(!n){const i=Object.entries(s).map(([c,a])=>`adapter ${c} `+(a===!1?"is not supported by the environment":"is not available in the build"));let o=e?i.length>1?`since :
4
- `+i.map(so).join(`
5
- `):" "+so(i[0]):"as no adapter specified";throw new H("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return n},adapters:kn};function En(r){if(r.cancelToken&&r.cancelToken.throwIfRequested(),r.signal&&r.signal.aborted)throw new xt(null,r)}function oo(r){return En(r),r.headers=Ae.from(r.headers),r.data=_n.call(r,r.transformRequest),["post","put","patch"].indexOf(r.method)!==-1&&r.headers.setContentType("application/x-www-form-urlencoded",!1),io.getAdapter(r.adapter||tr.adapter)(r).then(function(n){return En(r),n.data=_n.call(r,r.transformResponse,n),n.headers=Ae.from(n.headers),n},function(n){return Ji(n)||(En(r),n&&n.response&&(n.response.data=_n.call(r,r.transformResponse,n.response),n.response.headers=Ae.from(n.response.headers))),Promise.reject(n)})}const ao="1.7.7",Tn={};["object","boolean","number","function","string","symbol"].forEach((r,e)=>{Tn[r]=function(n){return typeof n===r||"a"+(e<1?"n ":" ")+r}});const co={};Tn.transitional=function(e,t,n){function s(i,o){return"[Axios v"+ao+"] Transitional option '"+i+"'"+o+(n?". "+n:"")}return(i,o,c)=>{if(e===!1)throw new H(s(o," has been removed"+(t?" in "+t:"")),H.ERR_DEPRECATED);return t&&!co[o]&&(co[o]=!0,console.warn(s(o," has been deprecated since v"+t+" and will be removed in the near future"))),e?e(i,o,c):!0}};function Lu(r,e,t){if(typeof r!="object")throw new H("options must be an object",H.ERR_BAD_OPTION_VALUE);const n=Object.keys(r);let s=n.length;for(;s-- >0;){const i=n[s],o=e[i];if(o){const c=r[i],a=c===void 0||o(c,i,r);if(a!==!0)throw new H("option "+i+" must be "+a,H.ERR_BAD_OPTION_VALUE);continue}if(t!==!0)throw new H("Unknown option "+i,H.ERR_BAD_OPTION)}}const On={assertOptions:Lu,validators:Tn},it=On.validators;let wt=class{constructor(e){this.defaults=e,this.interceptors={request:new Vi,response:new Vi}}async request(e,t){try{return await this._request(e,t)}catch(n){if(n instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;const i=s.stack?s.stack.replace(/^.+\n/,""):"";try{n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
6
- `+i):n.stack=i}catch{}}throw n}}_request(e,t){typeof e=="string"?(t=t||{},t.url=e):t=e||{},t=yt(this.defaults,t);const{transitional:n,paramsSerializer:s,headers:i}=t;n!==void 0&&On.assertOptions(n,{silentJSONParsing:it.transitional(it.boolean),forcedJSONParsing:it.transitional(it.boolean),clarifyTimeoutError:it.transitional(it.boolean)},!1),s!=null&&(v.isFunction(s)?t.paramsSerializer={serialize:s}:On.assertOptions(s,{encode:it.function,serialize:it.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&v.merge(i.common,i[t.method]);i&&v.forEach(["delete","get","head","post","put","patch","common"],p=>{delete i[p]}),t.headers=Ae.concat(o,i);const c=[];let a=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(t)===!1||(a=a&&g.synchronous,c.unshift(g.fulfilled,g.rejected))});const u=[];this.interceptors.response.forEach(function(g){u.push(g.fulfilled,g.rejected)});let l,h=0,f;if(!a){const p=[oo.bind(this),void 0];for(p.unshift.apply(p,c),p.push.apply(p,u),f=p.length,l=Promise.resolve(t);h<f;)l=l.then(p[h++],p[h++]);return l}f=c.length;let d=t;for(h=0;h<f;){const p=c[h++],g=c[h++];try{d=p(d)}catch(m){g.call(this,m);break}}try{l=oo.call(this,d)}catch(p){return Promise.reject(p)}for(h=0,f=u.length;h<f;)l=l.then(u[h++],u[h++]);return l}getUri(e){e=yt(this.defaults,e);const t=Ki(e.baseURL,e.url);return Wi(t,e.params,e.paramsSerializer)}};v.forEach(["delete","get","head","options"],function(e){wt.prototype[e]=function(t,n){return this.request(yt(n||{},{method:e,url:t,data:(n||{}).data}))}}),v.forEach(["post","put","patch"],function(e){function t(n){return function(i,o,c){return this.request(yt(c||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}wt.prototype[e]=t(),wt.prototype[e+"Form"]=t(!0)});let Fu=class Jo{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let t;this.promise=new Promise(function(i){t=i});const n=this;this.promise.then(s=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i;const o=new Promise(c=>{n.subscribe(c),i=c}).then(s);return o.cancel=function(){n.unsubscribe(i)},o},e(function(i,o,c){n.reason||(n.reason=new xt(i,o,c),t(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);t!==-1&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=n=>{e.abort(n)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new Jo(function(s){e=s}),cancel:e}}};function Pu(r){return function(t){return r.apply(null,t)}}function Mu(r){return v.isObject(r)&&r.isAxiosError===!0}const An={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(An).forEach(([r,e])=>{An[e]=r});function lo(r){const e=new wt(r),t=Oi(wt.prototype.request,e);return v.extend(t,wt.prototype,e,{allOwnKeys:!0}),v.extend(t,e,null,{allOwnKeys:!0}),t.create=function(s){return lo(yt(r,s))},t}const ae=lo(tr);ae.Axios=wt,ae.CanceledError=xt,ae.CancelToken=Fu,ae.isCancel=Ji,ae.VERSION=ao,ae.toFormData=Nr,ae.AxiosError=H,ae.Cancel=ae.CanceledError,ae.all=function(e){return Promise.all(e)},ae.spread=Pu,ae.isAxiosError=Mu,ae.mergeConfig=yt,ae.AxiosHeaders=Ae,ae.formToJSON=r=>qi(v.isHTMLForm(r)?new FormData(r):r),ae.getAdapter=io.getAdapter,ae.HttpStatusCode=An,ae.default=ae;const{Axios:af,AxiosError:uo,CanceledError:cf,isCancel:lf,CancelToken:uf,VERSION:hf,all:ff,Cancel:df,isAxiosError:pf,spread:gf,toFormData:mf,AxiosHeaders:yf,HttpStatusCode:wf,formToJSON:bf,getAdapter:Sf,mergeConfig:_f}=ae,xu=String.prototype.replace,Du=/%20/g,ho={RFC1738:"RFC1738",RFC3986:"RFC3986"},In={RFC1738:function(r){return xu.call(r,Du,"+")},RFC3986:function(r){return String(r)}},ju=ho.RFC1738,fo=ho.RFC3986,Cn=Object.prototype.hasOwnProperty,bt=Array.isArray,qe=function(){const r=[];for(let e=0;e<256;++e)r.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return r}(),Uu=function(e){for(;e.length>1;){const t=e.pop(),n=t.obj[t.prop];if(bt(n)){const s=[];for(let i=0;i<n.length;++i)typeof n[i]<"u"&&s.push(n[i]);t.obj[t.prop]=s}}},Bu=function(e,t){const n=t&&t.plainObjects?Object.create(null):{};for(let s=0;s<e.length;++s)typeof e[s]<"u"&&(n[s]=e[s]);return n},$u=function r(e,t,n){if(!t)return e;if(typeof t!="object"){if(bt(e))e.push(t);else if(e&&typeof e=="object")(n&&(n.plainObjects||n.allowPrototypes)||!Cn.call(Object.prototype,t))&&(e[t]=!0);else return[e,t];return e}if(!e||typeof e!="object")return[e].concat(t);let s=e;return bt(e)&&!bt(t)&&(s=Bu(e,n)),bt(e)&&bt(t)?(t.forEach(function(i,o){if(Cn.call(e,o)){const c=e[o];c&&typeof c=="object"&&i&&typeof i=="object"?e[o]=r(c,i,n):e.push(i)}else e[o]=i}),e):Object.keys(t).reduce(function(i,o){const c=t[o];return Cn.call(i,o)?i[o]=r(i[o],c,n):i[o]=c,i},s)},Wu=function(r,e,t){const n=r.replace(/\+/g," ");if(t==="iso-8859-1")return n.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(n)}catch{return n}},Nn=1024,Vu=function(e,t,n,s,i){if(e.length===0)return e;let o=e;if(typeof e=="symbol"?o=Symbol.prototype.toString.call(e):typeof e!="string"&&(o=String(e)),n==="iso-8859-1")return escape(o).replace(/%u[0-9a-f]{4}/gi,function(a){return"%26%23"+parseInt(a.slice(2),16)+"%3B"});let c="";for(let a=0;a<o.length;a+=Nn){const u=o.length>=Nn?o.slice(a,a+Nn):o,l=[];for(let h=0;h<u.length;++h){let f=u.charCodeAt(h);if(f===45||f===46||f===95||f===126||f>=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||i===ju&&(f===40||f===41)){l[l.length]=u.charAt(h);continue}if(f<128){l[l.length]=qe[f];continue}if(f<2048){l[l.length]=qe[192|f>>6]+qe[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=qe[224|f>>12]+qe[128|f>>6&63]+qe[128|f&63];continue}h+=1,f=65536+((f&1023)<<10|u.charCodeAt(h)&1023),l[l.length]=qe[240|f>>18]+qe[128|f>>12&63]+qe[128|f>>6&63]+qe[128|f&63]}c+=l.join("")}return c},Hu=function(e){const t=[{obj:{o:e},prop:"o"}],n=[];for(let s=0;s<t.length;++s){const i=t[s],o=i.obj[i.prop],c=Object.keys(o);for(let a=0;a<c.length;++a){const u=c[a],l=o[u];typeof l=="object"&&l!==null&&n.indexOf(l)===-1&&(t.push({obj:o,prop:u}),n.push(l))}}return Uu(t),e},qu=function(e){return Object.prototype.toString.call(e)==="[object RegExp]"},zu=function(e){return!e||typeof e!="object"?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},Ju=function(e,t){return[].concat(e,t)},Rn=function(e,t){if(bt(e)){const n=[];for(let s=0;s<e.length;s+=1)n.push(t(e[s]));return n}return t(e)},Zu=Object.prototype.hasOwnProperty,po={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,t){return e+"["+t+"]"},repeat:function(e){return e}},ze=Array.isArray,Gu=Array.prototype.push,go=function(r,e){Gu.apply(r,ze(e)?e:[e])},Yu=Date.prototype.toISOString,mo=fo,fe={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Vu,encodeValuesOnly:!1,format:mo,formatter:In[mo],indices:!1,serializeDate:function(e){return Yu.call(e)},skipNulls:!1,strictNullHandling:!1},Ku=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},Ln={},yo=function(e,t,n,s,i,o,c,a,u,l,h,f,d,p,g,m,y,w){let _=e,b=w,k=0,S=!1;for(;(b=b.get(Ln))!==void 0&&!S;){const J=b.get(e);if(k+=1,typeof J<"u"){if(J===k)throw new RangeError("Cyclic object value");S=!0}typeof b.get(Ln)>"u"&&(k=0)}if(typeof l=="function"?_=l(t,_):_ instanceof Date?_=d(_):n==="comma"&&ze(_)&&(_=Rn(_,function(J){return J instanceof Date?d(J):J})),_===null){if(o)return u&&!m?u(t,fe.encoder,y,"key",p):t;_=""}if(Ku(_)||zu(_)){if(u){const J=m?t:u(t,fe.encoder,y,"key",p);return[g(J)+"="+g(u(_,fe.encoder,y,"value",p))]}return[g(t)+"="+g(String(_))]}const E=[];if(typeof _>"u")return E;let N;if(n==="comma"&&ze(_))m&&u&&(_=Rn(_,u)),N=[{value:_.length>0?_.join(",")||null:void 0}];else if(ze(l))N=l;else{const J=Object.keys(_);N=h?J.sort(h):J}const x=a?t.replace(/\./g,"%2E"):t,M=s&&ze(_)&&_.length===1?x+"[]":x;if(i&&ze(_)&&_.length===0)return M+"[]";for(let J=0;J<N.length;++J){const we=N[J],q=typeof we=="object"&&typeof we.value<"u"?we.value:_[we];if(c&&q===null)continue;const Q=f&&a?we.replace(/\./g,"%2E"):we,B=ze(_)?typeof n=="function"?n(M,Q):M:M+(f?"."+Q:"["+Q+"]");w.set(e,k);const de=new WeakMap;de.set(Ln,w),go(E,yo(q,B,n,s,i,o,c,a,n==="comma"&&m&&ze(_)?null:u,l,h,f,d,p,g,m,y,de))}return E},Qu=function(e){if(!e)return fe;if(typeof e.allowEmptyArrays<"u"&&typeof e.allowEmptyArrays!="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(typeof e.encodeDotInKeys<"u"&&typeof e.encodeDotInKeys!="boolean")throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if(e.encoder!==null&&typeof e.encoder<"u"&&typeof e.encoder!="function")throw new TypeError("Encoder has to be a function.");const t=e.charset||fe.charset;if(typeof e.charset<"u"&&e.charset!=="utf-8"&&e.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");let n=fo;if(typeof e.format<"u"){if(!Zu.call(In,e.format))throw new TypeError("Unknown format option provided.");n=e.format}const s=In[n];let i=fe.filter;(typeof e.filter=="function"||ze(e.filter))&&(i=e.filter);let o;if(e.arrayFormat in po?o=e.arrayFormat:"indices"in e?o=e.indices?"indices":"repeat":o=fe.arrayFormat,"commaRoundTrip"in e&&typeof e.commaRoundTrip!="boolean")throw new TypeError("`commaRoundTrip` must be a boolean, or absent");const c=typeof e.allowDots>"u"?e.encodeDotInKeys===!0?!0:fe.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:fe.addQueryPrefix,allowDots:c,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:fe.allowEmptyArrays,arrayFormat:o,charset:t,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:fe.charsetSentinel,commaRoundTrip:e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?fe.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:fe.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:fe.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:fe.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:fe.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:fe.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:fe.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:fe.strictNullHandling}};function wo(r,e){let t=r;const n=Qu(e);let s,i;typeof n.filter=="function"?(i=n.filter,t=i("",t)):ze(n.filter)&&(i=n.filter,s=i);const o=[];if(typeof t!="object"||t===null)return"";const c=po[n.arrayFormat],a=c==="comma"&&n.commaRoundTrip;s||(s=Object.keys(t)),n.sort&&s.sort(n.sort);const u=new WeakMap;for(let f=0;f<s.length;++f){const d=s[f];n.skipNulls&&t[d]===null||go(o,yo(t[d],d,c,a,n.allowEmptyArrays,n.strictNullHandling,n.skipNulls,n.encodeDotInKeys,n.encode?n.encoder:null,n.filter,n.sort,n.allowDots,n.serializeDate,n.format,n.formatter,n.encodeValuesOnly,n.charset,u))}const l=o.join(n.delimiter);let h=n.addQueryPrefix===!0?"?":"";return n.charsetSentinel&&(n.charset==="iso-8859-1"?h+="utf8=%26%2310003%3B&":h+="utf8=%E2%9C%93&"),l.length>0?h+l:""}const Fn=Object.prototype.hasOwnProperty,Xu=Array.isArray,ce={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Wu,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},eh=function(r){return r.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(parseInt(t,10))})},bo=function(r,e){return r&&typeof r=="string"&&e.comma&&r.indexOf(",")>-1?r.split(","):r},th="utf8=%26%2310003%3B",rh="utf8=%E2%9C%93",nh=function(e,t){const n={__proto__:null},s=t.ignoreQueryPrefix?e.replace(/^\?/,""):e,i=t.parameterLimit===1/0?void 0:t.parameterLimit,o=s.split(t.delimiter,i);let c=-1,a,u=t.charset;if(t.charsetSentinel)for(a=0;a<o.length;++a)o[a].indexOf("utf8=")===0&&(o[a]===rh?u="utf-8":o[a]===th&&(u="iso-8859-1"),c=a,a=o.length);for(a=0;a<o.length;++a){if(a===c)continue;const l=o[a],h=l.indexOf("]="),f=h===-1?l.indexOf("="):h+1;let d,p;f===-1?(d=t.decoder(l,ce.decoder,u,"key"),p=t.strictNullHandling?null:""):(d=t.decoder(l.slice(0,f),ce.decoder,u,"key"),p=Rn(bo(l.slice(f+1),t),function(m){return t.decoder(m,ce.decoder,u,"value")})),p&&t.interpretNumericEntities&&u==="iso-8859-1"&&(p=eh(p)),l.indexOf("[]=")>-1&&(p=Xu(p)?[p]:p);const g=Fn.call(n,d);g&&t.duplicates==="combine"?n[d]=Ju(n[d],p):(!g||t.duplicates==="last")&&(n[d]=p)}return n},sh=function(r,e,t,n){let s=n?e:bo(e,t);for(let i=r.length-1;i>=0;--i){let o;const c=r[i];if(c==="[]"&&t.parseArrays)o=t.allowEmptyArrays&&s===""?[]:[].concat(s);else{o=t.plainObjects?Object.create(null):{};const a=c.charAt(0)==="["&&c.charAt(c.length-1)==="]"?c.slice(1,-1):c,u=t.decodeDotInKeys?a.replace(/%2E/g,"."):a,l=parseInt(u,10);!t.parseArrays&&u===""?o={0:s}:!isNaN(l)&&c!==u&&String(l)===u&&l>=0&&t.parseArrays&&l<=t.arrayLimit?(o=[],o[l]=s):u!=="__proto__"&&(o[u]=s)}s=o}return s},ih=function(e,t,n,s){if(!e)return;const i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,o=/(\[[^[\]]*])/,c=/(\[[^[\]]*])/g;let a=n.depth>0&&o.exec(i);const u=a?i.slice(0,a.index):i,l=[];if(u){if(!n.plainObjects&&Fn.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}let h=0;for(;n.depth>0&&(a=c.exec(i))!==null&&h<n.depth;){if(h+=1,!n.plainObjects&&Fn.call(Object.prototype,a[1].slice(1,-1))&&!n.allowPrototypes)return;l.push(a[1])}return a&&l.push("["+i.slice(a.index)+"]"),sh(l,t,n,s)},oh=function(e){if(!e)return ce;if(typeof e.allowEmptyArrays<"u"&&typeof e.allowEmptyArrays!="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(typeof e.decodeDotInKeys<"u"&&typeof e.decodeDotInKeys!="boolean")throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(e.decoder!==null&&typeof e.decoder<"u"&&typeof e.decoder!="function")throw new TypeError("Decoder has to be a function.");if(typeof e.charset<"u"&&e.charset!=="utf-8"&&e.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");const t=typeof e.charset>"u"?ce.charset:e.charset,n=typeof e.duplicates>"u"?ce.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:ce.allowDots:!!e.allowDots,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:ce.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:ce.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:ce.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:ce.arrayLimit,charset:t,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:ce.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:ce.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:ce.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:ce.decoder,delimiter:typeof e.delimiter=="string"||qu(e.delimiter)?e.delimiter:ce.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:ce.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:ce.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:ce.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:ce.plainObjects,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:ce.strictNullHandling}};function ah(r,e){const t=oh(e);if(r===""||r===null||typeof r>"u")return t.plainObjects?Object.create(null):{};const n=typeof r=="string"?nh(r,t):r;let s=t.plainObjects?Object.create(null):{};const i=Object.keys(n);for(let o=0;o<i.length;++o){const c=i[o],a=ih(c,n[c],t,typeof r=="string");s=$u(s,a,t)}return t.allowSparse===!0?s:Hu(s)}class So{#e;#t;#r;#n;_logger=null;_loggerSystem=null;#s="";#o=!1;#i="";constructor(e,t,n){this.#e=ae.create({baseURL:e,...n}),this.#t=t,this.#r=new al,this.#n=new hl}setLogger(e){this._logger=e,this.#r.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}getSystemLogger(){return this._loggerSystem===null&&(this._loggerSystem=be.build("SystemLogger"),this._loggerSystem.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!0,[I.warn]:!0,[I.error]:!0,[I.trace]:!1})),this._loggerSystem}setRestrictionManagerParams(e){this.#r.params=e}getRestrictionManagerParams(){return this.#r.params}setLogTag(e){this.#s=e}clearLogTag(){this.#s=""}async batch(e,t=!0){const n=Array.isArray(e),s=n?[]:{};let i=0;const o=(c,a)=>{let u=null,l=null;if(Array.isArray(c)?(u=c[0],l=c[1]):c.method&&(u=c.method,l=c.params),u){i++;const h=u+"?"+wo(l);n||Array.isArray(s)?s.push(h):s[a]=h}};if(n)for(const[c,a]of e.entries())o(a,c);else for(const[c,a]of Object.entries(e))o(a,c);return i<1?Promise.resolve(new Pt):this.call("batch",{halt:t?1:0,cmd:s}).then(c=>{const a=c.getData().result,u=n?[]:{},l=(p,g)=>{if(typeof a.result[g]<"u"||typeof a.result_error[g]<"u"){const m=p.split("?"),y=new fn({result:R.isUndefined(a.result[g])?{}:a.result[g],error:a?.result_error[g]||void 0,total:a.result_total[g],next:a.result_next[g]},{method:m[0]||"",params:ah(m[1]||""),start:0},c.getStatus());n||Array.isArray(u)?u.push(y):u[g]=y}};if(Array.isArray(s))for(const[p,g]of s.entries())l(g,p);else for(const[p,g]of Object.entries(s))l(g,p);let h;const f=p=>new Qt({status:0,answerError:{error:p.getErrorMessages().join("; "),errorDescription:`batch ${p.getQuery().method}: ${wo(p.getQuery().params,{encode:!1})}`},cause:p.getErrors().next().value}),d=new Pt;if(n||Array.isArray(u)){h=[];for(const p of u){if(p.getStatus()!==200||!p.isSuccess){const g=f(p);if(!t&&!p.isSuccess){d.addError(g);continue}return Promise.reject(g)}h.push(p.getData().result)}}else{h={};for(const p of Object.keys(u)){const g=u[p];if(g.getStatus()!==200||!g.isSuccess){const m=f(g);if(!t&&!g.isSuccess){d.addError(m);continue}return Promise.reject(m)}h[p]=g.getData().result}}return d.setData(h),Promise.resolve(d)})}async call(e,t,n=0){let s=this.#t.getAuthData();return s===!1&&(s=await this.#t.refreshAuth()),await this.#r.check(),this.#o&&!this.isServerSide()&&R.isStringFilled(this.#i)&&this.getSystemLogger().warn(this.#i),this.#e.post(this.#c(e),this.#a(s,t,n)).then(i=>{const o=i.data;return Promise.resolve({status:i.status,payload:o})},async i=>{let o={error:i?.code||0,errorDescription:i?.message||""};if(i instanceof uo&&i.response&&i.response.data&&!R.isUndefined(i.response.data.error)){const a=i.response.data;o={error:a.error,errorDescription:a.error_description}}const c=new Qt({status:i.response?.status||0,answerError:o,cause:i});return c.status===401&&["expired_token","invalid_token"].includes(c.answerError.error)?(this.getLogger().info(`refreshAuth >> ${c.answerError.error} >>>`),s=await this.#t.refreshAuth(),await this.#r.check(),this.#e.post(this.#c(e),this.#a(s,t,n)).then(async a=>{const u=a.data;return Promise.resolve({status:a.status,payload:u})},async a=>{let u={error:a?.code||0,errorDescription:a?.message||""};if(a instanceof uo&&a.response&&a.response.data){const h=a.response.data;u={error:h.error,errorDescription:h.error_description}}const l=new Qt({status:a.response?.status||0,answerError:u,cause:a});return Promise.reject(l)})):Promise.reject(c)}).then(i=>{const o=new fn(i.payload,{method:e,params:t,start:n},i.status);return Promise.resolve(o)})}#a(e,t,n=0){const s=Object.assign({},t);return this.#s.length>0&&(s.logTag=this.#s),s[this.#n.getQueryStringParameterName()]=this.#n.getRequestId(),s[this.#n.getQueryStringSdkParameterName()]="0.1.7",s.data&&s.data.start&&delete s.data.start,e.refresh_token!=="hook"&&(s.auth=e.access_token),s.start=n,s}#c(e){return`${encodeURIComponent(e)}.json`}setClientSideWarning(e,t){this.#o=e,this.#i=t}isServerSide(){return typeof window>"u"}}class Dt{static batchSize=50;_isInit=!1;_http=null;_logger=null;constructor(){this._isInit=!1}get isInit(){return this._isInit}async init(){this._isInit=!0}destroy(){}setLogger(e){this._logger=e,this.getHttpClient().setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}callMethod(e,t,n){return this.getHttpClient().call(e,t||{},n||0)}async callListMethod(e,t={},n=null,s=null){const i=new Pt;return R.isFunction(n)&&n!==null&&n(0),this.callMethod(e,t,0).then(async o=>{let c=[],a;if(s===null?a=o.getData().result:a=o.getData().result[s],c=[...c,...a],o.isMore()){let u=o;for(;u=await u.getNext(this.getHttpClient()),u!==!1;){let l;if(s===null?l=u.getData().result:l=u.getData().result[s],c=[...c,...l],n){const h=u.getTotal();n(h>0?Math.round(100*c.length/h):100)}}}return i.setData(c),n&&n(100),i})}async*fetchListMethod(e,t={},n="ID",s=null){t.order=t.order||{},t.filter=t.filter||{},t.start=-1;const i=`>${n}`;t.order[n]="ASC",t.filter[i]=0;do{const o=await this.callMethod(e,t,t.start);let c;if(!R.isNull(s)&&s!==null?c=o.getData().result[s]:c=o.getData().result,c.length===0||(yield c,c.length<Dt.batchSize))break;const a=c.at(-1);a&&n in a&&(t.filter[i]=a[n])}while(!0)}async callBatch(e,t=!0){return this.getHttpClient().batch(e,t)}chunkArray(e,t=50){const n=[];for(let s=0;s<e.length;s+=t){const i=e.slice(s,s+t);n.push(i)}return n}async callBatchByChunk(e,t=!0){const n=new Pt,s=[],i=this.chunkArray(e,Dt.batchSize);for(const o of i){const c=await this.callBatch(o,t);s.push(...c.getData())}return n.setData(s)}getHttpClient(){if(!this.isInit||this._http===null)throw new Error("Http not init");return this._http}_getHttpOptions(){return null}_ensureInitialized(){if(!this._isInit)throw new Error("B24 not initialized")}}var Pn=(r=>(r.en="en",r.de="de",r.la="la",r.br="br",r.fr="fr",r.it="it",r.pl="pl",r.ru="ru",r.ua="ua",r.tr="tr",r.sc="sc",r.tc="tc",r.ja="ja",r.vn="vn",r.id="id",r.ms="ms",r.th="th",r.ar="ar",r))(Pn||{});const ch=()=>({scrollWidth:Math.max(document.documentElement.scrollWidth,document.documentElement.offsetWidth),scrollHeight:Math.max(document.documentElement.scrollHeight,document.documentElement.offsetHeight)});let lh=class lt{static isInternalConstructing=!1;static instance=null;_defLocale=null;constructor(){if(!lt.isInternalConstructing)throw new TypeError("FormatterNumber is not constructable");lt.isInternalConstructing=!1}static getInstance(){return lt.instance||(lt.isInternalConstructing=!0,lt.instance=new lt),lt.instance}setDefLocale(e){this._defLocale=e}format(e,t){let n;(typeof t>"u"||!R.isStringFilled(t))&&(t=R.isStringFilled(this._defLocale)?this._defLocale||"en":typeof navigator>"u"?"en":navigator?.language||"en"),Number.isInteger(e)?n=new Intl.NumberFormat(t,{minimumFractionDigits:0,maximumFractionDigits:0}):n=new Intl.NumberFormat(t,{minimumFractionDigits:2,maximumFractionDigits:2});let s=n.format(e);return t.includes("ru")&&(s=s.replace(",",".")),s}};class T{countryCode;length;structure;example;_cachedRegex=null;constructor(e,t,n,s){this.countryCode=e,this.length=t,this.structure=n,this.example=s}isValid(e){return this.length===e.length&&this.countryCode===e.slice(0,2)&&this._regex().test(e.slice(4))&&this._iso7064Mod9710(this._iso13616Prepare(e))==1}toBBAN(e,t){return(this._regex().exec(e.slice(4)||"")||[]).slice(1).join(t)}fromBBAN(e){if(!this.isValidBBAN(e))throw new Error("Invalid BBAN");const t=("0"+(98-this._iso7064Mod9710(this._iso13616Prepare(this.countryCode+"00"+e)))).slice(-2);return this.countryCode+t+e}isValidBBAN(e){return this.length-4===e.length&&this._regex().test(e)}_regex(){return this._cachedRegex===null&&(this._cachedRegex=this._parseStructure(this.structure)),this._cachedRegex}_parseStructure(e){const t=(e.match(/(.{3})/g)||[]).map(n=>{let s;const i=n.slice(0,1),o=Number.parseInt(n.slice(1),10);switch(i){case"A":s="0-9A-Za-z";break;case"B":s="0-9A-Z";break;case"C":s="A-Za-z";break;case"F":s="0-9";break;case"L":s="a-z";break;case"U":s="A-Z";break;case"W":s="0-9a-z";break}return"(["+s+"]{"+o+"})"});return new RegExp("^"+t.join("")+"$")}_iso13616Prepare(e){return e=e.toUpperCase(),e=e.substring(4)+e.substring(0,4),e.split("").map(t=>{const n=t.charCodeAt(0);return n>=65&&n<=90?(n-65+10).toString():t}).join("")}_iso7064Mod9710(e){let t=e,n;for(;t.length>2;)n=t.slice(0,9),t=Number.parseInt(n,10)%97+t.slice(n.length);return Number.parseInt(t,10)%97}}class Ke{static isInternalConstructing=!1;static instance=null;_countries;constructor(){if(!Ke.isInternalConstructing)throw new TypeError("FormatterIban is not constructable");Ke.isInternalConstructing=!1,this._countries=new Map}static getInstance(){return Ke.instance||(Ke.isInternalConstructing=!0,Ke.instance=new Ke),Ke.instance}addSpecification(e){this._countries.set(e.countryCode,e)}isValid(e){if(!this._isString(e))return!1;e=this.electronicFormat(e);const t=e.slice(0,2);if(!this._countries.has(t))throw new Error(`No country with code ${t}`);const n=this._countries.get(t);return!!n&&n.isValid(e)}printFormat(e,t){typeof t>"u"&&(t=" ");const n=/(.{4})(?!$)/g;return this.electronicFormat(e).replace(n,"$1"+t)}electronicFormat(e){const t=/[^a-zA-Z0-9]/g;return e.replace(t,"").toUpperCase()}toBBAN(e,t){typeof t>"u"&&(t=" "),e=this.electronicFormat(e);const n=e.slice(0,2);if(!this._countries.has(n))throw new Error(`No country with code ${n}`);const s=this._countries.get(n);if(!s)throw new Error(`No country with code ${n}`);return s.toBBAN(e,t)}fromBBAN(e,t){if(!this._countries.has(e))throw new Error(`No country with code ${e}`);const n=this._countries.get(e);if(!n)throw new Error(`No country with code ${e}`);return n.fromBBAN(this.electronicFormat(t))}isValidBBAN(e,t){if(!this._isString(t))return!1;if(!this._countries.has(e))throw new Error(`No country with code ${e}`);const n=this._countries.get(e);return!!n&&n.isValidBBAN(this.electronicFormat(t))}_isString(e){return typeof e=="string"||e instanceof String}}const uh=()=>{const r=lh.getInstance(),e=Ke.getInstance();return e.addSpecification(new T("AD",24,"F04F04A12","AD1200012030200359100100")),e.addSpecification(new T("AE",23,"F03F16","AE070331234567890123456")),e.addSpecification(new T("AL",28,"F08A16","AL47212110090000000235698741")),e.addSpecification(new T("AT",20,"F05F11","AT611904300234573201")),e.addSpecification(new T("AZ",28,"U04A20","AZ21NABZ00000000137010001944")),e.addSpecification(new T("BA",20,"F03F03F08F02","BA391290079401028494")),e.addSpecification(new T("BE",16,"F03F07F02","BE68539007547034")),e.addSpecification(new T("BG",22,"U04F04F02A08","BG80BNBG96611020345678")),e.addSpecification(new T("BH",22,"U04A14","BH67BMAG00001299123456")),e.addSpecification(new T("BR",29,"F08F05F10U01A01","BR9700360305000010009795493P1")),e.addSpecification(new T("BY",28,"A04F04A16","BY13NBRB3600900000002Z00AB00")),e.addSpecification(new T("CH",21,"F05A12","CH9300762011623852957")),e.addSpecification(new T("CR",22,"F04F14","CR72012300000171549015")),e.addSpecification(new T("CY",28,"F03F05A16","CY17002001280000001200527600")),e.addSpecification(new T("CZ",24,"F04F06F10","CZ6508000000192000145399")),e.addSpecification(new T("DE",22,"F08F10","DE89370400440532013000")),e.addSpecification(new T("DK",18,"F04F09F01","DK5000400440116243")),e.addSpecification(new T("DO",28,"U04F20","DO28BAGR00000001212453611324")),e.addSpecification(new T("EE",20,"F02F02F11F01","EE382200221020145685")),e.addSpecification(new T("EG",29,"F04F04F17","EG800002000156789012345180002")),e.addSpecification(new T("ES",24,"F04F04F01F01F10","ES9121000418450200051332")),e.addSpecification(new T("FI",18,"F06F07F01","FI2112345600000785")),e.addSpecification(new T("FO",18,"F04F09F01","FO6264600001631634")),e.addSpecification(new T("FR",27,"F05F05A11F02","FR1420041010050500013M02606")),e.addSpecification(new T("GB",22,"U04F06F08","GB29NWBK60161331926819")),e.addSpecification(new T("GE",22,"U02F16","GE29NB0000000101904917")),e.addSpecification(new T("GI",23,"U04A15","GI75NWBK000000007099453")),e.addSpecification(new T("GL",18,"F04F09F01","GL8964710001000206")),e.addSpecification(new T("GR",27,"F03F04A16","GR1601101250000000012300695")),e.addSpecification(new T("GT",28,"A04A20","GT82TRAJ01020000001210029690")),e.addSpecification(new T("HR",21,"F07F10","HR1210010051863000160")),e.addSpecification(new T("HU",28,"F03F04F01F15F01","HU42117730161111101800000000")),e.addSpecification(new T("IE",22,"U04F06F08","IE29AIBK93115212345678")),e.addSpecification(new T("IL",23,"F03F03F13","IL620108000000099999999")),e.addSpecification(new T("IS",26,"F04F02F06F10","IS140159260076545510730339")),e.addSpecification(new T("IT",27,"U01F05F05A12","IT60X0542811101000000123456")),e.addSpecification(new T("IQ",23,"U04F03A12","IQ98NBIQ850123456789012")),e.addSpecification(new T("JO",30,"A04F22","JO15AAAA1234567890123456789012")),e.addSpecification(new T("KW",30,"U04A22","KW81CBKU0000000000001234560101")),e.addSpecification(new T("KZ",20,"F03A13","KZ86125KZT5004100100")),e.addSpecification(new T("LB",28,"F04A20","LB62099900000001001901229114")),e.addSpecification(new T("LC",32,"U04F24","LC07HEMM000100010012001200013015")),e.addSpecification(new T("LI",21,"F05A12","LI21088100002324013AA")),e.addSpecification(new T("LT",20,"F05F11","LT121000011101001000")),e.addSpecification(new T("LU",20,"F03A13","LU280019400644750000")),e.addSpecification(new T("LV",21,"U04A13","LV80BANK0000435195001")),e.addSpecification(new T("MC",27,"F05F05A11F02","MC5811222000010123456789030")),e.addSpecification(new T("MD",24,"U02A18","MD24AG000225100013104168")),e.addSpecification(new T("ME",22,"F03F13F02","ME25505000012345678951")),e.addSpecification(new T("MK",19,"F03A10F02","MK07250120000058984")),e.addSpecification(new T("MR",27,"F05F05F11F02","MR1300020001010000123456753")),e.addSpecification(new T("MT",31,"U04F05A18","MT84MALT011000012345MTLCAST001S")),e.addSpecification(new T("MU",30,"U04F02F02F12F03U03","MU17BOMM0101101030300200000MUR")),e.addSpecification(new T("NL",18,"U04F10","NL91ABNA0417164300")),e.addSpecification(new T("NO",15,"F04F06F01","NO9386011117947")),e.addSpecification(new T("PK",24,"U04A16","PK36SCBL0000001123456702")),e.addSpecification(new T("PL",28,"F08F16","PL61109010140000071219812874")),e.addSpecification(new T("PS",29,"U04A21","PS92PALS000000000400123456702")),e.addSpecification(new T("PT",25,"F04F04F11F02","PT50000201231234567890154")),e.addSpecification(new T("QA",29,"U04A21","QA30AAAA123456789012345678901")),e.addSpecification(new T("RO",24,"U04A16","RO49AAAA1B31007593840000")),e.addSpecification(new T("RS",22,"F03F13F02","RS35260005601001611379")),e.addSpecification(new T("SA",24,"F02A18","SA0380000000608010167519")),e.addSpecification(new T("SC",31,"U04F04F16U03","SC18SSCB11010000000000001497USD")),e.addSpecification(new T("SE",24,"F03F16F01","SE4550000000058398257466")),e.addSpecification(new T("SI",19,"F05F08F02","SI56263300012039086")),e.addSpecification(new T("SK",24,"F04F06F10","SK3112000000198742637541")),e.addSpecification(new T("SM",27,"U01F05F05A12","SM86U0322509800000000270100")),e.addSpecification(new T("ST",25,"F08F11F02","ST68000100010051845310112")),e.addSpecification(new T("SV",28,"U04F20","SV62CENR00000000000000700025")),e.addSpecification(new T("TL",23,"F03F14F02","TL380080012345678910157")),e.addSpecification(new T("TN",24,"F02F03F13F02","TN5910006035183598478831")),e.addSpecification(new T("TR",26,"F05F01A16","TR330006100519786457841326")),e.addSpecification(new T("UA",29,"F25","UA511234567890123456789012345")),e.addSpecification(new T("VA",22,"F18","VA59001123000012345678")),e.addSpecification(new T("VG",24,"U04F16","VG96VPVG0000012345678901")),e.addSpecification(new T("XK",20,"F04F10F02","XK051212012345678906")),e.addSpecification(new T("AO",25,"F21","AO69123456789012345678901")),e.addSpecification(new T("BF",27,"F23","BF2312345678901234567890123")),e.addSpecification(new T("BI",16,"F12","BI41123456789012")),e.addSpecification(new T("BJ",28,"F24","BJ39123456789012345678901234")),e.addSpecification(new T("CI",28,"U02F22","CI70CI1234567890123456789012")),e.addSpecification(new T("CM",27,"F23","CM9012345678901234567890123")),e.addSpecification(new T("CV",25,"F21","CV30123456789012345678901")),e.addSpecification(new T("DZ",24,"F20","DZ8612345678901234567890")),e.addSpecification(new T("IR",26,"F22","IR861234568790123456789012")),e.addSpecification(new T("MG",27,"F23","MG1812345678901234567890123")),e.addSpecification(new T("ML",28,"U01F23","ML15A12345678901234567890123")),e.addSpecification(new T("MZ",25,"F21","MZ25123456789012345678901")),e.addSpecification(new T("SN",28,"U01F23","SN52A12345678901234567890123")),e.addSpecification(new T("GF",27,"F05F05A11F02","GF121234512345123456789AB13")),e.addSpecification(new T("GP",27,"F05F05A11F02","GP791234512345123456789AB13")),e.addSpecification(new T("MQ",27,"F05F05A11F02","MQ221234512345123456789AB13")),e.addSpecification(new T("RE",27,"F05F05A11F02","RE131234512345123456789AB13")),e.addSpecification(new T("PF",27,"F05F05A11F02","PF281234512345123456789AB13")),e.addSpecification(new T("TF",27,"F05F05A11F02","TF891234512345123456789AB13")),e.addSpecification(new T("YT",27,"F05F05A11F02","YT021234512345123456789AB13")),e.addSpecification(new T("NC",27,"F05F05A11F02","NC551234512345123456789AB13")),e.addSpecification(new T("BL",27,"F05F05A11F02","BL391234512345123456789AB13")),e.addSpecification(new T("MF",27,"F05F05A11F02","MF551234512345123456789AB13")),e.addSpecification(new T("PM",27,"F05F05A11F02","PM071234512345123456789AB13")),e.addSpecification(new T("WF",27,"F05F05A11F02","WF621234512345123456789AB13")),{formatterNumber:r,formatterIban:e}};class _o{#e;constructor(e){this.#e=Object.freeze(Object.assign({},e))}getAuthData(){const e=this.#e.b24Url.replaceAll("https://","").replaceAll("http://","").replace(/:(80|443)$/,"");return{access_token:this.#e.secret,refresh_token:"hook",expires_in:0,domain:e,member_id:e}}refreshAuth(){return Promise.resolve(this.getAuthData())}getUniq(e){const t=this.getAuthData();if(t===!1)throw new Error("AuthData not init");return[e,t.member_id].join("_")}getTargetOrigin(){return`${this.#e.b24Url}`}getTargetOriginWithPath(){return`${this.#e.b24Url}/rest/${this.#e.userId}/${this.#e.secret}`}get isAdmin(){return!0}}class hh extends Dt{#e;constructor(e){super(),this.#e=new _o(e),this._http=new So(this.#e.getTargetOriginWithPath(),this.#e,this._getHttpOptions()),this._http.setClientSideWarning(!0,"It is not safe to use hook requests on the client side"),this._isInit=!0}setLogger(e){super.setLogger(e)}get auth(){return this.#e}offClientSideWarning(){this.getHttpClient().setClientSideWarning(!1,"")}getTargetOrigin(){return this._ensureInitialized(),this.#e.getTargetOrigin()}getTargetOriginWithPath(){return this._ensureInitialized(),this.#e.getTargetOriginWithPath()}}var X=(r=>(r.getInitData="getInitData",r.setInstallFinish="setInstallFinish",r.setInstall="setInstall",r.refreshAuth="refreshAuth",r.setAppOption="setAppOption",r.setUserOption="setUserOption",r.resizeWindow="resizeWindow",r.reloadWindow="reloadWindow",r.setTitle="setTitle",r.setScroll="setScroll",r.openApplication="openApplication",r.closeApplication="closeApplication",r.openPath="openPath",r.imCallTo="imCallTo",r.imPhoneTo="imPhoneTo",r.imOpenMessenger="imOpenMessenger",r.imOpenHistory="imOpenHistory",r.selectUser="selectUser",r.selectAccess="selectAccess",r.selectCRM="selectCRM",r.showAppForm="showAppForm",r.getInterface="getInterface",r.placementBindEvent="placementBindEvent",r))(X||{});class vo{#e;#t;_logger=null;runCallbackHandler;constructor(e){this.#e=e,this.#t=new Map,this.runCallbackHandler=this._runCallback.bind(this)}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}subscribe(){window.addEventListener("message",this.runCallbackHandler)}unsubscribe(){window.removeEventListener("message",this.runCallbackHandler)}async send(e,t=null){return new Promise((n,s)=>{let i;const o={resolve:n,reject:s,timeoutId:null},c=this.#r(o);if(e.toString().includes(":"))i={method:e.toString(),params:t??"",callback:c,appSid:this.#e.getAppSid()};else{i=e.toString();const a=[t?JSON.stringify(t):null,c,this.#e.getAppSid()];i+=":"+a.filter(Boolean).join(":")}this.getLogger().log(`send to ${this.#e.getTargetOrigin()}`,{cmd:i}),parent.postMessage(i,this.#e.getTargetOrigin()),t?.isSafely&&(this.#t.get(c).timeoutId=window.setTimeout(()=>{this.#t.has(c)&&(this.getLogger().warn(`Action ${e.toString()} stop by timeout`),this.#t.delete(c),n({isSafely:!0}))},Number.parseInt(String(t?.safelyTime||900))))})}_runCallback(e){if(e.origin===this.#e.getTargetOrigin()&&e.data){this.getLogger().log(`get from ${e.origin}`,{data:e.data});const t=e.data.split(":"),n={id:t[0],args:t.slice(1).join(":")};if(n.args&&(n.args=JSON.parse(n.args)),this.#t.has(n.id)){const s=this.#t.get(n.id);s.timeoutId&&clearTimeout(s.timeoutId),this.#t.delete(n.id),s.resolve(n.args)}}}#r(e){const t=W.getUniqId();return this.#t.set(t,e),t}}class ko{#e="";#t=!0;#r=null;#n=null;#s=null;constructor(e){e.DOMAIN&&(this.#e=e.DOMAIN,this.#e=this.#e.replace(/:(80|443)$/,"")),this.#t=e.PROTOCOL===!0,e.LANG&&(this.#s=e.LANG),e.APP_SID&&(this.#r=e.APP_SID)}initData(e){return this.#e||(this.#e=e.DOMAIN),this.#n||(this.#n=e.PATH),this.#s||(this.#s=e.LANG),this.#t=Number.parseInt(e.PROTOCOL)===1,this.#e=this.#e.replace(/:(80|443)$/,""),this}getAppSid(){if(this.#r===null)throw new Error("Not init appSid");return this.#r}getTargetOrigin(){return`${this.#t?"https":"http"}://${this.#e}`}getTargetOriginWithPath(){return this.getTargetOrigin()+(this.#n??"")}getLang(){return this.#s||Pn.en}}class Eo{#e=null;#t=null;#r=0;#n=null;#s=!1;#o;#i;constructor(e,t){this.#o=e,this.#i=t}initData(e){return e.AUTH_ID&&(this.#e=e.AUTH_ID,this.#t=e.REFRESH_ID,this.#r=Date.now()+Number.parseInt(e.AUTH_EXPIRES)*1e3,this.#s=e.IS_ADMIN,this.#n=e.MEMBER_ID||""),this}getAuthData(){return this.#r>Date.now()?{access_token:this.#e,refresh_token:this.#t,expires_in:this.#r,domain:this.#o.getTargetOrigin(),member_id:this.#n}:!1}async refreshAuth(){return this.#i.send(X.refreshAuth,{}).then(e=>(this.#e=e.AUTH_ID,this.#t=e.REFRESH_ID,this.#r=Date.now()+Number.parseInt(e.AUTH_EXPIRES)*1e3,Promise.resolve(this.getAuthData())))}getUniq(e){return[e,this.#n||""].join("_")}get isAdmin(){return this.#s}}class To{#e;constructor(e){this.#e=e}async closeApplication(){return this.#e.send(X.closeApplication,{isSafely:!1})}async fitWindow(){const e="100%",t=this.getScrollSize().scrollHeight;return this.#e.send(X.resizeWindow,{width:e,height:t,isSafely:!0})}async resizeWindow(e,t){return e>0&&t>0?this.#e.send(X.resizeWindow,{width:e,height:t,isSafely:!0}):Promise.reject(new Error(`Wrong width:number = ${e} or height:number = ${t}`))}async resizeWindowAuto(e=null,t=0,n=0){const s=document.body;let i=Math.max(s.scrollWidth,s.offsetWidth);n>0&&(i=Math.max(n,i));let o=Math.max(s.scrollHeight,s.offsetHeight);return e&&(o=Math.max(e.scrollHeight,e.offsetHeight)),t>0&&(o=Math.max(t,o)),this.resizeWindow(i,o)}getScrollSize(){return ch()}async scrollParentWindow(e){return Number.isInteger(e)?(e<0&&(e=0),this.#e.send(X.setScroll,{scroll:e,isSafely:!0})):Promise.reject(new Error("Wrong scroll number"))}async reloadWindow(){return this.#e.send(X.reloadWindow,{isSafely:!0})}async setTitle(e){return this.#e.send(X.setTitle,{title:e.toString(),isSafely:!0})}async imCallTo(e,t=!0){return this.#e.send(X.imCallTo,{userId:e,video:t,isSafely:!0})}async imPhoneTo(e){return this.#e.send(X.imPhoneTo,{phone:e,isSafely:!0})}async imOpenMessenger(e){return this.#e.send(X.imOpenMessenger,{dialogId:e,isSafely:!0})}async imOpenHistory(e){return this.#e.send(X.imOpenHistory,{dialogId:e,isSafely:!0})}}let Oo=class{#e;#t=null;#r=null;constructor(e){this.#e=e}initData(e){return e.APP_OPTIONS&&(this.#t=e.APP_OPTIONS),e.USER_OPTIONS&&(this.#r=e.USER_OPTIONS),this}appGet(e){if(this.#t&&this.#t[e])return this.#t[e];throw new Error(`app.option.${e} not set`)}async appSet(e,t){return this.#t||(this.#t=[]),this.#t[e]=t,this.#n(X.setAppOption,e,this.#t[e])}userGet(e){if(this.#r&&this.#r[e])return this.#r[e];throw new Error(`user.option.${e} not set`)}async userSet(e,t){return this.#t||(this.#t=[]),this.#t[e]||(this.#t[e]=null),this.#r[e]=t,this.#n(X.setUserOption,e,this.#r[e])}async#n(e,t,n){return this.#e.send(e,{name:t,value:n,isSafely:!0}).then(()=>Promise.resolve())}};class Ao{#e;constructor(e){this.#e=e}async selectUser(){return this.#e.send(X.selectUser,{mult:!1})}async selectUsers(){return this.#e.send(X.selectUser,{mult:!0})}async selectAccess(e=[]){return console.warn("@deprecated selectAccess"),this.#e.send(X.selectAccess,{value:e})}async selectCRM(e){return console.warn("@deprecated selectCRM"),this.#e.send(X.selectCRM,{entityType:e?.entityType,multiple:e?.multiple,value:e?.value})}}class Io{#e;#t;constructor(e,t){this.#e=e,this.#t=t}getUrl(e="/"){return new URL(e,this.#e.getTargetOrigin())}getTargetOrigin(){return this.#e.getTargetOrigin()}async openSliderAppPage(e={}){return this.#t.send(X.openApplication,e)}async closeSliderAppPage(){return this.#t.send(X.closeApplication,{isSafely:!1})}#r(e=1640){return e>0?e>1200&&e<=1640?"/crm/type/0/details/0/../../../../..":e>950&&e<=1200?"/company/personal/user/0/groups/create/../../../../../..":e>900&&e<=950?"/crm/company/requisite/0/../../../..":e<=900?"/workgroups/group/0/card/../../../..":"/crm/deal/../..":"/crm/deal/../.."}async openPath(e,t=1640){const n=new URL(e);return n.searchParams.set("IFRAME","Y"),n.searchParams.set("IFRAME_TYPE","SIDE_SLIDER"),this.#t.send(X.openPath,{path:[this.#r(t),n.pathname,n.search].join("")}).then(s=>s?.result==="error"?s?.errorCode==="METHOD_NOT_SUPPORTED_ON_DEVICE"?new Promise((i,o)=>{const c=window.open(e,"_blank");if(!c){o(new Error("Error open window"));return}let a=0;const u=1e3*60*5,l=window.setInterval(()=>{a=a+1,c.closed?(clearInterval(l),i({isOpenAtNewWindow:!0,isClose:!0})):a>u&&(clearInterval(l),i({isOpenAtNewWindow:!0,isClose:!1}))},1e3)}):Promise.reject(new Error(s?.errorCode)):s?.result==="close"?Promise.resolve({isOpenAtNewWindow:!1,isClose:!0}):Promise.resolve({isOpenAtNewWindow:!1,isClose:!1}))}async showAppForm(e){return console.warn("@deprecated showAppForm"),this.#t.send(X.showAppForm,{params:e,isSafely:!0})}}class Co{#e;#t="";#r={};constructor(e){this.#e=e}initData(e){this.#t=e.PLACEMENT||"DEFAULT";const t=e.PLACEMENT_OPTIONS;return this.#r=Object.freeze(t),this}get title(){return this.#t}get isDefault(){return this.title==="DEFAULT"}get options(){return this.#r}get isSliderMode(){return this.options?.IFRAME==="Y"}async getInterface(){return this.#e.send(X.getInterface,{isSafely:!0})}async bindEvent(e){return this.#e.send(X.getInterface,{event:e,isSafely:!0})}async call(e,t={}){return this.#e.send(e,{...t,isSafely:!0})}}class No extends Dt{#e=!1;#t=!1;#r;#n;#s;#o;#i;#a;#c;#l;constructor(e){super(),this.#r=new ko(e),this.#n=new vo(this.#r),this.#n.subscribe(),this.#s=new Eo(this.#r,this.#n),this.#o=new To(this.#n),this.#i=new Oo(this.#n),this.#a=new Ao(this.#n),this.#c=new Io(this.#r,this.#n),this.#l=new Co(this.#n),this._isInit=!1}setLogger(e){super.setLogger(e),this.#n.setLogger(this.getLogger())}get isFirstRun(){return this._ensureInitialized(),this.#t}get isInstallMode(){return this._ensureInitialized(),this.#e}get parent(){return this._ensureInitialized(),this.#o}get auth(){return this._ensureInitialized(),this.#s}get slider(){return this._ensureInitialized(),this.#c}get placement(){return this._ensureInitialized(),this.#l}get options(){return this._ensureInitialized(),this.#i}get dialog(){return this._ensureInitialized(),this.#a}async init(){return this.#n.send(X.getInitData,{}).then(e=>(this.getLogger().log("init data:",e),this.#r.initData(e),this.#s.initData(e),this.#l.initData(e),this.#i.initData(e),this.#e=e.INSTALL,this.#t=e.FIRST_RUN,this._http=new So(this.#r.getTargetOriginWithPath(),this.#s,this._getHttpOptions()),this._isInit=!0,this.#t?this.#n.send(X.setInstall,{install:!0}):Promise.resolve()))}destroy(){this.#n.unsubscribe(),super.destroy()}async installFinish(){return this.isInstallMode?this.#n.send(X.setInstallFinish,{}):Promise.reject(new Error("Application was previously installed. You cannot call installFinish"))}getTargetOrigin(){return this._ensureInitialized(),this.#r.getTargetOrigin()}getTargetOriginWithPath(){return this._ensureInitialized(),this.#r.getTargetOriginWithPath()}getAppSid(){return this._ensureInitialized(),this.#r.getAppSid()}getLang(){return this._ensureInitialized(),this.#r.getLang()}}class Mn extends Error{constructor(e,...t){super(...t),this.name="UnhandledMatchError",this.message=`Unhandled match value of type ${e}`,this.stack=new Error("for stack").stack}}class jt{_b24;_logger=null;_data=null;constructor(e){this._b24=e}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}async initData(e){return this.getLogger().log(e),Promise.reject(new Error("Rewrite this function"))}}class fh extends jt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("ProfileManager.data not initialized");return this._data}}class dh extends jt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("AppManager.data not initialized");return this._data}get statusCode(){return Ti[this.data.status]||"Unknown status"}}class ph extends jt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("PaymentManager.data not initialized");return this._data}}class gh extends jt{_data=null;async initData(e){this._data=e,this.makeRestrictionManagerParams()}get data(){if(this._data===null)throw new Error("LicenseManager.data not initialized");return this._data}makeRestrictionManagerParams(){this.data?.license&&this.data.license.includes("ent")&&(this.getLogger().log(`LICENSE ${this.data.license} => up restriction manager params`,ln),this._b24.getHttpClient().setRestrictionManagerParams(ln))}}class mh extends jt{async initData(e){this._data={currencyBase:"?",currencyList:new Map},this.setBaseCurrency(e.currencyBase),this.setCurrencyList(e.currencyList);try{await this.loadData()}catch(t){throw t instanceof Error?t:(console.error(t),new Error("Failed to load data"))}}async loadData(){const e=this.currencyList.map(t=>({method:"crm.currency.get",params:{id:t}}));if(e.length===0)return Promise.resolve();try{(await this._b24.callBatchByChunk(e,!0)).getData().forEach(t=>{if(typeof t.LANG>"u")return;const n=t.CURRENCY,s=this.data.currencyList.get(n);if(!(typeof s>"u"))for(const[i,o]of Object.entries(t.LANG))switch(s.lang[i]={decimals:Number.parseInt(o.DECIMALS),decPoint:o.DEC_POINT,formatString:o.FORMAT_STRING,fullName:o.FULL_NAME,isHideZero:o.HIDE_ZERO==="Y",thousandsSep:o.THOUSANDS_SEP,thousandsVariant:o.THOUSANDS_VARIANT},s.lang[i].thousandsVariant){case"N":s.lang[i].thousandsSep="";break;case"D":s.lang[i].thousandsSep=".";break;case"C":s.lang[i].thousandsSep=",";break;case"S":s.lang[i].thousandsSep=" ";break;case"B":s.lang[i].thousandsSep="&nbsp;";break;default:R.isStringFilled(s.lang[i].thousandsSep)||(s.lang[i].thousandsSep=" ");break}})}catch(t){console.error(t)}}get data(){if(this._data===null)throw new Error("CurrencyManager.data not initialized");return this._data}setBaseCurrency(e){this._data.currencyBase=e}get baseCurrency(){return this.data.currencyBase}setCurrencyList(e=[]){this.data.currencyList.clear();for(const t of e)this.data.currencyList.set(t.CURRENCY,{amount:Number.parseFloat(t.CURRENCY),amountCnt:Number.parseInt(t.AMOUNT_CNT),isBase:t.BASE==="Y",currencyCode:t.CURRENCY,dateUpdate:W.toDateTime(t.DATE_UPDATE),decimals:Number.parseInt(t.DECIMALS),decPoint:t.DEC_POINT,formatString:t.FORMAT_STRING,fullName:t.FULL_NAME,lid:t.LID,sort:Number.parseInt(t.SORT),thousandsSep:t?.THOUSANDS_SEP||null,lang:{}})}getCurrencyFullName(e,t){const n=this.data.currencyList.get(e);if(typeof n>"u")throw new Mn(e);let s=n.fullName;if(!(typeof t>"u")){const i=n.lang[t];R.isUndefined(i)||(s=i.fullName)}return s}getCurrencyLiteral(e,t){const n=this.data.currencyList.get(e);if(typeof n>"u")throw new Mn(e);let s=n.formatString;if(!(typeof t>"u")){const i=n.lang[t];R.isUndefined(i)||(s=i.formatString)}return s.replaceAll("&#","&%").replaceAll("#","").replaceAll("&%","&#").trim()||""}get currencyList(){return[...this.data.currencyList.keys()]}format(e,t,n){const s=this.data.currencyList.get(t);if(typeof s>"u")throw new Mn(t);const i={formatString:s.formatString,decimals:s.decimals,decPoint:s.decPoint,thousandsSep:s.thousandsSep};R.isStringFilled(i.thousandsSep)||(i.thousandsSep="");const o=s.lang[n];return R.isUndefined(o)||(i.formatString=o.formatString,i.decimals=o.decimals,i.decPoint=o.decPoint,i.thousandsSep=o.thousandsSep),i.formatString.replaceAll("&#","&%").replace("#",W.numberFormat(e,i.decimals,i.decPoint,i.thousandsSep)).replaceAll("&%","&#")||""}}class xn extends jt{_data;_type;static getSupportTypes(){return[Ye.NotSet,Ye.JsonArray,Ye.JsonObject,Ye.FloatVal,Ye.IntegerVal,Ye.BoolYN,Ye.StringVal]}static prepareArrayList(e){return R.isArray(e)?e:R.isObject(e)?Object.values(e):[]}constructor(e,t){super(e),this._type=t,this._data=new Map}get data(){return this._data}reset(){this.data.clear()}async initData(e){if(this.reset(),R.isObject(e))for(const[t,n]of Object.entries(e))this.data.set(t,n)}getJsonArray(e,t=[]){if(!this.data.has(e))return t;let n=this.data.get(e);try{n=JSON.parse(n),!R.isArray(n)&&!R.isObject(n)&&(n=t)}catch(s){this.getLogger().error(s),n=t}return xn.prepareArrayList(n)}getJsonObject(e,t={}){if(!this.data.has(e))return t;let n=this.data.get(e);try{n=JSON.parse(n)}catch(s){this.getLogger().error(s),n=t}return R.isObject(n)||(n=t),n}getFloat(e,t=0){return this.data.has(e)?W.toNumber(this.data.get(e)):t}getInteger(e,t=0){return this.data.has(e)?W.toInteger(this.data.get(e)):t}getBoolYN(e,t=!0){return this.data.has(e)?W.toBoolean(this.data.get(e)):t}getBoolNY(e,t=!1){return this.data.has(e)?W.toBoolean(this.data.get(e)):t}getString(e,t=""){return this.data.has(e)?this.data.get(e).toString():t}getDate(e,t=null){if(!this.data.has(e))return t;try{const n=W.toDateTime(this.data.get(e).toString());return n.isValid?n:t}catch{return t}}encode(e){return JSON.stringify(e)}decode(e,t){try{return e.length>0?JSON.parse(e):t}catch(n){this.getLogger().warn(n,e)}return t}getMethodSave(){switch(this._type){case"app":return"app.option.set";case"user":return"user.option.set"}}async save(e,t){const n=[];return n.push({method:this.getMethodSave(),params:{options:e}}),R.isObject(t)&&n.push({method:"pull.application.event.add",params:{COMMAND:t?.command,PARAMS:t?.params,MODULE_ID:t?.moduleId}}),this._b24.callBatch(n,!0)}}class Ro{_logger=null;userId;siteId;constructor(e={}){this.userId=e.userId?W.toInteger(e.userId):0,this.siteId=e.siteId??"none"}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}set(e,t){if(typeof window.localStorage>"u"){this.getLogger().error(new Error("undefined window.localStorage"));return}typeof t!="string"&&t&&(t=JSON.stringify(t)),window.localStorage.setItem(this._getKey(e),t)}get(e,t){if(typeof window.localStorage>"u")return t||null;const n=window.localStorage.getItem(this._getKey(e));return n===null?t||null:JSON.parse(n)}remove(e){if(typeof window.localStorage>"u"){this.getLogger().error(new Error("undefined window.localStorage"));return}return window.localStorage.removeItem(this._getKey(e))}_getKey(e){return`@bitrix24/b24jssdk-pull-${this.userId}-${this.siteId}-${e}`}compareKey(e,t){return e===this._getKey(t)}}class yh extends Error{constructor(e){super(e),this.name="ErrorNotConnected"}}class wh extends Error{constructor(e){super(e),this.name="ErrorTimeout"}}const Mr="2.0";class bh{_logger=null;_connector;_idCounter=0;_handlers={};_rpcResponseAwaiters=new Map;constructor(e){if(this._connector=e.connector,R.isPlainObject(e.handlers))for(const t in e.handlers)this.handle(t,e.handlers[t])}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}handle(e,t){this._handlers[e]=t}async executeOutgoingRpcCommand(e,t,n=5){return new Promise((s,i)=>{const o=this.createRequest(e,t);this._connector.send(JSON.stringify(o))||i(new yh("websocket is not connected"));const c=setTimeout(()=>{this._rpcResponseAwaiters.delete(o.id),i(new wh("no response"))},n*1e3);this._rpcResponseAwaiters.set(o.id,{resolve:s,reject:i,timeout:c})})}executeOutgoingRpcBatch(e){const t=[],n=[];return e.forEach(({method:s,params:i,id:o})=>{const c=this.createRequest(s,i,o);t.push(c),n.push(new Promise((a,u)=>this._rpcResponseAwaiters.set(c.id,{resolve:a,reject:u})))}),this._connector.send(JSON.stringify(t)),n}processRpcResponse(e){if("id"in e&&this._rpcResponseAwaiters.has(Number(e.id))){const t=this._rpcResponseAwaiters.get(Number(e.id));t&&("result"in e?t.resolve(e.result):"error"in e?t.reject(e?.error||"error"):t.reject("wrong response structure"),clearTimeout(t.timeout),this._rpcResponseAwaiters.delete(Number(e.id)));return}this.getLogger().error(new Error(`${W.getDateForLog()}: Pull: Received rpc response with unknown id`),e)}parseJsonRpcMessage(e){let t;try{t=JSON.parse(e)}catch(n){this.getLogger().error(new Error(`${W.getDateForLog()}: Pull: Could not decode json rpc message`),n);return}if(R.isArray(t))return this.executeIncomingRpcBatch(t);if(R.isJsonRpcRequest(t))return this.executeIncomingRpcCommand(t);if(R.isJsonRpcResponse(t))return this.processRpcResponse(t);this.getLogger().error(new Error(`${W.getDateForLog()}: Pull: unknown rpc packet`),t)}executeIncomingRpcCommand({method:e,params:t}){return e in this._handlers?this._handlers[e].call(this,t||{}):{jsonrpc:Mr,error:hn.MethodNotFound}}executeIncomingRpcBatch(e){const t=[];for(const n of e)if("jsonrpc"in n)if("method"in n){const s=this.executeIncomingRpcCommand(n);s&&(s.jsonrpc=Mr,s.id=n.id,t.push(s))}else this.processRpcResponse(n);else this.getLogger().error(new Error(`${W.getDateForLog()}: Pull: unknown rpc command in batch`),n),t.push({jsonrpc:Mr,error:hn.InvalidRequest});return t}nextId(){return++this._idCounter}createPublishRequest(e){return e.map(t=>this.createRequest("publish",t))}createRequest(e,t,n){return n||(n=this.nextId()),{jsonrpc:Mr,method:e,params:t,id:n}}}class Sh{_logger=null;_storage;_ttl=24*60*60;_callbacks;constructor(e={}){e=e||{},this._storage=e.storage||new Ro,this._callbacks={onWebSocketBlockChanged:R.isFunction(e.onWebSocketBlockChanged)?e.onWebSocketBlockChanged:()=>{}},this._storage&&window.addEventListener("storage",this.onLocalStorageSet.bind(this))}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}onLocalStorageSet(e){this._storage.compareKey(e.key||"",Re.WebsocketBlocked)&&e.newValue!==e.oldValue&&this._callbacks.onWebSocketBlockChanged({isWebSocketBlocked:this.isWebSocketBlocked()})}isWebSocketBlocked(){return this._storage?this._storage.get(Re.WebsocketBlocked,0)>Date.now():!1}setWebSocketBlocked(e){if(!this._storage)return!1;try{this._storage.set(Re.WebsocketBlocked,e?Date.now()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${W.getDateForLog()}: Pull: Could not save WS_blocked flag in local storage. Error: `),t),!1}return!0}isLongPollingBlocked(){return this._storage?this._storage.get(Re.LongPollingBlocked,0)>Date.now():!1}setLongPollingBlocked(e){if(!this._storage)return!1;try{this._storage.set(Re.LongPollingBlocked,e?Date.now()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${W.getDateForLog()}: Pull: Could not save LP_blocked flag in local storage. Error: `),t),!1}return!0}isLoggingEnabled(){return this._storage?this._storage.get(Re.LoggingEnabled,0)>this.getTimestamp():!1}setLoggingEnabled(e){if(!this._storage)return!1;try{this._storage.set(Re.LoggingEnabled,e?this.getTimestamp()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${W.getDateForLog()}: LocalStorage error: `),t),!1}return!0}getTimestamp(){return Date.now()}}class _h{_logger=null;_publicIds;_restClient;_getPublicListMethod;constructor(e){this._publicIds=new Map,this._restClient=e.b24,this._getPublicListMethod=e.getPublicListMethod}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}async getPublicIds(e){const t=new Date,n={},s=[];for(const i of e){const o=this._publicIds.get(i);o&&o.end>t?n[o.userId]=o:s.push(i)}return s.length===0?Promise.resolve(n):new Promise(i=>{this._restClient.callMethod(this._getPublicListMethod,{users:s}).then(o=>{const c=o.getData().result;this.setPublicIds(Object.values(c));for(const a of s){const u=this._publicIds.get(a);u&&(n[u.userId]=u)}i(n)}).catch(o=>(this.getLogger().error(o),i({})))})}setPublicIds(e){e.forEach(t=>{const n=Number(t.user_id);this._publicIds.set(n,{userId:n,publicId:t.public_id,signature:t.signature,start:new Date(t.start),end:new Date(t.end)})})}}var nr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function vh(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var Dn={exports:{}};/*!
1
+ (function(x,I){typeof exports=="object"&&typeof module<"u"?I(exports):typeof define=="function"&&define.amd?define(["exports"],I):(x=typeof globalThis<"u"?globalThis:x||self,I(x.B24Js=x.B24Js||{}))})(this,function(x){"use strict";var I=(r=>(r.desktop="desktop",r.log="log",r.info="info",r.warn="warn",r.error="error",r.trace="trace",r))(I||{});const xe=new Map;xe.set("title",["%c#title#","color: #959ca4; font-style: italic; padding: 0 6px; border-top: 1px solid #ccc; border-left: 1px solid #ccc; border-bottom: 1px solid #ccc"]),xe.set("desktop",["%cDESKTOP","color: white; font-style: italic; background-color: #29619b; padding: 0 6px; border: 1px solid #29619b"]),xe.set("log",["%cLOG","color: #2a323b; font-style: italic; background-color: #ccc; padding: 0 6px; border: 1px solid #ccc"]),xe.set("info",["%cINFO","color: #fff; font-style: italic; background-color: #6b7f96; padding: 0 6px; border: 1px solid #6b7f96"]),xe.set("warn",["%cWARNING","color: #f0a74f; font-style: italic; padding: 0 6px; border: 1px solid #f0a74f"]),xe.set("error",["%cERROR","color: white; font-style: italic; background-color: #8a3232; padding: 0 6px; border: 1px solid #8a3232"]),xe.set("trace",["%cTRACE","color: #2a323b; font-style: italic; background-color: #ccc; padding: 0 6px; border: 1px solid #ccc"]);class ye{#e;#t={desktop:!0,log:!1,info:!1,warn:!1,error:!0,trace:!0};static build(e,t=!1){const n=new ye(e);return t&&(n.enable("log"),n.enable("info"),n.enable("warn")),n}constructor(e){this.#e=e}#r(e){const t=[],n=[];if(xe.has("title")){const s=xe.get("title");s[0]&&(t.push(s[0].replace("#title#",this.#e)),n.push(s[1]||""))}if(xe.has(e)){const s=xe.get(e);s[0]&&(t.push(s[0]),n.push(s[1]||""))}return[t.join(""),...n]}setConfig(e){for(const t in e)this.#t[t]=e[t]}enable(e){return typeof this.#t[e]>"u"?!1:(this.#t[e]=!0,!0)}disable(e){return typeof this.#t[e]>"u"?!1:(this.#t[e]=!1,!0)}isEnabled(e){return this.#t[e]}desktop(...e){this.isEnabled("desktop")&&console.log(...this.#r("desktop"),...e)}log(...e){this.isEnabled("log")&&console.log(...this.#r("log"),...e)}info(...e){this.isEnabled("info")&&console.info(...this.#r("info"),...e)}warn(...e){this.isEnabled("warn")&&console.warn(...this.#r("warn"),...e)}error(...e){this.isEnabled("error")&&console.error(...this.#r("error"),...e)}trace(...e){this.isEnabled("trace")&&console.trace(...this.#r("trace"),...e)}}var Vn=(r=>(r.undefined="undefined",r.any="any",r.integer="integer",r.boolean="boolean",r.double="double",r.date="date",r.datetime="datetime",r.string="string",r.text="text",r.file="file",r.array="array",r.object="object",r.user="user",r.location="location",r.crmCategory="crm_category",r.crmStatus="crm_status",r.crmCurrency="crm_currency",r))(Vn||{});const Ho=Function.prototype.toString.call(Object);let zo=class{getTag(e){return Object.prototype.toString.call(e)}isString(e){return e===""?!0:e?typeof e=="string"||e instanceof String:!1}isStringFilled(e){return this.isString(e)&&e!==""}isFunction(e){return e===null?!1:typeof e=="function"||e instanceof Function}isObject(e){return!!e&&(typeof e=="object"||typeof e=="function")}isObjectLike(e){return!!e&&typeof e=="object"}isPlainObject(e){if(!this.isObjectLike(e)||this.getTag(e)!=="[object Object]")return!1;const t=Object.getPrototypeOf(e);if(t===null)return!0;const n=t.hasOwnProperty("constructor")&&t.constructor;return typeof n=="function"&&Function.prototype.toString.call(n)===Ho}isJsonRpcRequest(e){return typeof e=="object"&&e&&"jsonrpc"in e&&this.isStringFilled(e.jsonrpc)&&"method"in e&&this.isStringFilled(e.method)}isJsonRpcResponse(e){return typeof e=="object"&&e&&"jsonrpc"in e&&this.isStringFilled(e.jsonrpc)&&"id"in e&&("result"in e||"error"in e)}isBoolean(e){return e===!0||e===!1}isNumber(e){return!Number.isNaN(e)&&typeof e=="number"}isInteger(e){return this.isNumber(e)&&e%1===0}isFloat(e){return this.isNumber(e)&&!this.isInteger(e)}isNil(e){return e==null}isArray(e){return!this.isNil(e)&&Array.isArray(e)}isArrayFilled(e){return this.isArray(e)&&e.length>0}isArrayLike(e){return!this.isNil(e)&&!this.isFunction(e)&&e.length>-1&&e.length<=Number.MAX_SAFE_INTEGER}isDate(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Date]"}isDomNode(e){return this.isObjectLike(e)&&!this.isPlainObject(e)&&"nodeType"in e}isElementNode(e){return this.isDomNode(e)&&e.nodeType===Node.ELEMENT_NODE}isTextNode(e){return this.isDomNode(e)&&e.nodeType===Node.TEXT_NODE}isMap(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Map]"}isSet(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Set]"}isWeakMap(e){return this.isObjectLike(e)&&this.getTag(e)==="[object WeakMap]"}isWeakSet(e){return this.isObjectLike(e)&&this.getTag(e)==="[object WeakSet]"}isPrototype(e){return(typeof(e&&e.constructor)=="function"&&e.constructor.prototype||Object.prototype)===e}isRegExp(e){return this.isObjectLike(e)&&this.getTag(e)==="[object RegExp]"}isNull(e){return e===null}isUndefined(e){return typeof e>"u"}isArrayBuffer(e){return this.isObjectLike(e)&&this.getTag(e)==="[object ArrayBuffer]"}isTypedArray(e){const t=/^\[object (?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)]$/;return this.isObjectLike(e)&&t.test(this.getTag(e))}isBlob(e){return this.isObjectLike(e)&&this.isNumber(e.size)&&this.isString(e.type)&&this.isFunction(e.slice)}isFile(e){return this.isBlob(e)&&this.isString(e.name)&&(this.isNumber(e.lastModified)||this.isObjectLike(e.lastModifiedDate))}isFormData(e){return e instanceof FormData}clone(e,t=!0){let n,s,i;if(e===null)return null;if(this.isDomNode(e))n=e.cloneNode(t);else if(typeof e=="object")if(this.isArray(e))for(n=[],s=0,i=e.length;s<i;s++)typeof e[s]=="object"&&t?n[s]=this.clone(e[s],t):n[s]=e[s];else{n={},e.constructor&&(this.isDate(e)?n=new Date(e):n=new e.constructor);for(s in e)e.hasOwnProperty(s)&&(typeof e[s]=="object"&&t?n[s]=this.clone(e[s],t):n[s]=e[s])}else n=e;return n}};const R=new zo;function Jo(r,e){const t={};for(const n of e)t[n]=r[n];return t}function Hn(r,e){const t={...r};for(const n of e)delete t[n];return t}function Zo(r){return Array.isArray(r[0])}class ut extends Error{}class Go extends ut{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class Yo extends ut{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class Ko extends ut{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class vt extends ut{}class zn extends ut{constructor(e){super(`Invalid unit ${e}`)}}class we extends ut{}class tt extends ut{constructor(){super("Zone is an abstract class")}}const C="numeric",De="short",Ie="long",sr={year:C,month:C,day:C},Jn={year:C,month:De,day:C},Xo={year:C,month:De,day:C,weekday:De},Zn={year:C,month:Ie,day:C},Gn={year:C,month:Ie,day:C,weekday:Ie},Yn={hour:C,minute:C},Kn={hour:C,minute:C,second:C},Xn={hour:C,minute:C,second:C,timeZoneName:De},Qn={hour:C,minute:C,second:C,timeZoneName:Ie},es={hour:C,minute:C,hourCycle:"h23"},ts={hour:C,minute:C,second:C,hourCycle:"h23"},rs={hour:C,minute:C,second:C,hourCycle:"h23",timeZoneName:De},ns={hour:C,minute:C,second:C,hourCycle:"h23",timeZoneName:Ie},ss={year:C,month:C,day:C,hour:C,minute:C},is={year:C,month:C,day:C,hour:C,minute:C,second:C},os={year:C,month:De,day:C,hour:C,minute:C},as={year:C,month:De,day:C,hour:C,minute:C,second:C},Qo={year:C,month:De,day:C,weekday:De,hour:C,minute:C},ls={year:C,month:Ie,day:C,hour:C,minute:C,timeZoneName:De},cs={year:C,month:Ie,day:C,hour:C,minute:C,second:C,timeZoneName:De},us={year:C,month:Ie,day:C,weekday:Ie,hour:C,minute:C,timeZoneName:Ie},hs={year:C,month:Ie,day:C,weekday:Ie,hour:C,minute:C,second:C,timeZoneName:Ie};class Bt{get type(){throw new tt}get name(){throw new tt}get ianaName(){return this.name}get isUniversal(){throw new tt}offsetName(e,t){throw new tt}formatOffset(e,t){throw new tt}offset(e){throw new tt}equals(e){throw new tt}get isValid(){throw new tt}}let Dr=null;class ir extends Bt{static get instance(){return Dr===null&&(Dr=new ir),Dr}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return Ds(e,t,n)}formatOffset(e,t){return Vt(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}}const jr=new Map;function ea(r){let e=jr.get(r);return e===void 0&&(e=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:r,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),jr.set(r,e)),e}const ta={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function ra(r,e){const t=r.format(e).replace(/\u200E/g,""),n=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(t),[,s,i,o,a,l,u,c]=n;return[o,s,i,a,l,u,c]}function na(r,e){const t=r.formatToParts(e),n=[];for(let s=0;s<t.length;s++){const{type:i,value:o}=t[s],a=ta[i];i==="era"?n[a]=o:W(a)||(n[a]=parseInt(o,10))}return n}const Ur=new Map;class Ge extends Bt{static create(e){let t=Ur.get(e);return t===void 0&&Ur.set(e,t=new Ge(e)),t}static resetCache(){Ur.clear(),jr.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch{return!1}}constructor(e){super(),this.zoneName=e,this.valid=Ge.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return Ds(e,t,n,this.name)}formatOffset(e,t){return Vt(this.offset(e),t)}offset(e){if(!this.valid)return NaN;const t=new Date(e);if(isNaN(t))return NaN;const n=ea(this.name);let[s,i,o,a,l,u,c]=n.formatToParts?na(n,t):ra(n,t);a==="BC"&&(s=-Math.abs(s)+1);const h=ur({year:s,month:i,day:o,hour:l===24?0:l,minute:u,second:c,millisecond:0});let d=+t;const p=d%1e3;return d-=p>=0?p:1e3+p,(h-d)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}}let fs={};function sa(r,e={}){const t=JSON.stringify([r,e]);let n=fs[t];return n||(n=new Intl.ListFormat(r,e),fs[t]=n),n}const Br=new Map;function $r(r,e={}){const t=JSON.stringify([r,e]);let n=Br.get(t);return n===void 0&&(n=new Intl.DateTimeFormat(r,e),Br.set(t,n)),n}const Wr=new Map;function ia(r,e={}){const t=JSON.stringify([r,e]);let n=Wr.get(t);return n===void 0&&(n=new Intl.NumberFormat(r,e),Wr.set(t,n)),n}const qr=new Map;function oa(r,e={}){const{base:t,...n}=e,s=JSON.stringify([r,n]);let i=qr.get(s);return i===void 0&&(i=new Intl.RelativeTimeFormat(r,e),qr.set(s,i)),i}let $t=null;function aa(){return $t||($t=new Intl.DateTimeFormat().resolvedOptions().locale,$t)}const Vr=new Map;function ds(r){let e=Vr.get(r);return e===void 0&&(e=new Intl.DateTimeFormat(r).resolvedOptions(),Vr.set(r,e)),e}const Hr=new Map;function la(r){let e=Hr.get(r);if(!e){const t=new Intl.Locale(r);e="getWeekInfo"in t?t.getWeekInfo():t.weekInfo,"minimalDays"in e||(e={...ps,...e}),Hr.set(r,e)}return e}function ca(r){const e=r.indexOf("-x-");e!==-1&&(r=r.substring(0,e));const t=r.indexOf("-u-");if(t===-1)return[r];{let n,s;try{n=$r(r).resolvedOptions(),s=r}catch{const l=r.substring(0,t);n=$r(l).resolvedOptions(),s=l}const{numberingSystem:i,calendar:o}=n;return[s,i,o]}}function ua(r,e,t){return(t||e)&&(r.includes("-u-")||(r+="-u"),t&&(r+=`-ca-${t}`),e&&(r+=`-nu-${e}`)),r}function ha(r){const e=[];for(let t=1;t<=12;t++){const n=U.utc(2009,t,1);e.push(r(n))}return e}function fa(r){const e=[];for(let t=1;t<=7;t++){const n=U.utc(2016,11,13+t);e.push(r(n))}return e}function or(r,e,t,n){const s=r.listingMode();return s==="error"?null:s==="en"?t(e):n(e)}function da(r){return r.numberingSystem&&r.numberingSystem!=="latn"?!1:r.numberingSystem==="latn"||!r.locale||r.locale.startsWith("en")||ds(r.locale).numberingSystem==="latn"}class pa{constructor(e,t,n){this.padTo=n.padTo||0,this.floor=n.floor||!1;const{padTo:s,floor:i,...o}=n;if(!t||Object.keys(o).length>0){const a={useGrouping:!1,...n};n.padTo>0&&(a.minimumIntegerDigits=n.padTo),this.inf=ia(e,a)}}format(e){if(this.inf){const t=this.floor?Math.floor(e):e;return this.inf.format(t)}else{const t=this.floor?Math.floor(e):en(e,3);return ce(t,this.padTo)}}}class ga{constructor(e,t,n){this.opts=n,this.originalZone=void 0;let s;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){const o=-1*(e.offset/60),a=o>=0?`Etc/GMT+${o}`:`Etc/GMT${o}`;e.offset!==0&&Ge.create(a).valid?(s=a,this.dt=e):(s="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,s=e.zone.name):(s="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);const i={...this.opts};i.timeZone=i.timeZone||s,this.dtf=$r(t,i)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(t=>{if(t.type==="timeZoneName"){const n=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...t,value:n}}else return t}):e}resolvedOptions(){return this.dtf.resolvedOptions()}}class ma{constructor(e,t,n){this.opts={style:"long",...n},!t&&Ls()&&(this.rtf=oa(e,n))}format(e,t){return this.rtf?this.rtf.format(e,t):ja(t,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}}const ps={firstDay:1,minimalDays:4,weekend:[6,7]};class K{static fromOpts(e){return K.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,t,n,s,i=!1){const o=e||ne.defaultLocale,a=o||(i?"en-US":aa()),l=t||ne.defaultNumberingSystem,u=n||ne.defaultOutputCalendar,c=Xr(s)||ne.defaultWeekSettings;return new K(a,l,u,c,o)}static resetCache(){$t=null,Br.clear(),Wr.clear(),qr.clear(),Vr.clear(),Hr.clear()}static fromObject({locale:e,numberingSystem:t,outputCalendar:n,weekSettings:s}={}){return K.create(e,t,n,s)}constructor(e,t,n,s,i){const[o,a,l]=ca(e);this.locale=o,this.numberingSystem=t||a||null,this.outputCalendar=n||l||null,this.weekSettings=s,this.intl=ua(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=i,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=da(this)),this.fastNumbersCached}listingMode(){const e=this.isEnglish(),t=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&t?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:K.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,Xr(e.weekSettings)||this.weekSettings,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,t=!1){return or(this,e,Bs,()=>{const n=t?{month:e,day:"numeric"}:{month:e},s=t?"format":"standalone";return this.monthsCache[s][e]||(this.monthsCache[s][e]=ha(i=>this.extract(i,n,"month"))),this.monthsCache[s][e]})}weekdays(e,t=!1){return or(this,e,qs,()=>{const n=t?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},s=t?"format":"standalone";return this.weekdaysCache[s][e]||(this.weekdaysCache[s][e]=fa(i=>this.extract(i,n,"weekday"))),this.weekdaysCache[s][e]})}meridiems(){return or(this,void 0,()=>Vs,()=>{if(!this.meridiemCache){const e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[U.utc(2016,11,13,9),U.utc(2016,11,13,19)].map(t=>this.extract(t,e,"dayperiod"))}return this.meridiemCache})}eras(e){return or(this,e,Hs,()=>{const t={era:e};return this.eraCache[e]||(this.eraCache[e]=[U.utc(-40,1,1),U.utc(2017,1,1)].map(n=>this.extract(n,t,"era"))),this.eraCache[e]})}extract(e,t,n){const s=this.dtFormatter(e,t),i=s.formatToParts(),o=i.find(a=>a.type.toLowerCase()===n);return o?o.value:null}numberFormatter(e={}){return new pa(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new ga(e,this.intl,t)}relFormatter(e={}){return new ma(this.intl,this.isEnglish(),e)}listFormatter(e={}){return sa(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||ds(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:Ms()?la(this.locale):ps}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}}let zr=null;class Ee extends Bt{static get utcInstance(){return zr===null&&(zr=new Ee(0)),zr}static instance(e){return e===0?Ee.utcInstance:new Ee(e)}static parseSpecifier(e){if(e){const t=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(t)return new Ee(hr(t[1],t[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${Vt(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${Vt(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,t){return Vt(this.fixed,t)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}}class ya extends Bt{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function rt(r,e){if(W(r)||r===null)return e;if(r instanceof Bt)return r;if(ka(r)){const t=r.toLowerCase();return t==="default"?e:t==="local"||t==="system"?ir.instance:t==="utc"||t==="gmt"?Ee.utcInstance:Ee.parseSpecifier(t)||Ge.create(r)}else return nt(r)?Ee.instance(r):typeof r=="object"&&"offset"in r&&typeof r.offset=="function"?r:new ya(r)}const Jr={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},gs={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},wa=Jr.hanidec.replace(/[\[|\]]/g,"").split("");function ba(r){let e=parseInt(r,10);if(isNaN(e)){e="";for(let t=0;t<r.length;t++){const n=r.charCodeAt(t);if(r[t].search(Jr.hanidec)!==-1)e+=wa.indexOf(r[t]);else for(const s in gs){const[i,o]=gs[s];n>=i&&n<=o&&(e+=n-i)}}return parseInt(e,10)}else return e}const Zr=new Map;function Sa(){Zr.clear()}function je({numberingSystem:r},e=""){const t=r||"latn";let n=Zr.get(t);n===void 0&&(n=new Map,Zr.set(t,n));let s=n.get(e);return s===void 0&&(s=new RegExp(`${Jr[t]}${e}`),n.set(e,s)),s}let ms=()=>Date.now(),ys="system",ws=null,bs=null,Ss=null,_s=60,vs,ks=null;class ne{static get now(){return ms}static set now(e){ms=e}static set defaultZone(e){ys=e}static get defaultZone(){return rt(ys,ir.instance)}static get defaultLocale(){return ws}static set defaultLocale(e){ws=e}static get defaultNumberingSystem(){return bs}static set defaultNumberingSystem(e){bs=e}static get defaultOutputCalendar(){return Ss}static set defaultOutputCalendar(e){Ss=e}static get defaultWeekSettings(){return ks}static set defaultWeekSettings(e){ks=Xr(e)}static get twoDigitCutoffYear(){return _s}static set twoDigitCutoffYear(e){_s=e%100}static get throwOnInvalid(){return vs}static set throwOnInvalid(e){vs=e}static resetCaches(){K.resetCache(),Ge.resetCache(),U.resetCache(),Sa()}}class Ue{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const Es=[0,31,59,90,120,151,181,212,243,273,304,334],Ts=[0,31,60,91,121,152,182,213,244,274,305,335];function Le(r,e){return new Ue("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${r}, which is invalid`)}function Gr(r,e,t){const n=new Date(Date.UTC(r,e-1,t));r<100&&r>=0&&n.setUTCFullYear(n.getUTCFullYear()-1900);const s=n.getUTCDay();return s===0?7:s}function Os(r,e,t){return t+(Wt(r)?Ts:Es)[e-1]}function As(r,e){const t=Wt(r)?Ts:Es,n=t.findIndex(i=>i<e),s=e-t[n];return{month:n+1,day:s}}function Yr(r,e){return(r-e+7)%7+1}function ar(r,e=4,t=1){const{year:n,month:s,day:i}=r,o=Os(n,s,i),a=Yr(Gr(n,s,i),t);let l=Math.floor((o-a+14-e)/7),u;return l<1?(u=n-1,l=qt(u,e,t)):l>qt(n,e,t)?(u=n+1,l=1):u=n,{weekYear:u,weekNumber:l,weekday:a,...dr(r)}}function Is(r,e=4,t=1){const{weekYear:n,weekNumber:s,weekday:i}=r,o=Yr(Gr(n,1,e),t),a=Et(n);let l=s*7+i-o-7+e,u;l<1?(u=n-1,l+=Et(u)):l>a?(u=n+1,l-=Et(n)):u=n;const{month:c,day:f}=As(u,l);return{year:u,month:c,day:f,...dr(r)}}function Kr(r){const{year:e,month:t,day:n}=r,s=Os(e,t,n);return{year:e,ordinal:s,...dr(r)}}function Cs(r){const{year:e,ordinal:t}=r,{month:n,day:s}=As(e,t);return{year:e,month:n,day:s,...dr(r)}}function Ns(r,e){if(!W(r.localWeekday)||!W(r.localWeekNumber)||!W(r.localWeekYear)){if(!W(r.weekday)||!W(r.weekNumber)||!W(r.weekYear))throw new vt("Cannot mix locale-based week fields with ISO-based week fields");return W(r.localWeekday)||(r.weekday=r.localWeekday),W(r.localWeekNumber)||(r.weekNumber=r.localWeekNumber),W(r.localWeekYear)||(r.weekYear=r.localWeekYear),delete r.localWeekday,delete r.localWeekNumber,delete r.localWeekYear,{minDaysInFirstWeek:e.getMinDaysInFirstWeek(),startOfWeek:e.getStartOfWeek()}}else return{minDaysInFirstWeek:4,startOfWeek:1}}function _a(r,e=4,t=1){const n=lr(r.weekYear),s=Me(r.weekNumber,1,qt(r.weekYear,e,t)),i=Me(r.weekday,1,7);return n?s?i?!1:Le("weekday",r.weekday):Le("week",r.weekNumber):Le("weekYear",r.weekYear)}function va(r){const e=lr(r.year),t=Me(r.ordinal,1,Et(r.year));return e?t?!1:Le("ordinal",r.ordinal):Le("year",r.year)}function Rs(r){const e=lr(r.year),t=Me(r.month,1,12),n=Me(r.day,1,cr(r.year,r.month));return e?t?n?!1:Le("day",r.day):Le("month",r.month):Le("year",r.year)}function Fs(r){const{hour:e,minute:t,second:n,millisecond:s}=r,i=Me(e,0,23)||e===24&&t===0&&n===0&&s===0,o=Me(t,0,59),a=Me(n,0,59),l=Me(s,0,999);return i?o?a?l?!1:Le("millisecond",s):Le("second",n):Le("minute",t):Le("hour",e)}function W(r){return typeof r>"u"}function nt(r){return typeof r=="number"}function lr(r){return typeof r=="number"&&r%1===0}function ka(r){return typeof r=="string"}function Ea(r){return Object.prototype.toString.call(r)==="[object Date]"}function Ls(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function Ms(){try{return typeof Intl<"u"&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch{return!1}}function Ta(r){return Array.isArray(r)?r:[r]}function Ps(r,e,t){if(r.length!==0)return r.reduce((n,s)=>{const i=[e(s),s];return n&&t(n[0],i[0])===n[0]?n:i},null)[1]}function Oa(r,e){return e.reduce((t,n)=>(t[n]=r[n],t),{})}function kt(r,e){return Object.prototype.hasOwnProperty.call(r,e)}function Xr(r){if(r==null)return null;if(typeof r!="object")throw new we("Week settings must be an object");if(!Me(r.firstDay,1,7)||!Me(r.minimalDays,1,7)||!Array.isArray(r.weekend)||r.weekend.some(e=>!Me(e,1,7)))throw new we("Invalid week settings");return{firstDay:r.firstDay,minimalDays:r.minimalDays,weekend:Array.from(r.weekend)}}function Me(r,e,t){return lr(r)&&r>=e&&r<=t}function Aa(r,e){return r-e*Math.floor(r/e)}function ce(r,e=2){const t=r<0;let n;return t?n="-"+(""+-r).padStart(e,"0"):n=(""+r).padStart(e,"0"),n}function st(r){if(!(W(r)||r===null||r===""))return parseInt(r,10)}function ht(r){if(!(W(r)||r===null||r===""))return parseFloat(r)}function Qr(r){if(!(W(r)||r===null||r==="")){const e=parseFloat("0."+r)*1e3;return Math.floor(e)}}function en(r,e,t=!1){const n=10**e;return(t?Math.trunc:Math.round)(r*n)/n}function Wt(r){return r%4===0&&(r%100!==0||r%400===0)}function Et(r){return Wt(r)?366:365}function cr(r,e){const t=Aa(e-1,12)+1,n=r+(e-t)/12;return t===2?Wt(n)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][t-1]}function ur(r){let e=Date.UTC(r.year,r.month-1,r.day,r.hour,r.minute,r.second,r.millisecond);return r.year<100&&r.year>=0&&(e=new Date(e),e.setUTCFullYear(r.year,r.month-1,r.day)),+e}function xs(r,e,t){return-Yr(Gr(r,1,e),t)+e-1}function qt(r,e=4,t=1){const n=xs(r,e,t),s=xs(r+1,e,t);return(Et(r)-n+s)/7}function tn(r){return r>99?r:r>ne.twoDigitCutoffYear?1900+r:2e3+r}function Ds(r,e,t,n=null){const s=new Date(r),i={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};n&&(i.timeZone=n);const o={timeZoneName:e,...i},a=new Intl.DateTimeFormat(t,o).formatToParts(s).find(l=>l.type.toLowerCase()==="timezonename");return a?a.value:null}function hr(r,e){let t=parseInt(r,10);Number.isNaN(t)&&(t=0);const n=parseInt(e,10)||0,s=t<0||Object.is(t,-0)?-n:n;return t*60+s}function js(r){const e=Number(r);if(typeof r=="boolean"||r===""||Number.isNaN(e))throw new we(`Invalid unit value ${r}`);return e}function fr(r,e){const t={};for(const n in r)if(kt(r,n)){const s=r[n];if(s==null)continue;t[e(n)]=js(s)}return t}function Vt(r,e){const t=Math.trunc(Math.abs(r/60)),n=Math.trunc(Math.abs(r%60)),s=r>=0?"+":"-";switch(e){case"short":return`${s}${ce(t,2)}:${ce(n,2)}`;case"narrow":return`${s}${t}${n>0?`:${n}`:""}`;case"techie":return`${s}${ce(t,2)}${ce(n,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function dr(r){return Oa(r,["hour","minute","second","millisecond"])}const Ia=["January","February","March","April","May","June","July","August","September","October","November","December"],Us=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Ca=["J","F","M","A","M","J","J","A","S","O","N","D"];function Bs(r){switch(r){case"narrow":return[...Ca];case"short":return[...Us];case"long":return[...Ia];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const $s=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Ws=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Na=["M","T","W","T","F","S","S"];function qs(r){switch(r){case"narrow":return[...Na];case"short":return[...Ws];case"long":return[...$s];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const Vs=["AM","PM"],Ra=["Before Christ","Anno Domini"],Fa=["BC","AD"],La=["B","A"];function Hs(r){switch(r){case"narrow":return[...La];case"short":return[...Fa];case"long":return[...Ra];default:return null}}function Ma(r){return Vs[r.hour<12?0:1]}function Pa(r,e){return qs(e)[r.weekday-1]}function xa(r,e){return Bs(e)[r.month-1]}function Da(r,e){return Hs(e)[r.year<0?0:1]}function ja(r,e,t="always",n=!1){const s={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},i=["hours","minutes","seconds"].indexOf(r)===-1;if(t==="auto"&&i){const f=r==="days";switch(e){case 1:return f?"tomorrow":`next ${s[r][0]}`;case-1:return f?"yesterday":`last ${s[r][0]}`;case 0:return f?"today":`this ${s[r][0]}`}}const o=Object.is(e,-0)||e<0,a=Math.abs(e),l=a===1,u=s[r],c=n?l?u[1]:u[2]||u[1]:l?s[r][0]:r;return o?`${a} ${c} ago`:`in ${a} ${c}`}function zs(r,e){let t="";for(const n of r)n.literal?t+=n.val:t+=e(n.val);return t}const Ua={D:sr,DD:Jn,DDD:Zn,DDDD:Gn,t:Yn,tt:Kn,ttt:Xn,tttt:Qn,T:es,TT:ts,TTT:rs,TTTT:ns,f:ss,ff:os,fff:ls,ffff:us,F:is,FF:as,FFF:cs,FFFF:hs};class be{static create(e,t={}){return new be(e,t)}static parseFormat(e){let t=null,n="",s=!1;const i=[];for(let o=0;o<e.length;o++){const a=e.charAt(o);a==="'"?(n.length>0&&i.push({literal:s||/^\s+$/.test(n),val:n}),t=null,n="",s=!s):s||a===t?n+=a:(n.length>0&&i.push({literal:/^\s+$/.test(n),val:n}),n=a,t=a)}return n.length>0&&i.push({literal:s||/^\s+$/.test(n),val:n}),i}static macroTokenToFormatOpts(e){return Ua[e]}constructor(e,t){this.opts=t,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,t){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...t}).format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){return this.dtFormatter(e.start,t).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0){if(this.opts.forceSimple)return ce(e,t);const n={...this.opts};return t>0&&(n.padTo=t),this.loc.numberFormatter(n).format(e)}formatDateTimeFromString(e,t){const n=this.loc.listingMode()==="en",s=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",i=(d,p)=>this.loc.extract(e,d,p),o=d=>e.isOffsetFixed&&e.offset===0&&d.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,d.format):"",a=()=>n?Ma(e):i({hour:"numeric",hourCycle:"h12"},"dayperiod"),l=(d,p)=>n?xa(e,d):i(p?{month:d}:{month:d,day:"numeric"},"month"),u=(d,p)=>n?Pa(e,d):i(p?{weekday:d}:{weekday:d,month:"long",day:"numeric"},"weekday"),c=d=>{const p=be.macroTokenToFormatOpts(d);return p?this.formatWithSystemDefault(e,p):d},f=d=>n?Da(e,d):i({era:d},"era"),h=d=>{switch(d){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return o({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return o({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return o({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return a();case"d":return s?i({day:"numeric"},"day"):this.num(e.day);case"dd":return s?i({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return u("short",!0);case"cccc":return u("long",!0);case"ccccc":return u("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return u("short",!1);case"EEEE":return u("long",!1);case"EEEEE":return u("narrow",!1);case"L":return s?i({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return s?i({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return l("short",!0);case"LLLL":return l("long",!0);case"LLLLL":return l("narrow",!0);case"M":return s?i({month:"numeric"},"month"):this.num(e.month);case"MM":return s?i({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return l("short",!1);case"MMMM":return l("long",!1);case"MMMMM":return l("narrow",!1);case"y":return s?i({year:"numeric"},"year"):this.num(e.year);case"yy":return s?i({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return s?i({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return s?i({year:"numeric"},"year"):this.num(e.year,6);case"G":return f("short");case"GG":return f("long");case"GGGGG":return f("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return c(d)}};return zs(be.parseFormat(t),h)}formatDurationFromString(e,t){const n=l=>{switch(l[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},s=l=>u=>{const c=n(u);return c?this.num(l.get(c),u.length):u},i=be.parseFormat(t),o=i.reduce((l,{literal:u,val:c})=>u?l:l.concat(c),[]),a=e.shiftTo(...o.map(n).filter(l=>l));return zs(i,s(a))}}const Js=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function Tt(...r){const e=r.reduce((t,n)=>t+n.source,"");return RegExp(`^${e}$`)}function Ot(...r){return e=>r.reduce(([t,n,s],i)=>{const[o,a,l]=i(e,s);return[{...t,...o},a||n,l]},[{},null,1]).slice(0,2)}function At(r,...e){if(r==null)return[null,null];for(const[t,n]of e){const s=t.exec(r);if(s)return n(s)}return[null,null]}function Zs(...r){return(e,t)=>{const n={};let s;for(s=0;s<r.length;s++)n[r[s]]=st(e[t+s]);return[n,null,t+s]}}const Gs=/(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/,Ba=`(?:${Gs.source}?(?:\\[(${Js.source})\\])?)?`,rn=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,Ys=RegExp(`${rn.source}${Ba}`),nn=RegExp(`(?:T${Ys.source})?`),$a=/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,Wa=/(\d{4})-?W(\d\d)(?:-?(\d))?/,qa=/(\d{4})-?(\d{3})/,Va=Zs("weekYear","weekNumber","weekDay"),Ha=Zs("year","ordinal"),za=/(\d{4})-(\d\d)-(\d\d)/,Ks=RegExp(`${rn.source} ?(?:${Gs.source}|(${Js.source}))?`),Ja=RegExp(`(?: ${Ks.source})?`);function It(r,e,t){const n=r[e];return W(n)?t:st(n)}function Za(r,e){return[{year:It(r,e),month:It(r,e+1,1),day:It(r,e+2,1)},null,e+3]}function Ct(r,e){return[{hours:It(r,e,0),minutes:It(r,e+1,0),seconds:It(r,e+2,0),milliseconds:Qr(r[e+3])},null,e+4]}function Ht(r,e){const t=!r[e]&&!r[e+1],n=hr(r[e+1],r[e+2]),s=t?null:Ee.instance(n);return[{},s,e+3]}function zt(r,e){const t=r[e]?Ge.create(r[e]):null;return[{},t,e+1]}const Ga=RegExp(`^T?${rn.source}$`),Ya=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function Ka(r){const[e,t,n,s,i,o,a,l,u]=r,c=e[0]==="-",f=l&&l[0]==="-",h=(d,p=!1)=>d!==void 0&&(p||d&&c)?-d:d;return[{years:h(ht(t)),months:h(ht(n)),weeks:h(ht(s)),days:h(ht(i)),hours:h(ht(o)),minutes:h(ht(a)),seconds:h(ht(l),l==="-0"),milliseconds:h(Qr(u),f)}]}const Xa={GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function sn(r,e,t,n,s,i,o){const a={year:e.length===2?tn(st(e)):st(e),month:Us.indexOf(t)+1,day:st(n),hour:st(s),minute:st(i)};return o&&(a.second=st(o)),r&&(a.weekday=r.length>3?$s.indexOf(r)+1:Ws.indexOf(r)+1),a}const Qa=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function el(r){const[,e,t,n,s,i,o,a,l,u,c,f]=r,h=sn(e,s,n,t,i,o,a);let d;return l?d=Xa[l]:u?d=0:d=hr(c,f),[h,new Ee(d)]}function tl(r){return r.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}const rl=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,nl=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,sl=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function Xs(r){const[,e,t,n,s,i,o,a]=r;return[sn(e,s,n,t,i,o,a),Ee.utcInstance]}function il(r){const[,e,t,n,s,i,o,a]=r;return[sn(e,a,t,n,s,i,o),Ee.utcInstance]}const ol=Tt($a,nn),al=Tt(Wa,nn),ll=Tt(qa,nn),cl=Tt(Ys),Qs=Ot(Za,Ct,Ht,zt),ul=Ot(Va,Ct,Ht,zt),hl=Ot(Ha,Ct,Ht,zt),fl=Ot(Ct,Ht,zt);function dl(r){return At(r,[ol,Qs],[al,ul],[ll,hl],[cl,fl])}function pl(r){return At(tl(r),[Qa,el])}function gl(r){return At(r,[rl,Xs],[nl,Xs],[sl,il])}function ml(r){return At(r,[Ya,Ka])}const yl=Ot(Ct);function wl(r){return At(r,[Ga,yl])}const bl=Tt(za,Ja),Sl=Tt(Ks),_l=Ot(Ct,Ht,zt);function vl(r){return At(r,[bl,Qs],[Sl,_l])}const ei="Invalid Duration",ti={weeks:{days:7,hours:7*24,minutes:7*24*60,seconds:7*24*60*60,milliseconds:7*24*60*60*1e3},days:{hours:24,minutes:24*60,seconds:24*60*60,milliseconds:24*60*60*1e3},hours:{minutes:60,seconds:60*60,milliseconds:60*60*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},kl={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:91*24,minutes:91*24*60,seconds:91*24*60*60,milliseconds:91*24*60*60*1e3},months:{weeks:4,days:30,hours:30*24,minutes:30*24*60,seconds:30*24*60*60,milliseconds:30*24*60*60*1e3},...ti},Pe=146097/400,Nt=146097/4800,El={years:{quarters:4,months:12,weeks:Pe/7,days:Pe,hours:Pe*24,minutes:Pe*24*60,seconds:Pe*24*60*60,milliseconds:Pe*24*60*60*1e3},quarters:{months:3,weeks:Pe/28,days:Pe/4,hours:Pe*24/4,minutes:Pe*24*60/4,seconds:Pe*24*60*60/4,milliseconds:Pe*24*60*60*1e3/4},months:{weeks:Nt/7,days:Nt,hours:Nt*24,minutes:Nt*24*60,seconds:Nt*24*60*60,milliseconds:Nt*24*60*60*1e3},...ti},ft=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],Tl=ft.slice(0).reverse();function it(r,e,t=!1){const n={values:t?e.values:{...r.values,...e.values||{}},loc:r.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||r.conversionAccuracy,matrix:e.matrix||r.matrix};return new Z(n)}function ri(r,e){let t=e.milliseconds??0;for(const n of Tl.slice(1))e[n]&&(t+=e[n]*r[n].milliseconds);return t}function ni(r,e){const t=ri(r,e)<0?-1:1;ft.reduceRight((n,s)=>{if(W(e[s]))return n;if(n){const i=e[n]*t,o=r[s][n],a=Math.floor(i/o);e[s]+=a*t,e[n]-=a*o*t}return s},null),ft.reduce((n,s)=>{if(W(e[s]))return n;if(n){const i=e[n]%1;e[n]-=i,e[s]+=i*r[n][s]}return s},null)}function Ol(r){const e={};for(const[t,n]of Object.entries(r))n!==0&&(e[t]=n);return e}class Z{constructor(e){const t=e.conversionAccuracy==="longterm"||!1;let n=t?El:kl;e.matrix&&(n=e.matrix),this.values=e.values,this.loc=e.loc||K.create(),this.conversionAccuracy=t?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=n,this.isLuxonDuration=!0}static fromMillis(e,t){return Z.fromObject({milliseconds:e},t)}static fromObject(e,t={}){if(e==null||typeof e!="object")throw new we(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new Z({values:fr(e,Z.normalizeUnit),loc:K.fromObject(t),conversionAccuracy:t.conversionAccuracy,matrix:t.matrix})}static fromDurationLike(e){if(nt(e))return Z.fromMillis(e);if(Z.isDuration(e))return e;if(typeof e=="object")return Z.fromObject(e);throw new we(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,t){const[n]=ml(e);return n?Z.fromObject(n,t):Z.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,t){const[n]=wl(e);return n?Z.fromObject(n,t):Z.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,t=null){if(!e)throw new we("need to specify a reason the Duration is invalid");const n=e instanceof Ue?e:new Ue(e,t);if(ne.throwOnInvalid)throw new Ko(n);return new Z({invalid:n})}static normalizeUnit(e){const t={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e&&e.toLowerCase()];if(!t)throw new zn(e);return t}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){const n={...t,floor:t.round!==!1&&t.floor!==!1};return this.isValid?be.create(this.loc,n).formatDurationFromString(this,e):ei}toHuman(e={}){if(!this.isValid)return ei;const t=ft.map(n=>{const s=this.values[n];return W(s)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:n.slice(0,-1)}).format(s)}).filter(n=>n);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(t)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=en(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;const t=this.toMillis();return t<0||t>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},U.fromMillis(t,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?ri(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e),n={};for(const s of ft)(kt(t.values,s)||kt(this.values,s))&&(n[s]=t.get(s)+this.get(s));return it(this,{values:n},!0)}minus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e);return this.plus(t.negate())}mapUnits(e){if(!this.isValid)return this;const t={};for(const n of Object.keys(this.values))t[n]=js(e(this.values[n],n));return it(this,{values:t},!0)}get(e){return this[Z.normalizeUnit(e)]}set(e){if(!this.isValid)return this;const t={...this.values,...fr(e,Z.normalizeUnit)};return it(this,{values:t})}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:n,matrix:s}={}){const o={loc:this.loc.clone({locale:e,numberingSystem:t}),matrix:s,conversionAccuracy:n};return it(this,o)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;const e=this.toObject();return ni(this.matrix,e),it(this,{values:e},!0)}rescale(){if(!this.isValid)return this;const e=Ol(this.normalize().shiftToAll().toObject());return it(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(o=>Z.normalizeUnit(o));const t={},n={},s=this.toObject();let i;for(const o of ft)if(e.indexOf(o)>=0){i=o;let a=0;for(const u in n)a+=this.matrix[u][o]*n[u],n[u]=0;nt(s[o])&&(a+=s[o]);const l=Math.trunc(a);t[o]=l,n[o]=(a*1e3-l*1e3)/1e3}else nt(s[o])&&(n[o]=s[o]);for(const o in n)n[o]!==0&&(t[i]+=o===i?n[o]:n[o]/this.matrix[i][o]);return ni(this.matrix,t),it(this,{values:t},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const e={};for(const t of Object.keys(this.values))e[t]=this.values[t]===0?0:-this.values[t];return it(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function t(n,s){return n===void 0||n===0?s===void 0||s===0:n===s}for(const n of ft)if(!t(this.values[n],e.values[n]))return!1;return!0}}const Rt="Invalid Interval";function Al(r,e){return!r||!r.isValid?se.invalid("missing or invalid start"):!e||!e.isValid?se.invalid("missing or invalid end"):e<r?se.invalid("end before start",`The end of an interval must be after its start, but you had start=${r.toISO()} and end=${e.toISO()}`):null}class se{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(e,t=null){if(!e)throw new we("need to specify a reason the Interval is invalid");const n=e instanceof Ue?e:new Ue(e,t);if(ne.throwOnInvalid)throw new Yo(n);return new se({invalid:n})}static fromDateTimes(e,t){const n=Gt(e),s=Gt(t),i=Al(n,s);return i??new se({start:n,end:s})}static after(e,t){const n=Z.fromDurationLike(t),s=Gt(e);return se.fromDateTimes(s,s.plus(n))}static before(e,t){const n=Z.fromDurationLike(t),s=Gt(e);return se.fromDateTimes(s.minus(n),s)}static fromISO(e,t){const[n,s]=(e||"").split("/",2);if(n&&s){let i,o;try{i=U.fromISO(n,t),o=i.isValid}catch{o=!1}let a,l;try{a=U.fromISO(s,t),l=a.isValid}catch{l=!1}if(o&&l)return se.fromDateTimes(i,a);if(o){const u=Z.fromISO(s,t);if(u.isValid)return se.after(i,u)}else if(l){const u=Z.fromISO(n,t);if(u.isValid)return se.before(a,u)}}return se.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid&&this.e?this.e.minus(1):null}get isValid(){return this.invalidReason===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(e).get(e):NaN}count(e="milliseconds",t){if(!this.isValid)return NaN;const n=this.start.startOf(e,t);let s;return t?.useLocaleWeeks?s=this.end.reconfigure({locale:n.locale}):s=this.end,s=s.startOf(e,t),Math.floor(s.diff(n,e).get(e))+(s.valueOf()!==this.end.valueOf())}hasSame(e){return this.isValid?this.isEmpty()||this.e.minus(1).hasSame(this.s,e):!1}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return this.isValid?this.s>e:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:t}={}){return this.isValid?se.fromDateTimes(e||this.s,t||this.e):this}splitAt(...e){if(!this.isValid)return[];const t=e.map(Gt).filter(o=>this.contains(o)).sort((o,a)=>o.toMillis()-a.toMillis()),n=[];let{s}=this,i=0;for(;s<this.e;){const o=t[i]||this.e,a=+o>+this.e?this.e:o;n.push(se.fromDateTimes(s,a)),s=a,i+=1}return n}splitBy(e){const t=Z.fromDurationLike(e);if(!this.isValid||!t.isValid||t.as("milliseconds")===0)return[];let{s:n}=this,s=1,i;const o=[];for(;n<this.e;){const a=this.start.plus(t.mapUnits(l=>l*s));i=+a>+this.e?this.e:a,o.push(se.fromDateTimes(n,i)),n=i,s+=1}return o}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return this.isValid?+this.e==+e.s:!1}abutsEnd(e){return this.isValid?+e.e==+this.s:!1}engulfs(e){return this.isValid?this.s<=e.s&&this.e>=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;const t=this.s>e.s?this.s:e.s,n=this.e<e.e?this.e:e.e;return t>=n?null:se.fromDateTimes(t,n)}union(e){if(!this.isValid)return this;const t=this.s<e.s?this.s:e.s,n=this.e>e.e?this.e:e.e;return se.fromDateTimes(t,n)}static merge(e){const[t,n]=e.sort((s,i)=>s.s-i.s).reduce(([s,i],o)=>i?i.overlaps(o)||i.abutsStart(o)?[s,i.union(o)]:[s.concat([i]),o]:[s,o],[[],null]);return n&&t.push(n),t}static xor(e){let t=null,n=0;const s=[],i=e.map(l=>[{time:l.s,type:"s"},{time:l.e,type:"e"}]),o=Array.prototype.concat(...i),a=o.sort((l,u)=>l.time-u.time);for(const l of a)n+=l.type==="s"?1:-1,n===1?t=l.time:(t&&+t!=+l.time&&s.push(se.fromDateTimes(t,l.time)),t=null);return se.merge(s)}difference(...e){return se.xor([this].concat(e)).map(t=>this.intersection(t)).filter(t=>t&&!t.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:Rt}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=sr,t={}){return this.isValid?be.create(this.s.loc.clone(t),e).formatInterval(this):Rt}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:Rt}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:Rt}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:Rt}toFormat(e,{separator:t=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`:Rt}toDuration(e,t){return this.isValid?this.e.diff(this.s,e,t):Z.invalid(this.invalidReason)}mapEndpoints(e){return se.fromDateTimes(e(this.s),e(this.e))}}class pr{static hasDST(e=ne.defaultZone){const t=U.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return Ge.isValidZone(e)}static normalizeZone(e){return rt(e,ne.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getWeekendDays().slice()}static months(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null,outputCalendar:i="gregory"}={}){return(s||K.create(t,n,i)).months(e)}static monthsFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null,outputCalendar:i="gregory"}={}){return(s||K.create(t,n,i)).months(e,!0)}static weekdays(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null}={}){return(s||K.create(t,n,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null}={}){return(s||K.create(t,n,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return K.create(e).meridiems()}static eras(e="short",{locale:t=null}={}){return K.create(t,null,"gregory").eras(e)}static features(){return{relative:Ls(),localeWeek:Ms()}}}function si(r,e){const t=s=>s.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),n=t(e)-t(r);return Math.floor(Z.fromMillis(n).as("days"))}function Il(r,e,t){const n=[["years",(l,u)=>u.year-l.year],["quarters",(l,u)=>u.quarter-l.quarter+(u.year-l.year)*4],["months",(l,u)=>u.month-l.month+(u.year-l.year)*12],["weeks",(l,u)=>{const c=si(l,u);return(c-c%7)/7}],["days",si]],s={},i=r;let o,a;for(const[l,u]of n)t.indexOf(l)>=0&&(o=l,s[l]=u(r,e),a=i.plus(s),a>e?(s[l]--,r=i.plus(s),r>e&&(a=r,s[l]--,r=i.plus(s))):r=a);return[r,s,a,o]}function Cl(r,e,t,n){let[s,i,o,a]=Il(r,e,t);const l=e-s,u=t.filter(f=>["hours","minutes","seconds","milliseconds"].indexOf(f)>=0);u.length===0&&(o<e&&(o=s.plus({[a]:1})),o!==s&&(i[a]=(i[a]||0)+l/(o-s)));const c=Z.fromObject(i,n);return u.length>0?Z.fromMillis(l,n).shiftTo(...u).plus(c):c}const Nl="missing Intl.DateTimeFormat.formatToParts support";function Y(r,e=t=>t){return{regex:r,deser:([t])=>e(ba(t))}}const ii="[ \xA0]",oi=new RegExp(ii,"g");function Rl(r){return r.replace(/\./g,"\\.?").replace(oi,ii)}function ai(r){return r.replace(/\./g,"").replace(oi," ").toLowerCase()}function Be(r,e){return r===null?null:{regex:RegExp(r.map(Rl).join("|")),deser:([t])=>r.findIndex(n=>ai(t)===ai(n))+e}}function li(r,e){return{regex:r,deser:([,t,n])=>hr(t,n),groups:e}}function gr(r){return{regex:r,deser:([e])=>e}}function Fl(r){return r.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Ll(r,e){const t=je(e),n=je(e,"{2}"),s=je(e,"{3}"),i=je(e,"{4}"),o=je(e,"{6}"),a=je(e,"{1,2}"),l=je(e,"{1,3}"),u=je(e,"{1,6}"),c=je(e,"{1,9}"),f=je(e,"{2,4}"),h=je(e,"{4,6}"),d=m=>({regex:RegExp(Fl(m.val)),deser:([y])=>y,literal:!0}),g=(m=>{if(r.literal)return d(m);switch(m.val){case"G":return Be(e.eras("short"),0);case"GG":return Be(e.eras("long"),0);case"y":return Y(u);case"yy":return Y(f,tn);case"yyyy":return Y(i);case"yyyyy":return Y(h);case"yyyyyy":return Y(o);case"M":return Y(a);case"MM":return Y(n);case"MMM":return Be(e.months("short",!0),1);case"MMMM":return Be(e.months("long",!0),1);case"L":return Y(a);case"LL":return Y(n);case"LLL":return Be(e.months("short",!1),1);case"LLLL":return Be(e.months("long",!1),1);case"d":return Y(a);case"dd":return Y(n);case"o":return Y(l);case"ooo":return Y(s);case"HH":return Y(n);case"H":return Y(a);case"hh":return Y(n);case"h":return Y(a);case"mm":return Y(n);case"m":return Y(a);case"q":return Y(a);case"qq":return Y(n);case"s":return Y(a);case"ss":return Y(n);case"S":return Y(l);case"SSS":return Y(s);case"u":return gr(c);case"uu":return gr(a);case"uuu":return Y(t);case"a":return Be(e.meridiems(),0);case"kkkk":return Y(i);case"kk":return Y(f,tn);case"W":return Y(a);case"WW":return Y(n);case"E":case"c":return Y(t);case"EEE":return Be(e.weekdays("short",!1),1);case"EEEE":return Be(e.weekdays("long",!1),1);case"ccc":return Be(e.weekdays("short",!0),1);case"cccc":return Be(e.weekdays("long",!0),1);case"Z":case"ZZ":return li(new RegExp(`([+-]${a.source})(?::(${n.source}))?`),2);case"ZZZ":return li(new RegExp(`([+-]${a.source})(${n.source})?`),2);case"z":return gr(/[a-z_+-/]{1,256}?/i);case" ":return gr(/[^\S\n\r]/);default:return d(m)}})(r)||{invalidReason:Nl};return g.token=r,g}const Ml={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function Pl(r,e,t){const{type:n,value:s}=r;if(n==="literal"){const l=/^\s+$/.test(s);return{literal:!l,val:l?" ":s}}const i=e[n];let o=n;n==="hour"&&(e.hour12!=null?o=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?o="hour12":o="hour24":o=t.hour12?"hour12":"hour24");let a=Ml[o];if(typeof a=="object"&&(a=a[i]),a)return{literal:!1,val:a}}function xl(r){return[`^${r.map(t=>t.regex).reduce((t,n)=>`${t}(${n.source})`,"")}$`,r]}function Dl(r,e,t){const n=r.match(e);if(n){const s={};let i=1;for(const o in t)if(kt(t,o)){const a=t[o],l=a.groups?a.groups+1:1;!a.literal&&a.token&&(s[a.token.val[0]]=a.deser(n.slice(i,i+l))),i+=l}return[n,s]}else return[n,{}]}function jl(r){const e=i=>{switch(i){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}};let t=null,n;return W(r.z)||(t=Ge.create(r.z)),W(r.Z)||(t||(t=new Ee(r.Z)),n=r.Z),W(r.q)||(r.M=(r.q-1)*3+1),W(r.h)||(r.h<12&&r.a===1?r.h+=12:r.h===12&&r.a===0&&(r.h=0)),r.G===0&&r.y&&(r.y=-r.y),W(r.u)||(r.S=Qr(r.u)),[Object.keys(r).reduce((i,o)=>{const a=e(o);return a&&(i[a]=r[o]),i},{}),t,n]}let on=null;function Ul(){return on||(on=U.fromMillis(1555555555555)),on}function Bl(r,e){if(r.literal)return r;const t=be.macroTokenToFormatOpts(r.val),n=fi(t,e);return n==null||n.includes(void 0)?r:n}function ci(r,e){return Array.prototype.concat(...r.map(t=>Bl(t,e)))}class ui{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=ci(be.parseFormat(t),e),this.units=this.tokens.map(n=>Ll(n,e)),this.disqualifyingUnit=this.units.find(n=>n.invalidReason),!this.disqualifyingUnit){const[n,s]=xl(this.units);this.regex=RegExp(n,"i"),this.handlers=s}}explainFromTokens(e){if(this.isValid){const[t,n]=Dl(e,this.regex,this.handlers),[s,i,o]=n?jl(n):[null,null,void 0];if(kt(n,"a")&&kt(n,"H"))throw new vt("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:t,matches:n,result:s,zone:i,specificOffset:o}}else return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}}function hi(r,e,t){return new ui(r,t).explainFromTokens(e)}function $l(r,e,t){const{result:n,zone:s,specificOffset:i,invalidReason:o}=hi(r,e,t);return[n,s,i,o]}function fi(r,e){if(!r)return null;const n=be.create(e,r).dtFormatter(Ul()),s=n.formatToParts(),i=n.resolvedOptions();return s.map(o=>Pl(o,r,i))}const an="Invalid DateTime",Wl=864e13;function Jt(r){return new Ue("unsupported zone",`the zone "${r.name}" is not supported`)}function ln(r){return r.weekData===null&&(r.weekData=ar(r.c)),r.weekData}function cn(r){return r.localWeekData===null&&(r.localWeekData=ar(r.c,r.loc.getMinDaysInFirstWeek(),r.loc.getStartOfWeek())),r.localWeekData}function dt(r,e){const t={ts:r.ts,zone:r.zone,c:r.c,o:r.o,loc:r.loc,invalid:r.invalid};return new U({...t,...e,old:t})}function di(r,e,t){let n=r-e*60*1e3;const s=t.offset(n);if(e===s)return[n,e];n-=(s-e)*60*1e3;const i=t.offset(n);return s===i?[n,s]:[r-Math.min(s,i)*60*1e3,Math.max(s,i)]}function mr(r,e){r+=e*60*1e3;const t=new Date(r);return{year:t.getUTCFullYear(),month:t.getUTCMonth()+1,day:t.getUTCDate(),hour:t.getUTCHours(),minute:t.getUTCMinutes(),second:t.getUTCSeconds(),millisecond:t.getUTCMilliseconds()}}function yr(r,e,t){return di(ur(r),e,t)}function pi(r,e){const t=r.o,n=r.c.year+Math.trunc(e.years),s=r.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,i={...r.c,year:n,month:s,day:Math.min(r.c.day,cr(n,s))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},o=Z.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),a=ur(i);let[l,u]=di(a,t,r.zone);return o!==0&&(l+=o,u=r.zone.offset(l)),{ts:l,o:u}}function Ft(r,e,t,n,s,i){const{setZone:o,zone:a}=t;if(r&&Object.keys(r).length!==0||e){const l=e||a,u=U.fromObject(r,{...t,zone:l,specificOffset:i});return o?u:u.setZone(a)}else return U.invalid(new Ue("unparsable",`the input "${s}" can't be parsed as ${n}`))}function wr(r,e,t=!0){return r.isValid?be.create(K.create("en-US"),{allowZ:t,forceSimple:!0}).formatDateTimeFromString(r,e):null}function un(r,e){const t=r.c.year>9999||r.c.year<0;let n="";return t&&r.c.year>=0&&(n+="+"),n+=ce(r.c.year,t?6:4),e?(n+="-",n+=ce(r.c.month),n+="-",n+=ce(r.c.day)):(n+=ce(r.c.month),n+=ce(r.c.day)),n}function gi(r,e,t,n,s,i){let o=ce(r.c.hour);return e?(o+=":",o+=ce(r.c.minute),(r.c.millisecond!==0||r.c.second!==0||!t)&&(o+=":")):o+=ce(r.c.minute),(r.c.millisecond!==0||r.c.second!==0||!t)&&(o+=ce(r.c.second),(r.c.millisecond!==0||!n)&&(o+=".",o+=ce(r.c.millisecond,3))),s&&(r.isOffsetFixed&&r.offset===0&&!i?o+="Z":r.o<0?(o+="-",o+=ce(Math.trunc(-r.o/60)),o+=":",o+=ce(Math.trunc(-r.o%60))):(o+="+",o+=ce(Math.trunc(r.o/60)),o+=":",o+=ce(Math.trunc(r.o%60)))),i&&(o+="["+r.zone.ianaName+"]"),o}const mi={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},ql={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},Vl={ordinal:1,hour:0,minute:0,second:0,millisecond:0},yi=["year","month","day","hour","minute","second","millisecond"],Hl=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],zl=["year","ordinal","hour","minute","second","millisecond"];function Jl(r){const e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[r.toLowerCase()];if(!e)throw new zn(r);return e}function wi(r){switch(r.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return Jl(r)}}function Zl(r){if(Zt===void 0&&(Zt=ne.now()),r.type!=="iana")return r.offset(Zt);const e=r.name;let t=hn.get(e);return t===void 0&&(t=r.offset(Zt),hn.set(e,t)),t}function bi(r,e){const t=rt(e.zone,ne.defaultZone);if(!t.isValid)return U.invalid(Jt(t));const n=K.fromObject(e);let s,i;if(W(r.year))s=ne.now();else{for(const l of yi)W(r[l])&&(r[l]=mi[l]);const o=Rs(r)||Fs(r);if(o)return U.invalid(o);const a=Zl(t);[s,i]=yr(r,a,t)}return new U({ts:s,zone:t,loc:n,o:i})}function Si(r,e,t){const n=W(t.round)?!0:t.round,s=(o,a)=>(o=en(o,n||t.calendary?0:2,!0),e.loc.clone(t).relFormatter(t).format(o,a)),i=o=>t.calendary?e.hasSame(r,o)?0:e.startOf(o).diff(r.startOf(o),o).get(o):e.diff(r,o).get(o);if(t.unit)return s(i(t.unit),t.unit);for(const o of t.units){const a=i(o);if(Math.abs(a)>=1)return s(a,o)}return s(r>e?-0:0,t.units[t.units.length-1])}function _i(r){let e={},t;return r.length>0&&typeof r[r.length-1]=="object"?(e=r[r.length-1],t=Array.from(r).slice(0,r.length-1)):t=Array.from(r),[e,t]}let Zt;const hn=new Map;class U{constructor(e){const t=e.zone||ne.defaultZone;let n=e.invalid||(Number.isNaN(e.ts)?new Ue("invalid input"):null)||(t.isValid?null:Jt(t));this.ts=W(e.ts)?ne.now():e.ts;let s=null,i=null;if(!n)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(t))[s,i]=[e.old.c,e.old.o];else{const a=nt(e.o)&&!e.old?e.o:t.offset(this.ts);s=mr(this.ts,a),n=Number.isNaN(s.year)?new Ue("invalid input"):null,s=n?null:s,i=n?null:a}this._zone=t,this.loc=e.loc||K.create(),this.invalid=n,this.weekData=null,this.localWeekData=null,this.c=s,this.o=i,this.isLuxonDateTime=!0}static now(){return new U({})}static local(){const[e,t]=_i(arguments),[n,s,i,o,a,l,u]=t;return bi({year:n,month:s,day:i,hour:o,minute:a,second:l,millisecond:u},e)}static utc(){const[e,t]=_i(arguments),[n,s,i,o,a,l,u]=t;return e.zone=Ee.utcInstance,bi({year:n,month:s,day:i,hour:o,minute:a,second:l,millisecond:u},e)}static fromJSDate(e,t={}){const n=Ea(e)?e.valueOf():NaN;if(Number.isNaN(n))return U.invalid("invalid input");const s=rt(t.zone,ne.defaultZone);return s.isValid?new U({ts:n,zone:s,loc:K.fromObject(t)}):U.invalid(Jt(s))}static fromMillis(e,t={}){if(nt(e))return e<-864e13||e>Wl?U.invalid("Timestamp out of range"):new U({ts:e,zone:rt(t.zone,ne.defaultZone),loc:K.fromObject(t)});throw new we(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,t={}){if(nt(e))return new U({ts:e*1e3,zone:rt(t.zone,ne.defaultZone),loc:K.fromObject(t)});throw new we("fromSeconds requires a numerical input")}static fromObject(e,t={}){e=e||{};const n=rt(t.zone,ne.defaultZone);if(!n.isValid)return U.invalid(Jt(n));const s=K.fromObject(t),i=fr(e,wi),{minDaysInFirstWeek:o,startOfWeek:a}=Ns(i,s),l=ne.now(),u=W(t.specificOffset)?n.offset(l):t.specificOffset,c=!W(i.ordinal),f=!W(i.year),h=!W(i.month)||!W(i.day),d=f||h,p=i.weekYear||i.weekNumber;if((d||c)&&p)throw new vt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(h&&c)throw new vt("Can't mix ordinal dates with month/day");const g=p||i.weekday&&!d;let m,y,w=mr(l,u);g?(m=Hl,y=ql,w=ar(w,o,a)):c?(m=zl,y=Vl,w=Kr(w)):(m=yi,y=mi);let _=!1;for(const P of m){const J=i[P];W(J)?_?i[P]=y[P]:i[P]=w[P]:_=!0}const b=g?_a(i,o,a):c?va(i):Rs(i),k=b||Fs(i);if(k)return U.invalid(k);const S=g?Is(i,o,a):c?Cs(i):i,[E,N]=yr(S,u,n),D=new U({ts:E,zone:n,o:N,loc:s});return i.weekday&&d&&e.weekday!==D.weekday?U.invalid("mismatched weekday",`you can't specify both a weekday of ${i.weekday} and a date of ${D.toISO()}`):D.isValid?D:U.invalid(D.invalid)}static fromISO(e,t={}){const[n,s]=dl(e);return Ft(n,s,t,"ISO 8601",e)}static fromRFC2822(e,t={}){const[n,s]=pl(e);return Ft(n,s,t,"RFC 2822",e)}static fromHTTP(e,t={}){const[n,s]=gl(e);return Ft(n,s,t,"HTTP",t)}static fromFormat(e,t,n={}){if(W(e)||W(t))throw new we("fromFormat requires an input string and a format");const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0}),[a,l,u,c]=$l(o,e,t);return c?U.invalid(c):Ft(a,l,n,`format ${t}`,e,u)}static fromString(e,t,n={}){return U.fromFormat(e,t,n)}static fromSQL(e,t={}){const[n,s]=vl(e);return Ft(n,s,t,"SQL",e)}static invalid(e,t=null){if(!e)throw new we("need to specify a reason the DateTime is invalid");const n=e instanceof Ue?e:new Ue(e,t);if(ne.throwOnInvalid)throw new Go(n);return new U({invalid:n})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){const n=fi(e,K.fromObject(t));return n?n.map(s=>s?s.val:null).join(""):null}static expandFormat(e,t={}){return ci(be.parseFormat(e),K.fromObject(t)).map(s=>s.val).join("")}static resetCache(){Zt=void 0,hn.clear()}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?ln(this).weekYear:NaN}get weekNumber(){return this.isValid?ln(this).weekNumber:NaN}get weekday(){return this.isValid?ln(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?cn(this).weekday:NaN}get localWeekNumber(){return this.isValid?cn(this).weekNumber:NaN}get localWeekYear(){return this.isValid?cn(this).weekYear:NaN}get ordinal(){return this.isValid?Kr(this.c).ordinal:NaN}get monthShort(){return this.isValid?pr.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?pr.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?pr.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?pr.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];const e=864e5,t=6e4,n=ur(this.c),s=this.zone.offset(n-e),i=this.zone.offset(n+e),o=this.zone.offset(n-s*t),a=this.zone.offset(n-i*t);if(o===a)return[this];const l=n-o*t,u=n-a*t,c=mr(l,o),f=mr(u,a);return c.hour===f.hour&&c.minute===f.minute&&c.second===f.second&&c.millisecond===f.millisecond?[dt(this,{ts:l}),dt(this,{ts:u})]:[this]}get isInLeapYear(){return Wt(this.year)}get daysInMonth(){return cr(this.year,this.month)}get daysInYear(){return this.isValid?Et(this.year):NaN}get weeksInWeekYear(){return this.isValid?qt(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?qt(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){const{locale:t,numberingSystem:n,calendar:s}=be.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:n,outputCalendar:s}}toUTC(e=0,t={}){return this.setZone(Ee.instance(e),t)}toLocal(){return this.setZone(ne.defaultZone)}setZone(e,{keepLocalTime:t=!1,keepCalendarTime:n=!1}={}){if(e=rt(e,ne.defaultZone),e.equals(this.zone))return this;if(e.isValid){let s=this.ts;if(t||n){const i=e.offset(this.ts),o=this.toObject();[s]=yr(o,i,e)}return dt(this,{ts:s,zone:e})}else return U.invalid(Jt(e))}reconfigure({locale:e,numberingSystem:t,outputCalendar:n}={}){const s=this.loc.clone({locale:e,numberingSystem:t,outputCalendar:n});return dt(this,{loc:s})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;const t=fr(e,wi),{minDaysInFirstWeek:n,startOfWeek:s}=Ns(t,this.loc),i=!W(t.weekYear)||!W(t.weekNumber)||!W(t.weekday),o=!W(t.ordinal),a=!W(t.year),l=!W(t.month)||!W(t.day),u=a||l,c=t.weekYear||t.weekNumber;if((u||o)&&c)throw new vt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(l&&o)throw new vt("Can't mix ordinal dates with month/day");let f;i?f=Is({...ar(this.c,n,s),...t},n,s):W(t.ordinal)?(f={...this.toObject(),...t},W(t.day)&&(f.day=Math.min(cr(f.year,f.month),f.day))):f=Cs({...Kr(this.c),...t});const[h,d]=yr(f,this.o,this.zone);return dt(this,{ts:h,o:d})}plus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e);return dt(this,pi(this,t))}minus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e).negate();return dt(this,pi(this,t))}startOf(e,{useLocaleWeeks:t=!1}={}){if(!this.isValid)return this;const n={},s=Z.normalizeUnit(e);switch(s){case"years":n.month=1;case"quarters":case"months":n.day=1;case"weeks":case"days":n.hour=0;case"hours":n.minute=0;case"minutes":n.second=0;case"seconds":n.millisecond=0;break}if(s==="weeks")if(t){const i=this.loc.getStartOfWeek(),{weekday:o}=this;o<i&&(n.weekNumber=this.weekNumber-1),n.weekday=i}else n.weekday=1;if(s==="quarters"){const i=Math.ceil(this.month/3);n.month=(i-1)*3+1}return this.set(n)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?be.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):an}toLocaleString(e=sr,t={}){return this.isValid?be.create(this.loc.clone(t),e).formatDateTime(this):an}toLocaleParts(e={}){return this.isValid?be.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:t=!1,suppressMilliseconds:n=!1,includeOffset:s=!0,extendedZone:i=!1}={}){if(!this.isValid)return null;const o=e==="extended";let a=un(this,o);return a+="T",a+=gi(this,o,t,n,s,i),a}toISODate({format:e="extended"}={}){return this.isValid?un(this,e==="extended"):null}toISOWeekDate(){return wr(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:t=!1,includeOffset:n=!0,includePrefix:s=!1,extendedZone:i=!1,format:o="extended"}={}){return this.isValid?(s?"T":"")+gi(this,o==="extended",t,e,n,i):null}toRFC2822(){return wr(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return wr(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?un(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:t=!1,includeOffsetSpace:n=!0}={}){let s="HH:mm:ss.SSS";return(t||e)&&(n&&(s+=" "),t?s+="z":e&&(s+="ZZ")),wr(this,s,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():an}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};const t={...this.c};return e.includeConfig&&(t.outputCalendar=this.outputCalendar,t.numberingSystem=this.loc.numberingSystem,t.locale=this.loc.locale),t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t="milliseconds",n={}){if(!this.isValid||!e.isValid)return Z.invalid("created by diffing an invalid DateTime");const s={locale:this.locale,numberingSystem:this.numberingSystem,...n},i=Ta(t).map(Z.normalizeUnit),o=e.valueOf()>this.valueOf(),a=o?this:e,l=o?e:this,u=Cl(a,l,i,s);return o?u.negate():u}diffNow(e="milliseconds",t={}){return this.diff(U.now(),e,t)}until(e){return this.isValid?se.fromDateTimes(this,e):this}hasSame(e,t,n){if(!this.isValid)return!1;const s=e.valueOf(),i=this.setZone(e.zone,{keepLocalTime:!0});return i.startOf(t,n)<=s&&s<=i.endOf(t,n)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;const t=e.base||U.fromObject({},{zone:this.zone}),n=e.padding?this<t?-e.padding:e.padding:0;let s=["years","months","days","hours","minutes","seconds"],i=e.unit;return Array.isArray(e.unit)&&(s=e.unit,i=void 0),Si(t,this.plus(n),{...e,numeric:"always",units:s,unit:i})}toRelativeCalendar(e={}){return this.isValid?Si(e.base||U.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...e){if(!e.every(U.isDateTime))throw new we("min requires all arguments be DateTimes");return Ps(e,t=>t.valueOf(),Math.min)}static max(...e){if(!e.every(U.isDateTime))throw new we("max requires all arguments be DateTimes");return Ps(e,t=>t.valueOf(),Math.max)}static fromFormatExplain(e,t,n={}){const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0});return hi(o,e,t)}static fromStringExplain(e,t,n={}){return U.fromFormatExplain(e,t,n)}static buildFormatParser(e,t={}){const{locale:n=null,numberingSystem:s=null}=t,i=K.fromOpts({locale:n,numberingSystem:s,defaultToEN:!0});return new ui(i,e)}static fromFormatParser(e,t,n={}){if(W(e)||W(t))throw new we("fromFormatParser requires an input string and a format parser");const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0});if(!o.equals(t.locale))throw new we(`fromFormatParser called with a locale of ${o}, but the format parser was created for ${t.locale}`);const{result:a,zone:l,specificOffset:u,invalidReason:c}=t.explainFromTokens(e);return c?U.invalid(c):Ft(a,l,n,`format ${t.format}`,e,u)}static get DATE_SHORT(){return sr}static get DATE_MED(){return Jn}static get DATE_MED_WITH_WEEKDAY(){return Xo}static get DATE_FULL(){return Zn}static get DATE_HUGE(){return Gn}static get TIME_SIMPLE(){return Yn}static get TIME_WITH_SECONDS(){return Kn}static get TIME_WITH_SHORT_OFFSET(){return Xn}static get TIME_WITH_LONG_OFFSET(){return Qn}static get TIME_24_SIMPLE(){return es}static get TIME_24_WITH_SECONDS(){return ts}static get TIME_24_WITH_SHORT_OFFSET(){return rs}static get TIME_24_WITH_LONG_OFFSET(){return ns}static get DATETIME_SHORT(){return ss}static get DATETIME_SHORT_WITH_SECONDS(){return is}static get DATETIME_MED(){return os}static get DATETIME_MED_WITH_SECONDS(){return as}static get DATETIME_MED_WITH_WEEKDAY(){return Qo}static get DATETIME_FULL(){return ls}static get DATETIME_FULL_WITH_SECONDS(){return cs}static get DATETIME_HUGE(){return us}static get DATETIME_HUGE_WITH_SECONDS(){return hs}}function Gt(r){if(U.isDateTime(r))return r;if(r&&r.valueOf&&nt(r.valueOf()))return U.fromJSDate(r);if(r&&typeof r=="object")return U.fromObject(r);throw new we(`Unknown datetime argument: ${r}, of type ${typeof r}`)}const fn={};let dn;const Gl=new Uint8Array(16),ge=[];for(let r=0;r<256;++r)ge.push((r+256).toString(16).slice(1));function Yl(r,e,t){return r.msecs??=-1/0,r.seq??=0,e>r.msecs?(r.seq=t[6]<<23|t[7]<<16|t[8]<<8|t[9],r.msecs=e):(r.seq=Math.trunc(r.seq+1),r.seq===0&&r.msecs++),r}function Kl(r,e,t,n,s=0){return n||(n=new Uint8Array(16),s=0),e??=Date.now(),t??=r[6]*127<<24|r[7]<<16|r[8]<<8|r[9],n[s++]=e/1099511627776&255,n[s++]=e/4294967296&255,n[s++]=e/16777216&255,n[s++]=e/65536&255,n[s++]=e/256&255,n[s++]=e&255,n[s++]=112|t>>>28&15,n[s++]=t>>>20&255,n[s++]=128|t>>>14&63,n[s++]=t>>>6&255,n[s++]=t<<2&255|r[10]&3,n[s++]=r[11],n[s++]=r[12],n[s++]=r[13],n[s++]=r[14],n[s++]=r[15],n}function Xl(r,e=0){return(ge[r[e]]+ge[r[e+1]]+ge[r[e+2]]+ge[r[e+3]]+"-"+ge[r[e+4]]+ge[r[e+5]]+"-"+ge[r[e+6]]+ge[r[e+7]]+"-"+ge[r[e+8]]+ge[r[e+9]]+"-"+ge[r[e+10]]+ge[r[e+11]]+ge[r[e+12]]+ge[r[e+13]]+ge[r[e+14]]+ge[r[e+15]]).toLowerCase()}function Ql(){const r=Date.now();if(!dn){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported.");dn=crypto.getRandomValues.bind(crypto)}const e=dn(Gl);Yl(fn,r,e);const t=Kl(e,fn.msecs,fn.seq,void 0,void 0);return Xl(t)}const ec=/[&<>'"]/g,tc=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34)/g,rc={"&":"&amp","<":"&lt",">":"&gt","'":"&#39",'"':"&quot"},nc={"&amp":"&","&#38":"&","&lt":"<","&#60":"<","&gt":">","&#62":">","&apos":"'","&#39":"'","&quot":'"',"&#34":'"'};class sc{getRandom(e=8){return[...Array(e)].map(()=>Math.trunc(Math.random()*36).toString(36)).join("")}getUniqId(){return"xxxxxxxx-xlsx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=Math.trunc(Math.random()*16);return(e==="x"?t:t&3|8).toString(16)})}getUuidRfc4122(){return Ql()}encode(e){return R.isString(e)?e.replace(ec,t=>rc[t]):e}decode(e){return R.isString(e)?e.replace(tc,t=>nc[t]):e}toNumber(e){const t=Number.parseFloat(e);return R.isNumber(t)?t:0}toInteger(e){return this.toNumber(Number.parseInt(e,10))}toBoolean(e,t=[]){const n=R.isString(e)?e.toLowerCase():e;return["true","y","1",1,!0,...t].includes(n)}toCamelCase(e){if(!R.isStringFilled(e))return e;const t=/[-_\s]+(.)?/g;return t.test(e)?(e=e.toLowerCase(),e=e.replace(t,(n,s)=>s?s.toUpperCase():""),e[0].toLowerCase()+e.substring(1)):e.match(/^[A-Z]+$/)?e.toLowerCase():e[0].toLowerCase()+e.slice(1)}toPascalCase(e){return R.isStringFilled(e)?this.capitalize(this.toCamelCase(e)):e}toKebabCase(e){if(!R.isStringFilled(e))return e;const t=e.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g);return t?t.map(n=>n.toLowerCase()).join("-"):e}capitalize(e){return R.isStringFilled(e)?e[0].toUpperCase()+e.substring(1):e}numberFormat(e,t=0,n=".",s=","){const i=Number.isFinite(e)?e:0,o=Number.isFinite(t)?Math.abs(t):0,a=(o?((l,u)=>{const c=Math.pow(10,u);return Math.round(l*c)/c})(i,o):Math.round(i)).toString().split(".");return a[0].length>3&&(a[0]=a[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,s)),(a[1]||"").length<o&&(a[1]=a[1]||"",a[1]+=new Array(o-a[1].length+1).join("0")),a.join(n)}toDateTime(e,t,n){return!(typeof t>"u")&&R.isStringFilled(t)?U.fromFormat(e,t,n):U.fromISO(e,n)}getDateForLog(){return U.now().toFormat("y-MM-dd HH:mm:ss")}buildQueryString(e){let t="";for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n];R.isArray(s)?s.forEach((i,o)=>{t+=encodeURIComponent(n+"["+o+"]")+"="+encodeURIComponent(i)+"&"}):t+=encodeURIComponent(n)+"="+encodeURIComponent(s)+"&"}return t.length>0&&(t=t.substring(0,t.length-1)),t}}const $=new sc;let de="";try{de=navigator?.userAgent.toLowerCase()}catch{de="?"}let ic=class{isOpera(){return de.includes("opera")}isIE(){return"attachEvent"in document&&!this.isOpera()}isIE6(){return de.includes("msie 6")}isIE7(){return de.includes("msie 7")}isIE8(){return de.includes("msie 8")}isIE9(){return"documentMode"in document&&document.documentMode>=9}isIE10(){return"documentMode"in document&&document.documentMode>=10}isSafari(){return de.includes("safari")&&!de.includes("chrome")}isFirefox(){return de.includes("firefox")}isChrome(){return de.includes("chrome")}detectIEVersion(){if(this.isOpera()||this.isSafari()||this.isFirefox()||this.isChrome())return-1;let e=-1;if(window.MSStream&&!window.ActiveXObject&&"ActiveXObject"in window?e=11:this.isIE10()?e=10:this.isIE9()?e=9:this.isIE()&&(e=8),e===-1||e===8){if(navigator.appName==="Microsoft Internet Explorer"){const t=new RegExp("MSIE ([0-9]+[.0-9]*)"),n=navigator.userAgent.match(t);R.isArrayLike(n)&&n.length>0&&(e=Number.parseFloat(n[1]))}if(navigator.appName==="Netscape"){e=11;const t=new RegExp("Trident/.*rv:([0-9]+[.0-9]*)");if(t.exec(navigator.userAgent)!=null){const n=navigator.userAgent.match(t);R.isArrayLike(n)&&n.length>0&&(e=Number.parseFloat(n[1]))}}}return e}isIE11(){return this.detectIEVersion()>=11}isMac(){return de.includes("macintosh")}isWin(){return de.includes("windows")}isLinux(){return de.includes("linux")&&!this.isAndroid()}isAndroid(){return de.includes("android")}isIPad(){return de.includes("ipad;")||this.isMac()&&this.isTouchDevice()}isIPhone(){return de.includes("iphone;")}isIOS(){return this.isIPad()||this.isIPhone()}isMobile(){return this.isIPhone()||this.isIPad()||this.isAndroid()||de.includes("mobile")||de.includes("touch")}isRetina(){return(window.devicePixelRatio&&window.devicePixelRatio>=2)===!0}isTouchDevice(){return"ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0}isDoctype(e){const t=e||document;return t.compatMode?t.compatMode==="CSS1Compat":t.documentElement&&t.documentElement.clientHeight}isLocalStorageSupported(){try{return localStorage.setItem("test","test"),localStorage.removeItem("test"),!0}catch{return!1}}detectAndroidVersion(){const e=new RegExp("Android ([0-9]+[.0-9]*)");if(e.exec(navigator.userAgent)!=null){const t=navigator.userAgent.match(e);if(R.isArrayLike(t)&&t.length>0)return Number.parseFloat(t[1])}return 0}};const vi=new ic,ki={sleep:1e3,speed:.001,amount:30},pn={sleep:600,speed:.01,amount:30*5};var Ei=(r=>(r.undefined="UNDEFINED",r.lead="CRM_LEAD",r.deal="CRM_DEAL",r.contact="CRM_CONTACT",r.company="CRM_COMPANY",r.oldInvoice="CRM_INVOICE",r.invoice="CRM_SMART_INVOICE",r.quote="CRM_QUOTE",r.requisite="CRM_REQUISITE",r))(Ei||{}),Ti=(r=>(r[r.undefined=0]="undefined",r[r.lead=1]="lead",r[r.deal=2]="deal",r[r.contact=3]="contact",r[r.company=4]="company",r[r.oldInvoice=5]="oldInvoice",r[r.invoice=31]="invoice",r[r.quote=7]="quote",r[r.requisite=8]="requisite",r))(Ti||{}),ee=(r=>(r.App="app",r.Profile="profile",r.Currency="currency",r.AppOptions="appOptions",r.UserOptions="userOptions",r))(ee||{});const pt={Free:"F",Demo:"D",Trial:"T",Paid:"P",Local:"L",Subscription:"S"},Oi={[pt.Free]:"Free",[pt.Demo]:"Demo",[pt.Trial]:"Trial",[pt.Paid]:"Paid",[pt.Local]:"Local",[pt.Subscription]:"Subscription"},gt={MainSettings:"MainSettings",UfList:"UfList",UfPage:"UfPage"};var Ye=(r=>(r.NotSet="notSet",r.JsonArray="jsonArray",r.JsonObject="jsonObject",r.FloatVal="float",r.IntegerVal="integer",r.BoolYN="boolYN",r.StringVal="string",r))(Ye||{}),te=(r=>(r.Undefined="undefined",r.WebSocket="webSocket",r.LongPolling="longPolling",r))(te||{}),Ce=(r=>(r.PullConfig="bx-pull-config",r.WebsocketBlocked="bx-pull-websocket-blocked",r.LongPollingBlocked="bx-pull-longpolling-blocked",r.LoggingEnabled="bx-pull-logging-enabled",r))(Ce||{}),Ne=(r=>(r.Online="online",r.Offline="offline",r.Connecting="connect",r))(Ne||{}),br=(r=>(r[r.Unknown=0]="Unknown",r[r.Client=1]="Client",r[r.Backend=2]="Backend",r))(br||{}),Re=(r=>(r.Server="server",r.Client="client",r.Online="online",r.Status="status",r.Revision="revision",r))(Re||{}),Se=(r=>(r[r.NORMAL_CLOSURE=1e3]="NORMAL_CLOSURE",r[r.SERVER_DIE=1001]="SERVER_DIE",r[r.CONFIG_REPLACED=3e3]="CONFIG_REPLACED",r[r.CHANNEL_EXPIRED=3001]="CHANNEL_EXPIRED",r[r.SERVER_RESTARTED=3002]="SERVER_RESTARTED",r[r.CONFIG_EXPIRED=3003]="CONFIG_EXPIRED",r[r.MANUAL=3004]="MANUAL",r[r.STUCK=3005]="STUCK",r[r.WRONG_CHANNEL_ID=4010]="WRONG_CHANNEL_ID",r))(Se||{}),Yt=(r=>(r.CHANNEL_EXPIRE="CHANNEL_EXPIRE",r.CONFIG_EXPIRE="CONFIG_EXPIRE",r.SERVER_RESTART="SERVER_RESTART",r))(Yt||{}),gn=(r=>(r.Shared="shared",r.Personal="personal",r))(gn||{});const mn={Parse:{code:-32700,message:"Parse error"},InvalidRequest:{code:-32600,message:"Invalid Request"},MethodNotFound:{code:-32601,message:"Method not found"},InvalidParams:{code:-32602,message:"Invalid params"},Internal:{code:-32603,message:"Internal error"}};var Ve=(r=>(r.Publish="publish",r.GetUsersLastSeen="getUsersLastSeen",r.Ping="ping",r.ListChannels="listChannels",r.SubscribeStatusChange="subscribeStatusChange",r.UnsubscribeStatusChange="unsubscribeStatusChange",r))(Ve||{});class $e{_errors;_data;constructor(e){this._errors=new Map,this._data=e??null}get isSuccess(){return this._errors.size===0}get errors(){return this._errors}setData(e){return this._data=e,this}getData(){return this._data}addError(e,t){const n=t??$.getUuidRfc4122(),s=typeof e=="string"?new Error(e):e;return this._errors.set(n,s),this}addErrors(e){for(const t of e)this.addError(t);return this}getErrors(){return this._errors.values()}hasError(e){return this._errors.has(e)}getErrorMessages(){return Array.from(this._errors.values(),e=>e.message)}toString(){const e=this.isSuccess?"success":"failure",t=this.safeStringify(this._data);return this.isSuccess?`Result(${e}): ${t}`:`Result(${e}): ${t}
2
+ Errors: ${this.getErrorMessages().join(", ")}`}safeStringify(e){try{return JSON.stringify(e,this.replacer,2)}catch{return"[Unable to serialize data]"}}replacer(e,t){return t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:t}static ok(e){return new $e(e)}static fail(e,t){return new $e().addError(e,t)}}class We extends Error{code;_status;requestInfo;timestamp;originalError;constructor(e){const t=We.formatErrorMessage(e);super(t),this.name="AjaxError",this.code=e.code,this._status=e.status,this.requestInfo=e.requestInfo,this.originalError=e.originalError,this.timestamp=new Date,this.cleanErrorStack()}get answerError(){return{error:this.message,errorDescription:""}}get status(){return this._status}set status(e){this._status=e}static fromResponse(e){return new We({code:e.data?.error||"unknown_error",description:e.data?.error_description,status:e.status,requestInfo:{method:e.config?.method?.toUpperCase(),url:e.config?.url,params:e.config?.params}})}static fromException(e,t){return e instanceof We?e:new We({code:t?.code||"internal_error",status:t?.status||500,description:e instanceof Error?e.message:String(e),requestInfo:t?.requestInfo,originalError:e})}toJSON(){return{name:this.name,code:this.code,message:this.message,status:this._status,timestamp:this.timestamp.toISOString(),requestInfo:this.requestInfo,stack:this.stack}}toString(){let e=`[${this.name}] ${this.code} (${this._status}): ${this.message}`;return this.requestInfo&&(e+=`
3
+ Request: ${this.requestInfo.method} ${this.requestInfo.url}`),this.stack&&(e+=`
4
+ Stack trace:
5
+ ${this.stack}`),e}static formatErrorMessage(e){const t=[e.code];return e.description&&t.push(`- ${e.description}`),e.requestInfo?.method&&e.requestInfo.url&&t.push(`(on ${e.requestInfo.method} ${e.requestInfo.url})`),t.join(" ")}cleanErrorStack(){typeof this.stack=="string"&&(this.stack=this.stack.split(`
6
+ `).filter(e=>!e.includes("AjaxError.constructor")).join(`
7
+ `))}}class Sr extends $e{_status;_query;_data;constructor(e){super(),this._data=Object.freeze(e.answer),this._query=Object.freeze(structuredClone(e.query)),this._status=e.status,this.#e()}#e(){const{error:e}=this._data;if(!e)return;const t=this.#t(e);this.addError(this.#r(t),"base-error")}#t(e){return typeof e=="string"?{code:e,description:this._data.error_description||""}:{code:e.error,description:e.error_description||""}}#r(e){return new We({code:String(this._status),description:e.description,status:this._status,requestInfo:{method:this._query.method,params:this._query.params}})}getData(){return Object.freeze({result:this._data.result,next:this._data.next,total:this._data.total,time:this._data.time})}hasMore(){return this.isMore()}isMore(){return R.isNumber(this._data?.next)}getTotal(){return $.toInteger(this._data?.total)}getStatus(){return this._status}getQuery(){return this._query}async fetchNext(e){const t=await this.getNext(e);return t===!1?null:t}async getNext(e){if(!this.isMore()||!this.isSuccess)return!1;const t=this.#n();return e.call(t.method,t.params,t.start)}#n(){return{...this._query,start:$.toInteger(this._data.next)}}setData(){throw new ReferenceError("AjaxResult does not allow data modification")}}let oc=class{#e;#t;#r;_logger=null;constructor(){this.#e=ki,this.#r=0,this.#t=0}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}get params(){return{...this.#e}}set params(e){this.#e=e,this.getLogger().log("new restriction manager params",e)}check(e=""){return new Promise(t=>{if(this.#s(),this.#i())return this.getLogger().log(`>> no sleep >>> ${e}`,this.#n()),this.#o(),t(null);{const n=i=>{this.getLogger().info(`>> go sleep >>> ${e}`,this.#n()),setTimeout(()=>{i()},this.#e.sleep)},s=()=>{if(this.#s(),this.#i())return this.getLogger().info(`<< stop sleep <<< ${e}`,this.#n()),this.#o(),t(null);n(s)};n(s)}})}#n(){return`${this.#r.toFixed(4)} from ${this.#e.amount}`}#s(){this.#t>0&&(this.#r-=(Date.now()-this.#t)*this.#e.speed,this.#r<0&&(this.#r=0)),this.#t=Date.now()}#o(){this.#r++}#i(){return this.#r<this.#e.amount}};const ac="X-Request-ID",lc="bx24_request_id",cc="bx24_sdk_ver";let uc=class{getQueryStringParameterName(){return lc}getQueryStringSdkParameterName(){return cc}generate(){return $.getUuidRfc4122()}getRequestId(){return this.generate()}getHeaderFieldName(){return ac}};function Ai(r,e){return function(){return r.apply(e,arguments)}}const{toString:hc}=Object.prototype,{getPrototypeOf:yn}=Object,_r=(r=>e=>{const t=hc.call(e);return r[t]||(r[t]=t.slice(8,-1).toLowerCase())})(Object.create(null)),qe=r=>(r=r.toLowerCase(),e=>_r(e)===r),vr=r=>e=>typeof e===r,{isArray:Lt}=Array,Kt=vr("undefined");function fc(r){return r!==null&&!Kt(r)&&r.constructor!==null&&!Kt(r.constructor)&&Fe(r.constructor.isBuffer)&&r.constructor.isBuffer(r)}const Ii=qe("ArrayBuffer");function dc(r){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(r):e=r&&r.buffer&&Ii(r.buffer),e}const pc=vr("string"),Fe=vr("function"),Ci=vr("number"),kr=r=>r!==null&&typeof r=="object",gc=r=>r===!0||r===!1,Er=r=>{if(_r(r)!=="object")return!1;const e=yn(r);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in r)&&!(Symbol.iterator in r)},mc=qe("Date"),yc=qe("File"),wc=qe("Blob"),bc=qe("FileList"),Sc=r=>kr(r)&&Fe(r.pipe),_c=r=>{let e;return r&&(typeof FormData=="function"&&r instanceof FormData||Fe(r.append)&&((e=_r(r))==="formdata"||e==="object"&&Fe(r.toString)&&r.toString()==="[object FormData]"))},vc=qe("URLSearchParams"),[kc,Ec,Tc,Oc]=["ReadableStream","Request","Response","Headers"].map(qe),Ac=r=>r.trim?r.trim():r.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Xt(r,e,{allOwnKeys:t=!1}={}){if(r===null||typeof r>"u")return;let n,s;if(typeof r!="object"&&(r=[r]),Lt(r))for(n=0,s=r.length;n<s;n++)e.call(null,r[n],n,r);else{const i=t?Object.getOwnPropertyNames(r):Object.keys(r),o=i.length;let a;for(n=0;n<o;n++)a=i[n],e.call(null,r[a],a,r)}}function Ni(r,e){e=e.toLowerCase();const t=Object.keys(r);let n=t.length,s;for(;n-- >0;)if(s=t[n],e===s.toLowerCase())return s;return null}const mt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ri=r=>!Kt(r)&&r!==mt;function wn(){const{caseless:r}=Ri(this)&&this||{},e={},t=(n,s)=>{const i=r&&Ni(e,s)||s;Er(e[i])&&Er(n)?e[i]=wn(e[i],n):Er(n)?e[i]=wn({},n):Lt(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n<s;n++)arguments[n]&&Xt(arguments[n],t);return e}const Ic=(r,e,t,{allOwnKeys:n}={})=>(Xt(e,(s,i)=>{t&&Fe(s)?r[i]=Ai(s,t):r[i]=s},{allOwnKeys:n}),r),Cc=r=>(r.charCodeAt(0)===65279&&(r=r.slice(1)),r),Nc=(r,e,t,n)=>{r.prototype=Object.create(e.prototype,n),r.prototype.constructor=r,Object.defineProperty(r,"super",{value:e.prototype}),t&&Object.assign(r.prototype,t)},Rc=(r,e,t,n)=>{let s,i,o;const a={};if(e=e||{},r==null)return e;do{for(s=Object.getOwnPropertyNames(r),i=s.length;i-- >0;)o=s[i],(!n||n(o,r,e))&&!a[o]&&(e[o]=r[o],a[o]=!0);r=t!==!1&&yn(r)}while(r&&(!t||t(r,e))&&r!==Object.prototype);return e},Fc=(r,e,t)=>{r=String(r),(t===void 0||t>r.length)&&(t=r.length),t-=e.length;const n=r.indexOf(e,t);return n!==-1&&n===t},Lc=r=>{if(!r)return null;if(Lt(r))return r;let e=r.length;if(!Ci(e))return null;const t=new Array(e);for(;e-- >0;)t[e]=r[e];return t},Mc=(r=>e=>r&&e instanceof r)(typeof Uint8Array<"u"&&yn(Uint8Array)),Pc=(r,e)=>{const n=(r&&r[Symbol.iterator]).call(r);let s;for(;(s=n.next())&&!s.done;){const i=s.value;e.call(r,i[0],i[1])}},xc=(r,e)=>{let t;const n=[];for(;(t=r.exec(e))!==null;)n.push(t);return n},Dc=qe("HTMLFormElement"),jc=r=>r.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,n,s){return n.toUpperCase()+s}),Fi=(({hasOwnProperty:r})=>(e,t)=>r.call(e,t))(Object.prototype),Uc=qe("RegExp"),Li=(r,e)=>{const t=Object.getOwnPropertyDescriptors(r),n={};Xt(t,(s,i)=>{let o;(o=e(s,i,r))!==!1&&(n[i]=o||s)}),Object.defineProperties(r,n)},Bc=r=>{Li(r,(e,t)=>{if(Fe(r)&&["arguments","caller","callee"].indexOf(t)!==-1)return!1;const n=r[t];if(Fe(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+t+"'")})}})},$c=(r,e)=>{const t={},n=s=>{s.forEach(i=>{t[i]=!0})};return Lt(r)?n(r):n(String(r).split(e)),t},Wc=()=>{},qc=(r,e)=>r!=null&&Number.isFinite(r=+r)?r:e;function Vc(r){return!!(r&&Fe(r.append)&&r[Symbol.toStringTag]==="FormData"&&r[Symbol.iterator])}const Hc=r=>{const e=new Array(10),t=(n,s)=>{if(kr(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;const i=Lt(n)?[]:{};return Xt(n,(o,a)=>{const l=t(o,s+1);!Kt(l)&&(i[a]=l)}),e[s]=void 0,i}}return n};return t(r,0)},zc=qe("AsyncFunction"),Jc=r=>r&&(kr(r)||Fe(r))&&Fe(r.then)&&Fe(r.catch),Mi=((r,e)=>r?setImmediate:e?((t,n)=>(mt.addEventListener("message",({source:s,data:i})=>{s===mt&&i===t&&n.length&&n.shift()()},!1),s=>{n.push(s),mt.postMessage(t,"*")}))(`axios@${Math.random()}`,[]):t=>setTimeout(t))(typeof setImmediate=="function",Fe(mt.postMessage)),Zc=typeof queueMicrotask<"u"?queueMicrotask.bind(mt):typeof process<"u"&&process.nextTick||Mi,v={isArray:Lt,isArrayBuffer:Ii,isBuffer:fc,isFormData:_c,isArrayBufferView:dc,isString:pc,isNumber:Ci,isBoolean:gc,isObject:kr,isPlainObject:Er,isReadableStream:kc,isRequest:Ec,isResponse:Tc,isHeaders:Oc,isUndefined:Kt,isDate:mc,isFile:yc,isBlob:wc,isRegExp:Uc,isFunction:Fe,isStream:Sc,isURLSearchParams:vc,isTypedArray:Mc,isFileList:bc,forEach:Xt,merge:wn,extend:Ic,trim:Ac,stripBOM:Cc,inherits:Nc,toFlatObject:Rc,kindOf:_r,kindOfTest:qe,endsWith:Fc,toArray:Lc,forEachEntry:Pc,matchAll:xc,isHTMLForm:Dc,hasOwnProperty:Fi,hasOwnProp:Fi,reduceDescriptors:Li,freezeMethods:Bc,toObjectSet:$c,toCamelCase:jc,noop:Wc,toFiniteNumber:qc,findKey:Ni,global:mt,isContextDefined:Ri,isSpecCompliantForm:Vc,toJSONObject:Hc,isAsyncFn:zc,isThenable:Jc,setImmediate:Mi,asap:Zc};function V(r,e,t,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=r,this.name="AxiosError",e&&(this.code=e),t&&(this.config=t),n&&(this.request=n),s&&(this.response=s,this.status=s.status?s.status:null)}v.inherits(V,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:v.toJSONObject(this.config),code:this.code,status:this.status}}});const Pi=V.prototype,xi={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(r=>{xi[r]={value:r}}),Object.defineProperties(V,xi),Object.defineProperty(Pi,"isAxiosError",{value:!0}),V.from=(r,e,t,n,s,i)=>{const o=Object.create(Pi);return v.toFlatObject(r,o,function(l){return l!==Error.prototype},a=>a!=="isAxiosError"),V.call(o,r.message,e,t,n,s),o.cause=r,o.name=r.name,i&&Object.assign(o,i),o};const Gc=null;function bn(r){return v.isPlainObject(r)||v.isArray(r)}function Di(r){return v.endsWith(r,"[]")?r.slice(0,-2):r}function ji(r,e,t){return r?r.concat(e).map(function(s,i){return s=Di(s),!t&&i?"["+s+"]":s}).join(t?".":""):e}function Yc(r){return v.isArray(r)&&!r.some(bn)}const Kc=v.toFlatObject(v,{},null,function(e){return/^is[A-Z]/.test(e)});function Tr(r,e,t){if(!v.isObject(r))throw new TypeError("target must be an object");e=e||new FormData,t=v.toFlatObject(t,{metaTokens:!0,dots:!1,indexes:!1},!1,function(g,m){return!v.isUndefined(m[g])});const n=t.metaTokens,s=t.visitor||c,i=t.dots,o=t.indexes,l=(t.Blob||typeof Blob<"u"&&Blob)&&v.isSpecCompliantForm(e);if(!v.isFunction(s))throw new TypeError("visitor must be a function");function u(p){if(p===null)return"";if(v.isDate(p))return p.toISOString();if(!l&&v.isBlob(p))throw new V("Blob is not supported. Use a Buffer instead.");return v.isArrayBuffer(p)||v.isTypedArray(p)?l&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function c(p,g,m){let y=p;if(p&&!m&&typeof p=="object"){if(v.endsWith(g,"{}"))g=n?g:g.slice(0,-2),p=JSON.stringify(p);else if(v.isArray(p)&&Yc(p)||(v.isFileList(p)||v.endsWith(g,"[]"))&&(y=v.toArray(p)))return g=Di(g),y.forEach(function(_,b){!(v.isUndefined(_)||_===null)&&e.append(o===!0?ji([g],b,i):o===null?g:g+"[]",u(_))}),!1}return bn(p)?!0:(e.append(ji(m,g,i),u(p)),!1)}const f=[],h=Object.assign(Kc,{defaultVisitor:c,convertValue:u,isVisitable:bn});function d(p,g){if(!v.isUndefined(p)){if(f.indexOf(p)!==-1)throw Error("Circular reference detected in "+g.join("."));f.push(p),v.forEach(p,function(y,w){(!(v.isUndefined(y)||y===null)&&s.call(e,y,v.isString(w)?w.trim():w,g,h))===!0&&d(y,g?g.concat(w):[w])}),f.pop()}}if(!v.isObject(r))throw new TypeError("data must be an object");return d(r),e}function Ui(r){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(r).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function Sn(r,e){this._pairs=[],r&&Tr(r,this,e)}const Bi=Sn.prototype;Bi.append=function(e,t){this._pairs.push([e,t])},Bi.toString=function(e){const t=e?function(n){return e.call(this,n,Ui)}:Ui;return this._pairs.map(function(s){return t(s[0])+"="+t(s[1])},"").join("&")};function Xc(r){return encodeURIComponent(r).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function $i(r,e,t){if(!e)return r;const n=t&&t.encode||Xc;v.isFunction(t)&&(t={serialize:t});const s=t&&t.serialize;let i;if(s?i=s(e,t):i=v.isURLSearchParams(e)?e.toString():new Sn(e,t).toString(n),i){const o=r.indexOf("#");o!==-1&&(r=r.slice(0,o)),r+=(r.indexOf("?")===-1?"?":"&")+i}return r}class Wi{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){v.forEach(this.handlers,function(n){n!==null&&e(n)})}}const qi={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Qc={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Sn,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},_n=typeof window<"u"&&typeof document<"u",vn=typeof navigator=="object"&&navigator||void 0,eu=_n&&(!vn||["ReactNative","NativeScript","NS"].indexOf(vn.product)<0),tu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",ru=_n&&window.location.href||"http://localhost",_e={...{__proto__:null,hasBrowserEnv:_n,hasStandardBrowserEnv:eu,hasStandardBrowserWebWorkerEnv:tu,navigator:vn,origin:ru},...Qc};function nu(r,e){return Tr(r,new _e.classes.URLSearchParams,Object.assign({visitor:function(t,n,s,i){return _e.isNode&&v.isBuffer(t)?(this.append(n,t.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function su(r){return v.matchAll(/\w+|\[(\w*)]/g,r).map(e=>e[0]==="[]"?"":e[1]||e[0])}function iu(r){const e={},t=Object.keys(r);let n;const s=t.length;let i;for(n=0;n<s;n++)i=t[n],e[i]=r[i];return e}function Vi(r){function e(t,n,s,i){let o=t[i++];if(o==="__proto__")return!0;const a=Number.isFinite(+o),l=i>=t.length;return o=!o&&v.isArray(s)?s.length:o,l?(v.hasOwnProp(s,o)?s[o]=[s[o],n]:s[o]=n,!a):((!s[o]||!v.isObject(s[o]))&&(s[o]=[]),e(t,n,s[o],i)&&v.isArray(s[o])&&(s[o]=iu(s[o])),!a)}if(v.isFormData(r)&&v.isFunction(r.entries)){const t={};return v.forEachEntry(r,(n,s)=>{e(su(n),s,t,0)}),t}return null}function ou(r,e,t){if(v.isString(r))try{return(e||JSON.parse)(r),v.trim(r)}catch(n){if(n.name!=="SyntaxError")throw n}return(t||JSON.stringify)(r)}const Qt={transitional:qi,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",s=n.indexOf("application/json")>-1,i=v.isObject(e);if(i&&v.isHTMLForm(e)&&(e=new FormData(e)),v.isFormData(e))return s?JSON.stringify(Vi(e)):e;if(v.isArrayBuffer(e)||v.isBuffer(e)||v.isStream(e)||v.isFile(e)||v.isBlob(e)||v.isReadableStream(e))return e;if(v.isArrayBufferView(e))return e.buffer;if(v.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return nu(e,this.formSerializer).toString();if((a=v.isFileList(e))||n.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return Tr(a?{"files[]":e}:e,l&&new l,this.formSerializer)}}return i||s?(t.setContentType("application/json",!1),ou(e)):e}],transformResponse:[function(e){const t=this.transitional||Qt.transitional,n=t&&t.forcedJSONParsing,s=this.responseType==="json";if(v.isResponse(e)||v.isReadableStream(e))return e;if(e&&v.isString(e)&&(n&&!this.responseType||s)){const o=!(t&&t.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(a){if(o)throw a.name==="SyntaxError"?V.from(a,V.ERR_BAD_RESPONSE,this,null,this.response):a}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:_e.classes.FormData,Blob:_e.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};v.forEach(["delete","get","head","post","put","patch"],r=>{Qt.headers[r]={}});const au=v.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),lu=r=>{const e={};let t,n,s;return r&&r.split(`
8
+ `).forEach(function(o){s=o.indexOf(":"),t=o.substring(0,s).trim().toLowerCase(),n=o.substring(s+1).trim(),!(!t||e[t]&&au[t])&&(t==="set-cookie"?e[t]?e[t].push(n):e[t]=[n]:e[t]=e[t]?e[t]+", "+n:n)}),e},Hi=Symbol("internals");function er(r){return r&&String(r).trim().toLowerCase()}function Or(r){return r===!1||r==null?r:v.isArray(r)?r.map(Or):String(r)}function cu(r){const e=Object.create(null),t=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=t.exec(r);)e[n[1]]=n[2];return e}const uu=r=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(r.trim());function kn(r,e,t,n,s){if(v.isFunction(n))return n.call(this,e,t);if(s&&(e=t),!!v.isString(e)){if(v.isString(n))return e.indexOf(n)!==-1;if(v.isRegExp(n))return n.test(e)}}function hu(r){return r.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,t,n)=>t.toUpperCase()+n)}function fu(r,e){const t=v.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(r,n+t,{value:function(s,i,o){return this[n].call(this,e,s,i,o)},configurable:!0})})}let Te=class{constructor(e){e&&this.set(e)}set(e,t,n){const s=this;function i(a,l,u){const c=er(l);if(!c)throw new Error("header name must be a non-empty string");const f=v.findKey(s,c);(!f||s[f]===void 0||u===!0||u===void 0&&s[f]!==!1)&&(s[f||l]=Or(a))}const o=(a,l)=>v.forEach(a,(u,c)=>i(u,c,l));if(v.isPlainObject(e)||e instanceof this.constructor)o(e,t);else if(v.isString(e)&&(e=e.trim())&&!uu(e))o(lu(e),t);else if(v.isHeaders(e))for(const[a,l]of e.entries())i(l,a,n);else e!=null&&i(t,e,n);return this}get(e,t){if(e=er(e),e){const n=v.findKey(this,e);if(n){const s=this[n];if(!t)return s;if(t===!0)return cu(s);if(v.isFunction(t))return t.call(this,s,n);if(v.isRegExp(t))return t.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=er(e),e){const n=v.findKey(this,e);return!!(n&&this[n]!==void 0&&(!t||kn(this,this[n],n,t)))}return!1}delete(e,t){const n=this;let s=!1;function i(o){if(o=er(o),o){const a=v.findKey(n,o);a&&(!t||kn(n,n[a],a,t))&&(delete n[a],s=!0)}}return v.isArray(e)?e.forEach(i):i(e),s}clear(e){const t=Object.keys(this);let n=t.length,s=!1;for(;n--;){const i=t[n];(!e||kn(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){const t=this,n={};return v.forEach(this,(s,i)=>{const o=v.findKey(n,i);if(o){t[o]=Or(s),delete t[i];return}const a=e?hu(i):String(i).trim();a!==i&&delete t[i],t[a]=Or(s),n[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return v.forEach(this,(n,s)=>{n!=null&&n!==!1&&(t[s]=e&&v.isArray(n)?n.join(", "):n)}),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,t])=>e+": "+t).join(`
9
+ `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach(s=>n.set(s)),n}static accessor(e){const n=(this[Hi]=this[Hi]={accessors:{}}).accessors,s=this.prototype;function i(o){const a=er(o);n[a]||(fu(s,o),n[a]=!0)}return v.isArray(e)?e.forEach(i):i(e),this}};Te.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),v.reduceDescriptors(Te.prototype,({value:r},e)=>{let t=e[0].toUpperCase()+e.slice(1);return{get:()=>r,set(n){this[t]=n}}}),v.freezeMethods(Te);function En(r,e){const t=this||Qt,n=e||t,s=Te.from(n.headers);let i=n.data;return v.forEach(r,function(a){i=a.call(t,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function zi(r){return!!(r&&r.__CANCEL__)}function Mt(r,e,t){V.call(this,r??"canceled",V.ERR_CANCELED,e,t),this.name="CanceledError"}v.inherits(Mt,V,{__CANCEL__:!0});function Ji(r,e,t){const n=t.config.validateStatus;!t.status||!n||n(t.status)?r(t):e(new V("Request failed with status code "+t.status,[V.ERR_BAD_REQUEST,V.ERR_BAD_RESPONSE][Math.floor(t.status/100)-4],t.config,t.request,t))}function du(r){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(r);return e&&e[1]||""}function pu(r,e){r=r||10;const t=new Array(r),n=new Array(r);let s=0,i=0,o;return e=e!==void 0?e:1e3,function(l){const u=Date.now(),c=n[i];o||(o=u),t[s]=l,n[s]=u;let f=i,h=0;for(;f!==s;)h+=t[f++],f=f%r;if(s=(s+1)%r,s===i&&(i=(i+1)%r),u-o<e)return;const d=c&&u-c;return d?Math.round(h*1e3/d):void 0}}function gu(r,e){let t=0,n=1e3/e,s,i;const o=(u,c=Date.now())=>{t=c,s=null,i&&(clearTimeout(i),i=null),r.apply(null,u)};return[(...u)=>{const c=Date.now(),f=c-t;f>=n?o(u,c):(s=u,i||(i=setTimeout(()=>{i=null,o(s)},n-f)))},()=>s&&o(s)]}const Ar=(r,e,t=3)=>{let n=0;const s=pu(50,250);return gu(i=>{const o=i.loaded,a=i.lengthComputable?i.total:void 0,l=o-n,u=s(l),c=o<=a;n=o;const f={loaded:o,total:a,progress:a?o/a:void 0,bytes:l,rate:u||void 0,estimated:u&&a&&c?(a-o)/u:void 0,event:i,lengthComputable:a!=null,[e?"download":"upload"]:!0};r(f)},t)},Zi=(r,e)=>{const t=r!=null;return[n=>e[0]({lengthComputable:t,total:r,loaded:n}),e[1]]},Gi=r=>(...e)=>v.asap(()=>r(...e)),mu=_e.hasStandardBrowserEnv?((r,e)=>t=>(t=new URL(t,_e.origin),r.protocol===t.protocol&&r.host===t.host&&(e||r.port===t.port)))(new URL(_e.origin),_e.navigator&&/(msie|trident)/i.test(_e.navigator.userAgent)):()=>!0,yu=_e.hasStandardBrowserEnv?{write(r,e,t,n,s,i){const o=[r+"="+encodeURIComponent(e)];v.isNumber(t)&&o.push("expires="+new Date(t).toGMTString()),v.isString(n)&&o.push("path="+n),v.isString(s)&&o.push("domain="+s),i===!0&&o.push("secure"),document.cookie=o.join("; ")},read(r){const e=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(r){this.write(r,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function wu(r){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(r)}function bu(r,e){return e?r.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):r}function Yi(r,e,t){let n=!wu(e);return r&&(n||t==!1)?bu(r,e):e}const Ki=r=>r instanceof Te?{...r}:r;function yt(r,e){e=e||{};const t={};function n(u,c,f,h){return v.isPlainObject(u)&&v.isPlainObject(c)?v.merge.call({caseless:h},u,c):v.isPlainObject(c)?v.merge({},c):v.isArray(c)?c.slice():c}function s(u,c,f,h){if(v.isUndefined(c)){if(!v.isUndefined(u))return n(void 0,u,f,h)}else return n(u,c,f,h)}function i(u,c){if(!v.isUndefined(c))return n(void 0,c)}function o(u,c){if(v.isUndefined(c)){if(!v.isUndefined(u))return n(void 0,u)}else return n(void 0,c)}function a(u,c,f){if(f in e)return n(u,c);if(f in r)return n(void 0,u)}const l={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:a,headers:(u,c,f)=>s(Ki(u),Ki(c),f,!0)};return v.forEach(Object.keys(Object.assign({},r,e)),function(c){const f=l[c]||s,h=f(r[c],e[c],c);v.isUndefined(h)&&f!==a||(t[c]=h)}),t}const Xi=r=>{const e=yt({},r);let{data:t,withXSRFToken:n,xsrfHeaderName:s,xsrfCookieName:i,headers:o,auth:a}=e;e.headers=o=Te.from(o),e.url=$i(Yi(e.baseURL,e.url,e.allowAbsoluteUrls),r.params,r.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):"")));let l;if(v.isFormData(t)){if(_e.hasStandardBrowserEnv||_e.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if((l=o.getContentType())!==!1){const[u,...c]=l?l.split(";").map(f=>f.trim()).filter(Boolean):[];o.setContentType([u||"multipart/form-data",...c].join("; "))}}if(_e.hasStandardBrowserEnv&&(n&&v.isFunction(n)&&(n=n(e)),n||n!==!1&&mu(e.url))){const u=s&&i&&yu.read(i);u&&o.set(s,u)}return e},Su=typeof XMLHttpRequest<"u"&&function(r){return new Promise(function(t,n){const s=Xi(r);let i=s.data;const o=Te.from(s.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:u}=s,c,f,h,d,p;function g(){d&&d(),p&&p(),s.cancelToken&&s.cancelToken.unsubscribe(c),s.signal&&s.signal.removeEventListener("abort",c)}let m=new XMLHttpRequest;m.open(s.method.toUpperCase(),s.url,!0),m.timeout=s.timeout;function y(){if(!m)return;const _=Te.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders()),k={data:!a||a==="text"||a==="json"?m.responseText:m.response,status:m.status,statusText:m.statusText,headers:_,config:r,request:m};Ji(function(E){t(E),g()},function(E){n(E),g()},k),m=null}"onloadend"in m?m.onloadend=y:m.onreadystatechange=function(){!m||m.readyState!==4||m.status===0&&!(m.responseURL&&m.responseURL.indexOf("file:")===0)||setTimeout(y)},m.onabort=function(){m&&(n(new V("Request aborted",V.ECONNABORTED,r,m)),m=null)},m.onerror=function(){n(new V("Network Error",V.ERR_NETWORK,r,m)),m=null},m.ontimeout=function(){let b=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const k=s.transitional||qi;s.timeoutErrorMessage&&(b=s.timeoutErrorMessage),n(new V(b,k.clarifyTimeoutError?V.ETIMEDOUT:V.ECONNABORTED,r,m)),m=null},i===void 0&&o.setContentType(null),"setRequestHeader"in m&&v.forEach(o.toJSON(),function(b,k){m.setRequestHeader(k,b)}),v.isUndefined(s.withCredentials)||(m.withCredentials=!!s.withCredentials),a&&a!=="json"&&(m.responseType=s.responseType),u&&([h,p]=Ar(u,!0),m.addEventListener("progress",h)),l&&m.upload&&([f,d]=Ar(l),m.upload.addEventListener("progress",f),m.upload.addEventListener("loadend",d)),(s.cancelToken||s.signal)&&(c=_=>{m&&(n(!_||_.type?new Mt(null,r,m):_),m.abort(),m=null)},s.cancelToken&&s.cancelToken.subscribe(c),s.signal&&(s.signal.aborted?c():s.signal.addEventListener("abort",c)));const w=du(s.url);if(w&&_e.protocols.indexOf(w)===-1){n(new V("Unsupported protocol "+w+":",V.ERR_BAD_REQUEST,r));return}m.send(i||null)})},_u=(r,e)=>{const{length:t}=r=r?r.filter(Boolean):[];if(e||t){let n=new AbortController,s;const i=function(u){if(!s){s=!0,a();const c=u instanceof Error?u:this.reason;n.abort(c instanceof V?c:new Mt(c instanceof Error?c.message:c))}};let o=e&&setTimeout(()=>{o=null,i(new V(`timeout ${e} of ms exceeded`,V.ETIMEDOUT))},e);const a=()=>{r&&(o&&clearTimeout(o),o=null,r.forEach(u=>{u.unsubscribe?u.unsubscribe(i):u.removeEventListener("abort",i)}),r=null)};r.forEach(u=>u.addEventListener("abort",i));const{signal:l}=n;return l.unsubscribe=()=>v.asap(a),l}},vu=function*(r,e){let t=r.byteLength;if(t<e){yield r;return}let n=0,s;for(;n<t;)s=n+e,yield r.slice(n,s),n=s},ku=async function*(r,e){for await(const t of Eu(r))yield*vu(t,e)},Eu=async function*(r){if(r[Symbol.asyncIterator]){yield*r;return}const e=r.getReader();try{for(;;){const{done:t,value:n}=await e.read();if(t)break;yield n}}finally{await e.cancel()}},Qi=(r,e,t,n)=>{const s=ku(r,e);let i=0,o,a=l=>{o||(o=!0,n&&n(l))};return new ReadableStream({async pull(l){try{const{done:u,value:c}=await s.next();if(u){a(),l.close();return}let f=c.byteLength;if(t){let h=i+=f;t(h)}l.enqueue(new Uint8Array(c))}catch(u){throw a(u),u}},cancel(l){return a(l),s.return()}},{highWaterMark:2})},Ir=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",eo=Ir&&typeof ReadableStream=="function",Tu=Ir&&(typeof TextEncoder=="function"?(r=>e=>r.encode(e))(new TextEncoder):async r=>new Uint8Array(await new Response(r).arrayBuffer())),to=(r,...e)=>{try{return!!r(...e)}catch{return!1}},Ou=eo&&to(()=>{let r=!1;const e=new Request(_e.origin,{body:new ReadableStream,method:"POST",get duplex(){return r=!0,"half"}}).headers.has("Content-Type");return r&&!e}),ro=64*1024,Tn=eo&&to(()=>v.isReadableStream(new Response("").body)),Cr={stream:Tn&&(r=>r.body)};Ir&&(r=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!Cr[e]&&(Cr[e]=v.isFunction(r[e])?t=>t[e]():(t,n)=>{throw new V(`Response type '${e}' is not supported`,V.ERR_NOT_SUPPORT,n)})})})(new Response);const Au=async r=>{if(r==null)return 0;if(v.isBlob(r))return r.size;if(v.isSpecCompliantForm(r))return(await new Request(_e.origin,{method:"POST",body:r}).arrayBuffer()).byteLength;if(v.isArrayBufferView(r)||v.isArrayBuffer(r))return r.byteLength;if(v.isURLSearchParams(r)&&(r=r+""),v.isString(r))return(await Tu(r)).byteLength},Iu=async(r,e)=>{const t=v.toFiniteNumber(r.getContentLength());return t??Au(e)},On={http:Gc,xhr:Su,fetch:Ir&&(async r=>{let{url:e,method:t,data:n,signal:s,cancelToken:i,timeout:o,onDownloadProgress:a,onUploadProgress:l,responseType:u,headers:c,withCredentials:f="same-origin",fetchOptions:h}=Xi(r);u=u?(u+"").toLowerCase():"text";let d=_u([s,i&&i.toAbortSignal()],o),p;const g=d&&d.unsubscribe&&(()=>{d.unsubscribe()});let m;try{if(l&&Ou&&t!=="get"&&t!=="head"&&(m=await Iu(c,n))!==0){let k=new Request(e,{method:"POST",body:n,duplex:"half"}),S;if(v.isFormData(n)&&(S=k.headers.get("content-type"))&&c.setContentType(S),k.body){const[E,N]=Zi(m,Ar(Gi(l)));n=Qi(k.body,ro,E,N)}}v.isString(f)||(f=f?"include":"omit");const y="credentials"in Request.prototype;p=new Request(e,{...h,signal:d,method:t.toUpperCase(),headers:c.normalize().toJSON(),body:n,duplex:"half",credentials:y?f:void 0});let w=await fetch(p);const _=Tn&&(u==="stream"||u==="response");if(Tn&&(a||_&&g)){const k={};["status","statusText","headers"].forEach(D=>{k[D]=w[D]});const S=v.toFiniteNumber(w.headers.get("content-length")),[E,N]=a&&Zi(S,Ar(Gi(a),!0))||[];w=new Response(Qi(w.body,ro,E,()=>{N&&N(),g&&g()}),k)}u=u||"text";let b=await Cr[v.findKey(Cr,u)||"text"](w,r);return!_&&g&&g(),await new Promise((k,S)=>{Ji(k,S,{data:b,headers:Te.from(w.headers),status:w.status,statusText:w.statusText,config:r,request:p})})}catch(y){throw g&&g(),y&&y.name==="TypeError"&&/fetch/i.test(y.message)?Object.assign(new V("Network Error",V.ERR_NETWORK,r,p),{cause:y.cause||y}):V.from(y,y&&y.code,r,p)}})};v.forEach(On,(r,e)=>{if(r){try{Object.defineProperty(r,"name",{value:e})}catch{}Object.defineProperty(r,"adapterName",{value:e})}});const no=r=>`- ${r}`,Cu=r=>v.isFunction(r)||r===null||r===!1,so={getAdapter:r=>{r=v.isArray(r)?r:[r];const{length:e}=r;let t,n;const s={};for(let i=0;i<e;i++){t=r[i];let o;if(n=t,!Cu(t)&&(n=On[(o=String(t)).toLowerCase()],n===void 0))throw new V(`Unknown adapter '${o}'`);if(n)break;s[o||"#"+i]=n}if(!n){const i=Object.entries(s).map(([a,l])=>`adapter ${a} `+(l===!1?"is not supported by the environment":"is not available in the build"));let o=e?i.length>1?`since :
10
+ `+i.map(no).join(`
11
+ `):" "+no(i[0]):"as no adapter specified";throw new V("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return n},adapters:On};function An(r){if(r.cancelToken&&r.cancelToken.throwIfRequested(),r.signal&&r.signal.aborted)throw new Mt(null,r)}function io(r){return An(r),r.headers=Te.from(r.headers),r.data=En.call(r,r.transformRequest),["post","put","patch"].indexOf(r.method)!==-1&&r.headers.setContentType("application/x-www-form-urlencoded",!1),so.getAdapter(r.adapter||Qt.adapter)(r).then(function(n){return An(r),n.data=En.call(r,r.transformResponse,n),n.headers=Te.from(n.headers),n},function(n){return zi(n)||(An(r),n&&n.response&&(n.response.data=En.call(r,r.transformResponse,n.response),n.response.headers=Te.from(n.response.headers))),Promise.reject(n)})}const oo="1.8.4",Nr={};["object","boolean","number","function","string","symbol"].forEach((r,e)=>{Nr[r]=function(n){return typeof n===r||"a"+(e<1?"n ":" ")+r}});const ao={};Nr.transitional=function(e,t,n){function s(i,o){return"[Axios v"+oo+"] Transitional option '"+i+"'"+o+(n?". "+n:"")}return(i,o,a)=>{if(e===!1)throw new V(s(o," has been removed"+(t?" in "+t:"")),V.ERR_DEPRECATED);return t&&!ao[o]&&(ao[o]=!0,console.warn(s(o," has been deprecated since v"+t+" and will be removed in the near future"))),e?e(i,o,a):!0}},Nr.spelling=function(e){return(t,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};function Nu(r,e,t){if(typeof r!="object")throw new V("options must be an object",V.ERR_BAD_OPTION_VALUE);const n=Object.keys(r);let s=n.length;for(;s-- >0;){const i=n[s],o=e[i];if(o){const a=r[i],l=a===void 0||o(a,i,r);if(l!==!0)throw new V("option "+i+" must be "+l,V.ERR_BAD_OPTION_VALUE);continue}if(t!==!0)throw new V("Unknown option "+i,V.ERR_BAD_OPTION)}}const Rr={assertOptions:Nu,validators:Nr},He=Rr.validators;let wt=class{constructor(e){this.defaults=e,this.interceptors={request:new Wi,response:new Wi}}async request(e,t){try{return await this._request(e,t)}catch(n){if(n instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const i=s.stack?s.stack.replace(/^.+\n/,""):"";try{n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
12
+ `+i):n.stack=i}catch{}}throw n}}_request(e,t){typeof e=="string"?(t=t||{},t.url=e):t=e||{},t=yt(this.defaults,t);const{transitional:n,paramsSerializer:s,headers:i}=t;n!==void 0&&Rr.assertOptions(n,{silentJSONParsing:He.transitional(He.boolean),forcedJSONParsing:He.transitional(He.boolean),clarifyTimeoutError:He.transitional(He.boolean)},!1),s!=null&&(v.isFunction(s)?t.paramsSerializer={serialize:s}:Rr.assertOptions(s,{encode:He.function,serialize:He.function},!0)),t.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),Rr.assertOptions(t,{baseUrl:He.spelling("baseURL"),withXsrfToken:He.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&v.merge(i.common,i[t.method]);i&&v.forEach(["delete","get","head","post","put","patch","common"],p=>{delete i[p]}),t.headers=Te.concat(o,i);const a=[];let l=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(t)===!1||(l=l&&g.synchronous,a.unshift(g.fulfilled,g.rejected))});const u=[];this.interceptors.response.forEach(function(g){u.push(g.fulfilled,g.rejected)});let c,f=0,h;if(!l){const p=[io.bind(this),void 0];for(p.unshift.apply(p,a),p.push.apply(p,u),h=p.length,c=Promise.resolve(t);f<h;)c=c.then(p[f++],p[f++]);return c}h=a.length;let d=t;for(f=0;f<h;){const p=a[f++],g=a[f++];try{d=p(d)}catch(m){g.call(this,m);break}}try{c=io.call(this,d)}catch(p){return Promise.reject(p)}for(f=0,h=u.length;f<h;)c=c.then(u[f++],u[f++]);return c}getUri(e){e=yt(this.defaults,e);const t=Yi(e.baseURL,e.url,e.allowAbsoluteUrls);return $i(t,e.params,e.paramsSerializer)}};v.forEach(["delete","get","head","options"],function(e){wt.prototype[e]=function(t,n){return this.request(yt(n||{},{method:e,url:t,data:(n||{}).data}))}}),v.forEach(["post","put","patch"],function(e){function t(n){return function(i,o,a){return this.request(yt(a||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}wt.prototype[e]=t(),wt.prototype[e+"Form"]=t(!0)});let Ru=class Vo{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let t;this.promise=new Promise(function(i){t=i});const n=this;this.promise.then(s=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i;const o=new Promise(a=>{n.subscribe(a),i=a}).then(s);return o.cancel=function(){n.unsubscribe(i)},o},e(function(i,o,a){n.reason||(n.reason=new Mt(i,o,a),t(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);t!==-1&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=n=>{e.abort(n)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new Vo(function(s){e=s}),cancel:e}}};function Fu(r){return function(t){return r.apply(null,t)}}function Lu(r){return v.isObject(r)&&r.isAxiosError===!0}const In={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(In).forEach(([r,e])=>{In[e]=r});function lo(r){const e=new wt(r),t=Ai(wt.prototype.request,e);return v.extend(t,wt.prototype,e,{allOwnKeys:!0}),v.extend(t,e,null,{allOwnKeys:!0}),t.create=function(s){return lo(yt(r,s))},t}const ae=lo(Qt);ae.Axios=wt,ae.CanceledError=Mt,ae.CancelToken=Ru,ae.isCancel=zi,ae.VERSION=oo,ae.toFormData=Tr,ae.AxiosError=V,ae.Cancel=ae.CanceledError,ae.all=function(e){return Promise.all(e)},ae.spread=Fu,ae.isAxiosError=Lu,ae.mergeConfig=yt,ae.AxiosHeaders=Te,ae.formToJSON=r=>Vi(v.isHTMLForm(r)?new FormData(r):r),ae.getAdapter=so.getAdapter,ae.HttpStatusCode=In,ae.default=ae;const{Axios:of,AxiosError:co,CanceledError:af,isCancel:lf,CancelToken:cf,VERSION:uf,all:hf,Cancel:ff,isAxiosError:df,spread:pf,toFormData:gf,AxiosHeaders:mf,HttpStatusCode:yf,formToJSON:wf,getAdapter:bf,mergeConfig:Sf}=ae,Mu=String.prototype.replace,Pu=/%20/g,uo={RFC1738:"RFC1738",RFC3986:"RFC3986"},xu={RFC1738:function(r){return Mu.call(r,Pu,"+")},RFC3986:function(r){return String(r)}},Du=uo.RFC1738,ju=uo.RFC3986,Cn=Object.prototype.hasOwnProperty,bt=Array.isArray,ze=function(){const r=[];for(let e=0;e<256;++e)r.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return r}(),Uu=function(e){for(;e.length>1;){const t=e.pop(),n=t.obj[t.prop];if(bt(n)){const s=[];for(let i=0;i<n.length;++i)typeof n[i]<"u"&&s.push(n[i]);t.obj[t.prop]=s}}},Bu=function(e,t){const n=t&&t.plainObjects?Object.create(null):{};for(let s=0;s<e.length;++s)typeof e[s]<"u"&&(n[s]=e[s]);return n},$u=function r(e,t,n){if(!t)return e;if(typeof t!="object"){if(bt(e))e.push(t);else if(e&&typeof e=="object")(n&&(n.plainObjects||n.allowPrototypes)||!Cn.call(Object.prototype,t))&&(e[t]=!0);else return[e,t];return e}if(!e||typeof e!="object")return[e].concat(t);let s=e;return bt(e)&&!bt(t)&&(s=Bu(e,n)),bt(e)&&bt(t)?(t.forEach(function(i,o){if(Cn.call(e,o)){const a=e[o];a&&typeof a=="object"&&i&&typeof i=="object"?e[o]=r(a,i,n):e.push(i)}else e[o]=i}),e):Object.keys(t).reduce(function(i,o){const a=t[o];return Cn.call(i,o)?i[o]=r(i[o],a,n):i[o]=a,i},s)},Wu=function(r,e,t){const n=r.replace(/\+/g," ");if(t==="iso-8859-1")return n.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(n)}catch{return n}},Nn=1024,qu=function(e,t,n,s,i){if(e.length===0)return e;let o=e;if(typeof e=="symbol"?o=Symbol.prototype.toString.call(e):typeof e!="string"&&(o=String(e)),n==="iso-8859-1")return escape(o).replace(/%u[0-9a-f]{4}/gi,function(l){return"%26%23"+parseInt(l.slice(2),16)+"%3B"});let a="";for(let l=0;l<o.length;l+=Nn){const u=o.length>=Nn?o.slice(l,l+Nn):o,c=[];for(let f=0;f<u.length;++f){let h=u.charCodeAt(f);if(h===45||h===46||h===95||h===126||h>=48&&h<=57||h>=65&&h<=90||h>=97&&h<=122||i===Du&&(h===40||h===41)){c[c.length]=u.charAt(f);continue}if(h<128){c[c.length]=ze[h];continue}if(h<2048){c[c.length]=ze[192|h>>6]+ze[128|h&63];continue}if(h<55296||h>=57344){c[c.length]=ze[224|h>>12]+ze[128|h>>6&63]+ze[128|h&63];continue}f+=1,h=65536+((h&1023)<<10|u.charCodeAt(f)&1023),c[c.length]=ze[240|h>>18]+ze[128|h>>12&63]+ze[128|h>>6&63]+ze[128|h&63]}a+=c.join("")}return a},Vu=function(e){const t=[{obj:{o:e},prop:"o"}],n=[];for(let s=0;s<t.length;++s){const i=t[s],o=i.obj[i.prop],a=Object.keys(o);for(let l=0;l<a.length;++l){const u=a[l],c=o[u];typeof c=="object"&&c!==null&&n.indexOf(c)===-1&&(t.push({obj:o,prop:u}),n.push(c))}}return Uu(t),e},Hu=function(e){return!e||typeof e!="object"?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},zu=function(e,t){return[].concat(e,t)},Rn=function(e,t){if(bt(e)){const n=[];for(let s=0;s<e.length;s+=1)n.push(t(e[s]));return n}return t(e)},Ju={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,t){return e+"["+t+"]"},repeat:function(e){return e}},Ke=Array.isArray,Zu=Array.prototype.push,ho=function(r,e){Zu.apply(r,Ke(e)?e:[e])},Gu=Date.prototype.toISOString,fo=ju,Fr={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:qu,encodeValuesOnly:!1,format:fo,formatter:xu[fo],indices:!1,serializeDate:function(e){return Gu.call(e)},skipNulls:!1,strictNullHandling:!1},Yu=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},Fn={},po=function(e,t,n,s,i,o,a,l,u,c,f,h,d,p,g,m,y,w){let _=e,b=w,k=0,S=!1;for(;(b=b.get(Fn))!==void 0&&!S;){const J=b.get(e);if(k+=1,typeof J<"u"){if(J===k)throw new RangeError("Cyclic object value");S=!0}typeof b.get(Fn)>"u"&&(k=0)}if(typeof c=="function"?_=c(t,_):_ instanceof Date?_=d(_):n==="comma"&&Ke(_)&&(_=Rn(_,function(J){return J instanceof Date?d(J):J})),_===null){if(o)return u&&!m?u(t,Fr.encoder,y,"key",p):t;_=""}if(Yu(_)||Hu(_)){if(u){const J=m?t:u(t,Fr.encoder,y,"key",p);return[g(J)+"="+g(u(_,Fr.encoder,y,"value",p))]}return[g(t)+"="+g(String(_))]}const E=[];if(typeof _>"u")return E;let N;if(n==="comma"&&Ke(_))m&&u&&(_=Rn(_,u)),N=[{value:_.length>0?_.join(",")||null:void 0}];else if(Ke(c))N=c;else{const J=Object.keys(_);N=f?J.sort(f):J}const D=l?t.replace(/\./g,"%2E"):t,P=s&&Ke(_)&&_.length===1?D+"[]":D;if(i&&Ke(_)&&_.length===0)return P+"[]";for(let J=0;J<N.length;++J){const me=N[J],H=typeof me=="object"&&typeof me.value<"u"?me.value:_[me];if(a&&H===null)continue;const X=h&&l?me.replace(/\./g,"%2E"):me,B=Ke(_)?typeof n=="function"?n(P,X):P:P+(h?"."+X:"["+X+"]");w.set(e,k);const he=new WeakMap;he.set(Fn,w),ho(E,po(H,B,n,s,i,o,a,l,n==="comma"&&m&&Ke(_)?null:u,c,f,h,d,p,g,m,y,he))}return E},Ku=function(e){return Fr};function go(r,e){let t=r;const n=Ku();let s,i;typeof n.filter=="function"?(i=n.filter,t=i("",t)):Ke(n.filter)&&(i=n.filter,s=i);const o=[];if(typeof t!="object"||t===null)return"";const a=Ju[n.arrayFormat],l=a==="comma"&&n.commaRoundTrip;s||(s=Object.keys(t)),n.sort&&s.sort(n.sort);const u=new WeakMap;for(let h=0;h<s.length;++h){const d=s[h];n.skipNulls&&t[d]===null||ho(o,po(t[d],d,a,l,n.allowEmptyArrays,n.strictNullHandling,n.skipNulls,n.encodeDotInKeys,n.encode?n.encoder:null,n.filter,n.sort,n.allowDots,n.serializeDate,n.format,n.formatter,n.encodeValuesOnly,n.charset,u))}const c=o.join(n.delimiter);let f=n.addQueryPrefix===!0?"?":"";return n.charsetSentinel&&(n.charset==="iso-8859-1"?f+="utf8=%26%2310003%3B&":f+="utf8=%E2%9C%93&"),c.length>0?f+c:""}const Ln=Object.prototype.hasOwnProperty,Xu=Array.isArray,Lr={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Wu,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},Qu=function(r){return r.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(parseInt(t,10))})},mo=function(r,e){return r&&typeof r=="string"&&e.comma&&r.indexOf(",")>-1?r.split(","):r},eh="utf8=%26%2310003%3B",th="utf8=%E2%9C%93",rh=function(e,t){const n={__proto__:null},s=t.ignoreQueryPrefix?e.replace(/^\?/,""):e,i=t.parameterLimit===1/0?void 0:t.parameterLimit,o=s.split(t.delimiter,i);let a=-1,l,u=t.charset;if(t.charsetSentinel)for(l=0;l<o.length;++l)o[l].indexOf("utf8=")===0&&(o[l]===th?u="utf-8":o[l]===eh&&(u="iso-8859-1"),a=l,l=o.length);for(l=0;l<o.length;++l){if(l===a)continue;const c=o[l],f=c.indexOf("]="),h=f===-1?c.indexOf("="):f+1;let d,p;h===-1?(d=t.decoder(c,Lr.decoder,u,"key"),p=t.strictNullHandling?null:""):(d=t.decoder(c.slice(0,h),Lr.decoder,u,"key"),p=Rn(mo(c.slice(h+1),t),function(m){return t.decoder(m,Lr.decoder,u,"value")})),p&&t.interpretNumericEntities&&u==="iso-8859-1"&&(p=Qu(p)),c.indexOf("[]=")>-1&&(p=Xu(p)?[p]:p);const g=Ln.call(n,d);g&&t.duplicates==="combine"?n[d]=zu(n[d],p):(!g||t.duplicates==="last")&&(n[d]=p)}return n},nh=function(r,e,t,n){let s=n?e:mo(e,t);for(let i=r.length-1;i>=0;--i){let o;const a=r[i];if(a==="[]"&&t.parseArrays)o=t.allowEmptyArrays&&s===""?[]:[].concat(s);else{o=t.plainObjects?Object.create(null):{};const l=a.charAt(0)==="["&&a.charAt(a.length-1)==="]"?a.slice(1,-1):a,u=t.decodeDotInKeys?l.replace(/%2E/g,"."):l,c=parseInt(u,10);!t.parseArrays&&u===""?o={0:s}:!isNaN(c)&&a!==u&&String(c)===u&&c>=0&&t.parseArrays&&c<=t.arrayLimit?(o=[],o[c]=s):u!=="__proto__"&&(o[u]=s)}s=o}return s},sh=function(e,t,n,s){if(!e)return;const i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,o=/(\[[^[\]]*])/,a=/(\[[^[\]]*])/g;let l=n.depth>0&&o.exec(i);const u=l?i.slice(0,l.index):i,c=[];if(u){if(!n.plainObjects&&Ln.call(Object.prototype,u)&&!n.allowPrototypes)return;c.push(u)}let f=0;for(;n.depth>0&&(l=a.exec(i))!==null&&f<n.depth;){if(f+=1,!n.plainObjects&&Ln.call(Object.prototype,l[1].slice(1,-1))&&!n.allowPrototypes)return;c.push(l[1])}return l&&c.push("["+i.slice(l.index)+"]"),nh(c,t,n,s)},ih=function(e){return Lr};function yo(r,e){const t=ih();if(r===""||r===null||typeof r>"u")return t.plainObjects?Object.create(null):{};const n=typeof r=="string"?rh(r,t):r;let s=t.plainObjects?Object.create(null):{};const i=Object.keys(n);for(let o=0;o<i.length;++o){const a=i[o],l=sh(a,n[a],t,typeof r=="string");s=$u(s,l,t)}return t.allowSparse===!0?s:Vu(s)}let wo=class{#e;#t;#r;#n;_logger=null;_loggerSystem=null;#s="";#o=!1;#i="";constructor(e,t,n){this.#e=ae.create({baseURL:e,...n}),this.#t=t,this.#r=new oc,this.#n=new uc}setLogger(e){this._logger=e,this.#r.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}getSystemLogger(){return this._loggerSystem===null&&(this._loggerSystem=ye.build("SystemLogger"),this._loggerSystem.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!0,[I.warn]:!0,[I.error]:!0,[I.trace]:!1})),this._loggerSystem}setRestrictionManagerParams(e){this.#r.params=e}getRestrictionManagerParams(){return this.#r.params}setLogTag(e){this.#s=e}clearLogTag(){this.#s=""}async batch(e,t=!0){return Array.isArray(e)?this.#c(e,t):this.#l(e,t)}async#l(e,t=!0){const n={};let s=0;const i=(o,a)=>{let l=null,u=null;o.method?(l=o.method??null,u=o?.params??null):Array.isArray(o)&&o.length>0&&(l=o[0]??null,u=o[1]??null),l&&(s++,n[a]=l+"?"+go(u))};for(const[o,a]of Object.entries(e))i(a,o);return s<1?Promise.resolve(new $e):this.call("batch",{halt:t?1:0,cmd:n}).then(o=>{const a=o.getData().result,l={},u=(d,p)=>{if(typeof a.result[p]<"u"||typeof a.result_error[p]<"u"){const g=d.split("?");l[p]=new Sr({answer:{result:R.isUndefined(a.result[p])?{}:a.result[p],error:a?.result_error[p]||void 0,total:a.result_total[p],next:a.result_next[p],time:a.result_time[p]},query:{method:g[0]||"",params:yo(g[1]||""),start:0},status:o.getStatus()})}};for(const[d,p]of Object.entries(n))u(p,d);const c={},f=d=>d.hasError("base-error")?d.errors.get("base-error"):new We({code:"0",description:d.getErrorMessages().join("; "),status:0,requestInfo:{method:d.getQuery().method,params:d.getQuery().params},originalError:d.getErrors().next().value}),h=new $e;for(const d of Object.keys(l)){const p=l[d];if(p.getStatus()!==200||!p.isSuccess){const g=f(p);if(!t&&!p.isSuccess){h.addError(g,d);continue}return Promise.reject(g)}c[d]=p.getData().result}return h.setData(c),Promise.resolve(h)})}async#c(e,t=!0){const n=[];let s=0;const i=o=>{let a=null,l=null;if(o.method?(a=o.method??null,l=o?.params??null):Array.isArray(o)&&o.length>0&&(a=o[0]??null,l=o[1]??null),a){s++;const u=a+"?"+go(l);n.push(u)}};for(const[o,a]of e.entries())i(a);return s<1?Promise.resolve(new $e):this.call("batch",{halt:t?1:0,cmd:n}).then(o=>{const a=o.getData().result,l=[],u=(d,p)=>{if(typeof a.result[p]<"u"||typeof a.result_error[p]<"u"){const g=d.split("?"),m=new Sr({answer:{result:R.isUndefined(a.result[p])?{}:a.result[p],error:a?.result_error[p]||void 0,total:a.result_total[p],next:a.result_next[p],time:a.result_time[p]},query:{method:g[0]||"",params:yo(g[1]||""),start:0},status:o.getStatus()});l.push(m)}};for(const[d,p]of n.entries())u(p,d);const c=[],f=d=>d.hasError("base-error")?d.errors.get("base-error"):new We({code:"0",description:d.getErrorMessages().join("; "),status:0,requestInfo:{method:d.getQuery().method,params:d.getQuery().params},originalError:d.getErrors().next().value}),h=new $e;for(const d of l){if(d.getStatus()!==200||!d.isSuccess){const p=f(d);if(!t&&!d.isSuccess){h.addError(p);continue}return Promise.reject(p)}c.push(d.getData().result)}return h.setData(c),Promise.resolve(h)})}async call(e,t,n=0){let s=this.#t.getAuthData();return s===!1&&(s=await this.#t.refreshAuth()),await this.#r.check(),this.#o&&!this.isServerSide()&&R.isStringFilled(this.#i)&&this.getSystemLogger().warn(this.#i),this.#e.post(this.#u(e),this.#a(s,t,n)).then(i=>{const o=i.data;return Promise.resolve({status:i.status,payload:o})},async i=>{let o={error:i?.code||0,errorDescription:i?.message||""};if(i instanceof co&&i.response&&i.response.data&&!R.isUndefined(i.response.data.error)){const l=i.response.data;o={error:l.error,errorDescription:l.error_description}}const a=new We({code:String(o.error),description:o.errorDescription,status:i.response?.status||0,requestInfo:{method:e,params:t},originalError:i});return a.status===401&&["expired_token","invalid_token"].includes(a.answerError.error)?(this.getLogger().info(`refreshAuth >> ${a.answerError.error} >>>`),s=await this.#t.refreshAuth(),await this.#r.check(),this.#e.post(this.#u(e),this.#a(s,t,n)).then(async l=>{const u=l.data;return Promise.resolve({status:l.status,payload:u})},async l=>{let u={error:l?.code||0,errorDescription:l?.message||""};if(l instanceof co&&l.response&&l.response.data){const f=l.response.data;u={error:f.error,errorDescription:f.error_description}}const c=new We({code:String(u.error),description:u.errorDescription,status:i.response?.status||0,requestInfo:{method:e,params:t},originalError:l});return Promise.reject(c)})):Promise.reject(a)}).then(i=>{const o=new Sr({answer:i.payload,query:{method:e,params:t,start:n},status:i.status});return Promise.resolve(o)})}#a(e,t,n=0){const s=Object.assign({},t);return this.#s.length>0&&(s.logTag=this.#s),s[this.#n.getQueryStringParameterName()]=this.#n.getRequestId(),s[this.#n.getQueryStringSdkParameterName()]="0.2.1",s.data&&s.data.start&&delete s.data.start,e.refresh_token!=="hook"&&(s.auth=e.access_token),s.start=n,s}#u(e){return`${encodeURIComponent(e)}.json`}setClientSideWarning(e,t){this.#o=e,this.#i=t}isServerSide(){return typeof window>"u"}};class Pt{static batchSize=50;_isInit=!1;_http=null;_logger=null;constructor(){this._isInit=!1}get isInit(){return this._isInit}async init(){this._isInit=!0}destroy(){}setLogger(e){this._logger=e,this.getHttpClient().setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}callMethod(e,t,n){return this.getHttpClient().call(e,t||{},n||0)}async callListMethod(e,t={},n=null,s=null){const i=new $e;return R.isFunction(n)&&n!==null&&n(0),this.callMethod(e,t,0).then(async o=>{let a=[],l;if(s===null?l=o.getData().result:l=o.getData().result[s],a=[...a,...l],o.isMore()){let u=o;for(;u=await u.getNext(this.getHttpClient()),u!==!1;){let c;if(s===null?c=u.getData().result:c=u.getData().result[s],a=[...a,...c],n){const f=u.getTotal();n(f>0?Math.round(100*a.length/f):100)}}}return i.setData(a),n&&n(100),i})}async*fetchListMethod(e,t={},n="ID",s=null){t.order=t.order||{},t.filter=t.filter||{},t.start=-1;const i=`>${n}`;t.order[n]="ASC",t.filter[i]=0;do{const o=await this.callMethod(e,t,t.start);let a;if(!R.isNull(s)&&s!==null?a=o.getData().result[s]:a=o.getData().result,a.length===0||(yield a,a.length<Pt.batchSize))break;const l=a.at(-1);l&&n in l&&(t.filter[i]=l[n])}while(!0)}async callBatch(e,t=!0){return this.getHttpClient().batch(e,t)}chunkArray(e,t=50){const n=[];for(let s=0;s<e.length;s+=t){const i=e.slice(s,s+t);n.push(i)}return n}async callBatchByChunk(e,t=!0){const n=new $e,s=[],i=this.chunkArray(e,Pt.batchSize);for(const o of i){const a=await this.callBatch(o,t);s.push(...a.getData())}return n.setData(s)}getHttpClient(){if(!this.isInit||this._http===null)throw new Error("Http not init");return this._http}_getHttpOptions(){return null}_ensureInitialized(){if(!this._isInit)throw new Error("B24 not initialized")}}var Mn=(r=>(r.en="en",r.de="de",r.la="la",r.br="br",r.fr="fr",r.it="it",r.pl="pl",r.ru="ru",r.ua="ua",r.tr="tr",r.sc="sc",r.tc="tc",r.ja="ja",r.vn="vn",r.id="id",r.ms="ms",r.th="th",r.ar="ar",r))(Mn||{});const oh=()=>({scrollWidth:Math.max(document.documentElement.scrollWidth,document.documentElement.offsetWidth),scrollHeight:Math.max(document.documentElement.scrollHeight,document.documentElement.offsetHeight)});let ah=class ct{static isInternalConstructing=!1;static instance=null;_defLocale=null;constructor(){if(!ct.isInternalConstructing)throw new TypeError("FormatterNumber is not constructable");ct.isInternalConstructing=!1}static getInstance(){return ct.instance||(ct.isInternalConstructing=!0,ct.instance=new ct),ct.instance}setDefLocale(e){this._defLocale=e}format(e,t){let n;(typeof t>"u"||!R.isStringFilled(t))&&(t=R.isStringFilled(this._defLocale)?this._defLocale||"en":typeof navigator>"u"?"en":navigator?.language||"en"),Number.isInteger(e)?n=new Intl.NumberFormat(t,{minimumFractionDigits:0,maximumFractionDigits:0}):n=new Intl.NumberFormat(t,{minimumFractionDigits:2,maximumFractionDigits:2});let s=n.format(e);return t.includes("ru")&&(s=s.replace(",",".")),s}};class T{countryCode;length;structure;example;_cachedRegex=null;constructor(e,t,n,s){this.countryCode=e,this.length=t,this.structure=n,this.example=s}isValid(e){return this.length===e.length&&this.countryCode===e.slice(0,2)&&this._regex().test(e.slice(4))&&this._iso7064Mod9710(this._iso13616Prepare(e))==1}toBBAN(e,t){return(this._regex().exec(e.slice(4)||"")||[]).slice(1).join(t)}fromBBAN(e){if(!this.isValidBBAN(e))throw new Error("Invalid BBAN");const t=("0"+(98-this._iso7064Mod9710(this._iso13616Prepare(this.countryCode+"00"+e)))).slice(-2);return this.countryCode+t+e}isValidBBAN(e){return this.length-4===e.length&&this._regex().test(e)}_regex(){return this._cachedRegex===null&&(this._cachedRegex=this._parseStructure(this.structure)),this._cachedRegex}_parseStructure(e){const t=(e.match(/(.{3})/g)||[]).map(n=>{let s;const i=n.slice(0,1),o=Number.parseInt(n.slice(1),10);switch(i){case"A":s="0-9A-Za-z";break;case"B":s="0-9A-Z";break;case"C":s="A-Za-z";break;case"F":s="0-9";break;case"L":s="a-z";break;case"U":s="A-Z";break;case"W":s="0-9a-z";break}return"(["+s+"]{"+o+"})"});return new RegExp("^"+t.join("")+"$")}_iso13616Prepare(e){return e=e.toUpperCase(),e=e.substring(4)+e.substring(0,4),e.split("").map(t=>{const n=t.charCodeAt(0);return n>=65&&n<=90?(n-65+10).toString():t}).join("")}_iso7064Mod9710(e){let t=e,n;for(;t.length>2;)n=t.slice(0,9),t=Number.parseInt(n,10)%97+t.slice(n.length);return Number.parseInt(t,10)%97}}class Xe{static isInternalConstructing=!1;static instance=null;_countries;constructor(){if(!Xe.isInternalConstructing)throw new TypeError("FormatterIban is not constructable");Xe.isInternalConstructing=!1,this._countries=new Map}static getInstance(){return Xe.instance||(Xe.isInternalConstructing=!0,Xe.instance=new Xe),Xe.instance}addSpecification(e){this._countries.set(e.countryCode,e)}isValid(e){if(!this._isString(e))return!1;e=this.electronicFormat(e);const t=e.slice(0,2);if(!this._countries.has(t))throw new Error(`No country with code ${t}`);const n=this._countries.get(t);return!!n&&n.isValid(e)}printFormat(e,t){typeof t>"u"&&(t=" ");const n=/(.{4})(?!$)/g;return this.electronicFormat(e).replace(n,"$1"+t)}electronicFormat(e){const t=/[^a-zA-Z0-9]/g;return e.replace(t,"").toUpperCase()}toBBAN(e,t){typeof t>"u"&&(t=" "),e=this.electronicFormat(e);const n=e.slice(0,2);if(!this._countries.has(n))throw new Error(`No country with code ${n}`);const s=this._countries.get(n);if(!s)throw new Error(`No country with code ${n}`);return s.toBBAN(e,t)}fromBBAN(e,t){if(!this._countries.has(e))throw new Error(`No country with code ${e}`);const n=this._countries.get(e);if(!n)throw new Error(`No country with code ${e}`);return n.fromBBAN(this.electronicFormat(t))}isValidBBAN(e,t){if(!this._isString(t))return!1;if(!this._countries.has(e))throw new Error(`No country with code ${e}`);const n=this._countries.get(e);return!!n&&n.isValidBBAN(this.electronicFormat(t))}_isString(e){return typeof e=="string"||e instanceof String}}const lh=()=>{const r=ah.getInstance(),e=Xe.getInstance();return e.addSpecification(new T("AD",24,"F04F04A12","AD1200012030200359100100")),e.addSpecification(new T("AE",23,"F03F16","AE070331234567890123456")),e.addSpecification(new T("AL",28,"F08A16","AL47212110090000000235698741")),e.addSpecification(new T("AT",20,"F05F11","AT611904300234573201")),e.addSpecification(new T("AZ",28,"U04A20","AZ21NABZ00000000137010001944")),e.addSpecification(new T("BA",20,"F03F03F08F02","BA391290079401028494")),e.addSpecification(new T("BE",16,"F03F07F02","BE68539007547034")),e.addSpecification(new T("BG",22,"U04F04F02A08","BG80BNBG96611020345678")),e.addSpecification(new T("BH",22,"U04A14","BH67BMAG00001299123456")),e.addSpecification(new T("BR",29,"F08F05F10U01A01","BR9700360305000010009795493P1")),e.addSpecification(new T("BY",28,"A04F04A16","BY13NBRB3600900000002Z00AB00")),e.addSpecification(new T("CH",21,"F05A12","CH9300762011623852957")),e.addSpecification(new T("CR",22,"F04F14","CR72012300000171549015")),e.addSpecification(new T("CY",28,"F03F05A16","CY17002001280000001200527600")),e.addSpecification(new T("CZ",24,"F04F06F10","CZ6508000000192000145399")),e.addSpecification(new T("DE",22,"F08F10","DE89370400440532013000")),e.addSpecification(new T("DK",18,"F04F09F01","DK5000400440116243")),e.addSpecification(new T("DO",28,"U04F20","DO28BAGR00000001212453611324")),e.addSpecification(new T("EE",20,"F02F02F11F01","EE382200221020145685")),e.addSpecification(new T("EG",29,"F04F04F17","EG800002000156789012345180002")),e.addSpecification(new T("ES",24,"F04F04F01F01F10","ES9121000418450200051332")),e.addSpecification(new T("FI",18,"F06F07F01","FI2112345600000785")),e.addSpecification(new T("FO",18,"F04F09F01","FO6264600001631634")),e.addSpecification(new T("FR",27,"F05F05A11F02","FR1420041010050500013M02606")),e.addSpecification(new T("GB",22,"U04F06F08","GB29NWBK60161331926819")),e.addSpecification(new T("GE",22,"U02F16","GE29NB0000000101904917")),e.addSpecification(new T("GI",23,"U04A15","GI75NWBK000000007099453")),e.addSpecification(new T("GL",18,"F04F09F01","GL8964710001000206")),e.addSpecification(new T("GR",27,"F03F04A16","GR1601101250000000012300695")),e.addSpecification(new T("GT",28,"A04A20","GT82TRAJ01020000001210029690")),e.addSpecification(new T("HR",21,"F07F10","HR1210010051863000160")),e.addSpecification(new T("HU",28,"F03F04F01F15F01","HU42117730161111101800000000")),e.addSpecification(new T("IE",22,"U04F06F08","IE29AIBK93115212345678")),e.addSpecification(new T("IL",23,"F03F03F13","IL620108000000099999999")),e.addSpecification(new T("IS",26,"F04F02F06F10","IS140159260076545510730339")),e.addSpecification(new T("IT",27,"U01F05F05A12","IT60X0542811101000000123456")),e.addSpecification(new T("IQ",23,"U04F03A12","IQ98NBIQ850123456789012")),e.addSpecification(new T("JO",30,"A04F22","JO15AAAA1234567890123456789012")),e.addSpecification(new T("KW",30,"U04A22","KW81CBKU0000000000001234560101")),e.addSpecification(new T("KZ",20,"F03A13","KZ86125KZT5004100100")),e.addSpecification(new T("LB",28,"F04A20","LB62099900000001001901229114")),e.addSpecification(new T("LC",32,"U04F24","LC07HEMM000100010012001200013015")),e.addSpecification(new T("LI",21,"F05A12","LI21088100002324013AA")),e.addSpecification(new T("LT",20,"F05F11","LT121000011101001000")),e.addSpecification(new T("LU",20,"F03A13","LU280019400644750000")),e.addSpecification(new T("LV",21,"U04A13","LV80BANK0000435195001")),e.addSpecification(new T("MC",27,"F05F05A11F02","MC5811222000010123456789030")),e.addSpecification(new T("MD",24,"U02A18","MD24AG000225100013104168")),e.addSpecification(new T("ME",22,"F03F13F02","ME25505000012345678951")),e.addSpecification(new T("MK",19,"F03A10F02","MK07250120000058984")),e.addSpecification(new T("MR",27,"F05F05F11F02","MR1300020001010000123456753")),e.addSpecification(new T("MT",31,"U04F05A18","MT84MALT011000012345MTLCAST001S")),e.addSpecification(new T("MU",30,"U04F02F02F12F03U03","MU17BOMM0101101030300200000MUR")),e.addSpecification(new T("NL",18,"U04F10","NL91ABNA0417164300")),e.addSpecification(new T("NO",15,"F04F06F01","NO9386011117947")),e.addSpecification(new T("PK",24,"U04A16","PK36SCBL0000001123456702")),e.addSpecification(new T("PL",28,"F08F16","PL61109010140000071219812874")),e.addSpecification(new T("PS",29,"U04A21","PS92PALS000000000400123456702")),e.addSpecification(new T("PT",25,"F04F04F11F02","PT50000201231234567890154")),e.addSpecification(new T("QA",29,"U04A21","QA30AAAA123456789012345678901")),e.addSpecification(new T("RO",24,"U04A16","RO49AAAA1B31007593840000")),e.addSpecification(new T("RS",22,"F03F13F02","RS35260005601001611379")),e.addSpecification(new T("SA",24,"F02A18","SA0380000000608010167519")),e.addSpecification(new T("SC",31,"U04F04F16U03","SC18SSCB11010000000000001497USD")),e.addSpecification(new T("SE",24,"F03F16F01","SE4550000000058398257466")),e.addSpecification(new T("SI",19,"F05F08F02","SI56263300012039086")),e.addSpecification(new T("SK",24,"F04F06F10","SK3112000000198742637541")),e.addSpecification(new T("SM",27,"U01F05F05A12","SM86U0322509800000000270100")),e.addSpecification(new T("ST",25,"F08F11F02","ST68000100010051845310112")),e.addSpecification(new T("SV",28,"U04F20","SV62CENR00000000000000700025")),e.addSpecification(new T("TL",23,"F03F14F02","TL380080012345678910157")),e.addSpecification(new T("TN",24,"F02F03F13F02","TN5910006035183598478831")),e.addSpecification(new T("TR",26,"F05F01A16","TR330006100519786457841326")),e.addSpecification(new T("UA",29,"F25","UA511234567890123456789012345")),e.addSpecification(new T("VA",22,"F18","VA59001123000012345678")),e.addSpecification(new T("VG",24,"U04F16","VG96VPVG0000012345678901")),e.addSpecification(new T("XK",20,"F04F10F02","XK051212012345678906")),e.addSpecification(new T("AO",25,"F21","AO69123456789012345678901")),e.addSpecification(new T("BF",27,"F23","BF2312345678901234567890123")),e.addSpecification(new T("BI",16,"F12","BI41123456789012")),e.addSpecification(new T("BJ",28,"F24","BJ39123456789012345678901234")),e.addSpecification(new T("CI",28,"U02F22","CI70CI1234567890123456789012")),e.addSpecification(new T("CM",27,"F23","CM9012345678901234567890123")),e.addSpecification(new T("CV",25,"F21","CV30123456789012345678901")),e.addSpecification(new T("DZ",24,"F20","DZ8612345678901234567890")),e.addSpecification(new T("IR",26,"F22","IR861234568790123456789012")),e.addSpecification(new T("MG",27,"F23","MG1812345678901234567890123")),e.addSpecification(new T("ML",28,"U01F23","ML15A12345678901234567890123")),e.addSpecification(new T("MZ",25,"F21","MZ25123456789012345678901")),e.addSpecification(new T("SN",28,"U01F23","SN52A12345678901234567890123")),e.addSpecification(new T("GF",27,"F05F05A11F02","GF121234512345123456789AB13")),e.addSpecification(new T("GP",27,"F05F05A11F02","GP791234512345123456789AB13")),e.addSpecification(new T("MQ",27,"F05F05A11F02","MQ221234512345123456789AB13")),e.addSpecification(new T("RE",27,"F05F05A11F02","RE131234512345123456789AB13")),e.addSpecification(new T("PF",27,"F05F05A11F02","PF281234512345123456789AB13")),e.addSpecification(new T("TF",27,"F05F05A11F02","TF891234512345123456789AB13")),e.addSpecification(new T("YT",27,"F05F05A11F02","YT021234512345123456789AB13")),e.addSpecification(new T("NC",27,"F05F05A11F02","NC551234512345123456789AB13")),e.addSpecification(new T("BL",27,"F05F05A11F02","BL391234512345123456789AB13")),e.addSpecification(new T("MF",27,"F05F05A11F02","MF551234512345123456789AB13")),e.addSpecification(new T("PM",27,"F05F05A11F02","PM071234512345123456789AB13")),e.addSpecification(new T("WF",27,"F05F05A11F02","WF621234512345123456789AB13")),{formatterNumber:r,formatterIban:e}};class bo{#e;constructor(e){this.#e=Object.freeze(Object.assign({},e))}getAuthData(){const e=this.#e.b24Url.replaceAll("https://","").replaceAll("http://","").replace(/:(80|443)$/,"");return{access_token:this.#e.secret,refresh_token:"hook",expires_in:0,domain:e,member_id:e}}refreshAuth(){return Promise.resolve(this.getAuthData())}getUniq(e){const t=this.getAuthData();if(t===!1)throw new Error("AuthData not init");return[e,t.member_id].join("_")}getTargetOrigin(){return`${this.#e.b24Url}`}getTargetOriginWithPath(){return`${this.#e.b24Url}/rest/${this.#e.userId}/${this.#e.secret}`}get isAdmin(){return!0}}class ch extends Pt{#e;constructor(e){super(),this.#e=new bo(e),this._http=new wo(this.#e.getTargetOriginWithPath(),this.#e,this._getHttpOptions()),this._http.setClientSideWarning(!0,"It is not safe to use hook requests on the client side"),this._isInit=!0}setLogger(e){super.setLogger(e)}get auth(){return this.#e}offClientSideWarning(){this.getHttpClient().setClientSideWarning(!1,"")}getTargetOrigin(){return this._ensureInitialized(),this.#e.getTargetOrigin()}getTargetOriginWithPath(){return this._ensureInitialized(),this.#e.getTargetOriginWithPath()}}var Q=(r=>(r.getInitData="getInitData",r.setInstallFinish="setInstallFinish",r.setInstall="setInstall",r.refreshAuth="refreshAuth",r.setAppOption="setAppOption",r.setUserOption="setUserOption",r.resizeWindow="resizeWindow",r.reloadWindow="reloadWindow",r.setTitle="setTitle",r.setScroll="setScroll",r.openApplication="openApplication",r.closeApplication="closeApplication",r.openPath="openPath",r.imCallTo="imCallTo",r.imPhoneTo="imPhoneTo",r.imOpenMessenger="imOpenMessenger",r.imOpenHistory="imOpenHistory",r.selectUser="selectUser",r.selectAccess="selectAccess",r.selectCRM="selectCRM",r.showAppForm="showAppForm",r.getInterface="getInterface",r.placementBindEvent="placementBindEvent",r))(Q||{});class So{#e;#t;#r;_logger=null;runCallbackHandler;constructor(e){this.#e=e,this.#t=new Map,this.#r=new Map,this.runCallbackHandler=this._runCallback.bind(this)}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}subscribe(){window.addEventListener("message",this.runCallbackHandler)}unsubscribe(){window.removeEventListener("message",this.runCallbackHandler)}async send(e,t=null){return new Promise((n,s)=>{let i;const o={resolve:n,reject:s,timeoutId:null},a=this.#n(o),l=Hn(t||{},["callBack","isSafely","safelyTime"]),{callBack:u}=t||{};if(u&&this.#r.set(a,u),e.toString().includes(":"))i={method:e.toString(),params:l??"",callback:a,appSid:this.#e.getAppSid()};else{i=e.toString();const c=[t?JSON.stringify(l):null,a,this.#e.getAppSid()];i+=":"+c.filter(Boolean).join(":")}this.getLogger().log(`send to ${this.#e.getTargetOrigin()}`,{cmd:i}),parent.postMessage(i,this.#e.getTargetOrigin()),t?.isSafely&&(this.#t.get(a).timeoutId=window.setTimeout(()=>{this.#t.has(a)&&(this.getLogger().warn(`Action ${e.toString()} stop by timeout`),this.#t.delete(a),n({isSafely:!0}))},Number.parseInt(String(t?.safelyTime||900))))})}_runCallback(e){if(e.origin===this.#e.getTargetOrigin()&&e.data){this.getLogger().log(`get from ${e.origin}`,{data:e.data});const t=e.data.split(":"),n={id:t[0],args:t.slice(1).join(":")};if(n.args&&(n.args=JSON.parse(n.args)),this.#t.has(n.id)){const s=this.#t.get(n.id);s.timeoutId&&clearTimeout(s.timeoutId),this.#t.delete(n.id),s.resolve(n.args)}else if(this.#r.has(n.id)){const s=this.#r.get(n.id);s&&s.apply(globalThis,[n.args])}}}#n(e){const t=$.getUniqId();return this.#t.set(t,e),t}}class _o{#e="";#t=!0;#r=null;#n=null;#s=null;constructor(e){e.DOMAIN&&(this.#e=e.DOMAIN,this.#e=this.#e.replace(/:(80|443)$/,"")),this.#t=e.PROTOCOL===!0,e.LANG&&(this.#s=e.LANG),e.APP_SID&&(this.#r=e.APP_SID)}initData(e){return this.#e||(this.#e=e.DOMAIN),this.#n||(this.#n=e.PATH),this.#s||(this.#s=e.LANG),this.#t=Number.parseInt(e.PROTOCOL)===1,this.#e=this.#e.replace(/:(80|443)$/,""),this}getAppSid(){if(this.#r===null)throw new Error("Not init appSid");return this.#r}getTargetOrigin(){return`${this.#t?"https":"http"}://${this.#e}`}getTargetOriginWithPath(){return this.getTargetOrigin()+(this.#n??"")}getLang(){return this.#s||Mn.en}}class vo{#e=null;#t=null;#r=0;#n=null;#s=!1;#o;#i;constructor(e,t){this.#o=e,this.#i=t}initData(e){return e.AUTH_ID&&(this.#e=e.AUTH_ID,this.#t=e.REFRESH_ID,this.#r=Date.now()+Number.parseInt(e.AUTH_EXPIRES)*1e3,this.#s=e.IS_ADMIN,this.#n=e.MEMBER_ID||""),this}getAuthData(){return this.#r>Date.now()?{access_token:this.#e,refresh_token:this.#t,expires_in:this.#r,domain:this.#o.getTargetOrigin(),member_id:this.#n}:!1}async refreshAuth(){return this.#i.send(Q.refreshAuth,{}).then(e=>(this.#e=e.AUTH_ID,this.#t=e.REFRESH_ID,this.#r=Date.now()+Number.parseInt(e.AUTH_EXPIRES)*1e3,Promise.resolve(this.getAuthData())))}getUniq(e){return[e,this.#n||""].join("_")}get isAdmin(){return this.#s}}class ko{#e;constructor(e){this.#e=e}async closeApplication(){return this.#e.send(Q.closeApplication,{isSafely:!1})}async fitWindow(){const e="100%",t=this.getScrollSize().scrollHeight;return this.#e.send(Q.resizeWindow,{width:e,height:t,isSafely:!0})}async resizeWindow(e,t){return e>0&&t>0?this.#e.send(Q.resizeWindow,{width:e,height:t,isSafely:!0}):Promise.reject(new Error(`Wrong width:number = ${e} or height:number = ${t}`))}async resizeWindowAuto(e=null,t=0,n=0){const s=document.body;let i=Math.max(s.scrollWidth,s.offsetWidth);n>0&&(i=Math.max(n,i));let o=Math.max(s.scrollHeight,s.offsetHeight);return e&&(o=Math.max(e.scrollHeight,e.offsetHeight)),t>0&&(o=Math.max(t,o)),this.resizeWindow(i,o)}getScrollSize(){return oh()}async scrollParentWindow(e){return Number.isInteger(e)?(e<0&&(e=0),this.#e.send(Q.setScroll,{scroll:e,isSafely:!0})):Promise.reject(new Error("Wrong scroll number"))}async reloadWindow(){return this.#e.send(Q.reloadWindow,{isSafely:!0})}async setTitle(e){return this.#e.send(Q.setTitle,{title:e.toString(),isSafely:!0})}async imCallTo(e,t=!0){return this.#e.send(Q.imCallTo,{userId:e,video:t,isSafely:!0})}async imPhoneTo(e){return this.#e.send(Q.imPhoneTo,{phone:e,isSafely:!0})}async imOpenMessenger(e){return this.#e.send(Q.imOpenMessenger,{dialogId:e,isSafely:!0})}async imOpenHistory(e){return this.#e.send(Q.imOpenHistory,{dialogId:e,isSafely:!0})}}let Eo=class{#e;#t=null;#r=null;constructor(e){this.#e=e}initData(e){return e.APP_OPTIONS&&(this.#t=e.APP_OPTIONS),e.USER_OPTIONS&&(this.#r=e.USER_OPTIONS),this}appGet(e){if(this.#t&&this.#t[e])return this.#t[e];throw new Error(`app.option.${e} not set`)}async appSet(e,t){return this.#t||(this.#t=[]),this.#t[e]=t,this.#n(Q.setAppOption,e,this.#t[e])}userGet(e){if(this.#r&&this.#r[e])return this.#r[e];throw new Error(`user.option.${e} not set`)}async userSet(e,t){return this.#t||(this.#t=[]),this.#t[e]||(this.#t[e]=null),this.#r[e]=t,this.#n(Q.setUserOption,e,this.#r[e])}async#n(e,t,n){return this.#e.send(e,{name:t,value:n,isSafely:!0}).then(()=>Promise.resolve())}};class To{#e;constructor(e){this.#e=e}async selectUser(){return this.#e.send(Q.selectUser,{mult:!1})}async selectUsers(){return this.#e.send(Q.selectUser,{mult:!0})}async selectAccess(e=[]){return console.warn("@deprecated selectAccess"),this.#e.send(Q.selectAccess,{value:e})}async selectCRM(e){return console.warn("@deprecated selectCRM"),this.#e.send(Q.selectCRM,{entityType:e?.entityType,multiple:e?.multiple,value:e?.value})}}class Oo{#e;#t;constructor(e,t){this.#e=e,this.#t=t}getUrl(e="/"){return new URL(e,this.#e.getTargetOrigin())}getTargetOrigin(){return this.#e.getTargetOrigin()}async openSliderAppPage(e={}){return this.#t.send(Q.openApplication,e)}async closeSliderAppPage(){return this.#t.send(Q.closeApplication,{isSafely:!1})}#r(e=1640){return e>0?e>1200&&e<=1640?"/crm/type/0/details/0/../../../../..":e>950&&e<=1200?"/company/personal/user/0/groups/create/../../../../../..":e>900&&e<=950?"/crm/company/requisite/0/../../../..":e<=900?"/workgroups/group/0/card/../../../..":"/crm/deal/../..":"/crm/deal/../.."}async openPath(e,t=1640){const n=new URL(e);return n.searchParams.set("IFRAME","Y"),n.searchParams.set("IFRAME_TYPE","SIDE_SLIDER"),this.#t.send(Q.openPath,{path:[this.#r(t),n.pathname,n.search].join("")}).then(s=>s?.result==="error"?s?.errorCode==="METHOD_NOT_SUPPORTED_ON_DEVICE"?new Promise((i,o)=>{const a=window.open(e,"_blank");if(!a){o(new Error("Error open window"));return}let l=0;const u=1e3*60*5,c=window.setInterval(()=>{l=l+1,a.closed?(clearInterval(c),i({isOpenAtNewWindow:!0,isClose:!0})):l>u&&(clearInterval(c),i({isOpenAtNewWindow:!0,isClose:!1}))},1e3)}):Promise.reject(new Error(s?.errorCode)):s?.result==="close"?Promise.resolve({isOpenAtNewWindow:!1,isClose:!0}):Promise.resolve({isOpenAtNewWindow:!1,isClose:!1}))}async showAppForm(e){return console.warn("@deprecated showAppForm"),this.#t.send(Q.showAppForm,{params:e,isSafely:!0})}}class Ao{#e;#t="";#r={};constructor(e){this.#e=e}initData(e){this.#t=e.PLACEMENT||"DEFAULT";const t=e.PLACEMENT_OPTIONS;return this.#r=Object.freeze(t),this}get title(){return this.#t}get isDefault(){return this.title==="DEFAULT"}get options(){return this.#r}get isSliderMode(){return this.options?.IFRAME==="Y"}async getInterface(){return this.#e.send(Q.getInterface,{isSafely:!0})}async bindEvent(e,t){return this.#e.send(Q.placementBindEvent,{event:e,callBack:t,isSafely:!0})}async call(e,t={}){return this.#e.send(e,{...t,isSafely:!0})}}class Io extends Pt{#e=!1;#t=!1;#r;#n;#s;#o;#i;#l;#c;#a;constructor(e){super(),this.#r=new _o(e),this.#n=new So(this.#r),this.#n.subscribe(),this.#s=new vo(this.#r,this.#n),this.#o=new ko(this.#n),this.#i=new Eo(this.#n),this.#l=new To(this.#n),this.#c=new Oo(this.#r,this.#n),this.#a=new Ao(this.#n),this._isInit=!1}setLogger(e){super.setLogger(e),this.#n.setLogger(this.getLogger())}get isFirstRun(){return this._ensureInitialized(),this.#t}get isInstallMode(){return this._ensureInitialized(),this.#e}get parent(){return this._ensureInitialized(),this.#o}get auth(){return this._ensureInitialized(),this.#s}get slider(){return this._ensureInitialized(),this.#c}get placement(){return this._ensureInitialized(),this.#a}get options(){return this._ensureInitialized(),this.#i}get dialog(){return this._ensureInitialized(),this.#l}async init(){return this.#n.send(Q.getInitData,{}).then(e=>(this.getLogger().log("init data:",e),this.#r.initData(e),this.#s.initData(e),this.#a.initData(e),this.#i.initData(e),this.#e=e.INSTALL,this.#t=e.FIRST_RUN,this._http=new wo(this.#r.getTargetOriginWithPath(),this.#s,this._getHttpOptions()),this._isInit=!0,this.#t?this.#n.send(Q.setInstall,{install:!0}):Promise.resolve()))}destroy(){this.#n.unsubscribe(),super.destroy()}async installFinish(){return this.isInstallMode?this.#n.send(Q.setInstallFinish,{}):Promise.reject(new Error("Application was previously installed. You cannot call installFinish"))}getTargetOrigin(){return this._ensureInitialized(),this.#r.getTargetOrigin()}getTargetOriginWithPath(){return this._ensureInitialized(),this.#r.getTargetOriginWithPath()}getAppSid(){return this._ensureInitialized(),this.#r.getAppSid()}getLang(){return this._ensureInitialized(),this.#r.getLang()}}class Pn extends Error{constructor(e,...t){super(...t),this.name="UnhandledMatchError",this.message=`Unhandled match value of type ${e}`,this.stack=new Error("for stack").stack}}class xt{_b24;_logger=null;_data=null;constructor(e){this._b24=e}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}async initData(e){return this.getLogger().log(e),Promise.reject(new Error("Rewrite this function"))}}class uh extends xt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("ProfileManager.data not initialized");return this._data}}class hh extends xt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("AppManager.data not initialized");return this._data}get statusCode(){return Oi[this.data.status]||"Unknown status"}}class fh extends xt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("PaymentManager.data not initialized");return this._data}}class dh extends xt{_data=null;async initData(e){this._data=e,this.makeRestrictionManagerParams()}get data(){if(this._data===null)throw new Error("LicenseManager.data not initialized");return this._data}makeRestrictionManagerParams(){this.data?.license&&this.data.license.includes("ent")&&(this.getLogger().log(`LICENSE ${this.data.license} => up restriction manager params`,pn),this._b24.getHttpClient().setRestrictionManagerParams(pn))}}class ph extends xt{async initData(e){this._data={currencyBase:"?",currencyList:new Map},this.setBaseCurrency(e.currencyBase),this.setCurrencyList(e.currencyList);try{await this.loadData()}catch(t){throw t instanceof Error?t:(console.error(t),new Error("Failed to load data"))}}async loadData(){const e=this.currencyList.map(t=>({method:"crm.currency.get",params:{id:t}}));if(e.length===0)return Promise.resolve();try{(await this._b24.callBatchByChunk(e,!0)).getData().forEach(t=>{if(typeof t.LANG>"u")return;const n=t.CURRENCY,s=this.data.currencyList.get(n);if(!(typeof s>"u"))for(const[i,o]of Object.entries(t.LANG))switch(s.lang[i]={decimals:Number.parseInt(o.DECIMALS),decPoint:o.DEC_POINT,formatString:o.FORMAT_STRING,fullName:o.FULL_NAME,isHideZero:o.HIDE_ZERO==="Y",thousandsSep:o.THOUSANDS_SEP,thousandsVariant:o.THOUSANDS_VARIANT},s.lang[i].thousandsVariant){case"N":s.lang[i].thousandsSep="";break;case"D":s.lang[i].thousandsSep=".";break;case"C":s.lang[i].thousandsSep=",";break;case"S":s.lang[i].thousandsSep=" ";break;case"B":s.lang[i].thousandsSep="&nbsp;";break;default:R.isStringFilled(s.lang[i].thousandsSep)||(s.lang[i].thousandsSep=" ");break}})}catch(t){console.error(t)}}get data(){if(this._data===null)throw new Error("CurrencyManager.data not initialized");return this._data}setBaseCurrency(e){this._data.currencyBase=e}get baseCurrency(){return this.data.currencyBase}setCurrencyList(e=[]){this.data.currencyList.clear();for(const t of e)this.data.currencyList.set(t.CURRENCY,{amount:Number.parseFloat(t.CURRENCY),amountCnt:Number.parseInt(t.AMOUNT_CNT),isBase:t.BASE==="Y",currencyCode:t.CURRENCY,dateUpdate:$.toDateTime(t.DATE_UPDATE),decimals:Number.parseInt(t.DECIMALS),decPoint:t.DEC_POINT,formatString:t.FORMAT_STRING,fullName:t.FULL_NAME,lid:t.LID,sort:Number.parseInt(t.SORT),thousandsSep:t?.THOUSANDS_SEP||null,lang:{}})}getCurrencyFullName(e,t){const n=this.data.currencyList.get(e);if(typeof n>"u")throw new Pn(e);let s=n.fullName;if(!(typeof t>"u")){const i=n.lang[t];R.isUndefined(i)||(s=i.fullName)}return s}getCurrencyLiteral(e,t){const n=this.data.currencyList.get(e);if(typeof n>"u")throw new Pn(e);let s=n.formatString;if(!(typeof t>"u")){const i=n.lang[t];R.isUndefined(i)||(s=i.formatString)}return s.replaceAll("&#","&%").replaceAll("#","").replaceAll("&%","&#").trim()||""}get currencyList(){return[...this.data.currencyList.keys()]}format(e,t,n){const s=this.data.currencyList.get(t);if(typeof s>"u")throw new Pn(t);const i={formatString:s.formatString,decimals:s.decimals,decPoint:s.decPoint,thousandsSep:s.thousandsSep};R.isStringFilled(i.thousandsSep)||(i.thousandsSep="");const o=s.lang[n];return R.isUndefined(o)||(i.formatString=o.formatString,i.decimals=o.decimals,i.decPoint=o.decPoint,i.thousandsSep=o.thousandsSep),i.formatString.replaceAll("&#","&%").replace("#",$.numberFormat(e,i.decimals,i.decPoint,i.thousandsSep)).replaceAll("&%","&#")||""}}class xn extends xt{_data;_type;static getSupportTypes(){return[Ye.NotSet,Ye.JsonArray,Ye.JsonObject,Ye.FloatVal,Ye.IntegerVal,Ye.BoolYN,Ye.StringVal]}static prepareArrayList(e){return R.isArray(e)?e:R.isObject(e)?Object.values(e):[]}constructor(e,t){super(e),this._type=t,this._data=new Map}get data(){return this._data}reset(){this.data.clear()}async initData(e){if(this.reset(),R.isObject(e))for(const[t,n]of Object.entries(e))this.data.set(t,n)}getJsonArray(e,t=[]){if(!this.data.has(e))return t;let n=this.data.get(e);try{n=JSON.parse(n),!R.isArray(n)&&!R.isObject(n)&&(n=t)}catch(s){this.getLogger().error(s),n=t}return xn.prepareArrayList(n)}getJsonObject(e,t={}){if(!this.data.has(e))return t;let n=this.data.get(e);try{n=JSON.parse(n)}catch(s){this.getLogger().error(s),n=t}return R.isObject(n)||(n=t),n}getFloat(e,t=0){return this.data.has(e)?$.toNumber(this.data.get(e)):t}getInteger(e,t=0){return this.data.has(e)?$.toInteger(this.data.get(e)):t}getBoolYN(e,t=!0){return this.data.has(e)?$.toBoolean(this.data.get(e)):t}getBoolNY(e,t=!1){return this.data.has(e)?$.toBoolean(this.data.get(e)):t}getString(e,t=""){return this.data.has(e)?this.data.get(e).toString():t}getDate(e,t=null){if(!this.data.has(e))return t;try{const n=$.toDateTime(this.data.get(e).toString());return n.isValid?n:t}catch{return t}}encode(e){return JSON.stringify(e)}decode(e,t){try{return e.length>0?JSON.parse(e):t}catch(n){this.getLogger().warn(n,e)}return t}getMethodSave(){switch(this._type){case"app":return"app.option.set";case"user":return"user.option.set"}}async save(e,t){const n=[];return n.push({method:this.getMethodSave(),params:{options:e}}),R.isObject(t)&&n.push({method:"pull.application.event.add",params:{COMMAND:t?.command,PARAMS:t?.params,MODULE_ID:t?.moduleId}}),this._b24.callBatch(n,!0)}}class Co{_logger=null;userId;siteId;constructor(e={}){this.userId=e.userId?$.toInteger(e.userId):0,this.siteId=e.siteId??"none"}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}set(e,t){if(typeof window.localStorage>"u"){this.getLogger().error(new Error("undefined window.localStorage"));return}typeof t!="string"&&t&&(t=JSON.stringify(t)),window.localStorage.setItem(this._getKey(e),t)}get(e,t){if(typeof window.localStorage>"u")return t||null;const n=window.localStorage.getItem(this._getKey(e));return n===null?t||null:JSON.parse(n)}remove(e){if(typeof window.localStorage>"u"){this.getLogger().error(new Error("undefined window.localStorage"));return}return window.localStorage.removeItem(this._getKey(e))}_getKey(e){return`@bitrix24/b24jssdk-pull-${this.userId}-${this.siteId}-${e}`}compareKey(e,t){return e===this._getKey(t)}}class gh extends Error{constructor(e){super(e),this.name="ErrorNotConnected"}}class mh extends Error{constructor(e){super(e),this.name="ErrorTimeout"}}const Mr="2.0";class yh{_logger=null;_connector;_idCounter=0;_handlers={};_rpcResponseAwaiters=new Map;constructor(e){if(this._connector=e.connector,R.isPlainObject(e.handlers))for(const t in e.handlers)this.handle(t,e.handlers[t])}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}handle(e,t){this._handlers[e]=t}async executeOutgoingRpcCommand(e,t,n=5){return new Promise((s,i)=>{const o=this.createRequest(e,t);this._connector.send(JSON.stringify(o))||i(new gh("websocket is not connected"));const a=setTimeout(()=>{this._rpcResponseAwaiters.delete(o.id),i(new mh("no response"))},n*1e3);this._rpcResponseAwaiters.set(o.id,{resolve:s,reject:i,timeout:a})})}executeOutgoingRpcBatch(e){const t=[],n=[];return e.forEach(({method:s,params:i,id:o})=>{const a=this.createRequest(s,i,o);t.push(a),n.push(new Promise((l,u)=>this._rpcResponseAwaiters.set(a.id,{resolve:l,reject:u})))}),this._connector.send(JSON.stringify(t)),n}processRpcResponse(e){if("id"in e&&this._rpcResponseAwaiters.has(Number(e.id))){const t=this._rpcResponseAwaiters.get(Number(e.id));t&&("result"in e?t.resolve(e.result):"error"in e?t.reject(e?.error||"error"):t.reject("wrong response structure"),clearTimeout(t.timeout),this._rpcResponseAwaiters.delete(Number(e.id)));return}this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Received rpc response with unknown id`),e)}parseJsonRpcMessage(e){let t;try{t=JSON.parse(e)}catch(n){this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Could not decode json rpc message`),n);return}if(R.isArray(t))return this.executeIncomingRpcBatch(t);if(R.isJsonRpcRequest(t))return this.executeIncomingRpcCommand(t);if(R.isJsonRpcResponse(t))return this.processRpcResponse(t);this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: unknown rpc packet`),t)}executeIncomingRpcCommand({method:e,params:t}){return e in this._handlers?this._handlers[e].call(this,t||{}):{jsonrpc:Mr,error:mn.MethodNotFound}}executeIncomingRpcBatch(e){const t=[];for(const n of e)if("jsonrpc"in n)if("method"in n){const s=this.executeIncomingRpcCommand(n);s&&(s.jsonrpc=Mr,s.id=n.id,t.push(s))}else this.processRpcResponse(n);else this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: unknown rpc command in batch`),n),t.push({jsonrpc:Mr,error:mn.InvalidRequest});return t}nextId(){return++this._idCounter}createPublishRequest(e){return e.map(t=>this.createRequest("publish",t))}createRequest(e,t,n){return n||(n=this.nextId()),{jsonrpc:Mr,method:e,params:t,id:n}}}class wh{_logger=null;_storage;_ttl=24*60*60;_callbacks;constructor(e={}){e=e||{},this._storage=e.storage||new Co,this._callbacks={onWebSocketBlockChanged:R.isFunction(e.onWebSocketBlockChanged)?e.onWebSocketBlockChanged:()=>{}},this._storage&&window.addEventListener("storage",this.onLocalStorageSet.bind(this))}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}onLocalStorageSet(e){this._storage.compareKey(e.key||"",Ce.WebsocketBlocked)&&e.newValue!==e.oldValue&&this._callbacks.onWebSocketBlockChanged({isWebSocketBlocked:this.isWebSocketBlocked()})}isWebSocketBlocked(){return this._storage?this._storage.get(Ce.WebsocketBlocked,0)>Date.now():!1}setWebSocketBlocked(e){if(!this._storage)return!1;try{this._storage.set(Ce.WebsocketBlocked,e?Date.now()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Could not save WS_blocked flag in local storage. Error: `),t),!1}return!0}isLongPollingBlocked(){return this._storage?this._storage.get(Ce.LongPollingBlocked,0)>Date.now():!1}setLongPollingBlocked(e){if(!this._storage)return!1;try{this._storage.set(Ce.LongPollingBlocked,e?Date.now()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Could not save LP_blocked flag in local storage. Error: `),t),!1}return!0}isLoggingEnabled(){return this._storage?this._storage.get(Ce.LoggingEnabled,0)>this.getTimestamp():!1}setLoggingEnabled(e){if(!this._storage)return!1;try{this._storage.set(Ce.LoggingEnabled,e?this.getTimestamp()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${$.getDateForLog()}: LocalStorage error: `),t),!1}return!0}getTimestamp(){return Date.now()}}class bh{_logger=null;_publicIds;_restClient;_getPublicListMethod;constructor(e){this._publicIds=new Map,this._restClient=e.b24,this._getPublicListMethod=e.getPublicListMethod}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}async getPublicIds(e){const t=new Date,n={},s=[];for(const i of e){const o=this._publicIds.get(i);o&&o.end>t?n[o.userId]=o:s.push(i)}return s.length===0?Promise.resolve(n):new Promise(i=>{this._restClient.callMethod(this._getPublicListMethod,{users:s}).then(o=>{const a=o.getData().result;this.setPublicIds(Object.values(a));for(const l of s){const u=this._publicIds.get(l);u&&(n[u.userId]=u)}i(n)}).catch(o=>(this.getLogger().error(o),i({})))})}setPublicIds(e){e.forEach(t=>{const n=Number(t.user_id);this._publicIds.set(n,{userId:n,publicId:t.public_id,signature:t.signature,start:new Date(t.start),end:new Date(t.end)})})}}var tr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Sh(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var Dn={exports:{}};/*!
7
13
  * protobuf.js v6.8.6 (c) 2016, daniel wirtz
8
14
  * compiled mon, 26 feb 2018 11:35:34 utc
9
15
  * licensed under the bsd-3-clause license
@@ -11,28 +17,28 @@
11
17
  *
12
18
  * Modify a list for integration with Bitrix Framework:
13
19
  * - removed integration with RequireJS and AMD package builders;
14
- */var Lo;function kh(){return Lo||(Lo=1,function(r){(function(e){(function(t,n,s){function i(c){var a=n[c];return a||t[c][0].call(a=n[c]={exports:{}},i,a,a.exports),a.exports}var o=i(s[0]);r&&r.exports&&(r.exports=o)})({1:[function(t,n,s){n.exports=i;function i(o,c){for(var a=new Array(arguments.length-1),u=0,l=2,h=!0;l<arguments.length;)a[u++]=arguments[l++];return new Promise(function(f,d){a[u]=function(p){if(h)if(h=!1,p)d(p);else{for(var g=new Array(arguments.length-1),m=0;m<g.length;)g[m++]=arguments[m];f.apply(null,g)}};try{o.apply(c||null,a)}catch(p){h&&(h=!1,d(p))}})}},{}],2:[function(t,n,s){var i=s;i.length=function(l){var h=l.length;if(!h)return 0;for(var f=0;--h%4>1&&l.charAt(h)==="=";)++f;return Math.ceil(l.length*3)/4-f};for(var o=new Array(64),c=new Array(123),a=0;a<64;)c[o[a]=a<26?a+65:a<52?a+71:a<62?a-4:a-59|43]=a++;i.encode=function(l,h,f){for(var d=null,p=[],g=0,m=0,y;h<f;){var w=l[h++];switch(m){case 0:p[g++]=o[w>>2],y=(w&3)<<4,m=1;break;case 1:p[g++]=o[y|w>>4],y=(w&15)<<2,m=2;break;case 2:p[g++]=o[y|w>>6],p[g++]=o[w&63],m=0;break}g>8191&&((d||(d=[])).push(String.fromCharCode.apply(String,p)),g=0)}return m&&(p[g++]=o[y],p[g++]=61,m===1&&(p[g++]=61)),d?(g&&d.push(String.fromCharCode.apply(String,p.slice(0,g))),d.join("")):String.fromCharCode.apply(String,p.slice(0,g))};var u="invalid encoding";i.decode=function(l,h,f){for(var d=f,p=0,g,m=0;m<l.length;){var y=l.charCodeAt(m++);if(y===61&&p>1)break;if((y=c[y])===e)throw Error(u);switch(p){case 0:g=y,p=1;break;case 1:h[f++]=g<<2|(y&48)>>4,g=y,p=2;break;case 2:h[f++]=(g&15)<<4|(y&60)>>2,g=y,p=3;break;case 3:h[f++]=(g&3)<<6|y,p=0;break}}if(p===1)throw Error(u);return f-d},i.test=function(l){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(l)}},{}],3:[function(t,n,s){n.exports=i;function i(o,c){typeof o=="string"&&(c=o,o=e);var a=[];function u(h){if(typeof h!="string"){var f=l();if(i.verbose&&console.log("codegen: "+f),f="return "+f,h){for(var d=Object.keys(h),p=new Array(d.length+1),g=new Array(d.length),m=0;m<d.length;)p[m]=d[m],g[m]=h[d[m++]];return p[m]=f,Function.apply(null,p).apply(null,g)}return Function(f)()}for(var y=new Array(arguments.length-1),w=0;w<y.length;)y[w]=arguments[++w];if(w=0,h=h.replace(/%([%dfijs])/g,function(_,b){var k=y[w++];switch(b){case"d":case"f":return String(Number(k));case"i":return String(Math.floor(k));case"j":return JSON.stringify(k);case"s":return String(k)}return"%"}),w!==y.length)throw Error("parameter count mismatch");return a.push(h),u}function l(h){return"function "+(h||c||"")+"("+(o&&o.join(",")||"")+`){
15
- `+a.join(`
20
+ */var No;function _h(){return No||(No=1,function(r){(function(e){(function(t,n,s){function i(a){var l=n[a];return l||t[a][0].call(l=n[a]={exports:{}},i,l,l.exports),l.exports}var o=i(s[0]);r&&r.exports&&(r.exports=o)})({1:[function(t,n,s){n.exports=i;function i(o,a){for(var l=new Array(arguments.length-1),u=0,c=2,f=!0;c<arguments.length;)l[u++]=arguments[c++];return new Promise(function(h,d){l[u]=function(p){if(f)if(f=!1,p)d(p);else{for(var g=new Array(arguments.length-1),m=0;m<g.length;)g[m++]=arguments[m];h.apply(null,g)}};try{o.apply(a||null,l)}catch(p){f&&(f=!1,d(p))}})}},{}],2:[function(t,n,s){var i=s;i.length=function(c){var f=c.length;if(!f)return 0;for(var h=0;--f%4>1&&c.charAt(f)==="=";)++h;return Math.ceil(c.length*3)/4-h};for(var o=new Array(64),a=new Array(123),l=0;l<64;)a[o[l]=l<26?l+65:l<52?l+71:l<62?l-4:l-59|43]=l++;i.encode=function(c,f,h){for(var d=null,p=[],g=0,m=0,y;f<h;){var w=c[f++];switch(m){case 0:p[g++]=o[w>>2],y=(w&3)<<4,m=1;break;case 1:p[g++]=o[y|w>>4],y=(w&15)<<2,m=2;break;case 2:p[g++]=o[y|w>>6],p[g++]=o[w&63],m=0;break}g>8191&&((d||(d=[])).push(String.fromCharCode.apply(String,p)),g=0)}return m&&(p[g++]=o[y],p[g++]=61,m===1&&(p[g++]=61)),d?(g&&d.push(String.fromCharCode.apply(String,p.slice(0,g))),d.join("")):String.fromCharCode.apply(String,p.slice(0,g))};var u="invalid encoding";i.decode=function(c,f,h){for(var d=h,p=0,g,m=0;m<c.length;){var y=c.charCodeAt(m++);if(y===61&&p>1)break;if((y=a[y])===e)throw Error(u);switch(p){case 0:g=y,p=1;break;case 1:f[h++]=g<<2|(y&48)>>4,g=y,p=2;break;case 2:f[h++]=(g&15)<<4|(y&60)>>2,g=y,p=3;break;case 3:f[h++]=(g&3)<<6|y,p=0;break}}if(p===1)throw Error(u);return h-d},i.test=function(c){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(c)}},{}],3:[function(t,n,s){n.exports=i;function i(o,a){typeof o=="string"&&(a=o,o=e);var l=[];function u(f){if(typeof f!="string"){var h=c();if(i.verbose&&console.log("codegen: "+h),h="return "+h,f){for(var d=Object.keys(f),p=new Array(d.length+1),g=new Array(d.length),m=0;m<d.length;)p[m]=d[m],g[m]=f[d[m++]];return p[m]=h,Function.apply(null,p).apply(null,g)}return Function(h)()}for(var y=new Array(arguments.length-1),w=0;w<y.length;)y[w]=arguments[++w];if(w=0,f=f.replace(/%([%dfijs])/g,function(_,b){var k=y[w++];switch(b){case"d":case"f":return String(Number(k));case"i":return String(Math.floor(k));case"j":return JSON.stringify(k);case"s":return String(k)}return"%"}),w!==y.length)throw Error("parameter count mismatch");return l.push(f),u}function c(f){return"function "+(f||a||"")+"("+(o&&o.join(",")||"")+`){
21
+ `+l.join(`
16
22
  `)+`
17
- }`}return u.toString=l,u}i.verbose=!1},{}],4:[function(t,n,s){n.exports=i;function i(){this._listeners={}}i.prototype.on=function(o,c,a){return(this._listeners[o]||(this._listeners[o]=[])).push({fn:c,ctx:a||this}),this},i.prototype.off=function(o,c){if(o===e)this._listeners={};else if(c===e)this._listeners[o]=[];else for(var a=this._listeners[o],u=0;u<a.length;)a[u].fn===c?a.splice(u,1):++u;return this},i.prototype.emit=function(o){var c=this._listeners[o];if(c){for(var a=[],u=1;u<arguments.length;)a.push(arguments[u++]);for(u=0;u<c.length;)c[u].fn.apply(c[u++].ctx,a)}return this}},{}],5:[function(t,n,s){n.exports=a;var i=t(1),o=t(7),c=o("fs");function a(u,l,h){return typeof l=="function"?(h=l,l={}):l||(l={}),h?!l.xhr&&c&&c.readFile?c.readFile(u,function(f,d){return f&&typeof XMLHttpRequest<"u"?a.xhr(u,l,h):f?h(f):h(null,l.binary?d:d.toString("utf8"))}):a.xhr(u,l,h):i(a,this,u,l)}a.xhr=function(u,l,h){var f=new XMLHttpRequest;f.onreadystatechange=function(){if(f.readyState!==4)return e;if(f.status!==0&&f.status!==200)return h(Error("status "+f.status));if(l.binary){var d=f.response;if(!d){d=[];for(var p=0;p<f.responseText.length;++p)d.push(f.responseText.charCodeAt(p)&255)}return h(null,typeof Uint8Array<"u"?new Uint8Array(d):d)}return h(null,f.responseText)},l.binary&&("overrideMimeType"in f&&f.overrideMimeType("text/plain; charset=x-user-defined"),f.responseType="arraybuffer"),f.open("GET",u),f.send()}},{1:1,7:7}],6:[function(t,n,s){n.exports=i(i);function i(l){return typeof Float32Array<"u"?function(){var h=new Float32Array([-0]),f=new Uint8Array(h.buffer),d=f[3]===128;function p(w,_,b){h[0]=w,_[b]=f[0],_[b+1]=f[1],_[b+2]=f[2],_[b+3]=f[3]}function g(w,_,b){h[0]=w,_[b]=f[3],_[b+1]=f[2],_[b+2]=f[1],_[b+3]=f[0]}l.writeFloatLE=d?p:g,l.writeFloatBE=d?g:p;function m(w,_){return f[0]=w[_],f[1]=w[_+1],f[2]=w[_+2],f[3]=w[_+3],h[0]}function y(w,_){return f[3]=w[_],f[2]=w[_+1],f[1]=w[_+2],f[0]=w[_+3],h[0]}l.readFloatLE=d?m:y,l.readFloatBE=d?y:m}():function(){function h(d,p,g,m){var y=p<0?1:0;if(y&&(p=-p),p===0)d(1/p>0?0:2147483648,g,m);else if(isNaN(p))d(2143289344,g,m);else if(p>34028234663852886e22)d((y<<31|2139095040)>>>0,g,m);else if(p<11754943508222875e-54)d((y<<31|Math.round(p/1401298464324817e-60))>>>0,g,m);else{var w=Math.floor(Math.log(p)/Math.LN2),_=Math.round(p*Math.pow(2,-w)*8388608)&8388607;d((y<<31|w+127<<23|_)>>>0,g,m)}}l.writeFloatLE=h.bind(null,o),l.writeFloatBE=h.bind(null,c);function f(d,p,g){var m=d(p,g),y=(m>>31)*2+1,w=m>>>23&255,_=m&8388607;return w===255?_?NaN:y*(1/0):w===0?y*1401298464324817e-60*_:y*Math.pow(2,w-150)*(_+8388608)}l.readFloatLE=f.bind(null,a),l.readFloatBE=f.bind(null,u)}(),typeof Float64Array<"u"?function(){var h=new Float64Array([-0]),f=new Uint8Array(h.buffer),d=f[7]===128;function p(w,_,b){h[0]=w,_[b]=f[0],_[b+1]=f[1],_[b+2]=f[2],_[b+3]=f[3],_[b+4]=f[4],_[b+5]=f[5],_[b+6]=f[6],_[b+7]=f[7]}function g(w,_,b){h[0]=w,_[b]=f[7],_[b+1]=f[6],_[b+2]=f[5],_[b+3]=f[4],_[b+4]=f[3],_[b+5]=f[2],_[b+6]=f[1],_[b+7]=f[0]}l.writeDoubleLE=d?p:g,l.writeDoubleBE=d?g:p;function m(w,_){return f[0]=w[_],f[1]=w[_+1],f[2]=w[_+2],f[3]=w[_+3],f[4]=w[_+4],f[5]=w[_+5],f[6]=w[_+6],f[7]=w[_+7],h[0]}function y(w,_){return f[7]=w[_],f[6]=w[_+1],f[5]=w[_+2],f[4]=w[_+3],f[3]=w[_+4],f[2]=w[_+5],f[1]=w[_+6],f[0]=w[_+7],h[0]}l.readDoubleLE=d?m:y,l.readDoubleBE=d?y:m}():function(){function h(d,p,g,m,y,w){var _=m<0?1:0;if(_&&(m=-m),m===0)d(0,y,w+p),d(1/m>0?0:2147483648,y,w+g);else if(isNaN(m))d(0,y,w+p),d(2146959360,y,w+g);else if(m>17976931348623157e292)d(0,y,w+p),d((_<<31|2146435072)>>>0,y,w+g);else{var b;if(m<22250738585072014e-324)b=m/5e-324,d(b>>>0,y,w+p),d((_<<31|b/4294967296)>>>0,y,w+g);else{var k=Math.floor(Math.log(m)/Math.LN2);k===1024&&(k=1023),b=m*Math.pow(2,-k),d(b*4503599627370496>>>0,y,w+p),d((_<<31|k+1023<<20|b*1048576&1048575)>>>0,y,w+g)}}}l.writeDoubleLE=h.bind(null,o,0,4),l.writeDoubleBE=h.bind(null,c,4,0);function f(d,p,g,m,y){var w=d(m,y+p),_=d(m,y+g),b=(_>>31)*2+1,k=_>>>20&2047,S=4294967296*(_&1048575)+w;return k===2047?S?NaN:b*(1/0):k===0?b*5e-324*S:b*Math.pow(2,k-1075)*(S+4503599627370496)}l.readDoubleLE=f.bind(null,a,0,4),l.readDoubleBE=f.bind(null,u,4,0)}(),l}function o(l,h,f){h[f]=l&255,h[f+1]=l>>>8&255,h[f+2]=l>>>16&255,h[f+3]=l>>>24}function c(l,h,f){h[f]=l>>>24,h[f+1]=l>>>16&255,h[f+2]=l>>>8&255,h[f+3]=l&255}function a(l,h){return(l[h]|l[h+1]<<8|l[h+2]<<16|l[h+3]<<24)>>>0}function u(l,h){return(l[h]<<24|l[h+1]<<16|l[h+2]<<8|l[h+3])>>>0}},{}],7:[function(t,n,s){n.exports=i;function i(o){try{var c=t(o);if(c&&(c.length||Object.keys(c).length))return c}catch{}return null}},{}],8:[function(t,n,s){var i=s,o=i.isAbsolute=function(a){return/^(?:\/|\w+:)/.test(a)},c=i.normalize=function(a){a=a.replace(/\\/g,"/").replace(/\/{2,}/g,"/");var u=a.split("/"),l=o(a),h="";l&&(h=u.shift()+"/");for(var f=0;f<u.length;)u[f]===".."?f>0&&u[f-1]!==".."?u.splice(--f,2):l?u.splice(f,1):++f:u[f]==="."?u.splice(f,1):++f;return h+u.join("/")};i.resolve=function(a,u,l){return l||(u=c(u)),o(u)?u:(l||(a=c(a)),(a=a.replace(/(?:\/|^)[^/]+$/,"")).length?c(a+"/"+u):u)}},{}],9:[function(t,n,s){n.exports=i;function i(o,c,a){var u=a||8192,l=u>>>1,h=null,f=u;return function(d){if(d<1||d>l)return o(d);f+d>u&&(h=o(u),f=0);var p=c.call(h,f,f+=d);return f&7&&(f=(f|7)+1),p}}},{}],10:[function(t,n,s){var i=s;i.length=function(o){for(var c=0,a=0,u=0;u<o.length;++u)a=o.charCodeAt(u),a<128?c+=1:a<2048?c+=2:(a&64512)===55296&&(o.charCodeAt(u+1)&64512)===56320?(++u,c+=4):c+=3;return c},i.read=function(o,c,a){var u=a-c;if(u<1)return"";for(var l=null,h=[],f=0,d;c<a;)d=o[c++],d<128?h[f++]=d:d>191&&d<224?h[f++]=(d&31)<<6|o[c++]&63:d>239&&d<365?(d=((d&7)<<18|(o[c++]&63)<<12|(o[c++]&63)<<6|o[c++]&63)-65536,h[f++]=55296+(d>>10),h[f++]=56320+(d&1023)):h[f++]=(d&15)<<12|(o[c++]&63)<<6|o[c++]&63,f>8191&&((l||(l=[])).push(String.fromCharCode.apply(String,h)),f=0);return l?(f&&l.push(String.fromCharCode.apply(String,h.slice(0,f))),l.join("")):String.fromCharCode.apply(String,h.slice(0,f))},i.write=function(o,c,a){for(var u=a,l,h,f=0;f<o.length;++f)l=o.charCodeAt(f),l<128?c[a++]=l:l<2048?(c[a++]=l>>6|192,c[a++]=l&63|128):(l&64512)===55296&&((h=o.charCodeAt(f+1))&64512)===56320?(l=65536+((l&1023)<<10)+(h&1023),++f,c[a++]=l>>18|240,c[a++]=l>>12&63|128,c[a++]=l>>6&63|128,c[a++]=l&63|128):(c[a++]=l>>12|224,c[a++]=l>>6&63|128,c[a++]=l&63|128);return a-u}},{}],11:[function(t,n,s){n.exports=o;var i=/\/|\./;function o(a,u){i.test(a)||(a="google/protobuf/"+a+".proto",u={nested:{google:{nested:{protobuf:{nested:u}}}}}),o[a]=u}o("any",{Any:{fields:{type_url:{type:"string",id:1},value:{type:"bytes",id:2}}}});var c;o("duration",{Duration:c={fields:{seconds:{type:"int64",id:1},nanos:{type:"int32",id:2}}}}),o("timestamp",{Timestamp:c}),o("empty",{Empty:{fields:{}}}),o("struct",{Struct:{fields:{fields:{keyType:"string",type:"Value",id:1}}},Value:{oneofs:{kind:{oneof:["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},fields:{nullValue:{type:"NullValue",id:1},numberValue:{type:"double",id:2},stringValue:{type:"string",id:3},boolValue:{type:"bool",id:4},structValue:{type:"Struct",id:5},listValue:{type:"ListValue",id:6}}},NullValue:{values:{NULL_VALUE:0}},ListValue:{fields:{values:{rule:"repeated",type:"Value",id:1}}}}),o("wrappers",{DoubleValue:{fields:{value:{type:"double",id:1}}},FloatValue:{fields:{value:{type:"float",id:1}}},Int64Value:{fields:{value:{type:"int64",id:1}}},UInt64Value:{fields:{value:{type:"uint64",id:1}}},Int32Value:{fields:{value:{type:"int32",id:1}}},UInt32Value:{fields:{value:{type:"uint32",id:1}}},BoolValue:{fields:{value:{type:"bool",id:1}}},StringValue:{fields:{value:{type:"string",id:1}}},BytesValue:{fields:{value:{type:"bytes",id:1}}}}),o("field_mask",{FieldMask:{fields:{paths:{rule:"repeated",type:"string",id:1}}}}),o.get=function(a){return o[a]||null}},{}],12:[function(t,n,s){var i=s,o=t(15),c=t(37);function a(l,h,f,d){if(h.resolvedType)if(h.resolvedType instanceof o){l("switch(d%s){",d);for(var p=h.resolvedType.values,g=Object.keys(p),m=0;m<g.length;++m)h.repeated&&p[g[m]]===h.typeDefault&&l("default:"),l("case%j:",g[m])("case %i:",p[g[m]])("m%s=%j",d,p[g[m]])("break");l("}")}else l('if(typeof d%s!=="object")',d)("throw TypeError(%j)",h.fullName+": object expected")("m%s=types[%i].fromObject(d%s)",d,f,d);else{var y=!1;switch(h.type){case"double":case"float":l("m%s=Number(d%s)",d,d);break;case"uint32":case"fixed32":l("m%s=d%s>>>0",d,d);break;case"int32":case"sint32":case"sfixed32":l("m%s=d%s|0",d,d);break;case"uint64":y=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":l("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j",d,d,y)('else if(typeof d%s==="string")',d)("m%s=parseInt(d%s,10)",d,d)('else if(typeof d%s==="number")',d)("m%s=d%s",d,d)('else if(typeof d%s==="object")',d)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)",d,d,d,y?"true":"");break;case"bytes":l('if(typeof d%s==="string")',d)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)",d,d,d)("else if(d%s.length)",d)("m%s=d%s",d,d);break;case"string":l("m%s=String(d%s)",d,d);break;case"bool":l("m%s=Boolean(d%s)",d,d);break}}return l}i.fromObject=function(l){var h=l.fieldsArray,f=c.codegen(["d"],l.name+"$fromObject")("if(d instanceof this.ctor)")("return d");if(!h.length)return f("return new this.ctor");f("var m=new this.ctor");for(var d=0;d<h.length;++d){var p=h[d].resolve(),g=c.safeProp(p.name);p.map?(f("if(d%s){",g)('if(typeof d%s!=="object")',g)("throw TypeError(%j)",p.fullName+": object expected")("m%s={}",g)("for(var ks=Object.keys(d%s),i=0;i<ks.length;++i){",g),a(f,p,d,g+"[ks[i]]")("}")("}")):p.repeated?(f("if(d%s){",g)("if(!Array.isArray(d%s))",g)("throw TypeError(%j)",p.fullName+": array expected")("m%s=[]",g)("for(var i=0;i<d%s.length;++i){",g),a(f,p,d,g+"[i]")("}")("}")):(p.resolvedType instanceof o||f("if(d%s!=null){",g),a(f,p,d,g),p.resolvedType instanceof o||f("}"))}return f("return m")};function u(l,h,f,d){if(h.resolvedType)h.resolvedType instanceof o?l("d%s=o.enums===String?types[%i].values[m%s]:m%s",d,f,d,d):l("d%s=types[%i].toObject(m%s,o)",d,f,d);else{var p=!1;switch(h.type){case"double":case"float":l("d%s=o.json&&!isFinite(m%s)?String(m%s):m%s",d,d,d,d);break;case"uint64":p=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":l('if(typeof m%s==="number")',d)("d%s=o.longs===String?String(m%s):m%s",d,d,d)("else")("d%s=o.longs===String?util.Long.prototype.toString.call(m%s):o.longs===Number?new util.LongBits(m%s.low>>>0,m%s.high>>>0).toNumber(%s):m%s",d,d,d,d,p?"true":"",d);break;case"bytes":l("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s",d,d,d,d,d);break;default:l("d%s=m%s",d,d);break}}return l}i.toObject=function(l){var h=l.fieldsArray.slice().sort(c.compareFieldsById);if(!h.length)return c.codegen()("return {}");for(var f=c.codegen(["m","o"],l.name+"$toObject")("if(!o)")("o={}")("var d={}"),d=[],p=[],g=[],m=0;m<h.length;++m)h[m].partOf||(h[m].resolve().repeated?d:h[m].map?p:g).push(h[m]);if(d.length){for(f("if(o.arrays||o.defaults){"),m=0;m<d.length;++m)f("d%s=[]",c.safeProp(d[m].name));f("}")}if(p.length){for(f("if(o.objects||o.defaults){"),m=0;m<p.length;++m)f("d%s={}",c.safeProp(p[m].name));f("}")}if(g.length){for(f("if(o.defaults){"),m=0;m<g.length;++m){var y=g[m],w=c.safeProp(y.name);y.resolvedType instanceof o?f("d%s=o.enums===String?%j:%j",w,y.resolvedType.valuesById[y.typeDefault],y.typeDefault):y.long?f("if(util.Long){")("var n=new util.Long(%i,%i,%j)",y.typeDefault.low,y.typeDefault.high,y.typeDefault.unsigned)("d%s=o.longs===String?n.toString():o.longs===Number?n.toNumber():n",w)("}else")("d%s=o.longs===String?%j:%i",w,y.typeDefault.toString(),y.typeDefault.toNumber()):y.bytes?f("d%s=o.bytes===String?%j:%s",w,String.fromCharCode.apply(String,y.typeDefault),"["+Array.prototype.slice.call(y.typeDefault).join(",")+"]"):f("d%s=%j",w,y.typeDefault)}f("}")}var _=!1;for(m=0;m<h.length;++m){var y=h[m],b=l._fieldsArray.indexOf(y),w=c.safeProp(y.name);y.map?(_||(_=!0,f("var ks2")),f("if(m%s&&(ks2=Object.keys(m%s)).length){",w,w)("d%s={}",w)("for(var j=0;j<ks2.length;++j){"),u(f,y,b,w+"[ks2[j]]")("}")):y.repeated?(f("if(m%s&&m%s.length){",w,w)("d%s=[]",w)("for(var j=0;j<m%s.length;++j){",w),u(f,y,b,w+"[j]")("}")):(f("if(m%s!=null&&m.hasOwnProperty(%j)){",w,y.name),u(f,y,b,w),y.partOf&&f("if(o.oneofs)")("d%s=%j",c.safeProp(y.partOf.name),y.name)),f("}")}return f("return d")}},{15:15,37:37}],13:[function(t,n,s){n.exports=u;var i=t(15),o=t(36),c=t(37);function a(l){return"missing required '"+l.name+"'"}function u(l){var h=c.codegen(["r","l"],l.name+"$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor"+(l.fieldsArray.filter(function(y){return y.map}).length?",k":""))("while(r.pos<c){")("var t=r.uint32()");l.group&&h("if((t&7)===4)")("break"),h("switch(t>>>3){");for(var f=0;f<l.fieldsArray.length;++f){var d=l._fieldsArray[f].resolve(),p=d.resolvedType instanceof i?"int32":d.type,g="m"+c.safeProp(d.name);h("case %i:",d.id),d.map?(h("r.skip().pos++")("if(%s===util.emptyObject)",g)("%s={}",g)("k=r.%s()",d.keyType)("r.pos++"),o.long[d.keyType]!==e?o.basic[p]===e?h('%s[typeof k==="object"?util.longToHash(k):k]=types[%i].decode(r,r.uint32())',g,f):h('%s[typeof k==="object"?util.longToHash(k):k]=r.%s()',g,p):o.basic[p]===e?h("%s[k]=types[%i].decode(r,r.uint32())",g,f):h("%s[k]=r.%s()",g,p)):d.repeated?(h("if(!(%s&&%s.length))",g,g)("%s=[]",g),o.packed[p]!==e&&h("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos<c2)")("%s.push(r.%s())",g,p)("}else"),o.basic[p]===e?h(d.resolvedType.group?"%s.push(types[%i].decode(r))":"%s.push(types[%i].decode(r,r.uint32()))",g,f):h("%s.push(r.%s())",g,p)):o.basic[p]===e?h(d.resolvedType.group?"%s=types[%i].decode(r)":"%s=types[%i].decode(r,r.uint32())",g,f):h("%s=r.%s()",g,p),h("break")}for(h("default:")("r.skipType(t&7)")("break")("}")("}"),f=0;f<l._fieldsArray.length;++f){var m=l._fieldsArray[f];m.required&&h("if(!m.hasOwnProperty(%j))",m.name)("throw util.ProtocolError(%j,{instance:m})",a(m))}return h("return m")}},{15:15,36:36,37:37}],14:[function(t,n,s){n.exports=u;var i=t(15),o=t(36),c=t(37);function a(l,h,f,d){return h.resolvedType.group?l("types[%i].encode(%s,w.uint32(%i)).uint32(%i)",f,d,(h.id<<3|3)>>>0,(h.id<<3|4)>>>0):l("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()",f,d,(h.id<<3|2)>>>0)}function u(l){for(var h=c.codegen(["m","w"],l.name+"$encode")("if(!w)")("w=Writer.create()"),p,f,d=l.fieldsArray.slice().sort(c.compareFieldsById),p=0;p<d.length;++p){var g=d[p].resolve(),m=l._fieldsArray.indexOf(g),y=g.resolvedType instanceof i?"int32":g.type,w=o.basic[y];f="m"+c.safeProp(g.name),g.map?(h("if(%s!=null&&m.hasOwnProperty(%j)){",f,g.name)("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){",f)("w.uint32(%i).fork().uint32(%i).%s(ks[i])",(g.id<<3|2)>>>0,8|o.mapKey[g.keyType],g.keyType),w===e?h("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()",m,f):h(".uint32(%i).%s(%s[ks[i]]).ldelim()",16|w,y,f),h("}")("}")):g.repeated?(h("if(%s!=null&&%s.length){",f,f),g.packed&&o.packed[y]!==e?h("w.uint32(%i).fork()",(g.id<<3|2)>>>0)("for(var i=0;i<%s.length;++i)",f)("w.%s(%s[i])",y,f)("w.ldelim()"):(h("for(var i=0;i<%s.length;++i)",f),w===e?a(h,g,m,f+"[i]"):h("w.uint32(%i).%s(%s[i])",(g.id<<3|w)>>>0,y,f)),h("}")):(g.optional&&h("if(%s!=null&&m.hasOwnProperty(%j))",f,g.name),w===e?a(h,g,m,f):h("w.uint32(%i).%s(%s)",(g.id<<3|w)>>>0,y,f))}return h("return w")}},{15:15,36:36,37:37}],15:[function(t,n,s){n.exports=a;var i=t(24);((a.prototype=Object.create(i.prototype)).constructor=a).className="Enum";var o=t(23),c=t(37);function a(u,l,h,f,d){if(i.call(this,u,h),l&&typeof l!="object")throw TypeError("values must be an object");if(this.valuesById={},this.values=Object.create(this.valuesById),this.comment=f,this.comments=d||{},this.reserved=e,l)for(var p=Object.keys(l),g=0;g<p.length;++g)typeof l[p[g]]=="number"&&(this.valuesById[this.values[p[g]]=l[p[g]]]=p[g])}a.fromJSON=function(u,l){var h=new a(u,l.values,l.options,l.comment,l.comments);return h.reserved=l.reserved,h},a.prototype.toJSON=function(u){var l=u?!!u.keepComments:!1;return c.toObject(["options",this.options,"values",this.values,"reserved",this.reserved&&this.reserved.length?this.reserved:e,"comment",l?this.comment:e,"comments",l?this.comments:e])},a.prototype.add=function(u,l,h){if(!c.isString(u))throw TypeError("name must be a string");if(!c.isInteger(l))throw TypeError("id must be an integer");if(this.values[u]!==e)throw Error("duplicate name '"+u+"' in "+this);if(this.isReservedId(l))throw Error("id "+l+" is reserved in "+this);if(this.isReservedName(u))throw Error("name '"+u+"' is reserved in "+this);if(this.valuesById[l]!==e){if(!(this.options&&this.options.allow_alias))throw Error("duplicate id "+l+" in "+this);this.values[u]=l}else this.valuesById[this.values[u]=l]=u;return this.comments[u]=h||null,this},a.prototype.remove=function(u){if(!c.isString(u))throw TypeError("name must be a string");var l=this.values[u];if(l==null)throw Error("name '"+u+"' does not exist in "+this);return delete this.valuesById[l],delete this.values[u],delete this.comments[u],this},a.prototype.isReservedId=function(u){return o.isReservedId(this.reserved,u)},a.prototype.isReservedName=function(u){return o.isReservedName(this.reserved,u)}},{23:23,24:24,37:37}],16:[function(t,n,s){n.exports=h;var i=t(24);((h.prototype=Object.create(i.prototype)).constructor=h).className="Field";var o=t(15),c=t(36),a=t(37),u,l=/^required|optional|repeated$/;h.fromJSON=function(f,d){return new h(f,d.id,d.type,d.rule,d.extend,d.options,d.comment)};function h(f,d,p,g,m,y,w){if(a.isObject(g)?(w=m,y=g,g=m=e):a.isObject(m)&&(w=y,y=m,m=e),i.call(this,f,y),!a.isInteger(d)||d<0)throw TypeError("id must be a non-negative integer");if(!a.isString(p))throw TypeError("type must be a string");if(g!==e&&!l.test(g=g.toString().toLowerCase()))throw TypeError("rule must be a string rule");if(m!==e&&!a.isString(m))throw TypeError("extend must be a string");this.rule=g&&g!=="optional"?g:e,this.type=p,this.id=d,this.extend=m||e,this.required=g==="required",this.optional=!this.required,this.repeated=g==="repeated",this.map=!1,this.message=null,this.partOf=null,this.typeDefault=null,this.defaultValue=null,this.long=a.Long?c.long[p]!==e:!1,this.bytes=p==="bytes",this.resolvedType=null,this.extensionField=null,this.declaringField=null,this._packed=null,this.comment=w}Object.defineProperty(h.prototype,"packed",{get:function(){return this._packed===null&&(this._packed=this.getOption("packed")!==!1),this._packed}}),h.prototype.setOption=function(f,d,p){return f==="packed"&&(this._packed=null),i.prototype.setOption.call(this,f,d,p)},h.prototype.toJSON=function(f){var d=f?!!f.keepComments:!1;return a.toObject(["rule",this.rule!=="optional"&&this.rule||e,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",d?this.comment:e])},h.prototype.resolve=function(){if(this.resolved)return this;if((this.typeDefault=c.defaults[this.type])===e&&(this.resolvedType=(this.declaringField?this.declaringField.parent:this.parent).lookupTypeOrEnum(this.type),this.resolvedType instanceof u?this.typeDefault=null:this.typeDefault=this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]),this.options&&this.options.default!=null&&(this.typeDefault=this.options.default,this.resolvedType instanceof o&&typeof this.typeDefault=="string"&&(this.typeDefault=this.resolvedType.values[this.typeDefault])),this.options&&((this.options.packed===!0||this.options.packed!==e&&this.resolvedType&&!(this.resolvedType instanceof o))&&delete this.options.packed,Object.keys(this.options).length||(this.options=e)),this.long)this.typeDefault=a.Long.fromNumber(this.typeDefault,this.type.charAt(0)==="u"),Object.freeze&&Object.freeze(this.typeDefault);else if(this.bytes&&typeof this.typeDefault=="string"){var f;a.base64.test(this.typeDefault)?a.base64.decode(this.typeDefault,f=a.newBuffer(a.base64.length(this.typeDefault)),0):a.utf8.write(this.typeDefault,f=a.newBuffer(a.utf8.length(this.typeDefault)),0),this.typeDefault=f}return this.map?this.defaultValue=a.emptyObject:this.repeated?this.defaultValue=a.emptyArray:this.defaultValue=this.typeDefault,this.parent instanceof u&&(this.parent.ctor.prototype[this.name]=this.defaultValue),i.prototype.resolve.call(this)},h.d=function(f,d,p,g){return typeof d=="function"?d=a.decorateType(d).name:d&&typeof d=="object"&&(d=a.decorateEnum(d).name),function(m,y){a.decorateType(m.constructor).add(new h(y,f,d,p,{default:g}))}},h._configure=function(f){u=f}},{15:15,24:24,36:36,37:37}],17:[function(t,n,s){var i=n.exports=t(18);i.build="light";function o(a,u,l){return typeof u=="function"?(l=u,u=new i.Root):u||(u=new i.Root),u.load(a,l)}i.load=o;function c(a,u){return u||(u=new i.Root),u.loadSync(a)}i.loadSync=c,i.encoder=t(14),i.decoder=t(13),i.verifier=t(40),i.converter=t(12),i.ReflectionObject=t(24),i.Namespace=t(23),i.Root=t(29),i.Enum=t(15),i.Type=t(35),i.Field=t(16),i.OneOf=t(25),i.MapField=t(20),i.Service=t(33),i.Method=t(22),i.Message=t(21),i.wrappers=t(41),i.types=t(36),i.util=t(37),i.ReflectionObject._configure(i.Root),i.Namespace._configure(i.Type,i.Service),i.Root._configure(i.Type),i.Field._configure(i.Type)},{12:12,13:13,14:14,15:15,16:16,18:18,20:20,21:21,22:22,23:23,24:24,25:25,29:29,33:33,35:35,36:36,37:37,40:40,41:41}],18:[function(t,n,s){var i=s;i.build="minimal",i.Writer=t(42),i.BufferWriter=t(43),i.Reader=t(27),i.BufferReader=t(28),i.util=t(39),i.rpc=t(31),i.roots=t(30),i.configure=o;function o(){i.Reader._configure(i.BufferReader),i.util._configure()}i.Writer._configure(i.BufferWriter),o()},{27:27,28:28,30:30,31:31,39:39,42:42,43:43}],19:[function(t,n,s){var i=n.exports=t(17);i.build="full",i.tokenize=t(34),i.parse=t(26),i.common=t(11),i.Root._configure(i.Type,i.parse,i.common)},{11:11,17:17,26:26,34:34}],20:[function(t,n,s){n.exports=a;var i=t(16);((a.prototype=Object.create(i.prototype)).constructor=a).className="MapField";var o=t(36),c=t(37);function a(u,l,h,f,d,p){if(i.call(this,u,l,f,e,e,d,p),!c.isString(h))throw TypeError("keyType must be a string");this.keyType=h,this.resolvedKeyType=null,this.map=!0}a.fromJSON=function(u,l){return new a(u,l.id,l.keyType,l.type,l.options,l.comment)},a.prototype.toJSON=function(u){var l=u?!!u.keepComments:!1;return c.toObject(["keyType",this.keyType,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",l?this.comment:e])},a.prototype.resolve=function(){if(this.resolved)return this;if(o.mapKey[this.keyType]===e)throw Error("invalid key type: "+this.keyType);return i.prototype.resolve.call(this)},a.d=function(u,l,h){return typeof h=="function"?h=c.decorateType(h).name:h&&typeof h=="object"&&(h=c.decorateEnum(h).name),function(f,d){c.decorateType(f.constructor).add(new a(d,u,l,h))}}},{16:16,36:36,37:37}],21:[function(t,n,s){n.exports=o;var i=t(39);function o(c){if(c)for(var a=Object.keys(c),u=0;u<a.length;++u)this[a[u]]=c[a[u]]}o.create=function(c){return this.$type.create(c)},o.encode=function(c,a){return this.$type.encode(c,a)},o.encodeDelimited=function(c,a){return this.$type.encodeDelimited(c,a)},o.decode=function(c){return this.$type.decode(c)},o.decodeDelimited=function(c){return this.$type.decodeDelimited(c)},o.verify=function(c){return this.$type.verify(c)},o.fromObject=function(c){return this.$type.fromObject(c)},o.toObject=function(c,a){return this.$type.toObject(c,a)},o.prototype.toJSON=function(){return this.$type.toObject(this,i.toJSONOptions)}},{39:39}],22:[function(t,n,s){n.exports=c;var i=t(24);((c.prototype=Object.create(i.prototype)).constructor=c).className="Method";var o=t(37);function c(a,u,l,h,f,d,p,g){if(o.isObject(f)?(p=f,f=d=e):o.isObject(d)&&(p=d,d=e),!(u===e||o.isString(u)))throw TypeError("type must be a string");if(!o.isString(l))throw TypeError("requestType must be a string");if(!o.isString(h))throw TypeError("responseType must be a string");i.call(this,a,p),this.type=u||"rpc",this.requestType=l,this.requestStream=f?!0:e,this.responseType=h,this.responseStream=d?!0:e,this.resolvedRequestType=null,this.resolvedResponseType=null,this.comment=g}c.fromJSON=function(a,u){return new c(a,u.type,u.requestType,u.responseType,u.requestStream,u.responseStream,u.options,u.comment)},c.prototype.toJSON=function(a){var u=a?!!a.keepComments:!1;return o.toObject(["type",this.type!=="rpc"&&this.type||e,"requestType",this.requestType,"requestStream",this.requestStream,"responseType",this.responseType,"responseStream",this.responseStream,"options",this.options,"comment",u?this.comment:e])},c.prototype.resolve=function(){return this.resolved?this:(this.resolvedRequestType=this.parent.lookupType(this.requestType),this.resolvedResponseType=this.parent.lookupType(this.responseType),i.prototype.resolve.call(this))}},{24:24,37:37}],23:[function(t,n,s){n.exports=f;var i=t(24);((f.prototype=Object.create(i.prototype)).constructor=f).className="Namespace";var o=t(15),c=t(16),a=t(37),u,l;f.fromJSON=function(p,g){return new f(p,g.options).addJSON(g.nested)};function h(p,g){if(!(p&&p.length))return e;for(var m={},y=0;y<p.length;++y)m[p[y].name]=p[y].toJSON(g);return m}f.arrayToJSON=h,f.isReservedId=function(p,g){if(p){for(var m=0;m<p.length;++m)if(typeof p[m]!="string"&&p[m][0]<=g&&p[m][1]>=g)return!0}return!1},f.isReservedName=function(p,g){if(p){for(var m=0;m<p.length;++m)if(p[m]===g)return!0}return!1};function f(p,g){i.call(this,p,g),this.nested=e,this._nestedArray=null}function d(p){return p._nestedArray=null,p}Object.defineProperty(f.prototype,"nestedArray",{get:function(){return this._nestedArray||(this._nestedArray=a.toArray(this.nested))}}),f.prototype.toJSON=function(p){return a.toObject(["options",this.options,"nested",h(this.nestedArray,p)])},f.prototype.addJSON=function(p){var g=this;if(p)for(var m=Object.keys(p),y=0,w;y<m.length;++y)w=p[m[y]],g.add((w.fields!==e?u.fromJSON:w.values!==e?o.fromJSON:w.methods!==e?l.fromJSON:w.id!==e?c.fromJSON:f.fromJSON)(m[y],w));return this},f.prototype.get=function(p){return this.nested&&this.nested[p]||null},f.prototype.getEnum=function(p){if(this.nested&&this.nested[p]instanceof o)return this.nested[p].values;throw Error("no such enum: "+p)},f.prototype.add=function(p){if(!(p instanceof c&&p.extend!==e||p instanceof u||p instanceof o||p instanceof l||p instanceof f))throw TypeError("object must be a valid nested object");if(!this.nested)this.nested={};else{var g=this.get(p.name);if(g)if(g instanceof f&&p instanceof f&&!(g instanceof u||g instanceof l)){for(var m=g.nestedArray,y=0;y<m.length;++y)p.add(m[y]);this.remove(g),this.nested||(this.nested={}),p.setOptions(g.options,!0)}else throw Error("duplicate name '"+p.name+"' in "+this)}return this.nested[p.name]=p,p.onAdd(this),d(this)},f.prototype.remove=function(p){if(!(p instanceof i))throw TypeError("object must be a ReflectionObject");if(p.parent!==this)throw Error(p+" is not a member of "+this);return delete this.nested[p.name],Object.keys(this.nested).length||(this.nested=e),p.onRemove(this),d(this)},f.prototype.define=function(p,g){if(a.isString(p))p=p.split(".");else if(!Array.isArray(p))throw TypeError("illegal path");if(p&&p.length&&p[0]==="")throw Error("path must be relative");for(var m=this;p.length>0;){var y=p.shift();if(m.nested&&m.nested[y]){if(m=m.nested[y],!(m instanceof f))throw Error("path conflicts with non-namespace objects")}else m.add(m=new f(y))}return g&&m.addJSON(g),m},f.prototype.resolveAll=function(){for(var p=this.nestedArray,g=0;g<p.length;)p[g]instanceof f?p[g++].resolveAll():p[g++].resolve();return this.resolve()},f.prototype.lookup=function(p,g,m){if(typeof g=="boolean"?(m=g,g=e):g&&!Array.isArray(g)&&(g=[g]),a.isString(p)&&p.length){if(p===".")return this.root;p=p.split(".")}else if(!p.length)return this;if(p[0]==="")return this.root.lookup(p.slice(1),g);var y=this.get(p[0]);if(y){if(p.length===1){if(!g||g.indexOf(y.constructor)>-1)return y}else if(y instanceof f&&(y=y.lookup(p.slice(1),g,!0)))return y}else for(var w=0;w<this.nestedArray.length;++w)if(this._nestedArray[w]instanceof f&&(y=this._nestedArray[w].lookup(p,g,!0)))return y;return this.parent===null||m?null:this.parent.lookup(p,g)},f.prototype.lookupType=function(p){var g=this.lookup(p,[u]);if(!g)throw Error("no such type: "+p);return g},f.prototype.lookupEnum=function(p){var g=this.lookup(p,[o]);if(!g)throw Error("no such Enum '"+p+"' in "+this);return g},f.prototype.lookupTypeOrEnum=function(p){var g=this.lookup(p,[u,o]);if(!g)throw Error("no such Type or Enum '"+p+"' in "+this);return g},f.prototype.lookupService=function(p){var g=this.lookup(p,[l]);if(!g)throw Error("no such Service '"+p+"' in "+this);return g},f._configure=function(p,g){u=p,l=g}},{15:15,16:16,24:24,37:37}],24:[function(t,n,s){n.exports=c,c.className="ReflectionObject";var i=t(37),o;function c(a,u){if(!i.isString(a))throw TypeError("name must be a string");if(u&&!i.isObject(u))throw TypeError("options must be an object");this.options=u,this.name=a,this.parent=null,this.resolved=!1,this.comment=null,this.filename=null}Object.defineProperties(c.prototype,{root:{get:function(){for(var a=this;a.parent!==null;)a=a.parent;return a}},fullName:{get:function(){for(var a=[this.name],u=this.parent;u;)a.unshift(u.name),u=u.parent;return a.join(".")}}}),c.prototype.toJSON=function(){throw Error()},c.prototype.onAdd=function(a){this.parent&&this.parent!==a&&this.parent.remove(this),this.parent=a,this.resolved=!1;var u=a.root;u instanceof o&&u._handleAdd(this)},c.prototype.onRemove=function(a){var u=a.root;u instanceof o&&u._handleRemove(this),this.parent=null,this.resolved=!1},c.prototype.resolve=function(){return this.resolved?this:(this.root instanceof o&&(this.resolved=!0),this)},c.prototype.getOption=function(a){return this.options?this.options[a]:e},c.prototype.setOption=function(a,u,l){return(!l||!this.options||this.options[a]===e)&&((this.options||(this.options={}))[a]=u),this},c.prototype.setOptions=function(a,u){if(a)for(var l=Object.keys(a),h=0;h<l.length;++h)this.setOption(l[h],a[l[h]],u);return this},c.prototype.toString=function(){var a=this.constructor.className,u=this.fullName;return u.length?a+" "+u:a},c._configure=function(a){o=a}},{37:37}],25:[function(t,n,s){n.exports=a;var i=t(24);((a.prototype=Object.create(i.prototype)).constructor=a).className="OneOf";var o=t(16),c=t(37);function a(l,h,f,d){if(Array.isArray(h)||(f=h,h=e),i.call(this,l,f),!(h===e||Array.isArray(h)))throw TypeError("fieldNames must be an Array");this.oneof=h||[],this.fieldsArray=[],this.comment=d}a.fromJSON=function(l,h){return new a(l,h.oneof,h.options,h.comment)},a.prototype.toJSON=function(l){var h=l?!!l.keepComments:!1;return c.toObject(["options",this.options,"oneof",this.oneof,"comment",h?this.comment:e])};function u(l){if(l.parent)for(var h=0;h<l.fieldsArray.length;++h)l.fieldsArray[h].parent||l.parent.add(l.fieldsArray[h])}a.prototype.add=function(l){if(!(l instanceof o))throw TypeError("field must be a Field");return l.parent&&l.parent!==this.parent&&l.parent.remove(l),this.oneof.push(l.name),this.fieldsArray.push(l),l.partOf=this,u(this),this},a.prototype.remove=function(l){if(!(l instanceof o))throw TypeError("field must be a Field");var h=this.fieldsArray.indexOf(l);if(h<0)throw Error(l+" is not a member of "+this);return this.fieldsArray.splice(h,1),h=this.oneof.indexOf(l.name),h>-1&&this.oneof.splice(h,1),l.partOf=null,this},a.prototype.onAdd=function(l){i.prototype.onAdd.call(this,l);for(var h=this,f=0;f<this.oneof.length;++f){var d=l.get(this.oneof[f]);d&&!d.partOf&&(d.partOf=h,h.fieldsArray.push(d))}u(this)},a.prototype.onRemove=function(l){for(var h=0,f;h<this.fieldsArray.length;++h)(f=this.fieldsArray[h]).parent&&f.parent.remove(f);i.prototype.onRemove.call(this,l)},a.d=function(){for(var l=new Array(arguments.length),h=0;h<arguments.length;)l[h]=arguments[h++];return function(f,d){c.decorateType(f.constructor).add(new a(d,l)),Object.defineProperty(f,d,{get:c.oneOfGetter(l),set:c.oneOfSetter(l)})}}},{16:16,24:24,37:37}],26:[function(t,n,s){n.exports=M,M.filename=null,M.defaults={keepCase:!1};var i=t(34),o=t(29),c=t(35),a=t(16),u=t(20),l=t(25),h=t(15),f=t(33),d=t(22),p=t(36),g=t(37),m=/^[1-9][0-9]*$/,y=/^-?[1-9][0-9]*$/,w=/^0[x][0-9a-fA-F]+$/,_=/^-?0[x][0-9a-fA-F]+$/,b=/^0[0-7]+$/,k=/^-?0[0-7]+$/,S=/^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/,E=/^[a-zA-Z_][a-zA-Z_0-9]*$/,N=/^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/,x=/^(?:\.[a-zA-Z_][a-zA-Z_0-9]*)+$/;function M(J,we,q){we instanceof o||(q=we,we=new o),q||(q=M.defaults);var Q=i(J,q.alternateCommentMode||!1),B=Q.next,de=Q.push,le=Q.peek,D=Q.skip,at=Q.cmnt,St=!0,ct,z,re,ie,he=!1,Ee=we,Ie=q.keepCase?function(A){return A}:g.camelCase;function V(A,O,L){var P=M.filename;return L||(M.filename=null),Error("illegal "+(O||"token")+" '"+A+"' ("+(P?P+", ":"")+"line "+Q.line+")")}function Qe(){var A=[],O;do{if((O=B())!=='"'&&O!=="'")throw V(O);A.push(B()),D(O),O=le()}while(O==='"'||O==="'");return A.join("")}function qo(A){var O=B();switch(O){case"'":case'"':return de(O),Qe();case"true":case"TRUE":return!0;case"false":case"FALSE":return!1}try{return Bh(O,!0)}catch{if(N.test(O))return O;throw V(O,"value")}}function jn(A,O){var L,P;do O&&((L=le())==='"'||L==="'")?A.push(Qe()):A.push([P=Bt(B()),D("to",!0)?Bt(B()):P]);while(D(",",!0));D(";")}function Bh(A,O){var L=1;switch(A.charAt(0)==="-"&&(L=-1,A=A.substring(1)),A){case"inf":case"INF":case"Inf":return L*(1/0);case"nan":case"NAN":case"Nan":case"NaN":return NaN;case"0":return 0}if(m.test(A))return L*parseInt(A,10);if(w.test(A))return L*parseInt(A,16);if(b.test(A))return L*parseInt(A,8);if(S.test(A))return L*parseFloat(A);throw V(A,"number",O)}function Bt(A,O){switch(A){case"max":case"MAX":case"Max":return 536870911;case"0":return 0}if(!O&&A.charAt(0)==="-")throw V(A,"id");if(y.test(A))return parseInt(A,10);if(_.test(A))return parseInt(A,16);if(k.test(A))return parseInt(A,8);throw V(A,"id")}function $h(){if(ct!==e)throw V("package");if(ct=B(),!N.test(ct))throw V(ct,"name");Ee=Ee.define(ct),D(";")}function Wh(){var A=le(),O;switch(A){case"weak":O=re||(re=[]),B();break;case"public":B();default:O=z||(z=[]);break}A=Qe(),D(";"),O.push(A)}function Vh(){if(D("="),ie=Qe(),he=ie==="proto3",!he&&ie!=="proto2")throw V(ie,"syntax");D(";")}function Un(A,O){switch(O){case"option":return Ze(A,O),D(";"),!0;case"message":return Hh(A,O),!0;case"enum":return Zh(A,O),!0;case"service":return Yh(A,O),!0;case"extend":return Qh(A,O),!0}return!1}function Je(A,O,L){var P=Q.line;if(A&&(A.comment=at(),A.filename=M.filename),D("{",!0)){for(var oe;(oe=B())!=="}";)O(oe);D(";",!0)}else L&&L(),D(";"),A&&typeof A.comment!="string"&&(A.comment=at(P))}function Hh(A,O){if(!E.test(O=B()))throw V(O,"type name");var L=new c(O);Je(L,function(P){if(!Un(L,P))switch(P){case"map":zh(L);break;case"required":case"optional":case"repeated":$t(L,P);break;case"oneof":Jh(L,P);break;case"extensions":jn(L.extensions||(L.extensions=[]));break;case"reserved":jn(L.reserved||(L.reserved=[]),!0);break;default:if(!he||!N.test(P))throw V(P);de(P),$t(L,"optional");break}}),A.add(L)}function $t(A,O,L){var P=B();if(P==="group"){qh(A,O);return}if(!N.test(P))throw V(P,"type");var oe=B();if(!E.test(oe))throw V(oe,"name");oe=Ie(oe),D("=");var pe=new a(oe,Bt(B()),P,O,L);Je(pe,function(Xe){if(Xe==="option")Ze(pe,Xe),D(";");else throw V(Xe)},function(){$n(pe)}),A.add(pe),!he&&pe.repeated&&(p.packed[P]!==e||p.basic[P]===e)&&pe.setOption("packed",!1,!0)}function qh(A,O){var L=B();if(!E.test(L))throw V(L,"name");var P=g.lcFirst(L);L===P&&(L=g.ucFirst(L)),D("=");var oe=Bt(B()),pe=new c(L);pe.group=!0;var Xe=new a(P,oe,L,O);Xe.filename=M.filename,Je(pe,function(_t){switch(_t){case"option":Ze(pe,_t),D(";");break;case"required":case"optional":case"repeated":$t(pe,_t);break;default:throw V(_t)}}),A.add(pe).add(Xe)}function zh(A){D("<");var O=B();if(p.mapKey[O]===e)throw V(O,"type");D(",");var L=B();if(!N.test(L))throw V(L,"type");D(">");var P=B();if(!E.test(P))throw V(P,"name");D("=");var oe=new u(Ie(P),Bt(B()),O,L);Je(oe,function(pe){if(pe==="option")Ze(oe,pe),D(";");else throw V(pe)},function(){$n(oe)}),A.add(oe)}function Jh(A,O){if(!E.test(O=B()))throw V(O,"name");var L=new l(Ie(O));Je(L,function(P){P==="option"?(Ze(L,P),D(";")):(de(P),$t(L,"optional"))}),A.add(L)}function Zh(A,O){if(!E.test(O=B()))throw V(O,"name");var L=new h(O);Je(L,function(P){switch(P){case"option":Ze(L,P),D(";");break;case"reserved":jn(L.reserved||(L.reserved=[]),!0);break;default:Gh(L,P)}}),A.add(L)}function Gh(A,O){if(!E.test(O))throw V(O,"name");D("=");var L=Bt(B(),!0),P={};Je(P,function(oe){if(oe==="option")Ze(P,oe),D(";");else throw V(oe)},function(){$n(P)}),A.add(O,L,P.comment)}function Ze(A,O){var L=D("(",!0);if(!N.test(O=B()))throw V(O,"name");var P=O;L&&(D(")"),P="("+P+")",O=le(),x.test(O)&&(P+=O,B())),D("="),Bn(A,P)}function Bn(A,O){if(D("{",!0))do{if(!E.test(Ce=B()))throw V(Ce,"name");le()==="{"?Bn(A,O+"."+Ce):(D(":"),le()==="{"?Bn(A,O+"."+Ce):zo(A,O+"."+Ce,qo()))}while(!D("}",!0));else zo(A,O,qo())}function zo(A,O,L){A.setOption&&A.setOption(O,L)}function $n(A){if(D("[",!0)){do Ze(A,"option");while(D(",",!0));D("]")}return A}function Yh(A,O){if(!E.test(O=B()))throw V(O,"service name");var L=new f(O);Je(L,function(P){if(!Un(L,P))if(P==="rpc")Kh(L,P);else throw V(P)}),A.add(L)}function Kh(A,O){var L=O;if(!E.test(O=B()))throw V(O,"name");var P=O,oe,pe,Xe,_t;if(D("("),D("stream",!0)&&(pe=!0),!N.test(O=B())||(oe=O,D(")"),D("returns"),D("("),D("stream",!0)&&(_t=!0),!N.test(O=B())))throw V(O);Xe=O,D(")");var Wn=new d(P,L,oe,Xe,pe,_t);Je(Wn,function(Vn){if(Vn==="option")Ze(Wn,Vn),D(";");else throw V(Vn)}),A.add(Wn)}function Qh(A,O){if(!N.test(O=B()))throw V(O,"reference");var L=O;Je(null,function(P){switch(P){case"required":case"repeated":case"optional":$t(A,P,L);break;default:if(!he||!N.test(P))throw V(P);de(P),$t(A,"optional",L);break}})}for(var Ce;(Ce=B())!==null;)switch(Ce){case"package":if(!St)throw V(Ce);$h();break;case"import":if(!St)throw V(Ce);Wh();break;case"syntax":if(!St)throw V(Ce);Vh();break;case"option":if(!St)throw V(Ce);Ze(Ee,Ce),D(";");break;default:if(Un(Ee,Ce)){St=!1;continue}throw V(Ce)}return M.filename=null,{package:ct,imports:z,weakImports:re,syntax:ie,root:we}}},{15:15,16:16,20:20,22:22,25:25,29:29,33:33,34:34,35:35,36:36,37:37}],27:[function(t,n,s){n.exports=l;var i=t(39),o,c=i.LongBits,a=i.utf8;function u(g,m){return RangeError("index out of range: "+g.pos+" + "+(m||1)+" > "+g.len)}function l(g){this.buf=g,this.pos=0,this.len=g.length}var h=typeof Uint8Array<"u"?function(g){if(g instanceof Uint8Array||Array.isArray(g))return new l(g);throw Error("illegal buffer")}:function(g){if(Array.isArray(g))return new l(g);throw Error("illegal buffer")};l.create=i.Buffer?function(g){return(l.create=function(m){return i.Buffer.isBuffer(m)?new o(m):h(m)})(g)}:h,l.prototype._slice=i.Array.prototype.subarray||i.Array.prototype.slice,l.prototype.uint32=function(){var g=4294967295;return function(){if(g=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(g=(g|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return g;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return g}}(),l.prototype.int32=function(){return this.uint32()|0},l.prototype.sint32=function(){var g=this.uint32();return g>>>1^-(g&1)|0};function f(){var g=new c(0,0),m=0;if(this.len-this.pos>4){for(;m<4;++m)if(g.lo=(g.lo|(this.buf[this.pos]&127)<<m*7)>>>0,this.buf[this.pos++]<128)return g;if(g.lo=(g.lo|(this.buf[this.pos]&127)<<28)>>>0,g.hi=(g.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return g;m=0}else{for(;m<3;++m){if(this.pos>=this.len)throw u(this);if(g.lo=(g.lo|(this.buf[this.pos]&127)<<m*7)>>>0,this.buf[this.pos++]<128)return g}return g.lo=(g.lo|(this.buf[this.pos++]&127)<<m*7)>>>0,g}if(this.len-this.pos>4){for(;m<5;++m)if(g.hi=(g.hi|(this.buf[this.pos]&127)<<m*7+3)>>>0,this.buf[this.pos++]<128)return g}else for(;m<5;++m){if(this.pos>=this.len)throw u(this);if(g.hi=(g.hi|(this.buf[this.pos]&127)<<m*7+3)>>>0,this.buf[this.pos++]<128)return g}throw Error("invalid varint encoding")}l.prototype.bool=function(){return this.uint32()!==0};function d(g,m){return(g[m-4]|g[m-3]<<8|g[m-2]<<16|g[m-1]<<24)>>>0}l.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return d(this.buf,this.pos+=4)},l.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return d(this.buf,this.pos+=4)|0};function p(){if(this.pos+8>this.len)throw u(this,8);return new c(d(this.buf,this.pos+=4),d(this.buf,this.pos+=4))}l.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var g=i.float.readFloatLE(this.buf,this.pos);return this.pos+=4,g},l.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var g=i.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,g},l.prototype.bytes=function(){var g=this.uint32(),m=this.pos,y=this.pos+g;if(y>this.len)throw u(this,g);return this.pos+=g,Array.isArray(this.buf)?this.buf.slice(m,y):m===y?new this.buf.constructor(0):this._slice.call(this.buf,m,y)},l.prototype.string=function(){var g=this.bytes();return a.read(g,0,g.length)},l.prototype.skip=function(g){if(typeof g=="number"){if(this.pos+g>this.len)throw u(this,g);this.pos+=g}else do if(this.pos>=this.len)throw u(this);while(this.buf[this.pos++]&128);return this},l.prototype.skipType=function(g){switch(g){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:do{if((g=this.uint32()&7)===4)break;this.skipType(g)}while(!0);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+g+" at offset "+this.pos)}return this},l._configure=function(g){o=g;var m=i.Long?"toLong":"toNumber";i.merge(l.prototype,{int64:function(){return f.call(this)[m](!1)},uint64:function(){return f.call(this)[m](!0)},sint64:function(){return f.call(this).zzDecode()[m](!1)},fixed64:function(){return p.call(this)[m](!0)},sfixed64:function(){return p.call(this)[m](!1)}})}},{39:39}],28:[function(t,n,s){n.exports=c;var i=t(27);(c.prototype=Object.create(i.prototype)).constructor=c;var o=t(39);function c(a){i.call(this,a)}o.Buffer&&(c.prototype._slice=o.Buffer.prototype.slice),c.prototype.string=function(){var a=this.uint32();return this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+a,this.len))}},{27:27,39:39}],29:[function(t,n,s){n.exports=d;var i=t(23);((d.prototype=Object.create(i.prototype)).constructor=d).className="Root";var o=t(16),c=t(15),a=t(25),u=t(37),l,h,f;function d(y){i.call(this,"",y),this.deferred=[],this.files=[]}d.fromJSON=function(y,w){return w||(w=new d),y.options&&w.setOptions(y.options),w.addJSON(y.nested)},d.prototype.resolvePath=u.path.resolve;function p(){}d.prototype.load=function y(w,_,b){typeof _=="function"&&(b=_,_=e);var k=this;if(!b)return u.asPromise(y,k,w,_);var S=b===p;function E(q,Q){if(b){var B=b;if(b=null,S)throw q;B(q,Q)}}function N(q,Q){try{if(u.isString(Q)&&Q.charAt(0)==="{"&&(Q=JSON.parse(Q)),!u.isString(Q))k.setOptions(Q.options).addJSON(Q.nested);else{h.filename=q;var B=h(Q,k,_),de,le=0;if(B.imports)for(;le<B.imports.length;++le)(de=k.resolvePath(q,B.imports[le]))&&x(de);if(B.weakImports)for(le=0;le<B.weakImports.length;++le)(de=k.resolvePath(q,B.weakImports[le]))&&x(de,!0)}}catch(D){E(D)}!S&&!M&&E(null,k)}function x(q,Q){var B=q.lastIndexOf("google/protobuf/");if(B>-1){var de=q.substring(B);de in f&&(q=de)}if(!(k.files.indexOf(q)>-1)){if(k.files.push(q),q in f){S?N(q,f[q]):(++M,setTimeout(function(){--M,N(q,f[q])}));return}if(S){var le;try{le=u.fs.readFileSync(q).toString("utf8")}catch(D){Q||E(D);return}N(q,le)}else++M,u.fetch(q,function(D,at){if(--M,!!b){if(D){Q?M||E(null,k):E(D);return}N(q,at)}})}}var M=0;u.isString(w)&&(w=[w]);for(var J=0,we;J<w.length;++J)(we=k.resolvePath("",w[J]))&&x(we);return S?k:(M||E(null,k),e)},d.prototype.loadSync=function(y,w){if(!u.isNode)throw Error("not supported");return this.load(y,w,p)},d.prototype.resolveAll=function(){if(this.deferred.length)throw Error("unresolvable extensions: "+this.deferred.map(function(y){return"'extend "+y.extend+"' in "+y.parent.fullName}).join(", "));return i.prototype.resolveAll.call(this)};var g=/^[A-Z]/;function m(y,w){var _=w.parent.lookup(w.extend);if(_){var b=new o(w.fullName,w.id,w.type,w.rule,e,w.options);return b.declaringField=w,w.extensionField=b,_.add(b),!0}return!1}d.prototype._handleAdd=function(y){if(y instanceof o)y.extend!==e&&!y.extensionField&&(m(this,y)||this.deferred.push(y));else if(y instanceof c)g.test(y.name)&&(y.parent[y.name]=y.values);else if(!(y instanceof a)){if(y instanceof l)for(var w=0;w<this.deferred.length;)m(this,this.deferred[w])?this.deferred.splice(w,1):++w;for(var _=0;_<y.nestedArray.length;++_)this._handleAdd(y._nestedArray[_]);g.test(y.name)&&(y.parent[y.name]=y)}},d.prototype._handleRemove=function(y){if(y instanceof o){if(y.extend!==e)if(y.extensionField)y.extensionField.parent.remove(y.extensionField),y.extensionField=null;else{var w=this.deferred.indexOf(y);w>-1&&this.deferred.splice(w,1)}}else if(y instanceof c)g.test(y.name)&&delete y.parent[y.name];else if(y instanceof i){for(var _=0;_<y.nestedArray.length;++_)this._handleRemove(y._nestedArray[_]);g.test(y.name)&&delete y.parent[y.name]}},d._configure=function(y,w,_){l=y,h=w,f=_}},{15:15,16:16,23:23,25:25,37:37}],30:[function(t,n,s){n.exports={}},{}],31:[function(t,n,s){var i=s;i.Service=t(32)},{32:32}],32:[function(t,n,s){n.exports=o;var i=t(39);(o.prototype=Object.create(i.EventEmitter.prototype)).constructor=o;function o(c,a,u){if(typeof c!="function")throw TypeError("rpcImpl must be a function");i.EventEmitter.call(this),this.rpcImpl=c,this.requestDelimited=!!a,this.responseDelimited=!!u}o.prototype.rpcCall=function c(a,u,l,h,f){if(!h)throw TypeError("request must be specified");var d=this;if(!f)return i.asPromise(c,d,a,u,l,h);if(!d.rpcImpl)return setTimeout(function(){f(Error("already ended"))},0),e;try{return d.rpcImpl(a,u[d.requestDelimited?"encodeDelimited":"encode"](h).finish(),function(p,g){if(p)return d.emit("error",p,a),f(p);if(g===null)return d.end(!0),e;if(!(g instanceof l))try{g=l[d.responseDelimited?"decodeDelimited":"decode"](g)}catch(m){return d.emit("error",m,a),f(m)}return d.emit("data",g,a),f(null,g)})}catch(p){return d.emit("error",p,a),setTimeout(function(){f(p)},0),e}},o.prototype.end=function(c){return this.rpcImpl&&(c||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},{39:39}],33:[function(t,n,s){n.exports=u;var i=t(23);((u.prototype=Object.create(i.prototype)).constructor=u).className="Service";var o=t(22),c=t(37),a=t(31);function u(h,f){i.call(this,h,f),this.methods={},this._methodsArray=null}u.fromJSON=function(h,f){var d=new u(h,f.options);if(f.methods)for(var p=Object.keys(f.methods),g=0;g<p.length;++g)d.add(o.fromJSON(p[g],f.methods[p[g]]));return f.nested&&d.addJSON(f.nested),d.comment=f.comment,d},u.prototype.toJSON=function(h){var f=i.prototype.toJSON.call(this,h),d=h?!!h.keepComments:!1;return c.toObject(["options",f&&f.options||e,"methods",i.arrayToJSON(this.methodsArray,h)||{},"nested",f&&f.nested||e,"comment",d?this.comment:e])},Object.defineProperty(u.prototype,"methodsArray",{get:function(){return this._methodsArray||(this._methodsArray=c.toArray(this.methods))}});function l(h){return h._methodsArray=null,h}u.prototype.get=function(h){return this.methods[h]||i.prototype.get.call(this,h)},u.prototype.resolveAll=function(){for(var h=this.methodsArray,f=0;f<h.length;++f)h[f].resolve();return i.prototype.resolve.call(this)},u.prototype.add=function(h){if(this.get(h.name))throw Error("duplicate name '"+h.name+"' in "+this);return h instanceof o?(this.methods[h.name]=h,h.parent=this,l(this)):i.prototype.add.call(this,h)},u.prototype.remove=function(h){if(h instanceof o){if(this.methods[h.name]!==h)throw Error(h+" is not a member of "+this);return delete this.methods[h.name],h.parent=null,l(this)}return i.prototype.remove.call(this,h)},u.prototype.create=function(h,f,d){for(var p=new a.Service(h,f,d),g=0,m;g<this.methodsArray.length;++g){var y=c.lcFirst((m=this._methodsArray[g]).resolve().name).replace(/[^$\w_]/g,"");p[y]=c.codegen(["r","c"],c.isReserved(y)?y+"_":y)("return this.rpcCall(m,q,s,r,c)")({m,q:m.resolvedRequestType.ctor,s:m.resolvedResponseType.ctor})}return p}},{22:22,23:23,31:31,37:37}],34:[function(t,n,s){n.exports=g;var i=/[\s{}=;:[\],'"()<>]/g,o=/(?:"([^"\\]*(?:\\.[^"\\]*)*)")/g,c=/(?:'([^'\\]*(?:\\.[^'\\]*)*)')/g,a=/^ *[*/]+ */,u=/^\s*\*?\/*/,l=/\n/g,h=/\s/,f=/\\(.?)/g,d={0:"\0",r:"\r",n:`
18
- `,t:" "};function p(m){return m.replace(f,function(y,w){switch(w){case"\\":case"":return w;default:return d[w]||""}})}g.unescape=p;function g(m,y){m=m.toString();var w=0,_=m.length,b=1,k=null,S=null,E=0,N=!1,x=[],M=null;function J(z){return Error("illegal "+z+" (line "+b+")")}function we(){var z=M==="'"?c:o;z.lastIndex=w-1;var re=z.exec(m);if(!re)throw J("string");return w=z.lastIndex,D(M),M=null,p(re[1])}function q(z){return m.charAt(z)}function Q(z,re){k=m.charAt(z++),E=b,N=!1;var ie;y?ie=2:ie=3;var he=z-ie,Ee;do if(--he<0||(Ee=m.charAt(he))===`
19
- `){N=!0;break}while(Ee===" "||Ee===" ");for(var Ie=m.substring(z,re).split(l),V=0;V<Ie.length;++V)Ie[V]=Ie[V].replace(y?u:a,"").trim();S=Ie.join(`
20
- `).trim()}function B(z){var re=de(z),ie=m.substring(z,re),he=/^\s*\/{1,2}/.test(ie);return he}function de(z){for(var re=z;re<_&&q(re)!==`
21
- `;)re++;return re}function le(){if(x.length>0)return x.shift();if(M)return we();var z,re,ie,he,Ee;do{if(w===_)return null;for(z=!1;h.test(ie=q(w));)if(ie===`
22
- `&&++b,++w===_)return null;if(q(w)==="/"){if(++w===_)throw J("comment");if(q(w)==="/")if(y){if(he=w,Ee=!1,B(w)){Ee=!0;do{if(w=de(w),w===_)break;w++}while(B(w))}else w=Math.min(_,de(w)+1);Ee&&Q(he,w),b++,z=!0}else{for(Ee=q(he=w+1)==="/";q(++w)!==`
23
- `;)if(w===_)return null;++w,Ee&&Q(he,w-1),++b,z=!0}else if((ie=q(w))==="*"){he=w+1,Ee=y||q(he)==="*";do{if(ie===`
24
- `&&++b,++w===_)throw J("comment");re=ie,ie=q(w)}while(re!=="*"||ie!=="/");++w,Ee&&Q(he,w-2),z=!0}else return"/"}}while(z);var Ie=w;i.lastIndex=0;var V=i.test(q(Ie++));if(!V)for(;Ie<_&&!i.test(q(Ie));)++Ie;var Qe=m.substring(w,w=Ie);return(Qe==='"'||Qe==="'")&&(M=Qe),Qe}function D(z){x.push(z)}function at(){if(!x.length){var z=le();if(z===null)return null;D(z)}return x[0]}function St(z,re){var ie=at(),he=ie===z;if(he)return le(),!0;if(!re)throw J("token '"+ie+"', '"+z+"' expected");return!1}function ct(z){var re=null;return z===e?E===b-1&&(y||k==="*"||N)&&(re=S):(E<z&&at(),E===z&&!N&&(y||k==="/")&&(re=S)),re}return Object.defineProperty({next:le,peek:at,push:D,skip:St,cmnt:ct},"line",{get:function(){return b}})}},{}],35:[function(t,n,s){n.exports=b;var i=t(23);((b.prototype=Object.create(i.prototype)).constructor=b).className="Type";var o=t(15),c=t(25),a=t(16),u=t(20),l=t(33),h=t(21),f=t(27),d=t(42),p=t(37),g=t(14),m=t(13),y=t(40),w=t(12),_=t(41);function b(S,E){i.call(this,S,E),this.fields={},this.oneofs=e,this.extensions=e,this.reserved=e,this.group=e,this._fieldsById=null,this._fieldsArray=null,this._oneofsArray=null,this._ctor=null}Object.defineProperties(b.prototype,{fieldsById:{get:function(){if(this._fieldsById)return this._fieldsById;this._fieldsById={};for(var S=Object.keys(this.fields),E=0;E<S.length;++E){var N=this.fields[S[E]],x=N.id;if(this._fieldsById[x])throw Error("duplicate id "+x+" in "+this);this._fieldsById[x]=N}return this._fieldsById}},fieldsArray:{get:function(){return this._fieldsArray||(this._fieldsArray=p.toArray(this.fields))}},oneofsArray:{get:function(){return this._oneofsArray||(this._oneofsArray=p.toArray(this.oneofs))}},ctor:{get:function(){return this._ctor||(this.ctor=b.generateConstructor(this)())},set:function(S){var E=S.prototype;E instanceof h||((S.prototype=new h).constructor=S,p.merge(S.prototype,E)),S.$type=S.prototype.$type=this,p.merge(S,h,!0),this._ctor=S;for(var N=0;N<this.fieldsArray.length;++N)this._fieldsArray[N].resolve();var x={};for(N=0;N<this.oneofsArray.length;++N)x[this._oneofsArray[N].resolve().name]={get:p.oneOfGetter(this._oneofsArray[N].oneof),set:p.oneOfSetter(this._oneofsArray[N].oneof)};N&&Object.defineProperties(S.prototype,x)}}}),b.generateConstructor=function(S){for(var E=p.codegen(["p"],S.name),N=0,x;N<S.fieldsArray.length;++N)(x=S._fieldsArray[N]).map?E("this%s={}",p.safeProp(x.name)):x.repeated&&E("this%s=[]",p.safeProp(x.name));return E("if(p)for(var ks=Object.keys(p),i=0;i<ks.length;++i)if(p[ks[i]]!=null)")("this[ks[i]]=p[ks[i]]")};function k(S){return S._fieldsById=S._fieldsArray=S._oneofsArray=null,delete S.encode,delete S.decode,delete S.verify,S}b.fromJSON=function(S,E){var N=new b(S,E.options);N.extensions=E.extensions,N.reserved=E.reserved;for(var x=Object.keys(E.fields),M=0;M<x.length;++M)N.add((typeof E.fields[x[M]].keyType<"u"?u.fromJSON:a.fromJSON)(x[M],E.fields[x[M]]));if(E.oneofs)for(x=Object.keys(E.oneofs),M=0;M<x.length;++M)N.add(c.fromJSON(x[M],E.oneofs[x[M]]));if(E.nested)for(x=Object.keys(E.nested),M=0;M<x.length;++M){var J=E.nested[x[M]];N.add((J.id!==e?a.fromJSON:J.fields!==e?b.fromJSON:J.values!==e?o.fromJSON:J.methods!==e?l.fromJSON:i.fromJSON)(x[M],J))}return E.extensions&&E.extensions.length&&(N.extensions=E.extensions),E.reserved&&E.reserved.length&&(N.reserved=E.reserved),E.group&&(N.group=!0),E.comment&&(N.comment=E.comment),N},b.prototype.toJSON=function(S){var E=i.prototype.toJSON.call(this,S),N=S?!!S.keepComments:!1;return p.toObject(["options",E&&E.options||e,"oneofs",i.arrayToJSON(this.oneofsArray,S),"fields",i.arrayToJSON(this.fieldsArray.filter(function(x){return!x.declaringField}),S)||{},"extensions",this.extensions&&this.extensions.length?this.extensions:e,"reserved",this.reserved&&this.reserved.length?this.reserved:e,"group",this.group||e,"nested",E&&E.nested||e,"comment",N?this.comment:e])},b.prototype.resolveAll=function(){for(var S=this.fieldsArray,E=0;E<S.length;)S[E++].resolve();var N=this.oneofsArray;for(E=0;E<N.length;)N[E++].resolve();return i.prototype.resolveAll.call(this)},b.prototype.get=function(S){return this.fields[S]||this.oneofs&&this.oneofs[S]||this.nested&&this.nested[S]||null},b.prototype.add=function(S){if(this.get(S.name))throw Error("duplicate name '"+S.name+"' in "+this);if(S instanceof a&&S.extend===e){if(this._fieldsById?this._fieldsById[S.id]:this.fieldsById[S.id])throw Error("duplicate id "+S.id+" in "+this);if(this.isReservedId(S.id))throw Error("id "+S.id+" is reserved in "+this);if(this.isReservedName(S.name))throw Error("name '"+S.name+"' is reserved in "+this);return S.parent&&S.parent.remove(S),this.fields[S.name]=S,S.message=this,S.onAdd(this),k(this)}return S instanceof c?(this.oneofs||(this.oneofs={}),this.oneofs[S.name]=S,S.onAdd(this),k(this)):i.prototype.add.call(this,S)},b.prototype.remove=function(S){if(S instanceof a&&S.extend===e){if(!this.fields||this.fields[S.name]!==S)throw Error(S+" is not a member of "+this);return delete this.fields[S.name],S.parent=null,S.onRemove(this),k(this)}if(S instanceof c){if(!this.oneofs||this.oneofs[S.name]!==S)throw Error(S+" is not a member of "+this);return delete this.oneofs[S.name],S.parent=null,S.onRemove(this),k(this)}return i.prototype.remove.call(this,S)},b.prototype.isReservedId=function(S){return i.isReservedId(this.reserved,S)},b.prototype.isReservedName=function(S){return i.isReservedName(this.reserved,S)},b.prototype.create=function(S){return new this.ctor(S)},b.prototype.setup=function(){for(var S=this.fullName,E=[],N=0;N<this.fieldsArray.length;++N)E.push(this._fieldsArray[N].resolve().resolvedType);this.encode=g(this)({Writer:d,types:E,util:p}),this.decode=m(this)({Reader:f,types:E,util:p}),this.verify=y(this)({types:E,util:p}),this.fromObject=w.fromObject(this)({types:E,util:p}),this.toObject=w.toObject(this)({types:E,util:p});var x=_[S];if(x){var M=Object.create(this);M.fromObject=this.fromObject,this.fromObject=x.fromObject.bind(M),M.toObject=this.toObject,this.toObject=x.toObject.bind(M)}return this},b.prototype.encode=function(S,E){return this.setup().encode(S,E)},b.prototype.encodeDelimited=function(S,E){return this.encode(S,E&&E.len?E.fork():E).ldelim()},b.prototype.decode=function(S,E){return this.setup().decode(S,E)},b.prototype.decodeDelimited=function(S){return S instanceof f||(S=f.create(S)),this.decode(S,S.uint32())},b.prototype.verify=function(S){return this.setup().verify(S)},b.prototype.fromObject=function(S){return this.setup().fromObject(S)},b.prototype.toObject=function(S,E){return this.setup().toObject(S,E)},b.d=function(S){return function(E){p.decorateType(E,S)}}},{12:12,13:13,14:14,15:15,16:16,20:20,21:21,23:23,25:25,27:27,33:33,37:37,40:40,41:41,42:42}],36:[function(t,n,s){var i=s,o=t(37),c=["double","float","int32","uint32","sint32","fixed32","sfixed32","int64","uint64","sint64","fixed64","sfixed64","bool","string","bytes"];function a(u,l){var h=0,f={};for(l|=0;h<u.length;)f[c[h+l]]=u[h++];return f}i.basic=a([1,5,0,0,0,5,5,0,0,0,1,1,0,2,2]),i.defaults=a([0,0,0,0,0,0,0,0,0,0,0,0,!1,"",o.emptyArray,null]),i.long=a([0,0,0,1,1],7),i.mapKey=a([0,0,0,5,5,0,0,0,1,1,0,2],2),i.packed=a([1,5,0,0,0,5,5,0,0,0,1,1,0])},{37:37}],37:[function(t,n,s){var i=n.exports=t(39),o=t(30),c,a;i.codegen=t(3),i.fetch=t(5),i.path=t(8),i.fs=i.inquire("fs"),i.toArray=function(d){if(d){for(var p=Object.keys(d),g=new Array(p.length),m=0;m<p.length;)g[m]=d[p[m++]];return g}return[]},i.toObject=function(d){for(var p={},g=0;g<d.length;){var m=d[g++],y=d[g++];y!==e&&(p[m]=y)}return p};var u=/\\/g,l=/"/g;i.isReserved=function(d){return/^(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)$/.test(d)},i.safeProp=function(d){return!/^[$\w_]+$/.test(d)||i.isReserved(d)?'["'+d.replace(u,"\\\\").replace(l,'\\"')+'"]':"."+d},i.ucFirst=function(d){return d.charAt(0).toUpperCase()+d.substring(1)};var h=/_([a-z])/g;i.camelCase=function(d){return d.substring(0,1)+d.substring(1).replace(h,function(p,g){return g.toUpperCase()})},i.compareFieldsById=function(d,p){return d.id-p.id},i.decorateType=function(d,p){if(d.$type)return p&&d.$type.name!==p&&(i.decorateRoot.remove(d.$type),d.$type.name=p,i.decorateRoot.add(d.$type)),d.$type;c||(c=t(35));var g=new c(p||d.name);return i.decorateRoot.add(g),g.ctor=d,Object.defineProperty(d,"$type",{value:g,enumerable:!1}),Object.defineProperty(d.prototype,"$type",{value:g,enumerable:!1}),g};var f=0;i.decorateEnum=function(d){if(d.$type)return d.$type;a||(a=t(15));var p=new a("Enum"+f++,d);return i.decorateRoot.add(p),Object.defineProperty(d,"$type",{value:p,enumerable:!1}),p},Object.defineProperty(i,"decorateRoot",{get:function(){return o.decorated||(o.decorated=new(t(29)))}})},{15:15,29:29,3:3,30:30,35:35,39:39,5:5,8:8}],38:[function(t,n,s){n.exports=o;var i=t(39);function o(l,h){this.lo=l>>>0,this.hi=h>>>0}var c=o.zero=new o(0,0);c.toNumber=function(){return 0},c.zzEncode=c.zzDecode=function(){return this},c.length=function(){return 1};var a=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(l){if(l===0)return c;var h=l<0;h&&(l=-l);var f=l>>>0,d=(l-f)/4294967296>>>0;return h&&(d=~d>>>0,f=~f>>>0,++f>4294967295&&(f=0,++d>4294967295&&(d=0))),new o(f,d)},o.from=function(l){if(typeof l=="number")return o.fromNumber(l);if(i.isString(l))if(i.Long)l=i.Long.fromString(l);else return o.fromNumber(parseInt(l,10));return l.low||l.high?new o(l.low>>>0,l.high>>>0):c},o.prototype.toNumber=function(l){if(!l&&this.hi>>>31){var h=~this.lo+1>>>0,f=~this.hi>>>0;return h||(f=f+1>>>0),-(h+f*4294967296)}return this.lo+this.hi*4294967296},o.prototype.toLong=function(l){return i.Long?new i.Long(this.lo|0,this.hi|0,!!l):{low:this.lo|0,high:this.hi|0,unsigned:!!l}};var u=String.prototype.charCodeAt;o.fromHash=function(l){return l===a?c:new o((u.call(l,0)|u.call(l,1)<<8|u.call(l,2)<<16|u.call(l,3)<<24)>>>0,(u.call(l,4)|u.call(l,5)<<8|u.call(l,6)<<16|u.call(l,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var l=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^l)>>>0,this.lo=(this.lo<<1^l)>>>0,this},o.prototype.zzDecode=function(){var l=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^l)>>>0,this.hi=(this.hi>>>1^l)>>>0,this},o.prototype.length=function(){var l=this.lo,h=(this.lo>>>28|this.hi<<4)>>>0,f=this.hi>>>24;return f===0?h===0?l<16384?l<128?1:2:l<2097152?3:4:h<16384?h<128?5:6:h<2097152?7:8:f<128?9:10}},{39:39}],39:[function(t,n,s){var i=s;i.asPromise=t(1),i.base64=t(2),i.EventEmitter=t(4),i.float=t(6),i.inquire=t(7),i.utf8=t(10),i.pool=t(9),i.LongBits=t(38),i.emptyArray=Object.freeze?Object.freeze([]):[],i.emptyObject=Object.freeze?Object.freeze({}):{},i.isNode=!!(nr.process&&nr.process.versions&&nr.process.versions.node),i.isInteger=Number.isInteger||function(a){return typeof a=="number"&&isFinite(a)&&Math.floor(a)===a},i.isString=function(a){return typeof a=="string"||a instanceof String},i.isObject=function(a){return a&&typeof a=="object"},i.isset=i.isSet=function(a,u){var l=a[u];return l!=null&&a.hasOwnProperty(u)?typeof l!="object"||(Array.isArray(l)?l.length:Object.keys(l).length)>0:!1},i.Buffer=function(){try{var a=i.inquire("buffer").Buffer;return a.prototype.utf8Write?a:null}catch{return null}}(),i._Buffer_from=null,i._Buffer_allocUnsafe=null,i.newBuffer=function(a){return typeof a=="number"?i.Buffer?i._Buffer_allocUnsafe(a):new i.Array(a):i.Buffer?i._Buffer_from(a):typeof Uint8Array>"u"?a:new Uint8Array(a)},i.Array=typeof Uint8Array<"u"?Uint8Array:Array,i.Long=nr.dcodeIO&&nr.dcodeIO.Long||i.inquire("long"),i.key2Re=/^true|false|0|1$/,i.key32Re=/^-?(?:0|[1-9][0-9]*)$/,i.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,i.longToHash=function(a){return a?i.LongBits.from(a).toHash():i.LongBits.zeroHash},i.longFromHash=function(a,u){var l=i.LongBits.fromHash(a);return i.Long?i.Long.fromBits(l.lo,l.hi,u):l.toNumber(!!u)};function o(a,u,l){for(var h=Object.keys(u),f=0;f<h.length;++f)(a[h[f]]===e||!l)&&(a[h[f]]=u[h[f]]);return a}i.merge=o,i.lcFirst=function(a){return a.charAt(0).toLowerCase()+a.substring(1)};function c(a){function u(l,h){if(!(this instanceof u))return new u(l,h);Object.defineProperty(this,"message",{get:function(){return l}}),Error.captureStackTrace?Error.captureStackTrace(this,u):Object.defineProperty(this,"stack",{value:new Error().stack||""}),h&&o(this,h)}return(u.prototype=Object.create(Error.prototype)).constructor=u,Object.defineProperty(u.prototype,"name",{get:function(){return a}}),u.prototype.toString=function(){return this.name+": "+this.message},u}i.newError=c,i.ProtocolError=c("ProtocolError"),i.oneOfGetter=function(a){for(var u={},l=0;l<a.length;++l)u[a[l]]=1;return function(){for(var h=Object.keys(this),f=h.length-1;f>-1;--f)if(u[h[f]]===1&&this[h[f]]!==e&&this[h[f]]!==null)return h[f]}},i.oneOfSetter=function(a){return function(u){for(var l=0;l<a.length;++l)a[l]!==u&&delete this[a[l]]}},i.toJSONOptions={longs:String,enums:String,bytes:String,json:!0},i._configure=function(){var a=i.Buffer;if(!a){i._Buffer_from=i._Buffer_allocUnsafe=null;return}i._Buffer_from=a.from!==Uint8Array.from&&a.from||function(u,l){return new a(u,l)},i._Buffer_allocUnsafe=a.allocUnsafe||function(u){return new a(u)}}},{1:1,10:10,2:2,38:38,4:4,6:6,7:7,9:9}],40:[function(t,n,s){n.exports=l;var i=t(15),o=t(37);function c(h,f){return h.name+": "+f+(h.repeated&&f!=="array"?"[]":h.map&&f!=="object"?"{k:"+h.keyType+"}":"")+" expected"}function a(h,f,d,p){if(f.resolvedType)if(f.resolvedType instanceof i){h("switch(%s){",p)("default:")("return%j",c(f,"enum value"));for(var g=Object.keys(f.resolvedType.values),m=0;m<g.length;++m)h("case %i:",f.resolvedType.values[g[m]]);h("break")("}")}else h("{")("var e=types[%i].verify(%s);",d,p)("if(e)")("return%j+e",f.name+".")("}");else switch(f.type){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":h("if(!util.isInteger(%s))",p)("return%j",c(f,"integer"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":h("if(!util.isInteger(%s)&&!(%s&&util.isInteger(%s.low)&&util.isInteger(%s.high)))",p,p,p,p)("return%j",c(f,"integer|Long"));break;case"float":case"double":h('if(typeof %s!=="number")',p)("return%j",c(f,"number"));break;case"bool":h('if(typeof %s!=="boolean")',p)("return%j",c(f,"boolean"));break;case"string":h("if(!util.isString(%s))",p)("return%j",c(f,"string"));break;case"bytes":h('if(!(%s&&typeof %s.length==="number"||util.isString(%s)))',p,p,p)("return%j",c(f,"buffer"));break}return h}function u(h,f,d){switch(f.keyType){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":h("if(!util.key32Re.test(%s))",d)("return%j",c(f,"integer key"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":h("if(!util.key64Re.test(%s))",d)("return%j",c(f,"integer|Long key"));break;case"bool":h("if(!util.key2Re.test(%s))",d)("return%j",c(f,"boolean key"));break}return h}function l(h){var f=o.codegen(["m"],h.name+"$verify")('if(typeof m!=="object"||m===null)')("return%j","object expected"),d=h.oneofsArray,p={};d.length&&f("var p={}");for(var g=0;g<h.fieldsArray.length;++g){var m=h._fieldsArray[g].resolve(),y="m"+o.safeProp(m.name);if(m.optional&&f("if(%s!=null&&m.hasOwnProperty(%j)){",y,m.name),m.map)f("if(!util.isObject(%s))",y)("return%j",c(m,"object"))("var k=Object.keys(%s)",y)("for(var i=0;i<k.length;++i){"),u(f,m,"k[i]"),a(f,m,g,y+"[k[i]]")("}");else if(m.repeated)f("if(!Array.isArray(%s))",y)("return%j",c(m,"array"))("for(var i=0;i<%s.length;++i){",y),a(f,m,g,y+"[i]")("}");else{if(m.partOf){var w=o.safeProp(m.partOf.name);p[m.partOf.name]===1&&f("if(p%s===1)",w)("return%j",m.partOf.name+": multiple values"),p[m.partOf.name]=1,f("p%s=1",w)}a(f,m,g,y)}m.optional&&f("}")}return f("return null")}},{15:15,37:37}],41:[function(t,n,s){var i=s,o=t(21);i[".google.protobuf.Any"]={fromObject:function(c){if(c&&c["@type"]){var a=this.lookup(c["@type"]);if(a){var u=c["@type"].charAt(0)==="."?c["@type"].substr(1):c["@type"];return this.create({type_url:"/"+u,value:a.encode(a.fromObject(c)).finish()})}}return this.fromObject(c)},toObject:function(c,a){if(a&&a.json&&c.type_url&&c.value){var u=c.type_url.substring(c.type_url.lastIndexOf("/")+1),l=this.lookup(u);l&&(c=l.decode(c.value))}if(!(c instanceof this.ctor)&&c instanceof o){var h=c.$type.toObject(c,a);return h["@type"]=c.$type.fullName,h}return this.toObject(c,a)}}},{21:21}],42:[function(t,n,s){n.exports=d;var i=t(39),o,c=i.LongBits,a=i.base64,u=i.utf8;function l(b,k,S){this.fn=b,this.len=k,this.next=e,this.val=S}function h(){}function f(b){this.head=b.head,this.tail=b.tail,this.len=b.len,this.next=b.states}function d(){this.len=0,this.head=new l(h,0,0),this.tail=this.head,this.states=null}d.create=i.Buffer?function(){return(d.create=function(){return new o})()}:function(){return new d},d.alloc=function(b){return new i.Array(b)},i.Array!==Array&&(d.alloc=i.pool(d.alloc,i.Array.prototype.subarray)),d.prototype._push=function(b,k,S){return this.tail=this.tail.next=new l(b,k,S),this.len+=k,this};function p(b,k,S){k[S]=b&255}function g(b,k,S){for(;b>127;)k[S++]=b&127|128,b>>>=7;k[S]=b}function m(b,k){this.len=b,this.next=e,this.val=k}m.prototype=Object.create(l.prototype),m.prototype.fn=g,d.prototype.uint32=function(b){return this.len+=(this.tail=this.tail.next=new m((b=b>>>0)<128?1:b<16384?2:b<2097152?3:b<268435456?4:5,b)).len,this},d.prototype.int32=function(b){return b<0?this._push(y,10,c.fromNumber(b)):this.uint32(b)},d.prototype.sint32=function(b){return this.uint32((b<<1^b>>31)>>>0)};function y(b,k,S){for(;b.hi;)k[S++]=b.lo&127|128,b.lo=(b.lo>>>7|b.hi<<25)>>>0,b.hi>>>=7;for(;b.lo>127;)k[S++]=b.lo&127|128,b.lo=b.lo>>>7;k[S++]=b.lo}d.prototype.uint64=function(b){var k=c.from(b);return this._push(y,k.length(),k)},d.prototype.int64=d.prototype.uint64,d.prototype.sint64=function(b){var k=c.from(b).zzEncode();return this._push(y,k.length(),k)},d.prototype.bool=function(b){return this._push(p,1,b?1:0)};function w(b,k,S){k[S]=b&255,k[S+1]=b>>>8&255,k[S+2]=b>>>16&255,k[S+3]=b>>>24}d.prototype.fixed32=function(b){return this._push(w,4,b>>>0)},d.prototype.sfixed32=d.prototype.fixed32,d.prototype.fixed64=function(b){var k=c.from(b);return this._push(w,4,k.lo)._push(w,4,k.hi)},d.prototype.sfixed64=d.prototype.fixed64,d.prototype.float=function(b){return this._push(i.float.writeFloatLE,4,b)},d.prototype.double=function(b){return this._push(i.float.writeDoubleLE,8,b)};var _=i.Array.prototype.set?function(b,k,S){k.set(b,S)}:function(b,k,S){for(var E=0;E<b.length;++E)k[S+E]=b[E]};d.prototype.bytes=function(b){var k=b.length>>>0;if(!k)return this._push(p,1,0);if(i.isString(b)){var S=d.alloc(k=a.length(b));a.decode(b,S,0),b=S}return this.uint32(k)._push(_,k,b)},d.prototype.string=function(b){var k=u.length(b);return k?this.uint32(k)._push(u.write,k,b):this._push(p,1,0)},d.prototype.fork=function(){return this.states=new f(this),this.head=this.tail=new l(h,0,0),this.len=0,this},d.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new l(h,0,0),this.len=0),this},d.prototype.ldelim=function(){var b=this.head,k=this.tail,S=this.len;return this.reset().uint32(S),S&&(this.tail.next=b.next,this.tail=k,this.len+=S),this},d.prototype.finish=function(){for(var b=this.head.next,k=this.constructor.alloc(this.len),S=0;b;)b.fn(b.val,k,S),S+=b.len,b=b.next;return k},d._configure=function(b){o=b}},{39:39}],43:[function(t,n,s){n.exports=a;var i=t(42);(a.prototype=Object.create(i.prototype)).constructor=a;var o=t(39),c=o.Buffer;function a(){i.call(this)}a.alloc=function(h){return(a.alloc=o._Buffer_allocUnsafe)(h)};var u=c&&c.prototype instanceof Uint8Array&&c.prototype.set.name==="set"?function(h,f,d){f.set(h,d)}:function(h,f,d){if(h.copy)h.copy(f,d,0,h.length);else for(var p=0;p<h.length;)f[d++]=h[p++]};a.prototype.bytes=function(h){o.isString(h)&&(h=o._Buffer_from(h,"base64"));var f=h.length>>>0;return this.uint32(f),f&&this._push(u,f,h),this};function l(h,f,d){h.length<40?o.utf8.write(h,f,d):f.utf8Write(h,d)}a.prototype.string=function(h){var f=c.byteLength(h);return this.uint32(f),f&&this._push(l,f,h),this}},{39:39,42:42}]},{},[19])})()}(Dn)),Dn.exports}var Eh=kh();const sr=vh(Eh);let G=sr.Reader,ke=sr.Writer,me=sr.util;const F=sr.roots["push-server"]||(sr.roots["push-server"]={});F.RequestBatch=function(){function r(e){if(this.requests=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.requests=me.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ke.create()),e.requests!=null&&e.requests.length)for(var n=0;n<e.requests.length;++n)F.Request.encode(e.requests[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.RequestBatch;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.requests&&s.requests.length||(s.requests=[]),s.requests.push(F.Request.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.Request=function(){function r(t){if(t)for(var n=Object.keys(t),s=0;s<n.length;++s)t[n[s]]!=null&&(this[n[s]]=t[n[s]])}r.prototype.incomingMessages=null,r.prototype.channelStats=null,r.prototype.serverStats=null;var e;return Object.defineProperty(r.prototype,"command",{get:me.oneOfGetter(e=["incomingMessages","channelStats","serverStats"]),set:me.oneOfSetter(e)}),r.create=function(t){return new r(t)},r.encode=function(t,n){return n||(n=ke.create()),t.incomingMessages!=null&&t.hasOwnProperty("incomingMessages")&&F.IncomingMessagesRequest.encode(t.incomingMessages,n.uint32(10).fork()).ldelim(),t.channelStats!=null&&t.hasOwnProperty("channelStats")&&F.ChannelStatsRequest.encode(t.channelStats,n.uint32(18).fork()).ldelim(),t.serverStats!=null&&t.hasOwnProperty("serverStats")&&F.ServerStatsRequest.encode(t.serverStats,n.uint32(26).fork()).ldelim(),n},r.decode=function(t,n){t instanceof G||(t=G.create(t));for(var s=n===void 0?t.len:t.pos+n,i=new F.Request;t.pos<s;){var o=t.uint32();switch(o>>>3){case 1:i.incomingMessages=F.IncomingMessagesRequest.decode(t,t.uint32());break;case 2:i.channelStats=F.ChannelStatsRequest.decode(t,t.uint32());break;case 3:i.serverStats=F.ServerStatsRequest.decode(t,t.uint32());break;default:t.skipType(o&7);break}}return i},r}(),F.IncomingMessagesRequest=function(){function r(e){if(this.messages=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.messages=me.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ke.create()),e.messages!=null&&e.messages.length)for(var n=0;n<e.messages.length;++n)F.IncomingMessage.encode(e.messages[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.IncomingMessagesRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.messages&&s.messages.length||(s.messages=[]),s.messages.push(F.IncomingMessage.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.IncomingMessage=function(){function r(e){if(this.receivers=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.receivers=me.emptyArray,r.prototype.sender=null,r.prototype.body="",r.prototype.expiry=0,r.prototype.type="",r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ke.create()),e.receivers!=null&&e.receivers.length)for(var n=0;n<e.receivers.length;++n)F.Receiver.encode(e.receivers[n],t.uint32(10).fork()).ldelim();return e.sender!=null&&e.hasOwnProperty("sender")&&F.Sender.encode(e.sender,t.uint32(18).fork()).ldelim(),e.body!=null&&e.hasOwnProperty("body")&&t.uint32(26).string(e.body),e.expiry!=null&&e.hasOwnProperty("expiry")&&t.uint32(32).uint32(e.expiry),e.type!=null&&e.hasOwnProperty("type")&&t.uint32(42).string(e.type),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.IncomingMessage;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.receivers&&s.receivers.length||(s.receivers=[]),s.receivers.push(F.Receiver.decode(e,e.uint32()));break;case 2:s.sender=F.Sender.decode(e,e.uint32());break;case 3:s.body=e.string();break;case 4:s.expiry=e.uint32();break;case 5:s.type=e.string();break;default:e.skipType(i&7);break}}return s},r}(),F.ChannelStatsRequest=function(){function r(e){if(this.channels=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.channels=me.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ke.create()),e.channels!=null&&e.channels.length)for(var n=0;n<e.channels.length;++n)F.ChannelId.encode(e.channels[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ChannelStatsRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.channels&&s.channels.length||(s.channels=[]),s.channels.push(F.ChannelId.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.ChannelId=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=me.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.signature=me.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ke.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.signature!=null&&e.hasOwnProperty("signature")&&t.uint32(26).bytes(e.signature),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ChannelId;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.signature=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),F.ServerStatsRequest=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ke.create()),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ServerStatsRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){default:e.skipType(i&7);break}}return s},r}(),F.Sender=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.type=0,r.prototype.id=me.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ke.create()),e.type!=null&&e.hasOwnProperty("type")&&t.uint32(8).int32(e.type),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(18).bytes(e.id),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.Sender;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.type=e.int32();break;case 2:s.id=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),F.SenderType=function(){var r={},e=Object.create(r);return e[r[0]="UNKNOWN"]=0,e[r[1]="CLIENT"]=1,e[r[2]="BACKEND"]=2,e}(),F.Receiver=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=me.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.signature=me.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ke.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.signature!=null&&e.hasOwnProperty("signature")&&t.uint32(26).bytes(e.signature),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.Receiver;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.signature=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),F.ResponseBatch=function(){function r(e){if(this.responses=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.responses=me.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ke.create()),e.responses!=null&&e.responses.length)for(var n=0;n<e.responses.length;++n)F.Response.encode(e.responses[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ResponseBatch;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.responses&&s.responses.length||(s.responses=[]),s.responses.push(F.Response.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.Response=function(){function r(t){if(t)for(var n=Object.keys(t),s=0;s<n.length;++s)t[n[s]]!=null&&(this[n[s]]=t[n[s]])}r.prototype.outgoingMessages=null,r.prototype.channelStats=null,r.prototype.serverStats=null;var e;return Object.defineProperty(r.prototype,"command",{get:me.oneOfGetter(e=["outgoingMessages","channelStats","serverStats"]),set:me.oneOfSetter(e)}),r.create=function(t){return new r(t)},r.encode=function(t,n){return n||(n=ke.create()),t.outgoingMessages!=null&&t.hasOwnProperty("outgoingMessages")&&F.OutgoingMessagesResponse.encode(t.outgoingMessages,n.uint32(10).fork()).ldelim(),t.channelStats!=null&&t.hasOwnProperty("channelStats")&&F.ChannelStatsResponse.encode(t.channelStats,n.uint32(18).fork()).ldelim(),t.serverStats!=null&&t.hasOwnProperty("serverStats")&&F.JsonResponse.encode(t.serverStats,n.uint32(26).fork()).ldelim(),n},r.decode=function(t,n){t instanceof G||(t=G.create(t));for(var s=n===void 0?t.len:t.pos+n,i=new F.Response;t.pos<s;){var o=t.uint32();switch(o>>>3){case 1:i.outgoingMessages=F.OutgoingMessagesResponse.decode(t,t.uint32());break;case 2:i.channelStats=F.ChannelStatsResponse.decode(t,t.uint32());break;case 3:i.serverStats=F.JsonResponse.decode(t,t.uint32());break;default:t.skipType(o&7);break}}return i},r}(),F.OutgoingMessagesResponse=function(){function r(e){if(this.messages=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.messages=me.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ke.create()),e.messages!=null&&e.messages.length)for(var n=0;n<e.messages.length;++n)F.OutgoingMessage.encode(e.messages[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.OutgoingMessagesResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.messages&&s.messages.length||(s.messages=[]),s.messages.push(F.OutgoingMessage.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.OutgoingMessage=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=me.newBuffer([]),r.prototype.body="",r.prototype.expiry=0,r.prototype.created=0,r.prototype.sender=null,r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ke.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.body!=null&&e.hasOwnProperty("body")&&t.uint32(18).string(e.body),e.expiry!=null&&e.hasOwnProperty("expiry")&&t.uint32(24).uint32(e.expiry),e.created!=null&&e.hasOwnProperty("created")&&t.uint32(37).fixed32(e.created),e.sender!=null&&e.hasOwnProperty("sender")&&F.Sender.encode(e.sender,t.uint32(42).fork()).ldelim(),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.OutgoingMessage;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.body=e.string();break;case 3:s.expiry=e.uint32();break;case 4:s.created=e.fixed32();break;case 5:s.sender=F.Sender.decode(e,e.uint32());break;default:e.skipType(i&7);break}}return s},r}(),F.ChannelStatsResponse=function(){function r(e){if(this.channels=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.channels=me.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ke.create()),e.channels!=null&&e.channels.length)for(var n=0;n<e.channels.length;++n)F.ChannelStats.encode(e.channels[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ChannelStatsResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.channels&&s.channels.length||(s.channels=[]),s.channels.push(F.ChannelStats.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.ChannelStats=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=me.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.isOnline=!1,r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ke.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.isOnline!=null&&e.hasOwnProperty("isOnline")&&t.uint32(24).bool(e.isOnline),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ChannelStats;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.isOnline=e.bool();break;default:e.skipType(i&7);break}}return s},r}(),F.JsonResponse=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.json="",r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ke.create()),e.json!=null&&e.hasOwnProperty("json")&&t.uint32(10).string(e.json),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.JsonResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.json=e.string();break;default:e.skipType(i&7);break}}return s},r}();const Th=F.ResponseBatch,Fo=F.RequestBatch,Oh=F.IncomingMessage,Po=F.Receiver;class Mo{_logger=null;_connected=!1;_connectionType;_disconnectCode=0;_disconnectReason="";_parent;_callbacks;constructor(e){this._parent=e.parent,this._connectionType=te.Undefined,this._callbacks={onOpen:R.isFunction(e.onOpen)?e.onOpen:()=>{},onDisconnect:R.isFunction(e.onDisconnect)?e.onDisconnect:()=>{},onError:R.isFunction(e.onError)?e.onError:()=>{},onMessage:R.isFunction(e.onMessage)?e.onMessage:()=>{}}}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){}get connected(){return this._connected}set connected(e){e!=this._connected&&(this._connected=e,this._connected?this._callbacks.onOpen():this._callbacks.onDisconnect({code:this.disconnectCode,reason:this.disconnectReason}))}get disconnectCode(){return this._disconnectCode}get disconnectReason(){return this._disconnectReason}get connectionPath(){return this._parent.getConnectionPath(this._connectionType)}}class Ah extends Mo{_socket;_onSocketOpenHandler;_onSocketCloseHandler;_onSocketErrorHandler;_onSocketMessageHandler;constructor(e){super(e),this._connectionType=te.WebSocket,this._socket=null,this._onSocketOpenHandler=this._onSocketOpen.bind(this),this._onSocketCloseHandler=this._onSocketClose.bind(this),this._onSocketErrorHandler=this._onSocketError.bind(this),this._onSocketMessageHandler=this._onSocketMessage.bind(this)}destroy(){super.destroy(),this._socket&&(this._socket.close(),this._socket=null)}connect(){if(this._socket){if(this._socket.readyState===1)return;this.clearEventListener(),this._socket.close(),this._socket=null}this._createSocket()}get socket(){return this._socket}disconnect(e,t){this._socket!==null&&(this.clearEventListener(),this._socket.close(e,t)),this._socket=null,this._disconnectCode=e,this._disconnectReason=t,this.connected=!1}send(e){return!this._socket||this._socket.readyState!==1?(this.getLogger().error(new Error(`${W.getDateForLog()}: Pull: WebSocket is not connected`)),!1):(this._socket.send(e),!0)}_onSocketOpen(){this.connected=!0}_onSocketClose(e){this._socket=null,this._disconnectCode=Number(e.code),this._disconnectReason=e.reason,this.connected=!1}_onSocketError(e){this._callbacks.onError(new Error(`Socket error: ${e}`))}_onSocketMessage(e){this._callbacks.onMessage(e.data)}clearEventListener(){this._socket&&(this._socket.removeEventListener("open",this._onSocketOpenHandler),this._socket.removeEventListener("close",this._onSocketCloseHandler),this._socket.removeEventListener("error",this._onSocketErrorHandler),this._socket.removeEventListener("message",this._onSocketMessageHandler))}_createSocket(){if(this._socket)throw new Error("Socket already exists");if(!this.connectionPath)throw new Error("Websocket connection path is not defined");this._socket=new WebSocket(this.connectionPath),this._socket.binaryType="arraybuffer",this._socket.addEventListener("open",this._onSocketOpenHandler),this._socket.addEventListener("close",this._onSocketCloseHandler),this._socket.addEventListener("error",this._onSocketErrorHandler),this._socket.addEventListener("message",this._onSocketMessageHandler)}}const Ih=60;class Ch extends Mo{_active;_requestTimeout;_failureTimeout;_xhr;_requestAborted;constructor(e){super(e),this._active=!1,this._connectionType=te.LongPolling,this._requestTimeout=null,this._failureTimeout=null,this._xhr=this.createXhr(),this._requestAborted=!1}connect(){this._active=!0,this.performRequest()}disconnect(e,t){this._active=!1,this.clearTimeOut(),this._xhr&&(this._requestAborted=!0,this._xhr.abort()),this._disconnectCode=e,this._disconnectReason=t,this.connected=!1}performRequest(){if(this._active){if(!this.connectionPath)throw new Error("Long polling connection path is not defined");this._xhr.readyState!==0&&this._xhr.readyState!==4||(this.clearTimeOut(),this._failureTimeout=setTimeout(()=>{this.connected=!0},5e3),this._requestTimeout=setTimeout(this.onRequestTimeout.bind(this),Ih*1e3),this._xhr.open("GET",this.connectionPath),this._xhr.send())}}onRequestTimeout(){this._requestAborted=!0,this._xhr.abort(),this.performRequest()}onXhrReadyStateChange(){this._xhr.readyState===4&&((!this._requestAborted||this._xhr.status==200)&&this.onResponse(this._xhr.response),this._requestAborted=!1)}send(e){const t=this._parent.getPublicationPath();if(!t)return this.getLogger().error(new Error(`${W.getDateForLog()}: Pull: publication path is empty`)),!1;const n=new XMLHttpRequest;return n.open("POST",t),n.send(e),!0}onResponse(e){if(this.clearTimeOut(),this._xhr.status===200)this.connected=!0,R.isStringFilled(e)||e instanceof ArrayBuffer?this._callbacks.onMessage(e):this._parent.session.mid=null,this.performRequest();else if(this._xhr.status===304){if(this.connected=!0,this._xhr.getResponseHeader("Expires")==="Thu, 01 Jan 1973 11:11:01 GMT"){const t=this._xhr.getResponseHeader("Last-Message-Id");R.isStringFilled(t)&&this._parent.setLastMessageId(t||"")}this.performRequest()}else this._callbacks.onError(new Error("Could not connect to the server")),this.connected=!1}clearTimeOut(){this._failureTimeout&&(clearTimeout(this._failureTimeout),this._failureTimeout=null),this._requestTimeout&&(clearTimeout(this._requestTimeout),this._requestTimeout=null)}createXhr(){const e=new XMLHttpRequest;return this._parent.isProtobufSupported()&&!this._parent.isJsonRpc()&&(e.responseType="arraybuffer"),e.addEventListener("readystatechange",this.onXhrReadyStateChange.bind(this)),e}}const ir=19,xo=30*60,Nh=5e3,Rh=60*1e3,Do=10,jo=10,Lh="ping",Fh="pong",Uo="bx-pull-session",Ph=20,Bo={api:{},channels:{},publicChannels:{},server:{timeShift:0},clientId:null,jwt:null,exp:0};class $o{_logger=null;_restClient;_status;_context;_guestMode;_guestUserId;_userId;_configGetMethod;_getPublicListMethod;_siteId;_enabled;_unloading=!1;_starting=!1;_debug=!1;_connectionAttempt=0;_connectionType=te.WebSocket;_reconnectTimeout=null;_restartTimeout=null;_restoreWebSocketTimeout=null;_skipStorageInit;_skipCheckRevision;_subscribers={};_watchTagsQueue=new Map;_watchUpdateInterval=174e4;_watchForceUpdateInterval=5e3;_configTimestamp=0;_session={mid:null,tag:null,time:null,history:{},lastMessageIds:[],messageCount:0};_connectors={[te.Undefined]:null,[te.WebSocket]:null,[te.LongPolling]:null};_isSecure;_config=null;_storage=null;_sharedConfig;_channelManager;_jsonRpcAdapter=null;_checkInterval=null;_offlineTimeout=null;_watchUpdateTimeout=null;_pingWaitTimeout=null;_isManualDisconnect=!1;_loggingEnabled=!1;_onPingTimeoutHandler;_userStatusCallbacks={};_connectPromise=null;_startingPromise=null;constructor(e){this._restClient=e.b24,this._status=Le.Offline,this._context="master",e.restApplication&&(typeof e.configGetMethod>"u"&&(e.configGetMethod="pull.application.config.get"),typeof e.skipCheckRevision>"u"&&(e.skipCheckRevision=!0),R.isStringFilled(e.restApplication)&&(e.siteId=e.restApplication),e.serverEnabled=!0),this._guestMode=e.guestMode?W.toBoolean(e.guestMode):!1,this._guestUserId=e.guestUserId?W.toInteger(e.guestUserId):0,this._guestMode&&this._guestUserId>0?this._userId=this._guestUserId:(this._guestMode=!1,this._userId=e.userId?W.toInteger(e.userId):0),this._siteId=e.siteId??"none",this._enabled=R.isUndefined(e.serverEnabled)?!0:e.serverEnabled===!0,this._configGetMethod=R.isStringFilled(e.configGetMethod)?e.configGetMethod||"":"pull.config.get",this._getPublicListMethod=R.isStringFilled(e.getPublicListMethod)?e.getPublicListMethod||"":"pull.channel.public.list",this._skipStorageInit=e.skipStorageInit===!0,this._skipCheckRevision=e.skipCheckRevision===!0,R.isUndefined(e.configTimestamp)||(this._configTimestamp=W.toInteger(e.configTimestamp)),this._isSecure=document?.location.href.indexOf("https")===0,this._userId&&!this._skipStorageInit&&(this._storage=new Ro({userId:this._userId,siteId:this._siteId})),this._sharedConfig=new Sh({onWebSocketBlockChanged:this.onWebSocketBlockChanged.bind(this),storage:this._storage}),this._channelManager=new _h({b24:this._restClient,getPublicListMethod:this._getPublicListMethod}),this._loggingEnabled=this._sharedConfig.isLoggingEnabled(),this._onPingTimeoutHandler=this.onPingTimeout.bind(this)}setLogger(e){this._logger=e,this._jsonRpcAdapter?.setLogger(this.getLogger()),this._storage?.setLogger(this.getLogger()),this._sharedConfig.setLogger(this.getLogger()),this._channelManager.setLogger(this.getLogger()),this._connectors.webSocket?.setLogger(this.getLogger()),this._connectors.longPolling?.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){this.stop(ve.NORMAL_CLOSURE,"manual stop"),this.onBeforeUnload()}init(){this._connectors.webSocket=new Ah({parent:this,onOpen:this.onWebSocketOpen.bind(this),onMessage:this.onIncomingMessage.bind(this),onDisconnect:this.onWebSocketDisconnect.bind(this),onError:this.onWebSocketError.bind(this)}),this._connectors.longPolling=new Ch({parent:this,onOpen:this.onLongPollingOpen.bind(this),onMessage:this.onIncomingMessage.bind(this),onDisconnect:this.onLongPollingDisconnect.bind(this),onError:this.onLongPollingError.bind(this)}),this._connectionType=this.isWebSocketAllowed()?te.WebSocket:te.LongPolling,window.addEventListener("beforeunload",this.onBeforeUnload.bind(this)),window.addEventListener("offline",this.onOffline.bind(this)),window.addEventListener("online",this.onOnline.bind(this)),this._jsonRpcAdapter=new bh({connector:this._connectors.webSocket,handlers:{"incoming.message":this.handleRpcIncomingMessage.bind(this)}})}get connector(){return this._connectors[this._connectionType]}get status(){return this._status}set status(e){this._status!==e&&(this._status=e,this._offlineTimeout&&(clearTimeout(this._offlineTimeout),this._offlineTimeout=null),e===Le.Offline?this.sendPullStatusDelayed(e,Nh):this.sendPullStatus(e))}get session(){return this._session}subscribe(e){if(!R.isPlainObject(e))return this.attachCommandHandler(e);if(e=e,e.type=e.type||Fe.Server,e.command=e.command||null,e.type==Fe.Server||e.type==Fe.Client){if(typeof e.moduleId>"u")throw new TypeError(`${W.getDateForLog()}: Pull.subscribe: parameter moduleId is not specified`);return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]={}),typeof this._subscribers[e.type][e.moduleId]>"u"&&(this._subscribers[e.type][e.moduleId]={callbacks:[],commands:{}}),e.command?(typeof this._subscribers[e.type][e.moduleId].commands[e.command]>"u"&&(this._subscribers[e.type][e.moduleId].commands[e.command]=[]),this._subscribers[e.type][e.moduleId].commands[e.command].push(e.callback),()=>{typeof e.type>"u"||typeof e.moduleId>"u"||typeof e.command>"u"||e.command===null||(this._subscribers[e.type][e.moduleId].commands[e.command]=this._subscribers[e.type][e.moduleId].commands[e.command].filter(t=>t!==e.callback))}):(this._subscribers[e.type][e.moduleId].callbacks.push(e.callback),()=>{typeof e.type>"u"||typeof e.moduleId>"u"||(this._subscribers[e.type][e.moduleId].callbacks=this._subscribers[e.type][e.moduleId].callbacks.filter(t=>t!==e.callback))})}else return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]=[]),this._subscribers[e.type].push(e.callback),()=>{typeof e.type>"u"||(this._subscribers[e.type]=this._subscribers[e.type].filter(t=>t!==e.callback))}}attachCommandHandler(e){if(typeof e.getModuleId!="function"||typeof e.getModuleId()!="string")return this.getLogger().error(`${W.getDateForLog()}: Pull.attachCommandHandler: result of handler.getModuleId() is not a string.`),()=>{};let t=Fe.Server;return typeof e.getSubscriptionType=="function"&&(t=e.getSubscriptionType()),this.subscribe({type:t,moduleId:e.getModuleId(),callback:n=>{let s=null;if(typeof e.getMap=="function"){const i=e.getMap();if(i&&typeof i=="object"){const o=i[n.command];typeof o=="function"?s=o.bind(e):typeof o=="string"&&typeof e[o]=="function"&&(s=e[o].bind(e))}}if(!s){const i=`handle${W.capitalize(n.command)}`;typeof e[i]=="function"&&(s=e[i].bind(e))}s&&(this._debug&&this._context!=="master"&&this.getLogger().warn(`${W.getDateForLog()}: Pull.attachCommandHandler: result of handler.getModuleId() is not a string`,n),s(n.params,n.extra,n.command))}})}async start(e=null){let t=!0;if(this.isConnected())return Promise.resolve(!0);if(this._starting&&this._startingPromise)return this._startingPromise;if(!this._userId)throw new Error("Not set userId");if(this._siteId==="none")throw new Error("Not set siteId");let n=!1;if(e&&R.isPlainObject(e)&&(typeof e?.skipReconnectToLastSession<"u"&&(n=e.skipReconnectToLastSession,delete e.skipReconnectToLastSession),this._config=e,t=!1),!this._enabled)return Promise.reject({ex:{error:"PULL_DISABLED",error_description:"Push & Pull server is disabled"}});const s=Date.now();let i;return!n&&this._storage&&(i=this._storage.get(Uo,null)),R.isPlainObject(i)&&i.hasOwnProperty("ttl")&&i.ttl>=s&&(this._session.mid=i.mid),this._starting=!0,this._startingPromise=new Promise((o,c)=>{this.loadConfig("client_start").then(a=>{this.setConfig(a,t),this.init(),this.updateWatch(!0),this.startCheckConfig(),this.connect().then(()=>o(!0),u=>c(u))}).catch(a=>{this._starting=!1,this.status=Le.Offline,this.stopCheckConfig(),this.getLogger().error(`${W.getDateForLog()}: Pull: could not read push-server config `,a),c(a)})})}restart(e=ve.NORMAL_CLOSURE,t="manual restart"){this._restartTimeout&&(clearTimeout(this._restartTimeout),this._restartTimeout=null),this.getLogger().log(`${W.getDateForLog()}: Pull: restarting with code ${e}`),this.disconnect(e,t),this._storage&&this._storage.remove(Re.PullConfig),this._config=null;const n=`${e}_${t.replaceAll(" ","_")}`;this.loadConfig(n).then(s=>{this.setConfig(s,!0),this.updateWatch(),this.startCheckConfig(),this.connect().catch(i=>{this.getLogger().error(i)})},s=>{this.getLogger().error(`${W.getDateForLog()}: Pull: could not read push-server config `,s),this.status=Le.Offline,this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),(s?.status==401||s?.status==403)&&(this.stopCheckConfig(),this.onCustomEvent("onPullError",["AUTHORIZE_ERROR"]))})}stop(e=ve.NORMAL_CLOSURE,t="manual stop"){this.disconnect(e,t),this.stopCheckConfig()}reconnect(e,t,n=1){this.disconnect(e,t),this.scheduleReconnect(n)}setLastMessageId(e){this._session.mid=e}async sendMessage(e,t,n,s,i){const o={userList:e,body:{module_id:t,command:n,params:s},expiry:i};return this.isJsonRpc()?this._jsonRpcAdapter?.executeOutgoingRpcCommand(He.Publish,o):this.sendMessageBatch([o])}async sendMessageToChannels(e,t,n,s,i){const o={channelList:e,body:{module_id:t,command:n,params:s},expiry:i};return this.isJsonRpc()?this._jsonRpcAdapter?.executeOutgoingRpcCommand(He.Publish,o):this.sendMessageBatch([o])}capturePullEvent(e=!0){this._debug=e}enableLogging(e=!0){this._sharedConfig.setLoggingEnabled(e),this._loggingEnabled=e}async listChannels(){return this._jsonRpcAdapter?.executeOutgoingRpcCommand(He.ListChannels,{})||Promise.reject(new Error("jsonRpcAdapter not init"))}async getUsersLastSeen(e){if(!R.isArray(e)||!e.every(n=>typeof n=="number"))throw new Error("userList must be an array of numbers");const t={};return new Promise((n,s)=>{this._jsonRpcAdapter?.executeOutgoingRpcCommand(He.GetUsersLastSeen,{userList:e}).then(i=>{const o=[];for(let a=0;a<e.length;a++)i.hasOwnProperty(e[a])||o.push(e[a]);if(o.length===0)return n(t);const c={userIds:o,sendToQueueSever:!0};this._restClient.callMethod("pull.api.user.getLastSeen",c).then(a=>{const u=a.getData().result;for(const l in u)t[Number(l)]=Number(u[l]);return n(t)}).catch(a=>{this.getLogger().error(a),s(a)})}).catch(i=>{this.getLogger().error(i),s(i)})})}async ping(e=5){return this._jsonRpcAdapter?.executeOutgoingRpcCommand(He.Ping,{},e)}async subscribeUserStatusChange(e,t){return new Promise((n,s)=>{this._jsonRpcAdapter?.executeOutgoingRpcCommand(He.SubscribeStatusChange,{userId:e}).then(()=>(this._userStatusCallbacks[e]||(this._userStatusCallbacks[e]=[]),R.isFunction(t)&&this._userStatusCallbacks[e].push(t),n())).catch(i=>s(i))})}async unsubscribeUserStatusChange(e,t){return this._userStatusCallbacks[e]&&(this._userStatusCallbacks[e]=this._userStatusCallbacks[e].filter(n=>n!==t),this._userStatusCallbacks[e].length===0)?this._jsonRpcAdapter?.executeOutgoingRpcCommand(He.UnsubscribeStatusChange,{userId:e}):Promise.resolve()}getRevision(){return this._config&&this._config.api?this._config.api.revision_web:null}getServerVersion(){return this._config&&this._config.server?this._config.server.version:0}getServerMode(){return this._config&&this._config.server?this._config.server.mode:null}getConfig(){return this._config}getDebugInfo(){if(!JSON||!JSON.stringify)return{};let e;this._config&&this._config.channels?e={ChannelID:this._config.channels.private?.id||"n/a",ChannelDie:this._config.channels.private?.end||"n/a",ChannelDieShared:this._config.channels.shared?.end||"n/a"}:e={ConfigError:"config is not loaded"};let t="-";return this._connectors.webSocket&&this._connectors.webSocket?.socket&&(this.isJsonRpc()?t="json-rpc":t=this._connectors.webSocket?.socket?.url.search("binaryMode=true")!=-1?"protobuf":"text"),{UserId:this._userId+(this._userId>0?"":"(guest)"),"Guest userId":this._guestMode&&this._guestUserId!==0?this._guestUserId:"-","Browser online":navigator.onLine?"Y":"N",Connect:this.isConnected()?"Y":"N","Server type":this.isSharedMode()?"cloud":"local","WebSocket supported":this.isWebSocketSupported()?"Y":"N","WebSocket connected":this._connectors.webSocket&&this._connectors.webSocket.connected?"Y":"N","WebSocket mode":t,"Try connect":this._reconnectTimeout?"Y":"N","Try number":this._connectionAttempt,Path:this.connector?.connectionPath||"-",...e,"Last message":this._session.mid||"-","Session history":this._session.history,"Watch tags":this._watchTagsQueue.entries()}}getConnectionPath(e){let t;const n={};switch(e){case te.WebSocket:t=this._isSecure?this._config?.server.websocket_secure:this._config?.server.websocket;break;case te.LongPolling:t=this._isSecure?this._config?.server.long_pooling_secure:this._config?.server.long_polling;break;default:throw new Error(`Unknown connection type ${e}`)}if(!R.isStringFilled(t))throw new Error("Empty path");if(typeof this._config?.jwt=="string"&&this._config?.jwt!=="")n.token=this._config?.jwt;else{const s=[];if(this._config?.channels?.private&&s.push(this._config.channels.private?.id||""),this._config?.channels.private?.id&&s.push(this._config.channels.private.id),this._config?.channels.shared?.id&&s.push(this._config.channels.shared.id),s.length===0)throw new Error("Empty channels");n.CHANNEL_ID=s.join("/")}if(this.isJsonRpc()?n.jsonRpc="true":this.isProtobufSupported()&&(n.binaryMode="true"),this.isSharedMode()){if(!this._config?.clientId)throw new Error("Push-server is in shared mode, but clientId is not set");n.clientId=this._config.clientId}return this._session.mid&&(n.mid=this._session.mid),this._session.tag&&(n.tag=this._session.tag),this._session.time&&(n.time=this._session.time),n.revision=ir,`${t}?${W.buildQueryString(n)}`}getPublicationPath(){const e=this._isSecure?this._config?.server.publish_secure:this._config?.server.publish;if(!e)return"";const t=[];this._config?.channels.private?.id&&t.push(this._config.channels.private.id),this._config?.channels.shared?.id&&t.push(this._config.channels.shared.id);const n={CHANNEL_ID:t.join("/")};return e+"?"+W.buildQueryString(n)}isConnected(){return this.connector?this.connector.connected:!1}isWebSocketSupported(){return typeof window.WebSocket<"u"}isWebSocketAllowed(){return this._sharedConfig.isWebSocketBlocked()?!1:this.isWebSocketEnabled()}isWebSocketEnabled(){return!this.isWebSocketSupported()||!this._config||!this._config.server?!1:this._config.server.websocket_enabled}isPublishingSupported(){return this.getServerVersion()>3}isPublishingEnabled(){return this.isPublishingSupported()?this._config?.server.publish_enabled===!0:!1}isProtobufSupported(){return this.getServerVersion()==4&&!_i.isIE()}isJsonRpc(){return this.getServerVersion()>=5}isSharedMode(){return this.getServerMode()===un.Shared}emit(e){if(e.type==Fe.Server||e.type==Fe.Client){if(typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]={}),typeof e.moduleId>"u")throw new TypeError(`${W.getDateForLog()}: Pull.emit: parameter moduleId is not specified`);return typeof this._subscribers[e.type][e.moduleId]>"u"&&(this._subscribers[e.type][e.moduleId]={callbacks:[],commands:{}}),this._subscribers[e.type][e.moduleId].callbacks.length>0&&this._subscribers[e.type][e.moduleId].callbacks.forEach(t=>{t(e.data,{type:e.type,moduleId:e.moduleId})}),!(typeof e.data>"u")&&!(typeof e.data.command>"u")&&this._subscribers[e.type][e.moduleId].commands[e.data.command]&&this._subscribers[e.type][e.moduleId].commands[e.data.command].length>0&&this._subscribers[e.type][e.moduleId].commands[e.data.command].forEach(t=>{typeof e.data>"u"||t(e.data.params,e.data.extra,e.data.command,{type:e.type,moduleId:e.moduleId})}),!0}else return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]=[]),this._subscribers[e.type].length<=0||this._subscribers[e.type].forEach(t=>{t(e.data,{type:e.type})}),!0}broadcastMessage(e){const t=e.module_id=e.module_id.toLowerCase(),n=e.command;e.extra||(e.extra={}),e.extra.server_time_unix&&(e.extra.server_time_ago=(Date.now()-e.extra.server_time_unix*1e3)/1e3-(this._config?.server.timeShift||0),e.extra.server_time_ago=e.extra.server_time_ago>0?e.extra.server_time_ago:0),this.logMessage(e);try{e.extra.sender&&e.extra.sender.type===Tr.Client?(this.onCustomEvent("onPullClientEvent-"+t,[n,e.params,e.extra],!0),this.onCustomEvent("onPullClientEvent",[t,n,e.params,e.extra],!0),this.emit({type:Fe.Client,moduleId:t,data:{command:n,params:R.clone(e.params),extra:R.clone(e.extra)}})):t==="pull"?this.handleInternalPullEvent(n,e):t=="online"?((e?.extra?.server_time_ago||0)<240&&(this.onCustomEvent("onPullOnlineEvent",[n,e.params,e.extra],!0),this.emit({type:Fe.Online,data:{command:n,params:R.clone(e.params),extra:R.clone(e.extra)}})),n==="userStatusChange"&&this.emitUserStatusChange(e.params.user_id,e.params.online)):(this.onCustomEvent("onPullEvent-"+t,[n,e.params,e.extra],!0),this.onCustomEvent("onPullEvent",[t,n,e.params,e.extra],!0),this.emit({type:Fe.Server,moduleId:t,data:{command:n,params:R.clone(e.params),extra:R.clone(e.extra)}}))}catch(s){this.getLogger().warn(`
23
+ }`}return u.toString=c,u}i.verbose=!1},{}],4:[function(t,n,s){n.exports=i;function i(){this._listeners={}}i.prototype.on=function(o,a,l){return(this._listeners[o]||(this._listeners[o]=[])).push({fn:a,ctx:l||this}),this},i.prototype.off=function(o,a){if(o===e)this._listeners={};else if(a===e)this._listeners[o]=[];else for(var l=this._listeners[o],u=0;u<l.length;)l[u].fn===a?l.splice(u,1):++u;return this},i.prototype.emit=function(o){var a=this._listeners[o];if(a){for(var l=[],u=1;u<arguments.length;)l.push(arguments[u++]);for(u=0;u<a.length;)a[u].fn.apply(a[u++].ctx,l)}return this}},{}],5:[function(t,n,s){n.exports=l;var i=t(1),o=t(7),a=o("fs");function l(u,c,f){return typeof c=="function"?(f=c,c={}):c||(c={}),f?!c.xhr&&a&&a.readFile?a.readFile(u,function(h,d){return h&&typeof XMLHttpRequest<"u"?l.xhr(u,c,f):h?f(h):f(null,c.binary?d:d.toString("utf8"))}):l.xhr(u,c,f):i(l,this,u,c)}l.xhr=function(u,c,f){var h=new XMLHttpRequest;h.onreadystatechange=function(){if(h.readyState!==4)return e;if(h.status!==0&&h.status!==200)return f(Error("status "+h.status));if(c.binary){var d=h.response;if(!d){d=[];for(var p=0;p<h.responseText.length;++p)d.push(h.responseText.charCodeAt(p)&255)}return f(null,typeof Uint8Array<"u"?new Uint8Array(d):d)}return f(null,h.responseText)},c.binary&&("overrideMimeType"in h&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.responseType="arraybuffer"),h.open("GET",u),h.send()}},{1:1,7:7}],6:[function(t,n,s){n.exports=i(i);function i(c){return typeof Float32Array<"u"?function(){var f=new Float32Array([-0]),h=new Uint8Array(f.buffer),d=h[3]===128;function p(w,_,b){f[0]=w,_[b]=h[0],_[b+1]=h[1],_[b+2]=h[2],_[b+3]=h[3]}function g(w,_,b){f[0]=w,_[b]=h[3],_[b+1]=h[2],_[b+2]=h[1],_[b+3]=h[0]}c.writeFloatLE=d?p:g,c.writeFloatBE=d?g:p;function m(w,_){return h[0]=w[_],h[1]=w[_+1],h[2]=w[_+2],h[3]=w[_+3],f[0]}function y(w,_){return h[3]=w[_],h[2]=w[_+1],h[1]=w[_+2],h[0]=w[_+3],f[0]}c.readFloatLE=d?m:y,c.readFloatBE=d?y:m}():function(){function f(d,p,g,m){var y=p<0?1:0;if(y&&(p=-p),p===0)d(1/p>0?0:2147483648,g,m);else if(isNaN(p))d(2143289344,g,m);else if(p>34028234663852886e22)d((y<<31|2139095040)>>>0,g,m);else if(p<11754943508222875e-54)d((y<<31|Math.round(p/1401298464324817e-60))>>>0,g,m);else{var w=Math.floor(Math.log(p)/Math.LN2),_=Math.round(p*Math.pow(2,-w)*8388608)&8388607;d((y<<31|w+127<<23|_)>>>0,g,m)}}c.writeFloatLE=f.bind(null,o),c.writeFloatBE=f.bind(null,a);function h(d,p,g){var m=d(p,g),y=(m>>31)*2+1,w=m>>>23&255,_=m&8388607;return w===255?_?NaN:y*(1/0):w===0?y*1401298464324817e-60*_:y*Math.pow(2,w-150)*(_+8388608)}c.readFloatLE=h.bind(null,l),c.readFloatBE=h.bind(null,u)}(),typeof Float64Array<"u"?function(){var f=new Float64Array([-0]),h=new Uint8Array(f.buffer),d=h[7]===128;function p(w,_,b){f[0]=w,_[b]=h[0],_[b+1]=h[1],_[b+2]=h[2],_[b+3]=h[3],_[b+4]=h[4],_[b+5]=h[5],_[b+6]=h[6],_[b+7]=h[7]}function g(w,_,b){f[0]=w,_[b]=h[7],_[b+1]=h[6],_[b+2]=h[5],_[b+3]=h[4],_[b+4]=h[3],_[b+5]=h[2],_[b+6]=h[1],_[b+7]=h[0]}c.writeDoubleLE=d?p:g,c.writeDoubleBE=d?g:p;function m(w,_){return h[0]=w[_],h[1]=w[_+1],h[2]=w[_+2],h[3]=w[_+3],h[4]=w[_+4],h[5]=w[_+5],h[6]=w[_+6],h[7]=w[_+7],f[0]}function y(w,_){return h[7]=w[_],h[6]=w[_+1],h[5]=w[_+2],h[4]=w[_+3],h[3]=w[_+4],h[2]=w[_+5],h[1]=w[_+6],h[0]=w[_+7],f[0]}c.readDoubleLE=d?m:y,c.readDoubleBE=d?y:m}():function(){function f(d,p,g,m,y,w){var _=m<0?1:0;if(_&&(m=-m),m===0)d(0,y,w+p),d(1/m>0?0:2147483648,y,w+g);else if(isNaN(m))d(0,y,w+p),d(2146959360,y,w+g);else if(m>17976931348623157e292)d(0,y,w+p),d((_<<31|2146435072)>>>0,y,w+g);else{var b;if(m<22250738585072014e-324)b=m/5e-324,d(b>>>0,y,w+p),d((_<<31|b/4294967296)>>>0,y,w+g);else{var k=Math.floor(Math.log(m)/Math.LN2);k===1024&&(k=1023),b=m*Math.pow(2,-k),d(b*4503599627370496>>>0,y,w+p),d((_<<31|k+1023<<20|b*1048576&1048575)>>>0,y,w+g)}}}c.writeDoubleLE=f.bind(null,o,0,4),c.writeDoubleBE=f.bind(null,a,4,0);function h(d,p,g,m,y){var w=d(m,y+p),_=d(m,y+g),b=(_>>31)*2+1,k=_>>>20&2047,S=4294967296*(_&1048575)+w;return k===2047?S?NaN:b*(1/0):k===0?b*5e-324*S:b*Math.pow(2,k-1075)*(S+4503599627370496)}c.readDoubleLE=h.bind(null,l,0,4),c.readDoubleBE=h.bind(null,u,4,0)}(),c}function o(c,f,h){f[h]=c&255,f[h+1]=c>>>8&255,f[h+2]=c>>>16&255,f[h+3]=c>>>24}function a(c,f,h){f[h]=c>>>24,f[h+1]=c>>>16&255,f[h+2]=c>>>8&255,f[h+3]=c&255}function l(c,f){return(c[f]|c[f+1]<<8|c[f+2]<<16|c[f+3]<<24)>>>0}function u(c,f){return(c[f]<<24|c[f+1]<<16|c[f+2]<<8|c[f+3])>>>0}},{}],7:[function(t,n,s){n.exports=i;function i(o){try{var a=t(o);if(a&&(a.length||Object.keys(a).length))return a}catch{}return null}},{}],8:[function(t,n,s){var i=s,o=i.isAbsolute=function(l){return/^(?:\/|\w+:)/.test(l)},a=i.normalize=function(l){l=l.replace(/\\/g,"/").replace(/\/{2,}/g,"/");var u=l.split("/"),c=o(l),f="";c&&(f=u.shift()+"/");for(var h=0;h<u.length;)u[h]===".."?h>0&&u[h-1]!==".."?u.splice(--h,2):c?u.splice(h,1):++h:u[h]==="."?u.splice(h,1):++h;return f+u.join("/")};i.resolve=function(l,u,c){return c||(u=a(u)),o(u)?u:(c||(l=a(l)),(l=l.replace(/(?:\/|^)[^/]+$/,"")).length?a(l+"/"+u):u)}},{}],9:[function(t,n,s){n.exports=i;function i(o,a,l){var u=l||8192,c=u>>>1,f=null,h=u;return function(d){if(d<1||d>c)return o(d);h+d>u&&(f=o(u),h=0);var p=a.call(f,h,h+=d);return h&7&&(h=(h|7)+1),p}}},{}],10:[function(t,n,s){var i=s;i.length=function(o){for(var a=0,l=0,u=0;u<o.length;++u)l=o.charCodeAt(u),l<128?a+=1:l<2048?a+=2:(l&64512)===55296&&(o.charCodeAt(u+1)&64512)===56320?(++u,a+=4):a+=3;return a},i.read=function(o,a,l){var u=l-a;if(u<1)return"";for(var c=null,f=[],h=0,d;a<l;)d=o[a++],d<128?f[h++]=d:d>191&&d<224?f[h++]=(d&31)<<6|o[a++]&63:d>239&&d<365?(d=((d&7)<<18|(o[a++]&63)<<12|(o[a++]&63)<<6|o[a++]&63)-65536,f[h++]=55296+(d>>10),f[h++]=56320+(d&1023)):f[h++]=(d&15)<<12|(o[a++]&63)<<6|o[a++]&63,h>8191&&((c||(c=[])).push(String.fromCharCode.apply(String,f)),h=0);return c?(h&&c.push(String.fromCharCode.apply(String,f.slice(0,h))),c.join("")):String.fromCharCode.apply(String,f.slice(0,h))},i.write=function(o,a,l){for(var u=l,c,f,h=0;h<o.length;++h)c=o.charCodeAt(h),c<128?a[l++]=c:c<2048?(a[l++]=c>>6|192,a[l++]=c&63|128):(c&64512)===55296&&((f=o.charCodeAt(h+1))&64512)===56320?(c=65536+((c&1023)<<10)+(f&1023),++h,a[l++]=c>>18|240,a[l++]=c>>12&63|128,a[l++]=c>>6&63|128,a[l++]=c&63|128):(a[l++]=c>>12|224,a[l++]=c>>6&63|128,a[l++]=c&63|128);return l-u}},{}],11:[function(t,n,s){n.exports=o;var i=/\/|\./;function o(l,u){i.test(l)||(l="google/protobuf/"+l+".proto",u={nested:{google:{nested:{protobuf:{nested:u}}}}}),o[l]=u}o("any",{Any:{fields:{type_url:{type:"string",id:1},value:{type:"bytes",id:2}}}});var a;o("duration",{Duration:a={fields:{seconds:{type:"int64",id:1},nanos:{type:"int32",id:2}}}}),o("timestamp",{Timestamp:a}),o("empty",{Empty:{fields:{}}}),o("struct",{Struct:{fields:{fields:{keyType:"string",type:"Value",id:1}}},Value:{oneofs:{kind:{oneof:["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},fields:{nullValue:{type:"NullValue",id:1},numberValue:{type:"double",id:2},stringValue:{type:"string",id:3},boolValue:{type:"bool",id:4},structValue:{type:"Struct",id:5},listValue:{type:"ListValue",id:6}}},NullValue:{values:{NULL_VALUE:0}},ListValue:{fields:{values:{rule:"repeated",type:"Value",id:1}}}}),o("wrappers",{DoubleValue:{fields:{value:{type:"double",id:1}}},FloatValue:{fields:{value:{type:"float",id:1}}},Int64Value:{fields:{value:{type:"int64",id:1}}},UInt64Value:{fields:{value:{type:"uint64",id:1}}},Int32Value:{fields:{value:{type:"int32",id:1}}},UInt32Value:{fields:{value:{type:"uint32",id:1}}},BoolValue:{fields:{value:{type:"bool",id:1}}},StringValue:{fields:{value:{type:"string",id:1}}},BytesValue:{fields:{value:{type:"bytes",id:1}}}}),o("field_mask",{FieldMask:{fields:{paths:{rule:"repeated",type:"string",id:1}}}}),o.get=function(l){return o[l]||null}},{}],12:[function(t,n,s){var i=s,o=t(15),a=t(37);function l(c,f,h,d){if(f.resolvedType)if(f.resolvedType instanceof o){c("switch(d%s){",d);for(var p=f.resolvedType.values,g=Object.keys(p),m=0;m<g.length;++m)f.repeated&&p[g[m]]===f.typeDefault&&c("default:"),c("case%j:",g[m])("case %i:",p[g[m]])("m%s=%j",d,p[g[m]])("break");c("}")}else c('if(typeof d%s!=="object")',d)("throw TypeError(%j)",f.fullName+": object expected")("m%s=types[%i].fromObject(d%s)",d,h,d);else{var y=!1;switch(f.type){case"double":case"float":c("m%s=Number(d%s)",d,d);break;case"uint32":case"fixed32":c("m%s=d%s>>>0",d,d);break;case"int32":case"sint32":case"sfixed32":c("m%s=d%s|0",d,d);break;case"uint64":y=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":c("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j",d,d,y)('else if(typeof d%s==="string")',d)("m%s=parseInt(d%s,10)",d,d)('else if(typeof d%s==="number")',d)("m%s=d%s",d,d)('else if(typeof d%s==="object")',d)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)",d,d,d,y?"true":"");break;case"bytes":c('if(typeof d%s==="string")',d)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)",d,d,d)("else if(d%s.length)",d)("m%s=d%s",d,d);break;case"string":c("m%s=String(d%s)",d,d);break;case"bool":c("m%s=Boolean(d%s)",d,d);break}}return c}i.fromObject=function(c){var f=c.fieldsArray,h=a.codegen(["d"],c.name+"$fromObject")("if(d instanceof this.ctor)")("return d");if(!f.length)return h("return new this.ctor");h("var m=new this.ctor");for(var d=0;d<f.length;++d){var p=f[d].resolve(),g=a.safeProp(p.name);p.map?(h("if(d%s){",g)('if(typeof d%s!=="object")',g)("throw TypeError(%j)",p.fullName+": object expected")("m%s={}",g)("for(var ks=Object.keys(d%s),i=0;i<ks.length;++i){",g),l(h,p,d,g+"[ks[i]]")("}")("}")):p.repeated?(h("if(d%s){",g)("if(!Array.isArray(d%s))",g)("throw TypeError(%j)",p.fullName+": array expected")("m%s=[]",g)("for(var i=0;i<d%s.length;++i){",g),l(h,p,d,g+"[i]")("}")("}")):(p.resolvedType instanceof o||h("if(d%s!=null){",g),l(h,p,d,g),p.resolvedType instanceof o||h("}"))}return h("return m")};function u(c,f,h,d){if(f.resolvedType)f.resolvedType instanceof o?c("d%s=o.enums===String?types[%i].values[m%s]:m%s",d,h,d,d):c("d%s=types[%i].toObject(m%s,o)",d,h,d);else{var p=!1;switch(f.type){case"double":case"float":c("d%s=o.json&&!isFinite(m%s)?String(m%s):m%s",d,d,d,d);break;case"uint64":p=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":c('if(typeof m%s==="number")',d)("d%s=o.longs===String?String(m%s):m%s",d,d,d)("else")("d%s=o.longs===String?util.Long.prototype.toString.call(m%s):o.longs===Number?new util.LongBits(m%s.low>>>0,m%s.high>>>0).toNumber(%s):m%s",d,d,d,d,p?"true":"",d);break;case"bytes":c("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s",d,d,d,d,d);break;default:c("d%s=m%s",d,d);break}}return c}i.toObject=function(c){var f=c.fieldsArray.slice().sort(a.compareFieldsById);if(!f.length)return a.codegen()("return {}");for(var h=a.codegen(["m","o"],c.name+"$toObject")("if(!o)")("o={}")("var d={}"),d=[],p=[],g=[],m=0;m<f.length;++m)f[m].partOf||(f[m].resolve().repeated?d:f[m].map?p:g).push(f[m]);if(d.length){for(h("if(o.arrays||o.defaults){"),m=0;m<d.length;++m)h("d%s=[]",a.safeProp(d[m].name));h("}")}if(p.length){for(h("if(o.objects||o.defaults){"),m=0;m<p.length;++m)h("d%s={}",a.safeProp(p[m].name));h("}")}if(g.length){for(h("if(o.defaults){"),m=0;m<g.length;++m){var y=g[m],w=a.safeProp(y.name);y.resolvedType instanceof o?h("d%s=o.enums===String?%j:%j",w,y.resolvedType.valuesById[y.typeDefault],y.typeDefault):y.long?h("if(util.Long){")("var n=new util.Long(%i,%i,%j)",y.typeDefault.low,y.typeDefault.high,y.typeDefault.unsigned)("d%s=o.longs===String?n.toString():o.longs===Number?n.toNumber():n",w)("}else")("d%s=o.longs===String?%j:%i",w,y.typeDefault.toString(),y.typeDefault.toNumber()):y.bytes?h("d%s=o.bytes===String?%j:%s",w,String.fromCharCode.apply(String,y.typeDefault),"["+Array.prototype.slice.call(y.typeDefault).join(",")+"]"):h("d%s=%j",w,y.typeDefault)}h("}")}var _=!1;for(m=0;m<f.length;++m){var y=f[m],b=c._fieldsArray.indexOf(y),w=a.safeProp(y.name);y.map?(_||(_=!0,h("var ks2")),h("if(m%s&&(ks2=Object.keys(m%s)).length){",w,w)("d%s={}",w)("for(var j=0;j<ks2.length;++j){"),u(h,y,b,w+"[ks2[j]]")("}")):y.repeated?(h("if(m%s&&m%s.length){",w,w)("d%s=[]",w)("for(var j=0;j<m%s.length;++j){",w),u(h,y,b,w+"[j]")("}")):(h("if(m%s!=null&&m.hasOwnProperty(%j)){",w,y.name),u(h,y,b,w),y.partOf&&h("if(o.oneofs)")("d%s=%j",a.safeProp(y.partOf.name),y.name)),h("}")}return h("return d")}},{15:15,37:37}],13:[function(t,n,s){n.exports=u;var i=t(15),o=t(36),a=t(37);function l(c){return"missing required '"+c.name+"'"}function u(c){var f=a.codegen(["r","l"],c.name+"$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor"+(c.fieldsArray.filter(function(y){return y.map}).length?",k":""))("while(r.pos<c){")("var t=r.uint32()");c.group&&f("if((t&7)===4)")("break"),f("switch(t>>>3){");for(var h=0;h<c.fieldsArray.length;++h){var d=c._fieldsArray[h].resolve(),p=d.resolvedType instanceof i?"int32":d.type,g="m"+a.safeProp(d.name);f("case %i:",d.id),d.map?(f("r.skip().pos++")("if(%s===util.emptyObject)",g)("%s={}",g)("k=r.%s()",d.keyType)("r.pos++"),o.long[d.keyType]!==e?o.basic[p]===e?f('%s[typeof k==="object"?util.longToHash(k):k]=types[%i].decode(r,r.uint32())',g,h):f('%s[typeof k==="object"?util.longToHash(k):k]=r.%s()',g,p):o.basic[p]===e?f("%s[k]=types[%i].decode(r,r.uint32())",g,h):f("%s[k]=r.%s()",g,p)):d.repeated?(f("if(!(%s&&%s.length))",g,g)("%s=[]",g),o.packed[p]!==e&&f("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos<c2)")("%s.push(r.%s())",g,p)("}else"),o.basic[p]===e?f(d.resolvedType.group?"%s.push(types[%i].decode(r))":"%s.push(types[%i].decode(r,r.uint32()))",g,h):f("%s.push(r.%s())",g,p)):o.basic[p]===e?f(d.resolvedType.group?"%s=types[%i].decode(r)":"%s=types[%i].decode(r,r.uint32())",g,h):f("%s=r.%s()",g,p),f("break")}for(f("default:")("r.skipType(t&7)")("break")("}")("}"),h=0;h<c._fieldsArray.length;++h){var m=c._fieldsArray[h];m.required&&f("if(!m.hasOwnProperty(%j))",m.name)("throw util.ProtocolError(%j,{instance:m})",l(m))}return f("return m")}},{15:15,36:36,37:37}],14:[function(t,n,s){n.exports=u;var i=t(15),o=t(36),a=t(37);function l(c,f,h,d){return f.resolvedType.group?c("types[%i].encode(%s,w.uint32(%i)).uint32(%i)",h,d,(f.id<<3|3)>>>0,(f.id<<3|4)>>>0):c("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()",h,d,(f.id<<3|2)>>>0)}function u(c){for(var f=a.codegen(["m","w"],c.name+"$encode")("if(!w)")("w=Writer.create()"),p,h,d=c.fieldsArray.slice().sort(a.compareFieldsById),p=0;p<d.length;++p){var g=d[p].resolve(),m=c._fieldsArray.indexOf(g),y=g.resolvedType instanceof i?"int32":g.type,w=o.basic[y];h="m"+a.safeProp(g.name),g.map?(f("if(%s!=null&&m.hasOwnProperty(%j)){",h,g.name)("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){",h)("w.uint32(%i).fork().uint32(%i).%s(ks[i])",(g.id<<3|2)>>>0,8|o.mapKey[g.keyType],g.keyType),w===e?f("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()",m,h):f(".uint32(%i).%s(%s[ks[i]]).ldelim()",16|w,y,h),f("}")("}")):g.repeated?(f("if(%s!=null&&%s.length){",h,h),g.packed&&o.packed[y]!==e?f("w.uint32(%i).fork()",(g.id<<3|2)>>>0)("for(var i=0;i<%s.length;++i)",h)("w.%s(%s[i])",y,h)("w.ldelim()"):(f("for(var i=0;i<%s.length;++i)",h),w===e?l(f,g,m,h+"[i]"):f("w.uint32(%i).%s(%s[i])",(g.id<<3|w)>>>0,y,h)),f("}")):(g.optional&&f("if(%s!=null&&m.hasOwnProperty(%j))",h,g.name),w===e?l(f,g,m,h):f("w.uint32(%i).%s(%s)",(g.id<<3|w)>>>0,y,h))}return f("return w")}},{15:15,36:36,37:37}],15:[function(t,n,s){n.exports=l;var i=t(24);((l.prototype=Object.create(i.prototype)).constructor=l).className="Enum";var o=t(23),a=t(37);function l(u,c,f,h,d){if(i.call(this,u,f),c&&typeof c!="object")throw TypeError("values must be an object");if(this.valuesById={},this.values=Object.create(this.valuesById),this.comment=h,this.comments=d||{},this.reserved=e,c)for(var p=Object.keys(c),g=0;g<p.length;++g)typeof c[p[g]]=="number"&&(this.valuesById[this.values[p[g]]=c[p[g]]]=p[g])}l.fromJSON=function(u,c){var f=new l(u,c.values,c.options,c.comment,c.comments);return f.reserved=c.reserved,f},l.prototype.toJSON=function(u){var c=u?!!u.keepComments:!1;return a.toObject(["options",this.options,"values",this.values,"reserved",this.reserved&&this.reserved.length?this.reserved:e,"comment",c?this.comment:e,"comments",c?this.comments:e])},l.prototype.add=function(u,c,f){if(!a.isString(u))throw TypeError("name must be a string");if(!a.isInteger(c))throw TypeError("id must be an integer");if(this.values[u]!==e)throw Error("duplicate name '"+u+"' in "+this);if(this.isReservedId(c))throw Error("id "+c+" is reserved in "+this);if(this.isReservedName(u))throw Error("name '"+u+"' is reserved in "+this);if(this.valuesById[c]!==e){if(!(this.options&&this.options.allow_alias))throw Error("duplicate id "+c+" in "+this);this.values[u]=c}else this.valuesById[this.values[u]=c]=u;return this.comments[u]=f||null,this},l.prototype.remove=function(u){if(!a.isString(u))throw TypeError("name must be a string");var c=this.values[u];if(c==null)throw Error("name '"+u+"' does not exist in "+this);return delete this.valuesById[c],delete this.values[u],delete this.comments[u],this},l.prototype.isReservedId=function(u){return o.isReservedId(this.reserved,u)},l.prototype.isReservedName=function(u){return o.isReservedName(this.reserved,u)}},{23:23,24:24,37:37}],16:[function(t,n,s){n.exports=f;var i=t(24);((f.prototype=Object.create(i.prototype)).constructor=f).className="Field";var o=t(15),a=t(36),l=t(37),u,c=/^required|optional|repeated$/;f.fromJSON=function(h,d){return new f(h,d.id,d.type,d.rule,d.extend,d.options,d.comment)};function f(h,d,p,g,m,y,w){if(l.isObject(g)?(w=m,y=g,g=m=e):l.isObject(m)&&(w=y,y=m,m=e),i.call(this,h,y),!l.isInteger(d)||d<0)throw TypeError("id must be a non-negative integer");if(!l.isString(p))throw TypeError("type must be a string");if(g!==e&&!c.test(g=g.toString().toLowerCase()))throw TypeError("rule must be a string rule");if(m!==e&&!l.isString(m))throw TypeError("extend must be a string");this.rule=g&&g!=="optional"?g:e,this.type=p,this.id=d,this.extend=m||e,this.required=g==="required",this.optional=!this.required,this.repeated=g==="repeated",this.map=!1,this.message=null,this.partOf=null,this.typeDefault=null,this.defaultValue=null,this.long=l.Long?a.long[p]!==e:!1,this.bytes=p==="bytes",this.resolvedType=null,this.extensionField=null,this.declaringField=null,this._packed=null,this.comment=w}Object.defineProperty(f.prototype,"packed",{get:function(){return this._packed===null&&(this._packed=this.getOption("packed")!==!1),this._packed}}),f.prototype.setOption=function(h,d,p){return h==="packed"&&(this._packed=null),i.prototype.setOption.call(this,h,d,p)},f.prototype.toJSON=function(h){var d=h?!!h.keepComments:!1;return l.toObject(["rule",this.rule!=="optional"&&this.rule||e,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",d?this.comment:e])},f.prototype.resolve=function(){if(this.resolved)return this;if((this.typeDefault=a.defaults[this.type])===e&&(this.resolvedType=(this.declaringField?this.declaringField.parent:this.parent).lookupTypeOrEnum(this.type),this.resolvedType instanceof u?this.typeDefault=null:this.typeDefault=this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]),this.options&&this.options.default!=null&&(this.typeDefault=this.options.default,this.resolvedType instanceof o&&typeof this.typeDefault=="string"&&(this.typeDefault=this.resolvedType.values[this.typeDefault])),this.options&&((this.options.packed===!0||this.options.packed!==e&&this.resolvedType&&!(this.resolvedType instanceof o))&&delete this.options.packed,Object.keys(this.options).length||(this.options=e)),this.long)this.typeDefault=l.Long.fromNumber(this.typeDefault,this.type.charAt(0)==="u"),Object.freeze&&Object.freeze(this.typeDefault);else if(this.bytes&&typeof this.typeDefault=="string"){var h;l.base64.test(this.typeDefault)?l.base64.decode(this.typeDefault,h=l.newBuffer(l.base64.length(this.typeDefault)),0):l.utf8.write(this.typeDefault,h=l.newBuffer(l.utf8.length(this.typeDefault)),0),this.typeDefault=h}return this.map?this.defaultValue=l.emptyObject:this.repeated?this.defaultValue=l.emptyArray:this.defaultValue=this.typeDefault,this.parent instanceof u&&(this.parent.ctor.prototype[this.name]=this.defaultValue),i.prototype.resolve.call(this)},f.d=function(h,d,p,g){return typeof d=="function"?d=l.decorateType(d).name:d&&typeof d=="object"&&(d=l.decorateEnum(d).name),function(m,y){l.decorateType(m.constructor).add(new f(y,h,d,p,{default:g}))}},f._configure=function(h){u=h}},{15:15,24:24,36:36,37:37}],17:[function(t,n,s){var i=n.exports=t(18);i.build="light";function o(l,u,c){return typeof u=="function"?(c=u,u=new i.Root):u||(u=new i.Root),u.load(l,c)}i.load=o;function a(l,u){return u||(u=new i.Root),u.loadSync(l)}i.loadSync=a,i.encoder=t(14),i.decoder=t(13),i.verifier=t(40),i.converter=t(12),i.ReflectionObject=t(24),i.Namespace=t(23),i.Root=t(29),i.Enum=t(15),i.Type=t(35),i.Field=t(16),i.OneOf=t(25),i.MapField=t(20),i.Service=t(33),i.Method=t(22),i.Message=t(21),i.wrappers=t(41),i.types=t(36),i.util=t(37),i.ReflectionObject._configure(i.Root),i.Namespace._configure(i.Type,i.Service),i.Root._configure(i.Type),i.Field._configure(i.Type)},{12:12,13:13,14:14,15:15,16:16,18:18,20:20,21:21,22:22,23:23,24:24,25:25,29:29,33:33,35:35,36:36,37:37,40:40,41:41}],18:[function(t,n,s){var i=s;i.build="minimal",i.Writer=t(42),i.BufferWriter=t(43),i.Reader=t(27),i.BufferReader=t(28),i.util=t(39),i.rpc=t(31),i.roots=t(30),i.configure=o;function o(){i.Reader._configure(i.BufferReader),i.util._configure()}i.Writer._configure(i.BufferWriter),o()},{27:27,28:28,30:30,31:31,39:39,42:42,43:43}],19:[function(t,n,s){var i=n.exports=t(17);i.build="full",i.tokenize=t(34),i.parse=t(26),i.common=t(11),i.Root._configure(i.Type,i.parse,i.common)},{11:11,17:17,26:26,34:34}],20:[function(t,n,s){n.exports=l;var i=t(16);((l.prototype=Object.create(i.prototype)).constructor=l).className="MapField";var o=t(36),a=t(37);function l(u,c,f,h,d,p){if(i.call(this,u,c,h,e,e,d,p),!a.isString(f))throw TypeError("keyType must be a string");this.keyType=f,this.resolvedKeyType=null,this.map=!0}l.fromJSON=function(u,c){return new l(u,c.id,c.keyType,c.type,c.options,c.comment)},l.prototype.toJSON=function(u){var c=u?!!u.keepComments:!1;return a.toObject(["keyType",this.keyType,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",c?this.comment:e])},l.prototype.resolve=function(){if(this.resolved)return this;if(o.mapKey[this.keyType]===e)throw Error("invalid key type: "+this.keyType);return i.prototype.resolve.call(this)},l.d=function(u,c,f){return typeof f=="function"?f=a.decorateType(f).name:f&&typeof f=="object"&&(f=a.decorateEnum(f).name),function(h,d){a.decorateType(h.constructor).add(new l(d,u,c,f))}}},{16:16,36:36,37:37}],21:[function(t,n,s){n.exports=o;var i=t(39);function o(a){if(a)for(var l=Object.keys(a),u=0;u<l.length;++u)this[l[u]]=a[l[u]]}o.create=function(a){return this.$type.create(a)},o.encode=function(a,l){return this.$type.encode(a,l)},o.encodeDelimited=function(a,l){return this.$type.encodeDelimited(a,l)},o.decode=function(a){return this.$type.decode(a)},o.decodeDelimited=function(a){return this.$type.decodeDelimited(a)},o.verify=function(a){return this.$type.verify(a)},o.fromObject=function(a){return this.$type.fromObject(a)},o.toObject=function(a,l){return this.$type.toObject(a,l)},o.prototype.toJSON=function(){return this.$type.toObject(this,i.toJSONOptions)}},{39:39}],22:[function(t,n,s){n.exports=a;var i=t(24);((a.prototype=Object.create(i.prototype)).constructor=a).className="Method";var o=t(37);function a(l,u,c,f,h,d,p,g){if(o.isObject(h)?(p=h,h=d=e):o.isObject(d)&&(p=d,d=e),!(u===e||o.isString(u)))throw TypeError("type must be a string");if(!o.isString(c))throw TypeError("requestType must be a string");if(!o.isString(f))throw TypeError("responseType must be a string");i.call(this,l,p),this.type=u||"rpc",this.requestType=c,this.requestStream=h?!0:e,this.responseType=f,this.responseStream=d?!0:e,this.resolvedRequestType=null,this.resolvedResponseType=null,this.comment=g}a.fromJSON=function(l,u){return new a(l,u.type,u.requestType,u.responseType,u.requestStream,u.responseStream,u.options,u.comment)},a.prototype.toJSON=function(l){var u=l?!!l.keepComments:!1;return o.toObject(["type",this.type!=="rpc"&&this.type||e,"requestType",this.requestType,"requestStream",this.requestStream,"responseType",this.responseType,"responseStream",this.responseStream,"options",this.options,"comment",u?this.comment:e])},a.prototype.resolve=function(){return this.resolved?this:(this.resolvedRequestType=this.parent.lookupType(this.requestType),this.resolvedResponseType=this.parent.lookupType(this.responseType),i.prototype.resolve.call(this))}},{24:24,37:37}],23:[function(t,n,s){n.exports=h;var i=t(24);((h.prototype=Object.create(i.prototype)).constructor=h).className="Namespace";var o=t(15),a=t(16),l=t(37),u,c;h.fromJSON=function(p,g){return new h(p,g.options).addJSON(g.nested)};function f(p,g){if(!(p&&p.length))return e;for(var m={},y=0;y<p.length;++y)m[p[y].name]=p[y].toJSON(g);return m}h.arrayToJSON=f,h.isReservedId=function(p,g){if(p){for(var m=0;m<p.length;++m)if(typeof p[m]!="string"&&p[m][0]<=g&&p[m][1]>=g)return!0}return!1},h.isReservedName=function(p,g){if(p){for(var m=0;m<p.length;++m)if(p[m]===g)return!0}return!1};function h(p,g){i.call(this,p,g),this.nested=e,this._nestedArray=null}function d(p){return p._nestedArray=null,p}Object.defineProperty(h.prototype,"nestedArray",{get:function(){return this._nestedArray||(this._nestedArray=l.toArray(this.nested))}}),h.prototype.toJSON=function(p){return l.toObject(["options",this.options,"nested",f(this.nestedArray,p)])},h.prototype.addJSON=function(p){var g=this;if(p)for(var m=Object.keys(p),y=0,w;y<m.length;++y)w=p[m[y]],g.add((w.fields!==e?u.fromJSON:w.values!==e?o.fromJSON:w.methods!==e?c.fromJSON:w.id!==e?a.fromJSON:h.fromJSON)(m[y],w));return this},h.prototype.get=function(p){return this.nested&&this.nested[p]||null},h.prototype.getEnum=function(p){if(this.nested&&this.nested[p]instanceof o)return this.nested[p].values;throw Error("no such enum: "+p)},h.prototype.add=function(p){if(!(p instanceof a&&p.extend!==e||p instanceof u||p instanceof o||p instanceof c||p instanceof h))throw TypeError("object must be a valid nested object");if(!this.nested)this.nested={};else{var g=this.get(p.name);if(g)if(g instanceof h&&p instanceof h&&!(g instanceof u||g instanceof c)){for(var m=g.nestedArray,y=0;y<m.length;++y)p.add(m[y]);this.remove(g),this.nested||(this.nested={}),p.setOptions(g.options,!0)}else throw Error("duplicate name '"+p.name+"' in "+this)}return this.nested[p.name]=p,p.onAdd(this),d(this)},h.prototype.remove=function(p){if(!(p instanceof i))throw TypeError("object must be a ReflectionObject");if(p.parent!==this)throw Error(p+" is not a member of "+this);return delete this.nested[p.name],Object.keys(this.nested).length||(this.nested=e),p.onRemove(this),d(this)},h.prototype.define=function(p,g){if(l.isString(p))p=p.split(".");else if(!Array.isArray(p))throw TypeError("illegal path");if(p&&p.length&&p[0]==="")throw Error("path must be relative");for(var m=this;p.length>0;){var y=p.shift();if(m.nested&&m.nested[y]){if(m=m.nested[y],!(m instanceof h))throw Error("path conflicts with non-namespace objects")}else m.add(m=new h(y))}return g&&m.addJSON(g),m},h.prototype.resolveAll=function(){for(var p=this.nestedArray,g=0;g<p.length;)p[g]instanceof h?p[g++].resolveAll():p[g++].resolve();return this.resolve()},h.prototype.lookup=function(p,g,m){if(typeof g=="boolean"?(m=g,g=e):g&&!Array.isArray(g)&&(g=[g]),l.isString(p)&&p.length){if(p===".")return this.root;p=p.split(".")}else if(!p.length)return this;if(p[0]==="")return this.root.lookup(p.slice(1),g);var y=this.get(p[0]);if(y){if(p.length===1){if(!g||g.indexOf(y.constructor)>-1)return y}else if(y instanceof h&&(y=y.lookup(p.slice(1),g,!0)))return y}else for(var w=0;w<this.nestedArray.length;++w)if(this._nestedArray[w]instanceof h&&(y=this._nestedArray[w].lookup(p,g,!0)))return y;return this.parent===null||m?null:this.parent.lookup(p,g)},h.prototype.lookupType=function(p){var g=this.lookup(p,[u]);if(!g)throw Error("no such type: "+p);return g},h.prototype.lookupEnum=function(p){var g=this.lookup(p,[o]);if(!g)throw Error("no such Enum '"+p+"' in "+this);return g},h.prototype.lookupTypeOrEnum=function(p){var g=this.lookup(p,[u,o]);if(!g)throw Error("no such Type or Enum '"+p+"' in "+this);return g},h.prototype.lookupService=function(p){var g=this.lookup(p,[c]);if(!g)throw Error("no such Service '"+p+"' in "+this);return g},h._configure=function(p,g){u=p,c=g}},{15:15,16:16,24:24,37:37}],24:[function(t,n,s){n.exports=a,a.className="ReflectionObject";var i=t(37),o;function a(l,u){if(!i.isString(l))throw TypeError("name must be a string");if(u&&!i.isObject(u))throw TypeError("options must be an object");this.options=u,this.name=l,this.parent=null,this.resolved=!1,this.comment=null,this.filename=null}Object.defineProperties(a.prototype,{root:{get:function(){for(var l=this;l.parent!==null;)l=l.parent;return l}},fullName:{get:function(){for(var l=[this.name],u=this.parent;u;)l.unshift(u.name),u=u.parent;return l.join(".")}}}),a.prototype.toJSON=function(){throw Error()},a.prototype.onAdd=function(l){this.parent&&this.parent!==l&&this.parent.remove(this),this.parent=l,this.resolved=!1;var u=l.root;u instanceof o&&u._handleAdd(this)},a.prototype.onRemove=function(l){var u=l.root;u instanceof o&&u._handleRemove(this),this.parent=null,this.resolved=!1},a.prototype.resolve=function(){return this.resolved?this:(this.root instanceof o&&(this.resolved=!0),this)},a.prototype.getOption=function(l){return this.options?this.options[l]:e},a.prototype.setOption=function(l,u,c){return(!c||!this.options||this.options[l]===e)&&((this.options||(this.options={}))[l]=u),this},a.prototype.setOptions=function(l,u){if(l)for(var c=Object.keys(l),f=0;f<c.length;++f)this.setOption(c[f],l[c[f]],u);return this},a.prototype.toString=function(){var l=this.constructor.className,u=this.fullName;return u.length?l+" "+u:l},a._configure=function(l){o=l}},{37:37}],25:[function(t,n,s){n.exports=l;var i=t(24);((l.prototype=Object.create(i.prototype)).constructor=l).className="OneOf";var o=t(16),a=t(37);function l(c,f,h,d){if(Array.isArray(f)||(h=f,f=e),i.call(this,c,h),!(f===e||Array.isArray(f)))throw TypeError("fieldNames must be an Array");this.oneof=f||[],this.fieldsArray=[],this.comment=d}l.fromJSON=function(c,f){return new l(c,f.oneof,f.options,f.comment)},l.prototype.toJSON=function(c){var f=c?!!c.keepComments:!1;return a.toObject(["options",this.options,"oneof",this.oneof,"comment",f?this.comment:e])};function u(c){if(c.parent)for(var f=0;f<c.fieldsArray.length;++f)c.fieldsArray[f].parent||c.parent.add(c.fieldsArray[f])}l.prototype.add=function(c){if(!(c instanceof o))throw TypeError("field must be a Field");return c.parent&&c.parent!==this.parent&&c.parent.remove(c),this.oneof.push(c.name),this.fieldsArray.push(c),c.partOf=this,u(this),this},l.prototype.remove=function(c){if(!(c instanceof o))throw TypeError("field must be a Field");var f=this.fieldsArray.indexOf(c);if(f<0)throw Error(c+" is not a member of "+this);return this.fieldsArray.splice(f,1),f=this.oneof.indexOf(c.name),f>-1&&this.oneof.splice(f,1),c.partOf=null,this},l.prototype.onAdd=function(c){i.prototype.onAdd.call(this,c);for(var f=this,h=0;h<this.oneof.length;++h){var d=c.get(this.oneof[h]);d&&!d.partOf&&(d.partOf=f,f.fieldsArray.push(d))}u(this)},l.prototype.onRemove=function(c){for(var f=0,h;f<this.fieldsArray.length;++f)(h=this.fieldsArray[f]).parent&&h.parent.remove(h);i.prototype.onRemove.call(this,c)},l.d=function(){for(var c=new Array(arguments.length),f=0;f<arguments.length;)c[f]=arguments[f++];return function(h,d){a.decorateType(h.constructor).add(new l(d,c)),Object.defineProperty(h,d,{get:a.oneOfGetter(c),set:a.oneOfSetter(c)})}}},{16:16,24:24,37:37}],26:[function(t,n,s){n.exports=P,P.filename=null,P.defaults={keepCase:!1};var i=t(34),o=t(29),a=t(35),l=t(16),u=t(20),c=t(25),f=t(15),h=t(33),d=t(22),p=t(36),g=t(37),m=/^[1-9][0-9]*$/,y=/^-?[1-9][0-9]*$/,w=/^0[x][0-9a-fA-F]+$/,_=/^-?0[x][0-9a-fA-F]+$/,b=/^0[0-7]+$/,k=/^-?0[0-7]+$/,S=/^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/,E=/^[a-zA-Z_][a-zA-Z_0-9]*$/,N=/^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/,D=/^(?:\.[a-zA-Z_][a-zA-Z_0-9]*)+$/;function P(J,me,H){me instanceof o||(H=me,me=new o),H||(H=P.defaults);var X=i(J,H.alternateCommentMode||!1),B=X.next,he=X.push,le=X.peek,j=X.skip,at=X.cmnt,St=!0,lt,z,re,ie,ue=!1,ke=me,Oe=H.keepCase?function(A){return A}:g.camelCase;function q(A,O,F){var M=P.filename;return F||(P.filename=null),Error("illegal "+(O||"token")+" '"+A+"' ("+(M?M+", ":"")+"line "+X.line+")")}function Qe(){var A=[],O;do{if((O=B())!=='"'&&O!=="'")throw q(O);A.push(B()),j(O),O=le()}while(O==='"'||O==="'");return A.join("")}function Wo(A){var O=B();switch(O){case"'":case'"':return he(O),Qe();case"true":case"TRUE":return!0;case"false":case"FALSE":return!1}try{return Uh(O,!0)}catch{if(N.test(O))return O;throw q(O,"value")}}function jn(A,O){var F,M;do O&&((F=le())==='"'||F==="'")?A.push(Qe()):A.push([M=jt(B()),j("to",!0)?jt(B()):M]);while(j(",",!0));j(";")}function Uh(A,O){var F=1;switch(A.charAt(0)==="-"&&(F=-1,A=A.substring(1)),A){case"inf":case"INF":case"Inf":return F*(1/0);case"nan":case"NAN":case"Nan":case"NaN":return NaN;case"0":return 0}if(m.test(A))return F*parseInt(A,10);if(w.test(A))return F*parseInt(A,16);if(b.test(A))return F*parseInt(A,8);if(S.test(A))return F*parseFloat(A);throw q(A,"number",O)}function jt(A,O){switch(A){case"max":case"MAX":case"Max":return 536870911;case"0":return 0}if(!O&&A.charAt(0)==="-")throw q(A,"id");if(y.test(A))return parseInt(A,10);if(_.test(A))return parseInt(A,16);if(k.test(A))return parseInt(A,8);throw q(A,"id")}function Bh(){if(lt!==e)throw q("package");if(lt=B(),!N.test(lt))throw q(lt,"name");ke=ke.define(lt),j(";")}function $h(){var A=le(),O;switch(A){case"weak":O=re||(re=[]),B();break;case"public":B();default:O=z||(z=[]);break}A=Qe(),j(";"),O.push(A)}function Wh(){if(j("="),ie=Qe(),ue=ie==="proto3",!ue&&ie!=="proto2")throw q(ie,"syntax");j(";")}function Un(A,O){switch(O){case"option":return Ze(A,O),j(";"),!0;case"message":return qh(A,O),!0;case"enum":return Jh(A,O),!0;case"service":return Gh(A,O),!0;case"extend":return Kh(A,O),!0}return!1}function Je(A,O,F){var M=X.line;if(A&&(A.comment=at(),A.filename=P.filename),j("{",!0)){for(var oe;(oe=B())!=="}";)O(oe);j(";",!0)}else F&&F(),j(";"),A&&typeof A.comment!="string"&&(A.comment=at(M))}function qh(A,O){if(!E.test(O=B()))throw q(O,"type name");var F=new a(O);Je(F,function(M){if(!Un(F,M))switch(M){case"map":Hh(F);break;case"required":case"optional":case"repeated":Ut(F,M);break;case"oneof":zh(F,M);break;case"extensions":jn(F.extensions||(F.extensions=[]));break;case"reserved":jn(F.reserved||(F.reserved=[]),!0);break;default:if(!ue||!N.test(M))throw q(M);he(M),Ut(F,"optional");break}}),A.add(F)}function Ut(A,O,F){var M=B();if(M==="group"){Vh(A,O);return}if(!N.test(M))throw q(M,"type");var oe=B();if(!E.test(oe))throw q(oe,"name");oe=Oe(oe),j("=");var fe=new l(oe,jt(B()),M,O,F);Je(fe,function(et){if(et==="option")Ze(fe,et),j(";");else throw q(et)},function(){$n(fe)}),A.add(fe),!ue&&fe.repeated&&(p.packed[M]!==e||p.basic[M]===e)&&fe.setOption("packed",!1,!0)}function Vh(A,O){var F=B();if(!E.test(F))throw q(F,"name");var M=g.lcFirst(F);F===M&&(F=g.ucFirst(F)),j("=");var oe=jt(B()),fe=new a(F);fe.group=!0;var et=new l(M,oe,F,O);et.filename=P.filename,Je(fe,function(_t){switch(_t){case"option":Ze(fe,_t),j(";");break;case"required":case"optional":case"repeated":Ut(fe,_t);break;default:throw q(_t)}}),A.add(fe).add(et)}function Hh(A){j("<");var O=B();if(p.mapKey[O]===e)throw q(O,"type");j(",");var F=B();if(!N.test(F))throw q(F,"type");j(">");var M=B();if(!E.test(M))throw q(M,"name");j("=");var oe=new u(Oe(M),jt(B()),O,F);Je(oe,function(fe){if(fe==="option")Ze(oe,fe),j(";");else throw q(fe)},function(){$n(oe)}),A.add(oe)}function zh(A,O){if(!E.test(O=B()))throw q(O,"name");var F=new c(Oe(O));Je(F,function(M){M==="option"?(Ze(F,M),j(";")):(he(M),Ut(F,"optional"))}),A.add(F)}function Jh(A,O){if(!E.test(O=B()))throw q(O,"name");var F=new f(O);Je(F,function(M){switch(M){case"option":Ze(F,M),j(";");break;case"reserved":jn(F.reserved||(F.reserved=[]),!0);break;default:Zh(F,M)}}),A.add(F)}function Zh(A,O){if(!E.test(O))throw q(O,"name");j("=");var F=jt(B(),!0),M={};Je(M,function(oe){if(oe==="option")Ze(M,oe),j(";");else throw q(oe)},function(){$n(M)}),A.add(O,F,M.comment)}function Ze(A,O){var F=j("(",!0);if(!N.test(O=B()))throw q(O,"name");var M=O;F&&(j(")"),M="("+M+")",O=le(),D.test(O)&&(M+=O,B())),j("="),Bn(A,M)}function Bn(A,O){if(j("{",!0))do{if(!E.test(Ae=B()))throw q(Ae,"name");le()==="{"?Bn(A,O+"."+Ae):(j(":"),le()==="{"?Bn(A,O+"."+Ae):qo(A,O+"."+Ae,Wo()))}while(!j("}",!0));else qo(A,O,Wo())}function qo(A,O,F){A.setOption&&A.setOption(O,F)}function $n(A){if(j("[",!0)){do Ze(A,"option");while(j(",",!0));j("]")}return A}function Gh(A,O){if(!E.test(O=B()))throw q(O,"service name");var F=new h(O);Je(F,function(M){if(!Un(F,M))if(M==="rpc")Yh(F,M);else throw q(M)}),A.add(F)}function Yh(A,O){var F=O;if(!E.test(O=B()))throw q(O,"name");var M=O,oe,fe,et,_t;if(j("("),j("stream",!0)&&(fe=!0),!N.test(O=B())||(oe=O,j(")"),j("returns"),j("("),j("stream",!0)&&(_t=!0),!N.test(O=B())))throw q(O);et=O,j(")");var Wn=new d(M,F,oe,et,fe,_t);Je(Wn,function(qn){if(qn==="option")Ze(Wn,qn),j(";");else throw q(qn)}),A.add(Wn)}function Kh(A,O){if(!N.test(O=B()))throw q(O,"reference");var F=O;Je(null,function(M){switch(M){case"required":case"repeated":case"optional":Ut(A,M,F);break;default:if(!ue||!N.test(M))throw q(M);he(M),Ut(A,"optional",F);break}})}for(var Ae;(Ae=B())!==null;)switch(Ae){case"package":if(!St)throw q(Ae);Bh();break;case"import":if(!St)throw q(Ae);$h();break;case"syntax":if(!St)throw q(Ae);Wh();break;case"option":if(!St)throw q(Ae);Ze(ke,Ae),j(";");break;default:if(Un(ke,Ae)){St=!1;continue}throw q(Ae)}return P.filename=null,{package:lt,imports:z,weakImports:re,syntax:ie,root:me}}},{15:15,16:16,20:20,22:22,25:25,29:29,33:33,34:34,35:35,36:36,37:37}],27:[function(t,n,s){n.exports=c;var i=t(39),o,a=i.LongBits,l=i.utf8;function u(g,m){return RangeError("index out of range: "+g.pos+" + "+(m||1)+" > "+g.len)}function c(g){this.buf=g,this.pos=0,this.len=g.length}var f=typeof Uint8Array<"u"?function(g){if(g instanceof Uint8Array||Array.isArray(g))return new c(g);throw Error("illegal buffer")}:function(g){if(Array.isArray(g))return new c(g);throw Error("illegal buffer")};c.create=i.Buffer?function(g){return(c.create=function(m){return i.Buffer.isBuffer(m)?new o(m):f(m)})(g)}:f,c.prototype._slice=i.Array.prototype.subarray||i.Array.prototype.slice,c.prototype.uint32=function(){var g=4294967295;return function(){if(g=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(g=(g|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return g;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return g}}(),c.prototype.int32=function(){return this.uint32()|0},c.prototype.sint32=function(){var g=this.uint32();return g>>>1^-(g&1)|0};function h(){var g=new a(0,0),m=0;if(this.len-this.pos>4){for(;m<4;++m)if(g.lo=(g.lo|(this.buf[this.pos]&127)<<m*7)>>>0,this.buf[this.pos++]<128)return g;if(g.lo=(g.lo|(this.buf[this.pos]&127)<<28)>>>0,g.hi=(g.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return g;m=0}else{for(;m<3;++m){if(this.pos>=this.len)throw u(this);if(g.lo=(g.lo|(this.buf[this.pos]&127)<<m*7)>>>0,this.buf[this.pos++]<128)return g}return g.lo=(g.lo|(this.buf[this.pos++]&127)<<m*7)>>>0,g}if(this.len-this.pos>4){for(;m<5;++m)if(g.hi=(g.hi|(this.buf[this.pos]&127)<<m*7+3)>>>0,this.buf[this.pos++]<128)return g}else for(;m<5;++m){if(this.pos>=this.len)throw u(this);if(g.hi=(g.hi|(this.buf[this.pos]&127)<<m*7+3)>>>0,this.buf[this.pos++]<128)return g}throw Error("invalid varint encoding")}c.prototype.bool=function(){return this.uint32()!==0};function d(g,m){return(g[m-4]|g[m-3]<<8|g[m-2]<<16|g[m-1]<<24)>>>0}c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return d(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return d(this.buf,this.pos+=4)|0};function p(){if(this.pos+8>this.len)throw u(this,8);return new a(d(this.buf,this.pos+=4),d(this.buf,this.pos+=4))}c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var g=i.float.readFloatLE(this.buf,this.pos);return this.pos+=4,g},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var g=i.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,g},c.prototype.bytes=function(){var g=this.uint32(),m=this.pos,y=this.pos+g;if(y>this.len)throw u(this,g);return this.pos+=g,Array.isArray(this.buf)?this.buf.slice(m,y):m===y?new this.buf.constructor(0):this._slice.call(this.buf,m,y)},c.prototype.string=function(){var g=this.bytes();return l.read(g,0,g.length)},c.prototype.skip=function(g){if(typeof g=="number"){if(this.pos+g>this.len)throw u(this,g);this.pos+=g}else do if(this.pos>=this.len)throw u(this);while(this.buf[this.pos++]&128);return this},c.prototype.skipType=function(g){switch(g){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:do{if((g=this.uint32()&7)===4)break;this.skipType(g)}while(!0);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+g+" at offset "+this.pos)}return this},c._configure=function(g){o=g;var m=i.Long?"toLong":"toNumber";i.merge(c.prototype,{int64:function(){return h.call(this)[m](!1)},uint64:function(){return h.call(this)[m](!0)},sint64:function(){return h.call(this).zzDecode()[m](!1)},fixed64:function(){return p.call(this)[m](!0)},sfixed64:function(){return p.call(this)[m](!1)}})}},{39:39}],28:[function(t,n,s){n.exports=a;var i=t(27);(a.prototype=Object.create(i.prototype)).constructor=a;var o=t(39);function a(l){i.call(this,l)}o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice),a.prototype.string=function(){var l=this.uint32();return this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+l,this.len))}},{27:27,39:39}],29:[function(t,n,s){n.exports=d;var i=t(23);((d.prototype=Object.create(i.prototype)).constructor=d).className="Root";var o=t(16),a=t(15),l=t(25),u=t(37),c,f,h;function d(y){i.call(this,"",y),this.deferred=[],this.files=[]}d.fromJSON=function(y,w){return w||(w=new d),y.options&&w.setOptions(y.options),w.addJSON(y.nested)},d.prototype.resolvePath=u.path.resolve;function p(){}d.prototype.load=function y(w,_,b){typeof _=="function"&&(b=_,_=e);var k=this;if(!b)return u.asPromise(y,k,w,_);var S=b===p;function E(H,X){if(b){var B=b;if(b=null,S)throw H;B(H,X)}}function N(H,X){try{if(u.isString(X)&&X.charAt(0)==="{"&&(X=JSON.parse(X)),!u.isString(X))k.setOptions(X.options).addJSON(X.nested);else{f.filename=H;var B=f(X,k,_),he,le=0;if(B.imports)for(;le<B.imports.length;++le)(he=k.resolvePath(H,B.imports[le]))&&D(he);if(B.weakImports)for(le=0;le<B.weakImports.length;++le)(he=k.resolvePath(H,B.weakImports[le]))&&D(he,!0)}}catch(j){E(j)}!S&&!P&&E(null,k)}function D(H,X){var B=H.lastIndexOf("google/protobuf/");if(B>-1){var he=H.substring(B);he in h&&(H=he)}if(!(k.files.indexOf(H)>-1)){if(k.files.push(H),H in h){S?N(H,h[H]):(++P,setTimeout(function(){--P,N(H,h[H])}));return}if(S){var le;try{le=u.fs.readFileSync(H).toString("utf8")}catch(j){X||E(j);return}N(H,le)}else++P,u.fetch(H,function(j,at){if(--P,!!b){if(j){X?P||E(null,k):E(j);return}N(H,at)}})}}var P=0;u.isString(w)&&(w=[w]);for(var J=0,me;J<w.length;++J)(me=k.resolvePath("",w[J]))&&D(me);return S?k:(P||E(null,k),e)},d.prototype.loadSync=function(y,w){if(!u.isNode)throw Error("not supported");return this.load(y,w,p)},d.prototype.resolveAll=function(){if(this.deferred.length)throw Error("unresolvable extensions: "+this.deferred.map(function(y){return"'extend "+y.extend+"' in "+y.parent.fullName}).join(", "));return i.prototype.resolveAll.call(this)};var g=/^[A-Z]/;function m(y,w){var _=w.parent.lookup(w.extend);if(_){var b=new o(w.fullName,w.id,w.type,w.rule,e,w.options);return b.declaringField=w,w.extensionField=b,_.add(b),!0}return!1}d.prototype._handleAdd=function(y){if(y instanceof o)y.extend!==e&&!y.extensionField&&(m(this,y)||this.deferred.push(y));else if(y instanceof a)g.test(y.name)&&(y.parent[y.name]=y.values);else if(!(y instanceof l)){if(y instanceof c)for(var w=0;w<this.deferred.length;)m(this,this.deferred[w])?this.deferred.splice(w,1):++w;for(var _=0;_<y.nestedArray.length;++_)this._handleAdd(y._nestedArray[_]);g.test(y.name)&&(y.parent[y.name]=y)}},d.prototype._handleRemove=function(y){if(y instanceof o){if(y.extend!==e)if(y.extensionField)y.extensionField.parent.remove(y.extensionField),y.extensionField=null;else{var w=this.deferred.indexOf(y);w>-1&&this.deferred.splice(w,1)}}else if(y instanceof a)g.test(y.name)&&delete y.parent[y.name];else if(y instanceof i){for(var _=0;_<y.nestedArray.length;++_)this._handleRemove(y._nestedArray[_]);g.test(y.name)&&delete y.parent[y.name]}},d._configure=function(y,w,_){c=y,f=w,h=_}},{15:15,16:16,23:23,25:25,37:37}],30:[function(t,n,s){n.exports={}},{}],31:[function(t,n,s){var i=s;i.Service=t(32)},{32:32}],32:[function(t,n,s){n.exports=o;var i=t(39);(o.prototype=Object.create(i.EventEmitter.prototype)).constructor=o;function o(a,l,u){if(typeof a!="function")throw TypeError("rpcImpl must be a function");i.EventEmitter.call(this),this.rpcImpl=a,this.requestDelimited=!!l,this.responseDelimited=!!u}o.prototype.rpcCall=function a(l,u,c,f,h){if(!f)throw TypeError("request must be specified");var d=this;if(!h)return i.asPromise(a,d,l,u,c,f);if(!d.rpcImpl)return setTimeout(function(){h(Error("already ended"))},0),e;try{return d.rpcImpl(l,u[d.requestDelimited?"encodeDelimited":"encode"](f).finish(),function(p,g){if(p)return d.emit("error",p,l),h(p);if(g===null)return d.end(!0),e;if(!(g instanceof c))try{g=c[d.responseDelimited?"decodeDelimited":"decode"](g)}catch(m){return d.emit("error",m,l),h(m)}return d.emit("data",g,l),h(null,g)})}catch(p){return d.emit("error",p,l),setTimeout(function(){h(p)},0),e}},o.prototype.end=function(a){return this.rpcImpl&&(a||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},{39:39}],33:[function(t,n,s){n.exports=u;var i=t(23);((u.prototype=Object.create(i.prototype)).constructor=u).className="Service";var o=t(22),a=t(37),l=t(31);function u(f,h){i.call(this,f,h),this.methods={},this._methodsArray=null}u.fromJSON=function(f,h){var d=new u(f,h.options);if(h.methods)for(var p=Object.keys(h.methods),g=0;g<p.length;++g)d.add(o.fromJSON(p[g],h.methods[p[g]]));return h.nested&&d.addJSON(h.nested),d.comment=h.comment,d},u.prototype.toJSON=function(f){var h=i.prototype.toJSON.call(this,f),d=f?!!f.keepComments:!1;return a.toObject(["options",h&&h.options||e,"methods",i.arrayToJSON(this.methodsArray,f)||{},"nested",h&&h.nested||e,"comment",d?this.comment:e])},Object.defineProperty(u.prototype,"methodsArray",{get:function(){return this._methodsArray||(this._methodsArray=a.toArray(this.methods))}});function c(f){return f._methodsArray=null,f}u.prototype.get=function(f){return this.methods[f]||i.prototype.get.call(this,f)},u.prototype.resolveAll=function(){for(var f=this.methodsArray,h=0;h<f.length;++h)f[h].resolve();return i.prototype.resolve.call(this)},u.prototype.add=function(f){if(this.get(f.name))throw Error("duplicate name '"+f.name+"' in "+this);return f instanceof o?(this.methods[f.name]=f,f.parent=this,c(this)):i.prototype.add.call(this,f)},u.prototype.remove=function(f){if(f instanceof o){if(this.methods[f.name]!==f)throw Error(f+" is not a member of "+this);return delete this.methods[f.name],f.parent=null,c(this)}return i.prototype.remove.call(this,f)},u.prototype.create=function(f,h,d){for(var p=new l.Service(f,h,d),g=0,m;g<this.methodsArray.length;++g){var y=a.lcFirst((m=this._methodsArray[g]).resolve().name).replace(/[^$\w_]/g,"");p[y]=a.codegen(["r","c"],a.isReserved(y)?y+"_":y)("return this.rpcCall(m,q,s,r,c)")({m,q:m.resolvedRequestType.ctor,s:m.resolvedResponseType.ctor})}return p}},{22:22,23:23,31:31,37:37}],34:[function(t,n,s){n.exports=g;var i=/[\s{}=;:[\],'"()<>]/g,o=/(?:"([^"\\]*(?:\\.[^"\\]*)*)")/g,a=/(?:'([^'\\]*(?:\\.[^'\\]*)*)')/g,l=/^ *[*/]+ */,u=/^\s*\*?\/*/,c=/\n/g,f=/\s/,h=/\\(.?)/g,d={0:"\0",r:"\r",n:`
24
+ `,t:" "};function p(m){return m.replace(h,function(y,w){switch(w){case"\\":case"":return w;default:return d[w]||""}})}g.unescape=p;function g(m,y){m=m.toString();var w=0,_=m.length,b=1,k=null,S=null,E=0,N=!1,D=[],P=null;function J(z){return Error("illegal "+z+" (line "+b+")")}function me(){var z=P==="'"?a:o;z.lastIndex=w-1;var re=z.exec(m);if(!re)throw J("string");return w=z.lastIndex,j(P),P=null,p(re[1])}function H(z){return m.charAt(z)}function X(z,re){k=m.charAt(z++),E=b,N=!1;var ie;y?ie=2:ie=3;var ue=z-ie,ke;do if(--ue<0||(ke=m.charAt(ue))===`
25
+ `){N=!0;break}while(ke===" "||ke===" ");for(var Oe=m.substring(z,re).split(c),q=0;q<Oe.length;++q)Oe[q]=Oe[q].replace(y?u:l,"").trim();S=Oe.join(`
26
+ `).trim()}function B(z){var re=he(z),ie=m.substring(z,re),ue=/^\s*\/{1,2}/.test(ie);return ue}function he(z){for(var re=z;re<_&&H(re)!==`
27
+ `;)re++;return re}function le(){if(D.length>0)return D.shift();if(P)return me();var z,re,ie,ue,ke;do{if(w===_)return null;for(z=!1;f.test(ie=H(w));)if(ie===`
28
+ `&&++b,++w===_)return null;if(H(w)==="/"){if(++w===_)throw J("comment");if(H(w)==="/")if(y){if(ue=w,ke=!1,B(w)){ke=!0;do{if(w=he(w),w===_)break;w++}while(B(w))}else w=Math.min(_,he(w)+1);ke&&X(ue,w),b++,z=!0}else{for(ke=H(ue=w+1)==="/";H(++w)!==`
29
+ `;)if(w===_)return null;++w,ke&&X(ue,w-1),++b,z=!0}else if((ie=H(w))==="*"){ue=w+1,ke=y||H(ue)==="*";do{if(ie===`
30
+ `&&++b,++w===_)throw J("comment");re=ie,ie=H(w)}while(re!=="*"||ie!=="/");++w,ke&&X(ue,w-2),z=!0}else return"/"}}while(z);var Oe=w;i.lastIndex=0;var q=i.test(H(Oe++));if(!q)for(;Oe<_&&!i.test(H(Oe));)++Oe;var Qe=m.substring(w,w=Oe);return(Qe==='"'||Qe==="'")&&(P=Qe),Qe}function j(z){D.push(z)}function at(){if(!D.length){var z=le();if(z===null)return null;j(z)}return D[0]}function St(z,re){var ie=at(),ue=ie===z;if(ue)return le(),!0;if(!re)throw J("token '"+ie+"', '"+z+"' expected");return!1}function lt(z){var re=null;return z===e?E===b-1&&(y||k==="*"||N)&&(re=S):(E<z&&at(),E===z&&!N&&(y||k==="/")&&(re=S)),re}return Object.defineProperty({next:le,peek:at,push:j,skip:St,cmnt:lt},"line",{get:function(){return b}})}},{}],35:[function(t,n,s){n.exports=b;var i=t(23);((b.prototype=Object.create(i.prototype)).constructor=b).className="Type";var o=t(15),a=t(25),l=t(16),u=t(20),c=t(33),f=t(21),h=t(27),d=t(42),p=t(37),g=t(14),m=t(13),y=t(40),w=t(12),_=t(41);function b(S,E){i.call(this,S,E),this.fields={},this.oneofs=e,this.extensions=e,this.reserved=e,this.group=e,this._fieldsById=null,this._fieldsArray=null,this._oneofsArray=null,this._ctor=null}Object.defineProperties(b.prototype,{fieldsById:{get:function(){if(this._fieldsById)return this._fieldsById;this._fieldsById={};for(var S=Object.keys(this.fields),E=0;E<S.length;++E){var N=this.fields[S[E]],D=N.id;if(this._fieldsById[D])throw Error("duplicate id "+D+" in "+this);this._fieldsById[D]=N}return this._fieldsById}},fieldsArray:{get:function(){return this._fieldsArray||(this._fieldsArray=p.toArray(this.fields))}},oneofsArray:{get:function(){return this._oneofsArray||(this._oneofsArray=p.toArray(this.oneofs))}},ctor:{get:function(){return this._ctor||(this.ctor=b.generateConstructor(this)())},set:function(S){var E=S.prototype;E instanceof f||((S.prototype=new f).constructor=S,p.merge(S.prototype,E)),S.$type=S.prototype.$type=this,p.merge(S,f,!0),this._ctor=S;for(var N=0;N<this.fieldsArray.length;++N)this._fieldsArray[N].resolve();var D={};for(N=0;N<this.oneofsArray.length;++N)D[this._oneofsArray[N].resolve().name]={get:p.oneOfGetter(this._oneofsArray[N].oneof),set:p.oneOfSetter(this._oneofsArray[N].oneof)};N&&Object.defineProperties(S.prototype,D)}}}),b.generateConstructor=function(S){for(var E=p.codegen(["p"],S.name),N=0,D;N<S.fieldsArray.length;++N)(D=S._fieldsArray[N]).map?E("this%s={}",p.safeProp(D.name)):D.repeated&&E("this%s=[]",p.safeProp(D.name));return E("if(p)for(var ks=Object.keys(p),i=0;i<ks.length;++i)if(p[ks[i]]!=null)")("this[ks[i]]=p[ks[i]]")};function k(S){return S._fieldsById=S._fieldsArray=S._oneofsArray=null,delete S.encode,delete S.decode,delete S.verify,S}b.fromJSON=function(S,E){var N=new b(S,E.options);N.extensions=E.extensions,N.reserved=E.reserved;for(var D=Object.keys(E.fields),P=0;P<D.length;++P)N.add((typeof E.fields[D[P]].keyType<"u"?u.fromJSON:l.fromJSON)(D[P],E.fields[D[P]]));if(E.oneofs)for(D=Object.keys(E.oneofs),P=0;P<D.length;++P)N.add(a.fromJSON(D[P],E.oneofs[D[P]]));if(E.nested)for(D=Object.keys(E.nested),P=0;P<D.length;++P){var J=E.nested[D[P]];N.add((J.id!==e?l.fromJSON:J.fields!==e?b.fromJSON:J.values!==e?o.fromJSON:J.methods!==e?c.fromJSON:i.fromJSON)(D[P],J))}return E.extensions&&E.extensions.length&&(N.extensions=E.extensions),E.reserved&&E.reserved.length&&(N.reserved=E.reserved),E.group&&(N.group=!0),E.comment&&(N.comment=E.comment),N},b.prototype.toJSON=function(S){var E=i.prototype.toJSON.call(this,S),N=S?!!S.keepComments:!1;return p.toObject(["options",E&&E.options||e,"oneofs",i.arrayToJSON(this.oneofsArray,S),"fields",i.arrayToJSON(this.fieldsArray.filter(function(D){return!D.declaringField}),S)||{},"extensions",this.extensions&&this.extensions.length?this.extensions:e,"reserved",this.reserved&&this.reserved.length?this.reserved:e,"group",this.group||e,"nested",E&&E.nested||e,"comment",N?this.comment:e])},b.prototype.resolveAll=function(){for(var S=this.fieldsArray,E=0;E<S.length;)S[E++].resolve();var N=this.oneofsArray;for(E=0;E<N.length;)N[E++].resolve();return i.prototype.resolveAll.call(this)},b.prototype.get=function(S){return this.fields[S]||this.oneofs&&this.oneofs[S]||this.nested&&this.nested[S]||null},b.prototype.add=function(S){if(this.get(S.name))throw Error("duplicate name '"+S.name+"' in "+this);if(S instanceof l&&S.extend===e){if(this._fieldsById?this._fieldsById[S.id]:this.fieldsById[S.id])throw Error("duplicate id "+S.id+" in "+this);if(this.isReservedId(S.id))throw Error("id "+S.id+" is reserved in "+this);if(this.isReservedName(S.name))throw Error("name '"+S.name+"' is reserved in "+this);return S.parent&&S.parent.remove(S),this.fields[S.name]=S,S.message=this,S.onAdd(this),k(this)}return S instanceof a?(this.oneofs||(this.oneofs={}),this.oneofs[S.name]=S,S.onAdd(this),k(this)):i.prototype.add.call(this,S)},b.prototype.remove=function(S){if(S instanceof l&&S.extend===e){if(!this.fields||this.fields[S.name]!==S)throw Error(S+" is not a member of "+this);return delete this.fields[S.name],S.parent=null,S.onRemove(this),k(this)}if(S instanceof a){if(!this.oneofs||this.oneofs[S.name]!==S)throw Error(S+" is not a member of "+this);return delete this.oneofs[S.name],S.parent=null,S.onRemove(this),k(this)}return i.prototype.remove.call(this,S)},b.prototype.isReservedId=function(S){return i.isReservedId(this.reserved,S)},b.prototype.isReservedName=function(S){return i.isReservedName(this.reserved,S)},b.prototype.create=function(S){return new this.ctor(S)},b.prototype.setup=function(){for(var S=this.fullName,E=[],N=0;N<this.fieldsArray.length;++N)E.push(this._fieldsArray[N].resolve().resolvedType);this.encode=g(this)({Writer:d,types:E,util:p}),this.decode=m(this)({Reader:h,types:E,util:p}),this.verify=y(this)({types:E,util:p}),this.fromObject=w.fromObject(this)({types:E,util:p}),this.toObject=w.toObject(this)({types:E,util:p});var D=_[S];if(D){var P=Object.create(this);P.fromObject=this.fromObject,this.fromObject=D.fromObject.bind(P),P.toObject=this.toObject,this.toObject=D.toObject.bind(P)}return this},b.prototype.encode=function(S,E){return this.setup().encode(S,E)},b.prototype.encodeDelimited=function(S,E){return this.encode(S,E&&E.len?E.fork():E).ldelim()},b.prototype.decode=function(S,E){return this.setup().decode(S,E)},b.prototype.decodeDelimited=function(S){return S instanceof h||(S=h.create(S)),this.decode(S,S.uint32())},b.prototype.verify=function(S){return this.setup().verify(S)},b.prototype.fromObject=function(S){return this.setup().fromObject(S)},b.prototype.toObject=function(S,E){return this.setup().toObject(S,E)},b.d=function(S){return function(E){p.decorateType(E,S)}}},{12:12,13:13,14:14,15:15,16:16,20:20,21:21,23:23,25:25,27:27,33:33,37:37,40:40,41:41,42:42}],36:[function(t,n,s){var i=s,o=t(37),a=["double","float","int32","uint32","sint32","fixed32","sfixed32","int64","uint64","sint64","fixed64","sfixed64","bool","string","bytes"];function l(u,c){var f=0,h={};for(c|=0;f<u.length;)h[a[f+c]]=u[f++];return h}i.basic=l([1,5,0,0,0,5,5,0,0,0,1,1,0,2,2]),i.defaults=l([0,0,0,0,0,0,0,0,0,0,0,0,!1,"",o.emptyArray,null]),i.long=l([0,0,0,1,1],7),i.mapKey=l([0,0,0,5,5,0,0,0,1,1,0,2],2),i.packed=l([1,5,0,0,0,5,5,0,0,0,1,1,0])},{37:37}],37:[function(t,n,s){var i=n.exports=t(39),o=t(30),a,l;i.codegen=t(3),i.fetch=t(5),i.path=t(8),i.fs=i.inquire("fs"),i.toArray=function(d){if(d){for(var p=Object.keys(d),g=new Array(p.length),m=0;m<p.length;)g[m]=d[p[m++]];return g}return[]},i.toObject=function(d){for(var p={},g=0;g<d.length;){var m=d[g++],y=d[g++];y!==e&&(p[m]=y)}return p};var u=/\\/g,c=/"/g;i.isReserved=function(d){return/^(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)$/.test(d)},i.safeProp=function(d){return!/^[$\w_]+$/.test(d)||i.isReserved(d)?'["'+d.replace(u,"\\\\").replace(c,'\\"')+'"]':"."+d},i.ucFirst=function(d){return d.charAt(0).toUpperCase()+d.substring(1)};var f=/_([a-z])/g;i.camelCase=function(d){return d.substring(0,1)+d.substring(1).replace(f,function(p,g){return g.toUpperCase()})},i.compareFieldsById=function(d,p){return d.id-p.id},i.decorateType=function(d,p){if(d.$type)return p&&d.$type.name!==p&&(i.decorateRoot.remove(d.$type),d.$type.name=p,i.decorateRoot.add(d.$type)),d.$type;a||(a=t(35));var g=new a(p||d.name);return i.decorateRoot.add(g),g.ctor=d,Object.defineProperty(d,"$type",{value:g,enumerable:!1}),Object.defineProperty(d.prototype,"$type",{value:g,enumerable:!1}),g};var h=0;i.decorateEnum=function(d){if(d.$type)return d.$type;l||(l=t(15));var p=new l("Enum"+h++,d);return i.decorateRoot.add(p),Object.defineProperty(d,"$type",{value:p,enumerable:!1}),p},Object.defineProperty(i,"decorateRoot",{get:function(){return o.decorated||(o.decorated=new(t(29)))}})},{15:15,29:29,3:3,30:30,35:35,39:39,5:5,8:8}],38:[function(t,n,s){n.exports=o;var i=t(39);function o(c,f){this.lo=c>>>0,this.hi=f>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var l=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(c){if(c===0)return a;var f=c<0;f&&(c=-c);var h=c>>>0,d=(c-h)/4294967296>>>0;return f&&(d=~d>>>0,h=~h>>>0,++h>4294967295&&(h=0,++d>4294967295&&(d=0))),new o(h,d)},o.from=function(c){if(typeof c=="number")return o.fromNumber(c);if(i.isString(c))if(i.Long)c=i.Long.fromString(c);else return o.fromNumber(parseInt(c,10));return c.low||c.high?new o(c.low>>>0,c.high>>>0):a},o.prototype.toNumber=function(c){if(!c&&this.hi>>>31){var f=~this.lo+1>>>0,h=~this.hi>>>0;return f||(h=h+1>>>0),-(f+h*4294967296)}return this.lo+this.hi*4294967296},o.prototype.toLong=function(c){return i.Long?new i.Long(this.lo|0,this.hi|0,!!c):{low:this.lo|0,high:this.hi|0,unsigned:!!c}};var u=String.prototype.charCodeAt;o.fromHash=function(c){return c===l?a:new o((u.call(c,0)|u.call(c,1)<<8|u.call(c,2)<<16|u.call(c,3)<<24)>>>0,(u.call(c,4)|u.call(c,5)<<8|u.call(c,6)<<16|u.call(c,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var c=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^c)>>>0,this.lo=(this.lo<<1^c)>>>0,this},o.prototype.zzDecode=function(){var c=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^c)>>>0,this.hi=(this.hi>>>1^c)>>>0,this},o.prototype.length=function(){var c=this.lo,f=(this.lo>>>28|this.hi<<4)>>>0,h=this.hi>>>24;return h===0?f===0?c<16384?c<128?1:2:c<2097152?3:4:f<16384?f<128?5:6:f<2097152?7:8:h<128?9:10}},{39:39}],39:[function(t,n,s){var i=s;i.asPromise=t(1),i.base64=t(2),i.EventEmitter=t(4),i.float=t(6),i.inquire=t(7),i.utf8=t(10),i.pool=t(9),i.LongBits=t(38),i.emptyArray=Object.freeze?Object.freeze([]):[],i.emptyObject=Object.freeze?Object.freeze({}):{},i.isNode=!!(tr.process&&tr.process.versions&&tr.process.versions.node),i.isInteger=Number.isInteger||function(l){return typeof l=="number"&&isFinite(l)&&Math.floor(l)===l},i.isString=function(l){return typeof l=="string"||l instanceof String},i.isObject=function(l){return l&&typeof l=="object"},i.isset=i.isSet=function(l,u){var c=l[u];return c!=null&&l.hasOwnProperty(u)?typeof c!="object"||(Array.isArray(c)?c.length:Object.keys(c).length)>0:!1},i.Buffer=function(){try{var l=i.inquire("buffer").Buffer;return l.prototype.utf8Write?l:null}catch{return null}}(),i._Buffer_from=null,i._Buffer_allocUnsafe=null,i.newBuffer=function(l){return typeof l=="number"?i.Buffer?i._Buffer_allocUnsafe(l):new i.Array(l):i.Buffer?i._Buffer_from(l):typeof Uint8Array>"u"?l:new Uint8Array(l)},i.Array=typeof Uint8Array<"u"?Uint8Array:Array,i.Long=tr.dcodeIO&&tr.dcodeIO.Long||i.inquire("long"),i.key2Re=/^true|false|0|1$/,i.key32Re=/^-?(?:0|[1-9][0-9]*)$/,i.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,i.longToHash=function(l){return l?i.LongBits.from(l).toHash():i.LongBits.zeroHash},i.longFromHash=function(l,u){var c=i.LongBits.fromHash(l);return i.Long?i.Long.fromBits(c.lo,c.hi,u):c.toNumber(!!u)};function o(l,u,c){for(var f=Object.keys(u),h=0;h<f.length;++h)(l[f[h]]===e||!c)&&(l[f[h]]=u[f[h]]);return l}i.merge=o,i.lcFirst=function(l){return l.charAt(0).toLowerCase()+l.substring(1)};function a(l){function u(c,f){if(!(this instanceof u))return new u(c,f);Object.defineProperty(this,"message",{get:function(){return c}}),Error.captureStackTrace?Error.captureStackTrace(this,u):Object.defineProperty(this,"stack",{value:new Error().stack||""}),f&&o(this,f)}return(u.prototype=Object.create(Error.prototype)).constructor=u,Object.defineProperty(u.prototype,"name",{get:function(){return l}}),u.prototype.toString=function(){return this.name+": "+this.message},u}i.newError=a,i.ProtocolError=a("ProtocolError"),i.oneOfGetter=function(l){for(var u={},c=0;c<l.length;++c)u[l[c]]=1;return function(){for(var f=Object.keys(this),h=f.length-1;h>-1;--h)if(u[f[h]]===1&&this[f[h]]!==e&&this[f[h]]!==null)return f[h]}},i.oneOfSetter=function(l){return function(u){for(var c=0;c<l.length;++c)l[c]!==u&&delete this[l[c]]}},i.toJSONOptions={longs:String,enums:String,bytes:String,json:!0},i._configure=function(){var l=i.Buffer;if(!l){i._Buffer_from=i._Buffer_allocUnsafe=null;return}i._Buffer_from=l.from!==Uint8Array.from&&l.from||function(u,c){return new l(u,c)},i._Buffer_allocUnsafe=l.allocUnsafe||function(u){return new l(u)}}},{1:1,10:10,2:2,38:38,4:4,6:6,7:7,9:9}],40:[function(t,n,s){n.exports=c;var i=t(15),o=t(37);function a(f,h){return f.name+": "+h+(f.repeated&&h!=="array"?"[]":f.map&&h!=="object"?"{k:"+f.keyType+"}":"")+" expected"}function l(f,h,d,p){if(h.resolvedType)if(h.resolvedType instanceof i){f("switch(%s){",p)("default:")("return%j",a(h,"enum value"));for(var g=Object.keys(h.resolvedType.values),m=0;m<g.length;++m)f("case %i:",h.resolvedType.values[g[m]]);f("break")("}")}else f("{")("var e=types[%i].verify(%s);",d,p)("if(e)")("return%j+e",h.name+".")("}");else switch(h.type){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":f("if(!util.isInteger(%s))",p)("return%j",a(h,"integer"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":f("if(!util.isInteger(%s)&&!(%s&&util.isInteger(%s.low)&&util.isInteger(%s.high)))",p,p,p,p)("return%j",a(h,"integer|Long"));break;case"float":case"double":f('if(typeof %s!=="number")',p)("return%j",a(h,"number"));break;case"bool":f('if(typeof %s!=="boolean")',p)("return%j",a(h,"boolean"));break;case"string":f("if(!util.isString(%s))",p)("return%j",a(h,"string"));break;case"bytes":f('if(!(%s&&typeof %s.length==="number"||util.isString(%s)))',p,p,p)("return%j",a(h,"buffer"));break}return f}function u(f,h,d){switch(h.keyType){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":f("if(!util.key32Re.test(%s))",d)("return%j",a(h,"integer key"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":f("if(!util.key64Re.test(%s))",d)("return%j",a(h,"integer|Long key"));break;case"bool":f("if(!util.key2Re.test(%s))",d)("return%j",a(h,"boolean key"));break}return f}function c(f){var h=o.codegen(["m"],f.name+"$verify")('if(typeof m!=="object"||m===null)')("return%j","object expected"),d=f.oneofsArray,p={};d.length&&h("var p={}");for(var g=0;g<f.fieldsArray.length;++g){var m=f._fieldsArray[g].resolve(),y="m"+o.safeProp(m.name);if(m.optional&&h("if(%s!=null&&m.hasOwnProperty(%j)){",y,m.name),m.map)h("if(!util.isObject(%s))",y)("return%j",a(m,"object"))("var k=Object.keys(%s)",y)("for(var i=0;i<k.length;++i){"),u(h,m,"k[i]"),l(h,m,g,y+"[k[i]]")("}");else if(m.repeated)h("if(!Array.isArray(%s))",y)("return%j",a(m,"array"))("for(var i=0;i<%s.length;++i){",y),l(h,m,g,y+"[i]")("}");else{if(m.partOf){var w=o.safeProp(m.partOf.name);p[m.partOf.name]===1&&h("if(p%s===1)",w)("return%j",m.partOf.name+": multiple values"),p[m.partOf.name]=1,h("p%s=1",w)}l(h,m,g,y)}m.optional&&h("}")}return h("return null")}},{15:15,37:37}],41:[function(t,n,s){var i=s,o=t(21);i[".google.protobuf.Any"]={fromObject:function(a){if(a&&a["@type"]){var l=this.lookup(a["@type"]);if(l){var u=a["@type"].charAt(0)==="."?a["@type"].substr(1):a["@type"];return this.create({type_url:"/"+u,value:l.encode(l.fromObject(a)).finish()})}}return this.fromObject(a)},toObject:function(a,l){if(l&&l.json&&a.type_url&&a.value){var u=a.type_url.substring(a.type_url.lastIndexOf("/")+1),c=this.lookup(u);c&&(a=c.decode(a.value))}if(!(a instanceof this.ctor)&&a instanceof o){var f=a.$type.toObject(a,l);return f["@type"]=a.$type.fullName,f}return this.toObject(a,l)}}},{21:21}],42:[function(t,n,s){n.exports=d;var i=t(39),o,a=i.LongBits,l=i.base64,u=i.utf8;function c(b,k,S){this.fn=b,this.len=k,this.next=e,this.val=S}function f(){}function h(b){this.head=b.head,this.tail=b.tail,this.len=b.len,this.next=b.states}function d(){this.len=0,this.head=new c(f,0,0),this.tail=this.head,this.states=null}d.create=i.Buffer?function(){return(d.create=function(){return new o})()}:function(){return new d},d.alloc=function(b){return new i.Array(b)},i.Array!==Array&&(d.alloc=i.pool(d.alloc,i.Array.prototype.subarray)),d.prototype._push=function(b,k,S){return this.tail=this.tail.next=new c(b,k,S),this.len+=k,this};function p(b,k,S){k[S]=b&255}function g(b,k,S){for(;b>127;)k[S++]=b&127|128,b>>>=7;k[S]=b}function m(b,k){this.len=b,this.next=e,this.val=k}m.prototype=Object.create(c.prototype),m.prototype.fn=g,d.prototype.uint32=function(b){return this.len+=(this.tail=this.tail.next=new m((b=b>>>0)<128?1:b<16384?2:b<2097152?3:b<268435456?4:5,b)).len,this},d.prototype.int32=function(b){return b<0?this._push(y,10,a.fromNumber(b)):this.uint32(b)},d.prototype.sint32=function(b){return this.uint32((b<<1^b>>31)>>>0)};function y(b,k,S){for(;b.hi;)k[S++]=b.lo&127|128,b.lo=(b.lo>>>7|b.hi<<25)>>>0,b.hi>>>=7;for(;b.lo>127;)k[S++]=b.lo&127|128,b.lo=b.lo>>>7;k[S++]=b.lo}d.prototype.uint64=function(b){var k=a.from(b);return this._push(y,k.length(),k)},d.prototype.int64=d.prototype.uint64,d.prototype.sint64=function(b){var k=a.from(b).zzEncode();return this._push(y,k.length(),k)},d.prototype.bool=function(b){return this._push(p,1,b?1:0)};function w(b,k,S){k[S]=b&255,k[S+1]=b>>>8&255,k[S+2]=b>>>16&255,k[S+3]=b>>>24}d.prototype.fixed32=function(b){return this._push(w,4,b>>>0)},d.prototype.sfixed32=d.prototype.fixed32,d.prototype.fixed64=function(b){var k=a.from(b);return this._push(w,4,k.lo)._push(w,4,k.hi)},d.prototype.sfixed64=d.prototype.fixed64,d.prototype.float=function(b){return this._push(i.float.writeFloatLE,4,b)},d.prototype.double=function(b){return this._push(i.float.writeDoubleLE,8,b)};var _=i.Array.prototype.set?function(b,k,S){k.set(b,S)}:function(b,k,S){for(var E=0;E<b.length;++E)k[S+E]=b[E]};d.prototype.bytes=function(b){var k=b.length>>>0;if(!k)return this._push(p,1,0);if(i.isString(b)){var S=d.alloc(k=l.length(b));l.decode(b,S,0),b=S}return this.uint32(k)._push(_,k,b)},d.prototype.string=function(b){var k=u.length(b);return k?this.uint32(k)._push(u.write,k,b):this._push(p,1,0)},d.prototype.fork=function(){return this.states=new h(this),this.head=this.tail=new c(f,0,0),this.len=0,this},d.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(f,0,0),this.len=0),this},d.prototype.ldelim=function(){var b=this.head,k=this.tail,S=this.len;return this.reset().uint32(S),S&&(this.tail.next=b.next,this.tail=k,this.len+=S),this},d.prototype.finish=function(){for(var b=this.head.next,k=this.constructor.alloc(this.len),S=0;b;)b.fn(b.val,k,S),S+=b.len,b=b.next;return k},d._configure=function(b){o=b}},{39:39}],43:[function(t,n,s){n.exports=l;var i=t(42);(l.prototype=Object.create(i.prototype)).constructor=l;var o=t(39),a=o.Buffer;function l(){i.call(this)}l.alloc=function(f){return(l.alloc=o._Buffer_allocUnsafe)(f)};var u=a&&a.prototype instanceof Uint8Array&&a.prototype.set.name==="set"?function(f,h,d){h.set(f,d)}:function(f,h,d){if(f.copy)f.copy(h,d,0,f.length);else for(var p=0;p<f.length;)h[d++]=f[p++]};l.prototype.bytes=function(f){o.isString(f)&&(f=o._Buffer_from(f,"base64"));var h=f.length>>>0;return this.uint32(h),h&&this._push(u,h,f),this};function c(f,h,d){f.length<40?o.utf8.write(f,h,d):h.utf8Write(f,d)}l.prototype.string=function(f){var h=a.byteLength(f);return this.uint32(h),h&&this._push(c,h,f),this}},{39:39,42:42}]},{},[19])})()}(Dn)),Dn.exports}var vh=_h();const rr=Sh(vh);let G=rr.Reader,ve=rr.Writer,pe=rr.util;const L=rr.roots["push-server"]||(rr.roots["push-server"]={});L.RequestBatch=function(){function r(e){if(this.requests=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.requests=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.requests!=null&&e.requests.length)for(var n=0;n<e.requests.length;++n)L.Request.encode(e.requests[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.RequestBatch;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.requests&&s.requests.length||(s.requests=[]),s.requests.push(L.Request.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.Request=function(){function r(t){if(t)for(var n=Object.keys(t),s=0;s<n.length;++s)t[n[s]]!=null&&(this[n[s]]=t[n[s]])}r.prototype.incomingMessages=null,r.prototype.channelStats=null,r.prototype.serverStats=null;var e;return Object.defineProperty(r.prototype,"command",{get:pe.oneOfGetter(e=["incomingMessages","channelStats","serverStats"]),set:pe.oneOfSetter(e)}),r.create=function(t){return new r(t)},r.encode=function(t,n){return n||(n=ve.create()),t.incomingMessages!=null&&t.hasOwnProperty("incomingMessages")&&L.IncomingMessagesRequest.encode(t.incomingMessages,n.uint32(10).fork()).ldelim(),t.channelStats!=null&&t.hasOwnProperty("channelStats")&&L.ChannelStatsRequest.encode(t.channelStats,n.uint32(18).fork()).ldelim(),t.serverStats!=null&&t.hasOwnProperty("serverStats")&&L.ServerStatsRequest.encode(t.serverStats,n.uint32(26).fork()).ldelim(),n},r.decode=function(t,n){t instanceof G||(t=G.create(t));for(var s=n===void 0?t.len:t.pos+n,i=new L.Request;t.pos<s;){var o=t.uint32();switch(o>>>3){case 1:i.incomingMessages=L.IncomingMessagesRequest.decode(t,t.uint32());break;case 2:i.channelStats=L.ChannelStatsRequest.decode(t,t.uint32());break;case 3:i.serverStats=L.ServerStatsRequest.decode(t,t.uint32());break;default:t.skipType(o&7);break}}return i},r}(),L.IncomingMessagesRequest=function(){function r(e){if(this.messages=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.messages=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.messages!=null&&e.messages.length)for(var n=0;n<e.messages.length;++n)L.IncomingMessage.encode(e.messages[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.IncomingMessagesRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.messages&&s.messages.length||(s.messages=[]),s.messages.push(L.IncomingMessage.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.IncomingMessage=function(){function r(e){if(this.receivers=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.receivers=pe.emptyArray,r.prototype.sender=null,r.prototype.body="",r.prototype.expiry=0,r.prototype.type="",r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.receivers!=null&&e.receivers.length)for(var n=0;n<e.receivers.length;++n)L.Receiver.encode(e.receivers[n],t.uint32(10).fork()).ldelim();return e.sender!=null&&e.hasOwnProperty("sender")&&L.Sender.encode(e.sender,t.uint32(18).fork()).ldelim(),e.body!=null&&e.hasOwnProperty("body")&&t.uint32(26).string(e.body),e.expiry!=null&&e.hasOwnProperty("expiry")&&t.uint32(32).uint32(e.expiry),e.type!=null&&e.hasOwnProperty("type")&&t.uint32(42).string(e.type),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.IncomingMessage;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.receivers&&s.receivers.length||(s.receivers=[]),s.receivers.push(L.Receiver.decode(e,e.uint32()));break;case 2:s.sender=L.Sender.decode(e,e.uint32());break;case 3:s.body=e.string();break;case 4:s.expiry=e.uint32();break;case 5:s.type=e.string();break;default:e.skipType(i&7);break}}return s},r}(),L.ChannelStatsRequest=function(){function r(e){if(this.channels=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.channels=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.channels!=null&&e.channels.length)for(var n=0;n<e.channels.length;++n)L.ChannelId.encode(e.channels[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ChannelStatsRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.channels&&s.channels.length||(s.channels=[]),s.channels.push(L.ChannelId.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.ChannelId=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.signature=pe.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.signature!=null&&e.hasOwnProperty("signature")&&t.uint32(26).bytes(e.signature),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ChannelId;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.signature=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),L.ServerStatsRequest=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ServerStatsRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){default:e.skipType(i&7);break}}return s},r}(),L.Sender=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.type=0,r.prototype.id=pe.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.type!=null&&e.hasOwnProperty("type")&&t.uint32(8).int32(e.type),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(18).bytes(e.id),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.Sender;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.type=e.int32();break;case 2:s.id=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),L.SenderType=function(){var r={},e=Object.create(r);return e[r[0]="UNKNOWN"]=0,e[r[1]="CLIENT"]=1,e[r[2]="BACKEND"]=2,e}(),L.Receiver=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.signature=pe.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.signature!=null&&e.hasOwnProperty("signature")&&t.uint32(26).bytes(e.signature),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.Receiver;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.signature=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),L.ResponseBatch=function(){function r(e){if(this.responses=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.responses=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.responses!=null&&e.responses.length)for(var n=0;n<e.responses.length;++n)L.Response.encode(e.responses[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ResponseBatch;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.responses&&s.responses.length||(s.responses=[]),s.responses.push(L.Response.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.Response=function(){function r(t){if(t)for(var n=Object.keys(t),s=0;s<n.length;++s)t[n[s]]!=null&&(this[n[s]]=t[n[s]])}r.prototype.outgoingMessages=null,r.prototype.channelStats=null,r.prototype.serverStats=null;var e;return Object.defineProperty(r.prototype,"command",{get:pe.oneOfGetter(e=["outgoingMessages","channelStats","serverStats"]),set:pe.oneOfSetter(e)}),r.create=function(t){return new r(t)},r.encode=function(t,n){return n||(n=ve.create()),t.outgoingMessages!=null&&t.hasOwnProperty("outgoingMessages")&&L.OutgoingMessagesResponse.encode(t.outgoingMessages,n.uint32(10).fork()).ldelim(),t.channelStats!=null&&t.hasOwnProperty("channelStats")&&L.ChannelStatsResponse.encode(t.channelStats,n.uint32(18).fork()).ldelim(),t.serverStats!=null&&t.hasOwnProperty("serverStats")&&L.JsonResponse.encode(t.serverStats,n.uint32(26).fork()).ldelim(),n},r.decode=function(t,n){t instanceof G||(t=G.create(t));for(var s=n===void 0?t.len:t.pos+n,i=new L.Response;t.pos<s;){var o=t.uint32();switch(o>>>3){case 1:i.outgoingMessages=L.OutgoingMessagesResponse.decode(t,t.uint32());break;case 2:i.channelStats=L.ChannelStatsResponse.decode(t,t.uint32());break;case 3:i.serverStats=L.JsonResponse.decode(t,t.uint32());break;default:t.skipType(o&7);break}}return i},r}(),L.OutgoingMessagesResponse=function(){function r(e){if(this.messages=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.messages=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.messages!=null&&e.messages.length)for(var n=0;n<e.messages.length;++n)L.OutgoingMessage.encode(e.messages[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.OutgoingMessagesResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.messages&&s.messages.length||(s.messages=[]),s.messages.push(L.OutgoingMessage.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.OutgoingMessage=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.body="",r.prototype.expiry=0,r.prototype.created=0,r.prototype.sender=null,r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.body!=null&&e.hasOwnProperty("body")&&t.uint32(18).string(e.body),e.expiry!=null&&e.hasOwnProperty("expiry")&&t.uint32(24).uint32(e.expiry),e.created!=null&&e.hasOwnProperty("created")&&t.uint32(37).fixed32(e.created),e.sender!=null&&e.hasOwnProperty("sender")&&L.Sender.encode(e.sender,t.uint32(42).fork()).ldelim(),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.OutgoingMessage;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.body=e.string();break;case 3:s.expiry=e.uint32();break;case 4:s.created=e.fixed32();break;case 5:s.sender=L.Sender.decode(e,e.uint32());break;default:e.skipType(i&7);break}}return s},r}(),L.ChannelStatsResponse=function(){function r(e){if(this.channels=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.channels=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.channels!=null&&e.channels.length)for(var n=0;n<e.channels.length;++n)L.ChannelStats.encode(e.channels[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ChannelStatsResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.channels&&s.channels.length||(s.channels=[]),s.channels.push(L.ChannelStats.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.ChannelStats=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.isOnline=!1,r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.isOnline!=null&&e.hasOwnProperty("isOnline")&&t.uint32(24).bool(e.isOnline),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ChannelStats;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.isOnline=e.bool();break;default:e.skipType(i&7);break}}return s},r}(),L.JsonResponse=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.json="",r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.json!=null&&e.hasOwnProperty("json")&&t.uint32(10).string(e.json),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.JsonResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.json=e.string();break;default:e.skipType(i&7);break}}return s},r}();const kh=L.ResponseBatch,Ro=L.RequestBatch,Eh=L.IncomingMessage,Fo=L.Receiver;class Lo{_logger=null;_connected=!1;_connectionType;_disconnectCode=0;_disconnectReason="";_parent;_callbacks;constructor(e){this._parent=e.parent,this._connectionType=te.Undefined,this._callbacks={onOpen:R.isFunction(e.onOpen)?e.onOpen:()=>{},onDisconnect:R.isFunction(e.onDisconnect)?e.onDisconnect:()=>{},onError:R.isFunction(e.onError)?e.onError:()=>{},onMessage:R.isFunction(e.onMessage)?e.onMessage:()=>{}}}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){}get connected(){return this._connected}set connected(e){e!=this._connected&&(this._connected=e,this._connected?this._callbacks.onOpen():this._callbacks.onDisconnect({code:this.disconnectCode,reason:this.disconnectReason}))}get disconnectCode(){return this._disconnectCode}get disconnectReason(){return this._disconnectReason}get connectionPath(){return this._parent.getConnectionPath(this._connectionType)}}class Th extends Lo{_socket;_onSocketOpenHandler;_onSocketCloseHandler;_onSocketErrorHandler;_onSocketMessageHandler;constructor(e){super(e),this._connectionType=te.WebSocket,this._socket=null,this._onSocketOpenHandler=this._onSocketOpen.bind(this),this._onSocketCloseHandler=this._onSocketClose.bind(this),this._onSocketErrorHandler=this._onSocketError.bind(this),this._onSocketMessageHandler=this._onSocketMessage.bind(this)}destroy(){super.destroy(),this._socket&&(this._socket.close(),this._socket=null)}connect(){if(this._socket){if(this._socket.readyState===1)return;this.clearEventListener(),this._socket.close(),this._socket=null}this._createSocket()}get socket(){return this._socket}disconnect(e,t){this._socket!==null&&(this.clearEventListener(),this._socket.close(e,t)),this._socket=null,this._disconnectCode=e,this._disconnectReason=t,this.connected=!1}send(e){return!this._socket||this._socket.readyState!==1?(this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: WebSocket is not connected`)),!1):(this._socket.send(e),!0)}_onSocketOpen(){this.connected=!0}_onSocketClose(e){this._socket=null,this._disconnectCode=Number(e.code),this._disconnectReason=e.reason,this.connected=!1}_onSocketError(e){this._callbacks.onError(new Error(`Socket error: ${e}`))}_onSocketMessage(e){this._callbacks.onMessage(e.data)}clearEventListener(){this._socket&&(this._socket.removeEventListener("open",this._onSocketOpenHandler),this._socket.removeEventListener("close",this._onSocketCloseHandler),this._socket.removeEventListener("error",this._onSocketErrorHandler),this._socket.removeEventListener("message",this._onSocketMessageHandler))}_createSocket(){if(this._socket)throw new Error("Socket already exists");if(!this.connectionPath)throw new Error("Websocket connection path is not defined");this._socket=new WebSocket(this.connectionPath),this._socket.binaryType="arraybuffer",this._socket.addEventListener("open",this._onSocketOpenHandler),this._socket.addEventListener("close",this._onSocketCloseHandler),this._socket.addEventListener("error",this._onSocketErrorHandler),this._socket.addEventListener("message",this._onSocketMessageHandler)}}const Oh=60;class Ah extends Lo{_active;_requestTimeout;_failureTimeout;_xhr;_requestAborted;constructor(e){super(e),this._active=!1,this._connectionType=te.LongPolling,this._requestTimeout=null,this._failureTimeout=null,this._xhr=this.createXhr(),this._requestAborted=!1}connect(){this._active=!0,this.performRequest()}disconnect(e,t){this._active=!1,this.clearTimeOut(),this._xhr&&(this._requestAborted=!0,this._xhr.abort()),this._disconnectCode=e,this._disconnectReason=t,this.connected=!1}performRequest(){if(this._active){if(!this.connectionPath)throw new Error("Long polling connection path is not defined");this._xhr.readyState!==0&&this._xhr.readyState!==4||(this.clearTimeOut(),this._failureTimeout=setTimeout(()=>{this.connected=!0},5e3),this._requestTimeout=setTimeout(this.onRequestTimeout.bind(this),Oh*1e3),this._xhr.open("GET",this.connectionPath),this._xhr.send())}}onRequestTimeout(){this._requestAborted=!0,this._xhr.abort(),this.performRequest()}onXhrReadyStateChange(){this._xhr.readyState===4&&((!this._requestAborted||this._xhr.status==200)&&this.onResponse(this._xhr.response),this._requestAborted=!1)}send(e){const t=this._parent.getPublicationPath();if(!t)return this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: publication path is empty`)),!1;const n=new XMLHttpRequest;return n.open("POST",t),n.send(e),!0}onResponse(e){if(this.clearTimeOut(),this._xhr.status===200)this.connected=!0,R.isStringFilled(e)||e instanceof ArrayBuffer?this._callbacks.onMessage(e):this._parent.session.mid=null,this.performRequest();else if(this._xhr.status===304){if(this.connected=!0,this._xhr.getResponseHeader("Expires")==="Thu, 01 Jan 1973 11:11:01 GMT"){const t=this._xhr.getResponseHeader("Last-Message-Id");R.isStringFilled(t)&&this._parent.setLastMessageId(t||"")}this.performRequest()}else this._callbacks.onError(new Error("Could not connect to the server")),this.connected=!1}clearTimeOut(){this._failureTimeout&&(clearTimeout(this._failureTimeout),this._failureTimeout=null),this._requestTimeout&&(clearTimeout(this._requestTimeout),this._requestTimeout=null)}createXhr(){const e=new XMLHttpRequest;return this._parent.isProtobufSupported()&&!this._parent.isJsonRpc()&&(e.responseType="arraybuffer"),e.addEventListener("readystatechange",this.onXhrReadyStateChange.bind(this)),e}}const nr=19,Mo=30*60,Ih=5e3,Ch=60*1e3,Nh=10,Po=10,Rh="ping",Fh="pong",xo="bx-pull-session",Lh=20,Do={api:{},channels:{},publicChannels:{},server:{timeShift:0},clientId:null,jwt:null,exp:0};class jo{_logger=null;_restClient;_status;_context;_guestMode;_guestUserId;_userId;_configGetMethod;_getPublicListMethod;_siteId;_enabled;_unloading=!1;_starting=!1;_debug=!1;_connectionAttempt=0;_connectionType=te.WebSocket;_reconnectTimeout=null;_restartTimeout=null;_restoreWebSocketTimeout=null;_skipStorageInit;_skipCheckRevision;_subscribers={};_watchTagsQueue=new Map;_watchUpdateInterval=174e4;_watchForceUpdateInterval=5e3;_configTimestamp=0;_session={mid:null,tag:null,time:null,history:{},lastMessageIds:[],messageCount:0};_connectors={[te.Undefined]:null,[te.WebSocket]:null,[te.LongPolling]:null};_isSecure;_config=null;_storage=null;_sharedConfig;_channelManager;_jsonRpcAdapter=null;_checkInterval=null;_offlineTimeout=null;_watchUpdateTimeout=null;_pingWaitTimeout=null;_isManualDisconnect=!1;_loggingEnabled=!1;_onPingTimeoutHandler;_userStatusCallbacks={};_connectPromise=null;_startingPromise=null;constructor(e){this._restClient=e.b24,this._status=Ne.Offline,this._context="master",e.restApplication&&(typeof e.configGetMethod>"u"&&(e.configGetMethod="pull.application.config.get"),typeof e.skipCheckRevision>"u"&&(e.skipCheckRevision=!0),R.isStringFilled(e.restApplication)&&(e.siteId=e.restApplication),e.serverEnabled=!0),this._guestMode=e.guestMode?$.toBoolean(e.guestMode):!1,this._guestUserId=e.guestUserId?$.toInteger(e.guestUserId):0,this._guestMode&&this._guestUserId>0?this._userId=this._guestUserId:(this._guestMode=!1,this._userId=e.userId?$.toInteger(e.userId):0),this._siteId=e.siteId??"none",this._enabled=R.isUndefined(e.serverEnabled)?!0:e.serverEnabled===!0,this._configGetMethod=R.isStringFilled(e.configGetMethod)?e.configGetMethod||"":"pull.config.get",this._getPublicListMethod=R.isStringFilled(e.getPublicListMethod)?e.getPublicListMethod||"":"pull.channel.public.list",this._skipStorageInit=e.skipStorageInit===!0,this._skipCheckRevision=e.skipCheckRevision===!0,R.isUndefined(e.configTimestamp)||(this._configTimestamp=$.toInteger(e.configTimestamp)),this._isSecure=document?.location.href.indexOf("https")===0,this._userId&&!this._skipStorageInit&&(this._storage=new Co({userId:this._userId,siteId:this._siteId})),this._sharedConfig=new wh({onWebSocketBlockChanged:this.onWebSocketBlockChanged.bind(this),storage:this._storage}),this._channelManager=new bh({b24:this._restClient,getPublicListMethod:this._getPublicListMethod}),this._loggingEnabled=this._sharedConfig.isLoggingEnabled(),this._onPingTimeoutHandler=this.onPingTimeout.bind(this)}setLogger(e){this._logger=e,this._jsonRpcAdapter?.setLogger(this.getLogger()),this._storage?.setLogger(this.getLogger()),this._sharedConfig.setLogger(this.getLogger()),this._channelManager.setLogger(this.getLogger()),this._connectors.webSocket?.setLogger(this.getLogger()),this._connectors.longPolling?.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){this.stop(Se.NORMAL_CLOSURE,"manual stop"),this.onBeforeUnload()}init(){this._connectors.webSocket=new Th({parent:this,onOpen:this.onWebSocketOpen.bind(this),onMessage:this.onIncomingMessage.bind(this),onDisconnect:this.onWebSocketDisconnect.bind(this),onError:this.onWebSocketError.bind(this)}),this._connectors.longPolling=new Ah({parent:this,onOpen:this.onLongPollingOpen.bind(this),onMessage:this.onIncomingMessage.bind(this),onDisconnect:this.onLongPollingDisconnect.bind(this),onError:this.onLongPollingError.bind(this)}),this._connectionType=this.isWebSocketAllowed()?te.WebSocket:te.LongPolling,window.addEventListener("beforeunload",this.onBeforeUnload.bind(this)),window.addEventListener("offline",this.onOffline.bind(this)),window.addEventListener("online",this.onOnline.bind(this)),this._jsonRpcAdapter=new yh({connector:this._connectors.webSocket,handlers:{"incoming.message":this.handleRpcIncomingMessage.bind(this)}})}get connector(){return this._connectors[this._connectionType]}get status(){return this._status}set status(e){this._status!==e&&(this._status=e,this._offlineTimeout&&(clearTimeout(this._offlineTimeout),this._offlineTimeout=null),e===Ne.Offline?this.sendPullStatusDelayed(e,Ih):this.sendPullStatus(e))}get session(){return this._session}subscribe(e){if(!R.isPlainObject(e))return this.attachCommandHandler(e);if(e=e,e.type=e.type||Re.Server,e.command=e.command||null,e.type==Re.Server||e.type==Re.Client){if(typeof e.moduleId>"u")throw new TypeError(`${$.getDateForLog()}: Pull.subscribe: parameter moduleId is not specified`);return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]={}),typeof this._subscribers[e.type][e.moduleId]>"u"&&(this._subscribers[e.type][e.moduleId]={callbacks:[],commands:{}}),e.command?(typeof this._subscribers[e.type][e.moduleId].commands[e.command]>"u"&&(this._subscribers[e.type][e.moduleId].commands[e.command]=[]),this._subscribers[e.type][e.moduleId].commands[e.command].push(e.callback),()=>{typeof e.type>"u"||typeof e.moduleId>"u"||typeof e.command>"u"||e.command===null||(this._subscribers[e.type][e.moduleId].commands[e.command]=this._subscribers[e.type][e.moduleId].commands[e.command].filter(t=>t!==e.callback))}):(this._subscribers[e.type][e.moduleId].callbacks.push(e.callback),()=>{typeof e.type>"u"||typeof e.moduleId>"u"||(this._subscribers[e.type][e.moduleId].callbacks=this._subscribers[e.type][e.moduleId].callbacks.filter(t=>t!==e.callback))})}else return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]=[]),this._subscribers[e.type].push(e.callback),()=>{typeof e.type>"u"||(this._subscribers[e.type]=this._subscribers[e.type].filter(t=>t!==e.callback))}}attachCommandHandler(e){if(typeof e.getModuleId!="function"||typeof e.getModuleId()!="string")return this.getLogger().error(`${$.getDateForLog()}: Pull.attachCommandHandler: result of handler.getModuleId() is not a string.`),()=>{};let t=Re.Server;return typeof e.getSubscriptionType=="function"&&(t=e.getSubscriptionType()),this.subscribe({type:t,moduleId:e.getModuleId(),callback:n=>{let s=null;if(typeof e.getMap=="function"){const i=e.getMap();if(i&&typeof i=="object"){const o=i[n.command];typeof o=="function"?s=o.bind(e):typeof o=="string"&&typeof e[o]=="function"&&(s=e[o].bind(e))}}if(!s){const i=`handle${$.capitalize(n.command)}`;typeof e[i]=="function"&&(s=e[i].bind(e))}s&&(this._debug&&this._context!=="master"&&this.getLogger().warn(`${$.getDateForLog()}: Pull.attachCommandHandler: result of handler.getModuleId() is not a string`,n),s(n.params,n.extra,n.command))}})}async start(e=null){let t=!0;if(this.isConnected())return Promise.resolve(!0);if(this._starting&&this._startingPromise)return this._startingPromise;if(!this._userId)throw new Error("Not set userId");if(this._siteId==="none")throw new Error("Not set siteId");let n=!1;if(e&&R.isPlainObject(e)&&(typeof e?.skipReconnectToLastSession<"u"&&(n=e.skipReconnectToLastSession,delete e.skipReconnectToLastSession),this._config=e,t=!1),!this._enabled)return Promise.reject({ex:{error:"PULL_DISABLED",error_description:"Push & Pull server is disabled"}});const s=Date.now();let i;return!n&&this._storage&&(i=this._storage.get(xo,null)),R.isPlainObject(i)&&i.hasOwnProperty("ttl")&&i.ttl>=s&&(this._session.mid=i.mid),this._starting=!0,this._startingPromise=new Promise((o,a)=>{this.loadConfig("client_start").then(l=>{this.setConfig(l,t),this.init(),this.updateWatch(!0),this.startCheckConfig(),this.connect().then(()=>o(!0),u=>a(u))}).catch(l=>{this._starting=!1,this.status=Ne.Offline,this.stopCheckConfig(),this.getLogger().error(`${$.getDateForLog()}: Pull: could not read push-server config `,l),a(l)})})}restart(e=Se.NORMAL_CLOSURE,t="manual restart"){this._restartTimeout&&(clearTimeout(this._restartTimeout),this._restartTimeout=null),this.getLogger().log(`${$.getDateForLog()}: Pull: restarting with code ${e}`),this.disconnect(e,t),this._storage&&this._storage.remove(Ce.PullConfig),this._config=null;const n=`${e}_${t.replaceAll(" ","_")}`;this.loadConfig(n).then(s=>{this.setConfig(s,!0),this.updateWatch(),this.startCheckConfig(),this.connect().catch(i=>{this.getLogger().error(i)})},s=>{this.getLogger().error(`${$.getDateForLog()}: Pull: could not read push-server config `,s),this.status=Ne.Offline,this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),(s?.status==401||s?.status==403)&&(this.stopCheckConfig(),this.onCustomEvent("onPullError",["AUTHORIZE_ERROR"]))})}stop(e=Se.NORMAL_CLOSURE,t="manual stop"){this.disconnect(e,t),this.stopCheckConfig()}reconnect(e,t,n=1){this.disconnect(e,t),this.scheduleReconnect(n)}setLastMessageId(e){this._session.mid=e}async sendMessage(e,t,n,s,i){const o={userList:e,body:{module_id:t,command:n,params:s},expiry:i};return this.isJsonRpc()?this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.Publish,o):this.sendMessageBatch([o])}async sendMessageToChannels(e,t,n,s,i){const o={channelList:e,body:{module_id:t,command:n,params:s},expiry:i};return this.isJsonRpc()?this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.Publish,o):this.sendMessageBatch([o])}capturePullEvent(e=!0){this._debug=e}enableLogging(e=!0){this._sharedConfig.setLoggingEnabled(e),this._loggingEnabled=e}async listChannels(){return this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.ListChannels,{})||Promise.reject(new Error("jsonRpcAdapter not init"))}async getUsersLastSeen(e){if(!R.isArray(e)||!e.every(n=>typeof n=="number"))throw new Error("userList must be an array of numbers");const t={};return new Promise((n,s)=>{this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.GetUsersLastSeen,{userList:e}).then(i=>{const o=[];for(let l=0;l<e.length;l++)i.hasOwnProperty(e[l])||o.push(e[l]);if(o.length===0)return n(t);const a={userIds:o,sendToQueueSever:!0};this._restClient.callMethod("pull.api.user.getLastSeen",a).then(l=>{const u=l.getData().result;for(const c in u)t[Number(c)]=Number(u[c]);return n(t)}).catch(l=>{this.getLogger().error(l),s(l)})}).catch(i=>{this.getLogger().error(i),s(i)})})}async ping(e=5){return this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.Ping,{},e)}async subscribeUserStatusChange(e,t){return new Promise((n,s)=>{this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.SubscribeStatusChange,{userId:e}).then(()=>(this._userStatusCallbacks[e]||(this._userStatusCallbacks[e]=[]),R.isFunction(t)&&this._userStatusCallbacks[e].push(t),n())).catch(i=>s(i))})}async unsubscribeUserStatusChange(e,t){return this._userStatusCallbacks[e]&&(this._userStatusCallbacks[e]=this._userStatusCallbacks[e].filter(n=>n!==t),this._userStatusCallbacks[e].length===0)?this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.UnsubscribeStatusChange,{userId:e}):Promise.resolve()}getRevision(){return this._config&&this._config.api?this._config.api.revision_web:null}getServerVersion(){return this._config&&this._config.server?this._config.server.version:0}getServerMode(){return this._config&&this._config.server?this._config.server.mode:null}getConfig(){return this._config}getDebugInfo(){if(!JSON||!JSON.stringify)return{};let e;this._config&&this._config.channels?e={ChannelID:this._config.channels.private?.id||"n/a",ChannelDie:this._config.channels.private?.end||"n/a",ChannelDieShared:this._config.channels.shared?.end||"n/a"}:e={ConfigError:"config is not loaded"};let t="-";return this._connectors.webSocket&&this._connectors.webSocket?.socket&&(this.isJsonRpc()?t="json-rpc":t=this._connectors.webSocket?.socket?.url.search("binaryMode=true")!=-1?"protobuf":"text"),{UserId:this._userId+(this._userId>0?"":"(guest)"),"Guest userId":this._guestMode&&this._guestUserId!==0?this._guestUserId:"-","Browser online":navigator.onLine?"Y":"N",Connect:this.isConnected()?"Y":"N","Server type":this.isSharedMode()?"cloud":"local","WebSocket supported":this.isWebSocketSupported()?"Y":"N","WebSocket connected":this._connectors.webSocket&&this._connectors.webSocket.connected?"Y":"N","WebSocket mode":t,"Try connect":this._reconnectTimeout?"Y":"N","Try number":this._connectionAttempt,Path:this.connector?.connectionPath||"-",...e,"Last message":this._session.mid||"-","Session history":this._session.history,"Watch tags":this._watchTagsQueue.entries()}}getConnectionPath(e){let t;const n={};switch(e){case te.WebSocket:t=this._isSecure?this._config?.server.websocket_secure:this._config?.server.websocket;break;case te.LongPolling:t=this._isSecure?this._config?.server.long_pooling_secure:this._config?.server.long_polling;break;default:throw new Error(`Unknown connection type ${e}`)}if(!R.isStringFilled(t))throw new Error("Empty path");if(typeof this._config?.jwt=="string"&&this._config?.jwt!=="")n.token=this._config?.jwt;else{const s=[];if(this._config?.channels?.private&&s.push(this._config.channels.private?.id||""),this._config?.channels.private?.id&&s.push(this._config.channels.private.id),this._config?.channels.shared?.id&&s.push(this._config.channels.shared.id),s.length===0)throw new Error("Empty channels");n.CHANNEL_ID=s.join("/")}if(this.isJsonRpc()?n.jsonRpc="true":this.isProtobufSupported()&&(n.binaryMode="true"),this.isSharedMode()){if(!this._config?.clientId)throw new Error("Push-server is in shared mode, but clientId is not set");n.clientId=this._config.clientId}return this._session.mid&&(n.mid=this._session.mid),this._session.tag&&(n.tag=this._session.tag),this._session.time&&(n.time=this._session.time),n.revision=nr,`${t}?${$.buildQueryString(n)}`}getPublicationPath(){const e=this._isSecure?this._config?.server.publish_secure:this._config?.server.publish;if(!e)return"";const t=[];this._config?.channels.private?.id&&t.push(this._config.channels.private.id),this._config?.channels.shared?.id&&t.push(this._config.channels.shared.id);const n={CHANNEL_ID:t.join("/")};return e+"?"+$.buildQueryString(n)}isConnected(){return this.connector?this.connector.connected:!1}isWebSocketSupported(){return typeof window.WebSocket<"u"}isWebSocketAllowed(){return this._sharedConfig.isWebSocketBlocked()?!1:this.isWebSocketEnabled()}isWebSocketEnabled(){return!this.isWebSocketSupported()||!this._config||!this._config.server?!1:this._config.server.websocket_enabled}isPublishingSupported(){return this.getServerVersion()>3}isPublishingEnabled(){return this.isPublishingSupported()?this._config?.server.publish_enabled===!0:!1}isProtobufSupported(){return this.getServerVersion()==4&&!vi.isIE()}isJsonRpc(){return this.getServerVersion()>=5}isSharedMode(){return this.getServerMode()===gn.Shared}emit(e){if(e.type==Re.Server||e.type==Re.Client){if(typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]={}),typeof e.moduleId>"u")throw new TypeError(`${$.getDateForLog()}: Pull.emit: parameter moduleId is not specified`);return typeof this._subscribers[e.type][e.moduleId]>"u"&&(this._subscribers[e.type][e.moduleId]={callbacks:[],commands:{}}),this._subscribers[e.type][e.moduleId].callbacks.length>0&&this._subscribers[e.type][e.moduleId].callbacks.forEach(t=>{t(e.data,{type:e.type,moduleId:e.moduleId})}),!(typeof e.data>"u")&&!(typeof e.data.command>"u")&&this._subscribers[e.type][e.moduleId].commands[e.data.command]&&this._subscribers[e.type][e.moduleId].commands[e.data.command].length>0&&this._subscribers[e.type][e.moduleId].commands[e.data.command].forEach(t=>{typeof e.data>"u"||t(e.data.params,e.data.extra,e.data.command,{type:e.type,moduleId:e.moduleId})}),!0}else return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]=[]),this._subscribers[e.type].length<=0||this._subscribers[e.type].forEach(t=>{t(e.data,{type:e.type})}),!0}broadcastMessage(e){const t=e.module_id=e.module_id.toLowerCase(),n=e.command;e.extra||(e.extra={}),e.extra.server_time_unix&&(e.extra.server_time_ago=(Date.now()-e.extra.server_time_unix*1e3)/1e3-(this._config?.server.timeShift||0),e.extra.server_time_ago=Math.max(e.extra.server_time_ago,0)),this.logMessage(e);try{e.extra.sender&&e.extra.sender.type===br.Client?(this.onCustomEvent("onPullClientEvent-"+t,[n,e.params,e.extra],!0),this.onCustomEvent("onPullClientEvent",[t,n,e.params,e.extra],!0),this.emit({type:Re.Client,moduleId:t,data:{command:n,params:R.clone(e.params),extra:R.clone(e.extra)}})):t==="pull"?this.handleInternalPullEvent(n,e):t=="online"?((e?.extra?.server_time_ago||0)<240&&(this.onCustomEvent("onPullOnlineEvent",[n,e.params,e.extra],!0),this.emit({type:Re.Online,data:{command:n,params:R.clone(e.params),extra:R.clone(e.extra)}})),n==="userStatusChange"&&this.emitUserStatusChange(e.params.user_id,e.params.online)):(this.onCustomEvent("onPullEvent-"+t,[n,e.params,e.extra],!0),this.onCustomEvent("onPullEvent",[t,n,e.params,e.extra],!0),this.emit({type:Re.Server,moduleId:t,data:{command:n,params:R.clone(e.params),extra:R.clone(e.extra)}}))}catch(s){this.getLogger().warn(`
25
31
  ========= PULL ERROR ===========
26
32
  Error type: broadcastMessages execute error
27
33
  Error event: `,s,`
28
34
  Message: `,e,`
29
35
  ================================
30
- `)}e.extra&&e.extra.revision_web&&this.checkRevision(W.toInteger(e.extra.revision_web))}broadcastMessages(e){for(const t of e)this.broadcastMessage(t)}async sendMessageBatch(e){if(!this.isPublishingEnabled())return this.getLogger().error("Client publishing is not supported or is disabled"),Promise.reject(new Error("Client publishing is not supported or is disabled"));if(this.isJsonRpc()){const t=this._jsonRpcAdapter?.createPublishRequest(e);return this.connector?.send(JSON.stringify(t)),Promise.resolve(!0)}else{const t={};for(const n of e)if(typeof n.userList<"u")for(const s of n.userList){const i=Number(s);t[i]=i}this._channelManager?.getPublicIds(Object.values(t)).then(n=>{const s=this.connector?.send(this.encodeMessageBatch(e,n));return Promise.resolve(s)})}}encodeMessageBatch(e,t){const n=[];e.forEach(i=>{const o=i.body;let c=[];if(i.userList&&(c=this.createMessageReceivers(i.userList,t)),i.channelList){if(!R.isArray(i.channelList))throw new TypeError("messageFields.publicChannels must be an array");i.channelList.forEach(u=>{let l,h;if(typeof u=="string"&&u.includes(".")){const f=u.toString().split(".");l=f[0],h=f[1]}else if(typeof u=="object"&&"publicId"in u&&"signature"in u)l=u?.publicId,h=u?.signature;else throw new Error(`Public channel MUST be either a string, formatted like "{publicId}.{signature}" or an object with fields 'publicId' and 'signature'`);c.push(Po.create({id:this.encodeId(l),signature:this.encodeId(h)}))})}const a=Oh.create({receivers:c,body:JSON.stringify(o),expiry:i.expiry||0});n.push(a)});const s=Fo.create({requests:[{incomingMessages:{messages:n}}]});return Fo.encode(s).finish()}createMessageReceivers(e,t){const n=[];for(const s of e){if(!t[s]||!t[s].publicId)throw new Error(`Could not determine public id for user ${s}`);n.push(Po.create({id:this.encodeId(t[s].publicId),signature:this.encodeId(t[s].signature)}))}return n}emitUserStatusChange(e,t){if(this._userStatusCallbacks[e])for(const n of this._userStatusCallbacks[e])n({userId:e,isOnline:t})}restoreUserStatusSubscription(){for(const e in this._userStatusCallbacks)this._userStatusCallbacks.hasOwnProperty(e)&&this._userStatusCallbacks[e].length>0&&this._jsonRpcAdapter?.executeOutgoingRpcCommand(He.SubscribeStatusChange,{userId:e})}async loadConfig(e){if(this._config){if(this.isConfigActual(this._config)&&this.checkRevision(this._config.api.revision_web))return Promise.resolve(this._config);this._config=Object.assign({},Bo)}else{this._config=Object.assign({},Bo);let t;if(this._storage&&(t=this._storage.get(Re.PullConfig,null)),this.isConfigActual(t)&&this.checkRevision(t.api.revision_web))return Promise.resolve(t);this._storage&&this._storage.remove(Re.PullConfig)}return new Promise((t,n)=>{this._restClient.getHttpClient().setLogTag(e),this._restClient.callMethod(this._configGetMethod,{CACHE:"N"}).then(s=>{const i=s.getData().result,o=Math.floor((Date.now()-new Date(i.serverTime).getTime())/1e3);delete i.serverTime;const c=Object.assign({},i);c.server.timeShift=o,t(c)}).catch(s=>{(s?.answerError?.error==="AUTHORIZE_ERROR"||s?.answerError?.error==="WRONG_AUTH_TYPE")&&(s.status=403),n(s)}).finally(()=>{this._restClient.getHttpClient().clearLogTag()})})}isConfigActual(e){if(!R.isPlainObject(e)||Number(e.server.config_timestamp)!==this._configTimestamp)return!1;const t=new Date;if(R.isNumber(e.exp)&&e.exp>0&&e.exp<t.getTime()/1e3||Object.keys(e.channels).length===0)return!1;for(const n in e.channels){if(!e.channels.hasOwnProperty(n))continue;const s=e.channels[n];if(new Date(s.end)<t)return!1}return!0}startCheckConfig(){this._checkInterval&&(clearInterval(this._checkInterval),this._checkInterval=null),this._checkInterval=setInterval(this.checkConfig.bind(this),Rh)}stopCheckConfig(){this._checkInterval&&clearInterval(this._checkInterval),this._checkInterval=null}checkConfig(){if(this.isConfigActual(this._config)){if(!this.checkRevision(W.toInteger(this._config?.api.revision_web)))return!1}else this.logToConsole("Stale config detected. Restarting"),this.restart(ve.CONFIG_EXPIRED,"config expired");return!0}setConfig(e,t){for(const n in e)e.hasOwnProperty(n)&&this._config?.hasOwnProperty(n)&&(this._config[n]=e[n]);if(e.publicChannels&&this.setPublicIds(Object.values(e.publicChannels)),this._configTimestamp=Number(e.server.config_timestamp),this._storage&&t)try{this._storage.set(Re.PullConfig,e)}catch(n){localStorage&&localStorage.removeItem&&localStorage.removeItem("history"),this.getLogger().error(`${W.getDateForLog()}: Pull: Could not cache config in local storage. Error: `,n)}}setPublicIds(e){this._channelManager.setPublicIds(e)}checkRevision(e){return this._skipCheckRevision?!0:e>0&&e!==ir?(this._enabled=!1,this.showNotification("PULL_OLD_REVISION"),this.disconnect(ve.NORMAL_CLOSURE,"check_revision"),this.onCustomEvent("onPullRevisionUp",[e,ir]),this.emit({type:Fe.Revision,data:{server:e,client:ir}}),this.logToConsole(`Pull revision changed from ${ir} to ${e}. Reload required`),!1):!0}disconnect(e,t){this.connector&&(this._isManualDisconnect=!0,this.connector.disconnect(e,t))}restoreWebSocketConnection(){this._connectionType!==te.WebSocket&&this._connectors.webSocket?.connect()}scheduleReconnect(e=0){this._enabled&&(e||(e=this.getConnectionAttemptDelay(this._connectionAttempt)),this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this.logToConsole(`Pull: scheduling reconnection in ${e} seconds; attempt # ${this._connectionAttempt}`),this._reconnectTimeout=setTimeout(()=>{this.connect().catch(t=>{this.getLogger().error(t)})},e*1e3))}scheduleRestoreWebSocketConnection(){this.logToConsole(`Pull: scheduling restoration of websocket connection in ${xo} seconds`),!this._restoreWebSocketTimeout&&(this._restoreWebSocketTimeout=setTimeout(()=>{this._restoreWebSocketTimeout=0,this.restoreWebSocketConnection()},xo*1e3))}async connect(){return this._enabled?this.connector?.connected?Promise.resolve():(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this.status=Le.Connecting,this._connectionAttempt++,new Promise((e,t)=>{this._connectPromise={resolve:e,reject:t},this.connector?.connect()})):Promise.reject()}scheduleRestart(e,t,n=0){this._restartTimeout&&(clearTimeout(this._restartTimeout),this._restartTimeout=null),n<1&&(n=Math.ceil(Math.random()*30)+5),this._restartTimeout=setTimeout(()=>this.restart(e,t),n*1e3)}handleRpcIncomingMessage(e){this._session.mid=e.mid;const t=e.body;return e.body.extra||(t.extra={}),t.extra.sender=e.sender,"user_params"in e&&R.isPlainObject(e.user_params)&&Object.assign(t.params,e.user_params),"dictionary"in e&&R.isPlainObject(e.dictionary)&&Object.assign(t.params,e.dictionary),this.checkDuplicate(e.mid)&&(this.addMessageToStat(t),this.trimDuplicates(),this.broadcastMessage(t)),this.connector?.send(`mack:${e.mid}`),{}}handleIncomingEvents(e){const t=[];if(e.length===0){this._session.mid=null;return}for(const n of e)this.updateSessionFromEvent(n),!(n.mid&&!this.checkDuplicate(n.mid))&&(this.addMessageToStat(n.text),t.push(n.text));this.trimDuplicates(),this.broadcastMessages(t)}updateSessionFromEvent(e){this._session.mid=e.mid||null,this._session.tag=e.tag||null,this._session.time=e.time||null}handleInternalPullEvent(e,t){switch(e.toUpperCase()){case Kt.CHANNEL_EXPIRE:{if(t.params.action==="reconnect"){const n=t.params?.channel.type;n==="private"&&this._config?.channels?.private&&(this._config.channels.private=t.params.new_channel,this.logToConsole(`Pull: new config for ${t.params.channel.type} channel set: ${this._config.channels.private}`)),n==="shared"&&this._config?.channels?.shared&&(this._config.channels.shared=t.params.new_channel,this.logToConsole(`Pull: new config for ${t.params.channel.type} channel set: ${this._config.channels.shared}`)),this.reconnect(ve.CONFIG_REPLACED,"config was replaced")}else this.restart(ve.CHANNEL_EXPIRED,"channel expired received");break}case Kt.CONFIG_EXPIRE:{this.restart(ve.CONFIG_EXPIRED,"config expired received");break}case Kt.SERVER_RESTART:{this.reconnect(ve.SERVER_RESTARTED,"server was restarted",15);break}}}onIncomingMessage(e){if(this.isJsonRpc())e===Lh?this.onJsonRpcPing():this._jsonRpcAdapter?.parseJsonRpcMessage(e);else{const t=this.extractMessages(e);this.handleIncomingEvents(t)}}onLongPollingOpen(){this._unloading=!1,this._starting=!1,this._connectionAttempt=0,this._isManualDisconnect=!1,this.status=Le.Online,this.logToConsole("Pull: Long polling connection with push-server opened"),this.isWebSocketEnabled()&&this.scheduleRestoreWebSocketConnection(),this._connectPromise&&this._connectPromise.resolve({})}onLongPollingDisconnect(e){this._connectionType===te.LongPolling&&(this.status=Le.Offline),this.logToConsole(`Pull: Long polling connection with push-server closed. Code: ${e.code}, reason: ${e.reason}`),this._isManualDisconnect||this.scheduleReconnect(),this._isManualDisconnect=!1,this.clearPingWaitTimeout()}onLongPollingError(e){this._starting=!1,this._connectionType===te.LongPolling&&(this.status=Le.Offline),this.getLogger().error(`${W.getDateForLog()}: Pull: Long polling connection error `,e),this.scheduleReconnect(),this._connectPromise&&this._connectPromise.reject(e),this.clearPingWaitTimeout()}onWebSocketBlockChanged(e){const t=e.isWebSocketBlocked;t&&this._connectionType===te.WebSocket&&!this.isConnected()?(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this._connectionAttempt=0,this._connectionType=te.LongPolling,this.scheduleReconnect(1)):!t&&this._connectionType===te.LongPolling&&(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this._restoreWebSocketTimeout&&(clearTimeout(this._restoreWebSocketTimeout),this._restoreWebSocketTimeout=null),this._connectionAttempt=0,this._connectionType=te.WebSocket,this.scheduleReconnect(1))}onWebSocketOpen(){this._unloading=!1,this._starting=!1,this._connectionAttempt=0,this._isManualDisconnect=!1,this.status=Le.Online,this._sharedConfig.setWebSocketBlocked(!1),this._sharedConfig.setLongPollingBlocked(!0),this._connectionType==te.LongPolling&&(this._connectionType=te.WebSocket,this._connectors.longPolling?.disconnect(ve.CONFIG_REPLACED,"Fire at onWebSocketOpen")),this._restoreWebSocketTimeout&&(clearTimeout(this._restoreWebSocketTimeout),this._restoreWebSocketTimeout=null),this.logToConsole("Pull: Websocket connection with push-server opened"),this._connectPromise&&this._connectPromise.resolve({}),this.restoreUserStatusSubscription()}onWebSocketDisconnect(e){this._connectionType===te.WebSocket&&(this.status=Le.Offline),this.logToConsole(`Pull: Websocket connection with push-server closed. Code: ${e.code}, reason: ${e.reason}`,!0),this._isManualDisconnect||(e.code==ve.WRONG_CHANNEL_ID?this.scheduleRestart(ve.WRONG_CHANNEL_ID,"wrong channel signature"):this.scheduleReconnect()),this._sharedConfig.setLongPollingBlocked(!0),this._isManualDisconnect=!1,this.clearPingWaitTimeout()}onWebSocketError(e){this._starting=!1,this._connectionType===te.WebSocket&&(this.status=Le.Offline),this.getLogger().error(`${W.getDateForLog()}: Pull: WebSocket connection error `,e),this.scheduleReconnect(),this._connectPromise&&this._connectPromise.reject(e),this.clearPingWaitTimeout()}extractMessages(e){if(e instanceof ArrayBuffer)return this.extractProtobufMessages(e);if(R.isStringFilled(e))return this.extractPlainTextMessages(e);throw new Error("Error pullEvent type")}extractProtobufMessages(e){const t=[];try{const n=Th.decode(new Uint8Array(e));for(let s=0;s<n.responses.length;s++){const i=n.responses[s];if(i.command!=="outgoingMessages")continue;const o=i.outgoingMessages.messages;for(const c of o){let a;try{a=JSON.parse(c.body)}catch(l){this.getLogger().error(`${W.getDateForLog()}: Pull: Could not parse message body `,l);continue}a.extra||(a.extra={}),a.extra.sender={type:c.sender.type},c.sender.id instanceof Uint8Array&&(a.extra.sender.id=this.decodeId(c.sender.id));const u={mid:this.decodeId(c.id),text:a};t.push(u)}}}catch(n){this.getLogger().error(`${W.getDateForLog()}: Pull: Could not parse message `,n)}return t}extractPlainTextMessages(e){const t=[],n=e.match(/#!NGINXNMS!#(.*?)#!NGINXNME!#/gm);if(n===null){const s=`
36
+ `)}e.extra&&e.extra.revision_web&&this.checkRevision($.toInteger(e.extra.revision_web))}broadcastMessages(e){for(const t of e)this.broadcastMessage(t)}async sendMessageBatch(e){if(!this.isPublishingEnabled())return this.getLogger().error("Client publishing is not supported or is disabled"),Promise.reject(new Error("Client publishing is not supported or is disabled"));if(this.isJsonRpc()){const t=this._jsonRpcAdapter?.createPublishRequest(e);return this.connector?.send(JSON.stringify(t)),Promise.resolve(!0)}else{const t={};for(const n of e)if(typeof n.userList<"u")for(const s of n.userList){const i=Number(s);t[i]=i}this._channelManager?.getPublicIds(Object.values(t)).then(n=>{const s=this.connector?.send(this.encodeMessageBatch(e,n));return Promise.resolve(s)})}}encodeMessageBatch(e,t){const n=[];e.forEach(i=>{const o=i.body;let a=[];if(i.userList&&(a=this.createMessageReceivers(i.userList,t)),i.channelList){if(!R.isArray(i.channelList))throw new TypeError("messageFields.publicChannels must be an array");i.channelList.forEach(u=>{let c,f;if(typeof u=="string"&&u.includes(".")){const h=u.toString().split(".");c=h[0],f=h[1]}else if(typeof u=="object"&&"publicId"in u&&"signature"in u)c=u?.publicId,f=u?.signature;else throw new Error(`Public channel MUST be either a string, formatted like "{publicId}.{signature}" or an object with fields 'publicId' and 'signature'`);a.push(Fo.create({id:this.encodeId(c),signature:this.encodeId(f)}))})}const l=Eh.create({receivers:a,body:JSON.stringify(o),expiry:i.expiry||0});n.push(l)});const s=Ro.create({requests:[{incomingMessages:{messages:n}}]});return Ro.encode(s).finish()}createMessageReceivers(e,t){const n=[];for(const s of e){if(!t[s]||!t[s].publicId)throw new Error(`Could not determine public id for user ${s}`);n.push(Fo.create({id:this.encodeId(t[s].publicId),signature:this.encodeId(t[s].signature)}))}return n}emitUserStatusChange(e,t){if(this._userStatusCallbacks[e])for(const n of this._userStatusCallbacks[e])n({userId:e,isOnline:t})}restoreUserStatusSubscription(){for(const e in this._userStatusCallbacks)this._userStatusCallbacks.hasOwnProperty(e)&&this._userStatusCallbacks[e].length>0&&this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.SubscribeStatusChange,{userId:e})}async loadConfig(e){if(this._config){if(this.isConfigActual(this._config)&&this.checkRevision(this._config.api.revision_web))return Promise.resolve(this._config);this._config=Object.assign({},Do)}else{this._config=Object.assign({},Do);let t;if(this._storage&&(t=this._storage.get(Ce.PullConfig,null)),this.isConfigActual(t)&&this.checkRevision(t.api.revision_web))return Promise.resolve(t);this._storage&&this._storage.remove(Ce.PullConfig)}return new Promise((t,n)=>{this._restClient.getHttpClient().setLogTag(e),this._restClient.callMethod(this._configGetMethod,{CACHE:"N"}).then(s=>{const i=s.getData().result,o=Math.floor((Date.now()-new Date(i.serverTime).getTime())/1e3);delete i.serverTime;const a=Object.assign({},i);a.server.timeShift=o,t(a)}).catch(s=>{(s?.answerError?.error==="AUTHORIZE_ERROR"||s?.answerError?.error==="WRONG_AUTH_TYPE")&&(s.status=403),n(s)}).finally(()=>{this._restClient.getHttpClient().clearLogTag()})})}isConfigActual(e){if(!R.isPlainObject(e)||Number(e.server.config_timestamp)!==this._configTimestamp)return!1;const t=new Date;if(R.isNumber(e.exp)&&e.exp>0&&e.exp<t.getTime()/1e3||Object.keys(e.channels).length===0)return!1;for(const n in e.channels){if(!e.channels.hasOwnProperty(n))continue;const s=e.channels[n];if(new Date(s.end)<t)return!1}return!0}startCheckConfig(){this._checkInterval&&(clearInterval(this._checkInterval),this._checkInterval=null),this._checkInterval=setInterval(this.checkConfig.bind(this),Ch)}stopCheckConfig(){this._checkInterval&&clearInterval(this._checkInterval),this._checkInterval=null}checkConfig(){if(this.isConfigActual(this._config)){if(!this.checkRevision($.toInteger(this._config?.api.revision_web)))return!1}else this.logToConsole("Stale config detected. Restarting"),this.restart(Se.CONFIG_EXPIRED,"config expired");return!0}setConfig(e,t){for(const n in e)e.hasOwnProperty(n)&&this._config?.hasOwnProperty(n)&&(this._config[n]=e[n]);if(e.publicChannels&&this.setPublicIds(Object.values(e.publicChannels)),this._configTimestamp=Number(e.server.config_timestamp),this._storage&&t)try{this._storage.set(Ce.PullConfig,e)}catch(n){localStorage&&localStorage.removeItem&&localStorage.removeItem("history"),this.getLogger().error(`${$.getDateForLog()}: Pull: Could not cache config in local storage. Error: `,n)}}setPublicIds(e){this._channelManager.setPublicIds(e)}checkRevision(e){return this._skipCheckRevision?!0:e>0&&e!==nr?(this._enabled=!1,this.showNotification("PULL_OLD_REVISION"),this.disconnect(Se.NORMAL_CLOSURE,"check_revision"),this.onCustomEvent("onPullRevisionUp",[e,nr]),this.emit({type:Re.Revision,data:{server:e,client:nr}}),this.logToConsole(`Pull revision changed from ${nr} to ${e}. Reload required`),!1):!0}disconnect(e,t){this.connector&&(this._isManualDisconnect=!0,this.connector.disconnect(e,t))}restoreWebSocketConnection(){this._connectionType!==te.WebSocket&&this._connectors.webSocket?.connect()}scheduleReconnect(e=0){this._enabled&&(e||(e=this.getConnectionAttemptDelay(this._connectionAttempt)),this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this.logToConsole(`Pull: scheduling reconnection in ${e} seconds; attempt # ${this._connectionAttempt}`),this._reconnectTimeout=setTimeout(()=>{this.connect().catch(t=>{this.getLogger().error(t)})},e*1e3))}scheduleRestoreWebSocketConnection(){this.logToConsole(`Pull: scheduling restoration of websocket connection in ${Mo} seconds`),!this._restoreWebSocketTimeout&&(this._restoreWebSocketTimeout=setTimeout(()=>{this._restoreWebSocketTimeout=0,this.restoreWebSocketConnection()},Mo*1e3))}async connect(){return this._enabled?this.connector?.connected?Promise.resolve():(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this.status=Ne.Connecting,this._connectionAttempt++,new Promise((e,t)=>{this._connectPromise={resolve:e,reject:t},this.connector?.connect()})):Promise.reject()}scheduleRestart(e,t,n=0){this._restartTimeout&&(clearTimeout(this._restartTimeout),this._restartTimeout=null),n<1&&(n=Math.ceil(Math.random()*30)+5),this._restartTimeout=setTimeout(()=>this.restart(e,t),n*1e3)}handleRpcIncomingMessage(e){this._session.mid=e.mid;const t=e.body;return e.body.extra||(t.extra={}),t.extra.sender=e.sender,"user_params"in e&&R.isPlainObject(e.user_params)&&Object.assign(t.params,e.user_params),"dictionary"in e&&R.isPlainObject(e.dictionary)&&Object.assign(t.params,e.dictionary),this.checkDuplicate(e.mid)&&(this.addMessageToStat(t),this.trimDuplicates(),this.broadcastMessage(t)),this.connector?.send(`mack:${e.mid}`),{}}handleIncomingEvents(e){const t=[];if(e.length===0){this._session.mid=null;return}for(const n of e)this.updateSessionFromEvent(n),!(n.mid&&!this.checkDuplicate(n.mid))&&(this.addMessageToStat(n.text),t.push(n.text));this.trimDuplicates(),this.broadcastMessages(t)}updateSessionFromEvent(e){this._session.mid=e.mid||null,this._session.tag=e.tag||null,this._session.time=e.time||null}handleInternalPullEvent(e,t){switch(e.toUpperCase()){case Yt.CHANNEL_EXPIRE:{if(t.params.action==="reconnect"){const n=t.params?.channel.type;n==="private"&&this._config?.channels?.private&&(this._config.channels.private=t.params.new_channel,this.logToConsole(`Pull: new config for ${t.params.channel.type} channel set: ${this._config.channels.private}`)),n==="shared"&&this._config?.channels?.shared&&(this._config.channels.shared=t.params.new_channel,this.logToConsole(`Pull: new config for ${t.params.channel.type} channel set: ${this._config.channels.shared}`)),this.reconnect(Se.CONFIG_REPLACED,"config was replaced")}else this.restart(Se.CHANNEL_EXPIRED,"channel expired received");break}case Yt.CONFIG_EXPIRE:{this.restart(Se.CONFIG_EXPIRED,"config expired received");break}case Yt.SERVER_RESTART:{this.reconnect(Se.SERVER_RESTARTED,"server was restarted",15);break}}}onIncomingMessage(e){if(this.isJsonRpc())e===Rh?this.onJsonRpcPing():this._jsonRpcAdapter?.parseJsonRpcMessage(e);else{const t=this.extractMessages(e);this.handleIncomingEvents(t)}}onLongPollingOpen(){this._unloading=!1,this._starting=!1,this._connectionAttempt=0,this._isManualDisconnect=!1,this.status=Ne.Online,this.logToConsole("Pull: Long polling connection with push-server opened"),this.isWebSocketEnabled()&&this.scheduleRestoreWebSocketConnection(),this._connectPromise&&this._connectPromise.resolve({})}onLongPollingDisconnect(e){this._connectionType===te.LongPolling&&(this.status=Ne.Offline),this.logToConsole(`Pull: Long polling connection with push-server closed. Code: ${e.code}, reason: ${e.reason}`),this._isManualDisconnect||this.scheduleReconnect(),this._isManualDisconnect=!1,this.clearPingWaitTimeout()}onLongPollingError(e){this._starting=!1,this._connectionType===te.LongPolling&&(this.status=Ne.Offline),this.getLogger().error(`${$.getDateForLog()}: Pull: Long polling connection error `,e),this.scheduleReconnect(),this._connectPromise&&this._connectPromise.reject(e),this.clearPingWaitTimeout()}onWebSocketBlockChanged(e){const t=e.isWebSocketBlocked;t&&this._connectionType===te.WebSocket&&!this.isConnected()?(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this._connectionAttempt=0,this._connectionType=te.LongPolling,this.scheduleReconnect(1)):!t&&this._connectionType===te.LongPolling&&(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this._restoreWebSocketTimeout&&(clearTimeout(this._restoreWebSocketTimeout),this._restoreWebSocketTimeout=null),this._connectionAttempt=0,this._connectionType=te.WebSocket,this.scheduleReconnect(1))}onWebSocketOpen(){this._unloading=!1,this._starting=!1,this._connectionAttempt=0,this._isManualDisconnect=!1,this.status=Ne.Online,this._sharedConfig.setWebSocketBlocked(!1),this._sharedConfig.setLongPollingBlocked(!0),this._connectionType==te.LongPolling&&(this._connectionType=te.WebSocket,this._connectors.longPolling?.disconnect(Se.CONFIG_REPLACED,"Fire at onWebSocketOpen")),this._restoreWebSocketTimeout&&(clearTimeout(this._restoreWebSocketTimeout),this._restoreWebSocketTimeout=null),this.logToConsole("Pull: Websocket connection with push-server opened"),this._connectPromise&&this._connectPromise.resolve({}),this.restoreUserStatusSubscription()}onWebSocketDisconnect(e){this._connectionType===te.WebSocket&&(this.status=Ne.Offline),this.logToConsole(`Pull: Websocket connection with push-server closed. Code: ${e.code}, reason: ${e.reason}`,!0),this._isManualDisconnect||(e.code==Se.WRONG_CHANNEL_ID?this.scheduleRestart(Se.WRONG_CHANNEL_ID,"wrong channel signature"):this.scheduleReconnect()),this._sharedConfig.setLongPollingBlocked(!0),this._isManualDisconnect=!1,this.clearPingWaitTimeout()}onWebSocketError(e){this._starting=!1,this._connectionType===te.WebSocket&&(this.status=Ne.Offline),this.getLogger().error(`${$.getDateForLog()}: Pull: WebSocket connection error `,e),this.scheduleReconnect(),this._connectPromise&&this._connectPromise.reject(e),this.clearPingWaitTimeout()}extractMessages(e){if(e instanceof ArrayBuffer)return this.extractProtobufMessages(e);if(R.isStringFilled(e))return this.extractPlainTextMessages(e);throw new Error("Error pullEvent type")}extractProtobufMessages(e){const t=[];try{const n=kh.decode(new Uint8Array(e));for(let s=0;s<n.responses.length;s++){const i=n.responses[s];if(i.command!=="outgoingMessages")continue;const o=i.outgoingMessages.messages;for(const a of o){let l;try{l=JSON.parse(a.body)}catch(c){this.getLogger().error(`${$.getDateForLog()}: Pull: Could not parse message body `,c);continue}l.extra||(l.extra={}),l.extra.sender={type:a.sender.type},a.sender.id instanceof Uint8Array&&(l.extra.sender.id=this.decodeId(a.sender.id));const u={mid:this.decodeId(a.id),text:l};t.push(u)}}}catch(n){this.getLogger().error(`${$.getDateForLog()}: Pull: Could not parse message `,n)}return t}extractPlainTextMessages(e){const t=[],n=e.match(/#!NGINXNMS!#(.*?)#!NGINXNME!#/gm);if(n===null){const s=`
31
37
  ========= PULL ERROR ===========
32
38
  Error type: parseResponse error parsing message
33
39
 
34
40
  Data string: ${e}
35
41
  ================================
36
42
 
37
- `;return this.getLogger().warn(s),[]}for(let s=0;s<n.length;s++){if(n[s]=n[s].substring(12,n[s].length-12),n[s].length<=0)continue;let i;try{i=JSON.parse(n[s])}catch{continue}t.push(i)}return t}decodeId(e){let t="";for(const n of e){const s=n.toString(16);s.length===1&&(t+="0"),t+=s}return t}encodeId(e){if(!e)return new Uint8Array;const t=[];for(let n=0;n<e.length;n+=2)t.push(Number.parseInt(e.slice(n,n+2),16));return new Uint8Array(t)}onOffline(){this.disconnect(ve.NORMAL_CLOSURE,"offline")}onOnline(){this.connect().catch(e=>{this.getLogger().error(e)})}onBeforeUnload(){this._unloading=!0;const e=R.clone(this.session);if(e.ttl=Date.now()+Ph*1e3,this._storage)try{this._storage.set(Uo,JSON.stringify(e))}catch(t){this.getLogger().error(`${W.getDateForLog()}: Pull: Could not save session info in local storage. Error: `,t)}this.scheduleReconnect(15)}sendPullStatusDelayed(e,t){this._offlineTimeout&&(clearTimeout(this._offlineTimeout),this._offlineTimeout=null),this._offlineTimeout=setTimeout(()=>{this._offlineTimeout=null,this.sendPullStatus(e)},t)}sendPullStatus(e){this._unloading||(this.onCustomEvent("onPullStatus",[e]),this.emit({type:Fe.Status,data:{status:e}}))}extendWatch(e,t=!1){this._watchTagsQueue.get(e)||(this._watchTagsQueue.set(e,!0),t&&this.updateWatch(t))}updateWatch(e=!1){this._watchUpdateTimeout&&(clearTimeout(this._watchUpdateTimeout),this._watchUpdateTimeout=null),this._watchUpdateTimeout=setTimeout(()=>{const t=[...this._watchTagsQueue.keys()];t.length>0?this._restClient.callMethod("pull.watch.extend",{tags:t}).then(n=>{const s=n.getData().result;for(const i of s)this.clearWatch(i);this.updateWatch()}).catch(()=>{this.updateWatch()}):this.updateWatch()},e?this._watchForceUpdateInterval:this._watchUpdateInterval)}clearWatch(e){this._watchTagsQueue.delete(e)}onJsonRpcPing(){this.updatePingWaitTimeout(),this.connector?.send(Fh)}updatePingWaitTimeout(){this._pingWaitTimeout&&(clearTimeout(this._pingWaitTimeout),this._pingWaitTimeout=null),this._pingWaitTimeout=setTimeout(this._onPingTimeoutHandler,jo*2*1e3)}clearPingWaitTimeout(){this._pingWaitTimeout&&clearTimeout(this._pingWaitTimeout),this._pingWaitTimeout=null}onPingTimeout(){this._pingWaitTimeout=null,!(!this._enabled||!this.isConnected())&&(this.getLogger().warn(`No pings are received in ${jo*2} seconds. Reconnecting`),this.disconnect(ve.STUCK,"connection stuck"),this.scheduleReconnect())}getConnectionAttemptDelay(e){let t;return e<1?t=.5:e<3?t=15:e<5?t=45:e<10?t=600:t=3600,t+t*Math.random()*.2}checkDuplicate(e){return this._session.lastMessageIds.includes(e)?(this.getLogger().warn(`Duplicate message ${e} skipped`),!1):(this._session.lastMessageIds.push(e),!0)}trimDuplicates(){this._session.lastMessageIds.length>Do&&(this._session.lastMessageIds=this._session.lastMessageIds.slice(-Do))}logMessage(e){this._debug&&(e.extra?.sender&&e.extra.sender.type===Tr.Client?this.getLogger().info(`onPullClientEvent-${e.module_id}`,e.command,e.params,e.extra):e.module_id=="online"?this.getLogger().info("onPullOnlineEvent",e.command,e.params,e.extra):this.getLogger().info("onPullEvent",e.module_id,e.command,e.params,e.extra))}logToConsole(e,t=!1){(this._loggingEnabled||t)&&this.getLogger().log(`${W.getDateForLog()}: ${e}`)}addMessageToStat(e){this._session.history[e.module_id]||(this._session.history[e.module_id]={}),this._session.history[e.module_id][e.command]||(this.session.history[e.module_id][e.command]=0),this._session.history[e.module_id][e.command]++,this._session.messageCount++}showNotification(e){this.getLogger().warn(e)}onCustomEvent(e,t,n=!1){}}class Mh{_b24;_logger=null;_isInit=!1;_profile=null;_app=null;_payment=null;_license=null;_currency=null;_appOptions=null;_userOptions=null;_b24PullClient=null;_pullClientUnSubscribe=[];_pullClientModuleId="";constructor(e){this._b24=e,this.setLogger(this._b24.getLogger())}setLogger(e){this._logger=e,this._profile!==null&&this._profile.setLogger(this.getLogger()),this._app!==null&&this._app.setLogger(this.getLogger()),this._payment!==null&&this._payment.setLogger(this.getLogger()),this._license!==null&&this._license.setLogger(this.getLogger()),this._currency!==null&&this._currency.setLogger(this.getLogger()),this._appOptions!==null&&this._appOptions.setLogger(this.getLogger()),this._userOptions!==null&&this._userOptions.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=be.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){this._destroyPullClient()}async loadData(e=[ee.App,ee.Profile]){const t={[ee.App]:{method:"app.info"},[ee.Profile]:{method:"profile"},[ee.Currency]:[{method:"crm.currency.base.get"},{method:"crm.currency.list"}],[ee.AppOptions]:{method:"app.option.get"},[ee.UserOptions]:{method:"user.option.get"}},n=e.reduce((s,i)=>{if(t[i])if(Array.isArray(t[i]))for(const[o,c]of t[i].entries())s[`get_${i}_${o}`]=c;else s[`get_${i}`]=t[i];return s},{});try{const s=(await this._b24.callBatch(n)).getData();s[`get_${ee.App}`]&&(this._app=await this.parseAppData(s[`get_${ee.App}`]),this._payment=await this.parsePaymentData(s[`get_${ee.App}`]),this._license=await this.parseLicenseData(s[`get_${ee.App}`])),s[`get_${ee.Profile}`]&&(this._profile=await this.parseUserData(s[`get_${ee.Profile}`])),s[`get_${ee.Currency}_0`]&&s[`get_${ee.Currency}_1`]&&(this._currency=await this.parseCurrencyData({currencyBase:s[`get_${ee.Currency}_0`],currencyList:s[`get_${ee.Currency}_1`]})),s[`get_${ee.AppOptions}`]&&(this._appOptions=await this.parseOptionsData("app",s[`get_${ee.AppOptions}`])),s[`get_${ee.UserOptions}`]&&(this._userOptions=await this.parseOptionsData("user",s[`get_${ee.UserOptions}`])),this._isInit=!0}catch(s){throw s instanceof Error?s:(console.error("Error loading data:",s),new Error("Failed to load data"))}}async parseUserData(e){const t=new fh(this._b24);return t.setLogger(this.getLogger()),t.initData({id:Number(e.ID),isAdmin:e.ADMIN===!0,lastName:e?.LAST_NAME||"",name:e?.NAME||"",gender:e?.PERSONAL_GENDER||"",photo:e?.PERSONAL_PHOTO||"",TimeZone:e?.TIME_ZONE||"",TimeZoneOffset:e?.TIME_ZONE_OFFSET}).then(()=>t)}async parseAppData(e){const t=new dh(this._b24);return t.setLogger(this.getLogger()),t.initData({id:Number.parseInt(e.ID),code:e.CODE,version:Number.parseInt(e.VERSION),status:e.STATUS,isInstalled:e.INSTALLED}).then(()=>t)}async parsePaymentData(e){const t=new ph(this._b24);return t.setLogger(this.getLogger()),t.initData({isExpired:e.PAYMENT_EXPIRED==="Y",days:Number.parseInt(e.DAYS||"0")}).then(()=>t)}async parseLicenseData(e){const t=new gh(this._b24);return t.setLogger(this.getLogger()),t.initData({languageId:e.LANGUAGE_ID,license:e.LICENSE,licensePrevious:e.LICENSE_PREVIOUS,licenseType:e.LICENSE_TYPE,licenseFamily:e.LICENSE_FAMILY,isSelfHosted:e.LICENSE.includes("selfhosted")}).then(()=>t)}async parseCurrencyData(e){const t=new mh(this._b24);return t.setLogger(this.getLogger()),t.initData(e).then(()=>t)}async parseOptionsData(e,t){const n=new xn(this._b24,e);return n.setLogger(this.getLogger()),n.initData(t).then(()=>n)}get isInit(){return this._isInit}get forB24Form(){if(this.ensureInitialized(),this._profile===null)throw new Error("B24HelperManager.profileInfo not initialized");if(this._app===null)throw new Error("B24HelperManager.appInfo not initialized");return{app_code:this.appInfo.data.code,app_status:this.appInfo.data.status,payment_expired:this.paymentInfo.data.isExpired?"Y":"N",days:this.paymentInfo.data.days,b24_plan:this.licenseInfo.data.license,c_name:this.profileInfo.data.name,c_last_name:this.profileInfo.data.lastName,hostname:this.hostName}}get hostName(){return this._b24.getTargetOrigin()}get profileInfo(){if(this.ensureInitialized(),this._profile===null)throw new Error("B24HelperManager.profileInfo not initialized");return this._profile}get appInfo(){if(this.ensureInitialized(),this._app===null)throw new Error("B24HelperManager.appInfo not initialized");return this._app}get paymentInfo(){if(this.ensureInitialized(),this._payment===null)throw new Error("B24HelperManager.paymentInfo not initialized");return this._payment}get licenseInfo(){if(this.ensureInitialized(),this._license===null)throw new Error("B24HelperManager.licenseInfo not initialized");return this._license}get currency(){if(this.ensureInitialized(),this._currency===null)throw new Error("B24HelperManager.currency not initialized");return this._currency}get appOptions(){if(this.ensureInitialized(),this._appOptions===null)throw new Error("B24HelperManager.appOptions not initialized");return this._appOptions}get userOptions(){if(this.ensureInitialized(),this._userOptions===null)throw new Error("B24HelperManager.userOptions not initialized");return this._userOptions}get isSelfHosted(){return this.licenseInfo.data.isSelfHosted}get primaryKeyIncrementValue(){return this.isSelfHosted?1:2}get b24SpecificUrl(){return this.isSelfHosted?{[gt.MainSettings]:"/configs/",[gt.UfList]:"/configs/userfield_list.php",[gt.UfPage]:"/configs/userfield.php"}:{[gt.MainSettings]:"/settings/configs/",[gt.UfList]:"/settings/configs/userfield_list.php",[gt.UfPage]:"/settings/configs/userfield.php"}}usePullClient(e="prefix",t){return this._b24PullClient?this:(this.initializePullClient(typeof t>"u"?this.profileInfo.data.id||0:t,e),this)}initializePullClient(e,t="prefix"){this._b24PullClient=new $o({b24:this._b24,restApplication:this._b24.auth.getUniq(t),userId:e})}subscribePullClient(e,t="application"){if(!this._b24PullClient)throw new Error("PullClient not init");return this._pullClientModuleId=t,this._pullClientUnSubscribe.push(this._b24PullClient.subscribe({moduleId:this._pullClientModuleId,callback:e})),this}startPullClient(){if(!this._b24PullClient)throw new Error("PullClient not init");this._b24PullClient.start().catch(e=>{this.getLogger().error(`${W.getDateForLog()}: Pull not running`,e)})}getModuleIdPullClient(){if(!this._b24PullClient)throw new Error("PullClient not init");return this._pullClientModuleId}_destroyPullClient(){for(const e of this._pullClientUnSubscribe)e();this._b24PullClient?.destroy(),this._b24PullClient=null}ensureInitialized(){if(!this._isInit)throw new Error("B24HelperManager not initialized")}}const xh=()=>{let r=!1,e=!1,t=null;return{initB24Helper:async(n,s=[ee.App,ee.Profile])=>(t===null&&(t=new Mh(n)),r?t:t.loadData(s).then(()=>(r=!0,t))),isInitB24Helper:()=>r,destroyB24Helper:()=>{t?.destroy(),t=null,r=!1,e=!1},getB24Helper:()=>{if(t===null)throw new Error("B24HelperManager is not initialized. You need to call initB24Helper first.");return t},usePullClient:()=>{if(t===null)throw new Error("B24HelperManager is not initialized. You need to call initB24Helper first.");t.usePullClient(),e=!0},useSubscribePullClient:(n,s="application")=>{if(!e)throw new Error("PullClient is not initialized. You need to call usePullClient first.");t?.subscribePullClient(n,s)},startPullClient:()=>{if(!e)throw new Error("PullClient is not initialized. You need to call usePullClient first.");t?.startPullClient()}}},Dh=50;let ot=null,xr=!1,Ut=null,Wo=!1,Dr=[],Vo=!1;function Ho(){window.setTimeout(()=>{if(!xr||ot===null){Ho();return}jh(),Dr=[]},Dh)}function jh(){if(Ut!==null)for(const r of Dr)r.reject(Ut);if(!(!xr||ot===null))for(const r of Dr)r.resolve(ot)}async function Uh(){return xr&&ot!==null?Promise.resolve(ot):Wo?(Vo||(Vo=!0,Ho()),new Promise((r,e)=>{Dr.push({resolve:r,reject:e})})):(Wo=!0,new Promise((r,e)=>{const t={DOMAIN:null,PROTOCOL:!1,APP_SID:null,LANG:null};if(window.name){const[n,s,i]=window.name.split("|");t.DOMAIN=n,t.PROTOCOL=Number.parseInt(s)===1,t.APP_SID=i,t.LANG=null}(!t.DOMAIN||!t.APP_SID)&&(Ut=new Error("Unable to initialize Bitrix24Frame library!"),e(Ut)),ot=new No(t),ot.init().then(()=>{xr=!0,r(ot)}).catch(n=>{Ut=n,e(Ut)})}))}j.AbstractB24=Dt,j.AjaxError=Qt,j.AjaxResult=fn,j.AppFrame=ko,j.AuthHookManager=_o,j.AuthManager=Eo,j.B24Frame=No,j.B24Hook=hh,j.B24LangList=Pn,j.B24PullClientManager=$o,j.Browser=_i,j.CloseReasons=ve,j.ConnectionType=te,j.DataType=Hn,j.DialogManager=Ao,j.EnumAppStatus=pt,j.EnumCrmEntityType=ki,j.EnumCrmEntityTypeId=Ei,j.ListRpcError=hn,j.LoadDataType=ee,j.LoggerBrowser=be,j.LoggerType=I,j.LsKeys=Re,j.MessageCommands=X,j.MessageManager=vo,j.OptionsManager=Oo,j.ParentManager=To,j.PlacementManager=Co,j.PullStatus=Le,j.RestrictionManagerParamsBase=vi,j.RestrictionManagerParamsForEnterprise=ln,j.Result=Pt,j.RpcMethod=He,j.SenderType=Tr,j.ServerMode=un,j.SliderManager=Io,j.StatusDescriptions=Ti,j.SubscriptionType=Fe,j.SystemCommands=Kt,j.Text=W,j.Type=R,j.TypeOption=Ye,j.TypeSpecificUrl=gt,j.initializeB24Frame=Uh,j.useB24Helper=xh,j.useFormatter=uh});
43
+ `;return this.getLogger().warn(s),[]}for(let s=0;s<n.length;s++){if(n[s]=n[s].substring(12,n[s].length-12),n[s].length<=0)continue;let i;try{i=JSON.parse(n[s])}catch{continue}t.push(i)}return t}decodeId(e){let t="";for(const n of e){const s=n.toString(16);s.length===1&&(t+="0"),t+=s}return t}encodeId(e){if(!e)return new Uint8Array;const t=[];for(let n=0;n<e.length;n+=2)t.push(Number.parseInt(e.slice(n,n+2),16));return new Uint8Array(t)}onOffline(){this.disconnect(Se.NORMAL_CLOSURE,"offline")}onOnline(){this.connect().catch(e=>{this.getLogger().error(e)})}onBeforeUnload(){this._unloading=!0;const e=R.clone(this.session);if(e.ttl=Date.now()+Lh*1e3,this._storage)try{this._storage.set(xo,JSON.stringify(e))}catch(t){this.getLogger().error(`${$.getDateForLog()}: Pull: Could not save session info in local storage. Error: `,t)}this.scheduleReconnect(15)}sendPullStatusDelayed(e,t){this._offlineTimeout&&(clearTimeout(this._offlineTimeout),this._offlineTimeout=null),this._offlineTimeout=setTimeout(()=>{this._offlineTimeout=null,this.sendPullStatus(e)},t)}sendPullStatus(e){this._unloading||(this.onCustomEvent("onPullStatus",[e]),this.emit({type:Re.Status,data:{status:e}}))}extendWatch(e,t=!1){this._watchTagsQueue.get(e)||(this._watchTagsQueue.set(e,!0),t&&this.updateWatch(t))}updateWatch(e=!1){this._watchUpdateTimeout&&(clearTimeout(this._watchUpdateTimeout),this._watchUpdateTimeout=null),this._watchUpdateTimeout=setTimeout(()=>{const t=[...this._watchTagsQueue.keys()];t.length>0?this._restClient.callMethod("pull.watch.extend",{tags:t}).then(n=>{const s=n.getData().result;for(const i of s)this.clearWatch(i);this.updateWatch()}).catch(()=>{this.updateWatch()}):this.updateWatch()},e?this._watchForceUpdateInterval:this._watchUpdateInterval)}clearWatch(e){this._watchTagsQueue.delete(e)}onJsonRpcPing(){this.updatePingWaitTimeout(),this.connector?.send(Fh)}updatePingWaitTimeout(){this._pingWaitTimeout&&(clearTimeout(this._pingWaitTimeout),this._pingWaitTimeout=null),this._pingWaitTimeout=setTimeout(this._onPingTimeoutHandler,Po*2*1e3)}clearPingWaitTimeout(){this._pingWaitTimeout&&clearTimeout(this._pingWaitTimeout),this._pingWaitTimeout=null}onPingTimeout(){this._pingWaitTimeout=null,!(!this._enabled||!this.isConnected())&&(this.getLogger().warn(`No pings are received in ${Po*2} seconds. Reconnecting`),this.disconnect(Se.STUCK,"connection stuck"),this.scheduleReconnect())}getConnectionAttemptDelay(e){let t;return e<1?t=.5:e<3?t=15:e<5?t=45:e<10?t=600:t=3600,t+t*Math.random()*.2}checkDuplicate(e){return this._session.lastMessageIds.includes(e)?(this.getLogger().warn(`Duplicate message ${e} skipped`),!1):(this._session.lastMessageIds.push(e),!0)}trimDuplicates(){this._session.lastMessageIds.length>Nh&&(this._session.lastMessageIds=this._session.lastMessageIds.slice(-10))}logMessage(e){this._debug&&(e.extra?.sender&&e.extra.sender.type===br.Client?this.getLogger().info(`onPullClientEvent-${e.module_id}`,e.command,e.params,e.extra):e.module_id=="online"?this.getLogger().info("onPullOnlineEvent",e.command,e.params,e.extra):this.getLogger().info("onPullEvent",e.module_id,e.command,e.params,e.extra))}logToConsole(e,t=!1){(this._loggingEnabled||t)&&this.getLogger().log(`${$.getDateForLog()}: ${e}`)}addMessageToStat(e){this._session.history[e.module_id]||(this._session.history[e.module_id]={}),this._session.history[e.module_id][e.command]||(this.session.history[e.module_id][e.command]=0),this._session.history[e.module_id][e.command]++,this._session.messageCount++}showNotification(e){this.getLogger().warn(e)}onCustomEvent(e,t,n=!1){}}class Mh{_b24;_logger=null;_isInit=!1;_profile=null;_app=null;_payment=null;_license=null;_currency=null;_appOptions=null;_userOptions=null;_b24PullClient=null;_pullClientUnSubscribe=[];_pullClientModuleId="";constructor(e){this._b24=e,this.setLogger(this._b24.getLogger())}setLogger(e){this._logger=e,this._profile!==null&&this._profile.setLogger(this.getLogger()),this._app!==null&&this._app.setLogger(this.getLogger()),this._payment!==null&&this._payment.setLogger(this.getLogger()),this._license!==null&&this._license.setLogger(this.getLogger()),this._currency!==null&&this._currency.setLogger(this.getLogger()),this._appOptions!==null&&this._appOptions.setLogger(this.getLogger()),this._userOptions!==null&&this._userOptions.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){this._destroyPullClient()}async loadData(e=[ee.App,ee.Profile]){const t={[ee.App]:{method:"app.info"},[ee.Profile]:{method:"profile"},[ee.Currency]:[{method:"crm.currency.base.get"},{method:"crm.currency.list"}],[ee.AppOptions]:{method:"app.option.get"},[ee.UserOptions]:{method:"user.option.get"}},n=e.reduce((s,i)=>{if(t[i])if(Array.isArray(t[i]))for(const[o,a]of t[i].entries())s[`get_${i}_${o}`]=a;else s[`get_${i}`]=t[i];return s},{});try{const s=(await this._b24.callBatch(n)).getData();s[`get_${ee.App}`]&&(this._app=await this.parseAppData(s[`get_${ee.App}`]),this._payment=await this.parsePaymentData(s[`get_${ee.App}`]),this._license=await this.parseLicenseData(s[`get_${ee.App}`])),s[`get_${ee.Profile}`]&&(this._profile=await this.parseUserData(s[`get_${ee.Profile}`])),s[`get_${ee.Currency}_0`]&&s[`get_${ee.Currency}_1`]&&(this._currency=await this.parseCurrencyData({currencyBase:s[`get_${ee.Currency}_0`],currencyList:s[`get_${ee.Currency}_1`]})),s[`get_${ee.AppOptions}`]&&(this._appOptions=await this.parseOptionsData("app",s[`get_${ee.AppOptions}`])),s[`get_${ee.UserOptions}`]&&(this._userOptions=await this.parseOptionsData("user",s[`get_${ee.UserOptions}`])),this._isInit=!0}catch(s){throw s instanceof Error?s:(console.error("Error loading data:",s),new Error("Failed to load data"))}}async parseUserData(e){const t=new uh(this._b24);return t.setLogger(this.getLogger()),t.initData({id:Number(e.ID),isAdmin:e.ADMIN===!0,lastName:e?.LAST_NAME||"",name:e?.NAME||"",gender:e?.PERSONAL_GENDER||"",photo:e?.PERSONAL_PHOTO||"",TimeZone:e?.TIME_ZONE||"",TimeZoneOffset:e?.TIME_ZONE_OFFSET}).then(()=>t)}async parseAppData(e){const t=new hh(this._b24);return t.setLogger(this.getLogger()),t.initData({id:Number.parseInt(e.ID),code:e.CODE,version:Number.parseInt(e.VERSION),status:e.STATUS,isInstalled:e.INSTALLED}).then(()=>t)}async parsePaymentData(e){const t=new fh(this._b24);return t.setLogger(this.getLogger()),t.initData({isExpired:e.PAYMENT_EXPIRED==="Y",days:Number.parseInt(e.DAYS||"0")}).then(()=>t)}async parseLicenseData(e){const t=new dh(this._b24);return t.setLogger(this.getLogger()),t.initData({languageId:e.LANGUAGE_ID,license:e.LICENSE,licensePrevious:e.LICENSE_PREVIOUS,licenseType:e.LICENSE_TYPE,licenseFamily:e.LICENSE_FAMILY,isSelfHosted:e.LICENSE.includes("selfhosted")}).then(()=>t)}async parseCurrencyData(e){const t=new ph(this._b24);return t.setLogger(this.getLogger()),t.initData(e).then(()=>t)}async parseOptionsData(e,t){const n=new xn(this._b24,e);return n.setLogger(this.getLogger()),n.initData(t).then(()=>n)}get isInit(){return this._isInit}get forB24Form(){if(this.ensureInitialized(),this._profile===null)throw new Error("B24HelperManager.profileInfo not initialized");if(this._app===null)throw new Error("B24HelperManager.appInfo not initialized");return{app_code:this.appInfo.data.code,app_status:this.appInfo.data.status,payment_expired:this.paymentInfo.data.isExpired?"Y":"N",days:this.paymentInfo.data.days,b24_plan:this.licenseInfo.data.license,c_name:this.profileInfo.data.name,c_last_name:this.profileInfo.data.lastName,hostname:this.hostName}}get hostName(){return this._b24.getTargetOrigin()}get profileInfo(){if(this.ensureInitialized(),this._profile===null)throw new Error("B24HelperManager.profileInfo not initialized");return this._profile}get appInfo(){if(this.ensureInitialized(),this._app===null)throw new Error("B24HelperManager.appInfo not initialized");return this._app}get paymentInfo(){if(this.ensureInitialized(),this._payment===null)throw new Error("B24HelperManager.paymentInfo not initialized");return this._payment}get licenseInfo(){if(this.ensureInitialized(),this._license===null)throw new Error("B24HelperManager.licenseInfo not initialized");return this._license}get currency(){if(this.ensureInitialized(),this._currency===null)throw new Error("B24HelperManager.currency not initialized");return this._currency}get appOptions(){if(this.ensureInitialized(),this._appOptions===null)throw new Error("B24HelperManager.appOptions not initialized");return this._appOptions}get userOptions(){if(this.ensureInitialized(),this._userOptions===null)throw new Error("B24HelperManager.userOptions not initialized");return this._userOptions}get isSelfHosted(){return this.licenseInfo.data.isSelfHosted}get primaryKeyIncrementValue(){return this.isSelfHosted?1:2}get b24SpecificUrl(){return this.isSelfHosted?{[gt.MainSettings]:"/configs/",[gt.UfList]:"/configs/userfield_list.php",[gt.UfPage]:"/configs/userfield.php"}:{[gt.MainSettings]:"/settings/configs/",[gt.UfList]:"/settings/configs/userfield_list.php",[gt.UfPage]:"/settings/configs/userfield.php"}}usePullClient(e="prefix",t){return this._b24PullClient?this:(this.initializePullClient(typeof t>"u"?this.profileInfo.data.id||0:t,e),this)}initializePullClient(e,t="prefix"){this._b24PullClient=new jo({b24:this._b24,restApplication:this._b24.auth.getUniq(t),userId:e})}subscribePullClient(e,t="application"){if(!this._b24PullClient)throw new Error("PullClient not init");return this._pullClientModuleId=t,this._pullClientUnSubscribe.push(this._b24PullClient.subscribe({moduleId:this._pullClientModuleId,callback:e})),this}startPullClient(){if(!this._b24PullClient)throw new Error("PullClient not init");this._b24PullClient.start().catch(e=>{this.getLogger().error(`${$.getDateForLog()}: Pull not running`,e)})}getModuleIdPullClient(){if(!this._b24PullClient)throw new Error("PullClient not init");return this._pullClientModuleId}_destroyPullClient(){for(const e of this._pullClientUnSubscribe)e();this._b24PullClient?.destroy(),this._b24PullClient=null}ensureInitialized(){if(!this._isInit)throw new Error("B24HelperManager not initialized")}}const Ph=()=>{let r=!1,e=!1,t=null;return{initB24Helper:async(n,s=[ee.App,ee.Profile])=>(t===null&&(t=new Mh(n)),r?t:t.loadData(s).then(()=>(r=!0,t))),isInitB24Helper:()=>r,destroyB24Helper:()=>{t?.destroy(),t=null,r=!1,e=!1},getB24Helper:()=>{if(t===null)throw new Error("B24HelperManager is not initialized. You need to call initB24Helper first.");return t},usePullClient:()=>{if(t===null)throw new Error("B24HelperManager is not initialized. You need to call initB24Helper first.");t.usePullClient(),e=!0},useSubscribePullClient:(n,s="application")=>{if(!e)throw new Error("PullClient is not initialized. You need to call usePullClient first.");t?.subscribePullClient(n,s)},startPullClient:()=>{if(!e)throw new Error("PullClient is not initialized. You need to call usePullClient first.");t?.startPullClient()}}},xh=50;let ot=null,Pr=!1,Dt=null,Uo=!1,xr=[],Bo=!1;function $o(){window.setTimeout(()=>{if(!Pr||ot===null){$o();return}Dh(),xr=[]},xh)}function Dh(){if(Dt!==null)for(const r of xr)r.reject(Dt);if(!(!Pr||ot===null))for(const r of xr)r.resolve(ot)}async function jh(){return Pr&&ot!==null?Promise.resolve(ot):Uo?(Bo||(Bo=!0,$o()),new Promise((r,e)=>{xr.push({resolve:r,reject:e})})):(Uo=!0,new Promise((r,e)=>{const t={DOMAIN:null,PROTOCOL:!1,APP_SID:null,LANG:null};if(window.name){const[n,s,i]=window.name.split("|");t.DOMAIN=n,t.PROTOCOL=Number.parseInt(s)===1,t.APP_SID=i,t.LANG=null}(!t.DOMAIN||!t.APP_SID)&&(Dt=new Error("Unable to initialize Bitrix24Frame library!"),e(Dt)),ot=new Io(t),ot.init().then(()=>{Pr=!0,r(ot)}).catch(n=>{Dt=n,e(Dt)})}))}x.AbstractB24=Pt,x.AjaxError=We,x.AjaxResult=Sr,x.AppFrame=_o,x.AuthHookManager=bo,x.AuthManager=vo,x.B24Frame=Io,x.B24Hook=ch,x.B24LangList=Mn,x.B24PullClientManager=jo,x.Browser=vi,x.CloseReasons=Se,x.ConnectionType=te,x.DataType=Vn,x.DialogManager=To,x.EnumAppStatus=pt,x.EnumCrmEntityType=Ei,x.EnumCrmEntityTypeId=Ti,x.ListRpcError=mn,x.LoadDataType=ee,x.LoggerBrowser=ye,x.LoggerType=I,x.LsKeys=Ce,x.MessageCommands=Q,x.MessageManager=So,x.OptionsManager=Eo,x.ParentManager=ko,x.PlacementManager=Ao,x.PullStatus=Ne,x.RestrictionManagerParamsBase=ki,x.RestrictionManagerParamsForEnterprise=pn,x.Result=$e,x.RpcMethod=Ve,x.SenderType=br,x.ServerMode=gn,x.SliderManager=Oo,x.StatusDescriptions=Oi,x.SubscriptionType=Re,x.SystemCommands=Yt,x.Text=$,x.Type=R,x.TypeOption=Ye,x.TypeSpecificUrl=gt,x.initializeB24Frame=jh,x.isArrayOfArray=Zo,x.omit=Hn,x.pick=Jo,x.useB24Helper=Ph,x.useFormatter=lh});
38
44
  //# sourceMappingURL=index.min.js.map