@bitrix24/b24jssdk 0.1.6 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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.6",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))(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={};constructor(){}initData(e){this.#e=e.PLACEMENT||"DEFAULT";const t=e.PLACEMENT_OPTIONS;return this.#t=Object.freeze(t),this}get title(){return this.#e}get isDefault(){return this.title==="DEFAULT"}get options(){return this.#t}get isSliderMode(){return this.options?.IFRAME==="Y"}}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._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(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 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 Vo=Function.prototype.toString.call(Object);let Ho=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)===Vo}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 Ho;class ut extends Error{}class zo extends ut{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class Jo extends ut{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class Zo extends ut{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class vt extends ut{}class Hn 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},zn={year:C,month:De,day:C},Go={year:C,month:De,day:C,weekday:De},Jn={year:C,month:Ie,day:C},Zn={year:C,month:Ie,day:C,weekday:Ie},Gn={hour:C,minute:C},Yn={hour:C,minute:C,second:C},Kn={hour:C,minute:C,second:C,timeZoneName:De},Xn={hour:C,minute:C,second:C,timeZoneName:Ie},Qn={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:De},rs={hour:C,minute:C,second:C,hourCycle:"h23",timeZoneName:Ie},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:De,day:C,hour:C,minute:C},os={year:C,month:De,day:C,hour:C,minute:C,second:C},Yo={year:C,month:De,day:C,weekday:De,hour:C,minute:C},as={year:C,month:Ie,day:C,hour:C,minute:C,timeZoneName:De},ls={year:C,month:Ie,day:C,hour:C,minute:C,second:C,timeZoneName:De},cs={year:C,month:Ie,day:C,weekday:Ie,hour:C,minute:C,timeZoneName:Ie},us={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 xs(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 Ko(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 Xo={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function Qo(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 ea(r,e){const t=r.formatToParts(e),n=[];for(let s=0;s<t.length;s++){const{type:i,value:o}=t[s],a=Xo[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 xs(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=Ko(this.name);let[s,i,o,a,l,u,c]=n.formatToParts?ea(n,t):Qo(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 hs={};function ta(r,e={}){const t=JSON.stringify([r,e]);let n=hs[t];return n||(n=new Intl.ListFormat(r,e),hs[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 ra(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 na(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 sa(){return $t||($t=new Intl.DateTimeFormat().resolvedOptions().locale,$t)}const Vr=new Map;function fs(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 ia(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={...ds,...e}),Hr.set(r,e)}return e}function oa(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 aa(r,e,t){return(t||e)&&(r.includes("-u-")||(r+="-u"),t&&(r+=`-ca-${t}`),e&&(r+=`-nu-${e}`)),r}function la(r){const e=[];for(let t=1;t<=12;t++){const n=U.utc(2009,t,1);e.push(r(n))}return e}function ca(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 ua(r){return r.numberingSystem&&r.numberingSystem!=="latn"?!1:r.numberingSystem==="latn"||!r.locale||r.locale.startsWith("en")||fs(r.locale).numberingSystem==="latn"}class ha{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=ra(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 fa{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 da{constructor(e,t,n){this.opts={style:"long",...n},!t&&Fs()&&(this.rtf=na(e,n))}format(e,t){return this.rtf?this.rtf.format(e,t):Pa(t,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}}const ds={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":sa()),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]=oa(e);this.locale=o,this.numberingSystem=t||a||null,this.outputCalendar=n||l||null,this.weekSettings=s,this.intl=aa(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=ua(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,Us,()=>{const n=t?{month:e,day:"numeric"}:{month:e},s=t?"format":"standalone";return this.monthsCache[s][e]||(this.monthsCache[s][e]=la(i=>this.extract(i,n,"month"))),this.monthsCache[s][e]})}weekdays(e,t=!1){return or(this,e,Ws,()=>{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]=ca(i=>this.extract(i,n,"weekday"))),this.weekdaysCache[s][e]})}meridiems(){return or(this,void 0,()=>qs,()=>{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,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(a=>a.type.toLowerCase()===n);return o?o.value:null}numberFormatter(e={}){return new ha(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new fa(e,this.intl,t)}relFormatter(e={}){return new da(this.intl,this.isEnglish(),e)}listFormatter(e={}){return ta(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||fs(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:Ls()?ia(this.locale):ds}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 pa 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(Sa(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 pa(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"},ps={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]},ga=Jr.hanidec.replace(/[\[|\]]/g,"").split("");function ma(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+=ga.indexOf(r[t]);else for(const s in ps){const[i,o]=ps[s];n>=i&&n<=o&&(e+=n-i)}}return parseInt(e,10)}else return e}const Zr=new Map;function ya(){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 gs=()=>Date.now(),ms="system",ys=null,ws=null,bs=null,Ss=60,_s,vs=null;class ne{static get now(){return gs}static set now(e){gs=e}static set defaultZone(e){ms=e}static get defaultZone(){return rt(ms,ir.instance)}static get defaultLocale(){return ys}static set defaultLocale(e){ys=e}static get defaultNumberingSystem(){return ws}static set defaultNumberingSystem(e){ws=e}static get defaultOutputCalendar(){return bs}static set defaultOutputCalendar(e){bs=e}static get defaultWeekSettings(){return vs}static set defaultWeekSettings(e){vs=Xr(e)}static get twoDigitCutoffYear(){return Ss}static set twoDigitCutoffYear(e){Ss=e%100}static get throwOnInvalid(){return _s}static set throwOnInvalid(e){_s=e}static resetCaches(){K.resetCache(),Ge.resetCache(),U.resetCache(),ya()}}class Ue{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const ks=[0,31,59,90,120,151,181,212,243,273,304,334],Es=[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 Ts(r,e,t){return t+(Wt(r)?Es:ks)[e-1]}function Os(r,e){const t=Wt(r)?Es:ks,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=Ts(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 As(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}=Os(u,l);return{year:u,month:c,day:f,...dr(r)}}function Kr(r){const{year:e,month:t,day:n}=r,s=Ts(e,t,n);return{year:e,ordinal:s,...dr(r)}}function Is(r){const{year:e,ordinal:t}=r,{month:n,day:s}=Os(e,t);return{year:e,month:n,day:s,...dr(r)}}function Cs(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 wa(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 ba(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 Ns(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 Rs(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 Sa(r){return typeof r=="string"}function _a(r){return Object.prototype.toString.call(r)==="[object Date]"}function Fs(){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 va(r){return Array.isArray(r)?r:[r]}function Ms(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 ka(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 Ea(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=Ea(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 Ps(r,e,t){return-Yr(Gr(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(Et(r)-n+s)/7}function tn(r){return r>99?r:r>ne.twoDigitCutoffYear?1900+r:2e3+r}function xs(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 Ds(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)]=Ds(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 ka(r,["hour","minute","second","millisecond"])}const Ta=["January","February","March","April","May","June","July","August","September","October","November","December"],js=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Oa=["J","F","M","A","M","J","J","A","S","O","N","D"];function Us(r){switch(r){case"narrow":return[...Oa];case"short":return[...js];case"long":return[...Ta];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 Bs=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],$s=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Aa=["M","T","W","T","F","S","S"];function Ws(r){switch(r){case"narrow":return[...Aa];case"short":return[...$s];case"long":return[...Bs];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const qs=["AM","PM"],Ia=["Before Christ","Anno Domini"],Ca=["BC","AD"],Na=["B","A"];function Vs(r){switch(r){case"narrow":return[...Na];case"short":return[...Ca];case"long":return[...Ia];default:return null}}function Ra(r){return qs[r.hour<12?0:1]}function Fa(r,e){return Ws(e)[r.weekday-1]}function La(r,e){return Us(e)[r.month-1]}function Ma(r,e){return Vs(e)[r.year<0?0:1]}function Pa(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 Hs(r,e){let t="";for(const n of r)n.literal?t+=n.val:t+=e(n.val);return t}const xa={D:sr,DD:zn,DDD:Jn,DDDD:Zn,t:Gn,tt:Yn,ttt:Kn,tttt:Xn,T:Qn,TT:es,TTT:ts,TTTT:rs,f:ns,ff:is,fff:as,ffff:cs,F:ss,FF:os,FFF:ls,FFFF:us};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 xa[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?Ra(e):i({hour:"numeric",hourCycle:"h12"},"dayperiod"),l=(d,p)=>n?La(e,d):i(p?{month:d}:{month:d,day:"numeric"},"month"),u=(d,p)=>n?Fa(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?Ma(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 Hs(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 Hs(i,s(a))}}const zs=/[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 Js(...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 Zs=/(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/,Da=`(?:${Zs.source}?(?:\\[(${zs.source})\\])?)?`,rn=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,Gs=RegExp(`${rn.source}${Da}`),nn=RegExp(`(?:T${Gs.source})?`),ja=/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,Ua=/(\d{4})-?W(\d\d)(?:-?(\d))?/,Ba=/(\d{4})-?(\d{3})/,$a=Js("weekYear","weekNumber","weekDay"),Wa=Js("year","ordinal"),qa=/(\d{4})-(\d\d)-(\d\d)/,Ys=RegExp(`${rn.source} ?(?:${Zs.source}|(${zs.source}))?`),Va=RegExp(`(?: ${Ys.source})?`);function It(r,e,t){const n=r[e];return W(n)?t:st(n)}function Ha(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 za=RegExp(`^T?${rn.source}$`),Ja=/^-?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 Za(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 Ga={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:js.indexOf(t)+1,day:st(n),hour:st(s),minute:st(i)};return o&&(a.second=st(o)),r&&(a.weekday=r.length>3?Bs.indexOf(r)+1:$s.indexOf(r)+1),a}const Ya=/^(?:(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 Ka(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=Ga[l]:u?d=0:d=hr(c,f),[h,new Ee(d)]}function Xa(r){return r.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}const Qa=/^(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$/,el=/^(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$/,tl=/^(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 Ks(r){const[,e,t,n,s,i,o,a]=r;return[sn(e,s,n,t,i,o,a),Ee.utcInstance]}function rl(r){const[,e,t,n,s,i,o,a]=r;return[sn(e,a,t,n,s,i,o),Ee.utcInstance]}const nl=Tt(ja,nn),sl=Tt(Ua,nn),il=Tt(Ba,nn),ol=Tt(Gs),Xs=Ot(Ha,Ct,Ht,zt),al=Ot($a,Ct,Ht,zt),ll=Ot(Wa,Ct,Ht,zt),cl=Ot(Ct,Ht,zt);function ul(r){return At(r,[nl,Xs],[sl,al],[il,ll],[ol,cl])}function hl(r){return At(Xa(r),[Ya,Ka])}function fl(r){return At(r,[Qa,Ks],[el,Ks],[tl,rl])}function dl(r){return At(r,[Ja,Za])}const pl=Ot(Ct);function gl(r){return At(r,[za,pl])}const ml=Tt(qa,Va),yl=Tt(Ys),wl=Ot(Ct,Ht,zt);function bl(r){return At(r,[ml,Xs],[yl,wl])}const Qs="Invalid Duration",ei={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}},Sl={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},...ei},Pe=146097/400,Nt=146097/4800,_l={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},...ei},ft=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],vl=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 ti(r,e){let t=e.milliseconds??0;for(const n of vl.slice(1))e[n]&&(t+=e[n]*r[n].milliseconds);return t}function ri(r,e){const t=ti(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 kl(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?_l:Sl;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]=dl(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]=gl(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 Zo(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 Hn(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):Qs}toHuman(e={}){if(!this.isValid)return Qs;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?ti(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]=Ds(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 ri(this.matrix,e),it(this,{values:e},!0)}rescale(){if(!this.isValid)return this;const e=kl(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 ri(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 El(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 Jo(n);return new se({invalid:n})}static fromDateTimes(e,t){const n=Gt(e),s=Gt(t),i=El(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:Fs(),localeWeek:Ls()}}}function ni(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 Tl(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=ni(l,u);return(c-c%7)/7}],["days",ni]],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 Ol(r,e,t,n){let[s,i,o,a]=Tl(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 Al="missing Intl.DateTimeFormat.formatToParts support";function Y(r,e=t=>t){return{regex:r,deser:([t])=>e(ma(t))}}const si="[ \xA0]",ii=new RegExp(si,"g");function Il(r){return r.replace(/\./g,"\\.?").replace(ii,si)}function oi(r){return r.replace(/\./g,"").replace(ii," ").toLowerCase()}function Be(r,e){return r===null?null:{regex:RegExp(r.map(Il).join("|")),deser:([t])=>r.findIndex(n=>oi(t)===oi(n))+e}}function ai(r,e){return{regex:r,deser:([,t,n])=>hr(t,n),groups:e}}function gr(r){return{regex:r,deser:([e])=>e}}function Cl(r){return r.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Nl(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(Cl(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 ai(new RegExp(`([+-]${a.source})(?::(${n.source}))?`),2);case"ZZZ":return ai(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:Al};return g.token=r,g}const Rl={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 Fl(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=Rl[o];if(typeof a=="object"&&(a=a[i]),a)return{literal:!1,val:a}}function Ll(r){return[`^${r.map(t=>t.regex).reduce((t,n)=>`${t}(${n.source})`,"")}$`,r]}function Ml(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 Pl(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 xl(){return on||(on=U.fromMillis(1555555555555)),on}function Dl(r,e){if(r.literal)return r;const t=be.macroTokenToFormatOpts(r.val),n=hi(t,e);return n==null||n.includes(void 0)?r:n}function li(r,e){return Array.prototype.concat(...r.map(t=>Dl(t,e)))}class ci{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=li(be.parseFormat(t),e),this.units=this.tokens.map(n=>Nl(n,e)),this.disqualifyingUnit=this.units.find(n=>n.invalidReason),!this.disqualifyingUnit){const[n,s]=Ll(this.units);this.regex=RegExp(n,"i"),this.handlers=s}}explainFromTokens(e){if(this.isValid){const[t,n]=Ml(e,this.regex,this.handlers),[s,i,o]=n?Pl(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 ui(r,e,t){return new ci(r,t).explainFromTokens(e)}function jl(r,e,t){const{result:n,zone:s,specificOffset:i,invalidReason:o}=ui(r,e,t);return[n,s,i,o]}function hi(r,e){if(!r)return null;const n=be.create(e,r).dtFormatter(xl()),s=n.formatToParts(),i=n.resolvedOptions();return s.map(o=>Fl(o,r,i))}const an="Invalid DateTime",Ul=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 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 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 fi(ur(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,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]=fi(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 pi(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 gi={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},Bl={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},$l={ordinal:1,hour:0,minute:0,second:0,millisecond:0},mi=["year","month","day","hour","minute","second","millisecond"],Wl=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],ql=["year","ordinal","hour","minute","second","millisecond"];function Vl(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 Hn(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 Vl(r)}}function Hl(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 wi(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 mi)W(r[l])&&(r[l]=gi[l]);const o=Ns(r)||Rs(r);if(o)return U.invalid(o);const a=Hl(t);[s,i]=yr(r,a,t)}return new U({ts:s,zone:t,loc:n,o:i})}function bi(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 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 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]=Si(arguments),[n,s,i,o,a,l,u]=t;return wi({year:n,month:s,day:i,hour:o,minute:a,second:l,millisecond:u},e)}static utc(){const[e,t]=Si(arguments),[n,s,i,o,a,l,u]=t;return e.zone=Ee.utcInstance,wi({year:n,month:s,day:i,hour:o,minute:a,second:l,millisecond:u},e)}static fromJSDate(e,t={}){const n=_a(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>Ul?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,yi),{minDaysInFirstWeek:o,startOfWeek:a}=Cs(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=Wl,y=Bl,w=ar(w,o,a)):c?(m=ql,y=$l,w=Kr(w)):(m=mi,y=gi);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?wa(i,o,a):c?ba(i):Ns(i),k=b||Rs(i);if(k)return U.invalid(k);const S=g?As(i,o,a):c?Is(i):i,[E,N]=yr(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]=ul(e);return Ft(n,s,t,"ISO 8601",e)}static fromRFC2822(e,t={}){const[n,s]=hl(e);return Ft(n,s,t,"RFC 2822",e)}static fromHTTP(e,t={}){const[n,s]=fl(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]=jl(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]=bl(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 zo(n);return new U({invalid:n})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){const n=hi(e,K.fromObject(t));return n?n.map(s=>s?s.val:null).join(""):null}static expandFormat(e,t={}){return li(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,yi),{minDaysInFirstWeek:n,startOfWeek:s}=Cs(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=As({...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=Is({...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,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?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+=pi(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":"")+pi(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=va(t).map(Z.normalizeUnit),o=e.valueOf()>this.valueOf(),a=o?this:e,l=o?e:this,u=Ol(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),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 we("min requires all arguments be DateTimes");return Ms(e,t=>t.valueOf(),Math.min)}static max(...e){if(!e.every(U.isDateTime))throw new we("max requires all arguments be DateTimes");return Ms(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 ui(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(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 zn}static get DATE_MED_WITH_WEEKDAY(){return Go}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 Xn}static get TIME_24_SIMPLE(){return Qn}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 Yo}static get DATETIME_FULL(){return as}static get DATETIME_FULL_WITH_SECONDS(){return ls}static get DATETIME_HUGE(){return cs}static get DATETIME_HUGE_WITH_SECONDS(){return us}}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 zl=new Uint8Array(16),ge=[];for(let r=0;r<256;++r)ge.push((r+256).toString(16).slice(1));function Jl(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 Zl(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 Gl(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 Yl(){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(zl);Jl(fn,r,e);const t=Zl(e,fn.msecs,fn.seq,void 0,void 0);return Gl(t)}const Kl=/[&<>'"]/g,Xl=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34)/g,Ql={"&":"&amp","<":"&lt",">":"&gt","'":"&#39",'"':"&quot"},ec={"&amp":"&","&#38":"&","&lt":"<","&#60":"<","&gt":">","&#62":">","&apos":"'","&#39":"'","&quot":'"',"&#34":'"'};class tc{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 Yl()}encode(e){return R.isString(e)?e.replace(Kl,t=>Ql[t]):e}decode(e){return R.isString(e)?e.replace(Xl,t=>ec[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 tc;let de="";try{de=navigator?.userAgent.toLowerCase()}catch{de="?"}let rc=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 _i=new rc,vi={sleep:1e3,speed:.001,amount:30},pn={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||{}),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 nc=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=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 sc="X-Request-ID",ic="bx24_request_id",oc="bx24_sdk_ver";let ac=class{getQueryStringParameterName(){return ic}getQueryStringSdkParameterName(){return oc}generate(){return $.getUuidRfc4122()}getRequestId(){return this.generate()}getHeaderFieldName(){return sc}};function Oi(r,e){return function(){return r.apply(e,arguments)}}const{toString:lc}=Object.prototype,{getPrototypeOf:yn}=Object,_r=(r=>e=>{const t=lc.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 cc(r){return r!==null&&!Kt(r)&&r.constructor!==null&&!Kt(r.constructor)&&Fe(r.constructor.isBuffer)&&r.constructor.isBuffer(r)}const Ai=qe("ArrayBuffer");function uc(r){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(r):e=r&&r.buffer&&Ai(r.buffer),e}const hc=vr("string"),Fe=vr("function"),Ii=vr("number"),kr=r=>r!==null&&typeof r=="object",fc=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)},dc=qe("Date"),pc=qe("File"),gc=qe("Blob"),mc=qe("FileList"),yc=r=>kr(r)&&Fe(r.pipe),wc=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]"))},bc=qe("URLSearchParams"),[Sc,_c,vc,kc]=["ReadableStream","Request","Response","Headers"].map(qe),Ec=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 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=>!Kt(r)&&r!==mt;function wn(){const{caseless:r}=Ni(this)&&this||{},e={},t=(n,s)=>{const i=r&&Ci(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 Tc=(r,e,t,{allOwnKeys:n}={})=>(Xt(e,(s,i)=>{t&&Fe(s)?r[i]=Oi(s,t):r[i]=s},{allOwnKeys:n}),r),Oc=r=>(r.charCodeAt(0)===65279&&(r=r.slice(1)),r),Ac=(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)},Ic=(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},Cc=(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},Nc=r=>{if(!r)return null;if(Lt(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},Rc=(r=>e=>r&&e instanceof r)(typeof Uint8Array<"u"&&yn(Uint8Array)),Fc=(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])}},Lc=(r,e)=>{let t;const n=[];for(;(t=r.exec(e))!==null;)n.push(t);return n},Mc=qe("HTMLFormElement"),Pc=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),xc=qe("RegExp"),Fi=(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)},Dc=r=>{Fi(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+"'")})}})},jc=(r,e)=>{const t={},n=s=>{s.forEach(i=>{t[i]=!0})};return Lt(r)?n(r):n(String(r).split(e)),t},Uc=()=>{},Bc=(r,e)=>r!=null&&Number.isFinite(r=+r)?r:e;function $c(r){return!!(r&&Fe(r.append)&&r[Symbol.toStringTag]==="FormData"&&r[Symbol.iterator])}const Wc=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)},qc=qe("AsyncFunction"),Vc=r=>r&&(kr(r)||Fe(r))&&Fe(r.then)&&Fe(r.catch),Li=((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)),Hc=typeof queueMicrotask<"u"?queueMicrotask.bind(mt):typeof process<"u"&&process.nextTick||Li,v={isArray:Lt,isArrayBuffer:Ai,isBuffer:cc,isFormData:wc,isArrayBufferView:uc,isString:hc,isNumber:Ii,isBoolean:fc,isObject:kr,isPlainObject:Er,isReadableStream:Sc,isRequest:_c,isResponse:vc,isHeaders:kc,isUndefined:Kt,isDate:dc,isFile:pc,isBlob:gc,isRegExp:xc,isFunction:Fe,isStream:yc,isURLSearchParams:bc,isTypedArray:Rc,isFileList:mc,forEach:Xt,merge:wn,extend:Tc,trim:Ec,stripBOM:Oc,inherits:Ac,toFlatObject:Ic,kindOf:_r,kindOfTest:qe,endsWith:Cc,toArray:Nc,forEachEntry:Fc,matchAll:Lc,isHTMLForm:Mc,hasOwnProperty:Ri,hasOwnProp:Ri,reduceDescriptors:Fi,freezeMethods:Dc,toObjectSet:jc,toCamelCase:Pc,noop:Uc,toFiniteNumber:Bc,findKey:Ci,global:mt,isContextDefined:Ni,isSpecCompliantForm:$c,toJSONObject:Wc,isAsyncFn:qc,isThenable:Vc,setImmediate:Li,asap:Hc};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 Mi=V.prototype,Pi={};["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=>{Pi[r]={value:r}}),Object.defineProperties(V,Pi),Object.defineProperty(Mi,"isAxiosError",{value:!0}),V.from=(r,e,t,n,s,i)=>{const o=Object.create(Mi);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 zc=null;function bn(r){return v.isPlainObject(r)||v.isArray(r)}function xi(r){return v.endsWith(r,"[]")?r.slice(0,-2):r}function Di(r,e,t){return r?r.concat(e).map(function(s,i){return s=xi(s),!t&&i?"["+s+"]":s}).join(t?".":""):e}function Jc(r){return v.isArray(r)&&!r.some(bn)}const Zc=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)&&Jc(p)||(v.isFileList(p)||v.endsWith(g,"[]"))&&(y=v.toArray(p)))return g=xi(g),y.forEach(function(_,b){!(v.isUndefined(_)||_===null)&&e.append(o===!0?Di([g],b,i):o===null?g:g+"[]",u(_))}),!1}return bn(p)?!0:(e.append(Di(m,g,i),u(p)),!1)}const f=[],h=Object.assign(Zc,{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 ji(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 Ui=Sn.prototype;Ui.append=function(e,t){this._pairs.push([e,t])},Ui.toString=function(e){const t=e?function(n){return e.call(this,n,ji)}:ji;return this._pairs.map(function(s){return t(s[0])+"="+t(s[1])},"").join("&")};function Gc(r){return encodeURIComponent(r).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Bi(r,e,t){if(!e)return r;const n=t&&t.encode||Gc;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 $i{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 Wi={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Yc={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,Kc=_n&&(!vn||["ReactNative","NativeScript","NS"].indexOf(vn.product)<0),Xc=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Qc=_n&&window.location.href||"http://localhost",_e={...{__proto__:null,hasBrowserEnv:_n,hasStandardBrowserEnv:Kc,hasStandardBrowserWebWorkerEnv:Xc,navigator:vn,origin:Qc},...Yc};function eu(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 tu(r){return v.matchAll(/\w+|\[(\w*)]/g,r).map(e=>e[0]==="[]"?"":e[1]||e[0])}function ru(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 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]=ru(s[o])),!a)}if(v.isFormData(r)&&v.isFunction(r.entries)){const t={};return v.forEachEntry(r,(n,s)=>{e(tu(n),s,t,0)}),t}return null}function nu(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:Wi,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 a;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return eu(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),nu(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 su=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"]),iu=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]&&su[t])&&(t==="set-cookie"?e[t]?e[t].push(n):e[t]=[n]:e[t]=e[t]?e[t]+", "+n:n)}),e},Vi=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 ou(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 au=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 lu(r){return r.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,t,n)=>t.toUpperCase()+n)}function cu(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())&&!au(e))o(iu(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 ou(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?lu(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[Vi]=this[Vi]={accessors:{}}).accessors,s=this.prototype;function i(o){const a=er(o);n[a]||(cu(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 Hi(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 zi(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 uu(r){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(r);return e&&e[1]||""}function hu(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 fu(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=hu(50,250);return fu(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)},Ji=(r,e)=>{const t=r!=null;return[n=>e[0]({lengthComputable:t,total:r,loaded:n}),e[1]]},Zi=r=>(...e)=>v.asap(()=>r(...e)),du=_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,pu=_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 gu(r){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(r)}function mu(r,e){return e?r.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):r}function Gi(r,e,t){let n=!gu(e);return r&&(n||t==!1)?mu(r,e):e}const Yi=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(Yi(u),Yi(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 Ki=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=Bi(Gi(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&&du(e.url))){const u=s&&i&&pu.read(i);u&&o.set(s,u)}return e},yu=typeof XMLHttpRequest<"u"&&function(r){return new Promise(function(t,n){const s=Ki(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};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 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||Wi;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=uu(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)})},wu=(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}},bu=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},Su=async function*(r,e){for await(const t of _u(r))yield*bu(t,e)},_u=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()}},Xi=(r,e,t,n)=>{const s=Su(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",Qi=Ir&&typeof ReadableStream=="function",vu=Ir&&(typeof TextEncoder=="function"?(r=>e=>r.encode(e))(new TextEncoder):async r=>new Uint8Array(await new Response(r).arrayBuffer())),eo=(r,...e)=>{try{return!!r(...e)}catch{return!1}},ku=Qi&&eo(()=>{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}),to=64*1024,Tn=Qi&&eo(()=>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 Eu=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 vu(r)).byteLength},Tu=async(r,e)=>{const t=v.toFiniteNumber(r.getContentLength());return t??Eu(e)},On={http:zc,xhr:yu,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}=Ki(r);u=u?(u+"").toLowerCase():"text";let d=wu([s,i&&i.toAbortSignal()],o),p;const g=d&&d.unsubscribe&&(()=>{d.unsubscribe()});let m;try{if(l&&ku&&t!=="get"&&t!=="head"&&(m=await Tu(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]=Ji(m,Ar(Zi(l)));n=Xi(k.body,to,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(x=>{k[x]=w[x]});const S=v.toFiniteNumber(w.headers.get("content-length")),[E,N]=a&&Ji(S,Ar(Zi(a),!0))||[];w=new Response(Xi(w.body,to,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)=>{zi(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 ro=r=>`- ${r}`,Ou=r=>v.isFunction(r)||r===null||r===!1,no={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,!Ou(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(ro).join(`
11
+ `):" "+ro(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 so(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),no.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 Hi(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 io="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 oo={};Nr.transitional=function(e,t,n){function s(i,o){return"[Axios v"+io+"] 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&&!oo[o]&&(oo[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 Au(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:Au,validators:Nr},He=Rr.validators;let wt=class{constructor(e){this.defaults=e,this.interceptors={request:new $i,response:new $i}}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=[so.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=so.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=Gi(e.baseURL,e.url,e.allowAbsoluteUrls);return Bi(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 Iu=class qo{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 qo(function(s){e=s}),cancel:e}}};function Cu(r){return function(t){return r.apply(null,t)}}function Nu(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 ao(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 ao(yt(r,s))},t}const ae=ao(Qt);ae.Axios=wt,ae.CanceledError=Mt,ae.CancelToken=Iu,ae.isCancel=Hi,ae.VERSION=io,ae.toFormData=Tr,ae.AxiosError=V,ae.Cancel=ae.CanceledError,ae.all=function(e){return Promise.all(e)},ae.spread=Cu,ae.isAxiosError=Nu,ae.mergeConfig=yt,ae.AxiosHeaders=Te,ae.formToJSON=r=>qi(v.isHTMLForm(r)?new FormData(r):r),ae.getAdapter=no.getAdapter,ae.HttpStatusCode=In,ae.default=ae;const{Axios:rf,AxiosError:lo,CanceledError:nf,isCancel:sf,CancelToken:of,VERSION:af,all:lf,Cancel:cf,isAxiosError:uf,spread:hf,toFormData:ff,AxiosHeaders:df,HttpStatusCode:pf,formToJSON:gf,getAdapter:mf,mergeConfig:yf}=ae,Ru=String.prototype.replace,Fu=/%20/g,co={RFC1738:"RFC1738",RFC3986:"RFC3986"},Lu={RFC1738:function(r){return Ru.call(r,Fu,"+")},RFC3986:function(r){return String(r)}},Mu=co.RFC1738,Pu=co.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}(),xu=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}}},Du=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},ju=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=Du(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)},Uu=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,Bu=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===Mu&&(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},$u=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 xu(t),e},Wu=function(e){return!e||typeof e!="object"?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},qu=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)},Vu={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,t){return e+"["+t+"]"},repeat:function(e){return e}},Ke=Array.isArray,Hu=Array.prototype.push,uo=function(r,e){Hu.apply(r,Ke(e)?e:[e])},zu=Date.prototype.toISOString,ho=Pu,Fr={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Bu,encodeValuesOnly:!1,format:ho,formatter:Lu[ho],indices:!1,serializeDate:function(e){return zu.call(e)},skipNulls:!1,strictNullHandling:!1},Ju=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},Fn={},fo=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(Ju(_)||Wu(_)){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 x=l?t.replace(/\./g,"%2E"):t,P=s&&Ke(_)&&_.length===1?x+"[]":x;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),uo(E,fo(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},Zu=function(e){return Fr};function po(r,e){let t=r;const n=Zu();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=Vu[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||uo(o,fo(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,Gu=Array.isArray,Lr={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Uu,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},Yu=function(r){return r.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(parseInt(t,10))})},go=function(r,e){return r&&typeof r=="string"&&e.comma&&r.indexOf(",")>-1?r.split(","):r},Ku="utf8=%26%2310003%3B",Xu="utf8=%E2%9C%93",Qu=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]===Xu?u="utf-8":o[l]===Ku&&(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(go(c.slice(h+1),t),function(m){return t.decoder(m,Lr.decoder,u,"value")})),p&&t.interpretNumericEntities&&u==="iso-8859-1"&&(p=Yu(p)),c.indexOf("[]=")>-1&&(p=Gu(p)?[p]:p);const g=Ln.call(n,d);g&&t.duplicates==="combine"?n[d]=qu(n[d],p):(!g||t.duplicates==="last")&&(n[d]=p)}return n},eh=function(r,e,t,n){let s=n?e:go(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},th=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)+"]"),eh(c,t,n,s)},rh=function(e){return Lr};function mo(r,e){const t=rh();if(r===""||r===null||typeof r>"u")return t.plainObjects?Object.create(null):{};const n=typeof r=="string"?Qu(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=th(a,n[a],t,typeof r=="string");s=ju(s,l,t)}return t.allowSparse===!0?s:$u(s)}let yo=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 nc,this.#n=new ac}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+"?"+po(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:mo(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+"?"+po(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:mo(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 lo&&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 lo&&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.0",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 nh=()=>({scrollWidth:Math.max(document.documentElement.scrollWidth,document.documentElement.offsetWidth),scrollHeight:Math.max(document.documentElement.scrollHeight,document.documentElement.offsetHeight)});let sh=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 ih=()=>{const r=sh.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 wo{#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 oh extends Pt{#e;constructor(e){super(),this.#e=new wo(e),this._http=new yo(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 bo{#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=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.#r(o);if(e.toString().includes(":"))i={method:e.toString(),params:t??"",callback:a,appSid:this.#e.getAppSid()};else{i=e.toString();const l=[t?JSON.stringify(t):null,a,this.#e.getAppSid()];i+=":"+l.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)}}}#r(e){const t=$.getUniqId();return this.#t.set(t,e),t}}class So{#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 _o{#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 vo{#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 nh()}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 ko=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 Eo{#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 To{#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 Oo{#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){return this.#e.send(Q.getInterface,{event:e,isSafely:!0})}async call(e,t={}){return this.#e.send(e,{...t,isSafely:!0})}}class Ao extends Pt{#e=!1;#t=!1;#r;#n;#s;#o;#i;#l;#c;#a;constructor(e){super(),this.#r=new So(e),this.#n=new bo(this.#r),this.#n.subscribe(),this.#s=new _o(this.#r,this.#n),this.#o=new vo(this.#n),this.#i=new ko(this.#n),this.#l=new Eo(this.#n),this.#c=new To(this.#r,this.#n),this.#a=new Oo(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 yo(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 ah 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 lh 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 Ti[this.data.status]||"Unknown status"}}class ch 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 uh 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 hh 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 Io{_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 fh extends Error{constructor(e){super(e),this.name="ErrorNotConnected"}}class dh extends Error{constructor(e){super(e),this.name="ErrorTimeout"}}const Mr="2.0";class ph{_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 fh("websocket is not connected"));const a=setTimeout(()=>{this._rpcResponseAwaiters.delete(o.id),i(new dh("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 gh{_logger=null;_storage;_ttl=24*60*60;_callbacks;constructor(e={}){e=e||{},this._storage=e.storage||new Io,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 mh{_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 yh(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 Co;function wh(){return Co||(Co=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]*)*$/,x=/^(?:\.[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,D=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()),D(O),O=le()}while(O==='"'||O==="'");return A.join("")}function $o(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 xh(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()),D("to",!0)?jt(B()):M]);while(D(",",!0));D(";")}function xh(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 Dh(){if(lt!==e)throw q("package");if(lt=B(),!N.test(lt))throw q(lt,"name");ke=ke.define(lt),D(";")}function jh(){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 Uh(){if(D("="),ie=Qe(),ue=ie==="proto3",!ue&&ie!=="proto2")throw q(ie,"syntax");D(";")}function Un(A,O){switch(O){case"option":return Ze(A,O),D(";"),!0;case"message":return Bh(A,O),!0;case"enum":return Vh(A,O),!0;case"service":return zh(A,O),!0;case"extend":return Zh(A,O),!0}return!1}function Je(A,O,F){var M=X.line;if(A&&(A.comment=at(),A.filename=P.filename),D("{",!0)){for(var oe;(oe=B())!=="}";)O(oe);D(";",!0)}else F&&F(),D(";"),A&&typeof A.comment!="string"&&(A.comment=at(M))}function Bh(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":Wh(F);break;case"required":case"optional":case"repeated":Ut(F,M);break;case"oneof":qh(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"){$h(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),D("=");var fe=new l(oe,jt(B()),M,O,F);Je(fe,function(et){if(et==="option")Ze(fe,et),D(";");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 $h(A,O){var F=B();if(!E.test(F))throw q(F,"name");var M=g.lcFirst(F);F===M&&(F=g.ucFirst(F)),D("=");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),D(";");break;case"required":case"optional":case"repeated":Ut(fe,_t);break;default:throw q(_t)}}),A.add(fe).add(et)}function Wh(A){D("<");var O=B();if(p.mapKey[O]===e)throw q(O,"type");D(",");var F=B();if(!N.test(F))throw q(F,"type");D(">");var M=B();if(!E.test(M))throw q(M,"name");D("=");var oe=new u(Oe(M),jt(B()),O,F);Je(oe,function(fe){if(fe==="option")Ze(oe,fe),D(";");else throw q(fe)},function(){$n(oe)}),A.add(oe)}function qh(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),D(";")):(he(M),Ut(F,"optional"))}),A.add(F)}function Vh(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),D(";");break;case"reserved":jn(F.reserved||(F.reserved=[]),!0);break;default:Hh(F,M)}}),A.add(F)}function Hh(A,O){if(!E.test(O))throw q(O,"name");D("=");var F=jt(B(),!0),M={};Je(M,function(oe){if(oe==="option")Ze(M,oe),D(";");else throw q(oe)},function(){$n(M)}),A.add(O,F,M.comment)}function Ze(A,O){var F=D("(",!0);if(!N.test(O=B()))throw q(O,"name");var M=O;F&&(D(")"),M="("+M+")",O=le(),x.test(O)&&(M+=O,B())),D("="),Bn(A,M)}function Bn(A,O){if(D("{",!0))do{if(!E.test(Ae=B()))throw q(Ae,"name");le()==="{"?Bn(A,O+"."+Ae):(D(":"),le()==="{"?Bn(A,O+"."+Ae):Wo(A,O+"."+Ae,$o()))}while(!D("}",!0));else Wo(A,O,$o())}function Wo(A,O,F){A.setOption&&A.setOption(O,F)}function $n(A){if(D("[",!0)){do Ze(A,"option");while(D(",",!0));D("]")}return A}function zh(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")Jh(F,M);else throw q(M)}),A.add(F)}function Jh(A,O){var F=O;if(!E.test(O=B()))throw q(O,"name");var M=O,oe,fe,et,_t;if(D("("),D("stream",!0)&&(fe=!0),!N.test(O=B())||(oe=O,D(")"),D("returns"),D("("),D("stream",!0)&&(_t=!0),!N.test(O=B())))throw q(O);et=O,D(")");var Wn=new d(M,F,oe,et,fe,_t);Je(Wn,function(qn){if(qn==="option")Ze(Wn,qn),D(";");else throw q(qn)}),A.add(Wn)}function Zh(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);Dh();break;case"import":if(!St)throw q(Ae);jh();break;case"syntax":if(!St)throw q(Ae);Uh();break;case"option":if(!St)throw q(Ae);Ze(ke,Ae),D(";");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]))&&x(he);if(B.weakImports)for(le=0;le<B.weakImports.length;++le)(he=k.resolvePath(H,B.weakImports[le]))&&x(he,!0)}}catch(D){E(D)}!S&&!P&&E(null,k)}function x(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(D){X||E(D);return}N(H,le)}else++P,u.fetch(H,function(D,at){if(--P,!!b){if(D){X?P||E(null,k):E(D);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]))&&x(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,x=[],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,D(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(x.length>0)return x.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 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(),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:D,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]],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 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 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),P=0;P<x.length;++P)N.add((typeof E.fields[x[P]].keyType<"u"?u.fromJSON:l.fromJSON)(x[P],E.fields[x[P]]));if(E.oneofs)for(x=Object.keys(E.oneofs),P=0;P<x.length;++P)N.add(a.fromJSON(x[P],E.oneofs[x[P]]));if(E.nested)for(x=Object.keys(E.nested),P=0;P<x.length;++P){var J=E.nested[x[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)(x[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(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 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 x=_[S];if(x){var P=Object.create(this);P.fromObject=this.fromObject,this.fromObject=x.fromObject.bind(P),P.toObject=this.toObject,this.toObject=x.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 bh=wh();const rr=yh(bh);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 Sh=L.ResponseBatch,No=L.RequestBatch,_h=L.IncomingMessage,Ro=L.Receiver;class Fo{_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 vh extends Fo{_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 kh=60;class Eh extends Fo{_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),kh*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,Lo=30*60,Th=5e3,Oh=60*1e3,Ah=10,Mo=10,Ih="ping",Ch="pong",Po="bx-pull-session",Nh=20,xo={api:{},channels:{},publicChannels:{},server:{timeShift:0},clientId:null,jwt:null,exp:0};class Do{_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 Io({userId:this._userId,siteId:this._siteId})),this._sharedConfig=new gh({onWebSocketBlockChanged:this.onWebSocketBlockChanged.bind(this),storage:this._storage}),this._channelManager=new mh({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 vh({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 Eh({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 ph({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,Th):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(Po,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&&!_i.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(Ro.create({id:this.encodeId(c),signature:this.encodeId(f)}))})}const l=_h.create({receivers:a,body:JSON.stringify(o),expiry:i.expiry||0});n.push(l)});const s=No.create({requests:[{incomingMessages:{messages:n}}]});return No.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(Ro.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({},xo)}else{this._config=Object.assign({},xo);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),Oh)}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 ${Lo} seconds`),!this._restoreWebSocketTimeout&&(this._restoreWebSocketTimeout=setTimeout(()=>{this._restoreWebSocketTimeout=0,this.restoreWebSocketConnection()},Lo*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===Ih?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=Sh.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()+Nh*1e3,this._storage)try{this._storage.set(Po,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(Ch)}updatePingWaitTimeout(){this._pingWaitTimeout&&(clearTimeout(this._pingWaitTimeout),this._pingWaitTimeout=null),this._pingWaitTimeout=setTimeout(this._onPingTimeoutHandler,Mo*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 ${Mo*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>Ah&&(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 Rh{_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 ah(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 lh(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 ch(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 uh(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 hh(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 Do({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 Fh=()=>{let r=!1,e=!1,t=null;return{initB24Helper:async(n,s=[ee.App,ee.Profile])=>(t===null&&(t=new Rh(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()}}},Lh=50;let ot=null,Pr=!1,Dt=null,jo=!1,xr=[],Uo=!1;function Bo(){window.setTimeout(()=>{if(!Pr||ot===null){Bo();return}Mh(),xr=[]},Lh)}function Mh(){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 Ph(){return Pr&&ot!==null?Promise.resolve(ot):jo?(Uo||(Uo=!0,Bo()),new Promise((r,e)=>{xr.push({resolve:r,reject:e})})):(jo=!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 Ao(t),ot.init().then(()=>{Pr=!0,r(ot)}).catch(n=>{Dt=n,e(Dt)})}))}j.AbstractB24=Pt,j.AjaxError=We,j.AjaxResult=Sr,j.AppFrame=So,j.AuthHookManager=wo,j.AuthManager=_o,j.B24Frame=Ao,j.B24Hook=oh,j.B24LangList=Mn,j.B24PullClientManager=Do,j.Browser=_i,j.CloseReasons=Se,j.ConnectionType=te,j.DataType=Vn,j.DialogManager=Eo,j.EnumAppStatus=pt,j.EnumCrmEntityType=ki,j.EnumCrmEntityTypeId=Ei,j.ListRpcError=mn,j.LoadDataType=ee,j.LoggerBrowser=ye,j.LoggerType=I,j.LsKeys=Ce,j.MessageCommands=Q,j.MessageManager=bo,j.OptionsManager=ko,j.ParentManager=vo,j.PlacementManager=Oo,j.PullStatus=Ne,j.RestrictionManagerParamsBase=vi,j.RestrictionManagerParamsForEnterprise=pn,j.Result=$e,j.RpcMethod=Ve,j.SenderType=br,j.ServerMode=gn,j.SliderManager=To,j.StatusDescriptions=Ti,j.SubscriptionType=Re,j.SystemCommands=Yt,j.Text=$,j.Type=R,j.TypeOption=Ye,j.TypeSpecificUrl=gt,j.initializeB24Frame=Ph,j.useB24Helper=Fh,j.useFormatter=ih});
38
44
  //# sourceMappingURL=index.min.js.map